From fdeec420b54e252e611c353ce39fe61c924e3e7d Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 31 Jul 2013 11:33:45 -0400 Subject: etckeeper (1.7) unstable; urgency=low * Fix hilarious typo hardcoding my name. Closes: #718425 # imported from the archive --- debian/preinst | 83 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 debian/preinst (limited to 'debian/preinst') diff --git a/debian/preinst b/debian/preinst new file mode 100644 index 0000000..4dda427 --- /dev/null +++ b/debian/preinst @@ -0,0 +1,83 @@ +#!/bin/sh +set -e + +#DEBHELPER# + +# Prepare to move a conffile without triggering a dpkg question +prep_mv_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 + rm -f "$CONFFILE" + fi + fi +} + +# 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-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" le "0.7"; then + for c in README 50uncommitted-changes; do + 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 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 etckeeper "/etc/etckeeper/init.d/$c" + done + fi + if dpkg --compare-versions "$2" le "0.10"; then + for c in 10vcs-test 30git-add 30hg-addremove 40git-rm; do + prep_mv_conffile etckeeper "/etc/etckeeper/post-install.d/$c" + + done + fi + if dpkg --compare-versions "$2" le "0.13"; then + for c in 20store-empty-directory 40rm-old-metadata; do + rm_conffile etckeeper "/etc/etckeeper/pre-commit.d/$c" + done + for c in 10restore-etckeeper 20restore-metadata; do + prep_mv_conffile etckeeper "/etc/etckeeper/init.d/$c" + done + fi + if dpkg --compare-versions "$2" le "0.15"; then + for c in 40bzr-rm 45bzr-precommit; do + rm_conffile etckeeper "/etc/etckeeper/commit.d/$c" + done + fi + if dpkg --compare-versions "$2" le "0.50"; then + for c in 20warn-hardlinks 20warn-special-file; do + rm_conffile etckeeper "/etc/etckeeper/pre-commit.d/$c" + done + fi + if dpkg --compare-versions "$2" le "0.61"; then + rm_conffile etckeeper "/etc/etckeeper/commit.d/40git-rm" + fi + + # delete files the prerm stashes away to handle purging + rm -rf /var/cache/etckeeper/stash +esac -- cgit v1.2.3