Description
System Information
- OS: Arch Linux (kernel 6.15.3-arch1-1)
- Desktop Environment: Hyprland (Wayland)
- GPU: NVIDIA (proprietary, nvidia-dkms)
- Qt version: 6.9.1
- Python: 3.13.3
- qutebrowser version: 3.5.1
- Backend: QtWebEngine 6.9.1 (Chromium 130.0.6723.192)
Problem Description
Running qutebrowser under Wayland (Hyprland) results in extremely poor performance, including unresponsive UI, delayed rendering, and high CPU usage. After inspecting chrome://gpu
, it appears hardware acceleration is entirely disabled, and the browser is falling back to software rendering across the board.
To restore usable performance, I must set:
export QT_QPA_PLATFORM=xcb
This forces the application to use X11 compatibility mode, which then enables GPU acceleration and results in smooth browsing. However, this defeats the purpose of using a Wayland-native compositor and setup.
GPU Diagnostic Output (chrome://gpu)
Canvas: Software only. Hardware acceleration disabled
Compositing: Software only. Hardware acceleration disabled
WebGL: Disabled
WebGL2: Disabled
Vulkan: Disabled
OpenGL: Disabled
Video Decode: Software only. Hardware acceleration disabled
Command Line:
--disable-gpu --use-gl=disabled --in-process-gpu
This strongly suggests that GPU support is forcibly disabled, likely due to QtWebEngine or Chromium blacklisting my environment.
Environment Configuration
export LIBVA_DRIVER_NAME=nvidia
export GBM_BACKEND=nvidia-drm
export __GLX_VENDOR_LIBRARY_NAME=nvidia
export WLR_NO_HARDWARE_CURSORS=1
export QT_OPENGL=egl
export EGL_PLATFORM=wayland
export QT_QPA_PLATFORM=wayland
export QT_QUICK_BACKEND=opengl
export QT_WAYLAND_DISABLE_WINDOWDECORATION=1
export LIBGL_ALWAYS_SOFTWARE=0
export XDG_SESSION_TYPE=wayland
All other Qt and EGL/GBM related environment variables appear correctly set.
Expected Behavior
qutebrowser should work with GPU acceleration under Wayland if all the required EGL/GBM/NVIDIA conditions are met. It should not require falling back to QT_QPA_PLATFORM=xcb to become usable.
Additional Notes
- Chromium and Firefox both work well under Wayland on the same system.
- This issue may be caused by Chromium's internal GPU blacklist triggered by NVIDIA + Wayland combination.
- The --disable-gpu and --use-gl=disabled flags passed by default are concerning — is there a way to override them in qutebrowser or force Chromium to attempt acceleration?
Please let me know if this is a known issue with QtWebEngine/NVIDIA and if there are any viable workarounds.