The AGPL literally demands specific functionality be present in the software that cannot be removed without breaking the license. The anticapitalist FSF zealots got so in love with the idea of closing what they call "the ASP loophole" that they wrote themselves a EULA.
You are not allowed to modify an AGPL program without adding a mandatory feature to provide the currently-running source code to a remote network user of the software. You are also not allowed to remove that functionality. It's a clear violation of freedom 0.
I suggest that you read the actual text of the AGPL. It's madness. They wanted a EULA so badly.
> You are not allowed to modify an AGPL program without adding a mandatory feature to provide the currently-running source code to a remote network user of the software
That's not true. You only need to provide the modified source code somewhere.
You might want to read it again :-) It seems like you have a wrong idea of what the AGPL does.
edit: I see an immediate downvote. If whoever did this thinks I'm wrong, please share the exact AGPL excerpt that mandates actually building a feature to provide the source code currently in use in the network program itself.
> 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
The application does not have to directly provide its own exact source code, but it must advertise where to find it.
And it's quite unclear what exactly counts here. For a web application it's somewhat obvious how one might do that (although how many AGPL applications are prepared for it as a simple config option vs require you to do additional patching to add it), but for other applications its not.
E.g. you interact with redis over a custom protocol thats self-described as being human-readable. Does that mean I need to inject the offer there somewhere? What if it is a much more opaque protocol? If you ask 5 lawyers, how many opinions on that do you get?
A special endpoint e.g. /about or /license that lists the terms of the AGPL and a link to the source code would suffice. That's not difficult or unreasonable at all.
The AGPL, in its quest to be a EULA, violates free software Freedom 0 ("The freedom to run the program as you wish, for any purpose").
https://www.gnu.org/philosophy/free-sw.en.html
The AGPL literally demands specific functionality be present in the software that cannot be removed without breaking the license. The anticapitalist FSF zealots got so in love with the idea of closing what they call "the ASP loophole" that they wrote themselves a EULA.