Skip to content

fix: Mini Apps crash on NVIDIA + Wayland (disable WebKitGTK DMABUF renderer)#396

Open
denfry wants to merge 1 commit into
AyuGram:devfrom
denfry:fix/webview-dmabuf-nvidia-wayland
Open

fix: Mini Apps crash on NVIDIA + Wayland (disable WebKitGTK DMABUF renderer)#396
denfry wants to merge 1 commit into
AyuGram:devfrom
denfry:fix/webview-dmabuf-nvidia-wayland

Conversation

@denfry

@denfry denfry commented Jun 11, 2026

Copy link
Copy Markdown

Closes #393

Problem

On Wayland (tiling compositors such as Hyprland) with the proprietary NVIDIA driver, launching any Mini App (Telegraph, Wallet, …) opens a frozen, empty window. Both the Mini App and the main window become unresponsive and have to be killed with pkill -9. The log shows the webview's web process dying immediately, after which BotWebView posts events to it:

BotWebView Error: Post event "fullscreen_changed" on crashed webview.
BotWebView Error: Post event "safe_area_changed" on crashed webview.

The affected setup reports OpenGL ES 3.2 NVIDIA 580.159.04.

Root cause

Mini Apps render via WebKitGTK in a helper subprocess. WebKitGTK's default DMA-BUF / GBM renderer crashes the web process immediately on the proprietary NVIDIA driver under Wayland. lib_webview only disables GL for the Raster backend, so with NVIDIA's OpenGL backend the crash-prone DMA-BUF path stays active. This is a well-known WebKitGTK/NVIDIA issue (see WebKit bug 262607).

Fix

Set WEBKIT_DISABLE_DMABUF_RENDERER=1 at Linux startup in Platform::start(), which makes WebKitGTK fall back to a working buffer-sharing path. The webview helper is spawned as a subprocess that inherits this environment, and WebKitGTK is used only for Mini Apps, so nothing else in the app is affected. The value is only set when the user hasn't already defined it, so it stays overridable.

lib_webview is an upstream-pinned submodule, so the fix is applied in AyuGram's own source rather than the submodule.

Testing

This is an NVIDIA/Wayland-specific GPU-driver crash and could not be reproduced on the development machine. Verification would be confirming a Mini App now opens normally on affected hardware.


This PR was AI generated.

…K DMABUF renderer

WebKitGTK's DMA-BUF renderer crashes the web process immediately on the
proprietary NVIDIA driver under Wayland, so Mini Apps open as frozen, empty
windows that have to be force-killed. Set WEBKIT_DISABLE_DMABUF_RENDERER=1
at startup (overridable) so the inherited webview helper subprocess falls
back to a working buffer-sharing path. WebKitGTK is used only for Mini Apps,
so nothing else is affected.

Closes AyuGram#393
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Crashes when trying to launch mini apps in tiling composer via Wayland

1 participant