Що насправді означає "субліцензія"?


13

По-перше, зрозуміло, що право на субліцензію не дає права на реліцензію.

Скажімо, у нас є бібліотека з ліцензією MIT (1 файл), хтось додає деякі функції до бібліотеки, але ставить їх під GPL (у той самий 1 файл). Або якщо хтось хоче субліцензувати, він повинен розділити код?

Якщо хтось хоче користуватися бібліотекою, як обробляються ліцензії?
Скажімо, розробник використовує лише функції з ліцензії MIT, навіть якщо у файлі є деякі функції під GPL.
Чи повинен він GPL подавати заявку через ліцензійний код GPL?
Чи повинен він видалити код GPL, щоб звільнитись від обмежень GPL або він може просто використовувати бібліотеку з дозволами / обмеженнями MIT, доки він не використовує код GPL?

Відповіді:


5

хтось додає деякі функції до бібліотеки [MIT], але розміщує їх під GPL (у тому самому 1 файлі). Якщо хтось [інший] хоче "субліцензувати", [чи] він повинен розділити код?

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

Чи повинен [субліцензіар] видалити [нещодавно ліцензований] код GPL, щоб звільнитись від обмежень GPL?

Так.


Я дивився на ліцензії з відкритим кодом ( tldrlegal.com/browse ). Я хотів би захистити подальших користувачів бібліотеки (які можуть взяти її у когось іншого) від додаткових обмежень. Практично кожна популярна ліцензія з відкритим кодом дозволяє надавати ліцензію. Ms-PL здається хорошим для цього, але він має інші обмеження (Є також GPL, але я не хочу змушувати користувачів бібліотеки GPL їх програмного забезпечення) ...
Ліліан А. Морару

Мені не зрозуміло, що з цим має "субліцензування". Ви намагаєтесь вибрати ліцензію, яка це дозволяє, і що для вас означає "субліцензування"?
Роберт Харві

З programmers.stackexchange.com/questions/105912/… я розумію, що хтось може змішати іншу ліцензію до поточної ліцензії та до обмежень поточної бібліотеки додаються обмеження додаткової бібліотеки. Або можна застосувати додаткову бібліотеку до коду, який він додав до вихідного джерела. І ні, я вважаю за краще ліцензію, яка не дозволяє комусь змішувати більш обмежувальну ліцензію.
Ліліан А. Морару

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

1
Відповідь тут здебільшого неправильна. Додавши відповідь нижче, щоб уточнити.
Кріс Траверс

20

IANAL, але я обговорював це та багато подібних питань з юристами достатньо, щоб мати гарне уявлення про те, про що я тут говорю. Це не юридична порада. Найкраще фонове читання - книга Ларрі Розен в контексті програм з відкритим кодом.

Права, ліцензії, авторське право та субліцензії

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

В даний час у Сполучених Штатах статут ексклюзивних ліцензіатів передбачає право на субліцензію (хоча, припускаю, це могло б бути уточнено в ексклюзивній ліцензії). Це має сенс, оскільки, як вважається, ексклюзивні ліцензіати мають контроль. Невиключні ліцензіати ліцензіаром не передбачають надання такої монополії.

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

BSD vs MIT ліцензії та субліцензування: можливо велика різниця

Цей розділ здебільшого базується на книзі Розена (вище). Якщо вам потрібна юридична порада, будь ласка, найміть юриста і не знімайте його з Stack Exchange.

Ліцензія MIT явно дозволяє субліцензувати, тоді як ліцензія BSD не робить. Після вищезгаданого обговорення це означає, що ліцензія MIT дозволяє щось, що ліцензія BSD, ймовірно, не існує у більшості юрисдикцій, а саме субліцензування. Обидві ліцензії, однак, стосуються лише наданого коду та програмного забезпечення, і жодна з них не обмежує те, на що робота в цілому може бути ліцензована. Це призводить до значного питання про те, як інтерпретувати GPL v3 сумісний з ліцензіями BSD btw.

За ліцензією MIT ви можете робити в основному дві, здавалося б, подібні речі:

1) Ви можете включити твір у свої власні твори та поширити їх за більш обмеженою ліцензією.

2) Ви можете взяти оригінальну роботу з ліцензією MIT, додати додаткові обмеження на неї та розповсюдити роботу за більш обмеженою ліцензією, але там, де ви зовсім не змінили код. GPL v3 стверджує, що вимагає, щоб це було сумісним, якщо хтось бачить, що GPL регулює всі умови ліцензії. [1]

Однак у сімействі ліцензій BSD ви можете додавати обмеження лише до власного коду та до створених похідних творів. Ви не можете додати їх до вихідного коду, передавши лише деякі права, надані вам. Тому я не можу взяти ліцензований на BSD PostgreSQL, перейменувати його на PostSQL та ліцензувати його під GPL, але я можу взяти Kerberos з ліцензією MIT та перейменувати його як HadesHound та ліцензувати його під GPL (в обох випадках, якщо ні код змінився). Це означає, що транспортний засіб прав є різним (завжди прямим у випадку ліцензії BSD, прямим або непрямим у випадку ліцензії MIT).

