Skip to content

Commit 7ab838d

Browse files
Merge pull request #430 from DeterminateSystems/release-v3.18.0/d972d0cb-97f7-4e73-a753-e07735d71935
Release v3.18.0
2 parents 2219ba1 + 297d306 commit 7ab838d

4 files changed

Lines changed: 54 additions & 36 deletions

File tree

.version-determinate

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3.17.3
1+
3.18.0

doc/manual/source/SUMMARY.md.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,7 @@
146146
- [Contributing](development/contributing.md)
147147
- [Determinate Nix Release Notes](release-notes-determinate/index.md)
148148
- [Changes between Nix and Determinate Nix](release-notes-determinate/changes.md)<!-- next -->
149+
- [Release 3.18.0 (2026-04-20)](release-notes-determinate/v3.18.0.md)
149150
- [Release 3.17.3 (2026-04-07)](release-notes-determinate/v3.17.3.md)
150151
- [Release 3.17.2 (2026-03-27)](release-notes-determinate/v3.17.2.md)
151152
- [Release 3.17.1 (2026-03-18)](release-notes-determinate/v3.17.1.md)

doc/manual/source/release-notes-determinate/changes.md

Lines changed: 10 additions & 35 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.33 and Determinate Nix 3.17.3.<!-- differences -->
3+
This section lists the differences between upstream Nix 2.33 and Determinate Nix 3.18.0.<!-- differences -->
44

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

@@ -153,43 +153,16 @@ This section lists the differences between upstream Nix 2.33 and Determinate Nix
153153

154154
<!-- Determinate Nix version 3.15.2 -->
155155

