Archive Index (1999-2012) | 2013-current at | About  

GPLv3’s device-related language evolves

Jun 1, 2007 — by LinuxDevices Staff — from the LinuxDevices Archive — 1 views

After two years of work by the Free Software Foundation (FSF) and the open source community, the GNU General Public License Version 3 (GPLv3) is due on June 29. The “final draft,” released May 31 for comments, persists with “anti-tiVoization” language, although the scope is narrowed to consumer devices only.

The first draft of GPLv3 was published in September of 2006. It created a stir among device developers, by mandating hackability in devices with GPLv3 software inside.

The hackability mandate in GPLv3 came to be known as “anti-tivoization” language, so named for TiVo, an embedded Linux pioneer that uses pre-boot security features to prevent TiVo hardware from booting user-modified software without extreme measures such as reprogramming or replacing the device's EEPROM.

Anti-tivoization langauge in early GPLv3 drafts proved controversial, leading to modifications in draft three of the license, released three months ago. With the “final draft” released yesterday, the anti-tivoization language changes once more, with the main change being to limit its scope specifically to “User devices,” defined as follows:

A “User Product” is either (1) a “consumer product,” which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, “normally used” refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product.

Another change appears to be a clause exempting devices that boot from ROM (read-only memory), since even their manufacturers would not have the capability to run modified software on such disposable hardware.

In general, the final draft of GPLv3 pays quite a bit of attention to the use of GPLv3 software in devices — perhaps not surprising given the ongoing convergence of computing with consumer electronics. For example, the draft devotes about five paragraphs to the means by which device makers are to distribute “Corresponding Source,” comprised of everything needed to install modified software.

Additionally, devices are featured in the final draft's preamble, which reads in part:

Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users.

In an essay entreating open source developers to adopt the new license version, primary author Richard Stallman explains, “GPLv3 tolerates tivoization only for products that are almost exclusively meant for businesses and organizations.”

More analysis of the anti-tivoization language in GPLv3's final draft can be found at Linux-Watch, here. The full text of the new final draft can be found at the FSF's official GPLv3 information site.

This article was originally published on and has been donated to the open source community by QuinStreet Inc. Please visit for up-to-date news and articles about Linux and open source.

Comments are closed.