diff options
Diffstat (limited to 'debian/cryptsetup.postinst')
-rw-r--r-- | debian/cryptsetup.postinst | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/debian/cryptsetup.postinst b/debian/cryptsetup.postinst new file mode 100644 index 0000000..635324b --- /dev/null +++ b/debian/cryptsetup.postinst @@ -0,0 +1,53 @@ +#! /bin/sh + +set -e + +# needed for debconf magic in prerm script +. /usr/share/debconf/confmodule + +# summary of how this script can be called: +# * <postinst> `configure' <most-recently-configured-version> +# * <old-postinst> `abort-upgrade' <new version> +# * <conflictor's-postinst> `abort-remove' `in-favour' <package> +# <new-version> +# * <deconfigured's-postinst> `abort-deconfigure' `in-favour' +# <failed-install-package> <version> `removing' +# <conflicting-package> <version> + +case "$1" in + configure) + for file in cryptdisks_start cryptdisks_stop; do + if [ ! -e "/usr/sbin/$file" ]; then + ln -s "/sbin/$file" "/usr/sbin/$file" + fi + done + + # Do a number of checks on the currently installed crypttab + . /lib/cryptsetup/functions + crypttab_foreach_entry crypttab_parse_options || true + ;; + + abort-upgrade|abort-remove|abort-deconfigure) + + ;; + + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +# try to remove /etc/init if it exists, it's empty and isn't owned +# NOTE: this needs to placed *after* the dh_installdeb-replaced snippet +# which contains calls to `dpkg-maintscript-helper rm_conffile` +if [ "$1" = "configure" ] && [ -d /etc/init ] && dpkg --compare-versions -- "${2-}" lt "2:2.4.0-1" && \ + ! { dpkg-query -S /etc/init >/dev/null 2>&1 || [ $? -ne 1 ]; } then + rmdir --ignore-fail-on-non-empty /etc/init +fi + +exit 0 |