zig: add fetcher

Changed files
+34
pkgs
development
compilers
+32
pkgs/development/compilers/zig/fetcher.nix
···
+
{
+
lib,
+
zig,
+
runCommand,
+
}:
+
{
+
pname,
+
version,
+
name ? "${pname}-${version}",
+
src,
+
hash ? lib.fakeHash,
+
}@args:
+
runCommand "${name}-zig-deps"
+
{
+
inherit (args) src;
+
+
nativeBuildInputs = [ zig ];
+
+
outputHashAlgo = null;
+
outputHashMode = "recursive";
+
outputHash = hash;
+
}
+
''
+
export ZIG_GLOBAL_CACHE_DIR=$(mktemp -d)
+
+
runHook unpackPhase
+
+
cd $sourceRoot
+
zig build --fetch
+
+
mv $ZIG_GLOBAL_CACHE_DIR/p $out
+
''
+2
pkgs/development/compilers/zig/passthru.nix
···
};
stdenv = overrideCC stdenv zig.cc;
+
+
fetchDeps = callPackage ./fetcher.nix { inherit zig; };
}