1
2
3
4
5
6
7
8
92015-05-19 | Merge branch 'nix'....* daemon.am (AM_CXXFLAGS): Change -std=c++0x to -std=c++11.
(libstore_a_CPPFLAGS): Add -DDEFAULT_CHROOT_DIRS.
(parse_opt): Use 'settings.get' instead of 'settings.dirsInChroot'.
(main): Likewise.
* tests/guix-archive.sh: Don't grep for the "importing ..." message since it
is no longer produced.
The nix/ part is a squashed commit of the following:
commit 3bfa70b7963e12be346900e64ae45fa019850675
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed Dec 10 13:53:04 2014 +0100
Don't wait for PID -1
The pid field can be -1 if forking the substituter process failed.
commit 5241aec531e9c9a4b2dd5e5b6ee3f07ff049d9a5
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon Nov 24 16:48:04 2014 +0100
Build derivations in a more predictable order
Derivations are now built in order of derivation name, so a package
named "aardvark" is built before "baboon".
Fixes #399.
commit 9f355738e106f4ca49bba7276e8d520a2fc2955d
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon Nov 24 16:44:35 2014 +0100
Don't create unnecessary substitution goals for derivations
commit 554eaf5e8c82ddd6a42e4301f6d3dd5419c04060
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed Nov 19 18:02:39 2014 +0100
Disable vacuuming the DB after garbage collection
Especially in WAL mode on a highly loaded machine, this is not a good
idea because it results in a WAL file of approximately the same size
ad the database, which apparently cannot be deleted while anybody is
accessing it.
commit 4eb62b5230c29e2f6ab17352439521083846c259
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed Nov 19 17:09:27 2014 +0100
nix-daemon: Call exit(), not _exit()
This was preventing destructors from running. In particular, it was
preventing the deletion of the temproot file for each worker
process. It may also have been responsible for the excessive WAL
growth on Hydra (due to the SQLite database not being closed
properly).
Apparently broken by accident in
8e9140cfdef9dbd1eb61e4c75c91d452ab5e4a74.
commit f160a30d5612506de41a8206a57eccee1cd85fb7
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed Nov 19 17:07:29 2014 +0100
Clean up temp roots in a more C++ way
commit a64744477d95e6932ae0fefc7cc358b56b8c397f
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon Nov 17 01:00:39 2014 +0100
Fix message
commit b73de6e49b64d01974649a1e67a77113b768c2b1
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri Nov 14 14:16:20 2014 +0100
Don't use ADDR_LIMIT_3GB
This gives 32-bit builds on x86_64-linux more memory.
commit e0825bd36b43f3c1d408745a9c61f92fdaf7dace
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed Nov 12 11:35:53 2014 +0100
Make ~DerivationGoal more reliable
commit 86b9e6d4575e5c93f428b8563ae259f0f4014173
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue Nov 4 10:41:29 2014 +0100
nix-store --gc: Don't warn about missing manifests directory
commit 1129a982c4e77ff465fd6102627477900af2f7f4
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri Oct 31 09:36:09 2014 +0100
Improve error message if the daemon worker fails to start
commit bed17f40fce27e1a31f70957b1d0dd912b58700d
Author: Shea Levy <shea@shealevy.com>
Date: Mon Oct 20 12:15:50 2014 -0400
Fix build on gcc < 4.7
commit ee8601cac4b353e551b238f546a0e7e8fcdcd3be
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue Oct 14 10:51:19 2014 +0200
Improved error message when encountering unsupported file types
Fixes #269.
commit c2b65dd197a1b2e14d517b0b5ff307b149538917
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri Oct 3 22:37:51 2014 +0200
Remove some duplicate code
commit c95742283595cb01b44ddc8e6ff5e9c1d66db444
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri Oct 3 16:53:28 2014 +0200
createDirs(): Handle ‘path’ being a symlink
In particular, this fixes "nix-build -o /tmp/result" on Mac OS X
(where /tmp is a symlink).
commit 6092a48603ea7888f8a1f69db87835bc339c973a
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Sep 25 18:45:43 2014 +0200
nix-daemon: Close unnecessary fd
commit e74390a16f74233283572661f64ed4f03ae1650d
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri Sep 19 15:07:22 2014 +0200
Remove bogus comment
commit e63c8aaa0511d1d0a5487c45dec9f8cbd66b4cc6
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed Sep 17 17:21:13 2014 +0200
On Linux, disable address space randomization
commit 55939b1a4b34b904eedba90ac6c14efc6258f40d
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed Sep 17 15:18:13 2014 +0200
Settings: Add bool get()
commit 6621195e48f8e0cbbe6e19dbcde30bd8a7da0399
Author: Ludovic Courtès <ludo@gnu.org>
Date: Mon Sep 1 22:21:42 2014 +0200
Add an 'optimiseStore' remote procedure call.
commit 3bb89c3a31b9cf6e056f3659389e2d2e7afd17fa
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Aug 28 18:57:13 2014 +0200
Add disallowedReferences / disallowedRequisites
For the "stdenv accidentally referring to bootstrap-tools", it seems
easier to specify the path that we don't want to depend on, e.g.
disallowedRequisites = [ bootstrapTools ];
commit abd9d61e6201ddbde3305dd27c286e883e950bec
Author: Gergely Risko <errge@nilcons.com>
Date: Wed Aug 27 16:46:02 2014 +0200
Introduce allowedRequisites feature
commit 8c766e48d5c4741b63a4f24dc91138f587c04a5a
Author: Joel Taylor <me@joelt.io>
Date: Thu Aug 21 14:06:49 2014 -0700
fix disappearing bash arguments
commit d4e7c195fabf0f24c2ffbd4ca8f189489bbbf44d
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue Aug 19 17:44:59 2014 +0200
Make hook shutdown more reliable
commit ea837e470f70900481d00b0d1cd73e6855c4f70d
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon Aug 18 11:35:50 2014 +0200
Doh
commit 790271559cb8b36cd8fcdc533f41be88ec15ad08
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Sun Aug 17 19:11:50 2014 +0200
Reduce verbosity
commit 3f6d4f63ec0d1d6cfc3233998b7dd9608b2f6ff3
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Sun Aug 17 19:09:03 2014 +0200
Propagate remote timeouts properly
commit aa98ba506739b885b3ce0b392dade5e1e1bb07f7
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed Aug 13 17:44:41 2014 +0200
Use regular file GC roots if possible
This makes hydra-eval-jobs create roots as regular files. See
1c208f2b7ef8ffb5e6d435d703dad83223a67bd6.
commit 5fe5ff77800c2911c011f582d8dfa90c44d4a3a5
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue Aug 5 16:41:42 2014 +0200
Remove unnecessary call to addTempRoot()
commit 1820845c44c8cbe1121e78d5f16e7778532477f6
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue Aug 5 10:19:57 2014 +0200
Doh
commit e9070bf4226b225a0b42798b20ea3947abf58a6f
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon Aug 4 18:13:14 2014 +0200
Move some options out of globals
commit 31909515634d74e4c3d92be6186c5c48244582ae
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon Aug 4 18:02:29 2014 +0200
Refactor
commit f530ee6f356f4299ca343dde7f4c0742300ffa08
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon Aug 4 18:00:00 2014 +0200
Add option ‘build-extra-chroot-dirs’
This is useful for extending (rather than overriding) the default set
of chroot paths.
commit 75f746f018e34868b8057bed87c90d2cbe2c0b6c
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon Aug 4 17:27:45 2014 +0200
Get rid of "killing <pid>" message for unused build hooks
commit 42c6246f674ca2d5ea166d1ae676b7087ea1b0d8
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri Aug 1 19:38:21 2014 +0200
Remove ugly hack for detecting build environment setup errors
commit b732ffd28ddf50d3150e4f276a0e8488e38eaacb
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri Aug 1 19:29:03 2014 +0200
Call commonChildInit() before doing chroot init
This ensures that daemon clients see error messages from the chroot
setup.
commit c51374c128cbe1f06acd95ba2d627a118a95aabf
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri Aug 1 17:30:51 2014 +0200
Eliminate redundant copy
commit 666c9b7108e460f0d3450015a3379bfeb3e3a497
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri Aug 1 17:20:25 2014 +0200
findRoots(): Prevent a call to lstat()
This means that getting the roots from /nix/var/nix/.../hydra-roots
doesn't need any I/O other than reading the directory.
commit 82d463d9cacbf2a93b95ab5313567d593fd00d02
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri Aug 1 16:37:47 2014 +0200
Make readDirectory() return inode / file type
commit a98fa2d9e2b06e2561330c5ef845ffaf131e95ac
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri Aug 1 16:46:01 2014 +0200
Allow regular files as GC roots
If a root is a regular file, then its name must denote a store
path. For instance, the existence of the file
/nix/var/nix/gcroots/per-user/eelco/hydra-roots/wzc3cy1wwwd6d0dgxpa77ijr1yp50s6v-libxml2-2.7.7
would cause
/nix/store/wzc3cy1wwwd6d0dgxpa77ijr1yp50s6v-libxml2-2.7.7
to be a root.
This is useful because it involves less I/O (no need for a readlink()
call) and takes up less disk space (the symlink target typically takes
up a full disk block, while directory entries are packed more
efficiently). This is particularly important for hydra.nixos.org,
which has hundreds of thousands of roots, and where reading the roots
can take 25 minutes.
commit 4ab4b0c109734bd6e265ca5f1b6415c31c03ab11
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Jul 24 00:00:53 2014 +0200
Remove some dead code
commit 1cffdf5847b065183c9aac86df3a9578020e6712
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed Jul 23 19:43:46 2014 +0200
nix-daemon: Less verbosity
commit bb07dfe96f0d07aa18db385d3ec93b24b5568213
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed Jul 23 19:37:40 2014 +0200
nix-daemon: Simplify stderr handling
commit 766481d606e4b1860307692d6a44723983662d45
Merge: c69944c fdee1ce
Author: Ludovic Courtès <ludo@gnu.org>
Date: Mon May 11 17:04:26 2015 +0200
Merge commit 'fdee1ced43fb495d612a29e955141cdf6b9a95ba' into nix
commit c69944c511b89d3fdbffe00353e27d1e1c5f670c
Merge: a1dd396 8e9140c
Author: Ludovic Courtès <ludo@gnu.org>
Date: Wed May 6 23:22:04 2015 +0200
Merge commit '8e9140cfdef9dbd1eb61e4c75c91d452ab5e4a74' into nix
Conflicts:
Makefile.config.in
configure.ac
dev-shell
doc/manual/builtins.xml
doc/manual/conf-file.xml
doc/manual/local.mk
doc/manual/nix-instantiate.xml
doc/manual/nix-store.xml
doc/manual/writing-nix-expressions.xml
misc/emacs/nix-mode.el
perl/lib/Nix/CopyClosure.pm
release.nix
scripts/nix-build.in
scripts/nix-copy-closure.in
src/download-via-ssh/download-via-ssh.cc
src/libexpr/common-opts.cc
src/libexpr/common-opts.hh
src/libexpr/eval.cc
src/libexpr/eval.hh
src/libexpr/local.mk
src/libexpr/nixexpr.cc
src/libexpr/nixexpr.hh
src/libexpr/parser.y
src/libexpr/primops.cc
src/libexpr/symbol-table.hh
src/libmain/shared.cc
src/libstore/local.mk
src/nix-env/nix-env.cc
src/nix-instantiate/nix-instantiate.cc
src/nix-store/local.mk
src/nix-store/nix-store.cc
src/nix-store/serve-protocol.hh
tests/lang.sh
tests/lang/eval-okay-context.nix
tests/lang/eval-okay-search-path.exp
tests/lang/eval-okay-search-path.nix
tests/local.mk
tests/nix-copy-closure.nix
commit a1dd396cc02922372314c35c8035a38bfeea08df
Merge: 0a75126 8d5f472
Author: Ludovic Courtès <ludo@gnu.org>
Date: Sun Jan 4 23:01:14 2015 +0100
Merge commit '8d5f472f2c49c79a0d3ae2e506f4d4d76224b328' into nix
Conflicts:
.gitignore
Makefile
doc/manual/installation.xml
doc/manual/introduction.xml
doc/manual/local.mk
doc/manual/manual.xml
doc/manual/nix-collect-garbage.xml
doc/manual/nix-env.xml
doc/manual/nix-install-package.xml
doc/manual/nix-store.xml
doc/manual/quick-start.xml
doc/manual/release-notes.xml
local.mk
misc/emacs/nix-mode.el
mk/functions.mk
mk/install.mk
mk/lib.mk
mk/libraries.mk
mk/patterns.mk
mk/programs.mk
nix.spec.in
release.nix
scripts/install-nix-from-closure.sh
scripts/nix-build.in
src/libexpr/eval-inline.hh
src/libexpr/eval.cc
src/libexpr/eval.hh
src/libexpr/get-drvs.cc
src/libexpr/nixexpr.cc
src/libexpr/nixexpr.hh
src/libexpr/parser.y
src/libexpr/primops.cc
src/libstore/local.mk
src/nix-daemon/local.mk
src/nix-env/nix-env.cc
src/nix-env/user-env.cc
src/nix-instantiate/nix-instantiate.cc
src/nix-store/nix-store.cc
tests/init.sh
tests/nix-copy-closure.nix
tests/remote-builds.nix
version
commit 0a751260ae54bb37ae33e0f4fc3bcda2a4ea3ceb
Author: Ludovic Courtès <ludo@gnu.org>
Date: Wed Dec 17 11:10:25 2014 +0100
nix: Adjust code for Guix.
* nix/libstore/gc.cc (addAdditionalRoots): Refer to 'list-runtime-roots'
instead of 'find-runtime-roots.pl'.
* nix/libutil/hash.cc, nix/libutil/hash.hh: Change 'union Ctx' to
'struct Ctx', like 'nix/sync-with-upstream' did.
* nix/AUTHORS: New file.
* nix/COPYING: New file, from upstream Nix.
* nix/libutil/md32_common.h, nix/libutil/md5.c, nix/libutil/md5.h,
nix/libutil/sha1.c, nix/libutil/sha1.h, nix/libutil/sha256.c,
nix/libutil/sha256.h: Remove.
commit d4e18b05e0ab149265d3d09ae017d7337fc4176f
Author: Ludovic Courtès <ludo@gnu.org>
Date: Wed Dec 17 10:44:19 2014 +0100
Keep only libstore, nix-daemon, and related stuff.
commit fdee1ced43fb495d612a29e955141cdf6b9a95ba
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed Jul 23 19:11:26 2014 +0200
startProcess: Make writing error messages from the child more robust
commit 5989966ed3bd58cd362aed8cba6cd5c90b380a32
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed Jul 23 14:46:28 2014 +0200
Remove dead code
commit ee3c5d7916b48d0c3b1cc08044e27209c14acfdc
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Sat Jul 19 02:25:47 2014 +0200
Revert old useBuildHook behaviour
commit 2e77bd70faee34cb2518529318a54b39f2d9143e
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri Jul 18 12:54:30 2014 +0200
Better fix for strcasecmp on Darwin
commit f609eec71a25a9bb8c32dd9620b7deb88633a22a
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri Jul 18 00:01:06 2014 +0200
Bump
commit 8ddffe7aac414756809f43732effb8951858243b
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Jul 17 23:57:17 2014 +0200
Ugly hack to fix building on old Darwin
http://hydra.nixos.org/build/12580878
commit 049c0eb49c621ae50f49c8a06dc6c3a9839ef388
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Jul 17 16:57:07 2014 +0200
nix-daemon: Add trusted-users and allowed-users options
‘trusted-users’ is a list of users and groups that have elevated
rights, such as the ability to specify binary caches. It defaults to
‘root’. A typical value would be ‘@wheel’ to specify all users in the
wheel group.
‘allowed-users’ is a list of users and groups that are allowed to
connect to the daemon. It defaults to ‘*’. A typical value would be
‘@users’ to specify the ‘users’ group.
commit 0c730887c4ec4a03fb854490e422c134a1bf8139
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Jul 17 15:49:33 2014 +0200
nix-daemon: Show name of connecting user
commit 77c972c898b325997fa2f527264a9706f1e414a5
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Jul 17 15:41:11 2014 +0200
nix-daemon: Only print connection info if we have SO_PEERCRED
commit 8f72e702a114458e92f644160950344a7bf7166a
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Jul 17 15:23:31 2014 +0200
nix-daemon: Fix compat with older clients
commit 2304a7dd21639959dc4bcafa3e17374cc087cd0a
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed Jul 16 16:32:26 2014 +0200
Get rid of a compiler warning
commit 985f1595fe9f61095c7bc94b49be1179811ec630
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed Jul 16 16:30:50 2014 +0200
Be more strict about file names in NARs
commit 276a40b31f631c188d6dcbdf603a738e1380ff74
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed Jul 16 16:02:05 2014 +0200
Handle case collisions on case-insensitive systems
When running NixOps under Mac OS X, we need to be able to import store
paths built on Linux into the local Nix store. However, HFS+ is
usually case-insensitive, so if there are directories with file names
that differ only in case, then importing will fail.
The solution is to add a suffix ("~nix~case~hack~<integer>") to
colliding files. For instance, if we have a directory containing
xt_CONNMARK.h and xt_connmark.h, then the latter will be renamed to
"xt_connmark.h~nix~case~hack~1". If a store path is dumped as a NAR,
the suffixes are removed. Thus, importing and exporting via a
case-insensitive Nix store is round-tripping. So when NixOps calls
nix-copy-closure to copy the path to a Linux machine, you get the
original file names back.
Closes #119.
commit bb65460feb265be4d938c7dc724a76ef41a8bfaf
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed Jul 16 11:19:12 2014 +0200
Make dev-shell script work on Darwin
commit de8be7c3e06b52c313e0b452b641ad5f90dca2fe
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed Jul 16 11:16:54 2014 +0200
Install systemd and Upstart stuff only on Linux
commit 048be62484537633e2523dd4d200619649ff860d
Author: Shea Levy <shea@shealevy.com>
Date: Wed Jul 16 01:11:24 2014 -0400
Pass *_proxy vars to bootstrap fetchurl
commit a2c85b2ef85a34bf8e5238c315a4ca73606f5ae6
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed Jul 16 11:09:01 2014 +0200
Manual: Typo
commit 5bcb98271103c6c2ca3b993d8b1b0eb9eadcbc1c
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon Jul 14 12:39:33 2014 +0200
Remove cruft
commit fa13d3f4f3d8fb6dc3e3fc87ac5a2e26d8b32d84
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon Jul 14 12:19:27 2014 +0200
build-remote.pl: Fix building multiple output derivations
We were importing paths without sorting them topologically, leading to
"path is not valid" errors.
See e.g. http://hydra.nixos.org/build/12451761
commit b2e0293f022123b11759dfd498d4eff72233d3f7
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Sat Jul 12 00:43:28 2014 +0200
build-remote.pl: Don't keep a shell process around
commit a00a98548e994d1ea258e14793c7bcd8ea56cfdf
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Sat Jul 12 00:09:43 2014 +0200
build-remote.pl: Fix build log
commit 838138c5c4d21a207f3579c4f743698bd6dbb6b1
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri Jul 11 16:20:12 2014 +0200
Fix test
commit a5c6347ff06ba09530fdf0e01828aaec89f6ceb6
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri Jul 11 16:02:19 2014 +0200
build-remote.pl: Use ‘nix-store --serve’ on the remote side
This makes things more efficient (we don't need to use an SSH master
connection, and we only start a single remote process) and gets rid of
locking issues (the remote nix-store process will keep inputs and
outputs locked as long as they're needed).
It also makes it more or less secure to connect directly to the root
account on the build machine, using a forced command
(e.g. ‘command="nix-store --serve --write"’). This bypasses the Nix
daemon and is therefore more efficient.
Also, don't call nix-store to import the output paths.
commit b8f24f253527e1cb071785c3b2d677ed2f734ab1
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri Jul 11 14:27:17 2014 +0200
Fix closure size display
commit e196eecbe6552d5afed89ad480544c90cf959922
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri Jul 11 13:55:06 2014 +0200
Allow $NIX_BUILD_HOOK to be relative to Nix libexec directory
commit d0eb970fb4d3b5c347506b77f9657fc5eb6229e2
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Jul 10 21:48:21 2014 +0200
Fix broken Pid constructor
commit edbfe2232e275a9e6c10cd8eb4dc36ca992af084
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Jul 10 21:30:22 2014 +0200
Replace message "importing path <...>" with "exporting path <...>"
This causes nix-copy-closure to show what it's doing before rather
than after.
commit 42d91b079c5d0b468663511e7b2a8e2f4048c475
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Jul 10 21:14:34 2014 +0200
Fix use of sysread
commit 7bb632b02464febd8806ef4bd3fa0ac107f52650
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Jul 10 20:43:04 2014 +0200
nix-copy-closure -s: Do substitutions via ‘nix-store --serve’
This means we no longer need an SSH master connection, since we only
execute a single command on the remote host.
commit 7c3a5090bff4e9cfe70f1d89619563b55af13d89
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Jul 10 17:44:18 2014 +0200
nix-copy-closure: Fix --dry-run
commit 43b64f503844a66c344780a11289678a001572db
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Jul 10 17:32:21 2014 +0200
Remove tabs
commit 8e9140cfdef9dbd1eb61e4c75c91d452ab5e4a74
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Jul 10 16:50:51 2014 +0200
Refactoring: Move all fork handling into a higher-order function
C++11 lambdas ftw.
commit 1114c7bd57bcab16255d5db5e6f66ae8dece7b1e
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Jul 10 14:15:12 2014 +0200
nix-copy-closure: Restore compression and the progress viewer
commit 7911e4c27a0020a61ace13cfdc44de4af02f315e
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon Jun 23 09:15:35 2014 -0400
Remove maybeVfork
commit 04170d06bf7d17f882c01d3ab98885e0f3e46d2f
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Jul 10 11:51:22 2014 +0200
nix-copy-closure: Fix race condition
There is a long-standing race condition when copying a closure to a
remote machine, particularly affecting build-remote.pl: the client
first asks the remote machine which paths it already has, then copies
over the missing paths. If the garbage collector kicks in on the
remote machine between the first and second step, the already-present
paths may be deleted. The missing paths may then refer to deleted
paths, causing nix-copy-closure to fail. The client now performs both
steps using a single remote Nix call (using ‘nix-store --serve’),
locking all paths in the closure while querying.
I changed the --serve protocol a bit (getting rid of QueryCommand), so
this breaks the SSH substituter from older versions. But it was marked
experimental anyway.
Fixes #141.
commit 2c3a8f787ba9da49feafdec4022534184e0a96a3
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Jul 10 11:46:01 2014 +0200
Fix security hole in ‘nix-store --serve’
Since it didn't check that the path received from the client is a
store path, the client could dump any path in the file system.
commit 66dbc0fdeebf509c5d919e9c12b2645136d6deeb
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Jul 10 01:50:29 2014 +0200
Add a test for the SSH substituter
commit 0e5d0c15430cf82861a1ae213cbccff065f71107
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed Jul 9 12:14:40 2014 +0200
Fix compilation error on some versions of GCC
src/libexpr/primops.cc:42:8: error: looser throw specifier for 'virtual nix::InvalidPathError::~InvalidPathError()'
src/libexpr/nixexpr.hh:12:1: error: overriding 'virtual nix::EvalError::~EvalError() noexcept (true)'
http://hydra.nixos.org/build/123857 | |