Color profile fails to apply at login

Hi,

I’m running Fedora 36 KDE X11 with a Nvidia graphics card and the Nvidia driver (and an external display)
colord and colord-libs packages are installed via dnf.

I’ve created an icc color profile for my display via DisplayCal GitHub - eoyilmaz/displaycal-py3 at develop and a Calibrite Color checker. Once added in Settings - > Color Corrections → Profiles it was added to the display under devices (Acer XV322QK KV) and can be selected and works well. (They are not currently installed system wide, so there’s nothing in /var/lib/colord/icc though there used to be as I have tried that to see whether it would make a difference for this issue and it didn’t seem to)

It is never applied successfully upon reboot/relog. It shows as selected under Color corrections but something has applied something else on top or the selection has no bearing on the current profile applied. If I manually select the default profile for the display then the colors on the screen do not change (indicating that on startup the default profile is in effect if not selected), once I again select my profile it is successfully applied.

if I do sudo journalctl -b | grep 'colord' after a reboot there’s:

okt 01 10:21:50 feds kded5[1843]: kf.coreaddons: "Could not load plugin from colord: The shared library was not found."
okt 01 10:21:50 feds kded5[1843]: kf.kded: found kded module "colord" by prepending 'kded_' to the library path, please fix your metadata.
okt 01 10:21:50 feds systemd[1]: Starting colord.service - Manage, Install and Generate Color Profiles...
okt 01 10:21:50 feds systemd[1]: Started colord.service - Manage, Install and Generate Color Profiles.
okt 01 10:21:50 feds audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=colord comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
okt 01 10:21:50 feds kded5[1843]: colord: "/home/to/.local/share/icc/.." is not an ICC profile
okt 01 10:21:50 feds kded5[1843]: colord: "/home/to/.local/share/icc/." is not an ICC profile
okt 01 10:21:50 feds kded5[1843]: colord: "/home/to/.local/share/icc/.." is not an ICC profile
okt 01 10:21:50 feds kded5[1843]: colord: "/home/to/.local/share/icc/." is not an ICC profile
okt 01 10:21:50 feds kded5[1843]: colord: EDID ICC Profile already exists "/home/to/.local/share/icc/edid-2f260343331def6e51c35e9b525292df.icc"
okt 01 10:21:50 feds kded5[1843]: colord: Failed to register device: "device id 'xrandr-Acer Technologies-XV322QK KV-1145153F74200' already exists"
okt 01 10:21:50 feds kded5[1843]: colord: EDID ICC Profile already exists "/home/to/.local/share/icc/edid-2f260343331def6e51c35e9b525292df.icc"
okt 01 10:21:51 feds kded5[1843]: colord: Failed to register device: "device id 'xrandr-Acer Technologies-XV322QK KV-1145153F74200' already exists"
okt 01 10:21:51 feds kded5[1843]: colord: Failed to register device: "device id 'xrandr-Acer Technologies-XV322QK KV-1145153F74200' already exists"
okt 01 10:21:51 feds kded5[1843]: colord: EDID ICC Profile already exists "/home/to/.local/share/icc/edid-2f260343331def6e51c35e9b525292df.icc"
okt 01 10:21:51 feds kded5[1843]: colord: EDID ICC Profile already exists "/home/to/.local/share/icc/edid-2f260343331def6e51c35e9b525292df.icc"

Which seems problematic but perhaps not critically so (I can’t tell from those messages what is causing them or if they have to do with my problem)
(There are several installed profiles under my user from experimentation but that doesn’t seem to matter for the issue at thand)

I tried to login into a Wayland session instead and there under Settings → Color Corrections → Devices if I add a profile like one of the defaults, the Blue test for instance, it can be selected but it does not appear applied. Same for any profile selected.

Any suggestions?

Don’t know how you did the install.

If you followed the instructions at that link, it seems displayCAL may have been installed in a python venv which would mean it does not take effect until actually activated by the user.

If installed at the system level then it should be able to be fully activated at boot time with the proper config.

Hi
Thanks for your reply. Yes this updated version of displayCal can run from a venv but it still may affect other things (I followed the steps to install it eventually so it’s now a bit more opaque how it launches but I don’t think this matters); it does successfully install the .icc profile at the conclusion of the calibration sequence; I chose “Install profile for current user only” and got:

However the result is the same as if I would have manually added a profile in System Settings → Color Corrections → Profiles , ie the profile is listed there, can be added to a display and activated.

Have had a look around and while I still don’t know why the colord service is started with the system but fails to apply the profile that is nevertheless ticked as in use in System Settings → Color Corrections → Devices → my display (there’s no error in the journal associated with the colord.service unit that I can see) it does seem that restarting this service applies the selected profile. (I could have a script that ran on login that did that I suppose).

Further, the application redshift sometimes causes the profile to apply at login. (The normal Night Light isn’t totally compatible with Color Corrections profiles while redshift works ok with them). I tried delaying the start of Redshift at login but that did not have a noticable effect.

Edit. In addition, any .icc profile including the default ones (like “Test profile: Blue”) behaves the same way in terms of login (and Night Light but that is a separate thread)