GNU bug report logs -
#38391
Issues with Environment Variables
Previous Next
Reported by: anon987321 <anon987321 <at> firemail.cc>
Date: Tue, 26 Nov 2019 19:37:01 UTC
Severity: normal
Done: Marius Bakke <mbakke <at> fastmail.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your message dated Thu, 28 Nov 2019 16:04:21 +0100
with message-id <874kyo6o0a.fsf <at> devup.no>
and subject line Re: bug#38391: Issues with Environment Variables
has caused the debbugs.gnu.org bug report #38391,
regarding Issues with Environment Variables
to be marked as done.
(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)
--
38391: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=38391
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
I have had a few issues with environment variables with Guix under
Ubuntu 18.04 lately.
The issue with locales isn't fixed with only
$ guix install glibc-locales
$ export GUIX_LOCPATH=$HOME/.guix-profile/lib/locale
but rather, also requires
$ export LANG=en_US.UTF-8
$ export LC_ALL=en_US.UTF-8
This issue was actually messing up with some programs installed with
Guix. The Perl binary wouldn't work at all until i added those
variables.
I had two issues caused by ~/.guix-profile/etc/profile. First, Emacs's
Semantic mode started having issues with GNU Global (both Emacs and
global were installed with guix). It would complain about not knowing
where global were located, with `/bin/bash global No Such File or
Directory`. I did `which global`, revealing it was under
/gnu/store/*hash*-global-6.6.3/bin/global. It seems Emacs didn't work
well with looking for global directly under /gnu/store. I did set my
$PATH to ~/.guix-profile/bin, but sourcing ~/.guix-profile/etc/profile
caused it to add a /gnu/store/*hash*-profile to my $PATH, and this
caused issues as the path wouldn't change even if i tried changing
generations for my profile, doing rollbacks and all. If i tried to
remove global, it would still be there under the same hash which was on
$PATH, and Emacs would only work correctly if i launched it without
sourcing ~/.guix-profile/etc/profile. I ended up removing guix
completely and reinstalling it in order for it to fix
Then, a bit later, i had another issue. I use Stumpwm, and it stopped
working because SBCL started complaining that $XDG_DATA_DIRS was set to
~/.guix-profile//share (yes, double /), and it wanted an absolute
path. Again the PATH i had set up "~/.guix-profile/share" was correct,
but ~/.guix-profile/etc/profile was setting up another hash path that
messed up with SBCL. After i removed the
`source ~/.guix-profile/etc/profile` entry from my .profile, with a bit
of work, i got stump working again (probably would have fixed the issue
with GNU Global).
My $GUIX_PROFILE is set to /home/user/.guix-profile
I am currently not sourcing ~/.guix-profile/etc/profile, and instead
exporting the variables by hand on my .profile. It seems to work
correctly this way, but is not intuitive, and the original way caused
lots of issues.
[Message part 3 (message/rfc822, inline)]
[Message part 4 (text/plain, inline)]
Hi anon987321 (if that is your real name),
anon987321 <anon987321 <at> firemail.cc> writes:
> I had two issues caused by ~/.guix-profile/etc/profile. First, Emacs's
> Semantic mode started having issues with GNU Global (both Emacs and
> global were installed with guix). It would complain about not knowing
> where global were located, with `/bin/bash global No Such File or
> Directory`. I did `which global`, revealing it was under
> /gnu/store/*hash*-global-6.6.3/bin/global. It seems Emacs didn't work
> well with looking for global directly under /gnu/store. I did set my
> $PATH to ~/.guix-profile/bin, but sourcing ~/.guix-profile/etc/profile
> caused it to add a /gnu/store/*hash*-profile to my $PATH, and this
> caused issues as the path wouldn't change even if i tried changing
> generations for my profile, doing rollbacks and all. If i tried to
> remove global, it would still be there under the same hash which was on
> $PATH, and Emacs would only work correctly if i launched it without
> sourcing ~/.guix-profile/etc/profile. I ended up removing guix
> completely and reinstalling it in order for it to fix
If you set GUIX_PROFILE=~/.guix-profile before sourcing the profile, the
exported variables will refer to that instead of just the _current_
generation (at the time of sourcing). It's not very obvious,
improvements to the manual are welcome. :-)
This topic is better suited for help-guix <at> gnu.org, so I'm closing the
bug report.
Hope this helps,
Marius
[signature.asc (application/pgp-signature, inline)]
This bug report was last modified 5 years and 236 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.