Linux lhjmq-records 5.15.0-118-generic #128-Ubuntu SMP Fri Jul 5 09:28:59 UTC 2024 x86_64
Your IP : 18.119.117.77
Current Path : /var/lib/dpkg/info/ |
| Current File : //var/lib/dpkg/info/unattended-upgrades.postinst |
#!/bin/sh
# see: dh_installdeb(1)
set -e
# Do debconf stuff here
. /usr/share/debconf/confmodule
# 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 http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
rm_known () {
if [ -e "$1" ]; then
if egrep -q "^$(md5sum $1 | cut -d' ' -f1)" "$2"; then
rm "$1"
fi
fi
}
# ensure the right permissions for the logdir (#757438)
if [ -d /var/log/unattended-upgrades ]; then
chown root:adm /var/log/unattended-upgrades || true
chmod 0750 /var/log/unattended-upgrades
fi
uu_running() {
python3 -c 'import apt; import apt_pkg; import sys; sys.exit(1 if apt_pkg.get_lock("/var/run/unattended-upgrades.lock") >= 0 else 0)'
}
case "$1" in
configure)
# *sigh* typo in filename in version 0.51ubuntu1
if [ -e /etc/pm/sleep.d/10_unatteded-upgrades-hibernate ]; then
rm -f /etc/pm/sleep.d/10_unatteded-upgrades-hibernate
fi
db_get unattended-upgrades/enable_auto_updates || true
CONFIG="/etc/apt/apt.conf.d/20auto-upgrades"
if [ "${RET}" = "true" ]; then
NEWFILE="/usr/share/unattended-upgrades/20auto-upgrades"
ucf --three-way --debconf-ok "$NEWFILE" "$CONFIG"
ucfr unattended-upgrades "$CONFIG"
elif [ "${RET}" = "false" ] && [ -e "$CONFIG" ]; then
# disable again
NEWFILE="/usr/share/unattended-upgrades/20auto-upgrades-disabled"
ucf --three-way --debconf-ok "$NEWFILE" "$CONFIG"
ucfr unattended-upgrades "$CONFIG"
fi
CONFIG="/etc/apt/apt.conf.d/50unattended-upgrades"
NEWFILE="/usr/share/unattended-upgrades/50unattended-upgrades"
dpkg-maintscript-helper rm_conffile $CONFIG 0.86.4~ -- "$@"
# also fix conffile which was not properly migrated to ucf earlier
if dpkg --compare-versions "$2" lt "1.8~" \
&& [ -e $CONFIG.ucftmp ]; then
dpkg-maintscript-helper rm_conffile $CONFIG -- "$@"
mv $CONFIG.ucftmp $CONFIG
rm_known "$CONFIG.dpkg-bak" "$NEWFILE.md5sum"
rm_known "$CONFIG.ucf-old" "$NEWFILE.md5sum"
fi
ucf --three-way --debconf-ok "$NEWFILE" "$CONFIG"
ucfr unattended-upgrades "$CONFIG"
# Recover from broken dh_installinit override in versions < 0.93.1+nmu1 (or < 0.93.1ubuntu3 in Ubuntu)
if ([ "$(lsb_release -i -s)" != "Ubuntu" ] \
&& ( dpkg --compare-versions "$2" lt "0.93.1+nmu1" \
|| (dpkg --compare-versions "$2" ge "1.5~" \
&& dpkg --compare-versions "$2" lt "1.7~" ) ) ) || \
([ "$(lsb_release -i -s)" = "Ubuntu" ] \
&& ( dpkg --compare-versions "$2" lt "0.93.1ubuntu3" \
|| (dpkg --compare-versions "$2" ge "1.5ubuntu1~" \
&& dpkg --compare-versions "$2" lt "1.5ubuntu4~" ) \
|| (dpkg --compare-versions "$2" ge "1.7~" \
&& dpkg --compare-versions "$2" lt "1.7ubuntu1~" ) ) ); then
if [ -f /etc/rc0.d/K[0-9][0-9]unattended-upgrades ] \
&& [ -f /etc/rc6.d/K[0-9][0-9]unattended-upgrades ] ; then
update-rc.d -f unattended-upgrades remove
fi
# If running systemd, explicitely disable the service otherwise
# the shutdown.target symlink will remain (See Debian Bug #797108)
if [ -d /run/systemd/system ]; then
if deb-systemd-helper --quiet was-enabled unattended-upgrades.service \
|| (dpkg --compare-versions "$2" ge "1.7~" \
&& dpkg --compare-versions "$2" lt "1.7ubuntu1~"); then
deb-systemd-helper disable unattended-upgrades.service >/dev/null || true
fi
fi
fi
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
# Automatically added by dh_systemd_enable/13.5.2ubuntu1
if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-deconfigure" ] || [ "$1" = "abort-remove" ] ; then
# This will only remove masks created by d-s-h on package removal.
deb-systemd-helper unmask 'unattended-upgrades.service' >/dev/null || true
# was-enabled defaults to true, so new installations run enable.
if deb-systemd-helper --quiet was-enabled 'unattended-upgrades.service'; then
# Enables the unit on first installation, creates new
# symlinks on upgrades if the unit file has changed.
deb-systemd-helper enable 'unattended-upgrades.service' >/dev/null || true
else
# Update the statefile to add new symlinks (if any), which need to be
# cleaned up on purge. Also remove old symlinks.
deb-systemd-helper update-state 'unattended-upgrades.service' >/dev/null || true
fi
fi
# End automatically added section
# Automatically added by dh_installinit/13.5.2ubuntu1
if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-deconfigure" ] || [ "$1" = "abort-remove" ] ; then
if [ -x "/etc/init.d/unattended-upgrades" ]; then
update-rc.d unattended-upgrades defaults >/dev/null || exit 1
fi
fi
# End automatically added section
# Explicitly enable and start the service. Debian Bug #797108 for
# deb-systemd-helper fails to correctly enable the unit. It checks for
# enablement using the content of the WantedBy= which has changed so it
# sees the service as disable and will not enable it.
case "$1" in
configure)
if ( ([ "$(lsb_release -i -s)" != "Ubuntu" ] \
&& ( dpkg --compare-versions "$2" lt "0.93.1+nmu1" \
|| (dpkg --compare-versions "$2" ge "1.5~" \
&& dpkg --compare-versions "$2" lt "1.7~" ) ) ) || \
([ "$(lsb_release -i -s)" = "Ubuntu" ] \
&& ( dpkg --compare-versions "$2" lt "0.93.1ubuntu3" \
|| (dpkg --compare-versions "$2" ge "1.5ubuntu1~" \
&& dpkg --compare-versions "$2" lt "1.5ubuntu4~" ) \
|| (dpkg --compare-versions "$2" ge "1.7~" \
&& dpkg --compare-versions "$2" lt "1.7ubuntu1~" ) ) ) ) \
&& [ -d /run/systemd/system ]; then
# workaround systemd bug with enable --now which
# fails to start the unit
systemctl enable unattended-upgrades >&2 || true
if uu_running; then
echo "Skipping starting unattended-upgrades.service because unattended-upgrades is running" >&2
else
deb-systemd-invoke start unattended-upgrades.service >&2 || true
fi
fi
;;
esac
exit 0
|