DisplayCAL on Wayland: What Works and What Doesn’t
Running Linux with Wayland and wondering why DisplayCAL behaves strangely? You are not alone. GitHub issue #133 (“wayland no access to video card gamma table”) has been open since 2022 and explains the fundamental limitation.
The Core Problem
DisplayCAL’s calibration step loads correction curves into the video card gamma table (the GPU LUT). Under X11, applications can do this freely. Under Wayland, the compositor does not expose gamma table access to applications. This is a deliberate design decision. No application, DisplayCAL included, can work around it from user space.
What Works Under Wayland
- Profiling. Measuring the display and building an ICC profile works fine. The instrument, the patches, and the math do not need the gamma table.
- Profile installation via colord. colord is the color management daemon that GNOME and KDE use. DisplayCAL can hand it your profile and color-managed apps will use it correctly.
- Verification reports. Measuring and reporting on your display works normally.
- Interactive display adjustment. As of 3.9.18, the previously reported hang of the interactive adjustment step under Wayland is fixed. Upgrade if you hit it.
What Does NOT Work
- Loading calibration curves into the GPU (the “calibration” part of “calibrate and profile”). The video LUT simply cannot be written under Wayland.
- The profile loader applying vcgt corrections at login, for the same reason.
Recommended Workflows
Option A. Profile-only under Wayland (simplest)
- Use your monitor’s on-screen controls to get close to your target first: set brightness, RGB gains for white point (D65), and gamma preset.
- In DisplayCAL, run a profile-only workflow (skip the calibration stage).
- Install the profile. Color-managed applications (GIMP, Krita, Firefox with color management) will display correctly.
Option B. Calibrate under X11, use under Wayland
- At the login screen, choose an Xorg / X11 session instead of Wayland.
- Run the full DisplayCAL calibration and profiling workflow there.
- Save the profile. You can then use the ICC profile back under Wayland (the GPU LUT part will not apply there, but the profile characterization remains valid).
Things to Disable Before Measuring
Night-light and blue-filter features quietly shift your white point and will corrupt measurements. Turn them off. This applies on every platform, but Wayland desktops love enabling them by default.
Still Having Trouble?
- Make sure you are on 3.9.18 or newer for the Wayland adjustment hang fix.
- See our Linux setup guide and the troubleshooting hub.
- Technical discussion continues in issue #133.
How to Check Whether You Are on Wayland
Open a terminal and run:
echo $XDG_SESSION_TYPE
If it prints wayland, the limitations on this page apply to you. If it prints x11, you have full gamma table access and can ignore this page. Most distributions let you pick the session type on the login screen via a gear or cog icon.
A Note on Expectations
It is worth being clear about what you give up under Wayland: only the video LUT calibration stage. Everything else DisplayCAL does, measuring, profiling, verification, 3D LUT generation for video software, works the same. For photography and design work in color-managed applications, a profile-only workflow under Wayland is a complete solution, not a compromise. The X11 session is only needed if you specifically want GPU-level calibration curves loaded, for example to make unmanaged applications look right.
Related: DisplayCAL troubleshooting hub | DisplayCAL on Linux | Quickstart guide
