update-initramfs: use dpkg-trigger

This is a lightly modified version of Ian Jackson's original patch,
incorporating maximilian attems's comments.

dh_installdeb automatically installs the triggers file, so the rules file
does not need to be changed.
This commit is contained in:
Joey Hess 2008-04-02 15:26:52 -04:00 committed by maximilian attems
parent e5f8a9faad
commit 5dfdae9ae2
3 changed files with 23 additions and 2 deletions

View File

@ -6,9 +6,16 @@ if [ ! -e /etc/initramfs-tools/modules ]; then
cp /usr/share/initramfs-tools/modules /etc/initramfs-tools/
fi
# Regenerate initramfs on upgrade
if [ "$1" = "configure" ] && [ -n "$2" ]; then
# Regenerate initramfs whenever we go to dpkg state `installed'
if [ "x$1" != xtriggered ] && \
dpkg --compare-versions "$DPKG_RUNNING_VERSION" ge '1.14.5ubuntu10~~'
then
# this activates the trigger, if triggers are working
update-initramfs -u
else
# force it to actually happen
DPKG_MAINTSCRIPT_PACKAGE='' update-initramfs -u
fi
#DEBHELPER#

1
debian/initramfs-tools.triggers vendored Normal file
View File

@ -0,0 +1 @@
interest update-initramfs

View File

@ -4,6 +4,7 @@ STATEDIR=/var/lib/initramfs-tools
BOOTDIR=/boot
CONF=/etc/initramfs-tools/update-initramfs.conf
KPKGCONF=/etc/kernel-img.conf
USETRIGGERS=true
mode=""
version=""
@ -11,6 +12,18 @@ set -e
[ -r ${CONF} ] && . ${CONF}
if $USETRIGGERS \
&& [ x"$DPKG_MAINTSCRIPT_PACKAGE" != x ] \
&& [ $# = 1 ] \
&& [ x"$1" = x-u ] \
&& dpkg-trigger --check-supported 2>/dev/null
then
if dpkg-trigger --no-await update-initramfs; then
echo "update-initramfs: deferring update (trigger activated)"
exit 0
fi
fi
usage()
{
if [ -n "${1}" ]; then