Commit graph

  • 7ec5a65925 * Doh! The scope of $slotLock should extend to the end of the script, because otherwise the lock will be released at the end of the while loop. Eelco Dolstra 2010-02-04 02:18:29 +0000
  • c9b2d80bcd * Typo. Eelco Dolstra 2010-02-04 02:05:34 +0000
  • 3cfe65e516 * Doh! Calling `system' in an END block causes the exit status in $? to be changed to 0. Eelco Dolstra 2010-02-04 02:05:22 +0000
  • e51a276907 * Remove the `cat' calls when not using --gzip. Eelco Dolstra 2010-02-04 01:39:23 +0000
  • 408913bbaf * Revert r19796 for now. Eelco Dolstra 2010-02-04 00:12:57 +0000
  • 4e17be7981 * Revert r19797, and use a simpler solution: just don't monitor build hooks for silence. It's unnecessary because the remote nix-store command is already monitoring the real build. Eelco Dolstra 2010-02-03 21:38:41 +0000
  • f859a8d3c3 * While waiting for a lock, print a sign of life every 5 minutes. This prevents remote builders from being killed by the `max-silent-time' inactivity monitor while they are waiting for a long garbage collection to finish. This happens fairly often in the Hydra build farm. Eelco Dolstra 2010-02-03 21:22:57 +0000
  • c45de33c67 * Respect @sysconfdir@. Eelco Dolstra 2010-02-03 21:13:37 +0000
  • d0c32dc135 * In the build hook, if connecting to a machine fails, try the other machines of the right type (if available). This makes the build farm more robust to failures. Eelco Dolstra 2010-02-03 20:35:37 +0000
  • f56a039775 * Use SSH connection sharing in the remote build script. * Removed the Cygwin password hack since the problem is apparently fixed in Visual Studio. Eelco Dolstra 2010-02-03 20:12:18 +0000
  • bc1e478db1 * nix-copy-closure: start only one SSH connection to the server, or recycle an already existing connection (using OpenSSH's connection sharing feature). Eelco Dolstra 2010-02-03 15:34:52 +0000
  • 4d8a85b8f5 * Updated the release notes. Eelco Dolstra 2010-02-03 11:00:35 +0000
  • 3ce5f07793 * Ugly hack to make `nix-channel' work on Cygwin. Eelco Dolstra 2010-02-02 17:01:16 +0000
  • e839802720 * Don't do a chdir to $tmpDir. It's not necessary, and Windows doesn't support deleting the current directory. Eelco Dolstra 2010-02-02 15:29:18 +0000
  • 4bbbe25802 * Remove most Cygwin-specific code. Cygwin 1.7 implements advisory POSIX locks, and simulates Unix-style file deletion semantics sufficiently. Note that this means that Nix won't work on Cygwin 1.5 anymore. Eelco Dolstra 2010-02-02 15:28:36 +0000
  • 2723d9b56e * If fdatasync() isn't available, use fsync(). Eelco Dolstra 2010-02-02 11:57:49 +0000
  • 07ffdc2862 * Added an option "fsync-metadata" to fsync() changes to /nix/var/nix/db. * Removed the function writeStringToFile since it does (almost) the same thing as writeFile. Eelco Dolstra 2010-01-29 12:22:58 +0000
  • ad529fb89f * Don't consider a store path valid if its info file exists but is zero bytes long. That makes Nix more robust in case of crashes (especially on ext4). Eelco Dolstra 2010-01-29 11:53:58 +0000
  • fdcaf37361 * Made `nix-store -qR --include-outputs' much faster if there are multiple paths specified on the command line (from O(n * m) to O(n + m), where n is the number of arguments and m is the size of the closure). Eelco Dolstra 2010-01-25 17:18:44 +0000
  • 50e34891f0 * Disable gzip compression in build-remote.pl because it puts too much load on the Hydra build farm (where it's unnecessary anyway because it has a fast connection to the build machines). In any case, compression can be enabled by using the `-C' option to ssh. Eelco Dolstra 2010-01-25 16:14:45 +0000
  • 5388944e8d * Make the garbage collector do the right thing when `gc-keep-outputs' is enabled by not depending on the deriver. Eelco Dolstra 2010-01-25 16:04:32 +0000
  • f0c0277970 * On startup, set the default SIGCHLD handler. This is so that Nix works correctly in weird environments where the SIGCHLD handler is set to "ignore". Eelco Dolstra 2010-01-12 12:22:38 +0000
  • ef92a14bfe * Include config.h before the C library headers, because it defines _FILE_OFFSET_BITS=64. Without it, functions like stat() fail on large file sizes. This happened with a Nix store on squashfs: Eelco Dolstra 2009-12-17 14:12:44 +0000
  • 945d8218fb * Build correctly against newer ATerm releases. Fixes "error: 'union' tag used in naming 'struct _ATerm'". Eelco Dolstra 2009-12-16 15:29:50 +0000
  • d8a5dc02fc * Build on Fedora 12. Eelco Dolstra 2009-12-10 13:14:22 +0000
  • 3a78af1e24 * Release notes. Eelco Dolstra 2009-12-09 21:02:24 +0000
  • 7ca9972636 * When doing a nix-pull, remove old manifests downloaded from the same URL. This prevents lots of old cruft accumulating in /nix/var/nix/manifests. Eelco Dolstra 2009-12-09 19:36:54 +0000
  • c4c84d1edb * nix-build: be less verbose. Eelco Dolstra 2009-12-09 18:08:28 +0000
  • bcd6cdf0d8 * Give a better error message when trying to build something and readOnlyMode is set. Eelco Dolstra 2009-12-09 17:45:22 +0000
  • 13618b191e * Grrr. Eelco Dolstra 2009-11-24 13:28:46 +0000
  • aa5a768720 * GCC 4.4 is stricter about the EOF macro (http://hydra.nixos.org/build/156340). Eelco Dolstra 2009-11-24 12:56:26 +0000
  • 9b8fda796b * Templatise getIntArg / string2Int. Eelco Dolstra 2009-11-24 12:26:25 +0000
  • 8022015552 * In the garbage collector, don't count files with a link count > 1 in the "bytes/blocks freed" statistics. Eelco Dolstra 2009-11-24 10:51:52 +0000
  • f9e766db98 * Randomise the order in which we delete entries to make the collector less biased towards deleting paths that come alphabetically first (e.g. /nix/store/000...). This matters when using --max-freed etc. Eelco Dolstra 2009-11-24 09:53:18 +0000
  • ca50c83fbb Eelco Dolstra 2009-11-23 21:21:29 +0000
  • 3d55f1eb57 * A command `nix-store --query --roots <paths>' to find the garbage collector roots that point (directly or indirectly) to the given paths. Eelco Dolstra 2009-11-23 18:16:25 +0000
  • ae6bf87273 * `nix-store --gc --print-roots': also print the path of the actual root symlink, not just its target. E.g.: Eelco Dolstra 2009-11-23 17:23:12 +0000
  • c364d5d1e3 * Made the garbage collector a lot faster. It no longer computes the complete set of live and dead paths before starting the actual deletion, but determines liveness on demand. I.e. for any path in the store, it first tries to delete all the referrers, and then the path itself. This means that the collector can start deleting paths almost immediately. Eelco Dolstra 2009-11-23 16:34:24 +0000
  • 4f7e5f5810 * Don't create /nix/var/nix/gcroots/{tmp,channels}, since they don't seem to be used anymore. Eelco Dolstra 2009-11-23 12:48:54 +0000
  • 8824d60fe5 * Remove the --use-atime / --max-atime garbage collector flags. Many (Linux) machines no longer maintain the atime because it's too expensive, and on the machines where --use-atime is useful (like the buildfarm), reading the atimes on the entire Nix store takes way too much time to make it practical. Eelco Dolstra 2009-11-20 17:12:38 +0000
  • 997db91e07 * Don't pass -K. It should really inherit the setting of the calling Nix though. Eelco Dolstra 2009-11-17 16:22:39 +0000
  • 3392d32e8b * In nix-pull/nix-channel, create the manifests directory if it doesn't exist. The Debian packages don't include the manifests directory, so nix-channel would silently skip doing a nix-pull, resulting in everything being built from source. Thanks to Juan Pedro Bolívar Puente. Eelco Dolstra 2009-11-13 10:08:31 +0000
  • 327a232c85 * Remove support for old (before Nix 0.12pre12020) databases. Eelco Dolstra 2009-11-06 01:15:44 +0000
  • c60d796f04 * Version bump. Eelco Dolstra 2009-11-05 22:23:38 +0000
  • e8bad77c7c Eelco Dolstra 2009-11-05 15:20:19 +0000
  • 7680904839 * Build on Karmic. Eelco Dolstra 2009-11-05 14:53:01 +0000
  • 58f3338bfa * The Nix .deb package depends on curl. Eelco Dolstra 2009-11-05 14:40:42 +0000
  • 268d90a03e * Various updates. Eelco Dolstra 2009-11-05 09:07:43 +0000
  • 1ff8758f76 * Manual updates. Eelco Dolstra 2009-11-04 16:52:35 +0000
  • 8520542071 * When building in a chroot, make a copy of a file if hard-linking fails. This is likely to happen after a `nix-store --optimise', because some files may have 32000 links (NIX-111). Eelco Dolstra 2009-10-22 08:28:33 +0000
  • 6b9f6b0222 * Remove a prototype for a function that no longer exists. Eelco Dolstra 2009-10-22 08:12:38 +0000
  • deb342fb08 * builtins.trace: in the common case that the value is a string, then show the string, not the ATerm, so we get trace: bla' instead of trace: Str("bla",[])'. Eelco Dolstra 2009-10-22 08:10:12 +0000
  • 437077c39d * Added a primop unsafeDiscardOutputDependency needed by Disnix to pass derivation paths to a builder without actually building them. Eelco Dolstra 2009-10-21 15:05:30 +0000
  • 6f7d7bc1de * Give a useful error message when an evaluation error occurs while trying to upgrade a package. Eelco Dolstra 2009-10-13 09:30:17 +0000
  • 53a4981fa2 Added optional parameter which adds -lnsl -lsocket to make the Nix package manager work on OpenSolaris Sander van der Burg 2009-10-08 14:50:37 +0000
  • 18f0ff003d configure.ac: use AC_SYS_LARGEFILE to determine how to enable 64-bit file size support Peter Simons 2009-10-06 09:14:06 +0000
  • 96f1517831 * Support platforms that don't have O_ASYNC (e.g. OpenSolaris apparently). Eelco Dolstra 2009-09-30 11:32:04 +0000
  • 1a8f8fd86f * OpenSolaris compatibility. Eelco Dolstra 2009-09-30 09:54:29 +0000
  • 0f79ad47c5 Eelco Dolstra 2009-09-25 12:36:03 +0000
  • c7057fc1f2 * And some more. Eelco Dolstra 2009-09-24 07:39:55 +0000
  • 193f59e077 * Fix a build failure on Fedora 11. rename() needs <stdio.h>. Eelco Dolstra 2009-09-24 07:21:29 +0000
  • 0ae2be5692 Eelco Dolstra 2009-09-24 07:05:06 +0000
  • 1332dd1ed3 * tryEval shouldn't catch all exceptions of type Error, since not all of them leave the evaluator in a continuable state. Also, it should be less chatty. Eelco Dolstra 2009-09-23 19:19:26 +0000
  • 63a17d4bd5 * Don't build against BDB on Cygwin, it's been broken for unknown reasons for a while (e.g. http://hydra.nixos.org/build/79164). Eelco Dolstra 2009-09-23 18:52:18 +0000
  • 676e07902e * Darwin hack. Eelco Dolstra 2009-09-23 18:04:55 +0000
  • 64e89980e8 * Create some state directories automatically as a convenience. Eelco Dolstra 2009-09-23 17:05:51 +0000
  • 48b58617e9 * include wait.h for WEXITSTATUS Rob Vermaas 2009-09-23 12:57:15 +0000
  • 51ad64cc07 * Use xmllint (>= 2.7.4) for RelaxNG validation instead of Jing. Eelco Dolstra 2009-09-18 11:45:56 +0000
  • df05a759e4 * In "make init-state", ignore errors creating /nix/store. Hack to get the Debian VM builds to work (where /nix/store is a mount point containing the store of the host). Eelco Dolstra 2009-09-18 11:01:30 +0000
  • d3de71efc9 Eelco Dolstra 2009-09-17 17:44:13 +0000
  • e1df4ef73c Eelco Dolstra 2009-09-17 17:02:14 +0000
  • 86408b3f47 * build-remote.pl: Pick machines in a round-robin order, rather than giving jobs to the first machine until it hits its job limit, then the second machine and so on. This should improve utilisation of the Hydra build farm a lot. Also take an optional speed factor into account to cause fast machines to be preferred over slower machines with a similar load. Eelco Dolstra 2009-09-17 15:48:17 +0000
  • 57e0d73c77 * build-remote.pl: allow the system type to be a comma-separated list of system types. Don't treat the x86_64-linux system type specially. Eelco Dolstra 2009-09-17 13:51:04 +0000
  • 0dbd4638e0 * Two primops: builtins.intersectAttrs and builtins.functionArgs. intersectAttrs returns the (right-biased) intersection between two attribute sets, e.g. every attribute from the second set that also exists in the first. functionArgs returns the set of attributes expected by a function. Eelco Dolstra 2009-09-15 13:01:46 +0000
  • 3bca8931e8 Adding tryEval builtin. It allows to catch presence of errors in an expression. Michael Raskin 2009-08-25 16:06:46 +0000
  • 5e9a4e5101 Eelco Dolstra 2009-08-03 13:32:13 +0000
  • 9b46d1ae6f Eelco Dolstra 2009-08-03 12:24:20 +0000
  • 20b6f94b65 * nix-build: pass the --show-trace flag. Eelco Dolstra 2009-07-15 09:10:38 +0000
  • d413612029 * Remove the redundant <sections> around refentries. Eelco Dolstra 2009-07-14 14:58:12 +0000
  • 1f169f43b3 * Leave out the collaborators / revision history page. Eelco Dolstra 2009-07-10 13:42:12 +0000
  • 5e2e2f10ef Eelco Dolstra 2009-07-10 11:48:49 +0000
  • c6890d6b5c * Replace newlines in table output with spaces. Eelco Dolstra 2009-07-02 08:52:12 +0000
  • 749dd97a54 * Support integers and lists of strings in meta fields. This is useful for fields like meta.maintainers, meta.priority (which can be a proper integer now) and even meta.license (if there are multiple licenses). Eelco Dolstra 2009-06-30 15:53:39 +0000
  • f2c3fc5191 * Don't show trace information by default (`--show-trace' to enable). NixOS evaluation errors in particular look intimidating and generally aren't very useful. Ideally the builtins.throw messages should be self-contained. Eelco Dolstra 2009-06-30 13:28:29 +0000
  • a2fc3a53ba * Highlight URLs containing "=" properly. Eelco Dolstra 2009-06-18 10:04:14 +0000
  • d53603c928 * Attributes names in attrsets can contain dots now. Eelco Dolstra 2009-06-18 09:56:50 +0000
  • 14bc3ce3d6 * Canonicalise timestamps in the Nix store to 1 (1970-01-01 00:00:01 UTC) rather than 0 (00:00:00). 1 is a better choice because some programs use 0 as a special value. For instance, the Template Toolkit uses a timestamp of 0 to denote the non-existence of a file, so it barfs on files in the Nix store (see template-toolkit-nix-store.patch in Nixpkgs). Similarly, Maya 2008 fails to load script directories with a timestamp of 0 and can't be patched because it's closed source. Eelco Dolstra 2009-06-13 16:30:58 +0000
  • f24cf5d303 * nix-build: if nix-instantiate or nix-store fails due to a signal (e.g. out of memory or a segfault), print an error message. Otherwise the user doesn't see anything. Eelco Dolstra 2009-06-10 11:30:34 +0000
  • c6cb792d48 Eelco Dolstra 2009-05-26 16:32:02 +0000
  • a64bbe049e * Change the scoping of "inherit (e) ..." in recs so that the attributes of the rec are in scope of `e'. This is useful in expressions such as Eelco Dolstra 2009-05-15 13:46:13 +0000
  • d407d572fd * Some syntactic sugar for attribute sets: allow {x.y.z = ...;} as a shorthand for {x = {y = {z = ...;};};}. This is especially useful for NixOS configuration files, e.g. Eelco Dolstra 2009-05-15 12:35:23 +0000
  • e42975490f * Check for duplicate attributes in fixAttrs, rather than doing a separate traversal after parsing. Likewise, check for duplicate pattern variables right away. Eelco Dolstra 2009-05-14 14:29:45 +0000
  • 50d11b90ca * Allow unsafe (unspecified) comparisons between attrsets unless NIX_NO_UNSAFE_EQ is set, for now. Eelco Dolstra 2009-05-12 11:06:24 +0000
  • c34e6d71bc * Disallow equality tests between attribute sets. This was always broken, but now the evaluator checks for it to prevent Nix expressions from relying on undefined behaviour. Equality tests are implemented using a shallow pointer equality test between ATerms. However, because attribute sets are lazy and contain position information, this can give false positives. For instance, previously Eelco Dolstra 2009-05-11 15:50:14 +0000
  • 9536ba19d4 Eelco Dolstra 2009-05-07 13:22:26 +0000
  • 83bd320b39 * Build a PDF version of the manual in the tarball job (it's not included in the tarball though). Eelco Dolstra 2009-05-07 13:12:46 +0000
  • f751c2966b * Don't have a bugs section in the manual. Bugs should be kept in the bug tracker. Eelco Dolstra 2009-05-07 13:11:58 +0000
  • 404996ca1f * Produce the manual in the tarball job. Eelco Dolstra 2009-05-07 12:57:04 +0000
  • 7660e2a068 * Remove a right recursion that causes the parser to barf on very long lists. The comment about ATreverse requiring unbounded stack space was unfounded anyway. Eelco Dolstra 2009-05-07 11:35:52 +0000
  • 52a9ba96f5 * Include the version file. Eelco Dolstra 2009-05-07 11:34:08 +0000