GNU bug report logs - #59474
Guix Home generated .profile sets XDG_ vars that break GDM+Gnome login on foreign distros

Previous Next

Package: guix;

Reported by: Matt Armstrong <matt <at> rfc20.org>

Date: Tue, 22 Nov 2022 06:03:01 UTC

Severity: normal

Done: Andrew Tropin <andrew <at> trop.in>

Bug is archived. No further changes may be made.

Full log


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

From: Liliana Marie Prikler <liliana.prikler <at> ist.tugraz.at>
To: 59474 <at> debbugs.gnu.org
Subject: Re: Guix Home generated .profile sets XDG_ vars that break
 GDM+Gnome login on foreign distros
Date: Tue, 22 Nov 2022 08:09:47 +0100
Am Montag, dem 21.11.2022 um 22:02 -0800 schrieb Matt Armstrong:
> The first thing I see is that $HOME/.guix-home/seutp-environment is
> modifying various XDG_ variables incorrectly.  It prepends new values
> without honor the variable's default value if it doesn't happen to be
> set already.
This is a known problem with Debian.  Unlike Ubuntu, which relies on
Flatpak and Snaps for its basic operations, Debian doesn't and hence
hasn't set up these variables explicitly.  Note that this isn't unique
to Guix Home or even just Guix.

> For example, if XDG_DATA_DIRS is not set its default value is
> "/usr/local/share/:/usr/share/".
None of these directories exist in Guix System.  Assuming them would be
a fault.  Note that the install script you're meant to use already
initializes these variables since July [1].

> XDG_STATE_HOME is set to a non-standard value.  In the current XDG
> Base Directory Specification it defaults to "$HOME/.local/state", but
> Guix Home sets it to "$HOME/.local/var/lib".
This is a genuine bug with Guix Home.

> XDG_LOG_HOME is a non-standard variable.  The spec suggests that logs
> should go in XDG_STATE_HOME.  Why not a establish a GUIX_LOG_HOME
> variable instead?  (if it ever does become a standard XDG variable,
> its default may not be the same one picked by Guix Home, causing the
> same issue as above).
Another genuine bug with Guix Home, although the variable does predate
our support for XDG_STATE_HOME.  I suggest finding all uses of this
variable in Guix Home and replacing them accordingly.

> Setting XDG_RUNTIME_DIR is not something I would expect Guix Home to
> do -- it is the job of whatever logs the user in.
I'm unsure about that one.

> XDG_CACHE_HOME, XDG_CONFIG_HOME, XDG_DATA_HOME are set to their
> defaults unnecessarily.
Explicit is better than implicit.

Cheers


[1]
http://git.savannah.gnu.org/cgit/guix.git/commit/?id=23aafc800c9e678662766440916449ec5bbce830





This bug report was last modified 2 years and 81 days ago.

Previous Next


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