From da73e45cd0e8b07602097702d4c9ed19fe6e2d74 Mon Sep 17 00:00:00 2001 From: Eric Seidel Date: Sat, 28 Mar 2015 12:57:54 -0700 Subject: [PATCH] fetchgitlocal: local fetcher based on `git ls-files` --- pkgs/build-support/fetchgitlocal/default.nix | 10 ++++++++++ pkgs/top-level/all-packages.nix | 4 ++++ 2 files changed, 14 insertions(+) create mode 100644 pkgs/build-support/fetchgitlocal/default.nix diff --git a/pkgs/build-support/fetchgitlocal/default.nix b/pkgs/build-support/fetchgitlocal/default.nix new file mode 100644 index 00000000000..24568667751 --- /dev/null +++ b/pkgs/build-support/fetchgitlocal/default.nix @@ -0,0 +1,10 @@ +{ runCommand, git }: src: + +runCommand "local-git-export" {} '' + cd ${src} + mkdir -p "$out" + for file in $(${git}/bin/git ls-files); do + mkdir -p "$out/$(dirname $file)" + cp -d $file "$out/$file" + done +'' diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 48824508bbb..2e432e24b51 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -329,6 +329,10 @@ let fetchgitrevision = import ../build-support/fetchgitrevision runCommand git; + fetchgitLocal = import ../build-support/fetchgitlocal { + inherit runCommand git; + }; + fetchmtn = callPackage ../build-support/fetchmtn (config.fetchmtn or {}); packer = callPackage ../development/tools/packer { };