For a long time now I’ve been patching the default GIMP code to better suit my own editing needs, and since 2015 I’ve provided the patched code for other people to use. My motivations for patching GIMP to make “GIMP-CCE” are as follows:
-
To have code that disabled the code in default GIMP that switches between linearized RGB and RGB encoded using the sRGB TRC. This has allowed me to more easily test default GIMP code to make sure that the “linearizing/unlinearizing” code was working as expected.
-
To have code that allows “right now” to edit in any linear gamma well-behaved RGB working space. Default GIMP still has hard-coded sRGB parameters, but a lot of progress has been made towards supporting “any RGB”, in large part thanks to Pippin’s recent “anyrgb” babl code.
-
To have code that provided functionality that isn’t, or rather wasn’t yet in default GIMP, such as LCH color pickers and the LCH Hue-Chroma tool and Luminance blend mode. For some time now default GIMP has had as much LCH/Luminance blend support as my patched GIMP.
My original goal with “CCE” was to keep it up-to-date with default GIMP through the initial release of GIMP 2.10. But this might not happen because of some fairly drastic recent code changes in default babl and default GIMP. The recent changes in the babl code have provided the groundwork for default GIMP to eventually support “anyrgb” and “anytrc”. But these same changes also have made “default babl” completely incompatible with my “CCE” version of babl. Keeping GEGL-CCE up with default GEGL is still fairly easy. But keeping GIMP-CCE up to date with default GIMP is increasingly time-consuming.
Currently CCE is up-to-date with default GIMP through November 8, 2017, which is GIMP-2.9.7. I’ll try to make one last update to CCE, once GIMP 2.10 has officially been released, but I make no guarantees. Personally these days I’m using default GIMP as much or more than my patched GIMP, partly to help with catching remaining bugs and partly because I really like not having to make an ICC profile conversion just to switch between linear and perceptual RGB.
I put some “warnings” in my “how to build CCE” tutorial (High bit depth GIMP patched for high end workflows), that I’ll repeat here:
First, these two articles are very out of date:
Second, “CCE” XCF files are not completely compatible with default GIMP XCF files: Default GIMP doesn’t properly interpret “CCE” layer blend modes and vice versa. Also, if you save a default GIMP XCF file that’s at linear precision, in CCE you need to assign a linear gamma version of the sRGB profile. Switching back and forth between CCE and default GIMP can be done, but it’s tedious.
My apologies if anyone got the impression that “CCE” was a long-term project. It never was intended as such. Rather it was only intended as a “stop gap” project until “any rgb/ any trc” was possible using default GIMP.
If anyone has the urge to fork CCE, of course feel free. But personally I feel that coding efforts to modify GIMP-CCE code, would be far better spent helping to improve default GIMP code. My own coding abilities are not great, but I’ve done my very best to make sure that functionality such as the LCH code in CCE did make it over to default GIMP, and each time this has happened, the rather amazing GIMP devs have greatly improved on my own poor coding efforts.