File: /var/lib/dpkg/info/dpkg.postrm
#!/bin/sh
# This script can be called in the following ways:
#
# After the package was removed:
# <postrm> remove
#
# After the package was purged:
# <postrm> purge
#
# After the package was upgraded:
# <old-postrm> upgrade <new-version>
# if that fails:
# <new-postrm> failed-upgrade <old-version>
#
#
# After all of the packages files have been replaced:
# <postrm> disappear <overwriting-package> <version>
#
#
# If preinst fails during install:
# <new-postrm> abort-install
#
# If preinst fails during upgrade of removed package:
# <new-postrm> abort-install <old-version>
#
# If preinst fails during upgrade:
# <new-postrm> abort-upgrade <old-version>
set -e
# Remove log file when dpkg is purged
remove_logfile() {
rm -f /var/log/dpkg.log /var/log/dpkg.log.* 2>/dev/null
}
# Cleanup multiarch infodb leftovers
cleanup_multiarch_infodb()
{
admindir=${DPKG_ADMINDIR:-/var/lib/dpkg}
pkgadmindir=$admindir/info
echo "Cleaning up the multiarch dpkg control files database ..."
ls $pkgadmindir | grep : | while read oldfile; do
rm "$pkgadmindir/$oldfile"
done
rm -f $pkgadmindir/format
}
case "$1" in
remove)
;;
purge)
remove_logfile
;;
upgrade)
# Downgrade the multiarch db to a “monoarch” db layout
if dpkg --compare-versions "$2" lt 1.16.2; then
cleanup_multiarch_infodb
fi
;;
failed-upgrade|disappear|abort-install|abort-upgrade)
;;
*)
echo "$0 called with unknown argument '$1'" 1>&2
exit 1
;;
esac
exit 0