#!/bin/sh
# deb-systemd-helper for s6-rc. is-enabled and was-enabled answer from
# svctl. The actions that change state do nothing: the -s6 package
# activates its units (flag-recommended), the admin changes that with svctl.
set -u

usage() {
	cat >&2 <<'USAGE'
Usage: deb-systemd-helper [--quiet] [--user] <action> <unit> [<unit> ...]

is-enabled, was-enabled: 0 if every unit is enabled in s6-rc (svctl
is-enabled), else 1. debian-installed: 1, no state is kept. enable,
disable, purge, mask, unmask, update-state, reenable: no change, 0.
Meant for dpkg maintainer scripts.
USAGE
}

quiet=0
while [ $# -gt 0 ]; do
	case $1 in
	--quiet) quiet=1 ;;
	--user) ;;
	-h | --help) usage; exit 0 ;;
	--) shift; break ;;
	-*) ;;
	*) break ;;
	esac
	shift
done
[ $# -ge 2 ] || { usage; exit 1; }
action=$1
shift

case $action in
is-enabled | was-enabled)
	rc=0
	for unit in "$@"; do
		if svctl is-enabled "$unit" >/dev/null 2>&1; then
			state=enabled
		else
			state=disabled
			rc=1
		fi
		[ "$quiet" = 1 ] || echo "$state"
	done
	exit "$rc"
	;;
debian-installed) exit 1 ;;
enable | disable | purge | mask | unmask | update-state | reenable) exit 0 ;;
*) usage; exit 1 ;;
esac
