Dan recently linked to a post commenting on the ongiong discussion within the WP dev community (theme designers particularly) as to whether themes or plugins to WordPress automatically inherit the GPL license from WP as derivative works, and if so, what that means for people trying to make a living selling their themes.
Beagle has an interesting take on the subject, although I think his reasoning is a bit shaky (not interested in arguing that issue, though). I think it might be more interesting to consider the opposite side of the coin of his point, which is that it doesn’t particularly matter whether the GPL (and some of its restrictions, etc.) flows through to “premium” (dumb term) themes until someone starts acting as though it does.
In other words, the only opinion on whether the license and redistribution requirements inherntly apply to all WP themes is the opinion of a judge in a theoretical lawsuit which a theme seller would need to bring against someone who is redistributing their themes for free or for pay – either would be within their rights if the GPL applies.
It isn’t that Matt or other GPL advocates have to “force” the non-GPL-ers into complying with the GPL, but rather the non-GPL-ers who would need to attempt to stop the people who are acting as if the GPL applies.
Since this hasn’t happened yet, if I were a theme author, I would be exceedingly hesitant to build my business on the assumption of which way that ruling might fall. Basically, they’d just have to wait around for someone to try and redistribute their themes (which I’m sure is more likely to happen the more popular the theme gets) and then incur the significant costs (time and money) to try to bring that person into court and force them to stop, with no guarantee that the law is on their side.
Of course, if you go too far down this conversation, the “premium” theme authors will inevitably respond with some variation of “how do you expect us to make money then?”. I would submit that that’s a seperate issue, but one that I’m not terribly interested in and actually doesn’t have any bearing on the issue at hand anyway. No one has some sort of fundamental right to make money writing themes, so props to you if you can do it, but don’t try to use the potential inability to do so as an argument on this licensing issue – it isn’t relevant. The GPL doesn’t prohibit anyone from making money, but it doesn’t guarantee that they can either.
In case it isn’t clear yet, I lean towards the side of WP themes & plugins being inherently GPL’d because of the way they derive from WP itself. I’d really love to see this truly tested in court just to put an end to the ongoing discussion about it though.
And don’t even get me started on the alternative approaches I’ve heard some theme / plugin authors talking about. They generally fall into the “The theme/pluign is GPL, but I’m going to make money from it by…”
- “selling support” – Nightmare time sink. I’m highly skeptical that this is a viable option for most theme / plugin devs, just due to the large amount of time required to offer it and the low prices most people would be willing to pay.
- “selling updates / upgrades” – OK, you get the base package as GPL, but then you pay a subscription to get updates and upgrades. This falls apart under the same logic – if the plugin/theme is GPL because it is derived from WP, then the updates/upgrades are GPL because they derive from the GPL plugin/theme and can therefore be freely redistributed once obtained by one person.
- “selling services that are used by the GPL product” – This is the one I would think has the most promise. If you can distribute something that needs to communicate back to your server as a part of its core functionality (think Akismet), then you could theoretically charge for that service access, while keeping all your distributed code GPL. The main problem is that most plugins / themes have no legitimate need to call back to the server, and you need that dependency on a service that only your server must provide in order for this to work. It can’t be communicating with the server *only* for license-checking, since that checking code could then be ripped out and the plugin/theme could be redistributed again without it.