hyperion.ng/cmake/package-scripts/preinst
2021-11-21 13:26:17 +00:00

37 lines
1000 B
Bash

#!/bin/sh
echo "---Hyperion ambient light preinst ---"
# stop running daemon before we install/upgrade
if pgrep hyperiond > /dev/null 2>&1
then
if grep -m1 systemd /proc/1/comm > /dev/null
then
# systemd
echo "--> stop init deamon: systemd"
CURRENT_SERVICE=$(systemctl list-units --all | { grep -o "hyperion*.*\.service" || true; })
if [ ! -z ${CURRENT_SERVICE} ]; then
systemctl stop "${CURRENT_SERVICE}" 2> /dev/null
else
FOUND_USR=`who | grep -o -m1 '^\w*\b'` || "root"
systemctl stop hyperion hyperiond"@${FOUND_USR}" hyperion"@${FOUND_USR}" "hyperiond@root" "hyperion@root" 2> /dev/null
fi
elif [ -e /sbin/initctl ]
then
# upstart
echo "--> stop init deamon: upstart"
initctl stop hyperiond 2>/dev/null
initctl stop hyperion 2>/dev/null
else
# sysV
echo "--> stop init deamon: sysV"
service hyperiond stop 2>/dev/null
service hyperion stop 2>/dev/null
fi
fi
# In case we don't use a service kill all instances
killall hyperiond 2> /dev/null
exit 0