5 ms·
> Then there is also the AGPL, which isn't a Free Software license, but rather an end-user license agreement (EULA), because it violates Freedom Zero: the freed
by jordigh 6y ago
> Then there is also the AGPL, which isn't a Free Software license, but rather an end-user license agreement (EULA), because it violates Freedom Zero: the freedom to use software however you want.
If you have this opinion of the AGPL, then you should also have it about the GPL, since the only difference between the two is section 13 of both of them (seriously, just diff them) which says that conveying over a network also triggers copyleft. This is just a modernisation of plain ol' copyleft from the days when conveying was mostly done on physical media instead of over a network. If some day we discover a way to distribute software over neither a network nor physical medium (I can't imagine what that could be... quantum entanglement?), then the definition of "conveying" should be updated to reflect the new technology.
The GPL has long been considered open source by OSI and free software by the FSF. You are free to use the software however you want -- you're just not free to deny this freedom to your users or clients, with neither the GPL nor the AGPL.
- marcan_42 6y agoThe AGPL section 13 isn't about conveying the program itself, it's about making it available as a service for network interaction. It may be just a one paragraph difference, but that difference is what makes the AGPL into an EULA. It's a requirement on users. The GPLv3 has zero requirements on users, only on distributors. You might think this is a valid clause to include, and like its effects, and that's fine (though a close reading of that AGPL clause reveals a myriad of problems; it's extremely poorly thought-out and I find it unlikely that it would survive in court if properly challenged, with many workarounds possible, or causing problems for normal usage, depending on interpretation). But it doesn't change the fact that, suddenly, it makes it into an EULA, since it imposes a condition on usage, not distribution. The GPL and other Free Software licenses strictly give you rights. You have no right to copy software by default under copyright. Those licenses give you the right to do so, subject to certain conditions. The AGPL removes rights. It removes the right to use (not distribute) the software as you wish if you do not follow certain conditions (that you don't modify it without making those modifications available to remote users who are otherwise not receiving a copy of the program anyway, and not invoking copyright). Linux distributions should be including the AGPL as a click-through license when users request to install such software from the repositories. In the current status quo, users are required to abide by terms they haven't been required to read, and might accidentally violate the license by doing something that is otherwise legal, such as editing a script in /usr that is part of such an app and exposing it over the Internet.
- jordigh 6y agoNo. It's not a requirement on users anymore than the GPL requiring you to distribute corresponding source on CDs was a requirement on users. Morally and legally, the distribution medium does not make a difference. When you make the software available over the network you are no longer the user -- the users of the software over the network are the users. When you convey the software over the network you are a network operator and a distributor. Being a network operator and a distributor imposes obligations upon you. It is not a EULA. The AGPL even says, in the same section that the GPL says (to wit, section 9) that you don't need to accept it in order to be granted its rights.
- marcan_42 6y agoYou seem to have trouble understanding the difference between network usage and distribution. If I give you a CD with nginx, I'm distributing it. If I send you a .tar.gz with nginx, I'm distributing it. If I bring up nginx on a server, put some HTML files in the webroot, and give you a URL to it, I am not distributing nginx. I am merely using nginx, and offering you a service using nginx. I am not offering nginx itself. I am distributing my HTML website, and I am merely using nginx for it. Cases 1 and 2 invoke copyright. Case 3 does not. In the absence of a license, you are not allowed to do 1 nor 2, but you are allowed to do 3. I can give you software I created, say nothing whatsoever about its license (which means, implicitly, "all rights reserved"), and international copyright law says you can not do 1 nor 2, but you can do 3. The GPL, BSD, and other free software copyright licenses say you can do 1 or 2, under certain conditions. The AGPL, and other EULAs, says you can NOT do 3, unless you meet certain conditions (other EULAs may, for example, limit the number of users, which would be typical for typical proprietary software server EULAs; the AGPL limits how you can serve the software, in that you must provide source changes to users of the service). Therefore, the GPL and BSD strictly grant rights (to copy). The AGPL both grants rights to copy and restricts rights to use. It is therefore not a copyright license, but a contract, an EULA, a click-through usage agreement. And anyone who treats it as a copyright license (i.e. users are not expected to care) is doing a disservice to their users, because they are, in fact, not allowed to use the software without abiding by that contract (license). If nginx were AGPL-licensed (thankfully it isn't), and I made a change to the source for personal use, then the AGPL would require me to stick a download link to that modified source in the footer of every website served using that copy of nginx, even if I am not serving the nginx binary itself. The GPL is already perfectly suited to cover distributing software on the internet, as tarballs or whatever. The GPLv2 had some outdated provisions referencing a "medium" and written offers (e.g. the CD story), and the GPLv3 already covered that by saying you can just send the source via the same medium as the binary, e.g. from a network server. The AGPL is a very different beast, and it has nothing to do with updating the GPL to allow for network transmission of the source, as you seem to imply. Have an example: I run a Nextcloud instance for personal use. It is AGPL-licensed. Thankfully I have not made any changes to the code. However, if I touch a single php file in my /var/www/nextcloud (other than config files - hopefully, the AGPL is too vague to say for sure), that means I now need to figure out how to package and distribute that change to literally every visitor to my instance, which could be anyone on the internet (even if they just hit the login page). This is NOT possible with a purely copyright license. And my distribution did not warn me about it (like they did for proprietary software EULAs, which require an explicit ack), because they erroneously believe that the AGPL is not an EULA, because the FSF wrote it. Does this make sense now?