Open-source license

From HandWiki
Revision as of 17:44, 6 February 2024 by Wincert (talk | contribs) (add)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Short description: Software license allowing source code to be used, modified, and shared


A pie chart displays the most commonly used open source license as Apache at 30%, MIT at 26%, GPL at 18%, BSD at 8%, LGPL at 3%, MPL at 2%, and remaining 13% as licenses with below 1% market share each.
Popular open source licenses include the Apache License, the MIT License, the GNU General Public License (GPL), the BSD Licenses, the GNU Lesser General Public License (LGPL) and the Mozilla Public License (MPL).

Open-source licenses are software licenses that allow content to be used, modified, and shared. They facilitate free and open-source software (FOSS) development. Intellectual property (IP) laws restrict the modification and sharing of creative works. Free and open-source licenses use these existing legal structures for an inverse purpose. They grant the recipient the rights to use the software, examine the source code, modify it, and distribute the modifications. These criteria are outlined in the Open Source Definition.

After 1980, the United States began to treat software as a literary work covered by copyright law. Richard Stallman founded the free software movement in response to the rise of proprietary software. The term "open source" was used by the Open Source Initiative (OSI), founded by free software developers Bruce Perens and Eric S. Raymond. "Open source" emphasizes the strengths of the open development model rather than software freedoms. While the goals behind the terms are different, open-source licenses and free software licenses describe the same thing.

The two main categories of open-source licenses are permissive and copyleft. Permissive licenses come from academia. They grant permission to modify and distribute software. They usually require attribution, and they disclaim warranties. Copyleft licenses come from the free software movement. They require derivative works to be distributed with the source code and under a copyleft license. Since the mid-2000s, courts in multiple countries have upheld the terms of both types of license. Software developers have filed cases both as copyright infringement and as breaches of contract.

Background

Main page: History of free and open-source software

File:Eben Moglen - From the birth of printing to industrial culture; the root of copyright.ogv

Intellectual property (IP) is a legal category that treats creative output as property, comparable to private property. Legal systems grant the owner of an IP the right to restrict access in many ways. Owners can sell, lease, gift, or license their properties. Multiple types of IP law cover software including trademarks, patents, and copyrights.[1]

Most countries, including the United States (US), have created copyright laws in line with the Berne Convention.[2] These laws assign a copyright whenever a work is released in any fixed format.[3] Under US copyright law, the initial release is considered an original work. The creator, or their employer, holds the copyright to this original work and therefore has the exclusive right to make copies, release modified versions, distribute copies, perform publicly, or display the work publicly. Modified versions of the original work are derivative works. When a creator modifies an existing work, they hold the copyright to their modifications. Unless the original work was in the public domain, a derivative work can only be distributed with the permission of every copyright holder.[1]

In 1980, the US government amended the law to treat software as a literary work. Software released after this point was restricted by IP laws.[4] At that time, American activist and programmer Richard Stallman was working as a graduate student at the MIT Computer Science and Artificial Intelligence Laboratory. Stallman witnessed fragmentation that he attributed to proprietary software, and founded the free software movement.[5] Throughout the 1980s, he started the GNU Project to create a free operating system, wrote essays on freedom, founded the Free Software Foundation (FSF), and wrote several free software licenses.[6] The FSF used existing intellectual property laws for the opposite of their intended goal of restriction. Instead of imposing restrictions, free software explicitly provided freedoms to the recipient.[7]

Photograph of Bruce Perens at a conference
Bruce Perens, author of the Open Source Definition

In the late 90s, two active members of the free software community, Bruce Perens and Eric S. Raymond, founded the Open Source Initiative (OSI). At Debian, Perens had proposed the Debian Free Software Guidelines (DFSG), which formed the basis of OSI's The Open Source Definition. An open-source license is one that complies with this definition to provide software freedom.[8] Eric S. Raymond was a proponent of the term "open source" over "free software". He viewed open source as more appealing to businesses and more reflective of the tangible advantages of FOSS development. One of Raymond's goals was to expand the existing hacker community to include large commercial developers.[9] In The Cathedral and the Bazaar, Raymond compared open-source development to the bazaar, an open-air public market. He argued that aside from ethics, the open model provided advantages that proprietary software could not replicate.[10][11] Raymond focused heavily on feedback, testing, and bug reports.[12] He contrasted the proprietary model where small pools of secretive workers would carry out this work with the development of Linux where the pool of testers included potentially the entire world.[13] He summarized this strength as "Given enough eyeballs, all bugs are shallow."[14] The OSI succeeded in bringing open-source development to corporate developers including Sun Microsystems, IBM, Netscape, Mozilla, Apache, Apple Inc., Microsoft, and Nokia. These companies released code under existing licenses and drafted their own to be approved by the OSI.[15][16]

