aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-02-25Merge pull request #4549 from NixOS/installer-artifactEelco Dolstra
Test macos/linux installer script for each push
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-22Warn about instability of plugin APIShea Levy
2021-02-22Merge pull request #4567 from NixOS/make-auto-call-error-eval-errorEelco Dolstra
Make missing auto-call arguments throw an eval error
2021-02-22Make missing auto-call arguments throw an eval errorregnat
The PR #4240 changed messag of the error that was thrown when an auto-called function was missing an argument. However this change also changed the type of the error, from `EvalError` to a new `MissingArgumentError`. This broke hydra which was relying on an `EvalError` being thrown. Make `MissingArgumentError` a subclass of `EvalError` to un-break hydra.
2021-02-22Tweak error messageEelco Dolstra
2021-02-22Add x86_64 compute levels as additional system typesDaniël de Kok
When performing distributed builds of machine learning packages, it would be nice if builders without the required SIMD instructions can be excluded as build nodes. Since x86_64 has accumulated a large number of different instruction set extensions, listing all possible extensions would be unwieldy. AMD, Intel, Red Hat, and SUSE have recently defined four different microarchitecture levels that are now part of the x86-64 psABI supplement and will be used in glibc 2.33: https://gitlab.com/x86-psABIs/x86-64-ABI https://lwn.net/Articles/844831/ This change uses libcpuid to detect CPU features and then uses them to add the supported x86_64 levels to the additional system types. For example on a Ryzen 3700X: $ ~/aps/bin/nix -vv --version | grep "Additional system" Additional system types: i686-linux, x86_64-v1-linux, x86_64-v2-linux, x86_64-v3-linux
2021-02-21fix installer scriptDomen Kožar
2021-02-21Generate installer script for each PR/pushDomen Kožar
This works by using Cachix feature of serving a file from a store path.
2021-02-19Merge pull request #4541 from obsidiansystems/simpler-store-path-commandEelco Dolstra
Deeper `Command` hierarchy to remove redundancy
2021-02-19Remove the drv resolution caching mechanismregnat
It isn't needed anymore now that don't need to eagerly resolve everything like we used to do. So we can safely get rid of it
2021-02-19Store the output hashes in the initialOutputs of the drv goalregnat
That way we 1. Don't have to recompute them several times 2. Can compute them in a place where we know the type of the parent derivation, meaning that we don't need the casting dance we had before
2021-02-19Don't expose the "bang" drvoutput syntaxThéophane Hufschmitt
It's not fixed nor useful atm, so better keep it hidden Co-authored-by: Eelco Dolstra <edolstra@gmail.com>
2021-02-19Syntactic fixesThéophane Hufschmitt
Co-authored-by: Eelco Dolstra <edolstra@gmail.com>
2021-02-19Register the realisations for unresolved drvsregnat
Once a build is done, get back to the original derivation, and register all the newly built outputs for this derivation. This allows Nix to work properly with derivations that don't have all their build inputs available − thus allowing garbage collection and (once it's implemented) binary substitution
2021-02-19Test the garbage collection of CA derivationsregnat
Simple test to ensure that `nix-build && nix-collect-garbage && nix-build -j0` works as it should
2021-02-19Don't crash nix-build when not all outputs are realisedregnat
Change the `nix-build` logic for linking/printing the output paths to allow for some outputs to be missing. This might happen when the toplevel derivation didn't have to be built, either because all the required outputs were already there, or because they have all been substituted.
2021-02-18Increase default stack size on LinuxEelco Dolstra
Workaround for #4550.
2021-02-17Document meta.mainProgramEelco Dolstra
Issue #4498.
2021-02-17nix run: Allow program name to be set in meta.mainProgramEelco Dolstra
This is useful when the program name doesn't match the package name (e.g. ripgrep vs rg). Fixes #4498.
2021-02-17Throw an error if --arg / --argstr is used with a flakeEelco Dolstra
Fixes #3949.
2021-02-17Make 'nix --version -vv' workEelco Dolstra
Fixes #3743.
2021-02-17nix flake show: Handle 'overlays' outputEelco Dolstra
Fixes #4542.
2021-02-17nix develop: Fix quoted string handlingEelco Dolstra
Fixes #4540.
2021-02-17Restore warning about 'nix' being experimentalEelco Dolstra
Fixes #4552.
2021-02-17Merge pull request #4553 from mausch/patch-1Eelco Dolstra
Fix Haskell example
2021-02-16Update doc/manual/src/command-ref/nix-shell.mdMauricio Scheffer
Co-authored-by: Cole Helbling <cole.e.helbling@outlook.com>
2021-02-16Fix Haskell exampleMauricio Scheffer
http://nixos.org redirects to https://nixos.org and apparently the HTTP library doesn't follow the redirect, so the output is empty. When defining https in the request it crashes because the library doesn't seem to support https. So this switches the example to a different http library.
2021-02-12Deeper `Command` hierarchy to remove redundancyJohn Ericson
Simply put, we now have `StorePathCommand : public StorePathsCommand` so `StorePathCommand` doesn't reimplement work.
2021-02-10Merge pull request #4535 from NixOS/revert-4464-nar-narhash-addressedEelco Dolstra
Revert "narinfo: Change NAR URLs to be addressed on the NAR hash instead of the compressed hash"
2021-02-10Merge pull request #4526 from NixOS/add-stale-botEelco Dolstra
Add Stale bot
2021-02-09Revert "narinfo: Change NAR URLs to be addressed on the NAR hash instead of ↵Graham Christensen
the compressed hash"
2021-02-09Merge pull request #4464 from tweag/nar-narhash-addressedEelco Dolstra
narinfo: Change NAR URLs to be addressed on the NAR hash instead of the compressed hash
2021-02-08Auto closing issues/PRs after 1year.Rok Garbas
2021-02-07Merge pull request #4525 from sternenseemann/lowdown-0.8.0Eelco Dolstra
libcmd/markdown: handle allocation errors in lowdown_term_rndr
2021-02-07Support --no-net for backwards compatibilityEelco Dolstra
2021-02-06typoRok Garbas
2021-02-06Add Stale botRok Garbas
The configuration was taken from nixpkgs repository and adjusted to `NixOS/nix`. A `stale` label was added to the labels (with gray color). Issues and PRs with `critical` label are excluded from interacting with the stale bot.
2021-02-06libcmd/markdown: handle allocation errors in lowdown_term_rndrsternenseemann
We upgrade to lowdown 0.8.0 [1] which contains a fix/improvement to a behavior mentioned in this issue thread [2] where a big part of lowdown's API would just call exit(1) on allocation errors since that is a satisfying behavior for the lowdown binary. Now lowdown_term_rndr returns 0 if an allocation error occurred which we check for in libcmd/markdown.cc. Also the extern "C" { } wrapper around lowdown.h has been removed as it is not necessary. [1]: https://github.com/kristapsdz/lowdown/blob/6ca7c855a063d1c77ae0b89405047cc3913a74d8/versions.xml#L987-L1006 [2]: https://github.com/kristapsdz/lowdown/issues/45#issuecomment-756681153
2021-02-05Add more instrumentation for #4270Eelco Dolstra
2021-02-05Merge pull request #4372 from tweag/ca/drvoutputs-commandsEelco Dolstra
Add a new Cmd type working on RealisedPaths
2021-02-05Merge pull request #4495 from Infinisil/perl-bindings-passthruEelco Dolstra
Use passthru for perl-bindings, allows Nix patching for Hydra
2021-02-05Merge pull request #4515 from matthewbauer/fix-nix-profile-install-first-outputEelco Dolstra
Use derivation output name from toDerivation
2021-02-05Add a trace to readLine() failuresEelco Dolstra
Hopefully this helps to diagnose 'error: unexpected EOF reading a line' on macOS.
2021-02-05Remove the `visit` machinery in `RealisedPath`regnat
In addition to being some ugly template trickery, it was also totally useless as it was used in only one place where I could replace it by just a few extra characters
2021-02-05Move the GENERATE_CMP macro to its own fileregnat
Despite being an ugly hack, it can probably be useful in a couple extra places