AGPL - это довольно новая лицензия, предназначенная для использования в GPL-сетях. Однако, не будучи юристом и фактически не прочитав всю лицензию, я не могу понять, что именно вы можете делать свободно, а что нет с AGPL.
Моя неуверенность подпитывается этим постом о MongoDB (который является AGPL) и даже больше комментариями ниже.
Если мы последуем за комментариями, окажется, что вы можете использовать библиотеки AGPL с вашим коммерческим программным обеспечением на стороне сервера, если вы не изменяете библиотеку. Это тот случай? Или вам нужно распространять все ваше приложение, когда вы используете лицензированную библиотеку AGPL?
Случай с MongoDB заключается в том, что он использует лицензию Apache для клиентского кода, что ставит другой вопрос. Что произойдет, если вы используете программное обеспечение AGPL, но развернете его как другое приложение, которое является коммерческим приложением с закрытым исходным кодом? Например, возьмем iText - это библиотека AGPL:
- если вы используете его и модифицируете, нужно ли вам открывать исходные тексты всего приложения или распространять только изменения в iText?
- если вы используете его и не изменяете, нужно ли вам открывать исходные тексты всего приложения?
- Если вы заключаете iText в другое приложение, которое запускаете как отдельный процесс, но используете его из своего основного приложения, следует ли вам открывать все или только приложение-обертку? (Приложение-оболочка будет основано на HTTP-API, которое будет принимать файлы pdf и возвращать результаты использования iText в качестве JSON). Может ли это быть использовано для обхода лицензии AGPL?
Примечание: вопрос о AGPLv3
Ответы:
AGPL основан на GPL, а не на LGPL. Он не содержит никаких исключений, связанных с ссылками, и любая работа, использующая код AGPL (связанный или иным образом, измененный или нет), также должна быть лицензирована и распространяться AGPL.
Использование отдельных процессов может обойти (A) GPL, но это мутная почва. Если ваше конечное приложение зависит от внешнего процесса, так что без него оно не будет работать должным образом, тогда оно будет считаться производной работой программного обеспечения AGPL.
В большинстве случаев, когда люди используют отдельные приложения GPL в программах с закрытым исходным кодом, они предоставляют работу GPL в качестве необязательного расширения или альтернативного бэкэнда для некоторого другого фрагмента кода и т. Д.
Работа (A) GPL не может распространяться вместе с конечным приложением, даже как отдельное приложение (например, помещать их в один и тот же архив или репозиторий), хотя хорошо предоставить инструкции о том, где найти работу GPL и как ее использовать с ваше приложение.
источник
main
состоит из DFSG- совместимых пакетов, которые не полагаются на программное обеспечение за пределами этой области для работы. Это единственные пакеты, которые считаются частью дистрибутива Debian .contrib
пакеты содержат программное обеспечение, совместимое с DFSG , но имеют зависимости не в основном (возможно, упакованы для Debian в несвободном виде).non-free
содержит программное обеспечение, которое не соответствует DFSG .AGPL такой же, как GPL; поэтому, если ваше приложение использует код AGPL, оно должно быть лицензировано AGPL.
Что AGPL делает поверх GPL, так это переопределение пользователя. Для программ GPL, работающих на вашем сервере, вы являетесь пользователем, для AGPL реальными пользователями приложения являются пользователи вашего веб-сайта или службы. Поэтому вы распространяете приложение, если его использует кто-то другой, кроме вас. И это, конечно, подразумевает все стандартные требования GPL.
Что касается Mongo, я предполагаю, что приложения, использующие его, не используют его код, только некоторый API, который не лицензирован AGPL.
источник