Gnome-Extensions and other GTK4 Apps Coredump Under X11

Issue

gnome-extensions-app fails to launch and coredumps when attempting to start the application by any means under xorg/x11, but not under wayland. This also seems to affect other gtk4-dependent apps like Celluloid, but I didn't realize this until later in the troubleshooting so most of this focuses on the gnome extensions manager application.

System/Issue Details

output of garuda-inxi:

System:
  Kernel: 5.17.1-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 11.2.0
    parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
    root=UUID=f4329cdc-33dc-4873-8e05-449d35bf24bd rw rootflags=subvol=@
    quiet quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0
    resume=UUID=bd43f81a-2f81-43a3-bd6e-9adf57dd3dbb loglevel=3
  Desktop: GNOME v: 41.5 tk: GTK v: 3.24.33 wm: gnome-shell dm: GDM v: 41.3
    Distro: Garuda Linux base: Arch Linux
Machine:
  Type: Laptop System: LENOVO product: 20KHCTO1WW v: ThinkPad X1 Carbon 6th
    serial: <filter> Chassis: type: 10 serial: <filter>
  Mobo: LENOVO model: 20KHCTO1WW v: SDK0J40709 WIN serial: <filter>
    UEFI: LENOVO v: N23ET80W (1.55 ) date: 11/16/2021
Battery:
  ID-1: BAT0 charge: 37.8 Wh (99.2%) condition: 38.1/57.0 Wh (66.9%)
    volts: 12.9 min: 11.6 model: LGC 01AV494 type: Li-poly serial: <filter>
    status: not charging cycles: 790
  Device-1: hid-dc:2c:26:f3:db:13-battery model: Keychron K6 serial: N/A
    charge: N/A status: discharging
CPU:
  Info: model: Intel Core i7-8550U socket: BGA1356 (U3E1) note: check
    bits: 64 type: MT MCP arch: Coffee Lake family: 6 model-id: 0x8E (142)
    stepping: 0xA (10) microcode: 0xEC
  Topology: cpus: 1x cores: 4 tpc: 2 threads: 8 smt: enabled cache:
    L1: 256 KiB desc: d-4x32 KiB; i-4x32 KiB L2: 1024 KiB desc: 4x256 KiB
    L3: 8 MiB desc: 1x8 MiB
  Speed (MHz): avg: 794 high: 800 min/max: 400/4000 base/boost: 1800/2000
    scaling: driver: intel_pstate governor: powersave volts: 1.2 V
    ext-clock: 100 MHz cores: 1: 800 2: 800 3: 800 4: 800 5: 800 6: 759
    7: 800 8: 800 bogomips: 31999
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
  Vulnerabilities:
  Type: itlb_multihit status: KVM: VMX disabled
  Type: l1tf
    mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable
  Type: mds mitigation: Clear CPU buffers; SMT vulnerable
  Type: meltdown mitigation: PTI
  Type: spec_store_bypass
    mitigation: Speculative Store Bypass disabled via prctl
  Type: spectre_v1
    mitigation: usercopy/swapgs barriers and __user pointer sanitization
  Type: spectre_v2 mitigation: Retpolines, IBPB: conditional, IBRS_FW,
    STIBP: conditional, RSB filling
  Type: srbds mitigation: Microcode
  Type: tsx_async_abort status: Not affected
