Gnome 47 - Nautilus won't launch on xorg/nvidia

Hello all,

Since I’ve updated to Gnome 47 on Tumbleweed, I can’t launch nautilus, I got around that by installing Dolphin but now I have realized that any file browser window in other app won’t start because it defaults to nautilus.

I’ve tried launching nautilus through terminal and here’s what I get:

(org.gnome.Nautilus:3797): Gdk-WARNING **: 10:25:57.298: The program ‘org.gnome.Nautilus’ received an X Window System error.

This probably reflects a bug in the program.

The error was ‘BadMatch (invalid parameter attributes)’.

(Details: serial 1023 error_code 8 request_code 149 (unknown) minor_code 4)

(Note to programmers: normally, X errors are reported asynchronously;

that is, you will receive the error a while after causing it.

To debug your program, run it with the GDK_SYNCHRONIZE environment

variable to change this behavior. You can then get a meaningful

backtrace from your debugger if you break on the gdk_x_error() function.)

Can anyone help with this?

1 Like

@asg Hi and welcome to the Forum :smile:
Perhaps provide some additional information on your graphics setup with inxi -GSaz

I’m running GNOME on Intel with nvidia for Prime Render Offload and using Wayland here… Have you tried switching?

Hello and thank you for trying to help,

I used to use suse-prime, which I understand is now moot with Wayland, whatever you mentioned above is something I don’t know, if you can elaborate on “Intel with nvidia for Prime Render Offload and using Wayland” that would be great, as far as inxi -GSaz output:

