preinst is in postgresql-9.1 9.1.3-2.
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 | #!/bin/sh
set -e
rm_conffile() {
PKGNAME="postgresql-9.1"
CONFFILE="$1"
if [ -e "$CONFFILE" ]; then
md5sum="`md5sum \"$CONFFILE\" | sed -e \"s/ .*//\"`"
old_md5sum="`dpkg-query -W -f='${Conffiles}' $PKGNAME | sed -n -e \"\\\\' $CONFFILE'{s/ obsolete$//;s/.* //p}\"`"
if [ "$md5sum" != "$old_md5sum" ]; then
echo "Obsolete conffile $CONFFILE has been modified by you."
echo "Saving as $CONFFILE.dpkg-bak ..."
mv -f "$CONFFILE" "$CONFFILE".dpkg-bak
else
echo "Removing obsolete conffile $CONFFILE ..."
rm -f "$CONFFILE"
fi
fi
}
# earlier releases used per-version init scripts, now replaced with common one
if [ "$1" = "upgrade" ] || [ "$1" = "install" ] && \
dpkg --compare-versions "$2" le-nl "9.1~beta3-2"; then
rm_conffile /etc/init.d/postgresql-9.1
fi
# DB format changed between beta 1 and 2
if [ "$1" = "upgrade" ] || [ "$1" = "install" ] && \
dpkg --compare-versions "$2" lt-nl "9.1~beta2"; then
if pg_lsclusters -h | grep -q '^9.1'; then
echo "ERROR: The database format changed between beta 1 and 2. Please dump your 9.1 clusters first and remove them, before attempting to upgrade the package." >&2
exit 1
fi
fi
exit 0
|