Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2004-06-22 | * Put WEXITSTATUS stuff somewhere else. | Eelco Dolstra | 1 | -0/+2 | |
2004-06-22 | * Wrapper class around pids. | Eelco Dolstra | 1 | -0/+18 | |
2004-06-22 | * Refactoring. | Eelco Dolstra | 1 | -0/+5 | |
2004-06-20 | * Refactoring. | Eelco Dolstra | 1 | -0/+5 | |
2004-06-15 | * Refactoring. | Eelco Dolstra | 1 | -0/+9 | |
2004-05-12 | * An quick and dirty hack to support distributed builds. | Eelco Dolstra | 1 | -0/+3 | |
2004-03-27 | * Disallow the Nix store or any of its parents from being symlinks. | Eelco Dolstra | 1 | -5/+8 | |
This is because the contents of these symlinks are not incorporated into the hashes of derivations, and could therefore cause a mismatch between the build system and the target system. E.g., if `/nix/store' is a symlink to `/data/nix/store', then a builder could expand this path and store the result. If on the target system `/nix/store' is not a symlink, or is a symlink that points somewhere else, we have a dangling pointer. The trigger for this change is that gcc 3.3.3 does exactly that (it applies realpath() to some files, such as libraries, which causes our impurity checker to bail out.) An annoying side-effect of this change is that it makes it harder to move the Nix store to a different file system. On Linux, bind mounts can be used instead of symlink for this purpose (e.g., `mount -o bind /data/nix/store /nix/store'). | |||||
2004-03-22 | * Some more nesting. | Eelco Dolstra | 1 | -0/+1 | |
2004-03-22 | * Nix now has three different formats for the log information it | Eelco Dolstra | 1 | -1/+9 | |
writes to stderr: - `pretty': the old nested style (default) - `escapes': uses escape codes to indicate nesting and message level; can be processed using `log2xml' - `flat': just plain text, no nesting These can be set using `--log-type TYPE' or the NIX_LOG_TYPE environment variable. | |||||
2004-01-15 | * Catch SIGINT to terminate cleanly when the user tries to interrupt | Eelco Dolstra | 1 | -0/+13 | |
Nix. This is to prevent Berkeley DB from becoming wedged. Unfortunately it is not possible to throw C++ exceptions from a signal handler. In fact, you can't do much of anything except change variables of type `volatile sig_atomic_t'. So we set an interrupt flag in the signal handler and check it at various strategic locations in the code (by calling checkInterrupt()). Since this is unlikely to cover all cases (e.g., (semi-)infinite loops), sometimes SIGTERM may now be required to kill Nix. | |||||
2004-01-05 | * Implemented Eelco V.'s `nix-env -I' command to specify the default | Eelco Dolstra | 1 | -0/+4 | |
path of the Nix expression to be used with the import, upgrade, and query commands. For instance, $ nix-env -I ~/nixpkgs/pkgs/system/i686-linux.nix $ nix-env --query --available [aka -qa] sylpheed-0.9.7 bison-1.875 pango-1.2.5 subversion-0.35.1 ... $ nix-env -i sylpheed $ nix-env -u subversion There can be only one default at a time. * If the path to a Nix expression is a symlink, follow the symlink prior to resolving relative path references in the expression. | |||||
2003-12-22 | * Upgrade operation in `nix-env'. For instance, you can say | Eelco Dolstra | 1 | -1/+2 | |
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-11-22 | * Fix the garbage collector. | Eelco Dolstra | 1 | -0/+5 | |
2003-11-19 | * nix-env: a tool to manage user environments. | Eelco Dolstra | 1 | -0/+4 | |
* Replace all directory reading code by a generic readDirectory() function. | |||||
2003-11-18 | * Source tree refactoring. | Eelco Dolstra | 1 | -0/+168 | |