lix/src/libstore
Eelco Dolstra 112ee89501 * Re-enable support for substitutes in the normaliser.
* A better substitute mechanism.

  Instead of generating a store expression for each store path for
  which we have a substitute, we can have a single store expression
  that builds a generic program that is invoked to build the desired
  store path, which is passed as an argument.

  This means that operations like `nix-pull' only produce O(1) files
  instead of O(N) files in the store when registering N substitutes.
  (It consumes O(N) database storage, of course, but that's not a
  performance problem).

* Added a test for the substitute mechanism.
  
* `nix-store --substitute' reads the substitutes from standard input,
  instead of from the command line.  This prevents us from running
  into the kernel's limit on command line length.
2004-06-20 19:17:54 +00:00
..
db.cc * Refactoring. 2004-06-20 13:37:51 +00:00
db.hh * libnix -> libstore. 2003-11-18 10:55:27 +00:00
globals.cc * A switch `-j NUMBER' to set the maximum number of parallel jobs (0 = 2004-05-12 14:20:32 +00:00
globals.hh * A switch `-j NUMBER' to set the maximum number of parallel jobs (0 = 2004-05-12 14:20:32 +00:00
Makefile.am * Big refactoring. Move to a much more explicitly state machine based 2004-06-18 18:09:32 +00:00
misc.cc * Big refactoring. Move to a much more explicitly state machine based 2004-06-18 18:09:32 +00:00
normalise.cc * Re-enable support for substitutes in the normaliser. 2004-06-20 19:17:54 +00:00
normalise.hh * True parallel builds. Nix can now run as many build jobs in 2004-05-11 18:05:44 +00:00
pathlocks.cc * True parallel builds. Nix can now run as many build jobs in 2004-05-11 18:05:44 +00:00
pathlocks.hh * True parallel builds. Nix can now run as many build jobs in 2004-05-11 18:05:44 +00:00
references.cc * Catch SIGINT to terminate cleanly when the user tries to interrupt 2004-01-15 20:23:55 +00:00
references.hh * libnix -> libstore. 2003-11-18 10:55:27 +00:00
store.cc * Re-enable support for substitutes in the normaliser. 2004-06-20 19:17:54 +00:00
store.hh * Re-enable support for substitutes in the normaliser. 2004-06-20 19:17:54 +00:00
storeexpr.cc * Changed the extension for store expressions from ".nix" to ".store" 2004-01-12 10:44:48 +00:00
storeexpr.hh * "Nix expression" -> "store expression". 2003-11-18 11:22:29 +00:00
test-builder-1.sh * libnix -> libstore. 2003-11-18 10:55:27 +00:00
test-builder-2.sh * libnix -> libstore. 2003-11-18 10:55:27 +00:00
test.cc * libnix -> libstore. 2003-11-18 10:55:27 +00:00