This file is indexed.

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