GNU bug report logs - #45360
Cannot log in to GNOME on foreign distro with Guix

Previous Next

Package: guix;

Reported by: Evan Straw <evan.straw99 <at> gmail.com>

Date: Tue, 22 Dec 2020 05:39:02 UTC

Severity: normal

To reply to this bug, email your comments to 45360 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#45360; Package guix. (Tue, 22 Dec 2020 05:39:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Evan Straw <evan.straw99 <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Tue, 22 Dec 2020 05:39:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Evan Straw <evan.straw99 <at> gmail.com>
To: bug-guix <at> gnu.org
Subject: Cannot log in to GNOME on foreign distro with Guix
Date: Mon, 21 Dec 2020 21:38:47 -0800
[Message part 1 (text/plain, inline)]
 Hello,

I'm running Ubuntu 20.04.1 LTS with Guix installed on top as a package
manager.

--8<---------------cut here---------------start------------->8---
evan <at> navi:~$ guix describe
Generation 30	Dec 21 2020 13:21:53	(current)
  guix f00e68a
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: master
    commit: f00e68ace070fd5240a4b5874e61c26f6e909b6c
  personal bd255b1
    repository URL: https://git.sr.ht/~estraw/guix-channel
    branch: master
    commit: bd255b10b22e612971bd8daf9c2ab3d3014a0b7c
--8<---------------cut here---------------end--------------->8---


One day, I went to log in after rebooting my PC (I had performed a `guix
pull` the same day) and upon entering my password, I was just brought
immediately back to the login screen. Checking the system journal, I
found that gnome-session is outputting several errors like

--8<---------------cut here---------------start------------->8---
Dec 17 22:27:14 navi gnome-session[24407]: gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.A11ySettings'
Dec 17 22:27:14 navi gnome-session[24407]: gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.Color'
Dec 17 22:27:14 navi gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.A11ySettings'
Dec 17 22:27:14 navi gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.Color'
Dec 17 22:27:14 navi gnome-session[24407]: gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.Datetime'
Dec 17 22:27:14 navi gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.Datetime'
Dec 17 22:27:14 navi gnome-session[24407]: gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.Housekeeping'
Dec 17 22:27:14 navi gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.Housekeeping'
Dec 17 22:27:14 navi gnome-session[24407]: gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.Keyboard'
Dec 17 22:27:14 navi gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.Keyboard'
Dec 17 22:27:14 navi gnome-session[24407]: gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.MediaKeys'
Dec 17 22:27:14 navi gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.MediaKeys'
Dec 17 22:27:14 navi gnome-session[24407]: gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.Power'
Dec 17 22:27:14 navi gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.Power'
Dec 17 22:27:14 navi gnome-session[24407]: gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.PrintNotifications'
Dec 17 22:27:14 navi gnome-session[24407]: gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.Rfkill'
Dec 17 22:27:14 navi gnome-session[24407]: gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.ScreensaverProxy'
Dec 17 22:27:14 navi gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.PrintNotifications'
Dec 17 22:27:14 navi gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.Rfkill'
Dec 17 22:27:14 navi gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.ScreensaverProxy'
Dec 17 22:27:14 navi gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.Sharing'
Dec 17 22:27:14 navi gnome-session[24407]: gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.Sharing'
Dec 17 22:27:14 navi gnome-session[24407]: gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.Smartcard'
Dec 17 22:27:14 navi gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.Smartcard'
Dec 17 22:27:14 navi gnome-session[24407]: gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.Sound'
Dec 17 22:27:14 navi gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.Sound'
Dec 17 22:27:14 navi gnome-session[24407]: gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.Wacom'
Dec 17 22:27:14 navi gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.Wacom'
Dec 17 22:27:14 navi gnome-session[24407]: gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.XSettings'
Dec 17 22:27:14 navi gnome-session[24407]: gnome-session-binary[24407]: CRITICAL: We failed, but the fail whale is dead. Sorry....
Dec 17 22:27:14 navi gnome-session-binary[24407]: WARNING: Unable to find required component 'org.gnome.SettingsDaemon.XSettings'
Dec 17 22:27:14 navi gnome-session-binary[24407]: CRITICAL: We failed, but the fail whale is dead. Sorry....
--8<---------------cut here---------------end--------------->8---

