Hi there,
recently, Cura, a 3D printing software by Ultimaker and its community have been relicensed from AGPLv3+ to LGPLv3+ [0][1].
When updating Cura in Fedora, I forgot to check, and it's still listed as AGPLv3+. However, I'm not sure whether I can change the tag to LGPLv3+, because it uses other software with "stronger" licenses.
In fact, there seem to be a problem already with Uranium (python-uranium SRPM).
Cura uses CuraEngine (AGPLv3+) trough a protobuf interface [2].
I'm unsure whether a protobuf interface makes the AGPLv3+ "infect" Cura. I'd guess it does.
Cura uses (Python imports) Uranium (currently also listed as LGPLv3+ in Fedora) that imports PyQt5 (GPLv3).
I'm confident that PyQt5's GPLv3 "infects" both Uranium and Cura to be GPLv3. It's the PyQt5's authors business model [3].
So I guess Uranium should be GPLv3 and Cura should be either GPLv3 or AGPLv3 (no +) depending on the protobuf thing.
I wonder if what Ultimaker is doing is even possible, and whether I should ask them about it, but before I do, I'll ask here.
BTW Our python-qt5 package (PyQt5 upstream) is listed in Fedora as "BSD and GPLv2+" which I'm confident is not true and I opened [4] while investigating this.
Thanks for help.
[0] https://ultimaker.com/en/community/50303-cura-license-update-from-agpl-to-lg... [1] https://github.com/Ultimaker/Cura/commit/9a193ad5c5ab5324ad1335dd9adf80fef24... [2] https://github.com/Ultimaker/Cura/blob/master/plugins/CuraEngineBackend/Cura... [3] https://www.riverbankcomputing.com/commercial/license-faq [4] https://bugzilla.redhat.com/show_bug.cgi?id=1520186
On 12/03/2017 05:20 PM, Miro Hrončok wrote:
Cura uses (Python imports) Uranium (currently also listed as LGPLv3+ in Fedora) that imports PyQt5 (GPLv3).
But it does not physically include copies of PyQt5.
https://fedoraproject.org/wiki/Licensing:FAQ?rd=Licensing/FAQ#What_about_int...
Short answer: Uranium is LGPLv3+.
I'm confident that PyQt5's GPLv3 "infects" both Uranium and Cura to be GPLv3. It's the PyQt5's authors business model [3].
I am not confident of this, at least in the context of Fedora.
Just mark these packages with the license that reflects the python files included within them. If there was a static-linked binary with code from all of these licenses combined, it would probably be GPLv3, but since that is not the case here, we do not need to lose sleep over it.
~tom
On 4.12.2017 17:25, Tom Callaway wrote:
On 12/03/2017 05:20 PM, Miro Hrončok wrote:
Cura uses (Python imports) Uranium (currently also listed as LGPLv3+ in Fedora) that imports PyQt5 (GPLv3).
But it does not physically include copies of PyQt5.
https://fedoraproject.org/wiki/Licensing:FAQ?rd=Licensing/FAQ#What_about_int...
Short answer: Uranium is LGPLv3+.
I'm confident that PyQt5's GPLv3 "infects" both Uranium and Cura to be GPLv3. It's the PyQt5's authors business model [3].
I am not confident of this, at least in the context of Fedora.
Just mark these packages with the license that reflects the python files included within them. If there was a static-linked binary with code from all of these licenses combined, it would probably be GPLv3, but since that is not the case here, we do not need to lose sleep over it.
OK. Thanks for clarification.
~tom
3dprinting@lists.fedoraproject.org