It's hard to make headway against the "leading brand" without showing exactly what sets you apart from them; what you do better.  I think that Habari needs and can provide many examples of how we've taking what everyone looks toward - probably most rightly - as the "standard" in blog software, and done something radically better.  This is one example that stands out firmly in my mind.  I am not the only person who has noticed that WordPress is released under the GNU General Public License.  In the license, it very plainly states:

You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.

The only conclusion is that if your theme executes functions that are provided by WordPress, then your theme is indelibly connected to WordPress, and must itself be made available under the same terms as WordPress. 

Of course, the howling cries of designers begin here.  "How can a theme I design be restricted by a license on some other software?" The answer is obvious.  Your theme doesn't run without that particular other software, and so to make legal use of the functions within that software you must abide by the terms of the license.  Abiding by the terms of the license means that if you release your theme, then your theme must also be GPL-licensed.  It's straightforward, simple.  The consequence of this is that when you sell your theme (which you are perfectly entitled to do even if it is GPL-licensed), then whoever buys it is granted permission to use it under that license.  This includes giving it away for free, or even selling it themselves!  So you had better charge a lot for that first theme download.  This bothers theme developers more than plugin developers, because it seems nonsensical that your graphic design should fall under this license when you're just using a few lines of GPL code.  But if you choose to include GPL calls in your theme, like the_title() or the_content(), then your whole theme becomes tainted by the GNU GPL, and you're stuck.  With plugins, the problem is even more obvious.  Without the calls to register WordPress hooks, you can't even create a working plugin for WordPress.  This is not an unfamilar situation even in other fields.  With video games, game manufacturers pay licensing fees to the console manufacturers before they're allowed to sell a product that runs on their systems.  If you want to write a game for the Wii, making use of its components, and release it legally, you must pay a fee to Nintendo.  Just like Nintendo applies a requirement to produce Wii games, WordPress (and any software that uses GPL) applies a requirement to supplementary modules like plugins or themes.  The requirement is not money, but simply that your module be released under the same terms as WordPress.  The GNU GPL FAQ says it pretty clearly (emphasis mine):

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.

Think this doesn't apply to WordPress?  Think maybe the words "dynamically link" don't bind?  Even Matt thinks they do. He's completely correct.  Another way this is evidenced as absolutely being true is that there are other open source licenses that do not similarly taint ancillary works.  And this is the one way I was talking about in which Habari slaughters WordPress.  Habari is released under the Apache Software License.  The ASL makes no such restrictions for released works.  In fact, it specifically says that the ASL does not apply to works that merely link to the original:

Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.

It's really the flavor of the licenses that needs to be taken into account.  Understanding what the aims of the two licenses are brings into the light why they differ so much.  The GPL was designed with the intent that free software should remain free; the intent that anyone who benefits from the use of that free software should also contribute their work back to the community of free software users.  It's a noble goal, growing the open source ecosystem.  You can read this into the FSF's almost Marxist propaganda.  Of course it's correct that not all software that is "open source" is free, but applying a license to your software that removes the freedom of developers to license their ancillary software (themes and plugins) as they see fit doesn't seem like it holds so high those ideals of freedom, does it?  The ASL seeks to apply a license that protects the original work and allows a vibrant ecosystem of both free and commercial interests to take part.  Just as free and open alternatives to pretty much any commercial software you can think of have arisen over the years, the ASL will allow the same behavior to build a thriving community for Habari users.  People have asked countless times why Habari is not GPL.  It limits what libraries we can include because including GPL code in Habari's core code would taint Habari and require that we release it under the GPL.  But we're insistent.  We want our themers to have the right to charge for their hard work.  We want a rich ecosystem of themes and plugins where market competition - not measured simply in money charged, but in who can make the best modules, free or not - dictates the flow of interest.  I find it very hard to believe that if a popular plugin or theme was sold for $50 we'd see no free look-alikes released within days.  This issue is crazy because there are hundreds of themes out there whose authors have slapped CC licenses on them or included stipulations that their affiliate links can't be removed.  The former is a failure to comply with the WordPress license and the latter is specifically what the GPL is meant to prevent!  So that's it.  Before you even get into the technical merits of the platforms, think about the license, especially if you're a theme developer.  Slapping a Creative Commons license on your theme will work just fine for Habari.  Doing it for WordPress is a violation of their license.


You hear that Owen, yeah that's the sound of the penny dropping (in my house at least), didn't even think of it that way. Sweet post, because I actually learnt something.

Ali B: users are not in violation, as they are not redistributing Wordpress. The GPL only restricts "copying, distribution and modification". Not use.

Owen: IANAL but it seems to me that the css and images of a Wordpress theme would *not* have to be licensed under the GPL. Neither the CSS nor the images are required for the theme to "function". Neither of them use any Wordpress functions and neither of them "use" anything from the theme, so aren't linked indirectly.

It seems perfectly acceptable to me to distribute your PHP files as GPL, but distribute your images and css under a different license.

Either way, Wordpress represents thousands of days of development time. It seems acceptable to me that if a designer can piggy back that work and create a completely custom blog in just a few hours then they owe something to the developers - the least being following their license.

Having said that, I've just noticed that the ASL is considered compatible with the GPL v3 by the FSF. Not sure how the GPL v3 is different in respect to artwork and themes.

"The former is a failure to comply with the WordPress license and the latter is specifically what the GPL is meant to prevent!"

