mirror of
https://github.com/NixOS/nix
synced 2025-06-25 02:21:16 +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.
(cherry picked from commit a0b2b75f59
)
70 lines
1.2 KiB
Nix
70 lines
1.2 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;
|
|
}
|