darktable-org / darktable-org/darktable

implementing communication with the wayland color management protocol

Open
#19,322 9 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

no-issue-activity
Dominant language
C
Stars
13.1k
Forks
1.4k
Avg merge
22h 14m
Merged PRs (30d)
198

Description

Does anybody here already work on implementing the communication with the wayland color management? So darktable can show colors outside of srgb without switching off system-wide wayland color management?

From my point of view, there will be no way around this. Chrome is the first program that can definitely do this. Krita and Digikam are working on it.
Of course, in darktable's case, there are at least two challenges: darktable uses gtk3 and porting to gtk4 seems difficult, plus darktable uses xwayland.

I did some research and it seems that there might be some "workarounds", e.g. chatgpt suggested to create a proxy that does the communication between darktable an wayland. However, I cannot check how reliable such information is because I don't have enough technical knowledge.

Which way would be the preferable one for darktable? Letting darktable do its own color management (then darktable should somehow be able to tell this to wayland), or leaving color management to wayland? My feeling is that it's the first one, since apparently that's how the Krita devs approached this.

Or is this simply something that's impossible to do in darktable?

I am constantly doing research about this and I am willing to continue if none else does, but for me this seems quite difficult, as a humanist with some very minor coding skills I am not the most qualified person for this.

The easiest workaround that I could think of is letting darktable check if wayland color management is active when it starts, and if yes, switching it temporarily off as long as the darktable window is open. Would this be better than nothing?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files, tests, or entry points are named. Start by researching the Wayland color management protocol and how darktable's GTK3 and Xwayland usage affects it, while comparing the approaches mentioned for Chrome, Krita, and digiKam. Done would mean a defined implementation path that lets darktable display colors beyond sRGB without disabling system-wide Wayland color management.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
computer-graphics, desktop
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.