bug: Blank window from 'webkitgtk2-4.1' bug (with temporary fix)
Hello! Been using this module and it's wonderful! I've encountered a very odd bug, and after some digging I've found a temporary workaround. After an update to Manjaro install, building and running a ttytm.webview example project, I encountered the following error:
src/nv_gbm.c:99: GBM-DRV error (nv_gbm_bo_create): DRM_IOCTL_NVIDIA_GEM_ALLOC_NVKMS_MEMORY failed (ret=-1)
Failed to create GBM buffer of size 800x600: Invalid argument
src/nv_gbm.c:99: GBM-DRV error (nv_gbm_bo_create): DRM_IOCTL_NVIDIA_GEM_ALLOC_NVKMS_MEMORY failed (ret=-1)
Failed to create GBM buffer of size 800x600: Invalid argument
src/nv_gbm.c:99: GBM-DRV error (nv_gbm_bo_create): DRM_IOCTL_NVIDIA_GEM_ALLOC_NVKMS_MEMORY failed (ret=-1)
Failed to create GBM buffer of size 800x600: Invalid argument
Failed to create EGL images for DMABufs with file descriptors -1, -1 and -1
A window did show, but it was not rendering anything within.
Lots of Nvidia related things in here, and after some searching, I've found that this is also an issue with Tauri: https://github.com/tauri-apps/tauri/issues/7910 Seemed to also be discussed here on a GTK4 webkit bug post: https://bugs.webkit.org/show_bug.cgi?id=228268 And here I found a work around posted by somebody: https://github.com/wailsapp/wails/issues/2977#issuecomment-1761765185
Solution:
The temporary workaround is running the following in a terminal session before running/building an app with :
export WEBKIT_DISABLE_DMABUF_RENDERER=1
Posting this incase anyone else has this issue when using this module/an updated webkit lib.
Hey @scurty-labs!
thanks for the feedback :100: and for providing a workaround for those who run into it!
This looks like a very recent bug people might run into.
I ran into this issue trying use webkit2gtk on arch linux (with an nvidia card) and I was able to fix it without setting WEBKIT_DISABLE_DMABUF_RENDERER=1.
Here is how I fixed it:
-
Check if you have modesetting enabled via
cat /sys/module/nvidia_drm/parameters/modeset -
If you see printed
Nthen you need to enable it withecho options nvidia_drm modeset=1 | sudo tee /etc/modprobe.d/nvidia_drm.conf -
Restart your computer