Stuck with IceWM after installing Nvidia Drivers

Hello all,

I’ve installed the Nvidia drivers after a fresh install on my new laptop. System was fully updated after install (zypper dup), and everything was working fine (gnome was running in wayland on amdgpu (system has radeon integrated graphics)). The opensource Nvidia drivers were installed by default, so I did:

version=$(rpm -qa --queryformat '%{VERSION}\n' nvidia-open-driver-G06-signed-kmp-default | cut -d "_" -f1 | sort -u | tail -n 1)
zypper in nvidia-video-G06 == ${version} nvidia-compute-utils-G06 == ${version}

I agreed to the Nvidia terms, zypper did zypper things, and when it was done I rebooted. I noticed something was wrong when I saw the X cursor (somehow I’d ended up in the X11 version of the Gnome session manager). But despite the gnome session manager loading, my only session option was IceWM. Obviously, this isn’t working correctly.

I installed suse-prime, when I tried to prime-select boot amd, it complained that xf86-video-amdgpu wasn’t installed. I installed it, but prime-select boot amd nor prime-select boot nvidia did anything. I just get the x11 version of gdm and then IceWM. Anyone have any advice? I can’t imagine Radeon iGPU + Nvidia dGPU is an unsupported configuration (at least not in 2025).

Thanks!

Oh, after it didn’t work, I installed the non-free nvidia drivers just to see if that worked any better. That’s why it’s in the lsmod below.

sudo lsmod | grep nvidia
nvidia_drm            135168  10
nvidia_modeset       1830912  12 nvidia_drm
nvidia_uvm           3776512  0
nvidia              97103872  161 nvidia_uvm,nvidia_modeset
drm_ttm_helper         16384  3 amdgpu,nvidia_drm
video                  81920  2 amdgpu,nvidia_modeset

sudo lsmod | grep amdgpu
amdgpu              15175680  1
amdxcp                 12288  1 amdgpu
i2c_algo_bit           20480  1 amdgpu
drm_ttm_helper         16384  3 amdgpu,nvidia_drm
ttm                   110592  2 amdgpu,drm_ttm_helper
drm_exec               12288  1 amdgpu
gpu_sched              69632  1 amdgpu
drm_suballoc_helper    12288  1 amdgpu
drm_panel_backlight_quirks    12288  1 amdgpu
drm_buddy              24576  1 amdgpu
drm_display_helper    278528  1 amdgpu
video                  81920  2 amdgpu,nvidia_modeset
sudo zypper se -si nvidia

