Licence: Difference between revisions

From FreeCAD Documentation
m (12 revisions)
No edit summary
Line 5: Line 5:
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.
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 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.
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.
Nevertheless this decision is made only for the core system of FreeCAD. Every writer of an application module may make his own decision.


=== Used Licences ===
=== Used Licences ===
Line 13: Line 13:
Here the three licences under which FreeCAD is published:
Here the three licences under which FreeCAD is published:


;[[wikipedia:GPL|General Public Licence]]: For the executable as stated in the .h and .cpp files in src/main
;[[wikipedia:GPL|General Public Licence]]: For the Python scripts to build the binaries as stated in the .py files in src/Tools
;[[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:LGPL|Lesser General Public Licence]]: For the core libs as stated in the .h and .cpp files in src/App src/Gui src/Base and most [[Module|modules]] in src/Mod and for the executable as stated in the .h and .cpp files in src/main
;[[wikipedia:Open Publication License|Open Publication Licence]]: For the documentation on http://free-cad.sourceforge.net/ as not marked differently by the author
;[[wikipedia:Open Publication License|Open Publication Licence]]: For the documentation on http://free-cad.sourceforge.net/ as not marked differently by the author


We try to use only LGPL type licences for the core system linked libraries (see Third Party Libraries) with two exception:
We try to use only LGPL type licences for the core system linked libraries (see [[Third Party Libraries]]) with two exceptions:
* the QT licence ([http://www.trolltech.com/products/licensing.html www.trolltech.com]) and
* 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]).
* the Coin3D licence ([http://www.coin3d.org/licensing/ www.coin3d.org]).
Line 24: Line 24:


==== Private users ====
==== Private users ====
Private users can use FreeCAD free of charge and can do basically what ever he wants to do with it....
Private users can use FreeCAD free of charge and can do basically whatever they want to do with it....


==== Profesional users ====
==== Professional users ====
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.
Can use FreeCAD for all kind of professional work without fee, they can customize the application as they wish. They can write or have written open or closed source extensions to FreeCAD. They are always master of their data and yet not forced to update FreeCAD or change the usage of FreeCAD.


==== Open Source developers ====
==== Open Source developers ====
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.
Can use FreeCAD as the groundwork for own extension modules for special purposes. They can choose either the GPL or the LGPL to allow the use of their work in proprietary software or not.


==== Professional developers ====
==== Professional developers ====
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.
Professional developers can use FreeCAD as the groundwork 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.


[[Category:Developer]]
[[Category:Developer]]

Revision as of 11:04, 17 February 2009

Statement of the maintainer

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 and the GPL 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.

Used Licences

Here the three licences under which FreeCAD is published:

General Public Licence
For the Python scripts to build the binaries as stated in the .py files in src/Tools
Lesser General Public Licence
For the core libs as stated in the .h and .cpp files in src/App src/Gui src/Base and most modules in src/Mod and for the executable as stated in the .h and .cpp files in src/main
Open Publication Licence
For the documentation on http://free-cad.sourceforge.net/ as not marked differently by the author

We try to use only LGPL type licences for the core system linked libraries (see Third Party Libraries) with two exceptions:

Impact of the licences

Private users

Private users can use FreeCAD free of charge and can do basically whatever they want to do with it....

Professional users

Can use FreeCAD for all kind of professional work without fee, they can customize the application as they wish. They can write or have written open or closed source extensions to FreeCAD. They are always master of their data and yet not forced to update FreeCAD or change the usage of FreeCAD.

Open Source developers

Can use FreeCAD as the groundwork for own extension modules for special purposes. They can choose either the GPL or the LGPL to allow the use of their work in proprietary software or not.

Professional developers

Professional developers can use FreeCAD as the groundwork 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.