License Policy

From MozillaWiki
Revision as of 18:39, 3 March 2008 by Gerv (talk | contribs) (New page: <!-- Remaining to do: - Sort out the license list for the webtools - Check that we've covered everything in the original document - Show it to Frank --> <h1>Mozilla Foundation License...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search


Mozilla Foundation License Policy

Version 2.0

Introduction

The Mozilla Foundation has created this formal policy governing licenses to be used for source files stored in our code repositories. Developers with check-in privileges to the mozilla.org code repositories must comply with this policy unless specifically advised otherwise in writing by The Mozilla Foundation.

The following is a brief summary of the Mozilla Foundation license policy:

  • Newly-added code must be licensed under the terms pertaining to that part of the repository to which it is added.
  • You must consult the licensing team before adding code not under one of the mozilla.org-approved licenses.

For the complete license policy see the following sections.

Definitions

"Mozilla Code" means all files any part of which end up in binaries of the Mozilla family of Internet clients - Firefox, Thunderbird, SeaMonkey and Camino. Note that this definition excludes the code of tools used merely to build these products.

"Other Code" is code in our repositories which originated with the Mozilla Project but is not Mozilla Code.

"Third Party Code" is code in our repositories which did not originate with the Mozilla Project. It is usually, but not always, under its own specific license. Code may be both Mozilla Code and Third Party Code.

Please see the diagram for the relationship between the three definitions. XXX DIAGRAM NOT YET UPDATED


Acceptable Licenses

  1. The following license (the "Mozilla tri-license") is acceptable in all circumstances:

    For new source files please use the boilerplate license notice appropriate for the type of file you are creating.

  2. The following license is acceptable for trivial pieces of Other Code, such as testcases:

    • Creative Commons Public Domain Dedication, using the following boilerplate:
      Any copyright is dedicated to the Public Domain.
      http://creativecommons.org/licenses/publicdomain/
  3. The following licenses are acceptable only for Other Code in directories whose files are already under the license in question, as outlined later in this policy:

  4. For Third Party Code, you should use the license pertaining to that code when modifying it or adding new files to it, and the tri-license when adding Mozilla-specific files such as build system files. See below for a list of directories this applies to.


All Mozilla Code must be under either the tri-license or, for Third Party Mozilla Code, a license compatible with all three sets of terms in the tri-license (e.g. BSD-like licenses).


Other Code (Non-Tri-Licensed)

The following list, relating to section 3 above, is of directories contain Mozilla project code under sets of licensing terms other than the tri-license.

Webtools

Software Directory License
PLIFwebtools/plifMPL/GPL
whack-licensewebtools/whack-licenseMPL/GPL
"Bugzilla 3" (defunct)webtools/bugzilla3MPL/GPL
APIDocwebtools/apidocNPL/GPL
Bonsaiwebtools/bonsaiNPL
Buildwebtools/buildNPL
Registrywebtools/registryNPL
Tinderbox 1webtools/tinderboxNPL
Browser Busterwebtools/browser-busterMPL
Bugzillawebtools/bugzillaMPL
Despotwebtools/despotMPL
Doctorwebtools/doctorMPL
Graphwebtools/graphMPL
Hendrixwebtools/hendrixMPL
Leak-O-Maticwebtools/leak-o-maticMPL
Litmuswebtools/litmusMPL
MiscStatswebtools/miscstatsMPL
MozBotwebtools/mozbotMPL
NewsBotwebtools/newsbotMPL
Tinderbox 2webtools/tinderbox2MPL
Tinderbox 3webtools/tinderbox3MPL
Web Snifferwebtools/web-snifferMPL
webstatswebtools/webstatsMPL
Testopiawebtools/testopiaMPL
LXRwebtools/lxrNone
new-graphwebtools/new-graph??
addons.mozilla.orgwebtools/addons(PHP) None :-(
update.mozilla.orgwebtools/update(PHP) tri
Surveywebtools/survey(PHP) ?
Application Update Service (AUS)webtools/aus(PHP) tri
Bouncerwebtools/bouncer(PHP) tri, MIT (for Cake)
Firefox Surveywebtools/firefox_survey(PHP) ??, MIT (for Cake)
Party Toolwebtools/partytool(PHP) tri, MIT and The Open Group Test Suite (for Cake)
Remora (addons.mozilla.org 2)webtools/remora(PHP) ??, MIT and The Open Group Test Suite (for Cake)
Uninstall Surveywebtools/uninstall_survey(PHP) ??, MIT (for Cake)

Not Webtools

Software Directory License
Client Customization Kit cck Some MPL 1.1 or later, some tri-license
Rhino (JavaScript in Java) js/rhino MPL 1.1 or later/GPL 2.0 or later

Third Party Code

The following list, relating to section 4 above, is of directories containing Third Party Code, each of which is under its own license. Some of this code is Mozilla Code.

Software Directory License
7-zip other-licenses/7zstub LGPL
ATK other-licenses/atk-1.0 LGPL
Boehm Garbage Collector gc/boehm Some MIT-like, some tri-license
bsdiff other-licenses/bsdiff BSD Protection License
IAccessible2 other-licenses/ia2 LGPL
libart other-licenses/libart_lgpl LGPL
libical calendar/libical LGPL 2.1/MPL 1.0 or later
libjpeg jpeg JPEG License
libpng modules/libimg/png PNG License
XPIDL xpcom/typelib/xpidl GPL
zlib modules/zlib ZLib License


Copying Code

You may copy code between files with identical licensing terms, or between files where the target file has a subset of the licenses of the source file (e.g. MPL/LGPL/GPL -> MPL). For any other transfer, consult the licensing team first.


This concludes the list of licenses acceptable to mozilla.org for use with Mozilla code. If you happen to find a file in the Mozilla source tree under a license which does not conform to the pattern above, please report it to licensing@mozilla.org.