GNU bug report logs - #77057
gnome-session symbol lookup error on foreign distribution

Previous Next

Package: guix;

Reported by: Roman Riabenko <roman <at> riabenko.com>

Date: Sun, 16 Mar 2025 17:48:02 UTC

Severity: normal

To reply to this bug, email your comments to 77057 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#77057; Package guix. (Sun, 16 Mar 2025 17:48:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Roman Riabenko <roman <at> riabenko.com>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Sun, 16 Mar 2025 17:48:02 GMT) Full text and rfc822 format available.

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

From: Roman Riabenko <roman <at> riabenko.com>
To: bug-guix <at> gnu.org
Subject: gnome-session symbol lookup error on foreign distribution
Date: Sun, 16 Mar 2025 19:46:28 +0200
[Message part 1 (text/plain, inline)]
When using Guix as package manager on a foreign distribution (Pure OS
Byzantium) and after installing some GNOME package (GNOME Web -
Epiphany), it exposes some files, which are processed during the user's
login resulting in a login failure.

Way to reproduce:
$ guix install epiphany
$ sudo reboot

After GDM appears, enter the user password.

Observed result: the screen turns black, then returns to GDM. (If GDM
is not installed and if the phosh service is enabled instead, the
screen remains black after unlocking the drive but turns on and off.)

Expected result: session starting as usual (utilising the host system
files). 

Here is the part of the system log, which appears to be relevant
because it is different between the normal and affected login attempts.
I attach the full logs for reference.

бер 15 21:16:40 pureos /usr/libexec/gdm-wayland-session[1312]: Running compositor on wayland display 'wayland-0'
бер 15 21:16:41 pureos /usr/libexec/gdm-wayland-session[1391]: gsettings: symbol lookup error: /home/purism/.guix-profile/lib/gio/modules/libdconfsettings.so: undefined symbol: g_once_init_enter_pointer
бер 15 21:16:41 pureos gnome-session[1366]: /usr/libexec/gnome-session-binary: symbol lookup error: /home/purism/.guix-profile/lib/gio/modules/libdconfsettings.so: undefined symbol: g_once_init_enter_pointer
бер 15 21:16:42 pureos gdm-password][1219]: pam_unix(gdm-password:session): session closed for user purism
бер 15 21:16:42 pureos gdm3[743]: Gdm: GdmDisplay: Session never registered, failing

$ LC_ALL=C guix describe
Generation 101	Mar 15 2025 14:23:34	(current)
  guix 1bf1daa
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: master
    commit: 1bf1daac77316898d716c27968e4100d8ce464fb
$ uname -a
Linux pureos 6.6.0-1-librem5 #1 SMP PREEMPT Wed Mar 12 17:55:39 EDT 2025 aarch64 GNU/Linux
$ apt show gnome-session | grep Version
Version: 3.38.0-4
$ apt show gdm3 | grep Version
Version: 3.38.2.1-1pureos1
$ echo $PATH
/home/purism/.guix-profile/bin:/home/purism/.guix-profile/sbin:/home/purism/.guix-profile/bin:/home/purism/.guix-profile/sbin:/home/purism/.config/guix/current/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
$ echo $XDG_DATA_DIRS
/usr/share/librem5:/usr/share/librem5:/home/purism/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share/:/usr/share/
$ localectl
   System Locale: LANG=uk_UA.UTF-8
       VC Keymap: us
      X11 Layout: us,ua,gr,ru,fr
     X11 Variant: ,,,,

