fix(nix): pin Rust toolchain to 1.97.1 and refresh manifest hash - #977
Merged
Conversation
The flake pinned the sha256 of channel-rust-1.97.toml, a mutable file that static.rust-lang.org rewrites on every 1.97.x patch release; the 1.97.1 release changed it and broke nix build with a fixed-output hash mismatch. Pin the exact patch version so fenix fetches the immutable channel-rust-1.97.1.toml, and update the hash to match. Fixes #976 Claude-Session: https://claude.ai/code/session_01VvWzWfEK6oV4HTe6EoGkff
Pinning rust-toolchain.toml to 1.97.1 made rustup auto-install a bare 1.97.1 toolchain in CI instead of using the dtolnay-installed 1.97 one that carried clippy and rustfmt, failing the Clippy step. Declare the components in the toolchain file so any auto-install includes them, and align the workflow toolchain pins to 1.97.1 so CI installs the exact toolchain cargo resolves. Claude-Session: https://claude.ai/code/session_01VvWzWfEK6oV4HTe6EoGkff
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.
Fixes #976.
nix buildfailed with a fixed-output hash mismatch onchannel-rust-1.97.toml. The flake pinned the sha256 of that channel manifest, butrust/rust-toolchain.tomlused the moving channel1.97— static.rust-lang.org rewriteschannel-rust-1.97.tomlon every 1.97.x patch release, so the Rust 1.97.1 release (2026-07-16 manifest) invalidated the pinned hash.Changes:
rust-toolchain.tomlto the exact version1.97.1, so fenix fetches the immutablechannel-rust-1.97.1.tomland the hash can never drift again within a channel.sha256to the new manifest hash, with a comment noting the exact-patch-pin requirement.Verification: the flat sha256 of the current manifest computed locally is
sha256-A1abGIbOtcBSdrUMhDGrER3pRM1hQP4fp9gh3Y4PKc8=, byte-for-byte matching both thegot:hash reported in #976 andchannel-rust-1.97.1.toml(the two files are identical). CI workflows usedtolnay/rust-toolchainwith1.97and resolve to 1.97.1 independently of this hash, so they are unaffected.This change is