Чи може будь-яка бібліотека, що має ліцензію GPLv2, використана у внутрішній програмі внутрішньої мережі?


13

Я створюю внутрішню заявку на компанію, з якою я підписаний. У цьому додатку ми хочемо використовувати бібліотеку з ліцензією GPLv2 . Деякі моменти

  1. Додаток повинен використовуватися в межах компанії та ніколи не бути доступним для загального користування. Він призначений лише для внутрішнього використання компанії.
  2. Він ніколи не буде продаватися, ніколи !! . Таким чином, гроші не будуть зароблені безпосередньо від продажу коду. Це не продукт.
  3. Існує дві форми використання програми
    • Його рідна форма, яка є конзольною на основі консолі (яка використовує бібліотеку GPL); і
    • Використання через веб-інтерфейс, який викликає виконуваний файл.
  4. Вихідний код залишатиметься закритим вихідним кодом (лише для використання в компанії) та матиме власність

Я пережив численні запитання щодо цього питання ( одне закрите як поза темою, а інше не позначене програмістами ), але мені було важко зрозуміти, чи правильне моє тлумачення ліцензії.

Виходячи з мого розуміння на даний момент, мені дозволяється користуватися цією бібліотекою без будь-яких проблем. Я не змінюю вихідний код і не поширюю додаток або роблю його доступним для загального доступу. Додаток не продаватиметься, а також не поширюватиметься комусь, що не знаходиться в компанії (однак він буде доступний в офісі ДР нашої компанії). Я дуже ймовірно використовувати випущені бінарні версії та не перекомпілювати з джерела.

Наступне запитання із поширених запитань GNU, здається, підтримує мої думки.

Чи GPL вимагає, щоб вихідний код модифікованих версій був розміщений для загального користування?

GPL не вимагає, щоб ви звільняли модифіковану версію чи будь-яку її частину. Ви можете внести зміни та використовувати їх приватно, не випускаючи їх ніколи. Це стосується і організацій (включаючи компанії); організація може зробити модифіковану версію та використовувати її внутрішньо, не випускаючи її ніколи за межі організації.

Але якщо ви випустите модифіковану версію для публіки якимось чином, GPL вимагає, щоб ви модифікований вихідний код був доступний для користувачів програми під GPL.

Таким чином, GPL дає дозвіл на випуск модифікованої програми певними способами, а не іншими способами; але рішення про те, чи звільнити його, залежить від вас.

Чи може будь-яка бібліотека, що має ліцензію GPLv2, використана у внутрішній програмі внутрішньої мережі?


2
Це юридичне запитання щодо рішення адвоката компанії чи головного юридичного консула.
hotpaw2

1
@ hotpaw2 - Ваша пропозиція, безумовно, має свої достоїнства; це найкраще керівництво, яке можна дати, це насправді бентежить, що з усіма розробниками в світі ці питання все ще задаються, і в деяких випадках залишаються незрозумілими. Я думаю, застосовується місцева юрисдикція але, якщо серйозно, то, на мою думку, ліцензія свідомо незрозуміла щодо певних аспектів. Тепер, якщо розробники, які використовують це програмне забезпечення, не змогли отримати чітких відповідей, IMO намагається пояснити поняття юристам і отримує їх тлумачення ліцензії. багато що запитати. Відповідь для розробників розробниками - це шлях
Ахмад

@Ahmad: Єдині аспекти, які я вважаю серйозно незрозумілими, - це частини, яким потрібно дотримуватися законодавства про авторське право: що є похідним твором, що є розповсюдженням і т. Д. Доки ми не маємо правових роз'яснень (у США, що може включати зміну тексту закону чи судових рішень, що виробляють прецедентне право), ніхто точно не знає цього.
Девід Торнлі

Як ви вже згадували, що існують дві форми використання програми 1) її рідна форма, яка є конзольною (на базі бібліотеки GPL); та 2) використання через веб-інтерфейс, який викликає виконуваний файл. У першому поясніть, будь ласка, уточнюйте, що "Це дзвінок до бібліотеки GPL через системні дзвінки або через користувацькі дзвінки"?

Відповіді:


22

GPL у всіх його варіантах є ліцензією на перерозподіл . Він просто не застосовується взагалі, якщо ви не перерозподілите код. Це може застосуватись у майбутньому, якщо ви якось одного дня вирішите зробити продукт із своєї заявки, але не зараз.


Поки ліцензія ніколи не буде перерозподілена, це не вплине на вас. Жоден. Звичайно, почніть це за допомогою свого захисника, якщо ви зовсім не впевнені, і переконайтесь, що вони ознайомлені із законом про ліцензування авторських прав.
Майкл Трауш