Roman
[failed-boot.log.gz (application/octet-stream, attachment)]
[normal-boot.log.gz (application/octet-stream, attachment)]
[Message part 4 (application/pgp-signature, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#77057; Package guix. (Thu, 20 Mar 2025 17:04:01 GMT) Full text and rfc822 format available.

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

From: Roman Riabenko <roman <at> riabenko.com>
To: 77057 <at> debbugs.gnu.org
Subject: Re: gnome-session symbol lookup error on foreign distribution
Date: Thu, 20 Mar 2025 19:02:42 +0200
[Message part 1 (text/plain, inline)]
Similar issue reported:
https://lists.gnu.org/archive/html/help-guix/2025-03/msg00151.html

Additional details:

$ echo $GIO_EXTRA_MODULES

$ guix shell epiphany --search-paths
export PATH="/gnu/store/a4pnp03dn5xp16d2w72m0vsfmwlkk0xc-profile/bin${PATH:+:}$PATH"
export XDG_DATA_DIRS="/gnu/store/a4pnp03dn5xp16d2w72m0vsfmwlkk0xc-profile/share${XDG_DATA_DIRS:+:}$XDG_DATA_DIRS"
export GIO_EXTRA_MODULES="/gnu/store/a4pnp03dn5xp16d2w72m0vsfmwlkk0xc-profile/lib/gio/modules${GIO_EXTRA_MODULES:+:}$GIO_EXTRA_MODULES"
$ guix shell epiphany
[env]$ echo $GIO_EXTRA_MODULES
/gnu/store/a4pnp03dn5xp16d2w72m0vsfmwlkk0xc-profile/lib/gio/modules

Roman
[Message part 2 (application/pgp-signature, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#77057; Package guix. (Thu, 20 Mar 2025 20:07:02 GMT) Full text and rfc822 format available.

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

From: Rutherther <rutherther <at> ditigal.xyz>
To: Roman Riabenko <roman <at> riabenko.com>
Cc: help-guix <at> gnu.org, David Lecompte <guix <at> metani.eu>, 77057 <at> debbugs.gnu.org
Subject: Re: Cannot open a MATE session on Trisquel after installing Gajim
 from Guix
Date: Thu, 20 Mar 2025 21:05:55 +0100
Hello,

Roman Riabenko <roman <at> riabenko.com> writes:

> On Wed, 19 Mar 2025 22:33:16 +0100
> Rutherther <rutherther <at> ditigal.xyz> wrote:
>
>> David Lecompte <guix <at> metani.eu> writes:
>
>> > Is it really needed for Gajim?
>> 
>> I think so, but gajim executable is actually wrapped with
>> GIO_EXTRA_MODULES, so it's not necessary to set it from the profile,
>> and ideally all programs from Guix should be wrapped like that.
>
> I observe a similar error on PureOS after installing Epiphany:
> https://issues.guix.gnu.org/77057
>
> Maybe the problem is not with Gajim but an input?

Glib is propagated from inputs, that
is the one adding the GIO_EXTRA_MODULES search path.
It is propagated specifically from (at least) dconf, and from there
it's propagated because dconf.pc file has it in Requires of dconf.pc file.

This error is going to happen every time there is a mismatch in abi between
the apps expected gio module version and actually used version.
This can happen commonly on foreign distros or even on Guix system
if one updates only system, but not home/user profile.
It's going to affect many glib packages as they depend on dconf.

Rutherther




Information forwarded to bug-guix <at> gnu.org:
bug#77057; Package guix. (Tue, 01 Apr 2025 13:29:06 GMT) Full text and rfc822 format available.

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

From: Konrad Hinsen <konrad.hinsen <at> fastmail.net>
To: 77057 <at> debbugs.gnu.org
Subject: GIO_EXTRA_MODULES on foreign distro
Date: Tue, 01 Apr 2025 15:28:19 +0200
Hi everyone,

since my last "guix pull" a few days ago, I get GIO-related error
messages for lots of applications that I installed via apt on my
Debian 12 system. Firefox/librewolf, Thunderbird, Zotero, gajim, ...

It's easy to work around, by wrapping these programs with a shell
script that sets GIO_EXTRA_MODULES to blank. But the sheer number
of programs affected makes this an unpleasant chore.

I doubt there is an easy fix, but in the long run, does it sound doable
to rename environment variables for versioned resources (such as the
Glib ABI in this case) to something that contains the version number?

Cheers,
  Konrad.




This bug report was last modified 131 days ago.

Previous Next


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