You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
67 lines
1.8 KiB
67 lines
1.8 KiB
6 years ago
|
#!/bin/bash
|
||
|
set -e
|
||
|
|
||
|
NAME=emby-server
|
||
|
CONF_FILE=/etc/${NAME}.conf
|
||
|
DEFAULT_FILE=/etc/default/${NAME}
|
||
|
|
||
|
# Source Emby server default configuration
|
||
|
if [[ -f $DEFAULT_FILE ]]; then
|
||
|
. $DEFAULT_FILE
|
||
|
fi
|
||
|
|
||
|
# Source Emby server user configuration overrides
|
||
|
if [[ -f $CONF_FILE ]]; then
|
||
|
. $CONF_FILE
|
||
|
fi
|
||
|
|
||
|
# Data directory where Emby database, cache and logs are stored
|
||
|
PROGRAMDATA=${EMBY_DATA-/var/lib/$NAME}
|
||
|
|
||
|
# In case this system is running systemd, we make systemd reload the unit files
|
||
|
# to pick up changes.
|
||
|
if [[ -d /run/systemd/system ]] ; then
|
||
|
systemctl --system daemon-reload >/dev/null || true
|
||
|
fi
|
||
|
|
||
|
case "$1" in
|
||
|
install|upgrade)
|
||
|
# try graceful termination;
|
||
|
if [[ -d /run/systemd/system ]]; then
|
||
|
deb-systemd-invoke stop ${NAME}.service > /dev/null 2>&1 || true
|
||
|
elif [ -x "/etc/init.d/${NAME}" ] || [ -e "/etc/init/${NAME}.conf" ]; then
|
||
|
invoke-rc.d ${NAME} stop > /dev/null 2>&1 || true
|
||
|
fi
|
||
|
# try and figure out if emby is running
|
||
|
PIDFILE=$(find /var/run/ -maxdepth 1 -mindepth 1 -name "emby*.pid" -print -quit)
|
||
|
[[ -n "$PIDFILE" ]] && [[ -s "$PIDFILE" ]] && EMBY_PID=$(cat ${PIDFILE})
|
||
|
# if its running, let's stop it
|
||
|
if [[ -n "$EMBY_PID" ]]; then
|
||
|
echo "Stopping Emby Server!"
|
||
|
# if emby is still running, kill it
|
||
|
if [[ -n "$(ps -p $EMBY_PID -o pid=)" ]]; then
|
||
|
CPIDS=$(pgrep -P $EMBY_PID)
|
||
|
sleep 2 && kill -KILL $CPIDS
|
||
|
kill -TERM $CPIDS > /dev/null 2>&1
|
||
|
fi
|
||
|
sleep 1
|
||
|
# if it's still running, show error
|
||
|
if [[ -n "$(ps -p $EMBY_PID -o pid=)" ]]; then
|
||
|
echo "Could not successfully stop EmbyServer, please do so before uninstalling."
|
||
|
exit 1
|
||
|
else
|
||
|
[[ -f $PIDFILE ]] && rm $PIDFILE
|
||
|
fi
|
||
|
fi
|
||
|
;;
|
||
|
abort-upgrade)
|
||
|
;;
|
||
|
*)
|
||
|
echo "preinst called with unknown argument \`$1'" >&2
|
||
|
exit 1
|
||
|
;;
|
||
|
esac
|
||
|
#DEBHELPER#
|
||
|
|
||
|
exit 0
|