28 lines
885 B
Nix
28 lines
885 B
Nix
|
{ lib
|
||
|
, nixos
|
||
|
, expect
|
||
|
, testers
|
||
|
}:
|
||
|
let
|
||
|
node-forbiddenDependencies-fail = nixos ({ ... }: {
|
||
|
system.forbiddenDependenciesRegex = "-dev$";
|
||
|
environment.etc."dev-dependency" = {
|
||
|
text = "${expect.dev}";
|
||
|
};
|
||
|
documentation.enable = false;
|
||
|
fileSystems."/".device = "ignore-root-device";
|
||
|
boot.loader.grub.enable = false;
|
||
|
});
|
||
|
node-forbiddenDependencies-succeed = nixos ({ ... }: {
|
||
|
system.forbiddenDependenciesRegex = "-dev$";
|
||
|
system.extraDependencies = [ expect.dev ];
|
||
|
documentation.enable = false;
|
||
|
fileSystems."/".device = "ignore-root-device";
|
||
|
boot.loader.grub.enable = false;
|
||
|
});
|
||
|
in
|
||
|
lib.recurseIntoAttrs {
|
||
|
test-forbiddenDependencies-fail = testers.testBuildFailure node-forbiddenDependencies-fail.config.system.build.toplevel;
|
||
|
test-forbiddenDependencies-succeed = node-forbiddenDependencies-succeed.config.system.build.toplevel;
|
||
|
}
|