Mozilla Public License

Last updated

Mozilla Public License
Mozilla logo (2017-2024).svg
Author Mozilla Foundation [1]
Latest version2.0 [1]
Publisher Mozilla Foundation [1]
PublishedJanuary 3, 2012 [1]
SPDX identifierMPL-2.0
MPL-1.1
MPL-1.0
(see list for more [2] )
Debian FSG compatible Yes [3]
FSF approved Yes [4]
OSI approved Yes [5]
GPL compatible 2.0 and later: Yes [4] (by default, unless marked as "Incompatible With Secondary Licenses")
1.1: No [6]
Copyleft Yes, file-based [7]
Linking from code with a different licence Yes
Website www.mozilla.org/MPL

The Mozilla Public License (MPL) is a free and open-source weak copyleft license for most Mozilla Foundation software such as Firefox and Thunderbird. [8] The MPL license is developed and maintained by Mozilla, [9] which seeks to balance the concerns of both open-source and proprietary developers. It is distinguished from others as a middle ground between the permissive software BSD-style licenses and the GNU General Public License. [10] As such, it allows the integration of MPL-licensed code into proprietary codebases, as long as the MPL-licensed components remain accessible under the terms of the MPL.

Contents

MPL has been used by others, such as Adobe to license their Flex product line, [11] and The Document Foundation to license LibreOffice 4.0 (also on LGPL 3+). [12] [13] Version 1.1 was adapted by several projects to form derivative licenses like Sun Microsystems' Common Development and Distribution License. [14] It has undergone two revisions: [15] the minor update 1.1, and a major update version 2.0 [16] nearing the goals of greater simplicity and better compatibility with other licenses. [17]

Terms

The MPL defines rights as passing from "contributors", who create or modify source code, through an optional auxiliary distributor (itself a licensee), to the licensee. It grants liberal copyright and patent licenses allowing for free use, modification, distribution, and "exploit[ation]" of the work, but does not grant the licensee any rights to a contributor's trademarks. [7] These rights will terminate if the licensee fails to comply with the license's terms and conditions, but a violating licensee who returns to compliance regains its rights, and even receiving written notice from a contributor will result in losing rights to that contributor's code only. A patent retaliation clause, similar to that of the Apache License, is included to protect an auxiliary distributor's further recipients against patent trolling. The contributors disclaim warranty and liability, but allow auxiliary distributors to offer such things on their own behalf.

In exchange for the rights granted by license, the licensee must meet certain responsibilities concerning the distribution of licensed source code. Covered source code files must remain under the MPL, and distributors "may not attempt to alter or restrict recipients' rights" to it. The MPL treats the source code file as the boundary between MPL-licensed and proprietary parts, meaning that all or none of the code in a given source file falls under the MPL. An executable consisting solely of MPL-covered files may be sublicensed, but the licensee must ensure access to or provide all the source code within it. Recipients can combine licensed source code with other files under a different, even proprietary license, thereby forming a "larger work" which can be distributed under any terms, but again the MPL-covered source files must be made freely available. [7] This makes the MPL a compromise between the MIT or BSD licenses, which permit all derived works to be relicensed as proprietary, and the GPL, which requires the derived work as a whole to be licensed under the GPL. By allowing proprietary modules in derived projects while requiring core files to remain open source, the MPL is designed to motivate both businesses and the open-source community to help develop core software. [18]

The one exception to covered source files remaining under the MPL occurs when code under version 2.0 or later is combined with separate code files under the GNU GPL, GNU Lesser GPL (LGPL), or Affero GPL (AGPL). In this case, the program as a whole will be under the chosen GNU license, but the MPL-covered files will be dual-licensed, so that recipients can choose to distribute them under that GNU License or the MPL. [4] The initial author of MPL code may choose to opt out of this GPL compatibility by adding a notice to its source files. [7]

It is explicitly granted that MPL-covered code may be distributed under the terms of the license version under which it was received or any later version. [1] :10.2 If code under version 1.0 or 1.1 is upgraded to version 2.0 by this mechanism, the 1.x-covered code must be marked with the aforementioned GPL-incompatible notice. The MPL can be modified to form a new license, provided that said license does not refer to Mozilla or Netscape.

History

Version 1.0 of the MPL was written by Mitchell Baker in 1998 while working as a lawyer at Netscape Communications Corporation. [19] Netscape was hoping that an open-source strategy for developing its own Netscape web browser would allow it to compete better with Microsoft's browser, Internet Explorer. [20] To cover the browser's code, the company drafted a license known as the Netscape Public License (NPL), which included a clause allowing even openly developed code to be theoretically relicensed as proprietary. [21]

However, at the same time, Baker developed a second license similar to the NPL. It was called the Mozilla Public License after Netscape's project name for the new open-source codebase, and, although it was originally only intended for software that supplemented core modules covered by the NPL, it would become much more popular than the NPL and eventually earn approval from the Open Source Initiative. [22]

Less than a year later, Baker and the Mozilla Organization would make some changes to the MPL, resulting in version 1.1, a minor update. [23] This revision was done through an open process that considered comments from both institutional and individual contributors. The primary goals were to clarify terms regarding patents and allow for multiple licensing. This last feature was meant to encourage cooperation with developers that preferred stricter licenses like the GPL. [24] Not only would many projects derive their own licenses from this version, but its structure, legal precision, and explicit terms for patent rights would strongly influence later revisions of popular licenses like the GPL (version 3). [14]

Both versions 1.0 and 1.1 are incompatible with the GPL, which led the Free Software Foundation to discourage using version 1.1. [6] For these reasons, earlier versions of Firefox were released under multiple licenses: the MPL 1.1, GPL 2.0, and LGPL 2.1. [25] Some old software, such as the Mozilla Application Suite, is still under the three licenses. Therefore, in early 2010, after more than a decade without modification, an open process for creating version 2.0 of the MPL began. Over the next 21 months, the MPL was not only changed to make the license clearer and easier to apply, but also to achieve compatibility with the GPL and Apache licenses. [17] [26] The revision team was overseen by Baker and led by Luis Villa with key support from Gervase Markham and Harvey Anderson. They would publish three alpha drafts, two beta drafts, and two release candidates for comment before releasing the final draft of version 2.0 on January 3, 2012. [17]

Notable users

Licenses based on pre-MPL 2.0

See also

Related Research Articles

<span class="mw-page-title-main">GNU Lesser General Public License</span> Free-software license

The GNU Lesser General Public License (LGPL) is a free-software license published by the Free Software Foundation (FSF). The license allows developers and companies to use and integrate a software component released under the LGPL into their own software without being required by the terms of a strong copyleft license to release the source code of their own components. However, any developer who modifies an LGPL-covered component is required to make their modified version available under the same LGPL license. For proprietary software, code under the LGPL is usually used in the form of a shared library, so that there is a clear separation between the proprietary and LGPL components. The LGPL is primarily used for software libraries, although it is also used by some stand-alone applications.

<span class="mw-page-title-main">Open-source license</span> Software license allowing source code to be used, modified, and shared

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.

The Netscape Public License (NPL) is a free software license, the license under which Netscape Communications Corporation originally released Mozilla.

In computing, the Common Public License (CPL) is a free software / open-source software license published by IBM. The Free Software Foundation and Open Source Initiative have approved the license terms of the CPL.

The Common Development and Distribution License (CDDL) is a free and open-source software license, produced by Sun Microsystems, based on the Mozilla Public License (MPL). Files licensed under the CDDL can be combined with files licensed under other licenses, whether open source or proprietary. In 2005 the Open Source Initiative approved the license. The Free Software Foundation (FSF) considers it a free software license, but one which is incompatible with the GNU General Public License (GPL).

Multi-licensing is the practice of distributing software under two or more different sets of terms and conditions. This may mean multiple different software licenses or sets of licenses. Prefixes may be used to indicate the number of licenses used, e.g. dual-licensed for software licensed under two different licenses.

<span class="mw-page-title-main">Komodo Edit</span> Text editor for dynamic programming languages

Komodo Edit is a free and open source text editor for dynamic programming languages. It was introduced in January 2007 to complement ActiveState's commercial Komodo IDE. As of version 4.3, Komodo Edit is built atop the Open Komodo project. Komodo IDE is no longer supported and maintained by developers for Python.

The IBM Public License (IPL) is a free open-source software license written and occasionally used by IBM. It is approved by the Free Software Foundation (FSF) and described as an "open-source license" by the Open Source Initiative.

This comparison only covers software licenses which have a linked Wikipedia article for details and which are approved by at least one of the following expert groups: the Free Software Foundation, the Open Source Initiative, the Debian Project and the Fedora Project. For a list of licenses not specifically intended for software, see List of free-content licences.

<span class="mw-page-title-main">Network Security Services</span> Collection of cryptographic computer libraries

Network Security Services (NSS) is a collection of cryptographic computer libraries designed to support cross-platform development of security-enabled client and server applications with optional support for hardware TLS/SSL acceleration on the server side and hardware smart cards on the client side. NSS provides a complete open-source implementation of cryptographic libraries supporting Transport Layer Security (TLS) / Secure Sockets Layer (SSL) and S/MIME. NSS releases prior to version 3.14 are tri-licensed under the Mozilla Public License 1.1, the GNU General Public License, and the GNU Lesser General Public License. Since release 3.14, NSS releases are licensed under GPL-compatible Mozilla Public License 2.0.

