- reorder input set
- use rec-less, finalAttrs-style attributes
- include cimg and gmic to passthru.tests
- use `preConfigure` instead of `sourceRoot`
- remove nested `with` from meta attributes
This commit also removes a few unused arguments and prepares the
derivation for qt6 by removing the usage of `qt5.mkDerivation` which is
a little broken and likely to be deprecated (see NixOS/nixpkgs#180841).
How the build was fixed:
* Fetch tarball instead since that is what upstream supports to build
gmic-qt from.
* Set `sourceRoot` within tarball
* Fetch patch from GreycLab/gmic#435 into gmic
* Fetch patch from c-koi/gmic-qt#175 into gmic-qt
Ever since the gmic 3.2.0 bump, it just does not build – it tries to use stub definitions for gmic_image from src/GmicQt.h, leading to errors like:
/build/source/src/GmicQt.cpp:344:11: error: 'struct gmic_library::gmic_image<unsigned char>' has no member named 'channels'
344 | img.channels(0, 3);
| ~~~~^~~~~~~~
gmic-qt 3.2.1 contains a supposed fix (f0d9d8acd1) which might have actually fixed the gmic_image issue but it introduces another one with cimg.
gmic-3.2.1-dev/include/gmic.h:191:21: fatal error: gmic.cpp: No such file or directory
191 | #define cimg_plugin "gmic.cpp"
| ^~~~~~~~~~
I do not really understand qmake, deprecated build system which gmic author insists on using for gmic-qt, and the trio of libraries is convoluted enough (mutually including their various headers and source files) that I gave up on creating an usable CMake build script that supports system libraries. It does not help that the git history is obfuscated, making proper investigation annoying.
Marking it as broken will at least make gimp-with-plugins work.