Wine/Proton Error: A D3D11 compatible GPU (Feature Level 11.0, Shader Model 5.0) is required to run the engine

After a recent update, non of my wine/proton games work. They all give me the same error: “A D3D11 compatible GPU (Feature Level 11.0, Shader Model 5.0) is required to run the engine.” “err: D3D11InternalCreateDevice: Failed to create D3D11 device”

openSUSE Tumbleweed
Laptop with Intel iGPU + NVIDIA GTX 1660 Ti

Here’s what I have tried so far:

  • Force reinstalling all nvidia, mesa, and vulkan packages
  • Running games with both prime-run and switcheroooctl
  • Tried different runners
  • Updated the system
  • Adding env variables to force proton/wine to use the NVIDIA GPU
  • Tried both Wayland (Hyprland), and X11 (i3)

I have no idea what to do. Everything was working just fine without any tinkering.

Here’s a dump of some command outputs I think may be relevant.

~ > uname -a                            
Linux machine 6.18.3-1-default #1 SMP PREEMPT_DYNAMIC Fri Jan  2 18:23:02 UTC 2026 (c68e342) x86_64 x86_64 x86_64 GNU/Linux

~ > lsmod | grep nvidia                                          
nvidia_drm            147456  45
nvidia_modeset       1937408  14 nvidia_drm
nvidia_uvm           3842048  0
drm_ttm_helper         16384  2 nvidia_drm
nvidia              111595520  259 nvidia_uvm,nvidia_drm,nvidia_modeset
i2c_nvidia_gpu         16384  0
i2c_ccgx_ucsi          12288  1 i2c_nvidia_gpu
video                  81920  2 ideapad_laptop,nvidia_modeset

~ > rpm -qa | grep -i nvidia                               
nvidia-driver-G06-kmp-default-580.119.02_k6.18.0_1-43.1.x86_64
nvidia-xconfig-580.119.02-2.1.x86_64
nvidia-compute-G06-32bit-580.119.02-43.1.x86_64
nvidia-compute-G06-580.119.02-43.1.x86_64
nvidia-common-G06-580.119.02-43.1.x86_64
nvidia-video-G06-32bit-580.119.02-43.1.x86_64
openSUSE-repos-Tumbleweed-NVIDIA-20250728.9adc675-1.1.x86_64
libnvidia-egl-x111-32bit-1.0.5-1.1.x86_64
kernel-firmware-nvidia-20251018-1.1.noarch
nvidia-userspace-meta-G06-580.119.02-26.1.x86_64
libnvidia-egl-wayland1-1.1.21-1.1.x86_64
libnvidia-gpucomp-580.119.02-43.1.x86_64
nvidia-gl-G06-580.119.02-43.1.x86_64
nvidia-compute-utils-G06-580.119.02-43.1.x86_64
nvidia-persistenced-580.119.02-2.1.x86_64
libnvidia-egl-x111-1.0.5-1.1.x86_64
libnvidia-egl-gbm1-32bit-1.1.2.1-1.1.x86_64
nvidia-gl-G06-32bit-580.119.02-43.1.x86_64
nvidia-modprobe-580.119.02-21.1.x86_64
nvidia-video-G06-580.119.02-43.1.x86_64
libnvidia-gpucomp-32bit-580.119.02-43.1.x86_64
libnvidia-egl-gbm1-1.1.2.1-1.1.x86_64
libnvidia-egl-wayland1-32bit-1.1.21-1.1.x86_64

~ > rpm -qa | grep -i vulkan                            
libvulkan1-1.4.335-1.1.x86_64
libvulkan1-32bit-1.4.335-1.1.x86_64
libvulkan_intel-32bit-25.3.3-1.1.x86_64
libvulkan_lvp-25.3.3-1.1.x86_64
libvulkan_radeon-32bit-25.3.3-1699.3.pm.2.x86_64
Mesa-vulkan-device-select-25.3.3-1.1.x86_64
vulkan-tools-32bit-1.4.335-1.1.x86_64
Mesa-vulkan-device-select-32bit-25.3.3-1.1.x86_64
vulkan-tools-1.4.335-1.1.x86_64
libgstvulkan-1_0-0-1.26.10-1.1.x86_64