Types

Open-source licenses are categorized as copyleft or permissive.[17] Copyleft licenses require derivative works to include source code under a copyleft license. Permissive licenses do not, and therefore the code can be used within proprietary software. Copyleft can be further divided into strong and weak depending on whether they define derivative works broadly or narrowly.[18][19]

Licenses focus on copyright law, but code is also covered by other forms of IP. Software patents cover ideas and, rather than a specific implementation, cover any implementation of a claim. Patent claims give the holder the right to exclude others from making, using, selling, or importing products based on the idea. Because patents grant the right to exclude rather than the right to create, it is possible to have a patent on an idea but still be unable to legally implement it if the invention relies on another patented idea. Thus, open-source patent grants can offer permission only from covered patents. They cannot guarantee that a third party has not patented any concepts embodied in the code.[20] The older permissive licenses do not discuss patents directly and offer only implicit patent grants in their offers to use or sell covered material. Newer copyleft licenses and the 2004 Apache License offer explicit patent grants and limited protection from patent litigation. These patent retaliation clauses protect developers by terminating grants for any party who initiates a patent lawsuit regarding covered software.[21]

Trademarks are the only form of IP not shared by free and open-source software. Trademarks on FOSS function the same as any trademark.[22] A trademark is a design that identifies the distinct source of a product. Because they distinguish products, the same designs can be used in different fields where there is no risk of confusing similar sources. For example, this is why IBM is a trademark for International Business Machines, which supplies mainframe computing solutions, and the International Brotherhood of Magicians which supplies guidance on stage magic.[23] To give up control of a trademark would result in the loss of that trademark. Therefore, no open-source license freely offers use of a trademark.[24]

Permissive

Main page: Permissive software license
M I T campus at night
Permissive licenses originate in academic institutions like the Massachusetts Institute of Technology.

Permissive licenses, also known as academic licenses, allow recipients to use, modify, and distribute software with no obligation to provide source code. Institutions created these licenses to distribute their creations to the public.[25] Permissive licenses are usually short, often less than a page of text. They impose few conditions. Most include disclaimers of warranty and obligations to credit authors. A few include explicit provisions for patents, trademarks, and other forms of intellectual property.[26]

The University of California, Berkeley created the first open-source license, the Berkeley Software Distribution (BSD) license to permit free usage with no obligations placed on users. The BSD licenses brought the concept of academic freedom of ideas to computing. Early academic software authors had shared code based on implied promises. Berkley made these concepts explicit with clear disclaimers for liability and warranty along with conditions, or clauses, for redistribution. The original had 4 clauses but subsequent versions have further reduced the restrictions. As a result, it's common to specify if software uses a 2-clause or 3-clause version.[27][28]

The Massachusetts Institute of Technology (MIT) created an academic license based on the BSD original. The MIT license clarified the conditions by making them more explicit.[29] For example, the MIT license describes the right to sublicense.[30] One of the strengths of open-source development is the complex process where developers can build on the derivative works of each other and combine their projects into collective works. Explicitly making covered code sublicensable provides a legal advantage when tracking the chain of authorship.[29] The BSD and MIT are template licenses that can be adapted to any project. They are widely adapted and used by many FOSS projects.[27]

The Apache License is more comprehensive and explicit. The Apache Software Foundation wrote it for their Apache HTTP Server. Version 2, published in 2004, offers legal advantages over simple licenses and provides similar grants.[31] While the BSD and MIT licenses offer an implicit patent grant,[21] the Apache License includes a section on patents with an explicit grant from contributors.[32] Additionally, it is one of the few permissive licenses with a patent retaliation clause. Patent retaliation, or patent suspension, clauses take effect if a licensee initiates patent infringement litigation on covered code. In that situation, the patent grants are revoked. These clauses protect against patent trolling.[21]

Copyleft

Main page: Copyleft
A sticker reads, "Copyleft circled letter L".
The Copyleft sticker from an envelope Don Hopkins mailed to Richard Stallman in 1984.

Copyleft licenses require source code to be distributed with software and require the source code be made available under a copyleft license.[18][33] They use the restrictions of IP law—contrary to their usual purpose—to mandate that the code remain open.[34] The term and it's related slogan, "All rights reversed", had been previously used in a playful manner by the Principia Discordia and Tiny BASIC; the modern usage begins with Richard Stallman's efforts to create a free operating system. In 1984, programmer Don Hopkins mailed a manual to Stallman with a "Copyleft Ⓛ" sticker. Stallman, who was working on the GNU operating system, adopted the term.[35] An early version of copyleft licensing was used for the 1985 release of GNU Emacs.[7][36] The term would become associated with the FSF's later reciprocal licenses, notably the GNU General Public License (GPL).[37]