156-
* Path inputs are now lazy [DeterminateSystems/nix-src#312](https://github.com/DeterminateSystems/nix-src/pull/312)
157-
158-
* Improved performance when fetching a lot of dependencies with curl [DeterminateSystems/nix-src#315](https://github.com/DeterminateSystems/nix-src/pull/315)
159-
160156
<!-- Determinate Nix version 3.16.0 -->
161157

162-
* Wasm support [DeterminateSystems/nix-src#309](https://github.com/DeterminateSystems/nix-src/pull/309)
163-
164-
* Fix hung downloads when `http-connections = 0` [DeterminateSystems/nix-src#327](https://github.com/DeterminateSystems/nix-src/pull/327)
165-
166-
* Support .gitattributes in subdirectories [DeterminateSystems/nix-src#335](https://github.com/DeterminateSystems/nix-src/pull/335)
167-
168-
* builtins.getFlake fixes [DeterminateSystems/nix-src#337](https://github.com/DeterminateSystems/nix-src/pull/337)
158+
* Determinate Nix has an experimental builtin `builtins.wasm` that allows the Nix language to be extended using any language that compiles to Wasm. [DeterminateSystems/nix-src#309](https://github.com/DeterminateSystems/nix-src/pull/309)
169159

170-
* builtins.getFlake: Support path values [DeterminateSystems/nix-src#338](https://github.com/DeterminateSystems/nix-src/pull/338)
160+
* `builtins.getFlake` supports path values. [DeterminateSystems/nix-src#338](https://github.com/DeterminateSystems/nix-src/pull/338)
171161

172-
* Provenance [DeterminateSystems/nix-src#321](https://github.com/DeterminateSystems/nix-src/pull/321)
173-
174-
* Add subcommand 'nix provenance show' [DeterminateSystems/nix-src#340](https://github.com/DeterminateSystems/nix-src/pull/340)
175-
176-
* Increase the open file soft limit to the hard limit [DeterminateSystems/nix-src#347](https://github.com/DeterminateSystems/nix-src/pull/347)
162+
* Determinate Nix has support for keeping track of the provenance of store paths. [DeterminateSystems/nix-src#321](https://github.com/DeterminateSystems/nix-src/pull/321)
177163

178164
<!-- Determinate Nix version 3.16.1 -->
179165

180-
181-
* Record provenance for unlocked inputs and impure evaluations in [DeterminateSystems/nix-src#354](https://github.com/DeterminateSystems/nix-src/pull/354)
182-
183-
* Add setting narinfo-cache-meta-ttl in [DeterminateSystems/nix-src#355](https://github.com/DeterminateSystems/nix-src/pull/355)
184-
185-
* Add derivationWithMeta builtin in [DeterminateSystems/nix-src#357](https://github.com/DeterminateSystems/nix-src/pull/357)
186-
187-
* Add builtins.wasi in [DeterminateSystems/nix-src#359](https://github.com/DeterminateSystems/nix-src/pull/359)
188-
189-
* Add `nix provenance verify` command in [DeterminateSystems/nix-src#356](https://github.com/DeterminateSystems/nix-src/pull/356)
190-
191-
* builtins.hashString: Devirtualize lazy paths, and re-enable lazy trees tests in [DeterminateSystems/nix-src#360](https://github.com/DeterminateSystems/nix-src/pull/360)
192-
193166
<!-- Determinate Nix version 3.16.2 -->
194167

195168

@@ -201,10 +174,12 @@ This section lists the differences between upstream Nix 2.33 and Determinate Nix
201174

202175
<!-- Determinate Nix version 3.17.1 -->
203176

204-
* Flake inputs are substituted if possible before fetching from the authoritative source, in [DeterminateSystems/nix-src#380](https://github.com/DeterminateSystems/nix-src/pull/380)
205-
206-
* Provenance now supports additional nix.conf-defined tags, in [DeterminateSystems/nix-src#374](https://github.com/DeterminateSystems/nix-src/pull/374)
207-
208177
<!-- Determinate Nix version 3.17.2 -->
209178

210179
<!-- Determinate Nix version 3.17.3 -->
180+
181+
<!-- Determinate Nix version 3.18.0 -->
182+
183+
* Determinate Nix can upload crash info to Sentry. [DeterminateSystems/nix-src#418](https://github.com/DeterminateSystems/nix-src/pull/418)
184+
185+
* Determinate Nix provides the pre-build hook with a JSON serialization of the derivation. [DeterminateSystems/nix-src#424](https://github.com/DeterminateSystems/nix-src/pull/424)
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# Release 3.18.0 (2026-04-20)
2+
3+
* Based on [upstream Nix 2.33.3](../release-notes/rl-2.33.md).
4+
5+
## What's Changed
6+
7+
### Sentry integration
8+
9+
In order to more proactively keep track of crashes, Sentry is now integrated into Determinate Nix.
10+
11+
This allows us to more easily triage and remedy crashes that occur in the wild, without depending on manual use reports.
12+
13+
It can be enabled by:
14+
15+
* populating the file `/etc/nix/sentry-endpoint` with a Sentry DSN; or
16+
* setting the `NIX_SENTRY_ENDPOINT` environment variable to a Sentry DSN
17+
18+
and can be disabled by:
19+
20+
* setting the environment variable `DETSYS_IDS_TELEMETRY` to the value `disabled`; or
21+
* setting the environment variable `NIX_SENTRY_ENDPOINT` to an empty string
22+
23+
PR: [DeterminateSystems/nix-src#418](https://github.com/DeterminateSystems/nix-src/pull/418)
24+
25+
### Pre-build hook now receives the JSON serialization of the derivation
26+
27+
The pre-build hook already received the path of the derivation as an argument, but that path doesn't typically exist when called as a remote build.
28+
29+
Now, the pre-build hook is spawned with the environment variable `NIX_DERIVATION_V4` set to a file that contains the JSON representation of the derivation in v4 format, allowing instrospection of e.g. `requiredSystemFeatures` for scheduling decisions.
30+
31+
PR: [DeterminateSystems/nix-src#424](https://github.com/DeterminateSystems/nix-src/pull/424)
32+
33+
### Fix empty Git exports when using legacy Git compatibility
34+
35+
A regression introduced in v3.16.0 made it possible for there to be empty Git exports in the Nix store when using legacy Git flakes (those depending on Nix 2.19 lockfile semantics).
36+
37+
This is now fixed.
38+
39+
PR: [DeterminateSystems/nix-src#425](https://github.com/DeterminateSystems/nix-src/pull/425)
40+
41+
42+
**Full Changelog**: [v3.17.3...v3.18.0](https://github.com/DeterminateSystems/nix-src/compare/v3.17.3...v3.18.0)

0 commit comments

Comments
 (0)