~ > ls -l /usr/share/vulkan/icd.d                                     
total 24
-rw-r--r--. 1 root root 182 Jan  2 13:46 intel_hasvk_icd.i686.json
-rw-r--r--. 1 root root 176 Jan  2 13:46 intel_icd.i686.json
-rw-r--r--. 1 root root 176 Jan  2 13:46 lvp_icd.x86_64.json
-rw-r--r--. 1 root root 149 Dec 11 10:55 nvidia_icd.i686.json
-rw-r--r--. 1 root root 151 Dec 11 10:55 nvidia_icd.x86_64.json
-rw-r--r--. 1 root root 177 Jan  8 13:12 radeon_icd.i686.json

~ > cat /usr/share/vulkan/icd.d/nvidia_icd.x86_64.json                            

{
    "file_format_version" : "1.0.1",
    "ICD": {
        "library_path": "/usr/lib64/libGLX_nvidia.so.0",
        "api_version" : "1.4.312"
    }
}

~ > find /usr/lib64 -iname "libvulkan*"                                                                                                                                          

/usr/lib64/libvulkan.so.1
/usr/lib64/libvulkan.so.1.4.335
/usr/lib64/libvulkan_lvp.so

~ > vulkaninfo | head -n 100                                                                                                                                                                 

==========
VULKANINFO
==========

Vulkan Instance Version: 1.4.335


Instance Extensions: count = 25
===============================
	VK_EXT_acquire_drm_display             : extension revision 1
	VK_EXT_acquire_xlib_display            : extension revision 1
	VK_EXT_debug_report                    : extension revision 10
	VK_EXT_debug_utils                     : extension revision 2
	VK_EXT_direct_mode_display             : extension revision 1
	VK_EXT_display_surface_counter         : extension revision 1
	VK_EXT_headless_surface                : extension revision 1
	VK_EXT_surface_maintenance1            : extension revision 1
	VK_EXT_swapchain_colorspace            : extension revision 5
	VK_KHR_device_group_creation           : extension revision 1
	VK_KHR_display                         : extension revision 23
	VK_KHR_external_fence_capabilities     : extension revision 1
	VK_KHR_external_memory_capabilities    : extension revision 1
	VK_KHR_external_semaphore_capabilities : extension revision 1
	VK_KHR_get_display_properties2         : extension revision 1
	VK_KHR_get_physical_device_properties2 : extension revision 2
	VK_KHR_get_surface_capabilities2       : extension revision 1
	VK_KHR_portability_enumeration         : extension revision 1
	VK_KHR_surface                         : extension revision 25
	VK_KHR_surface_protected_capabilities  : extension revision 1
	VK_KHR_wayland_surface                 : extension revision 6
	VK_KHR_xcb_surface                     : extension revision 6
	VK_KHR_xlib_surface                    : extension revision 6
	VK_LUNARG_direct_driver_loading        : extension revision 1
	VK_NV_display_stereo                   : extension revision 1

Layers: count = 7
=================
VK_LAYER_MESA_device_select (Linux device selection layer) Vulkan version 1.4.303, layer version 1:
	Layer Extensions: count = 0
	Devices: count = 2
		GPU id = 0 (NVIDIA GeForce GTX 1660 Ti)
		Layer-Device Extensions: count = 0

		GPU id = 1 (llvmpipe (LLVM 21.1.7, 256 bits))
		Layer-Device Extensions: count = 0

VK_LAYER_NV_optimus (NVIDIA Optimus layer) Vulkan version 1.4.312, layer version 1:
	Layer Extensions: count = 0
	Devices: count = 2
		GPU id = 0 (NVIDIA GeForce GTX 1660 Ti)
		Layer-Device Extensions: count = 0

		GPU id = 1 (llvmpipe (LLVM 21.1.7, 256 bits))
		Layer-Device Extensions: count = 0