Graphics:
  Device-1: Intel UHD Graphics 620 vendor: Lenovo driver: i915 v: kernel
    ports: active: eDP-1 empty: DP-1, DP-2, HDMI-A-1, HDMI-A-2 bus-ID: 00:02.0
    chip-ID: 8086:5917 class-ID: 0300
  Device-2: IMC Networks Integrated Camera type: USB driver: uvcvideo
    bus-ID: 1-8:5 chip-ID: 13d3:56b2 class-ID: 0e02
  Display: server: X.Org v: 1.21.1.3 compositor: gnome-shell driver: X:
    loaded: modesetting alternate: fbdev,intel,vesa gpu: i915 display-ID: :1
    screens: 1
  Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x285mm (20.00x11.22")
    s-diag: 582mm (22.93")
  Monitor-1: eDP-1 model: AU Optronics 0x313d built: 2016 res: 1920x1080
    hz: 60 dpi: 158 gamma: 1.2 size: 309x174mm (12.17x6.85") diag: 355mm (14")
    ratio: 16:9 modes: 1920x1080
  Message: Unable to show GL data. Required tool glxinfo missing.
Audio:
  Device-1: Intel Sunrise Point-LP HD Audio vendor: Lenovo
    driver: snd_hda_intel v: kernel alternate: snd_soc_skl bus-ID: 00:1f.3
    chip-ID: 8086:9d71 class-ID: 0403
  Sound Server-1: ALSA v: k5.17.1-zen1-1-zen running: yes
  Sound Server-2: PulseAudio v: 15.0 running: no
  Sound Server-3: PipeWire v: 0.3.49 running: yes
Network:
  Device-1: Intel Ethernet I219-V vendor: Lenovo driver: e1000e v: kernel
    port: N/A bus-ID: 00:1f.6 chip-ID: 8086:15d8 class-ID: 0200
  IF: enp0s31f6 state: down mac: <filter>
  Device-2: Intel Wireless 8265 / 8275 driver: iwlwifi v: kernel pcie:
    gen: 1 speed: 2.5 GT/s lanes: 1 bus-ID: 02:00.0 chip-ID: 8086:24fd
    class-ID: 0280
  IF: wlp2s0 state: up mac: <filter>
Bluetooth:
  Device-1: Intel Bluetooth wireless interface type: USB driver: btusb v: 0.8
    bus-ID: 1-7:4 chip-ID: 8087:0a2b class-ID: e001
  Report: bt-adapter ID: hci0 rfk-id: 1 state: up address: <filter>
Drives:
  Local Storage: total: 1.38 TiB used: 541.67 GiB (38.5%)
  SMART Message: Required tool smartctl not installed. Check --recommends
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung
    model: MZVLB512HAJQ-000L7 size: 476.94 GiB block-size: physical: 512 B
    logical: 512 B speed: 31.6 Gb/s lanes: 4 type: SSD serial: <filter>
    rev: 5L2QEXA7 temp: 34.9 C scheme: GPT
  ID-2: /dev/sdb maj-min: 8:16 type: USB vendor: Western Digital
    model: WD My Passport 2626 size: 931.48 GiB block-size: physical: 512 B
    logical: 512 B type: N/A serial: <filter> rev: 1028 scheme: MBR
Partition:
  ID-1: / raw-size: 459.71 GiB size: 459.71 GiB (100.00%)
    used: 16.08 GiB (3.5%) fs: btrfs block-size: 4096 B dev: /dev/nvme0n1p2
    maj-min: 259:2
  ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
    used: 576 KiB (0.2%) fs: vfat block-size: 512 B dev: /dev/nvme0n1p1
    maj-min: 259:1
  ID-3: /home raw-size: 459.71 GiB size: 459.71 GiB (100.00%)
    used: 16.08 GiB (3.5%) fs: btrfs block-size: 4096 B dev: /dev/nvme0n1p2
    maj-min: 259:2
  ID-4: /var/log raw-size: 459.71 GiB size: 459.71 GiB (100.00%)
    used: 16.08 GiB (3.5%) fs: btrfs block-size: 4096 B dev: /dev/nvme0n1p2
    maj-min: 259:2
  ID-5: /var/tmp raw-size: 459.71 GiB size: 459.71 GiB (100.00%)
    used: 16.08 GiB (3.5%) fs: btrfs block-size: 4096 B dev: /dev/nvme0n1p2
    maj-min: 259:2
Swap:
  Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
  ID-1: swap-1 type: partition size: 16.93 GiB used: 0 KiB (0.0%)
    priority: -2 dev: /dev/nvme0n1p3 maj-min: 259:3
  ID-2: swap-2 type: zram size: 15.39 GiB used: 0 KiB (0.0%) priority: 100
    dev: /dev/zram0
Sensors:
  System Temperatures: cpu: 41.0 C pch: 42.5 C mobo: N/A
  Fan Speeds (RPM): fan-1: 0
Info:
  Processes: 288 Uptime: 35m wakeups: 3 Memory: 15.39 GiB
  used: 3.46 GiB (22.4%) Init: systemd v: 250 tool: systemctl Compilers:
  gcc: 11.2.0 Packages: pacman: 1283 lib: 350 Shell: garuda-inxi (sudo)
  default: Bash v: 5.1.16 running-in: gnome-terminal inxi: 3.3.14
Garuda (2.5.6-2):
  System install date:     2022-04-03
  Last full system update: 2022-04-03
  Is partially upgraded:   No
  Relevant software:       NetworkManager
  Windows dual boot:       No/Undetected
  Snapshots:               Snapper
  Failed units:            

result of running gnome-extensions-app:

/usr/bin/gnome-extensions-app: line 2: 12041 Segmentation fault      (core dumped) /usr/bin/gjs /usr/share/gnome-shell/org.gnome.Extensions "$@"

relevant coredump file:
gnome-extensions-coredump.txt

Instances of Issue

  • Happens on latest (03/29) liveusb of garuda-gnome.
  • Happens on a fresh installation of the latest garuda-gnome iso (03/29) prior to any changes.
  • Was also occuring on a previous installation of garuda-gnome using the previous iso for garuda-gnome, but I cannot confirm if this was happening immediately after installation as I did other system upgrades and changes before attempting to use gnome extensions.
  • Happens regardless of whether I run gnome-extensions-app through the command line or via the gnome desktop.

Notes

Attempts to Fix

  • After I discovered the issue on my previous installation, I attempted reinstalling all my packages through the garuda assistant. This did not change the issue, but there were several other issues at play with that installation. This led me to do a clean install and begin proper troubleshooting.
  • Individually reinstalling gnome-shell had no effect.
  • Reinstalling gtk4 had no effect.
  • Changing the application theme and shell theme had no effect (tested by setting all themes back to default adawaita, trying to launch the program, then switching to another theme)
    • I tried this because I found a reference to the arc theme causing gtk4 apps to fail to launch, but a) that issue looks fixed, b) I don't have the arc theme installed, and c) it was occurring prior to my installation of any themes.
  • Enabling the GDM Wayland option through the garuda assistant and logging back in didn't present me with the option to choose between wayland or xorg, and upon logging back in I found some of the qt-based garuda apps also coredumping, but I suppose that's for another report.
    • Manually editing /etc/gdm/custom.conf to show WaylandEnable=true and then rebooting finally presented me with the option to choose between wayland and xorg!
  • Logging in under wayland fixed the issue! Extensions and other gtk4 apps like celluloid launch without coredumping. The qt-based apps that broke after initially enabling the GDM Wayland option through the garuda assistant are also fixed.

