Jump to content
SandervG

Cura License update – from AGPL to LGPL.

Recommended Posts

Posted (edited) · Cura License update – from AGPL to LGPL.

Hi Guys, we have some news to share with you all. Please continue to read below :)

What is happening

From the start Cura has been developed and shared under the AGPL licence (Affero General Public License). This license which was chosen because we wanted to share our software with a copyleft license, and AGPL provides a strong incentive to share back. Now we are changing this license from AGPL to LGPL (Lesser General Public License).  

Why

An LGPL license would allow for more versatile dynamic linking, making it easier for others to implement Cura and contribute in developing third party plugins. With 100.000’s of users worldwide we’re making Cura a platform. AGPL has some restrictions whereas LGPL has less limiting conditions for contributors of all sorts.

Looking ahead

Cura was originally developed by a user in the Ultimaker community, named Daid. He envisioned a user-friendly alternative to SkeinForge, a popular slicer at the time. Cura has been enthusiastically embraced by users worldwide, and soon found its way in Ultimaker’s ecosystem. Under one premise though, that Cura would remain free and open. By changing the license to LGPL we hope to create a broader adoption of Cura. Fewer restrictions in the license, while keeping it free will make it more appealing for a wider variety of third party plug-ins. Cura is made by and for the 3D print community and will continue to play its role in making your user experience as easy as possible, without compromising on its powerful features.

Edited by Guest

Share this post


Link to post
Share on other sites
Posted · Cura License update – from AGPL to LGPL.
AGPL has some restrictions whereas LGPL has less limiting conditions for contributors of all sorts.

Can you be more specific about these restrictions? My google-fu tells me that the main restriction for AGPL is that it requires distributing the source code of changes to the application if it is offered as a service over a network, whereas LGPL only requires you to do so if you distribute the (compiled) software.

Or is it just that the poor people at Google are not allowed to install Cura on their computers? (https://opensource.google.com/docs/using/agpl-policy/)

Share this post


Link to post
Share on other sites
Posted · Cura License update – from AGPL to LGPL.

Hi @Ahoeben, thanks for your reply! :)

You are not wrong :p

Depending on the scenario, requiring to distribute the source code of the changes/additions to the library can be good or bad. For us, this meant some parties did not feel comfortable contributing to Cura (lets take your google reference as an example). We strive to take away this barrier and allow those parties to use but also contribute to our Cura platforms with less enforcement in telling them what to do, and more features will be added to the Cura platform.

Paraphrasing from the link Neotko shared:

'LGPL is for library routines. If someone modifies your LGPL library code, the LGPL behaves pretty much like the GPL, but if someone writes software that merely uses your library, the LGPL doesn't impose source release on the program that calls upon your code. This can broaden the potential uses of a library.

AGPL is like the GPL (if you distribute your program to others, it requires you to license your derivative work under the GPL too), but the GPL is only triggered if you distribute your derivative work. AGPL broadens this to trigger to activate if you let people use your derivative work over a network.'

Share this post


Link to post
Share on other sites
Posted · Cura License update – from AGPL to LGPL.

For us, this meant some parties did not feel comfortable contributing to Cura

And with LGPL they don't have to, if they just offer the software as a service over a network, even if they make money with it.

So for contributors to the open source projects this means that a third party can use their free work, improve upon that work and make money on that work eg by offering a cloud-based slicing service, all without the obligation to help further the project and share back their improvements.

Share this post


Link to post
Share on other sites
Posted · Cura License update – from AGPL to LGPL.

And with LGPL they don't have to, if they just offer the software as a service over a network, even if they make money with it.

So for contributors to the open source projects this means that a third party can use their free work, improve upon that work and make money on that work eg by offering a cloud-based slicing service, all without the obligation to help further the project and share back their improvements.

Maybe UM wants to allow big companies to insert Cura as part of their infrastructure with their proprietary code and without using Cura name? Maybe under the umbrella of a more segure/encrypted way to protect the customers IP.

I don't see why other companies that are actively sharing stuff like bcn or the reprap would benefit from this license change, or what they could do now that couldn't before. Any examples of what they could do now?

Share this post


Link to post
Share on other sites
Posted · Cura License update – from AGPL to LGPL.

I don't see why other companies that are actively sharing stuff like bcn or the reprap would benefit from this license change, or what they could do now that couldn't before. Any examples of what they could do now?

 

Making a plugin and distribute it under MIT or BSD should be possible.

You pretty much have 3 forms of GPL;

GPL, AGPL and LGPL.

AGPL is slightly more strict as GPL. As ahoeben mentioned, it "fixes" a loophole in GPL, by making the definition of what a distribution is more broad.

LGPL is less restrictive; If someone uses Cura (dynamicly!), it does not infect that code. If someone makes changes to Cura itself these must be licenced under LGPL

Share this post


Link to post
Share on other sites
Posted · Cura License update – from AGPL to LGPL.

I'm one of the contributors who will sign the agreement since my contribution is a very small part of the whole so I'm happy to hand it to Ultimaker to do with it what they wish.

However, I hope this doesn't mean that Ultimaker is having trouble with people just using their significant contributions without contribution back. I do enjoy tinkering. While I'm perfectly happy that there is proprietary code in the world and that people are able to make a profit off of intellectual property, I hope this doesn't mean that significant future contributions from Ultimaker to Cura will be cloud only or proprietary. I can understand why Ultimaker might need to do that, but just for my own hobbyist interests I'd rather be able to tinker. Especially with the newest stuff.

