Subject: Re: bug#40872: First installed package on guix system is not instantly usable

From: Marius Bakke <[email-masked]>
Date: Tue, 28 Apr 2020 18:12:25 +0200

Stefan <[email-masked]> writes:

> Hi!
>
> I have a guix system and my user account has no package installed yet. After installing the first package – git-minimal in my case – this message is printed and I get this error when trying to use the new command:
>
> building profile with 1 package...
> Hinweis: Vielleicht möchten Sie die nötigen Umgebungsvariablen festlegen, indem Sie dies ausführen:
>
>      GUIX_PROFILE="/home/stefan/.guix-profile"
>      . "$GUIX_PROFILE/etc/profile"
>
> Sie können sie auch mit `guix package --search-paths -p "/home/stefan/.guix-profile"' nachlesen.
>
> stefan@guix ~$ git show
> -bash: git: Kommando nicht gefunden.
>
>
> The problem is that without a single package installed there is no user profile-link present:
>
>
> stefan@guix ~$ echo $PATH
> /run/setuid-programs:/home/stefan/.config/guix/current/bin:/run/current-system/profile/bin:/run/current-system/profile/sbin

This is odd, as /etc/profile contains a workaround for this exact
problem (notice the else clause):

# Arrange so that ~/.config/guix/current comes first.
for profile in "$HOME/.guix-profile" "$HOME/.config/guix/current"
do
  if [ -f "$profile/etc/profile" ]
  then
    # Load the user profile's settings.
    GUIX_PROFILE="$profile" ; \
    . "$profile/etc/profile"
  else
    # At least define this one so that basic things just work
    # when the user installs their first package.
    export PATH="$profile/bin:$PATH"
  fi
done

Can you investigate why this is ineffective on your system?