AGPL es una licencia bastante nueva que estaba destinada a ir a través de redes GPL. Sin embargo, al no ser abogado, y al no haber leído toda la licencia, no puedo entender qué puede hacer libremente y qué no con AGPL.
Mi incertidumbre se alimenta de esta publicación sobre MongoDB (que es AGPL) y aún más por los comentarios a continuación.
Si seguimos los comentarios, resulta que puede usar las bibliotecas AGPL con su software comercial de código cerrado del lado del servidor, siempre que no modifique la biblioteca. ¿Es ese el caso? ¿O tiene que distribuir toda su aplicación cuando utiliza una biblioteca con licencia AGPL?
El caso con MongoDB es que usa la licencia de Apache para el código del cliente, lo que plantea otra pregunta. ¿Qué sucede si usa el software AGPL, pero lo implementa como una aplicación diferente a la comercial de código cerrado? Por ejemplo, tome iText : es una biblioteca AGPL:
- si lo usa y lo modifica, ¿tiene que abrir el código fuente de toda su aplicación o debe redistribuir solo los cambios en iText?
- si lo usa y no lo modifica, ¿tiene que abrir el código fuente de toda su aplicación?
- Si envuelve iText en otra aplicación que comienza como un proceso separado, pero lo usa desde su aplicación principal, ¿debería abrir el código fuente de todo, o solo la aplicación de envoltura? (La aplicación de envoltura será una API basada en HTTP que tomará archivos pdf y devolverá los resultados del uso de iText como JSON). ¿Se puede usar para eludir la licencia AGPL?
Nota: La pregunta es sobre AGPLv3
Respuestas:
La AGPL se basa en la GPL, no en la LGPL. No contiene ninguna excepción de enlace, y cualquier trabajo que use código AGPL (vinculado o no, modificado o no) también debe tener licencia y distribución de AGPL.
El uso de procesos separados puede eludir la (A) GPL, pero este es un terreno turbio. Si su aplicación final depende del proceso externo, de modo que no funcionaría correctamente sin ella, entonces se consideraría un trabajo derivado del software AGPL.
En la mayoría de los casos en que las personas usan aplicaciones GPL separadas en programas de código cerrado, proporcionan el trabajo GPL como una extensión opcional, o un back-end alternativo a algún otro fragmento de código, etc.
El trabajo (A) GPL no se puede distribuir junto con la aplicación final, incluso como una aplicación separada (por ejemplo, ponerlos en el mismo archivo o repositorio), aunque está bien proporcionar instrucciones sobre dónde encontrar el trabajo GPL y cómo usarlo con tu aplicación
fuente
main
consiste en paquetes compatibles con DFSG , que no dependen de software fuera de esta área para operar. Estos son los únicos paquetes considerados parte de la distribución de Debian .contrib
los paquetes contienen software compatible con DFSG , pero tienen dependencias que no están en main (posiblemente empaquetados para Debian en versiones no gratuitas).non-free
contiene software que no cumple con el DFSG .AGPL es lo mismo que GPL; por lo tanto, si su aplicación está usando el código AGPL, debe tener licencia AGPL.
Lo que AGPL hace además de GPL es la redefinición del usuario. Para los programas GPL que se ejecutan en su servidor, usted es el usuario, para AGPL, los usuarios reales de la aplicación son los usuarios de su sitio web o servicio. Por lo tanto, está distribuyendo la aplicación si alguien más que usted la está utilizando. Y eso, por supuesto, implica todos los requisitos estándar de GPL.
En cuanto a Mongo, supongo que las aplicaciones que lo usan no usan su código, solo algunas API, que no tienen licencia AGPL.
fuente