void-packages/triggers/openrc-service
Juan RP 2875261b09 triggers/openrc-service: touch /etc/fstab if it doesn't exist.
--HG--
extra : convert_revision : 8a4ece33abdf14edd1a418725b34a56c3ab70db6
2009-05-05 00:47:58 +02:00

52 lines
913 B
Bash
Executable file

#!/bin/sh
#
# Registers or unregisters OpenRC services into the specified
# runlevel.
#
# Arguments: $1 = action [run/targets]
# $2 = target [post-install/pre-remove]
# $3 = pkgname
#
trigger="openrc-service"
case "$1" in
targets)
echo "post-install pre-remove"
;;
run)
[ ! -x sbin/rc-update ] && exit 0
[ ! -x sbin/rc-service ] && exit 0
[ -z "$openrc_services" ] && exit 1
if [ "$2" = "pre-remove" ]; then
text="Unr"
rcupdate_args="del"
elif [ "$2" = "post-install" ]; then
text="R"
rcupdate_args="add"
else
exit 1
fi
echo "Running trigger ${trigger}..."
[ ! -f etc/fstab ] && touch etc/fstab
set -- ${openrc_services}
while [ $# -gt 0 ]; do
if sbin/rc-service -e ${1}; then
echo "${text}egistering ${1} OpenRC service..."
sbin/rc-update ${rcupdate_args} ${1} ${2}
[ $? -ne 0 ] && exit $?
sbin/rc-update -u
fi
shift; shift;
done
;;
*)
exit 1
;;
esac
exit 0