So this basically means that both of authors *and* the users of these themes/plugins are already in violation of the GPL. That's scary.

John, the distinction between design and function is blurry with themes. Allowing for dual-licensed themes (one for the design and one for the code) is something I've tried to bring to light in the Habari community.

While it might be acceptable, I'm not sure how you could distribute a theme in the two parts you suggest - images and CSS separately from templates. If you could, then the licensing would be two-part, as you say. Although your images might be protected, your template components (essential to the overall theme) would still be GPL. Still, nobody distributes themes in this disjointed way.

Yes, WordPress and Habari both represent man-years of development time. It seems fair to contribute at least some of that design effort back to the community. But requiring the application of the GPL to everything produced strips developers of their freedoms, which seems like a contrary goal to the otherwise freedom-centric view of the GPL.

I'm not sure what makes GPLv3 is different in regard to compatibility with ASL, but just to clarify, WordPress is licensed with version 2 of the GPL, so the incompatibility is still present.

Some leaders of the Joomla! (GPLv2) project came to a conclusion similar to John's on templates: the PHP file falls under GPL, but the images and CSS do not. Since you're making completely separate HTTP calls for you images and CSS, there's no way that those could be dynamically linked to the GPL'ed PHP code.

Up until last year, the Joomla! community had a more liberal interpretation of the GPL that made it effectively behave as ASL or LGPL. I'm not going to rehash it any more than that; you can Google the rest.

I do think that having Habari under ASL is an advantage. The more plugins and themes that are available, the more popular the project will become. The ASL removes any doubt that commercial shops can license their extensions as they please. In the Joomla! community, many commercial extensions have encouraged open-source counterparts. These have thrived and even eclipsed the original commercial offerings. This kind of competition will be good for the project.

The PHP vs CSS+images might work, but typically the location of where you're going to put your attribution or attempt to programmatically enforce your copyright on your work is in the template; the PHP part.

Also, while I'm not familiar with the discussion that took place within the Joomla community for this issue, it seems that the template (which contains the PHP calls to WordPress that make the thing GPL-tainted in the first place) is also what includes the CSS. If WordPress' GPL taints the template, does not the template taint the CSS it includes, and by extension any image that is included? I think it's at least an argument one could reasonably make.

On the other parts of your comment, I agree. The ASL removes any doubt on the production of commercial themes and plugins. The competition between them will be good for the project.

@owen - actually the Joomla GPL decision on templates was that the graphics and CSS were not considered part of the PHP code, and that the PHP code was what was determined to be a derivative work. The images, CSS and javascript most certainly didn't require Joomla in order to function, as they could be embedded on any old web page.

So basically you can create a template, and the PHP code of course is GPL but the CSS and images (and javascript, if any) are licensed at the creator's discretion.

This determination was influenced by heavy research and consultation with the SFLC, who provides legal assistance to the project. With that said, I would believe that is a fairly safe position to take ;-)

And on a personal note, I am much more prone to prefer more liberal licenses so discussions like this are moot. I'm checking out Habari, as I'd never come across it before. WARNING: Spacemonkey is under the hood!

You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.

Read that carefully, especially the part in whole or in part contains or is derived from the Program or any part thereof.

A theme consists of the code and graphics and css and html. To comply with the GPL the "code" of the theme must be GPL. Now apply that clause to the GPL'ed "code" of the theme, and the graphics/css contained in that theme must therefore be GPL'ed too. Unless you release the graphics/css seperately from the "code".

To reiterate, the graphics of a theme might not rely on wordpress or joomla, but they rely on the theme, to function properly within the context of which they were designed; since the theme must be GPL, the graphics/css too, must be GPL.

I used to think GPL was going to cure hunger and be the solution for world peace... but the longer I live in the real world, the more frustrating GPL gets.

I like the idea... I agree with the values... but it can cause problems. Now, the bright side is that it causes fewer problems than it solves, but still... ASL++!! Viva Habari!


It has always been the FSF's position that dynamically linking applications to libraries creates a single work derived from both the library code and the application code. The GPL requires that all derivative works be licensed under the GPL, an effect which can be described as “hereditary.” So, if an application links to a library licensed under the GPL, the application too must be licensed under the GPL.

The FSF are the maintainers of the GPL, so if you want to comply with the spirit of the law in addition to your own interpretation(s) of the letter of the law, the above quote makes it pretty unambiguous.

I agree completely. Free software should stay free and if it was intended by the original author to be completely free. Licenses will always cause problems and does cause problems for developers, but they are there for a reason. The developers of wordpress put tons of work into their product and do deserve the credit they earned with it.

Matt has just pulled over 200 themes from the WP theme repo... so the issue is "in the news" again.

My take on it is here:

Owen, you've got a lot more brains on this GPL issue than me, and the more I read the more I think I may not understand it as well as I initially thought...

But there's my take anyway.

One thing Matt has got right: he says as little as he can. Brevity looks like wisdom... so far.


Even with GPL licence, some of my friends have made millions of dollars by selling Wordpress themes. You can see in themeforrest, many have sell premium wordpress themes.

What I see from themes selling is, people who buy the themes need the support that offered by the theme maker. They can choose to download same themes from other source, without pay, but they will no get any support and update. For most of people, this is worth more than money, because they use that wordpress theme in their site that will get them more money.

GPL is about freedom, not money. If you want to get money, make a terrific themes, and sell it with good price with good support.

Sorry, commenting on this post is disabled.