WordPress Creator GPL Says WP Template Must Be GPL'd 571
An anonymous reader writes "Matt Mullenweg (the creator of open source blog software WordPress), after review by various legal experts, is sticking to his guns that themes and plugins that 'extend' WordPress violate the GPL if they are not themselves distributed under the GPL. Matt has gone so far as to post this on Twitter. According to Matt, the premium template called Thesis should be under the GPL and the owner is not happy about it. WordPress is willing to sue the maker of Thesis theme for not following GPL licensing. The webmasters and Thesis owners are also confused with new development. Mark Jaquith wrote an excellent technical analysis of why WordPress themes inherit the GPL. This is why even if Thesis hadn't copy-and-pasted large swathes of code from WordPress (and GPL plugins) its PHP would still need to be under the GPL."
And this folks... (Score:5, Insightful)
...is why I don't do any work creating anything for WordPress. CopyFree [copyfree.org] is the way to go.
Re:And this folks... (Score:4, Insightful)
...is why lots of businesses won't touch open source software. It is stuff like this that gives ammunition to the FUD.
Re:And this folks... (Score:5, Insightful)
What FUD? GPL is pretty clear. The developer in this case was an idiot. If you don't want to be bound by any particular license's restrictions, open source or otherwise, don't use stuff licensed using it, or at the very least don't release it publicly.
Marketing (Score:2)
It may be clear to US, but the problem is people like this get the air time, and it does cause confusion and scares good people away. You never hear about the 1000's of people every day that DON'T have license issues, and rarely the outcome of things like this when the idiot at the helm loses the battle. It looks bad and leaves bad tastes in peoples mouths. Remember too, even if you are in the right, if you get sued it costs you $ and could bankrupt smaller companies so being right doesn't always mean didd
Re: (Score:3, Insightful)
>I like open source but the GPL is sounding more and more dangerous.
when even it's advocates can't seem to agree on what exactly it covers I'd be worried.
That's just not true. It's advocates are all in unison here that it covers works like this. It's on idiot in Florida who dissagrees and he is hardly an "advocate".
Re:And this folks... (Score:5, Interesting)
Even better, why don't Thesis just make a "templating engine" to handle the WP code that can then be released under GPL and then release the rest of the CSS, images, etc. under their own license? I can think of a couple of ways this could be accomplished and it would protect Thesis entirely.
From the WP "analysis" on one of the links in the summary...
****
"My JS/CSS/Images are 100% original. Do they have to be GPL?
No, they don't. If they aren't based on GPL'd JavaScript, CSS, or images, you are not forced to make them GPL. What you could do is offer a theme under a split license. The PHP would be under the GPL, but other static resources could be under some other license."
****
That said, I'm a bit concerned about how this "it's a part of WP" will be interpreted because doesn't that then mean that commercial apps like Zend Studio, etc. are ALSO required to comply with the GPL since they ostensibly hook into the various GPL'ed libraries, etc. ??
I mean I'm all for GPL but if everything that so much as touches GPL'ed software falls under that license, we're going to find fewer and fewer people willing to create commercial apps for GPL OS'es, etc..and while I may not use it, we definitely don't need to go shooting ourselves in the foot at this stage of the game.
Re:And this folks... (Score:4, Insightful)
How is dropping a text file in the same folder as wordpress creating something that is "part of WP"? This is exactly the kind of restrictive insanity that free software licenses were supposed to eliminate.
Re:And this folks... (Score:4, Informative)
How is dropping a text file in the same folder as wordpress creating something that is "part of WP"?
It doesn't. I can take a copy of this post and drop it in a WP folder and it's not affected in any way.
What causes it to be "part of WP" is the fact that the contents of the file in question literally become part of WP. From the last linked article:
There is a tendency to think that there are two things: WordPress, and the active theme. But they do not run separately. They run as one cohesive unit. They don't even run in a sequential order. WordPress starts up, WordPress tells the theme to run its functions and register its hooks and filters, then WordPress runs some queries, then WordPress calls the appropriate theme PHP file, and then the theme hooks into the queried WordPress data and uses WordPress functions to display it, and then WordPress shuts down and finishes the request. On that simple view, it looks like a multi-layered sandwich. But the integration is even more amalgamated than the sandwich analogy suggests.
Here is one important takeaway: themes interact with WordPress (and WordPress with themes) the exact same way that WordPress interacts with itself. Give that a second read, and then we'll digest.
Re: (Score:3, Informative)
How is dropping a text file in the same folder as wordpress creating something that is "part of WP"?
The "text file" contains PHP, including modified versions of code copied from Wordpress itself.
Re:And this folks... (Score:5, Insightful)
Absolutely not - otherwise, dropping a css file into a folder would also be creating a derivative work.
One of the problems is that the developers are taking the position that "because they don't work in separate processes, they're one program." This is absolutely false. Back in the single-process DOS (and pre-DOS) days, all programs "worked in the same process space", yet they were still copyrighted. Clearest case in point is a TSR (Terminate and Stay Resident - for you young'uns).
The argument that calling the APIs is not sufficient isolation is totally bogus. Calling an API does not make your code part of that code, any more than calling, say, the Windows API means that your program suddenly is merged with Windows and licensed by Microsoft.
When the guy argues in response to this question [wordpress.com]
That's just idiotic. Even a c API is "just functions".
This whole thing is dumb.
Is the php code linked in, in any way, even at runtime? No. They both get run by a separate process, the php interpreter.
I'm in favour of the GPL, but this is beyond stupid.
Re:And this folks... (Score:5, Insightful)
As a rule, internal interfaces are specific to HOW your implementation works, whereas external interfaces are more general to WHAT your software does. As such, internal interfaces are more subject to change. There are of course exceptions.
This kind of distinction is particularly important for applications that offer a plug-in or theming API.
Some cases are cut-and-dry:
If you modify GPL source code, your modification becomes GPL.
Most GPL libraries are pretty explicit that EVERYTHING is an internal interface and referencing it make a derivative work. Data is the only thing that doesn't.
For LGPL libraries, linking and calling pretty much any function exported by the original work fails to create a LGPL derivative work.
Other cases are tougher:
A plug-in may operate in the same process space as the main application, but may be considered a separate work if it only calls documented plug-in APIs.
Certain Linux kernel drivers are considered okay (graphics drivers) but others are considered too tightly tied to the original work.
Consider this: If a minor modification to the function call implementation (think remote function call) causes the answer on whether or not it's a derivative work to change, then the line wasn't clearly drawn.
This smells like one of those cases. If PHP scripts were called in a different process space, that would seem to change the result of the analysis, which means we're definitely in dangerous territory.
Without really understanding all the details, it sounds like the developers have made what was generally treated as a public API into an internal one. If it was clearly (READ: In the API documentation) stated as being an internal API that creates a derivative work, then you're okay. If, after the fact, you're saying "no, that API that we treated as public/external really wasn't" then you're in hot water. If this goes to court, you better believe that the documentation and the early mailing list/forum posts by the primary developers will be presented as evidence. If it looks like they EVER implied that you were free to use those without creating a derivative work, then the argument for NOT derivative has a pretty strong case.
NOTE: As was conceded in the comments of the analysis, simply running in the same PHP process without calling WordPress (WP) code isn't enough to create a derivative work. Also conceded in the main article was that using the WP RSS APIs (presumably outside PHP) also do not create a derivative work. In that sense, it seems pretty clear that he considers the RSS APIs to be external while the theming APIs are internal.
The question becomes: Was this ALWAYS clear? If not, you can't go changing the rules just because you don't like what somebody is doing with your work. If it was just ambiguous, then it's a toss up as to who wins. If you were lenient earlier and are now trying to tighten your grip saying that they were wrong all along then you are likely to lose, at least with a jury.
Consider, for comparison, a GPL C library, where there's pretty good agreement on what the rules are. The C library is released as an incomplete "part of a program" where a program that derives from that part must become GPL. It's generally fair game to make that a simple but useful program (think cat/grep) and release to code for that. Then that GPL program can be called by a more complicated program that then does not become GPL. It gets ambiguous but generally not allowed when you make a program that basically exposes the internal APIs without doing anything useful beyond exposing those APIs, and then write a separate non-G
Re: (Score:3, Insightful)
Interpreting scripts has nothing to do with linking. This is a major fail in understanding by the original author, and it's obvious from reading the debate that, like most web monkeys, he's not had extensive experience with real programming languages, where you have a compile and LINK.
Scripts do not "link" to each other at any time. To link has a very specific meaning. It binds a jump instruction to an address. Interpreters don't do that, because the php scripts are not object code.
In fact, if you have
Re: (Score:2)
If I write a module for the linux kernel it is noa derivative of the linux kernel. The binary it produces likely is, and once loaded into the kernel it is (but no one distributed the running kernel memory image...). But the source code? No way.
Are all my C programs derivatives of libc because they call libc functions and libc functions call into it?
If it includes code from WP, then that's a different story.
And what happens if someone clean room re implements the WP theme interface? Suddenly though the code
Re: (Score:3, Interesting)
On the other hand, you can hardly argue that your module would be of much use to anyone without a Linux kernel to run it in, and you must have referenced the kernel source, or documentation derived from it, during the implementation, since the APIs don't exist anywhere else.
A derivative work must be _substantially similar_ to a pre-existing work to be considered derivative. Interface compatibility, no matter how obscure the interface, no matter how much access, no matter how much documentation, does not in
Re: (Score:3, Interesting)
Obviously Ubuntu is a derivative of Debian; that much is clear... But is Internet Explorer a drivative of Windows (Taking aside the license for a minute)? It hooks into deep AP
That ain't the GPL's responsibility. (Score:5, Insightful)
Well, what is a derivative work? Guess what? The GPL itself doesn't define that term.
Of course it doesn't, since that term is defined by the legal code regarding copyright in your jurisdiction. Because the GPL is not anything else but a copyright license, it cannot apply to anything which is not a derivative work by the definition of the relevant legal code, because anything not a derivative work is not restricted by copyright law. So if the GPL did give a definition it would be irrelevant, and if it happened to differ from the legal definition at your current location in space-time, it would be wrong. How's an irrelevant and wrong definition going to reduce confusion, exactly?
But then you go and look at the legal code and see that, what do you know, the real definition of derivative work is vague. This is an issue that applies to all of copyright, and sparks many debates (and lawsuits), and has nothing specifically to do with the GPL. The lack of a clear definition is not something the GPL can fix.
It's trivially easy to comply with, but it's VERY hard to make a clear determination if the restrictions extend to you or not. So most people "just take the easy way out" and license GPL.
It's a fair point, that people license their own code GPL just because it's the only way to be sure they aren't violating the GPL of some other code they are using.
However the same issue of confusion applies in any situation where it matters whether you're creating a derivative work or not. With proprietary software, that means people "take the easy way out" and avoid doing anything with the software that could possibly be derivative. The only time the issue doesn't matter is when the license is so liberal it doesn't matter if your work is derivative or not because you can just repackage it with whatever license you want anyway.
And while BSD-style licenses are great for those who want to give away code, I don't think it's worth abandoning the advantages of Copyleft just to avoid the stick issue of what exactly constitutes a derivative work.
Re: (Score:3, Informative)
What FUD? GPL is pretty clear.
How (and even if) GPL applies to dynamic linking - which, in this case, what it really boils down to - is very far from clear. This is especially true for languages where the actual "linking" happens on user side, not on developer side - i.e. anything using a bytecode VM (JIT or no JIT) or a plain interpreter. Such as, well, PHP.
Yes, the FSF has a well-defined and widely publicized position on this issue, but that is separate from the text of the license as such, and it is not certain if the text really mea
Re:And this folks... (Score:4, Informative)
In this particular case (as apparently there is large cut and paste of code), this seems to be a pretty clear issue; OTOH, the more expansive interpretations often offered of the GPL (including the interpretation that would hold that all templates, etc., for a GPL blogging platform needing to be GPL) is arguably untenable, as many of the things which proponents of this view would demand that the GPL must apply to are not what would otherwise be considered derivative works, and consequently require no license to produce in the first place.
Re:And this folks... (Score:4, Insightful)
On APIs
WordPress has many external APIs that spit out data. Interacting with these APIs does not put your code on the same level as core WordPress code. These APIs include Atom, RSS, AtomPub, and XML-RPC. Something that interacts with these APIs sits entirely outside of WordPress. Google Reader doesn’t become part of WordPress by accessing your feed, and MarsEdit doesn’t become part of WordPress when you use it to publish a post on your WordPress blog. These are separate applications, running separately, on separate codebases. All they are doing is communicating. Applications that interact with WordPress this way are separate works, and the author can license them in any way they have authority to do so.
This is a wholly different model of interaction than with themes. Themes are not standalone applications. They are scripts that become part of WordPress itself, and interact with WordPress on the same level that WordPress interacts with itself.
For the sake of argument let's pretend WP was a commercial product. Do you think you'd be able to create a theme for it and release it and sell it and not have it be considered a derivative work?
Re: (Score:3, Informative)
Well, except that most of the "definition" of "derivative works" that is contentious isn't in the GPL, but in a section qualified with "we believe" in the FSF's FAQ concer
Re: (Score:3, Insightful)
GPL is irrelevant. A license does not have the capacity to define what a derived work is. You've got your dependency hierarchy backwards.
Now, I'm not saying FSF's (the GPL's author) legal opinions are irrelevant and can lightly be blown off, however wrong they happen to be. ;-) And I applaud their efforts to try to change public opinion by attempting to write a license that redefines the law which causes people to become bound by that license. Bootstrapping attempts can be wonderful
Re: (Score:2)
I guess my confusion is in how themes in WordPress are different from plugins in another application. Most of this comes from a lack of understanding of how WordPress works.
If I made a competitor to photoshop under the GPL and defined a plugin interface similar to but distinct from the actual photoshop plugin interface, would plugins written for that interface have to be GPL? If not, why are these themes any different?
If plugins would be required to be GPL'd I think that could and should be explicitly sp
Re:And this folks... (Score:4, Insightful)
It is often pushed as such though (Score:2)
Not only us the GPL an extremely popular license, but many OSS heads push it as the One True Way(tm). Other licenses aren't really open because they don't FORCE people to be open with their products. They sell the GPL as being synonymous with OSS.
While that isn't correct, you have to accept public perception and in particular that with companies, it is perception of non-technical people. If there's a lot of crap going around with the GPL being the king of OSS and people getting hammered for not opening any
Re: (Score:2)
Re: (Score:2)
Re:And this folks... (Score:5, Insightful)
If that's why, then they're idiots. The WordPress guys are not talking about their license or even WordPress itself; they are issuing an opinion about what Congress and the court's inconveniently undefined implied definition of derived work is. Their opinion would apply just as well to proprietary software as it does to Free software. If you write a Microsoft Windows program that calls Windows and is also called by Windows in the same way that Windows calls itself, like say, an installable filesystem or a device driver or perhaps even an MSIE plugin, then these guys would say that your program is a derived work of Microsoft's product. This flavor of FUD, much like software patents, is a threat to all software, not just Free software.
BTW, if you really want to fuck around with people who have this perverse view of what a derived work is, write a new system that is compatible with WordPress plugins. Then all WP plugins will automagically and retroactively become derived works of your program in addition to WordPress itself. License your program in a way that is incompatible with GPL and then you'll end up with a beautiful paradox. Their heads will explode, we can hose the mess away, and all will be well again.
Re: (Score:3, Insightful)
Then all WP plugins will automagically and retroactively become derived works of your program in addition to WordPress itself.
That isn't how copyright law works. Copyright cares about the history of how the particular bits came into existence.
Re: (Score:2)
Re: (Score:2)
You say that, but if the software is being distributed internally within the company any employee receiving the code will have the right to the source code. They will also have the right to keep the source code once they leave the company, and also the right to distribute it.
Re: (Score:2)
... just like the software that was originally modified and received for free under the same terms.
Why should anyone else get to hide their modifications to free software when they didn't have to pay for the original software itself? There's a huge cost savings in leveraging existing code, but you don't get to turn that into magical profits without working out a new license arrangement with the original author.
See MySQL, Zope, Ogre3D and others for excellent examples.
Re: (Score:2, Troll)
wrong. The company is a single entity.
The employee is part of that company.
So no, it isn't distribution.
Source code does not have to be shared.
The employee does not have the right to take it with him after leaving the company.
Re: (Score:3, Interesting)
Under GPLv2, you would have been correct, as the term "distribute" has specific meaning in copyright law, a definition that would generally exclude moving copies of copyrighted material around within a company (so long as you do not give it to contractors or other companies working with you, IIRC, but my memory of those aspects of copyright law are kind of vague, so take that with a grain of salt).
The problem is that the term "distribution" isn't the term used by the GPLv3. The GPLv3 uses the term "propaga
Re: (Score:2)
Will the company distribute this software immediately?
That is a fairly simple question to answer.
Will the company ever want to distribute this software?
That is another matter entirely.
Re: (Score:2)
It is not that simple though. If you say 'proprietary software' to most people, they think think of closed-source software that is sold. But there is also in-house custom software, which under the GPL is legal (hence your distribution question). The problem arises when your business relationships require you to supply that in-house software to a third party, such as a vendor or contractor. This relationship may not even have existed until years after your 'internal' software was written. Under the GPL
Re: (Score:2)
What gotcha?
You distribute something under a license, you obey that license. Open source or not is completely irrelevant.
Re: (Score:2)
He quite clearly said his company AVOIDS open source, and instead pays HIM to re-invent things instead of using open source. Quite the opposite of your 'translation'.
Re: (Score:3)
Translation: Profit is evil.
Re: (Score:2)
Never said that. Profiting by adding to software with a GPL or GPL-like license and then trying to sell that mix of proprietary and GPLed code, directly contravening the licensing terms, is evil.
Re: (Score:2, Troll)
Not to come off as a troll (too late?), but it's interesting to see that kind of post on a site that consistently takes an anti-copyright, pro-piracy stance. In piracy articles, other people's work is free to trade. In GPL articles, other people's work suddenly should be protected.
In reality, without copyright, the GPL would have no power, because it's a copyright license! It seems that implication is lost on many people who take a strong anti-copyright stance in the comments for some articles and a pro-GPL
Re:And this folks... (Score:4, Insightful)
In piracy articles, other people's work is free to trade. In GPL articles, other people's work suddenly should be protected.
There is no conflict, both are done to maximize the users freedom.
In reality, without copyright, the GPL would have no power, because it's a copyright license!
And that would be quite fine, as it would allows the reuse and recycling of other peoples work. It would however get a little messy, as reverse engineering and decompilation might often be needed. In practice however most people don't argue the abandonment of all copyright anyway, just a drastic shortening of it and extended fair use.
Implications for plugins (Score:3, Insightful)
Given that loads of major software companies have released plugins for WordPress, including payment gateways, social networking plugins, twitter plugins, etc ... doesn't this expose a huge amount of proprietary code to potential (and possibly unintended) open-sourcing?
Re:Implications for plugins (Score:5, Insightful)
No. It exposes a huge amount of authors of proprietary code to a copyright infringement lawsuit. How they settle this is up to them, but they can't be forced to open their code. In any case, they'll get off a lot easier than if they had misappropriated proprietary code.
Re: (Score:2)
All they have to do is not use GPL code if they don't want to follow the GPL. They can always write the other code themselves for a much larger than free cost.
Re: (Score:2, Interesting)
Using misappropriated proprietary code means that you have to turn over all income from said product plus since you knew it was proprietary damages are tripled so you still owe more. Most people will forgive past violations with GPL as long as you come into compliance or stop distributing said item. How is it easier if they use proprietary code?
Re: (Score:2)
I said, "They'll get off a lot easier than if they had misappropriated proprietary code."
Not, "They'd have gotten off a lot easier if they had misappropriated proprietary code."
Re:Implications for plugins (Score:5, Informative)
It really doesn't, actually. The only time that a company would have a problem with this is when they distribute their plugin or theme. Any company which makes a WP template or theme is absolutely not required to open source it unless they distribute it. This means, obviously, that the majority of company-specific plugins and themes are not going to need to be opensourced.
The only companies which stand to be hurt by this are the ones which have a business model of making wordpress plugins/themes and selling them. Even then, they are not required to stop doing so. The requirement is just to license their software under the GPL and provide source if and only if someone requests it.
People act like the GPL will kill all software business as we know it, but those who do so clearly haven't even read the license.
Make a parsing plugin (Score:2)
Good point. The market will learn to adapt to this I reckon.
If someone makes a plugin (that is GPLed) that reads another form of file (which has nothing to do with the original Wordpress codebase) and is a *true* template language which uses SUBSTITUTIONS like {post_title} and {post_body} rather than get_post_body();
currently templates are PHP coded, they should not. It's bad design to begin with and quite obvious why it inherits the GPL.
Surely this new template engine would not be infected by the GPL as th
It comes form scope creep (Score:4, Interesting)
The idea of the GPL, at least the original idea, seemed to be that if you modified the code of a project and distributed that modified version, you also had to distribute the code. Ok, fair enough and easy enough to understand. So Linksys could go and use Linux on their routers, and they have to release the mods to Linux they make, but not any of the software they run on it.
However then you get things like this. A theme for something they now say has to be GPL. Not a new version of the software, a theme that adds in to it. Ummm ok. What about plugins, do those also have to be opened up? This leads to other worries, will GPL authors try and say if you use a GPL'd software to create something (like a picture with GIMP) that too has to be opened up?
That is some of the "viral" nature MS was bitching about. You GPL something and then you want to say everything it touches has to be GPL'd too.
I think people get a little miffed when they find that using GPL software got them more than they bargained for.
Re:It comes form scope creep (Score:4, Interesting)
The issue here is the way that PHP and Javascript, in particular, are being used by these open source projects. Where the dividing line between data and code is unclear, or possibly doesn't meaningfully exist at all (JSON for instance), it doesn't take a rocket scientist to figure out that themes that are as much code as they are presentation are probably going to end up being swallowed into GPL.
The solution is simple. Find a platform that isn't GPL, or write your own.
Re:It comes form scope creep (Score:4, Interesting)
In Wordpress the templates are PHP calls to functions, so it is basically a contribution to the codebase in itself. It's not a templating language what you would expect.
Not that I understand GPL or Wordpress but that sounds like the logic.
I honestly don't see how CSS could become GPLed though.
Re: (Score:2)
you could say the same thing about software that calls functions in a GPL library, does software that dynamically links against a GPL library have to be GPL? Its calling functions in defined in GPL code.
Re:It comes form scope creep (Score:4, Insightful)
you could say the same thing about software that calls functions in a GPL library, does software that dynamically links against a GPL library have to be GPL? Its calling functions in defined in GPL code.
Yes. Please read up on dynamic linking and the GPL and LGPL. The questions your asking have been asked, answered, and discussed by many people every day for the past twenty years. Try Google, it's very useful.
Re: (Score:2)
Themes in Wordpress aren't plugins like the image set you use in say Gtk theming, but actual modifications to the source at some level.
This isn't scary, it isn't unique or strange, its just a basic understanding of what you're doing. If you're modifying someone's GPL'd code, your diffs are under the GPL.
Re: (Score:2)
It is strange in that the only difference between a Wordpress theme's relation to Wordpress and an arbitrary Linux-specialized program's relation to Linux hinges on a few implementation details like address space sharing. Seems to me if you stick to a published interface, you are not modifying the underlying program, even if your code gets pulled into the same address space.
It's not bad, necessarily, but the common wording of the license is really unclear in this respect. The license itself is causing FUD.
Re: (Score:3, Insightful)
The "It's infectious" part makes him a troll or a moron.
Details, details (Score:5, Funny)
"People Who Care About Details Trust Thesis". -- http://diythemes.com/ [diythemes.com]
Presumably the licencing of the platform you're developing for could be considered a "detail"
data vs code (Score:2, Interesting)
Just goes to show that data vs code is a false dichotomy:
The programming language and data description language used should not affect where the split is.
This is even more obviously worse if you for example transfer your data as JSON, so that the data interchange language is the same as the programming language.
Re: (Score:2)
Is it Data vs. Code or Library vs. Executable
As a rule of thumb I always assumed that any Executable using a Library under the GPL was bound to the GPL, and that is the reason for the existence of the LGPL.
Are they now saying that any Executable under the GPL, makes all Libraries written for it bound to the GPL?
That doesn't make any sense.
You need to release your patches that make the Executable run the library (include functions and other changes to Wordpress), but the library should be off limits, it's no
Hmm (Score:2)
Re: (Score:2)
Out of curiosity, why? One would assume that you already have the "source" of the theme, since there's no compiled code in there.
Re: (Score:2)
This [thethemefoundry.com] is the theme in question.
Regardless of how this GPL thing works out, it was money well spent. I could have slapped something similar together myself, but it would have taken me a while, so I'd much rather spend $50 and
Re: (Score:2)
I've seen this work in Taiwan quite recently: at a nightmarket there is a stand selling bootleg porn DVDs - nobody watches the stand, there
Re: (Score:2)
I don't buy it. (Score:4, Interesting)
IANAL, but I don't buy it.
The GPL is based on copyright.
If I sell a product that doesn't contain *any* of your copyrighted code (and API calls certainly can't be copyrighted), you have no basis to sue me for copyright.
Re: (Score:2, Informative)
FTFS:
Re: (Score:2)
One of the key phrases in the GPL is "derivative work". The GPL has a lot to do with describing derivative works and the rights which apply to them. The author of WordPress is arguing that themes are derivative works, and as such are covered by the GPL.
If I sell a product that doesn't contain *any* of your copyrighted code (and API calls certainly can't be copyrighted), you have no basis to sue me for copyright.
Who's suing over copyright? This looks like a license issue to me, not a copyright issue.
If themes are derivatives, then all C programs are (Score:3, Insightful)
How then can Wordpress say that its licensing is required?
Re: (Score:3, Interesting)
It's worse than that. If you RTFA, they make the claim that there are "external APIs" and "internal APIs", and using the former is perfectly fine and dandy, while using the latter makes your code a derived work. Since the classification is, effectively, arbitrary and subject to change at the whim of the author, this puts any software relying on any WordPress API at risk.
Re: (Score:2)
One of the key phrases in the GPL is "derivative work". The GPL has a lot to do with describing derivative works and the rights which apply to them.
Can you point at the place where GPL provides a clear definition of "derived work"?
You're right that this is essentially an issue of whether the template code is derived work or not, but that is far from clear. I've elaborated on this elsewhere [slashdot.org].
Re: (Score:2)
Can you point at the place where GPL provides a clear definition of "derived work"?
That's always been part of the problem. Sort of like determining whether including a Javascript file on a web page counts as distribution.
Re: (Score:3, Interesting)
GPL is much wider then just the code. GPL states that anything linked to it needs to be GPL. But in the case of PHP this is a bit fuzzy, when is it linked or not?
GPL is made for C programs running on something you own. The cases of interpreted code, and code running on a webserver hosting services are not covered in it. So I can customize wordpress, run it on my own server, and nobody has any right to get the source then. Except for myself.
Re:I don't buy it. (Score:5, Interesting)
Yes you can, the GPL only talks about distribution. The thing is the moron copied and pasted WP source code and then went ahead and charged for it. Besides that, PHP include and require makes the files part of it's own program and then compiles it - it becomes a single program. If you don't like that, use exec or system. It would be the same as releasing a GPL program written in C++ but then not releasing the header files under the GPL.
Re: (Score:2)
I disagree, my understanding is that:
GPL product ---> format ---> output
does not make the format GPL
It's only if
output --- GPL --- input
then the input is GPL.
In the sense of an OS language, the GPL product is reading the format and producing a result. It's not the other way round.
An open source image renderer does not make an image GPL
An open source browser does not make the (X)HTML(5) GPL
A OSS OS does not make the files you use GPL
Using a GPL library makes your product GPL
Making a plugin for a GPL pr
Re: (Score:2)
Anything except system libraries needed ... and some such other exceptions.
That's probably where PHP itself fits in.
As for interpreted languages, things are even fuzzier. An interpreted program calls another interpreted piece of code, does running in the same interpreter make them one piece of code? Using an API certainly does not in the case of system libraries, but I doubt WordPress qualifies as 'system library', unless you see the website as a system.
Re: (Score:2)
The GPL may state this (IIRC, it doesn't, the FSF's FAQ on the GPL, not the license text, says this), but even if it does, it doesn't matter if the think linking to the GPL code isn't a "derivative work" under copyright law (regardless of whether it would be under the terms of the license) since, if its not a derivative work under copyright law, you don't need a copyright license to produce and distribute it in the
Re: (Score:2)
As a logic puzzle, if I told you to insert "i=i+j;" on line 3832 of a Copyrighted source file, you'd be modifying source, not me. I'd be telling you how to do it, but not doing it myself. Would there be a Copyright violation if you distributed the changed source file? Sure. What if we all just told each other how to change it?
Welcome to diff format, and the legal issue. If I tell you how to change something and you do the changing, then you're bound by the GPL. If I never distribute my changes at all,
Re: (Score:2)
If I understand this, copyright is what allows them to control your use of their code. However, to be allowed to use the code and their copyright, you must agree to the license which may have terms not involving copyright.
Re: (Score:2)
The FSF's own interpretation of the consequences of the GPL text on linking clearly disagree with the "API calls certainly can't be copyrighted" concept.
Re:I don't buy it. (Score:4, Insightful)
This is like the GPL libraries. If your project uses a GPL product, does it become GPLed too (and you want distribute it)? Yes, it does. Why you should not use the LGPL for your library [gnu.org].
Essentially, you're using Wordpress as a library, which is GPL and not LGPL. It makes sense, it's just your (and my) perceptions of what constitute as data and code is blurred with templates. You'd think they'd be a data structure but they're actually code. It's the same in Joomla too: most templates I have read have to copy and paste lots of code from the default templates to get the same basic behaviour.
So they use Wordpress as a library and they then "become" GPL or they're violating.
Twitter (Score:5, Funny)
Matt has gone so far as to post this on Twitter
Offenders are really gonna get it now. This guy means business.
Re: (Score:2)
Once I got to that part of the summary I was thinking "Wow, this guy is totally hardcore"
Comment removed (Score:5, Informative)
Re: (Score:2)
If he's taken GPL code and put it in Thesis, game over. It's GPL. Period. Whatever he could have argued about API calls is now irrelevant.
At this point, the only thing I'm curious about is what would happen to WordPress users who start to distribute Thesis without his permission.
While GPLing his theme might be a remedy there is no guarantee that it will be a remedy of the courts choosing. Also even if he copied some code, an affirmative defense known as 'de minimus' has been established that allows for some amount of copying without it being infringement. Similarly if the code is purely functional in nature it can often also be exempt from copyright. Essentially you don't seem to know anything about what you are talking about. Of course I to don't have a law degree, but I at le
Re: (Score:2)
If he's taken GPL code and put it in Thesis, game over. It's GPL. Period.
He didn't take GPL code and put it in Thesis. He called a bunch of functions in his code that are exposed by WordPress. It's not the same thing, especially since we're talking about PHP scripts (which are interpreted), and therefore Thesis code can run against any other set of .php files which offers functions with the same names - it's not really tied to WordPress.
Re:He has no case (Score:5, Informative)
I apologize for posting incorrect information. Thesis does contain portions of GPL'd code directly copied from WordPress. So what you say is 100% true, regardless of the take on GPL vs dynamic linking and APIs. I somehow managed to read TFA without noticing that bit :( Also see this [ma.tt].
However, I still stand by my assertion that any other WordPress theme which did not directly copy WordPress code cannot be reasonably considered a derived work for copyright purposes (and therefore not subject to the GPL), contrary to what WordPress authors claim.
It's a pity that this case is a GPL violation so blatant that it will never get to the point of debating those (far more interesting) issues in court - in fact, I doubt there will even be a court.
Can someone clear up a misconception of mine? (Score:2)
I'm not a programmer (at least, not a good one), but I was under the impression that one of the major fine-lines in the GPL is how linking occurs: if you link like something is a library call, you're fine. But if things are compiled together, you fall under the purvey of the GPL.
How does the GPL deal with interpreted languages? If there isn't any cross-compiling that takes place, where does one piece of software end and another begin?
Re: (Score:3, Informative)
You're confusing LGPL and the GPL. The LGPL has a linking exception, the GPL does not. You cannot distribute code linking to GPL code without using a GPL compatible license. If you link to code distributed under the LGPL, you're fine. The only thing you need to distribute is the the actual library you linked to, if you made any changes, but not the rest of your codebase.
Wordpress is GPL, so linking to any of the Wordpress codebase requires distributing your code under the terms of the GPL. I don't see
GPL people make it clear in their FAQ (Score:2)
If the program dynamically links plug-ins, and they make function calls to each other and share data structures, we believe they form a single program, which must be treated as an extension of both the main program and the plug-ins. This means the plug-ins must be released under the GPL or a GPL-compatible free software license, and that the terms of the GPL must be followed when those plug-ins are distributed.
If I add a module to a GPL-covered program, do I have to use the GPL as the license for my module?
Re: (Score:2)
If the program dynamically links plug-ins, and they make function calls to each other and share data structures, we believe they form a single program
The key words here are "we believe." It is at least possible that a court might disagree.
Re: (Score:2, Informative)
Thanks for the traffic. I'll get my site back up. (Score:2, Informative)
Re: (Score:2)
So ... WordPress should use the PHP License? (Score:3, Insightful)
Check out the case law. (Score:2, Interesting)
Themes don't inherit the GPL. See the following article:
WordPress Themes, GPL, and Copyright Case Law
http://www.chipbennett.net/2010/07/wordpress-themes-gpl-and-copyright-case-law/
Just plain wrong (Score:2)
The key question here is whether a theme is a derivative work of Wordpress. If it is, then it needs to be licensed under the GPL. If not, then it doesn't.
Let's presume that the template itself is a derivative work -- what does that mean for other potential 'derivative works,' where one piece of software is intended to work in and be integrated with another piece of software? Think software plug-ins or loadable modules or executables using system libraries. Heck, doesn't it really mean that if one piece
How WordPress Works, and Why the Authors are Right (Score:3, Informative)
WordPress themes are simply PHP libraries that WordPress calls when rendering a page. The license status of Wordpress themes are very much dealt with in finality by the GPL, and there is absolutely no question that the PHP files must be licensed per the GPL.
From the GPL's narrative:
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License.
Does WP call the theme or does the theme call WP? (Score:3, Informative)
In the more general case, I think you could make a credible argument that WordPress is designed to look for and utilize external libraries (called "themes") and that just doing so should not make WordPress' license apply to that theme (or plugin). My reasoning there is that if you argue that WordPress incorporating a theme makes the WP license (GPL) apply to that theme, what prevents that theme's license from correspondingly "infecting" WordPress?
Jaquith misses the point (Score:4, Insightful)
His analysis is all about how the code works when someone takes a theme and loads it in WordPress. While accurate on the technical details, it completely misses the point. When someone runs a theme in WordPress, they have caused a derivative work of WordPress to be created. They've also caused a derivative work of the theme to be created. No one seriously questions this. However, the license of WordPress allows this, so there's no problem here.
The important question is whether or not a WordPress theme, AS DISTRIBUTED BY ITS AUTHOR, is a derivative work, and he fails to address this. The answer to that depends on whether or not the theme has incorporated (by copying, transforming, adapting, etc) any copyrightable elements of WordPress.
The particular theme in question did include such elements, and so has a problem. However, in general, you do not appear to have to include any copyrightable Wordpress elements in a theme, and so a theme does not inherently have to be GPL.
The majority of court cases that are relevant to this agree that writing code X to interface to code Y does NOT automatically make X a derivative work of Y. The FSF thinks that merely designing code to link with another piece of code makes the first a derivative work of the other, but there's no court cases that support that view, and better lawyers (such as Larry Rosen) than the FSF uses say that it doesn't automatically make a derivative work.
Re: (Score:2)
Nope, sorry. The claim of WordPress authors is that templates are derived works of a GPL v2 (only) codebase. That means that they must be under GPL v2, no other way.