Exposing the function via clanLib makes it more accessible to clan modules This allows each module to define its own test without needing to depend on any fileSystem path assumptions in the clan-core repo
34 lines
798 B
Nix
34 lines
798 B
Nix
test:
|
|
{ pkgs, self, ... }:
|
|
let
|
|
inherit (pkgs) lib;
|
|
nixos-lib = import (pkgs.path + "/nixos/lib") { };
|
|
in
|
|
(nixos-lib.runTest {
|
|
hostPkgs = pkgs;
|
|
# speed-up evaluation
|
|
defaults = (
|
|
{ config, options, ... }:
|
|
{
|
|
imports = [
|
|
self.clanLib.test.minifyModule
|
|
];
|
|
config = lib.mkMerge [
|
|
(lib.optionalAttrs (options ? clan) {
|
|
clan.core.settings.machine.name = config.networking.hostName;
|
|
})
|
|
{
|
|
documentation.enable = lib.mkDefault false;
|
|
nix.settings.min-free = 0;
|
|
system.stateVersion = config.system.nixos.release;
|
|
}
|
|
];
|
|
}
|
|
);
|
|
|
|
_module.args = { inherit self; };
|
|
# to accept external dependencies such as disko
|
|
node.specialArgs.self = self;
|
|
imports = [ test ];
|
|
}).config.result
|