Subject: [PATCH] home: Load system profile in setup-environment.

From: Antero Mejr <[email-masked]>
Date: Thu, 26 Dec 2024 18:27:30 -0500

This ensures packages installed with `guix install` are available on
$PATH when using Guix home with a foreign distro.

* gnu/home/services.scm (environment-variables->setup-environment-script):
Load system profile while loading home profile in setup-environment.

Change-Id: I96b047b92f3c050b15e521fecc96740390cae2ca
---
 gnu/home/services.scm | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/gnu/home/services.scm b/gnu/home/services.scm
index 39c9033ad6..1cf5ce0835 100644
--- a/gnu/home/services.scm
+++ b/gnu/home/services.scm
@@ -268,8 +268,6 @@ (define (environment-variables->setup-environment-script vars)
    %store-monad
    (return
     `(("setup-environment"
-       ;; TODO: It's necessary to source ~/.guix-profile too
-       ;; on foreign distros
        ,(computed-file "setup-environment"
                        #~(call-with-output-file #$output
                            (lambda (port)
@@ -280,6 +278,10 @@ (define (environment-variables->setup-environment-script vars)
 PROFILE_FILE=\"$HOME_ENVIRONMENT/profile/etc/profile\"
 [ -f $PROFILE_FILE ] && . $PROFILE_FILE
 
+SYSTEM_ENVIRONMENT=$HOME/.guix-profile
+SYSTEM_PROFILE_FILE=\"$SYSTEM_ENVIRONMENT/etc/profile\"
+[ -f $SYSTEM_PROFILE_FILE ] && . $SYSTEM_PROFILE_FILE
+
 case $XDG_DATA_DIRS in
   *$HOME_ENVIRONMENT/profile/share*) ;;
   *) export XDG_DATA_DIRS=$HOME_ENVIRONMENT/profile/share:$XDG_DATA_DIRS ;;

base-commit: e4bdd464ebb49f4e698e5105f70b29688fff9475
-- 
2.47.1