guix-devel
[Top][All Lists]
Advanced

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

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


From: Ludovic Courtès
Subject: Re: Unreproducible “guix pack -f docker” because config.scm-builder
Date: Tue, 09 Feb 2021 09:35:28 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)

Hi,

zimoun <zimon.toutoune@gmail.com> skribis:

> On Sat, 06 Feb 2021 at 22:46, Ludovic Courtès <ludo@gnu.org> wrote:
>
>> See?  One has just 1 link (did you disable deduplication on that one?),
>> there other has 5 links.
>
> Yes, I see but I do not understand why.  I have not changed, well, only
> the number of cores and jobs:
>
> ExecStart=/var/guix/profiles/per-user/root/current-guix/bin/guix-daemon 
> --build-users-group=guixbuild -c 128 -M 99
> Environment='GUIX_LOCPATH=/var/guix/profiles/per-user/root/guix-profile/lib/locale'
>  LC_ALL=en_US.utf8
>
>
> And my 2 Debian systems give the same result, one is the default and the
> other is:
>
> ExecStart=/var/guix/profiles/per-user/root/current-guix/bin/guix-daemon 
> --build-users-group=guixbuild --gc-keep-outputs=yes --gc-keep-derivations=yes
>
>
>
> There is another configuration file that I could miss?

No.

I’m not sure exactly why it happened, but it’s clear that (guix docker)
would let the nlink value influence tar.

>> Having looked at the tar manual (info "(tar) hard links"), it seems
>> clear that this is the default behavior and that we have to pass
>> ‘--hard-dereference’ to avoid it.
>
> Do you mean in (guix docker) here:
>
>           (apply invoke "tar" "-cf" "../layer.tar"
>                  `(,@transformation-options
>                    ,@%tar-determinism-options
>                    ,@paths
>                    ,@(scandir "."
>                               (lambda (file)
>                                 (not (member file '("." ".."))))))))
>
> if I read correctly?
>
> And the option «-h, --dereference: Follow symlinks; archive and dump the
> files they point to.» isn’t enough?

It’s really ‘--hard-dereference’.

Pushed as 18a4882e3029a084d2f0c63d9d0148682a854546, thank you!

Ludo’.



reply via email to

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