Moonlight Package Licensing
I would raise a few questions about the licensing terms of the
Moonlight Project's source and binary packages.
Firstly, there seems to be some inaccuracies on the Project's
The Moonlight licensing is described as consisting of MIT/X11, Ms-PL,
and LGPL2.0-only; yet there are Cairo components in the source tree
which are licensed under the dual licenses of the Mozilla Public
License and the LGPLv2.1-only. There is no real conflict here (to my
understanding), however, offering this code under any of the MIT/X11,
Ms-PL, or LGPL2.0-only licenses relies upon the fact that the *MPL*
permits "re-licensing" under more restrictive terms (the LGPLv2.1
licensing of the Cairo code serves no purpose towards this end -- you
can't re-license LGPLv2.1-only software except as GPL). The project
page, as well as all of the appropriate sources' COPYING files, should
reflect the nature of this re-licensing (the moonlight-mozilla-plugin
provides the text of the Mozilla Public License but does not indicate
the license's role in the package).
Also in the same section, the Ms-PL is characterized as "a DFSG-free
GPL3-compatible license from Microsoft which is essentially MIT with
The GPL3 compatibility claim contradicts the description given on
GNU.org (http://www.gnu.org/philosophy/license-list.html) wherein it
is stated, "This is a free software license; it has a copyleft that is
not strong, but incompatible with the GNU GPL".
I would neither contradict nor corroborate the DFSG-free claim for the
Ms-PL, but note that there is no mention of the Ms-PL on Debianwiki's
DFSG Licenses page (http://wiki.debian.org/DFSGLicenses). If I have
missed wherein the discussion occurred over the compatibility of the
Ms-PL with the Debian Free Software Guidelines, I should welcome the
opportunity to read it.
The "essentially MIT with patent grants" claim ignores the Ms-PL's
lack of permissiveness, its requirements of reciprocity, and its viral
nature. At issue is not whether these characteristics are good or bad,
but that they are as essential to the nature of the Ms-PL license as
its patents grants, and that their terms and conditions are
dramatically different from corresponding terms (or lack of them) in
the MIT license.
The preceding was mainly covering the tedious bookkeeping aspects of
licensing and can be either addressed through modification of the
appropriate documentation or, if deemed appropriate, even ignored.
The more salient point of this post is to address the incorporation of
code licensed under the Microsoft Public License into Debian binary
packages. (For reference, the text of the Ms-PL can be viewed at
First, I would point out that the Ms-PL inheres acceptance of the
license by mere usage ("If you use the software, you accept this
license"). Since acceptance of the license entails the sacrifice of
certain rights with regard to bringing patent lawsuits against the
copyright holders, it would seem incumbent that the package installer
provide an opportunity to reject the license and not install the
software or, alternately, the first-run of the software should provide
a similar approval dialog.
More importantly, it seems rather inescapable that a Debian binary
package is a collective work of the software that is included in that
package. The licensing of that collective work must not conflict with
the terms and conditions of the individual licenses of components of
that package. The question is thus raised, what is the licensing for
the Debian binary package of Moonlight?
Section 3(D) of the Ms-PL specifies that the following condition
should be met by the Debian binary package licensing: "If you
distribute any portion of the software in compiled or object code
form, you may only do so under a license that complies with this
Since the license for the Debian package must "comply with" the Ms-PL,
its license should necessarily offer the patent grants required in
Section 2(B). Assuming that a license which complies with the Ms-PL is
used -- or indeed that the Ms-PL itself used -- the question is thus
raised, how are patent grants being provided for the MIT/X11-licensed
components of the Debian binary package? Without providing such a
grant, the package licensing would not meet the terms and conditions
of Section 2(B) and fail to "comply with" the Ms-PL. Providing such a
grant should demand extra measure be taken with regard to the
MIT/X11-licensed code because the authors of that code were not
obligated by its licensing to provide such a grant.
As a final comment, and one more hypothetical in nature, the Ms-PL
makes no distinction between derived and collective works and offers
no exemption for "mere aggregation" (as does the General Public
License). In lieu of such an exception, we are left with relying upon
the interpretation of the courts as to what constitutes a derived or
collected work of joint authorship under copyright law. Should a
Ms-PL-licensed package be included with a Debian distribution, it may
very well be argued that the entire distribution (a collective work)
must be offered under licensing which "complies with" the Ms-PL -- any
inclusion of code for which there is no patent grant could be
construed as infringement of the copyrights of Ms-PLed code's author.
OK, as a post-final comment, I will point out that my interpretation
of the terms and conditions of the Ms-PL licensing conflict with
assertions provided by Microsoft's source program director Jon
Rosenberg to the Open Source Initiative during its submission for
approval (see below). Though his claim MAY be true for the source
packages, I fail to see how Mr Rosenberg's assertion is supported with
regard to binary packages.
From the original OSI submission thread of the MS-PL license
* Can MS-PL code be redistributed in combination with other code
that is licensed under a different license?
As long as the original MS-PL licensed code is redistributed under
the MS-PL license, then the MS-PL places no restrictions on
combining MS-PL code with other code that is licensed under another
license. Licenses that prohibit the distribution of code under any
terms other than the terms of that license will not be compatible
with the MS-PL.