У мене є два плагіни. Один має ліцензію GNU LGPL 3, а інший має ліцензію на програмне забезпечення Apache, версія 2.0. Чи можу я використовувати їх у своєму комерційному додатку? І якщо так, то які заходи безпеки слід вжити?
У мене є два плагіни. Один має ліцензію GNU LGPL 3, а інший має ліцензію на програмне забезпечення Apache, версія 2.0. Чи можу я використовувати їх у своєму комерційному додатку? І якщо так, то які заходи безпеки слід вжити?
Відповіді:
Чи можу я використовувати їх у своєму комерційному додатку?
Це залежить від того, що ви маєте намір робити з програмним забезпеченням, яке ви виробляєте.
По-перше, ні ASL 1 , GPL, ні LGPL не обмежують те, що ви можете використовувати програмне забезпечення для своєї організації. Усі обмеження стосуються коду, який розповсюджується за межами вашої організації.
Для GPL обмеження полягає в тому, що якщо ви включаєте код GPL'ed у власне програмне забезпечення, а потім розповсюджуєте програмне забезпечення за межами вашої організації, ТІЛО ви повинні зробити вихідний код доступним за умовами GPL або сумісної ліцензії з відкритим кодом.
Отже, якщо ви використовуєте код GPL'ed у своїй програмі та розповсюджуєте його, то ваша програма повинна бути відкритим кодом ... інакше ви порушуєте ліцензію.
Для LGPL обмеження (див. Вище) стосується лише вихідного коду самої бібліотеки LGPL'ed; тобто якщо ви зміните бібліотеку. Якщо ви просто використовуєте бібліотеку, вам не потрібно робити доступ до вихідного коду.
Існує також обмеження, що код LGPL у вашій програмі повинен бути замінений користувачем вашого коду. Це означає (по суті), що якщо ви поширюєте свій код лише як бінарні файли, ви не можете статично пов’язати свій код з цією бібліотекою. Ви повинні використовувати динамічне посилання.
Для ASL єдине суттєве обмеження полягає в тому, що ви повинні сказати, чи змінили ви з оригінальної версії код ASL'ed, який ви використовуєте.
Нарешті, лише для того, щоб зрозуміти, ні GPL, LPGL, ні ASL не ставлять жодних обмежень щодо вашої мети у використанні програмного забезпечення. І це включає, чи є ваша мета - заробляти гроші. Вони просто стримують спосіб заробляти гроші ... а у випадку з LGPL та ASL обмеження досить мінімальні.
І якщо так, то які заходи безпеки слід вжити?
Для LGPL та ASL ніяких запобіжних заходів не потрібно.
IANAL - Я не юрист. Якщо вам потрібно бути впевненим, запитайте справжнього кваліфікованого експерта; тобто юрист, який спеціалізується на програмному праві інтелектуальної власності.
1 - Для цілей цієї відповіді ASL == Ліцензія на програмне забезпечення Apache версія 2.
Ліцензія Apache не встановлює жодних обмежень на програмне забезпечення, яке посилається на плагін або бібліотеку, що поширюється за ліцензією Apache. З іншого боку, LGPL має вимогу, що або бібліотека LGPL динамічно посилається (і може бути замінена користувачем), або вся робота повинна бути випущена за ліцензією на відкритий код, сумісний з GPL.
Для використання в програмі із закритим кодом це фактично означає, що ви можете використовувати плагін Apache Licensed без обмежень і що ліцензійний модуль LGPL повинен бути динамічно пов'язаний.
Якщо ви поширюєте будь-який із плагінів разом зі своїм додатком, ви також повинні або надати джерела для плагінів, або повідомити своїх користувачів, де вони можуть отримати ці джерела.
Перш за все, це не юридична консультація.
Програмне забезпечення GPL не дозволяється пов'язувати (включаючи мережу), збирати або поставляти з програмним забезпеченням, яке не є GPL будь-якої форми. LGPL це трохи послаблює, щоб дозволити сторонній підтримці, яка не є GPL, у тому числі для комерційних продуктів. Важлива частина тут полягає в тому, що вона повинна бути сторонньою (так би мовити), що створює невелику петлю-отвір.
Коротше кажучи, ви посилаєтесь на існуючу бібліотеку LGPL (називайте це першою стороною), але програмне забезпечення, яке робить це посилання, повинно бути зроблено LGPL. Назвіть це програмне забезпечення другою стороною. Хоча програмне забезпечення другої сторони повинно бути випущено як LGPL, але як власник програмного забезпечення другої сторони ви можете дозволити іншому програмному забезпеченню використовувати його поза межами LGPL (доки програмне забезпечення другої сторони залишається доступним і під LGPL). Іншими словами, програмне забезпечення другої сторони повинно бути доступним як LGPL, але це не так потрібноліцензувати його як LGPL у будь-яких випадках. Кожен окремий користувач програмного забезпечення повинен мати ліцензію на використання зазначеного програмного забезпечення за законом. Я говорю, що якщо кожен користувач має доступ до програмного забезпечення як LGPL, ви можете також ліцензувати його, використовуючи невірусні умови. Ви також можете створити сторонне програмне забезпечення, фактично ліцензуючи для себе сторонне програмне забезпечення для використання стороннім програмним забезпеченням за умовами, що не стосуються LGPL. Я навіть чув про те, щоб люди писали собі договір та ліцензію на використання власного програмного забезпечення. Закон може бути дивним! Сторонне програмне забезпечення не повинно бути LGPL ні в якому разі.
Отже, вам потрібно створити бібліотеку, яка пов'язуватиметься з вкладкою LGPL як просто обгортку, і випустіть обгортку як LGPL. Потім ви можете зв’язатись із цією обгорткою ( вашою обгорткою) у програмному забезпеченні, що не стосується LGPL, якщо ваша обгортка доступна як LGPL.
Я не можу виступати за ліцензію на програмне забезпечення Apache, тому що я не знайомий з цим.