Traditional, proprietary software licenses are written with the goal of increasing profit, but Stallman wrote the GPL to increase the body of available free software. His reciprocal licenses offer the rights to use, modify, and distribute the work on the condition that people must release derivative works under a license offering these same freedoms. Software built on a copyleft base must come with the source code, and the source code must be available under the same or a similar license. This offers protection against proprietary software consuming code without giving back.[38][39] Richard Stallman stated that "the central idea of copyleft is to use copyright law, but flip it over to serve the opposite of its usual purpose: instead of a means of privatizing software, [copyright] becomes a means of keeping software free."[40]

Portrait of Mitchell Baker
Mitchell Baker drafted the Mozilla Public License while on Netscape's legal team.[41]

Practical benefits to copyleft licenses have attracted commercial developers. Corporations have used and written reciprocal licenses with a narrower scope than the GPL.[42] For example, Netscape drafted their own copyleft terms after rejecting permissive licenses for the Mozilla project.[43] The GPL remains the most popular license of this type, but there are other significant examples. The FSF has crafted the Lesser General Public License (LGPL) for libraries. Mozilla uses the Mozilla Public License (MPL) for their releases, including Firefox. IBM drafted the Common Public License (CPL) and later adopted the Eclipse Public License (EPL). A difference between the GPL and other reciprocal licenses is how they define derivative works covered by the reciprocal provisions. The GPL, and the Affero License (AGPL) based on it, use a broad scope to describe affected works. The AGPL extends the reciprocal obligation in the GPL to cover software made available over a network.[42][16] They are called strong copyleft in contrast to the weaker copyleft licenses often used by corporations. Weak copyleft uses narrower, explicit definitions of derivative works.[44][19] The MPL uses a file-based definition, the CPL and EPL use a module-based definition, and the FSF's own LGPL refers to software libraries.[45]

Compatibility

Main page: License compatibility
Chart of license compatibility, full details in section.
Open-source software licenses and how they interact

License compatibility determines how code with different licenses can be distributed together. The goal of open-source licensing is to make the work freely available, but this becomes complicated when working with multiple terminologies imposing different requirements.[46] There are many uncommonly used licenses and some projects write their own bespoke agreements. As a result, this causes more confusion than other legal aspects. When releasing a collection of applications, each license can be considered separately. However, when attempting to combine software, code from another project can only be in-licensed if the project uses compatible terms and conditions.[47]

When combining code bases, the original licenses can be maintained for separate components, and the larger work released under a compatible license.[48] This compatibility is often one-way. Public domain content can be used anywhere as there is no copyright claim, but code acquired under any almost any set of terms cannot be waved to the public domain. Permissive licenses can be used within copyleft works, but copyleft material cannot be released under a permissive license. Some weak copyleft licenses can be used under the GPL and are said to be GPL-compatible. GPL software can only be used under the GPL or AGPL. [46] Permissive licenses are broadly compatible because they can cover separate parts of a project. The GPL, LGPL, AGPL, MPL, EPL, and Apache License have all been revised to enhance compatibility.[49]

Enforcement

Portrait of Harald Welte
Early legal victories by programmer Harald Welte established a precedent for open-source software litigation in Germany.[50]

Free and open-source software licenses have been successfully enforced in civil court since the mid-2000s.[51] In a pair of early lawsuits—Jacobsen v. Katzer in the United States and Welte v. Sitecom in Germany—defendants argued that open-source licenses were invalid.[52][53] Sitecom and Katzer separately argued that the licenses were unenforceable. Both the US and German courts rejected these claims. They ruled that the defendants could not have legally distributed the software if the licenses were unenforceable.[51][50]

Courts have found that distributing software indicates acceptance of the license's terms.[54] Physical software releases can obtain the consumer's assent with notices placed on shrinkwrap. Online distribution can use clickwrap, a digital equivalent where the user must click to accept. Open-source software has an additional acceptance mechanism. Without permission from the copyright holder, the law prohibits redistribution. Therefore, courts treat redistribution as acceptance of the license terms. These can include attribution provisions or source code provisions for copyleft licenses.[55][56]

Developers typically achieve compliance without lawsuits. Social pressures, like the potential for community backlash, are often sufficient.[57] Cease and desist letters are a common method to bring companies back into compliance, especially in Germany.[58] A standard process has developed in the German legal system. FOSS developers present companies with a cease and desist letter. These outline how to come back into compliance from a violation. German judges can issue a court-mandated cease and desist order to unresponsive companies. Civil cases proceed if these first steps fail. The German procedural laws are clear and favorable to claimants.[59]

