nixpkgs/pkgs/build-support/fetchhg/default.nix
Jörg Thalheim eac6797380
prefer-fetch-remote: an overlay to fetch on remote builders
This is useful when running tools like NixOps or nix-review
on workstations where the upload to the builder is significantly
slower then downloading the source on the builder itself.
2019-01-18 14:41:10 +00:00

30 lines
729 B
Nix

{ stdenvNoCC, mercurial }:
{ name ? null
, url
, rev ? null
, md5 ? null
, sha256 ? null
, fetchSubrepos ? false
, preferLocalBuild ? true }:
if md5 != null then
throw "fetchhg does not support md5 anymore, please use sha256"
else
# TODO: statically check if mercurial as the https support if the url starts woth https.
stdenvNoCC.mkDerivation {
name = "hg-archive" + (if name != null then "-${name}" else "");
builder = ./builder.sh;
nativeBuildInputs = [mercurial];
impureEnvVars = stdenvNoCC.lib.fetchers.proxyImpureEnvVars;
subrepoClause = if fetchSubrepos then "S" else "";
outputHashAlgo = "sha256";
outputHashMode = "recursive";
outputHash = sha256;
inherit url rev;
inherit preferLocalBuild;
}