Welcome to the Question2Answer Q&A. There's also a demo if you just want to try it out.
+9 votes
2.3k views
in Plugins by

I was wondering what was the appropriate way of distributing Q2A add-ons. In order to tackle this I thought about the following related questions that most developers might come up with:

  1. Does the add-on need to be licensed?
  2. Under what licenses can I distribute my add-ons?
  3. How can I license my add-on under a license compatible with the core?
  4. Can I license my add-ons with a proprietary license?
  5. Can I charge for distributing my add-ons?
  6. If I create an add-on do I have to make the code public?
  7. Can users distribute the add-ons I sent them?
  8. Can users claim the add-ons as if they were their own?
  9. If someones distributes one of my add-ons,
    1. Do I need to be notified?
    2. Are they allowed to charge for that?
    3. Can they change the copyright?
    4. Can they change the code?
  10. Is there any way in which I can distribute my add-on, get the money and make sure no one distributes it for free?
  11. Is it appropriate/well-seen to distribute an add-on which I have received from a developer?
  12. Can I distribute a non-GPL-Compatible add-on which I have not developed?

If you happen to have any question and a clear answer (ideally with a source linking to the Free Software Foundation site) feel free to add them.

1 Answer

+8 votes
by
selected by
 
Best answer
Here is my point of view for each of the questions. I tried to support them with a link to where the answer might come from. However, this is not an exact science so this might lead to discussion, which I think it's OK in order to get a better understanding on what can or can't be done.

1. No. If it is not licensed and most likely not even copyrighted then it would be part of the public domain.

2. The core is licensed under the GPL license. This means that you can license your add-ons only under GPL-Compatible licenses.

   Source: http://www.gnu.org/licenses/license-list.en.html#GPLCompatibleLicenses

3. Follow the steps in here: http://www.gnu.org/licenses/gpl-howto.html

4. No. As the core is GPL it requires any piece of code that uses it to be GPL-Compatible. If your add-ons call the core then they should be GPL-Compatible. If your add-ons share data structures with the core they should be GPL-Compatible. If your add-ons do not work on their own and require the core to operate then they should be GPL-Compatible. Clearly, there is no way to run away from making your add-ons GPL-Compatible as they are considered derivatives of the core itself.

   Source: http://www.gnu.org/licenses/gpl-faq.en.html#GPLAndPlugins and https://en.wikipedia.org/wiki/Proprietary_software

5. Yes, the GPL license allows you to do so.

   Source: http://www.gnu.org/philosophy/selling.en.html and http://www.gnu.org/licenses/gpl-faq.en.html#DoesTheGPLAllowRequireFee

6. No, you don't have to. You can distribute it to anyone you want or not distribute it at all.

   Source: http://www.gnu.org/licenses/gpl-faq.en.html#GPLRequireSourcePostedPublic and http://www.gnu.org/licenses/gpl-faq.en.html#UnreleasedMods

7. Yes. The GPL license allows them to distribute the add-ons to anyone and even charge for that.

   Source: http://www.gnu.org/licenses/gpl-faq.en.html#CompanyGPLCostsMoney

8. Definitely not. Thing is this also includes yourself. This means, the add-ons are by themselves derivatives of the Q2A core. So they have to keep the same copyright as the core. However, you can add yourself as a copyright owner of your add-on but you can not remove anyone from the original work.

9.1. No.

   Source: http://www.gnu.org/licenses/gpl-faq.en.html#DoesTheGPLAllowRequireFee

9.2. Yes.

   Source: http://www.gnu.org/licenses/gpl-faq.en.html#DoesTheGPLAllowRequireFee

9.3. It depends. If they have created a derivative work of your add-on, which is a derivative work of the core, then they can add themselves as copyright owners of the changes they have added. If they have not created any derivative work then they can not touch the copyright.

9.4. Yes, and they can distribute it and even even sell it.

   Source: http://www.gnu.org/licenses/gpl-faq.en.html#GPLCommercially

10. No. The GPL license does not allow you to do so.

   Source: http://www.gnu.org/licenses/gpl-faq.en.html#DoesTheGPLAllowRequireFee and http://www.gnu.org/licenses/gpl-faq.en.html#CanDeveloperThirdParty

11. This question makes no sense at all. It is not a matter of something being appropriate/well-seen or not. It is a matter of violating the license or not. Distribution of an addon (which must be GPL-Compatible) under a GPL-Compatible license does not violate the license at all.

   Source: http://www.gnu.org/licenses/gpl-faq.en.html#CompanyGPLCostsMoney

12. As the add-on is a derivative of the Q2A core which is licensed under the GPL license then it must be licensed under a GPL-Compatible license. If it is licensed under a different license then it is in violation of the GPL license inherited by the Q2A core. Being strict you should report the violation. Being not so strict you could just remove the non-GPL-Compatible license, add the GPL-License and distribute it. Being not strict at all, you could contact the developer and ask them to correct this situation.

   Source: http://www.gnu.org/licenses/gpl-faq.en.html#GPLAndPlugins , http://www.gnu.org/licenses/gpl-faq.en.html#ReportingViolation and http://www.gnu.org/licenses/gpl-faq.en.html#HeardOtherLicense
