| The FSF's purpose in writing the GPL is the protection of end-user freedom, including the freedom to inspect and modify the code (or paying someone else to do so) of whatever software people use. Linus' purpose in adopting the GPLv2 was something like "to avoid free-riders on his kernel code; if you make improvements upon the Linux kernel for some product, you have to share them with the users of your product". The GPLv3 addressed a gap in the protections GPLv2 guarantees to end-users, namely that if a vendor locks down other parts of the stack (in the case of the Linux kernel and TiVo-ization, at least the bootloader), inspecting the and modifying the software can be useless for them in terms of the real freedom it grants those users— the device can just refuse to run the modified software. For Linus, moving to GPLv3 would extend the domain of the GPL beyond the code of his project to the broader context in which it is used, namely the situation of the user. He sees this as inappropriate, in a way. He doesn't care about the broader context in which Linux is deployed or if some devices only allow you to run vendor-approved kernels. He sees the GPLv3 as changing what "GPL" means in a way that offends him. For the FSF, the point has always been to use licensing as a mechanism to protect and promote the freedom of people using computers. The FSF's primary concern has never been the rights or conveniences of maintainers at all. It's not about "no freeriders with downstream forks who hide their patches", though that was an incidental effect of the GPLv2. The purpose is to use copyright licensing as a mechanism to inch towards a world where users who do computing— on their laptop, on their mobile phone, or on their TV's set-top box— can transparently inspect and modify all of the devices they compute on. For them, the GPLv2 had a vulnerability that made its function of protecting user freedom easily bypassable, and they patched it in the GPLv3. But the question of whether linking against the kernel's public interfaces constitutes a derivative work is outside the scope of GPLv2 vs GPLv3 and not yet fully tested/settled by the courts. Hopefully this context does make clearer, at least, the spirit of the license of the software Bambu inherited when they forked it from others. It's very much about letting users actually modify/replace the software running on their devices without restriction. |