GNU General Public License
Encyclopedia
The GNU General Public License (GNU GPL or simply GPL) is the most widely used free software license, originally written by Richard Stallman
for the GNU Project
.
The GPL is the first copyleft
license for general use, which means that derived works can only be distributed under the same license terms. Under this philosophy, the GPL grants the recipients of a computer program
the rights of the free software definition
and uses copyleft to ensure the freedoms are preserved, even when the work is changed or added to. This is in distinction to permissive free software licenses, of which the BSD licenses
are the standard examples.
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 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 he or she uses a different name for the license, does not mention "GNU", and removes 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)
.
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.
As of August 2007, the GPL accounted for nearly 65% of the 43,442 free software
projects listed on Freshmeat
, and , about 68% of the projects listed on SourceForge.net
. Similarly, a 2001 survey of Red Hat Linux
7.1 found that 50% of the source code was licensed under the GPL and a 1997 survey of MetaLab
, then the largest free software archive, showed that the GPL accounted for about half of the software licensed therein. Prominent free software programs licensed under the GPL include the Linux kernel
and the GNU Compiler Collection
(GCC). Some other free software programs (MySQL
is a prominent example) are dual-licensed under multiple licenses, often with one of the licenses being the GPL.
It's believed that the copyleft
provided by the GPL was crucial to the success of GNU/Linux, giving the programmers who contributed to it 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.
The second version of the license, version 2, was released in 1991. Over the following 15 years, members of the FOSS (Free and Open Source Software) community
became concerned over problems in the GPLv2 license which allowed GPL-licensed software to be exploited in ways that were contrary to the intentions of the license. These problems included tivoization
(the inclusion of GPL-licensed software in hardware that will refuse to run modified versions of its software); incompatibility issues like with the Affero General Public License license; and patent deals between Microsoft
and distributors of GNU/Linux which was viewed as an attempt to use patents as a weapon against the GNU/Linux community.
Version 3 was developed to attempt to address these concerns. It was officially released on 29 June 2007.
s only – executable, but not readable or modifiable by humans. To prevent this, GPLv1 said that any vendor distributing binaries must also make the machine-readable source code available under the same licensing terms (sections 3a and 3b of the license).
The second problem was the distributors might add additional restrictions, either by adding restrictions to the license, or by combining the software with other software which had other restrictions on its distribution. If this was done, then the union of the two sets of restrictions would apply to the combined work, thus unacceptable restrictions could be added. To prevent this, GPLv1 said that modified versions, as a whole, had to be distributed under the terms in GPLv1 (sections 2b and 4 of the license). 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, but 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.
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 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 to reflect its place in the philosophy.
(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 FSF on 29 June 2007. GPLv3 was written by Richard Stallman, with legal counsel from Eben Moglen
and Software Freedom Law Center
.
According to Stallman, the most important changes are in relation to software patents
, free software license compatibility, the definition of "source code", and hardware restrictions
on software modification ("tivoization
"). Other changes relate to internationalization, how license violations are handled, and how additional permissions can be granted by the copyright holder.
Other notable changes include allowing authors to add certain conditions or requirements to their contributions. One of those new optional requirements, sometimes referred to as the Affero clause, is intended to fulfill a request regarding software as a service
; adding this clause produces the GNU Affero General Public License version 3.
It also adds a provision that 'strips' DRM of its legal value, so people can break the DRM on GPL software without breaking laws like the DMCA.
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. That portal runs purpose-written software called stet
. These comments were passed to four committees comprising approximately 130 people, including supporters and detractors of FSF's goals. Those committees researched the comments submitted by the public and passed their summaries to Stallman for a decision on what the license would do.
During the public consultation process, 962 comments were submitted for the first draft. By the end, 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 cross-licenses like the controversial Microsoft-Novell patent agreement and restricts the anti-tivoization clauses to a legal definition of a "User" or "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
compatibility, 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 aims to make future such deals ineffective. The license is also meant to cause Microsoft to extend the patent licenses it grants to Novell customers for the use of GPLv3 software to all users of that GPLv3 software; this is possible only if Microsoft is legally a "conveyor" of the GPLv3 software.
Others, notably some high-profile developers of the Linux kernel
, commented to the mass media and made public statements about their objections to parts of discussion drafts 1 and 2.
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 of the software under a non-disclosure agreement or contract. Distributors under the GPL also grant a license for any of their patents practiced by the software, to practice those patents in GPL software.
The fourth section for version 2 of the license and the seventh section of version 3 require that programs distributed as pre-compiled binaries are 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 you got when you 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.
This requirement is known as copyleft. It earns its legal power from the use of copyright
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
), 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), he or she can be sued
by the original author under copyright law.
Copyleft thus uses copyright law to accomplish the opposite of its usual purpose: instead of imposing restrictions, it grants rights to other people, in a way that ensures the rights cannot subsequently be taken away. It also ensures that unlimited redistribution rights are not granted, should any legal flaw be found in the copyleft statement.
Many distributors of GPL'ed programs bundle the source code with the executable
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
. For Internet distribution, this complies with the license.
Copyleft applies only when a person seeks to redistribute the program. One is allowed to make private modified versions, without any obligation to divulge the modifications as long as the modified software is not distributed to anyone else. Note that the 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
is not required to distribute its changes to the underlying software because its output is not a derivative.
, rather than a contract
. In some Common Law
jurisdictions, the legal distinction between a license and a contract is an important one: contracts are enforceable by contract law, whereas licenses are enforced under copyright law. However, this distinction is not useful in the many jurisdictions where there are no differences between contracts and licenses, such as Civil Law
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'd 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.
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.
ed, and the copyright is held by the Free Software Foundation. However, 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 takes place.
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
.
Other licenses created by the GNU project include the GNU Lesser General Public License
and the GNU Free Documentation License
.
, "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, if a proprietary program uses a GPL library, is the proprietary program in violation of the GPL?
This key dispute is whether or not 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
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:
(which holds the copyright of several notable GPL-licensed software products and of the license text itself) asserts that an executable which uses a dynamically linked library is indeed a derivative work. This does not however apply to separate programs communicating with one another.
Free Software Foundation
also created LGPL which is nearly identical to GPL, but with additional permission 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.
FSF differentiate on how the plug-in is being invoked. If the Plug-in is invoked through dynamic linkage and it performs function calls to the GPL program then it's most likely a derivative work.
agrees that dynamic linking can create derived works but disagrees over the circumstances.
A Novell
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 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.
, Lawrence Rosen
(IP law
specialist, and OSI
general counsel) argues that the method of linking is mostly irrelevant to the question about whether a piece of software is a derivative work
; more important is the question about whether the software was intended to interface with client software and/or libraries.
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 [in 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
or ATI
graphics card 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:
It should be noted that the GPLv3 has a different clause:
As a case study, some supposedly proprietary plugins and theme
s/skin
s for GPLv2 CMS
software such as Drupal
and WordPress
have come under fire, with both sides of the argument taken.
, which describes to what extent software is allowed 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 need to decide.
sued Progress NuSphere for copyright and trademark infringement in United States district court. NuSphere had allegedly violated MySQL's copyright by linking MySQL's GPL'ed code with NuSphere Gemini table without being in compliance 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
stated that they believed the GPL to have no legal validity, and that they intended to take up lawsuits over sections of code supposedly copied from SCO Unix into the Linux kernel
. This was a problematic stand for them, as they had distributed GNU/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. For more information, see SCO-Linux controversies
and SCO v. IBM
.
In April 2004, the netfilter/iptables
project was granted a preliminary injunction
against Sitecom Germany by Munich
District Court after Sitecom refused to desist from distributing Netfilter's GPL'ed software in violation of the terms of the GPL. On July 2004, the German court confirmed this injunction as a final ruling against Sitecom. The court's justification was that:
Harald Welte
was represented by ifrOSS
co-founder Till Jaeger. 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 effect copyright violation.
In May 2005, Daniel Wallace filed suit 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 anti-trust 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". 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
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
project prevailed in court litigation against D-Link
Germany GmbH regarding D-Link's copyright infringing use of parts of the Linux Kernel
in storage
devices they distributed. The judgment provided legal precedent that the GPL is valid, legally binding, and stands in German court.
In late 2007, the BusyBox
developers and the Software Freedom Law Center
embarked upon a program to gain GPL compliance from distributors of BusyBox in embedded system
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, readline, Parted, Wget
, GNU Compiler Collection
, binutils, and GNU Debugger
software packages, which Linksys distributes in the GNU/Linux firmware of its popular WRT54G wireless routers, 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 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 lots of talk but little action by Linksys (a process described on the FSF blog as a "five-years-running game of Whack-a-Mole") the FSF finally 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.
FSF maintains a list of GPL-compatible
free software licenses with many of the most common free software licenses, such as the original MIT/X license
, the BSD license (in its current 3-clause form) and the Artistic License
2.0.
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
' ZFS
cannot be included in the GPL-licensed Linux kernel, because it is licensed under the GPL-incompatible CDDL. Furthermore, ZFS is protected by patents, so distributing an independently developed GPL-ed implementation would still require Oracle's permission.
license to companies wishing to combine the package with proprietary code, using dynamic linking or not. Examples of such companies include MySQL AB
, Digia PLC (Qt framework, before 2011 from Nokia
), Red Hat
(Cygwin
) and Riverbank Computing (PyQt
). Other companies, like the Mozilla Foundation
(products include Mozilla Application Suite
, Mozilla Thunderbird
and Mozilla Firefox
), use multi-licensing to distribute versions under the GPL and some other open-source licenses.
shows that GPL is the license used in about 60% of all software packages released under a free software / open source license.
(GFDL) instead, which it created for this purpose. Nevertheless, the Debian
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). Also, the FLOSS Manuals
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 fonts, 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 like the US and Canada where copyright law is inapplicable to the appearance of fonts, though program code inside a font file may still be covered which can complicate font embedding (since the document could be considered 'linked' to the font). FSF provides an exception for cases where this is not desired.
CEO Steve Ballmer
referred to Linux
as "a cancer that attaches itself in an intellectual property sense to everything it touches". Microsoft has released Microsoft Windows Services for UNIX
which contains GPL-licensed code. In response to Microsoft's attacks on the GPL, several prominent Free Software developers and advocates released a joint statement supporting the license. 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.
by Craig Mundie, Microsoft Senior Vice President because the GPL only allows conveyance of whole programs, which means that programmers are not allowed to convey programs that link
to libraries having GPL-incompatible licenses. The so-called "viral" effect of this is that under such circumstances disparately licensed software cannot be combined unless one of the licenses is changed. Although theoretically either license could be changed, in the "viral" scenario the GPL cannot be practically changed (because the software may have so many contributors, some of whom will likely refuse), whereas the license of the other software can be practically changed.
In the views of Richard Stallman, the metaphor of a "virus" is wrong and an extremely unfriendly thing to say. Software under the GPL never "attacks" and "infects" other software. Rather, software under the GPL is like a spider plant
: If one takes a piece of it and puts it somewhere else, it grows there too.
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". Poul-Henning Kamp
, author of a beerware
license, considers GPL "a joke" because of vague statements he perceives exist in the license.
Richard Stallman
Richard Matthew Stallman , often shortened to rms,"'Richard Stallman' is just my mundane name; you can call me 'rms'"|last= Stallman|first= Richard|date= N.D.|work=Richard Stallman's homepage...
for the GNU Project
GNU Project
The GNU Project is a free software, mass collaboration project, announced on September 27, 1983, by Richard Stallman at MIT. It initiated GNU operating system development in January, 1984...
.
The GPL is the first copyleft
Copyleft
Copyleft is a play on the word copyright to describe the practice of using copyright law to offer the right to distribute copies and modified versions of a work and requiring that the same rights be preserved in modified versions of the work...
license for general use, which means that derived works can only be distributed under the same license terms. Under this philosophy, the GPL grants the recipients of a computer program
Computer program
A computer program is a sequence of instructions written to perform a specified task with a computer. A computer requires programs to function, typically executing the program's instructions in a central processor. The program has an executable form that the computer can use directly to execute...
the rights of the free software definition
The Free Software Definition
The Free Software Definition, written by Richard Stallman and published by Free Software Foundation , defines free software, as a matter of liberty, not price. The term "free" is used in the sense of "free speech," not of "free beer." The earliest known publication of the definition was in the...
and uses copyleft to ensure the freedoms are preserved, even when the work is changed or added to. This is in distinction to permissive free software licenses, of which the BSD licenses
BSD licenses
BSD licenses are a family of permissive free software licenses. The original license was used for the Berkeley Software Distribution , a Unix-like operating system after which it is named....
are the standard examples.
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 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 he or she uses a different name for the license, does not mention "GNU", and removes 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)
Free Software Foundation
The Free Software Foundation is a non-profit corporation founded by Richard Stallman on 4 October 1985 to support the free software movement, a copyleft-based movement which aims to promote the universal freedom to create, distribute and modify computer software...
.
History
The GPL was written by Richard Stallman 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, the GNU DebuggerGNU Debugger
The GNU Debugger, usually called just GDB and named gdb as an executable file, is the standard debugger for the GNU software system. It 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, Java...
and the GNU C Compiler
GNU Compiler Collection
The GNU Compiler Collection is a compiler system produced by the GNU Project supporting various programming languages. GCC is a key component of the GNU toolchain...
. 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.
As of August 2007, the GPL accounted for nearly 65% of the 43,442 free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...
projects listed on Freshmeat
Freshmeat
Freecode, formerly Freshmeat, is a website owned by Geeknet that allows computer users to keep track of the latest software releases and updates as well as write/read reviews and articles, send or receive comments to or from the author, and many other features...
, and , about 68% of the projects listed on SourceForge.net
SourceForge.net
SourceForge is a web-based source code repository. It acts as a centralized location for software developers to control and manage open source software development. The website runs a version of SourceForge Enterprise Edition, forked from the last open-source version available...
. Similarly, a 2001 survey of Red Hat Linux
Red Hat Linux
Red Hat Linux, assembled by the company Red Hat, was a popular Linux based operating system until its discontinuation in 2004.Red Hat Linux 1.0 was released on November 3, 1994...
7.1 found that 50% of the source code was licensed under the GPL and a 1997 survey of MetaLab
Ibiblio
ibiblio is a "collection of collections," and hosts a diverse range of publicly available information and open source software, including software, music, literature, art, history, science, politics, and cultural studies. As an "Internet librarianship," ibiblio is a digital library and archive...
, then the largest free software archive, showed that the GPL accounted for about half of the software licensed therein. Prominent free software programs licensed under the GPL include the Linux kernel
Linux kernel
The Linux kernel is an operating system kernel used by the Linux family of Unix-like operating systems. It is one of the most prominent examples of free and open source software....
and the GNU Compiler Collection
GNU Compiler Collection
The GNU Compiler Collection is a compiler system produced by the GNU Project supporting various programming languages. GCC is a key component of the GNU toolchain...
(GCC). Some other free software programs (MySQL
MySQL
MySQL officially, but also commonly "My Sequel") is a relational database management system that runs as a server providing multi-user access to a number of databases. It is named after developer Michael Widenius' daughter, My...
is a prominent example) are dual-licensed under multiple licenses, often with one of the licenses being the GPL.
It's believed that the copyleft
Copyleft
Copyleft is a play on the word copyright to describe the practice of using copyright law to offer the right to distribute copies and modified versions of a work and requiring that the same rights be preserved in modified versions of the work...
provided by the GPL was crucial to the success of GNU/Linux, giving the programmers who contributed to it 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.
The second version of the license, version 2, was released in 1991. Over the following 15 years, members of the FOSS (Free and Open Source Software) community
Free software community
The free-software community is an informal term that refers to the users and developers of free software as well as supporters of the free-software movement. The movement is sometimes referred to as the open-source software community or a subset thereof...
became concerned over problems in the GPLv2 license which allowed GPL-licensed software to be exploited in ways that were contrary to the intentions of the license. These problems included tivoization
Tivoization
Tivoization is a coined term to describe the creation of a system that incorporates software under the terms of a copyleft software license , but uses hardware restrictions to prevent users from running modified versions of the software on that hardware...
(the inclusion of GPL-licensed software in hardware that will refuse to run modified versions of its software); incompatibility issues like with the Affero General Public License license; and patent deals between Microsoft
Microsoft
Microsoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...
and distributors of GNU/Linux which was viewed as an attempt to use patents as a weapon against the GNU/Linux community.
Version 3 was developed to attempt to address these concerns. It was officially released on 29 June 2007.
Version 1
Version 1 of the GNU GPL, released in 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 fileBinary file
A binary file is a computer file which may contain any type of data, encoded in binary form for computer storage and processing purposes; for example, computer document files containing formatted text...
s only – executable, but not readable or modifiable by humans. To prevent this, GPLv1 said that any vendor distributing binaries must also make the machine-readable source code available under the same licensing terms (sections 3a and 3b of the license).
The second problem was the distributors might add additional restrictions, either by adding restrictions to the license, or by combining the software with other software which had other restrictions on its distribution. If this was done, then the union of the two sets of restrictions would apply to the combined work, thus unacceptable restrictions could be added. To prevent this, GPLv1 said that modified versions, as a whole, had to be distributed under the terms in GPLv1 (sections 2b and 4 of the license). 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, but 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. This section says that if somebody has restrictions imposed that prevent him or her from distributing GPL-covered software in a way that respects other users' freedom (for example, if a legal ruling states that he or she can only distribute the software in binary form), he or she cannot distribute it at all. The hope is, that this will make it less tempting for companies to use patent threats to require a fee from the free software developers.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 Library General Public License
GNU Lesser General Public License
The GNU Lesser General Public License or LGPL is a free software license published by the Free Software Foundation . It was designed as a compromise between the strong-copyleft GNU General Public License or GPL and permissive licenses such as the BSD licenses and the MIT 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 to reflect its place in the philosophy.
Version 3
In late 2005, the Free Software FoundationFree Software Foundation
The Free Software Foundation is a non-profit corporation founded by Richard Stallman on 4 October 1985 to support the free software movement, a copyleft-based movement which aims to promote the universal freedom to create, distribute and modify computer software...
(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 FSF on 29 June 2007. GPLv3 was written by Richard Stallman, with legal counsel from Eben Moglen
Eben Moglen
Eben Moglen is a professor of law and legal history at Columbia University, and is the founder, Director-Counsel and Chairman of Software Freedom Law Center, whose client list includes numerous pro bono clients, such as the Free Software Foundation....
and Software Freedom Law Center
Software Freedom Law Center
The Software Freedom Law Center 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 Moglen as Chairman. Initial funding of US$4 million was pledged by...
.
According to Stallman, the most important changes are in relation to software patents
Software patents and free software
Opposition to software patents is widespread in the free software community. In response, various mechanisms have been tried to defuse the perceived problem.-Positions from the community:...
, free software license compatibility, the definition of "source code", and hardware restrictions
Hardware restrictions
Hardware restrictions refers to restrictions in any device that places technical restrictions on what content can run/play on said device or what users can do with certain content. Hardware restrictions can be used with software DRM and digital signatures...
on software modification ("tivoization
Tivoization
Tivoization is a coined term to describe the creation of a system that incorporates software under the terms of a copyleft software license , but uses hardware restrictions to prevent users from running modified versions of the software on that hardware...
"). Other changes relate to internationalization, how license violations are handled, and how additional permissions can be granted by the copyright holder.
Other notable changes include allowing authors to add certain conditions or requirements to their contributions. One of those new optional requirements, sometimes referred to as the Affero clause, is intended to fulfill a request regarding software as a service
Software as a Service
Software as a service , sometimes referred to as "on-demand software," is a software delivery model in which software and its associated data are hosted centrally and are typically accessed by users using a thin client, normally using a web browser over the Internet.SaaS has become a common...
; adding this clause produces the GNU Affero General Public License version 3.
It also adds a provision that 'strips' DRM of its legal value, so people can break the DRM on GPL software without breaking laws like the DMCA.
The public consultation process was coordinated by the Free Software Foundation with assistance from Software Freedom Law Center, Free Software Foundation Europe
Free Software Foundation Europe
The Free Software Foundation Europe was founded in 2001 as an official European sister organization of the U.S.-based Free Software Foundation to take care of all aspects of free software in Europe. FSF and FSFE are financially and legally separate entities.FSFE believes that access to and...
, and other free software groups. Comments were collected from the public via the gplv3.fsf.org web portal. That portal runs purpose-written software called stet
Stet (software)
stet is a free software package for gathering comments about a text document via a webpage.-History:The initial version was developed from late 2005 until mid-2006 by the Software Freedom Law Center as a service to its client, the Free Software Foundation...
. These comments were passed to four committees comprising approximately 130 people, including supporters and detractors of FSF's goals. Those committees researched the comments submitted by the public and passed their summaries to Stallman for a decision on what the license would do.
During the public consultation process, 962 comments were submitted for the first draft. By the end, 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 cross-licenses like the controversial Microsoft-Novell patent agreement and restricts the anti-tivoization clauses to a legal definition of a "User" or "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
Apache License
The Apache License is a copyfree free software license authored by the Apache Software Foundation . The Apache License requires preservation of the copyright notice and disclaimer....
compatibility, 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 aims to make future such deals ineffective. The license is also meant to cause Microsoft to extend the patent licenses it grants to Novell customers for the use of GPLv3 software to all users of that GPLv3 software; this is possible only if Microsoft is legally a "conveyor" of the GPLv3 software.
Others, notably some high-profile developers of the Linux kernel
Linux kernel
The Linux kernel is an operating system kernel used by the Linux family of Unix-like operating systems. It is one of the most prominent examples of free and open source software....
, commented to the mass media and made public statements about their objections to parts of discussion drafts 1 and 2.
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 of the software under a non-disclosure agreement or contract. Distributors under the GPL also grant a license for any of their patents practiced by the software, to practice those patents in GPL software.
The fourth section for version 2 of the license and the seventh section of version 3 require that programs distributed as pre-compiled binaries are 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 you got when you 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.
Copyleft
The distribution rights granted by the GPL for modified versions of the work are not unconditional. When someone distributes a GPL'd work plus his/her 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
Copyright
Copyright is a legal concept, enacted by most governments, giving the creator of an original work exclusive rights to it, usually for a limited time...
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
Fair use is a limitation and exception to the exclusive right granted by copyright law to the author of a creative work. In United States copyright law, fair use is a doctrine that permits limited use of copyrighted material without acquiring permission from the rights holders...
), 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), he or she can be sued
Lawsuit
A lawsuit or "suit in law" is a civil action brought in a court of law in which a plaintiff, a party who claims to have incurred loss as a result of a defendant's actions, demands a legal or equitable remedy. The defendant is required to respond to the plaintiff's complaint...
by the original author under copyright law.
Copyleft thus uses copyright law to accomplish the opposite of its usual purpose: instead of imposing restrictions, it grants rights to other people, in a way that ensures the rights cannot subsequently be taken away. It also ensures that unlimited redistribution rights are not granted, should any legal flaw be found in the copyleft statement.
Many distributors of GPL'ed programs bundle the source code with the executable
Executable
In computing, an executable file causes a computer "to perform indicated tasks according to encoded instructions," as opposed to a data file that must be parsed by a program to be meaningful. These instructions are traditionally machine code instructions for a physical CPU...
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
Internet
The Internet is a global system of interconnected computer networks that use the standard Internet protocol suite to serve billions of users worldwide...
, and the source code is made available over FTP
File Transfer Protocol
File Transfer Protocol is a standard network protocol used to transfer files from one host to another host over a TCP-based network, such as the Internet. FTP is built on a client-server architecture and utilizes separate control and data connections between the client and server...
or HTTP
Hypertext Transfer Protocol
The Hypertext Transfer Protocol is a networking protocol 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. One is allowed to make private modified versions, without any obligation to divulge the modifications as long as the modified software is not distributed to anyone else. Note that the 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
Content management system
A content management system is a system providing a collection of procedures used to manage work flow in a collaborative environment. These procedures can be manual or computer-based...
is not required to distribute its changes to the underlying software because its output is not a derivative.
Licensing and contractual issues
The GPL was designed as a licenseLicense
The verb license or grant licence means to give permission. The noun license or licence refers to that permission as well as to the document recording that permission.A license may be granted by a party to another party as an element of an agreement...
, rather than a contract
Contract
A contract is an agreement entered into by two parties or more with the intention of creating a legal obligation, which may have elements in writing. Contracts can be made orally. The remedy for breach of contract can be "damages" or compensation of money. In equity, the remedy can be specific...
. In some Common Law
Common law
Common law is law developed by judges through decisions of courts and similar tribunals rather than through legislative statutes or executive branch action...
jurisdictions, the legal distinction between a license and a contract is an important one: contracts are enforceable by contract law, whereas licenses are enforced under copyright law. 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 (legal system)
Civil law is a legal system inspired by Roman law and whose primary feature is that laws are codified into collections, as compared to common law systems that gives great precedential weight to common law on the principle that it is unfair to treat similar facts differently on different...
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'd 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.
Allison Randal
Allison Randal
Allison Randal is a linguist, software developer and author. She is the former chief architect of the Parrot virtual machine, a member of the board of directors for The Perl Foundation, a member of the board of directors for the Python Software Foundation...
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.
Copyright holders
The text of the GPL is itself copyrightCopyright
Copyright is a legal concept, enacted by most governments, giving the creator of an original work exclusive rights to it, usually for a limited time...
ed, and the copyright is held by the Free Software Foundation. However, 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 takes place.
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
License proliferation refers to the problems created when additional software licenses are written for software packages. License proliferation affects the free software community. Often when a software developer would like to merge portions of different software programs they are unable to do so...
.
Other licenses created by the GNU project include the GNU Lesser General Public License
GNU Lesser General Public License
The GNU Lesser General Public License or LGPL is a free software license published by the Free Software Foundation . It was designed as a compromise between the strong-copyleft GNU General Public License or GPL and permissive licenses such as the BSD licenses and the MIT License...
and the GNU Free Documentation License
GNU Free Documentation License
The GNU Free Documentation License is a copyleft license for free documentation, designed by the Free Software Foundation for the GNU Project. It is similar to the GNU General Public License, giving readers the rights to copy, redistribute, and modify a work and requires all copies and...
.
Libraries
According to the FSFFree Software Foundation
The Free Software Foundation is a non-profit corporation founded by Richard Stallman on 4 October 1985 to support the free software movement, a copyleft-based movement which aims to promote the universal freedom to create, distribute and modify computer software...
, "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, if a proprietary program uses a GPL library, is the proprietary program in violation of the GPL?
This key dispute is whether or not 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
Derivative work
In United States copyright law, a derivative work is an expressive creation that includes major, copyright-protected elements of an original, previously created first work .-Definition:...
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 FoundationFree Software Foundation
The Free Software Foundation is a non-profit corporation founded by Richard Stallman on 4 October 1985 to support the free software movement, a copyleft-based movement which aims to promote the universal freedom to create, distribute and modify computer software...
(which holds the copyright of several notable GPL-licensed software products and of the license text itself) asserts that an executable which uses a dynamically linked library is indeed a derivative work. This does not however apply to separate programs communicating with one another.
Free Software Foundation
Free Software Foundation
The Free Software Foundation is a non-profit corporation founded by Richard Stallman on 4 October 1985 to support the free software movement, a copyleft-based movement which aims to promote the universal freedom to create, distribute and modify computer software...
also created LGPL which is nearly identical to GPL, but with additional permission to allow linking for the purposes of "using the library".
Richard Stallman
Richard Stallman
Richard Matthew Stallman , often shortened to rms,"'Richard Stallman' is just my mundane name; you can call me 'rms'"|last= Stallman|first= Richard|date= N.D.|work=Richard Stallman's homepage...
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.
Plug-ins
FSF differentiate on how the plug-in is being invoked. If the Plug-in is invoked through dynamic linkage and it performs function calls to the GPL program then it's most likely a derivative work.
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). Linux author Linus TorvaldsLinus Torvalds
Linus Benedict Torvalds is a Finnish software engineer and hacker, best known for having initiated the development of the open source Linux kernel. He later became the chief architect of the Linux kernel, and now acts as the project's coordinator...
agrees that dynamic linking can create derived works but disagrees over the circumstances.
A Novell
Novell
Novell, Inc. is a multinational software and services company. It is a wholly owned subsidiary of The Attachmate Group. It specializes in network operating systems, such as Novell NetWare; systems management solutions, such as Novell ZENworks; and collaboration solutions, such as Novell Groupwise...
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 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 JournalLinux Journal
Linux Journal is a monthly technology magazine published by Belltown Media, Inc. of Houston, Texas. The magazine focuses specifically on Linux, allowing the content to be a highly specialized source of information for open source enthusiasts.-History:...
, Lawrence Rosen
Lawrence Rosen
Lawrence Rosen is an attorney and computer specialist. He is a founding partner of Rosenlaw & Einschlag, a Californian technology law firm, specializing in intellectual property protection, licensing and business transactions for technology companies...
(IP law
Intellectual property
Intellectual property is a term referring to a number of distinct types of creations of the mind for which a set of exclusive rights are recognized—and the corresponding fields of law...
specialist, and OSI
Open Source Initiative
The Open Source Initiative is an organization dedicated to promoting open source software.The organization was founded in February 1998, by Bruce Perens and Eric S. Raymond, prompted by Netscape Communications Corporation publishing the source code for its flagship Netscape Communicator product...
general counsel) argues that the method of linking is mostly irrelevant to the question about whether a piece of software is a derivative work
Derivative work
In United States copyright law, a derivative work is an expressive creation that includes major, copyright-protected elements of an original, previously created first work .-Definition:...
; more important is the question about whether the software was intended to interface with client software and/or libraries.
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 [in 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
Module
Module or modular may refer to the concept of modularity. It may also refer to:-Computing and engineering:* Modular design, the engineering discipline of designing complex devices using separately designed sub-components...
(such as the NVidia
NVIDIA
Nvidia is an American global technology company based in Santa Clara, California. Nvidia is best known for its graphics processors . Nvidia and chief rival AMD Graphics Techonologies have dominated the high performance GPU market, pushing other manufacturers to smaller, niche roles...
or ATI
Ati
As a word, Ati may refer to:* Ati, a town in Chad* Ati, a Negrito ethnic group in the Philippines* Ati-Atihan Festival, an annual celebration held in the Philippines* Ati, a queen of the fabled Land of Punt in Africa...
graphics card 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:
It should be noted that the GPLv3 has a different clause:
As a case study, some supposedly proprietary plugins and theme
Theme (computing)
In computing, a theme is a preset package containing graphical appearance details, used to customize the look and feel of an operating system, widget set or window manager....
s/skin
Skin (computing)
In computing, a skin is a custom graphical appearance achieved by the use of a graphical user interface that can be applied to specific software and websites to suit the purpose, topic, or tastes of different users....
s for GPLv2 CMS
Content management system
A content management system is a system providing a collection of procedures used to manage work flow in a collaborative environment. These procedures can be manual or computer-based...
software such as Drupal
Drupal
Drupal is a free and open-source content management system and content management framework written in PHP and distributed under the GNU General Public License. It is used as a back-end system for at least 1.5% of all websites worldwide ranging from personal blogs to corporate, political, and...
and WordPress
WordPress
WordPress is a free and open source blogging tool and publishing platform powered by PHP and MySQL. It is often customized into a content management system . It has many features including a plug-in architecture and a template system. WordPress is used by over 14.7% of Alexa Internet's "top 1...
have come under fire, with both sides of the argument taken.
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 is not restricted. The following is a quote from the gnu.org GPL FAQFAQ
Frequently asked questions are listed questions and answers, all supposed to be commonly asked in some context, and pertaining to a particular topic. "FAQ" is usually pronounced as an initialism rather than an acronym, but an acronym form does exist. Since the acronym FAQ originated in textual...
, which describes to what extent software is allowed 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 need to decide.
The GPL in court
In 2002, MySQL ABMySQL AB
MySQL AB was a software company. MySQL AB is the creator of MySQL, a relational database management system, as well as related products such as MySQL Cluster...
sued Progress NuSphere for copyright and trademark infringement in United States district court. NuSphere had allegedly violated MySQL's copyright by linking MySQL's GPL'ed code with NuSphere Gemini table without being in compliance 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
SCO Group
TSG Group, Inc. is a software company formerly called The SCO Group, Caldera Systems, and Caldera International. After acquiring the Santa Cruz Operation's Server Software and Services divisions, as well as UnixWare and OpenServer technologies, the company changed its focus to UNIX...
stated that they believed the GPL to have no legal validity, and that they intended to take up lawsuits over sections of code supposedly copied from SCO Unix into the Linux kernel
Linux kernel
The Linux kernel is an operating system kernel used by the Linux family of Unix-like operating systems. It is one of the most prominent examples of free and open source software....
. This was a problematic stand for them, as they had distributed GNU/Linux and other GPL'ed code in their Caldera OpenLinux
Caldera OpenLinux
Caldera OpenLinux is a defunct Linux distribution that was created by the former Caldera Systems corporation. It was the early "business-oriented distribution" and foreshadowed the direction of developments that came to most other distributions and the Linux community generally.-Novell and...
distribution, and there is little evidence that they had any legal right to do so except under the terms of the GPL. For more information, see SCO-Linux controversies
SCO-Linux controversies
The SCO-Linux controversies are a series of legal and public disputes between the software company SCO Group and various Linux vendors and users. The SCO Group alleges that its license agreements with IBM means that source code that IBM wrote and donated to be incorporated into Linux was added in...
and SCO v. IBM
SCO v. IBM
SCO v. IBM is a civil lawsuit in the United States District Court of Utah. The SCO Group asserted that there are legal uncertainties regarding the use of the Linux operating system due to alleged violations of IBM's Unix licenses in the development of Linux code at IBM.-Summary:On March 6, 2003,...
.
In April 2004, the netfilter/iptables
Netfilter/iptables
Netfilter is a framework that provides hook handling within the Linux kernel for intercepting and manipulating network packets. Put more concretely, Netfilter is invoked, for example, by the packet reception and send routines from/to network interfaces...
project was granted a preliminary injunction
Injunction
An injunction is an equitable remedy in the form of a court order that requires a party to do or refrain from doing certain acts. A party that fails to comply with an injunction faces criminal or civil penalties and may have to pay damages or accept sanctions...
against Sitecom Germany by Munich
Munich
Munich The city's motto is "" . Before 2006, it was "Weltstadt mit Herz" . Its native name, , is derived from the Old High German Munichen, meaning "by the monks' place". The city's name derives from the monks of the Benedictine order who founded the city; hence the monk depicted on the city's coat...
District Court after Sitecom refused to desist from distributing Netfilter's GPL'ed software in violation of the terms of the GPL. On 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 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.
Harald Welte
Harald Welte
Harald Welte is a programmer resident in Berlin, Germany. Within the free software community, Welte is well known as a hacker of the Linux kernel and for his activities in enforcing the GNU General Public License , the license that governs the use of much of free software.Welte is also involved in...
was represented by ifrOSS
IfrOSS
Institut für Rechtsfragen der Freien und Open Source Software, abbreviated to ifrOSS, is a German organisation that provides legal services for free software....
co-founder Till Jaeger. This exactly mirrored the predictions given previously by the FSF's Eben Moglen
Eben Moglen
Eben Moglen is a professor of law and legal history at Columbia University, and is the founder, Director-Counsel and Chairman of Software Freedom Law Center, whose client list includes numerous pro bono clients, such as the Free Software Foundation....
. This ruling was important because it was the first time that a court had confirmed that violating terms of the GPL could effect copyright violation.
In May 2005, Daniel Wallace filed suit 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 anti-trust 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". 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 secret
A trade secret is a formula, practice, process, design, instrument, pattern, or compilation of information which is not generally known or reasonably ascertainable, by which a business can obtain an economic advantage over competitors or customers...
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
The 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:...
project prevailed in court litigation against D-Link
D-Link
D-Link Corporation was founded in June 1986 in Taipei as Datex Systems Inc. It began as a network adapter vendor and has gone on to become a designer, developer, and manufacturer of networking solutions for both the consumer and business markets.In 2007, it was the leading networking company in...
Germany GmbH regarding D-Link's copyright infringing use of parts of the Linux Kernel
Linux kernel
The Linux kernel is an operating system kernel used by the Linux family of Unix-like operating systems. It is one of the most prominent examples of free and open source software....
in storage
Network-attached storage
Network-attached storage is file-level computer data storage connected to a computer network providing data access to heterogeneous clients. NAS not only operates as a file server, but is specialized for this task either by its hardware, software, or configuration of those elements...
devices they distributed. The judgment provided legal precedent that the GPL is valid, legally binding, and stands in German court.
In late 2007, the BusyBox
BusyBox
BusyBox provides several stripped-down Unix tools in a single executable. It runs in a variety of POSIX environments such as Linux, Android, FreeBSD and others, such as proprietary kernels, although many of the tools it provides are designed to work with interfaces provided by the Linux kernel. It...
developers and the Software Freedom Law Center
Software Freedom Law Center
The Software Freedom Law Center 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 Moglen as Chairman. Initial funding of US$4 million was pledged by...
embarked upon a program to gain GPL compliance from distributors of BusyBox in embedded system
Embedded system
An embedded system is a computer system designed for specific control functions within a larger system. often with real-time computing constraints. It is embedded as part of a complete device often including hardware and mechanical parts. By contrast, a general-purpose computer, such as a personal...
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.
Free Software Foundation v. Cisco Systems
FSF v. Cisco was a lawsuit initiated by the Free Software Foundation against Cisco Systems on December 11, 2008 in the United States District Court for the Southern District of New York....
for copyright violations by its Linksys division, of the FSF's GPL-licensed coreutils, readline, Parted, Wget
Wget
GNU Wget is a computer program that retrieves content from web servers, and is part of the GNU Project. Its name is derived from World Wide Web and get...
, GNU Compiler Collection
GNU Compiler Collection
The GNU Compiler Collection is a compiler system produced by the GNU Project supporting various programming languages. GCC is a key component of the GNU toolchain...
, binutils, and GNU Debugger
GNU Debugger
The GNU Debugger, usually called just GDB and named gdb as an executable file, is the standard debugger for the GNU software system. It 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, Java...
software packages, which Linksys distributes in the GNU/Linux firmware of its popular WRT54G wireless routers, 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 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 lots of talk but little action by Linksys (a process described on the FSF blog as a "five-years-running game of Whack-a-Mole") the FSF finally 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.
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 you want to combine code licensed under different versions of GPL, then this is allowed if the code with the older GPL version includes an "any later version" statement.
- Code licensed under LGPL can be linked with any other code no matter what license that code has. Code licensed under LGPLv2 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
License compatibility
License compatibility refers to the problem with licenses applied to works subject to copyright, particularly licenses of software packages, which can contain contradictory requirements, rendering it impossible to combine source code from such packages or content from such works in order to create...
free software licenses with many of the most common free software licenses, such as the original MIT/X license
MIT License
The MIT License is a free software license originating at the Massachusetts Institute of Technology . It is a permissive license, meaning that it permits reuse within proprietary software provided all copies of the licensed software include a copy of the MIT License terms...
, the BSD license (in its current 3-clause form) and the Artistic License
Artistic License
The Artistic License refers most commonly to the original Artistic License , a software license used for certain free and open source software packages, most notably the standard Perl implementation and most CPAN modules, which are dual-licensed under the Artistic License and the GNU General Public...
2.0.
David A. Wheeler
David A. Wheeler
David A. Wheeler is a computer scientist. He is best known for his work on Open source software/Free-libre software and Computer security.-Open Source Software:...
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
Sun Microsystems, Inc. was a company that sold :computers, computer components, :computer software, and :information technology services. Sun was founded on February 24, 1982...
' ZFS
ZFS
In computing, ZFS is a combined file system and logical volume manager designed by Sun Microsystems. The features of ZFS include data integrity verification against data corruption modes , support for high storage capacities, integration of the concepts of filesystem and volume management,...
cannot be included in the GPL-licensed Linux kernel, because it is licensed under the GPL-incompatible CDDL. Furthermore, ZFS is protected by patents, so distributing an independently developed GPL-ed implementation would still require Oracle's permission.
Multi-licensing
A number of businesses use multi-licensing to distribute a GPL version and sell a proprietaryProprietary software
Proprietary software is computer software licensed under exclusive legal right of the copyright holder. The licensee is given the right to use the software under certain conditions, while restricted from other uses, such as modification, further distribution, or reverse engineering.Complementary...
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
MySQL AB was a software company. MySQL AB is the creator of MySQL, a relational database management system, as well as related products such as MySQL Cluster...
, Digia PLC (Qt framework, before 2011 from Nokia
Nokia
Nokia Corporation is a Finnish multinational communications corporation that is headquartered in Keilaniemi, Espoo, a city neighbouring Finland's capital Helsinki...
), Red Hat
Red Hat
Red Hat, Inc. is an S&P 500 company in the free and open source software sector, and a major Linux distribution vendor. Founded in 1993, Red Hat has its corporate headquarters in Raleigh, North Carolina with satellite offices worldwide....
(Cygwin
Cygwin
Cygwin is a Unix-like environment and command-line interface for Microsoft Windows. Cygwin provides native integration of Windows-based applications, data, and other system resources with applications, software tools, and data of the Unix-like environment...
) and Riverbank Computing (PyQt
PyQt
PyQt is a Python binding of the cross-platform GUI toolkit Qt. It is one of the alternatives for GUI programming in Python to Tkinter, which is bundled with Python. Other popular alternatives are PySide, PyGTK, and wxPython. Like Qt, PyQt is free software. PyQt is implemented as a Python...
). Other companies, like the Mozilla Foundation
Mozilla Foundation
The Mozilla Foundation is a non-profit organization that exists to support and provide leadership for the open source Mozilla project. The organization sets the policies that govern development, operates key infrastructure and controls trademarks and other intellectual property...
(products include Mozilla Application Suite
Mozilla Application Suite
The Mozilla Application Suite is a cross-platform integrated Internet suite. Its development was initiated by Netscape Communications Corporation, before their acquisition by AOL. It is based on the source code of Netscape Communicator...
, Mozilla Thunderbird
Mozilla Thunderbird
Mozilla Thunderbird is a free, open source, cross-platform e-mail and news client developed by the Mozilla Foundation. The project strategy is modeled after Mozilla Firefox, a project aimed at creating a web browser...
and Mozilla Firefox
Mozilla Firefox
Mozilla Firefox is a free and open source web browser descended from the Mozilla Application Suite and managed by Mozilla Corporation. , Firefox is the second most widely used browser, with approximately 25% of worldwide usage share of web browsers...
), use multi-licensing to distribute versions under the GPL and some other open-source licenses.
Adoption
The Open Source License Resource Center maintained by Black Duck SoftwareBlack Duck Software
Black Duck Software is a Massachusetts US private company. Black Duck Software pioneered the automation of mixed-origin software component reuse management...
shows that GPL is the license used in about 60% of all software packages released under a free software / open source license.
Use for 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 to use the GNU Free Documentation LicenseGNU Free Documentation License
The GNU Free Documentation License is a copyleft license for free documentation, designed by the Free Software Foundation for the GNU Project. It is similar to the GNU General Public License, giving readers the rights to copy, redistribute, and modify a work and requires all copies and...
(GFDL) instead, which it created for this purpose. Nevertheless, the Debian
Debian
Debian is a computer operating system composed of software packages released as free and open source software primarily under the GNU General Public License along with other free software licenses. Debian GNU/Linux, which includes the GNU OS tools and Linux kernel, is a popular and influential...
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). Also, the FLOSS Manuals
Floss manuals
The FLOSS Manuals is a non-profit foundation founded in 2006 and based in the Netherlands. The foundation is focused on the creation of quality documentation about how to use free software....
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 fonts, 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 like the US and Canada where copyright law is inapplicable to the appearance of fonts, though program code inside a font file may still be covered which can complicate font embedding (since the document could be considered 'linked' to the font). FSF provides an exception for cases where this is not desired.
Microsoft
In 2001, MicrosoftMicrosoft
Microsoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...
CEO Steve Ballmer
Steve Ballmer
Steven Anthony "Steve" Ballmer is an American business magnate. He is the chief executive officer of Microsoft, having held that post since January 2000. , his personal wealth is estimated at US$13.9 billion, ranking number 19 on the Forbes 400.-Early life:Ballmer was born in Detroit, Michigan to...
referred to Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...
as "a cancer that attaches itself in an intellectual property sense to everything it touches". Microsoft has released Microsoft Windows Services for UNIX
Microsoft Windows Services for UNIX
Windows Services for UNIX or Subsystem for UNIX-based Applications is a software package produced by Microsoft which provides a Unix subsystem and other parts of a full Unix environment on Windows NT and some of its immediate successor operating-systems...
which contains GPL-licensed code. In response to Microsoft's attacks on the GPL, several prominent Free Software developers and advocates released a joint statement supporting the license. In July 2009, Microsoft itself released a body of around 20,000 lines of Linux driver code under the GPL. The Hyper-V
Hyper-V
Microsoft Hyper-V, codenamed Viridian and formerly known as Windows Server Virtualization, is a hypervisor-based virtualization system for x86-64 systems. A beta version of Hyper-V was shipped with certain x86-64 editions of Windows Server 2008, and the finalized version was released on June 26,...
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 GPL has been described as being "viral"Viral license
Viral license is a pejorative term used to describe a copyright license that allows derivative works only when licensed identically to the original. Licenses of this form include several common open source licenses, such as the GNU General Public License and the Creative Commons ShareAlike licenses...
by Craig Mundie, Microsoft Senior Vice President because the GPL only allows conveyance of whole programs, which means that programmers are not allowed to convey programs that link
GPL linking exception
A GPL linking exception modifies the GNU General Public License to create a new, modified license. Such modified licenses enable 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...
to libraries having GPL-incompatible licenses. The so-called "viral" effect of this is that under such circumstances disparately licensed software cannot be combined unless one of the licenses is changed. Although theoretically either license could be changed, in the "viral" scenario the GPL cannot be practically changed (because the software may have so many contributors, some of whom will likely refuse), whereas the license of the other software can be practically changed.
In the views of Richard Stallman, the metaphor of a "virus" is wrong and an extremely unfriendly thing to say. Software under the GPL never "attacks" and "infects" other software. Rather, software under the GPL is like a spider plant
Chlorophytum comosum
Chlorophytum comosum, often called the spider plant, is a herbaceous plant. It is native to tropical and southern Africa, but has become naturalized in other parts of the world, including western Australia. Variegated forms in particular are used as house plants.-Description:Chlorophytum comosum...
: If one takes a piece of it and puts it somewhere else, it grows there too.
Barrier to commercialization
The FreeBSDFreeBSD
FreeBSD is a free Unix-like operating system descended from AT&T UNIX via BSD UNIX. Although for legal reasons FreeBSD cannot be called “UNIX”, as the direct descendant of BSD UNIX , FreeBSD’s internals and system APIs are UNIX-compliant...
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". Poul-Henning Kamp
Poul-Henning Kamp
Poul-Henning Kamp is a Danish FreeBSD developer, responsible for implementation of the widely used MD5 password hash algorithm, a vast quantity of systems code, including the FreeBSD GEOM storage layer, GBDE cryptographic storage transform, part of the UFS2 file system implementation, FreeBSD...
, author of a beerware
Beerware
Beerware is a somewhat tongue-in-cheek term for software released under a very relaxed license. It provides the end user with the right to use a particular program .-Description:...
license, considers GPL "a joke" because of vague statements he perceives exist in the license.
See also
- Free softwareFree softwareFree software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...
- GNU Lesser General Public LicenseGNU Lesser General Public LicenseThe GNU Lesser General Public License or LGPL is a free software license published by the Free Software Foundation . It was designed as a compromise between the strong-copyleft GNU General Public License or GPL and permissive licenses such as the BSD licenses and the MIT License...
(LGPL) - Affero General Public LicenseAffero General Public LicenseThe Affero General Public License, often abbreviated as Affero GPL and AGPL , refers to two distinct, though historically related, free software licenses:...
(AGPL) - BSD license
- Permissive and copyleft licenses
- Dual-licensing
- European Union Public LicenceEuropean Union Public LicenceThe European Union Public Licence is a software licence that has been created and approved by the European Commission. It is a free software licence.Its first version 1.0 was approved on 9 January 2007....
(EUPL) - Proprietary softwareProprietary softwareProprietary software is computer software licensed under exclusive legal right of the copyright holder. The licensee is given the right to use the software under certain conditions, while restricted from other uses, such as modification, further distribution, or reverse engineering.Complementary...
- List of software licenses
- Business models for open source softwareBusiness models for open source softwareThere are several different types of business models for making profit using open source software .- Introduction :Open source software can be sold and used commercially. It is a part of the software industry. The financial return on open source software can also come from selling services, such...
- Anti-copyrightAnti-copyrightAnti-copyright refers to the complete or partial opposition to prevalent copyright laws. Copyright is known as the owner's right for copies to be only made by the owner or with his/her authorization in form of a license....
- GPL font exceptionGPL font exceptionThe GPL font exception clause is an optional clause within the GNU General Public License permitting digital fonts shared with that license to be embedded within a digital document file without requiring the document itself to also be shared with GPL...
External links
- GNU General Public License v1.0 – This version is deprecatedDeprecationIn the process of authoring computer software, its standards or documentation, deprecation is a status applied to software features to indicate that they should be avoided, typically because they have been superseded...
by the FSF. - GNU General Public License v2.0 – This version is deprecatedDeprecationIn the process of authoring computer software, its standards or documentation, deprecation is a status applied to software features to indicate that they should be avoided, typically because they have been superseded...
by the FSF but is still used by many software projects, including Linux and GNU packages - GNU General Public License v3.0
- A Practical Guide to GPL Compliance (Covers GPLv2 and v3) – from the Software Freedom Law Center
- A paper on enforcing the GPL
- Frequently Asked Questions about the GPL
- GPL, BSD, and NetBSD – why the GPL rocketed Linux to success by David A. Wheeler
- GNU General Public License and Commentaries – Edited by Robert Chassell.
- GNU Lesser General Public License v2.1
- History of the GPL
- List of presentation transcripts about the GPL and free software licenses
- Make Your Open Source Software GPL-Compatible. Or Else. (David A. Wheeler, 7 April 2004) — why a GPL-compatible license is important to the health of a project
- The Emacs General Public License, a February 1988 version, a direct predecessor of the GNU GPL
- The Labyrinth of Software Freedom, (BSD vs GPL and social aspects of free licensing debate), by Dr. Nikolai Bezroukov
- Google Gives Oracle a Tutorial on API Copyright Law