about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2016-08-31 Merge branch 'nix-build-c++'Shea Levy2-0/+493
2016-08-31 nix-build: Clean up a bitShea Levy1-6/+8
2016-08-31 download.hh: Fix conflicts from nix-channel-c++ mergeShea Levy3-16/+7
2016-08-31 Merge branch 'nix-channel-c++'Shea Levy4-3/+300
2016-08-31 Merge pull request #1030 from pikajude/rsd-ccEelco Dolstra3-1/+206
Implement resolve-system-dependencies in C++
2016-08-30 Fix 32-bit buildEelco Dolstra3-5/+8
2016-08-30 Increase the sleep time between download retriesEelco Dolstra3-2/+4
2016-08-30 Fix --fallbackEelco Dolstra1-7/+10
This fixes an assertion failure in "assert(goal);" in Worker::waitForInput() after a substitution goal is cancelled by the termination of another goal. The problem was the line //worker.childTerminated(shared_from_this()); // FIXME in the SubstitutionGoal destructor. This was disabled because shared_from_this() obviously doesn't work from a destructor. So we now use a real pointer for object identity.
2016-08-30 Fix Fedora buildEelco Dolstra1-1/+1
2016-08-30 Fix GC buildEelco Dolstra2-4/+5
2016-08-29 forceBool(): Show position infoEelco Dolstra4-13/+14
2016-08-29 Add builtin function "partition"Eelco Dolstra5-10/+48
The implementation of "partition" in Nixpkgs is O(n^2) (because of the use of ++), and for some reason was causing stack overflows in multi-threaded evaluation (not sure why). This reduces "nix-env -qa --drv-path" runtime by 0.197s and memory usage by 298 MiB (in non-Boehm mode).
2016-08-29 nix path-info: Add --json flagEelco Dolstra7-129/+472
Also, factor out JSON generation from value-to-json.{cc,hh}, and support producing indented JSON.
2016-08-29 callFunction: Copy functors to the heapShea Levy1-4/+11
Normally it's impossible to take a reference to the function passed to callFunction, so some callers (e.g. ExprApp::eval) allocate that value on the stack. For functors, a reference to the functor itself may be kept, so we need to have it on the heap. Fixes #1045
2016-08-24 Fix queryPathFromHashPart()Eelco Dolstra1-1/+1
The inner lambda was returning a SQLite-internal char * rather than a std::string, leading to Hydra errors liks Caught exception in Hydra::Controller::Root->narinfo "path ‘ø˜£â€™ is not in the Nix store at /nix/store/6mvvyb8fgwj23miyal5mdr8ik4ixk15w-hydra-0.1.1234.abcdef/libexec/hydra/lib/Hydra/Controller/Root.pm line 352."
2016-08-23 nix build: Use Nix search pathEelco Dolstra5-13/+57
That is, unless --file is specified, the Nix search path is synthesized into an attribute set. Thus you can say $ nix build nixpkgs.hello assuming $NIX_PATH contains an entry of the form "nixpkgs=...". This is more verbose than $ nix build hello but is less ambiguous.
2016-08-17 iterate through fat_headers correctlyJude Taylor1-1/+1
2016-08-17 Add a mechanism for derivation attributes to reference the derivation's outputsEelco Dolstra4-14/+38
For example, you can now say: configureFlags = "--prefix=${placeholder "out"} --includedir=${placeholder "dev"}"; The strings returned by the ‘placeholder’ builtin are replaced at build time by the actual store paths corresponding to the specified outputs. Previously, you had to work around the inability to self-reference by doing stuff like: preConfigure = '' configureFlags+=" --prefix $out --includedir=$dev" ''; or rely on ad-hoc variable interpolation semantics in Autoconf or Make (e.g. --prefix=\$(out)), which doesn't always work.
2016-08-16 remove double castingJude Taylor1-3/+3
2016-08-16 account for unknown magic numbersJude Taylor1-0/+3
2016-08-16 switch to mmap strategyJude Taylor1-81/+68
2016-08-16 Merge pull request #1031 from abbradar/replacestrings-contextEelco Dolstra1-7/+17
Allow contexted strings in replaceStrings
2016-08-16 Allow contexted strings in replaceStringsNikolay Amiantov1-7/+17
2016-08-15 ensure presence of directoriesJude Taylor1-2/+7
2016-08-15 code review commentsJude Taylor1-127/+124
2016-08-15 builtins.fetch{url,tarball}: Allow name attributeShea Levy3-9/+13
2016-08-14 make inclusion conditionalJude Taylor1-1/+3
2016-08-14 add a missing load commandJude Taylor1-0/+1
2016-08-13 remove old traces of resolve-system-dependenciesJude Taylor2-1/+3
2016-08-13 resolve-system-dependencies: implement in C++Jude Taylor2-0/+208
2016-08-11 nix-channel: implement in c++Shea Levy4-3/+300
2016-08-11 nix-build: extend the meaning of $IN_NIX_SHELLVladimír Čunát1-1/+1
An equivalent was originally filed against the perl version: https://github.com/NixOS/nix/pull/933
2016-08-11 Merge branch 'buildenv-c++' of https://github.com/shlevy/nixEelco Dolstra2-0/+195
2016-08-11 buildenv: perl -> c++Shea Levy2-0/+195
2016-08-10 HttpBinaryCacheStore: Retry on transient HTTP errorsEelco Dolstra3-14/+34
This makes us more robust against 500 errors from CloudFront or S3 (assuming the 500 error isn't cached by CloudFront...).
2016-08-10 Show HTTP error codesEelco Dolstra1-2/+6
2016-08-10 SQLite:: Add some convenienceEelco Dolstra4-28/+33
2016-08-10 FSAccessor: Throw InvalidPathEelco Dolstra2-2/+2
2016-08-10 NarAccessor: Fix handling of non-executable filesEelco Dolstra1-1/+1
2016-08-10 Mark content-addressed paths in the Nix database and in .narinfoEelco Dolstra11-43/+146
This allows such paths to be imported without signatures.
2016-08-10 LocalFSStore::narFromPath(): Handle the diverted store caseEelco Dolstra1-1/+1
2016-08-10 Add a "root" parameter to local storesEelco Dolstra5-5/+13
This makes it easier to create a diverted store, i.e. NIX_REMOTE="local?root=/tmp/root" instead of NIX_REMOTE="local?real=/tmp/root/nix/store&state=/tmp/root/nix/var/nix" NIX_LOG_DIR=/tmp/root/nix/var/log
2016-08-10 Remove $NIX_DB_DIREelco Dolstra4-6/+1
This variable has no reason to exist, given $NIX_STATE_DIR.
2016-08-10 RemoteStore / nix-daemon: Drop support for Nix < 1.0Eelco Dolstra2-44/+33
2016-08-09 nix-build: Port to c++Shea Levy2-0/+491
This was a dumb line-for-line rewrite, because nix build/nix run/etc. will replace it.
2016-07-26 makeFixedOutputPath(): Drop superfluous HashType argumentEelco Dolstra11-27/+25
2016-07-26 builtins.{fetchurl,fetchTarball}: Support a sha256 attributeEelco Dolstra3-12/+37
Also, allow builtins.{fetchurl,fetchTarball} in restricted mode if a hash is specified.
2016-07-24 Merge branch 'find-runtime-roots-c++'Shea Levy1-8/+108
2016-07-23 Respect --keep-going when a substituter fails.Shea Levy1-2/+4
Fixes #977
2016-07-21 Fix assertion failureEelco Dolstra1-1/+1