From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id cLyeKiIwr160WQAA0tVLHw (envelope-from ) for ; Sun, 03 May 2020 20:57:06 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id eCSWHSwwr16mDgAAB5/wlQ (envelope-from ) for ; Sun, 03 May 2020 20:57:16 +0000 Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:470:142::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 673CF941842 for ; Sun, 3 May 2020 20:57:15 +0000 (UTC) Received: from localhost ([::1]:42808 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jVLfn-00083s-Pa for larch@yhetil.org; Sun, 03 May 2020 16:57:15 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:48384) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jVLfT-00083X-Hj for guix-devel@gnu.org; Sun, 03 May 2020 16:56:55 -0400 Received: from cascadia.aikidev.net ([173.255.214.101]:56168) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jVLfS-0002qO-Bu; Sun, 03 May 2020 16:56:55 -0400 Received: from localhost (unknown [IPv6:2600:3c01:e000:21:21:21:0:100e]) (Authenticated sender: vagrant@cascadia.debian.net) by cascadia.aikidev.net (Postfix) with ESMTPSA id 4133E1A9BD; Sun, 3 May 2020 13:56:49 -0700 (PDT) From: Vagrant Cascadian To: Ludovic =?utf-8?Q?Court=C3=A8s?= , sirgazil Subject: Re: Adding a subcommand "load-profile" In-Reply-To: <87ftcgwyjq.fsf@gnu.org> References: <490f77b9f9b0829f985ba717f6fbe008f54a816d.camel@gnu.org> <171c1dae752.b806970b21211.4448157853317564236@zoho.com> <87ftcgwyjq.fsf@gnu.org> Date: Sun, 03 May 2020 13:56:43 -0700 Message-ID: <875zdcivp0.fsf@ponder> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" Received-SPF: none client-ip=173.255.214.101; envelope-from=vagrant@debian.org; helo=cascadia.aikidev.net X-detected-operating-system: by eggs.gnu.org: First seen = 2020/05/03 16:56:49 X-ACL-Warn: Detected OS = Linux 3.11 and newer [fuzzy] X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, URIBL_BLOCKED=0.001 autolearn=_AUTOLEARN X-Spam_action: no action 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-Scanner: scn0 X-Spam-Score: -2.61 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 2001:470:142::17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Scan-Result: default: False [-2.61 / 13.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; GENERIC_REPUTATION(0.00)[-0.49408740569143]; DWL_DNSWL_FAIL(0.00)[2001:470:142::17:server fail]; R_SPF_ALLOW(-0.20)[+ip6:2001:470:142::/48:c]; IP_REPUTATION_HAM(0.00)[asn: 22989(0.14), country: US(-0.00), ip: 2001:470:142::17(-0.49)]; TO_DN_ALL(0.00)[]; MX_GOOD(-0.50)[cached: eggs.gnu.org]; MAILLIST(-0.20)[mailman]; SIGNED_PGP(-2.00)[]; FREEMAIL_TO(0.00)[gnu.org,zoho.com]; RCVD_IN_DNSWL_FAIL(0.00)[2001:470:142::17:server fail]; RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; ASN(0.00)[asn:22989, ipnet:2001:470:142::/48, country:US]; R_DKIM_NA(0.00)[]; TAGGED_FROM(0.00)[larch=yhetil.org]; ARC_NA(0.00)[]; RCVD_COUNT_FIVE(0.00)[5]; URIBL_BLOCKED(0.00)[zoho.com:email,gnu.org:email]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; FROM_NEQ_ENVFROM(0.00)[vagrant@debian.org,guix-devel-bounces@gnu.org]; MIME_GOOD(-0.20)[multipart/signed,text/plain]; DMARC_NA(0.00)[debian.org]; HAS_LIST_UNSUB(-0.01)[]; FORGED_RECIPIENTS_MAILLIST(0.00)[]; MID_RHS_NOT_FQDN(0.50)[]; FORGED_SENDER_MAILLIST(0.00)[] X-TUID: SEwpWeq5UDqU --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 2020-05-03, Ludovic Court=C3=A8s wrote: > sirgazil skribis: >> ---- On Tue, 28 Apr 2020 22:42:53 +0000 Roel Janssen wro= te ---- >> > We added a subcommand in the "guixr" script called "load-profile". I= t allows a >> > user to do the following: >> > ---------------------------------------------------------------------= ----------- >> > $ guixr package -i ... -p /my/profile >> > $ guixr load-profile /my/profile >> > [env]$ >> > # ... A new shell is spawned here. >> > # Inside this shell only the environment variables in >> > # /my/profile/etc/profile are set ... >> > [env]$ exit >> > # Return to the normal shell state=20 >> > ---------------------------------------------------------------------= ----------- > > [...] > >> Personally, I think managing Guix profiles is currently difficult, and I= would like to have commands like this one to make it easier. > > I=E2=80=99m interested in your feedback then. > > To me, there are already several ways to do that, notably: > > 1. guix environment (but it=E2=80=99s slower) > > 2. sh > . /my/profile/etc/profile.sh > exit > > 3. sh > eval `guix package -p /my/profile --search-paths` > exit > > Options #2 and #3 are more verbose, and less obvious to someone not > familiar with the shell. The only way i understand how to trivially get a precise environment is "guix environment --pure --ad-hoc package1, package2, ... packageN" Don't options #2 and #3 also include everything from the default profile and system profile? I like the ability to maintain separate profiles and run "guix upgrade =2Dp my/profile" on each profile, but I haven't figured out how to get something equivalent to "guix environment --pure --profile my/profile". I find this useful when updating diffoscope or reprotest packages, which tend to have a lot of suggested optional packages that aren't really hard dependencies. This looks "load-profile" subcommand seems to attempting to meet that use-case, if I'm reading it correctly? live well, vagrant --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iHUEARYKAB0WIQRlgHNhO/zFx+LkXUXcUY/If5cWqgUCXq8wDAAKCRDcUY/If5cW ql9fAQCJtcFnRuSWEWvULARq9+/QrAwVrht6772Mtrt8PeCGvAD/SrBR6bUr2sIe 6PKnk/lFASDjOjEBAblDU/7WPonyBgU= =dzp0 -----END PGP SIGNATURE----- --=-=-=--