[elbe-devel] [PATCH] debianize: add pre/post inst/rm scripts for kernel
John Ogness
john.ogness at linutronix.de
Thu Jul 28 08:59:24 CEST 2016
Basic scripts to call the /etc/kernel/* hooks are added. This
allows automatic initrd and grub updates during install and
remove.
Signed-off-by: John Ogness <john.ogness at linutronix.de>
---
debian/elbe-debianize.install | 4 ++++
elbepack/debianize/kernel.py | 2 +-
elbepack/makofiles/debianize/kernel/postinst.mako | 12 ++++++++++++
elbepack/makofiles/debianize/kernel/postrm.mako | 12 ++++++++++++
elbepack/makofiles/debianize/kernel/preinst.mako | 12 ++++++++++++
elbepack/makofiles/debianize/kernel/prerm.mako | 12 ++++++++++++
6 files changed, 53 insertions(+), 1 deletion(-)
create mode 100755 elbepack/makofiles/debianize/kernel/postinst.mako
create mode 100755 elbepack/makofiles/debianize/kernel/postrm.mako
create mode 100755 elbepack/makofiles/debianize/kernel/preinst.mako
create mode 100755 elbepack/makofiles/debianize/kernel/prerm.mako
diff --git a/debian/elbe-debianize.install b/debian/elbe-debianize.install
index 5caeb66..45b9ee7 100644
--- a/debian/elbe-debianize.install
+++ b/debian/elbe-debianize.install
@@ -11,3 +11,7 @@
./usr/lib/python2.*/*-packages/elbepack/makofiles/debianize/kernel/control.mako
./usr/lib/python2.*/*-packages/elbepack/makofiles/debianize/kernel/format.mako
./usr/lib/python2.*/*-packages/elbepack/makofiles/debianize/kernel/linux-headers.install
+./usr/lib/python2.*/*-packages/elbepack/makofiles/debianize/kernel/preinst.mako
+./usr/lib/python2.*/*-packages/elbepack/makofiles/debianize/kernel/postinst.mako
+./usr/lib/python2.*/*-packages/elbepack/makofiles/debianize/kernel/prerm.mako
+./usr/lib/python2.*/*-packages/elbepack/makofiles/debianize/kernel/postrm.mako
diff --git a/elbepack/debianize/kernel.py b/elbepack/debianize/kernel.py
index 77b49dc..f3916f8 100644
--- a/elbepack/debianize/kernel.py
+++ b/elbepack/debianize/kernel.py
@@ -68,7 +68,7 @@ class Kernel (DebianizeBase):
self.tmpl_dir = os.path.join(mako_template_dir, 'debianize/kernel')
pkg_name = self.deb['p_name']+'-'+self.deb['k_version']
- for tmpl in ['control', 'rules']:
+ for tmpl in ['control', 'rules', 'preinst', 'postinst', 'prerm', 'postrm']:
with open (os.path.join('debian/', tmpl), 'w') as f:
mako = os.path.join(self.tmpl_dir, tmpl+'.mako')
f.write (template(self.deb, mako))
diff --git a/elbepack/makofiles/debianize/kernel/postinst.mako b/elbepack/makofiles/debianize/kernel/postinst.mako
new file mode 100755
index 0000000..c2b43b7
--- /dev/null
+++ b/elbepack/makofiles/debianize/kernel/postinst.mako
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+set -e
+
+# Pass maintainer script parameters to hook scripts
+export DEB_MAINT_PARAMS="$*"
+
+# Tell initramfs builder whether it's wanted
+export INITRD=Yes
+
+test -d /etc/kernel/postinst.d && run-parts --arg="${k_version}-${p_name}" --arg="/boot/vmlinuz-${k_version}-${p_name}" /etc/kernel/postinst.d
+exit 0
diff --git a/elbepack/makofiles/debianize/kernel/postrm.mako b/elbepack/makofiles/debianize/kernel/postrm.mako
new file mode 100755
index 0000000..252fc3c
--- /dev/null
+++ b/elbepack/makofiles/debianize/kernel/postrm.mako
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+set -e
+
+# Pass maintainer script parameters to hook scripts
+export DEB_MAINT_PARAMS="$*"
+
+# Tell initramfs builder whether it's wanted
+export INITRD=Yes
+
+test -d /etc/kernel/postrm.d && run-parts --arg="${k_version}-${p_name}" --arg="/boot/vmlinuz-${k_version}-${p_name}" /etc/kernel/postrm.d
+exit 0
diff --git a/elbepack/makofiles/debianize/kernel/preinst.mako b/elbepack/makofiles/debianize/kernel/preinst.mako
new file mode 100755
index 0000000..bff9cd2
--- /dev/null
+++ b/elbepack/makofiles/debianize/kernel/preinst.mako
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+set -e
+
+# Pass maintainer script parameters to hook scripts
+export DEB_MAINT_PARAMS="$*"
+
+# Tell initramfs builder whether it's wanted
+export INITRD=Yes
+
+test -d /etc/kernel/preinst.d && run-parts --arg="${k_version}-${p_name}" --arg="/boot/vmlinuz-${k_version}-${p_name}" /etc/kernel/preinst.d
+exit 0
diff --git a/elbepack/makofiles/debianize/kernel/prerm.mako b/elbepack/makofiles/debianize/kernel/prerm.mako
new file mode 100755
index 0000000..a5edf4b
--- /dev/null
+++ b/elbepack/makofiles/debianize/kernel/prerm.mako
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+set -e
+
+# Pass maintainer script parameters to hook scripts
+export DEB_MAINT_PARAMS="$*"
+
+# Tell initramfs builder whether it's wanted
+export INITRD=Yes
+
+test -d /etc/kernel/prerm.d && run-parts --arg="${k_version}-${p_name}" --arg="/boot/vmlinuz-${k_version}-${p_name}" /etc/kernel/prerm.d
+exit 0
--
2.8.1
More information about the elbe-devel
mailing list