about summary refs log tree commit diff
path: root/debian/network-manager.postrm
diff options
context:
space:
mode:
Diffstat (limited to 'debian/network-manager.postrm')
-rw-r--r--debian/network-manager.postrm85
1 files changed, 85 insertions, 0 deletions
diff --git a/debian/network-manager.postrm b/debian/network-manager.postrm
new file mode 100644
index 00000000..812369bd
--- /dev/null
+++ b/debian/network-manager.postrm
@@ -0,0 +1,85 @@
+#!/bin/sh -e
+# This script can be called in the following ways:
+#
+# After the package was removed:
+#	<postrm> remove
+#
+# After the package was purged:
+#	<postrm> purge
+#
+# After the package was upgraded:
+#	<old-postrm> upgrade <new-version>
+# if that fails:
+#	<new-postrm> failed-upgrade <old-version>
+#
+#
+# After all of the packages files have been replaced:
+#	<postrm> disappear <overwriting-package> <version>
+#
+#
+# If preinst fails during install:
+#	<new-postrm> abort-install
+#
+# If preinst fails during upgrade of removed package:
+#	<new-postrm> abort-install <old-version>
+#
+# If preinst fails during upgrade:
+#	<new-postrm> abort-upgrade <old-version>
+
+
+# Undo removal of a no-longer used conffile
+undo_rm_conffile()
+{
+    CONFFILE="$1"
+    
+    if [ ! -e "$CONFFILE" ]; then
+	if [ -e "$CONFFILE".dpkg-bak ]; then
+	    echo "Restoring modified conffile $CONFFILE"
+	    mv -f "$CONFFILE".dpkg-bak "$CONFFILE"
+	elif [ -e "$CONFFILE".dpkg-remove ]; then
+	    echo "Restoring conffile $CONFFILE"
+	    mv -f "$CONFFILE".dpkg-remove "$CONFFILE"
+	fi
+    fi
+}
+
+
+# Purge backup conffile
+rm_backup_conffile()
+{
+    CONFFILE="$1"
+    if [ -e "$CONFFILE".dpkg-bak ]; then
+	echo "Purging backup of conffile $CONFFILE"
+	rm -f "$CONFFILE".dpkg-bak
+    fi
+}
+
+
+case "$1" in
+    remove)
+        ;;
+
+    purge)
+        rm_backup_conffile /etc/dbus-1/event.d/25NetworkManager
+	rm_backup_conffile /etc/dbus-1/event.d/26NetworkManagerDispatcher
+	;;
+
+    upgrade|failed-upgrade|disappear)
+        ;;
+
+    abort-install|abort-upgrade)
+	# Abort upgrade from previous versions
+        if dpkg --compare-versions "$2" lt "0.6.4-8"; then
+	    undo_rm_conffile /etc/dbus-1/event.d/25NetworkManager
+	    undo_rm_conffile /etc/dbus-1/event.d/26NetworkManagerDispatcher
+	fi
+	;;
+
+    *)
+        echo "$0 called with unknown argument \`$1'" 1>&2
+	exit 1
+	;;
+esac
+
+#DEBHELPER#
+exit 0