VK_LAYER_NV_present (NVIDIA GR2608 layer) Vulkan version 1.4.312, layer version 1:
	Layer Extensions: count = 0
	Devices: count = 2
		GPU id = 0 (NVIDIA GeForce GTX 1660 Ti)
		Layer-Device Extensions: count = 0

		GPU id = 1 (llvmpipe (LLVM 21.1.7, 256 bits))
		Layer-Device Extensions: count = 0

VK_LAYER_VALVE_steam_fossilize_32 (Steam Pipeline Caching Layer) Vulkan version 1.3.207, layer version 1:
	Layer Extensions: count = 0
	Devices: count = 2
		GPU id = 0 (NVIDIA GeForce GTX 1660 Ti)
		Layer-Device Extensions: count = 0

		GPU id = 1 (llvmpipe (LLVM 21.1.7, 256 bits))
		Layer-Device Extensions: count = 0

VK_LAYER_VALVE_steam_fossilize_64 (Steam Pipeline Caching Layer) Vulkan version 1.3.207, layer version 1:
	Layer Extensions: count = 0
	Devices: count = 2
		GPU id = 0 (NVIDIA GeForce GTX 1660 Ti)
		Layer-Device Extensions: count = 0

		GPU id = 1 (llvmpipe (LLVM 21.1.7, 256 bits))
		Layer-Device Extensions: count = 0

VK_LAYER_VALVE_steam_overlay_32 (Steam Overlay Layer) Vulkan version 1.3.207, layer version 1:
	Layer Extensions: count = 0
	Devices: count = 2
		GPU id = 0 (NVIDIA GeForce GTX 1660 Ti)
		Layer-Device Extensions: count = 0

		GPU id = 1 (llvmpipe (LLVM 21.1.7, 256 bits))
		Layer-Device Extensions: count = 0

VK_LAYER_VALVE_steam_overlay_64 (Steam Overlay Layer) Vulkan version 1.3.207, layer version 1:
	Layer Extensions: count = 0
	Devices: count = 2
		GPU id = 0 (NVIDIA GeForce GTX 1660 Ti)
		Layer-Device Extensions: count = 0

		GPU id = 1 (llvmpipe (LLVM 21.1.7, 256 bits))
		Layer-Device Extensions: count = 0

I’d really appreciate any help. Thanks

@aliqut Hi, any reason your not running the G07 driver, likewise, there is a new snapshot 20260109 bringing in a new kernel, Mesa rebuild etc…

Hello,

Just updated to the new snapshot. Issue wasn’t resolved.

Not sure, I followed the recommended guidelines for installing NVIDIA drivers on TW, (zypper install-new-recommends).

How would I switch from G06 to G07?

~ > zypper se -si nvidia                                                                                                                                                                     
Loading repository data...
Reading installed packages...

