Attributing FreeCAD in workbench

Have some feature requests, feedback, cool stuff to share, or want to know where FreeCAD is going? This is the place.
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
User avatar
dprojects
Posts: 720
Joined: Mon Mar 06, 2017 6:02 pm
Location: Poland
Contact:

Re: Attributing FreeCAD in workbench

Post by dprojects »

adrianinsaval wrote: Thu Aug 11, 2022 12:35 pm my volunteer work I'll be outraged, and I didn't even contribute that much to the code, imagine the guys that have been working on the project for 20 years.
All the code you have uploaded to the FreeCAD repository is licensed under the LGPL license and you cannot expect any benefit from it in the future. If this would be at your github, things changes.

In otherwise, FreeCAD would also be illegal, because why would FreeCAD get a python library into the AppImage? Qt? and many others? Why they promoting not their own work under FreeCAD brand and logo? Why they didn't write everything from total scratch? Why they not invented C++ language? python language? Qt library? and many other libraries? Sorry, but you are wrong. Software development anywhere wouldn't be able to exists with your rules.

Thanks
Darek
github.com/dprojects

workbench for woodworking is available at: github.com/dprojects/Woodworking
User avatar
adrianinsaval
Veteran
Posts: 5534
Joined: Thu Apr 05, 2018 5:15 pm

Re: Attributing FreeCAD in workbench

Post by adrianinsaval »

dprojects wrote: Thu Aug 11, 2022 2:19 pm All the code you have uploaded to the FreeCAD repository is licensed under the LGPL license and you cannot expect any benefit from it in the future. If this would be at your github, things changes.
I don't expect monetary compensation but I expect that my free software will always remain free, but I can expect certain benefits from it exactly due to the license: if they benefit from our software and have improvements of their own to make they should give back those improvements to the community, making closed source product out of that without our consent is abusing our work.
In otherwise, FreeCAD would also be illegal, because why would FreeCAD get a python library into the AppImage? Qt? and many others? Why they promoting not their own work under FreeCAD brand and logo? Why they didn't write everything from total scratch? Why they not invented C++ language? python language? Qt library? and many other libraries? Sorry, but you are wrong. Software development anywhere wouldn't be able to exists with your rules.
Those are all free software as is FreeCAD, and like I said before, all compatible with LGPL if not LGPL already, it's a completely different situation than making a proprietary software out of a FOSS one. We are not unilaterally benefiting by selling modified versions of their code, any patch we make to third party code is still released under a free license. I cannot believe that you don't see the difference between those.
User avatar
dprojects
Posts: 720
Joined: Mon Mar 06, 2017 6:02 pm
Location: Poland
Contact:

Re: Attributing FreeCAD in workbench

Post by dprojects »

adrianinsaval wrote: Thu Aug 11, 2022 2:55 pm don't see the difference between those.
Do you think corporations don't use LGPL licensed software in closed source? The LGPL allows it whether it is moral for someone or not. All the time you force idea that LGPL not allow for proprietary software, it allows, in certain circumstances.

I personally laugh at people who contribute to open source and then expect benefits from it. If they are so greedy, they should go to work and get paid for it. It's simple for me. If someone shares the code under the LGPL license, should not cry later.

Thanks
Darek
github.com/dprojects

workbench for woodworking is available at: github.com/dprojects/Woodworking
User avatar
adrianinsaval
Veteran
Posts: 5534
Joined: Thu Apr 05, 2018 5:15 pm

Re: Attributing FreeCAD in workbench

Post by adrianinsaval »

If they are complying with the license they are complying and there's nothing to say about it, but making a proprietary version of FreeCAD is not compliant with the license. You spoke of doing some fixes to FreeCAD and having a proprietary version, that is not complaint with the license.
dprojects wrote: Thu Aug 11, 2022 3:22 pm I personally laugh at people who contribute to open source and then expect benefits from it. If they are so greedy, they should go to work and get paid for it. It's simple for me. If someone shares the code under the LGPL license, should not cry later.
I only expect compliance with the license.
User avatar
dprojects
Posts: 720
Joined: Mon Mar 06, 2017 6:02 pm
Location: Poland
Contact:

