GNOME Shell does actually have everything needed to do colour calibration available on Wayland - the missing pieces are unfortunately in the calibration applications (tho there is some Wayland-specific trickiness). Many of the current issues are limitations of the ArgyllCMS tools, and because that’s mostly a single-person project and doesn’t have any public source code repository, it’s not really welcoming towards new contributors.
Some of the specific issues that I know of:
- ArgyllCMS does not support reading or writing the VideoLUT (gamma ramps) on GNOME Wayland. It currently uses an X11 (Xrandr) interface for this, but Xwayland doesn’t pass that through to the Wayland compositor. Reading and writing the video LUT on GNOME Wayland requires using a DBus interface to talk to Mutter. This issue is also being tracked for DisplayCal-py3 but there’s no way for them to fix it.
- Wayland windows can’t be positioned by applications. Monitor calibration software relies on being able to display a square of a colour being measured at a specific location on a specific monitor where the colour sensor will be placed. Either a special new (wayland or dbus) protocol is needed to display monitor calibration swatches, or the calibration software will have to fullscreen itself onto the monitor being measured.
Once those details are sorted out, everything else should “just work”; the colord interface to install the colour profiles works the same on Wayland as it did on X11, and GNOME Shell already handles loading calibration data from the configured profiles on Wayland.
For the time being, I’ve been temporarily switching to X11 to run DisplayCal, and then switching back to Wayland and manually re-adding/associating the icc profiles.