7 ms·
Relicensing Dolphin: The long road to GPLv2+
- song 11y agoI'm wondering about those 0.5% who refused to relicense. What would be the rational behind refusing such a change. I can understand refusing for a project to be relicensed under a very different license but not between GPLv2 and GPLv2+...
- jordigh 11y agoSome people (Linus Torvalds is a notable example) think that GPLv3's provisions that forbid things like locked down hardware are too much. They would rather be "permissive" and allow hardware that restricts what the user can do with it. What good is modifiable software if the hardware will refuse to run software if it's modified? Tell me, Mr Anderson, what good is a phone call when you are unable to speak?
- chongli 11y agoKeep in mind that Linus's reasons behind licensing are often selfish ones: he simply wants as many people as possible contributing code to him.
- yellowapple 11y agoThe reasoning behind most things is selfish. Even Richard Stallman is subject to this; his motivation for the free software movement was when a colleague wouldn't share software changes that Stallman wanted/needed for his own use. That said, the specific objection of Linux to the GPLv3 is twofold: * There are thousands (if not millions) of contributors that would need to be contacted and would need to give consent to such a licensing change. I imagine some of those contributors might even be dead, and given the currently-draconian copyright laws of many nations (particularly the United States), this means that relicensing is that much more difficult. * The GPLv3 would be a very hard hit for a lot of users of Linux in the embedded space, where a large number of "Things" in the "Internet of Things" aren't exactly designed to be field-programmable. The anti-TiVoization wording in the GPLv3 would cause a lot of pain there.
- tzs 11y agoNote that while GPLv3 prohibits Tivoization, that is only one way to lock down hardware. For instance, the locked apps model of iPhone is OK under the GPLv3 (GPLv3 is incompatible with the App Store, but that has nothing whatsoever to do with the locked hardware. That's due to the TOS for the App Store requiring the user agree to not reverse engineer and not redistribute apps they obtain from the store). The anti-Tivoization clauses are not as strong as most casual readers of GPLv3 seem to think they are. In particular, they only apply if "you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term". A "User Product" is "either (1) a 'consumer product', which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling". So, as long as you keep GPLv3 code out of the firmware, OS, and bundled applications that ship when you sell your hardware to the customer, you can lock down the hardware and still provide add-on software that is GPLv3.
- carussell 11y agoCan you explain in more detail why you think trying to distribute a GPLv3 app on the App Store wouldn't run afoul of the terms you quoted: > you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term Is it because you see this as meaning that downloading from the App Store at a later time doesn't qualify as "occur[ing] as part of a transaction [that transfers possession/use of the device]", and that the binaries have to be present at the time the iPhone is purchased for these terms to have any effect? Have you raised this issue with the FSF? Have you gotten any sort of response?
- tzs 11y agoYes, it is because those terms only apply to conveyances that occur as part of a transaction in which the right of possession of the User Product is transferred. Note that the GPLv3 defines "User Product" as "either (1) a 'consumer product', which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling". The iPhone is the "User Product". This can further be seen by considering the definition of "Installation Information": “Installation Information” for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. In short, the User Product is the thing you install the covered work (the GPLv3'd thing) on and run it on, which for an App Store would be the iPhone or iPad. Unless GPLv3 is not using "possession" and/or "transaction" in their normal meanings, there is no way to characterize purchasing and downloading an app from the App Store as being a transaction in which the right of possession of the iPhone is transferred. Since no definitions of possession or transaction are given in the license, we can assume their normal meaning. I haven't raised this issue with the FSF because I don't see it as an issue. They are the ones that specifically put in the limitation that Tivoization only occurs for GPLv3 object code conveyed as part of a transaction where the right of possession of the User Product is transferred to the person receiving the object code. In general, considering how much time they spent on drafting this thing, I generally assume it means what it says and it says what they intended. If they somehow botched the drafting and that is not what they meant, it doesn't really matter anyway because if it ends up in court and the parties disagree on how they interpret those parts, the court will go with what it says, not what the drafter claims they meant. So, my general policy (with all licenses, not just GPL) is to go with what they say, unless they are too ambiguous and then I avoid the covered software. (Actually, before I get to that point I first see if I can limit my use of the work to only those uses that do not require the permission of the copyright holder. If I can limit me needs thusly then I can ignore the license).
- joesb 11y ago> What good is modifiable software if the hardware will refuse to run software if it's modified? You are free to build your own hardware. GPLv2 ensure software is open, you use GPLv2 software, you ensure the software stay open. It does not try to control other things outside what it gives. "Use my software? Make your hardware open. Use my software? Make your customer service open." No. It's simply "Use my software? Make your software open" Which is fair in Linus's opinion.
- TheLoneWolfling 11y ago> You are free to build your own hardware. No, no you are not. The physical problems notwithstanding (you happen to have a semiconductor fab in your basement?), too many things are covered by patents.
- deleted 11y ago[deleted]
- 0x0 11y agoLicensing GPLv2+ means you'll accept any future "GPLv4", "GPLv5" etc without having any idea what those licenses will look like. You might end up not liking having them apply to your code. What if control of FSF is taken over as if like a coup and a nasty "GPLv4" is released?
- jordigh 11y agoThe worst that could happen is that there is a future GPL version that removes copyleft. If there is a future GPL version that is horrible for the receipient, then at worst that receipient can simply opt for GPLv3. https://www.gnu.org/licenses/old-licenses/gpl-2.0-faq.html#VersionTwoOrLater https://www.gnu.org/licenses/old-licenses/gpl-2.0-faq.html#V... Clause 14 of GPL 3 also clarifies what later licenses can do. They must be "similar in spirit" and they cannot impose any additional requirements on any author or copyright holder. edit: Okay, after seeing clause 14, I don't even see how a judge would interpret a GPL version without copyleft to be "similar in spirit", so I can't even imagine how that would happen. I think you're ok in accepting newer versions of GPLv3.
- im3w1l 11y agoIf FSF turned truly malicious, they could remove the "no warranty" section.
- jordigh 11y agoThat seems to contradict the clause that says no further obligations can be imposed upon authors or copyright holders. In particular, they cannot be forced to provide a warranty.
- maxerickson 11y agoThe FSF has in the past shouted "YEEEEHAAAAW" and done whatever happened to suit Wikipedia: https://www.gnu.org/licenses/fdl.html#section11 https://www.gnu.org/licenses/fdl.html#section11 I guess "Creative Commons Attribution-Share Alike 3.0" is probably similar in spirit to the GFDL 1.2, but there was some large amount of top-downess in using the or later clause to help Wikipedia switch licenses.
- krschultz 11y agoGPLv2+ means you are accepting the terms of GPLv5. What's in GPLv5? I have no idea. No one has any idea. It might never get written. As long as RMS is in charge, I'm not worried about the contents of the next GPL dramatically differing from the current spirit. However, there is no guarantee that I will agree with future versions of the GPL. I'd like to judge them as they come. It's actually really strange to sign up for an open ended contract where a 3rd party is writing the revisions.
- jordigh 11y ago> As long as RMS is in charge, I'm not worried about the contents of the next GPL dramatically differing from the current spirit. You don't have to trust RMS. You can trust lawyers interpreting clause 14 of GPLv3 correctly. This clause says that later GPL versions must be "similar in spirit". It also says that newer versions cannot impose any more obligations or restrictions on authors or copyright holders.
- dragonwriter 11y agoBut what if you objection to GPLv2+ is specifically already realized in GPLv3,like, say, the market-differentiated anti-Tivoization rules. (Also, "similar in spirit" is so vague as to be completely meaningless.)
- jordigh 11y ago> But what if you objection to GPLv2+ is specifically already realized in GPLv3,like, say, the market-differentiated anti-Tivoization rules. Yeah, if you like tivoisation, you probably don't like the spirit of the GPL at all. Tivoisation is really a loophole that wasn't anticipated in GPLv2. It should not have been allowed by GPLv2, but it simply wasn't anticipated. > (Also, "similar in spirit" is so vague as to be completely meaningless.) Vague is how the law is. It has to be vague, and the people who wrote the GPL have a good understanding of how judges interpret vague language. I trust them to have done a good job.
- 11y ago
- comex 11y agoIf you're talking about Dolphin, read the article again. Nobody refused, but a few people couldn't be contacted - unlike Linux, Dolphin has never required real names from contributors, so this mostly consisted of a few people who contributed under an alias a few years ago before utterly vanishing from the Internet. EDIT: disregard; didn't see the graph, and wasn't previously aware of the one person who refused. See https://news.ycombinator.com/item?id=9600204 https://news.ycombinator.com/item?id=9600204 for the correct answer.
- warp 11y agoLooking at the graph mouseover, I think 10 contributors refused to relicense. Their contributions were removed from the codebase.
- RisingFog 11y agoIncorrect. One contributor refused while 10 we were unable to contact.
- SEMW 11y ago> read the article again. Nobody refused, but a few people couldn't be contacted No. Ten were uncontactable, and one refused. "Refused and Code Rewritten - 1/202" "Unable to Contact - 10/202" From the descriptions of the red and black slices of the pie chart - https://dolphin-emu.org/m/user/blog/relicensing/relicensepie.svg https://dolphin-emu.org/m/user/blog/relicensing/relicensepie...
- xahrepap 11y agoI read it. And it's still confusing because of this graph (from the article): https://dolphin-emu.org/m/user/blog/relicensing/relicensepie.svg https://dolphin-emu.org/m/user/blog/relicensing/relicensepie... Note: "0.5% Refused. Code Rewritten" If you mouse over that graphic in the article it says 1 person refused. However, the article otherwise completely ignores that 1 person... (unless I missed it, both times ;) )
- malka 11y ago
- delroth 11y agoThe only person I know that opposed the change was Scott Moreau, and from my understanding he only did it to be an annoyance (I have IRC logs that indicate this pretty clearly). Given his history with other projects[1,2] it's not a big surprise. This was solved by removing the broken and mostly unused Wayland support from Dolphin. [1] https://lwn.net/Articles/544543/ https://lwn.net/Articles/544543/ [2] http://www.phoronix.com/scan.php?page=news_item&px=MTM0MTM http://www.phoronix.com/scan.php?page=news_item&px=MTM0MTM
- jordigh 11y ago> In practice, GPLv3 only adds more restrictions to the license Not at all. They say so themselves: GPLv3 adds compatibility with Apache v2, which GPLv2 lacks. This thus removes a restriction. GPLv3 also clarifies some things from GPLv2, such as being explicit about being applicable not only to software, and giving a clearer meaning of what distributing software means. GPLv3 calls this "conveying".
- lnanek2 11y agoThat's not true at all. Read up on the different licenses. The reason v3 was created was to fight tivoization, where the code is realeased, but the hardware prevents loading updated copies. From the point of view of a company licensing their source, v3 is much more restrictive. It requires a lot more things than a more free license. Linux is famous for rejecting it because of that. Yes, there's a benefit that you are compatible with other more strict licenses, but that's like saying moving from GPL to proprietary is less restrictive because then you are compatible with the rest of your proprietary code at your company. Being more compatible with less free licenses is not more free.
- jordigh 11y agoThe statement "GPLv3 only adds more restrictions" is false, because it also removes some restrictions. Whether you think you should allow Tivoisation or not is a different matter to the plain fact that there are things that GPLv3 allows which GPLv2 does not allow.
- cma 11y agoLinux had no copyright assignment policy and they didnt put in the GPLv2+ future versions clause--they had so many contributors that they really had no choice but to reject it.
- TylerE 11y agoLinus is very anti-GPL3 Quote: "In a very real sense, the GPLv3 asks people to do things that I personally would refuse to do. I put Linux on my kids computers, and I limit their ability to upgrade it. Do I have that legal right (I sure do, I'm their legal guardian), but the point is that this is not about "legality", this is about "morality". The GPLv3 doesn't match what I think is morally where I want to be. I think it is ok to control peoples hardware. I do it myself." For something quite recent: https://www.youtube.com/watch?v=PaKIZ7gJlRU https://www.youtube.com/watch?v=PaKIZ7gJlRU
- Ruud-v-A 11y agoI think it is a mistake to license anything under a “or later version” license. If you do that, you licence your code under a license that you have never read, so how can you know that it serves your intentions? You are blindly licensing code under a licence that has yet to be written! In the GPL case, the Free Software Foundation states that “The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.” (Section 14 of the GPLv3.) Now of course I don’t expect the FSF to publish something radically different, but they _could_ do so. Even if you trust the FSF now, are you sure you trust the FSF twenty years from now?
- maaku 11y agoIf you are pro-patent protection, the FSF already released something radically different.
- baghira 11y agoTo be fair, most FLOSS license, including GPLv2 and BSD 2-clause and 3-clause, are (were?) usually considered to have an implicit patent grant, similar in spirit to the one in MPLv2 or GPLv3. I don't think that argument that one could use GPLv2 while thinking that software patent are good has that much ground.
- comex 11y agoOn the "thinking that software patents are good" front, I think this bit from the GPLv2 preamble is pretty clear: > Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.
- carussell 11y agoEven in the worst case scenario, it remains available under the original license, and that's not going to change. What is the worst case scenario, by the way? You could say it depends on who you are. One such scenario would be for developers who agree with the FSF's strong copyleft philosophy who are betrayed by a future hypothetical revision that removes all copyleft provisions to make it no stronger than, e.g., BSD. This affects only a subset of those choosing a license for their project. (I.e., if you don't care about copyleft, this purportedly horrific thing doesn't even affect you.) Funnily enough, the subset of those who would be affected are hardly ever the ones I see making the argument you are. So what terrible things do you imagine the worst case scenario involving?
- foldor 11y agoHow come there was no mention of the upcoming OSVR partnership as one of the final straws to push forward with this change?