I see the bindgen crate constantly rebuilding
If you are using rustPlatform.bindgenHook it is worth noting that it will
propagate NIX_CFLAGS_COMPILE via
BINDGEN_EXTRA_CLANG_ARGS.
In order to support reproducible builds, this build hook will add
-frandom-seed=... to
NIX_CFLAGS_COMPILE
based on the current derivation's hash.
Since dependencies are built in a separate derivation as the main package, each
derivation essentially gets a different value for -frandom-seed. The bindgen
crate will observe this change and rebuild
itself.
A workaround for this is to set NIX_OUTPATH_USED_AS_RANDOM_SEED to any
arbitrary 10 character string for all derivations which share artifacts
together.
buildPackage {
NIX_OUTPATH_USED_AS_RANDOM_SEED = "aaaaaaaaaa";
# other attributes omitted
}