diff options
author | cvlc12 <cvlc12@outlook.fr> | 2023-06-06 17:14:57 +0200 |
---|---|---|
committer | cvlc12 <cvlc12@outlook.fr> | 2023-06-18 20:38:20 +0200 |
commit | a6d8884120822c090c0aad6667f1795c5b18d3be (patch) | |
tree | 674ae549c01dca9f8b33c1de05bc9c4d81284993 /src/kernel-install | |
parent | Merge pull request #28069 from medhefgo/boot-dp (diff) | |
download | systemd-a6d8884120822c090c0aad6667f1795c5b18d3be.tar.xz systemd-a6d8884120822c090c0aad6667f1795c5b18d3be.zip |
Define 'microcode' type of initrd for the kernel-install staging area.
This allows microcode to be referenced first for UKIs and loader entries.
Diffstat (limited to 'src/kernel-install')
-rwxr-xr-x | src/kernel-install/90-loaderentry.install.in | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/kernel-install/90-loaderentry.install.in b/src/kernel-install/90-loaderentry.install.in index f4ba4708ba..e1cab0dc23 100755 --- a/src/kernel-install/90-loaderentry.install.in +++ b/src/kernel-install/90-loaderentry.install.in @@ -117,9 +117,12 @@ chown root:root "$KERNEL_DEST" || : shift "$INITRD_OPTIONS_SHIFT" # All files listed as arguments, and staged files starting with "initrd" are installed as initrds. -for initrd in "$@" "${KERNEL_INSTALL_STAGING_AREA}"/initrd*; do +for initrd in "${KERNEL_INSTALL_STAGING_AREA}/microcode*" "${@}" "${KERNEL_INSTALL_STAGING_AREA}/initrd*"; do [ -f "$initrd" ] || { - [ "$initrd" = "${KERNEL_INSTALL_STAGING_AREA}/initrd*" ] && continue + case "$initrd" in + "${KERNEL_INSTALL_STAGING_AREA}/initrd*" | "${KERNEL_INSTALL_STAGING_AREA}/microcode*") + continue ;; + esac echo "Error: initrd '$initrd' not a file." >&2 exit 1 } @@ -153,7 +156,7 @@ mkdir -p "${LOADER_ENTRY%/*}" || { echo "linux $KERNEL_ENTRY" have_initrd= - for initrd in "${@}" "${KERNEL_INSTALL_STAGING_AREA}"/initrd*; do + for initrd in "${KERNEL_INSTALL_STAGING_AREA}/microcode*" "${@}" "${KERNEL_INSTALL_STAGING_AREA}/initrd*"; do [ -f "$initrd" ] || continue echo "initrd $ENTRY_DIR/${initrd##*/}" have_initrd=yes |