Eelco Dolstra
a520b1cbc3
* Print a more useful error message in case of an invalid derivation
...
binding.
2004-04-02 10:49:37 +00:00
Eelco Dolstra
f958bcdf1f
* Added an operator `~' to select paths within a derivation. E.g.,
...
{stdenv, bash}: derivation {
builder = bash ~ /bin/sh;
args = ["-e" "-x" ./builder.sh];
...
}
Here the attribute `builder' will evaluate to, e.g.,
`/nix/store/1234abcd...-bash-2.0.1/bin/sh'.
2004-03-28 20:58:28 +00:00
Eelco Dolstra
db3e644c1c
* Added plain lambdas, e.g., `let { id = x: x; const = x: y: x; }'.
...
`bla:' is now no longer parsed as a URL.
* Re-enabled support for the `args' attribute in derivations to
specify command line arguments to the builder, e.g.,
...
builder = /usr/bin/python;
args = ["-c" ./builder.py];
...
2004-03-28 20:34:22 +00:00
Eelco Dolstra
9b44480612
* Use a map to lookup primops.
...
* Various performance improvements in the evaluator.
* Do not link against unused (and missing!) libraries (-lsglr, etc.).
2004-02-04 16:03:29 +00:00
Eelco Dolstra
1c9c0a5a46
* Added syntactic sugar to the construction of attribute sets to
...
`inherit' variables from the surrounding lexical scope.
E.g.,
{stdenv, libfoo}: derivation {
builder = ./bla;
inherit stdenv libfoo;
xyzzy = 1;
}
is equivalent to
{stdenv, libfoo}: derivation {
builder = ./bla;
stdenv = stdenv;
libfoo = libfoo;
xyzzy = 1;
}
Note that for mutually recursive attribute set definitions (`rec
{...}'), this also works, that is, `rec {inherit x;}' is equivalent
to `let {fresh = x; body = rec {x = fresh;};}', *not*
`rec {x = x}'.
2004-02-02 21:39:33 +00:00
Eelco Dolstra
6e8c19714a
* Allow integer bindings in derivations.
2003-11-25 12:05:48 +00:00
Eelco Dolstra
06208d1d86
* Uninstallation.
2003-11-21 14:23:18 +00:00
Eelco Dolstra
ac68840e79
* Refactoring: put the Nix expression evaluator in its own library so
...
that it can be used by multiple programs.
2003-11-19 11:35:41 +00:00