summaryrefslogtreecommitdiff
path: root/debian/signing-template/@final_pkg_name@.postrm.in
diff options
context:
space:
mode:
authorSteve McIntyre <steve@einval.com>2021-05-03 20:52:35 +0100
committerSteve McIntyre <steve@einval.com>2021-05-03 20:24:52 +0000
commit29f231fd049f023bcf57810544b757b325fac2ce (patch)
treea79a133ef50834a6d91c3ad0b3eb1005f4a119f3 /debian/signing-template/@final_pkg_name@.postrm.in
parent11e0f1dafde51f35d216e6405804a1462e2db983 (diff)
downloadefi-boot-shim-29f231fd049f023bcf57810544b757b325fac2ce.tar.gz
efi-boot-shim-29f231fd049f023bcf57810544b757b325fac2ce.zip
Add maintainer scripts to the template packagesdebian/15.4-3
Manage installing and removing fbXXX.efi and mmXXX.efi when we install/remove the shim-helpers-$arch-signed packages. Closes: #966845
Diffstat (limited to 'debian/signing-template/@final_pkg_name@.postrm.in')
-rw-r--r--debian/signing-template/@final_pkg_name@.postrm.in53
1 files changed, 53 insertions, 0 deletions
diff --git a/debian/signing-template/@final_pkg_name@.postrm.in b/debian/signing-template/@final_pkg_name@.postrm.in
new file mode 100644
index 00000000..cd261b15
--- /dev/null
+++ b/debian/signing-template/@final_pkg_name@.postrm.in
@@ -0,0 +1,53 @@
+#! /bin/sh
+set -e
+
+case @arch@ in
+ i386)
+ SHIM_REMOVE="mmia32.efi fbia32.efi";;
+ amd64)
+ SHIM_REMOVE="mmx64.efi fbx64.efi";;
+ arm64)
+ SHIM_REMOVE="mmaa64.efi fbaa64.efi";;
+ *)
+ echo "Unsupported dpkg architecture @arch@ in $0. ABORT"
+ exit 1
+ ;;
+esac
+
+# Pull out a config value from /etc/default/grub
+config_item ()
+{
+ if [ -f /etc/default/grub ]; then
+ . /etc/default/grub || return
+ for x in /etc/default/grub.d/*.cfg; do
+ if [ -e "$x" ]; then
+ . "$x"
+ fi
+ done
+ fi
+ eval echo "\$$1"
+}
+
+case $1 in
+ remove|purge)
+ bootloader_id="$(config_item GRUB_DISTRIBUTOR | tr A-Z a-z | \
+ cut -d' ' -f1)"
+ case $bootloader_id in
+ kubuntu) bootloader_id=ubuntu ;;
+ esac
+
+ # If we're being removed, remove the copies installed in the
+ # ESP. grub-install doesn't clean those up for us.
+ if [ "$bootloader_id" ] && \
+ [ -d "/boot/efi/EFI/$bootloader_id" ] && \
+ [ -d /sys/firmware/efi ]; then
+
+ cd /boot/efi/EFI/$bootloader_id
+ rm -f $SHIM_REMOVE
+ fi
+ ;;
+esac
+
+#DEBHELPER#
+
+exit 0