aboutsummaryrefslogtreecommitdiff
path: root/src/libstore/worker-protocol.hh
AgeCommit message (Collapse)Author
2011-11-06Include all outputs of derivations in the closure of explicitly-passed ↵Shea Levy
derivation paths This required adding a queryOutputDerivationNames function in the store API
2010-12-17* Propagate the "100" exit status for failed builds through the NixEelco Dolstra
daemon.
2010-11-17* Before a build, show the disk space that the downloaded store pathsEelco Dolstra
will approximately require.
2010-11-17* Implement RemoteStore::queryPathInfo().Eelco Dolstra
2010-08-24* Sync with the trunk.Eelco Dolstra
2010-08-12* Make --cores work when building through the Nix daemon.Eelco Dolstra
2010-05-04* Allow unprivileged users to do `nix-store --clear-failed-paths' andEelco Dolstra
`nix-store --query-failed-paths'.
2010-02-26* Implement RemoteStore::queryValidPaths().Eelco Dolstra
2010-02-25* Implement RemoteStore::queryDerivationOutputs().Eelco Dolstra
2008-12-16* Pass --use-atime / --max-atime to the daemon.Eelco Dolstra
2008-11-11* Pass the --no-build-output flag to the daemon.Eelco Dolstra
2008-08-14* Backward compatibility check to prevent nixos-rebuild from barfingEelco Dolstra
when upgrading Nix.
2008-08-04* querySubstitutablePathInfo: work properly when run via the daemon.Eelco Dolstra
* --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 Dolstra
* The garbage collector now also prints the number of blocks freed.
2007-11-16* Flag `--no-build-hook' to disable distributed builds.Eelco Dolstra
* 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 Dolstra
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 Dolstra
(/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-08-13* Backwards compatibility.Eelco Dolstra
2007-08-12* Get rid of the substitutes database table (NIX-47). Instead, if weEelco Dolstra
need any info on substitutable paths, we just call the substituters (such as download-using-manifests.pl) directly. This means that it's no longer necessary for nix-pull to register substitutes or for nix-channel to clear them, which makes those operations much faster (NIX-95). Also, we don't have to worry about keeping nix-pull manifests (in /nix/var/nix/manifests) and the database in sync with each other. The downside is that there is some overhead in calling an external program to get the substitutes info. For instance, "nix-env -qas" takes a bit longer. Abolishing the substitutes table also makes the logic in local-store.cc simpler, as we don't need to store info for invalid paths. On the downside, you cannot do things like "nix-store -qR" on a substitutable but invalid path (but nobody did that anyway). * Never catch interrupts (the Interrupted exception).
2007-06-12* Support queryDeriver() in multi-user installations.Eelco Dolstra
2007-02-21* `nix-store --import' now also works in remote mode. The workerEelco Dolstra
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 Dolstra
2006-12-05* Allow unprivileged users to run the garbage collector and to doEelco Dolstra
`nix-store --delete'. But unprivileged users are not allowed to ignore liveness. * `nix-store --delete --ignore-liveness': ignore the runtime roots as well.
2006-12-05* The determination of the root set should be made by the privilegedEelco Dolstra
process, so forward the operation. * Spam the user about GC misconfigurations (NIX-71). * findRoots: skip all roots that are unreadable - the warnings with which we spam the user should be enough.
2006-12-04* Add indirect root registration to the protocol so that unprivilegedEelco Dolstra
processes can register indirect roots. Of course, there is still the problem that the garbage collector can only read the targets of the indirect roots when it's running as root...
2006-12-04* When NIX_REMOTE=daemon, connect to /nix/var/nix/daemon.socketEelco Dolstra
instead of forking a worker.
2006-12-03* Some hackery to propagate the worker's stderr and exceptions to theEelco Dolstra
client.
2006-12-02* Move addTempRoot() to the store API, and add another functionEelco Dolstra
syncWithGC() to allow clients to register GC roots without needing write access to the global roots directory or the GC lock.
2006-12-01* Merge addToStore and addToStoreFixed.Eelco Dolstra
* addToStore now adds unconditionally, it doesn't use readOnlyMode. Read-only operation is up to the caller (who can call computeStorePathForPath).
2006-11-30* More remote operations.Eelco Dolstra
* Added new operation hasSubstitutes(), which is more efficient than querySubstitutes().size() > 0.
2006-11-30* More operations.Eelco Dolstra
2006-11-30* First remote operation: isValidPath().Eelco Dolstra