Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Incorrect license given - should be GPLv2 #8

Open
chriscoomber opened this issue Jun 29, 2020 · 1 comment
Open

Incorrect license given - should be GPLv2 #8

chriscoomber opened this issue Jun 29, 2020 · 1 comment

Comments

@chriscoomber
Copy link

The license given on this repository (and therefore on this Android library) is Apache 2.0. However, this is incorrect since it contains code which is under the GPLv2 license. I am not a lawyer, but the short explanation of this is that code derived from GPLv2-licensed code must also be GPLv2-licensed: the GPL licenses declare that the licensed code is free, and must only be used in free products, and the way they ensure that it's never used in any non-free products is to require that derivative works are also licensed under the same GPL license.

The consequence of this is that this entire repository should be GPLv2 licensed. (I'm not even sure if you're allowed to have Apache-2.0-licensed code in a GPLv2-licensed project, but let's assume for now that's OK.) This means that this Android library cannot be used in commercial products - you cannot make money from any app that uses this code. Even releasing a free app on the Play Store with a GPLv2 license has its complications.

Please fix the license given with this repository. I don't want other people like me wasting time thinking this library was Apache-2.0 licensed when it's illegal for it to be, and worse I don't want other people getting sued by Sun (now Oracle) for breaching their license.

@bmaupin
Copy link

bmaupin commented Feb 18, 2022

TL;DR The license on this repository appears to be fine and this issue can be closed.

The license given on this repository (and therefore on this Android library) is Apache 2.0. However, this is incorrect since it contains code which is under the GPLv2 license.

This is incorrect. If you look closer at that file, it's not using the normal GPLv2 license; it's using the GPLv2 license with the classpath exception which is a completely different beast. You can read more about it here:

Here is where the Classpath Exception is invaluable. It clearly states that the code under the license is (L)GPL, but anything using that code can follow whatever license they'd like.

https://softwareengineering.stackexchange.com/a/326325/160348

So the entire crux of this issue is incorrect, and therefore it can safely be closed without taking any action.

However, in case it's helpful to correct a couple other misunderstandings:

I'm not even sure if you're allowed to have Apache-2.0-licensed code in a GPLv2-licensed project, but let's assume for now that's OK.

If this project were using the normal GPLv2 license (which it isn't), it's not okay to mix it with Apache 2.0 licensed code, as those two licenses are incompatible: https://en.wikipedia.org/wiki/Apache_License#Compatibility

This means that this Android library cannot be used in commercial products - you cannot make money from any app that uses this code.

This is incorrect; even for the "normal" GPL license (without the classpath exception), there is nothing preventing the use of GPL in a commercial product:

Does the GPL allow me to sell copies of the program for money?

Yes, the GPL allows everyone to do this. The right to sell copies is part of the definition of free software. Except in one special situation, there is no limit on what price you can charge. (The one exception is the required written offer to provide source code that must accompany binary-only release.)

https://www.gnu.org/licenses/gpl-faq.html#DoesTheGPLAllowMoney

This might be due to a misunderstanding of what the word "free" means in English, which is doing double duty. There is free as in cost and free as in freedom. The GPL is the latter. Many people use the word "libre" to make this distinction more clear: https://en.wikipedia.org/wiki/Free_software

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants