File: findutils.preinst

package info (click to toggle)
findutils 4.6.0%2Bgit%2B20161106-2
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 19,556 kB
  • ctags: 8,718
  • sloc: ansic: 94,340; sh: 10,069; yacc: 1,254; exp: 850; makefile: 802; python: 66; sed: 16
file content (74 lines) | stat: -rwxr-xr-x 2,437 bytes parent folder | download | duplicates (4)
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
68
69
70
71
72
73
74
#!/bin/sh

set -e

# Inspired from
# http://wiki.debian.org/DpkgConffileHandling
# Move contents from dpkg-conffile to optional (not dpkg-managed) file
mv_with_comment_conffile() {
    PKGNAME="$1"
    CONFFILE="$2"
    OPTIONALCONFIG="$3"

    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 "Removing obsolete conffile $CONFFILE ..."
            rm -f "$CONFFILE"
        else
            if [ -e "$OPTIONALCONFIG" ] ; then
            # $CONFFILE has been removed, but user has already generated 
            # non-dpkgconffile OPTIONALCONFIG
                echo "Obsolete conffile $CONFFILE has been modified by you."
                echo "Saving as $CONFFILE.dpkg-bak ..."
                mv "$CONFFILE" "$CONFFILE".dpkg-bak
            else
                echo generating "$OPTIONALCONFIG" from user modified "$CONFFILE"
                { echo "# Generated from $CONFFILE when upgrading $PKGNAME" 
                    cat "$CONFFILE" ; } \
                    > "$OPTIONALCONFIG"
                chmod --reference="$CONFFILE" "$OPTIONALCONFIG"
                echo "Saving $CONFFILE as $CONFFILE.dpkg-bak ..."
                mv "$CONFFILE" "$CONFFILE".dpkg-bak
            fi
        fi
    fi
}


# Remove a no-longer used conffile
# http://wiki.debian.org/DpkgConffileHandling
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-bak ..."
      mv -f "$CONFFILE" "$CONFFILE".dpkg-bak
    else
      echo "Removing obsolete conffile $CONFFILE ..."
      rm -f "$CONFFILE"
    fi
  fi
}

case "$1" in
  install|upgrade)
    if dpkg --compare-versions "$2" lt-nl "4.2.31-2"; then
    # delete if unchanged, rename otherwise.
      mv_with_comment_conffile findutils "/etc/updatedb.conf" \
        /etc/updatedb.findutils.cron.local
      rm_conffile findutils "/etc/cron.daily/find"
    fi
  ;;
esac



#DEBHELPER#
# vim:tabstop=2:expandtab:shiftwidth=2