Share this post


Link to post
Share on other sites
Posted · Cura License update – from AGPL to LGPL.

Hi Markwal, thank you for your reply and for your trust in Ultimaker :)

I don't think we are having trouble, but that does not mean there isn't a lot of untouched potential out there. This relicensing should help us grow more and make Cura even a stronger and better slicing tool for everyone.

Share this post


Link to post
Share on other sites
Posted · Cura License update – from AGPL to LGPL.

It has been approximately one month after we notified you and our contributors about our intention to change our Cura license to LGPL. We’ve made some progress in the meantime and approximately half of all contributors have already responded. We’re still waiting on the remaining few. I’m happy that almost everyone was forthcoming regarding the license change and there seemed to be no difficulties.

There was only a small group of 2 contributors who felt conflicted relicensing their contribution to Cura, which is fine. We’ll continue to explore how we can make this work for everyone. If it was not for a brighter future for Cura we saw ahead, we would not have asked for this change. Therefore we feel we should continue this path and we’ll continue talking to the contributors to see if we can work things out and find a middle ground.

At some point we have to continue moving forward, and if a middle ground can’t be found we have to look at what other options there are left. This could mean considering to either abandon the contribution or rewrite it. In any case, we’ll try to do this in accordance with the contributor.

We hope to activate the new license by the end of September.

Share this post


Link to post
Share on other sites
Posted · Cura License update – from AGPL to LGPL.

I saw the license of Cura was changed in github for Cura and _most_ of the dependencies were updated. However, _CuraEngine_ still is under AGPL, which to my understanding overwrites the LGPL that is used for _Cura_. Is there something keeping you from moving  _CuraEngine_ to LPGL?

Share this post


Link to post
Share on other sites
Posted · Cura License update – from AGPL to LGPL.
On 6/26/2018 at 11:18 AM, RocketScientistJan said:

I saw the license of Cura was changed in github for Cura and _most_ of the dependencies were updated. However, _CuraEngine_ still is under AGPL, which to my understanding overwrites the LGPL that is used for _Cura_. 

No the engine is a separate program so the AGPL doesn't 'infect' programs that use it. For Cura every contributor but 1 agreed on our proposal to move from AGPL to LGPL. Once this was done, we didn't need to change the license of the Engine anymore because plugins work together with Cura and not the engine.

 

Share this post


Link to post
Share on other sites
Posted · Cura License update – from AGPL to LGPL.

So a change in license for the CuraEngine is no longer going to happen?

Share this post


Link to post
Share on other sites
Posted · Cura License update – from AGPL to LGPL.
7 minutes ago, ahoeben said:

So a change in license for the CuraEngine is no longer going to happen?

No it is not planned for the near future.

Share this post


Link to post
Share on other sites
Posted · Cura License update – from AGPL to LGPL.

@Msuurmond Thanks for the quick answer. Can you please elaborate how CuraEngine's AGPL doesn't affect Cura? Is that because CuraEngine is treated as a plugin? I thought that LGPL was a more appropriate licence for libraries/plugins

Share this post


Link to post
Share on other sites
Posted · Cura License update – from AGPL to LGPL.

CuraEngine is even more separate from Cura than a plugin. That is why we can have Cura with LGPL and CuraEngine AGPL

Share this post


Link to post
Share on other sites
Posted · Cura License update – from AGPL to LGPL.

Isn’t CuraEngine statically linked to libArcus, which is LGPL?

Share this post


Link to post
Share on other sites
Posted · Cura License update – from AGPL to LGPL.
1 hour ago, ahoeben said:

Isn’t CuraEngine statically linked to libArcus, which is LGPL?

Why do you think this is the case?

Share this post


Link to post
Share on other sites
Posted · Cura License update – from AGPL to LGPL.

I am not as well-versed in CuraEngine innards as I am in Cura, but I know Cura and CuraEngine use libArcus to communicate. Cura used a dynamically linked python library. I can’t imagine CuraEngine uses a python library for communication, but I don’t see another dynamicly linked library in the Cura distributions, hence my assumption that CuraEngine is statically including parts of Arcus. But I can be all sorts of wrong about this.

Share this post


Link to post
Share on other sites
Posted · Cura License update – from AGPL to LGPL.

It's linking to Arcus, but as far as I know, Ultimaker has all the IP for arcus (and can thus re-license it as we please) 

Share this post


Link to post
Share on other sites
Posted · Cura License update – from AGPL to LGPL.

I know next to nothing about licensing but I thought the whole point of the LGPL was that it did not "taint" the code that it was linked to so it can be used within closed source (or otherwise encumbered) programs.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Our picks

    • Ultimaker Cura 4.0 | Stable available!
      Ultimaker Cura 4.0 is mainly focused on the improved user interface and cloud integration.
      As always, we want to collect your user feedback for this release. If there are any improvements you can think of, feel free to mention it here and help us to shape the next release.
      • 98 replies
×
×
  • Create New...

Important Information

Welcome to the Ultimaker Community of 3D printing experts. Visit the following links to read more about our Terms of Use or our Privacy Policy. Thank you!