void-linux / void-packages

The Void source packages collection
https://voidlinux.org
Other
2.46k stars 2.09k forks source link

GLIB problems #39752

Open superiums opened 1 year ago

superiums commented 1 year ago

I installed void via the lastest livecd which was published one year ago. it booted successfully.

Problem 1

but after xbps-install -Su, the lxdm falied. this is the report

** Message: 17:45:22.266: 1664876722: add xserver watch

X.Org X Server 1.21.1.4
X Protocol Version 11, Revision 0
Current Operating System: Linux (none) 5.19.10_1 #1 SMP PREEMPT_DYNAMIC Sat Sep 24 07:37:01 UTC 2022 x86_64
Kernel command line: BOOT_IMAGE=/boot/vmlinuz-5.19.10_1 root=/dev/mapper/vgxx-void ro loglevel=4

Current version of pixman: 0.40.0
    Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Tue Oct  4 17:45:22 2022
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
** Message: 17:45:22.948: 1664876722: start xserver in 1 retry
** Message: 17:45:22.950: find greeter (nil)

** Message: 17:45:22.950: find idle 0x563246ad6430

** Message: 17:45:22.950: add 0x563246ad6430

** Message: 17:45:22.950: prepare greeter on /var/run/lxdm/lxdm-:0.auth

** Message: 17:45:22.951: start greeter on /var/run/lxdm/lxdm-:0.auth

Authorization required, but no authorization protocol specified

(lxdm-greeter-gtk:1187): Gtk-WARNING **: 17:45:22.985: cannot open display: :0
(II) AIGLX: Suspending AIGLX clients for VT switch
(II) AIGLX: Suspending AIGLX clients for VT switch
(II) AIGLX: Suspending AIGLX clients for VT switch
(II) AIGLX: Suspending AIGLX clients for VT switch
(II) AIGLX: Suspending AIGLX clients for VT switch

** (process:1105): CRITICAL **: 17:49:43.942: QUIT BY SIGNAL 15

** Message: 17:49:43.942: quit code 0

** Message: 17:49:43.942: exit cb

(process:1105): GLib-CRITICAL **: 17:49:43.942: Source ID 3 was not found when attempting to remove it
(II) Server terminated successfully (0). Closing log file.
** Message: 17:49:43.994: free session

i uninstalled it and installed greetd and tui-greeter. it booted successfully.

Problem 2

i swithed to wayfire with wayland: but i found some gtk program not work (parole, gvfs, mouse manager of xfce4-settings) , unless i added this enviroment to it:

GDK_BACKEND=x11 parole

gvfs

thunar report the gvfs was not work currectly, and there's no vols appear in left panel of thunar. for tracering the issue, all of them report an GLIB error. for example , this is the report of gvfs debug , using comomand GVFS_DEBUG=1 $(find /usr/lib* -name gvfsd 2>/dev/null) --replace 2>&1 | tee gvfsd.log :


(process:14320): GLib-GObject-CRITICAL **: 11:21:21.921: g_object_new_with_properties: assertion 'G_TYPE_IS_OBJECT (object_type)' failed

(process:14320): GLib-GIO-CRITICAL **: 11:21:21.924: g_volume_monitor_get_mounts: assertion 'G_IS_VOLUME_MONITOR (volume_monitor)' failed

(process:14320): GLib-GObject-WARNING **: 11:21:21.924: invalid (NULL) pointer instance

(process:14320): GLib-GObject-CRITICAL **: 11:21:21.924: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed

(process:14320): GLib-GObject-WARNING **: 11:21:21.924: invalid (NULL) pointer instance

(process:14320): GLib-GObject-CRITICAL **: 11:21:21.924: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed

parole unsupported since XFCE not supports wayland, yet https://wiki.xfce.org/releng/wayland_roadmap

after run parole, there's no window appear, and this is the report of parole:


(parole:19735): GLib-GObject-WARNING **: 12:28:49.281: invalid cast from 'GdkWaylandDisplay' to 'GdkX11Display'
fish: Job 1, 'parole' terminated by signal SIGSEGV (Address boundary error)

xfce4-mouse-settings

no window appear too, this is the report:

(xfce4-mouse-settings:20508): GLib-GObject-WARNING **: 12:39:15.991: invalid cast from 'GdkWaylandDisplay' to 'GdkX11Display'
fish: Job 1, 'xfce4-mouse-settings' terminated by signal SIGSEGV (Address boundary error)

additional

if use GDK_BACKEND=wayland it fails too. all these program work ok in wayland on Arch.


am i missing some packages ? or the glib has some problem ?

packages i have with glib

$> xbps-query -s glib

