From 0aa3d31930f42a33f56f9052371f9ea212673882 Mon Sep 17 00:00:00 2001 From: Julien Fortin Date: Wed, 16 Jan 2019 17:19:45 +0800 Subject: [PATCH] debian: postinst: remove diversion after upgrade from stretch closes: #919443 Reported-by: Andreas Beckmann Signed-off-by: Julien Fortin --- debian/changelog | 7 +++++++ debian/ifupdown2.postinst | 23 +++++++++++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/debian/changelog b/debian/changelog index cd62e83..44b6985 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +ifupdown2 (1.2.5-1) unstable; urgency=medium + + * Fix: debian: postinst: remove diversion after upgrade from stretch + (closes: #919443) + + -- Julien Fortin Wed, 16 Jan 2019 23:42:42 +0800 + ifupdown2 (1.2.4-1) unstable; urgency=medium * Fix: statemanager directory path customization via ifupdown2.conf diff --git a/debian/ifupdown2.postinst b/debian/ifupdown2.postinst index 0948035..3689256 100644 --- a/debian/ifupdown2.postinst +++ b/debian/ifupdown2.postinst @@ -63,12 +63,35 @@ process_udev() fi } +# restore file if we diverted it on install/upgrade +_postinst_remove_diverts() +{ + diversions=$(LC_ALL=C.UTF-8 dpkg-divert --list | grep "^diversion of $1 .* by ifupdown2$" | wc -l 2> /dev/null) + if [ $diversions -gt 0 ]; + then + dpkg-divert --remove --package ifupdown2 --rename $1 + fi +} + +postinst_remove_diverts() +{ + for filename in ifup ifdown ifquery ifreload + do + _postinst_remove_diverts "/sbin/$filename" + _postinst_remove_diverts "/usr/share/bash-completion/completions/$filename" + _postinst_remove_diverts "/etc/bash_completion.d/$filename" + _postinst_remove_diverts "/usr/share/man/man8/$filename.8.gz" + done + _postinst_remove_diverts "/usr/share/man/man5/interfaces.5.gz" +} + case "$1" in configure) fix_dhclient_file_with_space process_etc_network_interfaces process_udev chmod +x /usr/share/ifupdown2/__main__.py + postinst_remove_diverts ;; abort-upgrade|abort-remove|abort-deconfigure) -- 2.39.2