#! /bin/sh

set -e

ua() {
	update-alternatives --install /usr/bin/which which /usr/bin/which.debianutils 0 \
		--slave /usr/share/man/man1/which.1.gz which.1.gz /usr/share/man/man1/which.debianutils.1.gz \
		--slave /usr/share/man/de/man1/which.1.gz which.de1.gz /usr/share/man/de/man1/which.debianutils.1.gz \
		--slave /usr/share/man/es/man1/which.1.gz which.es1.gz /usr/share/man/es/man1/which.debianutils.1.gz \
		--slave /usr/share/man/fr/man1/which.1.gz which.fr1.gz /usr/share/man/fr/man1/which.debianutils.1.gz \
		--slave /usr/share/man/it/man1/which.1.gz which.it1.gz /usr/share/man/it/man1/which.debianutils.1.gz \
		--slave /usr/share/man/ja/man1/which.1.gz which.ja1.gz /usr/share/man/ja/man1/which.debianutils.1.gz \
		--slave /usr/share/man/pl/man1/which.1.gz which.pl1.gz /usr/share/man/pl/man1/which.debianutils.1.gz \
		--slave /usr/share/man/sl/man1/which.1.gz which.sl1.gz /usr/share/man/sl/man1/which.debianutils.1.gz
}

clean_symlinks() {
	# debianutils 5.9 and 5.10 added incorrect links in the postinst: #1050784.
	# Get rid of them again. We do no longer support non-usrmerged systems.
	# TODO This can be dropped before trixie toolchain freeze but not before Sep 2024.
	for l in "$DPKG_ROOT/usr/bin/run-parts" "$DPKG_ROOT/bin/tmpfile" "$DPKG_ROOT/usr/bin/tmpfile" "$DPKG_ROOT/usr/sbin/installkernel"
	do
		[ ! -L "$l" ] || rm -f "$l"
	done
}

if test -z "$2" && test ! -f "$DPKG_ROOT/etc/shells"
then
	cp -pZ "$DPKG_ROOT/usr/share/debianutils/shells" "$DPKG_ROOT/etc/shells" || cp -p "$DPKG_ROOT/usr/share/debianutils/shells" "$DPKG_ROOT/etc/shells"
fi

case "$1" in
    (configure)
	update-shells
	ua
	clean_symlinks
    ;;
    (triggered)
	update-shells
    ;;

    (abort-upgrade|abort-remove|abort-deconfigure)
	ua
    ;;

    (*)
        echo "postinst called with unknown argument \`$1'" >&2
        exit 1
    ;;
esac


