From ba07843efb766aea5e204f910bd0839b2b059cb3 Mon Sep 17 00:00:00 2001 From: Moritz Angermann Date: Fri, 16 Oct 2026 21:34:39 +0900 Subject: [PATCH] Preserve Nix CLI and flakes features in the CI installer --- .github/workflows/nix.yml | 5 +++-- scripts/nix/README.md | 5 ++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.github/workflows/nix.yml b/.github/workflows/nix.yml index 71641df65a..eb5f8cbd44 100644 --- a/.github/workflows/nix.yml +++ b/.github/workflows/nix.yml @@ -80,8 +80,9 @@ jobs: extra-trusted-public-keys = hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ= loony-tools:pr9m4BkM/5/eSTZlkQyRt57Jz7OMBxNSUiMC4FkcNfk= # The pinned haskell.nix uses this scheduling marker for cross # slices that need a real x86_64 host. This runner is native x86_64. - # Nix also requires its experimental feature for this marker. - extra-experimental-features = ${{ matrix.system == 'x86_64-linux' && 'recursive-nix' || '' }} + # The installer skips its defaults when this setting is present. + # Keep the CLI/flakes features and enable the marker's Nix feature. + experimental-features = nix-command flakes ${{ matrix.system == 'x86_64-linux' && 'recursive-nix' || '' }} extra-system-features = ${{ matrix.system == 'x86_64-linux' && 'recursive-nix' || '' }} - name: Show outputs from this checkout diff --git a/scripts/nix/README.md b/scripts/nix/README.md index 46d163fb0c..1ec08fe57b 100644 --- a/scripts/nix/README.md +++ b/scripts/nix/README.md @@ -171,7 +171,10 @@ builder for those jobs; keep it off Rosetta slots. Nix also requires the when building derivations with this reserved marker. Enable both `extra-experimental-features = recursive-nix` and `extra-system-features = recursive-nix` on that builder. The GitHub workflow -sets both only for its native x86_64 Linux runner. The upstream fixes and regression jobs +sets the complete `experimental-features` list, including `nix-command` and +`flakes`, because its installer suppresses those defaults when this setting is +present. It adds `recursive-nix` to both lists only for its native x86_64 Linux +runner. The upstream fixes and regression jobs are in [haskell.nix PR #2585](https://github.com/input-output-hk/haskell.nix/pull/2585). To build both Android APK ABIs from the current checkout, preserving the same