diff options
author | Peter Simons <simons@cryp.to> | 2015-03-10 12:40:19 +0100 |
---|---|---|
committer | Peter Simons <simons@cryp.to> | 2015-03-10 13:14:00 +0100 |
commit | 5d02f0e854a82a664ea798261d1dd069fec0801e (patch) | |
tree | 895a210ba16f439a34c4d1b44e583adc391a88ba /pkgs/build-support/fetchgit/default.nix | |
parent | 8196130a1d922f24e77026d88859b824b15e40ba (diff) | |
download | nixpkgs-5d02f0e854a82a664ea798261d1dd069fec0801e.tar nixpkgs-5d02f0e854a82a664ea798261d1dd069fec0801e.tar.gz nixpkgs-5d02f0e854a82a664ea798261d1dd069fec0801e.tar.bz2 nixpkgs-5d02f0e854a82a664ea798261d1dd069fec0801e.tar.lz nixpkgs-5d02f0e854a82a664ea798261d1dd069fec0801e.tar.xz nixpkgs-5d02f0e854a82a664ea798261d1dd069fec0801e.tar.zst nixpkgs-5d02f0e854a82a664ea798261d1dd069fec0801e.zip |
fetchgit: add 'deepClone' argument to disable shallow fetching
This patch resolves https://github.com/NixOS/nixpkgs/issues/6395. Deep cloning is useful in combination with 'leaveDotGit' for builds that want to run "git describe" to obtain a proper version string, etc., like the 'haskellngPackages.cabal2nix' package does.
Diffstat (limited to 'pkgs/build-support/fetchgit/default.nix')
-rw-r--r-- | pkgs/build-support/fetchgit/default.nix | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/pkgs/build-support/fetchgit/default.nix b/pkgs/build-support/fetchgit/default.nix index 7dd179f4c8b..bb89a8f5532 100644 --- a/pkgs/build-support/fetchgit/default.nix +++ b/pkgs/build-support/fetchgit/default.nix @@ -11,8 +11,8 @@ else ""; in "${if matched == null then base else builtins.head matched}${appendShort}"; in -{ url, rev ? "HEAD", md5 ? "", sha256 ? "", leaveDotGit ? false -, fetchSubmodules ? true +{ url, rev ? "HEAD", md5 ? "", sha256 ? "", leaveDotGit ? deepClone +, fetchSubmodules ? true, deepClone ? false , name ? urlToName url rev }: @@ -39,6 +39,7 @@ in */ assert md5 != "" || sha256 != ""; +assert deepClone -> leaveDotGit; stdenv.mkDerivation { inherit name; @@ -50,7 +51,7 @@ stdenv.mkDerivation { outputHashMode = "recursive"; outputHash = if sha256 == "" then md5 else sha256; - inherit url rev leaveDotGit fetchSubmodules; + inherit url rev leaveDotGit fetchSubmodules deepClone; GIT_SSL_CAINFO = "${cacert}/etc/ca-bundle.crt"; @@ -64,4 +65,3 @@ stdenv.mkDerivation { preferLocalBuild = true; } - |