MySQL vs Joomla/Drupal/Wordpress re GPL requirements
ambassador at fourthworld.com
Thu Dec 19 15:57:25 EST 2013
This is more than a bit TL/DR, but those interested in GPL licensing may
find it interesting, and replies that can cite legal precedent or any
other authoritative source would be most welcome.
Here's the scenario:
Suppose I want to distribute my own proprietary server product, and
provide a component that interfaces with MySQL. I'm not distributing
MySQL itself, just my LiveCode scripts and the MySQL drivers included in
the LiveCode package; the user would be required to set up MySQL on
their own if they choose to use that data storage option.
Since I'm not distributing MySQL itself, it's all good, right?
We've talked this to death here a couple years ago, and some of us even
contacted MySQL's owners for their position, so this would seem a done
Well, in another corner of the GPL world I've stumbled across a storm of
controversy which raises questions about that common interpretation:
Like MySQL, Joomla is also licensed under the GPL, and for many years
their interpretation of the license was like that of the common
understanding with MySQL: as long as you're not distributing the core
system along with your proprietary work that relies on it, it's okay to
use any license you like for your work, even one that's incompatible
with the GPL.
However, a few years ago the Joomla team changed their interpretation of
The license itself didn't change - it was and still is GPL 2.0.
What changed is their *interpretation* of the license, so that they've
now joined the WordPress and Drupal teams in interpreting the GPL to
consider add-ons like themes and plugins as "derivative works" which
therefore inherit the GPL license requirement.
Even if you write completely original code, merely making API calls to
the Joomla, WordPress, or Drupal frameworks, those projects consider
such calls to constitute a "derivative work":
"There is some legal grey area regarding what is considered a
derivative work, but we feel strongly that plugins and themes
are derivative work and thus inherit the GPL license."
"If I write a module or theme, do I have to license it under the GPL?
Yes. Drupal modules and themes are a derivative work of Drupal. If
you distribute them, you must do so under the terms of the GPL
version 2 or later."
Obviously this is an issue in those communities since there are many
developers who sell proprietary add-ons for them, though interestingly I
don't believe any of those projects have asserted their copyright in
court against those developers.
With Joomla the problem was even more significant because they'd earlier
interpreted the GPL in a way that allowed proprietary add-ons, later
changing to consider them derivative works like WordPress and Drupal do,
leaving some developers in a lurch.
Arguments favoring those projects' interpretation of the GPL often point
to this section of the GPL FAQ:
What is the difference between “mere aggregation” and “combining two
modules into one program”?
You can read that and the rest of the FAQ there, but in brief that
section includes a few loosely-defined scenarios describing which types
of code interaction may be viewed as "mere aggregation" or "derivative
But the meat of it is:
What constitutes combining two parts into one program? This is a
legal question, which ultimately judges will decide.
So even the Free Software Foundation throws their hands up at the
daunting prospect of attempting to define when co-mingled code is "mere
This seems a wise decision on their part, because given the range of all
possible current and future ways code may interact at runtime, it would
be impractical to attempt any specific definition.
Most importantly, there are no such specific distinctions in the GPL itself:
As our own Dr. Hawkins, an attorney with IP experience, has noted on
this list earlier:
It's not the explicit intentions, it's the drafting: your time to
craft what you want when you write it; you don't get to add notions
or refinements later.
That seems a reasonable position; consider this scenario:
I distribute a software to you accompanied by a license. You read the
license, find its terms acceptable, and use the software. Later, my
friend Steve, who happens to be the one who wrote the license, makes a
blog post claiming that his intention with the license was that use of
any software governed by it requires a $50,000 fee in addition to any
other costs for the software.
Exercise for the reader: find a court that will allow me to collect
$50,000 from you under those terms not present in the actual license I
included with the work.
Given all this, it would seem at least one of the following is true:
a) The legal counsel for the Joomla, Drupal, and WordPress projects are
- or -
b) The common understanding that the GPL does not apply to proprietary
server products that directly use MySQL's APIs, but do not redistribute
MySQL itself, is wrong,
- or -
c) Both *may* be correct at some unknowable future time after a judge
has patiently and thoroughly defined the specific ways code can
co-mingle at runtime to distinguish between "derivative works" and "mere
aggregation", and happens to arrive at a set of definitions which favors
Is there a fourth option I've overlooked?
As far as I know, while the GPL has prevailed in a good many court
cases, this specific issue has never been tested in court.
And although Oracle once told me the same as they've told others, should
a judge ever find in favor of Joomla/Drupal/WordPress in a way that
Larry Ellison could use to make money, I'd wager he would.
Of course I'm not an attorney, and none of this should be misconstrued
as legal advice. I'm just a humble caveman developer; the ways of your
attorneys frighten and confuse me. :)
But speaking for myself only, until I can find clear legal precedent on
this, I'm erring on the conservative side, only interfacing with any
GPL-governed work within a server-side product via GPL-governed code.
Am I being too conservative? On what legal basis could I have complete
confidence in any other position?
LiveCode training and consulting: http://www.fourthworld.com
Webzine for LiveCode developers: http://www.LiveCodeJournal.com
Follow me on Twitter: http://twitter.com/FourthWorldSys
More information about the Use-livecode