> Permissions of this strongest copyleft license are conditioned on making available complete source code of licensed works and modifications, which include larger works using a licensed work, under the same license.
Note the last part: "which include licensed works using a licensed work"
[0]: https://archive.fosdem.org/2021/schedule/event/agplcomplianc...
In the Basic permissions of the actual content of the license https://github.com/minio/minio/blob/master/LICENSE
It's not that difficult to parse if you actually read it top to bottom instead of skimming.
https://drewdevault.com/2020/07/27/Anti-AGPL-propaganda.html
"If the program is expressly designed to accept user requests and send responses over a network, then it meets these criteria. Common examples of programs that would fall into this category include web and mail servers, interactive web-based applications, and servers for games that are played online."
"If a program is not expressly designed to interact with a user through a network, but is being run in an environment where it happens to do so, then it does not fall into this category. For example, an application is not required to provide source merely because the user is running it over SSH, or a remote X session."
[0]: https://www.gnu.org/licenses/gpl-faq.html#AGPLv3InteractingR...
I think you can interact with GPL/AGPL and retain your code propietary by:
- Don't modify the AGPL program.
- Run separatly, using docker container, vm etc
- Interact with CLI, REST API, filesystem, database etc
- Keep the AGPL interaction only to your program, non public consumption, minimum the surface of distirbution the code.
- Keep your code non directly interact, such as avoid use node npm dependencies directly, avoid library linking, use api gateway, use thirdparty module.