about summary refs log tree commit diff
path: root/src/nix-worker/nix-worker.cc
AgeCommit message (Collapse)AuthorFilesLines
2009-11-20 * Remove the --use-atime / --max-atime garbage collector flags. ManyEelco Dolstra1-2/+3
(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-09-30 * Support platforms that don't have O_ASYNC (e.g. OpenSolarisEelco Dolstra1-3/+17
apparently).
2009-03-23 * Shut up a GCC warning.Eelco Dolstra1-2/+2
2008-12-16 * Pass --use-atime / --max-atime to the daemon.Eelco Dolstra1-0/+4
2008-12-12 * We can't use string objects in signal handlers because they mightEelco Dolstra1-4/+4
allocate memory, which is verboten in signal handlers. This caused random failures in the test suite on Mac OS X (triggered by the spurious SIGPOLL signals on Mac OS X, which should also be fixed).
2008-12-03 * addToStore() in nix-worker: don't write the NAR dump received fromEelco Dolstra1-6/+52
the client to a temporary directory, as that is highly inefficient.
2008-12-03 * Backwards compatibility.Eelco Dolstra1-4/+9
2008-12-03 * Pass HashType values instead of strings.Eelco Dolstra1-1/+1
2008-12-03 * Unify the treatment of sources copied to the store, and recursiveEelco Dolstra1-2/+2
SHA-256 outputs of fixed-output derivations. I.e. they now produce the same store path: $ nix-store --add x /nix/store/j2fq9qxvvxgqymvpszhs773ncci45xsj-x $ nix-store --add-fixed --recursive sha256 x /nix/store/j2fq9qxvvxgqymvpszhs773ncci45xsj-x the latter being the same as the path that a derivation derivation { name = "x"; outputHashAlgo = "sha256"; outputHashMode = "recursive"; outputHash = "..."; ... }; produces. This does change the output path for such fixed-output derivations. Fortunately they are quite rare. The most common use is fetchsvn calls with SHA-256 hashes. (There are a handful of those is Nixpkgs, mostly unstable development packages.) * Documented the computation of store paths (in store-api.cc).
2008-11-20 * Nix daemon: reload the configuration file after forking (NIX-100).Eelco Dolstra1-1/+5
2008-11-14 * Prevent zombies. Previous the SIGCHLD handler only reaped oneEelco Dolstra1-1/+1
zombie at a time, so if multiple children died before the handler got to run, some of them would not be cleaned up.
2008-11-12 * Some somewhat ad hoc mechanism to allow the build farm to monitorEelco Dolstra1-1/+4
build progress.
2008-11-11 * Pass the --no-build-output flag to the daemon.Eelco Dolstra1-0/+2
2008-08-04 * querySubstitutablePathInfo: work properly when run via the daemon.Eelco Dolstra1-2/+16
* --dry-run: print the paths that we don't know how to build/substitute.
2008-06-18 * Some refactoring: put the GC options / results in separate structs.Eelco Dolstra1-12/+13
* The garbage collector now also prints the number of blocks freed.
2008-06-14 * nix-worker: clean up the temporary root for the worker processes Eelco Dolstra1-0/+2
in /nix/var/nix/temproots.
2008-06-09 * Merged the no-bdb branch (-r10900:HEADEelco Dolstra1-1/+1
https://svn.nixos.org/repos/nix/nix/branches/no-bdb).
2008-04-09 * sockaddr_un doesn't allow path names of more than 108 characters.Eelco Dolstra1-3/+11
This isn't usually a problem, except that it causes tests to fail when performed in a directory with a very long path name. So chdir to the socket directory and use a relative path name.
2008-03-20 * Disable the don't-run-as-root sanity check because it breaks RPMEelco Dolstra1-0/+2
builds (which are done as root...).
2007-11-16 * Flag `--no-build-hook' to disable distributed builds.Eelco Dolstra1-2/+5
* queryDeriver in daemon mode: don't barf if the other side returns an empty string (which means there is no deriver).
2007-09-18 * Pass various options to the worker so that flags like -K or -j workEelco Dolstra1-1/+19
in multi-user Nix (NIX-72). * Client/worker: exchange a protocol version number for future compatibility.
2007-08-30 * Create the Nix daemon socket in a separate directoryEelco Dolstra1-1/+4
(/nix/var/nix/daemon-socket). This allows access to the Nix daemon to be restricted by setting the mode/ownership on that directory as desired, e.g. $ chmod 770 /nix/var/nix/daemon-socket $ chown root.wheel /nix/var/nix/daemon-socket to allow only users in the wheel group to use Nix. Setting the ownership on a socket is much trickier, since the socket must be deleted and recreated every time the daemon is started (which would require additional Nix configuration file directives to specify the mode/ownership, and wouldn't support arbitrary ACLs), some BSD variants appear to ignore permissions on sockets, and it's not clear whether the umask is respected on every platform when creating sockets.
2007-06-12 * Support queryDeriver() in multi-user installations.Eelco Dolstra1-0/+9
2007-03-28 * Handle ECONNRESET from the client. Also, don't abort() if there areEelco Dolstra1-4/+9
unexpected conditions in the SIGPOLL handler, since that messes up the Berkeley DB environment (which a client must never be able to trigger).
2007-02-22 * Handle EINTR in select().Eelco Dolstra1-3/+3
2007-02-21 * `nix-store --import' now also works in remote mode. The workerEelco Dolstra1-1/+35
always requires a signature on the archive. This is to ensure that unprivileged users cannot add Trojan horses to the Nix store.
2007-02-21 * Support exportPath() in remote mode.Eelco Dolstra1-0/+26
2006-12-12 * New primop builtins.filterSource, which can be used to filter filesEelco Dolstra1-2/+1
from a source directory. All files for which a predicate function returns true are copied to the store. Typical example is to leave out the .svn directory: stdenv.mkDerivation { ... src = builtins.filterSource (path: baseNameOf (toString path) != ".svn") ./source-dir; # as opposed to # src = ./source-dir; } This is important because the .svn directory influences the hash in a rather unpredictable and variable way.
2006-12-07 * Rename all those main.cc files.Eelco Dolstra1-0/+569