Bug 269434 - x11/gnome-shell libsoup-ERROR Using libsoup2 and libsoup3 in the same process is not supported.
Summary: x11/gnome-shell libsoup-ERROR Using libsoup2 and libsoup3 in the same process...
Status: In Progress
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-gnome (Nobody)
URL:
Keywords: regression
Depends on:
Blocks:
 
Reported: 2023-02-09 10:48 UTC by jako.andras
Modified: 2023-06-09 03:20 UTC (History)
3 users (show)

See Also:
nc: maintainer-feedback+


Attachments
show mix soup2 and 3 in libgmodule? (7.83 KB, text/plain)
2023-02-19 01:56 UTC, Paul Dufresne
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description jako.andras 2023-02-09 10:48:29 UTC
After upgrading some ports a few days ago, my gnome desktop cannot start any more. When gdm starts after booting up, I get a white screen with "Oh no! Something has gone wrong." and a sad smiley. I build ports with poudriere. The OS is 13.1-RELEASE-p5 GENERIC amd64. Please tell me what I should do to find the cause of this problem. Thanks!


/var/log/gdm/:0-greeter.log:

dbus-daemon[78560]: [session uid=92 pid=78560] Activating service name='org.a11y.Bus' requested by ':1.0' (uid=92 pid=78887 comm="/usr/local/libexec/gnome-session-check-accelerated")
dbus-daemon[78560]: [session uid=92 pid=78560] Successfully activated service 'org.a11y.Bus'
libmutter-Message: 10:44:25.550: Running GNOME Shell (using mutter 42.4) as a X11 window and compositing manager

** (gnome-shell:79390): WARNING **: 10:44:25.778: ATK Bridge is disabled but a11y has already been enabled.

(gnome-shell:79390): libsoup-ERROR **: 10:44:26.152: libsoup2 symbols detected. Using libsoup2 and libsoup3 in the same process is not supported.
gnome-session-binary 78685 - - WARNING: Application 'org.gnome.Shell.desktop' killed by signal 5
libmutter-Message: 10:44:26.264: Running GNOME Shell (using mutter 42.4) as a X11 window and compositing manager

** (gnome-shell:79439): WARNING **: 10:44:26.461: ATK Bridge is disabled but a11y has already been enabled.

(gnome-shell:79439): libsoup-ERROR **: 10:44:26.702: libsoup2 symbols detected. Using libsoup2 and libsoup3 in the same process is not supported.
gnome-session-binary 78685 - - WARNING: Application 'org.gnome.Shell.desktop' killed by signal 5
gnome-session-binary 78685 - - WARNING: App 'org.gnome.Shell.desktop' respawning too quickly
dbus-daemon[78560]: [session uid=92 pid=78560] Activating service name='ca.desrt.dconf' requested by ':1.6' (uid=92 pid=78685 comm="/usr/local/libexec/gnome-session-binary --autostar")
dbus-daemon[78560]: [session uid=92 pid=78560] Successfully activated service 'ca.desrt.dconf'

(process:80137): libsoup-ERROR **: 10:44:26.799: libsoup2 symbols detected. Using libsoup2 and libsoup3 in the same process is not supported.
gnome-session-failed: environment corrupt; missing value for GNOME_SESSION_AUTOSTART_DIR
gnome-session-binary 78685 - - WARNING: Application 'org.gnome.SettingsDaemon.Datetime.desktop' killed by signal 5

(process:80753): libsoup-ERROR **: 10:44:26.810: libsoup2 symbols detected. Using libsoup2 and libsoup3 in the same process is not supported.
gnome-session-binary 78685 - - WARNING: Application 'org.gnome.SettingsDaemon.Datetime.desktop' killed by signal 5
gnome-session-binary 78685 - - WARNING: App 'org.gnome.SettingsDaemon.Datetime.desktop' respawning too quickly
dbus-daemon[79225]: Activating service name='org.a11y.atspi.Registry' requested by ':1.4' (uid=92 pid=79872 comm="/usr/local/libexec/gsd-keyboard")
dbus-daemon[79225]: Successfully activated service 'org.a11y.atspi.Registry'
SpiRegistry daemon is running with well-known name - org.a11y.atspi.Registry
Comment 1 Jan Beich freebsd_committer freebsd_triage 2023-02-17 08:59:46 UTC
Also reported in https://forums.freebsd.org/threads/update-broke-my-desktop-using-libsoup2-and-libsoup3-in-the-same-process-is-not-supported.88017/

Regressed by ports aa321b47d44b via sysutils/gnome-settings-daemon. Reverting that commit breaks deskutils/gnome-initial-setup, fixes deskutils/gnome-calendar and doesn't affect deskutils/gnome-maps + deskutils/gnome-weather.

$ /usr/local/libexec/gsd-datetime
(process:12345): libsoup-ERROR **: libsoup2 symbols detected. Using libsoup2 and libsoup3 in the same process is not supported.
Trace/BPT trap

