#!/bin/sh
# This script is called by "systemctl enable/disable" when the given unit is a
# SysV init.d script. It needs to call the distribution's mechanism for
# enabling/disabling those, such as chkconfig, update-rc.d, or similar. This
# can optionally take a --root argument for enabling a SysV init script
# in a chroot or similar.
set -e

usage() {
    echo "Usage: $0 [--root=path] enable|disable|is-enabled <sysv script name>" >&2
    exit 1
}

unset ROOT

# parse options
eval set -- "$(getopt -o r: --long root: -- "$@")"
while true; do
    case "$1" in
        -r|--root)
            ROOT="$2"
            shift 2 ;
        --) shift ; break ;
        *) usage ;
    esac
done

NAME="$2"
[ -n "$NAME" ] || usage

case "$1" in
    enable)
        # call the command to enable SysV init script $NAME here
        # (consider optional $ROOT)
        update-rc.d -f $NAME defaults
        ;
    disable)
        # call the command to disable SysV init script $NAME here
        # (consider optional $ROOT)
        update-rc.d -f $NAME remove
        ;
    is-enabled)
        # exit with 0 if $NAME is enabled, non-zero if it is disabled
        # (consider optional $ROOT)
        /etc/init.d/$NAME status
        ;
    *)
        usage ;
esac