Article Collection
This article is part of the following series:1. Licensing
- Part 1: Software Licensing - Terms and Licenses Explained (this article)
Table of Contents
Introduction
Software licensing is an area where the discrepancy between users’ and companies’ interests is glaringly obvious.
Even when users are not interested in the licensing terms of a particular product, they are still bound by them. It is exactly those terms that have shaped the product, its monetization methods, and its whole ecosystem.
Commercial companies attract users by emphasizing short-term convenience of their products and services. Once attracted, users are typically bound by restrictive terms. These terms give companies unreasonably dominant position, facilitating vendor lock-in and stripping users of rights and freedoms.
In today’s age of digital services, companies no longer even sell software to users but only grant temporary access, while often also reserving the right to exploit users’ data and work made through the platform.
Understanding software licensing is crucially important because the lack of users’ knowledge and interest play a key role in the ever-shifting power dynamic between users and vendors.
This article explains the basic licensing terms, the principles that free software licenses protect, and the freedoms they guarantee their users.
Basic Terms
Let’s start with an explanation of basic terms.
Copyright
Signatories of the Berne convention and members of the World Trade Organization (WTO) agree that “copyright” is a right automatically attached to every novel expression of an idea, whether through text, sound, image, or other recorded means.
As emphasized above, copyright applies to expressions of ideas, rather than ideas themselves. As Andrew M. St. Laurent mentions in his book Understanding Open Source and Free Software Licensing, the creator of, say, a drawing of a “dog” (animal), has the right to commercial exploitation of only that particular expression of “dog”, and does not limit others to create or exploit their own expressions of “dog”.
The copyright typically belongs to the creator of the work. Copyrighted work cannot be copied, displayed, commercially exploited, or used to create “derivative works” by any person other than its creator, or parties that have obtained such rights from the author via a licensing contract.
A copyright does not need to be registered anywhere to be legally effective, although works published previous to March 1, 1989 must include an explicit notice of copyright protection. Works published later do not need an explicit notice, although such a notice can still help inform or deter potential infringers.
In the United States, the period protected by copyright is the life of the creator plus 70 years. In the case of works made “for hire” or made by creators who have not been identified, it is 95 years from the date of publication or 120 years from the date of creation, whichever is shorter.
Copyright Exemptions
The following notable categories are not protected by copyright, or are assigned to entities other than the creator:
-
Intangible, non-reproducible works are not protected. For example, a reading of a drama is not protected, although its recording would be
-
Works made “for hire” have their copyright assigned to the employer rather than the creator
-
“Fair uses” are exempt from copyright protection. For example, using copyrighted material for purposes of commenting, reporting, or teaching is allowed
-
“Transformative derivative works”, based on copyrighted work but fundamentally altered, are considered new work over which the original copyright holder has no right
-
Works whose copyright has expired and are no longer protected belong to the public domain
Patent
Patents do not apply to expressions of ideas but rather to ideas themselves.
Because of patents’ potentially vast scope, requirements for obtaining them are more strict – patents require a registration process and last for shorter periods than copyright.
Obtaining a patent generally requires involvement of a patent lawyer as it requires filing relatively complex paperwork. Also, it to be done separately for different parts of the world. An important part of a patent application is the explanation of novelty in the patent and how it differs from processes or mechanisms already known or patented.
Attempting through courts to defend and extend the boundaries of ones own patents, while at the same time trying to narrow the scope of patents held by others, and subsequent enforcing of patent rights upon infringers, is an expensive and never-ending process reserved for those who can organize and afford it.
Contract
Depending on the industry, creators sometimes cannot take advantage of their rights themselves so they need to enter into contracts or agreements with publishers.
For example, in the music or film industry, creators have traditionally entered into licensing agreements with publishers for mass reproduction, advertising, and distribution of work.
Both creators and publishers wish to control the profits from commercial exploitation of the work, but because publishing is usually capital-intensive and there is usually no shortage of authors, contracts tend to favor publishers.
Royalty
A typical contract between creators and publishers (or patent holders and licensees) is one of licensing of the work in exchange for payments, known as royalties.
In the case of say, books, authors are usually entitled to a royalty on every copy sold by the publisher.
Music royalties are more complicated because there are more venues in which music can be sold or publicly performed. They usually apply on every copy of an album sold (mechanical royalties), every play on a jukebox, radio, or Internet (performance royalties), and every use on television or film (synchronization royalties).
In the early 2000s it was said that music authors on average earned $1 for every CD-Rom sold, of $30 that CDs typically sold for.
In software publishing in the past it used to be common for a single person to contract for producing certain software, for example a computer game, and receive reasonable benefits from its sales through the publisher.
Nowadays, software generally does not involve payment of royalties to individuals because commercial software is usually made by large teams of people as a “work for hire” and, as previously mentioned, the copyright of such works belongs to the employer. The employer usually acts as the commissioner, publisher, and distributor of work.
Warranty
Warranties are sort of promises made to buyers of a particular product or service.
Express (Explicit) Warranty
The most obvious form of warranty is the express (explicit) warranty. Explicit warranties are decided on by manufacturers or sellers, and are common in sales of consumer goods.
Warranties explicitly listed to the buyer of a particular item are a part of that sale. For example, a warranty can expressly guarantee that an automatic answering machine will automatically answer calls for 5 years from the date of sale.
If the product does not perform as stated, the buyer is entitled to have the price of purchase returned or the item replaced.
Warranty of Merchantability
A warranty of merchantability is an implicit warranty, created by the operation of law rather than someone’s choice or decision.
This type of warranty generally applies not to manufacturers, but to merchants, i.e. parties that actually sell particular goods.
It represents a guarantee that goods sold by the merchant are suitable for use as generally intended. For example, a buyer of a rope in a hardware store is guaranteed that the rope will function as rope generally does.
Such a guarantee does not exist when a good is sold by a non-merchant, such as a private person.
Warranty of Fitness for a Particular Purpose
Warranty of fitness for a particular purpose has the characteristics of both an implicit and explicit guarantee.
It is implicitly created by law, but applies explicitly to a particular function, as the name says.
If a purpose or intention of use is explicitly stated by the buyer and confirmed by the seller, but the product does not perform, the buyer is entitled to have the price of purchase returned or the item replaced.
Warranty against Infringement
A warranty against infringement is unique to intellectual property.
Such a warranty is a guarantee by the seller that the work they are selling is in fact work they have a right or copyright to, generally because they are its creators.
It may also include a guarantee that the work does not infringe on others’ patents. Employees or contractors are usually forced to sign such a statement, although they are unable to check its validity due to a massive amount of patents and purposely broad or unclear wording used in descriptions.
Damage
Damages are expenses or losses that stem from non-performance of the product or service.
Direct damage
Direct damages stem from a loss caused by paying for a non-performing product, and usually amount to up to the product’s full paid price.
Consequential damage
Under at least some circumstances, a seller of a defective product may be liable for more than just the sale price of the item.
If the defect in the item causes damages of type that was reasonably foreseeable at the time of sale, the seller of the item could be liable for damages that resulted as a consequence of the defect.
Consequential damages often far surpass the sale price of the item.
Disclaimer
In the light of the potential liability for damages, manufacturers or sellers usually limit their responsibility by adding disclaimers or waivers of warranties.
However, simply stating disclaimers is not always sufficient because a contrary guarantee or an agreement, possibly one given orally as part of the sale, may end up nullifying the disclaimer and resulting in liability attaching to at least the person who made the claim or entered an agreement.
Also, laws may limit overly broad disclaimers.
In software, warranty disclaimers are not required, but are nonetheless very common or even universal, and usually aim to dismiss any and all liability by the vendor.
Trademark
A trademark is a form of intellectual property that consists of a word, phrase, symbol, design, or their combination which identifies a product or service from a particular source.
The primary function of a trademark is to unmistakably identify the source of a product or service and prevent it from being confused with other, competing offerings.
Registered trademarks provide owners exclusive rights and protection against unauthorized use by others.
Characteristics of Software
While the above explanations of relevant terms were mostly general, we are interested in their application to software.
Each software program contains code that is both functional and dynamic:
-
It is functional in the sense that it works
-
It is dynamic in the sense that it can perform its function in different contexts
As a result, each program carries with it two distinct types of value. The first is its formal purpose, and the second is its potential for reuse in performing other functions.
Proprietary Software
When a consumer purchases proprietary software, they get a physical copy, the manual, and the right to use the software for its intended purpose.
By opening the plastic wrap on the box, consumers become bound by the so-called “shrinkwrap license” under which their rights are restricted.
They are not allowed to:
-
Copy or distribute the work
-
Study, reverse-engineer, or make derivative works
-
Authorize anyone else to do so
The elimination of restrictions of proprietary software, or rather not binding users by such restrictions in the first place, is the foundation of free and open source licensing.
Equally important as the elimination of restrictions themselves are the positive consequences the removal has on the general usability and development of software over time. The advantages of open source over the proprietary model are staggering.
Free and Open Source Software
The fundamental purpose of free and open source licensing is to prevent anyone from taking over the software and exploiting it exclusively for their own benefit.
Users of open source software can freely distribute copies because of the “open distribution” principle. It doesn’t matter if this happens for payment or not.
Users of open source software can also freely modify the software and distribute its modified versions because of the “open modification” principle. This implies the availability of source code and, same as above, it doesn’t matter if it happens for payment or not.
Generational Limitation
Apart from simple clauses that may require the copyright or license notices to be preserved, or that may forbid using the original authors’ names in advertising modified versions, an obvious limitation which may be imposed by an open source license is that copies of the original and/or modified software, if distributed to users, must be provided under a license that is compatible with the original license.
This principle is called “generational limitation” and it prevents open source code from being taken by commercial companies, modified, and redistributed under restrictive terms. When parties obtain software under an open source license and want to modify and redistribute it, this limitation forces them to keep their modifications open source.
Benefits
The ability to modify and redistribute software gives open source crucial advantages over traditional proprietary software licensing models, all of which combine for an even greater overall benefit:
-
Innovation. It has been well-demonstrated that programmers are willing to contribute to open source projects for no reward other than making a program more useful. Over time this has resulted in highly valuable and often backwards-compatible programs.
-
Reliability. Interestingly, knowledgeable users typically have greater motivation and ability to fix limitations in open source than developers in proprietary software do.
-
Flexibility. Free and open source model tends to produce flexible software that adapts easily to various uses. It greatly reduces frustration when software can be adjusted in simple ways to be much more useful.
-
Longevity. When proprietary software is no longer supported by the publisher, its development stops and its value keeps decreasing. It cannot be adapted to new uses nor updated to even keep running. In contrast, open source software can fall into disuse, but be revived or adapted later by anyone who finds it useful, even if that use is completely different than originally envisioned.
-
Reuse. Free and open source software greatly reduces duplication of work and promotes reuse, either via source code or via using compiled libraries and parts of other programs. Component reuse helps keep the number of components smaller and components well maintained by a large group of users caring about them.
Development of Free and Open Source (FOSS) Licensing
Now that we have briefly introduced Free and Open Source software, let’s provide a brief insight into the three main groups that participated in the development of free and open source (FOSS) licensing.
BSD / MIT
The first group can be said to consist of the University of California, Berkeley (UCB) and the Massachusetts Institute of Technology (MIT), two universities that contributed significantly to the early development of the Unix operating system and the X Window System.
Their BSD and MIT groups of licenses are the oldest, simplest, and most broadly used in the free and open source software ecosystem. To illustrate their simplicity, here is the complete text of the 0-clause BSD license:
Copyright (C) [year] by [copyright holder] <[email]>
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
Overall, these licenses are very permissive and they grant, but don’t protect, user freedoms. They simply reflect the universities’ intention to provide software for research and common good, whatever comes out of it.
Richard Stallman and Free Software Foundation (FSF)
As mentioned in more detail in the History of Unix, BSD, GNU, and Linux, Richard Stallman was a freshman at Harvard in 1971 when he began working at the MIT Artificial Intelligence Lab. His job was to develop and improve the ITS operating system used by the Lab.
Work and research at the Lab were being done in the same technical, social, and ethical hacker culture that was present in computing from its beginnings in the 1950s and continuing into the 1970s.
In the early 1980s Stallman noticed concerning trends that created operational difficulties. The Lisp group left MIT, formed a separate company, and no longer shared the source code of their product. The AI Lab bought a new PDP-10 mainframe and decided to use Digital’s non-free operating system TOPS-20 instead of ITS. TOPS required signing a non-disclosure agreement even for binaries. Finally, Stallman had previously modified the Lab’s printer driver to notify owners of active print jobs when paper was jammed. When the same modification was necessary for a new printer, its driver source code was not available, and a person that had it refused to share it due to a non-disclosure agreement (NDA).
Stallman was in total opposition of non-disclosure agreements, new licensing terms, increasing incompatibilities between vendors, lack of source code, and loss of user freedoms. To him, “the idea of proprietary software was antisocial, unethical, and simply wrong, dividing the public and keeping users helpless”.
To overturn the situation, Stallman made a definite decision to create a Unix-like system, but replace all components of Unix with Free Software (“Free” as in freedom).
In 1983, Stallman announced the GNU project. The name “GNU” was chosen as an acronym for “GNU’s Not Unix”.
In October 1985, the Free Software Foundation (FSF) was founded to support the free software movement, employ software developers, and work on the legal and structural elements of free software.
In February 1989, the GNU General Public License (GPL) was published. Its current text along with links to earlier versions is available in GNU General Public License v3.
FSF’s GNU GPL and related copyleft licenses became the legal basis for guaranteeing and protecting users’ rights.
“Copyleft” licenses use the copyright law to reverse its typical purpose. Instead of reserving rights for the software author, they reserve rights for the users. They guarantee that software obtained under a Free Software license will remain free and benefit users indefinitely, rather than be taken, modified, and resold by commercial companies under non-free terms. This copyleft, share-alike protection was crucial to the success of GNU/Linux and Free Software in general.
Worth clarifying is that Free Software does not prevent commercialization. It is perfectly fine to sell free software and any support services around it; the only requirement is that users’ rights, guaranteed by the GPL license, remain unchanged. Or, companies that use Free Software in their products, but wish to sell them under a proprietary license, can request a separate, commercial license that will allow them to make proprietary changes and resell under non-free terms.
Netscape, Open Source, and Open Source Initiative (OSI)
In 1998, Netscape released their globally popular web browser Netscape Navigator as Open Source Software.
At the time of the release, the term Open Source Software (OSS) did not yet exist. Netscape’s publishing the source code had prompted a meeting at which the term was coined.
Later in 1998, Bruce Perens and Eric S. Raymond founded the non-profit Open Source Initiative (OSI) as a steward organization for the Open Source Software movement. OSI’s website is https://opensource.org/. OSI maintains the Open Source Definition which describes licenses which qualify as “Open Source”.
The terms Free Software and Open Source are often used interchangeably in informal speech, but they are different. Their differences can be summarized as follows:
-
The term Open Source was coined to help promote the open source business model to companies who did not understand or care about Free Software
-
Open Source is focused on benefits for businesses, while Free Software is focused on benefits for users
-
Open Source is utilitarian and concerns itself with the availability of source code, while Free Software concerns itself with user freedoms (of which source code availability is one)
-
Open Source movement accepts the existence of proprietary software, while Free Software movement considers all non-free software bad
In short, all Free Software qualifies as Open Source, but only a subset of Open Source qualifies as Free Software.
Categories of Licenses
Now that we have explained the basic terms and introduced the open source licensing in a bit more detail, let’s list the formal classification of all licenses.
There a total of 6 types, 3 free and 3 non-free, listed here in the order of increasing restrictiveness:
Free - Public Domain (PD)
Works in the public domain grant all rights to everyone without restriction.
Free - Permissive Licenses
Permissive licenses grant everyone rights, including the right to relicense the work.
Most common permissive open source licenses are BSD licenses, MIT licenses, and Apache licenses.
Free - Protective (Copyleft) Licenses
Protective (copyleft) licenses also grant everyone rights, but forbid relicensing under any terms more restrictive than found in the original license.
Most common copyleft licenses are the GNU General Public Licenses (GPL) and GNU Affero General Public License (AGPL).
As Richard Stallman explained in 1985 in the GNU Manifesto:
“GNU is not in the public domain. Everyone will be permitted to modify and redistribute GNU, but no distributor will be allowed to restrict its further redistribution. That is to say, proprietary modifications will not be allowed. I want to make sure that all versions of GNU remain free.”
Note again, as mentioned earlier above, that GNU does not prevent commercialization. It is only preventing software obtained under a free software license from becoming non-free.
Non-free - Non-commercial Licenses
Noncommercial licenses grant everyone restricted use rights, and for non-commercial purposes only.
Non-free - Proprietary Licenses
Proprietary licenses in this category represent the traditional “copyright” licenses, where individual rights may or may not be granted to users.
Non-free - Trade Secrets
Trade secrets represent the highest level of non-free licenses in which no information about the product or licensing terms are made public.
Permissive and Protective FOSS Licenses
In this section we are going to look at the existing and important free and open source licenses.
There is quite a number of licenses in existence; this fact can be attributed to licenses targeting different purposes, licenses evolving over time, and the inability (and inappropriateness) of changing the license terms retroactively.
A larger list of licenses and their characteristics can be seen in the comparison of free and open-source software licenses.
The BSD and MIT licenses are the two earliest open source licenses, categorized as “permissive”. These licenses are good for illustrating some of the basic principles of open source licensing, and will be described first.
Note that the licenses within categories will be described in the order of length, shortest first. This will allow the licenses to be presented in the order of growing number of clauses or terms they impose. However, for many licenses this order will in fact be the opposite of their creation date.
Permissive - BSD (0BSD, 2BSD / Simplified / FreeBSD, 3BSD / New BSD, 4BSD / Old BSD)
As mentioned, BSD licenses are permissive, requiring neither the source code to be available nor that modified versions be redistributed under a compatible license.
The only additional requirements (clauses) sometimes present are that the relicensed software must include a copy of the original license and copyright notice, and/or that original authors’ names cannot be used for endorsing or advertising derivative works.
These licenses therefore give, but do not protect, user freedoms, and software published under these licenses is not safe from being used and resold as non-free software.
However, because of their permissiveness these licenses are compatible with almost any other free or open source license, and are sometimes good for releasing software that aims to become a universal standard across all devices or platforms, such as e.g. the original BSD Net/1 TCP networking stack.
This group of licenses does not mention software patents, however the conclusion seems to be that they are implicitly allowing use of any underlying patents.
For later reading, a useful summary of the purpose of permissive licenses, their practical uses, considerations, and effects, can be read in the chapter 2.5 Application and Philosophy of Andrew M. St. Laurent’s Understanding Open Source and Free Software Licensing.
0-clause BSD (0BSD)
0-clause BSD License is a public domain-equivalent license. Its text in entirety is:
Copyright (C) [year] by [copyright holder] <[email]>
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
As mentioned above, this license transfers all of the rights from the copyright holder to the user, including the right to commercially exploit the work, develop derivative works, and relicense the software, disclaiming all possible warranties.
2-clause BSD (Simplified BSD, FreeBSD)
The 2-clause BSD License contains two clauses mandating the copyright notice to be preserved:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
3-clause BSD (BSD 2.0, Revised BSD, New BSD, Modified BSD)
The 3-clause BSD License additionally forbids using the names of copyright holders and contributors for endorsement or promotion of derivate works:
3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
4-clause BSD (BSD, Original BSD, Old BSD)
The 4-clause BSD License additionally includes the so-called “advertising clause”. This clause became problematic because it requires authors of derived works to include an acknowledgment of the original source in all advertising material.
The number of this clause is “3”, the same as above, because it was inserted in position 3, pushing the above clause to position 4.
3. All advertising materials mentioning features or use of this software must display the following acknowledgement: This product includes software developed by the <copyright holder>.
Permissive - MIT (MIT-0, MIT, X11 / MIT/X)
The original MIT License is a permissive software license that originated at the Massachusetts Institute of Technology (MIT) in the late 1980s.
Like BSD, this group of licenses does not mention software patents, however the conclusion seems to be that they are implicitly allowing use of any underlying patents.
MIT-0
MIT-0 (MIT No Attribution License) is a public domain-equivalent license, just like 0BSD.
MIT No Attribution
Copyright <YEAR> <COPYRIGHT HOLDER>
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Same as 0BSD, this license transfers all of the rights from the copyright holder to the user, including the right to commercially exploit the work, develop derivative works, and relicense the software, disclaiming all possible warranties.
MIT
The standard MIT license contains a condition related to the preservation of the copyright notice:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
X11 (MIT/X)
The X11 license, also known as the MIT/X Consortium License, contains two changes:
-
“THE AUTHORS OR COPYRIGHT HOLDERS” is replaced with “THE X CONSORTIUM”
-
The license additionally forbids using the copyright holders’ names in relation to the software:
Except as contained in this notice, the name of <copyright holders> shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization from <copyright holders>.
Permissive - Apache (1.0, 1.1, 2.0)
The Apache Licenses are a group of permissive free software licenses written by the Apache Software Foundation (ASF) for its software, but also for use by others.
Like BSD and MIT it allows relicensing the software.
Apache 1.0
Originally Apache 1.0 was equivalent to the 4-clause BSD.
Apache 1.1
When 4-clause BSD was reduced to 3-clause BSD in July 1999, Apache accepted the removal and accordingly released the Apache License version 1.1.
This license removed the requirement for copyright notice to be preserved in advertising materials. The notice only has to be preserved in documentation and/or other materials provided with the software.
Apache 2.0
In January 2000 the ASF redesigned the text to release Apache License 2.0. This license was intended to be more suitable for use in non-AFS projects and to improve compatibility with GPL-based software.
This license is more elaborate than all of the licenses described so far. It looks like a modern contract or license, includes a definition of terms, mentions patents and trademarks, and regulates submissions from contributors.
The text of this license can be seen in Apache License, Version 2.0.
In 2006, an unrelated but similar license, the Academic Free License (AFL), was found to be redundant with Apache License 2.0 and so will not be described here.
Permissive-Protective - Mozilla Public License (MPL) (1.0, 1.1, 2.0)
Mozilla Public License is a hybrid permissive-protective license.
It is permissive in the sense that it grants a liberal copyright and patent license allowing free use, modification, distribution, and exploitation of work. It also concerns itself with licensing of the work received from contributors – it passes contributors’ rights to the licensees, but does not grant users any rights to contributors’ trademarks.
It is protective in the sense that it allows the integration of MPL-licensed code into proprietary codebases, but only as long as the MPL-licensed components remain accessible under the terms of the MPL and distributors do not attempt to alter or restrict recipients’ rights to it. In this way, it seeks to balance the concerns of both open source and proprietary developers, and it aims to motivate both the open source community and businesses to work on developing the core software.
The boundary between MPL-licensed code and proprietary parts is defined to be the source code file – all or none of the code in a given source file falls under the MPL. Similarly, an executable file consisting solely of MPL-covered files must come with access to all the source files used within it.
MPL 1.1
Version 1.1 was a minor update to the license, clarifying the terms regarding patents and allowing for multiple licensing, encouraging cooperation with developers that preferred stricter licenses like the GNU GPL.
This license was used as a basis for many other licenses, and also had a strong influence on the GNU GPL 3.0 license.
MPL 2.0
In 2012 MPL 2.0 was published. The license text was changed to make it clearer and easier to apply, and also to achieve compatibility with the GPL and Apache licenses.
Protective - GNU General Public License (GPL) (v2, v3)
The GNU GPL licenses are published and maintained by the Free Software Foundation (FSF).
GNU page Quick Guide to GPLv3 concisely explains the purpose of GNU GPL:
The Foundations of the GPL
Nobody should be restricted by the software they use. There are four freedoms that every user should have:
- The freedom to use the software for any purpose,
- The freedom to change the software to suit your needs,
- The freedom to share the software with your friends and neighbors, and
- The freedom to share the changes you make.
When a program offers users all of these freedoms, we call it free software.
Developers who write software can release it under the terms of the GNU GPL. When they do, it will be free software and stay free software, no matter who changes or distributes the program. We call this copyleft: the software is copyrighted, but instead of using those rights to restrict users like proprietary software does, we use them to ensure that every user has freedom.
The impact of GPL on the development of software cannot be overstated. The GNU project that grew with the license and the Linux kernel have been seeing steadily growth in acceptance ever since their creation.
This success arose, among other things, from the fact that GPL forbids using software obtained under a GPL license in non-GPL software. In essence, it ensures that modifications to free software, if distributed to users, must also remain free.
GNU GPLv2
At the top of the license there is a preamble concisely explaining the intention and high ethical values of the licensor:
The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Lesser General Public License instead.) You can apply it to your programs, too.
When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.
We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.
Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.
The full text of the license is available at GNU’s page GNU GENERAL PUBLIC LICENSE 2.0.
GNU GPLv3
GPLv3 was released to protect user rights in the light of companies’ and patent holders’ attempts to restrict them using novel methods that the previous license did not foresee.
The reasoning behind GPLv3 is explained as follows in the same document, Quick Guide to GPLv3:
We update the GPL to protect its copyleft from being undermined by legal or technological developments. The most recent version protects users from three recent threats:
- Tivoization: Some companies have created various different kinds of devices that run GPLed software, and then rigged the hardware so that they can change the software that's running, but you cannot. If a device can run arbitrary software, it's a general-purpose computer, and its owner should control what it does. When a device thwarts you from doing that, we call that tivoization.
- Laws prohibiting free software: Legislation like the Digital Millennium Copyright Act and the European Union Copyright Directive make it a crime to write or share software that can break DRM (Digital Restrictions Management; see below). These laws should not interfere with the rights the GPL grants you.
- Discriminatory patent deals: Microsoft has recently started telling people that they will not sue free software users for patent infringement—as long as you get the software from a vendor that's paying Microsoft for the privilege. Ultimately, Microsoft is trying to collect royalties for the use of free software, which interferes with users' freedom. No company should be able to do this.
Version 3 also has a number of improvements to make the license easier for everyone to use and understand. But even with all these changes, GPLv3 isn't a radical new license; instead it's an evolution of the previous version. Though a lot of text has changed, much of it simply clarifies what GPLv2 said. With that in mind, let's review the major changes in GPLv3, and talk about how they improve the license for users and developers.
Article Collection
This article is part of the following series:1. Licensing
- Part 1: Software Licensing - Terms and Licenses Explained (this article)
Automatic Links
The following links appear in the article:
1. History of Unix, BSD, GNU, and Linux - /unix-history/
2. Academic Free License (AFL) - https://en.wikipedia.org/wiki/Academic_Free_License
3. Apache Licenses - https://en.wikipedia.org/wiki/Apache_License
4. Apache Software Foundation (ASF) - https://en.wikipedia.org/wiki/Apache_Software_Foundation
5. BSD Licenses - https://en.wikipedia.org/wiki/BSD_licenses
6. BSD - https://en.wikipedia.org/wiki/BSD_licenses#
7. 0-Clause BSD License - https://en.wikipedia.org/wiki/BSD_licenses#0-clause_license_(%22BSD_Zero_Clause_License%22)
8. 2-Clause BSD License - https://en.wikipedia.org/wiki/BSD_licenses#2-clause_license_(%22Simplified_BSD_License%22_or_%22FreeBSD_License%22)
9. 3-Clause BSD License - https://en.wikipedia.org/wiki/BSD_licenses#3-clause_license_(%22BSD_License_2.0%22,_%22Revised_BSD_License%22,_%22New_BSD_License%22,_or_%22Modified_BSD_License%22)
10. 4-Clause BSD License - https://en.wikipedia.org/wiki/BSD_licenses#4-clause_license_(original_%22BSD_License%22)
11. Berne Convention - https://en.wikipedia.org/wiki/Berne_Convention
12. Bruce Perens - https://en.wikipedia.org/wiki/Bruce_Perens
13. Comparison of Free and Open-Source Software Licenses - https://en.wikipedia.org/wiki/Comparison_of_free_and_open-source_software_licenses
14. Copyleft - https://en.wikipedia.org/wiki/Copyleft
15. Digital - https://en.wikipedia.org/wiki/Digital_Equipment_Corporation
16. Eric S. Raymond - https://en.wikipedia.org/wiki/Eric_S._Raymond
17. Free Software Foundation (FSF) - https://en.wikipedia.org/wiki/Free_Software_Foundation
18. Free Software - https://en.wikipedia.org/wiki/Free_software
19. Free Software Movement - https://en.wikipedia.org/wiki/Free_software_movement
20. GNU Affero General Public License (AGPL) - https://en.wikipedia.org/wiki/GNU_Affero_General_Public_License
21. GNU GPL - https://en.wikipedia.org/wiki/GNU_General_Public_License
22. GNU Manifesto - https://en.wikipedia.org/wiki/GNU_Manifesto
23. GNU General Public Licenses (GPL) - https://en.wikipedia.org/wiki/GPL
24. GNU/Linux - https://en.wikipedia.org/wiki/Gnu/linux
25. ITS - https://en.wikipedia.org/wiki/Incompatible_Timesharing_System
26. Lisp - https://en.wikipedia.org/wiki/Lisp_(programming_language)
27. MIT Artificial Intelligence Lab - https://en.wikipedia.org/wiki/MIT_AI_Lab
28. MIT License - https://en.wikipedia.org/wiki/MIT_License
29. MIT-0 - https://en.wikipedia.org/wiki/MIT_License#MIT_No_Attribution_License
30. MIT - https://en.wikipedia.org/wiki/MIT_license
31. Massachusetts Institute of Technology (MIT) - https://en.wikipedia.org/wiki/Massachusetts_Institute_of_Technology
32. Mozilla Public License - https://en.wikipedia.org/wiki/Mozilla_Public_License
33. BSD Net/1 TCP Networking Stack - https://en.wikipedia.org/wiki/Net/1
34. Netscape - https://en.wikipedia.org/wiki/Netscape
35. Netscape Navigator - https://en.wikipedia.org/wiki/Netscape_Navigator
36. Non-Disclosure Agreement (NDA) - https://en.wikipedia.org/wiki/Non-disclosure_agreement
37. Open Source Software Movement - https://en.wikipedia.org/wiki/Open-source-software_movement
38. Open Source Software - https://en.wikipedia.org/wiki/Open-source_software
39. Open Source Initiative (OSI) - https://en.wikipedia.org/wiki/Open_Source_Initiative
40. PDP-10 - https://en.wikipedia.org/wiki/PDP-10
41. Proprietary Software - https://en.wikipedia.org/wiki/Proprietization
42. Public Domain - https://en.wikipedia.org/wiki/Public_domain
43. Richard Stallman - https://en.wikipedia.org/wiki/Richard_Stallman
44. Share-Alike - https://en.wikipedia.org/wiki/Share-alike
45. Open Source Definition - https://en.wikipedia.org/wiki/The_Open_Source_Definition
46. Trademark - https://en.wikipedia.org/wiki/Trademark
47. University of California, Berkeley (UCB) - https://en.wikipedia.org/wiki/University_of_California,_Berkeley
48. Unix - https://en.wikipedia.org/wiki/Unix
49. Vendor Lock-In - https://en.wikipedia.org/wiki/Vendor_lock-in
50. World Trade Organization (WTO) - https://en.wikipedia.org/wiki/World_Trade_Organization
51. X Window System - https://en.wikipedia.org/wiki/X_window_system
52. https://opensource.org/
53. Apache Licenses - https://www.apache.org/licenses/
54. Apache License, Version 2.0 - https://www.apache.org/licenses/LICENSE-2.0
55. Stallman Announced the GNU Project - https://www.gnu.org/gnu/initial-announcement.html
56. GNU General Public License V3 - https://www.gnu.org/licenses/gpl-3.0.html
57. GNU GENERAL PUBLIC LICENSE 2.0 - https://www.gnu.org/licenses/old-licenses/gpl-2.0.html#SEC1
58. Quick Guide to GPLv3 - https://www.gnu.org/licenses/quick-guide-gplv3.html
59. Understanding Open Source and Free Software Licensing - https://www.oreilly.com/library/view/understanding-open-source/0596005814/
60. 2.5 Application and Philosophy - https://www.oreilly.com/library/view/understanding-open-source/0596005814/ch02s05.html
61. Understanding Open Source and Free Software Licensing - https://www.oreilly.com/openbook/osfreesoft/book/