S  | Name                             | Type    | Version                   | Arch   | Repository
---+----------------------------------+---------+---------------------------+--------+--------------
i+ | kernel-firmware-nvidia           | package | 20251018-1.1              | noarch | repo-oss
i+ | libnvidia-egl-gbm1               | package | 1.1.2.1-1.1               | x86_64 | repo-oss
i+ | libnvidia-egl-gbm1-32bit         | package | 1.1.2.1-1.1               | x86_64 | repo-oss
i+ | libnvidia-egl-wayland1           | package | 1.1.21-1.1                | x86_64 | repo-oss
i+ | libnvidia-egl-wayland1-32bit     | package | 1.1.21-1.1                | x86_64 | repo-oss
i+ | libnvidia-egl-x111               | package | 1.0.5-1.1                 | x86_64 | repo-oss
i+ | libnvidia-egl-x111-32bit         | package | 1.0.5-1.1                 | x86_64 | repo-oss
i+ | libnvidia-gpucomp                | package | 580.119.02-43.1           | x86_64 | repo-non-free
i+ | libnvidia-gpucomp-32bit          | package | 580.119.02-43.1           | x86_64 | repo-non-free
i+ | nvidia-common-G06                | package | 580.119.02-43.1           | x86_64 | repo-non-free
i+ | nvidia-compute-G06               | package | 580.119.02-43.1           | x86_64 | repo-non-free
i+ | nvidia-compute-G06-32bit         | package | 580.119.02-43.1           | x86_64 | repo-non-free
i+ | nvidia-compute-utils-G06         | package | 580.119.02-43.1           | x86_64 | repo-non-free
i+ | nvidia-driver-G06-kmp-default    | package | 580.119.02_k6.18.0_1-43.1 | x86_64 | repo-non-free
i+ | nvidia-gl-G06                    | package | 580.119.02-43.1           | x86_64 | repo-non-free
i+ | nvidia-gl-G06-32bit              | package | 580.119.02-43.1           | x86_64 | repo-non-free
i+ | nvidia-modprobe                  | package | 580.119.02-21.1           | x86_64 | repo-non-free
i+ | nvidia-persistenced              | package | 580.119.02-2.1            | x86_64 | repo-non-free
i+ | nvidia-userspace-meta-G06        | package | 580.119.02-26.1           | x86_64 | repo-non-free
i+ | nvidia-video-G06                 | package | 580.119.02-43.1           | x86_64 | repo-non-free
i+ | nvidia-video-G06-32bit           | package | 580.119.02-43.1           | x86_64 | repo-non-free
i+ | nvidia-xconfig                   | package | 580.119.02-2.1            | x86_64 | repo-non-free
i+ | openSUSE-repos-Tumbleweed-NVIDIA | package | 20250728.9adc675-1.1      | x86_64 | repo-oss
~ > zypper se G07                                                                                                                                                                            
Loading repository data...
Reading installed packages...

S  | Name                                              | Summary                                                                     | Type
---+---------------------------------------------------+-----------------------------------------------------------------------------+--------
   | nv-prefer-signed-open-driver-G07                  | Prefer the signed open driver when installing CUDA                          | package
   | nvidia-open-driver-G07-signed-check               | Post-build RPM inspection                                                   | package
   | nvidia-open-driver-G07-signed-cuda-check          | Post-build RPM inspection                                                   | package
   | nvidia-open-driver-G07-signed-cuda-default-devel  | Devel Package to nvidia-open-driver-G07-signed-cuda                         | package
   | nvidia-open-driver-G07-signed-cuda-kmp-default    | NVIDIA open kernel module driver for GeForce 16 series (GTX 16xx) and newer | package
   | nvidia-open-driver-G07-signed-cuda-kmp-longterm   | NVIDIA open kernel module driver for GeForce 16 series (GTX 16xx) and newer | package
   | nvidia-open-driver-G07-signed-cuda-longterm-devel | Devel Package to nvidia-open-driver-G07-signed-cuda                         | package
   | nvidia-open-driver-G07-signed-default-devel       | Devel Package to nvidia-open-driver-G07-signed                              | package
   | nvidia-open-driver-G07-signed-kmp-default         | NVIDIA open kernel module driver for GeForce 16 series (GTX 16xx) and newer | package
   | nvidia-open-driver-G07-signed-kmp-longterm        | NVIDIA open kernel module driver for GeForce 16 series (GTX 16xx) and newer | package
   | nvidia-open-driver-G07-signed-longterm-devel      | Devel Package to nvidia-open-driver-G07-signed                              | package

Is it simply a matter of uninstalling all packages including “G06”, and installing nvidia-open-driver-G07-signed-kmp-default ?

Just tried this, borked everything, nvidia-smi won’t work, nothing is utilising the discrete GPU anymore. I’m probably missing some steps. Gonna roll back to G06 for the time being.

