- Joined
- May 12, 2017
And I definitely get why RMS decided to do it. Maybe it overall wasn't the best move. But I understand it.
To paraphrase Linus Torvalds on why he stuck with GPLv2 over GPLv3, these were his reasons:
- His understanding of GPLv2 was "I give you source code, you give me your changes, we're even." Conversely, he interprets GPLv3 as "I give you source code, you give me your changes, but you're not allowed to utilise my software or modify it beyond the arbitrary rules that I've set." To him, it completely betrays everything that GPLv2 stood for.
- The FSF did some sneaky, shady shit to try and get him to migrate. They said that you could invalidate the Tivoization clause, but neglected to mention that the GPLv3 without Tivoization is compatible with the unredacted GPLv3. Therefore, someone else can start a fork of the kernel with the full GPLv3 license, and other people can develop drivers and firmware for the forked kernel. In this scenario, Linus would be in a position where he provides the source code, but he can't take back their changes.
- Tivo, as a hardware manufacturer, submitted perfectly valid patches to the Linux kernel, working around bugs in the MIPS chipset that they were using. Linus doesn't like TiVo's collective decision to lock down the hardware if modified software is detected, yet the patches they submitted were worthy of being integrated into the kernel itself. Were they supposed to shun TiVo altogether and tell them to take a hike?
- He believes it's not a software developer's place to tell a hardware manufacturer what to do with their products. Furthermore, the decision to lock down hardware isn't a decision unique to TiVo in the first place. Wireless carriers do it too, and there are even situations where the law specifically requires it. He mentioned that the GPL does make an exception for legal requirements in the context of medical machinery.