Висновки

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

Ви запитуєте про конкретний юридичний документ та термін, що використовується в ньому. Я сподіваюся, що це допоможе пояснити, що саме означає цей термін і який вплив він надає.

Багато ваших запитань, ймовірно, будуть довгими і складними [2] і залежать від юрисдикції, але основне правило щодо ліцензії MIT полягає в тому, що якщо ваш канал стверджує, що він зараз ліцензований відповідно до GPL, він ліцензується під GPL. Однак це може бути або не бути безпечним припущенням згідно ліцензії BSD. Більше того, це справедливо незалежно від того, була змінена оригінальна версія чи ні, якщо була використана ліцензія MIT. Відповідно до ліцензії BSD, обсяг модифікацій дійсно визначальний щодо того, яка ліцензія регулюється.

[1] Одне рішення - бачити GPL по-іншому та дозволяти "розумним юридичним повідомленням" (додаткові обмеження згідно з розділом 7) включати повідомлення про додаткові права ліцензії. У цьому випадку можна мати додаткові дозволи, які можна видалити, і регулюються відповідно до розділу 7 як додаткові дозволи, але також дозволяють в якості додаткового обмеження (відповідно до розділу 7 (b)) повідомляти, що певні права не можна видалити. Це одне з речей, які мені не подобаються щодо GPL v3, а саме те, що він змушує задуматися як юрист щодо того, як вирішити питання сумісності ліцензій.

[2] Наприклад, є відкрите питання, чи потрібно для розповсюдження програмного забезпечення, яке посилається на бібліотеку третьої сторони, взагалі авторські права. Якщо це так, то PostgreSQL, скомпільований на MinGW, вимагає дозволу Microsoft, і вони можуть відкликати це в будь-який час , але якщо цього не відбувається, я можу написати власні програми, що посилаються на GNU Readline, і FSF не можу вимагати це порушення авторських прав. Це відкрите запитання робить більшість ваших запитань щодо того, чи може розробник може зв’язатися з бібліотекою за ліцензією, окрім GPL, неможливо відповісти з будь-якою визначеністю.


1
tl; dr: Поговоріть з юристом.
Роберт Харві

1
Певною мірою так. Але я також вважаю, що як професіонали нам потрібно бути досить поінформованими щодо цих питань. Якщо єдине питання "чи можу я використовувати ліцензійний код MIT у своєму додатку GPL'd", на який можна сміливо відповісти як "так". Якщо питання полягає в тому, "чи можу я пов’язати свою власну заявку з версією бібліотеки, що має ліцензію MIT, на GPL?" настав час поговорити з юристом.
Кріс Траверс

1
(Я також не дуже впевнений, що субліцензія - це все необхідне стосовно програмного забезпечення з відкритим кодом, FWIW.)
Кріс Траверс

0

Я не юрист і не граю жодного на телевізорі:

Хоча відповідь за замовчуванням на подібне запитання - це лише розмова з юристом, я вважаю, що краща відповідь - поговорити з оригінальним автором. Скажіть їм, що ви збираєтеся з цим робити, і яка ваша цільова аудиторія. Пам’ятайте, автор не відмовляється від авторських прав на свою працю, випускаючи під ліцензію, автор вільний обирати те, що хоче дозволити за допомогою неї. Автор може сказати: "Ви можете розпрощати цю бібліотеку згідно з цією іншою ліцензією, яка має вимоги, яку ви шукаєте", або просто сказати: "Ви можете випустити програмне забезпечення, використовуючи будь-яку ліцензію, яку я хочете, я відмовляюся від вимоги для X так само, поки ви робите Y" . Я особисто отримав спеціальний дозвіл на випуск, щоб розпрощати авторське програмне забезпечення з відкритим кодом під Apache замість GPL. Надано для великого, на даний момент підтримуваного проекту, як Qt,

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

Також я не згоден з відповіддю Кріса Траверса.

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


Я «автор». Я хочу переконатися, що це все добре для користувачів.
Ліліан А. Морару

Ліцензія BSD вимагає розміщення ліцензії на копіях вихідного коду. Ліцензія передбачає отримання ліцензійних грантів безпосередньо від автора. Якщо відсутня субліцензія, не існує механізму зміни ліцензії існуючого коду, що має ліцензію BSD, без встановлення власних авторських прав над власним кодом. Саме це дозволяє субліцензуванням, а саме додавати обмеження, відсутні в оригінальній ліцензії. Сподіваюся, це очистить це. Знову я знайшов тут книгу Розена дуже корисною.
Кріс Траверс

Звичайно, коли у вас є власні авторські права на затвердження, відмінність відпадає. Отже, як тільки ви додасте власний код у файл, ви можете додавати будь-які обмеження, які хочете, але вони застосовуються лише до вашого власного коду, і ви не можете стверджувати їх проти коду, отриманого під ліцензією BSD, відсутнє явне право на субліцензію. Отже, різниця полягає у встановленні обмежень на власний код та утвердженні їх на коді, який ви отримали під іншою ліцензією.
Кріс Траверс
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.