GPL and Python modules.

Tim Churches tchur at
Tue Oct 26 03:25:22 CEST 2004

On Tue, 2004-10-26 at 11:12, Robert Kern wrote:
> Robert Kern wrote:
> > Tim Churches wrote:
> > 
> >> On Tue, 2004-10-26 at 09:29, Cliff Wells wrote:
> > 
> > 
> > [snip]
> > 
> >>> If this is true, I can't think of any way for a program to run on a
> >>> GPL'd system (such as Linux) without becoming GPL'd itself (Unless it
> >>> doesn't do any I/O or malloc any memory <wink>). 
> >>
> >>
> >>
> >> Yes. It seems to be them is some dissonance between these two positions:
> >>
> >> "It is OK for a closed-source application to allocate memory on a system
> >> running the GPLed Linux kernel"
> >>
> >> and
> >>
> >> "It is not OK for a GPL-incompatible Python application to import GPLed
> >> code into the runtime namespace it is using."
> >>
> >> I shudder to think what a judge and jury would make of such a
> >> distinction. 
> > 
> > 
> > I'm sure they would see the explicit exception made in the GPL:
> > 
> > """
> > However, as a special exception, the source code distributed need not 
> > include anything that is normally distributed (in either source or 
> > binary form) with the major components (compiler, kernel, and so on) of 
> > the operating system on which the executable runs, unless that component 
> > itself accompanies the executable.
> > """
> Okay, a not-so-retarded reply this time:
>  From COPYING in the Linux kernel distribution:
> """
>     NOTE! This copyright does *not* cover user programs that use kernel
>   services by normal system calls - this is merely considered normal use
>   of the kernel, and does *not* fall under the heading of "derived work".
>   Also note that the GPL below is copyrighted by the Free Software
>   Foundation, but the instance of code that it refers to (the Linux
>   kernel) is copyrighted by me and others who actually wrote it.
> """

OK, thanks. In other words, the above special exemption added to the
Linux kernel license gets around the problem of non-GPLed code running
on a GPLed kernel. I knew there had to be a clear answer to this. 

> Whether just using system calls is simply "normal use" for a GPLd OS 
> kernel or this is simply a special exception to the GPL for Linux only 
> is something that a court will have to decide. But such a suit would 
> have to be about some other GPL kernel, not Linux.

Looks like it is a special exception for the Linux kernel (or whatever
other Linux code is distributed with this COPYING file. Doesn't apply to
other GPLed code.

Personally I am now completely satisfied that Python code which imports
GPLed Python (or other) code must itself be distributed under the GPL or
a GPL-compatible license, and that there are no contradictions between
this requirement and the ability to run closed-source applications on
systems which use the Linux kernel.


Tim C

PGP/GnuPG Key 1024D/EAF993D0 available from keyservers everywhere
or at
Key fingerprint = 8C22 BF76 33BA B3B5 1D5B  EB37 7891 46A9 EAF9 93D0

More information about the Python-list mailing list