Android GPLv2 termination worries: one more reason to upgrade to GPLv3
Thanks to Android's commercial success, the kernel Linux, which is released under the GNU General Public License (GPL) version 2, is being distributed more than ever before. Whenever someone distributes GPL-covered software, they must follow a few conditions set forth in the license. These conditions try to give anyone who receives the software both the legal permission and the practical tools necessary to change and share the software themselves if they wish.
Not all of the companies that distribute Android heed these conditions. We've witnessed an uptick in GPL violation reports—some convincing, others incomplete or misinformed—against these vendors. We generally can't pursue these violations directly, because only copyright holders can enforce free software licenses in most countries, and few Android devices use FSF-copyrighted code. However, people still seek out our opinions about the relevant parts of the GPL, and that discussion has recently turned to GPLv2's termination provisions. Section 4 of the license says, “You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License.”
When we enforce the license of FSF-copyrighted software, we give violators back the rights they had after they come into compliance. In our experience, developers of Linux are happy to do the same. Unfortunately, even if we assume they all would restore these rights, it would be extremely difficult to have them all formally do so; there are simply too many copyright holders involved, some of whom haven't worked on the project in years or even decades.
When we wrote GPLv2 in 1991, we didn't imagine that a free software project might have hundreds of copyright holders, making it so difficult to get a violator's rights restored. We want it to be easy for a former violator to know that they're still allowed to change and share the software; if they stop distribution because of legal uncertainty, fewer people will have free software in the long run. Hence, we created new termination provisions for GPLv3. These terms offer violators a simple method to earn back the rights they had. Parties who violate the license have their rights restored provisionally as soon as they come back into compliance, and permanently if no copyright holders terminate those rights within sixty days of the last violation. Furthermore, first-time violators will have their rights restored permanently if they come into compliance within thirty days of receiving such notice.
GPLv3's approach has several advantages over GPLv2's. By having the license grant forgiveness by default, instead of terminating rights permanently, it better matches our community's expectations and normal compliance strategy. It will be easier for violators to get their rights restored by any copyright holders who do terminate rights, because the notice will establish a clear way for the violator to get in touch. Finally, GPLv3's termination provisions don't sacrifice anything we need: the license's conditions still do their best to protect software freedom, and copyright holders will still be able to legally enforce the license against parties that don't comply.
This is just one of many reasons why GPLv3 is better than GPLv2. This change has already given some companies the reassuring nudge they needed to start distributing GPL-covered software, and we expect to see more of that in the future. When we give distributors a chance to rejoin the free software community and fix any mistakes they might make—in stark contrast to most proprietary software licenses—we get both compliance and more allies. GPLv3 improves on earlier versions of the license by codifying that enforcement strategy. For this reason and others, we urge developers who are releasing projects under GPLv2 to upgrade to GPLv3. Companies that sell products that use Android can help out by encouraging the developers of Linux to make the switch to GPLv3.
[Note: This article was edited substantially at 18:48 on August 18, 2011 to adjust emphasis throughout the piece.]