diff --git a/pkgs/os-specific/linux/kernel/manual-config.nix b/pkgs/os-specific/linux/kernel/manual-config.nix index bd9334b8f9b7..ebbc69dec593 100644 --- a/pkgs/os-specific/linux/kernel/manual-config.nix +++ b/pkgs/os-specific/linux/kernel/manual-config.nix @@ -155,14 +155,13 @@ let if platform.kernelTarget == "zImage" || platform.kernelTarget == "Image.gz" then "zinstall" else "install") ]; - postInstall = '' - mkdir -p $dev - cp vmlinux $dev/ - '' + (optionalString installsFirmware '' + postInstall = (optionalString installsFirmware '' mkdir -p $out/lib/firmware '') + (if (platform ? kernelDTB && platform.kernelDTB) then '' make $makeFlags "''${makeFlagsArray[@]}" dtbs dtbs_install INSTALL_DTBS_PATH=$out/dtbs '' else "") + (if isModular then '' + mkdir -p $dev + cp vmlinux $dev/ if [ -z "$dontStrip" ]; then installFlagsArray+=("INSTALL_MOD_STRIP=1") fi diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ce18e9d3762d..78444eb34d1e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -13331,7 +13331,7 @@ with pkgs; linux_samus_latest = linuxPackages_samus_latest.kernel; # A function to build a manually-configured kernel - linuxManualConfig = pkgs.buildLinux; + linuxManualConfig = makeOverridable (callPackage ../os-specific/linux/kernel/manual-config.nix {}); buildLinux = makeOverridable (callPackage ../os-specific/linux/kernel/generic.nix {}); keyutils = callPackage ../os-specific/linux/keyutils { };