mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-01-04 03:53:56 +00:00
36 lines
706 B
Nix
36 lines
706 B
Nix
|
{
|
||
|
lib,
|
||
|
libc,
|
||
|
config,
|
||
|
system,
|
||
|
bootstrapFiles,
|
||
|
isFromBootstrapFiles ? false,
|
||
|
}:
|
||
|
|
||
|
let
|
||
|
maybeDenoteProvenance = lib.optionalAttrs isFromBootstrapFiles {
|
||
|
passthru = {
|
||
|
inherit isFromBootstrapFiles;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
maybeContentAddressed = lib.optionalAttrs config.contentAddressedByDefault {
|
||
|
__contentAddressed = true;
|
||
|
outputHashAlgo = "sha256";
|
||
|
outputHashMode = "recursive";
|
||
|
};
|
||
|
|
||
|
args = {
|
||
|
inherit system bootstrapFiles;
|
||
|
extraAttrs = maybeContentAddressed;
|
||
|
};
|
||
|
result =
|
||
|
if libc == "glibc" then
|
||
|
import ./glibc.nix args
|
||
|
else if libc == "musl" then
|
||
|
import ./musl.nix args
|
||
|
else
|
||
|
throw "unsupported libc";
|
||
|
in
|
||
|
result // maybeDenoteProvenance
|