OK, I saw this article and some others in the past week. The GPLv3 is the General Public License, version 3. What is it? The GPL is the license that covers a great deal of open source software or free software. (Never say they’re the same thing within earshot of Richard Stallman. I’ve been there for that. ) In particular, it is the license that governs the Linux kernel, which TiVo uses in their products. I didn’t think it was worth commenting on, but I’ve seen it popping up in other blogs (like PVRWire) and secondary articles, so I thought I’d toss my two cents in.
The big deal is that the new edition of the license, version 3, has language that was specifically designed to forbid some of the things TiVo has done. Basically, TiVo has designed their recent boxes to block loading modified software on the box. TiVo provides their modifications to the Linux kernel, as required by the GPL, but the boxes are designed to prevent users from loading modified software. TiVo does this to be able to lock the box down to allow copyright controls, which they have to do to make deals to provide services like TiVoCast and Amazon Unbox.
When TiVo made their SEC filing this week, they included a comment that addressed the GPLv3:
If the currently proposed version of GPLv3 is widely adopted, we may be unable to incorporate future enhancements to the GNU/Linux operating system into our software, which could adversely affect our business.
This may seem dire at first glance, but keep in mind that SEC filings are deliberately extremely conservative and pessimistic. If you read them you see a litany of possible impacts on the business, just about any company’s filing could make you think that company is dancing in a minefield of risks.
Today, the Linux kernel is governed by the GPLv2, which doesn’t have any prohibitions against the kind of application TiVo has used it for. Even when GPLv3 is released, it won’t mean anything immediate for Linux. Linux is specifically licensed under GPLv2, and every individual licensed component would need to be migrated to v3, which would require the contributor to approve. It would only impact TiVo if some of the software they specifically use were migrated to v3.
But there’s more, any software licensed under v2 is perpetually licensed under v2. Only future updates could be migrated to v3. So TiVo could continue to use the v2 software indefinitely. As TiVo says, the risk is that they wouldn’t be able to incorporate future updates to Linux and take advantage of them.
I don’t think that’s a big risk. There are a number of ways TiVo could cope with that.
- They could modify their solution to comply with the GPLv3, making it moot.
- They could continue to use GPLv2 software, and implement any changes and improvements in-house as necessary.
- They could switch from Linux to another kernel. BSD licenses are much more permissive for commercial applications. They could re-implement on FreeBSD, OpenBSD, etc. They could also move to a proprietary embedded platform, like VxWorks.
- Now that they have an OCAP code base, developed for Comcast & Cox, they could make that their standalone platform. New boxes could basically run a Java Virtual Machine and host the OCAP software, or something derived from it.
That’s just what I can think of off the top of my head. In other words, the GPLv3 isn’t really any major threat to TiVo’s business. There are a number of ways they can cope with it, and that’s if it ever becomes an issue. It is also important to keep in mind that it is only the low level software that TiVo uses, the kernel, that is covered under the GPL. All of the TiVo application software, what end users think of as ‘TiVo’, is proprietary TiVo software. So this doesn’t imply anything about the higher level functionality, except the interaction with copyright and content controls.