RMS: The GNU GPL Is Here to Stay (O'ReillyNet)
Posted Sep 23, 2005 23:28 UTC (Fri) by
Duncan (guest, #6647)
In reply to:
RMS: The GNU GPL Is Here to Stay (O'ReillyNet) by arcticwolf
Parent article:
RMS: The GNU GPL Is Here to Stay (O'ReillyNet)
And what's worse, maybe, is that a clause
like this in the GPLv3 might make it incompatible with the GPLv2. IANAL,
of course, and neither am I a licensing guru, but... doesn't the GPLv2 say
that you may not place additional restrictions on your users when you
incorporate GPL'ed code into your project? It wouldn't be a problem with
most projects, probably, since most are licensed under the GPLv2 "or any
later version", so you could choose to use them under the GPLv3 instead,
but it's not true for *all* projects, and some high-profile ones, like the
Linux kernel, are licensed under the GPLv2 *only*. It seems to me that it
would be impossible to incorporate GPLv2 only-code into a GPLv3 project,
if the GPLv3 will indeed contain a clause like this.
As RMS says in the article, code licensed under the GPLv2 ONLY will by
definition be incompatible with the GPLv3, no matter what the GPLv3
contains, at least to the extent that if the code is contained within the
same files, offset comments would need to be applied (and maintained)
stating which code was the exception to the general file license. This is
part of the issue with v2 ONLY language and why the suggested language
uses the "or any later version" clause. That clause, as you mention,
means code can be automatically updated to the GPLv3 without issue,
because it's inherent in the license conditions.
Do note that the existing kernel code isn't all GPLv2 in any
case. Some code originates from BSD, in which case the original BSD code
can be relicensed too GPL3 just as it was relicensed to GPL2 (BSD permits
that). Other code was specifically contributed under the "or any later
version" clause, while other code has specific language turning over
copyrights to Linus, or specifically permitting him to exercise his
judgment in terms of license. Thus, it won't all be unconvertible.
Actually, much of the code either has known and still active contributors
or has the far more direct newer "signed off by" lines, in which case it
won't be an issue.
OTOH, the same security blanket that makes it infeasible for the likes
of Jeff Merkey (sp?) to offer to buy the kernel, because not all
copyright holders could be tracked down, also prevents conversion
in this case. Given that about a third of the kernel code has been
rewritten since 2.6.0 (estimate based on Andrew's claim earlier that about
a quarter had been at that point), with much of that code directly signed
off and therefore directly attributable, and the rest fairly easy to
retrieve from logs, and the known or easily traceable authors of much of
the remaining code, perhaps a quarter would initially be stuck GPLv2 only,
if the active kernel coders as a group decided to switch. However, even
without direct targeted effort, just rewriting as they came across it, the
remaining code would likely be mostly gone in a year, and with a bit of
targeting of the harder and more niche code, the rest could be gone,
either replaced, or in the case of non-critical code like some of the
several file systems, be yanked out entirely if necessary. That's a far
cry from immediate, but two years or even three wouldn't be that
extreme given the time other projects will be taking to do their own
conversion, and the complexity of the kernel.
Still, all that said, I can see a couple other possibilities happening
as well. One, the kernel already includes the Linux Kernel GPL Preamble,
a legally binding disclaimer specifically stating that the kernel's GPL
does NOT apply to userland code. Anything in the GPLv3 that proved
disagreeable to a suitable number of active kernel devs could be similarly
disclaimed, by section and paragraph, if necessary.
Two, it's possible, tho I wouldn't call it likely at this point, that
the GPLv3 will include a "menu" of several optional modules that can be
applied by the author as desired, much as the Creative Commons Licenses
do, only with a strong central core that they don't have. The core might
be very similar to the GPLv2, with optional patent and
software-as-a-service clause modules that an author can choose to claim or
disclaim as desired. (As noted above, even if this isn't the case with
the formal GPLv3, it can always be /made/ the case with exceptions similar
to the kernel license preamble already in place.)
Of course, these options do mean rather more license
proliferation, but if the modules were formalized, it would at least keep
the proliferation to some level of control. If disclaiming is left to the
individual cases, the situation could easily become far more complicated,
unless the GPLv3 gets the same level of support as the GPLv2 now has or
better, not a given by any means!
Duncan
(
Log in to post comments)