nixpkgs/pkgs/build-support
Bjørn Forsman 53614cf1a7 nix-prefetch-git: fix determinism with leaveDotGit
Add more files to the delete list:

 * .git/FETCH_HEAD
 * .git/ORIG_HEAD
 * .git/refs/remotes/origin/HEAD
 * .git/config

Further, remove all remote branches, remove tags not reachable from the
given 'rev', do a full repack and then garbage collect unreferenced
objects.

According to my testing, the result is fully deterministic. As in "any
change done to the upstream repo, ahead of 'rev', will not affect the
hash of the resulting 'clone'". Even changing the clone URL will not
change the output hash, because .git/config is removed.

A new version of git can of course change store format, but that's
unavoidable.

For big repositories, the repack operation may be a bit heavy. But as
far as I can see there is no cheaper way to determinism.
2014-11-02 13:15:33 +01:00
..
agda
build-fhs-chrootenv Fix build-fhs-chrootenv mount script 2014-10-22 10:39:17 +02:00
buildenv
builder-defs
cabal Patch 7a20d76 failed when the Haskell expression lacked a meta attribute. This commit fixes that issue. 2014-10-22 00:23:12 +02:00
clang-wrapper
dotnetenv
fetchadc Add Apple command-line tools 2014-10-02 06:50:09 +01:00
fetchbower
fetchbzr
fetchcvs
fetchdarcs
fetchegg Infrastructure to build chicken eggs. 2014-10-13 23:29:27 +02:00
fetchfile
fetchgit nix-prefetch-git: fix determinism with leaveDotGit 2014-11-02 13:15:33 +01:00
fetchgitrevision
fetchhg
fetchmtn
fetchpatch
fetchsvn
fetchsvnrevision
fetchsvnssh
fetchurl Added an up-to-date http debian mirror for those without ftp access. 2014-10-25 17:10:22 +02:00
fetchzip
gcc-cross-wrapper
gcc-wrapper ld-wrapper: Put back the --sysroot filter 2014-09-02 13:18:03 +02:00
grsecurity Updated grsec. 2014-10-22 02:18:41 +02:00
kdewrapper
kernel
libredirect
make-desktopitem
make-startupitem
make-symlinks
mono-dll-fixer
native-darwin-cctools-wrapper
nuke-references
release
setup-hooks Revert "python-wrapper: fix wrapped argv[0] w/o sed, maybe" 2014-09-02 20:45:41 +04:00
src-only
substitute
substitute-files substituteAllFiles: add derivation 2014-10-16 15:27:25 +01:00
upstream-updater More support for SF.net in auto-updater 2014-09-02 14:25:16 +04:00
vm Debain 7.6-amd64 tarball was updated in place 2014-10-20 15:26:51 -04:00
vsenv
build-pecl.nix
replace-dependency.nix Exponentially reduce computation time needed for replace-dependency by using memoization. 2014-09-28 09:39:39 -04:00
source-from-head-fun.nix
trivial-builders.nix