about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorFilesLines
2006-02-16 * Allow the size of the GC reserved file to be specified in nix.confEelco Dolstra5-14/+62
through the new `gc-reserved-space' option.
2006-02-16 * A simple hack to fix NIX-18: the garbage collector cannot run whenEelco Dolstra3-4/+24
the disk is full (because to delete something from the Nix store, we need a Berkeley DB transaction, which takes up disk space). Under normal operation, we make sure that there exists a file /nix/var/nix/db/reserved of 1 MB. When running the garbage collector, we delete that file before we open the Berkeley DB environment.
2006-02-13 * Optional switch "--with-openssl=<PATH>" to use OpenSSL'sEelco Dolstra7-40/+59
implementations of MD5, SHA-1 and SHA-256. The main benefit is that we get assembler-optimised implementations of MD5 and SHA-1 (though not SHA-256 (at least on x86), unfortunately). OpenSSL's SHA-1 implementation on Intel is twice as fast as ours.
2006-02-13 * Use a union.Eelco Dolstra1-2/+1
2006-02-13 * Override YYMALLOC and YYFREE so that we can call AT[un]protectMemoryEelco Dolstra1-0/+20
on the Bison parse stack. Otherwise, a garbage collect during parsing could lead to a crash.
2006-02-13 * Valgrind suppressions for the ATerm library. The ATerm library usesEelco Dolstra1-0/+130
a conservative garbage collector that scans the stack and parts of the heap for pointers to ATerms. This scan can touch uninitialised memory, which is harmless. Use: $ valgrind --suppressions=aterm-gc.supp ...
2006-02-12 * Doh.Eelco Dolstra1-0/+1
2006-02-10 * Enable the --attr in nix-build as well (and add -A as an alias).Eelco Dolstra2-7/+16
Example: $ nix-build ./all-packages.nix -A xlibs.libX11 So finally it's easy to perform a test build of a Nix expression!
2006-02-10 * In nix-instantiate, allow us to specify a "path" to theEelco Dolstra3-31/+87
derivation(s) we're interested, e.g., $ nix-instantiate ./all-packages.nix --attr xlibs.libX11 List elements can also be selected: $ nix-instantiate ./build-for-release.nix --attr 0.subversion This allows a non-ambiguous specification of a derivation. Of course, this should also be added to nix-env and nix-build.
2006-02-10 * Document that nix-instantiate can read from stdin.Eelco Dolstra1-0/+4
2006-02-10 * Make --parse-only work when *not* reading from stdin.Eelco Dolstra1-2/+4
2006-02-10 * Cleanup: use the code shared with nix-env.Eelco Dolstra1-64/+15
2006-02-08 * When querying all derivations, filter out syntactically equal derivations.Eelco Dolstra1-12/+36
2006-02-08 * When evaluating, automatically call functions with default arguments.Eelco Dolstra1-4/+23
2006-02-08 * Test-driven development, woohoo! nix-env should work on functions,Eelco Dolstra1-2/+8
provided that all arguments have defaults.
2006-02-08 * Oops, fix breakage.Eelco Dolstra1-0/+2
2006-02-08 * Tests for nix-env, finally!Eelco Dolstra5-1/+108
2006-02-08 * Refactoring: move derivation evaluation to libexpr.Eelco Dolstra4-187/+209
2006-02-07 * Don't install nix.conf (so it won't be overriden when you upgrade an RPM).Eelco Dolstra1-0/+1
2006-02-03 * Use setsid instead of setpgrp in child processes. This not onlyEelco Dolstra1-6/+8
creates a new process group but also a new session. New sessions have no controlling tty, so child processes like ssh cannot open /dev/tty (which is bad).
2006-02-02 * When killing a build hook, kill the entire process group (asEelco Dolstra1-0/+1
intended). This ensures that any ssh child processes to remote machines are also killed, and thus the Nix process on the remote machine also exits. Without this, the remote Nix process will continue until it exists or until its stdout buffer gets full and it locks up. (Partially fixes NIX-35.)
2006-02-01 * Print a better error message when writing the patched file (e.g.,Eelco Dolstra1-2/+21
"No space left on device" instead of "Success"). Reported by Karina Olmos.
2006-02-01 * Doh.Eelco Dolstra1-1/+1
2006-02-01 * bsdiff updated to 4.3. This makes Nix depend on libbz2.Eelco Dolstra15-527/+471
2006-02-01 * The "S" bit should be based on the output path, not the derivation path.Eelco Dolstra1-1/+1
2006-02-01 * Use Berkeley DB 4.4.20.Eelco Dolstra2-88/+3
2006-02-01 * Add @bindir@.Eelco Dolstra1-1/+1
2006-01-26 * Don't force a build of derivations.Eelco Dolstra1-2/+1
2006-01-26 * Oops, the "I" bit in "nix-env -qas" was broken. Reported by Nicolae Vintila.Eelco Dolstra1-1/+1
2006-01-19 * Don't show cycles, they're not very useful.Eelco Dolstra1-2/+4
2006-01-12 * New tools nix-pack-closure and nix-unpack-closure. These provide aEelco Dolstra3-2/+152
useful way to transfer the closure of a store path to another machine. These commands provide functionality previously possible through `nix-push --copy'. However, they are much more convenient in many situations (though possibly less efficient). Example: $ nix-pack-closure /nix/store/hj232g1r...-subversion-1.3.0 > svn.closure (on another machine:) $ nix-unpack-closure < svn.closure Note that Subversion is added to the store, but not installed into a user environment. One should do `nix-env -i /nix/store/hj232g1r...-subversion-1.3.0' for that. Another example: copy the application Azureus to the machine `scratchy' through ssh: $ nix-pack-closure $(which azureus) | ssh scratchy nix-unpack-closure
2006-01-09 * dirOf: return "/", not "", for paths in the root directory. Fixes NIX-26.Eelco Dolstra2-3/+3
2006-01-08 * Resolve all symlink components in the location of the temporaryEelco Dolstra2-4/+25
build directory (TMPDIR, i.e., /tmp). Fixes NIX-26.
2005-12-25 * More GCC 2.95 compatibility.Eelco Dolstra1-1/+1
2005-12-25 * Hack around a GCC 2.95 bug.Eelco Dolstra1-2/+2
2005-12-24 * GCC 2.95 compatibility.Eelco Dolstra1-1/+1
2005-12-24 * Documentation fixes.Eelco Dolstra2-3/+3
2005-12-23 * Added a flag `--ignore-liveness' to `nix-store --delete'. ItEelco Dolstra3-6/+12
deletes a path even if it is reachable from a root. However, it won't delete a path that still has referrers (since that would violate store invariants). Don't try this at home. It's a useful hack for recovering from certain situations in a somewhat clean way (e.g., holes in closures due to disk corruption).
2005-12-23 * Revived the old "nix-store --delete" operation that deletes theEelco Dolstra4-11/+45
specified paths from the Nix store. However, this operation is safe: it refuses to delete anything that the garbage collector wouldn't delete.
2005-12-15 * Begin release notes.Eelco Dolstra1-0/+50
2005-12-15 * `nix-store --gc' prints out the number of bytes freed on stdoutEelco Dolstra7-11/+45
(even when it is interrupted by a signal).
2005-12-15 * Typo.Eelco Dolstra1-1/+1
2005-12-15 * Split the database upgrade into multiple transactions to preventEelco Dolstra1-2/+11
Berkeley DB from running out of locks.
2005-12-15 * Doh!Eelco Dolstra1-1/+1
2005-12-13 * Change `referer' to `referrer' throughout. In particular, theEelco Dolstra11-68/+69
nix-store query options `--referer' and `--referer-closure' have been changed to `--referrer' and `--referrer-closure' (but the old ones are still accepted for compatibility).
2005-12-12 * Automatically delete the old referers table.Eelco Dolstra3-5/+31
2005-12-12 * Fix NIX-23: quadratic complexity in maintaining the referersEelco Dolstra4-40/+107
mapping. The referer table is replaced by a referrer table (note spelling fix) that stores each referrer separately. That is, instead of having referer[P] = {Q_1, Q_2, Q_3, ...} we store referer[(P, Q_1)] = "" referer[(P, Q_2)] = "" referer[(P, Q_3)] = "" ... To find the referrers of P, we enumerate over the keys with a value lexicographically greater than P. This requires the referrer table to be stored as a B-Tree rather than a hash table. (The tuples (P, Q) are stored as P + null-byte + Q.) Old Nix databases are upgraded automatically to the new schema.
2005-12-11 * Add a test to demonstrate the quadratic complexity of referrerEelco Dolstra2-1/+16
(de)registration, in particular garbage collection (NIX-23).
2005-12-09 * Use Berkeley DB 4.4's process registry feature to recover fromEelco Dolstra2-102/+56
crashed Nix instances, and toss out our own recovery code.
2005-12-08 * Apply the patch.Eelco Dolstra1-0/+1