Tivoization: A Necessary Evil

remote

Tivoization is a term coined by Richard Stallman and the Free Software Foundation (FSF) to refer to what they believe is a violation of the GNU Public License’s (GPL) spirit, if not its actual wording. In response to Tivoization, as well as a few other concerns, the Free Software Foundation released a third version of the GPL in 2007. The wording of the GPLv3 is considerably stricter than that of the GPLv2 and other software licenses, and has been criticized by many in the open source community. The stricter language of the GPLv3 has even been blamed for the current migration from the GPL to less restrictive licenses such as the BSD or Apache licences.

This article aims to explain what Tivoization is, why it’s such a polarizing issue in the community, and why it might be something we have to deal with.

What is Tivoization?

Tivoization is named after the TiVo, the first consumer DVR which made time-shifted programming the reality that it is today. The TiVo ran both the Linux kernel and the GNU userland software, and in accordance with the terms of the GPLv2, released all of the appropriate code. As far as the GPLv2 was concerned, TiVo was fully in accordance with the letter of the law.

But there was a problem. Due to requirements put in place by the TV networks and content providers, TiVo had to lock down their hardware so only approved software could run on it. That means no modifications to the original TiVo OS, and no installing a different OS on your TiVo device. The FSF believed this to be in contradiction to the Four Freedoms, claiming that the device had to allow modified versions of its OS to be installed and distributed.

Unfortunately for the FSF, the GPLv2 had no such clause; it only put requirements on software, nothing about hardware. In response, the FSF put a special clause into the drafts for the GPLv3 that specifically forbid a device manufacturer from using GPL software unless that device could have its installed operating system modified or replaced.

The Case for Tivoization

Many people in the industry were critical of the FSF’s stance on Tivoization, including Linus Torvalds himself. To critics, the GPL had no place telling hardware manufacturers what they could or could not do when designing their devices:

Stallman calls it “tivoization”, but that’s a word he has made up, and a term I find offensive, so I don’t choose to use it. It’s offensive because Tivo never did anything wrong, and the FSF even acknowledged that. The fact that they do their hardware and have some DRM issues with the content producers and thus want to protect the integrity of that hardware.

“The kernel license covers the *kernel*. It does not cover boot loaders and hardware, and as far as I’m concerned, people who make their own hardware can design them any which way they want. Whether that means “booting only a specific kernel” or “sharks with lasers”, I don’t care.

Linus Torvalds

More to the point, the decision was out of the hands of TiVo to begin with. The requirement to lock down the hardware came from the content creators that wanted their property protected. There was concern that an easily modified TiVo would make it very easy to pirate TV shows and movies, as the main function of the TiVo was to record live television in compressed digital format. The irony is, had a provision like the Tivoization clause been included in the GPLv2, the TiVo likely would never have been made in the first place, or at least, it wouldn’t have been running GPL software. Linux would have been deprived of one of it’s first and best examples of how useful the young operating system could be outside of the datacenter.

A Moot Clause

For all the bad publicity its gotten the FSF, the GPLv3′s Tivoization clause has done very little to change how GPL licensed software is used in consumer electronics. The biggest problem is that the piece of software most often used in these types of applications, the Linux kernel, can never be licensed under the GPLv3; so the Tivoization clause will never effect it. Even if Torvalds approved of the GPLv3 (which he clearly does not), the fact of the matter is that changing the license on a piece of software requires the agreement of all developers who contributed to the project.

The Linux kernel, being one of the most prolific open source projects in history, has thousands and thousands of developers. Even if you could track down each and every one of those developers (which is in itself impossible, as some may have died since their contribution), the chance that you could get every one of them to agree to a license change is essentially zero.

With the Linux kernel safely outside the reach of the Tivoization umbrella, what’s left to protect? The GNU userland utilities are protected by Tivoization clauses, but all a hardware manufacturer has to do is use the GPLv2 licensed kernel and run a different userland on top of it, which is exactly what Android does. If a manufacturer doesn’t want to go through the trouble of creating their own userland to interface with the Linux kernel, they can always use the extremely popular BusyBox, which is also under the GPLv2.

An Acceptable Loss

The question of whether or not Tivioization is justified is idealogical; is it better to spread open source software, or to protect the ideals behind it? Should the free software community deprive itself the opportunity to shine on a technicality? Is there no such thing as a compromise with free software?