Re: Attributing FreeCAD in workbench

Post by dprojects »

adrianinsaval wrote: Thu Aug 11, 2022 3:41 pm I only expect compliance with the license.
And I want you to tell the truth. Because the truth is that LGPL allows closed proprietary code. After all, the fact that there will be paid software based on FreeCAD does not mean that FreeCAD cannot be further licensed under the LGPL license. Nobody is going to take your github from you.

This usually comes only from being angry with someone else's success. That someone else will be more successful.

Some people in this forum are crying that FreeCAD is under-invested. But how can any company build anything on FreeCAD if it can't fix bugs on its own? Some solutions cannot be covered by the LGPL because they are covered by patents, or it is a secret sector, for example banking, military, even new products not released yet.

That is why such possessiveness hits the development of FreeCAD and growth. A lot of good developers would be interested in FreeCAD if they could sell their own code and earn a living thanks to it.

Thanks
Darek
github.com/dprojects

workbench for woodworking is available at: github.com/dprojects/Woodworking
User avatar
adrianinsaval
Veteran
Posts: 5534
Joined: Thu Apr 05, 2018 5:15 pm

Re: Attributing FreeCAD in workbench

Post by adrianinsaval »

dprojects wrote: Thu Aug 11, 2022 5:57 pm And I want you to tell the truth. Because the truth is that LGPL allows closed proprietary code.
LGPL allows proprietary software that just uses freecad as a library, has a lot of special conditions to define what constitutes "just use" and what is considered a combined work or derivative. I'm still not sure if an addon is considered a derivative or an independent software because it is both to some extent, the license doesn't appear to have been redacted for such a case.
A modified version of FreeCAD is most definitively a derivative though and making a proprietary version of that is most definitively a breach of the license, so I don't about what supposed truth you are talking about because everything I've said has been based on the text of the license itself and the FSF FAQ, I don't know if others in this discussion can say the same...
After all, the fact that there will be paid software based on FreeCAD does not mean that FreeCAD cannot be further licensed under the LGPL license. Nobody is going to take your github from you.
Are you seriously this naive? How long do you think FreeCAD will remain relevant if a company came tomorrow and replaced occt with parasolid then went ahead and distributed that as proprietary software for example. If you mean software that just uses FreeCAD then that is a non issue, they can do whatever proprietary thing they want.
This usually comes only from being angry with someone else's success. That someone else will be more successful.
Baseless accusation, I do not care if others are successful as long as they do it fairly without abusing other people, a proprietary version of FreeCAD is abuse and should not be tolerated.
But how can any company build anything on FreeCAD if it can't fix bugs on its own?
They absolutely can (and I wish they did), and it is more convenient for them if the fixes are merged upstream, why on earth would they do bugfixes as proprietary software? if it is to sell it to others then that is simply abusing free software, we do 99% of the work but adding 1% should suddenly give them the right to all profit without contributing back their code upstream?
A lot of companies fund the development of many free softwares out there, it being FOSS is not a detriment at all, on the contrary this is what allows companies to do fixing themselves rather than having to contact some useless help desk that never fixes anything but still charges you as is the case with many proprietary software.
Some solutions cannot be covered by the LGPL because they are covered by patents, or it is a secret sector, for example banking, military, even new products not released yet.
what are you talking about, how is banking related to freecad?
That is why such possessiveness hits the development of FreeCAD and growth. A lot of good developers would be interested in FreeCAD if they could sell their own code and earn a living thanks to it.
first of, you can sell LGPL software. Second, it wouldn't be FREECAD (as in freedom, not as in gratis) if anybody can suddenly come and make it proprietary and make the original obsolete. And besides, I don't see this as an issue, if anything it is good that such developers that want to take this and make a proprietary version are not interested, they wouldn't be benefiting FreeCAD anyways.