by
this sounds fine for me. But we cannot forbid people to sell services and enhancements. But, they must open their products ( after 6 months, 1 year ? ) to freeware , essentially for private usages. If they do so, they will get help from teams like the mine.
by
How you monetize software under the GPL license is actually a different issue. It is perfectly safe to sell services and enhancements. Services have nothing to do with the license and you can sell them without any restriction. Regarding enhancements they would be considered as derivative works of an add-on or the core itself so their license stays GPL. Anyway, you can sell the enhancement to a given user (under GPL) without making it public. The tricky thing is the user can make the code public if they want to.
by
not sure, one can include applications that use QA as a container. The container is free but not the content. Another thing, ie , our customers haven't access to source. We produce mainly C code with a modified compiler. The compiler is GPL, the libs are too , but not our work. In the cms world, a very cheap universe ( opposite of the mine where the hour is billed 200 $ ), it doesn't hurt me to buy some sharewares at 5 or 10$ or 50$, provided they work as expected. I bought some ...
by
"The container is free but not the content." => I used to think that way until yesterday. Check question #4 and the source. They are not separate pieces of software.
"our customers haven't access to source" => That's out of the scope of the question as it tackles distribution rather than execution. That requires a separate analysis
"We produce mainly C code" => Again, this is a 100% different discussion
"The compiler is GPL, the libs are too , but not our work" => Your work needs to be GPL-Compatible. You should look for LesserGPL libraries. EG:
http://www.gnu.org/licenses/gpl-faq.en.html#LinkingWithGPL
http://www.gnu.org/licenses/gpl-faq.en.html#SwitchToLGPL

PS: I'm not really discussing whether this is right or wrong or whether I agree or disagree with GPL software. I just want to provide a short guide on what to do in order not to violate the core's license.
by
there is a lot of work to do on the core... I see another squeleton compatable with the current plugins using a small bridge. If we ( or some group ) want to protect it , let's explore other licences like creative common. It's also possible to produce a licence from scratch. But, I don't want to bother the threesome which try to work around. How many cms projects have merchants ? I know 50 without only one. We need fair merchants , they give credit to the project. ( But I did not finished to analyze the choice of Gideon , without him the project will not be the same. I'm very disapointed ... )
by
+10,000 Perfect question and answer!! I will represent the maximum respect to your great work. Only lawyers will be able to interpret the license strictly. However, I was able to confirm that my interpretation is not wrong by your work. Let's sell good things together proudly! Thank you so ~~~~~~~ much !!
by
Thank you pupi1985 for the clarification .
But regarding this - "The tricky thing is the user can make the code public if they want to."
and
"You can charge people a fee to get a copy from you. You can't require people to pay you when they get a copy from someone else." (source http://www.gnu.org/licenses/gpl-faq.en.html#DoesTheGPLAllowRequireFee) .

Which clearly says users can distribute what they have purchased . So how can we (developers) protect our work ? is there any way ?
by
@Leo Sorry, but I find it a bit difficult to understand your point due to a language limitation (neither of us speak English as a first language). I understand you want to re-license the core and that is not possible. Only the author can do that. I also understand you would like to make a wrapper of the core under a different license and use the wrapper (skeleton) instead o the core. The thing is the new skeleton would have to be GPL-Compatible as it uses the core and the add-on that uses the skeleton will have to be GPL-Compatible because it uses the skeleton (that's why the GPL license is considered "viral").

Regarding merchants you can analyze WordPress. In terms of license and plugins it is the EXACT same situation. WordPress is GPL and the plugins have to be GPL-Compatible. And still it is quite successful.

@sama55 Welcome. I also find the license considerably hard to read... which I guess that is why there is a huge FAQ about it

@Ami Well, strictly speaking, I would understand "protect" as copyright your work, i.e., make sure that nobody can appropriate the work you make and claim it their own. That happens with the copyright only. If you GPL your code then it will be copyrighted so no issue there.

If by "protect our work", you mean to limit the person receiving a copy (paid or not) the ability to redistribute your work then there is no way to do so. Because the license, which is "virally" transmitted from the core to the add-ons, is explicitly allowing people to do so.

When it comes to making money, you might consider following some of these approaches: https://wordpress.org/themes/commercial
by
Relicense the core ? I was just discussing of your point of view. It was not a poll, we are in a debate phasis. I use gplv2 for private work and normal copyrights for pro stuff. Thus, for me pure gpl with just virtual hugs to say TY is enough... Never 2 authors do the same work. Why a project has success is related to subjective details, particularly the feeling of the founder. If he leaves , ( I have some experience about such situations ) , the core will be just maintained , without evolution. And if there is more than enhancements , it's not sure to find the same feeling. QA needs also someone to hold its public relations.
by
I see your point and I consider that as a possibility. In any case I think it is a bit off-topic considering the question title :) Probably more suitable for the http://www.question2answer.org/qa/46918 thread
by
you're right, I made a bad swap :) but both are related somewhere
by
Just to add, if you make a theme then it's certainly possible to license any custom graphics and "non-essential" assets under a different license such as Creative Commons.
by
+2
@pupi1985, this is one of the imp QA, after few days it will go away from front page into pool of other QA. then only search can find.

I feel we should come up with new tab similar to activity or questions at top, call it as a pin/faq, only admin should be able to pin all important questions there so that it will be easy for users to see. it will be quick ref. admin should be able to mark any question and move up or down depending on priority.

what do you think? or any other solution for this?
...