From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id sNY+DRti71/8BAAA0tVLHw (envelope-from ) for ; Fri, 01 Jan 2021 17:55:39 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id ijn3CBti71/CawAAbx9fmQ (envelope-from ) for ; Fri, 01 Jan 2021 17:55:39 +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 ADDC09402D4 for ; Fri, 1 Jan 2021 17:55:38 +0000 (UTC) Received: from localhost ([::1]:58600 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kvOeH-0002j5-Kn for larch@yhetil.org; Fri, 01 Jan 2021 12:55:37 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53578) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kvOdi-0002ik-F3 for guix-patches@gnu.org; Fri, 01 Jan 2021 12:55:02 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:51451) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kvOdi-0002Vn-7D for guix-patches@gnu.org; Fri, 01 Jan 2021 12:55:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kvOdi-0000Zr-5i for guix-patches@gnu.org; Fri, 01 Jan 2021 12:55:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#45600] [PATCH] /etc/profile.d/guix.sh: Add guix pull profile even when absent Resent-From: Jakub =?UTF-8?Q?K=C4=85dzio=C5=82ka?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 01 Jan 2021 17:55:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 45600 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 45600@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.16095236432135 (code B ref -1); Fri, 01 Jan 2021 17:55:01 +0000 Received: (at submit) by debbugs.gnu.org; 1 Jan 2021 17:54:03 +0000 Received: from localhost ([127.0.0.1]:34762 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kvOcl-0000YN-Ad for submit@debbugs.gnu.org; Fri, 01 Jan 2021 12:54:03 -0500 Received: from lists.gnu.org ([209.51.188.17]:52734) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kvOcj-0000Y5-MU for submit@debbugs.gnu.org; Fri, 01 Jan 2021 12:54:02 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53454) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kvOcj-0002dJ-Bn for guix-patches@gnu.org; Fri, 01 Jan 2021 12:54:01 -0500 Received: from pat.zlotemysli.pl ([37.59.186.212]:34294) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kvOcg-0002SF-So for guix-patches@gnu.org; Fri, 01 Jan 2021 12:54:01 -0500 Received: (qmail 6806 invoked by uid 1009); 1 Jan 2021 18:53:50 +0100 Received: from 188.123.215.55 (kuba@kadziolka.net@188.123.215.55) by pat.zlotemysli.pl (envelope-from , uid 1002) with qmail-scanner-2.08st (clamdscan: 0.98.6/26034. spamassassin: 3.4.0. perlscan: 2.08st. Clear:RC:1(188.123.215.55):. Processed in 0.036498 secs); 01 Jan 2021 17:53:50 -0000 Received: from unknown (HELO localhost.localdomain) (kuba@kadziolka.net@188.123.215.55) by pat.zlotemysli.pl with AES256-SHA encrypted SMTP; 1 Jan 2021 18:53:50 +0100 From: Jakub =?UTF-8?Q?K=C4=85dzio=C5=82ka?= Date: Fri, 1 Jan 2021 18:53:47 +0100 Message-Id: <20210101175347.1736-1-kuba@kadziolka.net> X-Mailer: git-send-email 2.29.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Qmailux-2.08st: added fake Content-Type header Content-Type: text/plain Received-SPF: none client-ip=37.59.186.212; envelope-from=kuba@kadziolka.net; helo=pat.zlotemysli.pl 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, SPF_HELO_PASS=-0.001, SPF_NONE=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Migadu-Flow: FLOW_IN X-Migadu-Spam-Score: 1.17 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Queue-Id: ADDC09402D4 X-Spam-Score: 1.17 X-Migadu-Scanner: scn1.migadu.com X-TUID: EmIIqe7qBbpw After initial installation on a foreign distro, the guix pull profile won't be present in path. This means that the first guix pull won't take effect until the shell is restarted. ~/.guix-profile cannot be pre-loaded like this as the relevant paths are stored in ~/.guix-profile/etc/profile, which simply won't exist. However, guix package will output a relevant hint that instructs the user to reload the profile, so this isn't a problem. --- Note on testing: I have verified that non-existent directories are harmless when included in $PATH and $INFOPATH. However, fully testing this change requires setting up a virtual machine and installing Guix on it, which I cannot do right now. etc/guix-install.sh | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/etc/guix-install.sh b/etc/guix-install.sh index 9015f40bb6..69b8b88847 100755 --- a/etc/guix-install.sh +++ b/etc/guix-install.sh @@ -454,14 +454,12 @@ sys_create_init_profile() cat <<"EOF" > /etc/profile.d/guix.sh # _GUIX_PROFILE: `guix pull` profile _GUIX_PROFILE="$HOME/.config/guix/current" -if [ -L $_GUIX_PROFILE ]; then - export PATH="$_GUIX_PROFILE/bin${PATH:+:}$PATH" - # Export INFOPATH so that the updated info pages can be found - # and read by both /usr/bin/info and/or $GUIX_PROFILE/bin/info - # When INFOPATH is unset, add a trailing colon so that Emacs - # searches 'Info-default-directory-list'. - export INFOPATH="$_GUIX_PROFILE/share/info:$INFOPATH" -fi +export PATH="$_GUIX_PROFILE/bin${PATH:+:}$PATH" +# Export INFOPATH so that the updated info pages can be found +# and read by both /usr/bin/info and/or $GUIX_PROFILE/bin/info +# When INFOPATH is unset, add a trailing colon so that Emacs +# searches 'Info-default-directory-list'. +export INFOPATH="$_GUIX_PROFILE/share/info:$INFOPATH" # GUIX_PROFILE: User's default profile GUIX_PROFILE="$HOME/.guix-profile" -- 2.29.2