1
1
Fork 0
mirror of https://github.com/NixOS/nix.git synced 2025-11-08 19:46:02 +01:00
Commit graph

204 commits

Author SHA1 Message Date
Seth Flynn
ecdda5798c nix flake check: Skip substitutable derivations
Since `nix flake check` doesn't produce a `result` symlink, it doesn't
actually need to build/substitute derivations that are already known
to have succeeded, i.e. that are substitutable.

This can speed up CI jobs in cases where the derivations have already
been built by other jobs. For instance, a command like

  nix flake check github:NixOS/hydra/aa62c7f7db31753f0cde690f8654dd1907fc0ce2

should no longer build anything because the outputs are already in
cache.nixos.org.

Based-on: https://github.com/DeterminateSystems/nix-src/pull/134
Based-on: https://gerrit.lix.systems/c/lix/+/3841
Co-authored-by: Eelco Dolstra <edolstra@gmail.com>
2025-09-15 21:31:03 +02:00
Eelco Dolstra
d1d3ed6241 Add release note 2025-09-10 10:20:37 +02:00
Jörg Thalheim
725a2f379f don't include derivation name in temporary build directories
With the migration to /nix/var/nix/builds we now have failing builds
when the derivation name is too long.
This change removes the derivation name from the temporary build to have
a predictable prefix length:

