preinst is in mailman 1:2.1.14-3ubuntu0.4.
This file is a maintainer script. It is executed when installing (*inst) or removing (*rm) the package.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | #!/bin/sh -e
# $URL: svn+ssh://svn.debian.org/svn/svn/pkg-mailman/trunk/debian/preinst.in $
# $Id: preinst.in 641 2009-12-30 16:02:13Z thijs $
. /usr/share/debconf/confmodule
# If we encounter a cron.d file that was originally installed by this package,
# we remove it here so it will be replaced by a properly managed one after
# the package upgrade.
# This can be removed after wheezy's release.
if [ -e /etc/cron.d/mailman ] && dpkg --compare-versions "$2" le "1:2.1.14-3"; then
md5sum="$(md5sum /etc/cron.d/mailman | sed -e 's/ .*//')"
if [ "$md5sum" = "06648bbab6cf2c5c1f542b31a51d8338" ]; then
rm /etc/cron.d/mailman
fi
fi
abort_install()
{
db_fset mailman/queue_files_present seen false || true
db_input critical mailman/queue_files_present || true
db_go
db_get mailman/queue_files_present
if [ "$RET" = "abort installation" ]; then
exit 1
fi
}
# make sure the qfiles directory is empty.
if [ -d /var/lib/mailman/qfiles ] && \
[ "$(find /var/lib/mailman/qfiles -type f | wc -l)" -ne 0 ]; then
# Check if the queue files were created by the same version as the one we're about to install
if [ -r /var/lib/mailman/.version ]; then
# First check the stamp file.
# It is more general because it will show the previous version in the
# case that /var/lib/mailman is on permanent storage (e.g. a SAN) and
# we are being installed for the first time.
previous_version=$(cat /var/lib/mailman/.version)
else
# Fall back to reading dpkg-provided argument (in case previous version did not leave the stamp file)
previous_version="$2"
fi
if [ "1:2.1.14-3ubuntu0.4" != "${previous_version}" ]; then
# we don't know which version the files are from
abort_install
fi
fi
exit 0
|