guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Unreproducible “guix pack -f docker” because config.scm-builder


From: zimoun
Subject: Unreproducible “guix pack -f docker” because config.scm-builder
Date: Mon, 01 Feb 2021 23:37:21 +0100

Hi Ludo,

On Thu, 28 Jan 2021 at 16:54, Ludovic Courtès <ludo@gnu.org> wrote:

>> $ guix time-machine -C /tmp/img/channels.scm -- pack -f docker 
>> --save-provenance -m /tmp/img/manifest.scm
>> Updating channel 'guix' from Git repository at 
>> 'https://git.savannah.gnu.org/git/guix.git'...
>> /gnu/store/xzk604g8gysv4azn7sf9nylr6iah97gl-docker-pack.tar.gz
>>
>> To compare with
>> /gnu/store/wxymmnxdvdvf08ifsfy39xjaxilhrigk-docker-pack.tar.gz.
>>
>> On a third machine, I get:
>> /gnu/store/wxymmnxdvdvf08ifsfy39xjaxilhrigk-docker-pack.tar.gz
>>
>> Well, that’s another story and I have not inspected yet the
>> derivations and what could be wrong on the machine B.
>
> You’d have to check the differences.  It may be that provenance data
> differs, for example because the second attempt includes data about
> channels that are actually unused.  (That’s the whole problem of
> provenance data: it’s not a one-to-one mapping and it’s not a bijection
> either.)

After inspecting the derivations, the issue is from the file
’config.scm-builder’ which differs by:

    (define-public %sysconfdir "/usr/local/etc")

vs

    (define-public %sysconfdir "/etc")


What did I do wrong?  From where does this difference come?  How can I
fix it?



Below, the different commands to spot out the issue.

Cheers,
simon


Machine A

--8<---------------cut here---------------start------------->8---
$ guix describe
Generation 101  Jan 29 2021 16:22:06    (current)
  guix b9a54aa
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: master
    commit: b9a54aad0ba282ac78931b67e679bd0132419364
$ guix describe -f channels > /tmp/channels.scm
$ guix pack -f docker hello
/gnu/store/9vhl75vx60l56992hgy5818ndic608p5-docker-pack.tar.gz

$ guix time-machine -C /tmp/channels.scm -- pack -f docker hello
/gnu/store/9vhl75vx60l56992hgy5818ndic608p5-docker-pack.tar.gz
$ guix gc --derivers 
/gnu/store/9vhl75vx60l56992hgy5818ndic608p5-docker-pack.tar.gz                  
                      
/gnu/store/ih94c9ny68dfalrym9m1vz4wa40rpgvs-docker-pack.tar.gz.drv              
                                                        
--8<---------------cut here---------------end--------------->8---

07fwgiz56f7dk760qpplnfaxribglqc7-config.scm-builder:

    (define-public %sysconfdir "/usr/local/etc")
    

Machine B (and C)

--8<---------------cut here---------------start------------->8---
$ guix describe
Génération 7    28 janv. 2021 01:51:17  (actuelle)
   guix 0f20b3f
     URL du dépôt : https://git.savannah.gnu.org/git/guix.git
     branche: master
     commit : 0f20b3fa2050ba6e442e340a204516b9375cd231
$ cat /tmp/channels.scm
(list (channel
        (name 'guix)
        (url "https://git.savannah.gnu.org/git/guix.git";)
        (commit
          "b9a54aad0ba282ac78931b67e679bd0132419364")
        (introduction
          (make-channel-introduction
            "9edb3f66fd807b096b48283debdcddccfea34bad"
            (openpgp-fingerprint
              "BBB0 2DDF 2CEA F6A8 0D1D  E643 A2A0 6DF2 A33A 54FA")))))
$ guix time-machine -C /tmp/channels.scm -- pack -f docker hello
Mise à jour du canal « guix » depuis le dépôt Git 
«https://git.savannah.gnu.org/git/guix.git »...
/gnu/store/nkvlqwzvxdlhzlc7vhfcngxc19x2ay2f-docker-pack.tar.gz

$ guix pull --commit=b9a54aad0ba282ac78931b67e679bd0132419364
$ guix describe
Génération 8    01 févr. 2021 17:00:18  (actuelle)
   guix b9a54aa
     URL du dépôt : https://git.savannah.gnu.org/git/guix.git
     commit : b9a54aad0ba282ac78931b67e679bd0132419364
$ guix pack -f docker hello
/gnu/store/nkvlqwzvxdlhzlc7vhfcngxc19x2ay2f-docker-pack.tar.gz
$ guix gc --derivers 
/gnu/store/nkvlqwzvxdlhzlc7vhfcngxc19x2ay2f-docker-pack.tar.gz           
/gnu/store/323k33sfx869d0nkh69ary8sj6xiy4s4-docker-pack.tar.gz.drv
--8<---------------cut here---------------end--------------->8---

00cy802583sb82kcpzfd1sz1xwff9hln-config.scm-builder:

    (define-public %sysconfdir "/etc")           



reply via email to

[Prev in Thread] Current Thread [Next in Thread]