It’s possible to apply colour management profiles (.icc files) on Linux/X11 desktops even if you don’t use Gnome or KDE, by using xiccd. Unfortunately the official documentation for xiccd is very terse.
Start by installing xiccd and ColorManager.
apt-get install xiccd colord
Start xiccd from early in ~/.xsession
:
nohup /usr/bin/xiccd &
Note that xiccd takes some time to register with D-BUS.
Next I got the colord names of the display devices:
colormgr get-devices-by-kind display
The “Object Path” lines are the relevant ones here; they’ll be something like:
Object Path: /org/freedesktop/ColorManager/devices/xrandr_xxx_me_1000
I renamed my .icc files according to the last component of the object path, e.g. “xrandr_xxx.icc” and copied my ICC files to ~/.local/share/icc. This can also be achieved with “colormgr import-profile”.
Get the Object Path of the profiles you’ve added:
colormgr get-profiles
Look for the lines like:
Object Path: /org/freedesktop/ColorManager/profiles/icc_deadbeeff00dface0123456789abcdef_me_1000
Take the Object Paths for the device and profile to associate them together. This is persisted by colord so only needs to be done once.
colormgr device-add-profile /org/freedesktop/ColorManager/devices/xrandr_xxx_me_1000 /org/freedesktop/ColorManager/profiles/icc_deadbeeff00dface0123456789abcdef_me_1000
Additionally, the profile needs to be made default for each X session. This needs to run from ~/.xsession sometime after xiccd has had time to register devices with D-BUS. I just leave it at the end of my .xsession but you could also use a sleep
or poll for the devices via colormgr get-devices
.
/usr/bin/colormgr device-make-profile-default /org/freedesktop/ColorManager/devices/xrandr_xxx_me_1000 /org/freedesktop/ColorManager/profiles/icc_deadbeeff00dface0123456789abcdef_me_1000
See also: Pascal de Bruijn’s post on the subject. And if you use GNOME or KDE, use their colour management UIs instead. For KDE: System Settings > Desktop Effects > Advanced > Enable color correction.