From d03a07d5a74ef780b9de78225a7d7d59db8f9169 Mon Sep 17 00:00:00 2001 From: Zhong Jianxin Date: Fri, 27 Aug 2021 16:25:20 +0800 Subject: fetchgit: Support sparse checkout This allow git checkout small parts of a large repo, and avoid fetching unnecessary blobs from server. --- pkgs/build-support/fetchgit/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'pkgs/build-support/fetchgit/default.nix') diff --git a/pkgs/build-support/fetchgit/default.nix b/pkgs/build-support/fetchgit/default.nix index 3a05008dacb..1b59668ce4b 100644 --- a/pkgs/build-support/fetchgit/default.nix +++ b/pkgs/build-support/fetchgit/default.nix @@ -15,6 +15,7 @@ in { url, rev ? "HEAD", md5 ? "", sha256 ? "", hash ? "", leaveDotGit ? deepClone , fetchSubmodules ? true, deepClone ? false , branchName ? null +, sparseCheckout ? "" , name ? urlToName url rev , # Shell code executed after the file has been fetched # successfully. This can do things like check or transform the file. @@ -74,7 +75,7 @@ stdenvNoCC.mkDerivation { else lib.fakeSha256; - inherit url rev leaveDotGit fetchLFS fetchSubmodules deepClone branchName postFetch; + inherit url rev leaveDotGit fetchLFS fetchSubmodules deepClone branchName sparseCheckout postFetch; postHook = if netrcPhase == null then null else '' ${netrcPhase} -- cgit 1.4.1