summaryrefslogtreecommitdiffstats
path: root/debian/kernel/zz-update-grub
diff options
context:
space:
mode:
Diffstat (limited to 'debian/kernel/zz-update-grub')
-rwxr-xr-xdebian/kernel/zz-update-grub26
1 files changed, 26 insertions, 0 deletions
diff --git a/debian/kernel/zz-update-grub b/debian/kernel/zz-update-grub
new file mode 100755
index 0000000..9521057
--- /dev/null
+++ b/debian/kernel/zz-update-grub
@@ -0,0 +1,26 @@
+#! /bin/sh
+set -e
+
+command -v update-grub >/dev/null || exit 0
+
+if type systemd-detect-virt >/dev/null 2>&1 &&
+ systemd-detect-virt --quiet --container; then
+ exit 0
+fi
+
+set -- $DEB_MAINT_PARAMS
+mode="${1#\'}"
+mode="${mode%\'}"
+case $0:$mode in
+ # Only run on postinst configure and postrm remove, to avoid wasting
+ # time by calling update-grub multiple times on upgrade and removal.
+ # Also run if we have no DEB_MAINT_PARAMS, in order to work with old
+ # kernel packages.
+ */postinst.d/*:|*/postinst.d/*:configure|*/postrm.d/*:|*/postrm.d/*:remove)
+ if [ -e /boot/grub/grub.cfg ]; then
+ exec update-grub
+ fi
+ ;;
+esac
+
+exit 0