← Back to team overview

kicad-developers team mailing list archive

Re: Release - licenses and legal issues

 

On 11/17/2015 1:13 PM, "Torsten Hüter" wrote:
> Hi Wayne,
>  
> thanks for the great work, I'm looking forward to the release. I have several questions about licenses / legal issues:
> 
> Is there somewhere an overview of the used libraries / 3rd party software and their licenses? (for instance an list, LibreOffice table or similar)

No.

>  
> Are all individual (library) licenses compatible with the KiCad license (GPL 2+)?

All the ones I'm aware of are.  Boost, wxWidgets, avhttp, openssl, and
clipper are all compatible.  I'm not sure about dxf_lib.

>  
> What kind of restrictions do I have to expect when I'm using KiCad for my designs?

None.  I don't think anyone here believes that if you use our symbols,
footprints, and/or 3D models that we own you design.  If they do, we
have a serious issue.

>  
> --
>  
> I'm asking, because I've seen a few examples which are unclear for me:
>  
> (1) The GPLv3 is not compatible with the GPLv2
>  
> Quote from the FSF (http://www.gnu.org/licenses/license-list.en.html):
> "Please note that GPLv3 is not compatible with GPLv2 by itself. However, most software released under GPLv2 allows you to use the terms of later versions of the GPL as well. When this is the case, you can use the code under GPLv3 to make the desired combination. To learn more about compatibility between GNU licenses, please see our FAQ."
> 
> The push and shove router is covered by the GPLv3+. This means the whole KiCad package has to be released under the terms of the GPLv3 license, if you're including the P&S-router. 

However, all of the license files in kicad say 2+.

> 
> However, the "About../License" tab shows the following text:
> 
> "The complete KiCad EDA Suite is released under the GNU General Public License (GPL) version 2 or any later version"

I would think this would be adequate but I have not asked the FSF.  Do
we actually have to do this or is the GPL2+ statement OK.

>  
> (2) License of the embedded stroke font
>  
> This is a particular problem, because the stroke font is hard coded to the KiCad binary. The user has no way to load his own font at run-time.
> 
> The font itself is derived from the Hershey font family and the Hershey fonts are covered by a special license which includes advertising clauses and is thus not compatible with the GPLv2. The author of the font was Vladimir Uryvaev and the README.txt (helpers/tools_to_build_newstroke-font) states "Released under CC-BY licence". This license is also incompatible with both the Hershey license and the GPLv2.

Is it directly derived or is it a clean room implementation?  It doesn't
say anywhere that I could see that it is derived from the Hershey font.
 If it's a clean room implementation than we could ask if it can be
re-licensed to be GPL compatible.

> 
> One way to solve this issue could be to write an simple loader for the font, this way the font is not part of the program itself and the Hershey font license has to be distributed with the KiCad package. And maybe for the distant future it makes sense to use a different stroke font like the ISO 3098 font from Wikipedia (public domain, https://commons.wikimedia.org/wiki/File:ISO3098.svg) or Lorenzo's variant.

This would push back the stable release.  How do you suggest we package
the fonts?  Packaging them separately is going to be painful.

> 
> You can find the Hershey font license here: http://ghostscript.com/doc/current/Hershey.htm
> 
> The GPL-license itself is not ideal for a font, because if you're embedding the font in a design (schematics etc.) the whole work has to be distributed under the terms of the GPL-license.
>  
> (3) The KiCad library license
>  
> The used GNU Library General Public License is the predecessor of the GNU Lesser General Public License. See also:
> http://www.gnu.org/licenses/old-licenses/lgpl-2.0.en.html 
>  
> What was the motivation for selecting this license? 
>  
> Does this license offer any advantages over the GPL? 
>  
> Section 5 states:
>  
> "[..] However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. [..]"
> 
> Using a library to create a PCB design is quite similar to linking and creating a executable, thus any distributed design falls under section 6 - that means you need to "[..] permit modification of the work for the customer's own use and reverse engineering [..]" and accompany the work "[..] with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library". [..]"
>  
> Basically this is the same challenge like with any GPL-licensed font. The Free Software Foundation published 2005 the so-called "GPL font exception " (see https://en.wikipedia.org/wiki/GPL_font_exception). The gEDA developers found in my opinion a similar and better solution, they have defined a exception clause for their library - just like the GPL font exception - so you can use the library also for commercial (closed) projects (see http://wiki.geda-project.org/geda:license).

I like what the geda folks did.  They basically give you permission to
modify the symbols for use in your designs but enforced the GPL if you
are going to provide libraries of files derived from the symbols.  We
should make a similar statement about our libraries since they are GPL
licensed if no one objects.

>  
> Thanks,
> Torsten
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp
> 



Follow ups

References