GPL License for Plugins?

Added by harry grabner about 5 years ago

Hi!

I've searched the redmine website but i could not find the following information:
It is necessary to distribute redmine plugins under the GPL License?
Is it necessary to distribute redmine plugins at all?

thanks in advance for your answers!

harry

(I've already posted this in the open discussion Forum, but i did not get any replies.
So I decided to "cross post" this one to the Development forum.)

Replies (14)

RE: GPL License for Plugins? - Added by Maxim Nikolaevich over 4 years ago

harry grabner wrote:

It is necessary to distribute redmine plugins under the GPL License?

As i understand GPL licence - answer is yes. Cause redmine and plugins used one space. It similar like wordpress or joomla plugins
But some guys ignore this requirements of GPL example

Is it necessary to distribute redmine plugins at all?

No. Gpl allow to develop gpl code without distribution. But since you distribute some product you should distibute them source code.

RE: GPL License for Plugins? - Added by Jan Niggemann (redmine.org team member) over 4 years ago

harry grabner wrote:

It is necessary to distribute redmine plugins under the GPL License?

http://www.gnu.org/licenses/gpl-faq.html#GPLAndPlugins
I'd say yes.

RE: GPL License for Plugins? - Added by William Graber over 3 years ago

If that's true, then what's up with plugins like http://www.redmine.org/plugins/ms-project-import ? This guy is charging 390 euros for a plugin that by all rights should be released for free. Not only that, but is advertising for it on redmine's plugin page. There are a whole suite of plugins on there relating to "EasyRedmine", all for absurd sums of money.

If the plugin architecture is released under the GPL, as Redmine is, then this guy is in violation of the license.

RE: GPL License for Plugins? - Added by William Graber over 3 years ago

William Graber wrote:

If that's true, then what's up with plugins like http://www.redmine.org/plugins/ms-project-import ? This guy is charging 390 euros for a plugin that by all rights should be released for free. Not only that, but is advertising for it on redmine's plugin page. There are a whole suite of plugins on there relating to "EasyRedmine", all for absurd sums of money.

If the plugin architecture is released under the GPL, as Redmine is, then this guy is in violation of the license.

Wow, he did release it under GPL (https://www.easyredmine.com/faq):

What do I obtain buying Easy Redmine and what is the license?

You obtain enhanced Redmine as decribed here: http://www.easyredmine.com/software-tour.
Easy Redmine is under same license as Redmine, GNU GPL2. You further obtain 6 months of updates.

Yet he still charges hundreds of euros per plugin.

According to the GPL:

4. Conveying Verbatim Copies.
You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program.

You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee.

This means, that although he is technically allowed to charge for these plugins, if someone purchases a copy, they then have the right to distribute that plugin for free (or charging whatever fee they want), and so long they follow the GPL nothing can be done to stop them (according to the GPL).

RE: GPL License for Plugins? - Added by Jean-Baptiste Barth over 3 years ago

That's precisely the reason why the GPL is so bad. If I want my work in a plugin to be released under an other free software license (such as CC, Apache, BSD/MIT), I'd have to externalize all the code I produce in a third party component and only release a thin layer called a "plugin" to support it. That means I mess up my code because of legal considerations, even though the ability to run the plugin depends on a GPL-licensed base which is already protected strongly and cannot lead to proprietary software. Win!

RE: GPL License for Plugins? - Added by Terence Mill over 3 years ago

"You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee."

Whats bad for me is that you can charge money for distributing the code. That means you can "sell " the code under gpl , and don't have to publish/send it on demand.
Once selled of course one could publish this code for free.

I am no friend of this kind of opensource, because code shall be free on the web repository everytime from my opinon.

RE: GPL License for Plugins? - Added by Harry Garrood over 3 years ago

That's precisely the reason why the GPL is so bad. [...] Win!

What? Are you in favour of GPL or not? This is confusing...

Anyway, I was under the impression that Redmine plugins have to be GPL'd. From http://www.gnu.org/licenses/gpl-faq.html#GPLAndPlugins:

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.

There's no dynamic linking (I guess the GNU people can't imagine software not written in C :P) but Redmine plugins definitely make function calls to and share data structures with the Redmine core, and vice versa.

RE: GPL License for Plugins? - Added by Jean-Baptiste Barth over 3 years ago

Harry Garrood wrote:

That's precisely the reason why the GPL is so bad. [...] Win!

What? Are you in favour of GPL or not? This is confusing...

The "Win!" is ironical, I'm not in favour of GPL.

RE: GPL License for Plugins? - Added by Harry Garrood over 3 years ago

Oh, lol. Yeah, whenever the licence is up to me, I choose MIT, for the same reason. (And also that I can be bothered to read the whole thing, which is not the case for the GPL).

But surely the reason you've given for why you think the GPL is so bad is really a feature? It was designed to not let you release your work in a plugin under another free (or not) software licence, precisely because people can make proprietary software based on it. If that's not what you want, then you shouldn't choose it.

I guess it boils down to whether the GPL is a good fit for Redmine (obviously, this isn't up to me, though).

RE: GPL License for Plugins? - Added by Jean-Baptiste Barth over 3 years ago

Not up to me either. Actually I don't know what I'd do if it was: I understand the need to protect redmine core, and I don't think other licenses would offer the same level of protection so... Let's stick with GPL in our plugins hey! :)