$ ldd -a /usr/local/libexec/gsd-datetime
/usr/local/libexec/gsd-datetime:
	libgeocode-glib.so.0 => /usr/local/lib/libgeocode-glib.so.0 (0x8234d7000)
/usr/local/lib/libgeocode-glib.so.0:
	libsoup-2.4.so.1 => /usr/local/lib/libsoup-2.4.so.1 (0x82a479000)
/usr/local/lib/libgweather-4.so.0:
	libgeocode-glib-2.so.0 => /usr/local/lib/libgeocode-glib-2.so.0 (0x82eeb0000)
	libsoup-3.0.so.0 => /usr/local/lib/libsoup-3.0.so.0 (0x82f022000)
/usr/local/lib/libgeocode-glib-2.so.0:
	libsoup-3.0.so.0 => /usr/local/lib/libsoup-3.0.so.0 (0x82dbfe000)
Comment 2 Jan Beich freebsd_committer freebsd_triage 2023-02-17 09:03:58 UTC
deskutils/gnome-initial-setup seems to work if both ports aa321b47d44b and ports 00a05f61ca2d are reverted. However, I haven't tested if the version is compatible with other GNOME components.
Comment 3 commit-hook freebsd_committer freebsd_triage 2023-02-17 18:28:36 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=4e4d0fb69fcb8b6ae61f1f4da2efa3214f7a0052

commit 4e4d0fb69fcb8b6ae61f1f4da2efa3214f7a0052
Author:     Neel Chauhan <nc@FreeBSD.org>
AuthorDate: 2023-02-17 18:27:54 +0000
Commit:     Neel Chauhan <nc@FreeBSD.org>
CommitDate: 2023-02-17 18:28:15 +0000

    x11/gnome-shell: Use libsoup-3.0

    PR:     269434

 x11/gnome-shell/Makefile | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
Comment 4 Paul Dufresne 2023-02-19 01:47:13 UTC
I am a relative newbie but I believe I have rebuilt the new version with portmaster... but I still get the error:

Script started on Sat Feb 18 20:42:04 2023
Command: lldb --no-use-colors --core gnome-shell.core gnome-shell
(lldb) target create "gnome-shell" --core "gnome-shell.core"
Core file '/home/paul/gnome-shell.core' (x86_64) was loaded.
(lldb) bt
* thread #1, name = 'gnome-shell', stop reason = signal SIGTRAP
  * frame #0: 0x0000000821c80e3b libglib-2.0.so.0`g_log_structured_array + 171
    frame #1: 0x0000000821c80786 libglib-2.0.so.0`g_log_default_handler + 214
    frame #2: 0x00000000002043e2 gnome-shell`default_log_handler(log_domain="", log_level=6, message="libsoup2 symbols detected. Using libsoup2 and libsoup3 in the same process is not supported.", data=0x0000000000000000) at main.c:297:5
    frame #3: 0x0000000821c80311 libglib-2.0.so.0`g_logv + 1009
    frame #4: 0x0000000821c7feb6 libglib-2.0.so.0`g_log + 134
    frame #5: 0x00000008cf0e4807 libsoup-3.0.so.0`___lldb_unnamed_symbol2855 + 119
    frame #6: 0x000014790e6000ad ld-elf.so.1
    frame #7: 0x000014790e604846 ld-elf.so.1
    frame #8: 0x000014790e60109e ld-elf.so.1
    frame #9: 0x000000083397ab05 libgmodule-2.0.so.0`g_module_open_full + 997
    frame #10: 0x00000008275d9e1d libgirepository-1.0.so.1`g_typelib_symbol + 157
    frame #11: 0x00000008275d48e4 libgirepository-1.0.so.1`g_registered_type_info_get_g_type + 212
Comment 5 Paul Dufresne 2023-02-19 01:56:19 UTC
Created attachment 240250 [details]
show mix soup2 and 3 in libgmodule?

Attaching the full backtrace.
Comment 6 Paul Dufresne 2023-02-19 02:44:15 UTC
I did:
portmaster devel/glib20
to rebuild with debugging:
paul@dufresnep:/usr/home/paul $ cat /etc/make.conf
WITH_DEBUG=YES
DEBUG_FLAGS= -g -O0
paul@dufresnep:/usr/home/paul $ 

