Google has announced its Google Code developer site will now host open-source projects using any license approved by the Open Source Initiative (OSI). Previously, as part of its longstanding protest against "license proliferation," the web giant only allowed projects using a small subset of OSI licenses.
Google still doesn't like license proliferation, but it's embracing more licenses nonetheless. "We think we've made our point [about license proliferation] and that this new way of doing things is a better fit to our goal of supporting open source software developers," reads a blog post from Google open-source guru Chris DiBona.
DiBona and company have added a new option to Google Code's license selector that lets you specify a license that's not included in Google's existing list. After selecting the "other-open source" option, you must also identify the license in your licensing, copying, or similar file.
Public domain projects must still be approved by Google. "True public domain projects are quite rare and, in some countries, impossible," DiBona writes. If you're interested in setting up a public domain project, the Google man suggests you check out D. Richard Hipp's SQLite for the proper "style." You can request the use of a public domain license by emailing the company at email@example.com.
DiBona adds that Google "will continue to hunt down and kill non-open source projects or other projects using Google Code as a generic file-hosting service."
This spring, Google caused a bit of controversy in the open source world when – despite its stance against license proliferation – it introduced a new license for its WebM web media format. But after complaints, the company switched to a pure BSD license.
According to DiBona, Google is now embracing all OSI licenses in part because it felt bad about rejecting projects using such licenses as the zlib (a simple permissive used to distribute the zlib and libpng software libraries) and the AGPL or Affero General Public License (a version of the GPL that requires source code be made available when server software is used over a network – i.e. the web).
"We never really liked turning away projects that were under real, compatible licenses like the zlib or other permissive licenses, nor did we really like turning away projects under licenses that serve a truly new function, like the AGPL," he says. "We also think that there were inconsistencies in how we handled multi-licensed projects (for instance: a project that is under an Apache license, but has a zlib component)."
Google's new stance on the AGPL is particularly noteworthy. Previously, many in the open source community accused Google of snubbing the AGPL on Google Code because the license ran counter the company's own interests. Google, after all, makes a living off of software that used across the web. Other versions of the GPL require the sharing of source code if you distribute software to others, but such distribution does not include the use of software over a network. ®