Skip to content

Commit 766f43a

Browse files
Merge pull request #203 from DeterminateSystems/release-v3.11.2/721c61ad-d7dd-4e3b-b398-baf8388dccfb
Release v3.11.2
2 parents c2251f0 + a9902ea commit 766f43a

File tree

5 files changed

+47
-51
lines changed

5 files changed

+47
-51
lines changed

.version-determinate

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3.11.1
1+
3.11.2

doc/manual/source/SUMMARY.md.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,7 @@
131131
- [Contributing](development/contributing.md)
132132
- [Determinate Nix Release Notes](release-notes-determinate/index.md)
133133
- [Changes between Nix and Determinate Nix](release-notes-determinate/changes.md)<!-- next -->
134+
- [Release 3.11.2 (2025-09-12)](release-notes-determinate/v3.11.2.md)
134135
- [Release 3.11.1 (2025-09-04)](release-notes-determinate/v3.11.1.md)
135136
- [Release 3.11.0 (2025-09-03)](release-notes-determinate/v3.11.0.md)
136137
- [Release 3.10.1 (2025-09-02)](release-notes-determinate/v3.10.1.md)
Lines changed: 12 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Changes between Nix and Determinate Nix
22

3-
This section lists the differences between upstream Nix 2.31 and Determinate Nix 3.11.1.<!-- differences -->
3+
This section lists the differences between upstream Nix 2.31 and Determinate Nix 3.11.2.<!-- differences -->
44

55
* In Determinate Nix, flakes are stable. You no longer need to enable the `flakes` experimental feature.
66

@@ -24,14 +24,12 @@ This section lists the differences between upstream Nix 2.31 and Determinate Nix
2424

