Eelco Dolstra
392b7e0f8e
* Fixed a bug in the upgrade operation.
2003-12-23 22:13:36 +00:00
Eelco Dolstra
833f2fc92d
* GCC 2.95 compatibility.
2003-12-22 16:40:46 +00:00
Eelco Dolstra
cf0287c09e
* Upgrade operation in `nix-env'. For instance, you can say
...
nix-env -u foo.nix strategoxt
to replace the installed `strategoxt' derivation with the one from `foo.nix', if
the latter has a higher version number. This is a no-op if `strategoxt' is not
installed. Wildcards are also accepted, so
nix-env -u foo.nix '*'
will replace any installed derivation with newer versions from `foo.nix', if
available.
The notion of "version number" is somewhat ad hoc, but should be useful in most
cases, as evidenced by the following unit tests for the version comparator:
TEST("1.0", "2.3", -1);
TEST("2.1", "2.3", -1);
TEST("2.3", "2.3", 0);
TEST("2.5", "2.3", 1);
TEST("3.1", "2.3", 1);
TEST("2.3.1", "2.3", 1);
TEST("2.3.1", "2.3a", 1);
TEST("2.3pre1", "2.3", -1);
TEST("2.3pre3", "2.3pre12", -1);
TEST("2.3a", "2.3c", -1);
TEST("2.3pre1", "2.3c", -1);
TEST("2.3pre1", "2.3q", -1);
(-1 = less, 0 = equal, 1 = greater)
* A new verbosity level `lvlInfo', between `lvlError' and `lvlTalkative'. This is
the default for `nix-env', so without any `-v' flags users should get useful
output, e.g.,
$ nix-env -u foo.nix strategoxt
upgrading `strategoxt-0.9.2' to `strategoxt-0.9.3'
2003-12-22 16:04:00 +00:00
Eelco Dolstra
f3c9783846
* Version numbers can be omitted in install/uninstall. E.g.,
...
nix-env -i foo.nix subversion
The version number part of a derivation name is defined as everything following the
first dash not followed by a letter.
2003-12-21 23:58:56 +00:00
Eelco Dolstra
a81b621202
* -u' ->
-e'.
...
* `--link' / `-l' flag to specify the switch symlink to use (by default,
/nix/var/nix/links/current).
2003-12-21 22:34:41 +00:00
Eelco Dolstra
528f1d1867
* Bug fix: parallel builds of the same derivation failed due to lock file removal.
2003-12-21 17:09:16 +00:00
Eelco Dolstra
cff6fd22eb
* Allow successors that don't exist but have a substitute.
...
* Integrity: check in successor / substitute registration whether
the target path exists or has a substitute.
2003-12-05 11:05:19 +00:00
Eelco Dolstra
0d3a1a8582
* Add missing files to `make dist'.
2003-12-02 12:37:37 +00:00
Eelco Dolstra
0c804c6775
* Regression fix: query flags (e.g., "-qsf") were broken.
2003-12-02 10:21:40 +00:00
Eelco Dolstra
078e20885e
* Help text for all (non-script) programs, so no more:
...
$ nix-instantiate --help
error: unknown flag `--help`
Try `nix-instantiate --help' for more information.
:-)
2003-12-01 15:55:05 +00:00
Eelco Dolstra
83ffd4f282
* Fix `make check'.
2003-12-01 14:40:24 +00:00
Eelco Dolstra
5d2b424804
* Use a system name that does not include the OS manufacturer (i.e.,
...
"i686-linux" instead of "i686-suse-linux").
2003-12-01 14:36:50 +00:00
Eelco Dolstra
ba73f94b3b
* Another fix.
2003-11-25 13:03:48 +00:00
Eelco Dolstra
66c115ef5f
* More `make dist' fixes.
2003-11-25 13:01:21 +00:00
Eelco Dolstra
c3ee8c9166
* `make dist' fix.
2003-11-25 12:35:52 +00:00
Eelco Dolstra
6e8c19714a
* Allow integer bindings in derivations.
2003-11-25 12:05:48 +00:00
Eelco Dolstra
b857267893
* Allow the top-level expression to be a derivation.
...
* Hack: `nix-env -i *' installs all available derivations.
2003-11-24 11:01:19 +00:00
Eelco Dolstra
c9cb1fa21f
* Bug fix in path invalidation.
...
* More consistency checks.
2003-11-24 09:24:52 +00:00
Eelco Dolstra
af7e6fe22e
* Don't use a hard-coded path.
2003-11-22 21:12:36 +00:00
Eelco Dolstra
9486dda115
* Fix nix-push.
2003-11-22 20:39:51 +00:00
Eelco Dolstra
ab0bc4999a
* Maintain integrity of the substitute and successor mappings when
...
deleting a path in the store.
* Allow absolute paths in Nix expressions.
* Get nix-prefetch-url to work again.
* Various other fixes.
2003-11-22 18:45:56 +00:00
Eelco Dolstra
40d9eb14df
* Fix the garbage collector.
2003-11-22 15:58:34 +00:00
Eelco Dolstra
7a02d95418
* Remove lock files after building.
2003-11-21 16:05:19 +00:00
Eelco Dolstra
06208d1d86
* Uninstallation.
2003-11-21 14:23:18 +00:00
Eelco Dolstra
2e9042bd1e
* Uninstall command (doesn't work yet).
2003-11-20 13:48:48 +00:00
Eelco Dolstra
e0b5a492f5
* Installation: add the previously installed packages. Switch to the new
...
configuration.
* Status queries.
2003-11-19 21:32:03 +00:00
Eelco Dolstra
9898746ef3
* nix-env: a tool to manage user environments.
...
* Replace all directory reading code by a generic readDirectory()
function.
2003-11-19 17:27:16 +00:00
Eelco Dolstra
fd7ac09f10
* Refactoring (step 2).
2003-11-19 12:03:01 +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
Eelco Dolstra
2be8b5917a
* Use `sdftable -s' to get warnings about the grammar.
...
* Several bug fixes in the grammar.
* Allow one-line comments (#... and //...) to end in EOF.
2003-11-19 10:04:03 +00:00
Eelco Dolstra
dfc9c64ead
* "Fix expression" -> "Nix expression".
...
* More refactoring.
2003-11-18 12:06:07 +00:00
Eelco Dolstra
b1117ef29d
* nix -> nix-store, fix -> nix-instantiate.
2003-11-18 11:38:25 +00:00
Eelco Dolstra
ce92d1bf14
* "Nix expression" -> "store expression".
...
* More refactoring.
2003-11-18 11:22:29 +00:00
Eelco Dolstra
9f0f020929
* libnix -> libstore.
2003-11-18 10:55:27 +00:00
Eelco Dolstra
8798fae304
* Source tree refactoring.
2003-11-18 10:47:59 +00:00
Eelco Dolstra
45610ae675
* An forward non-random access input iterator class for ATermLists.
2003-11-16 18:31:29 +00:00
Eelco Dolstra
3e5a019a07
* Some utility functions for working with ATerms.
2003-11-16 17:46:31 +00:00
Eelco Dolstra
06ae269c7c
* Do not filter when parsing. This is much faster.
...
* Add some rejections and lexical restrictions to the grammar to make
this work.
2003-11-10 11:00:38 +00:00
Eelco Dolstra
15801c88fa
* Turned the msg() and debug() functions into macros, since they
...
turned out to be a huge performance bottleneck (the text to printed
would always be evaluated, even when it was above the verbosity
level). This reduces fix-ng execution time by over 50%.
gprof(1) is very useful. :-)
2003-11-09 10:35:45 +00:00
Eelco Dolstra
90e26d392c
* Allow null in derivation bindings.
2003-11-06 15:24:31 +00:00
Eelco Dolstra
cfaea07444
* `null' is a nullary primop.
2003-11-06 14:41:49 +00:00
Eelco Dolstra
569e7940f8
* Allow `+' in path names.
2003-11-06 14:41:29 +00:00
Eelco Dolstra
fa18f1f184
* Assertions.
...
* Logical operators (!, &&, ||, ->).
2003-11-05 16:27:40 +00:00
Eelco Dolstra
e17e95a828
* Print a shared textual ATerm if the term if very large. Due to
...
substitutions, Fix terms are very large when printed as trees (in
memory, they are quite compact due to sharing).
2003-11-05 16:20:57 +00:00
Eelco Dolstra
80bb477cc4
* Default function arguments.
2003-11-05 15:34:12 +00:00
Eelco Dolstra
0690c1c9c0
* Work around problems with the ATerm library.
...
The ATerm library doesn't search the heap for pointers to ATerms
when garbage collecting. As a result, C++ containers such as
`map<ATerm, ATerm>' will cause pointer to be hidden from the garbage
collector, causing crashes. Instead, we now use ATermTables.
2003-11-03 20:30:40 +00:00
Eelco Dolstra
ff31324278
* Ignore options passed to the aterm library.
2003-11-03 18:21:53 +00:00
Eelco Dolstra
e2655aa332
* Shorter list syntax ([a b c] instead of [a, b, c]).
2003-11-03 11:59:35 +00:00
Eelco Dolstra
ad0976f8d5
* Grammar changes. Attributes in attribute sets are now delimited with
...
semicolons instead of comma's. Final semicolon in the set is optional.
2003-11-03 10:21:30 +00:00
Eelco Dolstra
40986312bb
* Boolean constants.
2003-11-02 17:36:15 +00:00