The Free Software Foundation (FSF) released the first draft of the General Public License (GPL) version 3 on Monday at the First International Conference on GPLv3, a two day conference held at MIT. As expected, the draft addresses patent litigation protection and digital rights management (DRM) systems among other issues. The new version, when finally adopted, will be the first major revision of the widely popular software license in the more than fifteen years since version 2 was adopted in 1991.
While the wording of the GPL is changing, its core principles remain the same as when it was first published by Richard Stallman, founder and now president of the FSF, back in 1985. The GPL’s main goal continues to be the protection of free software. The term free refers to freedoms associated with speech, not free as in price. The GPL ensures end users the ability to run, copy, distribute, study, change and improve software published under the license. While the GPL does allow for changes to source code and re-distribution of the modified software, any program built on GPL software cannot have additional restrictions placed upon it.
The GPL lies at the heart of the open-source software movement and covers countless popular software applications including Samba, MySQL, and the Linux kernel. Global corporations like Google, eBay, and IBM have utilized and offered many GPL applications, and it is commercial vendors like these and other business users that have been waiting with some trepidation for the new draft version to be released. Most have found the new wording to not be nearly as restrictive as predicted although some ambiguities do remain.
The specific terms of the new version announced on Monday are expected to change based on feedback from the public on this and on the one or two additional discussion drafts that are slated to follow over the course of this year, but the new provisions are all widely expected to survive in some form in the final version scheduled for approval in the first quarter of 2007.
One of these new provisions requires software vendors who distribute GPL software to “shield” users against possible patent infringement claims. While the exact definition of shield is still vague, the FSF has made it clear that this issue must be addressed and hopes the dialogue and debate over the public drafts helps to solidify the steps that must be taken in order to protect downstream users.
Another new addition protects GPL software from being abused by patent-wielding organizations. Specifically, the patent retaliation clause forbids an entity from using a privately modified GPL software application if it has filed a patent infringement lawsuit over that application. In other words, companies attempting to hijack GPL software by claiming copyright of and taking legal action against other developers and users of the software will lose the right themselves to the software in question.
This new version makes it clear that digital rights management (DRM) systems and laws like the DMCA are not compatible with the principles that the GPL are founded on by restricting GPL software from being used in such applications. These “digital restriction movements,” presented under the guise of protecting copyrights, are inherently malicious in regards to the restrictions they place on consumers and as such are not to be used in conjunction with GPL software.
Surprisingly, and probably much to the delight of Google and eBay, the draft does not go in to much new detail regarding the implications of using GPL software for web services. It remains to be seen what if any additions will be made to this wording in the coming drafts.
Finally, the biggest and most significant change according to Stallman is in regards to license compatibility. GPLv3 will make it much easier for software developers to use GPL-based source code alongside with code protected by a range of other open source licenses. He believes the removal of this obstacle will provide a huge boon to the open source developer community by greatly expanding the amount of code that is available for integration in their applications.