Uncertainties remain in how different courts will handle certain aspects of licensing.[60] For software in general, there are debates about what can be patented and what can be copyrighted. Regarding an application programming interface (API), the European Court of Justice noted in the 2012 SAS Institute case that "ideas and principles which underlie [computer program] interfaces are not protected by copyright".[61] In a similar 2021 case, the US Supreme Court permitted the recreation of an API in a transformative product under fair use.[62]

A long-debated subject within the FOSS community is whether open-source licenses are "bare licenses" or contracts.[60] Under the bare license interpretation, advocated by the FSF, a case is brought to court by the copyright holder as copyright infringement.[51] Under the contract interpretation, a case can be brought to court by an involved party as a breach of contract.[63] US and French courts have tried cases under both interpretations.[64] Non-profit organizations like FSF and the Software Freedom Conservancy offer to hold the rights to smaller developers' projects to enforce compliance without seeking financial penalties.[59]

Comparisons

Free software

Main page: Free software

Free software licenses are also open-source software licenses. The separate terms free software and open-source software reflect different values rather than a legal difference.[65][66] The founder of the FSF, Richard Stallman, stated that "free software is an ethical imperative" in contrast to the practical aims of open source.[67] Bruce Perens based the Open Source Definition on the Debian project's guidelines which were based on Stallman's Free Software Definition.[68]

There are occasional edge cases where only one of the FSF or the OSI accept a license. For example, only the OSI approved the Open Watcom license. The FSF viewed the Sybase Open Watcom Public License as non-free because it required source code to be published for private modifications.[69] Situations like this are rare, and the popular free software licenses are open source, including the GPL.[70]

Public domain

Main page: Software:Public-domain software
Spaceships and stars on a round monitor
Early computer programs like the pioneering video game Spacewar! are in the public domain.[71]

When a copyright expires, the work enters the public domain, and is freely available to anyone.[72] Some creative works are not covered by copyright and enter directly into the public domain. In the early history of computing, this applied to software.[4] Early computer software was often given away with hardware.[73] Developed initially at MIT, the pioneering video game Spacewar! was used to both market and test the PDP-1 computer.[74]

According to attorney Lawrence Rosen, copyright laws were not written with the expectation that creators would place their work into the public domain. Thus intellectual property laws lack clear paths to waive a copyright. Highly permissive licenses described as "public domain" may legally function as unilateral contracts that offer something but impose no terms.[75][76]

A public-domain-equivalent license, like the Creative Commons CC0, provides a waiver of copyright claims into the public domain along with a permissive software license as a fallback. In jurisdictions that do not accept a public domain waiver, the permissive license takes effect.[77] Public domain waivers share limitations with simple academic licenses. This creates the possibility that an outside party could attempt to control a public domain work via patent or trademark law.[78] Public domain waivers handle warranties differently from any type of license. Even very permissive ones, like the MIT license, disclaim warranty and liability. Anyone using the free software must accept this disclaimer as a condition. Because public domain content is available to everyone, the copyright waiver cannot impose a disclaimer.[72]

Freeware

Main page: Freeware
A chart shows freeware and open-source software as overlapping but not inclusive categories.
FOSS is often free of cost. Freeware is free of cost, but the term usually describes gratis proprietary software.

Freeware is software distributed at no cost. FOSS is often given away gratis, but "freeware" typically refers to proprietary software, which does not grant permission to modify or redistribute copies. Proprietary freeware licenses may have restrictions to limit redistribution, prohibit commercial usage, or limit installations,[79] specified in an end-user license agreement.[80] Many proprietary software companies distribute freeware, including Microsoft who was the world's largest supplier in 2014.[81] Source-available software is proprietary freeware that comes with source code as a reference.[82] For example, Microsoft's Shared Source Initiative—an attempt to be more competitive with free software—resulted in proprietary source code that customers could use for internal or non-commercial modifications.[83]

See also

