Home Explore Blog CI



nix

2nd chunk of `doc/manual/source/release-notes/rl-2.26.md`
0e4dc464d62822796441e325e003144d01c5ee1fe6c5eaee00000001000008fa
- `nix-instantiate --eval` now supports `--raw` [#12119](https://github.com/NixOS/nix/pull/12119)

  The `nix-instantiate --eval` command now supports a `--raw` flag, when used
  the evaluation result must be a string, which is printed verbatim without
  quotation marks or escaping.

- Improved `NIX_SSHOPTS` parsing for better SSH option handling [#5181](https://github.com/NixOS/nix/issues/5181) [#12020](https://github.com/NixOS/nix/pull/12020)

  The parsing of the `NIX_SSHOPTS` environment variable has been improved to handle spaces and quotes correctly.
  Previously, incorrectly split SSH options could cause failures in commands like `nix-copy-closure`,
  especially when using complex SSH invocations such as `-o ProxyCommand="ssh -W %h:%p ..."`.

  This change introduces a `shellSplitString` function to ensure
  that `NIX_SSHOPTS` is parsed in a manner consistent with shell
  behavior, addressing common parsing errors.

  For example, the following now works as expected:

  ```bash
  export NIX_SSHOPTS='-o ProxyCommand="ssh -W %h:%p ..."'
  ```

  This update improves the reliability of SSH-related operations using `NIX_SSHOPTS` across Nix CLIs.

- Nix is now built using Meson

  As proposed in [RFC 132](https://github.com/NixOS/rfcs/pull/132), Nix's build system now uses Meson/Ninja. The old Make-based build system has been removed.

- Evaluation caching now works for dirty Git workdirs [#11992](https://github.com/NixOS/nix/pull/11992)

# Contributors

This release was made possible by the following 45 contributors:

- Anatoli Babenia [**(@abitrolly)**](https://github.com/abitrolly)
- Domagoj Mišković [**(@allrealmsoflife)**](https://github.com/allrealmsoflife)
- Yaroslav Bolyukin [**(@CertainLach)**](https://github.com/CertainLach)
- bryango [**(@bryango)**](https://github.com/bryango)
- tomberek [**(@tomberek)**](https://github.com/tomberek)
- Matej Urbas [**(@mupdt)**](https://github.com/mupdt)
- elikoga [**(@elikoga)**](https://github.com/elikoga)
- wh0 [**(@wh0)**](https://github.com/wh0)
- Félix [**(@picnoir)**](https://github.com/picnoir)
- Valentin Gagarin [**(@fricklerhandwerk)**](https://github.com/fricklerhandwerk)
- Gavin John [**(@Pandapip1)**](https://github.com/Pandapip1)
- Travis A. Everett [**(@abathur)**](https://github.com/abathur)

Title: Nix Release Updates: `nix-instantiate`, `NIX_SSHOPTS`, Build System, and Git Workdirs
Summary
This section details updates in the latest Nix release, including the addition of the `--raw` flag to `nix-instantiate --eval`, improvements to `NIX_SSHOPTS` parsing, a migration to Meson/Ninja for the build system, and the introduction of evaluation caching for dirty Git workdirs. It also lists the contributors to the release.