aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-03-04improve man page for nix.conf (builders)DavHau
2021-03-03nix repl :doc: Don't return docs for partially applied primopsEelco Dolstra
This gives misleading results for Nixpkgs functions like lib.toUpper. Fixes #4596.
2021-03-02Merge pull request #4595 from dramforever/fetcher-http-redirectEelco Dolstra
libfetchers/tarball: Lock on effectiveUrl
2021-03-02libfetchers/tarball: Lock on effectiveUrldramforever
Basically, if a tarball URL is used as a flake input, and the URL leads to a redirect, the final redirect destination would be recorded as the locked URL. This allows tarballs under https://nixos.org/channels to be used as flake inputs. If we, as before, lock on to the original URL it would break every time the channel updates.
2021-03-01Merge pull request #4574 from grahamc/libstore-ssh-host-keyEelco Dolstra
libstore: support passing a builder's public SSH host key
2021-03-01Merge pull request #4582 from puckipedia/cppflagsEelco Dolstra
mk: add support for CPPFLAGS
2021-03-01Merge remote-tracking branch 'origin/ca/move-tests-to-their-own-directory'Eelco Dolstra
2021-03-01Merge pull request #4583 from puckipedia/revert-jar-supportEelco Dolstra
Revert "Add support for building JARs from Java sources"
2021-03-01Move the CA tests to a sub-directoryregnat
Requires a slight update to the test infra to work properly, but having the possibility to group tests that way makes the whole thing quite cleaner imho
2021-02-27Merge pull request #4581 from puckipedia/fix-libseccompDomen Kožar
Properly propagate libseccomp linker flags
2021-02-26Revert "Add support for building JARs from Java sources"Puck Meerburg
This reverts commit 259086de841d155f7951c2cc50f799a4631aa512.
2021-02-26Properly propagate libseccomp linker flagsPuck Meerburg
2021-02-26mk: add support for CPPFLAGSPuck Meerburg
2021-02-26Merge pull request #4570 from obsidiansystems/split-building-planningEelco Dolstra
Split {,local-}derivation-goal.{cc,hh}
2021-02-26Remove unused `redirectedBadOutputs`John Ericson
2021-02-26Remove temporary `#if 0...#endif` from previous commitJohn Ericson
2021-02-26Split {,local-}derivation-goal.{cc,hh}John Ericson
This separates the scheduling logic (including simple hook pathway) from the local-store needing code. This should be the final split for now. I'm reasonably happy with how it's turning out, even before I'm done moving code into `local-derivation-goal`. Benefits: 1. This will help "witness" that the hook case is indeed a lot simpler, and also compensate for the increased complexity that comes from content-addressed derivation outputs. 2. It also moves us ever so slightly towards a world where we could use off-the-shelf storage or sandboxing, since `local-derivation-goal` would be gutted in those cases, but `derivation-goal` should remain nearly the same. The new `#if 0` in the new files will be deleted in the following commit. I keep it here so if it turns out more stuff can be moved over, it's easy to do so in a way that preserves ordering --- and thus prevents conflicts. N.B. ```sh git diff HEAD^^ --color-moved --find-copies-harder --patience --stat ``` makes nicer output.
2021-02-26Copy {,local-}derivation-goal.{cc,h}John Ericson
Doing this prior to splitting, so we get better diff with default options (e.g. on GitHub).
2021-02-26Merge pull request #4477 from NixOS/ca/build-remoteEelco Dolstra
Build ca derivations remotely
2021-02-26Simplify the case where the drv is a purely input-addressed oneregnat
2021-02-26Update src/libstore/build/derivation-goal.ccEelco Dolstra
2021-02-26Update src/build-remote/build-remote.ccEelco Dolstra
2021-02-26Update src/build-remote/build-remote.ccEelco Dolstra
2021-02-26flake.lock: UpdateEelco Dolstra
Flake input changes: * Updated 'nixpkgs': 'github:NixOS/nixpkgs/ad0d20345219790533ebe06571f82ed6b034db31' -> 'github:NixOS/nixpkgs/0e499fde7af3c28d63e9b13636716b86c3162b93'
2021-02-26nix flake update: Recreate the lock fileEelco Dolstra
This is probably what most people expect it to do. Fixes #3781. There is a new command 'nix flake lock' that has the old behaviour of 'nix flake update', i.e. it just adds missing lock file entries unless overriden using --update-input.
2021-02-26Use std::make_uniqueEelco Dolstra
2021-02-26Merge remote-tracking branch 'origin/deduplicate-static-hashes-computation'Eelco Dolstra
2021-02-26Merge pull request #4487 from NixOS/ca/copy-drv-outputsEelco Dolstra
Copy ca derivation outputs
2021-02-26Merge pull request #4530 from alyssais/killEelco Dolstra
libutil: EPERM from kill(-1, ...) is fine
2021-02-25Make `nix copy` work without the ca-derivations flagregnat
The experimental feature was by mistake required for `nix copy` to work at oll
2021-02-25Apply @edolstra stylistic suggestionsThéophane Hufschmitt
Mostly removing useless comments and adding spaces before `&` Co-authored-by: Eelco Dolstra <edolstra@gmail.com>
2021-02-25Ensure that the ca-derivations bit is set when copying realisationsregnat
This should already hold, but better ensure it for future-proof-nees
2021-02-25Don't crash when copying realisations to a non-ca remoteregnat
Rather throw a proper exception, and catch&log it on the client side
2021-02-25Add a test for the copy of CA pathsregnat
2021-02-25Use `RealisedPath`s in `copyPaths`regnat
That way we can copy the realisations too (in addition to the store paths themselves)
2021-02-25Merge pull request #4549 from NixOS/installer-artifactEelco Dolstra
Test macos/linux installer script for each push
2021-02-25distributed builds: load remote builder host key from the machines fileGraham Christensen
This is already used by Hydra, and is very useful when materializing a remote builder list from service discovery. This allows the service discovery tool to only sync one file instead of two.
2021-02-24Merge pull request #4486 from shlevy/command-plugins-v2Eelco Dolstra
Command plugins
2021-02-24Respect command registrations in plugins.Shea Levy
2021-02-24Initialize plugins after handling initial command line flagsShea Levy
This is technically a breaking change, since attempting to set plugin files after the first non-flag argument will now throw an error. This is acceptable given the relative lack of stability in a plugin interface and the need to tie the knot somewhere once plugins can actually define new subcommands.
2021-02-24Bail if plugin-files is set after plugins have been loaded.Shea Levy
We know the flag will be ignored but the user wants it to take effect.
2021-02-23Merge pull request #4551 from danieldk/system-features-compute-levelEelco Dolstra
Add x86_64 compute levels as system features
2021-02-23Make `DerivationGoal::drv` a full Derivationregnat
This field used to be a `BasicDerivation`, but this `BasicDerivation` was downcasted to a `Derivation` when needed (implicitely or not), so we might as well make it a full `Derivation` and upcast it when needed. This also allows getting rid of a weird duplication in the way we compute the static output hashes for the derivation. We had to do it differently and in a different place depending on whether the derivation was a full derivation or just a basic drv, but we can now do it unconditionally on the full derivation. Fix #4559
2021-02-23Test the remote building of ca derivationsregnat
2021-02-23Properly bypass the registering step when all outputs are presentregnat
There was already some logic for that, but it didn't handle the case of content-addressed outputs, so extend it a bit for that
2021-02-23build-remote: Always register the missing outputsregnat
It's possible that all the paths are already there, but just not associated to the current drv output
2021-02-23Also send ca outputs to the build hookregnat
Otherwise they don't get registered, triggering an assertion failure at some point later
2021-02-23RemoteStore: Send back the new realisationsregnat
To allow it to build ca derivations remotely
2021-02-23LegacySSHStore: Send back the new realisationsregnat
To allow it to build ca derivations remotely
2021-02-23LocalStore: Send back the new realisationsregnat
To allow it to build ca derivations remotely