24 lines
736 B
Nix
24 lines
736 B
Nix
{stdenv, mercurial, nix}: {name ? null, url, rev ? null, md5 ? null, sha256 ? null, fetchSubrepos ? false}:
|
|
|
|
# TODO: statically check if mercurial as the https support if the url starts woth https.
|
|
stdenv.mkDerivation {
|
|
name = "hg-archive" + (if name != null then "-${name}" else "");
|
|
builder = ./builder.sh;
|
|
buildInputs = [mercurial];
|
|
|
|
impureEnvVars = stdenv.lib.fetchers.proxyImpureEnvVars;
|
|
|
|
# Nix <= 0.7 compatibility.
|
|
id = md5;
|
|
|
|
subrepoClause = if fetchSubrepos then "S" else "";
|
|
|
|
outputHashAlgo = if md5 != null then "md5" else "sha256";
|
|
outputHashMode = "recursive";
|
|
outputHash = if md5 != null then
|
|
(stdenv.lib.fetchMD5warn "fetchhg" url md5) else sha256;
|
|
|
|
inherit url rev;
|
|
preferLocalBuild = true;
|
|
}
|