> It doesn't give you that right, or TiVo would not have been able to do what they did.
> The FSF may have thought you should have that right, but they didn't write it into
> the GPL.
Yes, which they have stated was an oversight as they didn't foresee the use of DRM to limit this end user right, and as such they amended this in GPLv3.
> Linksys WAG354G, I think eventually it got sorted out. However GPLv2 doesn't force
> you to provide the necessary tools to build the source code, only that the changes to
> the source code must be made available.
Ah true, it's a GPLv3 addendum aswell (a very good one I think).
> You call it a bug, I'd say that if they thought about preventing the TiVo situation
> then they forgot to write about it in GPLv2. But I believe they didn't come up with
> the scenario. Which is good because otherwise the TiVo would not have used Linux.
Indeed they failed to foresee that scenario, whether or not that is 'good' is purely subjective (I certainly don't see what it is you think Linux gained from being used in Tivo), either way had that condition been a part of GPLv2 then likely Linus would simply have removed that condition and forked GPLv2 as it was the part of GPLv3 he took issue with.
> You say there is no revenue stream and yet you describe a revenue stream.
Non-obligatory donations is nothing like the licence-style revenue you mistakenly attributed to Tivo (of which there is none, I've certainly never seen any indication that Tivo paid the Linux foundation a single cent for using Linux), these companies could stop donating as they are not obliged to.
Of course this is not in reality any problem as Linus would be employed by a company rather than the Linux foundation in no-time, however it is likely better if he as project leader is not tied to any direct company. So this setup is likely favoured.
Meanwhile the vast majority of other full-time kernel developers are employed by companies.
> I'm sure IBM would do the same as TiVo if they were contracted to build some hardware
> that needed DRM.
I'm sure they would but I fail to see your point. Yes this was allowed in GPLv2 due to an oversight, Linus thinks this is a good 'loophole' as he only want the code back, and don't really care or atleast doesn't care that much about the other end user rights which GPL sets to uphold. This is perfectly valid.
FSF who crafted GPL on the other hand, did so in order to provide these end user rights to recipients of GPL licenced software, so from their equally valid standpoint it's a loophole that need so be fixed, hence GPLv3.
Again they (GPLv2, GPLv3) are both options you can choose between for your code, or if you want to leave that choice up to your end users you can use the GPLvx 'or later' clause as is often the case.
> I don't know who is responsible for the kernel DRM
> whether it's TiVo or the hardware partners.
There's no DRM in the Tivo Linux kernel (which of course would then be modified source code which would have to be released as per GPLv2), it likely a locked bootloader style protection which will only load a kernel which has been signed by Tivo and not accept anything else, as such making the hardware a brick beyond Tivo use.