[development] Modules that integrate non-GPL PHP apps violate the GPL.

ttw+drupal at cobbled.net ttw+drupal at cobbled.net
Fri Sep 7 12:50:50 UTC 2007

On 07.09-12:35, Karoly Negyesi wrote:
[ ... ]
> > 
> > But if your program and the other program are linked, even if it is done 
> > only at runtime, and make function calls to each other and share data 
> > structures, your module is a derivative work of the other program as well.
> AAAAAAAAH! Finally somebody explained this whole situation clearly. 

i'm afraid this isn't possible.  this situation is unclear, period.

if you have a specific issue i suggest you reference the previous
poster's suggestions on getting around the GPL's problem areas or
talk to a lawyer.

the LGPL is not about using the API it is about distributing code or
binaries based upon that free code.  for example i could write an
photo gallery and use LGPL libraries, then package them up and sell
them as a product.  this would not be possible if they were GPL, you
cannot distribute that code as part of something that does not have
a compatible license.  if those libraries were GPL i could still use
them in my code but the person who installed my proprietry program
would be required to find and either build or install the GPL
libraries instead.  this is considered, by many, to be a loophole.

obviously, from the above the LGPL is not suitable for Drupal as it
would allow me to write a module to extend Drupal and then distribute
an entirely functioning product (which would be 90% stolen code) as
my own, charge for it, and avoid sharing my module with the community.
currently, nothing (that i know of) can stop me writing a module and
distributing it under any license i like but my users would need to
go to Drupal and get that product (where it would explain the
relevance and need for free software) seperately.

basically, if you wish to use free software to produce proprietry
solutions question your conscience first, do the best you can in your
sitation and double check the _specific_ decisions with community and
legal references.  i would suggest that, even if you are legally
covered, if a specific community clearly does not wish you to interface
their product with any proprietry code you must again ask your consience
if you are stealing.  but remember everyone has the same right of
ownership to code as you this is the fundamental action (and power)
of free code.

if you are on the other side (i.e. releasing code) and want to figure
out which license to use, guidance by the FSF around leveraging your
input to help propogate free code is, if your code is 'competing' with
widely available propietory code performing the same function, and,
there is reasonable likely hood that allowing it to be used in non-free
software will increase it's distribution and use then use the LGPL
(simple example would be the code produced by a complier-compiler like
yacc).  in any other circumstance use the GPL.  i.e. the LGPL will
never be suitable for a Drupal module (except, perhaps, in legal
dance where developers need to interface with another incompatible
license ... of course, we all want you to fight for free software
first in this situation, but you can't win them all :-).

as you can tell from the complicated nature of this discussion this
is not clear cut or defined.  many do not want their code to be used
at all unless it is propogating their notions of freedom or notions
of freedom they deem compatible with their own.  this is, quite
obviously, contrary to the notion of freedom but unfortunately a
popular 'free' political doctrine.  it's understandable, people are
basically using free code and products and then basically,
re-branding it and selling it; which is pretty despicable practice.
but that is freedom for you, we have people using the freedom of
speech to say pretty despicable things too.

More information about the development mailing list