Licence: Difference between revisions

From FreeCAD Documentation
m (12 revisions)
m (→)
(40 intermediate revisions by 13 users not shown)
Line 1: Line 1:
<languages/>
=== Statement of the maintainer ===
<translate>
<!--T:25-->
{{docnav|Dialog creation|Tracker}}


== Licences used in FreeCAD == <!--T:5-->
I know that the discussion on the ''"right"'' licence for open source occupied a significant portion of internet bandwidth and so is here the reason why, in my opinion, FreeCAD should have this one.


<!--T:19-->
I chose the [http://en.wikipedia.org/wiki/LGPL LGPL] and the [http://en.wikipedia.org/wiki/GPL GPL] for the project and I know the pro and cons about the LGPL and will give you some reasons for that decision.
FreeCAD uses two different licenses, one for the application itself, and one for the documentation:


<!--T:6-->
FreeCAD is a mixture of a Library and an Application, so the GPL would be a little bit strong for that. It would prevent write commercial modules for FreeCAD because it would prevent linking with the FreeCAD base libs. You may ask why commercial modules at all? Therefore Linux is good example. Would Linux be so successful when the GNU C Library would be GPL and therefore prevent linking against non GPL Applications? And although I love the freedom of Linux, I also want to be able to use the very good NVIDIA 3D graphic driver. I understand and accept the reason NVIDIA does not wish to give away driver code. We all work for companies and need payment or at least food. So for me a coexistence of open source and closed source software is not a bad thing, when it obeys the rules of the LGPL. I would like to see someone write a Catia import/export processor for FreeCAD and distribute it for free or for some money. I don?t like to force him to give away more than he wants to. That would be good neither for him, nor for FreeCAD.
'''[[wikipedia:LGPL|Lesser General Public Licence, version 2 or superior (LGPL2+)]]''' For all of the FreeCAD source code found in the [https://github.com/FreeCAD/FreeCAD official Git repository]


<!--T:22-->
Nevertheless this decision is made only for the Core system of FreeCAD. Every writer of an Application module may make his own decision.
'''[http://creativecommons.org/licenses/by/3.0/ Creative Commons Attribution 3.0 License (CC-BY-3.0)]''' For the documentation on http://www.freecadweb.org


<!--T:7-->
=== Used Licences ===
See FreeCAD's [https://github.com/FreeCAD/FreeCAD/blob/master/package/debian/copyright debian copyright file] for more details about the licenses used by the different open-source components used in FreeCAD


Here the three licences under which FreeCAD is published:
== Impact of the licences == <!--T:12-->

<!--T:23-->
Below is a friendlier explanation of what the LGPL license means for you:

==== All users ==== <!--T:13-->
Anybody can download, use and redistribute FreeCAD free of charge, without any restriction. Your copy of FreeCAD is truly yours, as are the files you produce with FreeCAD. You will not be forced to update FreeCAD after a certain time, nor change your usage of FreeCAD. Using FreeCAD doesn't bind you to any kind of contract or obligation. The FreeCAD source code is public and can be inspected, so it is possible to verify that it doesn't do things without your knowledge such as sending your private data somewhere.

==== Professional users ==== <!--T:14-->
FreeCAD can be used freely for any kind of purpose, being private, commercial or institutional. Any version of FreeCAD can be deployed and installed anywhere, any number of times. You can also modify and adapt FreeCAD for your own purposes without any restriction. However, you cannot make the FreeCAD developers liable for possible damage or business loss that could occur from using FreeCAD.

==== Open-source software developers ==== <!--T:15-->
You can use FreeCAD as a base to develop your own application, or simply extend it by creating new modules for it. If FreeCAD is embedded into your own application, you can choose either the GPL or the LGPL license, or any other license that is compatible with LGPL, to allow the use of your work in proprietary software or not. If you are developing a module to be used as an extension, and don't include any of the FreeCAD code in it, then you can choose any license you want. However, if you wish to see your module used as much as possible, it is a good idea to use the same LGPL license as FreeCAD itself, so parts of your code can be more easily reused in other future modules or even in FreeCAD itself.

==== Closed-source software developers ==== <!--T:16-->
You can use FreeCAD as a base for your own application, and are not forced to make your application open source. The LGPL license, however, ask for two basic things: 1) that you clearly inform your users that your application is using FreeCAD and that FreeCAD is LGPL-licensed, and 2) that you clearly separate your own application form the FreeCAD components. That is usually done by either dynamically linking to the FreeCAD components, so users are allowed to change it, or making the FreeCAD source code, along with the modifications you brought to it, available to your users. You will get support from the FreeCAD developers as long as it is not a one way street.