2
Іншими словами, всі, хто має двійковий файл, також повинні мати відповідне джерело, щоб вони могли виправляти помилки та створювати новий бінарний файл.

2
Так це означає, що я також можу використовувати веб-сайт GPLv2 всередині компанії, не продаючи її функціональність?
Johnny_D

3

Я думаю, що ви цитували відповідь, значить, у вас є.

Моє знання GPL полягає в тому, що з тим, що ти хочеш зробити, у тебе немає проблем.


3

Тут відповідь залежить від легального визначення розподілу .

Якщо ви даєте програмі вашим працівникам запуск її розповсюдження, тоді застосовуються вимоги GPL, і ви повинні дати джерелам джерел і тим, хто отримує програму .

Якщо надання вашим працівникам копії програми не є розповсюдженням, то у вас немає ніяких вимог, так як ви не поширювали її.

Повідомлення, які ви цитували, говорять про те, що не потрібно публічно надавати код . (Тобто будь-якій випадковій людині на вулиці.)

Зауважте, що зрозуміло, що в GPLv2 веб-сервіс не вважається розповсюдженням. Заплутано лише консольне додаток.

Я пропоную вам отримати юридичну консультацію у юриста вашої компанії.


2

Так, ви можете АЛЕ врахувати співпрацю з субпідрядниками, фірмами-партнерами тощо. Це стало кусати багатьох адміністраторів у задній частині, оскільки "тільки для внутрішніх справ" стало "спільним серед партнерів", а потім "продуктом для продажу". Тоді або частини GPL потрібно переписати з нуля, або ви випустите джерела у свою Інтранет.


4
ОТО, більшість мрій про заробляння грошей на інструментах, розроблених для внутрішнього користування, мрія менеджерів руйнується, усвідомлюючи, наскільки справжньою є корпоративна та глючна програма. Ліцензія завжди була останньою проблемою, з якою я стикався, коли траплялися такі сценарії.
keppla

@keppla: Так, це означає: використовуйте це, але пам'ятайте про це. Дотримуйтесь напівчисті межі між власником і GPL'd, щоб, якщо настає час змін, ви не опинитеся безнадійно заплутаними. "Ділові таємниці" відокремлюються хорошим шаром абстрагування деякої логіки клею від деталей GPL.
СФ.

1

Версія 2 LGPL дозволяє перерозподілити джерело та двійкові файли.

Можна навіть продати.

Єдине реальне обмеження:

Якщо ви модифікуєте бібліотеку та розповсюджуєте її, тоді ви повинні публічно змінити внесені вами зміни до бібліотеки. Прочитайте пункт 2 LGPL.

Якщо ви не модифікуєте її, у вас дійсно не виникає проблем.


0

Я не думаю, що це буде проблемою. Веб-додатки, що використовують код GPL'd, але не доступний у формі вихідного коду для користувачів, є однією із проблем, які GPLv3 змінили порівняно з GPLv2, закривши цю «лазівку». Це здається в основному тим же питанням.

Залежно від того, для чого саме використовується бібліотека, ще один очевидний спосіб уникнути всієї проблеми - створити дуже просту оболонку навколо бібліотеки. Якщо бібліотека GPL, то для обгортки може знадобитися GPL'd, але якщо інтерфейси чітко відокремлені, то ліцензія коду обгортки не повинна (я майже не сказав, але проконсультуйтеся з належним чином кваліфікованим юридичним практикуючий) впливають на ліцензійні вимоги основної програми.


0

Важливо пам’ятати в усіх цих порадах «програміст-програміст», що жоден з них не є юрисконсультом. Оскільки ця тема зрозуміла, є можливість для інтерпретації з GPL.

Ви повинні зважити вартість піддання вашій організації юридичних позовів, якщо ви порушите GPL проти отримання хорошої, надійної юридичної думки. У цій темі є хороші ідеї, але я не прийняв би рішення щодо цього вкладу самостійно.

-

Наприклад, ось зморшка. Що робити, якщо код GPL'd буде JavaScript?

Коли користувач отримує доступ до веб-сайту з кодом JavaScript GPL'd, технічно "вихідний код" (у цьому випадку JS-файл) "поширюється" кінцевому користувачеві. Це означає, що весь ваш веб-сайт повинен бути GPL'd? Про це теж є ціла дискусія .

Хоча я ненавиджу платників юристів стільки, скільки наступний працьовитий хлопець, враховуючи ризик, це одна сфера, в цілому краще не залежати від консультацій в Інтернеті (крім цієї ради, звичайно).


Нерелевантно - ОП запитує про повністю внутрішнє застосування. У такому випадку жодна версія GPL нічого не говорить про необхідність розповсюджувати що-небудь (хоча посилання на програмне забезпечення, не сумісне з GPL, може бути проблемою), а запитання та відповіді Gnu вирішують проблеми, які безпосередньо не мають вимог.
Девід Торнлі

