From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marius Bakke Subject: Re: Why are these derivations different? Date: Mon, 10 Jun 2019 13:35:55 +0200 Message-ID: <878su9fzac.fsf@devup.no> References: <878sub7qng.fsf@devup.no> Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:49360) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1haIkH-0003uV-BW for help-guix@gnu.org; Mon, 10 Jun 2019 07:45:51 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1haIaq-0004k1-OK for help-guix@gnu.org; Mon, 10 Jun 2019 07:36:06 -0400 Received: from out1-smtp.messagingengine.com ([66.111.4.25]:45401) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1haIao-0004bR-QB for help-guix@gnu.org; Mon, 10 Jun 2019 07:36:03 -0400 In-Reply-To: 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: Jack Hill Cc: help-guix@gnu.org --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Jack Hill writes: > On Sat, 8 Jun 2019, Marius Bakke wrote: > >> Jack Hill writes: >> >>> Hi Guix, >>> >>> I'm trying to copy the store items for ungoogled-chromium from one of my >>> hosts that has many computational resources to another one that does no= t, >>> so that I do not have to build ungoogled-chromium on the less powerful >>> host. >>> >>> However, even after copying the store items using guix archive --export= | >>> guix archive --import, the less powerful host wants to build >>> ungoogled-chromium because the derivations differ (see attachments). >> >> I suspect this has to do with grafts. Guix is missing a substitute for >> the 'ungrafted' package and fails to realize the grafted derivation. >> >> Exporting with --no-grafts should do the trick. > > Marius, > > Thanks! That was it. > > If you don't mind, I have a few follow up question to help me understand= =20 > how everything works: > > How is guix archive --no-grafts different from guix build --no-grafts? Oh= ,=20 > or after reading the manual for --no-grafts again, maybe I used the wrong= =20 > incantation (guix build --no-grafts package-name instead of guix build=20 > package-name --no-grafts)? > > What's really going on with --no-grafts. Is it that guix on my less=20 > powerful host has never seen the the ungoogled-chromium version build=20 > against the older dependencies, so doesn't accept the older version that= =20 > could be grafted? I guess, I'm not sure exactly what you mean by "fails t= o=20 > realize the grafted derivation". Is that a bug? Sorry, just a lazy and poor attempt at explaining what's going on... :-) > Sorry, I don't think that question was very clear. It probably means that= =20 > while I think I know what grafts are, I don't know enough about what's=20 > going on to ask the question properly. I think this all could be summariz= ed=20 > as, "please explain more." Grafts are are ignored in some parts of Guix. In this case, if you inspect the profile derivation when doing 'guix install -n ungoogled-chromium', you can see that the computed profile.drv needs to produce the ungrafted ungoogled-chromium-x.y.z.drv, because the profile-builder references the _ungrafted_ package.=20 I'm not sure of the exact mechanics that follow, but I guess grafts are only computed afterwards, recursively, for the generated profile. HTH, Marius --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlz+QJsACgkQoqBt8qM6 VPpQQwf+OFleabm06BoIBVtAnYB9sOww+7cXt4P4q2qQdJ4Kq5ujastnCUOpu4g1 XlOc53W7HcHRrpVref4i24V2iKFR8n3BL8uOp1cczlNH/tmxH81EbtLzdRompO6a w7vk2SaEHMRue4I3JqbQ1ehV7UIEnQYKRsAfZqLUxwLnFiTeskI7jKOQALAt50eq +p9puo2Cql6/y4rh8LZ/aOOpONrlzsA0wK2bi0pGtTKOdY4Vjt3SdUkUHv4QxDYd suDugktsW4Eadk+VldrUJJo+16vSUzhfyy8ayE+Hid6tak+qud1PtShQZ6QEemlQ Tv6+okhfO0p2DZL7lrX4SP9dpR5VQw== =odsS -----END PGP SIGNATURE----- --=-=-=--