The GPLv3 was released today – is TiVo doomed?

Yep, the GNU General Public License, version 3, was released today. The GPL is the license that governs a large proportion of open source projects, under its (until today) current v2 form. This includes the Linux kernel.

Of course, one of the big buzz topics surrounding the v3 license is that it has provisions aimed very deliberately at TiVo and the ‘TiVoization‘ of free software. The Free Software Foundation, which issues the GPL, has not been happy with the kind of commercial use TiVo has put GPLv2 software to. Specifically, Richard Stallman isn’t happy about it, and he’s basically the embodiment of the FSF.

So the GPLv3 is bad news for TiVo, right? Wrong.

This release means pretty much nothing as far as TiVo goes. I’ve written about this in detail before, but I’ve already seen a couple of posts today talking about the impact on TiVo so I thought I’d jump in here again.

To summarize what I’ve said before, TiVo uses the Linux kernel. The Linux kernel is licensed under the GPLv2. NOT GPLv3. The release of the GPLv3 today changes nothing about this.

The Linux kernel development is basically controlled by Linus Torvalds, who originally created it. Linus is on record as being unhappy with the provisions in the GPLv3. He is ‘happier’ with the final version than he was with the early drafts, but not ‘happy’. He’s said that he doesn’t expect to migrate the Linux kernel from v2 to v3. It *could* happen, but there would have to be a very good reason. The most compelling reason could be if Sun puts the OpenSolaris code out under the GPLv3, which they are considering doing. There are a number of features in Solaris that would be very useful in Linux, and vice-versa, but code from one cannot be used in the other as the licenses are not compatible. If Solaris moves to GPLv3, that would be major incentive to move Linux to GPLv3 so that code could be shared.

However, it isn’t a simple matter of just switching the licenses. The Linux kernel is made up from code contributed by thousands of different contributors. *Every one* of those contributors would need to be tracked down and contacted to get their approval to re-license their code under GPLv3. Contributors range from individuals to giant corporations like IBM. And some of the people have died, so their estates need to approve the switch. Inevitably, some of the code will not be able to make the move – the contributor cannot be contacted, or just refuses. Any such code would need to be replaced with brand new code released under the new license.

Clearly, this is not something that will happen overnight.

Meanwhile, even if the code makes the migration, any code released under the GPLv2 remains under the GPLv2 for perpetuity. The license cannot be revoked. So TiVo can continue to use the v2 code indefinitely. If and when the code migrates to v3, TiVo could grab the last generation of v2 code and continue to use it forever if they wished. TiVo isn’t on the bleeding edge of Linux kernel development as it is, there is no need to move to the latest as most of the features added don’t impact the type of use they use it for.

But let’s assume for a moment that the Linux kernel does migrate to GPLv3 and, for some reason, TiVo cannot continue to use the GPLv2 code. What then?

Well, they could move to the GPLv3 code and comply with the new license, of course. It can be done, but it would require changing the way the system is architected, most likely.

That’s not the only option. Linux isn’t the only platform available. There are BSD Unix platforms like FreeBSD, OpenBSD, and NetBSD. All of these are licensed under the BSD License, which is much more permissive than the GPL when it comes to commercial applications. And there are commercial alternatives, like VxWorks.

Another alternative would be a complete architecture change – to Java/OCAP. TiVo has already developed Java-based software to run on OCAP-compatible cable DVRs. That same code base could be evolved to run on a standalone box. You could have a new platform with a Java-friendly CPU as a dedicated platform for the software.

In other words – don’t worry about it. This is unlikely to have any impact on TiVo. And even if it does, it won’t be any time soon, and it won’t be a disaster.

Life continues apace.

About MegaZone

MegaZone is the Editor of Gizmo Lovers and the chief contributor. He's been online since 1989 and active in several generations of 'social media' - mailing lists, USENet groups, web forums, and since 2003, blogging.    MegaZone has a presence on several social platforms: Google+ / Facebook / Twitter / LinkedIn / LiveJournal / Web.    You can also follow Gizmo Lovers on other sites: Blog / Google+ / Facebook / Twitter.
This entry was posted in General Tech, TiVo. Bookmark the permalink.
  • Dave Zatz

    Thanks for the thorough and non-alarmist explanation. )

  • megazone

    TiVo has become the ‘hook’ various news agencies use to report on GPLv3. I imagine they ask “How can we get the average person to care about something as dull as a new open source license? I know – we’ll use the TiVo connection!” And the FSF has done their share of working that connection by coining the term ‘TiVoization’ and using TiVo as their prime example. Of course, there are a lot of other devices, like cell phones, that use Linux in pretty much the same way. But TiVo is a well known name that makes a good example.

  • dalesd

    [quote]Well, they could move to the GPLv3 code and comply with the new license, of course. It can be done, but it would require changing the way the system is architected, most likely.[/quote]
    Why won’t TiVo just do this? It seems a lot simpler than switching to an entire new OS.
    And isn’t there more to this than just the kernel? Isn’t there other GPL licensed software in a TiVo besides the kernel?

  • megazone

    It depends on how many changes they’d need to make, and if they can still satisfy the content partners. If moving the security up into the user space and allowing hacked software to be run on the TiVo opens any holes for piracy, then it is unlikely they’d move to GPLv3. There are major business issues involved that could make moving to another platform worth it instead.

    I don’t know how much of the code under the covers is GPL. None of the user-space is, that’s all in-house. But there are some packages that may be GPL – but it really depends on the author of those packages. TiVo also licenses software from others.