Subject: bug#69284: guix pull is not reproducible

From: Josselin Poiret <[email-masked]>
Date: Sun, 10 Mar 2024 11:13:46 +0100

Hi Andrew,

Andrew Tropin via Bug reports for GNU Guix <[email-masked]> writes:

> I don't think that hash of the profile depends on the building process
> itself.  And it seems on the same system it returns the same result on
> consequent rebuilds.  It seems something leaks from the environment.

Yes, it's rather that the .drv themselves are not reproducible
apparently.  Can you compare the derivations building the guixes in the
different profiles?  You can look at them using first `guix gc
--derivers` on the profile and then analyzing the .drv manually.  I
remember seeing the same thing, but I don't really remember anything
conclusive.

One thing I can say is that Guix generates the .drv dynamically by
looking at the check-out.  If the checkout is somehow tainted (as it has
often happened, maybe because of libgit2?), the .drv can end up being
different.  If you retry by first resetting the Guix checkouts in
~/.cache/guix/checkouts/ to a pristine state, do you still get a
discrepancy?

Best,
-- 
Josselin Poiret