2009-04-26 5 views
7

У меня есть коммерческое веб-приложение, которое использует компонент под LGPL. Поскольку этот компонент имеет встроенную архитектуру, Я создал вилку для этого компонента, использующего библиотеку (LGPL). В этой библиотеке используется источник данных, который является GPL.Лицензирование LGPL/GPL

Означает ли это, что я должен освободить источник для своего веб-приложения? или просто нужно освободить источник для подключения?

Спасибо за любой вклад и совет, и простите меня за мой бедный английский.

ответ

1

Я не юрист, но ... пока вы не распространяете программу (делая ее доступной для использования, поскольку веб-приложение не является дистрибутивом), вам не нужно отпускать источник ни за что.

+0

Настоящий, но не очень применимый к этому случаю своими звуками. –

10

Чтобы быть на 100% уверенным, вы должны прочитать FAQ, а затем обратиться к адвокату, который знаком с лицензированием программного обеспечения. Не говорите с адвокатами, которые не потому, что они скажут вам не использовать ничего бесплатно/openource, чтобы быть в безопасности, о чем каждый может сказать.

В любом случае, что вы подразумеваете под «источником данных, который является GPL»? Исправлен ли исходный код GPL в вашем приложении?

В FAQ часто задаются вопросы о подключаемом модуле и GPL.

Могу ли я выпустить несвободные программы , предназначенное для загрузки GPL-покрытый плагин?

Это зависит от того, как программа вызывает свои плагины. Например, если программа использует только простую вилку и Exec вызывать и общаться с плагин, то плагины отдельных программ, поэтому лицензия плагин не делает никаких требований о главном программа.

Если программа динамически связывает подключаемые модули, и они делают вызовы функций друг к другу и доли структур данных, мы считаем, что они образуют единую программу, которая должна быть рассматриваться как продолжение как основной программы и плагинов. В Чтобы использовать GPL-охватываемые плагинов, основная программа должна быть выпущена под GPL или свободной лицензией GPL-совместимой программного обеспечения, и что условия по лицензии GPL должны соблюдаться, когда основная программа распределяется для использования с этими плагинами.

Если программа динамически связывает плагины, но связи между ними ограничиваются для вызова «основные» функций плагина в с некоторыми вариантами и ждать его возвращения, то есть окантовка кейс.

Использование общей памяти для связи со сложными структурами данных в значительной степени эквивалентно динамической компоновке.

Как отмечают другие, веб-приложения, которые не распространяются, считаются частным использованием под простым GPL (не в Affero GPL?).

Компания работает модифицированную версию программы под лицензией GPL на веб-сайте . Говорит ли GPL, что они должны опубликовать свои измененные источники?

GPL позволяет любому пользователю модифицировать версию и использовать ее, не распространяя ее на других. Частью этого является то, что делает эта компания. Поэтому компания не должна выпускать измененные источники.

Для людей важно иметь возможность вносить изменения и использовать их конфиденциально, не публикуя эти изменения. Тем не менее, размещение программы на серверной машине для публики, чтобы говорить, вряд ли «частное» использование, поэтому было бы законным требовать освобождения исходного кода в этом специальном случае. Разработчики, желающие решить эту проблему, могут захотеть использовать GNU Affero GPL для программ, предназначенных для использования в сетевых серверах.

+0

Я полагаю, что, когда вы не распространяете источник данных GPL (возможно,?), С вашим приложением, и клиент самостоятельно загружает источник данных GPL и настраивает приложение для его использования, это будет рассматриваться как личное использование на часть клиента, так что никто из вас не должен был выпустить источник на что угодно. Побочный эффект был бы небольшим неудобством для клиента (он должен получить материал GPL отдельно от оригинального создателя и собрать все это вместе). Обратите внимание, что IANAL (я не юрист), поэтому это не официальная юридическая консультация. Проконсультируйтесь с компетентным лицом. –

+0

Вопрос о LGPL, а не о GPL, о котором говорится в этом комментарии, я бы спустил, но не хочу терять свои очки. – Amala

+0

@Amala OP написал: «В этой библиотеке используется источник данных, который является GPL». –