Closing

Since I managed to "fix" the issue by switching over to wayland, I'm not necessarily looking for a specific fix or assistance. I'm perfectly fine with using wayland, and it seems all the necessary components to do so were already packaged. There might be one or two applications that won't play nice, but it's not too much of a hassle to log into an x11 session just for those cases. That said, I am curious if anyone has any insight as to why this is occurring, and also figured it'd be worth sharing for the devs and anyone else that has this issue. Thanks for reading, and let me know if there's anything worth adding here.

3 Likes

This was posted on another forum:

Could you check whether this works under Xorg?

1 Like

Ah, didn't think of that. It was a suggestion I'd planned to try, but found the Wayland fix before getting to it.

Just now, I tried setting it both temporarily and in my ~/.bash_profile (I've left bash as my default shell, and made sure to set it temporarily using a bash shell and not the custom fish Garuda ships in its GNOME Terminal profile). It didn't produce any changes, the GNOME Extensions app still yields what appears to be the same error. If there's anywhere else I might try setting the variable, let me know. (Maybe in the specific .desktop file for the app? I'll try that in a bit.)

Also, when trying this, I also tried to re-disable the GDM Wayland option in Garuda Assistant, and seem to be unable to. It doesn't spit out any errors, but a few moments after applying and completing the authentication, the checkbox toggles itself back on. It could be failing because I'm attempting to apply the setting under Wayland, but as I mentioned above, enabling the option broke some qt-based apps under Xorg, including the Garuda Assistant, so I'm unable to disable it there. I'll dig through and attach those crashes later today. I'm unclear as to what changes the GDM Wayland option actually makes, otherwise I'd do so manually from Xorg.

I'll do a bit more poking later today, just have a few things to wrap up before I go tweaking things again. Thanks for the reply!

1 Like