HDR monitor support
This page will serve as a guide to the current state of HDR monitor support on Linux. To better understand the challenges involved you can watch the video in this article.
Support for HDR is not yet merged in Wayland and as such is also not yet implemented in most display servers.
X.org has no plan to support HDR [1].
Current progress includes:
- KDE Plasma 6.0 introduced experimental HDR support for Wayland session. See KDE#HDR for launch options required to use HDR.
- Wayland (and Wayland clients): no support for passing HDR metadata to the display [2] [3].
- DRM clients can directly pass HDR metadata, but this is not available from regular userspace clients, only specialized software can use it.
- COSMIC developers have promised HDR support in the initial stable release.
- Hyprland will require support in its rendering backend Aquamarine [4].
- Wlroots, "Add HDR signalling" MR.
- GNOME has HDR support in progress [5]
Requirements
- HDR capable display.
- HDR capable graphics driver: AMDGPU and NVIDIA (550.54.14+) are confirmed to work.
- Supported kernel:
- Officially supported kernels - linux or linux-zen.
- linux-neptune-65AUR - the kernel from SteamOS. Supports multiplane HDR scanout for AMD GPUs, which greatly improves display latency and VRR stability by displaying HDR content without compositing. It has been tested to work well with RX 6000 series of desktop GPUs.
- A supported display server, see #Configuration
- A game, video player, or browser with HDR support
- Games: List of games supporting HDR.
- Video players: mpv, maybe more, help expand this list!
- Web browsers: No web browsers support HDR on Linux at this time.
- A supported compatibility layer if playing Windows games: Wine or Steam Proton.
-
DXVK (2.1+) or VKD3D-Proton (2.8+), depending on DirectX version used by the game. Tip: Use either Proton 8.0, Experimental, or Proton GE 44+. All come packaged with sufficient DXVK and VKD3D versions.
-
DXVK (2.1+) or VKD3D-Proton (2.8+), depending on DirectX version used by the game.
Configuration
KDE Plasma
See KDE#HDR.
Gamescope with Steam session
Valve's Steam compositor gamescope offers experimental HDR support. Following these steps will allow you to try out Valve's Steam client running through the HDR capable gamescope.
Tip: An AMDGPU is recommended for use with gamescope - NVIDIA is known to have critical issues including flickering.
- Install gamescope and gamescope-session-steam-gitAUR
- You may create the optional config file
~/.config/environment.d/gamescope-session.conf
with the following content:if [ "$XDG_SESSION_DESKTOP" = "gamescope" ] ; then SCREEN_WIDTH=1920 SCREEN_HEIGHT=1080 CONNECTOR=*,eDP-1 CLIENTCMD="steam -gamepadui -steamos3 -steampal -steamdeck -pipewire-dmabuf" GAMESCOPECMD="/usr/bin/gamescope --hdr-enabled --hdr-itm-enable \ --hide-cursor-delay 3000 --fade-out-duration 200 --xwayland-count 2 \ -W $SCREEN_WIDTH -H $SCREEN_HEIGHT -O $CONNECTOR" fi
- Update the resolution values above to the correct ones. You can list your displays by running
xrandr --query
. - You may need to set the Display
CONNECTOR
if it does not pick the right one by default.
- Update the resolution values above to the correct ones. You can list your displays by running
You can now start gamescope
from your login manager or a terminal using one of the following steps:
Via a login manager
Log out and select the Steam Big Picture in your login manager and log in.
Via the command line
- Go to a new TTY by pressing
Ctrl+Alt+F2
- Log in and run
gamescope-session-plus steam
to start the standalone steam session in HDR.- If networking does not work you can fix it by installing and enabling NetworkManager.
Configure Steam
- In the general settings, under Display, you should now see HDR settings. Enable HDR and Experimental HDR Support.
- Select an HDR compatible game and click on the cog next to it.
- Set Compatibility to Force Proton 8.0 or Proton Experimental.
- Set Game Resolution to match your monitor otherwise it will launch at Steam Deck native resolution.
- Click Play to start the game. Check the in-game settings to see if the HDR setting is available and enable it.
- To switch back to your normal session, select Power and Switch to desktop mode from the Steam menu.
See also
- https://zamundaaa.github.io/wayland/2023/12/18/update-on-hdr-and-colormanagement-in-plasma.html
- https://github.com/ChimeraOS/gamescope-session/tree/main
- https://www.reddit.com/r/linux_gaming/comments/10m2gyx/guide_alpha_test_hdr_on_linux/
- https://forums.developer.nvidia.com/t/plasma-6-0-hdr-success-report/284564