[*] avahi-glib-libs-0.8_4      Avahi glib shared libraries
[*] dbus-glib-0.112_1          GLib bindings for D-Bus
[*] garcon-4.16.1_1            Glib/GIO freedesktop.org compliant menu implementation
[*] glib-2.74.0_2              GNU library of C routines
[*] glib-networking-2.74.0_1   Network-related giomodules for glib
[*] glibc-2.32_2               GNU C library
[*] glibc-locales-2.32_2       GNU C library - locale data files
[*] glibmm-2.66.2_1            C++ bindings for GLib
[*] json-glib-1.6.6_1          JSON parser for GLib-based libraries and applications
[*] libdbusmenu-glib-16.04.0_5 Library for passing menus over DBus
[*] libgusb-0.3.10_1           GLib wrapper around libusb1
[*] libmm-glib-1.18.6_1        Mobile broadband modem management service - GLib library
[*] libupower-glib3-0.99.17_1  Abstraction for enumerating power devices - runtime library
[*] poppler-glib-22.07.0_2     PDF rendering library - GLib bindings
[*] taglib-1.12_1              Library for accessing ID tags in various media files
sgn commented 1 year ago

Confirmed, parole crashes on sway.

EDIT:

parole crash with upstream, too.

So, don't count on it https://wiki.xfce.org/releng/wayland_roadmap

oreo639 commented 1 year ago

iirc I have run into parole and xfce4-mouse-settings crash on wayland for a while.

It is caused by grabbing the display struct from gtk and passing it to xlib directly regardless of the display server, which on wayland causes xlib to crash. Regardless, this isn't related to glib. XFCE does not support wayland atm, although it may still be worth submitting a bug report upstream.

Also, I am using gvfs-goa with Thunar right now and it works for me so the issue may be something else.

sgn commented 1 year ago

Not really a glib issue, I downgraded glib but parole still crashes. So, must be something else. @oreo639 suggests this line:

https://github.com/xfce-mirror/parole/blob/e2e85642c8ada8843b8d8f775ca045ed85e0b721/src/parole-button.c#L191

paper42 commented 1 year ago

gvfs

thunar report the gvfs was not work currectly, and there's no vols appear in left panel of thunar. for tracering the issue, all of them report an GLIB error. for example , this is the report of gvfs debug , using comomand GVFS_DEBUG=1 $(find /usr/lib* -name gvfsd 2>/dev/null) --replace 2>&1 | tee gvfsd.log :


(process:14320): GLib-GObject-CRITICAL **: 11:21:21.921: g_object_new_with_properties: assertion 'G_TYPE_IS_OBJECT (object_type)' failed

(process:14320): GLib-GIO-CRITICAL **: 11:21:21.924: g_volume_monitor_get_mounts: assertion 'G_IS_VOLUME_MONITOR (volume_monitor)' failed

(process:14320): GLib-GObject-WARNING **: 11:21:21.924: invalid (NULL) pointer instance

(process:14320): GLib-GObject-CRITICAL **: 11:21:21.924: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed

(process:14320): GLib-GObject-WARNING **: 11:21:21.924: invalid (NULL) pointer instance

(process:14320): GLib-GObject-CRITICAL **: 11:21:21.924: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed

These errors seem to only be because you forgot to set GIO_MODULE_DIR=/usr/lib/gio/modules.

superiums commented 1 year ago

gvfs suddenly works, reason unkown. the GIO_MODULE_DIR is blank still.

superiums commented 1 year ago

gvfs worked only once. reason unkown. nothing changed that time in my mind.

superiums commented 1 year ago

gvfs

thunar report the gvfs was not work currectly, and there's no vols appear in left panel of thunar. for tracering the issue, all of them report an GLIB error. for example , this is the report of gvfs debug , using comomand GVFS_DEBUG=1 $(find /usr/lib* -name gvfsd 2>/dev/null) --replace 2>&1 | tee gvfsd.log :


(process:14320): GLib-GObject-CRITICAL **: 11:21:21.921: g_object_new_with_properties: assertion 'G_TYPE_IS_OBJECT (object_type)' failed

(process:14320): GLib-GIO-CRITICAL **: 11:21:21.924: g_volume_monitor_get_mounts: assertion 'G_IS_VOLUME_MONITOR (volume_monitor)' failed

(process:14320): GLib-GObject-WARNING **: 11:21:21.924: invalid (NULL) pointer instance

(process:14320): GLib-GObject-CRITICAL **: 11:21:21.924: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed

(process:14320): GLib-GObject-WARNING **: 11:21:21.924: invalid (NULL) pointer instance

(process:14320): GLib-GObject-CRITICAL **: 11:21:21.924: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed

These errors seem to only be because you forgot to set GIO_MODULE_DIR=/usr/lib/gio/modules.

after set GIO_MODULE_DIR , there's no lucky happens.

superiums commented 1 year ago

gvfs problem was solved by config greetd:

/etc/greetd/config.toml

command = "tuigreet -t --remember --remember-user-session --asterisks -g 'BE COUCIOUSNESS' --cmd 'dbus-launch --exit-with-session wayfire' "

instead of let greetd use the sway/wayfire session file.

so , gvfs fails due to dbus communication.

by the way , firejail firefox fails also due to this problem.

hope this helpful to others who occurs this problem.

sgn commented 1 year ago

parole crash on wayland is a known problem upstream. https://wiki.xfce.org/releng/wayland_roadmap