RelNetworks today released "Helix DNA" <https://www.helixcommunity.org>,
a lot of client software (which I extend I still have to look at) to the
public, under the "RealNetworks Pulib Source License"
<https://www.helixcommunity.org/content/rpsl>. They claim that it meets
the Open Source definition by the OSI.
Summary:
From what I read, this seems to be true. Looks like a mix between the
NPL and the GPL, with some gotchas:
* It is a strong copyleft license, preventing combination with
proprietary source, but done right (does not punish other Free
Software like the GPL does)
* It has the same problem as the MPL in that it grants no trandemark
and patent rights, not even those of the Licensor (as I
understood), worsend by the fact that the topic of the software is
very patent-loaden. There could well be a submarine patent by
RealNetworks.
* It places further restrictions on the use of trademarks, beyond
trademark law.
* It may grant my (the RPSL user/modificator) patents to others,
which is fine with me. Patents (as currently implemented) are evil
anyways.
Full text:
Usual disclaimers: I am not a lawyer. This is not legal advice. I merely
read the licence once and share what I found and think. Consider this
uneducated opinion.
The license sounds fair in large parts. It reminds me of the NPL in
spirit, but not language. Mitchell Baker, did you have a hand in there? :-)
(Term 2.1c) I *must* use the boilerplate in Exhibit A for source files,
even my own modifications. I find that pointless (I displike boiler
plated), and it's additionally badly worded, because it doesn't have
placeholdlers for code family and Licensor / Original Developer. It is
not clear what I should do, if I release my own, completely unrelated
code under the RPSL. Unlike the MPL, the license seems to be otherwise
mostly independant of RealNetworks and Helix. Some updating would do
good here for possible establishment of the RPSL as a general license
for strong copyleft.
(Term 3.b) I may grant special rights to the Licensor (Initial Developer
in MPL/NPL terms) to license my modifications under other terms, that's
why I said that it's similar to the NPL, not MPL.
(Term 4.x) The idea of the GPL is to prevent combination with
proprietary (non-Free Software / non-Open Source Software) code. This is
a fair idea to further Open Source software and freedom of users. Many
people share that idea, although I am not necessarily one of them.
However, I have an aversion against the GPL particular, because it does
not just exclude linking with proprietary software, but a lot of Free
Software as well, including MPL software like Mozilla. Basically only
the GPL itself, BSD-like licenses are compatible with the GPL. If you
don't believe me, please read the official FSF statements
<http://www.gnu.org/philosophy/license-list.html#GPLIncompatibleLicenses>.
In other words, you cannot combine Mozilla with GPL software without
explicit permission of the GPL software author (and distribute the
result). I think this is a very bad idea, because it punishes not only
proprietary software, but also Free Software. I have long said that the
GPL should decalre all Free Software, as defined by the FSF, to be
compatible with GPL software. I consider the lack of FSF doing that as
intentional to make the GPL the one and only relevant license in the
world, making the GPL a monopol, not even allowing even other Free
Software licenses (apart from BSD).
The RPSL does almost what I suggested for the GPL, it explicitly defines
a list of licenses deemed compatible with the RPSL. Software under these
licenses can be used to create a Derivative Work, but software under
other licenses cannot. The list of licenses, from a quick look, seems to
match the Open Source licenses. (It would IMHO have been better to just
refer to OSI's list, as that list is constantly changing, so there must
be some lack assumed for new Open Source licenses, but it's still much
better than GPL.) So, the RPSL prevents the use of RPSL code together
(directly or indirectly) with proprietary code, but not with Free
Software / Open Source code.
However, it sufferes from the same problem I mentioned above, the same
problem that the MPL sufferes from: The punishment by the GPL. Real is
nice enough to warn about that. If GPL software authors choose to
relieve the license terms, the code could be combined.
As such, I think the RPSL is a good license for people who don't want
their software to be used together with proprieatry software, but want
to support Free Software in general.
The restriction could be a problem, though, in the case of Helix: Say, I
take Mozilla and add a Real player plugin from Helix. That's fine. Now,
I want to add Sun Java. Boom. Not allowed. Mozilla, Helix, GPL Flash and
Java would, from what I understand, form together a Derivative Work, and
Helix cannot be in the same Derivative Work as proprietary software like
Sun Java. This is a problem, if I want to offer an all-around
hassle-free, complete browser package with as much Free Software as
possible. To my knowledge, there is no working (for applets) Java
implementation under Free Software licenses, esp. not non-GPL ones.
(Term 5.) As said above, patents are a danger here. Anyone know about
patents that RealNetworks holds which apply to their player? Or does
Real grant patent rights and I overlooked it? (IMO, the Open Source
definition should require that Open Source authors grant permission to
use their patents.)
(Term 5.1) I really dislike the last sentence in the trademark term. It
reads: "No Licensor Marks may be used to endorse or promote products
derived from the Original Code other than as permitted by the Licensor
Trademark Policy defined in Exhibit C."
Usually, trademark law merely disallows that I misrepresent my product
as <trademark>. So, I am not allowed to sell cars called "Mercedes",
because people would think that they are from the well-known and
respected company, which is wrong. I am, however, allowed to say that my
cars are "As good as Mercedes" (unless other laws prevent that -
competetive marketing) or that my cars have "the same airbag that is
used by Mercedes". Applying that to this case, I would generally be
allowed to say that my software is "compatible with RealPlayer" or
"supports JavaScript". (If I am allowed to say that my software *is*
JavaScript, if I used the original JavaScript reference implementation,
which, arguably, *really* *is* JavaScript, is a special case and to be
argued.)
However, the license imposes further restrictions on me, not found in
trademark law. I don't know what RealNetworks means with "endorse" and
"promote", and it's not defined in Exhibit C either, that merely
contains a broken link. From the sense of the word, though, I fear that
I am not allowed to say that my software "can play RealPlayer content".
I would find that pretty unfair, because it is a true statement of the
facts (I assume).
(Term 9.) "In no event shall Licensor's total liability to You for all
damages (other than as may be required by applicable law) under this
License exceed the amount of ten dollars ($10.00)." hahaha
(Term 11.1) Explicitly states that the license grant is perpetual,
unless I make certain actions (sue RealNetwors, violate license etc.). Nice.
(Term 12.) "You and Licensor hereby consent to the personal jurisdiction
of, and venue in, the state and federal courts within that District with
respect to this License." What does that mean, esp. the "personal"?
Corrections and suggestions welcome.
Ben Bucksch
Helix license list
<https://www.helixcommunity.org/2002/intro/mailinglists> bcced to
protect it from spamming, because the mozilla list is gated to Usenet.
- Re: My review of RealNetworks' RPSL Ben Bucksch
- Re: My review of RealNetworks' RPSL Daniel Veditz
- Re: My review of RealNetworks' RPSL Gervase Markham
