Licensing way forward
hp at pobox.com
Thu Feb 28 10:01:25 PST 2008
To have it in the archives, I want to reiterate that from what I can
tell, the relicensing has always been due to confusion about GPL/AFL,
not an actual major problem.
To spell that out:
1. If an application is GPL, it uses LGPL libraries under GPL. It
also uses libdbus under GPL.
2. If an application is proprietary, it uses LGPL libraries under the
terms of LGPL, which require that you allow
relinking and so on. The app uses libdbus under AFL, which is an
You can even cut-and-paste libdbus code into a proprietary app,
AFL allows that.
3. Note that LGPL is in effect a dual license just as GPL/AFL is.
4. To my knowledge, concerns about the AFL were all concerns about
earlier versions than the one
libdbus uses. I have never heard an objection to the current version.
Remember, AFL 2.1 as we use is pretty much the X11 license, plus
that if you sue about a patent *that affects dbus*, and your
lawsuit *claims someone's
use of dbus infringes*, then you have to stop using dbus. Nobody
has any reasonable
objection here. You cannot use a patent to monopolize use of
dbus; that's the only
requirement. You can keep your patent for any other purpose, and
you can still
prevent use of dbus, you simply can't monopolize use of dbus by
using it yourself
while suing others.
There is _one_ case where GPL/AFL is materially different from LGPL,
and that is when an app is GPL + an exception for proprietary plugins
or similar. In that case, the app's exception must also cover the
extra patent clause in the AFL. However, I am pretty sure we're
talking about one or two apps where this comes up.
I still think X11 would be a better license choice. I think we should
take steps to document the relicensing of all except the CodeFactory
code; we should be sure future contributors give X11 permission; and
eventually we might either track down or rewrite the CF contributions.
However, I do encourage people to view the problem as "the current
licensing is somewhat confusing," which is true; but not exaggerate
the issue, because the current licensing (AFL) is pretty much an
X11-style license, other than an exceptionally reasonable patent
clause. The patent clause poses a problem, to my knowledge, *only*
because of GPL compatibility; and the dual-license with GPL means
there's no issue there with a straight GPL app. The only apps with a
problem are not GPL, but GPL+exception. In those cases, the app's
exception would have to permit AFL, because the app would not be using
libdbus under the GPL.
IANAL and the license text is obviously what has legal weight, not my
interpretation here. But I do not see a problem with the dbus
licensing other than for GPL+exception apps. AFL, again, _is_ the same
as the X11 license in effect, other than the absurdly reasonable
patent clause. The only problem I've seen identified with that patent
clause is incompatibility with GPL, and for most GPL apps, the GPL
dual-license gets us out of that problem.
More information about the dbus