Subject: bug#49801: Guix time machine provenance/manifest reproducibility issue?

From: zimoun <[email-masked]>
Date: Thu, 02 Sep 2021 21:30:46 +0200

Hi Denis,

On Thu, 02 Sep 2021 at 16:12, Denis 'GNUtoo' Carikli <[email-masked]> wrote:

> Between the two tarballs, everything is the same but the provenance
> file.
>
> So here the idea is to make sure that the provenance file is the same
> between tarballs made with and without guix time-machine.

Yes, for sure.  IMHO, the Guix way would be:

      guix describe -f channels > channels.scm
      guix pack --save-provenance

then later or elsewehere

     guix time-machine -C channels.scm -- pack --save-provenance

It is a workaround of the bug your reported. ;-)
Does it work?

> Here I get a diff between tarballs made with and without guix
> time-machine, with or without your patch, so the patch doesn't fix it
> yet for guix master of yesterday.

I think your tests about the patch are not correct.  As I wrote, this is
what you should try, IIUC:

--8<---------------cut here---------------start------------->8---
   Moreover, if you want to try the patch, you need to run:

       ./pre-inst-env guix pull -p /tmp/new
       ./tmp/new/bin/guix describe # return commit 12345
       ./tmp/new/bin/guix pack --save-provenance
       ./tmp/new/bin/guix time-machine --commit=12345 -- pack --save-provenance

   and be careful with the '--localstatedir' and '--sysconfdir' variables
   at './configure' time.
--8<---------------cut here---------------end--------------->8---

All the best,
simon