S  | Name                             | Type    | Version                   | Arch   | Repository
---+----------------------------------+---------+---------------------------+--------+----------------------
i  | kernel-firmware-nvidia           | package | 20250206-2.1              | noarch | Main Repository (OSS)
i  | kernel-firmware-nvidia           | package | 20250206-2.1              | noarch | repo-oss
i  | libnvidia-egl-gbm1               | package | 1.1.2-7.7                 | x86_64 | NVIDIA
i  | libnvidia-egl-gbm1               | package | 1.1.2-7.7                 | x86_64 | repo-non-free
i  | libnvidia-egl-gbm1-32bit         | package | 1.1.2-7.6                 | x86_64 | NVIDIA
i  | libnvidia-egl-gbm1-32bit         | package | 1.1.2-7.6                 | x86_64 | repo-non-free
i  | libnvidia-egl-wayland1           | package | 1.1.18-46.3               | x86_64 | NVIDIA
i  | libnvidia-egl-wayland1           | package | 1.1.18-46.3               | x86_64 | repo-non-free
i  | libnvidia-egl-wayland1-32bit     | package | 1.1.18-46.3               | x86_64 | NVIDIA
i  | libnvidia-egl-wayland1-32bit     | package | 1.1.18-46.3               | x86_64 | repo-non-free
i  | libnvidia-egl-x111               | package | 1.0.1-9.9                 | x86_64 | NVIDIA
i  | libnvidia-egl-x111               | package | 1.0.1-9.9                 | x86_64 | repo-non-free
i  | libnvidia-egl-x111-32bit         | package | 1.0.1-9.7                 | x86_64 | NVIDIA
i  | libnvidia-egl-x111-32bit         | package | 1.0.1-9.7                 | x86_64 | repo-non-free
i  | nvidia-common-G06                | package | 570.133.07-33.1           | x86_64 | NVIDIA
i  | nvidia-common-G06                | package | 570.133.07-33.1           | x86_64 | repo-non-free
i  | nvidia-compute-G06               | package | 570.133.07-33.1           | x86_64 | NVIDIA
i  | nvidia-compute-G06               | package | 570.133.07-33.1           | x86_64 | repo-non-free
i  | nvidia-compute-G06-32bit         | package | 570.133.07-33.1           | x86_64 | NVIDIA
i  | nvidia-compute-G06-32bit         | package | 570.133.07-33.1           | x86_64 | repo-non-free
i+ | nvidia-compute-utils-G06         | package | 570.133.07-33.1           | x86_64 | NVIDIA
i+ | nvidia-compute-utils-G06         | package | 570.133.07-33.1           | x86_64 | repo-non-free
i+ | nvidia-driver-G06-kmp-default    | package | 570.133.07_k6.13.6_1-33.1 | x86_64 | NVIDIA
i+ | nvidia-driver-G06-kmp-default    | package | 570.133.07_k6.13.6_1-33.1 | x86_64 | repo-non-free
i  | nvidia-gl-G06                    | package | 570.133.07-33.1           | x86_64 | NVIDIA
i  | nvidia-gl-G06                    | package | 570.133.07-33.1           | x86_64 | repo-non-free
i  | nvidia-gl-G06-32bit              | package | 570.133.07-33.1           | x86_64 | NVIDIA
i  | nvidia-gl-G06-32bit              | package | 570.133.07-33.1           | x86_64 | repo-non-free
i+ | nvidia-libXNVCtrl                | package | 570.133.07-33.1           | x86_64 | NVIDIA
i+ | nvidia-libXNVCtrl                | package | 570.133.07-33.1           | x86_64 | repo-non-free
i  | nvidia-modprobe                  | package | 570.133.07-12.1           | x86_64 | NVIDIA
i  | nvidia-modprobe                  | package | 570.133.07-12.1           | x86_64 | repo-non-free
i  | nvidia-persistenced              | package | 570.133.07-2.1            | x86_64 | NVIDIA
i  | nvidia-persistenced              | package | 570.133.07-2.1            | x86_64 | repo-non-free
i+ | nvidia-settings                  | package | 570.133.07-33.1           | x86_64 | NVIDIA
i+ | nvidia-settings                  | package | 570.133.07-33.1           | x86_64 | repo-non-free
i+ | nvidia-video-G06                 | package | 570.133.07-33.1           | x86_64 | NVIDIA
i+ | nvidia-video-G06                 | package | 570.133.07-33.1           | x86_64 | repo-non-free
i  | nvidia-video-G06-32bit           | package | 570.133.07-33.1           | x86_64 | NVIDIA
i  | nvidia-video-G06-32bit           | package | 570.133.07-33.1           | x86_64 | repo-non-free
i  | nvidia-xconfig                   | package | 570.133.07-2.1            | x86_64 | NVIDIA
i  | nvidia-xconfig                   | package | 570.133.07-2.1            | x86_64 | repo-non-free
i+ | openSUSE-repos-Tumbleweed-NVIDIA | package | 20250324.7d1bc96-1.1      | x86_64 | Main Repository (OSS)
i+ | openSUSE-repos-Tumbleweed-NVIDIA | package | 20250324.7d1bc96-1.1      | x86_64 | repo-oss
sudo zypper se -si session

S  | Name                  | Type    | Version    | Arch   | Repository
---+-----------------------+---------+------------+--------+----------------------
i  | gnome-session         | package | 47.0.1-5.1 | x86_64 | Main Repository (OSS)
i  | gnome-session         | package | 47.0.1-5.1 | x86_64 | repo-oss
i  | gnome-session-core    | package | 47.0.1-5.1 | x86_64 | Main Repository (OSS)
i  | gnome-session-core    | package | 47.0.1-5.1 | x86_64 | repo-oss
i  | gnome-session-wayland | package | 47.0.1-5.1 | x86_64 | Main Repository (OSS)
i  | gnome-session-wayland | package | 47.0.1-5.1 | x86_64 | repo-oss

Uninstall and lock suse-prime (and anything depending on it) and install switcheroo-control and enable the service. See here for details.
Reboot and Gnome should work with Wayland using both GPUs as needed.
But if you still have problems ask here, we are here to help.
And Welcome to the openSUSE Forums!

Sorry it took so long for me to get back to you; I was busy at work (it was our yearly outage so I’ve been working 16 hour shifts).

I’ve completely reinstalled, got IceWM as expected when I installed the Nvidia userland drivers (the open-source kernel driver was already installed by default). Switcherooctl was already installed by default. When I run switcherooctl list I get no results (not even the AMD card). I installed the gnome-x11 pattern and got back into gnome (obviously wayland isn’t working).

Any ideas why switcheroo doesn’t show either card? Or why wayland dies from installing nvidia-video-G06 (and its depends)?

@aspiringnobody have a read of this thread https://forums.opensuse.org/t/opensuse-suddenly-only-launches-into-icewm/184154

You need to enable the service (as already noted in the first reply by OrsoBruno):

sudo systemctl enable --now switcheroo-control.service

Gotcha. Switcheroo lists both cards with that change. Now I just have to figure out how to get wayland working!