4 ms·
The GPL is based around a well-defined set of ethics that centers around giving the user complete freedom to use and modify the software. This is necessary for
by rubbingalcohol 7y ago
The GPL is based around a well-defined set of ethics that centers around giving the user complete freedom to use and modify the software. This is necessary for software to be considered free.
It's certainly possible to restrict usage based around a moral code. Look at the JSON License: https://www.json.org/license.html https://www.json.org/license.html
> The Software shall be used for Good, not Evil.
So, yes, it would be possible to restrict software licensing based on a loosely-defined moral code that would constantly need updates to keep pace with new social injustices, but this would not be free software.
- rmilejczz 7y ago>The GPL is based around a well-defined set of ethics that centers around giving the user complete freedom to use and modify the software I take issue with this. First of all, this “well-defined” qualifier is ironically poorly defined. What does that mean? It either is or is not derived from some principle or set of principles; it is ultimately an example of ethics being imposed as a restriction. Secondly, you don’t actually have “complete freedom”. A recent example I encountered was the utility github.com/gojp/goreportcard which still relies on github.com/alecthomas/gometalinter despite gometalinter being deprecated in favor of the much faster github.com/golangci/golangci-lint. Because golangci-lint is licensed under GPL and goreportcard is licensed under Apache 2.0 it would violate GPL to integrate golangci-lint into goreportcard. So either goreportcard has to adopt a new license and ensure they’re compliant with that license or suffer relying on subpar software that has been abandoned by its creator and community. Now perhaps I’m ignorant (something I often find myself guilty of when speaking on such lofty topics, please forgive and correct me if this is the case) to what you mean by “complete freedom” but that doesn’t seem like “complete freedom” to me, it sounds like two incompatible sets of ethics.
- lonelappde 7y ago"complete freedom" does not exist even in theory due to basic information theoretic arguments.
- rmilejczz 7y agoIn this context I read “complete freedom” as “use without restriction”, and that doesn’t seem to be the case with less permissive licenses. Not sure I completely understand what your comment implies but I’d love to better understand what you mean if you care to expand on that idea!
- 9000 7y agoFor your first question, this is mostly about legal interpretability. The GPL has a long text that describes explicitly what it allows and doesn't. Yes, that is based on an ethical framework, but that ethical framework is all baked into the text of the license. There is no ambiguity. The GP contrasts this with the JSON license which only uses the term 'good' to describe what it allows. This is incredibly ambiguous from a court's perspective, likely past the point of just being thrown out as a clause in a legal contract. For your second question, you are right that you don't have 'complete freedom,' which another commenter pointed out cannot even theoretically exist. The closest you really get is public domain, in which you're not even restricted like the MIT; you don't even have to list the author! (IANAL, so this is not legal advice, but just my understanding.) However, the GPL is not interested in guaranteeing complete freedom, in the style of very permissive licenses. Instead, it's interested in maximizing end-user freedom. An MIT library can immediately be placed in a proprietary program, and now the end-user has none of the Four Freedoms, though the author of the program still has all of them. So, the GPL puts restrictions on developers and how they can use the software ('limiting freedom', if you want, though it's the freedom to limit others' Four Freedoms that is being limited), to guarantee that the Four Freedoms reach the end-user. This does lead to incompatibility as you've outlined, and so goreportcard would have to adopt the GPL to use the library and remain compliant (again, IANAL), but from the perspective of the GNU foundation, this maximizes the total number of freedoms retained because it continues to protect end-users. I hope this helps, I wanted to expand on what the goals of the GPL actually are, since you seemed to earnestly be asking.
- kazagistar 7y agoA user in an ICE concentration camp also lacks the freedom to tinker with the software. Seems like a pretty big hole in the ability of the license to protect the freedom of its end users.
- rubbingalcohol 7y agoThe people in "concentration camps" aren't using the software though. You are conflating two different issues.
- deleted 7y ago
- csande17 7y agoWhen people say the GPL ensures freedom for the "user", they mean the end-user. Under the GPL, the end-user can always view and modify the source code of the software they use however they want. Distributors of software, on the other hand, are prohibited from licensing GPL-derived software in a way that restricts end-user freedom. (And they're also prohibited from licensing GPL-software in a way that allows others to license it in a way that restricts end-user freedom, which is why you can't incorporate GPL code into an Apache-licensed project.)
- lonelappde 7y agoThe JSON license is a joke, like Google's "Don't Be Evil". It's not enforced because it's impossible to enforce, and IBM got an exemption anyway.