License proliferation is the phenomenon of an abundance of already existing and the continued creation of new software licenses for software and software packages in the FOSS ecosystem. License proliferation affects the whole FOSS ecosystem negatively by the burden of increasingly complex license selection, license interaction, and license compatibility considerations.

License compatibility is a legal framework that allows for pieces of software with different software licenses to be distributed together. The need for such a framework arises because the different licenses can contain contradictory requirements, rendering it impossible to legally combine source code from separately-licensed software in order to create and publish a new program. Proprietary licenses are generally program-specific and incompatible; authors must negotiate to combine code. Copyleft licenses are commonly deliberately incompatible with proprietary licenses, in order to prevent copyleft software from being re-licensed under a proprietary license, turning it into proprietary software. Many copyleft licenses explicitly allow relicensing under some other copyleft licenses. Permissive licenses are compatible with everything, including proprietary licenses; there is thus no guarantee that all derived works will remain under a permissive license.

Companies whose business centers on the development of open-source software employ a variety of business models to solve the challenge of making profits from software that is under an open-source license. Each of these business strategies rest on the premise that users of open-source technologies are willing to purchase additional software features under proprietary licenses, or purchase other services or elements of value that complement the open-source software that is core to the business. This additional value can be, but not limited to, enterprise-grade features and up-time guarantees to satisfy business or compliance requirements, performance and efficiency gains by features not yet available in the open source version, legal protection, or professional support/training/consulting that are typical of proprietary software applications.

<span class="mw-page-title-main">Free-software license</span> License allowing software modification and redistribution

A free-software license is a notice that grants the recipient of a piece of software extensive rights to modify and redistribute that software. These actions are usually prohibited by copyright law, but the rights-holder of a piece of software can remove these restrictions by accompanying the software with a software license which grants the recipient these rights. Software using such a license is free software as conferred by the copyright holder. Free-software licenses are applied to software in source code and also binary object-code form, as the copyright law recognizes both forms.

BSD licenses are a family of permissive free software licenses, imposing minimal restrictions on the use and distribution of covered software. This is in contrast to copyleft licenses, which have share-alike requirements. The original BSD license was used for its namesake, the Berkeley Software Distribution (BSD), a Unix-like operating system. The original version has since been revised, and its descendants are referred to as modified BSD licenses.

<span class="mw-page-title-main">Copyleft</span> Practice of mandating free use in all derivatives of a work

Copyleft is the legal technique of granting certain freedoms over copies of copyrighted works with the requirement that the same rights be preserved in derivative works. In this sense, freedoms refers to the use of the work for any purpose, and the ability to modify, copy, share, and redistribute the work, with or without a fee. Licenses which implement copyleft can be used to maintain copyright conditions for works ranging from computer software, to documents, art, and scientific discoveries, and similar approaches have even been applied to certain patents.

<span class="mw-page-title-main">GNU General Public License</span> Series of free software licenses

The GNU General Public Licenses are a series of widely used free software licenses, or copyleft licenses, that guarantee end users the freedoms to run, study, share, and/or modify the software. The GPL was the first copyleft license available for general use. It was originally written by Richard Stallman, the founder of the Free Software Foundation (FSF), for the GNU Project. The license grants the recipients of a computer program the rights of the Free Software Definition. The licenses in the GPL series are all copyleft licenses, which means that any derivative work must be distributed under the same or equivalent license terms. It is more restrictive than the Lesser General Public License, and even further distinct from the more widely-used permissive software licenses such as BSD, MIT, and Apache.

<span class="mw-page-title-main">GNU Free Documentation License</span> Copyleft license primarily for free software documentation

The GNU Free Documentation License is a copyleft license for free documentation, designed by the Free Software Foundation (FSF) for the GNU Project. It is similar to the GNU General Public License, giving readers the rights to copy, redistribute, and modify a work and requires all copies and derivatives to be available under the same license. Copies may also be sold commercially, but, if produced in larger quantities, the original document or source code must be made available to the work's recipient.

The AROS Public License (APL) is a software license which is primarily used as the license for the AROS Research Operating System software project. Version 1.1 is based on the text of Mozilla Public License 1.1, with some definitions added and Netscape-specific texts changed.

Software relicensing is applied in open-source software development when software licenses of software modules are incompatible and are required to be compatible for a greater combined work. Licenses applied to software as copyrightable works, in source code as binary form, can contain contradictory clauses. These requirements can make it impossible to combine source code or content of several software works to create a new combined one.

