The GNU General Public License (GNU GPL or simply GPL) is a series of widely used
free software license
A free-software license is a notice that grants the recipient of a piece of software extensive rights to modify and software distribution, redistribute that software. These actions are usually prohibited by copyright law, but the rights-holde ...
s that guarantee
end user
In product development, an end user (sometimes end-user) is a person who ultimately uses or is intended to ultimately use a product. The end user stands in contrast to users who support or maintain the product, such as sysops, system administrat ...
s the
four freedoms
The Four Freedoms were goals articulated by U.S. President Franklin D. Roosevelt on Monday, January 6, 1941. In an address known as the Four Freedoms speech (technically the 1941 State of the Union address), he proposed four fundamental free ...
to run, study, share, and modify the software.
The license was the first
copyleft
Copyleft is the legal technique of granting certain freedoms over copies of copyrighted works with the requirement that the same rights be preserved in derivative works. In this sense, ''freedoms'' refers to the use of the work for any purpose, ...
for general use and was originally written by the founder of the
Free Software Foundation
The Free Software Foundation (FSF) is a 501(c)(3) non-profit organization founded by Richard Stallman on October 4, 1985, to support the free software movement, with the organization's preference for software being distributed under copyleft ("s ...
(FSF),
Richard Stallman
Richard Matthew Stallman (; born March 16, 1953), also known by his initials, rms, is an American free software movement activist and programmer. He campaigns for software to be distributed in such a manner that its users have the freedom to u ...
, for the
GNU Project
The GNU Project () is a free software, mass collaboration project announced by Richard Stallman on September 27, 1983. Its goal is to give computer users freedom and control in their use of their computers and Computer hardware, computing devi ...
. The license grants the recipients of a
computer program
A computer program is a sequence or set of instructions in a programming language for a computer to execute. Computer programs are one component of software, which also includes documentation and other intangible components.
A computer progra ...
the rights of
the Free Software Definition. These GPL series are all copyleft licenses, which means that any
derivative work
In copyright law, a derivative work is an expressive creation that includes major copyrightable elements of an original, previously created first work (the underlying work). The derivative work becomes a second, separate work independent in fo ...
must be distributed under the same or equivalent license terms. It is more restrictive than the
Lesser General Public License
The GNU Lesser General Public License (LGPL) is a free-software license published by the Free Software Foundation (FSF). The license allows developers and companies to use and integrate a software component released under the LGPL into their own ...
and even further distinct from the more widely used
permissive software license
A permissive software license, sometimes also called BSD-like or BSD-style license, is a free-software license which instead of copyleft protections, carries only minimal restrictions on how the software can be used, modified, and redistributed, ...
s
BSD,
MIT, and
Apache.
Historically, the GPL license family has been one of the most popular software licenses in the
free and open-source software
Free and open-source software (FOSS) is a term used to refer to groups of software consisting of both free software and open-source software where anyone is freely licensed to use, copy, study, and change the software in any way, and the source ...
domain.
Prominent free software programs licensed under the GPL include the
Linux kernel
The Linux kernel is a free and open-source, monolithic, modular, multitasking, Unix-like operating system kernel. It was originally authored in 1991 by Linus Torvalds for his i386-based PC, and it was soon adopted as the kernel for the GNU ...
and the
GNU Compiler Collection
The GNU Compiler Collection (GCC) is an optimizing compiler produced by the GNU Project supporting various programming languages, hardware architectures and operating systems. The Free Software Foundation (FSF) distributes GCC as free sof ...
(GCC). David A. Wheeler argues that the copyleft provided by the GPL was crucial to the success of
Linux
Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which i ...
-based systems, giving the programmers who contributed to the kernel the assurance that their work would benefit the whole world and remain free, rather than being exploited by software companies that would not have to give anything back to the community.
In 2007, the third version of the license (GPLv3) was released to address some perceived problems with the second version (GPLv2) which were discovered during the latter's long-time usage. To keep the license up to date, the GPL license includes an optional "any later version" clause, allowing users to choose between the original terms or the terms in new versions as updated by the FSF. Developers can omit it when licensing their software; the Linux kernel, for instance, is licensed under GPLv2 without the "any later version" clause.
The "or any later version" clause also known as a lifeboat clause allows combinations between different versions of GPL licensed software to maintain compatibility. For example
Inkscape
Inkscape is a free and open-source vector graphics editor used to create vector images, primarily in Scalable Vector Graphics (SVG) format. Other formats can be imported and exported.
Inkscape can render primitive vector shapes (e.g. re ...
is under the GPLv2 or any later version, but includes code under LGPLv3 or any later version, so effectively the binary as a whole is under the GPLv3 or any later version.
History
The GPL was written by
Richard Stallman
Richard Matthew Stallman (; born March 16, 1953), also known by his initials, rms, is an American free software movement activist and programmer. He campaigns for software to be distributed in such a manner that its users have the freedom to u ...
in 1989, for use with programs released as part of the GNU project. The original GPL was based on a unification of similar licenses used for early versions of
GNU Emacs
GNU Emacs is a free software text editor. It was created by GNU Project founder Richard Stallman, based on the Emacs editor developed for Unix operating systems. GNU Emacs has been a central component of the GNU project and a flagship proje ...
(1985), the
GNU Debugger
The GNU Debugger (GDB) is a portable debugger that runs on many Unix-like systems and works for many programming languages, including Ada, C, C++, Objective-C, Free Pascal, Fortran, Go, and partially others.
History
GDB was first writte ...
, and the
GNU C Compiler.
These licenses contained similar provisions to the modern GPL, but were specific to each program, rendering them incompatible, despite being the same license.
Stallman's goal was to produce one license that could be used for any project, thus making it possible for many projects to share code.
The second version of the license, version 2, was released in 1991. Over the following 15 years, members of the
free software community
The free software movement is a social movement with the goal of obtaining and guaranteeing certain freedoms for software users, namely the freedoms to run the software, to study the software, to modify the software, and to share copies of the s ...
became concerned over problems in the GPLv2 license that could let someone exploit GPL-licensed software in ways contrary to the license's intent. These problems included
tivoization
Tivoization is the practice of designing hardware that incorporates software under the terms of a copyleft software license like the GNU General Public License (GNU GPL), but uses hardware restrictions or digital rights management (DRM) to preve ...
(the inclusion of GPL-licensed software in hardware that refuses to run modified versions of its software), compatibility issues similar to those of the
Affero General Public License
The Affero General Public License (Affero GPL and informally Affero License) is a free software license. The first version of the Affero General Public License (AGPLv1), was published by Affero, Inc. in March 2002, and based on the GNU General Pu ...
, and patent deals between
Microsoft
Microsoft Corporation is an American multinational corporation, multinational technology company, technology corporation producing Software, computer software, consumer electronics, personal computers, and related services headquartered at th ...
and distributors of free and open-source software, which some viewed as an attempt to use patents as a weapon against the free software community.
Version 3 was developed to attempt to address these concerns and was officially released on 29 June 2007.
Version 1
Version 1 of the GNU GPL, released on 25 February 1989, prevented what were then the two main ways that software distributors restricted the freedoms that define free software. The first problem was that distributors may publish
binary file
A binary file is a computer file that is not a text file. The term "binary file" is often used as a term meaning "non-text file". Many binary file formats contain parts that can be interpreted as text; for example, some computer document fi ...
s only—executable, but not readable or modifiable by humans. To prevent this, GPLv1 stated that copying and distributing copies or any portion of the program must also make the human-readable source code available under the same licensing terms.
The second problem was that distributors might add restrictions, either to the license or by combining the software with other software that had other restrictions on distribution. The union of two sets of restrictions would apply to the combined work, thus adding unacceptable restrictions. To prevent this, GPLv1 stated that modified versions, as a whole, had to be distributed under the terms in GPLv1. Therefore, software distributed under the terms of GPLv1 could be combined with software under more permissive terms, as this would not change the terms under which the whole could be distributed. However, software distributed under GPLv1 could not be combined with software distributed under a more restrictive license, as this would conflict with the requirement that the whole be distributable under the terms of GPLv1.
Version 2
According to Richard Stallman, the major change in GPLv2 was the "Liberty or Death" clause, as he calls it
– Section 7. The section says that licensees may distribute a GPL-covered work ''only'' if they can satisfy all of the license's obligations, despite any other legal obligations they might have. In other words, the obligations of the license may not be
severed due to conflicting obligations. This provision is intended to discourage any party from using a
patent infringement claim or other litigation to impair users' freedom under the license.
By 1990, it was becoming apparent that a less restrictive license would be strategically useful for the
C library and for software libraries that essentially did the job of existing proprietary ones; when version 2 of the GPL (GPLv2) was released in June 1991, therefore, a second license – the GNU Library General Public License – was introduced at the same time and numbered with version 2 to show that both were complementary. The version numbers diverged in 1999 when version 2.1 of the LGPL was released, which renamed it the
GNU Lesser General Public License
The GNU Lesser General Public License (LGPL) is a free-software license published by the Free Software Foundation (FSF). The license allows developers and companies to use and integrate a software component released under the LGPL into their own ...
to reflect its place in the philosophy. The GPLv2 was also modified to refer to the new name of the LGPL, but its version number remained the same, resulting in the original GPLv2 not being recognised by the Software Package Data Exchange (SPDX).
The license includes instructions to specify "version 2 of the License, or (at your option) any later version" to allow the flexible optional use of either version 2 or 3, but some developers change this to specify "version 2" only.
Version 3
In late 2005, the
Free Software Foundation
The Free Software Foundation (FSF) is a 501(c)(3) non-profit organization founded by Richard Stallman on October 4, 1985, to support the free software movement, with the organization's preference for software being distributed under copyleft ("s ...
(FSF) announced work on version 3 of the GPL (GPLv3). On 16 January 2006, the first "discussion draft" of GPLv3 was published, and the public consultation began. The public consultation was originally planned for nine to fifteen months, but finally stretched to eighteen months with four drafts being published. The official GPLv3 was released by the FSF on 29 June 2007. GPLv3 was written by Richard Stallman, with legal counsel from
Eben Moglen
Eben Moglen (born 1959) is an American legal scholar who is professor of law and legal history at Columbia University, and is the founder, Director-Counsel and Chairman of Software Freedom Law Center.
Professional biography
Moglen started out ...
and
Richard Fontana from the
Software Freedom Law Center
The Software Freedom Law Center (SFLC) is an organization that provides '' pro bono'' legal representation and related services to not-for-profit developers of free software/ open source software. It was launched in February 2005 with Eben Mogle ...
.
According to Stallman, the most important changes were in relation to
software patents,
free software license
A free-software license is a notice that grants the recipient of a piece of software extensive rights to modify and software distribution, redistribute that software. These actions are usually prohibited by copyright law, but the rights-holde ...
compatibility, the definition of "source code", and
hardware restrictions
A hardware restriction (sometimes called hardware DRM) is low-level protection enforced by electronic components. The hardware restriction scheme may protect against physical or malware attacks or complement a digital rights management system imp ...
on software modifications, such as
tivoization
Tivoization is the practice of designing hardware that incorporates software under the terms of a copyleft software license like the GNU General Public License (GNU GPL), but uses hardware restrictions or digital rights management (DRM) to preve ...
.
[Interview with Richard Stallman](_blank)
, Free Software Magazine, 23 January 2008. Other changes related to internationalization, how license violations are handled, and how additional permissions could be granted by the copyright holder. The concept of "software propagation", as a term for the copying and duplication of software, was explicitly defined.
The public consultation process was coordinated by the Free Software Foundation with assistance from Software Freedom Law Center,
Free Software Foundation Europe, and other free software groups. Comments were collected from the public via the gplv3.fsf.org web portal, using purpose-written software called
stet.
During the public consultation process, 962 comments were submitted for the first draft. By the end of the comment period, a total of 2,636 comments had been submitted.
The third draft was released on 28 March 2007. This draft included language intended to prevent patent-related agreements such as the controversial
Microsoft-Novell patent agreement, and restricted the anti-tivoization clauses to a legal definition of a "user" and a "consumer product". It also explicitly removed the section on "Geographical Limitations", whose probable removal had been announced at the launch of the public consultation.
The fourth discussion draft, which was the last, was released on 31 May 2007. It introduced
Apache License version 2.0 compatibility (prior versions are incompatible), clarified the role of outside contractors and made an exception to avoid the perceived problems of a Microsoft–Novell style agreement, saying in Section 11 paragraph 6 that:
This aimed to make future such deals ineffective. The license was also meant to cause Microsoft to extend the patent licenses it granted to Novell customers for the use of GPLv3 software to ''all'' users of that GPLv3 software; this was possible only if Microsoft was legally a "conveyor" of the GPLv3 software.
Early drafts of GPLv3 also let licensors add an
Affero-like requirement that would have plugged the ''
ASP
Asp may refer to:
Places
* Asp, part of Densbüren, Aargau, Switzerland
* Aspe (''Asp'' in Valencian), Alicante, Spain
* Asp Lake, a lake in Minnesota
Animals
* Asp (fish)
* Asp (snake), in antiquity, one of several venomous snakes
** ''Cera ...
loophole in the GPL''.
[List of free-software licences on the FSF website](_blank)
"We recommend that developers consider using the GNU AGPL for any software which will commonly be run over a network." As there were concerns expressed about the administrative costs of checking code for this additional requirement, it was decided to keep the GPL and the Affero license separated.
Others, notably some high-profile
Linux kernel
The Linux kernel is a free and open-source, monolithic, modular, multitasking, Unix-like operating system kernel. It was originally authored in 1991 by Linus Torvalds for his i386-based PC, and it was soon adopted as the kernel for the GNU ...
developers such as
Linus Torvalds
Linus Benedict Torvalds ( , ; born 28 December 1969) is a Finnish software engineer who is the creator and, historically, the lead developer of the Linux kernel, used by Linux distributions and other operating systems such as Android. He also ...
,
Greg Kroah-Hartman
Greg Kroah-Hartman (GKH) is a major Linux kernel developer. he is the Linux kernel maintainer for the branch, the staging subsystem, USB, driver core, debugfs, kref, kobject, and the sysfs kernel subsystems, Userspace I/O (with Hans J. Koc ...
, and
Andrew Morton, commented to the mass media and made public statements about their objections to parts of discussion drafts 1 and 2.
The kernel developers referred to GPLv3 draft clauses regarding
DRM/
Tivoization
Tivoization is the practice of designing hardware that incorporates software under the terms of a copyleft software license like the GNU General Public License (GNU GPL), but uses hardware restrictions or digital rights management (DRM) to preve ...
, patents, and "additional restrictions", and warned of a
Balkanisation of the "Open Source Universe".
Linus Torvalds, who decided not to adopt the GPLv3 for the Linux kernel,
reiterated his criticism several years later.
GPLv3 improved compatibility with several free software licenses such as the Apache License, version 2.0, and the GNU Affero General Public License, which GPLv2 could not be combined with. However, GPLv3 software could only be combined and share code with GPLv2 software if the GPLv2 license used had the optional "or later" clause and the software was upgraded to GPLv3. While the "GPLv2 or any later version" clause is considered by FSF as the most common form of licensing GPLv2 software,
Toybox
Toybox is a free and open-source software implementation of over 200 Unix command line utilities such as '' ls'', '' cp'', and '' mv''. The Toybox project was started in 2006, and became a 0BSD licensed BusyBox alternative. Toybox is used for ...
developer Rob Landley described it as a ''lifeboat clause''. Software projects licensed with the optional "or later" clause include the
GNU Project
The GNU Project () is a free software, mass collaboration project announced by Richard Stallman on September 27, 1983. Its goal is to give computer users freedom and control in their use of their computers and Computer hardware, computing devi ...
, while a prominent example without the clause is the Linux kernel.
The final version of the license text was published on 29 June 2007.
Terms and conditions
The terms and conditions of the GPL must be made available to anybody receiving a copy of the work that has a GPL applied to it ("the licensee"). Any licensee who adheres to the terms and conditions is given permission to modify the work, as well as to copy and redistribute the work or any derivative version. The licensee is allowed to charge a fee for this service or do this free of charge. This latter point distinguishes the GPL from software licenses that prohibit commercial redistribution. The FSF argues that free software should not place restrictions on commercial use,
and the GPL explicitly states that GPL works may be sold at any price.
The GPL additionally states that a distributor may not impose "further restrictions on the rights granted by the GPL". This forbids activities such as distributing the software under a non-disclosure agreement or contract.
The fourth section for version 2 of the license and the seventh section of version 3 require that programs distributed as pre-compiled binaries be accompanied by a copy of the source code, a written offer to distribute the source code via the same mechanism as the pre-compiled binary, or the written offer to obtain the source code that the user got when they received the pre-compiled binary under the GPL. The second section of version 2 and the fifth section of version 3 also require giving "all recipients a copy of this License along with the Program". Version 3 of the license allows making the source code available in additional ways in fulfillment of the seventh section. These include downloading source code from an adjacent network server or by peer-to-peer transmission, provided that is how the compiled code was available and there are "clear directions" on where to find the source code.
The FSF does not hold the copyright for a work released under the GPL unless an author explicitly
assigns copyrights to the FSF (which seldom happens except for programs that are part of the GNU project). Only the individual copyright holders have the authority to sue when a license violation is suspected.
Use of licensed software
Software under the GPL may be run for all purposes, including commercial purposes and even as a tool for creating
proprietary software
Proprietary software is computer software, software that is deemed within the free and open-source software to be non-free because its creator, publisher, or other rightsholder or rightsholder partner exercises a legal monopoly afforded by modern ...
, such as when using GPL-licensed
compiler
In computing, a compiler is a computer program that translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primarily used for programs that ...
s. Users or companies who distribute GPL-licensed works (e.g. software), may charge a fee for copies or give them free of charge. This distinguishes the GPL from
shareware
Shareware is a type of proprietary software that is initially shared by the owner for trial use at little or no cost. Often the software has limited functionality or incomplete documentation until the user sends payment to the software developer ...
software licenses that allow copying for personal use but prohibit the commercial distribution or proprietary licenses where copying is prohibited by
copyright law
A copyright is a type of intellectual property that gives its owner the exclusive right to copy, distribute, adapt, display, and perform a creative work, usually for a limited time. The creative work may be in a literary, artistic, educatio ...
. The FSF argues that freedom-respecting free software should also not restrict commercial use and distribution (including redistribution):
In purely private (or internal) use—with no sales and no distribution—the software code may be modified and parts reused without requiring the source code to be released. For sales or distribution, the entire source code needs to be made available to end users, including any code changes and additions—in that case, copyleft is applied to ensure that end users retain the freedoms defined above.
However, software running as an application program under a GPL-licensed operating system such as Linux is not required to be licensed under GPL or to be distributed with source-code availability—the licensing depends only on the used libraries and software components and not on the underlying platform.
For example, if a program consists only of original
source code
In computing, source code, or simply code, is any collection of code, with or without comment (computer programming), comments, written using a human-readable programming language, usually as plain text. The source code of a Computer program, p ...
, or is combined with source code from other
software component
Component-based software engineering (CBSE), also called component-based development (CBD), is a branch of software engineering that emphasizes the separation of concerns with respect to the wide-ranging functionality available throughout a give ...
s, then the custom software components need not be licensed under GPL and need not make their source code available; even if the underlying operating system used is licensed under the GPL, applications running on it are not considered derivative works.
Only if GPLed parts are used in a program (and the program is distributed), then all other source code of the program needs to be made available under the same license terms. The
GNU ''Lesser'' General Public License (LGPL) was created to have a weaker copyleft than the GPL, in that it does not require custom-developed source code (distinct from the LGPL'ed parts) to be made available under the same license terms.
The fifth section of version 3 states that no GPL-licensed code shall be considered an effective "technical protection measure" as defined by Article 11 of the
WIPO Copyright Treaty
The World Intellectual Property Organization Copyright Treaty (WIPO Copyright Treaty or WCT) is an international treaty on copyright law adopted by the member states of the World Intellectual Property Organization (WIPO) in 1996. It provides ad ...
, and that those who convey the work waive all legal power to
prohibit circumvention of the technical protection measure "to the extent such circumvention is effected by exercising rights under this License with respect to the covered work". This means that users cannot be held liable for circumventing DRM implemented using GPLv3-licensed code under laws such as the U.S.
Digital Millennium Copyright Act
The Digital Millennium Copyright Act (DMCA) is a 1998 United States copyright law that implements two 1996 treaties of the World Intellectual Property Organization (WIPO). It criminalizes production and dissemination of technology, devices, or ...
(DMCA).
Copyleft
The distribution rights granted by the GPL for modified versions of the work are not unconditional. When someone distributes a GPL'ed work plus their own modifications, the requirements for distributing the whole work cannot be any greater than the requirements that are in the GPL.
This requirement is known as copyleft. It earns its legal power from the use of
copyright
A copyright is a type of intellectual property that gives its owner the exclusive right to copy, distribute, adapt, display, and perform a creative work, usually for a limited time. The creative work may be in a literary, artistic, education ...
on software programs. Because a GPL work is copyrighted, a licensee has no right to redistribute it, not even in modified form (barring
fair use
Fair use is a doctrine in United States law that permits limited use of copyrighted material without having to first acquire permission from the copyright holder. Fair use is one of the limitations to copyright intended to balance the intere ...
), except under the terms of the license. One is only required to adhere to the terms of the GPL if one wishes to exercise rights normally restricted by copyright law, such as redistribution. Conversely, if one distributes copies of the work without abiding by the terms of the GPL (for instance, by keeping the source code secret), they can be
sued by the original author under copyright law.
Copyright law has historically been used to prevent distribution of work by parties not authorized by the creator. Copyleft uses the same copyright laws to accomplish a very different goal. It grants rights to distribution to all parties insofar as they provide the same rights to subsequent ones, and they to the next, etc. In this way the GPL and other copyleft licenses attempt to enforce
libre access to the work and all derivatives.
Many distributors of GPL'ed programs bundle the source code with the
executable
In computing, executable code, an executable file, or an executable program, sometimes simply referred to as an executable or binary, causes a computer "to perform indicated tasks according to encoded instructions", as opposed to a data fil ...
s. An alternative method of satisfying the copyleft is to provide a written offer to provide the source code on a physical medium (such as a CD) upon request. In practice, many GPL'ed programs are distributed over the Internet, and the source code is made available over
FTP or
HTTP
The Hypertext Transfer Protocol (HTTP) is an application layer protocol in the Internet protocol suite model for distributed, collaborative, hypermedia information systems. HTTP is the foundation of data communication for the World Wide Web, ...
. For Internet distribution, this complies with the license.
Copyleft applies only when a person seeks to redistribute the program. Developers may make private modified versions with no obligation to divulge the modifications, as long as they do not distribute the modified software to anyone else. Copyleft applies only to the software, and not to its output (unless that output is itself a derivative work of the program). For example, a public web portal running a modified derivative of a GPL'ed
content management system
A content management system (CMS) is computer software used to manage the creation and modification of digital content ( content management).''Managing Enterprise Content: A Unified Content Strategy''. Ann Rockley, Pamela Kostur, Steve Manning. New ...
is not required to distribute its changes to the underlying software, because the modified web portal is not being redistributed but rather hosted, and also because the web portal output is also not a derivative work of the GPL'ed content management system.
There has been debate on whether it is a violation of the GPL to release the source code in
obfuscated
Obfuscation is the obscuring of the intended meaning of communication by making the message difficult to understand, usually with confusing and ambiguous language. The obfuscation might be either unintentional or intentional (although intent u ...
form, such as in cases in which the author is less willing to make the source code available. The consensus was that while unethical, it was not considered a violation. The issue was clarified when the license was altered with v2 to require that the "preferred" version of the source code be made available.
License versus contract
The GPL was designed as a
license
A license (or licence) is an official permission or permit to do, use, or own something (as well as the document of that permission or permit).
A license is granted by a party (licensor) to another party (licensee) as an element of an agreeme ...
, rather than a contract. In some
Common Law
In law, common law (also known as judicial precedent, judge-made law, or case law) is the body of law created by judges and similar quasi-judicial tribunals by virtue of being stated in written opinions."The common law is not a brooding omniprese ...
jurisdictions, the legal distinction between a license and a contract is an important one: contracts are enforceable by
contract law
A contract is a legally enforceable agreement between two or more parties that creates, defines, and governs mutual rights and obligations between them. A contract typically involves the transfer of goods, services, money, or a promise to ...
, whereas licenses are enforced under
copyright law
A copyright is a type of intellectual property that gives its owner the exclusive right to copy, distribute, adapt, display, and perform a creative work, usually for a limited time. The creative work may be in a literary, artistic, educatio ...
. However, this distinction is not useful in the many jurisdictions where there are no differences between contracts and licenses, such as
Civil Law
Civil law may refer to:
* Civil law (common law), the part of law that concerns private citizens and legal persons
* Civil law (legal system), or continental law, a legal system originating in continental Europe and based on Roman law
** Private la ...
systems.
Those who do not accept the GPL's terms and conditions do not have permission, under copyright law, to copy or distribute GPL-licensed software or derivative works. However, if they do not redistribute the GPL'ed program, they may still use the software within their organization however they like, and works (including programs) constructed by the use of the program are not required to be covered by this license.
Software developer
Allison Randal argued that the GPLv3 as a license is unnecessarily confusing for lay readers, and could be simplified while retaining the same conditions and legal force.
In April 2017, a US federal court ruled that an open-source license is an enforceable contract.
In October 2021 SFC sued Vizio over breach of contract as an end user to request source code to Vizio's TVs, a federal judge has ruled in the interim that the GPL is an enforceable contract by end users as well as a license for copyright holders.
Derivations
The text of the GPL is itself
copyright
A copyright is a type of intellectual property that gives its owner the exclusive right to copy, distribute, adapt, display, and perform a creative work, usually for a limited time. The creative work may be in a literary, artistic, education ...
ed, and the copyright is held by the Free Software Foundation.
The FSF permits people to create new licenses based on the GPL, as long as the derived licenses do not use the GPL preamble without permission. This is discouraged, however, since such a license might be incompatible with the GPL and causes a perceived
license proliferation
License proliferation is the phenomenon of an abundance of already existing and the continued creation of new software licenses for software and software packages in the FOSS ecosystem. License proliferation affects the whole FOSS ecosystem n ...
.
Other licenses created by the GNU project include the
GNU Lesser General Public License
The GNU Lesser General Public License (LGPL) is a free-software license published by the Free Software Foundation (FSF). The license allows developers and companies to use and integrate a software component released under the LGPL into their own ...
,
GNU Free Documentation License
The GNU Free Documentation License (GNU FDL or simply GFDL) is a copyleft license for free documentation, designed by the Free Software Foundation (FSF) for the GNU Project. It is similar to the GNU General Public License, giving readers the r ...
, and
Affero General Public License
The Affero General Public License (Affero GPL and informally Affero License) is a free software license. The first version of the Affero General Public License (AGPLv1), was published by Affero, Inc. in March 2002, and based on the GNU General Pu ...
.
The text of the GPL is not itself under the GPL. The license's copyright disallows modification of the license. Copying and distributing the license is allowed since the GPL requires recipients to get "a copy of this License along with the Program". According to the GPL FAQ, anyone can make a new license using a modified version of the GPL as long as they use a different name for the license, do not mention "GNU", and remove the preamble, though the preamble can be used in a modified license if permission to use it is obtained from the Free Software Foundation (FSF).
Linking and derived works
Libraries
According to the FSF, "The GPL does not require you to release your modified version or any part of it. You are free to make modifications and use them privately, without ever releasing them." However, if one releases a GPL-licensed entity to the public, there is an issue regarding linking: namely, whether a proprietary program that uses a GPL library is in violation of the GPL.
This key dispute is whether non-GPL software can legally
statically link or
dynamically link to GPL libraries. Different opinions exist on this issue. The GPL is clear in requiring that all
derivative work
In copyright law, a derivative work is an expressive creation that includes major copyrightable elements of an original, previously created first work (the underlying work). The derivative work becomes a second, separate work independent in fo ...
s of code under the GPL must themselves be under the GPL. Ambiguity arises with regards to using GPL libraries, and bundling GPL software into a larger package (perhaps mixed into a binary via static linking). This is ultimately a question not of the GPL ''per se'', but of how copyright law defines derivative works. The following points of view exist:
Point of view: dynamic and static linking violate GPL
The Free Software Foundation (which holds the copyright of several notable GPL-licensed software products and of the license text itself) asserts that an executable that uses a dynamically linked library is indeed a derivative work. This does not, however, apply to separate programs communicating with one another.
The Free Software Foundation also created the
LGPL, which is nearly identical to the GPL, but with additional permissions to allow linking for the purposes of "using the library".
Richard Stallman and the FSF specifically encourage library writers to license under the GPL so that proprietary programs cannot use the libraries, in an effort to protect the free-software world by giving it more tools than the proprietary world.
Point of view: static linking violates GPL but unclear as of dynamic linking
Some people believe that while
static linking produces derivative works, it is not clear whether an executable that dynamically links to a GPL code should be considered a derivative work (see
weak copyleft
Copyleft is the legal technique of granting certain freedoms over copies of copyrighted works with the requirement that the same rights be preserved in derivative works. In this sense, ''freedoms'' refers to the use of the work for any purpose, ...
). Linux author Linus Torvalds agrees that dynamic linking can create derived works but disagrees over the circumstances.
A
Novell
Novell, Inc. was an American software and services company headquartered in Provo, Utah, that existed from 1980 until 2014. Its most significant product was the multi- platform network operating system known as Novell NetWare.
Under the l ...
lawyer has written that dynamic linking not being derivative "makes sense" but is not "clear-cut", and that evidence for good-intentioned dynamic linking can be seen by the existence of proprietary Linux kernel drivers.
In ''
Galoob v. Nintendo'', the United States
Ninth Circuit Court of Appeals
The United States Court of Appeals for the Ninth Circuit (in case citations, 9th Cir.) is the U.S. federal court of appeals that has appellate jurisdiction over the U.S. district courts in the following federal judicial districts:
* District ...
defined a derivative work as having form' or permanence" and noted that "the infringing work must incorporate a portion of the copyrighted work in some form", but there have been no clear court decisions to resolve this particular conflict.
Point of view: linking is irrelevant
According to an article in the ''
Linux Journal
''Linux Journal'' (''LJ'') is an American monthly technology magazine originally published by Specialized System Consultants, Inc. (SSC) in Seattle, Washington since 1994. In December 2006 the publisher changed to Belltown Media, Inc. in Housto ...
'',
Lawrence Rosen (a one-time
Open Source Initiative
The Open Source Initiative (OSI) is the steward of the Open Source Definition, the set of rules that define open source software. It is a California public-benefit nonprofit corporation, with 501(c)(3) tax-exempt status.
The organization w ...
general counsel) argues that the method of linking is mostly irrelevant to the question about whether a piece of software is a
derivative work
In copyright law, a derivative work is an expressive creation that includes major copyrightable elements of an original, previously created first work (the underlying work). The derivative work becomes a second, separate work independent in fo ...
; more important is the question about whether the software was intended to interface with client software and/or libraries.
[Lawrence Rosen]
Derivative Works
''Linux Journal'' (1 January 2003).
He states, "The primary indication of whether a new program is a derivative work is whether the source code of the original program was used
n a copy-paste sense modified, translated or otherwise changed in any way to create the new program. If not, then I would argue that it is not a derivative work,"
and lists numerous other points regarding intent, bundling, and linkage mechanism.
He further argues on his firm's website that such "market-based" factors are more important than the linking technique.
There is also the specific issue of whether a
plugin or
module (such as the
NVidia
Nvidia CorporationOfficially written as NVIDIA and stylized in its logo as VIDIA with the lowercase "n" the same height as the uppercase "VIDIA"; formerly stylized as VIDIA with a large italicized lowercase "n" on products from the mid 1990s to ...
or
ATI graphics card
A graphics card (also called a video card, display card, graphics adapter, VGA card/VGA, video adapter, display adapter, or mistakenly GPU) is an expansion card which generates a feed of output images to a display device, such as a computer mo ...
kernel modules) must also be GPL, if it could reasonably be considered its own work. This point of view suggests that reasonably separate plugins, or plugins for software designed to use plugins, could be licensed under an arbitrary license if the work is GPLv2. Of particular interest is the GPLv2 paragraph:
The GPLv3 has a different clause:
As a case study, some supposedly proprietary plugins and
themes/
skin
Skin is the layer of usually soft, flexible outer tissue covering the body of a vertebrate animal, with three main functions: protection, regulation, and sensation.
Other cuticle, animal coverings, such as the arthropod exoskeleton, have diffe ...
s for GPLv2
CMS software such as
Drupal
Drupal () is a free and open-source web content management system (CMS) written in PHP and distributed under the GNU General Public License. Drupal provides an open-source back-end framework for at least 14% of the top 10,000 websites worldwid ...
and
WordPress
WordPress (WP or WordPress.org) is a free and open-source software, free and open-source content management system (CMS) written in PHP, hypertext preprocessor language and paired with a MySQL or MariaDB database with supported secure hypert ...
have come under fire, with both sides of the argument taken.
The FSF differentiates on how the plugin is being invoked. If the plugin is invoked through dynamic linkage and it performs function calls to the GPL program then it is most likely a derivative work.
Communicating and bundling with non-GPL programs
The mere act of communicating with other programs does not, by itself, require all software to be GPL; nor does distributing GPL software with non-GPL software. However, minor conditions must be followed that ensures the rights of GPL software are not restricted. The following is a quote from the
gnu.org
The GNU Project () is a free software, mass collaboration project announced by Richard Stallman on September 27, 1983. Its goal is to give computer users freedom and control in their use of their computers and Computer hardware, computing devi ...
GPL
FAQ, which describes to what extent software is allowed to communicate with and be bundled with GPL programs:
The FSF thus draws the line between "library" and "other program" via 1) "complexity" and "intimacy" of information exchange and 2) mechanism (rather than semantics), but resigns that the question is not clear-cut and that in complex situations, case law will decide.
Legal status
The first known violation of the GPL was in 1989, when
NeXT
Next may refer to:
Arts and entertainment Film
* ''Next'' (1990 film), an animated short about William Shakespeare
* ''Next'' (2007 film), a sci-fi film starring Nicolas Cage
* '' Next: A Primer on Urban Painting'', a 2005 documentary film
Lit ...
extended the
GCC compiler to support
Objective-C
Objective-C is a general-purpose, object-oriented programming language that adds Smalltalk-style messaging to the C programming language. Originally developed by Brad Cox and Tom Love in the early 1980s, it was selected by NeXT for its N ...
, but did not publicly release the changes. After an inquiry they created a public
patch
Patch or Patches may refer to:
Arts, entertainment and media
* Patch Johnson, a fictional character from ''Days of Our Lives''
* Patch (''My Little Pony''), a toy
* "Patches" (Dickey Lee song), 1962
* "Patches" (Chairmen of the Board song ...
. There was no lawsuit filed for this violation.
In 2002,
MySQL AB
MySQL AB was a Swedish software company founded in 1995. It was acquired by Sun Microsystems in 2008, Sun was in turn acquired by Oracle Corporation in 2010. MySQL AB is the creator of MySQL, a relational database management system, as well a ...
sued Progress NuSphere for copyright and trademark infringement in
United States district court
The United States district courts are the trial courts of the U.S. federal judiciary. There is one district court for each federal judicial district, which each cover one U.S. state or, in some cases, a portion of a state. Each district c ...
. NuSphere had allegedly violated MySQL's copyright by linking MySQL's GPL'ed code with NuSphere Gemini table without complying with the license. After a preliminary hearing before Judge Patti Saris on 27 February 2002, the parties entered settlement talks and eventually settled. After the hearing, FSF commented that "Judge Saris made clear that she sees the GNU GPL to be an enforceable and binding license."
In August 2003, the
SCO Group
The SCO Group (often referred to SCO and later called The TSG Group) was an American software company in existence from 2002 to 2012 that became known for owning Unix operating system assets that had belonged to the Santa Cruz Operation (the ...
stated that they believed the GPL to have no legal validity and that they intended to pursue lawsuits over sections of code supposedly copied from SCO Unix into the
Linux kernel
The Linux kernel is a free and open-source, monolithic, modular, multitasking, Unix-like operating system kernel. It was originally authored in 1991 by Linus Torvalds for his i386-based PC, and it was soon adopted as the kernel for the GNU ...
. This was a problematic stand for them, as they had distributed Linux and other GPL'ed code in their
Caldera OpenLinux distribution, and there is little evidence that they had any legal right to do so except under the terms of the GPL. In February 2018, after federal circuit court judgement, appeal, and the case being (partially) remanded to the circuit court, the parties restated their remaining claims and provided a plan to move toward final judgement. The remaining claims revolved around
Project Monterey, and were finally settled in November 2021 by IBM paying $14.25 million to the TSG (previously SCO) bankruptcy trustee.
In April 2004, the
netfilter
Netfilter is a framework provided by the Linux kernel that allows various networking-related operations to be implemented in the form of customized handlers. Netfilter offers various functions and operations for packet filtering, network addr ...
/
iptables project was granted a preliminary
injunction against Sitecom Germany by
Munich
Munich ( ; german: München ; bar, Minga ) is the capital and most populous city of the German state of Bavaria. With a population of 1,558,395 inhabitants as of 31 July 2020, it is the third-largest city in Germany, after Berlin and Ha ...
District Court after Sitecom refused to desist from distributing Netfilter's GPL'ed software in violation of the terms of the GPL.
Harald Welte
Harald Welte, also known as LaForge, is a German programmer.
Welte is the founder of the free software project Osmocom and was formerly involved in the netfilter/iptables and Openmoko projects. He is a member of the Chaos Computer Club.
Bio ...
, of Netfilter, was represented by
ifrOSS co-founder Till Jaeger. In July 2004, the German court confirmed this injunction as a final ruling against Sitecom. The court's justification was that:
:Defendant has infringed on the copyright of plaintiff by offering the software 'netfilter/iptables' for download and by advertising its distribution, without adhering to the license conditions of the GPL. Said actions would only be permissible if the defendant had a license grant.... This is independent of the questions whether the licensing conditions of the GPL have been effectively agreed upon between plaintiff and defendant or not. If the GPL were not agreed upon by the parties, defendant would notwithstanding lack the necessary rights to copy, distribute, and make the software 'netfilter/iptables' publicly available.
This exactly mirrored the predictions given previously by the FSF's Eben Moglen. This ruling was important because it was the first time that a court had confirmed that violating terms of the GPL could be a copyright violation and established jurisprudence as to the enforceability of the GPLv2 under German law.
In May 2005, Daniel Wallace
filed suit
-
A lawsuit is a proceeding by a party or parties against another in the civil court of law. The archaic term "suit in law" is found in only a small number of laws still in effect today. The term "lawsuit" is used in reference to a civil actio ...
against the Free Software Foundation in the
Southern District of Indiana, contending that the GPL is an illegal attempt to fix prices (at zero). The suit was dismissed in March 2006, on the grounds that Wallace had failed to state a valid antitrust claim; the court noted that "the GPL encourages, rather than discourages, free competition and the distribution of computer operating systems, the benefits of which directly pass to consumers".
[Dismissal](_blank)
of Wallace v. FSF. Fro
this article
on Groklaw. Wallace was denied the possibility of further amending his complaint, and was ordered to pay the FSF's legal expenses.
On 8 September 2005, the Seoul Central District Court ruled that the GPL was not material to a case dealing with
trade secret
Trade secrets are a type of intellectual property that includes formulas, practices, processes, designs, instruments, patterns, or compilations of information that have inherent economic value because they are not generally known or readily a ...
s derived from GPL-licensed work. Defendants argued that since it is impossible to maintain trade secrets while being compliant with GPL and distributing the work, they are not in breach of trade secrets. This argument was considered without ground.
On 6 September 2006, the
gpl-violations.org
gpl-violations.org is a not-for-profit project founded and led by Harald Welte in 2004. It works to make sure software licensed under the GNU General Public License is not used in ways prohibited by the license.
Goals
The goals of the project ar ...
project prevailed in court litigation against
D-Link
D-Link Corporation is a Taiwanese multinational networking equipment manufacturing corporation headquartered in Taipei, Taiwan. It was founded in March 1986 in Taipei as ''Datex Systems Inc.''
History
D-Link Corporation changed its name f ...
Germany GmbH regarding D-Link's copyright-infringing use of parts of the Linux kernel in
storage
Storage may refer to:
Goods Containers
* Dry cask storage, for storing high-level radioactive waste
* Food storage
* Intermodal container, cargo shipping
* Storage tank
Facilities
* Garage (residential), a storage space normally used to store car ...
devices they distributed. The judgment stated that the GPL is valid, legally binding, and stands in German court.
In late 2007, the
BusyBox
BusyBox is a software suite that provides several Unix utilities in a single executable file. It runs in a variety of POSIX environments such as Linux, Android, and FreeBSD, although many of the tools it provides are designed to work with int ...
developers and the
Software Freedom Law Center
The Software Freedom Law Center (SFLC) is an organization that provides '' pro bono'' legal representation and related services to not-for-profit developers of free software/ open source software. It was launched in February 2005 with Eben Mogle ...
embarked upon a program to gain GPL compliance from distributors of BusyBox in
embedded system
An embedded system is a computer system—a combination of a computer processor, computer memory, and input/output peripheral devices—that has a dedicated function within a larger mechanical or electronic system. It is ''embedded'' ...
s, suing those who would not comply. These were claimed to be the first US uses of courts for enforcement of GPL obligations. (See
BusyBox GPL lawsuits.)
On 11 December 2008, the Free Software Foundation
sued Cisco Systems, Inc. for copyright violations by its Linksys division, of the FSF's GPL-licensed
coreutils
The GNU Core Utilities or coreutils is a package of GNU software containing implementations for many of the basic tools, such as cat, ls, and rm, which are used on Unix-like operating systems.
In September 2002, the ''GNU coreutils'' were c ...
,
readline,
Parted,
Wget
GNU Wget (or just Wget, formerly Geturl, also written as its package name, wget) is a computer program that retrieves content from web servers. It is part of the GNU Project. Its name derives from "World Wide Web" and " ''get''." It supports do ...
,
GNU Compiler Collection
The GNU Compiler Collection (GCC) is an optimizing compiler produced by the GNU Project supporting various programming languages, hardware architectures and operating systems. The Free Software Foundation (FSF) distributes GCC as free sof ...
,
binutils, and
GNU Debugger
The GNU Debugger (GDB) is a portable debugger that runs on many Unix-like systems and works for many programming languages, including Ada, C, C++, Objective-C, Free Pascal, Fortran, Go, and partially others.
History
GDB was first writte ...
software packages, which Linksys distributes in the Linux firmware
of its
WRT54G wireless router
A wireless router is a device that performs the functions of a router and also includes the functions of a wireless access point. It is used to provide access to the Internet or a private computer network. Depending on the manufacturer and mod ...
s, as well as numerous other devices including DSL and Cable modems, Network Attached Storage devices, Voice-Over-IP gateways,
virtual private network devices, and a home theater/media player device.
After six years of repeated complaints to
Cisco
Cisco Systems, Inc., commonly known as Cisco, is an American-based multinational corporation, multinational digital communications technology conglomerate (company), conglomerate corporation headquartered in San Jose, California. Cisco develo ...
by the FSF, claims by Cisco that they would correct, or were correcting, their compliance problems (not providing complete copies of all source code and their modifications), of repeated new violations being discovered and reported with more products, and lack of action by Linksys (a process described on the FSF blog as a "five-years-running game of Whack-a-Mole"
) the FSF took them to court.
Cisco settled the case six months later by agreeing "to appoint a Free Software Director for Linksys" to ensure compliance, "to notify previous recipients of Linksys products containing FSF programs of their rights under the GPL," to make source code of FSF programs freely available on its website, and to make a monetary contribution to the FSF.
In 2011, it was noticed that GNU Emacs had been accidentally releasing some binaries without corresponding source code for two years, in opposition to the intended spirit of the
GPL, resulting in a
copyright violation
Copyright infringement (at times referred to as piracy) is the use of works protected by copyright without permission for a usage where such permission is required, thereby infringing certain exclusive rights granted to the copyright holder, ...
. Richard Stallman described this incident as a "very bad mistake", which was promptly fixed. The FSF did not sue any downstream redistributors who also unknowingly violated the GPL by distributing these binaries.
In 2017 Artifex, the maker of
Ghostscript
Ghostscript is a suite of software based on an interpreter for Adobe Systems' PostScript and Portable Document Format (PDF) page description languages. Its main purposes are the rasterization or rendering of such page description language file ...
, sued
Hancom
Hancom (KOSDAQ: HAANSOFT) is an office suite software developer in South Korea. Established in 1990, the company created Hangul, a native word processing program for the Korean language.
In May 2017 Hancom lost a lawsuit in US Federal Court for ...
, the maker of an office suite which included Ghostscript. Artifex offers two licenses for Ghostscript; one is the Affero GPL License and the other is a commercial license. Hancom did not acquire a commercial license from Artifex nor did it release its office suite as free software. Artifex sued Hancom in US District Court and made two claims. First, Hancom's use of Ghostscript was a violation of copyright; and second, Hancom's use of Ghostscript was a license violation. Judge
Jacqueline Scott Corley found the GPL license was an enforceable contract and Hancom was in breach of contract.
On 20 July 2021, the developers of the open-source
Stockfish chess engine sued
ChessBase, the creator of chess software, for violating the GPLv3 license. It was claimed that Chessbase had made only slight modifications to the Stockfish code and sold the new engines (Fat Fritz 2 and Houdini 6) to their customers. Additionally, Fat Fritz 2 was marketed as if it was an innovative engine. ChessBase had infringed on the license by not distributing these products as Free Software in accordance with the GPL.
A year later on 7 November 2022, both parties reached an agreement and ended the dispute. In the near future ChessBase will no longer sell products containing Stockfish code, while informing their customers of this fact with an appropriate notice on their web pages. However, one year later, Chessbase's license would be reinstated. Stockfish did not seek damages or financial compensation.
Compatibility and multi-licensing
Code licensed under several other licenses can be combined with a program under the GPL without conflict, as long as the combination of restrictions on the work as a whole does not put any additional restrictions beyond what GPL allows. In addition to the regular terms of the GPL, there are additional restrictions and permissions one can apply:
# If a user wants to combine code licensed under different versions of GPL, then this is only allowed if the code with the earlier GPL version includes an "or any later version" statement.
For instance, the GPLv3-licensed
GNU LibreDWG library cannot be used anymore by
LibreCAD and
FreeCAD who have GPLv2-only dependencies.
# Code licensed under
LGPL is permitted to be linked with any other code no matter what license that code has, though the LGPL does add additional requirements for the combined work. LGPLv3 and GPLv2-only can thus commonly not be linked, as the combined Code work would add additional LGPLv3 requirements on top of the GPLv2-only licensed software. Code licensed under LGPLv2.x without the "any later version" statement can be
relicensed if the whole combined work is licensed to GPLv2 or GPLv3.
FSF maintains a list of GPL-
compatible free software licenses containing many of the most common free software licenses, such as the original
MIT/X license, the
BSD license
BSD licenses are a family of permissive free software licenses, imposing minimal restrictions on the use and distribution of covered software. This is in contrast to copyleft licenses, which have share-alike requirements. The original BSD li ...
(in its current 3-clause form), and the
Artistic License
Artistic license (alongside more contextually-specific derivative terms such as poetic license, historical license, dramatic license, and narrative license) refers to deviation from fact or form for artistic purposes. It can include the alterat ...
2.0.
Starting from GPLv3, it is unilaterally compatible for materials (like text and other media) under
to be remixed into the GPL-licensed materials (prominently software), not vice versa, for niche use cases like game engine (GPL) with game scripts (CC BY-SA).
David A. Wheeler has advocated that free/open source software developers use only GPL-compatible licenses, because doing otherwise makes it difficult for others to participate and contribute code. As a specific example of license incompatibility,
Sun Microsystems
Sun Microsystems, Inc. (Sun for short) was an American technology company that sold computers, computer components, software, and information technology services and created the Java programming language, the Solaris operating system, ZFS, ...
'
ZFS cannot be included in the GPL-licensed Linux kernel, because it is licensed under the GPL-incompatible
Common Development and Distribution License
The Common Development and Distribution License (CDDL) is a free and open-source software license, produced by Sun Microsystems, based on the Mozilla Public License (MPL). Files licensed under the CDDL can be combined with files licensed under o ...
. Furthermore, ZFS is protected by patents, so distributing an independently developed GPL-ed implementation would still require Oracle's permission.
A number of businesses use
multi-licensing
Multi-licensing is the practice of distributing software under two or more different sets of terms and conditions. This may mean multiple different software licenses or sets of licenses. Prefixes may be used to indicate the number of licenses ...
to distribute a GPL version and sell a
proprietary license to companies wishing to combine the package with proprietary code, using dynamic linking or not. Examples of such companies include
MySQL AB
MySQL AB was a Swedish software company founded in 1995. It was acquired by Sun Microsystems in 2008, Sun was in turn acquired by Oracle Corporation in 2010. MySQL AB is the creator of MySQL, a relational database management system, as well a ...
,
Digia PLC (
Qt framework, before 2011 from
Nokia
Nokia Corporation (natively Nokia Oyj, referred to as Nokia) is a Finnish multinational telecommunications, information technology, and consumer electronics corporation, established in 1865. Nokia's main headquarters are in Espoo, Finlan ...
),
Red Hat (
Cygwin), and Riverbank Computing (
PyQt
PyQt is a Python (programming language), Python Language binding, binding of the cross-platform GUI toolkit Qt (toolkit), Qt, implemented as a Python Plug-in (computing), plug-in. PyQt is free software developed by the United Kingdom, British firm ...
). Other companies, like the
Mozilla Foundation (products include
Mozilla Application Suite
The Mozilla Application Suite (originally known as Mozilla, marketed as the Mozilla Suite) is a discontinued cross-platform integrated Internet suite. Its development was initiated by Netscape Communications Corporation, before their acquisition ...
,
Mozilla Thunderbird
Mozilla Thunderbird is a free and open-source cross-platform email client, personal information manager, news client, RSS and chat client developed by the Mozilla Foundation and operated by subsidiary MZLA Technologies Corporation. The projec ...
, and
Mozilla Firefox
Mozilla Firefox, or simply Firefox, is a free and open-source web browser developed by the Mozilla Foundation and its subsidiary, the Mozilla Corporation. It uses the Gecko rendering engine to display web pages, which implements current a ...
), used multi-licensing to distribute versions under the GPL and some other open-source licenses.
Text and other media
It is possible to use the GPL for text documents instead of computer programs, or more generally for all kinds of media, if it is clear what constitutes the source code (defined as "the preferred form of the work for making changes in it"). For manuals and textbooks, though, the FSF recommends the
GNU Free Documentation License
The GNU Free Documentation License (GNU FDL or simply GFDL) is a copyleft license for free documentation, designed by the Free Software Foundation (FSF) for the GNU Project. It is similar to the GNU General Public License, giving readers the r ...
(GFDL) instead, which it created for this purpose. Nevertheless, the
Debian
Debian (), also known as Debian GNU/Linux, is a Linux distribution composed of free and open-source software, developed by the community-supported Debian Project, which was established by Ian Murdock on August 16, 1993. The first version of De ...
developers recommended (in a resolution adopted in 2006) to license documentation for their project under the GPL, because of the incompatibility of the GFDL with the GPL (text licensed under the GFDL cannot be incorporated into GPL software).
[Debian Project]
Resolution: Why the GNU Free Documentation License is not suitable for Debian
Voted February–March 2006. Retrieved 20 June 2009. Also, the
FLOSS Manuals
The FLOSS Manuals (FM) is a non-profit foundation founded in 2006 by Adam Hyde and based in the Netherlands. The foundation is focused on the creation of quality documentation about how to use free software.
Its web site is a wiki (previously u ...
foundation, an organization devoted to creating manuals for free software, decided to eschew the GFDL in favor of the GPL for its texts in 2007.
If the GPL is used for
computer font
A computer font is implemented as a digital data file containing a set of graphically related glyphs. A computer font is designed and created using a font editor. A computer font specifically designed for the computer screen, and not for pri ...
s, any documents or images made with such fonts might also have to be distributed under the terms of the GPL. This is not the case in countries that recognize
typefaces (the appearance of fonts) as being a useful article and thus
not eligible for copyright, but font files as copyrighted
computer software
Software is a set of computer programs and associated documentation and data. This is in contrast to hardware, from which the system is built and which actually performs the work.
At the lowest programming level, executable code consists ...
(which can complicate font embedding, since the document could be considered 'linked' to the font; in other words, embedding a vector font in a document could force it to be released under the GPL, but a rasterized rendering of the font would not be subject to the GPL). The FSF provides
an exception for cases where this is not desired.
Adoption
Historically, the GPL license family has been one of the most popular software licenses in the
FOSS
Fos or FOSS may refer to:
Companies
* Foss A/S, a Danish analytical instrument company
*Foss Brewery, a former brewery in Oslo, Norway
* Foss Maritime, a tugboat and shipping company
Historic houses
*Foss House (New Brighton, Minnesota), United ...
domain.
A 1997 survey of
MetaLab, then the largest free software archive, showed that the GPL accounted for about half of the software licensed therein.
Similarly, a 2000 survey of
Red Hat Linux
Red Hat Linux was a widely used commercial open-source Linux distribution created by Red Hat until its discontinuation in 2004.
Early releases of Red Hat Linux were called Red Hat Commercial Linux. Red Hat published the first non-beta release ...
7.1 found that 53% of the source code was licensed under the GPL.
, about 68% of all projects and 82.1% of the open source industry certified licensed projects listed on
SourceForge.net were from the GPL license family. , the GPL family accounted for 70.9% of the 44,927
free software
Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, ...
projects listed on
Freecode.
After the release of the GPLv3 in June 2007, adoption of this new GPL version was much discussed and some projects decided against upgrading. For instance the Linux kernel,
MySQL
MySQL () is an open-source relational database management system (RDBMS). Its name is a combination of "My", the name of co-founder Michael Widenius's daughter My, and "SQL", the acronym for Structured Query Language. A relational database ...
,
BusyBox
BusyBox is a software suite that provides several Unix utilities in a single executable file. It runs in a variety of POSIX environments such as Linux, Android, and FreeBSD, although many of the tools it provides are designed to work with int ...
,
AdvFS,
Blender
A blender (sometimes called a mixer or liquidiser in British English) is a kitchen and laboratory appliance used to mix, crush, purée or emulsify food and other substances. A stationary blender consists of a blender container with a rotating me ...
,
VLC media player
VLC media player (previously the VideoLAN Client and commonly known as simply VLC) is a free and open-source, portable, cross-platform media player software and streaming media server developed by the VideoLAN project. VLC is available for d ...
, and
MediaWiki
MediaWiki is a Free and open-source software, free and open-source wiki software. It is used on Wikipedia and almost all other Wikimedia movement, Wikimedia Website, websites, including Wiktionary, Wikimedia Commons and Wikidata; these sit ...
decided against adopting GPLv3.
On the other hand, in 2009, two years after the release of GPLv3,
Google
Google LLC () is an American Multinational corporation, multinational technology company focusing on Search Engine, search engine technology, online advertising, cloud computing, software, computer software, quantum computing, e-commerce, ar ...
open-source programs office manager Chris DiBona reported that the number of open-source project licensed software that had moved from GPLv2 to GPLv3 was 50%, counting the projects hosted at
Google Code
Google Developers (previously Google Code) , application programming interfaces (APIs), and technical resources. The site contains documentation on using Google developer tools and APIs—including discussion groups and blogs for developers usi ...
.
In 2011, four years after the release of the GPLv3, 6.5% of all open-source license projects are GPLv3 while 42.5% are GPLv2 according to Black Duck Software data.
Following in 2011 ''451 Group'' analyst Matthew Aslett argued in a blog post that copyleft licenses went into decline and permissive licenses increased, based on statistics from Black Duck Software. Similarly, in February 2012 Jon Buys reported that among the top 50 projects on
GitHub
GitHub, Inc. () is an Internet hosting service for software development and version control using Git. It provides the distributed version control of Git plus access control, bug tracking, software feature requests, task management, co ...
five projects were under a GPL license, including dual licensed and AGPL projects.
GPL usage statistics from 2009 to 2013 was extracted from
Freecode data by Walter van Holst while analyzing
license proliferation
License proliferation is the phenomenon of an abundance of already existing and the continued creation of new software licenses for software and software packages in the FOSS ecosystem. License proliferation affects the whole FOSS ecosystem n ...
.
[License proliferation: a naive quantitative analysis](_blank)
on lwn.net "Walter van Holst is a legal consultant at the Dutch IT consulting company mitopics... Walter instead chose to use data from a software index, namely Freecode... Walter's 2009 data set consisted of 38,674 projects... The final column in the table shows the number of projects licensed under "any version of the GPL". In addition, Walter presented pie charts that showed the proportion of projects under various common-licenses. Notable in those data sets was that, whereas in 2009 the proportion of projects licensed GPLv2-only and GPLv3 was respectively 3% and 2%, by 2013, those numbers had risen to 7% and 5%."
In August 2013, according to Black Duck Software, the website's data shows that the GPL license family is used by 54% of open-source projects, with a breakdown of the individual licenses shown in the following table.
However, a later study in 2013 showed that software licensed under the GPL license family has increased, and that even the data from Black Duck Software has shown a total increase of software projects licensed under GPL. The study used public information gathered from repositories of the
Debian Project, and the study criticized Black Duck Software for not publishing their methodology used in collecting statistics. Daniel German, Professor in the Department of Computer Science at the
University of Victoria
The University of Victoria (UVic or Victoria) is a public research university located in the municipalities of Oak Bay and Saanich, British Columbia, Canada. The university traces its roots to Victoria College, the first post-secondary insti ...
in Canada, presented a talk in 2013 about the methodological challenges in determining which are the most widely used free software licenses, and showed how he could not replicate the result from Black Duck Software.
In 2015, according to Black Duck, GPLv2 lost its first position to the
MIT license
The MIT License is a permissive free software license originating at the Massachusetts Institute of Technology (MIT) in the late 1980s. As a permissive license, it puts only very limited restriction on reuse and has, therefore, high license co ...
and is now second, the GPLv3 dropped to fourth place while the
Apache license kept its third position.
A March 2015 analysis of the
GitHub
GitHub, Inc. () is an Internet hosting service for software development and version control using Git. It provides the distributed version control of Git plus access control, bug tracking, software feature requests, task management, co ...
repositories revealed, for the GPL license family, a usage percentage of approximately 25% among licensed projects. In June 2016, an analysis of
Fedora Project
The Fedora Project is an independent project to co-ordinate the development of Fedora Linux, a Linux-based operating system, operating with the vision of "''a world where everyone benefits from free and open source software built by inclusive, w ...
's packages revealed the GNU GPLv2 or later as the most popular license, and the GNU GPL family as the most popular license family (followed by the MIT, BSD, and GNU LGPL families).
An analysis of whitesourcesoftware.com in April 2018 of the FOSS ecosystem saw the GPLv3 on third place (18%) and the GPLv2 on fourth place (11%), after MIT license (26%) and Apache 2.0 license (21%).
Reception
Legal barrier to application stores
The GPL is incompatible with many application
digital distribution
Digital distribution, also referred to as content delivery, online distribution, or electronic software distribution, among others, is the delivery or distribution of digital media content such as audio, video, e-books, video games, and othe ...
systems, like the
Mac App Store
The App Store (also known as the Mac App Store) is a digital distribution platform for macOS apps, often referred to as Mac apps, created and maintained by Apple Inc. The platform was announced on October 20, 2010, at Apple's "Back to the Mac" ...
, and certain other software distribution platforms (on smartphones as well as PCs). The problem lies in the right "to make a copy for your neighbour", as this right is violated by digital rights management systems embedded within the platform to prevent copying of paid software. Even if the application is free in the application store in question, it might result in a violation of that application store's terms.
[The GPL, the App Store and You]
on engadget.com (2011)
There is a distinction between an app ''store'', which sells
DRM-restricted software under proprietary licenses, and the more general concept of
digital distribution
Digital distribution, also referred to as content delivery, online distribution, or electronic software distribution, among others, is the delivery or distribution of digital media content such as audio, video, e-books, video games, and othe ...
via some form of online software repository. Virtually all modern Unix systems and
Linux distributions
A Linux distribution (often abbreviated as distro) is an operating system made from a software collection that includes the Linux kernel and, often, a package management system. Linux users usually obtain their operating system by downloading on ...
have application repositories, including
NetBSD
NetBSD is a free and open-source Unix operating system based on the Berkeley Software Distribution (BSD). It was the first open-source BSD descendant officially released after 386BSD was forked. It continues to be actively developed and is a ...
,
FreeBSD
FreeBSD is a free and open-source Unix-like operating system descended from the Berkeley Software Distribution (BSD), which was based on Research Unix. The first version of FreeBSD was released in 1993. In 2005, FreeBSD was the most popular ...
,
Ubuntu,
Fedora
A fedora () is a hat with a soft brim and indented crown.Kilgour, Ruth Edwards (1958). ''A Pageant of Hats Ancient and Modern''. R. M. McBride Company. It is typically creased lengthwise down the crown and "pinched" near the front on both sides ...
, and Debian. These specific application
repositories all contain GPL-licensed software apps, in some cases even when the core project does not permit GPL-licensed code in the base system (for instance OpenBSD
["Copyright Policy"]
OpenBSD). In other cases, such as the
Ubuntu App Store, proprietary commercial software applications ''and'' GPL-licensed applications are both available via the same system; the reason that the Mac App Store (and similar projects) is incompatible with GPL-licensed apps is not inherent in the concept of an app store, but is rather specifically due to Apple's terms-of-use requirement
that all apps in the store utilize Apple DRM restrictions. Ubuntu's app store does not demand any such requirement: "These terms do not limit or restrict your rights under any applicable open source software licenses."
Microsoft
In 2001,
Microsoft
Microsoft Corporation is an American multinational corporation, multinational technology company, technology corporation producing Software, computer software, consumer electronics, personal computers, and related services headquartered at th ...
CEO
Steve Ballmer
Steven Anthony Ballmer (; March 24, 1956) is an American business magnate and investor who served as the chief executive officer of Microsoft from 2000 to 2014. He is the current owner of the Los Angeles Clippers of the National Basketball Assoc ...
referred to Linux as "a cancer that attaches itself in an intellectual property sense to everything it touches". In response to Microsoft's attacks on the GPL, several prominent Free Software developers and advocates released a joint statement supporting the license. Microsoft has released
Microsoft Windows Services for UNIX, which contains GPL-licensed code. In July 2009, Microsoft itself released a body of around 20,000 lines of Linux driver code under the GPL. The
Hyper-V code that is part of the submitted code used open-source components licensed under the GPL and was originally statically linked to proprietary binary parts, the latter being inadmissible in GPL-licensed software.
"Viral" nature
The description of the GPL as
"viral", when called 'General Public Virus' or 'GNU Public Virus' (GPV), dates back to a year after the GPLv1 was released.
In 2001, the term received broader public attention when
Craig Mundie, Microsoft Senior Vice President, described the GPL as being "viral". Mundie argues that the GPL has a "viral" effect in that it only allows the conveyance of whole programs, which means programs that
link to GPL libraries must themselves be under a GPL-compatible license, else they cannot be combined and distributed.
In 2006, Richard Stallman responded in an interview that Mundie's metaphor of a "virus" is wrong as software under the GPL does not "attack" or "infect" other software. Accordingly, Stallman believes that comparing the GPL to a virus is inappropriate, and that a better metaphor for software under the GPL would be a
spider plant Spider plant is a common name for several plants and may refer to:
*''Chlorophytum comosum'', the commonly cultivated houseplant
*'' Chlorophytum'', a genus of plants in the Asparagus family
*''Saxifraga flagellaris
''Saxifraga flagellaris'', ...
: if one takes a piece of it and puts it somewhere else, it grows there too.
On the other hand, the concept of a viral nature of the GPL was taken up by others later too.
For instance, a 2008 article stated: "The GPL license is 'viral,' meaning any derivative work you create containing even the smallest portion of the previously GPL licensed software must also be licensed under the GPL license."
Barrier to commercialization
The FreeBSD project has stated that "a less publicized and unintended use of the GPL is that it is very favorable to large companies that want to undercut software companies. In other words, the GPL is well suited for use as a marketing weapon, potentially reducing overall economic benefit and contributing to monopolistic behavior" and that the GPL can "present a real problem for those wishing to commercialize and profit from software."
Richard Stallman wrote about the practice of selling license exceptions to free software licenses as an example of ethically acceptable commercialization practice. Selling exceptions here means that the copyright holder of a given software releases it (along with the corresponding source code) to the public under a free software license, "then lets customers pay for permission to use the same code under different terms, for instance allowing its inclusion in proprietary applications". Stallman considered selling exceptions "acceptable since the 1990s, and on occasion I've suggested it to companies. Sometimes this approach has made it possible for important programs to become free software". Although the FSF does not practice selling exceptions, a comparison with the X11 license (which is a non-copyleft free software license) is proposed for suggesting that this commercialization technique should be regarded as ethically acceptable. Releasing a given program under a non-copyleft free software license would permit embedding the code in proprietary software. Stallman comments that "either we have to conclude that it's wrong to release anything under the X11 license—a conclusion I find unacceptably extreme—or reject this implication. Using a non-copyleft license is weak, and usually an inferior choice, but it's not wrong. In other words, selling exceptions permits some embedding in proprietary software, and the X11 license permits even more embedding. If this doesn't make the X11 license unacceptable, it doesn't make selling exceptions unacceptable".
Open-source criticism
In 2000, developer and author
Nikolai Bezroukov published an analysis and comprehensive critique of GPL's foundations and Stallman's software development model, called "Labyrinth of Software Freedom".
Version 2 of the
WTFPL (Do What The Fuck You Want To Public License) was created by Debian project leader
Sam Hocevar in 2004 as a parody of the GPL.
In 2005,
open source software
Open-source software (OSS) is computer software that is released under a license in which the copyright holder grants users the rights to use, study, change, and distribute the software and its source code to anyone and for any purpose. Op ...
advocate
Eric S. Raymond questioned the relevance of GPL then for the FOSS ecosystem, stating: "We don't need the GPL anymore. It's based on the belief that open source software is weak and needs to be protected. Open source would be succeeding faster if the GPL didn't make lots of people nervous about adopting it." Richard Stallman replied: "GPL is designed to ... ensure that every user of a program gets the essential freedoms—to run it, to study and change the source code, to redistribute copies, and to publish modified versions...
aymondaddresses the issue in terms of different goals and values—those of 'open source,' which do not include defending software users' freedom to share and change software."
In 2007,
Allison Randal, who took part in the GPL draft committee, criticized the GPLv3 for being
incompatible with the GPLv2 and for missing clarity in the formulation. Similarly,
Whurley prophesied in 2007 the downfall of the GPL due to the lack of focus for the developers with GPLv3 which would drive them towards permissive licenses.
In 2009, David Chisnall described in an
InformIT article, "The Failure of the GPL", the problems with the GPL, among them incompatibility and complexity of the license text.
In 2014,
dtrace
DTrace is a comprehensive dynamic tracing framework originally created by Sun Microsystems for troubleshooting kernel and application problems on production systems in real time.
Originally developed for Solaris, it has since been released unde ...
developer and
Joyent CTO Bryan Cantrill
Bryan M. Cantrill (born 1973) is an American software engineer who worked at Sun Microsystems and later at Oracle Corporation following its acquisition of Sun. He left Oracle on July 25, 2010 to become the Vice President of Engineering at Joyen ...
called the copyleft GPL a "Corporate Open Source
Anti-pattern" by being "anti-collaborative" and recommended instead
permissive software licenses.
GPLv3 criticism
Already in September 2006, in the draft process of the GPLv3, several high-profile developers of the Linux kernel, for instance Linus Torvalds,
Greg Kroah-Hartman
Greg Kroah-Hartman (GKH) is a major Linux kernel developer. he is the Linux kernel maintainer for the branch, the staging subsystem, USB, driver core, debugfs, kref, kobject, and the sysfs kernel subsystems, Userspace I/O (with Hans J. Koc ...
, and
Andrew Morton, warned on a splitting of the FOSS community: "the release of GPLv3 portends the
Balkanisation of the entire Open Source Universe upon which we rely."
Similarly
Benjamin Mako Hill
Benjamin Mako Hill is a free software activist, hacker, author, and professor. He is a contributor and free software developer as part of the Debian and Ubuntu projects as well as the co-author of three technical manuals on the subject, ''Debia ...
argued in 2006 on the GPLv3 draft, noting that a united, collaborating community is more important than a single license.
Following the GPLv3 release in 2007, some journalists
and
Toybox
Toybox is a free and open-source software implementation of over 200 Unix command line utilities such as '' ls'', '' cp'', and '' mv''. The Toybox project was started in 2006, and became a 0BSD licensed BusyBox alternative. Toybox is used for ...
developer Rob Landley
criticized that with the introduction of the GPLv3 the split between the open source and free software community became wider than ever. As the significantly extended GPLv3 is essentially incompatible with the GPLv2,
compatibility between both is only given under the optional "or later" clause of the GPL, which was not taken for instance by the Linux kernel.
Bruce Byfield noted that before the release of the GPLv3, the GPLv2 was a unifying element between the open-source and the free software community.
For the LGPLv3,
GNU TLS maintainer Nikos Mavrogiannopoulos similarly argued, "If we assume that its
he LGPLv3
He or HE may refer to:
Language
* He (pronoun), an English pronoun
* He (kana), the romanization of the Japanese kana へ
* He (letter), the fifth letter of many Semitic alphabets
* He (Cyrillic), a letter of the Cyrillic script called ''He'' in ...
primary goal is to be used by free software, then it blatantly fails that", after he re-licensed ''GNU TLS'' from LGPLv3 back to LGPLv2.1 due to license compatibility issues.
Lawrence Rosen, attorney and computer specialist, praised in 2007 how the community using the Apache license was now able to work together with the GPL community in a compatible manner, as the problems of GPLv2 compatibility with Apache licensed software were resolved with the GPLv3. He said, "I predict that one of the biggest success stories of GPLv3 will be the realization that the entire universe of free and open-source software can thus be combined into comprehensive open source solutions for customers worldwide."
In July 2013,
Flask developer
Armin Ronacher draws a less optimistic conclusion on the GPL compatibility in the FOSS ecosystem: "When the GPL is involved the complexities of licensing becomes a non fun version of a riddle", also noting that the conflict between Apache License 2.0 and GPLv2 still has impact on the ecosystem.
See also
*
Anti-copyright
Criticism of copyright, or anti-copyright sentiment, is a dissenting view of the current state of copyright law or copyright as a concept. Critics often discuss philosophical, economical, or social rationales of such laws and the laws' implem ...
*
Dual-licensing
*
European Union Public Licence
The European Union Public Licence (EUPL) is a free software licence that was written and approved by the European Commission. The licence is available in 23 official languages of the European Union. All linguistic versions have the same validity ...
(EUPL)
*
GPL font exception
The GPL font exception clause (or GPL+FE, for short) is an optional clause that can be added to the GNU General Public License (GNU GPL) permitting digital fonts shared with that license to be embedded within a digital document file without requ ...
*
GPL linking exception A GPL linking exception modifies the GNU General Public License (GPL) in a way that enables software projects which provide library code to be " linked to" the programs that use them, without applying the full terms of the GPL to the using program. ...
*
List of software licenses
This comparison only covers software licenses which have a linked Wikipedia article for details and which are approved by at least one of the following expert groups: the Free Software Foundation, the Open Source Initiative, the Debian Project and ...
*
Permissive and copyleft licenses
*
:Software using the GPL license
Notes
References
External links
GNU General Public License(version 3)
GNU General Public License v2.0This version is
deprecated
In several fields, especially computing, deprecation is the discouragement of use of some terminology, feature, design, or practice, typically because it has been superseded or is no longer considered efficient or safe, without completely removing ...
by the FSF but is still used by many software projects, including
Linux kernel
The Linux kernel is a free and open-source, monolithic, modular, multitasking, Unix-like operating system kernel. It was originally authored in 1991 by Linus Torvalds for his i386-based PC, and it was soon adopted as the kernel for the GNU ...
and GNU packages.
GNU General Public License v1.0This version is
deprecated
In several fields, especially computing, deprecation is the discouragement of use of some terminology, feature, design, or practice, typically because it has been superseded or is no longer considered efficient or safe, without completely removing ...
by the FSF.
The Emacs General Public License a February 1988 version, a direct predecessor of the GNU GPL
History of the GPLby Li-Cheng Tai, 4 July 2001
(Covers GPLv2 and v3)—from the
Software Freedom Law Center
The Software Freedom Law Center (SFLC) is an organization that provides '' pro bono'' legal representation and related services to not-for-profit developers of free software/ open source software. It was launched in February 2005 with Eben Mogle ...
A paper on enforcing the GPL edited by
Robert Chassell
Robert "Bob" Chassell was one of the founding directors of the Free Software Foundation (FSF).
Life
Bob was born on 22 August 1946, in Bennington, VT. He read economics at Peterhouse, Cambridge University.
In 1985, he became one of the ...
List of presentation transcripts about the GPL and free software licenses by the FSFE
The Labyrinth of Software FreedomBSD vs GPL and social aspects of free licensing debate, by
Nikolai Bezroukov
{{FOSS
Free and open-source software licenses
Copyleft software licenses
GNU Project
Copyleft