Eelco Dolstra
991a130b1e
* Added a list concatenation operator:
...
[1 2 3] ++ [4 5 6] => [1 2 3 4 5 6]
2005-07-25 15:05:34 +00:00
Eelco Dolstra
4c20a08293
* Build dynamic libraries.
2005-07-22 14:52:45 +00:00
Eelco Dolstra
0f827cc607
* Prevent repeated wrapping of closed terms
...
(closed(closed(closed(...)))) since this reduces performance by
producing bigger terms and killing caching (which incidentally also
prevents useful infinite recursion detection).
2005-07-19 11:48:05 +00:00
Eelco Dolstra
2135e7c041
* Wat cleanups.
2005-07-16 23:19:20 +00:00
Eelco Dolstra
6f82a78de7
* Define paths using regexps, as is done in the Flex definition.
2005-07-16 21:38:15 +00:00
Eelco Dolstra
6f91f02f75
* Make the rejects a bit more compact.
...
* Add lexical restrictions for keywords.
2005-07-16 20:43:58 +00:00
Eelco Dolstra
9590009a74
* Fix ambiguity.
2005-07-16 15:41:27 +00:00
Eelco Dolstra
f797cb5855
* Revive and update the SDF grammar for Nix expressions.
2005-07-16 14:07:35 +00:00
Eelco Dolstra
22d3587f3b
* In nix-instantiate, at top-level, call functions that have arguments
...
with default values automatically. I.e., e -> e {}.
This feature makes convenience expressions such as
pkgs/system/i686-linux.nix in Nixpkgs obsolete, since we can just do
$ nix-instantiate ./pkgs/system/all-packages.nix
since all-packages.nix takes a single argument (system) that has a
default value (__thisSystem).
2005-07-12 16:06:25 +00:00
Eelco Dolstra
040140dd1c
* Added a primop `removeAttrs' to remove attributes from a set, e.g.,
...
`removeAttrs attrs ["x", "y"]' returns the set `attrs' with the
attributes named `x' and `y' removed. It is not an error for the
named attributes to be missing from the input set.
2005-05-18 17:19:21 +00:00
Eelco Dolstra
109cde6706
* Ignore (with a warning) invalid garbage collector roots.
2005-05-10 14:56:10 +00:00
Eelco Dolstra
456f3251d2
* Typo.
2005-05-10 14:21:46 +00:00
Eelco Dolstra
9ec7e58aa4
* Handle store path arguments in `nix-env -i' correctly again.
2005-05-09 17:55:35 +00:00
Eelco Dolstra
8f57634c14
* Automatically upgrade the Berkeley DB environment if necessary.
2005-05-09 15:25:47 +00:00
Eelco Dolstra
edd145d2fb
* Lazily compute the derivation and output paths of derivations. This
...
makes most query and installation operations much faster (e.g.,
`nix-env -qa' on the current Nixpkgs is about 10 times faster).
2005-05-08 10:32:09 +00:00
Eelco Dolstra
426593162e
* ATermMap needs an assignment operator, otherwise we are screwed.
2005-05-08 10:28:19 +00:00
Eelco Dolstra
77557a6f06
Commit 3000!
...
* Make the `derivation' primitive much more lazy. The expression
`derivation attrs' now evaluates to (essentially)
attrs // {
type = "derivation";
outPath = derivation! attrs;
drvPath = derivation! attrs;
}
where `derivation!' is a primop that does the actual derivation
instantiation (i.e., it does what `derivation' used to do). The
advantage is that it allows commands such as `nix-env -qa' and
`nix-env -i' to be much faster since they no longer need to
instantiate all derivations, just the `name' attribute. (However,
`nix-env' doesn't yet take advantage of this since it still always
evaluates the `outPath' and `drvPath' attributes).
Also, this allows derivations to cyclically reference each other,
for example,
webServer = derivation {
...
hostName = "svn.cs.uu.nl";
services = [svnService];
};
svnService = derivation {
...
hostName = webServer.hostName;
};
Previously, this would yield a black hole (infinite recursion).
2005-05-07 21:48:49 +00:00
Eelco Dolstra
6057b51835
* Don't try to register GC roots in read-only mode.
2005-05-07 21:33:31 +00:00
Eelco Dolstra
52a2f41320
* Include some required header files.
2005-05-04 16:33:20 +00:00
Eelco Dolstra
26fd28432d
* FreeBSD 4.x doesn't have stdint.h, use inttypes.h instead (which is
...
also part of ISO C).
2005-05-04 16:32:54 +00:00
Eelco Dolstra
5dea0622d1
* Idem (constness fix).
...
* `compare' in GCC 2.95 is broken.
2005-05-04 16:31:49 +00:00
Eelco Dolstra
4a266e35d4
* GCC 2.95 compatibility fix in constness; strangely, I think this
...
should not have worked at all.
2005-05-04 16:31:24 +00:00
Eelco Dolstra
d7b3cdbd91
* GCC 2.95 compatibility. Prevents internal compiler error in member
...
template friends.
2005-05-04 16:30:35 +00:00
Eelco Dolstra
ae6d9033a1
* The eof() state isn't guaranteed to be set non-lazily. GCC 2.95
...
compatibility fix.
2005-05-04 16:29:44 +00:00
Eelco Dolstra
02f2da0142
* Merging from nix-make branch:
...
- Add __currentTime primitive (dangerous!).
- Allow imports of derivations.
2005-05-02 14:44:58 +00:00
Eelco Dolstra
f913283570
* Remove redundant message.
2005-04-13 09:20:27 +00:00
Eelco Dolstra
f3660b1c8c
* Garbage collector fix: allow deletion of paths that have invalid
...
(but substitutable) referers.
2005-04-12 10:51:00 +00:00
Eelco Dolstra
cab7816b56
* Slightly nicer message.
2005-04-11 08:07:41 +00:00
Eelco Dolstra
c9c58dba55
* Primop `__currentSystem' to return the current platform identifier.
2005-04-10 17:38:19 +00:00
Eelco Dolstra
c702dfca3f
* nix-store: --substitute' ->
--register-substitutes'.
2005-04-08 13:48:41 +00:00
Eelco Dolstra
4271385a73
* Make `nix-store --query --tree' work on non-derivations (i.e., on
...
any store path).
2005-04-08 12:57:16 +00:00
Eelco Dolstra
10c429c757
* If store paths are specified as sources in Nix expressions, don't
...
copy them, but use them directly.
2005-04-07 14:35:01 +00:00
Eelco Dolstra
f9848d4f31
* Support base-32 hash representations.
2005-04-07 14:33:32 +00:00
Eelco Dolstra
c815aff21b
* `nix-store --add-fixed' to preload the outputs of fixed-output
...
derivations. This is mostly to simplify the implementation of
nix-prefetch-{url, svn}, which now work properly in setuid
installations.
* Enforce valid store names in `nix-store --add / --add-fixed'.
2005-04-07 14:01:51 +00:00
Eelco Dolstra
6f788880b6
* Re-enable dot graph generation.
2005-03-26 22:06:57 +00:00
Eelco Dolstra
298dd487bb
* When finding live paths, the deriver need not be valid.
2005-03-25 14:31:12 +00:00
Eelco Dolstra
7eaf038763
* `nix-store --verify': repair bad referer mappings.
2005-03-25 14:21:49 +00:00
Eelco Dolstra
c6178f0b03
* Create missing log and temproots directories automatically (reported
...
by Rob).
2005-03-24 17:46:38 +00:00
Eelco Dolstra
cff6bc06df
* Fix endianness bug.
2005-03-23 19:18:22 +00:00
Eelco Dolstra
0df9f08078
* Export the references graph to the build hook.
2005-03-23 13:16:36 +00:00
Eelco Dolstra
3f236f01ae
* `nix-store --register-validity': allow a path to refer to a path
...
listed later in the list of new valid paths.
2005-03-23 13:07:28 +00:00
Eelco Dolstra
a04c62e0c4
* Canonicalise path meta-data in `nix-store --register-validity'.
2005-03-23 12:06:57 +00:00
Eelco Dolstra
f20f081560
* nix-store: --isvalid' ->
--check-validity', `--validpath' ->
...
`--register-validity'.
* `nix-store --register-validity': read arguments from stdin, and
allow the references and deriver to be set.
2005-03-23 11:25:20 +00:00
Eelco Dolstra
c757d16c8c
* Bug in clearSubstitutes().
2005-03-14 18:54:40 +00:00
Eelco Dolstra
08df443618
* Check for duplicate attributes and formal parameters in Nix
...
expressions.
2005-03-10 11:33:46 +00:00
Eelco Dolstra
4bbdcfbb45
* Don't use fork() in copyPath(), but a string buffer.
2005-03-03 13:58:02 +00:00
Eelco Dolstra
86cb3cc554
* Increase Berkeley DB limits a bit more.
...
* Maintain the cleanup invariant in clearSubstitutes().
2005-03-03 13:10:44 +00:00
Eelco Dolstra
07b4399fb6
* `nix-store -q --hash' to quickly query the hash of the contents of a
...
store path (which is stored in the database).
2005-03-02 15:57:06 +00:00
Eelco Dolstra
bfaf83a0fd
* When multiple derivations are specified in `nix-store -r', don't
...
continue building when one fails unless `--keep-going' is
specified.
* When `--keep-going' is specified, print out the set of failing
derivations at the end (otherwise it can be hard to find out which
failed).
2005-02-23 11:19:27 +00:00
Eelco Dolstra
3a2c3f0cf2
* Support for fixed-output hashes over directory trees (i.e., over the
...
NAR dump of the path).
2005-02-22 21:14:41 +00:00