Sigh... we've gone terribly off-topic and I honestly don't know why I keep responding, you evidently care nothing about software freedom so I won't be changing your mind, probably not going to continue, go be happy with F360, Adobe and the like.
wmayer
Founder
Posts: 20202
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: Attributing FreeCAD in workbench

Post by wmayer »

adrianinsaval wrote: Tue Aug 09, 2022 8:34 pm Reading the OP I think they've probably seen that already...

As I understand it an addon/workbench would still be considered derivative work so you must still share your code with the users of it so you can't really make it proprietary, same goes if you are actually going to provide a modified version of FreeCAD.
If your intention is to make an actual separate application that uses FreeCAD as a dynamically linked library or that communicates with it through some standard protocol then that is allowed to be closed source.
This is true for the GPL but not for the LGPL [1], [2]. So, it's perfectly possible to write a new workbench and keep its code under a proprietary license.

Usually when searching for examples how to use LGPL code you have a proprietary application and a library under the LGPL. But here the roles are reversed because the application (FreeCAD) is under the LGPL and the library or plugin is proprietary. However, this doesn't make any difference.
off topic but since we're talking licenses: https://www.gnu.org/licenses/gpl-faq.en ... timeAndGPL this makes me think we can't actually distribute FreeCAD bundles for widnows that include msvc dll right? Are we breaching the license?
But again it's GPL, not LGPL. The LGPL explicitly allows it to link proprietary code and thus there is no problem to link the MS runtime DLLs.
dprojects wrote:The LGPL has some restrictions but you can even modify the code legally and make it proprietary.
The (L)GPL allows it to modify the source of course but it's NOT allowed to make it proprietary because the copyleft forbids it. That would only be possible for licenses without a copyleft like BSD-3 or others.
loopy wrote:You might not like it, but it's very clear the license allows "closed-source" developers to use FreeCAD as the "base for your own application". To try and claim a closed source workbench is contrary to the intent and wording of the license is absurd.
++
dprojects wrote:Probably FreeCAD chose the LGPL because they wasn't sure for the license to be compliant with all those almost 1000 licenses.
From the very beginning on it was clear and intended that it should be allowed to extend FreeCAD with proprietary code and thus GPL was never an option.
This is how such licenses like LGPL destroy open source world.
A somewhat weird point of view, IMO. The supporters of the GPL argue exactly the other way around. They say that licenses without a copyleft destroy the open-source world because there is nothing to avoid that open-source code is transferred into closed-source and therefore the GPL was created to disallow it. Now IMO GPL is a bit too extreme because it doesn't allow to combine open-source with closed-source and therefore the LGPL is a good compromise.
adrianinsaval wrote:Have YOU even read the ACTUAL license?
It seems you got it wrong. The licence excepts you cited only apply to the FreeCAD code but not to external extension modules. An extension module technically must be a shared library but this doesn't mean that the LGPL can be applied on it automatically. It's up to its author to decide what license he chooses.
loopy wrote:Anyone can use LGPL components , dynamically link to them and create closed-source commercial software then charge money for the software so-developed.

The final answer is the published FreeCAD license page which EXPLICITLY allows closed source software to use FreeCAD components.
https://wiki.freecadweb.org/Licence

Quoting LGPL license verbiage doesn't change things. Yes, the source code to FreeCAD is LGPL, yes if you modify it you MUST publish your changes, but as long as a "closed-source" developer links dynamically to LGPL components without touching a line of the source code in the LGPL repository then that that development does not violate any LGPL license.
Exactly!
adrianinsaval wrote:You can definitively deliver an addon without changing the executable files provided by FreeCAD, but it is adding to it so it can be considered a modification of the whole too.
That's wrong. If your argument were true what would be the difference between GPL and LGPL? The cited WP article says that using a shared library is not a derivative work but a "work that uses the library".
I don't expect monetary compensation but I expect that my free software will always remain free
Yes, and this is exactly what the LGPL guarantees. However, it doesn't force anyone to publish his code that only uses your code by linking it dynamically.
Are you seriously this naive? How long do you think FreeCAD will remain relevant if a company came tomorrow and replaced occt with parasolid then went ahead and distributed that as proprietary software for example.
But this would effectively mean that they had to rewrite 50% percent of the code. They were only allowed to use the core system and the modules that don't depend on OCC but have to rewrite everything that uses OCC.


