Open source license for use in libraries depending on other libraries
I am developing a couple of open source projects licensed in MPL1.1. All projects depend on many other open source tools. I avoid GPL licensed libraries for the viral nature of the GPL. The library licenses my tools depend on are Apache2, LGPL2, LGPL3, CPL, BSD, JSON, MIT and some personal agreements. My applications are licensed in MPL1.1, but now I want to publish some libraries.
What license
- compatible with all of the above?
- user-friendly?
My suspicion is that MPL1.1 is not as good as the library's license. I would like the libraries to be used.
a source to share
compatible with all of the above
I am not a lawyer, so I will not touch on this, but I love the summaries http://www.codeproject.com/info/Licenses.aspx . Links included.
user-friendly
It depends on the user. It would be convenient for me to license my software as needed. Personally, I like the MIT / BSD, WTFPL, Ms-PL and CPOL licenses (in roughly that order). CPOL is terse, although it contains a "moral" clause and "not selling original work", but others are less restrictive.
There is a difference if you expect the user to change / fix the library at all. If so, I believe MPL has a must-release clause. If the user should never modify / extend the library, then the GPL + "Classpath Exception" may be appropriate. I've seen some projects with a GPL + "Classpath Exception" clause that the library can be merged (like ILMerge or otherwise repackaged in JAR).