As free and open source software widens its influence on consumer electronics and other mainstream devices, these questions will become increasingly common. At some point, the community needs to decide what is an acceptable loss of freedom in return for expanding the use of non-proprietary open source software and protocols.

Consider if open source browsers like Chromium or Mozilla Firefox would disallow the user from visiting the sites of closed source software developers? Should the ideals of one developer or piece of software be imposed on the user? Is that not, in itself, depriving the user of their freedoms? The issue is well summarized by Torvalds himself when he says:

If I build hardware, and sell it with software installed, you can still copy and modify the software. You may not do so within the confines of the hardware I built, but the hardware was never under the license in the first place.

In other words, GPLv3 *restricts* peoples freedoms more than it protects them. It does *not* cause any additional stated freedoms – quite the reverse. It tries to free up stuff that was never mentioned in the first place.

Linus Torvalds

 


Tom Nardi

Tom is a Network Engineer with focus on GNU/Linux and open source software. He is a frequent submitter to "2600", and maintains a personal site of his projects and areas of research at: www.digifail.com .

Related posts

  • Anonymous

    “is it better to spread open source software, or to protect the ideals behind it?” None. It’s better that you can keep your right to change the software and still be able to run it. And *that’s* the point of forbidding TiVolization: You have the source, you have the ability to change it in any way you want and you *should* be able to run it. Otherwise, it would be like having no access at all to the code.

    There is very little difference between TiVolization and vendor lock-in — and we know how bad vendor lock-in is and that’s one of the most prized points of GPL: You have the code, so you’re not locked to ANY vendor.

    • Justin Malcolm

      Right, you are free to choose any hardware vendor that does not lock you in to their software. You have the software. Vote with you wallet and only run it on open systems that do not lock you in.

      Don’t bitch though because you want to choose a vendor that does lock you in. Closed hardware (even running open software) has just as much right to exist as closed software. Nobody is forcing you to use it though.

      • http://robsku.wordpress.com/ robsku

        Quite right on the first part, but don’t try to tell people not to bitch – it’s our fundamental right, and I most certainly will bitch about companies that are not (IMO) acting ethically. I’m not commenting on “Tivoization” now, but as an example I rather choose Microsoft – I haven’t suffered using their software since ’02 and I don’t intend to buy any software from them… I’ve had trouble with windows, but as it has not been on my computers it’s not my place to demand replacing OS (usually – I have made recommendations and some of them could be classified as demands) on them, but as I see that MS is an unethical company (as is Sony, Apple and many others) I most certainly will keep “bitching” about them, especially as I see them stifling innovation and their actions as harmful to societies, people and development.

        Vote with your wallet indeed, but never stop bitching when someone acts wrong.

  • Pingback: LXer: Tivoization: A necessary Evil | Coders & Admins

  • Sdfkdl

    why should there be one position? Why should the community should have one stand?

    • lloyd braun

      Id go one step further and ask who is The Community?
      There are hundreds if not thousands of communities involved in teh Gnu-Linux ecosystem and many dont have the same beliefs, stances or even interaction with each other.
      Im not a fan of this single ‘community’ many seem to put in one nice little FLOSS box.

  • Anonymous

    TiVOization nullifies the benefits and intent of Free Software. They would completely never release the sources for their changes if they were not obligated to, and the restrictions and lock down absolutely do not serve the end user. Vendors who practice tivozation are at best mooches and, at worst, outright hypocrites.

    At some point, the community needs to decide what is an acceptable loss of freedom in return for expanding the use of non-proprietary open source software and protocols.

    Nonsense. What gain is there in forwarding the use of open tools when the end user in no way benefits from the openness? Instead, we have a Sony rep pushing for a replacement to a GPLv2 project because it was being used to discover and halt GPL violations.

    • Joe

      Sorry, but I’d rather have the source code (under GPL V2) and not be able to modify my TIVO hardware than to drive TIVO to use BSD (or worse-yet Windows) with proprietary code. Once again, the “perfect” is the enemy of the “good”.

      • Anonymous

        I’d rather have the source code

        Currently, they’re happy to violate the GPL. If not TiVO, then the many companies out there that sparked the Busybox suits and Sony’s drive to re-implement it under the name “Toybox” to allow vendors to hide their GPL violations (hypocrites.)

        and not be able to modify my TIVO hardware

        Free Software is meaningless without the ability to use it. You might have the sources, but if all your hardware is locked down and you can’t -use- your new build (or even build it) then what’s the point? Might as well be Windows or BSD, since you’re being controlled and denied anyway.

        than to drive TIVO to use BSD (or worse-yet Windows) with proprietary code.

        Why not, what exactly has TiVO contributed back? Other than posting kernels with hacked up drivers that only work on their hardware, that is.

        Oh and don’t worry about the spread of lock down. It’s being pushed hard by Microsoft and Apple with the long term goal of replacing hardware that you can actually utilize Free Software on with ones that you can only use the software it came with and actively fights to keep you contained. All the better to serve the Content Industry (when they aren’t trying to buy bad laws.) TiVO was just the start.

        • Justin Malcolm

          I think “the point” is that if the software is free, then I am free to create my own hardware to run it on. Hence, it is free software but not “free hardware”.

          What you are arguing is that they should have to free the hardware in order to use free software. What did we contribute to the hardware to make such demands.

          Why don’t we demand that, in order to use a free software application, the operating system has to be free as well? At what point do we stop imposing restrictions on parts of the system that we did not develop?

          Android is Open Source and I can get the code. That means that I can buy cheap hardware from China and get the exact same software experience as on expensive hardware. Third-parties enhancing the code benefit me as well. That is free software. “The point” is that this amazing ecosystem is available regardless of what policies other hardware makers set for their stuff.

          • Anonymous

            What you are arguing is that they should have to free the hardware in order to use free software. What did we contribute to the hardware to make such demands.

            Define “free.” The hardware in most computers, particularly the TiVO, is nothing special. The end user paid for it, thus they own it. Why lock them out of it? (Because, they have ulterior motives for doing so, most of which point to monetizing the end-user in some fashion.)

            Why don’t we demand that, in order to use a free software application, the operating system has to be free as well?

            Well, right now people can make that choice for themselves if they so wish. Tivoization makes that impossible as do the various methods of control being applied in devices like Motorola’s handsets, the Nook Tablet, and every ARM device running Windows 8.

            And suddenly it somehow becomes arrogant or an act of entitlement to question why these locks are being put into place, or to even be critical of them.

            At what point do we stop imposing restrictions on parts of the system that we did not develop?

            And at what point do we stop letting these vendors take away capabilities that we have had for a long time? Especially when they do so not out of your security but the security of the entertainment industry, an industry that already hates you.

            That means that I can buy cheap hardware from China and get the exact same software experience as on expensive hardware.

            For now, at least. Who is to say it won’t be banned in the future? But why suddenly must we settle for second rate hardware from China because hardware from Taiwan and the US treats us which such hostility?

            “The point” is that this amazing ecosystem is available regardless of what policies other hardware makers set for their stuff.

            What ecosystem would that be? Virtually every company that utilizes Tivoization of some sort is using the kernel, busybox, android, or a proprietary stack of some fashion. Rarely, if ever, do they contribute to the wider Free Software ecosystem that exists. As I noted before, they’re even trying to eliminate the kernel and Busybox contributions.

            Tivoization benefits no one but the vendor. It definitely does not benefit you, nor does it benefit Free Software in any fashion that I have seen demonstrated.

          • Ryan Patterson

            What did we contribute to the hardware to make such demands.

            We contributed the money that purchased the hardware from the vendor. Once I own the hardware I should be able to use it how I see fit.

            Would it be acceptable for General Motors to design their vehicles such that the engine is disabled unless the owner buys gasoline from Chevron? Than why is it acceptable for tivo/apple/nokia/etc to design their hardware to only work with one software version?

  • Jon Forrest

    Please watch out for “it’s” vs. “its” problems. You have it wrong at least 2 places.

  • Pingback: Linux News » Tivoization: A Necessary Evil

  • Wcarter4

    I don’t disagree with your sentiments. I will note that GNU/Linux is in no way a “young OS” but that’s largely irrelevant the port to the DVR platform was young.

    • http://profiles.google.com/deanhowell2 Dean Howell

      It was pretty young in 1999, I’d say. Would you disagree?

  • Pingback: Tivoization: A necessary Evil | Linux | Syngu

  • Pingback: OnLive MicroConsole Review: PC Gaming Without The PC

  • Pingback: Linus evil | Zubufood

  • Pingback: The Uphill Climb of Linux Gaming

  • Pingback: The Uphill Climb of Linux Gaming « Linux Game News

  • Pingback: Gnome Founder Miguel de Icaza Solves Identity Crisis, Moves To Mac

Top