Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Release 3.18.0 (2026-04-20)

What's Changed

Sentry integration

In order to more proactively keep track of crashes, Sentry is now integrated into Determinate Nix.

This allows us to more easily triage and remedy crashes that occur in the wild, without depending on manual use reports.

It can be enabled by:

  • populating the file /etc/nix/sentry-endpoint with a Sentry DSN; or
  • setting the NIX_SENTRY_ENDPOINT environment variable to a Sentry DSN

and can be disabled by:

  • setting the environment variable DETSYS_IDS_TELEMETRY to the value disabled; or
  • setting the environment variable NIX_SENTRY_ENDPOINT to an empty string

PR: DeterminateSystems/nix-src#418

Pre-build hook now receives the JSON serialization of the derivation

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.

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.

PR: DeterminateSystems/nix-src#424

Fix empty Git exports when using legacy Git compatibility

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).

This is now fixed.

PR: DeterminateSystems/nix-src#425

Full Changelog: v3.17.3...v3.18.0