diff --git a/nixos/modules/system/boot/kernel.nix b/nixos/modules/system/boot/kernel.nix index 363d8e47a0f..1a6a9d99d5b 100644 --- a/nixos/modules/system/boot/kernel.nix +++ b/nixos/modules/system/boot/kernel.nix @@ -38,11 +38,11 @@ in default = pkgs.linuxPackages; type = types.unspecified // { merge = mergeEqualOption; }; apply = kernelPackages: kernelPackages.extend (self: super: { - kernel = super.kernel.override { + kernel = super.kernel.override (originalArgs: { inherit randstructSeed; - kernelPatches = super.kernel.kernelPatches ++ kernelPatches; + kernelPatches = (originalArgs.kernelPatches or []) ++ kernelPatches; features = lib.recursiveUpdate super.kernel.features features; - }; + }); }); # We don't want to evaluate all of linuxPackages for the manual # - some of it might not even evaluate correctly. diff --git a/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix b/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix index 78d1155e8ed..6ef781f6095 100644 --- a/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix +++ b/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix @@ -27,7 +27,7 @@ in buildLinux (args // { url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz"; sha256 = "0szqm9f939p9z701i5hj881nf5bhfa0a6037bbcz974y0x8g9nmk"; }; - }; in [ rt-patch ] ++ lib.remove rt-patch kernelPatches; + }; in [ rt-patch ] ++ kernelPatches; structuredExtraConfig = with lib.kernel; { PREEMPT_RT = yes; diff --git a/pkgs/os-specific/linux/kernel/linux-rt-5.11.nix b/pkgs/os-specific/linux/kernel/linux-rt-5.11.nix index d9ebedf6801..5d1b14f1d0f 100644 --- a/pkgs/os-specific/linux/kernel/linux-rt-5.11.nix +++ b/pkgs/os-specific/linux/kernel/linux-rt-5.11.nix @@ -27,7 +27,7 @@ in buildLinux (args // { url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz"; sha256 = "1az6cn9jj3bnjgwzzrjy1adnrnn06p2vzsnc1iib4xhs0sfr27hc"; }; - }; in [ rt-patch ] ++ lib.remove rt-patch kernelPatches; + }; in [ rt-patch ] ++ kernelPatches; structuredExtraConfig = with lib.kernel; { PREEMPT_RT = yes; diff --git a/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix b/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix index ec065e6833e..7be45dc3e68 100644 --- a/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix +++ b/pkgs/os-specific/linux/kernel/linux-rt-5.4.nix @@ -23,7 +23,7 @@ in buildLinux (args // { url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz"; sha256 = "0prfrvk2ds20sclikizzgg5qf4mfcyaymp9r272d5nj35293622n"; }; - }; in [ rt-patch ] ++ lib.remove rt-patch kernelPatches; + }; in [ rt-patch ] ++ kernelPatches; structuredExtraConfig = with lib.kernel; { PREEMPT_RT = yes;