about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2010-03-25 * Measure stack usage.Eelco Dolstra1-3/+11
2010-03-25 * Implemented lists.Eelco Dolstra1-7/+63
2010-03-25 * Quick and dirty implementation of `with'. `with e1; e2' isEelco Dolstra2-6/+56
basically desugared to `let <with> = e1; e2', and `lookupVar' looks in each <with> in the environment chain for an attribute with the specified name.
2010-03-25 * Don't convert variable names to strings.Eelco Dolstra1-12/+15
2010-03-25 * Implement blackholing.Eelco Dolstra1-8/+9
2010-03-25 * Implement `...' and default function arguments.Eelco Dolstra1-7/+31
2010-03-25 * Simplify @-patterns: only `{attrs}@name' or `name@{attrs}' are nowEelco Dolstra7-156/+73
allowed. So `name1@name2', `{attrs1}@{attrs2}' and so on are now no longer legal. This is no big loss because they were not useful anyway. This also changes the output of builtins.toXML for @-patterns slightly.
2010-03-24 * Implemented attribute set pattern matches.Eelco Dolstra1-13/+117
2010-03-24 * Store values in environments.Eelco Dolstra1-64/+66
2010-03-24 * Reduce the number of value allocations in eval() by movingEelco Dolstra1-26/+38
responsibility for allocation of the result to the caller.
2010-03-24 * Plain lambdas.Eelco Dolstra1-2/+38
2010-03-23 (no commit message)Eelco Dolstra1-1/+1
2010-03-23 * Start of an evaluator that uses call-by-need (with thunk updating)Eelco Dolstra3-1/+200
instead of (memoised) call-by-name.
2010-03-19 * Clean up error messages in killUser().Eelco Dolstra1-4/+6
2010-03-16 * Fix building on Cygwin (http://hydra.nixos.org/build/325071).Eelco Dolstra1-1/+1
2010-03-14 Merge r20344 & r20346.Nicolas Pierron2-3/+10
2010-03-11 Uh. somehow a Makefile tab got in as spaces. Fixing.Lluís Batlle i Rossell1-1/+1
2010-03-11 Making 'bin2c' to be built with the compiler for the local system.Lluís Batlle i Rossell1-0/+3
I copied the configure.ac code about CC_FOR_BUILD from libX11.
2010-03-11 Show the build user's group in /etc/group in chroots.Ludovic Courtès1-0/+6
* src/libstore/build.cc (nix::DerivationGoal::startBuilder): Create /etc/group showing the build user's group.
2010-03-11 Fix thinko in r20547.Ludovic Courtès1-4/+4
* src/libstore/build.cc (nix::DerivationGoal::startBuilder): Fix the GID of the build user in /etc/passwd.
2010-03-11 Clear supplementary groups of `nixbld' in /etc/passwd in chroots.Ludovic Courtès1-4/+5
* src/libstore/build.cc (nix::DerivationGoal::startBuilder): Don't display any supplementary groups for `nixbld' in /etc/passwd.
2010-02-24 * Don't use fdatasync since it doesn't work on Snow Leopard.Eelco Dolstra3-9/+3
* Don't refer to config.h in util.hh, because config.h is not installed (http://hydra.nixos.org/build/303053).
2010-02-10 Don't rely on `PATH_MAX' on GNU.Ludovic Courtès1-0/+10
2010-02-03 * Revert r19797, and use a simpler solution: just don't monitor buildEelco Dolstra4-37/+21
hooks for silence. It's unnecessary because the remote nix-store command is already monitoring the real build.
2010-02-03 * While waiting for a lock, print a sign of life every 5 minutes.Eelco Dolstra3-3/+27
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.
2010-02-02 * Remove most Cygwin-specific code. Cygwin 1.7 implements advisoryEelco Dolstra4-112/+5
POSIX locks, and simulates Unix-style file deletion semantics sufficiently. Note that this means that Nix won't work on Cygwin 1.5 anymore.
2010-02-02 * If fdatasync() isn't available, use fsync().Eelco Dolstra1-0/+4
2010-01-29 * Added an option "fsync-metadata" to fsync() changes toEelco Dolstra5-27/+26
/nix/var/nix/db. * Removed the function writeStringToFile since it does (almost) the same thing as writeFile.
2010-01-29 * Don't consider a store path valid if its info file exists but isEelco Dolstra1-4/+36
zero bytes long. That makes Nix more robust in case of crashes (especially on ext4).
2010-01-25 * Made `nix-store -qR --include-outputs' much faster if there areEelco Dolstra3-41/+13
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).
2010-01-25 * Make the garbage collector do the right thing when `gc-keep-outputs'Eelco Dolstra4-18/+90
is enabled by not depending on the deriver.
2010-01-12 * On startup, set the default SIGCHLD handler. This is so that NixEelco Dolstra1-5/+11
works correctly in weird environments where the SIGCHLD handler is set to "ignore".
2009-12-17 * Include config.h before the C library headers, because it definesEelco Dolstra3-4/+6
_FILE_OFFSET_BITS=64. Without it, functions like stat() fail on large file sizes. This happened with a Nix store on squashfs: $ nix-store --dump /tmp/mnt/46wzqnk4cbdwh1dclhrpqnnz1icak6n7-local-net-cmds > /dev/null error: getting attributes of path `/tmp/mnt/46wzqnk4cbdwh1dclhrpqnnz1icak6n7-local-net-cmds': Value too large for defined data type $ stat /tmp/mnt/46wzqnk4cbdwh1dclhrpqnnz1icak6n7-local-net-cmds File: `/tmp/mnt/46wzqnk4cbdwh1dclhrpqnnz1icak6n7-local-net-cmds' Size: 0 Blocks: 36028797018963968 IO Block: 1024 regular empty file (This is a bug in squashfs or mksquashfs, but it shouldn't cause Nix to fail.)
2009-12-16 * Build correctly against newer ATerm releases. Fixes "error: 'union'Eelco Dolstra2-3/+2
tag used in naming 'struct _ATerm'".
2009-12-09 * Give a better error message when trying to build something andEelco Dolstra1-0/+6
readOnlyMode is set.
2009-11-24 * Grrr.Eelco Dolstra1-1/+1
2009-11-24 * GCC 4.4 is stricter about the EOF macroEelco Dolstra1-0/+2
(http://hydra.nixos.org/build/156340).
2009-11-24 * Templatise getIntArg / string2Int.Eelco Dolstra5-40/+25
2009-11-24 * In the garbage collector, don't count files with a link count > 1 inEelco Dolstra1-2/+4
the "bytes/blocks freed" statistics.
2009-11-24 * Randomise the order in which we delete entries to make the collectorEelco Dolstra1-2/+10
less biased towards deleting paths that come alphabetically first (e.g. /nix/store/000...). This matters when using --max-freed etc.
2009-11-23 (no commit message)Eelco Dolstra1-0/+5
2009-11-23 * A command `nix-store --query --roots <paths>' to find the garbageEelco Dolstra2-31/+31
collector roots that point (directly or indirectly) to the given paths.
2009-11-23 * `nix-store --gc --print-roots': also print the path of the actualEelco Dolstra3-17/+16
root symlink, not just its target. E.g.: /nix/var/nix/profiles/system-99-link -> /nix/store/76kwf88657nq7wgk1hx3l1z5q91zb9wd-system
2009-11-23 * Made the garbage collector a lot faster. It no longer computes theEelco Dolstra2-166/+168
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.
2009-11-20 * Remove the --use-atime / --max-atime garbage collector flags. ManyEelco Dolstra6-158/+11
(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.
2009-11-06 * Remove support for old (before Nix 0.12pre12020) databases.Eelco Dolstra11-702/+25
2009-10-22 * When building in a chroot, make a copy of a file if hard-linkingEelco Dolstra1-2/+13
fails. This is likely to happen after a `nix-store --optimise', because some files may have 32000 links (NIX-111).
2009-10-22 * Remove a prototype for a function that no longer exists.Eelco Dolstra1-3/+0
2009-10-22 * builtins.trace: in the common case that the value is a string, thenEelco Dolstra1-1/+6
show the string, not the ATerm, so we get `trace: bla' instead of `trace: Str("bla",[])'.
2009-10-21 * Added a primop unsafeDiscardOutputDependency needed by Disnix toEelco Dolstra1-3/+34
pass derivation paths to a builder without actually building them.