2525
* `nix upgrade-nix` is now inert, and suggests using `determinate-nixd upgrade` -- [DeterminateSystems/nix-src#55](https://github.com/DeterminateSystems/nix-src/pull/55)
2626

27-
* Initial Lazy Trees support has been merged, but remains off by default. ([DeterminateSystems/nix-src#27](https://github.com/DeterminateSystems/nix-src/pull/27), [DeterminateSystems/nix-src#56](https://github.com/DeterminateSystems/nix-src/pull/56))
27+
* Lazy Trees support has been merged. ([DeterminateSystems/nix-src#27](https://github.com/DeterminateSystems/nix-src/pull/27), [DeterminateSystems/nix-src#56](https://github.com/DeterminateSystems/nix-src/pull/56))
2828

2929
<!-- Determinate Nix version 3.5.2 -->
3030

31-
* Tell users a source is corrupted ("cannot read file from tarball: Truncated tar archive detected while reading data"), improving over the previous 'cannot read file from tarball' error by @edolstra in [DeterminateSystems/nix-src#64](https://github.com/DeterminateSystems/nix-src/pull/64)
3231
<!-- Determinate Nix version 3.6.0 -->
3332

34-
* Emit warnings when using import-from-derivation by setting the `trace-import-from-derivation` option to `true` by @gustavderdrache in [DeterminateSystems/nix-src#70](https://github.com/DeterminateSystems/nix-src/pull/70)
3533
<!-- Determinate Nix version 3.6.1 -->
3634

3735
<!-- Determinate Nix version 3.6.2 -->
@@ -40,8 +38,6 @@ This section lists the differences between upstream Nix 2.31 and Determinate Nix
4038

4139
* Document how to replicate nix-store --query --deriver with the nix cli by @grahamc in [DeterminateSystems/nix-src#82](https://github.com/DeterminateSystems/nix-src/pull/82)
4240

43-
* Garbage collector: Keep going even when encountering an undeletable file by @edolstra in [DeterminateSystems/nix-src#83](https://github.com/DeterminateSystems/nix-src/pull/83)
44-
4541
* nix profile: Replace ε and ∅ with descriptive English words by @grahamc in [DeterminateSystems/nix-src#81](https://github.com/DeterminateSystems/nix-src/pull/81)
4642

4743
* Call out that `--keep-failed` with remote builders will keep the failed build directory on that builder by @cole-h in [DeterminateSystems/nix-src#85](https://github.com/DeterminateSystems/nix-src/pull/85)
@@ -55,22 +51,12 @@ This section lists the differences between upstream Nix 2.31 and Determinate Nix
5551

5652
* Indicate that sandbox-paths specifies a missing file in the corresponding error message. by @cole-h in [DeterminateSystems/nix-src#88](https://github.com/DeterminateSystems/nix-src/pull/88)
5753

58-
* Use 'published' release type to avoid double uploads by @gustavderdrache in [DeterminateSystems/nix-src#90](https://github.com/DeterminateSystems/nix-src/pull/90)
59-
60-
* Render lazy tree paths in messages withouth the/nix/store/hash... prefix in substituted source trees by @edolstra in [DeterminateSystems/nix-src#91](https://github.com/DeterminateSystems/nix-src/pull/91)
61-
6254
* Use FlakeHub inputs by @lucperkins in [DeterminateSystems/nix-src#89](https://github.com/DeterminateSystems/nix-src/pull/89)
6355

6456
* Proactively cache more flake inputs and fetches by @edolstra in [DeterminateSystems/nix-src#93](https://github.com/DeterminateSystems/nix-src/pull/93)
6557

66-
* Fix: register extra builtins just once by @edolstra in [DeterminateSystems/nix-src#97](https://github.com/DeterminateSystems/nix-src/pull/97)
67-
68-
* Fix: Make the S3 test more robust by @gustavderdrache in [DeterminateSystems/nix-src#101](https://github.com/DeterminateSystems/nix-src/pull/101)
69-
7058
* Fix the link to `builders-use-substitutes` documentation for `builders` by @lucperkins in [DeterminateSystems/nix-src#102](https://github.com/DeterminateSystems/nix-src/pull/102)
7159

72-
* Improve error messages that use the hypothetical future tense of "will" by @lucperkins in [DeterminateSystems/nix-src#92](https://github.com/DeterminateSystems/nix-src/pull/92)
73-
7460
* Improve caching of inputs in dry-run mode by @edolstra in [DeterminateSystems/nix-src#98](https://github.com/DeterminateSystems/nix-src/pull/98)
7561

7662
<!-- Determinate Nix version 3.6.6 -->
@@ -83,24 +69,14 @@ This section lists the differences between upstream Nix 2.31 and Determinate Nix
8369

8470
* Add lazy-locks setting by @edolstra in [DeterminateSystems/nix-src#113](https://github.com/DeterminateSystems/nix-src/pull/113)
8571

86-
* Sync 2.29.1 by @edolstra in [DeterminateSystems/nix-src#124](https://github.com/DeterminateSystems/nix-src/pull/124)
87-
88-
* Release v3.6.7 by @github-actions in [DeterminateSystems/nix-src#126](https://github.com/DeterminateSystems/nix-src/pull/126)
89-
9072
<!-- Determinate Nix version 3.7.0 -->
9173

92-
* Overriding deeply-nested transitive flake inputs now works, by @edolstra in [DeterminateSystems/nix-src#108](https://github.com/DeterminateSystems/nix-src/pull/108)
93-
9474
* `nix store delete` now explains why deletion fails by @edolstra in [DeterminateSystems/nix-src#130](https://github.com/DeterminateSystems/nix-src/pull/130)
9575

96-
* New command: `nix flake prefetch-inputs` for improved CI performance, by @edolstra in [DeterminateSystems/nix-src#127](https://github.com/DeterminateSystems/nix-src/pull/127)
97-
9876
<!-- Determinate Nix version 3.8.0 -->
9977

10078
* nix flake check: Skip substitutable derivations by @edolstra in [DeterminateSystems/nix-src#134](https://github.com/DeterminateSystems/nix-src/pull/134)
10179

102-
* lockFlake(): When updating a lock, respect the input's lock file by @edolstra in [DeterminateSystems/nix-src#137](https://github.com/DeterminateSystems/nix-src/pull/137)
103-
10480
<!-- Determinate Nix version 3.8.1 -->
10581

10682
* Address ifdef problem with macOS/BSD sandboxing by @gustavderdrache in [DeterminateSystems/nix-src#142](https://github.com/DeterminateSystems/nix-src/pull/142)
@@ -109,34 +85,23 @@ This section lists the differences between upstream Nix 2.31 and Determinate Nix
10985

11086
* ci: don't run the full test suite for x86_64-darwin by @grahamc in [DeterminateSystems/nix-src#144](https://github.com/DeterminateSystems/nix-src/pull/144)
11187

112-
* Try publishing the manual again by @grahamc in [DeterminateSystems/nix-src#145](https://github.com/DeterminateSystems/nix-src/pull/145)
113-
11488
<!-- Determinate Nix version 3.8.3 -->
11589

116-
* Add an `external-builders` experimental feature [DeterminateSystems/nix-src#141](https://github.com/DeterminateSystems/nix-src/pull/141)
117-
118-
* Add support for external builders [DeterminateSystems/nix-src#78](https://github.com/DeterminateSystems/nix-src/pull/78)
90+
* Add an `external-builders` experimental feature [DeterminateSystems/nix-src#141](https://github.com/DeterminateSystems/nix-src/pull/141),
91+
[DeterminateSystems/nix-src#78](https://github.com/DeterminateSystems/nix-src/pull/78)
11992

12093
<!-- Determinate Nix version 3.8.4 -->
12194

122-
* Revert "Use WAL mode for SQLite cache databases" [DeterminateSystems/nix-src#155](https://github.com/DeterminateSystems/nix-src/pull/155)
123-
12495
<!-- Determinate Nix version 3.8.5 -->
12596

126-
* Tab completing arguments to Nix avoids network access. [DeterminateSystems/nix-src#161](https://github.com/DeterminateSystems/nix-src/pull/161)
127-
128-
* Nix on ZFS no longer stalls for multiple seconds at a time [DeterminateSystems/nix-src#158](https://github.com/DeterminateSystems/nix-src/pull/158)
97+
* Tab completing arguments to Nix avoids network access [DeterminateSystems/nix-src#161](https://github.com/DeterminateSystems/nix-src/pull/161)
12998

130-
* Importing Nixpkgs and other tarballs to the cache 2-4x faster [DeterminateSystems/nix-src#149](https://github.com/DeterminateSystems/nix-src/pull/149)
99+
* Importing Nixpkgs and other tarballs to the cache is 2-4x faster [DeterminateSystems/nix-src#149](https://github.com/DeterminateSystems/nix-src/pull/149)
131100

132101
* Adding paths to the store is significantly faster [DeterminateSystems/nix-src#162](https://github.com/DeterminateSystems/nix-src/pull/162)
133102

134103
<!-- Determinate Nix version 3.8.6 -->
135104

136-
* Use WAL mode for SQLite cache databases (2nd attempt) [DeterminateSystems/nix-src#167](https://github.com/DeterminateSystems/nix-src/pull/167)
137-
138-
* Enable parallel marking in boehm-gc [DeterminateSystems/nix-src#168](https://github.com/DeterminateSystems/nix-src/pull/168)
139-
140105
<!-- Determinate Nix version 3.9.0 -->
141106

142107
* Build-time flake inputs [DeterminateSystems/nix-src#49](https://github.com/DeterminateSystems/nix-src/pull/49)
@@ -156,3 +121,9 @@ This section lists the differences between upstream Nix 2.31 and Determinate Nix
156121

157122
<!-- Determinate Nix version 3.11.1 -->
158123

124+
125+
<!-- Determinate Nix version 3.11.2 -->
126+
127+
* Fix some interactions with the registry and flakes that include a `?dir=` parameter [DeterminateSystems/nix-src#196](https://github.com/DeterminateSystems/nix-src/pull/196), [DeterminateSystems/nix-src#199](https://github.com/DeterminateSystems/nix-src/pull/199)
128+
129+
* Only try to substitute input if fetching from its original location fails [DeterminateSystems/nix-src#202](https://github.com/DeterminateSystems/nix-src/pull/202)
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Release 3.11.2 (2025-09-12)
2+
3+
* Based on [upstream Nix 2.31.1](../release-notes/rl-2.31.md).
4+
5+
## What's Changed
6+
7+
### Fix some interactions with the registry and flakes that include a `?dir=` parameter
8+
9+
Some users were experiencing issues when their flake registry contained a flake that included a `?dir=` parameter, causing commands like `nix eval registry-with-flake-in-subdir#output` and those that used --inputs-from` to fail or behave incorrectly.
10+
11+
This is now fixed, so use your flakes inside subdirs without fear!
12+
13+
PRs: [DeterminateSystems/nix-src#196](https://github.com/DeterminateSystems/nix-src/pull/196), [DeterminateSystems/nix-src#199](https://github.com/DeterminateSystems/nix-src/pull/199)
14+
15+
### Only substitute inputs if they haven't already been fetched
16+
17+
When using `lazy-trees`, you might have noticed Nix fetching some source inputs from a cache, even though you could have sworn it already fetched those inputs!
18+
19+
This fixes that behavior such that Nix will try to fetch inputs from their original location, and only if that fails fall back to fetching from a substituter.
20+
21+
PR: [DeterminateSystems/nix-src#202](https://github.com/DeterminateSystems/nix-src/pull/202)
22+
23+
24+
**Full Changelog**: [v3.11.1...v3.11.2](https://github.com/DeterminateSystems/nix-src/compare/v3.11.1...v3.11.2)

src/libstore/include/nix/store/globals.hh

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1396,10 +1396,10 @@ public:
13961396
{
13971397
"args": [
13981398
"-e",
1399-
"/nix/store/vj1c3wf9c11a0qs6p3ymfvrnsdgsdcbq-source-stdenv.sh",
1400-
"/nix/store/shkw4qm9qcw5sc5n1k5jznc83ny02r39-default-builder.sh"
1399+
"/nix/store/vj1c3wf9…-source-stdenv.sh",
1400+
"/nix/store/shkw4qm9…-default-builder.sh"
14011401
],
1402-
"builder": "/nix/store/s1qkj0ph0ma64a6743mvkwnabrbw1hsc-bash-5.2p37/bin/bash",
1402+
"builder": "/nix/store/s1qkj0ph…-bash-5.2p37/bin/bash",
14031403
"env": {
14041404
"HOME": "/homeless-shelter",
14051405
"NIX_BUILD_CORES": "14",
@@ -1415,7 +1415,7 @@ public:
14151415
"TMPDIR": "/build",
14161416
"__structuredAttrs": "",
14171417
"buildInputs": "",
1418-
"builder": "/nix/store/s1qkj0ph0ma64a6743mvkwnabrbw1hsc-bash-5.2p37/bin/bash",
1418+
"builder": "/nix/store/s1qkj0ph…-bash-5.2p37/bin/bash",
14191419
"cmakeFlags": "",
14201420
"configureFlags": "",
14211421
"depsBuildBuild": "",
@@ -1430,16 +1430,16 @@ public:
14301430
"doInstallCheck": "1",
14311431
"mesonFlags": "",
14321432
"name": "hello-2.12.2",
1433-
"nativeBuildInputs": "/nix/store/l31j72f1h33hsa4nq4iyhsmsqjyndq9f-version-check-hook",
1434-
"out": "/nix/store/2yx2prgxmzbkrnbb4liy6n4zkzb1cqai-hello-2.12.2",
1433+
"nativeBuildInputs": "/nix/store/l31j72f1…-version-check-hook",
1434+
"out": "/nix/store/2yx2prgx…-hello-2.12.2",
14351435
"outputs": "out",
14361436
"patches": "",
14371437
"pname": "hello",
14381438
"postInstallCheck": "stat \"${!outputBin}/bin/hello\"\n",
14391439
"propagatedBuildInputs": "",
14401440
"propagatedNativeBuildInputs": "",
1441-
"src": "/nix/store/dw402azxjrgrzrk6j0p66wkqrab5mwgw-hello-2.12.2.tar.gz",
1442-
"stdenv": "/nix/store/i8bw5nqg1225m281zr6lgsz42bw04z7g-stdenv-linux",
1441+
"src": "/nix/store/dw402azx…-hello-2.12.2.tar.gz",
1442+
"stdenv": "/nix/store/i8bw5nqg…-stdenv-linux",
14431443
"strictDeps": "",
14441444
"system": "aarch64-linux",
14451445
"version": "2.12.2"
@@ -1466,7 +1466,7 @@ public:
14661466
// With this uncommented:
14671467
//
14681468
// warning: Ignoring setting 'external-builders' because experimental feature 'external-builders' is not enabled
1469-
// error: Cannot build '/nix/store/vwsp4qd8a62jqa36p26d15hin4xnj949-opentofu-1.10.2.drv'.
1469+
// error: Cannot build '/nix/store/vwsp4qd8…-opentofu-1.10.2.drv'.
14701470
// Reason: required system or feature not available
14711471
// Required system: 'aarch64-linux' with features {}
14721472
// Current system: 'aarch64-darwin' with features {apple-virt, benchmark, big-parallel, nixos-test}

0 commit comments

Comments
 (0)