limine: align concatenated initrd modules to 4 bytes

The kernel's initramfs unpacker only accepts a raw cpio header at a
4-byte aligned offset, so multiple module_path entries need padding
between them. Without this an uncompressed cpio after the main
compressed initrd fails with "invalid magic at start of compressed
archive".

Patch merged upstream as Limine PR #599, remove on next release.
This commit is contained in:
r-vdp
2026-06-25 22:49:51 +02:00
parent b3a73f17ba
commit e68249a28b
+11
View File
@@ -1,5 +1,6 @@
# Derivation containing the Limine host tool and the compiled bootloader
{
fetchpatch,
fetchurl,
lib,
llvmPackages,
@@ -57,6 +58,16 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-8aUp2lzVClyje6WHMTOnuOclhLEn1zMf6U5VTl5gEvc=";
};
patches = [
# Merged upstream in https://github.com/Limine-Bootloader/Limine/pull/599,
# remove on the next release.
(fetchpatch {
name = "align-linux-modules.patch";
url = "https://github.com/Limine-Bootloader/Limine/commit/6635ae4ff2321f9a3c85116a57a00e3b6edc100b.patch";
hash = "sha256-poAcZND5xwS8npHCytS9lwcQi9oCEcc4bR+6HKVXJ78=";
})
];
enableParallelBuilding = true;
hardeningDisable = lib.optionals missingZerocallusedregs [