Fix blank Flatpak canvas on NVIDIA Wayland - #713
Open
birnam wants to merge 1 commit into
Open
Conversation
On NVIDIA drivers newer than 555 under Wayland, the native NVIDIA GLX path can leave the wxGTK OpenGL canvases in Prepare and Preview blank. The AppImage launcher already avoids this by routing OpenGL through Mesa Zink, but the Flatpak entrypoint only applied the WebKit DMA-BUF workaround. Detect the mounted org.freedesktop.Platform.GL.nvidia-* extension because glxinfo and nvidia-smi are unavailable in the Flatpak runtime. For affected drivers, select Mesa GLX/EGL and Zink so OpenGL is translated to Vulkan and rendered through the NVIDIA Vulkan driver. Keep ZINK_FORCE_OVERRIDE and ZINK_DISABLE_OVERRIDE as explicit controls. Verified on CachyOS KDE Wayland with an NVIDIA RTX 3090 and driver 610.57.04. Prepare and Preview render correctly with the override.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fix the blank Prepare and Preview 3D canvases in the Flatpak build on recent NVIDIA drivers under Wayland.
This is a counterpart to what was fixed in OrcaSlicer PR OrcaSlicer#8373. That PR was successfully pulled into Snapmaker Orca Feb 2025 but only into the AppImage build.
With Snapmaker Orca moving to Flatpak distribution, this was missing. This is why I was able to use the application when I built it myself as an AppImage, but why myself and others were only seeing a blank Prepare and Preview window when using the official Flatpak.
Root cause
The AppImage launcher already routes OpenGL through Mesa Zink for affected NVIDIA drivers, but this workaround was missing from the Flatpak entrypoint.
The native NVIDIA GLX path with drivers newer than 555 through XWayland can leave the wxGTK OpenGL canvases blank.
Fix
ZINK_FORCE_OVERRIDEandZINK_DISABLE_OVERRIDEcontrols.Verification
Tested on CachyOS with KDE Wayland, an NVIDIA RTX 3090, and driver 610.57.04. Prepare and Preview now render correctly.
POSIX shell syntax, ShellCheck, whitespace, and activation-condition tests pass.
Impact
The change is limited to affected NVIDIA Wayland Flatpak sessions. Non-NVIDIA and X11 sessions remain unchanged. Rendering remains hardware accelerated through the NVIDIA Vulkan driver.