Skip to content

Commit ce5cf2a

Browse files
Lagojaclaude
andauthored
Bump minimum Nix version to 2.18 (#2779)
## Summary Nixpkgs now requires Nix >= 2.18 to evaluate, so drop support for older versions. This updates the CI test matrices and MinVersion constant. ## How was it tested? Run in CI to confirm Nix Version checks are running correctly ## Community Contribution License --------- Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
1 parent 413e81b commit ce5cf2a

File tree

3 files changed

+9
-9
lines changed

3 files changed

+9
-9
lines changed

.github/workflows/cli-tests.yaml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ env:
5050
HOMEBREW_NO_INSTALL_CLEANUP: 1
5151
NIX_CONFIG: |
5252
access-tokens = github.com=${{ secrets.GITHUB_TOKEN }}
53-
53+
5454
jobs:
5555
build-devbox:
5656
strategy:
@@ -96,7 +96,7 @@ jobs:
9696
exit 1
9797
fi
9898
- run: ./result/bin/devbox version
99-
99+
100100
golangci-lint:
101101
strategy:
102102
matrix:
@@ -134,14 +134,14 @@ jobs:
134134
# merging, while keeping the others as an additional non-required signal
135135
run-project-tests: ["project-tests-only", "project-tests-off"]
136136
# Run tests on:
137-
# 1. the oldest supported nix version (which is 2.9.0? But determinate-systems installer has 2.12.0)
137+
# 1. the oldest supported nix version (Nixpkgs requires >= 2.18 as of 2026)
138138
# 2. nix 2.19.2: version before nix profile changes
139-
# 2. latest nix version (note, 2.20.1 introduced a new profile change)
140-
nix-version: ["2.12.0", "2.19.2", "2.30.2"]
139+
# 3. latest nix version (note, 2.20.1 introduced a new profile change)
140+
nix-version: ["2.18.0", "2.19.2", "2.30.2"]
141141
exclude:
142142
# Only runs tests on macos if explicitly requested, or on a schedule
143143
- os: "${{ (inputs.run-mac-tests || github.event.schedule != '') && 'dummy' || 'macos-latest' }}"
144-
144+
145145

146146
runs-on: ${{ matrix.os }}
147147
timeout-minutes: 60
@@ -273,7 +273,7 @@ jobs:
273273
strategy:
274274
matrix:
275275
os: [ubuntu-latest, macos-latest]
276-
nix-version: [2.15.1, 2.16.1, 2.17.0, 2.18.0, 2.19.2, 2.24.7]
276+
nix-version: [2.18.0, 2.19.2, 2.24.7, 2.30.2]
277277
runs-on: ${{ matrix.os }}
278278
steps:
279279
- uses: actions/checkout@v4

internal/nix/shim.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ const (
2424
Version2_24 = nix.Version2_24
2525
Version2_25 = nix.Version2_25
2626

27-
MinVersion = nix.Version2_12
27+
MinVersion = nix.Version2_18
2828
)
2929

3030
type (

nix/nix.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,7 @@ const (
172172
Version2_24 = "2.24.0"
173173
Version2_25 = "2.25.0"
174174

175-
MinVersion = Version2_12
175+
MinVersion = Version2_18
176176
)
177177

178178
// versionRegexp matches the first line of "nix --version" output.

0 commit comments

Comments
 (0)