Google's AGPL policy doesn't make sense to me
- 381 words
- 2 min
I'm not a lawyer, obviously.
Google is relatively well known for their policy on AGPL, which bans the usage of any AGPL software in Google's codebase. They do, however, support the GPLv3 as a "restricted" licence - which means that whilst it can be included in the Google codebase, it cannot be distributed as a part of customer-facing software such as their search platform or Google Drive sync. So whilst Google is definitely cagey about GPLv3 in their software, why would the AGPL be so much worse that they'd outright ban it?
The additions that the AGPL makes to GPLv3 is just a singular paragraph:
- Remote Network Interaction; Use with the GNU General Public License.
Notwithstanding any other provision of this License, if you modify the Program, your modified version must prominently offer all users interacting with it remotely through a computer network (if your version supports such interaction) an opportunity to receive the Corresponding Source of your version by providing access to the Corresponding Source from a network server at no charge, through some standard or customary means of facilitating copying of software. This Corresponding Source shall include the Corresponding Source for any work covered by version 3 of the GNU General Public License that is incorporated pursuant to the following paragraph.
In other words, the only addition that the AGPL makes is that if you've made modifications to the AGPL licensed work, then you must "prominently" offer all users that might interact with that work, the source code of that work - as well as all other GPL licensed work. Further, the AGPL (by my reading) only requires release source code if the AGPL-licensed software is directly interacted with over the network. So if you want to just "not" release your code, then you can just keep it all internally-facing. Databases that are interacted with by the background can easily be licensed with the AGPL without modifications being available - after all no users are "interacting" with it.
Does that mean that Google's issue with the AGPL is just that they'd need to provide a link to their modifications of all GPL-licensed projects that they use? Perhaps - and that seems kind of odd to me.