Which out-of-the-box licensing system suits my needs?
I am writing a piece of open source software that is easy to embed (both static / dynamic libraries and executables on top of them). What is the software license:
- allows a user to use either the source code by embedding it or linking to it dynamically or statically in their programs under any license, including closed and open source?
- to ensure that any changes made to files created by me will be released under the same license?
- Do I get credit in my software no matter how it uses my code?
- Does he misuse the name of my software in his program?
thanks
a source to share
Wikipedia has an excellent comparison article that contains many software licenses and you should read it carefully, as well as the licensed texts once you've narrowed it down to a few licenses.
The LGPL will describe sentences 1, 2 and 3 of your request. Clause 4 is not something that ideally should be covered by a license, but rather a trademark with an accompanying trademark policy. (registered or un-) See for example Mozilla's Trademark Policy .
Of course, IANAL, IANYL, YMMV and OIMACTTA.
a source to share
You can check out this comparison chart:
A little less, but simpler:
(I'm not a lawyer ...)
What you want is most likely compatible with the GNU / GPL license. In particular, the Artistic 2.0 license looks like a good candidate as it looks like it meets the attribution requirements.
a source to share
License compatibility will be the most important criteria. You may not like every commercial license article (for which there is no standard) or the GPL or whatever you have, but since they are both extremely common, you will need to select a license that is compatible with them. CDDL is a great license and is not as compatible as it can be with general licenses.
In the GPL world, the LGPL is more GPL compliant with other code. In the commercial world, various "Don't blame me if you don't," licenses are the most compatible, for example. MIT, etc.
Cross-licensing is best, albeit somewhat confusing. If someone writes a commercial codebase, sometimes for legal or company policy reasons, they cannot use your code without obtaining a commercial license from you. MySQL is an example of a code base offered under 2 licenses.
Someone has to replace the "I'm not a lawyer" template: "I'm not a lawyer, but lawyers are jerks."
a source to share