Our situation - LGPLv2.1 Libraries = LGPL for whole work?
Our distribution Package contains libraries which are licensed GNU LGPLv2.1
jquery.form - dual licensed GNU-LGPL-2.1+ - MIT,
* triggeredAutocomplete (jQuery UI autocomplete widget) * 2012 by Hawkee.com (email@example.com) * * Version 1.4.5 * * Requires jQuery 1.7 and jQuery UI 1.8 * * Dual licensed under MIT or GPLv2 licenses * http://en.wikipedia.org/wiki/MIT_License * http://en.wikipedia.org/wiki/GNU_General_Public_License
- tinymce.js - GNU-LGPLv.2.1,
- HTMLPurifier - GNU-LGPLv2.1,
both licensed LGPLv2.1
GNU LESSER GENERAL PUBLIC LICENSE Version 2.1, February 1999
The LGPLv2.1 writes in 2c,d
You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:
a) The modified work must itself be a software library.
b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change.
c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License.
d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful.
(For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.)
These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.
What exactly does that mean for our case and the whole application which is using libraries licensed under LGPLv2.1?
- Do we have to license our whole work under LGPLv2.1 when we use these libraries?
- Can we license our work under another GNU GPL license instead of LGPLv2.1 i.e. AGPLv.3?
- Would it be good to license our whole work under another license than LGPLv2.1 to avoid that people now a.) include our work into their proprietary works or b.) link dynamically to it.
Our Conclusion until now
A conclusion which might be wrong so please correct our view if necessary but please explain us why in an understandable example.
- Because we use those LGPLv2.1 libraries and distribute them together with the rest of our application we have too license our work under at least LGPLv2.1 but we could license the whole application we distribute in one package also as GNU GPLv.2 or later, GNU GPLv.3 or AGPLv.3 because of the compatibility of GNU GPL Licenses but we can't license our whole Application under a proprietary license which isn't 100% compatible with any of the GNU GPL licenses.
- We think that licensing the whole application under AGPLv.3 would give us the still the biggest control over the code we have created and initiated as all others would need to publish their code too who build on the code we have created by ourself. We would always be a bit ahead of other "copies".
As an explanation, our script is a social network script and will be used in networks, perhaps even as SAAS.
- It would not be advised to invest to much energy to change now those libraries as already a complete Versions of the whole application Code which include those libraries had been distributed until Version 3.0. And before even also GNU GPL code and libraries were part of it which had meanwhile been replaced with another MIT licensed library with similar functionality.
- Even if we would now change all libraries to MIT and no more GNU GPL libraries our code we distributed until now would be licensed und LGPLv2.1 and because of the previous included GNU GPL code even GNU GPL.
Our view might be wrong but we can cope with the results I think but really need help to find now the correct license for our whole work.
The application itself is also using "Smarty", which is licensed under GNU LGPLv.3 where the parts mentioned in 2c,d are not existing (or we missed them).