aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2006-09-19* `optimise-store.pl' reduces disk space consumption by hard-linkingEelco Dolstra
all identitical files in the Nix store to each other. (Previously it only computed the size that would be saved by doing so.)
2006-09-19* Cleanups.Eelco Dolstra
2006-09-19* `show-duplication.pl', a small utility that shows the amount ofEelco Dolstra
package duplication present in (e.g.) a profile. It shows the number of instances of each package in a closure, along with the size in bytes of each instance as well as the "waste" (the difference between the sum of the sizes of all instances and the average size). $ ./show-duplication.pl /nix/var/nix/profiles/default gcc 11 3.3.6 19293318 3.4.4 21425257 ... average 14942970, waste 149429707 coreutils 6 ... average package duplication 1.87628865979381, total size 3486330471, total waste 1335324237, 38.3017114443825% wasted This utility is useful for measuring the cost in terms of disk space of the Nix approach.
2006-09-14* Wow, that bug has been there since r764.Eelco Dolstra
2006-09-14* nix-env --switch-generation / --list-generations /Eelco Dolstra
--delete-generations: lock the profile to prevent (extremely unlikely) race conditions.
2006-09-14* Fix a huge gaping hole in nix-env w.r.t. the garbage collector.Eelco Dolstra
Nix-env failed to call addPermRoot(), which is necessary to safely add a new root. So if nix-env started after and finished before the garbage collector, the user environment (plus all other new stuff) it built might be garbage collected, leading to a dangling symlink chain in ~/.nix-profile... * Be more explicit if we block on the GC lock ("waiting for the big garbage collector lock..."). * Don't loop trying to create a new generation. It's not necessary anymore since profiles are locked nowadays.
2006-09-12* "Too many links" error.Eelco Dolstra
2006-09-11* Support `++'.Eelco Dolstra
* More follow restrictions on layout.
2006-09-08* Remove debug message.Eelco Dolstra
2006-09-06* Release notes.Eelco Dolstra
2006-09-06* Convenience option `nix-collect-garbage -d' (--delete-old): removesEelco Dolstra
old generations of *all* profiles in /nix/var/nix/profiles, then runs the garbage collector. Quick way to get rid of all old stuff. Of course, one cannot roll back to earlier points in time after this.
2006-09-05* Package the include directory.Eelco Dolstra
2006-09-05* Missing #include.Eelco Dolstra
2006-09-05* Sone missing #includes.Eelco Dolstra
2006-09-04* Move setuid stuff to libutil.Eelco Dolstra
* Install libexpr header files.
2006-09-04* Install header files in /nix/include/nix.Eelco Dolstra
2006-09-04* Remove unnecessary inclusions of aterm2.h.Eelco Dolstra
2006-09-04* Don't need extern "C".Eelco Dolstra
2006-09-04* Compile the lexer as C++ code. Remove all the redundant C/C++Eelco Dolstra
marshalling code.
2006-09-04* Use a proper namespace.Eelco Dolstra
* Optimise header file usage a bit. * Compile the parser as C++.
2006-09-04* Store the Nix libraries in ${libdir}/nix instead of ${libdir}.Eelco Dolstra
2006-09-01* New primop: builtins.toFile, which writes a string into the storeEelco Dolstra
and returns its path. This can be used to (for instance) write builders inside a Nix expression, e.g., stdenv.mkDerivation { builder = " source $stdenv/setup ... "; ... }
2006-09-01* Allow "$" in strings as long as they are not followed by "{". (TooEelco Dolstra
bad flex doesn't have lexical restrictions, the current solution isn't quite right...)
2006-09-01* Fix race condition in the test.Eelco Dolstra
2006-08-31* Doh! Doh! Doh!Eelco Dolstra
2006-08-31* Better error checking.Eelco Dolstra
2006-08-30* Okay, that's a bit harder than expected.Eelco Dolstra
2006-08-30* TDD: == should do a deep equality test, i.e., it should strictlyEelco Dolstra
evaluate its arguments.
2006-08-30* Uninitialised variable.Eelco Dolstra
2006-08-29* Support singleton values and nested lists again in `args', but printEelco Dolstra
a warning.
2006-08-29* Fix the ~ operator.Eelco Dolstra
2006-08-29* Backwards compatibility test for ~.Eelco Dolstra
2006-08-28* In toString, deal with nested lists properly (i.e., flatten them).Eelco Dolstra
2006-08-28* Removed processBinding, instead we now apply toString to allEelco Dolstra
derivation attributes to flatten them into strings. This is possible since string can nowadays be wrapped in contexts that describe the derivations/sources referenced by the evaluation of the string.
2006-08-26* Refactoring.Eelco Dolstra
2006-08-25* Remove those storePath attribute sets, we don't need 'em.Eelco Dolstra
2006-08-25* Map "ppc" to "powerpc" so that Linux on PowerPC will be reported asEelco Dolstra
"powerpc-linux".
2006-08-25* Doh! (NIX-58)Eelco Dolstra
2006-08-25* Honour DESTDIR so that bzip2/bunzip2 get installed in the rightEelco Dolstra
location when building RPMs (fixes NIX-58).
2006-08-24* Escape newlines in XML attributes to prevent them from beingEelco Dolstra
normalised away.
2006-08-24* New primop __toXML (or builtins.toXML) to convert an expression toEelco Dolstra
an XML representation stored in a string. This should be useful to pass structured information to builders.
2006-08-24* Refactoring.Eelco Dolstra
2006-08-24* Strict evaluation and XML printing of lists.Eelco Dolstra
2006-08-24* Refactoring: move strictEval to libexpr.Eelco Dolstra
2006-08-23* Allow --arg in nix-env as well, example:Eelco Dolstra
$ nix-env -qa --system-filter \* --arg system '"powerpc-darwin"' to override the system from the default value (__currentSystem in all-packages.nix).
2006-08-23* Pass the autoArgs to findAlongAttrPath so that "nix-instantiateEelco Dolstra
foo.nix -A attr --arg name value" will work if (name, value) is needed in the evaluation leading up to "attr".
2006-08-23* Quotes.Eelco Dolstra
2006-08-23* New primop: abort "error message".Eelco Dolstra
2006-08-23* A new primop `builtins', which returns an attribute set containingEelco Dolstra
all the primops. This allows Nix expressions to test for new primops and take appropriate action if they're not available. For instance, rather than calling a primop `foo' directly, they could say `if builtins ? foo then builtins.foo ... else ...'.
2006-08-22* Release notes.Eelco Dolstra