References

  1. 1 2 3 4 5 "Mozilla Public License, version 2.0". Mozilla Foundation. Retrieved February 28, 2012.
  2. "SPDX License List". spdx.org.
  3. "Mozilla Public License (MPL)". The Big DFSG-compatible Licenses. Debian Project . Retrieved June 6, 2009.
  4. 1 2 3 "Mozilla Public License (MPL) version 2.0". Various Licenses and Comments about Them. Free Software Foundation. Retrieved January 3, 2012.
  5. "Open Source Licenses". Open Source Initiative. December 19, 2011. Retrieved January 7, 2012. Mozilla Public License 2.0 (MPL-2.0)
  6. 1 2 "Various Licenses and Comments about Them". Free Software Foundation. Retrieved August 12, 2016.
  7. 1 2 3 4 "MPL 2.0 FAQ". Mozilla Foundation. Retrieved October 14, 2020.
  8. "Mozilla Foundation License Policy". Mozilla Foundation. Retrieved February 29, 2012.
  9. "Open Source Software: a legal guide". LawGives. Archived from the original on July 30, 2020. Retrieved September 8, 2015.
  10. Andrew Laurent (2004). Understanding Open Source and Free Software Licensing. O'Reilly Media, Inc. p. 62. ISBN   978-0-596-00581-8.
  11. 1 2 "Adobe Flex FAQ: Licensing". Adobe Systems. Retrieved February 29, 2012.
  12. "The meaning of the 4.0". January 24, 2013.
  13. 1 2 "Licenses". LibreOffice.
  14. 1 2 Fontana, Richard (January 9, 2012). "The new MPL" . Retrieved March 1, 2012.
  15. "Historical Licensing Documents". Mozilla Foundation. Retrieved February 29, 2012.
  16. "Mozilla Public License 2.0 (MPL-2.0) | Open Source Initiative". opensource.org. December 19, 2011. Retrieved March 9, 2022.
  17. 1 2 3 "About MPL 2.0: Revision Process and Changes FAQ". Mozilla Foundation. Retrieved February 29, 2012.
  18. O'Hara, Keith J.; Kay, Jennifer S. (February 2003). "Open source software and computer science education" (PDF). Journal of Computing Sciences in Colleges. 18 (3). Consortium for Computing Sciences in Colleges: 3–4. ISSN   1937-4771 . Retrieved February 29, 2012.
  19. Rosen, Lawrence (2004). "7. The Mozilla Public License (MPL)". Open Source Licensing – Software Freedom and Intellectual Property Law . Prentice Hall PTR. ISBN   0-13-148787-6.
  20. Andreessen, Marc (April 18, 2005). "The Time 100: Mitchell Baker: The "Lizard Wrangler"". Time Magazine. 165 (16). Time. ISSN   0040-781X. OCLC   1311479.
  21. "Netscape Public License". Netscape Communications. Archived from the original on August 27, 2015. Retrieved August 16, 2016.
  22. Wilson, Rowan (November 15, 2011). "The Mozilla Public License - An Overview". OSS-Watch. University of Oxford. Retrieved February 29, 2012.
  23. Hecker, Frank (April 2, 1999). "Mozilla at One: A Look Back and Ahead". Archived from the original on June 28, 2008. Retrieved March 1, 2012.
  24. "NPL Version 1.0M FAQ". September 24, 1999. Archived from the original on January 5, 2011. Retrieved March 1, 2012.
  25. "Mozilla Relicensing FAQ". Mozilla Foundation. August 14, 2007. Archived from the original on May 5, 2009. Retrieved February 28, 2012.{{cite web}}: CS1 maint: bot: original URL status unknown (link)
  26. Villa, Luis (August 29, 2011). "The Mozilla Public License - almost 2.0 (part 1)". Opensource.com. Retrieved August 16, 2016.
  27. "Boulder - an ACME CA". GitHub . October 19, 2021.
  28. "cairographics.org".
  29. "Celtx - Policies".
  30. "Eigen". eigen.tuxfamily.org. Retrieved February 23, 2017.
  31. "License".
  32. "Kea to be released under Mozilla Public License 2.0 - Internet Systems Consortium". December 8, 2015.
  33. "OpenMRS Licensing Moves to MPLv2 - OpenMRS".
  34. "syncthing/syncthing". GitHub . October 20, 2021.
  35. "servo/servo". GitHub. Retrieved November 8, 2020.
  36. "brave/brave-browser". GitHub. Retrieved November 8, 2020.
  37. "Mozilla Public License — RabbitMQ". www.rabbitmq.com. Retrieved August 18, 2021.
  38. "ØMQ Licensing - zeromq". June 6, 2023. Retrieved December 5, 2024.
  39. "Erlang Programming Language".
  40. "ERLANG PUBLIC LICENSE: Version 1.1". This Erlang License is a derivative work of the Mozilla Public License, Version 1.0.
  41. "English translation of the Erlang Public License legal text". Archived from the original on June 7, 2012.
  42. "Initial Developer's Public License".
  43. "Openbravo Public License". Archived from the original on August 20, 2013. Retrieved January 5, 2019.