From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id qJS4FDwOH2DzdwAA0tVLHw (envelope-from ) for ; Sat, 06 Feb 2021 21:46:36 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id yJ2dEDwOH2DQSgAA1q6Kng (envelope-from ) for ; Sat, 06 Feb 2021 21:46:36 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id ECBD4940105 for ; Sat, 6 Feb 2021 21:46:35 +0000 (UTC) Received: from localhost ([::1]:36916 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1l8VPW-00034a-Vh for larch@yhetil.org; Sat, 06 Feb 2021 16:46:35 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51242) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1l8VPM-00034L-9G for guix-devel@gnu.org; Sat, 06 Feb 2021 16:46:24 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:47069) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1l8VPM-00086D-1z; Sat, 06 Feb 2021 16:46:24 -0500 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=41688 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1l8VPL-0003JJ-JS; Sat, 06 Feb 2021 16:46:23 -0500 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= To: zimoun Subject: Re: Unreproducible =?utf-8?Q?=E2=80=9Cguix?= pack -f =?utf-8?Q?do?= =?utf-8?Q?cker=E2=80=9D?= because config.scm-builder References: <20210116182957.31075-1-ludo@gnu.org> <87wnvyv7w6.fsf@gnu.org> <86bldahz42.fsf@gmail.com> <8735ylm4zx.fsf@gnu.org> <86pn1jct3y.fsf@gmail.com> <877dnqe3to.fsf@gnu.org> <86eehycjre.fsf@gmail.com> <87im766d30.fsf@gnu.org> <86lfc2bfb1.fsf@gmail.com> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 18 =?utf-8?Q?Pluvi=C3=B4se?= an 229 de la =?utf-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Sat, 06 Feb 2021 22:46:22 +0100 In-Reply-To: <86lfc2bfb1.fsf@gmail.com> (zimoun's message of "Fri, 05 Feb 2021 18:22:10 +0100") Message-ID: <87k0rkzx75.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: guix-devel Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Migadu-Flow: FLOW_IN X-Migadu-Spam-Score: -2.86 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=pass (policy=none) header.from=gnu.org; spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Migadu-Queue-Id: ECBD4940105 X-Spam-Score: -2.86 X-Migadu-Scanner: scn1.migadu.com X-TUID: 2rgv+vrSlJhg Hi, zimoun skribis: > First on Debian and second on Ubuntu > > $ stat /gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/libexec/get= conf/POSIX_V6_LP64_OFF64 > File: /gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/libexec/ge= tconf/POSIX_V6_LP64_OFF64 > Size: 29960 Blocks: 64 IO Block: 4096 regular file > Device: 801h/2049d Inode: 8129616 Links: 5 > Access: (0555/-r-xr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root) > Access: 2021-02-05 17:37:15.728728952 +0100 > Modify: 1970-01-01 01:00:01.000000000 +0100 > Change: 2020-06-17 12:40:06.389935679 +0200 > Birth: - > > $ stat /gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/libexec/get= conf/POSIX_V6_LP64_OFF64 > Fichier : /gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/libexec/= getconf/POSIX_V6_LP64_OFF64 > Taille : 29960 Blocs : 64 Blocs d'E/S : 4096 fichier > P=C3=A9riph=C3=A9rique : 814h/2068d In=C5=93ud : 148900093 Liens = : 1 > Acc=C3=A8s : (0555/-r-xr-xr-x) UID : ( 0/ root) GID : ( 0/ ro= ot) > Acc=C3=A8s : 2021-02-05 17:46:05.537903382 +0100 > Modif. : 1970-01-01 01:00:01.000000000 +0100 > Changt : 2020-12-04 23:16:33.155711694 +0100 > Cr=C3=A9=C3=A9 : - See? One has just 1 link (did you disable deduplication on that one?), there other has 5 links. >> I wonder if it could be that tar nowadays decides to preserve hard links >> by default and one of your machine had this file hard-linked while the >> other one didn=E2=80=99t. > > Wow, I thought that the same tar was used the one provided by Guix and > not by the host. For sure the default tar are not the same on both > machine (v1.30 for Debian and v1.29 for Ubuntu). > > What is the md5sum checksum of =E2=80=99guix pack -f docker hello=E2=80= =99 on Guix > System for commit b9a54aa? --8<---------------cut here---------------start------------->8--- $ md5sum $(guix time-machine --commit=3Db9a54aa -- pack -f docker hello) b5fe393d7966cbc3cd0be6e51d3aedc3 /gnu/store/nkvlqwzvxdlhzlc7vhfcngxc19x2ay= 2f-docker-pack.tar.gz $ sha1sum $(guix time-machine --commit=3Db9a54aa -- pack -f docker hello) a4dff93de6c0bc65eb325ebfeea398ebea944a85 /gnu/store/nkvlqwzvxdlhzlc7vhfcng= xc19x2ay2f-docker-pack.tar.gz $ guix time-machine --commit=3Db9a54aa -- pack -f docker hello -d /gnu/store/323k33sfx869d0nkh69ary8sj6xiy4s4-docker-pack.tar.gz.drv $ (mkdir /tmp/docker; tar xf $(guix time-machine --commit=3Db9a54aa -- pack= -f docker hello ); tar tvf */layer.tar | grep ^h | head) hr-xr-xr-x root/root 0 1970-01-01 01:00 gnu/store/fa6wj5bxkj5ll1d72= 92a70knmyl7a0cr-glibc-2.31/libexec/getconf/POSIX_V6_LP64_OFF64 kunligo al g= nu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/bin/getconf hr-xr-xr-x root/root 0 1970-01-01 01:00 gnu/store/fa6wj5bxkj5ll1d72= 92a70knmyl7a0cr-glibc-2.31/libexec/getconf/POSIX_V7_LP64_OFF64 kunligo al g= nu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/bin/getconf hr-xr-xr-x root/root 0 1970-01-01 01:00 gnu/store/fa6wj5bxkj5ll1d72= 92a70knmyl7a0cr-glibc-2.31/libexec/getconf/XBS5_LP64_OFF64 kunligo al gnu/s= tore/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/bin/getconf hr--r--r-- root/root 0 1970-01-01 01:00 gnu/store/01b4w3m6mp55y531k= yi1g8shh722kwqm-gcc-7.5.0-lib/lib/gcc/x86_64-unknown-linux-gnu/7.5.0/crtend= S.o kunligo al gnu/store/01b4w3m6mp55y531kyi1g8shh722kwqm-gcc-7.5.0-lib/lib= /gcc/x86_64-unknown-linux-gnu/7.5.0/crtend.o hr--r--r-- root/root 0 1970-01-01 01:00 gnu/store/01b4w3m6mp55y531k= yi1g8shh722kwqm-gcc-7.5.0-lib/lib/gcc/x86_64-unknown-linux-gnu/7.5.0/instal= l-tools/gsyslimits.h kunligo al gnu/store/01b4w3m6mp55y531kyi1g8shh722kwqm-= gcc-7.5.0-lib/lib/gcc/x86_64-unknown-linux-gnu/7.5.0/include-fixed/syslimit= s.h hr--r--r-- root/root 0 1970-01-01 01:00 gnu/store/01b4w3m6mp55y531k= yi1g8shh722kwqm-gcc-7.5.0-lib/lib/gcc/x86_64-unknown-linux-gnu/7.5.0/instal= l-tools/include/README kunligo al gnu/store/01b4w3m6mp55y531kyi1g8shh722kwq= m-gcc-7.5.0-lib/lib/gcc/x86_64-unknown-linux-gnu/7.5.0/include-fixed/README hr--r--r-- root/root 0 1970-01-01 01:00 gnu/store/01b4w3m6mp55y531k= yi1g8shh722kwqm-gcc-7.5.0-lib/lib/gcc/x86_64-unknown-linux-gnu/7.5.0/instal= l-tools/include/limits.h kunligo al gnu/store/01b4w3m6mp55y531kyi1g8shh722k= wqm-gcc-7.5.0-lib/lib/gcc/x86_64-unknown-linux-gnu/7.5.0/include-fixed/limi= ts.h hr--r--r-- root/root 0 1970-01-01 01:00 gnu/store/01b4w3m6mp55y531k= yi1g8shh722kwqm-gcc-7.5.0-lib/lib/gcc/x86_64-unknown-linux-gnu/7.5.0/plugin= /include/gsyslimits.h kunligo al gnu/store/01b4w3m6mp55y531kyi1g8shh722kwqm= -gcc-7.5.0-lib/lib/gcc/x86_64-unknown-linux-gnu/7.5.0/include-fixed/syslimi= ts.h hrwxrwxrwx root/root 0 1970-01-01 01:00 gnu/store/01b4w3m6mp55y531k= yi1g8shh722kwqm-gcc-7.5.0-lib/lib/gcc/x86_64-unknown-linux-gnu/7.5.0/plugin= /libcc1plugin.so.0 kunligo al gnu/store/01b4w3m6mp55y531kyi1g8shh722kwqm-gc= c-7.5.0-lib/lib/gcc/x86_64-unknown-linux-gnu/7.5.0/plugin/libcc1plugin.so hrwxrwxrwx root/root 0 1970-01-01 01:00 gnu/store/01b4w3m6mp55y531k= yi1g8shh722kwqm-gcc-7.5.0-lib/lib/gcc/x86_64-unknown-linux-gnu/7.5.0/plugin= /libcp1plugin.so.0 kunligo al gnu/store/01b4w3m6mp55y531kyi1g8shh722kwqm-gc= c-7.5.0-lib/lib/gcc/x86_64-unknown-linux-gnu/7.5.0/plugin/libcp1plugin.so --8<---------------cut here---------------end--------------->8--- Most of these =E2=80=98h=E2=80=99 lines for hard links; =E2=80=98libcc1plug= in.so=E2=80=99 seems to be an exception (it=E2=80=99s a symlink). 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 =E2=80=98--hard-dereference=E2=80=99 to avoid it. Thanks, Ludo=E2=80=99.