-
-
Notifications
You must be signed in to change notification settings - Fork 33
FAQ_NVIDIA
- Notes for NVIDIA GPU Users
- Driver Types
- Required Packages
- KMS / modprobe Setup
- Environment Variables
- Common Issues
- Improving Performance on Older Nvidia Cards (Driver 470)
Note
There is no official Hyprland support for Nvidia hardware. These are community-gathered tips.
Environment variables are configured in ~/.config/hypr/UserConfigs/ENVariables.conf
Official Hyprland Nvidia wiki: wiki.hyprland.org/Nvidia
There are three setups you can use with Nvidia drivers:
-
Proprietary drivers —
nvidia-dkms(recommended for most users) -
Proprietary drivers + open kernel modules —
nvidia-open-dkms - Nouveau — open-source clean-room driver, for older/unsupported cards
Warning
For the Nvidia 50xx series (5090, 5080, etc.) or newer, the open source kernel modules are REQUIRED.
Use nvidia-open-dkms instead of nvidia-dkms.
According to Nvidia, open kernel modules are also recommended for Turing and Ampere architectures (16xx, 20xx series and later). Try both if your card supports them.
Make sure these are installed:
-
nvidia-utils— userspace graphics drivers (required)- Also install
lib32-nvidia-utilsif you use Steam, Wine, or other multilib/gaming packages
- Also install
-
egl-wayland— required for EGL + Wayland compatibility- On Ubuntu:
libnvidia-egl-wayland1andlibnvidia-egl-gbm1
- On Ubuntu:
You need to enable modeset for the Nvidia DRM kernel module, and optionally load the Nvidia modules early in the boot process (Early KMS).
See the official wiki for full instructions: Nvidia — Early KMS, modeset and fbdev
Edit ~/.config/hypr/UserConfigs/ENVariables.conf. Enable/disable variables one at a time and reboot between changes — some combinations can prevent Hyprland from starting.
Caution
If Hyprland doesn't start after a change, press CTRL + ALT + F2 (or F3) to log into TTY and revert the change. Test by typing Hyprland in TTY.
env = LIBVA_DRIVER_NAME,nvidia # Enable Nvidia hardware acceleration
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
env = GBM_BACKEND,nvidia-drm # Force GBM backendenv = __GL_GSYNC_ALLOWED,1 # Allow G-Sync on capable monitors
env = __GL_VRR_ALLOWED,0 # Adaptive Sync — set to 0 to avoid game issues# Set primary GPU explicitly (colon-separated list, first = primary)
env = AQ_DRM_DEVICES,/dev/dri/card1:/dev/dri/card0
# Disable forcing linear modifiers on Multi-GPU buffers (may help Nvidia issues)
env = AQ_FORCE_LINEAR_BLIT,0
# Disable explicit syncing on multi-GPU buffers
env = AQ_MGPU_NO_EXPLICIT,1
# Use legacy DRM interface instead of atomic mode setting — NOT recommended
# env = AQ_NO_ATOMIC,1Electron and CEF apps flicker because they run in XWayland by default. To enable native Wayland:
env = ELECTRON_OZONE_PLATFORM_HINT,autoThis works for Vesktop, VSCodium, Obsidian, and most Electron apps.
For apps that need manual flags, launch with:
--enable-features=UseOzonePlatform --ozone-platform=wayland
For Spotify on Arch, use spotify-launcher (official repos) instead of the AUR package. Then create ~/.config/spotify-launcher.conf:
[spotify]
extra_arguments = ["--enable-features=UseOzonePlatform", "--ozone-platform=wayland"]On NixOS, set NIXOS_OZONE_WL=1 to automatically configure all Electron/CEF apps for Wayland.
As of Electron 35 / Chromium 134, you can also add this flag to fully resolve flickering via the syncobj protocol:
--enable-features=WaylandLinuxDrmSyncobj
XWayland games may flicker or show frames out-of-order. This is due to implicit/explicit sync issues in the Nvidia driver.
Fix: Ensure you have:
-
xorg-xwayland≥ 24.1 -
wayland-protocols≥ 1.34 - Nvidia driver ≥ 555
These enable explicit sync and should resolve flickering.
If your GPU is no longer supported by driver 555+, install the 535xx series instead:
Note
On Arch Linux and NixOS, the steps below are already handled for you.
Enable the Nvidia power management services:
sudo systemctl enable nvidia-suspend.service
sudo systemctl enable nvidia-hibernate.service
sudo systemctl enable nvidia-resume.serviceAdd this to your kernel parameters:
nvidia.NVreg_PreserveVideoMemoryAllocations=1
For NixOS:
hardware.nvidia.powerManagement.enable = true;Warning
If you're using open Nvidia drivers and still have suspend issues, try switching to fully proprietary drivers.
If you have issues with multi-monitor on a laptop with Intel iGPU + Nvidia dGPU:
- Remove
optimus-managerif installed (disabling the service is not enough — fully uninstall it) - Change BIOS from hybrid graphics to discrete graphics mode
For Multi-GPU setups where monitors attached to Nvidia aren't working, try:
- Change primary GPU via
AQ_DRM_DEVICES(see env vars above) - Set
AQ_FORCE_LINEAR_BLIT=0to disable forced linear modifiers on Multi-GPU buffers
Hardware video acceleration on Nvidia + Wayland is possible via nvidia-vaapi-driver.
Install:
# Arch
sudo pacman -S libva-nvidia-driverThen add to your env vars:
env = NVD_BACKEND,directFirefox and Chromium have additional setup steps — see the nvidia-vaapi-driver README.
- FAQ - KooL Hyprland Related
- FAQ - Ubuntu & Debian Related
- FAQ - NVIDIA
- FAQ - File-Managers Related
- FAQ - Login & Login Managers
- FAQ - Monitor Configuration
- FAQ - Notifications
- FAQ - Rofi Launcher Related
- FAQ - Theming & Decorations
- FAQ - Terminal Related
- FAQ - Wallpaper Related
- FAQ - Waybar Related
- FAQ - 3rd Party Packages Related