Open Source Licenses: Everything you need to know
Open source makes the world of technology spin and take shape As much as 90% From the modern software stack via Frameworks; Libraries; Databases; Operating systems; And countless Standalone applications.
The benefits of open source software are well understood, promising greater control and transparency. However, there is Perpetual struggle Between open source and the proprietary world, which has prompted many companies to… Back away from open source To protect their business interests. At the heart of all this lies the thorny issue of licensing.
There are two broad types of licenses that correspond to official open source identification As set forth in the Open Source Initiative (OSI). “Permissive” licenses carry few restrictions regarding how users can modify and distribute the software, making them popular with companies that want to use them commercially. Then there are “copyleft” licenses, which offer similar freedoms but with one notable caveat: any modified version of the program must also be distributed under the same copyleft license as the original. This is not very attractive for companies that want to protect their own business.
But there’s more to it than that, with different licenses within each group. Furthermore, there are countless licenses that, although not completely open source, are also worth knowing about.
permissive
Massachusetts Institute of Technology
Originating at MIT in the 1980s, it is aptly named Massachusetts Institute of Technology The license is the most popular open source license by most measures, and it’s on the list The highest place Among the GitHub development community for Many years.
Used by projects including reaction (JavaScript front-end library) and Ruby (a general-purpose programming language), the MIT License allows developers to use software however they want. As with most of these licenses, they are provided without warranties, meaning the authors are absolved from any liability resulting from damages caused by their software (such as loss of data). All developers have to worry about is including the original copyright notice and MIT License in any derivative work.
But the MIT license has one drawback: it does not explicitly grant patent rights. This means that if a particular piece of software relies on patented technology, it could create legal uncertainty for developers who deploy the software without obtaining separate permissions for the patented technology.
However, this underscores one of the main selling points of the MIT license: with only 200 wordsThe language is simple and concise. Muddling things with ambiguous and jumbled patents would add unnecessary complexity to projects that are unlikely to care about patents, such as high-level programming languages or web frameworks.
But many open source projects intersect with patented technologies, such as hardware-focused software like Android.
Apache License 2.0
Published by the Apache Software Foundation Apache License 2.0 In 2004, an update to a previous license with an express patent grant to protect users from litigation. So, if a developer were to, for example, contribute a unique image processing algorithm to a project licensed under Apache 2.0, any patents the developer owns on that algorithm are automatically licensed to all users of the software.
Most people will be familiar with Google’s Android brand, filled with an app store and suite of native tools and services. But the core Android Open Source Project (AOSP) is widely available under the Apache 2.0 license, which is… A deliberate move by Google In 2008 to combat Apple and encourage phone manufacturers to use Android versus other proprietary companies (such as Symbian) at the time. And it worked. Samsung, HTC, LG and all the other companies jumped into Android.
However, a byproduct of this is that the Apache 2.0 license exists Five times the number of words from MIT, due to the patent grant text, among other additions and clarifications. But that’s the trade-off, and it highlights the key differences between the most common open source licenses.
Other Permitted Licenses
Two-clause BSD license It is similar to MIT, but with major differences in terms of the language used. For example, it specifies that a copy of the license must be included with both the source code and the compiled binary form. And then there BSD License 3-itemswhich contains an additional “no endorsement” clause restricting the use of the names of copyright holders and contributors for promotional purposes in any derivative project.
There too MIT No Attribution License (MIT-0), which is simpler than MIT, as there is no requirement for attribution in derived software. Using this is tantamount to putting the software into the public domain, except that the author retains the copyright and the ability to change things in the future.
Copyleft
GNU General Public License (GPL) versions 2.0 and 3.0
Free Software Foundation (Free Software Foundation)FSFThe GNU General Public License (GPL) was published in 1989, and was one of the first copyleft licenses for public use.
Copyleft licenses are often better suited for projects that require input from the community, versus projects supported by a single corporate entity. By requiring that all modifications remain available under the same open source license, this ensures contributors that their hard work will not be used in proprietary software without also benefiting the wider community – in theory, at least, because it can be difficult to detect all infringing modifications and to Then enforce the license terms.
It was launched in 2007, GBL 3.0 It is the third most popular license, According to GitHub data. The license ushered in notable updates to GBL 2.0including provisions for patenting and improving compatibility with other open source licenses. It also prohibits what has become known as “Tivoization,” where device makers that make use of GPL-licensed software prevent users from installing modified versions of that software, using digital rights management (DRM) mechanisms.
Notable users of the GPL include WordPress, which is available under the GPL 2.0 “or later” license, leaving it up to the developer to decide under which license to distribute any modification.
Linux, for its part, is among the most successful open source projects of all time, being used in servers, cloud infrastructure, embedded systems, and even Android. However, the basic Linux kernel is only available under the GPL 2.0 license, due to this Linux creator Linus Torvalds disputes some of the provisions Added in version 3.0 of the License – including the Tivoization clause.
GNU Affero General Public License (AGPL) 3.0
Avero General License (AGPL) is similar to GPL 3.0, in that it is a “strong” copyleft license that enhances software freedoms and ensures that modified versions remain open source. However, the main difference between AGPL is that it focuses on web-based services and applications, where software is run from servers rather than distributed as executable files.
Under the GPL 3.0 license, developers are not required to release the source code for modified software if it runs over a network, as is the case with SaaS applications. The AGPL closes this loophole, requiring third parties to make the source code available even if the modified software only runs from the server.
Published in 2007 by the Free Software Foundation, the AGPL 3.0 license has grown in popularity due in large part to the rise of cloud computing and SaaS, and today it is the go-to solution. The fifth most popular open source license.
GNU Lesser General Public License (LGPL)
It is also a product of the Free Software Foundation, GNU Lesser General Public License (LGPL) is a “weak” copyleft license, in that it is more business-friendly with less stringent terms on what is shared. The LGPL is typically used for software libraries where project authors want to encourage contributions from the community, but it allows proprietary software to link to libraries without having to completely open source their proprietary code. If someone modified the open source library itself, they would only need to release those modifications under the LGPL.
Mozilla Public License 2.0
Published by the Mozilla Foundation in 2012 Mozilla Public License (MPL) 2.0 is the 10th most popular open source license today according to GitHub Licenses Scale. The MPL is also a weak copyleft license designed to protect proprietary code while enabling developers to take advantage of open source software.
However, while the LGPL focuses on the library level, and the GPL on the project level, MPL operates at the single-file level that requires the user to share a narrower set of code.
Public domain and creative commons
While the Open Source License grants specific rights, there are always conditions attached. However, those who want to put their software completely under public ownership without any caveats can do so through other means.
It is not enough to simply publish software without a license; Copyright law applies by default to most creative works, including software. This is where “dedication to the public domain” can help.
Specially designed software, and Lack of licence It is the ninth most popular license on GitHub (although whether it can be called a “license” is debatable). Although OSI consent As a license in 2020, it noted that the document was “poorly drafted” and questioned its legal effectiveness in jurisdictions (such as Germany) where the work cannot be donated to the public domain.
Such as non-licensing, Creative Commons CC0-1.0 It is also a public domain tool, although it has a broader focus on creative works. It uses clearer, more professional legal language that may be more consistent with international law. It is worth noting that Creative Commons Apply for CC0-1.0 approval As an open source compatible license in 2012, however Withdraw the request After the OSI raised concerns it explicitly ruled out granting patents.
There are other general consecration tools, e.g Zero condition BSDwhich may be attractive because it has simpler language. However, there is no consensus on the best mechanism for assigning all rights to a particular program.
Source of “false pen”.
There are countless other licensing models across the software spectrum.
In some cases, companies will release themed software Dual licensing modelwith the user being able to choose between a recognized open source license and a commercial license, depending on their intentions. Then there’s “open kernel,” which offers the software under an open source license, but with key features protected by a paywall. In other cases, the company may add A Commons clause An addendum to a permissive open source license, with commercial restrictions in place.
There are also a lot of licenses that appear to be open source, but ultimately do not meet the definition of open source.
In 2018, Giant database MongoDB Moved from AGPL to Server-side General Public License (SSBL), a Private MongoDB creation license. While SSPL is still somewhat “open”, it is what is known as “available source”, where the code is accessible but has significant commercial restrictions, which is No big no As far as OSI is concerned.
the People at MariaDB It has taken a similar path with the Business Source License (BUSL), which imposes commercial restrictions before moving to a true open source license after a set number of years. There is another A similar movement is underway This is looking forward to making.”Fair source“Licensing the thing. This includes Functional source licensewhich is described as a simpler alternative to BUSL.
You may also encounter so-called “Moral source“Licenses from time to time, e.g Hippocratic licensewhich prohibits the use of software to violate internationally recognized human rights. Likewise, the open standard JSON The file format has a very permissive license, except for one funny phrase at the end: “The software should be used for good, not evil“.