A new GNU General Public License (GPL) 3 draft issued Wednesday takes aim at patent covenants of the sort Novell and Microsoft struck in November, an expected but major change in a license poised to shake up the open-source world.
The latest GPL 3 draft blocks developers from conveying GPL-covered works if they have in place an arrangement with a third party that has granted a patent license selectively to that developer's customers. The clause was explicitly crafted in response to the surprise Novell/Microsoft alliance, which included an agreement that neither would sue the other over patent infringements. Microsoft has not offered that amnesty to other Linux distributors, and the implication that it could take action over perceived open-source infringements on its intellectual property roiled the open-source development community.
The Novell/Microsoft patent covenant aims to undermine the key user freedoms open-source software is meant to ensure, Free Software Foundation president and GPL author Richard Stallman said in a statement accompanying the GPL 3 draft release.
"In this draft, we have worked hard to prevent such deals from making a mockery of free software," Stallman said.
A 61-page explanatory document accompanying the new draft goes into extensive detail about the potential effects of the Microsoft/Novell arrangement, which it vehemently denounces.
"The basic harm that such an agreement can do is to make the free software subject to it effectively proprietary. This result occurs to the extent that users feel compelled, by the threat of the patent, to get their copies in this way," the Discussion Draft Rationale document says. "So far, the Microsoft/Novell deal does not seem to have had this result, or at least not very much: Users do not seem to be choosing Novell for this reason. But we cannot take for granted that such threats will always fail to harm the community."
The new draft includes a handful of other changes, including the introduction of a 30-day grace period for first-time violators of the license's terms to remedy problems. Additional new terms aim to ease license compatibility, though GPL 3 will not be compatible with two key licenses it had hoped to reach a detente with, the Eclipse Public License and the Apache License. A complex patent-termination clause interpretation problem has put the kibosh on Apache compatibility, according to the Discussion Draft Rationale.
"We regret that we will not achieve compatibility [with Apache] despite what we had previously promised," the document states. "We apologize to the Apache community for having previously overlooked the significance of this issue. We look forward to further discussions with the Apache Foundation in the hope of achieving compatibility in the future."
In the works for more than a year, the GPL 3 was originally intended to be finalized this month. The Novell/Microsoft deal and other unforeseen legal morasses delayed the drafting process. The Free Software Foundation intends to keep the current draft open for discussion for 60 days. That feedback will be used to craft a "last call" draft, which will be open for another 30 days for comment. After that, a final GPL 3 version will be issued and adopted.
The GPL 3 will be the first revision in more than 15 years to the most widely used license for open-source software. Because GPL 3 is incompatible with GPL 2, it threatens to cause a schism in the open-source world as project coordinators who don't embrace the new license's terms continue licensing only under GPL 2.
The Linux kernel is one such project licensed exclusively for GPL 2, while other key components of Linux distributions, such as the GNU operating system components controlled by the Free Software Foundation, will immediately move to GPL 3 upon its official release. The result will be a fork in critical projects, with new developer teams forced to splinter off and continue future development separately, under different licensing terms. (Software licenses can't be changed retroactively, so GPL 3 restrictions will only apply to code created and released after the license is formalized and officially adopted by the projects that choose to migrate to it.)
Top Linux developers are staying mum about their preparations for that forking. Red Hat declined to make its executives available for interviews, instead issuing this prepared statement from Mark Webbink, its deputy general counsel: "At this time, we do not have a final draft of GPLv3 and it is too early to draw any conclusions. We look forward to positively contributing toward the process and are hopeful that the results will produce an acceptable framework for Red Hat."
Novell posted a statement on a company blog Wednesday following the release of the latest draft.
"Novell is not going to offer a public interpretation on specific provisions of the draft at this time," company spokesman Bill Lowry wrote. "Nothing in this new draft of GPL3 inhibits Novell's ability to include GPL3 technologies in SUSE Linux Enterprise, openSUSE, and other Novell open source offerings, now and in the future."