File: schroot.preinst

package info (click to toggle)
schroot 1.2.2-0%2Blenny1
  • links: PTS, VCS
  • area: main
  • in suites: lenny
  • size: 21,912 kB
  • ctags: 10,843
  • sloc: cpp: 15,011; sh: 10,257; makefile: 543; perl: 108; sed: 16
file content (67 lines) | stat: -rw-r--r-- 2,038 bytes parent folder | download
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#! /bin/sh
# preinst script for schroot
#
# see: dh_installdeb(1)

set -e

# summary of how this script can be called:
#        * <new-preinst> `install'
#        * <new-preinst> `install' <old-version>
#        * <new-preinst> `upgrade' <old-version>
#        * <old-preinst> `abort-upgrade' <new-version>

# Remove a no-longer used conffile
rm_conffile() {
    PKGNAME="$1"
    CONFFILE="$2"

    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-old ..."
            mv -f "$CONFFILE" "$CONFFILE".dpkg-old
        else
            echo "Removing obsolete conffile $CONFFILE ..."
            rm -f "$CONFFILE"
        fi
    fi
}

# Prepare to move a conffile without triggering a dpkg question
prep_mv_conffile() {
    PACKAGE="$1"
    CONFFILE="$2"

    if [ -e "$CONFFILE" ]; then
        md5sum="`md5sum \"$CONFFILE\" | sed -e \"s/ .*//\"`"
        old_md5sum="`dpkg-query -W -f='${Conffiles}' $PACKAGE | sed -n -e \"\\\\' $CONFFILE'{s/.* //;p}\"`"
        if [ "$md5sum" = "$old_md5sum" ]; then
            rm -f "$CONFFILE"
        fi
    fi
}

case "$1" in
install|upgrade)
    if dpkg --compare-versions "$2" le "0.1.4-1"; then
        prep_mv_conffile "schroot" "/etc/schroot.conf"
    fi
    if dpkg --compare-versions "$2" le "0.2.6-1"; then
         prep_mv_conffile "schroot" "/etc/schroot/run.d/50sbuild"
         prep_mv_conffile "schroot" "/etc/schroot/run.d/00check"
    fi
    if dpkg --compare-versions "$2" le "1.1.6-1"; then
         rm_conffile "schroot" "/etc/schroot/setup.d/20network"
         rm_conffile "schroot" "/etc/schroot/setup.d/30passwd"
    fi
esac

# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.

#DEBHELPER#

exit 0