mirror of
https://github.com/NixOS/nix
synced 2025-06-24 22:11:15 +02:00
We had fields set to the same values before in our test data. This is not a problem per-se, but does mean we wouldn't catch certain mixups. Now, the fields are set to distinct values (where possible), which makes the test more robust.
76 lines
1.3 KiB
Nix
76 lines
1.3 KiB
Nix
{ contentAddress }:
|
|
|
|
let
|
|
caArgs =
|
|
if contentAddress then
|
|
{
|
|
__contentAddressed = true;
|
|
outputHashMode = "recursive";
|
|
outputHashAlgo = "sha256";
|
|
}
|
|
else
|
|
{ };
|
|
|
|
derivation' = args: derivation (caArgs // args);
|
|
|
|
system = "my-system";
|
|
|
|
foo = derivation' {
|
|
inherit system;
|
|
name = "foo";
|
|
builder = "/bin/bash";
|
|
args = [
|
|
"-c"
|
|
"echo foo > $out"
|
|
];
|
|
outputs = [
|
|
"out"
|
|
"dev"
|
|
];
|
|
};
|
|
|
|
bar = derivation' {
|
|
inherit system;
|
|
name = "bar";
|
|
builder = "/bin/bash";
|
|
args = [
|
|
"-c"
|
|
"echo bar > $out"
|
|
];
|
|
outputs = [
|
|
"out"
|
|
"dev"
|
|
];
|
|
};
|
|
|
|
in
|
|
derivation' {
|
|
inherit system;
|
|
name = "advanced-attributes";
|
|
builder = "/bin/bash";
|
|
args = [
|
|
"-c"
|
|
"echo hello > $out"
|
|
];
|
|
__sandboxProfile = "sandcastle";
|
|
__noChroot = true;
|
|
__impureHostDeps = [ "/usr/bin/ditto" ];
|
|
impureEnvVars = [ "UNICORN" ];
|
|
__darwinAllowLocalNetworking = true;
|
|
allowedReferences = [ foo ];
|
|
allowedRequisites = [ foo.dev ];
|
|
disallowedReferences = [ bar ];
|
|
disallowedRequisites = [ bar.dev ];
|
|
requiredSystemFeatures = [
|
|
"rainbow"
|
|
"uid-range"
|
|
];
|
|
preferLocalBuild = true;
|
|
allowSubstitutes = false;
|
|
exportReferencesGraph = [
|
|
"refs1"
|
|
foo
|
|
"refs2"
|
|
bar.drvPath
|
|
];
|
|
}
|