postrm 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. #!/bin/bash
  2. set -e
  3. NAME=jellyfin
  4. DEFAULT_FILE=/etc/default/${NAME}
  5. # Source Jellyfin default configuration
  6. if [[ -f $DEFAULT_FILE ]]; then
  7. . $DEFAULT_FILE
  8. fi
  9. # Data directories for program data (cache, db), configs, and logs
  10. PROGRAMDATA=${JELLYFIN_DATA_DIRECTORY-/var/lib/$NAME}
  11. CONFIGDATA=${JELLYFIN_CONFIG_DIRECTORY-/etc/$NAME}
  12. LOGDATA=${JELLYFIN_LOG_DIRECTORY-/var/log/$NAME}
  13. CACHEDATA=${JELLYFIN_CACHE_DIRECTORY-/var/cache/$NAME}
  14. # In case this system is running systemd, we make systemd reload the unit files
  15. # to pick up changes.
  16. if [[ -d /run/systemd/system ]] ; then
  17. systemctl --system daemon-reload >/dev/null || true
  18. fi
  19. case "$1" in
  20. purge)
  21. echo PURGE | debconf-communicate $NAME > /dev/null 2>&1 || true
  22. if [[ -x "/etc/init.d/jellyfin" ]] || [[ -e "/etc/init/jellyfin.conf" ]]; then
  23. update-rc.d jellyfin remove >/dev/null 2>&1 || true
  24. fi
  25. if [[ -x "/usr/bin/deb-systemd-helper" ]]; then
  26. deb-systemd-helper purge jellyfin.service >/dev/null
  27. deb-systemd-helper unmask jellyfin.service >/dev/null
  28. fi
  29. # Remove user and group
  30. userdel jellyfin > /dev/null 2>&1 || true
  31. delgroup --quiet jellyfin > /dev/null 2>&1 || true
  32. # Remove config dir
  33. if [[ -d $CONFIGDATA ]]; then
  34. rm -rf $CONFIGDATA
  35. fi
  36. # Remove log dir
  37. if [[ -d $LOGDATA ]]; then
  38. rm -rf $LOGDATA
  39. fi
  40. # Remove cache dir
  41. if [[ -d $CACHEDATA ]]; then
  42. rm -rf $CACHEDATA
  43. fi
  44. # Remove program data dir
  45. if [[ -d $PROGRAMDATA ]]; then
  46. rm -rf $PROGRAMDATA
  47. fi
  48. # Remove binary symlink
  49. rm -f /usr/bin/jellyfin
  50. # Remove sudoers config
  51. [[ -f /etc/sudoers.d/jellyfin-sudoers ]] && rm /etc/sudoers.d/jellyfin-sudoers
  52. # Remove anything at the default locations; catches situations where the user moved the defaults
  53. [[ -e /etc/jellyfin ]] && rm -rf /etc/jellyfin
  54. [[ -e /var/log/jellyfin ]] && rm -rf /var/log/jellyfin
  55. [[ -e /var/cache/jellyfin ]] && rm -rf /var/cache/jellyfin
  56. [[ -e /var/lib/jellyfin ]] && rm -rf /var/lib/jellyfin
  57. ;;
  58. remove)
  59. if [[ -x "/usr/bin/deb-systemd-helper" ]]; then
  60. deb-systemd-helper mask jellyfin.service >/dev/null
  61. fi
  62. ;;
  63. upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
  64. ;;
  65. *)
  66. echo "postrm called with unknown argument \`$1'" >&2
  67. exit 1
  68. ;;
  69. esac
  70. #DEBHELPER#
  71. exit 0