Skip to content

Commit

Permalink
kernel/postinst.d/unattended-upgrades: check to see if canonical-live…
Browse files Browse the repository at this point in the history
…patch is installed and enabled. In the event that it is and it says a reboot is required do not update reboot-required files so that only one reboot message appears in the message of the day.
  • Loading branch information
murraybd committed Jan 17, 2022
1 parent fa8833b commit 4674c17
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 0 deletions.
9 changes: 9 additions & 0 deletions debian/changelog
Original file line number Diff line number Diff line change
@@ -1,3 +1,12 @@
unattended-upgrades (2.9) UNRELEASED; urgency=medium

* kernel/postinst.d/unattended-upgrades: check to see if canonical-livepatch
is installed and enabled. In the event that it is and it says a reboot is
required do not update reboot-required files so that only one reboot
message appears in the message of the day.

-- Brian Murray <[email protected]> Mon, 17 Jan 2022 09:52:04 -0800

unattended-upgrades (2.8) unstable; urgency=medium

[ Lucas Moura ]
Expand Down
23 changes: 23 additions & 0 deletions kernel/postinst.d/unattended-upgrades
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,29 @@ case "$DPKG_MAINTSCRIPT_PACKAGE::$DPKG_MAINTSCRIPT_NAME" in
exit 0;;
esac

KERNEL_UPGRADED=0
# Prefer showing the canonical-livepatch reboot message if one is required
if [ -f "/snap/bin/canonical-livepatch" ]; then
# k-u-r returns 1 if livepatch isn't enabled or if a reboot isn't required
kur_rc=$(/snap/bin/canonical-livepatch kernel-upgrade-required 2> /dev/null)
if [ $? -eq 0 ]; then
exit 0;
elif [ $? -eq 1 ]; then
# status returns 1 if livepatch isn't enabled
status_rc=$(/snap/bin/canonical-livepatch status 2> /dev/null)
if [ $? -eq 0 ]; then
KERNEL_UPGRADED=1
fi
fi
fi

# while a reboot isn't required for the new kernel it might be for another package
if [ $KERNEL_UPGRADED -eq 1 ]; then
if [ "$(echo $DPKG_MAINTSCRIPT_PACKAGE | cut -c1-5)" = "linux" ]; then
exit 0;
fi
fi

if [ -d /var/run ]; then
touch /var/run/reboot-required
if ! grep -q "^$DPKG_MAINTSCRIPT_PACKAGE$" /var/run/reboot-required.pkgs 2> /dev/null ; then
Expand Down

0 comments on commit 4674c17

Please sign in to comment.