In open source software/projects why do people release there codes with a permissive license instead of a copyleft license? I mean, the original author will not get back much (if anything at all) if they are releasing their code with a permissive license (like MIT) instead of a copyleft license (like GPL). At least copyleft prohibits the source code to be used in closed source proprietary software in the following way:

Permissive licenses don't prohibit this. So the author using a permissive license seems to be on the losing side. Yet, permissive licenses like the MIT license are the most used software licenses in the world for FOSS. Why is that the case? Because of altruism or something else?


1 Answer 1


There are several reasons to use a permissive license:

  • You want to maximize use of your software, and are perfectly happy to see your software made into proprietary software. In authoring the GNU GPL, Stallman wanted to make matters more advantageous for free software and more disadvantageous for proprietary software. That was his goal -- and he achieved it very well -- but it may not necessarily be your goal. Perhaps you are more interested in advancing the state of software as a whole, by writing helpful programs and libraries, even if that comes in the form of non-free software. By using a permissive license, you reach the broadest possible audience.

  • Your software is not very substantial. As a general rule, the FSF recommends using a permissive license for software less than around 300 lines.

    What if the work is not very long?

    If a whole software package contains very little code—less than 300 lines is the benchmark we use—you may as well use a lax permissive license for it, rather than a copyleft license like the GNU GPL. (Unless, that is, the code is specially important.)

    They likewise advocate for permissive licenses for website templates, using similar reasoning that they are unlikely to attract downstream developers when the template's copyleft terms would apply to the whole rendered website.

  • You want contributions from people/corporations who would otherwise be averse to copyleft terms. While it is true that anyone can take a permissively licensed work and make a derivative under proprietary terms, it is also true that people or corporations who do so still see a practical benefit to pushing features and bug fixes to the upstream work. For instance, maintaining private patch sets adds complexity to a project, so even proprietary developers have an incentive to push as much as possible back upstream to reduce their work to merge updates. Also, when many major players cooperate in this way, they all benefit, even though no one company gets a direct benefit from sharing its own contributions (e.g., the Apache web server is maintained by developers from many corporations, because they recognize the community benefit of mass cooperation).

    If a project uses a copyleft license, it is possible that some corporations who develop proprietary software will avoid the project altogether, and the project will not enjoy any contributions from those potential downstream users.

  • Your real aim is not to profit from the software itself, but to use software as a component of a broader service. Google offers hosting services that allow people to remotely deploy services online. Google developed Kubernetes under a permissive license, and now Kubernetes is (at least one of) the de facto standard(s) for deploying complex, scalable systems. Because of the massive popularity Kubernetes enjoys, Google's competitor Amazon had to implement support for Kubernetes in their service offering as well. As a result, Google can more easily pull in customers who currently use Amazon's Kubernetes offering, because their Kubernetes interfaces are the same.

    Using a copyleft license for Kubernetes would not have directly hurt this strategy (though it may have done so indirectly by the risk of reduced popularity -- a key facet of the plan!). However, the terms of the license were not overly important for Google: it needed to control the market's standard interface in order to force competitors into their standard, and a popular permissively-licensed product met the goal perfectly.

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.