Package: release.debian.org Severity: normal User: [email protected] Usertags: unblock
Please unblock package trousers This version fixes an annoying bug which prevents upgrades or removal from previous versions, including stable (and thus makes upgrades fail, without any proper way to upgrade or remove the old version). See #67682 and #679621 The fix is a workaround: since the init script cannot be used, we kill and remove the executable in the prerm script so the init script can exit properly, and continue the upgrade process with the new version. debdiff attached Thanks, Pierre unblock trousers/0.3.9-2
diff -Nru trousers-0.3.9/debian/changelog trousers-0.3.9/debian/changelog --- trousers-0.3.9/debian/changelog 2012-06-18 22:22:21.000000000 +0200 +++ trousers-0.3.9/debian/changelog 2012-07-04 21:57:25.000000000 +0200 @@ -1,3 +1,10 @@ +trousers (0.3.9-2) unstable; urgency=low + + * Add workaround for upgrade failure for versions before 0.3.8-3 + (Closes: #679621) + + -- Pierre Chifflier <[email protected]> Wed, 04 Jul 2012 21:57:22 +0200 + trousers (0.3.9-1) unstable; urgency=low * Imported Upstream version 0.3.9 diff -Nru trousers-0.3.9/debian/trousers.postinst trousers-0.3.9/debian/trousers.postinst --- trousers-0.3.9/debian/trousers.postinst 2012-02-26 11:47:51.000000000 +0100 +++ trousers-0.3.9/debian/trousers.postinst 2012-07-04 21:46:07.000000000 +0200 @@ -5,7 +5,7 @@ case "${1}" in configure) # Adding tss system user - adduser --system --home /var/lib/tpm --shell /bin/false --no-create-home --group tss + adduser --system --quiet --home /var/lib/tpm --shell /bin/false --no-create-home --group tss # Setting owner chown tss:tss /var/lib/tpm -R diff -Nru trousers-0.3.9/debian/trousers.prerm trousers-0.3.9/debian/trousers.prerm --- trousers-0.3.9/debian/trousers.prerm 1970-01-01 01:00:00.000000000 +0100 +++ trousers-0.3.9/debian/trousers.prerm 2012-07-04 21:46:07.000000000 +0200 @@ -0,0 +1,42 @@ +#!/bin/sh +# prerm script for trousers +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * <prerm> `remove' +# * <old-prerm> `upgrade' <new-version> +# * <new-prerm> `failed-upgrade' <old-version> +# * <conflictor's-prerm> `remove' `in-favour' <package> <new-version> +# * <deconfigured's-prerm> `deconfigure' `in-favour' +# <package-being-installed> <version> `removing' +# <conflicting-package> <version> +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + + +case "$1" in + failed-upgrade) + if dpkg --compare-versions "$2" lt 0.3.8-3; then + # hack to avoid #676828 + # removing the executable will make the init script exit gracefully + rm -f /usr/sbin/tcsd + # kill tcsd (and any other process owned by the tss user) + killall -u tss 2>/dev/null || true + fi + ;; + + *) + echo "prerm called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0

