freetdi / tdlib

Other
12 stars 5 forks source link

Use a less restrictive license? #6

Open spth opened 7 years ago

spth commented 7 years ago

AFAIK tdlib is currently under "GPLv3 or later". I'd suggest to switch to a slightly more permissive license: "GPLv2 or later".

In my opinion, both GPLv2 and GPLv3 are sufficient to protect the essential software freedoms. I am fine with software I contributed to being used under either license. However, IMO, the free software community also benefits from being able to reuse each other's code. So in some sense, free software benefits from less restrictive licenses (e.g. any free software project, not matter which license it uses could use software under a MIT-style license).

Some people have strong opinions on GPLv2 vs GPLv3, making them choose "GPLv2" or GPLv3" (without any "or later"). Sometimes copyright holders do not trust the FSF with future licenses, so they choose a license without "or later" (and when the FSF releases a new version, even one they might agree with, the copyrightholders might be dead, so the project can't change the license easily).

This results in some free software projects being GPLv2 only or GPLv3 only, while others are GPLv3 or later or GPLv2 or later.

Using a "GPLv2 or later"-license would allow more free software projects to use tdlib.

In fact, most (44) files in tdlib/src are under "GPLV2 or later"; there is only a small number (15) under "GPLv3 or later". The situation is similar for examples and tests, but there I'd consider the license question less important.

Philipp

felix-salfelder commented 7 years ago

thanks for sharing.

Some people have strong opinions

i understand that v3 fixes some issues in v2. putting just GPLv2+ will not fix any of these, and code might end up tivoized on some locked system, for example. my opinion is that this use conflicts with "freedom to modify", which is essential part of the free software game -- yes, we unfortuntaely seem to disagree here.

i have a harder time giving in to some opinion that i have totally no understanding of. what is the reasoning behind not adding the "or later" (for any GPL version)? is it just "license can't be changed, because the authors are dead/unreachable"? but then: why did the authors not add the "or later" in the first place, was it "by mistake"?

following this, I am getting close to "somebody made a mistake, then died. and that's why we should allow [ugly things]. and nobody who was involved actually had intended this at any point.". this is more tragic, than a convincing reason.

alternatively, i end up with "somebody really (cares and) wants to see the code tivoized, now endorses GPLv2 (only)". it makes perfect sense to take on this side for somebody selling these things. yet, unless i know more details, it does not seem very nice attitude to me.

Copyright holders do not trust the FSF with future licenses

i can not see how "or later" alone will force anybody to trust a future license. maybe "GPL in the current newest revision" has some potential. that's not our plan.

it has been discussed (with others, on other channels) to license parts of the package in a more permissive way (rather than simply switch to v3+, as actually intended). i think this will be as close as we get to your proposal, as some (future) parts cannot be relicensed to v2 for technical reasons. so, somebody needs to figure it out and draw a sensible line. will take some time i'm afraid.

spth commented 7 years ago

Reasons for choosing GPL2 only:

1) Wanting to allow tivoization. Example: LInus Torvalds. Many developers think that tivoization is okay since one still gets the source, and can use it on other devices. E.g. competitors of Tivo would be able to use the changes Tivo made in free software for Tivo devices in non-Tivo devices. Clearly, tivoized free software doe not give the user as much freedom as non-tivoized software, but still more than non-free software. Also note that tivoization might not be a voluntary decision, as in some cases it unfortunately is required by law.

2) Not trusting the FSF with future licenses. Some developers are afraid that future GPL versions might be weaker copleft, or in other ways unacceptable. So they do not use "or later clauses". When a new version (such as GPL3) gets released, they might change to it, not agree with it (for reasons, such as 1) or others), or no longer be contactable. Thus some projects are stuck with GPL2 only.

Philipp

Edit: GFDL 1.3 section 11 could be considered an indication that 2) is not entirely unreasonable.