From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Marusich Subject: "guix-latest" differs when two users run "guix pull" from same commit Date: Wed, 15 Nov 2017 14:58:07 -0800 Message-ID: <87ineaewkt.fsf@gmail.com> Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:40026) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eFAlb-0003yN-1x for help-guix@gnu.org; Wed, 15 Nov 2017 22:23:04 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eFAla-0005Kw-9Q for help-guix@gnu.org; Wed, 15 Nov 2017 22:23:03 -0500 Received: from mail-pf0-x229.google.com ([2607:f8b0:400e:c00::229]:47342) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1eFAla-0005Ke-2k for help-guix@gnu.org; Wed, 15 Nov 2017 22:23:02 -0500 Received: by mail-pf0-x229.google.com with SMTP id t69so9606432pfg.4 for ; Wed, 15 Nov 2017 19:23:02 -0800 (PST) Received: from garuda.local ([2601:602:9d02:4725:6495:ba21:1ebe:620a]) by smtp.gmail.com with ESMTPSA id r188sm177305pfr.123.2017.11.15.19.22.59 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 15 Nov 2017 19:22:59 -0800 (PST) List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane.org@gnu.org Sender: "Help-Guix" To: help-guix@gnu.org --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Hi, When two users run "guix pull" using the same commit, two different versions of "guix-latest" get built. This surprised me, and in any case it seems inefficient to build the same version of Guix two times. Why do two different derivations get built? Here's an invocation of "guix pull" as an unprivileged user: =2D-8<---------------cut here---------------start------------->8--- $ guix pull ... Building from Git commit ed0f9f53abef57b9f33d3b2eada40375894bdff6... ... The following derivation will be built: /gnu/store/m3x8069x5aspc29m9ay7idndz0kpfxlb-guix-latest.drv copying and compiling to '/gnu/store/dn13gs9w16h5w6l77pnpbclqxnbyhh4m-guix-= latest' with Guile 2.2.2... =2D-8<---------------cut here---------------end--------------->8--- And here's an invocation of "guix pull" as root: =2D-8<---------------cut here---------------start------------->8--- # guix pull ... Building from Git commit ed0f9f53abef57b9f33d3b2eada40375894bdff6... ... The following derivation will be built: /gnu/store/675pz9f4qz9dd4jikzcgzv62kjrxfhmg-guix-latest.drv copying and compiling to '/gnu/store/cvc0rf65s3mjw9rjps80ram3898qdws3-guix-= latest' with Guile 2.2.2... =2D-8<---------------cut here---------------end--------------->8--- I am surprised that these two invocations of "guix pull" build different derivations. I understand that the overall "guix pull" action requires side effects outside of the store which will be different depending on who invoked the command (e.g., to update the $HOME/.config/guix/latest symlink), but that stuff isn't performed by a derivation. I expect two derivations that build Guix (or any software component) from the same source to be identical, so I am surprised. I have looked at the source code for "guix pull," and I cannot find any obvious reason why the derivations should differ. Does anyone know why they differ? =2D-=20 Chris --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEy/WXVcvn5+/vGD+x3UCaFdgiRp0FAloNBJIACgkQ3UCaFdgi Rp2D0hAAiUKYVsKiBV7LUxy2OI8ar2OW1reBTP0Oi+bBv82mbSeMVxZnPOLivrPh gvfoRAzOIiomBL/owzshI4T9IIWtjC9gLAM4f/YLk8OoMgzJOy+8yWTzN+WMQ144 dinIDkMx5uYMxMrNeWrg8VRYC4gvalSs42pcohMstvixySWeHGb87r70cCFxwIDo STkbFH5vWDWBlNviyYKrIh8D8YNytCIJ+7ATONSoogDQrLPVLEQ35seFjXC5gWYQ lIVgakEYlA6amzUnS4AT6iK6FZgHXnn69TCPXblVav3foK6fcMSCrbE2cNFYJCVo VXiOkMZqTK7uViRyGq35Vwz6VzrciDZlLapprFA9cNyDVIbpV3hwoeVr/X2YqNz+ VQE8TDPyKKvCWnsiARtivwIrw6wNE5t5F6mMHDrrUP0uHwNsRhIDI6OpSnwK9/Zu Q83bk7Pu61iRvPleBM20+I5x5OEmM78atbWnhNCxTqquAYvbItEvc7RYy6Veskd9 TYRUUJNFn+RPBmftu3s894ruBiPUEO2LGBOVe1vw/cxEUPti2JR/PQaxdWka0J5Z B2VouLKDJlMxbzUsYei+xTb2QX+eNoITpv+ZUYngadnpMHKRAUaPtRomGMDXodK3 XDctKARsF8CXPOY0eKh9/PwLcM0p9M4vymzwdl/uiRglyK/yMYM= =cD4b -----END PGP SIGNATURE----- --=-=-=--