Links:
[1] https://fluendo.com/en/blog/post/gpl-vs-lgpl/
[2] https://en.wikipedia.org/wiki/LGPL
wmayer
Founder
Posts: 20202
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: Attributing FreeCAD in workbench

Post by wmayer »

loopy wrote: Tue Aug 09, 2022 5:45 pm We are building a closed source workbench for a prototype of a niche CAE simulation application.
Notes on the FreeCAD license page say
“Clearly inform your users that your application is using FreeCAD and that FreeCAD is LGPL-licensed"
Anyone have suggestion for the appropriate verbiage for an about screen or splash screen? As well as a README
Your actual question wasn't really answered.

FreeCAD itself depends on many 3rd party libraries and we have a file ThirdPartyLibraries.html that lists them all with their SPDX license identifiers. The list is shown in our About dialog.

If you plan to use FreeCAD as it is then it would become a bit tricky to add an additional tab to this dialog without changing the FreeCAD code. So, what you can do instead is implementing a new command in the Workbench class of your extension that opens a separate dialog about the license of your module and the FreeCAD license.
User avatar
dprojects
Posts: 720
Joined: Mon Mar 06, 2017 6:02 pm
Location: Poland
Contact:

Re: Attributing FreeCAD in workbench

Post by dprojects »

wmayer wrote: Fri Aug 12, 2022 8:47 am The (L)GPL allows it to modify the source of course but it's NOT allowed to make it proprietary because the copyleft forbids it. That would only be possible for licenses without a copyleft like BSD-3 or others.
but in some circumstances it is possible? if you publish your changes? or clearly describe what was done and how to removed?

wmayer wrote: Fri Aug 12, 2022 8:47 am From the very beginning on it was clear and intended that it should be allowed to extend FreeCAD with proprietary code and thus GPL was never an option.
Thanks, you pointed this out. This can be related to the AppImage workbenches that not change the AppImage and use it as linked library.

wmayer wrote: Fri Aug 12, 2022 8:47 am open-source code is transferred into closed-source
but everybody knows this happens all the time, this is why corporate world pay to open-source, they have benefits from "free" work of enthusiasts.

wmayer wrote: Fri Aug 12, 2022 10:25 am
loopy wrote: Tue Aug 09, 2022 5:45 pm Anyone have suggestion for the appropriate verbiage for an about screen or splash screen? As well as a README
Your actual question wasn't really answered.
but if he plan to change logo and splash screen saying "it is my invention..." this would highly be immoral, disrespectful for someone's work and probably illegal of assigning author rights to yourself. I think even if this is legal he should rater add note in the corner "based on FreeCAD 0.20" and add exact readme file with exact description where is comes from.

Thanks
Darek
github.com/dprojects

workbench for woodworking is available at: github.com/dprojects/Woodworking
wmayer
Founder
Posts: 20202
Joined: Thu Feb 19, 2009 10:32 am
Contact:

Re: Attributing FreeCAD in workbench

Post by wmayer »

dprojects wrote: Fri Aug 12, 2022 12:44 pm but in some circumstances it is possible? if you publish your changes? or clearly describe what was done and how to removed?
For (L)GPL the only possibility I know of where this would be allowed is when the binaries from the modified source code are not distributed, i.e. if it's an in-house product that is only used within the organization or company.
but everybody knows this happens all the time
Sure, but it still doesn't make it legal.
but if he plan to change logo and splash screen saying
All what he said is to implement a new workbench so I only answered on that.
Post Reply