Use cached Go 1.27 from nixpkgs - #296
Open
jeremy wants to merge 1 commit into
Open
Conversation
Refresh nixpkgs-unstable now that it carries stable Go 1.27.0, then remove the temporary source-toolchain override so cold Nix stores substitute Go from cache.nixos.org.
Contributor
There was a problem hiding this comment.
Pull request overview
Updates the Nix toolchain to use cached Go 1.27.0 directly from the refreshed nixpkgs snapshot.
Changes:
- Refreshes
flake.lock. - Removes the temporary source-build override.
- Preserves vendor-hash regression coverage and updates guidance.
Tip
If you aren't ready for review, convert to a draft PR.
Click "Convert to draft" or run gh pr ready --undo.
Click "Ready for review" or run gh pr ready to reengage.
Reviewed changes
Copilot reviewed 5 out of 6 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
flake.lock |
Pins the newer nixpkgs revision. |
nix/go.nix |
Selects go_1_27 directly. |
RELEASING.md |
Documents toolchain lock maintenance. |
scripts/extract-nix-vendor-hash.sh |
Updates historical classifier context. |
tests/e2e/extract_nix_vendor_hash.bats |
Retains non-vendor mismatch coverage. |
tests/e2e/update_nix_flake.bats |
Retains source-hash regression coverage. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
This was referenced Aug 24, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
PR #283 moves HEY to Go 1.27, but its locked nixpkgs snapshot only carries 1.27rc3. The temporary override therefore compiles Go 1.27.0 from source in every fresh Nix store.
nixpkgs-unstablenow carries stable Go 1.27.0 in its binary cache, so the workaround can come out.What changed
flake.lockat nixpkgsc8f90650c15282fa8656a041bfbbd2403997a9a7go_1_27directly for both the package and development shellVerification
aarch64-linux: 53.53s, passed/nix/store/...-go-1.27.0fromcache.nixos.org; no Go source derivation was builtgo_1_27.version == 1.27.0shellcheck,bash -n,git diff --check, and lint lockstep: passedThe red test/race and default-CodeQL checks are inherited from the stale #283 base: its date-sensitive calendar test has already been fixed on current
main, while default CodeQL still selects Go 1.26.6 for a Go 1.27 module. The repo's configured CodeQL job passes. #283 needs to sync withmain; this PR's Nix-specific checks are green.Dependency
This PR is based on
go-1.27and is the second layer of the stack after #283. It intentionally contains only the nixpkgs/toolchain-cache delta.Stack order
The intended order is #304 → #283 → #296. #304 is independently based on main and should land first; #283 can then sync from main. This PR remains based on go-1.27 and intentionally contains only the Go 1.27 nixpkgs/toolchain-cache delta. No branch history was rewritten to document that dependency.