Just to be more precise about the potential licensing problem.
Tobias, I've never wanted to make the G'MIC license more permissive for proprietary software. I find your OpenFX plug-ins project terrific, mainly for the use in the open-source software Natron. I've just asked you to make your G'MIC bridge code available with the more permissive license CeCILL-C (close to LGPL) for practical reasons (I was building the gmic-community repo at that time, and this is a license I wanted to favor for this particular repository).
The CeCILL license used by G'MIC is a free license, compatible with the GPL. One of the important thing to understand about it is how the notion of Module is defined. The license says:
Module: means a set of sources files including their documentation that enables supplementary functions or services in addition to those offered by the Software.
External Module: means any or all Modules, not derived from the Software, so that this Module and the Software run in separate address spaces, with one calling the other when they are run.
Internal Module: means any or all Module, connected to the Software so that they both execute in the same address space.
and the license defines a Contribution by:
Contribution: means any or all modifications, corrections, translations, adaptations and/or new functions integrated into the Software by any or all Contributors, as well as any or all Internal Modules.
And then, the rules for distributing and licensing those so-called Modules are:
5.3.3 DISTRIBUTION OF EXTERNAL MODULES
When the Licensee has developed an External Module, the terms and conditions of this Agreement do not apply to said External Module, that may be distributed under a separate license agreement.
This is the unconstrained way of using G'MIC. Just use it as an external module, and you can license your own code using it as you want (including proprietary and closed licenses if you wish).
For Internal modules, it's a bit more complicated. Creating an Internal Module is in fact considered as a Contribution the the initial Software, and the Software becomes thus a Modified Software and is subject to these redistribution rules, as stated by the license:
5.3.2 DISTRIBUTION OF MODIFIED SOFTWARE
When the Licensee makes a Contribution to the Software, the terms and conditions for the distribution of the resulting Modified Software become subject to all the provisions of this Agreement.
The Licensee is authorized to distribute the Modified Software, in source code or object code form, provided that said distribution complies with all the provisions of the Agreement and is accompanied by:
a copy of the Agreement,
a notice relating to the limitation of both the Licensor's warranty and liability as set forth in Articles 8 and 9,
and, in the event that only the object code of the Modified Software is redistributed,
a note stating the conditions of effective access to the full source code of the Modified Software for a period of at least three years from the distribution of the Modified Software, it being understood that the additional acquisition cost of the source code shall not exceed the cost of the data transfer.
which is clearly the viral aspect of the license, just as it works with the GPL too (that's why both licenses can be considered as compatible by the way).
So, the question is now : should an OpenFX plug-in be considered as an Internal Module or an External Module ? (does it run on the same address space than the host software?). I really don't know enough about how the OpenFX architecture works to have a clear opinion on that question, but this is certainly something we need to investigate. The answer actually depends on the fact that an OpenFX plug-in is run as an external process or not (just as it is done in GIMP for instance).
In any case, I know at least one software that you can freely use to run OpenFX plug-ins without worrying about these licensing problems, it's Natron, and at least just for this one, it is worth releasing these OpenFX plug-ins based on G'MIC. If someone else wants to use these plug-ins for another software and are not allowed to do so, I think he has to take his responsibilities.
What do you think?