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 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90
|
#!/bin/sh
set -e
# summary of how this script can be called:
#
# * <postinst> `configure' <most-recently-configured-version>
# * <old-postinst> `abort-upgrade' <new-version>
# * <conflictor's-postinst> `abort-remove' `in-favour' <package> <new-version>
# * <postinst> `abort-remove'
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour' <failed-install-package>
# <version> `removing' <conflicting-package> <version>
#
# for details, see https://www.debian.org/doc/debian-policy/ or
# the debian-policy package
delete_protective_diversion() {
local usrfile="$1"
local firstver="$2"
if [ "$3" != "--" ]; then
echo "delete_protective_diversion called with the wrong number of arguments" >&2
return 1
fi
for _ in $(seq 1 3); do
shift
done
# If the diversion doesn't exist there's nothing to clean up
if [ -z "$(dpkg-divert --list "$usrfile")" ]; then
return 0
fi
dpkg-divert \
--no-rename \
--divert "$usrfile.usr-is-merged" \
--remove "$usrfile"
}
systemd_daemon_reload() {
if [ -z "$DPKG_ROOT" ] && [ -d /run/systemd/system ]; then
systemctl --system daemon-reload >/dev/null || true
fi
}
systemd_unit_restart_if_active() {
if [ -z "$DPKG_ROOT" ] && [ -d /run/systemd/system ]; then
for unit in "$@"; do
if systemctl is-active -q "$unit"; then
deb-systemd-invoke restart "$unit" >/dev/null || true
fi
done
fi
}
DAEMON_UNITS="
libvirtd-admin.socket
libvirtd-ro.socket
libvirtd-tcp.socket
libvirtd-tls.socket
libvirtd.service
libvirtd.socket
"
case "$1" in
configure)
for unit in $DAEMON_UNITS; do
delete_protective_diversion \
"/lib/systemd/system/$unit" \
"10.6.0-3~" \
-- \
"$@"
done
;;
triggered)
systemd_daemon_reload
systemd_unit_restart_if_active libvirtd.service
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
#DEBHELPER#
exit 0
|