From 0a43b6d5e9cbc1414eb32be7c2ade406cf2bc8f4 Mon Sep 17 00:00:00 2001 From: Atemu Date: Sun, 2 May 2021 15:46:34 +0200 Subject: kernel/generic: add kernelTests automatically Unfortunately, there seems to be no way of referencing an overridable version of the package you're in, so it had to be stubed to work at all. This isn't important for our current, very basic kernel nixosTests but might become important when we add more sophisticated ones. --- pkgs/os-specific/linux/kernel/generic.nix | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'pkgs/os-specific/linux/kernel/generic.nix') diff --git a/pkgs/os-specific/linux/kernel/generic.nix b/pkgs/os-specific/linux/kernel/generic.nix index 7f4f0f2d6bb..7f2a97d868e 100644 --- a/pkgs/os-specific/linux/kernel/generic.nix +++ b/pkgs/os-specific/linux/kernel/generic.nix @@ -58,6 +58,7 @@ , preferBuiltin ? stdenv.hostPlatform.linux-kernel.preferBuiltin or false , kernelArch ? stdenv.hostPlatform.linuxArch , kernelTests ? [] +, nixosTests , ... }: @@ -192,7 +193,16 @@ let kernelOlder = lib.versionOlder version; kernelAtLeast = lib.versionAtLeast version; passthru = kernel.passthru // (removeAttrs passthru [ "passthru" ]); - tests = kernelTests; + tests = let + overridableKernel = finalKernel // { + override = args: + lib.warn ( + "override is stubbed for NixOS kernel tests, not applying changes these arguments: " + + toString (lib.attrNames (if lib.isAttrs args then args else args {})) + ) overridableKernel; + }; + in [ (nixosTests.kernel-generic.testsForKernel overridableKernel) ] ++ kernelTests; }; -in lib.extendDerivation true passthru kernel + finalKernel = lib.extendDerivation true passthru kernel; +in finalKernel -- cgit 1.4.1