[development] Modules that integrate non-GPL PHP apps violate the GPL.
darrenoh at sidepotsinternational.com
Mon Sep 3 15:04:17 UTC 2007
Sometimes my first attempt to express my thoughts confuses people.
For those who are still confused, I hope this is clearer:
The viral nature of the GPL means that an app that uses Drupal is
automatically licensed under the GPL, whether or not the developer of
the app says so. That's exactly what we want, and it's the reason
Drupal is distributed under the GPL. This discussion has established
the illegality of attempting to circumvent the GPL. It would be
against the spirit of the GPL for a developer to write an app
designed to work only in the presence of Drupal, integrate it using a
module, and claim that the GPL applies only to the module. I see no
reason why we would want to enable developers to do this.
Based on the evidence presented in this discussion, it would not be
against either the spirit or the letter of the GPL for a developer to
distribute a module that integrates an existing third-party app that
does not use Drupal and to which the developer does not own the
rights. (Of course, the app can't be distributed with Drupal, but we
already prohibit third-party apps from being included in Drupal's
repository.) Therefore, it is incorrect to say that "if
debug_backtrace() can ever include functions from both Drupal and an
external program," the external program must be distributed under the
GPL. That test is applicable only if the developer also owns the
external program. And remember, if the external program uses Drupal,
it is already under the GPL.
I repeat, this discussion has been a case of right answer, wrong
question. Module developers can stop worrying and go back to making
On Sep 3, 2007, at 4:47 AM, Jeff Eaton wrote:
> On Sep 2, 2007, at 9:43 AM, Darren Oh wrote:
>> So far this whole discussion seems to be a case of ask the wrong
>> question, get the wrong answer. I have seen no evidence to suggest
>> that one cannot write some code that depends on non-free software,
>> release it under the GPL, and have the GPL apply to that code.
>> What would be against the spirit of the GPL would be to write code
>> that depends on GPL software and to release only a compatibility
>> layer under the GPL, keeping the main functionality non-free.
>> Since 1) the third-party apps that are being integrated do not
>> depend on Drupal and 2) the module authors do not own the rights
>> to the code in the third-party apps, this issue is irrelevant to
>> the situation under discussion.
> I used to take this position as well, but it's apparent after quite
> a bit of research that this is based on loose use of the phrase
> "depends on" to define the terms of the discussion. The GPL doesn't
> use those words. It doesn't recognize a difference between a piece
> of software that *uses* a library, and the library that *is used
> by* another program. It simply sees those two programs being
> combined to form a single work if they interoperate in certain ways.
> As such, if they do not share compatible licenses, they can't be
> distributed together. And if one component is clearly designed to
> work *only in the presence of the other component* it is an
> implicit violation of the GPL. (According to the FSF).
> That's their official interpretation.
More information about the development