- Feb 26, 2013
-
-
Eelco Dolstra authored
It turns out that in multi-user Nix, a builder may be able to do ln /etc/shadow $out/foo Afterwards, canonicalisePathMetaData() will be applied to $out/foo, causing /etc/shadow's mode to be set to 444 (readable by everybody but writable by nobody). That's obviously Very Bad. Fortunately, this fails in NixOS's default configuration because /nix/store is a bind mount, so "ln" will fail with "Invalid cross-device link". It also fails if hard-link restrictions are enabled, so a workaround is: echo 1 > /proc/sys/fs/protected_hardlinks The solution is to check that all files in $out are owned by the build user. This means that innocuous operations like "ln ${pkgs.foo}/some-file $out/" are now rejected, but that already failed in chroot builds anyway.
-
- Feb 19, 2013
-
-
Eelco Dolstra authored
‘--option verbosity 0’ doesn't actually do anything.
-
Ludovic Courtès authored
-
Ludovic Courtès authored
-
- Feb 08, 2013
-
-
Eelco Dolstra authored
-
Eelco Dolstra authored
Wacky string coercion semantics caused expressions like exec = "${./my-script} params..."; to evaluate to a path (‘/path/my-script params’), because anti-quotations are desuged to string concatenation: exec = ./my-script + " params..."; By constrast, adding a space at the start would yield a string as expected: exec = " ${./my-script} params..."; Now the first example also evaluates to a string.
-
Eelco Dolstra authored
-
Marc Weber authored
adding primop function calculating hash of a string Signed-off-by:
Marc Weber <marco-oweber@gmx.de>
-
- Feb 05, 2013
-
-
Eelco Dolstra authored
-
- Jan 30, 2013
-
-
Eelco Dolstra authored
-
- Jan 24, 2013
-
-
Eelco Dolstra authored
Issue #88.
-
- Jan 23, 2013
-
-
Eelco Dolstra authored
No need to get annoying.
-
- Jan 22, 2013
-
-
Eelco Dolstra authored
-
- Jan 21, 2013
-
-
Eelco Dolstra authored
-
Eelco Dolstra authored
-
Shea Levy authored
-
- Jan 17, 2013
-
-
Eelco Dolstra authored
...where <XX> is the first two characters of the derivation. Otherwise /nix/var/log/nix/drvs may become so large that we run into all sorts of weird filesystem limits/inefficiences. For instance, ext3/ext4 filesystems will barf with "ext4_dx_add_entry:1551: Directory index full!" once you hit a few million files.
-
- Jan 07, 2013
-
-
Eelco Dolstra authored
-
- Jan 04, 2013
-
-
Eelco Dolstra authored
- Jan 03, 2013
-
-
Eelco Dolstra authored
-
Eelco Dolstra authored
-
Eelco Dolstra authored
Doing this once makes subsequent operations like garbage collecting more efficient since we don't have to call makeMutable() first.
-
- Jan 02, 2013
-
-
Eelco Dolstra authored
-
Eelco Dolstra authored
-
Eelco Dolstra authored
-
Eelco Dolstra authored
Issue #77.
-
Eelco Dolstra authored
Fixes #77.
-
Eelco Dolstra authored
Issue #77.
- Dec 29, 2012
-
-
Eelco Dolstra authored
Fixes #76.
-
Eelco Dolstra authored
Fixes #24.
-
- Dec 21, 2012
-
-
Eelco Dolstra authored
This should make live easier for single-user (non-daemon) installations. Note that when the daemon is used, the "calling user" is root so we're not using any untrusted caches.
-
- Dec 20, 2012
-
-
Eelco Dolstra authored
-
Eelco Dolstra authored
So if a path is not garbage solely because it's reachable from a root due to the gc-keep-outputs or gc-keep-derivations settings, ‘nix-store -q --roots’ now shows that root.
-
Eelco Dolstra authored
But this time it's *obviously* correct! No more segfaults due to infinite recursions for sure, etc. Also, move directories to /nix/store/trash instead of renaming them to /nix/store/bla-gc-<pid>. Then we can just delete /nix/store/trash at the end.
-
Eelco Dolstra authored
-
- Dec 19, 2012
-
-
Eelco Dolstra authored
This prevents zillions of derivations from being kept, and fixes an infinite recursion in the garbage collector (due to an obscure cycle that can occur with fixed-output derivations).
-
Eelco Dolstra authored
Waiting for the hook to shut down cleanly sometimes seems to lead to hangs.
-