When I disable the shell script in /etc/profile.d/ that exports
necessary environment variables for Guix, the problem disappears, and I
am able to log in again, which makes me suspect that maybe some of the
environment variables that Guix sets are confusing GNOME somehow. I'm
not sure if it is caused by one of the packages I have installed from
Guix, but I know that when I limit my profile to only Emacs and the
Emacs packages I have installed from Guix, I am able to log in
again. When I add a package (like stumpwm) that needs to set
XDG_DATA_DIRS, the problem seems to reappear. I also was able to
reproduce the problem on another machine I have that runs the same
operating system and also has Guix.

Is this a bug, or is it possible I've just misconfigured something?
Please let me know if I'm missing any needed information and I'll do my
best to provide it.

-- Evan Straw <evan.straw99 <at> gmail.com>
[signature.asc (application/pgp-signature, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#45360; Package guix. (Tue, 22 Dec 2020 11:43:01 GMT) Full text and rfc822 format available.

Message #8 received at 45360 <at> debbugs.gnu.org (full text, mbox):

From: Carlo Zancanaro <carlo <at> zancanaro.id.au>
To: Evan Straw <evan.straw99 <at> gmail.com>
Cc: 45360 <at> debbugs.gnu.org
Subject: Re: bug#45360: Cannot log in to GNOME on foreign distro with Guix
Date: Tue, 22 Dec 2020 22:42:25 +1100
Hi Evan!

On Tue, Dec 22 2020, Evan Straw wrote:
> ... When I add a package (like stumpwm) that needs to set 
> XDG_DATA_DIRS, the problem seems to reappear. ...

I think I've had this problem in the past. I'm currently running 
on a foreign distribution, and I have this in my ~/.profile file:

   # XDG_DATA_DIRS often starts off empty, but an empty value is
   # interpreted as this value. Loading a profile can set it, 
   though,
   # which effectively ignores the default value. We want it to
   # instead add to the default, so we set it here to the default
   # value.
   if [ -z "$XDG_DATA_DIRS" ]; then
       export XDG_DATA_DIRS="/usr/local/share/:/usr/share/"
   fi

I think I took the default value from 
https://specifications.freedesktop.org/basedir-spec/latest/ar01s03.html 
where it says:

   If $XDG_DATA_DIRS is either not set or empty, a value equal to 
   /usr/local/share/:/usr/share/ should be used.

I hope that helps!

> Is this a bug, or is it possible I've just misconfigured 
> something?

We should consider this a bug, because Guix's attempt to add to 
the XDG_DATA_DIRS environment variable clobbers the default value 
that foreign distributions are relying on.

We should at least document this in the manual, maybe in "(guix) 
Application Setup".

Carlo




Information forwarded to bug-guix <at> gnu.org:
bug#45360; Package guix. (Tue, 22 Dec 2020 12:35:01 GMT) Full text and rfc822 format available.

Message #11 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Ricardo Wurmus <rekado <at> elephly.net>
To: Carlo Zancanaro <carlo <at> zancanaro.id.au>
Cc: bug-guix <at> gnu.org, Evan Straw <evan.straw99 <at> gmail.com>,
 45360 <at> debbugs.gnu.org
Subject: Re: bug#45360: Cannot log in to GNOME on foreign distro with Guix
Date: Tue, 22 Dec 2020 13:34:22 +0100
Carlo Zancanaro <carlo <at> zancanaro.id.au> writes:

>> Is this a bug, or is it possible I've just misconfigured something?
>
> We should consider this a bug, because Guix's attempt to add to the
> XDG_DATA_DIRS environment variable clobbers the default value that
> foreign distributions are relying on.

Is this something we can avoid by patching … something to use a
Guix-specific variable?  This variable can cause a lot of trouble when
using Guix on foreign distros, but I don’t know how we can prevent
system software from loading stuff from XDG_DATA_DIRS for Guix and vice
versa without renaming the variables.

A related question: should Guix software ignore XDG_DATA_DIRS when set
by the system?  Or is it enough to make it respect an *additional*
variable like GUIX_XDG_DATA_DIRS, which we would have Guix set?

> We should at least document this in the manual, maybe in "(guix)
> Application Setup".

If it’s an easy workaround: yes.  But if it’s a bug we can actually fix
I’d rather see it fixed :)

-- 
Ricardo




Information forwarded to bug-guix <at> gnu.org:
bug#45360; Package guix. (Tue, 22 Dec 2020 12:35:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-guix <at> gnu.org:
bug#45360; Package guix. (Tue, 22 Dec 2020 13:41:02 GMT) Full text and rfc822 format available.

Message #17 received at 45360 <at> debbugs.gnu.org (full text, mbox):

From: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
To: Ricardo Wurmus <rekado <at> elephly.net>
Cc: Carlo Zancanaro <carlo <at> zancanaro.id.au>, evan.straw99 <at> gmail.com,
 45360 <at> debbugs.gnu.org
Subject: Re: bug#45360: Cannot log in to GNOME on foreign distro with Guix
Date: Tue, 22 Dec 2020 14:40:01 +0100
Hello,

Ricardo Wurmus <rekado <at> elephly.net> writes:

> Carlo Zancanaro <carlo <at> zancanaro.id.au> writes:

>> We should consider this a bug, because Guix's attempt to add to the
>> XDG_DATA_DIRS environment variable clobbers the default value that
>> foreign distributions are relying on.
>
> Is this something we can avoid by patching … something to use a
> Guix-specific variable?  This variable can cause a lot of trouble when
> using Guix on foreign distros, but I don’t know how we can prevent
> system software from loading stuff from XDG_DATA_DIRS for Guix and vice
> versa without renaming the variables.
>
> A related question: should Guix software ignore XDG_DATA_DIRS when set
> by the system?  Or is it enough to make it respect an *additional*
> variable like GUIX_XDG_DATA_DIRS, which we would have Guix set?
>
>> We should at least document this in the manual, maybe in "(guix)
>> Application Setup".
>
> If it’s an easy workaround: yes.  But if it’s a bug we can actually fix
> I’d rather see it fixed :)

