#!/bin/sh
set -e

# Membership in boot is shipped by s6-bundle-boot (contents.d/devmanager).
# Only scrub legacy Artix/old-policy names; never mkdir sv/boot husks.
migrate_boot_membership() {
	rm -f /etc/s6-rc/sv/boot/contents.d/udev \
	      /etc/s6-rc/sv/boot/contents.d/udevd \
	      /etc/s6-rc/sv/boot/contents.d/udevadm \
	      /etc/s6-rc/bundles/boot/contents.d/udev \
	      /etc/s6-rc/bundles/boot/contents.d/udevd \
	      /etc/s6-rc/bundles/boot/contents.d/udevadm

	# Stale policy bundle name from older s6-rc-services
	if [ -d /etc/s6-rc/sv/udev ] && [ ! -L /etc/s6-rc/sv/udev ]; then
		rm -rf /etc/s6-rc/sv/udev
	fi
	rm -f /etc/s6-rc/sv/setup/contents.d/udevd \
	      /etc/s6-rc/sv/setup/contents.d/udevadm \
	      /etc/s6-rc/sv/setup/contents.d/udev \
	      /etc/s6-rc/sv/setup/contents.d/devmanager \
	      /etc/s6-rc/bundles/setup/contents.d/udevd \
	      /etc/s6-rc/bundles/setup/contents.d/udevadm \
	      /etc/s6-rc/bundles/setup/contents.d/udev \
	      /etc/s6-rc/bundles/setup/contents.d/devmanager
}

case "$1" in
	configure)
		if ! id s6log >/dev/null 2>&1; then
			useradd -r -s /usr/sbin/nologin s6log
		fi
		migrate_boot_membership
		if [ -x /usr/lib/s6-helper/s6-helper ]; then
			/usr/lib/s6-helper/s6-helper recompile --when-ready
		elif [ -x /usr/sbin/s6-helper ]; then
			s6-helper recompile --when-ready
		else
			echo "warning: s6-bundle-devmanager: s6-helper missing; skip recompile" >&2
		fi
		;;
	abort-upgrade|abort-remove|abort-deconfigure)
		;;
	*)
		echo "postinst called with unknown argument '$1'" >&2
		exit 1
		;;
esac

#DEBHELPER#

exit 0