1

Если веб-приложение означает, что вы просто запускаете программное обеспечение на своем сервере и не распространяете его на своих пользователей, тогда оно должно быть простым. Нет распространения, нет необходимости отдавать источник.

(может отличаться с GPL3)

6

Означает ли это, что я должен освободить источник для моего веб-приложения? не

Нет *

или просто необходимо освободить источник для штекера в?

Если вы распространяете приложение, то да, вы также должны распространять исходный код части LGPL.

Вам также необходимо убедиться, что любой, кто получит ваше приложение, получит возможность его изменить. Это важно для скомпилированных приложений - вам нужно будет включить необходимые объектные файлы, чтобы ваше приложение можно было повторно связать с измененной версией кода LGPL. Или используйте динамическую компоновку. Идея состоит в том, что люди должны иметь возможность модифицировать часть вашего кода, которая является LGPL, и повторно объединить ее с вашим приложением.

Вот некоторые из требований LGPL в моих словах (я не юрист):

  • Там должен быть какой-то четкое разделение между LGPL кодом и другим кодом. В частности, получатель должен иметь возможность модифицировать код LGPL или даже полностью заменить его другим кодом, таким как модифицированная версия или более поздняя версия библиотеки. Поэтому, если это скомпилированная программа, тогда код LGPL должен быть либо динамически связан (например, отдельная DLL или общий файл), чтобы его можно было легко заменить для подобной библиотеки и по-прежнему быть совместимым; или, если он статически связан, должны быть предоставлены минимально необходимые исходные файлы и/или объектные файлы, чтобы разрешить перекомпиляцию с альтернативной библиотекой. Часть non-LGPL может не содержать какой-либо части кода LGPL, кроме очень простых файлов заголовков.
  • Должно быть четко указано, какая часть кода покрыта LGPL, включая ее первоначальное уведомление об авторских правах и текст LGPL (включая GPL, на котором он основан).
  • Если объединенное программное обеспечение отображает уведомления об авторских правах во время работы, тогда также должно появиться уведомление об авторских правах для части, покрытой LGPL, а также ссылка на LGPL и GPL.
  • В некоторых случаях вам необходимо предоставить информацию об установке, подробно описывающую использование модифицированной версии кода LGPLd в комбинированном приложении.

Это были лишь некоторые ограничения, но LGPL также предлагает вам ряд свобод, что другие лицензии, такие как GPL, не имеют. Если вы распространяете комбинированную работу, которая включает в себя чужое LGPL лицензированного кода:

  • Вам не нужно освободить исходный код для остальной части вашего приложения (т.е. без LGPL части). Единственное исключение из этого, как описано выше, - если все это статически связано, вам нужно будет предоставить достаточно кода (и/или объектных файлов), чтобы иметь возможность повторно связать его с альтернативной или модифицированной версией кода LGPL. Если вы динамически связываете и взаимодействуете с обычным API, вам не нужно об этом беспокоиться.
  • Вам не нужно освобождать остальную часть вашего приложения под GPL. Вы можете использовать любую лицензию, которая вам нужна, включая более ограничительные запатентованные лицензии, при условии, что при ее распространении вы будете следовать правилам.
  • В отличие от версии GPL 3, которая запрещает использование кода при реализации защиты от копирования или программного обеспечения DRM, вы можете использовать лицензионный код LGPL версии 3 в приложении, которое включает защиту от копирования или DRM.

Недавно я написал analysis of the LGPL license - вы можете прочитать это для получения дополнительной информации.

Также, пожалуйста, прочтите actual text of the LGPL. Это не слишком долго.

* Вы упомянули, что библиотека, которую вы используете, имеет источник данных GPL. Предположительно, это означает, что на самом деле вы не будете распространять эти данные GPL с помощью библиотеки LGPL, которая ее использует.

+0

О, да, если вы не распространяете приложение, а просто хотите использовать его для личного использования (например, на своем собственном веб-сервере), переходите в гайку. Требование распространять исходный код + другие инструменты только в том случае, если вы распространяете приложение. – thomasrutter

Смежные вопросы