I don't think this would be a sufficient workaround anyway. It seems
related to bug 35308 (<http://issues.guix.info/35308>) where
GI_TYPELIB_PATH is also involved.

Regards,
-- 
Nicolas Goaziou




Information forwarded to bug-guix <at> gnu.org:
bug#45360; Package guix. (Wed, 30 Dec 2020 02:30:02 GMT) Full text and rfc822 format available.

Message #20 received at 45360 <at> debbugs.gnu.org (full text, mbox):

From: Evan Straw <evan.straw99 <at> gmail.com>
To: 45360 <at> debbugs.gnu.org
Cc: Ricardo Wurmus <rekado <at> elephly.net>,
 Carlo Zancanaro <carlo <at> zancanaro.id.au>,
 Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
Subject: Re: bug#45360: Cannot log in to GNOME on foreign distro with Guix
Date: Tue, 29 Dec 2020 18:29:41 -0800
[Message part 1 (text/plain, inline)]
Hello,

I have more information on this bug. Apologies for the delay. I've been
able to narrow the problem down to a single package - when I install
sbcl, I am unable to log in, and when I uninstall sbcl, the problem
disappears, and I am able to log in normally. Even using a profile with
only the sbcl package, the problem occurs. I checked out the package
definition for sbcl and it seems to set both XDG_CONFIG_DIRS and
XDG_DATA_DIRS, so maybe that's where the problem is? I'm not really sure
what causes this, however; that's just a guess.

Hope this helps narrow it down more. If I can provide any more
information please let me know.

-- Evan

[signature.asc (application/pgp-signature, inline)]

This bug report was last modified 3 years and 127 days ago.

Previous Next


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