Also, apparently G07 userspace libraries are broken? [https://www.reddit.com/r/openSUSE/comments/1pklfmv/nvidia_618_drivers_released_g06_g07/?utm_source=share&utm_medium=android_app&utm_name=androidcss&utm_term=1&utm_content=2]

@aliqut AFAIK the meta data issue was resolved, alas I don’t use the rpm’s with Nvidia on Tumbleweed, on Leap 16.0 I do use the rpm’s.

Have you checked ProtonDB for any possible fixes/tips?

@malcolmlewis I didn’t use rpms, I’ve installed all those packages via zypper. ProtonDB is more for game-specific fixes. All my games were functioning, until a recent update, and now non of them will open.

I’m almost certain there’s some issue with my driver installation/packages. I just can’t figure it out.

Thank you for taking the time to help by the way. Much appreciated.

@aliqut zypper is the frontend to installing the rpm’s :wink:

So did the G06 kmp rebuild on the update to the new kernel and MOK accepted on reboot?

Can you show the output from inxi -GSaz.

@malcolmlewis Pretty sure it did. I was prompted to enroll the new MOK key on reboot.

~ > inxi -GSaz                                                                               
System:
  Kernel: 6.18.4-1-default arch: x86_64 bits: 64 compiler: gcc v: 15.2.1
    clocksource: tsc avail: acpi_pm
    parameters: BOOT_IMAGE=/boot/vmlinuz-6.18.4-1-default
    root=UUID=498e1cfa-4e1f-4299-a4c2-e04a74cbcdc5 splash=silent nomodeset
    resume=/dev/disk/by-uuid/cbb744b5-7cf0-423f-8c22-f1aee2a31762
    mitigations=auto quiet security=selinux selinux=1
    rd.driver.blacklist=nouveau
  Desktop: Hyprland v: 0.53.1 with: waybar tools: avail: hyprlock vt: 2
    lm: greetd Distro: openSUSE Tumbleweed 20260109
Graphics:
  Device-1: NVIDIA TU116M [GeForce GTX 1660 Ti Mobile] vendor: Lenovo
    driver: nvidia v: 580.119.02 alternate: nouveau,nvidia_drm
    non-free: 550-580.xx+ status: current (as of 2025-11; EOL~2026-12-xx)
    arch: Turing code: TUxxx process: TSMC 12nm FF built: 2018-2022 pcie:
    gen: 3 speed: 8 GT/s lanes: 16 ports: active: eDP-1
    empty: DP-1,DP-2,HDMI-A-1 bus-ID: 01:00.0 chip-ID: 10de:2191
    class-ID: 0300
  Device-2: Luxvisions Innotech Integrated Camera driver: uvcvideo type: USB
    rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-6:3 chip-ID: 30c9:001b
    class-ID: 0e02 serial: <filter>
  Display: wayland server: X.org v: 1.21.1.21 with: Xwayland v: 24.1.8
    compositor: Hyprland v: 0.53.1 driver: X: loaded: nvidia
    unloaded: modesetting,vesa alternate: fbdev,nouveau,nv
    gpu: nvidia,nvidia-nvswitch display-ID: 1
  Monitor-1: eDP-1 model: BOE Display 0x084d built: 2018 res: 1920x1080
    dpi: 142 gamma: 1.2 size: 344x193mm (13.54x7.6") diag: 394mm (15.5")
    ratio: 16:9 modes: 1920x1080
  API: OpenGL v: 4.6.0 vendor: nvidia v: 580.119.02 glx-v: 1.4
    direct-render: yes renderer: NVIDIA GeForce GTX 1660 Ti/PCIe/SSE2
    memory: 5.86 GiB
  API: Vulkan v: 1.4.335 layers: 7 device: 0 type: discrete-gpu name: NVIDIA
    GeForce GTX 1660 Ti driver: nvidia v: 580.119.02 device-ID: 10de:2191
    surfaces: N/A device: 1 type: cpu name: llvmpipe (LLVM 21.1.7 256 bits)
    driver: mesa llvmpipe v: 25.3.3 (LLVM 21.1.7) device-ID: 10005:0000
    surfaces: N/A
  API: EGL Message: EGL data requires eglinfo. Check --recommends.
  Info: Tools: api: glxinfo,vulkaninfo gpu: nvidia-smi x11: xprop,xrandr

@aliqut that output looks fine driver wise, so likely a wine/proton issue.

Everything else is running fine, what env settings in ~/.config/hypr/hyrprland.conf?

@aliqut See https://github.com/ValveSoftware/Proton/issues/9329#issuecomment-3695149137

If you add env = MESA_VK_DEVICE_SELECT,10de:2191 or maybe a /etc/environment file with MESA_VK_DEVICE_SELECT="10de:2191" this will set the Nvidia GPU as the vulkan device.

hyprland env:

# --------NVIDIA------------
env = LIBVA_DRIVER_NAME,nvidia
env = XDG_SESSION_TYPE,wayland
# env = GBM_BACKEND,nvidia-drm
# env = __GLX_VENDOR_LIBRARY_NAME,nvidia

# --------CURSOR----------
env = HYPRCURSOR_THEME,PosysCursorBlack
env = HYPRCURSOR_SIZE,24

Adding env = MESA_VK_DEVICE_SELECT,10de:2191 didn’t resolve the issue.

I do have suspicions this might be a GPU selection problem, but nothing outside wine/proton seems to indicate this. And the fact that everything was perfectly functional until a mesa/vulkan/nvidia package update makes me think the problem lies there. I could be wrong.

~ > vkcube &                
 
[1] 16137

~ > Selected WSI platform: wayland
Selected GPU 0: NVIDIA GeForce GTX 1660 Ti, type: DiscreteGpu
~ > nvidia-smi                                                                               
Tue Jan 13 08:16:47 2026       
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 580.119.02             Driver Version: 580.119.02     CUDA Version: 13.0     |
+-----------------------------------------+------------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. |
|=========================================+========================+======================|
|   0  NVIDIA GeForce GTX 1660 Ti     On  |   00000000:01:00.0  On |                  N/A |
| N/A   39C    P0             20W /   80W |     411MiB /   6144MiB |      6%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+

+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI              PID   Type   Process name                        GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|    0   N/A  N/A            8579      G   Hyprland                                 79MiB |
|    0   N/A  N/A            8632      G   Xwayland                                  2MiB |
|    0   N/A  N/A            8976      G   /app/zen/zen                            176MiB |
|    0   N/A  N/A           14046      G   kitty                                    86MiB |
|    0   N/A  N/A           16137    C+G   vkcube                                   23MiB |
+-----------------------------------------------------------------------------------------+

@aliqut and what about the report I linked and Proton not selecting the correct device?

@malcolmlewis Just read the report you linked, seems like the issue I’m having.
Just tried downgrading my NVIDIA drivers, but ran into issues because I cannot downgrade the kernel alongside them. Guess I have to wait till this is resolved upstream?

@aliqut That’s why I asked you to try that Mesa environment setting to see if overriding the selection may help…

I’d suggest adding your voice to that report.

@malcolmlewis Environment variables didn’t work unfortunately. Gave up on trying to downgrade the NVIDIA drivers, and I’d rather not use NVIDIA’s .run installer and manage drivers manually. Just gonna wait this out.

Thank you for your help.

@aliqut I use the run (590.48.01) files here without issues on Tumbleweed. But hopefully an upstream fix won’t take long?

You might look at the flatpak version instead (install as your user, not system)?

@malcolmlewis Just tried the 590.48.01 run, doesn’t work. Based on that GitHub issue, it’s up to Proton devs to resolve the problem, not NVIDIA.

What do you mean by using the flatpak version? Flatpak version of what?

@aliqut If you tried that version, then you can select the older version which you indicated worked?

https://download.nvidia.com/XFree86/Linux-x86_64/

I meant the flatpak version of wine and proton?

@malcolmlewis I tried installing drivers 565.77, and 570.211.01, couldn’t build the kernel modules, complained about missing header files, on both default and longterm kernel versions. I made sure to install required deps beforehand.

Just gonna wait this out. Thanks again

1 Like

This is absolutely bizarre, but for whatever reason, running nvidia-smi fixes the issue for me until next reboot.

1 Like