"Open Source Constitution"?

Chuck Swiger chuck at codefab.com
Sun Apr 10 00:38:45 UTC 2005


Bruce Perens wrote:
> Chuck Swiger wrote:
>> Also, which license are the nVidia and ATI drivers infringing?
> 
> The GPL license on the Linux kernel, for their driver. The GLX library 
> which they link into X does not - at least at first glance - appear to 
> be an infringing product.

If nVidia or ATI were to distribute a Linux kernel with their driver compiled 
in, I would agree with your position: they would be subject to the GPL because 
they would be redistributing GPL'ed code, and therefore be obligated to make 
the sources for their driver available.

However, assuming their drivers contain zero GPL'ed code, how could the GPL 
possibly apply to the code they wrote?

	----

Let's suppose I were to write a simple command line utility using the standard 
C getopt routines, under some license or other-- it doesn't matter which, the 
Fair License would do, or BSD, or whatever.

Someone submits a patch to me so that my program is willing to dynamicly load 
  GNU getopt and readline, if those libraries are available on a particular 
host.  If I accept that patch, does the code I wrote suddenly need to be under 
the LGPL?

The answer is no, and LGPL clause #5 supports this:

"5. A program that contains no derivative of any portion of the Library, but 
is designed to work with the Library by being compiled or linked with it, is 
called a "work that uses the Library". Such a work, in isolation, is not a 
derivative work of the Library, and therefore falls outside the scope of this 
License."

Of course, if I compile a binary using the GNU readline, and make that 
publicly available, I would be obligated to make the sources for GNU readline 
available at request per LGPL #6.  Although, if my binary was targetted to a 
platform which comes with GNU readline, #6b would likely apply and I wouldn't 
need to do anything special-- the binary I'd offer would contain zero GPL or 
LGPLed code, it would simply contain a dynamic reference to load GNU readline 
if that library was found.

Let's suppose, one fine day, that someone decides to release a new version of 
readline which was licensed under the GPL, not the LGPL.  Would I have to 
change the license of my code to be the GPL, just because someone runs my 
program against this new version of GNU readline?

Of course not.  If there was a conflict between my license and the GPL, the 
end result would be that nobody (not even me) could redistribute a binary 
containing my program and this new GPL-only readline, but I can still 
distribute my program in source or binary forms without GNU readline.  After 
all, the plain-jane version works by itself just fine, so there can be no 
question about my work being derivative of the GNU software it optionally 
links against.

	-----

My contention is that the drivers nVidia and ATI offer to the Linux community 
are in exactly the same boat as my last example.  Their code is under the 
terms of their license.  Those terms conflict with the GPL.  Therefore, 
nobody, not a Linux vendor, nor ATI or nVidia, can redistribute the 
combination of a Linux kernel and their proprietary drivers, due to GPL #7.

In the meantime, however, end-users are free to install Linux, and then 
install the nv or ATI drivers if they like, and get on with life.  I think 
this describes the current situation accurately, but I would be happy to 
consider anything I may have missed.

-- 
-Chuck




More information about the License-discuss mailing list