Also see: https://github.com/NixOS/infra/pull/764
for context.
2025-08-27 09:48:31 +02:00
Eelco Dolstra
6c391b7446 release notes: 2.31.0 2025-08-21 13:37:38 +02:00
Leandro Reina
ccf658ed5c
Fix Git LFS SSH issues
* Adds support for NIX_SSHOPTS
* Properly uses the parsed port from URL (fixes #13337)
* Don't guess the HTTP endpoint, use the response of git-lfs-authenticate
* Add an SSH Git LFS test
* Removed some unused test code
2025-08-13 21:04:29 +03:00
Maciej Krüger
49ba06175e
Add user@address:port support
This patch allows users to specify the connection port
in the store URLS like so:

```
nix store info --store "ssh-ng://localhost:22" --json
```

Previously this failed with: `error: failed to start SSH connection to 'localhost:22'`,
because the code did not distinguish the port from the hostname. This
patch remedies that problem by introducing a ParsedURL::Authority type
for working with parsed authority components of URIs.

Now that the URL parsing code is less ad-hoc we can
add more long-awaited fixes for specifying SSH connection
ports in store URIs.

Builds upon the work from bd1d2d1041.

Co-authored-by: Sergei Zimmerman <sergei@zimmerman.foo>
Co-authored-by: John Ericson <John.Ericson@Obsidian.Systems>
2025-08-06 23:48:14 +03:00
Sergei Zimmerman
a54284cbc7
rl-next: Add release note about IPv6 Scoped Addresses in URIs 2025-07-18 21:24:03 +03:00
Sergei Zimmerman
b19e9acc03
Merge pull request #13402 from DavHau/build-cores
build-cores: detect cores automatically if set to 0
2025-07-09 23:06:55 +03:00
Eelco Dolstra
8a9e625ba5 release notes: 2.30.0 2025-07-07 14:09:18 +02:00
DavHau
fb5e22e318 build-cores: detect cores automatically if set to 0
This changes makes nix detect a machines available cores automatically whenever build-cores is set to 0.

So far, nix simply passed NIX_BUILD_CORES=0 whenever build-cores is set to 0. (only when build-cores is unset it was detecting cores automatically)

The behavior of passing NIX_BUILD_CORES=0 leads to a performance penalty when sourcing nixpkgs' generic builder's `setup.sh`, as setup.sh has to execute `nproc`. This significantly slows down sourcing of setup.sh
2025-07-07 10:33:42 +07:00
eldritch horrors
88b7db1ba4 libstore: Don't default build-dir to temp-dir, store setting
If a build directory is accessible to other users it is possible to
smuggle data in and out of build directories. Usually this is only
a build purity problem, but in combination with other issues it can
be used to break out of a build sandbox. to prevent this we default
to using a subdirectory of nixStateDir (which is more restrictive).

(cherry picked from pennae Lix commit 55b416f6897fb0d8a9315a530a9b7f0914458ded)
(store setting done by roberth)
2025-06-22 16:49:44 +02:00
John Ericson
7577d2d3ae Deprecate hacky way of making structured attrs
The method tested for in the previous commit is now deprecated.

Co-authored-by: Eelco Dolstra <edolstra@gmail.com>
2025-05-28 12:59:04 -04:00
Jörg Thalheim
4cc312a6e1
Merge pull request #13251 from Mic92/json-log-path
Add `json-log-path` setting (revisted)
2025-05-23 11:25:40 +02:00
Eelco Dolstra
7240fb198f Add json-log-path setting
This setting specifies a path (which can be a regular file or Unix
domain socket) that receives a copy of all Nix log messages (in JSON
format).
2025-05-23 10:45:12 +02:00
Sergei Zimmerman
2190bf2006
doc: Add eval-profiler documentation and release note 2025-05-21 22:16:31 +00:00
Eelco Dolstra
e22142e11a
Merge pull request #13224 from NixOS/nix-profile-add
Rename `nix profile install` to `nix profile add`
2025-05-20 20:15:31 +02:00
Eelco Dolstra
6d59fa03fd Add release note 2025-05-20 18:24:13 +02:00
Robert Hensing
f18af849fe
Merge pull request #13170 from MattSturgeon/fix/call-flake/rel-path
Use correct parent `outPath` for relative path inputs
2025-05-19 14:13:54 +02:00
Matt Sturgeon
2922e3082e
Add release note for non-flake inputs having sourceInfo 2025-05-18 00:45:33 +01:00
John Ericson
99cb85cd37 Revert "If a substitute closure is incomplete, build dependencies, then retry the substituter"
As summarized in
https://github.com/NixOS/nix/issues/77#issuecomment-2843228280 the
motivation is that the complicated retry logic this introduced was
making the cleanup task #12628 harder to accomplish. It was not easy to
ascertain just what policy / semantics the extra control-flow was
implementing, in order to figure out a different way to implementing it
either.

After talking to Eelco about it, he decided we could just....get rid of
the feature entirely! It's a bit scary removing a decade+ old feature,
but I think he is right. See the release notes for more explanation.

This reverts commit 299141ecbd.

Co-authored-by: Eelco Dolstra <edolstra@gmail.com>
2025-05-14 20:16:40 -04:00
John Ericson
d5e7359155 release notes: 2.29.0 2025-05-14 18:43:53 -04:00
Robert Hensing
2df638fd38
doc/rl-next: Edit 2025-05-15 00:12:42 +02:00
John Ericson
b7b1ca9a3f doc/rl-next: Add repl-reload-flakes 2025-05-14 18:11:51 -04:00
John Ericson
e056cdc2a9 doc/rl-next: Add eval-cache-errors 2025-05-14 18:03:31 -04:00
John Ericson
3bc6bf3659 doc/rl-next: add osc-8-xterm-style-fix 2025-05-14 17:56:32 -04:00
Jörg Thalheim
bc774d4365 doc/rl-next: retry-on-http-429 2025-05-14 23:51:19 +02:00
Robert Hensing
bfecd13e9b doc/rl-next; add pretty-json 2025-05-14 23:43:27 +02:00
John Ericson
44ca04b944 doc/rl-next: nix-formatter 2025-05-14 17:41:50 -04:00
Jörg Thalheim
c3684efa95 doc/rl-next: faster-blake3 2025-05-14 23:29:49 +02:00
Jörg Thalheim
121f7ca5fd doc/rl-next: add duplicate-copy 2025-05-14 23:24:35 +02:00
John Ericson
eca100eb7d Revert "doc/rl-next: add better-flake-git-errors"
This was already released on 2.28.0

This reverts commit 721b09a69f.
2025-05-14 17:22:24 -04:00
John Ericson
1d23d883ad Revert "doc/rl-next: Add repl-and-logging"
It is already released on 2.28.0

This reverts commit db76487f41.
2025-05-14 17:20:37 -04:00
Jörg Thalheim
5ca242018d doc/rl-next: add multiple-signatures 2025-05-14 23:16:59 +02:00
Jörg Thalheim
cdb332990e doc/rl-next: add s3-sts-authentication 2025-05-14 23:05:46 +02:00
Jörg Thalheim
14b4a208c7 doc/rl-next: add fixed-s3-progress-bar 2025-05-14 23:01:46 +02:00
John Ericson
db76487f41 doc/rl-next: Add repl-and-logging 2025-05-14 16:58:57 -04:00
Jörg Thalheim
721b09a69f doc/rl-next: add better-flake-git-errors 2025-05-14 22:57:07 +02:00
Jörg Thalheim
7f07a94b64 doc/rl-next: add repl-continuation 2025-05-14 22:49:05 +02:00
Jörg Thalheim
13dafac243 doc/rl-next: add substituter-timeout 2025-05-14 22:46:08 +02:00
Jörg Thalheim
cbdd0c1035 doc/rl-next: add nix-flake-show 2025-05-14 22:45:57 +02:00
Jörg Thalheim
39d10229e5 doc/rl-next: add github-host-attr 2025-05-14 22:45:38 +02:00
Robert Hensing
af6e44b116 doc/rl-next: Add c-api 2025-05-14 22:21:01 +02:00
John Ericson
682a28a76b release notes: 2.28.0
(cherry picked from commit 703f0fbe74)
2025-04-06 17:03:34 -04:00
Robert Hensing
6a192ec0cd C API: (breaking) remove nix-flake-c global init 2025-03-26 11:15:02 +00:00
Eelco Dolstra
80020b684f release notes: 2.27.0 2025-02-26 21:57:30 +01:00
Leandro Reina
8b89c453b9 Merge release notes 2025-02-14 13:54:19 +01:00
Leandro Reina
4a1d1c7f9f Add release note 2025-02-13 18:04:32 +01:00
Robert Hensing
693a38ae2e
Merge pull request #10153 from b-camacho/lfs
git-lfs support
2025-02-13 14:25:30 +01:00
Eelco Dolstra
ca7e686f4d
Merge pull request #12439 from MaxHearnden/cloexec
Set FD_CLOEXEC on sockets created by curl
2025-02-12 12:49:55 +01:00
Eelco Dolstra
2819d8b66a Add release note 2025-02-10 17:19:34 +01:00