commit: e4cf87fe9c39e792d8975c90c3dd47ac70adb669 Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org> AuthorDate: Tue Jul 16 14:48:38 2019 +0000 Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org> CommitDate: Tue Jul 16 14:48:38 2019 +0000 URL: https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=e4cf87fe
initramfs: Add meta files used by dracut's lsinitrd This will allow dracut's lsinitrd to process our initramfs. Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org> gen_initramfs.sh | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gen_initramfs.sh b/gen_initramfs.sh index 6085ee8..3203cac 100755 --- a/gen_initramfs.sh +++ b/gen_initramfs.sh @@ -226,6 +226,7 @@ append_base_layout() { etc \ etc/mdev/helpers \ lib \ + lib/dracut \ mnt \ proc \ run \ @@ -283,6 +284,38 @@ append_base_layout() { echo "Genkernel $GK_V" > "${TDIR}"/etc/build_id \ || gen_die "Failed to create '${TDIR}/etc/build_id'!" + # Allow lsinitrd from dracut to process our initramfs + echo "$(cat "${TDIR}/etc/build_id") ($(cat "${TDIR}/etc/build_date"))" > "${TDIR}"/lib/dracut/dracut-gk-version.info \ + || gen_die "Failed to create '${TDIR}/lib/dracut/dracut-gk-version.info'!" + + local -a build_parameters + isTrue "${COMPRESS_INITRD}" && build_parameters+=( --compress-initramfs ) || build_parameters+=( --no-compress-initramfs ) + isTrue "${MICROCODE_INITRAMFS}" && build_parameters+=( --microcode-initramfs ) || build_parameters+=( --no-microcode-initramfs ) + isTrue "${RAMDISKMODULES}" && build_parameters+=( --ramdisk-modules ) || build_parameters+=( --no-ramdisk-modules ) + isTrue "${BUSYBOX}" && build_parameters+=( --busybox ) || build_parameters+=( --no-busybox ) + isTrue "${DISKLABEL}" && build_parameters+=( --disklabel ) || build_parameters+=( --no-disklabel ) + isTrue "${BTRFS}" && build_parameters+=( --btrfs ) || build_parameters+=( --no-btrfs ) + isTrue "${ISCSI}" && build_parameters+=( --iscsi ) || build_parameters+=( --no-iscsi ) + isTrue "${MULTIPATH}" && build_parameters+=( --multipath ) || build_parameters+=( --no-multipath ) + isTrue "${DMRAID}" && build_parameters+=( --dmraid ) || build_parameters+=( --no-dmraid ) + isTrue "${MDADM}" && build_parameters+=( --mdadm ) || build_parameters+=( --no-mdadm ) + isTrue "${LVM}" && build_parameters+=( --lvm ) || build_parameters+=( --no-lvm ) + isTrue "${UNIONFS}" && build_parameters+=( --unionfs ) || build_parameters+=( --no-unionfs ) + isTrue "${ZFS}" && build_parameters+=( --zfs ) || build_parameters+=( --no-zfs ) + isTrue "${SPLASH}" && build_parameters+=( --splash ) || build_parameters+=( --no-splash ) + isTrue "${STRACE}" && build_parameters+=( --strace ) || build_parameters+=( --no-strace ) + isTrue "${GPG}" && build_parameters+=( --gpg ) || build_parameters+=( --no-gpg ) + isTrue "${LUKS}" && build_parameters+=( --luks ) || build_parameters+=( --no-luks ) + isTrue "${FIRMWARE}" && build_parameters+=( --firmware ) || build_parameters+=( --no-firmware ) + [ -n "${FIRMWARE_DIR}" ] && build_parameters+=( --firmware-dir="${FIRMWARE_DIR}" ) + [ -n "${FIRMWARE_FILES}" ] && build_parameters+=( --firmware-files="${FIRMWARE_FILES}" ) + isTrue "${SSH}" && build_parameters+=( --ssh ) || build_parameters+=( --no-ssh ) + isTrue "${E2FSPROGS}" && build_parameters+=( --e2fsprogs ) || build_parameters+=( --no-e2fsprogs ) + isTrue "${XFSPROGS}" && build_parameters+=( --xfsprogs ) || build_parameters+=( --no-xfsprogs ) + + echo "${build_parameters[@]}" > "${TDIR}"/lib/dracut/build-parameter.txt \ + || gen_die "Failed to create '${TDIR}/lib/dracut/build-parameter.txt'!" + dd if=/dev/zero of="${TDIR}/var/log/lastlog" bs=1 count=0 seek=0 &>/dev/null \ || die "Failed to create '${TDIR}/var/log/lastlog'!" @@ -1701,6 +1734,7 @@ create_initramfs() { print_info 1 "$(get_indent 1)>> Adding early-microcode support ..." local UCODEDIR="${TEMP}/ucode_tmp/kernel/x86/microcode/" mkdir -p "${UCODEDIR}" || gen_die "Failed to create '${UCODEDIR}'!" + echo 1 > "${TEMP}/ucode_tmp/early_cpio" if [[ "${cfg_CONFIG_MICROCODE_INTEL}" == "y" ]] then