5 ms·
> You setting up a reverse proxy doesn't mean that users suddenly aren't "interacting with" the program. That doesn't matter, because again, what the clause ac
by marcan_42 5y ago
> You setting up a reverse proxy doesn't mean that users suddenly aren't "interacting with" the program.
That doesn't matter, because again, what the clause actually says is:
> your modified version must prominently offer all users interacting with it remotely through a computer network
If the version, as modified, makes the offer, then you have met your obligations at the time of modification. The AGPL is out of the picture after the modifications are complete, as it is a copyright license, not a usage license. The clause triggers when you modify the software - adding the reverse proxy in front does not modify the software, and therefore the clause does not apply at that point.
If your argument is that you are still bound by that requirement after the modifications, then all AGPL software authors are in violation of the license, at all times, since it would imply that the AGPL requires everyone who makes a modification to AGPLed code magically ensure that it always offers its source code to users, in all execution environments, no matter what reverse proxies are in front, operated by anyone, which is, of course, impossible.
> Notice what it doesn't say. It doesn't say it has to be offered over the exact same protocol.
If your users interact with the software via a certain protocol, then the offer obviously has to be made over that protocol, because there is no other way to make the offer. If I run an AGPLed DAW and hand a MIDI keyboard to a friend to play on, they are now a network user of the software, and the only way for them to be offered the source code is over that protocol. Of course the actual source code exchange could happen over a different protocol, but the offer has to reach the user (and prominently, as the clause requires) and that's not going to happen if you make the offer over a protocol the user isn't even using!
- legalcorrection 5y agoIt is a violation of copyright law to make a modified work without permission, and the permission here is the license—a contract. Again, using the example of the hypothetical AGPL'd JSON library. Once you link to it and use it in your website's code, the resulting website code is a modified version of that library under terms of the AGPL, a binding contract that you accepted by creating that modified work. What you are suggesting would then violate that contract by using that modified version in a way contrary to the terms of the contract. >If I run an AGPLed DAW and hand a MIDI keyboard to a friend to play on, they are now a network user of the software, and the only way for them to be offered the source code is over that protocol This is obviously not true. You can offer them the source code as soon as you hand them the keyboard. (Of course, no one is going to sue you for giving your friend a keyboard, just like no one will sue you for giving him a print out of a copyrighted picture. No one caring + fair use deals with a lot of these stupid little scenarios.) I could quibble with you counting this as a "remote network interaction", but my point stands either way.
- marcan_42 5y ago> It is a violation of copyright law to make a modified work without permission Hence why I keep speaking of the time when you make changes to the code. > and the permission here is a contract: the license. Which in this case is a pure copyright license, and therefore has no impact on how you use the software, by design, because its requirements only apply to modification and distribution. Look up how the AGPL was created. This was a concern and precisely why they did the bizarre modification-time wording that I keep pointing out. > What you are suggesting would then violate that contract by using that modified version in a way contrary to the license granted for its modification. We have a word for licenses that impose usage restrictions. They're called EULAs. They violate Freedom Zero and are not free software licenses. The AGPL is not an EULA, though it tries its hardest to look like one with that clause. I honestly don't even care that much about people choosing to interpret the AGPL in this way; I actually used to think like you, until I re-read it enough times to really understand what's going on. You're arguing that the AGPLv3 is a nonfree EULA that actually works as anti-SaaS. I'm arguing that it's a nonfree non-EULA that doesn't work. In both cases, it definitely isn't a free software license that actually works as anti-SaaS.
- legalcorrection 5y agoBased on your post, your whole theory turns on section 9: You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. HOWEVER, NOTHING OTHER THAN THIS LICENSE GRANTS YOU PERMISSION TO PROPAGATE OR MODIFY ANY COVERED WORK. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. You're so focused on the first sentence that you missed the one I've put in caps. Once you link to the program, you've created a modified work, which as it says plainly right there in section 9, you cannot do without accepting the license, which is a contract that tells you what you can and can't do with that modified work. I also suspect you're not really understanding that you don't have to touch the source code to the hypothetical AGPL'd JSON library to create a modified version of it. The whole theory of the (A)GPL is that you create a modified work by MERELY LINKING AND USING the library in your own code. The resulting program, including your own code that consumes the JSON library, is then a modified version of the library. This might seem counter-intuitive, but remember, the starting position legally is that you have NO RIGHT to use, modify, distribute, etc. a copyrighted work. You need a license from the owner. A license is a legal contract that can specify whatever terms and whatever conceptual framework it wants. You might think that linking to a library is merely "using" it, but the (A)GPL disagrees and that's the contract that tells you what you're allowed to do with it, take it or leave it.