aboutsummaryrefslogtreecommitdiff
path: root/src/nix-daemon
AgeCommit message (Collapse)Author
2016-06-01Make the store directory a member variable of StoreEelco Dolstra
2016-05-04Cleanup: Remove singleton()Eelco Dolstra
2016-05-04nix-daemon: Fix queryPathInfo() backward compatibilityEelco Dolstra
2016-05-04Remove OpenSSL-based signingEelco Dolstra
2016-04-25Show the log tail when a build failsEelco Dolstra
If --no-build-output is given (which will become the default for the "nix" command at least), show the last 10 lines of the build output if the build fails.
2016-04-25Remove --print-build-traceEelco Dolstra
This was added to support Hydra, but Hydra no longer uses it.
2016-04-25Improved logging abstractionEelco Dolstra
This also gets rid of --log-type, since the nested log type isn't useful in a multi-threaded situation, and nobody cares about the "pretty" log type.
2016-04-20RemoteStore: Propagate InvalidPath exceptions from the daemonEelco Dolstra
2016-04-19Move path info caching from BinaryCacheStore to StoreEelco Dolstra
Caching path info is generally useful. For instance, it speeds up "nix path-info -rS /run/current-system" (i.e. showing the closure sizes of all paths in the closure of the current system) from 5.6s to 0.15s. This also eliminates some APIs like Store::queryDeriver() and Store::queryReferences().
2016-04-08Remove failed build cachingEelco Dolstra
This feature was implemented for Hydra, but Hydra no longer uses it.
2016-04-05Add "nix copy-sigs" commandEelco Dolstra
This imports signatures from one store into another. E.g. $ nix copy-sigs -r /run/current-system -s https://cache.nixos.org/ imported 595 signatures
2016-03-30LocalStore: Keep track of ultimately trusted pathsEelco Dolstra
These are content-addressed paths or outputs of locally performed builds. They are trusted even if they don't have signatures, so "nix verify-paths" won't complain about them.
2016-02-26importPaths(): Optionally add NARs to binary cache accessorEelco Dolstra
This enables an optimisation in hydra-queue-runner, preventing a download of a NAR it just uploaded to the cache when reading files like hydra-build-products.
2016-02-24Eliminate reserveSpace flagEelco Dolstra
2016-02-16Rename ValidPathInfo::hash -> narHash for consistencyEelco Dolstra
2016-02-04Eliminate the "store" global variableEelco Dolstra
Also, move a few free-standing functions into StoreAPI and Derivation. Also, introduce a non-nullable smart pointer, ref<T>, which is just a wrapper around std::shared_ptr ensuring that the pointer is never null. (For reference-counted values, this is better than passing a "T&", because the latter doesn't maintain the refcount. Usually, the caller will have a shared_ptr keeping the value alive, but that's not always the case, e.g., when passing a reference to a std::thread via std::bind.)
2015-12-02daemon: Add 'buildMode' parameter to 'buildPaths' RPCLudovic Courtès
2015-11-24Merge pull request #704 from ysangkok/freebsd-supportEelco Dolstra
FreeBSD support with knowledge about Linux emulation
2015-10-29int2String() -> std::to_string()Eelco Dolstra
2015-10-06Define SOL_LOCAL if not defined already (e.g. on FreeBSD).Manuel Jacob
Some evidence that defining it to be 0 is right: * OS X headers define it to be 0. * Other code uses 0 instead of SOL_LOCAL to check for peer credentials (e.g. FreeBSD's implementation of getpeereid).
2015-09-03Implement buildDerivation() via the daemonEelco Dolstra
2015-07-20More cleanupEelco Dolstra
2015-07-17OCD: foreach -> C++11 ranged forEelco Dolstra
2015-06-02Don't let unprivileged users repair pathsEelco Dolstra
2015-06-02Add a ‘verifyStore’ RPCLudovic Courtès
Hello! The patch below adds a ‘verifyStore’ RPC with the same signature as the current LocalStore::verifyStore method. Thanks, Ludo’. >From aef46c03ca77eb6344f4892672eb6d9d06432041 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@gnu.org> Date: Mon, 1 Jun 2015 23:17:10 +0200 Subject: [PATCH] Add a 'verifyStore' remote procedure call.
2015-05-19Don't install nix-worker symlinkEelco Dolstra
It has been obsolete since Nix 1.2. Closes #417.
2014-12-12Silence some warnings on GCC 4.9Eelco Dolstra
2014-12-12Get rid of unnecessary "interrupted by the user" message with -vvvEelco Dolstra
2014-12-12Remove tabsEelco Dolstra
2014-12-12Remove dead codeEelco Dolstra
2014-12-10Use vforkEelco Dolstra
2014-11-19nix-daemon: Call exit(), not _exit()Eelco Dolstra
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.
2014-10-31nix-daemon: Get peer credentials on Mac OS XEelco Dolstra
This makes allowed-users and trusted-users work on Mac OS X.
2014-10-31Improve error message if the daemon worker fails to startEelco Dolstra
2014-09-25nix-daemon: Close unnecessary fdEelco Dolstra
2014-09-01Add an 'optimiseStore' remote procedure call.Ludovic Courtès
2014-08-21Use PR_SET_PDEATHSIG to ensure child cleanupEelco Dolstra
2014-08-20Use proper quotes everywhereEelco Dolstra
2014-08-13Refactor option handlingEelco Dolstra
2014-08-05DohEelco Dolstra
2014-08-04Move some options out of globalsEelco Dolstra
2014-07-24Remove some dead codeEelco Dolstra
2014-07-23Pass -pthread only for programs that need itEelco Dolstra
2014-07-23nix-daemon: Less verbosityEelco Dolstra
2014-07-23nix-daemon: Simplify stderr handlingEelco Dolstra
2014-07-23nix-daemon: Use a thread instead of SIGPOLL to catch client disconnectsEelco Dolstra
The thread calls poll() to wait until a HUP (or other error event) happens on the client connection. If so, it sends SIGINT to the main thread, which is then cleaned up normally. This is much nicer than messing around with SIGPOLL.
2014-07-19Revert old useBuildHook behaviourEelco Dolstra
2014-07-17nix-daemon: Add trusted-users and allowed-users optionsEelco Dolstra
‘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.
2014-07-17nix-daemon: Show name of connecting userEelco Dolstra
2014-07-17nix-daemon: Only print connection info if we have SO_PEERCREDEelco Dolstra