[R][PATCH 2/2] UBUNTU: [Packaging] templates: Run scripts in /usr/share/kernel/*.d too
Emil Renner Berthing
emil.renner.berthing at canonical.com
Wed Apr 1 11:44:12 UTC 2026
BugLink: https://bugs.launchpad.net/bugs/214700
Packages like linux-base and system-boot moved their packaged scripts
from /etc/kernel/*.d to /usr/share/kernel/*.d. We're already using
run-parts which supports multiple directories with /etc overriding
scripts in /share, so let's just add the /usr/share/kernel/*.d
directories to our templates.
Signed-off-by: Emil Renner Berthing <emil.renner.berthing at canonical.com>
---
debian/templates/extra.postinst.in | 4 ++--
debian/templates/extra.postrm.in | 4 ++--
debian/templates/headers.postinst.in | 4 ++--
debian/templates/image.postinst.in | 4 ++--
debian/templates/image.postrm.in | 4 ++--
debian/templates/image.preinst.in | 4 ++--
debian/templates/image.prerm.in | 4 ++--
7 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/debian/templates/extra.postinst.in b/debian/templates/extra.postinst.in
index f9704d122605..d0a7c388f629 100755
--- a/debian/templates/extra.postinst.in
+++ b/debian/templates/extra.postinst.in
@@ -9,10 +9,10 @@ if [ "$1" != configure ]; then
fi
depmod -a -F /boot/System.map-$version $version || true
-if [ -d /etc/kernel/postinst.d ]; then
+if [ -d /etc/kernel/postinst.d ] || [ -d /usr/share/kernel/postinst.d ]; then
cat - >/usr/lib/linux/triggers/$version <<EOF
DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
- --arg="$image_path" /etc/kernel/postinst.d
+ --arg="$image_path" /etc/kernel/postinst.d /usr/share/kernel/postinst.d
EOF
dpkg-trigger --no-await linux-update-$version
fi
diff --git a/debian/templates/extra.postrm.in b/debian/templates/extra.postrm.in
index 70e14b31b265..67e7ca975698 100755
--- a/debian/templates/extra.postrm.in
+++ b/debian/templates/extra.postrm.in
@@ -17,13 +17,13 @@ depmod -a -F /boot/System.map-$version $version 2>/dev/null || true
# leave lying about could be confusing, but we trade that against safety on
# removal.
#
-#if [ -d /etc/kernel/postinst.d ]; then
+#if [ -d /etc/kernel/postinst.d ] || [ -d /usr/share/kernel/postinst.d ]; then
# # We want to behave as if linux-image (without us) was installed, therefore
# # we do not want the postinst support to know we are being removed, claim
# # this is an installation event.
# cat - >/usr/lib/linux/triggers/$version <<EOF
#DEB_MAINT_PARAMS="configure" run-parts --report --exit-on-error --arg=$version \
-# --arg="$image_path" /etc/kernel/postinst.d
+# --arg="$image_path" /etc/kernel/postinst.d /usr/share/kernel/postinst.d
#EOF
# dpkg-trigger --no-await linux-update-$version
#fi
diff --git a/debian/templates/headers.postinst.in b/debian/templates/headers.postinst.in
index 0ec6c5c0785f..0d97d0664441 100755
--- a/debian/templates/headers.postinst.in
+++ b/debian/templates/headers.postinst.in
@@ -7,9 +7,9 @@ if [ "$1" != configure ]; then
exit 0
fi
-if [ -d /etc/kernel/header_postinst.d ]; then
+if [ -d /etc/kernel/header_postinst.d ] || [ -d /usr/share/kernel/header_postinst.d ]; then
DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
- /etc/kernel/header_postinst.d
+ /etc/kernel/header_postinst.d /usr/share/kernel/header_postinst.d
fi
exit 0
diff --git a/debian/templates/image.postinst.in b/debian/templates/image.postinst.in
index 27eb95efad6d..966e57156ac0 100755
--- a/debian/templates/image.postinst.in
+++ b/debian/templates/image.postinst.in
@@ -50,11 +50,11 @@ fi
linux-update-symlinks $change $version $image_path
rm -f /usr/lib/modules/$version/.fresh-install
-if [ -d /etc/kernel/postinst.d ]; then
+if [ -d /etc/kernel/postinst.d ] || [ -d /usr/share/kernel/postinst.d ]; then
mkdir -p /usr/lib/linux/triggers
cat - >/usr/lib/linux/triggers/$version <<EOF
DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
- --arg=$image_path /etc/kernel/postinst.d
+ --arg=$image_path /etc/kernel/postinst.d /usr/share/kernel/postinst.d
EOF
dpkg-trigger --no-await linux-update-$version
fi
diff --git a/debian/templates/image.postrm.in b/debian/templates/image.postrm.in
index 940702df14ed..f401c5d4b564 100755
--- a/debian/templates/image.postrm.in
+++ b/debian/templates/image.postrm.in
@@ -10,7 +10,7 @@ if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
linux-update-symlinks remove $version $image_path
fi
-if [ -d /etc/kernel/postrm.d ]; then
+if [ -d /etc/kernel/postrm.d ] || [ -d /usr/share/kernel/postrm.d ]; then
# We cannot trigger ourselves as at the end of this we will no longer
# exist and can no longer respond to the trigger. The trigger would
# then become lost. Therefore we clear any pending trigger and apply
@@ -20,7 +20,7 @@ if [ -d /etc/kernel/postrm.d ]; then
rm -f /usr/lib/linux/triggers/$version
fi
DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
- --arg=$image_path /etc/kernel/postrm.d
+ --arg=$image_path /etc/kernel/postrm.d /usr/share/kernel/postrm.d
fi
if [ "$1" = purge ]; then
diff --git a/debian/templates/image.preinst.in b/debian/templates/image.preinst.in
index 8785fd16f0c1..0deae26fd12b 100755
--- a/debian/templates/image.preinst.in
+++ b/debian/templates/image.preinst.in
@@ -14,9 +14,9 @@ if [ "$1" = install ]; then
touch /usr/lib/modules/$version/.fresh-install
fi
-if [ -d /etc/kernel/preinst.d ]; then
+if [ -d /etc/kernel/preinst.d ] || [ -d /usr/share/kernel/preinst.d ]; then
DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
- --arg=$image_path /etc/kernel/preinst.d
+ --arg=$image_path /etc/kernel/preinst.d /usr/share/kernel/preinst.d
fi
exit 0
diff --git a/debian/templates/image.prerm.in b/debian/templates/image.prerm.in
index 539038cfa82d..13e12e719258 100755
--- a/debian/templates/image.prerm.in
+++ b/debian/templates/image.prerm.in
@@ -10,9 +10,9 @@ fi
linux-check-removal $version
-if [ -d /etc/kernel/prerm.d ]; then
+if [ -d /etc/kernel/prerm.d ] || [ -d /usr/share/kernel/prerm.d ]; then
DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
- --arg=$image_path /etc/kernel/prerm.d
+ --arg=$image_path /etc/kernel/prerm.d /usr/share/kernel/prerm.d
fi
exit 0
--
2.53.0
More information about the kernel-team
mailing list