Photo by Annie Spratt on Unsplash |
One important aspect of open-source software is its license. It's common for free/open-source software to be governed by a license and you will at some point hear about them. An open-source license allows the source code to be used, modified and/or shared under defined terms and conditions. Understanding the licences is critical to any open-source project.
Today there are 100+ open-source licenses and 90+ free-software licenses so it's really easy to get lost. Since when using Linux you may be exposed to licenses, we prepared this summary to help you understand why they exist, how they're created and why we need them.
What's an open-source License?
An open-source license is a license for software (but can also be applied to other products as we'll see below) that allows review, use, modification and sharing under certain conditions. Open-source licenses usually allow companies to modify and use the source code under their needs.Are open-source licenses always free?
No. Most open-source licenses allow software to be available for free, however there are also non-free licenses. Note that non-free licenses may conform to open-source, but NOT to free-software, a common misconception since most people think open-source and free-software the same, which they are not.
Who oversees the licenses?
Types of Licenses
As we saw, open-source licenses apply to much more than just software. The GNU Project's License Page website contains an extensive list of licenses in different categories:
- Licenses for software
- Licenses For Documentation
- Licenses for Works of Practical Use besides Software and Documentation
- Licenses for Fonts
- Licenses for Works stating a Viewpoint (e.g., Opinion or Testimony)
- Licenses for Designs for Physical Objects
How are licenses created?
- Ensures approved licenses conform to the Open Source Definition and provide software freedom
- Identifies appropriate License Proliferation Category
- Discourages vanity and duplicate licenses
How licenses are classified
In short, in free, non-free, proprietary or open-source licenses. Free software licenses are governed by the GNU project which classifies them:
- Whether it qualifies as a free software license.
- Whether it is a copyleft license.
- Whether it is compatible with the GNU GPL. Unless otherwise specified, compatible licenses are compatible with both GPLv2 and GPLv3.
- Whether it causes any particular practical problems
- Free redistribution
- Source code
- Derived works
- Integrity of the author's source code
- No discrimination against persons or groups
- No discrimination against fields of endeavor
- Distribution of license
- License must not be specific to a product
- License must not restrict other software
- License must be technology-neutral
Most Popular Licenses
As previously mentioned, there are 100+ licenses so let's quickly review the most popular open-source/free-software licenses in use today are:
- GNU General Public License (GPL) v3: the recommended license by the Free Software Foundation and by the GNU Project.
- Mozilla Public License 2.0: a weak copyleft license conditioned on making available source code of licensed files and modifications of those files under the same license.
- Apache License 2.0: a permissive license whose main conditions require preservation of copyright and license notices.
- MIT License: a short and simple permissive license with conditions only requiring preservation of copyright and license notices.
- No license: According to the GNU project, cannot be considered free-software (see below).
For a throughout review of the licenses, consider reviewing in details the licenses on the GNU Licenses and OSI Licenses & Standards pages.
What about no License?
According to the GNU project, software without license cannot be considered free-software:
if source code does not carry a license to give users the four essential freedoms, then unless it has been explicitly and validly placed in the public domain, it is not free software.Content accessed on Sep 28, 2020
Some developers think that code with no license is automatically in the public domain. That is not true under today's copyright law; rather, all copyrightable works are copyrighted by default. This includes programs. Absent a license to grant users freedom, they don't have any. In some countries, users that download code with no license may infringe copyright merely by compiling it or running it.
Which license is best for my project?
In order to choose which software license is right for your next project, it's important to understand first if you want to target free or open-source software. For free software licenses consider studying the Free Software Foundation’s License List. For open-source licenses , check the Open Source Initiative’s Licenses & Standards for more information.
When in doubt, consider using one of the licenses suggested above or check the Choose a License website for more information.
Conclusion
Understanding free/open-source licenses is not an easy task but it's critical to any open-source project. Since there are 100+ open-source licenses and 90+ free-software licenses we hope this summary helps you understand this complex topic a little more.
Further References
- Open-source License (Wikipedia)
- Comparison of free and open-source software licences (Wikipedia)
- Free Software Foundation’s License List
- Open Source Initiative’s Licenses & Standards
- Open Source Initiative
- GNU Project
- Choose a License