lix/src/nix-store
Eelco Dolstra d367b8e787 Add build mode to compute fixed-output derivation hashes
For example,

  $ nix-build --hash -A nix-repl.src

will build the fixed-output derivation nix-repl.src (a fetchFromGitHub
call), but instead of *verifying* the hash given in the Nix
expression, it prints out the resulting hash, and then moves the
result to its content-addressed location in the Nix store. E.g

  build produced path ‘/nix/store/504a4k6zi69dq0yjc0bm12pa65bccxam-nix-repl-8a2f5f0607540ffe56b56d52db544373e1efb980-src’ with sha256 hash ‘0cjablz01i0g9smnavhf86imwx1f9mnh5flax75i615ml71gsr88’

The goal of this is to make all nix-prefetch-* scripts unnecessary: we
can just let Nix run the real thing (i.e., the corresponding fetch*
derivation).

Another example:

  $ nix-build --hash -E 'with import <nixpkgs> {}; fetchgit { url = "https://github.com/NixOS/nix.git"; sha256 = "ffffffffffffffffffffffffffffffffffffffffffffffffffff"; }'
  ...
  git revision is 9e7c1a4bbd
  ...
  build produced path ‘/nix/store/gmsnh9i7x4mb7pyd2ns7n3c9l90jfsi1-nix’ with sha256 hash ‘1188xb621diw89n25rifqg9lxnzpz7nj5bfh4i1y3dnis0dmc0zp’

(Having to specify a fake sha256 hash is a bit annoying...)
2016-01-31 12:18:09 +01:00
..
dotgraph.cc Untabify 2016-01-28 16:01:01 +01:00
dotgraph.hh Use "#pragma once" to prevent repeated header file inclusion 2012-07-18 14:59:03 -04:00
local.mk Use libsodium instead of OpenSSL for binary cache signing 2015-02-04 17:10:31 +01:00
nix-store.cc Add build mode to compute fixed-output derivation hashes 2016-01-31 12:18:09 +01:00
serve-protocol.hh nix-store --serve: Implement log size limit 2015-10-06 17:33:30 +02:00
xmlgraph.cc Untabify 2016-01-28 16:03:32 +01:00
xmlgraph.hh Use "#pragma once" to prevent repeated header file inclusion 2012-07-18 14:59:03 -04:00