aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-10-08StorePath: reject names starting with '.'edef
This has been the behaviour before Nix 2.4. It was dropped in a rewrite in 759947bf72c134592f0ce23d385e48095bd0a301, allowing the creation of store paths that aren't considered valid by older Nix versions or other Nix tooling. Nix 2.4 didn't ship in NixOS until 22.05, and stdenv.mkDerivation in nixpkgs drops leading periods since April 2022, so it's unlikely anyone is relying on the current lax behaviour. Closes #9091. Change-Id: I4a57bd9899e1b0dba56870ae5a1b680918a18ce9 (cherry picked from commit 24bda0c7b381e1a017023c6f7cb9661fae8560bd)
2023-10-02Merge pull request #9086 from NixOS/backport-9081-to-2.18-maintenanceEelco Dolstra
[Backport 2.18-maintenance] Revert "Adapt scheduler to work with dynamic derivations"
2023-10-02Revert "Adapt scheduler to work with dynamic derivations"John Ericson
This reverts commit 5e3986f59cb58f48186a49dcec7aa317b4787522. This un-implements RFC 92 but fixes the critical bug #9052 which many people are hitting. This is a decent stop-gap until a minimal reproduction of that bug is found and a proper fix can be made. Mostly fixed #9052, but I would like to leave that issue open until we have a regression test, so I can then properly fix the bug (unbreaking RFC 92) later. (cherry picked from commit 8440afbed756254784d9fea3eaab06649dffd390)
2023-10-02Merge pull request #9079 from hercules-ci/backport-9022-to-2.18-maintenanceEelco Dolstra
[Backport 2.18-maintenance] pathExists: isDir when endswith /.
2023-10-01pathExists: isDir when endswith /.Robert Hensing
(cherry picked from commit f8a3893e8d77ce4a6e23719a0b2d88464cb84b9c)
2023-09-25Merge pull request #9036 from NixOS/backport-9026-to-2.18-maintenanceEelco Dolstra
[Backport 2.18-maintenance] flake: complete update to 23.05
2023-09-25flake: complete update to 23.05Gerg-L
(cherry picked from commit f264d9ff0862277523a207c7afaed4894a40dc11)
2023-09-21Merge pull request #9009 from NixOS/backport-9008-to-2.18-maintenanceRobert Hensing
[Backport 2.18-maintenance] Re-enable systemd-nspawn test
2023-09-20Re-enable systemd-nspawn testCole Helbling
It was disabled in c6953d1ff62fb6dc4fbd89c03e7949c552c19382 because a recent Nixpkgs bump brought in a new systemd which changed how systemd-nspawn worked. As far as I can tell, the issue was caused by this upstream systemd commit: https://github.com/systemd/systemd/commit/b71a0192c040f585397cfc6fc2ca025bf839733d Bind-mounting the host's `/sys` and `/proc` into the container's `/run/host/{sys,proc}` fixes the issue and allows the test to succeed. (cherry picked from commit 883092e3f78d4efb1066a2e24e343b307035a04c)
2023-09-20Bump versionEelco Dolstra
2023-09-20Mark official releaseEelco Dolstra
2023-09-20Merge pull request #9002 from NixOS/release-notesEelco Dolstra
Release notes
2023-09-20Release notesEelco Dolstra
2023-09-20Merge pull request #8991 from ↵Eelco Dolstra
NixOS/dependabot/github_actions/docker/login-action-3 Bump docker/login-action from 2 to 3
2023-09-20Merge pull request #8569 from vcunat/p/flake-updateEelco Dolstra
flake: update nixpkgs: 22.11 -> 23.05
2023-09-19Use "touch -h"Eelco Dolstra
https://hydra.nixos.org/build/235888160 This is needed because Nixpkgs now contains dangling symlinks (pkgs/test/nixpkgs-check-by-name/tests/symlink-invalid/pkgs/by-name/fo/foo/foo.nix).
2023-09-19Disable systemd-nspawn testEelco Dolstra
This is broken because of a change in systemd in NixOS 23.05. It fails with Failed to mount proc (type proc) on /proc (MS_NOSUID|MS_NODEV|MS_NOEXEC ""): Operation not permitted
2023-09-19Disable rapidcheck tests in the coverage runEelco Dolstra
https://hydra.nixos.org/build/233688539
2023-09-19Try aws-sdk-cpp fixEelco Dolstra
2023-09-19Merge remote-tracking branch 'origin/master' into p/flake-updateEelco Dolstra
2023-09-18Bump docker/login-action from 2 to 3dependabot[bot]
Bumps [docker/login-action](https://github.com/docker/login-action) from 2 to 3. - [Release notes](https://github.com/docker/login-action/releases) - [Commits](https://github.com/docker/login-action/compare/v2...v3) --- updated-dependencies: - dependency-name: docker/login-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
2023-09-14Merge pull request #7661 from henrik-ch/repl-docThéophane Hufschmitt
improved help command listing.
2023-09-13Merge pull request #8959 from maralorn/print-parentThéophane Hufschmitt
Print parent activity field in json log
2023-09-12docs: make the nix develop --command example unambiguous (#8952)Emil Nikolov
2023-09-11Merge pull request #8962 from mkenigs/dead-codeJohn Ericson
Drop dead code
2023-09-10Drop dead codeMatthew Kenigsberg
localPath is unused
2023-09-09Print parent activity field in json logmaralorn
2023-09-09docs: fixed the default priority of nix-env --install (#8945)Emil Nikolov
2023-09-07fix: `nix shell` multiple commands example (#8950)thenbe
The `-c` flag belongs to `sh` not `nix shell`. As it stands, the command errors with: ``` $ nix shell nixpkgs#gnumake --command sh --command "cd src && make" sh: --command: invalid option ``` https://github.com/NixOS/nix/pull/8276 was good for readability, but it missed this since that PR used a find/replace script.
2023-09-07Merge pull request #8944 from fricklerhandwerk/fix-anchorRobert Hensing
fix invalid anchor link
2023-09-07Merge pull request #4628 from obsidiansystems/dynamic-drvsRobert Hensing
Dynamic derivations RFC 92
2023-09-07Merge pull request #8938 from obsidiansystems/better-drv-parsingJohn Ericson
Improve derivation parsing
2023-09-07Special-case error message to add extra informationJohn Ericson
The Derivation parser and old ATerm unfortunately leaves few ways to get nice errors when an old version of Nix encounters a new version of the format. The most likely scenario for this to occur is with a new client making a derivation that the old daemon it is communicating with cannot understand. The extensions we just created for dynamic derivation deps will add a version field, solving the problem going forward, but there is still the issue of what to do about old versions of Nix up to now. The solution here is to carefully catch the bad error from the daemon that is likely to indicate this problem, and add some extra context to it. There is another "Ugly backwards compatibility hack" in `remote-store.cc` that also works by transforming an error. Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2023-09-07Allow dynamic derivation deps in `inputDrvs`John Ericson
We use the same nested map representation we used for goals, again in order to save space. We might someday want to combine with `inputDrvs`, by doing `V = bool` instead of `V = std::set<OutputName>`, but we are not doing that yet for sake of a smaller diff. The ATerm format for Derivations also needs to be extended, in addition to the in-memory format. To accomodate this, we added a new basic versioning scheme, so old versions of Nix will get nice errors. (And going forward, if the ATerm format changes again the errors will be even better.) `parsedStrings`, an internal function used as part of parsing derivations in A-Term format, used to consume the final `]` but expect the initial `[` to already be consumed. This made for what looked like unbalanced brackets at callsites, which was confusing. Now it consumes both which is hopefully less confusing. As part of testing, we also created a unit test for the A-Term format for regular non-experimental derivations too. Co-authored-by: Robert Hensing <roberth@users.noreply.github.com> Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io> Apply suggestions from code review Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2023-09-07fix invalid anchor linkValentin Gagarin
2023-09-06Improve derivation parsingJohn Ericson
- Don't assert: Derivation ATerms are not necessarily produced by Nix, and parsers should always throw graceful errors - Improve error message from `static void except(..)`, shows both what we expected and what we actually got. The intention is that we backport it, and then hopefully a few people might get slightly better errors if they try out new experimental drv files (for RFC 92) with an old version of Nix.
2023-09-06Merge pull request #8933 from fricklerhandwerk/option-anchorsJohn Ericson
Add anchors to option listings
2023-09-06Merge pull request #8932 from fricklerhandwerk/formattingJohn Ericson
dedent common options listing; one sentence per line
2023-09-06Merge pull request #8927 from obsidiansystems/test-derivation-atermJohn Ericson
Test and begin documentation of the ATerm format for derivations
2023-09-06Merge pull request #8928 from cafkafk/patch-2John Ericson
Fix globals.hh typo
2023-09-06Retitle section as Robert suggestsJohn Ericson
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2023-09-06Merge pull request #8930 from fricklerhandwerk/output-pathRobert Hensing
disambiguate output from output path
2023-09-06add anchors to option listingsValentin Gagarin
2023-09-06dedent common options listing; one sentence per lineValentin Gagarin
this is a pure reformatting, contents were not changed one sentence per line makes reviewing diffs and making suggestions much more convenient. the indentation was an artifat of the DocBook migration.
2023-09-06disambiguate output from output pathValentin Gagarin
2023-09-06Fix globals.hh typoChristina Sørensen
2023-09-05Merge pull request #8925 from ↵Robert Hensing
NixOS/dependabot/github_actions/cachix/install-nix-action-23 Bump cachix/install-nix-action from 22 to 23
2023-09-05Merge pull request #8924 from NixOS/dependabot/github_actions/actions/checkout-4Robert Hensing
Bump actions/checkout from 3 to 4
2023-09-05Test and begin documentation of the ATerm format for derivationsJohn Ericson
Wanted to do this before the last dynamic derivations PR when I introduce a variation, to make sure I wasn't changing the old version by mistake.
2023-09-05Merge pull request #8422 from fricklerhandwerk/remove-checklistValentin Gagarin
move PR checklist to contributing guide