Commit graph

  • d423968ba1 * Improved introduction (actually copied mostly from the homepage). Eelco Dolstra 2007-10-23 16:34:04 +0000
  • 612b3e8fa3 * Document the new primops in Nix 0.11. Eelco Dolstra 2007-10-22 15:28:32 +0000
  • 35ac16e75e * Move list of built-in functions to a separate file. Eelco Dolstra 2007-10-22 12:58:28 +0000
  • 1db187ff69 Eelco Dolstra 2007-10-22 12:46:15 +0000
  • f90d85107e Eelco Dolstra 2007-10-22 12:05:30 +0000
  • f8ed2e64a5 Eelco Dolstra 2007-10-22 12:05:18 +0000
  • f529a3be8a Added comment telling about setup-hook and propagatedBuildInputs Marc Weber 2007-10-22 01:10:19 +0000
  • 14e47e9c2c * Doh. Eelco Dolstra 2007-10-10 14:58:00 +0000
  • d04291cfab * Doh! Don't change the permissions on /nix/store. Eelco Dolstra 2007-10-10 13:52:38 +0000
  • 315183f194 * nix-store --optimise: flag "--dry-run" to just query what the disk savings would be. Eelco Dolstra 2007-10-10 13:43:04 +0000
  • a8629de827 * New command `nix-store --optimise' to reduce Nix store disk space usage by finding identical files in the store and hard-linking them to each other. It typically reduces the size of the store by something like 25-35%. This is what the optimise-store.pl script did, but the new command is faster and more correct (it's safe wrt garbage collection and concurrent builds). Eelco Dolstra 2007-10-09 22:14:27 +0000
  • 27a0662828 * listToAttrs: the list now should consist of {name, value} attribute sets instead of {attr, value}. "name" is better than "attr" because the *combination* of the two forms the attribute. Eelco Dolstra 2007-10-09 12:51:25 +0000
  • 8a9fe6c11c * Manpage for nix-copy-closure. Eelco Dolstra 2007-09-19 14:01:41 +0000
  • 27f57c9018 * Ignore dangling symlinks in ~/.nix-defexpr. Eelco Dolstra 2007-09-18 14:01:14 +0000
  • f3441e6122 * Pass various options to the worker so that flags like -K or -j work in multi-user Nix (NIX-72). * Client/worker: exchange a protocol version number for future compatibility. Eelco Dolstra 2007-09-18 09:11:20 +0000
  • 26f981c2e5 * Remove garbage. Eelco Dolstra 2007-09-18 08:26:55 +0000
  • c8ea8a09b8 * nix-env -qa: make the "-A" flag do the expected thing, namely follow the given attribute path (just as -A does with other option) (NIX-83). So you can now say Eelco Dolstra 2007-09-17 19:24:07 +0000
  • 055608227f * nix-env: allow ~/.nix-defexpr to be a directory. If it is, then the Nix expressions in that directory are combined into an attribute set {file1 = import file1; file2 = import file2; ...}, i.e. each Nix expression is an attribute with the file name as the attribute name. Also recurses into directories. Eelco Dolstra 2007-09-17 16:08:24 +0000
  • 3339f85447 * Test the impureEnvVars feature. Eelco Dolstra 2007-09-11 13:32:04 +0000
  • 9441550acb * nix-push / generate-patches: bzip the manifest. Eelco Dolstra 2007-09-04 15:38:09 +0000
  • 7b20c0ed4b explanation what happens when passing true / false and null values to derivation builders added Marc Weber 2007-09-02 10:36:59 +0000
  • 0d65fc08e2 * Create the Nix daemon socket in a separate directory (/nix/var/nix/daemon-socket). This allows access to the Nix daemon to be restricted by setting the mode/ownership on that directory as desired, e.g. Eelco Dolstra 2007-08-30 09:50:44 +0000
  • cb1c1004cd * When there are multiple substituters, make sure to release the lock on the output path after trying each. Otherwise the pathIsLockedByMe() test gets confused. Eelco Dolstra 2007-08-28 16:22:08 +0000
  • c970b28ba0 * Fix a race condition with parallel builds where multiple fixed-output derivations or substitutions try to build the same store path at the same time. Locking generally catches this, but not between multiple goals in the same process. This happened especially often (actually, only) in the build farm with fetchurl downloads of the same file being executed on multiple machines and then copied back to the main machine where they would clobber each other (NIXBF-13). Eelco Dolstra 2007-08-28 11:36:17 +0000
  • bc0429b1cd * Doh! Broken test. Eelco Dolstra 2007-08-28 11:31:44 +0000
  • e0d7e47862 * PathLocks::lockPaths: don't allow reacquiring a lock we already hold. Eelco Dolstra 2007-08-28 09:39:03 +0000
  • 455a7b9577 * Test case to show that parallel builds of different fixed-output derivations that produce the same output path don't work properly wrt locking. This happens a lot in the build farm when fetchurl derivations downloading the same file on different platforms are executed in parallel and then copied back to the main machine. Eelco Dolstra 2007-08-28 09:21:47 +0000
  • 7d5836b34d * nix-channel: supports users who don't have write permission to the manifests directory. In that case, we don't do a nix-pull, so the user gets pure source deployment. Eelco Dolstra 2007-08-22 14:52:22 +0000
  • 2629998e91 primop functions listToAttrs (+test), __isAttrs, __trace added new configuration style proposal in lib/default-unstable.nix Marc Weber 2007-08-18 22:12:00 +0000
  • dbc0170ed9 * Show errors in nix-prefetch-url. Eelco Dolstra 2007-08-15 09:24:06 +0000
  • 5c793ad03e * Hopefully this fixes the test on FreeBSD. Eelco Dolstra 2007-08-14 13:43:51 +0000
  • ffa1c61cd5 * Fix the tests. Eelco Dolstra 2007-08-14 13:15:59 +0000
  • a7e1a51fdf * A test for the nix-worker. Eelco Dolstra 2007-08-13 14:56:40 +0000
  • 550ba9ebb4 * Fix the tests. Eelco Dolstra 2007-08-13 13:15:02 +0000
  • 3757ee589f * Bump the Nix database schema version number; delete the substitutes table. Eelco Dolstra 2007-08-13 11:37:39 +0000
  • 59afc1a15c * Backwards compatibility. Eelco Dolstra 2007-08-13 11:15:13 +0000
  • 9e975458b4 * Get rid of the substitutes database table (NIX-47). Instead, if we need any info on substitutable paths, we just call the substituters (such as download-using-manifests.pl) directly. This means that it's no longer necessary for nix-pull to register substitutes or for nix-channel to clear them, which makes those operations much faster (NIX-95). Also, we don't have to worry about keeping nix-pull manifests (in /nix/var/nix/manifests) and the database in sync with each other. Eelco Dolstra 2007-08-12 00:29:28 +0000
  • 4695f4edd6 * nix-pull: support bzipped manifests: when doing a nix-pull on $url, try $url.bz2 first. Eelco Dolstra 2007-08-10 01:42:00 +0000
  • 911bc01454 * Enable nix-prefetch-url caching in nix-channel. Eelco Dolstra 2007-08-10 00:28:44 +0000
  • 5e52df18fe * Don't rely on /dev/stdin. Eelco Dolstra 2007-08-10 00:22:21 +0000
  • c5e934dcc9 * nix-pull: using nix-prefetch-url (so that we get caching for free), and store the manifests in the Nix store. (So now /nix/var/nix/manifests/ just contains symlinks to the store and is searched for GC roots.) Eelco Dolstra 2007-08-09 23:52:53 +0000
  • f881f7a017 * nix-prefetch-url: support caching. If the environment variable NIX_DOWNLOAD_CACHE is set, then nix-prefetch-url will store the hash and timestamp of downloaded files in the directory $NIX_DOWNLOAD_CACHE. This allows it to figure out if the file is still in the Nix store. Eelco Dolstra 2007-08-09 23:16:44 +0000
  • ef240bc0d5 * Use the new patched version of the aterm library. Eelco Dolstra 2007-08-07 23:40:39 +0000
  • d71cc503a6 * Don't allocate input files on the stack. Eelco Dolstra 2007-08-07 15:00:13 +0000
  • 4cad125e08 * Optionally warn about packages that give an assertion failure. Eelco Dolstra 2007-08-06 16:08:09 +0000
  • 6da6fbfbe9 * Properly keep packages during upgrades. Eelco Dolstra 2007-07-05 20:33:04 +0000
  • 6d1a1191b0 * Support queryDeriver() in multi-user installations. Eelco Dolstra 2007-06-12 16:53:44 +0000
  • 9d9e1c5c41 * Distribute bzip2 1.0.4. Eelco Dolstra 2007-06-11 13:59:07 +0000
  • 9bff7ad728 * Check against creation of GC roots in the store. Those roots don't work, because findRoots() stops when it encounters a symlink to the store. And of course the store is supposed to be read-only. Eelco Dolstra 2007-06-11 11:36:22 +0000
  • f3ebd03bb1 * Remove debug statement. Eelco Dolstra 2007-06-04 12:03:33 +0000
  • 40b6f06f09 change default NIX_HASH_ALGO Armijn Hemel 2007-06-02 15:03:54 +0000
  • b47da5ea21 Eelco Dolstra 2007-05-16 22:07:39 +0000
  • bddc83a148 * New builtin function "isFunction". You're not supposed to use it ;-) * Channels: fix channels that are plain lists of derivations (like strategoxt-unstable) instead of functions (like nixpkgs-unstable). This fixes the error message "error: the left-hand side of the function call is neither a function nor a primop (built-in operation) but a list". Eelco Dolstra 2007-05-16 16:17:04 +0000
  • ca00aa1171 * Allow empty argument lists in function definitions (e.g., {}: bla'). Also allow trailing commas ({x, y,}: ...') as a unintented consequence. Hopefully the reduce/reduce conflict won't cause any problems. Eelco Dolstra 2007-05-15 12:14:37 +0000
  • 7046c35843 * Typo (reported by Marc Weber). Eelco Dolstra 2007-05-14 12:16:41 +0000
  • e5da9c8803 * Create the database directory if it doesn't exist. Eelco Dolstra 2007-05-07 16:59:19 +0000
  • 30beeb27a9 * Set the right priorities when recovering from a directory collision. Eelco Dolstra 2007-05-02 19:38:02 +0000
  • 34d4c9388b Eelco Dolstra 2007-05-02 16:06:04 +0000
  • 93aefd9fc0 * Give unpacked channels more sensible names than 0, 1, ... They now get the basename of the channel URL (e.g., nixpkgs-unstable). The top-level Nix expression of the channel is now an attribute set, the attributes of which are the individual channels (e.g., {nixpkgs_unstable = ...; strategoxt_unstable = ...}). This makes attribute paths ("nix-env -qaA" and "nix-env -iA") more sensible, e.g., "nix-env -iA nixpkgs_unstable.subversion". Eelco Dolstra 2007-05-01 23:16:38 +0000
  • a9d15d4f43 * nix-env -i: instead of breaking package ties by version, break them by priority and version install. That is, if there are multiple packages with the same name, then pick the package with the highest priority, and only use the version if there are multiple packages with the same priority. Eelco Dolstra 2007-05-01 20:33:18 +0000
  • cbfac2fdcc * Set a terminate() handler to ensure that we leave the BDB environment cleanly even when an exception is thrown from a destructor. We still crash, but we don't take all other Nix processes with us. Eelco Dolstra 2007-05-01 15:16:17 +0000
  • 644946feed * Make --verify more interruptable. Eelco Dolstra 2007-05-01 13:21:05 +0000
  • bd1f66453a * `nix-env -q --xml --meta' to show all meta attributes. Eelco Dolstra 2007-05-01 11:30:52 +0000
  • e20f0da22c * Doh. Eelco Dolstra 2007-04-30 18:41:27 +0000
  • 89c1d2b202 * Package flag "keep" that prevents a package from being removed from a user environment by an install or upgrade action. This is particularly useful if you have a version installed that you don't want to upgrade (e.g., because the newer versions are broken). Example: Eelco Dolstra 2007-04-27 23:48:14 +0000
  • a46db5d013 * Package conflict resolution through priority levels. If there is a user environment collission between two packages due to overlapping file names, then a package with a higher priority will overwrite the symlinks of a package with a lower priority. E.g., Eelco Dolstra 2007-04-27 23:28:44 +0000
  • 3d05166086 * Allow conflicting packages to be kept in a user environment, and allow switching between them (NIX-80). Eelco Dolstra 2007-04-27 22:40:59 +0000
  • b7f0f65c19 * nix-env -q now has a flag --prebuilt-only (-b<) that causes nix-env to show only those derivations whose output is already in the Nix store or that can be substituted (i.e., downloaded from somewhere). In other words, it shows the packages that can be installed “quickly”, i.e., don’t need to be built from source. Eelco Dolstra 2007-04-26 14:20:31 +0000
  • 5dc05b76ab * Updated dependency information. Eelco Dolstra 2007-04-16 16:08:44 +0000
  • 5f2492eaec * New primop "throw <string>" to throw an error. This is like abort, only thrown errors are caught by the top-level derivation evaluation in nix-env -qa / -i. Eelco Dolstra 2007-04-16 15:03:19 +0000
  • 0a8eeea9d8 * Remove a warning. Eelco Dolstra 2007-04-16 14:45:25 +0000
  • 2716f9bc5f * It seems that svnversion prints a carriage return on Cygwin, so we get a invalid #define VERSION. Use "svnversion -n" to leave out the newline. Fix provided by Marc Weber. Eelco Dolstra 2007-04-16 12:00:13 +0000
  • ae7990cc88 * Work around a bug in Apple's GCC preprocessor. Eelco Dolstra 2007-03-30 13:24:35 +0000
  • 4caca58ff7 * Make the maximum patch size configurable. Eelco Dolstra 2007-03-30 09:01:05 +0000
  • 17b506c0c7 * Handle ECONNRESET from the client. Also, don't abort() if there are unexpected conditions in the SIGPOLL handler, since that messes up the Berkeley DB environment (which a client must never be able to trigger). Eelco Dolstra 2007-03-28 15:46:21 +0000
  • efd31139df * Forgot a @bindir@. Eelco Dolstra 2007-03-27 09:53:58 +0000
  • d303b389a9 * `nix-copy-closure --from': copy from a remote machine instead of to a remote machine. Eelco Dolstra 2007-03-26 21:05:17 +0000
  • 7edd2e2cd2 * Refactoring. Eelco Dolstra 2007-03-26 20:49:22 +0000
  • f3584ff535 * Fix URL/description. Eelco Dolstra 2007-03-21 12:39:55 +0000
  • 803cb6e3b9 * Override the setuid helper using NIX_SETUID_HELPER. Eelco Dolstra 2007-03-20 22:04:25 +0000
  • a8ea4cbcc8 * Scan /proc/sys/kernel/modprobe for roots to prevent the kernel modules for the running kernel from being garbage-collected. Idem for /proc/sys/kernel/fbsplash. Eelco Dolstra 2007-03-20 11:13:15 +0000
  • 8ab229ddf2 * Terminate build hooks and substitutes with a TERM signal, not a KILL signal. This is necessary because those processes may have joined the BDB environment, so they have to be given a chance to clean up. (NIX-85) Eelco Dolstra 2007-03-19 12:48:45 +0000
  • b2b6cf3fc8 * Undocumented option `gc-check-reachability' to allow reachability checking to be turned off on machines with way too many roots. Eelco Dolstra 2007-03-19 09:16:47 +0000
  • eb2dd4815c * Remove old generations in all directories under /nix/var/nix/profiles, not just in that directory itself. (NixOS puts profiles in /nix/var/nix/profiles/per-user.) Eelco Dolstra 2007-03-13 11:30:57 +0000
  • 917e06bf63 * Delete the output paths before invoking the build hook. Eelco Dolstra 2007-03-07 15:53:11 +0000
  • df0283ae86 * Get rid of those stupid --login tricks, it's the responsibility of the remote system to make sure that Nix is in the $PATH. Eelco Dolstra 2007-03-01 13:55:47 +0000
  • 30394a4f3f * sh -> bash. Eelco Dolstra 2007-03-01 13:49:20 +0000
  • db1973d012 * Look for the openssl program at compile time. If not found, call openssl through $PATH at runtime. Eelco Dolstra 2007-03-01 13:30:46 +0000
  • b4a040e52b * Don't check the signature unless we have to. Eelco Dolstra 2007-03-01 12:30:24 +0000
  • 2ea3bebc23 * Doh! The deriver can be empty. Eelco Dolstra 2007-02-27 23:18:57 +0000
  • 044b6482c1 * Greatly reduced the amount of stack space used by the Nix expression evaluator. This was important because the NixOS expressions started to hit 2 MB default stack size on Linux. Eelco Dolstra 2007-02-27 19:10:45 +0000
  • adce01a8d0 * When NIX_SHOW_STATS=1, show the amount of stack space consumed by the Nix expression evaluator. Eelco Dolstra 2007-02-27 17:28:51 +0000
  • 363e307fd3 * Error message to stdout. Eelco Dolstra 2007-02-26 23:32:10 +0000
  • ddde8e2f32 * Handle EINTR in select(). Eelco Dolstra 2007-02-22 18:15:29 +0000
  • 27bb0ac7d2 * /man -> /share/man Eelco Dolstra 2007-02-22 17:00:58 +0000
  • fa2be32034 * nix-copy-closure: force a login shell on the remote machine to make sure that nix-store is in the PATH. * nix-copy-closure: option --gzip to compress data. Eelco Dolstra 2007-02-22 16:42:01 +0000
  • 4c5e6d1a2f * nix-copy-closure: option --sign. * nix-copy-closure: set SSH options through NIX_SSHOPTS.. Eelco Dolstra 2007-02-22 15:48:20 +0000
  • 024a8ed382 * New command `nix-copy-closure' to copy a closure to a Nix store on another machine through ssh. E.g., Eelco Dolstra 2007-02-21 23:14:53 +0000
  • 7f6161ab3a * Flush cout to show progress. Eelco Dolstra 2007-02-21 23:08:55 +0000
  • 0db450024d * Export/import many paths in one go. Eelco Dolstra 2007-02-21 23:00:31 +0000