And now I see much better the problem:
Script started on Sat Feb 18 21:29:22 2023
Command: lldb --no-use-colors --core gnome-shell.core gnome-shell
(lldb) target create "gnome-shell" --core "gnome-shell.core"
Core file '/home/paul/gnome-shell.core' (x86_64) was loaded.
(lldb) bt
* thread #1, name = 'gnome-shell', stop reason = signal SIGTRAP
  * frame #0: 0x000000082474c314 libglib-2.0.so.0`_g_log_abort(breakpoint=1) at gmessages.c:563:5
    frame #1: 0x000000082474cafa libglib-2.0.so.0`g_log_structured_array(log_level=G_LOG_LEVEL_ERROR, fields=0x00000008202794f0, n_fields=4) at gmessages.c:2000:5
    frame #2: 0x000000082474bff9 libglib-2.0.so.0`g_log_default_handler(log_domain="", log_level=6, message="libsoup2 symbols detected. Using libsoup2 and libsoup3 in the same process is not supported.", unused_data=0x0000000000000000) at gmessages.c:3312:3
    frame #3: 0x00000000002043e2 gnome-shell`default_log_handler(log_domain="", log_level=6, message="libsoup2 symbols detected. Using libsoup2 and libsoup3 in the same process is not supported.", data=0x0000000000000000) at main.c:297:5
    frame #4: 0x000000082474bb59 libglib-2.0.so.0`g_logv(log_domain="", log_level=G_LOG_LEVEL_ERROR, format="", args=0x0000000820279b70) at gmessages.c:1402:11
    frame #5: 0x000000082474b5f5 libglib-2.0.so.0`g_log(log_domain="", log_level=G_LOG_LEVEL_ERROR, format="") at gmessages.c:1471:3
    frame #6: 0x00000008d7c73807 libsoup-3.0.so.0`___lldb_unnamed_symbol2855 + 119
    frame #7: 0x00003410395d80ad ld-elf.so.1
    frame #8: 0x00003410395dc846 ld-elf.so.1
    frame #9: 0x00003410395d909e ld-elf.so.1
    frame #10: 0x0000000833c4f549 libgmodule-2.0.so.0`_g_module_open(file_name="libgweather-4.so.0", bind_lazy=1, bind_local=0, error=0x0000000000000000) at gmodule-dl.c:138:12
    frame #11: 0x0000000833c4ed31 libgmodule-2.0.so.0`g_module_open_full(file_name="libgweather-4.so.0", flags=G_MODULE_BIND_LAZY, error=0x0000000000000000) at gmodule.c:614:12
    frame #12: 0x0000000833c4fadf libgmodule-2.0.so.0`g_module_open(file_name="libgweather-4.so.0", flags=G_MODULE_BIND_LAZY) at gmodule.c:698:10

So I think the module compiled with libsoup2 woudld be:
libgweather-4.so.0

paul@dufresnep:/usr/ports/net/libgweather4 $ cat /usr/ports/net/libgweather4/Makefile | grep -i soup
		libsoup-3.0.so:devel/libsoup3
paul@dufresnep:/usr/ports/net/libgweather4 $ 

which would seems ok but according to:
https://ports.freebsd.org/cgi/ports.cgi?query=^libgweather4-4.2.0&stype=name
it would require libsoup-2.74.3

so I am still a bit confused.
Comment 7 Paul Dufresne 2023-02-19 02:47:03 UTC
I have/had:
paul@dufresnep:/usr/home/paul $ ldd /usr/local/lib/libgweather-4.so.0.200.0|grep -i soup
	libsoup-3.0.so.0 => /usr/local/lib/libsoup-3.0.so.0 (0x6bdff670000)
paul@dufresnep:/usr/home/paul $ 

while it crashed...
Comment 8 Paul Dufresne 2023-02-19 03:04:58 UTC
I have tried to portmaster net/libgweather4, but did not helped.

https://github.com/GNOME/gnome-shell/blob/main/meson_options.txt
have:
option('soup2',
  type: 'boolean',
  value: false,
  description: 'Use Soup 2.4 instead of Soup 3. Must be in sync with libgweather'
)
Comment 9 Neel Chauhan freebsd_committer freebsd_triage 2023-02-19 03:10:11 UTC
(In reply to Paul Dufresne from comment #8)
I have a patch for this. Will commit before the end of day PST, although I am still testing it and running via poudriere now.
Comment 10 Paul Dufresne 2023-02-19 03:14:09 UTC
Good! (did read about incoming patch)
Now have realized that:
paul@dufresnep:/usr/home/paul $ pkg info libsoup
libsoup-2.74.3
Name           : libsoup
Version        : 2.74.3
Installed on   : Wed Feb 15 12:56:11 2023 EST
Origin         : devel/libsoup
Architecture   : FreeBSD:13:amd64
Comment 11 commit-hook freebsd_committer freebsd_triage 2023-02-19 03:21:46 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=45d9ec1ad7c57dd44cd0cc81e5dcd38549eef21a

commit 45d9ec1ad7c57dd44cd0cc81e5dcd38549eef21a
Author:     Neel Chauhan <nc@FreeBSD.org>
AuthorDate: 2023-02-19 03:20:42 +0000
Commit:     Neel Chauhan <nc@FreeBSD.org>
CommitDate: 2023-02-19 03:20:42 +0000

    x11/gnome-shell: Don't use libsoup2 ever

    PR:             269434
    Reported by:    multiple users

 x11/gnome-shell/Makefile | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
Comment 12 Paul Dufresne 2023-02-19 06:01:59 UTC
Comment #10 works for me in the sense that now startx shows the gnome screen...

the problem is that my instinct push me to click on the Web browser icon in the lower panel, causing a similar problem with gsd-datetime (gsd seems to stand for gnome-settings-daemon) and so I reported it in:

bug #269676 .