summaryrefslogtreecommitdiff
path: root/debian/preinst
diff options
context:
space:
mode:
Diffstat (limited to 'debian/preinst')
-rw-r--r--debian/preinst11
1 files changed, 6 insertions, 5 deletions
diff --git a/debian/preinst b/debian/preinst
index 65e9c9e..c1fdc27 100644
--- a/debian/preinst
+++ b/debian/preinst
@@ -5,11 +5,12 @@ set -e
# Prepare to move a conffile without triggering a dpkg question
prep_mv_conffile() {
- CONFFILE="$1"
+ PKGNAME="$1"
+ CONFFILE="$2"
if [ -e "$CONFFILE" ]; then
md5sum="`md5sum \"$CONFFILE\" | sed -e \"s/ .*//\"`"
- old_md5sum="`sed -n -e \"/^Conffiles:/,/^[^ ]/{\\\\' $CONFFILE'{s/.* //;p}}\" /var/lib/dpkg/status`"
+ old_md5sum="`dpkg-query -W -f='${Conffiles}' $PKGNAME | sed -n -e \"\\\\' $CONFFILE'{s/ obsolete$//;s/.* //p}\"`"
if [ "$md5sum" = "$old_md5sum" ]; then
rm -f "$CONFFILE"
fi
@@ -20,14 +21,14 @@ case "$1" in
install|upgrade)
if dpkg --compare-versions "$2" le "0.7"; then
for c in README 50uncommitted-changes; do
- prep_mv_conffile "/etc/etckeeper/pre-apt.d/$c"
+ prep_mv_conffile etckeeper "/etc/etckeeper/pre-apt.d/$c"
done
for c in README 10git-test 30git-add 40git-rm 50git-commit; do
- prep_mv_conffile "/etc/etckeeper/post-apt.d/$c"
+ prep_mv_conffile etckeeper "/etc/etckeeper/post-apt.d/$c"
done
for c in 40git-init 50git-ignore 50git-perm \
50git-pre-commit-hook 70git-add; do
- prep_mv_conffile "/etc/etckeeper/init.d/$c"
+ prep_mv_conffile etckeeper "/etc/etckeeper/init.d/$c"
done
fi
esac