fix(nix): pin capnpc source to immutable commit, not mutable main ref

xbuild's capnpc package pinned src to shen390s/c-capnproto's `main`
branch with a hardcoded sha256, so every upstream push broke `nix
develop` with a fixed-output-derivation hash mismatch (bug-918,
recurred 4x in this worktree). Override capnpc's src to a
fetchFromGitHub pinned at an immutable commit instead.
This commit is contained in:
Rongsong Shen 2026-07-24 08:25:38 +00:00
parent cae4ef0cc7
commit e0c5e8b7a4

View file

@ -35,6 +35,17 @@ stdenv.mkDerivation {
struct2json
(capnpc.overrideAttrs (oldAttrs: {
separateDebugInfo = true;
# bug-918: upstream xbuild's capnpc package.nix pins src to the
# MUTABLE `main` ref of shen390s/c-capnproto with a hardcoded sha256,
# so it hard-breaks (fixed-output hash mismatch) every time that
# branch moves. Pin to an immutable commit here instead so this repo
# stops depending on upstream's moving target.
src = pkgs.fetchFromGitHub {
owner = "shen390s";
repo = "c-capnproto";
rev = "e45ff682c4756ac5067cbac6d0f282a8ea5f0155";
sha256 = "sha256-9rTlcTia+s9ARGeTi+8auGvM0RkS+wZK7aIkzecaeSk=";
};
}))
which
findutils