I'm interested in publishing a small script of mine with effectively no conditions, including attribution. What's the best license to accomplish this? It looks like the most popular options are:
- CC0 / Public Domain
- UNLICENSE
- WTFPL
- 0BSD (also known as the Free Public License or Zero-Clause BSD)
From what I understand, these have the following drawbacks:
CC0 contains a clause which excludes from the scope of the license any relevant patents held by the copyright holder. This resulted in it getting disapproved by the OSI, and not recommended for software by the FSF. It also may cause issues in jurisdictions that don't allow work prematurely dedicated into the public domain. The FSF has this to say about it:
CC0 is a public domain dedication from Creative Commons. A work released under CC0 is dedicated to the public domain to the fullest extent permitted by law. If that is not possible for any reason, CC0 also provides a lax, permissive license as a fallback. Both public domain works and the lax license provided by CC0 are compatible with the GNU GPL.
If you want to release your non-software work to the public domain, we recommend you use CC0. For works of software it is not recommended, as CC0 has a term expressly stating it does not grant you any patent licenses.
Because of this lack of patent grant, we encourage you to be careful about using software under this license; you should first consider whether the licensor might want to sue you for patent infringement. If the developer is refusing users patent licenses, the program is in effect a trap for users and users should avoid the program.
UNLICENSE does not have this clause, but it is also unclear whether it would be valid in countries with different public domain laws.
- WTFPL is also effectively a public domain license but seems to be mostly a joke, as it doesn't even contain a no-warranty disclaimer.
- 0BSD seems to be the only license I can find that has no conditions (aside from the no-warranty disclaimer), but also doesn't fall into the trap of public domain laws. It is the only one of these that is officially approved by the OSI, but is also relatively unpopular which could hurt credibility.
All of these are GPL-compatible.
Based on this, 0BSD is what I'm leaning toward. Are there any better alternatives, or other drawbacks I'm missing?
Apache 2.0 or BSD+Patent are both preferable with regard to patents, but they have attribution clauses, and Apache is GPLv2 incompatible.