-1

Як було сказано в попередніх плакатах, ліцензія GPL застосовується лише в тому випадку, якщо ви випустите заявку, якщо вона залишається лише для внутрішнього використання, то жодних проблем не виникає. Однак варто враховувати наслідки незалежно, якщо це колись зміниться.

Моє основне розуміння ліцензії полягає в тому, що вона дозволяє змінювати вихідний код, а потім продавати отриману програму, якщо ви хочете, але за умови, що ви зробите вихідний код доступним для кожного, хто запитає, включаючи будь-які внесені вами зміни.

У випадку складеної бібліотеки GPL'd-код відокремлений від вашої основної бази коду, і таким чином потрібно випускати лише вихідний код для складеної бібліотеки - не інша частина вашої кодової бази.

Якщо бібліотека не зібрана - тобто в додатку PHP, я вважаю, що розділення все ще існує. Скажімо, наприклад, що ваша програма використовує бібліотеку з відкритим кодом для створення PDF-файлів - будь-яка зміна коду, що генерує PDF, буде охоплена ліцензією, і будь-які вдосконалення повинні бути випущені, однак будь-який код у вашій програмі, що використовує цю бібліотеку, не потрібно видавати .

Зауважте, що це змінюється за допомогою GPL v3, згідно з яким ваш код повинен бути відкритим, якщо ви посилаєтесь на бібліотеку з відкритим джерелом ...


1
"потрібно випустити лише вихідний код для складеної бібліотеки" - це описує LGPL, а не GPL. GPL працює за припущенням, що посилання на бібліотеку робить вашу програму похідною роботою бібліотеки, а отже, і самою GPL.
Шон Макміллан

-2

Я не впевнений, чи добре забороняти працівникам перерозподіляти цю програму, оскільки сама програма також є GPL. Тож, на вашу думку, можливо, що "внутрішня програма" потенційно може бути (законно?) Просочена разом із вихідним кодом.


Будь ласка, детальніше поясніть "оскільки сама програма також є GPL". На що ви маєте на увазі? Якщо хтось хоче взяти лише бібліотеку GPL'ed і розповсюдити її, ліцензія починається з того, що я розумію до цих пір. Додаток для інтрамережі (консольна російська мережа) НЕ для розповсюдження, і якщо будь-який працівник вирішить "перерозподілити" заявку компанії, я впевнений, що він не зможе бути службовцем надовго ..
Ахмад

EXE на базі консолі - це GPL, оскільки він використовує бібліотеку GPL, і, таким чином, GPL вимагає, щоб він залишався вільно перерозподіленим тим, хто отримує доступ до нього. Так, працівник може втратити роботу за це, але це його право перерозподілити GPL'd EXE разом із джерелом. Хоча можуть застосовуватися й інші норми та закони (наприклад, комерційна таємниця). Проконсультуйтеся з юристом, чи можна по-справжньому нести "нелояльних" працівників, відповідальних за те, що надає GPL.
zvrba

будь ласка, перечитайте питання. Більшість відповідей, здається, не згодні з вами чи є щось, чого ми всі пропускаємо? Додаток (у тому числі частина GPL'ed) НЕ для розповсюдження / повторного розповсюдження, використовуватиметься лише внутрішньо, не продається, не є загальнодоступним. Бібліотека GPL НЕ буде жодним чином модифікована. Ви знаєте, що Google використовує модифіковані версії ядра Linux тільки для внутрішнього використання і не поширює цю версію. Я підкреслював лише внутрішнє використання.
Ахмад

Незалежно від того, чи плануєте ви розповсюджувати додаток чи ні, не має значення. GPL зрозумів наступне: кожен, хто потрапляє на роботу з GPL, може вільно розповсюджувати її далі (і може вимагати вихідний код). Порадьтеся з юристом, щоб дізнатися, що ще може бути порушено проти ваших співробітників, якщо вони вирішать поширити роботу GPL, як це дозволяє ліцензія GPL.
zvrba

1
Додаток не є автоматично GPL, включаючи бібліотеку GPL. Однак якщо ви хочете розповсюджувати додаток, що включає бібліотеку GPL, він повинен мати ліцензію відповідно до ліцензії, сумісної з GPL. У розділі 7 GPL V2 зазначено: Якщо ви не можете розповсюджувати так, щоб одночасно задовольнити свої зобов'язання за цією Ліцензією та будь-якими іншими відповідними зобов’язаннями, то, як наслідок, ви можете взагалі не поширювати Програму. Тож якщо у вас немає дозволу на розповсюдження коду заявки вашої компанії, ви не можете поширювати програму.
KeithB
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.