WordPress and the GNU General Public License

Recent GNU GPL issues

During WordCamp Australia, as I mentioned in my post, one of my questions instigated a discussion about the GNU GPL and how themes relate to the WordPress license.

In the last couple of weeks since WordCamp there has been a bit of chatter on Twitter about it. Jeff Waugh agreed to write a post about it, still hoping to read that since (I think) he has a lot of experience with GNU licensing through the Linux community. WordPress.org removed non-GPL themes (or themes that linked to sites promoting premium themes, and spammy themes) from the repository and in response Alister Cameron wrote a post suggesting developers need to be more creative with business models while honouring the GPL (make sure you read the comments for clarification on “free”).

My interest in this topic

Since WordCamp I’ve been trying to read up on the GPL. I am particularly interested in this topic because I’m using Thesis, I’m part of the affiliate program and I provide support on the DIYthemes forum and through my blog. I was amazed when I first saw the Thesis theme: it’s options are great and I love the way it uses custom files and hooks to localise modifications. I am really happy with the way my blog is running right now and I feel like there might be some really cool opportunities ahead of me. So, if “premium” themes are incompatible with the GPL I want to know. If I am going to be involved in using, promoting and helping other people develop their sites with a premium theme, I will need to take a stance on this issue.

The facts

What I’ve managed to gather:

  • The GPL stipulates that software be free, meaning free to be modified and free to be redistributed in its unmodified or modified form.
  • Free software does not mean you can’t charge for it. You are welcome to charge for WordPress if you want, but you cannot prevent the buyer from changing it or giving it away.
  • Any work derived from GPL software that is distributed, must be done so under the GPL.
  • You are not obligated to make your modifications of GPL software public if you’re not distributing it.

What are derived works?

To be honest, I think the license is pretty clear and a lot of misunderstanding comes from not reading it properly. However, there is one thing that I’ve found totally unclear, and that is what constitutes a derived work in the context of WordPress.

I think it’s obvious that if you change core files of WordPress, it is a derivative, and if you redistribute that change or the whole modified core it must be GPL. So, are themes and plugins derivatives? Sadly, it pretty much depends on your interpretation and the vibe of the thing.

Some people automatically assume that something that doesn’t function without WordPress is a derived work (does that make every program that runs on Linux based operating systems derivatives?). Some people mustn’t think they are, or they wouldn’t build a business selling themes for which the code cannot be shared. Others don’t understand the license or don’t care about it.

The WordPress Hackers mailing list had a thread that suggested if you use WordPress PHP functions and interact with the core code in that way, then you’ve got a derived work, whereas you could sell images and CSS separately because they don’t interact with the code, just the output, which isn’t covered by the GPL (the bit about the output is my interpretation, without that reasoning the argument makes no sense to me). Alister Cameron has been saying a similar thing regarding business models for theme developers.

Vladimir Prelovac suggests some ways of circumventing the “problem” of GPL by avoiding interacting with WordPress functions. However, it feels like a lot of effort to find loopholes in the license. If you really don’t like the GPL that much, perhaps you should use a different platform.

Matt’s opinion

In a recent interview. It was obvious that Matt Mullenweg considers themes and plugins to be derivatives.

After I read the WordPress license I thought how good it would have been if they had specified what they consider to be derived works. Some programs specify that you can use their functionality without the product being a derived work. Matt addressed that in the interview saying,

There’s a tonne of things you could do, but if we wanted people to do that we would have made an exception in our license; just like The Free Software Foundation recommends making an exception for javascript, or something like that. There’d be a line in our license that says “Oh, by the way, you can do all these things.” It’s not our intention and even if you do find a way around it, it’s not something we want to promote on our website.

Regarding complaints that say WordPress is trying to control what people can say and what they can advertise on their sites:

That doesn’t mean you can’t disagree with WordPress, or anything like that, that’s actually the heart of how WordPress was developed. People disagreeing and fighting and arguing and debating and everything like that, we just don’t want to promote things that are sort of against the guidelines. We’re not one hundred percent consistent there yet… we need to take a sweeping look at pretty much everything on the site and say “Okay, lets really match the guidelines.”

My conclusions

Themes and plugins are considered derived works by lots of people, including Matt Mullenweg. WordPress.org won’t be pursuing action against premium theme makers, but they won’t be promoting non-GPL themes.