Notes

  1. 1.0 1.1 Rosen 2005, ch. 2.
  2. "Berne Convention". Wex. Cornell Law School. November 2021. https://www.law.cornell.edu/wex/berne_convention. 
  3. Fagundes & Perzanowski 2020, p. 529.
  4. 4.0 4.1 Oman 2018, pp. 641-642.
  5. Williams 2002, ch. 1.
  6. Williams 2002, ch. 7.
  7. 7.0 7.1 Williams 2002, ch. 9.
  8. Perens 1999, ¶ 16.
  9. Raymond 1999, "Memes and Mythmaking".
  10. Raymond 2001, "The Cathedral and the Bazaar".
  11. Meeker 2020, 2:33–3:06.
  12. Raymond 2001.
  13. Raymond 2001, "The Social Context of Open-Source Software".
  14. Raymond 2001, p. 19.
  15. Onetti & Verma 2009, p. 69.
  16. 16.0 16.1 Hammerly, Paquin & Walton 1999.
  17. Smith 2022, § 3.2.
  18. 18.0 18.1 Sen, Subramaniam & Nelson 2008, pp. 211-212.
  19. 19.0 19.1 Meeker 2020, 16:13.
  20. Rosen 2005, pp. 22-24.
  21. 21.0 21.1 21.2 Bain & Smith 2022, ch. 10.
  22. Chestek 2022, p. 30.
  23. Chestek 2022, pp. 184-185.
  24. Rosen 2005, p. 38.
  25. Rosen 2005, p. 69.
  26. Rosen 2005, pp. 101-102.
  27. 27.0 27.1 Smith 2022, § 3.2.1.1.
  28. OSI 2023.
  29. 29.0 29.1 Rosen 2005, pp. 73-90.
  30. OSI 2023, "The MIT License".
  31. Smith 2022, § 3.2.1.2.
  32. OSI 2023, "Apache License, Version 2.0".
  33. St. Laurent 2004, pp. 38-39.
  34. Rosen 2005, pp. 103-106.
  35. Keats 2010, p. 64.
  36. "Full text of GNU Emacs copying permission notice". 1985. https://www.tech-insider.org/free-software/research/1985/0715-b.txt. 
  37. Keats 2010, pp. 63-67.
  38. Rosen 2005, pp. 103-109.
  39. Meeker 2020, 6:00–7:22.
  40. Joy 2022, pp. 990-992.
  41. St. Laurent 2004, pp. 68, 75.
  42. 42.0 42.1 Tsai 2008, pp. 564-570.
  43. Hammerly, Paquin & Walton 1999, ¶ 23.
  44. Sen, Subramaniam & Nelson 2008, pp. 212-213.
  45. Rosen 2005, refer to corresponding chapters.
  46. 46.0 46.1 Smith 2022, § 3.3.
  47. Rosen 2005, pp. 243-247.
  48. St. Laurent 2004, pp. 159-163.
  49. See Smith 2022, p. 102 for: Apache License version 2.0 in 2004, GPL version 3 in 2007, LGPL version 3 in 2007, and AGPL version 3 in 2007. See Smith 2022, pp. 95–101 for: MPL version 2.0 in 2012 and EPL version 2 in 2017.
  50. 50.0 50.1 Ballhausen 2022, § 5.3.
  51. 51.0 51.1 51.2 Smith 2022, § 3.4.1.
  52. Jacobsen v. Katzer, 535 F.3d 1373 (Fed. Cir. 2008).
  53. Welte v. Sitecom (District Court of Munich 2004). Text
  54. Smith 2022, p. 106.
  55. Rosen 2005, ch. 6.
  56. Meeker 2020, 17:04.
  57. St. Laurent 2004, pp. 158-159.
  58. Ballhausen 2022, p. 127.
  59. 59.0 59.1 Ballhausen 2022, § 5.4.
  60. 60.0 60.1 Walden 2022, § 1.1.
  61. Smith 2022, § 3.1.3.
  62. Google LLC v. Oracle America, Inc., 593 U.S. ___, 1203 (2021).
  63. Smith 2022, § 3.4.2.
  64. Smith 2022, § 3.4.
  65. Onetti & Verma 2009, p. 71.
  66. St. Laurent 2004, pp. 81-83, 114.
  67. Stallman 2021, "For the free software movement, free software is an ethical imperative".
  68. Perens 1999, ¶ 11.
  69. Stallman 2021, "Practical Differences between Free Software and Open Source".
  70. Ballhausen 2019, p. 82.
  71. Ross 2021, "Spacewar: End of Development".
  72. 72.0 72.1 Rosen 2005, p. 36.
  73. Walden 2022, p. 3.
  74. Smith 2019, pp. 55-56.
  75. Rosen 2005, pp. 74-77.
  76. St. Laurent 2004, p. 98.
  77. Fagundes & Perzanowski 2020, p. 524.
  78. Joy 2022, pp. 1008-1010.
  79. Corbly 2014, pp. 66-68.
  80. Corbly 2014, p. 69.
  81. Corbly 2014, pp. 70.
  82. Kunert 2022.
  83. St. Laurent 2004, pp. 144-146.

References