From: Michael Prokop Date: Fri, 25 Nov 2022 13:33:35 +0000 (+0100) Subject: Merge remote-tracking branch 'origin/pr/196' X-Git-Tag: v0.101~1 X-Git-Url: http://git.grml.org/?a=commitdiff_plain;h=e02a37035505d78decd7f9847688d442e57ae2f5;hp=7bab80c89ec11649062162119e0ba28d18e9fa58;p=grml-debootstrap.git Merge remote-tracking branch 'origin/pr/196' --- diff --git a/chroot-script b/chroot-script index 007792f..e499c95 100755 --- a/chroot-script +++ b/chroot-script @@ -601,7 +601,12 @@ initrd() { # generate initrd if [ -n "$INITRD" ] ; then echo "Generating initrd." - update-initramfs -c -t -k "$KERNELVER" + if [ "$INITRD_GENERATOR" = 'dracut' ] ; then + DEBIAN_FRONTEND=$DEBIAN_FRONTEND $APTINSTALL dracut + dracut --no-hostonly --kver "$KERNELVER" --fstab --add-fstab /etc/fstab --force --reproducible $INITRD_GENERATOR_OPTS + else + update-initramfs -c -t -k "$KERNELVER" $INITRD_GENERATOR_OPTS + fi fi } # }}} diff --git a/config b/config index fb55f21..68850cc 100644 --- a/config +++ b/config @@ -203,10 +203,19 @@ # Default: 'yes' # UPGRADE_SYSTEM='no' -# Explicit generation of initrd via update-initramfs. +# Explicit generation of initrd via selected initrd generator. # Default: 'yes' # INITRD='no' +# Which generator to use for initrd creation. +# Supported values: 'dracut', 'initramfs-tools' +# Default: 'initramfs-tools' +# INITRD_GENERATOR='initramfs-tools' + +# Pass extra options to the selected initrd generator +# Default: no default +# INITRD_GENERATOR_OPTS='-v' + # If the specified file exists its content will be displayed at the end of the # installation process. # Useful for checking for errors and display warning message. diff --git a/grml-debootstrap b/grml-debootstrap index 9e5cee3..e331a2c 100755 --- a/grml-debootstrap +++ b/grml-debootstrap @@ -63,6 +63,8 @@ MNTPOINT="/mnt/debootstrap.$$" [ -n "$FORCE" ] || FORCE='' [ -n "$HOSTNAME" ] || HOSTNAME='grml' [ -n "$INITRD" ] || INITRD='yes' +[ -n "$INITRD_GENERATOR" ] || INITRD_GENERATOR='initramfs-tools' +[ -n "$INITRD_GENERATOR_OPTS" ] || INITRD_GENERATOR_OPTS='' [ -n "$INSTALL_NOTES" ] || INSTALL_NOTES='/etc/debootstrap/install_notes' [ -n "$LOCALES" ] || LOCALES='yes' [ -n "$MIRROR" ] || MIRROR="$FALLBACK_MIRROR" @@ -1691,6 +1693,8 @@ preparechroot() { [ -n "$GRUB" ] && echo "GRUB='$(sed "s,','\\\\'',g" <<<"${GRUB}")'" >> "$CHROOT_VARIABLES" [ -n "$HOSTNAME" ] && echo "HOSTNAME='$(sed "s,','\\\\'',g" <<<"${HOSTNAME}")'" >> "$CHROOT_VARIABLES" [ -n "$INITRD" ] && echo "INITRD='$(sed "s,','\\\\'',g" <<<"${INITRD}")'" >> "$CHROOT_VARIABLES" + [ -n "$INITRD_GENERATOR" ] && echo "INITRD_GENERATOR='$(sed "s,','\\\\'',g" <<<"${INITRD_GENERATOR}")'" >> "$CHROOT_VARIABLES" + [ -n "$INITRD_GENERATOR_OPTS" ] && echo "INITRD_GENERATOR_OPTS='$(sed "s,','\\\\'',g" <<<"${INITRD_GENERATOR_OPTS}")'" >> "$CHROOT_VARIABLES" [ -n "$INSTALL_NOTES" ] && echo "INSTALL_NOTES='$(sed "s,','\\\\'',g" <<<"${INSTALL_NOTES}")'" >> "$CHROOT_VARIABLES" [ -n "$ISODIR" ] && echo "ISODIR='$(sed "s,','\\\\'',g" <<<"${ISO}")'" >> "$CHROOT_VARIABLES" [ -n "$ISO" ] && echo "ISO='$(sed "s,','\\\\'',g" <<<"${ISO}")'" >> "$CHROOT_VARIABLES"