background grid image
Image for post changelog-determinate-nix-030
Jan 14, 2025 by Graham Christensen

Changelog: customer binding, nix.conf, and yanked Nix 2.25.4

We’d like to announce some noteworthy changes to Determinate Nix involving customer binding, user customization, Determinate in OCI containers, and a yanked Nix release. We’ve also cut two new releases for the Determinate Nix Installer.

Customer binding

We’ve updated Determinate Nixd to enable users to bind a Determinate installation to a specific FlakeHub organization. When you do this, it prevents users from logging in to a FlakeHub account that isn’t associated with the organization. Here’s an example binding command:

Binding a Determinate installation to a specific org
determinate-nixd auth bind AmbiguousTechnologies

For persistent CI workers, we recommend pre-binding the Determinate installation to prevent CI jobs from substituting from outside caches.

For more information, see our documentation on binding your installation.

Splitting user customization from Determinate defaults in the Determinate Nix Installer

The Determinate Nix Installer now writes user-specified configuration entries to a nix.custom.conf file. The default Nix configuration is written to nix.conf, which imports the nix.custom.conf.

We made this change in collaboration with Emily from the nix-darwin project, for which we are grateful.

At the same time, Determinate now takes a more prescriptive approach to the nix.conf. Previously, Determinate left the nix.conf alone if it was a symlink. This created unpredictable behavior for some users.

Determinate will now move the nix.conf out of the way to a backup file and write its own at startup. User-specified settings can still be saved to nix.custom.conf.

Determinate also previously tried to migrate the contents of nix.conf to the custom file, but the migration was unacceptably sloppy and error prone. Users reported seeing their nix.custom.conf growing with time, which is certainly not ideal. Consider reviewing your custom configuration and deleting any duplicate entries.

Determinate in OCI containers

While installing upstream Nix with the Determinate Nix Installer generally works quite well in Open Container Initiative (OCI) containers, installing Determinate has generally not worked properly and we are not currently testing for container compatibility. If your use case involves Determinate in OCI containers, reach out to us and we can put improved container support on our roadmap.

Nix 2.25.4 yanked from DeterminateSystems/nix on FlakeHub

During our release process for Nix 2.25.4, we saw a regression in Nix around relative path:. flake references. Nix 2.25.4 was briefly made available through our nix and determinate flakes. Those releases have been yanked and rolled back to 2.25.3.

We submitted a patch for the bug and will validate and roll out Nix 2.25.5 as soon as possible.

Determinate Nix Installer releases

In addition to changes to Determinate Nix, we recommend checking out these recent releases of the Determinate Nix Installer:


Share
Avatar for Graham Christensen
Written by Graham Christensen

Graham is a Nix and Rust developer, with a passion and focus on reliability in the lower levels of the stack. He founded Determinate Systems, Inc to support Nix adoption at your workplace.

Would you like access to private flakes and FlakeHub Cache?

Sign up for FlakeHub