about summary refs log tree commit diff
path: root/pkgs/os-specific
diff options
context:
space:
mode:
authorSilvan Mosberger <contact@infinisil.com>2024-02-26 20:46:43 +0100
committerGitHub <noreply@github.com>2024-02-26 20:46:43 +0100
commit548a86b335d7ecd8b57ec617781f5e652ab0c38e (patch)
tree46a155f71756d2a1c0fe43a5f32b4cb61650bf36 /pkgs/os-specific
parent996813181ca7f6d108fd514a8d88eaffff5d8ead (diff)
parentf10331cf2e8ebe5125f7890769861545d91a6690 (diff)
downloadnixlib-548a86b335d7ecd8b57ec617781f5e652ab0c38e.tar
nixlib-548a86b335d7ecd8b57ec617781f5e652ab0c38e.tar.gz
nixlib-548a86b335d7ecd8b57ec617781f5e652ab0c38e.tar.bz2
nixlib-548a86b335d7ecd8b57ec617781f5e652ab0c38e.tar.lz
nixlib-548a86b335d7ecd8b57ec617781f5e652ab0c38e.tar.xz
nixlib-548a86b335d7ecd8b57ec617781f5e652ab0c38e.tar.zst
nixlib-548a86b335d7ecd8b57ec617781f5e652ab0c38e.zip
Merge pull request #288154 from ShamrockLee/linux-kernel-passthru
buildLinux: Fix result derivation overriding with `passthru` via `stdenv.mkDerivation` instead of `lib.extendDerivation`
Diffstat (limited to 'pkgs/os-specific')
-rw-r--r--pkgs/os-specific/linux/kernel/generic.nix11
1 files changed, 6 insertions, 5 deletions
diff --git a/pkgs/os-specific/linux/kernel/generic.nix b/pkgs/os-specific/linux/kernel/generic.nix
index 8ff8dcff0b38..14c863b459b1 100644
--- a/pkgs/os-specific/linux/kernel/generic.nix
+++ b/pkgs/os-specific/linux/kernel/generic.nix
@@ -212,7 +212,10 @@ let
     config = { CONFIG_MODULES = "y"; CONFIG_FW_LOADER = "m"; } // lib.optionalAttrs withRust { CONFIG_RUST = "y"; };
   } // lib.optionalAttrs (modDirVersion != null) { inherit modDirVersion; });
 
-  passthru = basicArgs // {
+in
+kernel.overrideAttrs (finalAttrs: previousAttrs: {
+
+  passthru = previousAttrs.passthru or { } // basicArgs // {
     features = kernelFeatures;
     inherit commonStructuredConfig structuredExtraConfig extraMakeFlags isZen isHardened isLibre;
     isXen = lib.warn "The isXen attribute is deprecated. All Nixpkgs kernels that support it now have Xen enabled." true;
@@ -225,9 +228,8 @@ let
       ]);
     });
 
-    passthru = kernel.passthru // (removeAttrs passthru [ "passthru" ]);
     tests = let
-      overridableKernel = finalKernel // {
+      overridableKernel = finalAttrs.finalPackage // {
         override = args:
           lib.warn (
             "override is stubbed for NixOS kernel tests, not applying changes these arguments: "
@@ -237,5 +239,4 @@ let
     in [ (nixosTests.kernel-generic.passthru.testsForKernel overridableKernel) ] ++ kernelTests;
   };
 
-  finalKernel = lib.extendDerivation true passthru kernel;
-in finalKernel
+})