| #!/bin/sh | |
| # SPDX-License-Identifier: MIT-0 | |
| # | |
| # 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) | |
| echo "IMPLEMENT ME: enabling SysV init.d script $NAME" | |
| ;; | |
| disable) | |
| # call the command to disable SysV init script $NAME here | |
| # (consider optional $ROOT) | |
| echo "IMPLEMENT ME: disabling SysV init.d script $NAME" | |
| ;; | |
| is-enabled) | |
| # exit with 0 if $NAME is enabled, non-zero if it is disabled | |
| # (consider optional $ROOT) | |
| echo "IMPLEMENT ME: checking SysV init.d script $NAME" | |
| ;; | |
| *) | |
| usage ;; | |
| esac |