GNU bug report logs - #63009
<guix-home>/profile/bin missing from PATH for ssh commands

Previous Next

Package: guix;

Reported by: Janneke Nieuwenhuizen <janneke <at> gnu.org>

Date: Sat, 22 Apr 2023 08:20:01 UTC

Severity: normal

Tags: patch

Done: Janneke Nieuwenhuizen <janneke <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Janneke Nieuwenhuizen <janneke <at> gnu.org>
To: 63009 <at> debbugs.gnu.org
Subject: bug#63009: <guix-home>/profile/bin missing from PATH for ssh commands
Date: Sat, 22 Apr 2023 10:19:45 +0200
[Message part 1 (text/plain, inline)]
Hi,

Yesterday I updated my account on our 'kluit' server to use guix home,
and found that broke pushing to my git archives.  Apparently, my git
installed as a guix home package is not seen for ssh commands.

--8<---------------cut here---------------start------------->8---
$ ssh kluit type -p git
[1]10:13:59 janneke <at> drakenpad:~
$ ssh kluit echo '$PATH'
/run/setuid-programs:/home/janneke/.config/guix/current/bin:/home/janneke/.guix-profile/bin:/run/current-system/profile/bin:/run/current-system/profile/sbin
--8<---------------cut here---------------end--------------->8---

See?  Although there is no "/home/janneke/.guix-profile/bin", it is
still present in PATH, while "/home/janneke/.guix-home/profile/bin" is
missing!

Also (re-)installing git in my home profile again (ugh!) is a workaround
to fix this:

--8<---------------cut here---------------start------------->8---
$ ssh kluit type -p git
/home/janneke/.guix-profile/bin/git
10:14:52 janneke <at> drakenpad:~
--8<---------------cut here---------------end--------------->8---

The attached patch has a fix for this.  WYDT?

Greetings,
Janneke

[0001-gnu-system-Cater-for-Guix-Home-in-PATH.patch (text/x-patch, inline)]
From 2ac41477dad5699b748acfc72d4e91e0e14fa16a Mon Sep 17 00:00:00 2001
From: Janneke Nieuwenhuizen <janneke <at> gnu.org>
Date: Sat, 22 Apr 2023 09:58:48 +0200
Subject: [PATCH] gnu: system: Cater for Guix Home in PATH.

* gnu/system.scm (operating-system-etc-service): Also add a user's
<guix-home>/profile/bin directory to PATH, before <guix-profile>/bin.
---
 gnu/system.scm | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/gnu/system.scm b/gnu/system.scm
index c17c6e4e98..df1e4e8640 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -10,7 +10,7 @@
 ;;; Copyright © 2020, 2021 Brice Waegeneire <brice <at> waegenei.re>
 ;;; Copyright © 2020 Florian Pelz <pelzflorian <at> pelzflorian.de>
 ;;; Copyright © 2020, 2022 Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
-;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <jannek <at> gnu.org>
+;;; Copyright © 2020, 2023 Jan (janneke) Nieuwenhuizen <jannek <at> gnu.org>
 ;;; Copyright © 2020, 2022 Efraim Flashner <efraim <at> flashner.co.il>
 ;;; Copyright © 2021 Maxime Devos <maximedevos <at> telenet.be>
 ;;; Copyright © 2021 raid5atemyhomework <raid5atemyhomework <at> protonmail.com>
@@ -1037,8 +1037,11 @@ (define* (operating-system-etc-service os)
   export `cat /etc/environment | cut -d= -f1`
 fi
 
-# Arrange so that ~/.config/guix/current comes first.
-for profile in \"$HOME/.guix-profile\" \"$HOME/.config/guix/current\"
+# Arrange so that ~/.config/guix/current comes first,
+# and guix-home comes before guix-profile.
+for profile in \"$HOME/.guix-profile\"        \\
+               \"$HOME/.guix-home/profile\"   \\
+               \"$HOME/.config/guix/current\"
 do
   if [ -f \"$profile/etc/profile\" ]
   then
-- 
2.39.2

[Message part 3 (text/plain, inline)]
-- 
Janneke Nieuwenhuizen <janneke <at> gnu.org>  | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com

This bug report was last modified 62 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.