4 ms·
Why does Linux still use the GPLv2?
- kelnos 7y agoThe accepted answer is bizarre. It starts out with the correct answer -- Tivoization -- devotes a single word to it, and then goes on a multi-paragraph rant about Google. It has nothing to do with Google; the commenter there has a very exaggerated opinion of the influence Google wields over Linux kernel development. Might as well go straight to the source, Torvalds himself: https://lkml.org/lkml/2007/6/13/289 https://lkml.org/lkml/2007/6/13/289 Edit: It's also a good point to make (as noted below), that it would be nearly impossible to change Linux's license at this point, since all of the many thousands(?) of contributors would have to be tracked down and agree to the change. Although, since the GPLv2 and GPLv3 are compatible licenses, it's presumably possible to license the kernel as a whole as GPLv3, with new contributions GPLv3-licensed, without touching the licensing of the existing code. That would likely be a nightmare to manage, and it would get really tricky to point to a particular piece of (old but recently changed) code and say "what license is this bit under?"
- kevin_thibedeau 7y agoIt has nothing to do with Tivoization. The kernel is a collective work without copyright assignment to a central authority. It would be too much work to contact everyone with a claim to copyright (including estates of deceased coders) to get their blessing for a relicense. Conversely, everything under the aegis of FSF transitioned to GPL3 because they "own" the code via assignment.
- kadoban 7y agoI think it's two separate but each probably sufficient reasons: 1) Linus doesn't want to (unless his stance has changed, haven't seen it). 2) It would be almost impossible because of contributor copyright/license reasons, as you explained. So I'd really say it's both.
- kelnos 7y agoIt's both. Torvalds initially fixed the licensing information as "GPLv2 only" due to uncertainly; he simply wasn't comfortable agreeing to license his work under some unknown future license. While GPLv3 was being drafted, he publicly came out against the anti-Tivoization provisions. So I guess it's correct to say it's still GPLv2 because it's always been that way, and getting agreement from all contributors to change it (if that was even desirable) would be prohibitively difficult. But it seems like the question was actually trying to get at why Torvalds (et al.) don't like GPLv3.
- jra_samba 7y agoNo, the FSF did not transition everything to GPLv3. glibc, IMHO one of their most important projects remains at LGPLv2+. This is due to Stallmans fear of losing popularity of 'his' code and is the reason I no longer have any respect for the FSF, who unfortunately have been exposed as hypocrites.
- jpalomaki 7y agoOne comment in the SO points to a write-up which seems to make the point that changing the license might not be impossible (check the heading "If the license is attached to your collective-work copyright") [1]. [1] http://www.catb.org/~esr/Licensing-HOWTO.html http://www.catb.org/~esr/Licensing-HOWTO.html
- phoe-krk 7y ago> Although, since the GPLv2 and GPLv3 are compatible licenses No. GPLv2 is not compatible with GPLv3. GPLv2 states that the modified code must not place any new restrictions on the resulting code. GPLv3 places such a restriction via its patent-provisions and anti-tivoization clauses. Therefore, you cannot combine GPLv2 code with GPLv3 code, or release GPLv2 code under any license other than GPLv2. What you likely mean is code licensed under GPLv2+, which means that it can be licensed under GPLv2 or any later GPL version. Linux is not licensed that way - it is strictly GPLv2-only.
- kelnos 7y agoAh, that's a good point. So there's pretty much no way that any kernel code can be GPLv3, short of contacting each and every contributor and getting them to agree to switch.
- CJefferson 7y agoOne practical reason, at this point it's impossible to upgrade. The GPLv3 is incompatible with GPLv2, and there are major contributors who are either impossible to find, or sadly past away. This ignores those who just wouldn't want GPL v3. It would be impossible to untangle these people's code from the rest of the kernel at this point, even if you wanted to rewrite it.
- jjtheblunt 7y agoI thought the question implied alternatives other than upgrading. (?) Not sure, as stated, obviously.
- caseysoftware 7y agoAlmost 10 years ago, I went through the effort of relicensing something from GPL back to BSD as it was originally licensed. I documented some of it here: https://web2project.net/2011/01/web2project-license-change/ https://web2project.net/2011/01/web2project-license-change/
- oehtXRwMkIs 7y agoAlthough it's accepted at this point that it's impossible to relicense Linux, hypothetically speaking, what would be the ramifications of a GPLv3 Linux? Is it just in cases like the TiVo?
- simcop2387 7y agoThere's also a lot of new patent language in there too, the license gets revoked if you sue someone over patents in the covered work. https://fsfe.org/campaigns/gplv3/patents-and-gplv3.en.html https://fsfe.org/campaigns/gplv3/patents-and-gplv3.en.html
- jake-low 7y agoSomewhat off-topic, but this is a great example of a problem with StackOverflow/StackExchange that a lot of folks pointed out in a thread yesterday [0]: the accepted answer is terrible but is shown at the top, and a much better answer (with clear community consensus, given the vote counts) is below it. Why not show the best answer first? [0]: https://news.ycombinator.com/item?id=20859332 https://news.ycombinator.com/item?id=20859332
- compiler-guy 7y agoOne possible reason is that, for technical questions at least, only the original poster can tell if a particular answer solved their problem. The user can ask, "How do I do X?" and the the community may settle on, "don't do X", or, "Why would anyone ever want to do X?", but those don't answer the question. Maybe the user has a good reason, maybe not, but they aren't the answer. Like all ranking systems, each method has its own advantages and disadvantages.
- jimhefferon 7y agoBut surely the mods can change this?
- compiler-guy 7y agoI'm not entirely sure what you are referring to by "this". If you mean the mods could change the ranking system, of course they can. But that would just trade one set of problems for another. If you mean that they could change the "wrong" answers to more correct ones, then yes, they could. But that kind of defeats the purpose of community voting. And it is much more work for them. How would they decide that one answer is better than another? If their own knowledge, then that is going to feel very arbitrary in many cases.
- jimhefferon 7y agoI've had responses on SE modified, sometimes significantly.
- jjtheblunt 7y agoWas the question meant to imply "as opposed to MIT or Apache"?
- RcouF1uZ4gsC 7y agoAt this point, if they go the trouble to relicense Linux, it might be better to go with BSD or Apache over GPL. Linux already supports closed source drivers (see NVidia). In addition, most of the companies that contribute to Linux, do it because they see the benefits of features being upstream, not because they are forced to.
- favorited 7y agoLinus has said he still prefers GPLv2 for his software over the BSDs, etc (at least as of a few years ago). He doesn't care about Tivoization, because he's not concerned about hardware. But he said if you use Linux and enhance it for your product, he wants the opportunity to upstream your enhancements.
- RcouF1uZ4gsC 7y ago> But he said if you use Linux and enhance it for your product, he wants the opportunity to upstream your enhancements The major enhancements I see are hardware vendors optimizing Linux for their hardware, or cloud vendors optimizing to make it run better on their cloud. In both of these situations, Linux is the complement to their product (either hardware or cloud hosting), and thus it is in their best interest to upstream their enhancements, regardless of the license. See Joel Spolsky's classic column: https://www.joelonsoftware.com/2002/06/12/strategy-letter-v/ https://www.joelonsoftware.com/2002/06/12/strategy-letter-v/
- singron 7y ago> hardware vendors optimizing Linux for their hardware This makes sense for component vendors that want their customers to use the hardware with their customer's existing OS (Linux). If it's a hardware vendor that also controls the software (e.g. mobile phones, appliances), then this doesn't apply. Keeping modifications to themselves can serve maintaining competitive advantage, reducing liability, or simply reducing costs of publishing code (either getting it merged upstream or mirroring a fork).
- jraph 7y agoInteresting video of Linus Torvalds' stance on the GPLv3: https://www.youtube.com/watch?v=PaKIZ7gJlRU https://www.youtube.com/watch?v=PaKIZ7gJlRU (edit: this is actually cited in a comment on the linked page, but I'm leaving the link here so HNer who won't visit Stack Exchange may find it)
- jasoneckert 7y agoThe best answer could be a simple approximation: GPLv2 has less restrictions, and this makes it more appropriate for use with Linux given its usage and development roadmap.