SimonBrazell / privacy-redirect

A simple web extension that redirects Twitter, YouTube, Instagram & Google Maps requests to privacy friendly alternatives.
GNU General Public License v3.0
2.02k stars 112 forks source link

Change the project license to a Copyleft license #130

Closed SimonBrazell closed 3 years ago

SimonBrazell commented 4 years ago

First, I would like to thank you for developing 'Privacy Redirect' plugin and distributing it as a 'free software'(http://www.gnu.org/philosophy/free-sw.html). However, I would be happier if you release it under any copyleft license(https://www.gnu.org/licenses/copyleft.en.html) such as GNU GPL.

Submitted via email.

I'm open to changing the license although I think I need to get permission from all the contributors now as they contributed their code under the existing license and may not want it changed, anyone else have experience with a situation like this?

pravi commented 4 years ago

@SimonBrazell https://softwareengineering.stackexchange.com/questions/105912/can-you-change-code-distributed-under-the-mit-license-and-re-distribute-it-unde explains the situation well.

Basically you have to keep the original copyright notices for works contributed by others. The combination can be under GPL.

SimonBrazell commented 4 years ago

Thanks for the info @pravi

I think I understand but how would I actually implement something like this? Is it just a matter of replacing the existing LICENSE file with the new one, merging them, or something like that in the next commit or is it more involved than that?

I don't understand why they didn't teach us more about software licensing at school, would have been very practical info to have... 🙂

pravi commented 4 years ago

The fastest way would be,

  1. Add copyright notices with MIT/Expat license to any files contributed by others (if they are significant contributions). Those files will remain under MIT.
  2. Make the global LICENSE to GPLv3+ (so all files that you have authored will get the new license and the entire project will get GPLv3). Result of combining MIT/Expat with GPLv3+ is GPLv3+ for the combination.
  3. Ask those contributors if they would like to change the license to GPLv3+, if they agree, you can remove the MIT license text in those files. If they don't agree you can keep the same text (those file will have additional permissions as per MIT/Expat license). Still the license for whole project will be GPLv3+, also for any new changes.

Longer way would be asking all contributors and waiting for their permissions to make the global LICENSE apply to all files.

Jpxe commented 4 years ago

Just a question, is GPLv3+ permitted in the Chrome and Edge stores? I remember reading that using GPL was problematic in some app stores. Also what version of GPL would be best suited? Found this summary:

Chrome and Edge use proprietary parts, wouldn't that be incompatible with GPL and AGPL if they're considered connecting software?

pravi commented 4 years ago

@ToughGuyKunio I could not find any information when searching online about specific licenses being not allowed on these stores.

I would suggest GPL. It will only prevent someone from distributing both together even if that is considered a derivative work (using a GPL software with a proprietary software as a combined program is not prevented). GPL kicks in only if you distribute a derivative work. But you could give an explicit permission to combine with a browser if you want to allow that. GPL + extra permission to combine it with chrome/edge browsers.

See https://www.gnu.org/licenses/gpl-faq.en.html#GPLIncompatibleLibs

Additional permission under GNU GPL version 3 section 7

If you modify this Program, or any covered work, by linking or combining it with [name of library] (or a modified version of that library), containing parts covered by the terms of [name of library's license], the licensors of this Program grant you additional permission to convey the resulting work. {Corresponding Source for a non-source form of such a combination shall include the source code for the parts of [name of library] used as well as that of the covered work.}

You can also ask the FSF. See https://www.fsf.org/licensing

pravi commented 4 years ago

https://softwareengineering.stackexchange.com/questions/224161/gpl-writing-an-exception-for-a-plugin-interface-under-section-7-of-gplv3

"As a special exception, the copyright holders of QCAD hereby grant permission for non-GPL compatible plug-ins and script add-ons to be used and distributed together with QCAD, provided that you also meet the terms and conditions of the licenses of those plug-ins and script add-ons."

We could adapt this to,

As a special exception, the copyright holders of privacy-redirect hereby grant permission for non-GPL compatible browsers to be used and distributed together with privacy-redirect, provided that you also meet the terms and conditions of the licenses of those browsers.

SimonBrazell commented 4 years ago

Longer way would be asking all contributors and waiting for their permissions to make the global LICENSE apply to all files.

I think in our case this might be the way to go as there isn't too many contributors.

Thanks @pravi !

SimonBrazell commented 4 years ago

One last thing before I request the change, which license do you guys recommend?

I was thinking GNU General Public License v3.0

SimonBrazell commented 4 years ago

Also maybe I will just mention all the contributors here to keep it all in the one place.

SimonBrazell commented 4 years ago

Dear contributors ( @TotalCaesar659 @austinhuang0131 @nitrohorse @MichipX3 @ueberchild @mleyen @johnp @emilio @ToughGuyKunio @B0pol )

I'm seeking your permission to change the license this project is released under from its current MIT License to the GNU General Public License v3.0 in order to bring the project in line with the copyleft principle.

If you agree or disagree to this change please either post here or send me an email if you'd prefer to have the discussion in private. You'll find my contact email on my Github profile page (PGP for those interested).

Cheers!

austinhuang0131 commented 4 years ago

Given that we're not talking about a library (that is used by other software) but an "end product", I'd say you should switch to GPLv3. After all Chrome fee is only $5 and copycat can be easily made, but GPLv3 will lower the reward of doing so and will also prevent the chance of malicious forks being widely distributed (since you can just copystrike for source code violations in addition to malware stuff).

Remember that Nitter, Invidious and Bibliogram are all in AGPLv3 (A given that they're network-facing), so for a non-network-facing software like Chrome extensions, GPLv3 should be an obvious choice.

B0pol commented 4 years ago

@SimonBrazell I agree with the licence change to GPLv3

emilio commented 4 years ago

I'm fine with the change as well, thanks for checking :)

nitrohorse commented 4 years ago

Sure thing, +1 from me 👍🏼

Jpxe commented 4 years ago

I agree with the change!

TotalCaesar659 commented 4 years ago

@SimonBrazell I agree with changing the license from MIT to GPLv3.

SimonBrazell commented 3 years ago

Still waiting on approval from @MichipX3 @ueberchild and @mleyen before I can go ahead with the change.

mleyen commented 3 years ago

I approve of the change to GPLv3.

ueberchild commented 3 years ago

@SimonBrazell approving

SimonBrazell commented 3 years ago

Thanks everyone, looks like it's just @MichipX3 now, who looks to have contributed the Polish language transition, I'll give it a little more time.