arrowvortex-wine/docs/wayland.md
2026-05-12 10:56:41 -07:00

2.0 KiB
Raw Blame History

Wine on KDE Plasma Wayland

ArrowVortexs File → Open dialog does not appear when the Windows build is run under Wine on KDE Plasma with a Wayland session. WINEDEBUG traces on commdlg showed GetOpenFileNameW being entered with plausible flags and COMDLG32_SetCommDlgExtendedError(0) cleared, but no usable dialog followed—consistent with Wines graphics stack (notably winewayland) failing to host the legacy common-file-dialog UI on this compositor. We tried unsetting WAYLAND_DISPLAY in the launcher so Wine would prefer Xwayland; that did not fix it for us. We searched nixpkgs for similar Wine workarounds and found no comparable pattern (only unrelated apps, e.g. Qt wrappers forcing X11). In the package we then added a one-shot wine reg add to set HKCU\Software\Wine\DriversGraphics = x11 (pin winex11.drv), plus WINEDLLOVERRIDES to skip Mono/Gecko prompts, and stepped the Wine build through wineWow64Packages.stagingFull and unstableFull. None of that produced a reliable File → Open on Plasma Wayland here, so this path is abandoned for now; anyone retrying later should use a fresh WINEPREFIX after changing Wine version or registry forcing, and may want to log with WINEDEBUG=+x11drv,+wayland,+commdlg to see which driver actually loads.

0024:trace:ole:CoRegisterInitializeSpy 00007FFFFE276FD0, 00007FFFFE276FE0
0024:trace:ole:CoInitializeEx 0000000000000000, 0x2
0024:trace:ole:CoInitializeEx Initializing the COM libraries
0024:trace:ole:apartment_construct creating new apartment, model 2
0024:trace:ole:apartment_construct Created apartment on OXID 2000000024
0024:trace:ole:apartment_get_or_create Created main-threaded apartment with OXID 2000000024
0024:trace:commdlg:GetOpenFileNameW flags 0x00001000
0024:trace:commdlg:COMDLG32_SetCommDlgExtendedError (00000000)
0024:trace:shell:SHFree 0000000000000000
0024:trace:shell:SHFree 0000000000000000
0024:trace:shell:SHFree 0000000000000000
0024:trace:shell:SHFree 0000000000000000
0024:trace:shell:SHFree 0000000000000000