Archive of UserLand's first discussion group, started October 5, 1998.

GPL compatibility

Author:Eric Kidd
Posted:9/8/2000; 7:02:08 PM
Topic:Guido and Richard
Msg #:21035 (In response to 20978)
Prev/Next:21034 / 21036

(A note: This post contains massive amounts of legal silliness. It attempts to explain the situation with Guido, RMS and CNRI.)

Dave writes:

After talking with Petreley today and hearing the story of KDE, I want to know whenever a developer is under pressure to do GPL, and I want to offer them support for resisting it.

There's very little pressure for developers to use the GPL. Stallman may ask, but he'll take "no" for an answer. Or at least I never had any trouble.

GPL Compatibility

But there's another, related issue. The GPL doesn't always play nicely with other open source licenses.

Let's say, for example, that you want to combine FooApp with BarApp. You're going to call the resulting program Foo+BarApp, and release it as open source.

FooApp is distributed under the GPL. BarApp is distributed under the Mozilla Public License. Can you combine the two applications into one?

Rules for Combining Applications

The GPL has a special rule for combing two applications into one.

The GPL says that if FooApp is GPL'd, and you combine it with BarApp, then Foo+BarApp must be GPL'd. This rule does not apply to BarApp, but only to the combined code.

This is what people usually mean when they call the GPL a "virus".

If BarApp is distributed under the MPL, you can't create Foo+BarApp. But if BarApp is distributed under the XFree86 license, you can create Foo+BarApp.

Python and GPL'd Software

Gnumeric is a user-friendly spreadsheet. It's released under the GPL, and it uses Python as a scripting language.

It's OK to combine Python 1.5 with Gnumeric, because the old Python license was very flexible.

But the Python 1.6 license is more complex. You may not be able to combine Python 1.6 with Gnumeric anymore.

What Guido Wants

Guido wants everybody to use Python. He supports open source developers, commercial developers, proprietary developers, GPL'd developers and just about every other kind of developer.

So Guido chose a very simple, inclusive license. Under the older license, both UserLand and the Gnumeric developers were welcome to use Python.

CNRI Owns Big Pieces of Python

But Guido's not the only person who has say over the Python license. He used to work for CNRI, and much of Python belongs to them, since they paid his salary.

After Guido left CNRI, they decided to change the Python license. The Python 1.6 license is still an open source license--but it may no longer be GPL compatible.

Guido, of course, wants to keep using a simple license. But he has to do whatever CNRI asks him to do, because they own his code.

Which Licenses are Compatible with the GPL?

The XFree86 license, the MIT X license, the newer BSD license and Guido's Python license are all compatible with the GPL.

The MPL, the NPL, the ZPL, the original BSD license, and the CNRI Python license are not compatible with GPL, or so Stallman's lawyers claim.

Since Stallman wrote the GPL, most people leave the final decision up to his lawyers.

How to Avoid Outages

If you want to share code with major open source projects, it helps to use a GPL-compatible license. You don't have to use the GPL itself, any other compatible license will work just fine.


There are responses to this message:

This page was archived on 6/13/2001; 4:56:35 PM.

© Copyright 1998-2001 UserLand Software, Inc.