RE: GPL License for Plugins? - Added by Holger Just over 3 years ago

Jean-Baptiste Barth wrote:

If I want my work in a plugin to be released under an other free software license (such as CC, Apache, BSD/MIT), I'd have to externalize all the code I produce in a third party component and only release a thin layer called a "plugin" to support it.

Well, no. To make my main point clear at first: plugins need to be licensed in way way which is compatible with the main Redmine license, that is the license must be compatible to GPLv2 or later. Plugins do not need to be literally licensed under GPL (in any version). Compatible licenses von GPLv2 include MIT, BSD 3-clause and others. The Apache 2.0 license is also usable with Redmine as long as you use it under GPLv3. Then, all other parts of the systems also need to be compatible with GPLv3. Creative commons is (in most incarnations) not compatible with the GPL, but isn't actually suited for code anyway.

Just think of it like this: if the GPL would prohibit the use of other non-GPL licenses with GPL code, you wouldn't even be able to ship the core Redmine as it itself contains various libraries licensed under public domain, MIT, or the Ruby license.

As for your thin layer, you would need to strongly separate your plugin-layer from your "actual" code to prevent its categorisation as a plugin, e.g. by calling it via command line or a REST service. If you achieve that, you could distribute your code as closed source. But it probably wouldn't be much fun anymore :)

As for the comments against being able to charge money for distribution: If you take that away, the whole business of creating (open source) software for money would go away with it. If people want to charge me for getting some software, that's fine by me, as long as they don't prohibit me or others from further distributing that software under GPL terms.

RE: GPL License for Plugins? - Added by Jean-Baptiste Barth over 3 years ago

Awesome! I was totally wrong, sorry about that, and thank you Holger for the clarification. Maybe GPL isn't as bad as I thought ? I'm almost sure the plugin section on the gnu website didn't mention "GPL-compatible licenses" the last time I read it, but I just had a new look (less biased than the first time) and it's mentionned explicitly. Sorry again.

PS: of course my intent was not to produce closed-source code linked to redmine via webservices ;-)

RE: GPL License for Plugins? - Added by Jens Krämer 4 months ago

Old thread but since there still are plugins out there that, by intention or not, violate Redmine's license, I'll reply anyway:

GPL-compatible license basically means, that your plugin's license must allow re-distribution under the GPL. Attribution or No-Derivatives licenses (like e.g. https://www.redmine.org/plugins/scrum-plugin has) are therefore not allowed, while 'do whatever you want' style licenses like MIT are.

Regarding the commercial plugins:

Matt Mullenweg, creator of Wordpress, had some lawyers look into the case of Wordpress themes a few years ago, and the result was that "PHP in WordPress themes must be GPL, artwork and CSS may be but are not required.". The same is true for Redmine plugins: Ruby code in Redmine plugins must be GPL (or compatible), anything else (Javascript, artwork, CSS) can be GPL, but can also be something else.

Applied to any commercial Redmine plugins out there this means: You are free to redistribute their Ruby code and treat it as GPL, but you have to be careful about everything else as it's (unfortunately, imho) common to apply a non-free license to the Javascript and CSS as a means of 'copy protection'. It is perfectly legal to sell plugins including code under the GPL - nobody is required to make code under the GPL available for free. On the other hand if you buy a copy you are allowed to redistribute / use / upload on github those parts that are GPL.

RE: GPL License for Plugins? - Added by Jan from Planio www.plan.io 4 months ago

Jens Krämer wrote:

The same is true for Redmine plugins: Ruby code in Redmine plugins must be GPL (or compatible), anything else (Javascript, artwork, CSS) can be GPL, but can also be something else.

Well, in fact, the lawyers looked at Wordpress Themes, not Redmine plugins.

I am not a lawyer either and we will not know if the dual licensing practices by some plugin developers are compliant with the GPL or not – until this has been tested in court or at least looked at by lawyers.

In my humble opinion, the cases are very different: a theme has very little code and places emphasis on the artwork (images, css) and may therefore be regarded as a work of its own that may stand by itself. The test here is: is it possible to take a Wordpress theme; remove the GPLed PHP code and use the rest for a plain HTML website without Wordpress? The answer is "yes" in most cases. It is very easy to "convert" a Wordpress theme into a standalone website.

Therefore, there may be a legal or even moral argument in favor of the theme creator to protect their work under a non-GPL license.

The case with Redmine plugins is very different. There is (in virtually all cases I know) no "artwork" involved. The emphasis of a Redmine plugin is not on images or CSS, but on the functionality and that in turn relies heavily on Redmine as a framework. The images, CSS, and JS are tying in tightly with the Ruby code and cannot stand on their own. They are useless without the Ruby part of the plugin. The test mentioned above does not work: you cannot remove the Ruby code from a plugin and run it by itself with only a few modifications. It will be a ton of work to mock the user authentication, roles and authorization, projects, issues, workflows, etc. which most plugins are relying on. So a Redmine plugin by itself is worthless without Redmine.

Therefore, Redmine plugins are very different from Wordpress themes and I strongly believe that the dually licensed plugins here are violating the GPL, because they're circumventing the GPL's intention: "use it for free but make anything you build (& distribute) on top free as well". A dually licensed plugin is not free and it is definitely "built on top", so the violation is clear in my opinion.

(1-14/14)