==== Files ==== <!--T:24-->
The models and other files produced with FreeCAD are not subject to any license stated above, nor bound to any kind of restriction or ownership. Your files are truly yours. You can set the owner of the file and specify your own license terms for the files you produce inside FreeCAD, via menu File → Project Information.

== Statement of the main developer == <!--T:1-->
I know that the discussion on the ''"right"'' licence for open source occupied a significant portion of internet bandwidth and so is here the reason why, in my opinion, FreeCAD should have this one.


<!--T:2-->
;[[wikipedia:GPL|General Public Licence]]: For the executable as stated in the .h and .cpp files in src/main
I chose the [http://en.wikipedia.org/wiki/LGPL LGPL] for the project and I know the pro and cons about the LGPL and will give you some reasons for that decision.
;[[wikipedia:LGPL|Lesser General Public Licence]]: For the core DLLs as stated in the .h and .cpp files in src/App src/Gui src/Base and most [[Module|modules]] in src/Mod
;[[wikipedia:Open Publication License|Open Publication Licence]]: For the documentation on http://free-cad.sourceforge.net/ as not marked differently by the author


<!--T:3-->
We try to use only LGPL type licences for the core system linked libraries (see Third Party Libraries) with two exception:
FreeCAD is a mixture of a library and an application, so the GPL would be a little bit strong for that. It would prevent writing commercial modules for FreeCAD because it would prevent linking with the FreeCAD base libs. You may ask why commercial modules at all? Therefore Linux is good example. Would Linux be so successful when the GNU C Library would be GPL and therefore prevent linking against non-GPL applications? And although I love the freedom of Linux, I also want to be able to use the very good NVIDIA 3D graphic driver. I understand and accept the reason NVIDIA does not wish to give away driver code. We all work for companies and need payment or at least food. So for me, a coexistence of open source and closed source software is not a bad thing, when it obeys the rules of the LGPL. I would like to see someone writing a Catia import/export processor for FreeCAD and distribute it for free or for some money. I don't like to force him to give away more than he wants to. That wouldn't be good neither for him nor for FreeCAD.
* the QT licence ([http://www.trolltech.com/products/licensing.html www.trolltech.com]) and
* the Coin3D licence ([http://www.coin3d.org/licensing/ www.coin3d.org]).


<!--T:4-->
=== Impact of the licences ===
Nevertheless this decision is made only for the core system of FreeCAD. Every writer of an application module may make his own decision.


<!--T:27-->
==== Private users ====
{{Quote|Jürgen Riegel|15 October 2006}}
Private users can use FreeCAD free of charge and can do basically what ever he wants to do with it....


<!--T:17-->
==== Profesional users ====
{{docnav|Dialog creation|Tracker}}
Can use FreeCAD for all kind of profesional work without fee. Can customize the application as he wishes. He can write or have writen open or closed source extensions to FreeCAD. He is always master of his data and yet not forced to update FreeCAD or change the usage of FreeCAD.


<!--T:26-->
==== Open Source developers ====
{{Userdocnavi}}
Can use FreeCAD as the ground work for own extension modules for special purposes. He can choose either the GPL or the LGPL to allow the use of his work in proprietary software or not.


<!--T:18-->
==== Professional developers ====
[[Category:Developer Documentation]]
Professional developers can use FreeCAD as the ground work for their own extension modules for special purposes and are not forced to make their modules open source. They can use all modules which use the LGPL. They are allowed to distribute FreeCAD along with their proprietary software. They will get the support of the author(s) as long as it is not a one way street. If you want to sell your module you need a QT licence and a Coin3D licence, otherwise you are forced by these libraries to make it open source.


</translate>
[[Category:Developer]]
{{clear}}

Revision as of 09:12, 18 May 2019

Dialog creation
Tracker

Licences used in FreeCAD

FreeCAD uses two different licenses, one for the application itself, and one for the documentation:

Lesser General Public Licence, version 2 or superior (LGPL2+) For all of the FreeCAD source code found in the official Git repository

Creative Commons Attribution 3.0 License (CC-BY-3.0) For the documentation on http://www.freecadweb.org

See FreeCAD's debian copyright file for more details about the licenses used by the different open-source components used in FreeCAD

Impact of the licences

Below is a friendlier explanation of what the LGPL license means for you:

All users

Anybody can download, use and redistribute FreeCAD free of charge, without any restriction. Your copy of FreeCAD is truly yours, as are the files you produce with FreeCAD. You will not be forced to update FreeCAD after a certain time, nor change your usage of FreeCAD. Using FreeCAD doesn't bind you to any kind of contract or obligation. The FreeCAD source code is public and can be inspected, so it is possible to verify that it doesn't do things without your knowledge such as sending your private data somewhere.

Professional users

FreeCAD can be used freely for any kind of purpose, being private, commercial or institutional. Any version of FreeCAD can be deployed and installed anywhere, any number of times. You can also modify and adapt FreeCAD for your own purposes without any restriction. However, you cannot make the FreeCAD developers liable for possible damage or business loss that could occur from using FreeCAD.

Open-source software developers

You can use FreeCAD as a base to develop your own application, or simply extend it by creating new modules for it. If FreeCAD is embedded into your own application, you can choose either the GPL or the LGPL license, or any other license that is compatible with LGPL, to allow the use of your work in proprietary software or not. If you are developing a module to be used as an extension, and don't include any of the FreeCAD code in it, then you can choose any license you want. However, if you wish to see your module used as much as possible, it is a good idea to use the same LGPL license as FreeCAD itself, so parts of your code can be more easily reused in other future modules or even in FreeCAD itself.

Closed-source software developers

You can use FreeCAD as a base for your own application, and are not forced to make your application open source. The LGPL license, however, ask for two basic things: 1) that you clearly inform your users that your application is using FreeCAD and that FreeCAD is LGPL-licensed, and 2) that you clearly separate your own application form the FreeCAD components. That is usually done by either dynamically linking to the FreeCAD components, so users are allowed to change it, or making the FreeCAD source code, along with the modifications you brought to it, available to your users. You will get support from the FreeCAD developers as long as it is not a one way street.

Files

The models and other files produced with FreeCAD are not subject to any license stated above, nor bound to any kind of restriction or ownership. Your files are truly yours. You can set the owner of the file and specify your own license terms for the files you produce inside FreeCAD, via menu File → Project Information.

Statement of the main developer

I know that the discussion on the "right" licence for open source occupied a significant portion of internet bandwidth and so is here the reason why, in my opinion, FreeCAD should have this one.

I chose the LGPL for the project and I know the pro and cons about the LGPL and will give you some reasons for that decision.

FreeCAD is a mixture of a library and an application, so the GPL would be a little bit strong for that. It would prevent writing commercial modules for FreeCAD because it would prevent linking with the FreeCAD base libs. You may ask why commercial modules at all? Therefore Linux is good example. Would Linux be so successful when the GNU C Library would be GPL and therefore prevent linking against non-GPL applications? And although I love the freedom of Linux, I also want to be able to use the very good NVIDIA 3D graphic driver. I understand and accept the reason NVIDIA does not wish to give away driver code. We all work for companies and need payment or at least food. So for me, a coexistence of open source and closed source software is not a bad thing, when it obeys the rules of the LGPL. I would like to see someone writing a Catia import/export processor for FreeCAD and distribute it for free or for some money. I don't like to force him to give away more than he wants to. That wouldn't be good neither for him nor for FreeCAD.

Nevertheless this decision is made only for the core system of FreeCAD. Every writer of an application module may make his own decision.

Jürgen Riegel

—15 October 2006
Dialog creation
Tracker