76 lines
1.9 KiB
Bash
76 lines
1.9 KiB
Bash
|
#!/bin/sh
|
||
|
|
||
|
use_systemctl="True"
|
||
|
systemd_version=0
|
||
|
if ! command -V systemctl >/dev/null 2>&1; then
|
||
|
use_systemctl="False"
|
||
|
else
|
||
|
systemd_version=$(systemctl --version | head -1 | cut -d ' ' -f 2)
|
||
|
fi
|
||
|
|
||
|
service_name=rebound
|
||
|
|
||
|
cleanup() {
|
||
|
if [ "${use_systemctl}" = "False" ]; then
|
||
|
rm -f /usr/lib/systemd/system/${service_name}.service
|
||
|
else
|
||
|
rm -f /etc/chkconfig/${service_name}
|
||
|
rm -f /etc/init.d/${service_name}
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
cleanInstall() {
|
||
|
printf "\033[32m Post Install of an clean install\033[0m\n"
|
||
|
if [ "${use_systemctl}" = "False" ]; then
|
||
|
if command -V chkconfig >/dev/null 2>&1; then
|
||
|
chkconfig --add ${service_name}
|
||
|
fi
|
||
|
|
||
|
service ${service_name} restart || :
|
||
|
else
|
||
|
if [[ "${systemd_version}" -lt 231 ]]; then
|
||
|
printf "\033[31m systemd version %s is less then 231, fixing the service file \033[0m\n" "${systemd_version}"
|
||
|
sed -i "s/=+/=/g" /usr/lib/systemd/system/${service_name}.service
|
||
|
fi
|
||
|
printf "\033[32m Reload the service unit from disk\033[0m\n"
|
||
|
systemctl daemon-reload || :
|
||
|
printf "\033[32m Unmask the service\033[0m\n"
|
||
|
systemctl unmask ${service_name} || :
|
||
|
printf "\033[32m Set the preset flag for the service unit\033[0m\n"
|
||
|
systemctl preset ${service_name} || :
|
||
|
printf "\033[32m Set the enabled flag for the service unit\033[0m\n"
|
||
|
systemctl enable ${service_name} || :
|
||
|
systemctl restart ${service_name} || :
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
upgrade() {
|
||
|
printf "\033[32m Post Install of an upgrade\033[0m\n"
|
||
|
systemctl daemon-reload || :
|
||
|
systemctl restart ${service_name} || :
|
||
|
}
|
||
|
|
||
|
# Step 2, check if this is a clean install or an upgrade
|
||
|
action="$1"
|
||
|
if [ "$1" = "configure" ] && [ -z "$2" ]; then
|
||
|
action="install"
|
||
|
elif [ "$1" = "configure" ] && [ -n "$2" ]; then
|
||
|
action="upgrade"
|
||
|
fi
|
||
|
|
||
|
case "$action" in
|
||
|
"1" | "install")
|
||
|
cleanInstall
|
||
|
;;
|
||
|
"2" | "upgrade")
|
||
|
printf "\033[32m Post Install of an upgrade\033[0m\n"
|
||
|
upgrade
|
||
|
;;
|
||
|
*)
|
||
|
printf "\033[32m Alpine\033[0m"
|
||
|
cleanInstall
|
||
|
;;
|
||
|
esac
|
||
|
|
||
|
cleanup
|