What is the Mozilla Public License (MPL)?
The Mozilla Public License (MPL) is an open source software license. It is used by the Mozilla Foundation for its software, including Firefox. It is a copyleft license that requires any modifications or derivatives to be shared under the same license.
The MPL includes an express patent license, and also a strong defensive termination provision. The new version replaces the MPL 1.1, which was in use for over a decade.
The Mozilla Public License (MPL)
The Mozilla Public License (MPL) is a free software license developed and maintained by the Mozilla Foundation. It is a weak copyleft license, positioned between the GNU family of licenses and permissive licenses such as the Apache License 2.0. This license allows re-licensing, meaning that MPL-licensed software can be converted into a copyleft license like the GNU General Public License (GPL), or even a proprietary license (example: KaiOS).
It also requires that any Modifications made to the original code must be distributed under the MPL as well. It defines a Contributor Version as the combination of the Original Code and any prior Modifications made by that particular contributor.
The MPL is not unique to the Mozilla project, and many OSS projects use it. However, it is a well-crafted modern license that should be considered by any open source project seeking a weak copyleft licensing policy. It is also compatible with the BSD license, which is widely used in OSS projects.
The MPL is a copyleft license
The MPL is a weak copyleft license that is designed to bridge the gap between permissive free software licenses and GNU-style copyleft licenses. It requires that any modifications be shared under the same license, but does not require the distribution of the original code. This makes the MPL a great option for developers who want to use open source code but are worried about the restrictions of a GNU-style license.
The new MPL 2.0 version, which replaces the MPL 1.1 license used by Mozilla until now, was developed after more than two years of discussion and feedback from other users of the license. The new version features major updates, including simplification and improved compatibility with secondary licenses.
In addition to simplifying the license text, the MPL 2.0 includes improved patent peace provisions and more specific requirements regarding add-ons. These changes make the MPL more compatible with other software licenses and are expected to reduce litigation over copyright terms.
The MPL is compatible with the GNU General Public License (GPL)
The MPL is compatible with the GNU General Public License (GPL). The MPL’s stipulation that core files stay under the MPL provides an incentive for companies to add functionality to the program and make it more valuable. The MPL also allows a program to include code licensed under another license, such as the Apache licence, without being incompatible with the GPL. Mozilla already does this with the libvpx library, which decodes WebM video.
The MPL is also compatible with the GNU Lesser General Public License (LGPL). The MPL is a weak copyleft license, which means it requires that derivative works be licensed under the same version as the original work. This is in contrast to the CDDL, which allows an initial developer to require that any derivative works be licensed under the same version as theirs. This can lead to problems when software based on different versions of the same code is released. The LGPL, on the other hand, is a strong copyleft license.
The MPL is compatible with the GNU Lesser General Public License (LGPL)
Most people associate the Mozilla Foundation with their flagship browser, Firefox. But open source software contributors know it for its commitment to keeping the internet a free and public resource, a mission that matches the ethos of OSS development.
The MPL is a weak copyleft, falling somewhere between permissive licenses like the MIT License and strong copyleft licenses such as GNU General Public License (GPL). It allows re-licensing, meaning that software authored with MPL code can be licensed under other open or proprietary licenses.
It also features a file-level copyright notice, which means that users must be notified of the MPL in order to use the software. This feature is important, because files often end up being distributed separately from the rest of the program. This is especially true for web-based programs, where it is not possible to deliver the entire file to a user. The MPL is designed to address this problem by providing boilerplate headers for many common coding languages.