#!/bin/sh # This script can be called in the following ways: # # After the package was removed: # remove # # After the package was purged: # purge # # After the package was upgraded: # upgrade # if that fails: # failed-upgrade # # # After all of the packages files have been replaced: # disappear # # # If preinst fails during install: # abort-install # # If preinst fails during upgrade of removed package: # abort-install # # If preinst fails during upgrade: # abort-upgrade 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 #DEBHELPER# exit 0