Non-copy-left licenses are popular. AFAIK their point is mostly to protect the developers from being sued over loss of money or life (compared to no license at all). But I am neither a lawyer nor have enough free time to read those licenses in their entirety.

What are the main features of the most popular permissive protocols?


1 Answer 1


I will mainly talk about the practical consequences and not go into the nitty gritty. By GPL compatible I mean that a GPL project can use your code (NOT you can use GPL code).

The MIT and BSD 2 clause licenses have similar requirements: keep the license file. The BSD 3 clause license adds a term to the BSD 2 that prevents someone from claiming false endorsement. These three licenses are compatible with GPLv2 and v3.

The Apache 2.0 license requires you to keep the license file, the NOTICE file if there is one, and show notice for modified files. It also addresses some patent-related issues, so companies use it a lot. It is compatible with GPLv3 but not v2 (due to the patent clauses).

There is also an old BSD license that has an clause related to advertising. Don't use it because it's not GPL compatible.

In practice, the ecosystem you are working with has a license that is used most often to begin with, and I would stick to that. For example, I would use MIT for Nodejs packages. If you are working on an application, some would recommend using the Apache 2.0 license because it covers patent issues.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.