GPL is great for the community; it compels people to openness, which is awesome for users and most developers too. Some developers feel GPL makes it too hard to make money with WordPress, but I think there are a lot of ways to build a good business on WordPress even by releasing your theme and plugin source code. Those could include charging for services such as support and also customisation; I can tell you that there are a lot of people who would pay for customisation to their theme whether the theme was free or not, whether it’s easy to work with or not.

Due to the nature of themes and plugins you have to provide the source code for the user to use it. By licensing your code under GPL it allows people to use it how they like, but even if you try to add a license to your code that says you can’t distribute it and they do, what can you do? Not a whole damn lot. If people want to cheat you of the credit you deserve, they will, GPL or not.

There may yet be room to discuss what is actually a derived work. I am yet to see any descriptions of why themes and plugins are not derivatives from folks who don’t think they are. I don’t really want to make a final decision until I do. If you don’t think themes and plugins should be considered derived works and therefore under the GPL, pipe up! Your opinion is under-represented!

I totally support the move at WordPress.org to remove non-GPL themes from the repository, partly because I think it’s good that they promote the openness of the WordPress community, but mostly because WordPress.org can support whoever they want to. No doubt they could have communicated more effectively before creating a big fuss, but hey— hindsight is 20–20.

What do you think?

Reading List

Comments

  1. says

    kristarella, the themes that Matt removed this month were actually licensed under the GPL. Matt made this clear in the interview when he said:

    Rather than having anything in the theme that breached the theme directory guidelines, the sites they linked to…

    and went on to say he considered the themes to be advertising for sites or theme authors who sell themes. Matt also went on to say that the term, “premium themes” was insulting and they should be called proprietary.
    This, to me, is the crux of the issue. Matt ignores the fact that GPL themes can be sold (a price tag does not make a theme proprietary) and appears to believe that everything must be free, as in zero price tag. Selling a GPL program does not violate the GPL and is, in fact, encouraged by the Free Software Foundation.

    I certainly support Matt’s right to only allow GPL themes on the themes directory. I just don’t agree with his interpretation of the GPL. Allowing themes in the theme directory to have a link back to the theme developer’s site, then claiming they are breaching the “principles of open source” if the site links to or contains themes that are for sale seems very heavy-handed.

    The GPL FAQ’s mention web application templates (and considers these minor enough not to need to be copyleft) but it doesn’t mention HTML, CSS, or images. JavaScript that is included in a theme does not invoke its license on the theme.

    As for a point of view that WordPress themes are not derived from WordPress, consider this – can the theme stand alone as a separate work? In most cases, it can. Many themes are developed as static HTML files then have the WordPress loop and theme functions added. Many themes are ported to other platforms and still look and act exactly the same – the only difference being the output from the application that is rendered in the browser.

    Then, also consider the “Fair Use” copyright law. The GPL is simply a copyright license and the FSF FAQ’s say that Fair Use applies in those jurisdictions where it applies. (See: http://www.gnu.org/licenses/gp.....GPLFairUse). A theme consists of HTML + CSS + images and often includes JavaScript and AJAX. None of those interact with WordPress functions. A theme may also contain a functions.php file which may contain a lot of custom, original PHP code that does not derive from WordPress. Many themes would fall under the Fair Use rights even if a court was to determine that unmodified function calls such as “the_post” were derived from WordPress code.

    The other thing to consider is that a theme is not an application or program. It’s not even software. It does nothing except provide the means for user data to be displayed in a browser with the visual impact the designer wants to convey.

    The GPL was never designed to invoke the license on user data or on output. Copyright was never designed to make everything that touches a copyright work automatically come under the copyright provisions of the original work. If it did, then the inclusion of an image that was released under a Creative Commons license would make the theme Creative Commons, or the inclusion of a BSD-licensed JavaScript would make the theme licensed under BSD. This is simply not the case. It is up to the theme developer as to how they apply their copyright. If someone wants to license their theme under GPL they are encouraged to do so (but better take care that any JavaScript and images can be included under the license) but if they wish to license their work differently they are also entitled to do so.

    Ultimately, whether a theme is derivative or not is a matter for the courts. All theme designers should seek their own legal counsel and get guidance on this. As it happens, I have had legal advice and as a result my own copyright is what prevails, not the wishes of Matt or those who insist that the GPL applies. No court has ever said it does.

  2. says

    Lynne, thanks for your response!

    the themes that Matt removed this month were actually licensed under the GPL

    Yes, I might not have said that, but I did know that. I wasn’t really interested in rehashing the details in this post, but thanks for the clarification! It’s helpful.

    Matt also went on to say that the term, “premium themes” was insulting and they should be called proprietary.

    I actually agree with him on this point, I’ve never liked the term ‘premium themes’, some of them are crap and not really worthy of such a term. I think that has changed a bit with the advent of themes with admin options and more advanced features.

    Matt ignores the fact that GPL themes can be sold (a price tag does not make a theme proprietary) and appears to believe that everything must be free, as in zero price tag.

    I’m sure that Matt doesn’t think that. Until recently all premium themes (as far as I know) were not released under a GPL compatible license. I believe that Matt thinks themes and plugins are derivatives and that they should be “free” software, whether there is a price tag or not. So, until Brian Gardner’s new business model under Revolution2 and Justin Tadlock’s new move, most “premium” themes were proprietary as well. I have seen many of the licenses for non-GPL premium themes, so I could be wrong, I’m trying not to generalise too much here.

    Allowing themes in the theme directory to have a link back to the theme developer’s site, then claiming they are breaching the “principles of open source” if the site links to or contains themes that are for sale seems very heavy-handed.

    Yes and no. It does seem heavy handed, but I don’t think the essence of their exclusion is themes that are for sale. They need to be for sale and the users be told they cannot share the code. From the perspective of themes being derivatives I think it’s fair. If they’re not derivatives then it’s very heavy handed.

    The GPL FAQ’s mention web application templates (and considers these minor enough not to need to be copyleft) but it doesn’t mention HTML, CSS, or images. JavaScript that is included in a theme does not invoke its license on the theme.

    Thanks for pointing me to that application template question. It does say they’re minor… it’s also got that nice example of an exception, which is exactly what Matt was referring to when he said if we wanted people to do that we would have made an exception in our license.
    It also mentions plugins and suggests that at best, when there are function calls transferred, they are borderline. Seems like the more complicated themes get, the more function calls and interaction there will be and the fuzzier the line becomes.

    A theme consists of HTML + CSS + images and often includes JavaScript and AJAX. None of those interact with WordPress functions. A theme may also contain a functions.php file which may contain a lot of custom, original PHP code that does not derive from WordPress.
    Perhaps, but I think themes are heading in a direction where they will be much more integrated into WP functionality and making more complex calls.

    The GPL was never designed to invoke the license on user data or on output.

    Yep, that’s the only way that the CSS + images argument stands up.

    All theme designers should seek their own legal counsel and get guidance on this.

    Sound advice! Do you have your license posted somewhere on your site that I can look at?

    Thank you for your response. I’m glad to finally hear from a different perspective.

  3. says

    Sound advice! Do you have your license posted somewhere on your site that I can look at?

    No, sorry, I don’t have that information online.
    The timing of all this could not have been worse for me. I have been doing custom themes for WordPress for years and had only just decided to release some themes to the community. I was working on some themes that were designed to provide the same look and feel to both WordPress and a CMS, so users could have a site that seemed to be integrated. I was planning to extend the themes so they could also be used with BBPress and SMF for a completely integrated look. These were close to being released as GPL and I intended to submit the WordPress theme to the directory.

    However, my themes are all copyright to me and the free (as in price) themes contain my author URL in the source code. I don’t believe in adding visible links back and have never included them but I do believe that people need to know who developed the theme and who holds the copyright. Since my site is geared towards selling commercial services and contains fee-based themes, my work is now not eligible for inclusion in the themes directory.

    Until the dust settles on this debate and Matt makes an official statement so we all know where we are, I am not releasing my work. To be honest, its all left a sour taste in my mouth and I am now looking at other options, such as habari. My client base is not the hobbyist or personal blogger and the ongoing debates about the GPL are scaring clients away so a change in platform may be the way to go for me.

    If I change my mind and decide to release them I will make a statement about the license, and let you know.

  4. says

    I’m sorry to hear that Lynne. They sound like great themes. Integration of BBpress and BuddyPress and stuff like that is going to be great.

    You should shoot Matt an email and see what he thinks about your plan. He seemed to think that a lot of the themes that were GPL, but linked somewhere that all the other themes weren’t were just attempts to get free advertising. Obviously that’s not the case for everyone and they might make some case by case decisions. At least that was the impression I got from the interview.

  5. says

    I did think about that BUT I strongly believe that the power of open source lies in collaboration, with those involved able to share the same goals. For this to be successful within any open source project there needs to be clear communication. Everyone needs to be able to know what is expected and any rules and guidelines need to be clearly communicated.

    Emails to Matt and case by case decisions don’t help the wider community. Matt has been very active in commenting on blog posts but with those comments and the podcast, there has been inconsistency. There is still inconsistency on the theme directory itself actually and the same rules are not being applied to plugins (which are arguably more likely to be derivative than themes).

    Matt is aware of the calls for an official statement explaining the position he has taken and what theme contributors to the directory can and cannot do. I just hope that he puts something concrete up on wordpress.org soon. The sooner we can all get onto the same page the better.

  6. says

    A good discussion on a subject of considerable interest to me. I appreciate you sharing the following link via Twitter: http://www.linuxjournal.com/article/6366 … it’s a great write-up of a what a Derivative Work actually is. Makes me think Matt is stretching the definition of it too far, and that he is actually getting into restraining free trade (via his near monopoly status in the blogging world).

    I guess that, since I am a end-user of Thesis, and not a developer, I have no worries either way this shakes out. It is still of interest to me, though, because of my interest in open source software and free software (I think Matt does do a good job emphasizing what the Free of Free Software really means … the freedoms it fosters).

    Anyway, thanks for the discussion. Where are you at in your thinking on this now?

  7. says

    Hey Bruce,

    My thinking at the moment is that Matt is pushing the definition pretty far, further than it has been before. However, of all people, he and the other WP devs probably have the right to. Like he said, if they’d wanted to make concessions in the license, they would have.

    What I’ve heard from people (mostly in vague bits and pieces), who I know have had experience with free software and licensing before or consulted their lawyers, is that they don’t think themes should be derivatives. However, I’m yet to hear a solid “why” themes aren’t derivatives and among the people who say they are derivatives some people say it’s because they use WP functions and some people say “Well, if it doesn’t work without WordPress…” To be honest I think the latter is silly, there has to be some reasonable threshold for fair use, as Lynne said before. The functions thing may have some merit and the way themes are going in terms of complexity there will be more and more functional interaction that pushes them past the grey area I think they’re in now.

    If I were to create a theme right now it would be pretty complex and would interact heavily with WordPress. I would release it as GPL or a compatible license and find other ways to make money with it if I needed to. I guess because I would value the support of WordPress and the community. However, I’m not yet at the point where I will stop using or promoting Thesis. I’ve never been happier with the way my blog is running and I think there is still significant doubt in this area.

    I think what Laurence says in the article you linked to is a good point, If a GPL-covered program is designed to accept separately designed plugin programs, you don’t create a derivative work by merely running such a plugin under it, even if you have to look at the source code to learn how. WordPress was designed to run themes and plugins and until now they never specified that those things were derivatives and should be GPL.

    Folks are saying that we can’t really know until it’s tested in court. That is a sad state of affairs and I hope it’s not true.

  8. says

    Thanks for the updated thinking, kristarella. Like you, Thesis is working fine for me. My interest is that I like to see things done “the right way,” and, in this case, what is right is definitely debatable. I do think that if Matt were hit with a restraint of free trade lawsuit, he could have a difficult time winning it. But, it is all so iffy. Anyway, thanks for sharing your thinking.

  9. says

    If a theme is considered a “derivative work” under copyright law, then shouldn’t all themes for Windows, Mac OS X, and so on be bound by the same proprietary licenses of the respective OSes?

    That may be a simplistic view, but I believe it to be the valid one in this case.

    I want to respect Matt as a leader in the WP community — certainly, we as bloggers owe a helluva lot to him — but I believe his aversion to “premium” themes is more harming to the community than he thinks it is. Clearly, there is a huge market for premium themes (Thesis is evidence of that), and that market is growing all the time. What Automattic should do is allow any theme to be listed in the themes directory; premium themes could link to its purchase site, free themes to the (hosted?) download, similar to the Apple software store thing.

    The only problem that should exist with premium extensions — themes or plugins — is how they are dealt with by the automated installers within WP (2.7 for plugins, 2.8 for themes [hopefully]).

    Finally — and this will perhaps show my naïvety, but if a theme is required to be GPL (and/or “non-premium”) because it adds to WordPress, then what’s up with the premium WordPress.com features and so on? Are they not extensions of WordPress as well?

    Obviously, I’m not a lawyer, but it seems that precedent has been set regarding how themes can be licensed based on the OS theming mentioned earlier. If there was a legal fight to be won over the issue, I bet Microsoft would have brought the hammer down a while back… and I likely wouldn’t have had the super awesome “Star Trek” theme on my Win98 computer almost a decade ago.

  10. says

    As the person who broke the story I seem to have become far more embroiled in this mess than I could have hoped for! But over the holidays I’ve had a chance to keep quiet and have a good think about it all…

    We’ve done good business for a while now doing themes directly for clients. Most of the code never saw the light of day except in our internal projects. We decided we could release that code first in paid themes, and later pop them into GPL projects. This way we could invest a lot of time and money into solid, well tested themes with great functionality. Seemed the right way for us.

    We started out with just the one theme on the WordPress.org repository, to test the waters. Three days later, the mass purge took place. The theme was pure GPL, had a great new way of dealing with threaded comments, and took about a week to develop on top of prior work that was thrown in. Now, a week is quite a long time. In the UK, a good commercial developer working on php/css projects can expect to earn about £800 in that time. So at its lowest price, the theme cost us £800 to develop. We put it into the repository in good faith.

    To have it dragged out, kicking and screaming, without consultation or warning was what really fired me. Matt then suggested at times that the response from some premium theme developers was a little hurtful. Well, I’m not really sure what he expected. We’re not in the business of unconditional love.

    Curiously, the best business model for WordPress developers is to forget about contributing to the GPL entirely. Stick to corporate clients who need custom work, and for poorer clients just run a hosted WordPress MU based service from which your themes are available. That way your high quality code is protected, and you get to make plenty of money from something that’s relatively hard to reproduce. This is exactly the route that Automattic’s taken in creating wordpress.com, and there’s something to be taken from that.

    As a business you have to look very closely at how to make money both today, and in the future, whilst avoiding the risks and pitfalls such as legal action, key employee sickness, etc. Brian Gardner’s model isn’t, we believe, entirely sustainable, even if it’s playing to Matt’s tune.

    One key risk is the further integration of WordPress as a software package and the themes repository. If people feel that the only official source of themes is the repository, and that repository is highly restrictive in who it allows in, then we feel that this will be bad for our ability to offer themes to the community. Plugins can already be installed directly from the repository with 2.7, and I’m sure themes are next. Over a period of five years, say, new users of WordPress would almost certainly find themselves directed away from third party theme providers in any way, shape or form. If the WordPress.org community wants to freeze us out, then they can – and very effectively too. As Matt is their leader, and has his own commercial interests, it’s certainly unlikely that they’ll go against him at the moment.

    It could, in the long term, be damaging to the free WordPress we know and love, but good for the not so free WordPress.com that millions of people have started using instead of going through the pain of self-hosting.

    Time will tell, but we had a five year plan and it looks a little broken right now. How we’ll adapt it, we don’t know….

  11. says

    Rick — thanks for you comment. I really appreciate it.

    shouldn’t all themes for Windows, Mac OS X, and so on be bound by the same proprietary licenses of the respective OSes

    The same thought has crossed my mind, but the point of the GNU GPL license is to preserve the freedoms of the users. Where as whatever Windows is under protects Microsoft’s pocket and I doubt they care if developers give their time and work away for free.

    I believe his aversion to “premium” themes is more harming to the community than he thinks it is

    It’s hard to say what he’s thinking and what is good in the long term at this point. I think Matt wants to protect the community and not have the whole thing turn proprietary, but a lot of people are feeling a sense of rejection over this.

    what’s up with the premium WordPress.com features and so on

    Well, the GPL is all about distribution. If you distribute your software you need to make the source available, but if you don’t distribute it it doesn’t have to be licensed at all. Technically they don’t distribute the software on WordPress.com. So, David’s idea of setting up your own WPmu with your own themes is an interesting one.

    Thanks again!

  12. says

    David — Thank you for your comment as well.

    Matt then suggested at times that the response from some premium theme developers was a little hurtful. Well, I’m not really sure what he expected.

    Yes, a bit of forewarning probably wouldn’t have gone astray.

    Your business model idea is an interesting one. It does, sadly, have to sort of exclude the community side of WordPress. However, from a business perspective and in offering services to those seeking them it has potential.

    If people feel that the only official source of themes is the repository, and that repository is highly restrictive in who it allows in, then we feel that this will be bad for our ability to offer themes to the community.

    True. I wonder if there are enough WP veterans promoting themes that this won’t become the case. I haven’t had much to do with the repository, but it could very well be a first stop for newbies and they could be missing out.

    All the best with your future business directions.