Eelco Dolstra
bd0f362d2f
Revive running builds in a PID namespace
2014-12-23 17:25:06 +01:00
Eelco Dolstra
4e0607369e
Pedantry
2014-12-14 01:51:14 +01:00
Eelco Dolstra
8bdff8c100
Merge branch 'cygwin-master' of https://github.com/ternaris/nix
2014-12-14 01:49:14 +01:00
Eelco Dolstra
fa2063ca35
Better error message
2014-12-13 16:54:40 +01:00
Eelco Dolstra
b77037b8fd
Silence some warnings on GCC 4.9
2014-12-12 17:14:28 +01:00
Eelco Dolstra
46f3eb6fdd
Shut up a Valgrind warning
2014-12-12 15:10:02 +01:00
Eelco Dolstra
f52b6c944e
Fix some memory leaks
2014-12-12 15:01:16 +01:00
Eelco Dolstra
28f22b4653
Ensure we're writing to stderr in the builder
...
http://hydra.nixos.org/build/17862041
2014-12-12 14:35:44 +01:00
Eelco Dolstra
4acca1a5b9
Remove chatty message
...
This broke building with "-vv", because the builder is not allowed to
write to stderr at this point.
2014-12-12 13:43:59 +01:00
Eelco Dolstra
ad790022fd
Doh
2014-12-12 13:41:00 +01:00
Eelco Dolstra
851b47bd7d
Don't do vfork in conjunction with setuid
2014-12-10 18:01:01 +01:00
Eelco Dolstra
b5ed5b6e66
Rename function
2014-12-10 17:25:38 +01:00
Eelco Dolstra
e529823635
Don't wait for PID -1
...
The pid field can be -1 if forking the substituter process failed.
2014-12-10 13:53:04 +01:00
Marko Durkovic
629e8da3aa
Explicitly include required C headers
2014-12-09 13:00:59 +01:00
Eelco Dolstra
b7b6e3ddec
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 .
2014-11-24 16:50:46 +01:00
Eelco Dolstra
9e3389c337
Don't create unnecessary substitution goals for derivations
2014-11-24 16:50:46 +01:00
Eelco Dolstra
8299aaf079
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.
2014-11-19 18:14:24 +01:00
Eelco Dolstra
1256ab3b44
Clean up temp roots in a more C++ way
2014-11-19 17:07:29 +01:00
Eelco Dolstra
35aad73bb6
Fix message
2014-11-17 01:00:39 +01:00
Eelco Dolstra
8cfe939b0f
Don't use ADDR_LIMIT_3GB
...
This gives 32-bit builds on x86_64-linux more memory.
2014-11-14 14:16:20 +01:00
Eelco Dolstra
bab8d9b52a
Make ~DerivationGoal more reliable
2014-11-12 11:35:53 +01:00
Eelco Dolstra
06a86aee15
nix-store --gc: Don't warn about missing manifests directory
2014-11-04 10:41:29 +01:00
Eelco Dolstra
e389f4ea55
Improve error message if the daemon worker fails to start
2014-10-31 09:36:09 +01:00
Eelco Dolstra
11aef17a77
Remove comments claiming we use a private PID namespace
...
This is no longer the case since
524f89f139
.
2014-10-29 15:49:34 +01:00
Eelco Dolstra
2a4dbcff74
Improved error message when encountering unsupported file types
...
Fixes #269 .
2014-10-14 10:51:19 +02:00
Eelco Dolstra
3f8576a6ab
Remove some duplicate code
2014-10-03 22:37:51 +02:00
Eelco Dolstra
d4a71ec3bf
Update spec file
...
http://hydra.nixos.org/build/14344391
2014-09-18 15:42:01 +02:00
Eelco Dolstra
8be9990cdb
Install some pkgconfig files
2014-09-18 12:00:40 +02:00
Eelco Dolstra
d98bfcbf81
On Linux, disable address space randomization
2014-09-17 17:21:13 +02:00
Eelco Dolstra
d37d012774
Settings: Add bool get()
2014-09-17 15:18:13 +02:00
Ludovic Courtès
8fb8c26b6d
Add an 'optimiseStore' remote procedure call.
2014-09-01 23:53:26 +02:00
Eelco Dolstra
b72e93bca8
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 ];
2014-08-28 18:57:13 +02:00
Gergely Risko
fd61069a42
Introduce allowedRequisites feature
2014-08-28 18:23:55 +02:00
Joel Taylor
b224ac1520
fix disappearing bash arguments
2014-08-21 23:17:50 +02:00
Eelco Dolstra
524f89f139
Use unshare() instead of clone()
...
It turns out that using clone() to start a child process is unsafe in
a multithreaded program. It can cause the initialisation of a build
child process to hang in setgroups(), as seen several times in the
build farm:
The reason is that Glibc thinks that the other threads of the parent
exist in the child, so in setxid_mark_thread() it tries to get a futex
that has been acquired by another thread just before the clone(). With
fork(), Glibc runs pthread_atfork() handlers that take care of this
(in particular, __reclaim_stacks()). But clone() doesn't do that.
Fortunately, we can use fork()+unshare() instead of clone() to set up
private namespaces.
See also https://www.mail-archive.com/lxc-devel@lists.linuxcontainers.org/msg03434.html .
2014-08-21 14:08:09 +02:00
Eelco Dolstra
11849a320e
Use proper quotes everywhere
2014-08-20 18:03:48 +02:00
Eelco Dolstra
373fad75e1
Add some color
2014-08-20 16:50:17 +02:00
Eelco Dolstra
954188af27
Filter Nix-specific ANSI escape sequences from stderr
...
The Nixpkgs stdenv prints some custom escape sequences to denote
nesting and stuff like that. Most terminals (e.g. xterm, konsole)
ignore them, but some do not (e.g. xfce4-terminal). So for the benefit
of the latter, filter them out.
2014-08-20 14:30:01 +02:00
Eelco Dolstra
029424d17d
Make hook shutdown more reliable
2014-08-19 17:47:30 +02:00
Eelco Dolstra
632f989b51
Doh
2014-08-18 11:35:50 +02:00
Eelco Dolstra
c160ead82f
Reduce verbosity
2014-08-17 19:11:50 +02:00
Eelco Dolstra
42e9ad8fd1
Propagate remote timeouts properly
2014-08-17 19:09:03 +02:00
Eelco Dolstra
9367046fef
Use regular file GC roots if possible
...
This makes hydra-eval-jobs create roots as regular files. See
1c208f2b7e
.
2014-08-13 17:44:41 +02:00
Eelco Dolstra
98873ff7de
Remove unnecessary call to addTempRoot()
2014-08-05 16:41:42 +02:00
Eelco Dolstra
f02c52e3d4
Doh
2014-08-05 10:19:57 +02:00
Eelco Dolstra
988bf59421
Move some options out of globals
2014-08-04 18:13:14 +02:00
Eelco Dolstra
daccd68999
Refactor
2014-08-04 18:02:29 +02:00
Eelco Dolstra
d5a076c36f
Add option ‘build-extra-chroot-dirs’
...
This is useful for extending (rather than overriding) the default set
of chroot paths.
2014-08-04 18:00:00 +02:00
Eelco Dolstra
4d73e2e893
Get rid of "killing <pid>" message for unused build hooks
2014-08-04 17:27:45 +02:00
Eelco Dolstra
bb45092f72
Make chroot builds easier to set up
...
By default, we now include /bin/sh as a bind-mount of bash.
2014-08-04 17:09:26 +02:00