Take the 2-minute tour ×
WordPress Development Stack Exchange is a question and answer site for WordPress developers and administrators. It's 100% free, no registration required.

I've been looking into using the Wordpress Repository for one of my larger plugins, the problem is that it's using a lot of third party software. Video players/Slide scripts/Jquery includes, some of which are commercial in nature.

My question is related to the content that differs from the GPL v2. Id like to include those into the plugin, since that would make it easier to use. If I get permission from the third party, is this possible? As an example flowplayer (GPL 3) and Longtail Video Player (Commercial).

Also will this supporting software be exempt from the GPL 2 license restriction?

share|improve this question
    
Thank you both for your answers, it made things a little clearer. Guess im back to coding pluggables then. –  Patriek Jan 14 '11 at 18:57
add comment

2 Answers

up vote 2 down vote accepted

License Compatibility

As a recent commenter pointed out on my site, it should be possible to distribute a plug-in that's not GPL so long as you don't distribute it with WordPress. However, the guys at WP.org have pointed out time and again that only GPL-compatible plug-ins must be compatible with version 2 of the GPL.

So this puts you between a rock and a hard place. Strictly speaking, you can't distribute commercially licensed software under the terms of the GPL ... so Longtail would be out in this case. However, you might be able to get permission from Flowplayer to incorporate it in a GPLv2 plug-in. Just make sure you ask and point this out clearly in the documentation.

Support

But remember, including 3rd party libraries doesn't require you to support them if the end user is using them outside your plug-in. And "support" is ambiguous anyway. The only support-related requirement is that, if you distribute compiled software, you provide a written offer (valid for 2 years) to provide the source code to anyone you gave the compiled binaries to. Since your plug-in is written in PHP, it's interpreted not compiled ... so you already provide the source code. (Meaning you're not obligated to do anything further).

Alternative

A potential alternative would be to make your plug-in "pluggable." Meaning it can use whatever video library or player the end user has available. Then you can load and use something like Longtail if it's available without having to distribute it. This just adds an extra requirement for the user to find, download, and install a separate player of their choice (I'd recommend listing several possibilities in your documentation).

Then you'd add a configuration section to your plug-in (somewhere in the admin screen) where the user enters the path of their video plug-in and tells you which one it is (so you can use the right API). This lifts the burden of licensing off your shoulders.

In Summary

Just remember these key points:

  • Your plug-in must be compatible with version 2 of the GPL, even if it's using some other license
  • Your only support requirement is to provide the source of your solution, which you do by default when you release it to the WP.org repository
  • If you incorporate a (non-free) third-party solution, you're limiting the rights of your users to edit, re-publish, and re-distribute your system ... though this isn't in the spirit of the GPL, there are some ways to do it
share|improve this answer
add comment

Official requirements say that code should be GPLv2-compatible. Note that actual page they link to is for GPL-compatible of unspecific version and includes GPLv3 as well. Quick search show some GPLv3 plugins in repository so that one should be fine.

Definite no on proprietary components, unless you convince developers to release or dual-license their code under compatible license.

The one way around that would be to make plugin download and install proprietary components during installation (with disclosure and such), but that is not a technique I see used often.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.