[development] Modules that integrate non-GPL PHP apps violate the GPL.
Thomas Barregren
thomas at webbredaktoren.se
Fri Aug 31 22:33:26 UTC 2007
ttw+drupal at cobbled.net skrev:
> On 31.08-17:52, Thomas Barregren wrote:
> [ ... ]
>
>>>> The issue original brought up by Jeff Eaton was about the fact that
>>>> it is not permissible to write modules that bridge software with a
>>>> license not compatible with GPL.
>>>>
> [ ... ]
>
>> You surprise me. GPL has been around for *18 years* and this reciprocity
>> (a.k.a. "copyleft") is the very heart of the license.
>>
> [ ... ]
>
>> Wrong. You are allowed to integrate GPL-application with any non-GPL
>> application.
>>
>
> i believe you contradict yourself. the issue is the extension of GPL
> to include interfacing software, as below
>
No, I don't contradict myself. :-)
The first snippet was meant to bring the discussion back to the original
issue: what regulations applies to a module that tries to bridge GPLed
code with non-GPLed code. I was a little careless in my choice of words.
I should have written "distribute" instead of "write". Thus, the correct
wording should have been: "The issue original brought up by Jeff Eaton
was about the fact that it is not permissible to *distribute* modules
that bridge software with a license not compatible with GPL."
The third snippet states a fact. You are allowed to integrate
GPL-application with any non-GPL application. I could perhaps have added
that this right doesn't imply a right to also distribute the resulting
derived work. But I didn't, because I thought it is a corollary of the
following paragraph in my answer (which you didn't quote).
I don't understand what the second snippet has to d with my alleged
contradiction.
> [ ... ]
>
>>>> * to study and modify the program.
>>>>
>>> --unless, of course, you want to bridge it with a non-GPL application,
>>> apparently.
>>>
>> Wrong. You are allowed to study and modify the program for any reason,
>> including for the purpose of bridging it with non-GPL application.
>>
> [ ... ]
>
>>>> So, to solve the problem that the licensing of Drupal currently force
>>>> us to "dumbing down" or "bypassing of established application
>>>> methodologies", I suggest that the Drupal licensing is supplemented
>>>> with an exception for module developers linking through hooks.
>>>>
>
> if you are allowed to study and modify the program for the purpose of
> bridging it with non-GPL code then there is no cross pollination of
> the licenses. this has traditionally been done (i.e. the use of
> GPL'd header files in compilation) but often brought under question
> by more aggressive GPL proponents.
>
You are allowed to study and modify the program as much as you want. No
GPL proponents, aggressive or not, say something else (if they know what
they are talking about).
But, to *distribute* the derived work, you must license the derived work
under GPL. If you cannot do that, for instance because you have
integrated code under a license not compatible with GPL, you are not
allowed to distribute it. But you may still use it.
> i think the original author is confused about the exact status of GPL,
> especially, in relation to something like hooks where, it would appear
> to me, there is no issue. essentially, i see no reason you could not
> interface an application using hooks and keep that application
> propiertory.
Generally, you cannot "interface an application using hooks and keep
that application propiertory" as explained here:
http://www.gnu.org/licenses/old-licenses/gpl-2.0-faq.html#MoneyGuzzlerInc
But, as this discussion is about, this can also pose a hindrance for
situations where it can seem reasonable to include software with license
not compatible with GPL.
For an example, imagine someone who has put in a lot of effort to write
code that integrates a popular but proprietary software with Drupal. So
far it is okay under GPL. But now he wants to share his effort with the
community. Since the integration code calls functions and share data
structures with both the proprietary software and Drupal, it is not
allowed.
Fortunately, there is a solution. As long as you don't revoke any rights
granted by GPL, you can add your own terms and conditions. This can be
used to allow integration with software under a license incompatible
with GPL. Two examples on this:
*
http://www.gnu.org/licenses/old-licenses/gpl-2.0-faq.html#GPLIncompatibleLibs
*
http://www.gnu.org/licenses/old-licenses/gpl-2.0-faq.html#LinkingOverControlledInterface
So, to solve the problem with bridging modules integrating 3rd party
integration,
I suggest that the Drupal licensing is supplemented with an
exception for module developers linking through hooks.
Best regards,
Thomas
More information about the development
mailing list