System:
Kernel: 6.11.3-1-default arch: x86_64 bits: 64 compiler: gcc v: 14.2.1
clocksource: tsc avail: acpi_pm
parameters: BOOT_IMAGE=/boot/vmlinuz-6.11.3-1-default
root=UUID=03813341-3630-4149-a677-3e2bc2c37237 security=apparmor
nvidia-drm.modeset=1 mitigations=auto
Desktop: GNOME v: 47.0 tk: GTK v: 3.24.43 wm: gnome-shell
tools: gsd-screensaver-proxy avail: xscreensaver dm: GDM v: 47.0
Distro: openSUSE Tumbleweed 20241018
Graphics:
Device-1: Intel HD Graphics 630 vendor: Lenovo driver: i915 v: kernel
arch: Gen-9.5 process: Intel 14nm built: 2016-20 ports: active: HDMI-A-1
off: eDP-1 empty: DP-1, DP-2, DP-3, HDMI-A-2, HDMI-A-3 bus-ID: 00:02.0
chip-ID: 8086:591b class-ID: 0300
Device-2: NVIDIA GM108M [GeForce 940MX] vendor: Lenovo driver: nvidia
v: 550.120 alternate: nouveau,nvidia_drm non-free: 550.xx+ status: current
(as of 2024-09; EOL~2026-12-xx) arch: Maxwell code: GMxxx
process: TSMC 28nm built: 2014-2019 pcie: gen: 1 speed: 2.5 GT/s lanes: 4
link-max: gen: 3 speed: 8 GT/s bus-ID: 02:00.0 chip-ID: 10de:134d
class-ID: 0302
Display: wayland server: X.org v: 1.21.1.12 with: Xwayland v: 24.1.3
compositor: gnome-shell driver: X: loaded: modesetting,nvidia
alternate: intel dri: iris gpu: i915 display-ID: 0
Monitor-1: HDMI-A-1 model: Samsung serial: built: 2019
res: 3840x2160 dpi: 81 gamma: 1.2 size: 1872x1053mm (73.7x41.46")
diag: 1388mm (54.6") ratio: 16:9 modes: max: 4096x2160 min: 720x400
Monitor-2: eDP-1 model: LG Display 0x0521 built: 2016 res: 1920x1080
dpi: 158 gamma: 1.2 size: 309x174mm (12.17x6.85") diag: 355mm (14")
ratio: 16:9 modes: 1920x1080
API: EGL v: 1.5 hw: drv: intel iris drv: nvidia platforms: device: 0
drv: nvidia device: 1 drv: iris device: 3 drv: swrast gbm: drv: iris
surfaceless: drv: nvidia wayland: drv: iris x11: drv: iris
inactive: device-2
API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: intel mesa v: 24.1.7 glx-v: 1.4
direct-render: yes renderer: Mesa Intel HD Graphics 630 (KBL GT2)
device-ID: 8086:591b memory: 7.5 GiB unified: yes display-ID: :0.0

@asg Hi, so you are using Wayland… :wink: and your Nvidia GPU can use Prime Render Offload…

So is switcherooctl installed and no suse-prime?

Your grub options need to change, you want to use fbdev=1 nosimplefb=1 not nvidia-drm.modeset=1

That is what I use here, but some setups can be a bit funky…

I would suggest you reboot and at grub press the e key to edit, use the arrow keys to move down to the line starting linux or linuxefi the arrow across to the nvidia… part and delete and add those two options instead, then F10 to boot.

Then check the inxi output again, test Nautilus and see if that helps.

Yes I switched to Wayland but I am not sure if Nvidia is being used at all.

So is switcherooctl installed and no suse-prime?

It’s the other way around - should I remove suse-prime and install switcherooctl? My laptop is hooked up to a TV and is always plugged in, so power drain by Nvidia is not an issue for me, I use it to stream and watch PLex, etc.

I’ve updated the kernel parameters as you mentioned, here’s the updated
System output:

Kernel: 6.11.3-1-default arch: x86_64 bits: 64 compiler: gcc v: 14.2.1
clocksource: tsc avail: acpi_pm
parameters: BOOT_IMAGE=/boot/vmlinuz-6.11.3-1-default
root=UUID=03813341-3630-4149-a677-3e2bc2c37237 security=apparmor fbdev=1
nosimplefb=1 mitigations=auto
Desktop: GNOME v: 47.0 tk: GTK v: 3.24.43 wm: gnome-shell
tools: gsd-screensaver-proxy avail: xscreensaver dm: GDM v: 47.0
Distro: openSUSE Tumbleweed 20241018
Graphics:
Device-1: Intel HD Graphics 630 vendor: Lenovo driver: i915 v: kernel
arch: Gen-9.5 process: Intel 14nm built: 2016-20 ports: active: HDMI-A-1
off: eDP-1 empty: DP-1, DP-2, DP-3, HDMI-A-2, HDMI-A-3 bus-ID: 00:02.0
chip-ID: 8086:591b class-ID: 0300
Device-2: NVIDIA GM108M [GeForce 940MX] vendor: Lenovo driver: nvidia
v: 550.120 alternate: nouveau,nvidia_drm non-free: 550.xx+ status: current
(as of 2024-09; EOL~2026-12-xx) arch: Maxwell code: GMxxx
process: TSMC 28nm built: 2014-2019 pcie: gen: 1 speed: 2.5 GT/s lanes: 4
link-max: gen: 3 speed: 8 GT/s bus-ID: 02:00.0 chip-ID: 10de:134d
class-ID: 0302
Display: wayland server: X.org v: 1.21.1.12 with: Xwayland v: 24.1.3
compositor: gnome-shell driver: X: loaded: modesetting,nvidia
alternate: intel dri: iris gpu: i915 display-ID: 0
Monitor-1: HDMI-A-1 model: Samsung serial: built: 2019
res: 3840x2160 dpi: 81 gamma: 1.2 size: 1872x1053mm (73.7x41.46")
diag: 1388mm (54.6") ratio: 16:9 modes: max: 4096x2160 min: 720x400
Monitor-2: eDP-1 model: LG Display 0x0521 built: 2016 res: 1920x1080
dpi: 158 gamma: 1.2 size: 309x174mm (12.17x6.85") diag: 355mm (14")
ratio: 16:9 modes: 1920x1080
API: EGL v: 1.5 hw: drv: intel iris drv: nvidia platforms: device: 0
drv: nvidia device: 1 drv: iris device: 3 drv: swrast gbm: drv: iris
surfaceless: drv: nvidia wayland: drv: iris x11: drv: iris
inactive: device-2
API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: intel mesa v: 24.1.7 glx-v: 1.4
direct-render: yes renderer: Mesa Intel HD Graphics 630 (KBL GT2)
device-ID: 8086:591b memory: 7.5 GiB unified: yes display-ID: :0.0

https://en.opensuse.org/SDB:NVIDIA_Switcheroo_Control

So I should install switcherooctl and remove suse-prime?

@asg yes, it works much better that suse-prime, make sure you remove anything suse-prime, bumblebee and bbswitch if installed, then follow the link provided by @hui

switcherooctl list

Device: 0
  Name:        Intel Corporation DG2 [Arc A380]
  Default:     yes
  Environment: DRI_PRIME=pci-0000_05_00_0

Device: 1
  Name:        NVIDIA Corporation TU117GLM [Quadro T400 Mobile]
  Default:     no
  Environment: __GLX_VENDOR_LIBRARY_NAME=nvidia __NV_PRIME_RENDER_OFFLOAD=1 __VK_LAYER_NV_optimus=NVIDIA_only

glxinfo | grep "OpenGL renderer"
OpenGL renderer string: Mesa Intel(R) Arc(tm) A380 Graphics (DG2)

switcherooctl glxinfo | grep "OpenGL renderer"
OpenGL renderer string: NVIDIA T400/PCIe/SSE2

Thanks guys,

It’s running as you guys have showcased:
switcherooctl list
Device: 0
Name: Intel® HD Graphics 630
Default: yes
Environment: DRI_PRIME=pci-0000_00_02_0

Device: 1
Name: NVIDIA Corporation GM108M [GeForce 940MX]
Default: no
Environment: __GLX_VENDOR_LIBRARY_NAME=nvidia __NV_PRIME_RENDER_OFFLOAD=1 __VK_LAYER_NV_optimus=NVIDIA_only

So this means every time I want to use Nvidia, I have to right click and launch using discrete graphics card, unlike suse-prime where I can choose Nvidia as default for everything?

@asg Yes, you start that way, or use switcherooctl. But you should also see GNOME take advantage of the nvidia gpu in the background… View with nvidia-smi or nvtop and should see something like;

nvidia-smi
...
+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI        PID   Type   Process name                              GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|    0   N/A  N/A      2721      G   /usr/bin/gnome-shell                            1MiB |
|    0   N/A  N/A     33646    C+G   /usr/bin/gnome-text-editor                      2MiB |
|    0   N/A  N/A     33714    C+G   /usr/bin/nautilus                               2MiB |
|    0   N/A  N/A     33884    C+G   ptyxis                                          2MiB |
+-----------------------------------------------------------------------------------------+

excellent - Thank you Malcolm.

@asg You may also be interested in gleaning some extra performance using guc/huc on the Intel GPU, see https://www.intel.com/content/www/us/en/content-details/609249/enabling-the-guc-huc-firmware-for-linux-on-new-intel-gpu-platforms.html

Nice one, but I think my hardware is a bit too old for that - I’m running HD Graphics 630, which when I checked seems to be too old as per Intel graphics - ArchWiki

But please feel free to correct me if I’m wrong…

@asg It might already be active, you have Gen 9.5?

Check with journalctl -b | grep -E "guc|huc"

It was only the commands I got from the Intel link you shared, my thinkpad is running on an i7 processor

@asg I think @mrmazda can advise, I think he has a 630 gpu…

So, the Nautilus issue is resolved on Wayland?

Thank you Malcom, the nautilus issue is sorted on both Wayland and Xorg, however this is with suse-prime uninstalled, which probably means it is the culprit. For now I am using switcherooctl.

1 Like

I had this same issue. I’m now using switcheroo instead, the problem really seems to be suse-prime.

I never use Nautilus, Gnome or GDM. Wayland I only allow in Neon. My 630’s are standalone, same as my NVidia’s - no Optimus, switcheroo or prime here. I would need a specific question to have any possibility to offer anything here.

@mrmazda are you using guc/huc for the gpu?