Формування проекту GPL: Чи маю я повні права на нову вилку або все ще залежність від початкового власника


34

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

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

Формуючи проект, чи автоматично я володію авторським правом на всю річ? Це актуально, якщо, наприклад, прийняти рішення про майбутню зміну ліцензії або мати можливість застосувати ліцензію GPL до третьої сторони


10
якщо це можливо, кожен може просто роздрібнити проект GPL та отримати те саме програмне забезпечення з абсолютно новою ліцензією, ефективно знімаючи будь-які обмеження, пов’язані з GPL, і анулювати ліцензію GPL одним простим кроком.
user2485710

GPL дозволяє комерційне використання!
feklee

Відповіді:


74

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

Ви робите є авторські права на будь-які (нетривіальним) зміни або доповнення , які ви робите.


Довга відповідь:

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

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


2
Хороше пояснення питань щодо авторських прав.
Рорі Хантер

2
@ArtB, не впевнений у GPL -> AGPL, але LGPL спеціально дозволяє випустити модифіковану версію під GPL ( див. Статтю 2 ). Те, що вам дозволяється робити насправді, залежить від початкової ліцензії.
Бруно

3
@ 2rs2ts не впевнений, що ви сказали, що це правда (див. Розділ 13 GPLv3 ... звичайно, це залежить, якщо ми говоримо про GPLv2 або GPLv3). Крім того, ваші зміни, як правило, завжди є вашими. Якщо ви додасте чарівний віджет до проекту GPL A, можливо, вам доведеться перерозподілити партію під GPL, але якщо ви додасте той самий магічний віджет до BSD проекту B, ви можете повторно ліцензувати свої речі (а не речі з проекту A) будь-яким способом (який сумісний з ліцензією проекту B). (Як завжди, отримуйте юридичну консультацію, якщо хочете бути впевненими. Це не все.)
Бруно

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

4
@Lohoris: Ви праві, що можете випускати патчі, які ви пишете, за будь-якою ліцензією. Але якщо недбалий вибір цієї ліцензії може зробити виправлений код нерозповсюджуваним, оскільки неможливо виконати всі ліцензійні вимоги.
Барт ван Іґен Шенау

24

Ваш роздвоєний проект є похідною від оригінального коду проекту. Іншими словами, ваш проект використовує оригінальний проект, і тому ви зобов'язані його ліцензією. Якби це не було правдою, ліцензія взагалі не мала б сенсу.

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


Відповідь Барта передбачає більш жорсткі умови, ніж ваші, щодо ліцензійних вимог роздвоєного коду - який із них точний у загальному випадку?
Томас

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

4
@ Томас Дана є правильним, якщо оригінальна ліцензія дозволяє повторне ліцензування, то ви можете повторно дозволити новий проект. Я не переконаний, що у відповіді Барта йдеться про те, що ви інтерпретуєте. ОП говорить про код, ліцензований відповідно до GPL, тому два в цьому випадку рівноцінні.
Taemyr

5
@Thomas, я не думаю, що там є конфлікт. Суть обох наших відповідей полягає в тому, що ви продовжуєте пов'язуватися ліцензією коду, від якого ви розігнали . Однак ви можете робити все, що дозволяє. Барт зазначає, що якщо оригінальна ліцензія на роботу дає вам дозвіл, ви можете оформити свою роботу за іншою ліцензією.

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

17

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

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

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

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


1
Я, як правило, погоджуюся з вашою відповіддю, але я думаю, що ви можете перефразувати це речення: "з простим законом про авторські права вам не дозволять створювати похідний твір". Як правило, напевно достатньо зробити вигляд, що це точно, але є винятки. (Затримані авторські права, пародія тощо). Хоча я визнаю, що більшість не застосовуються до GPL.
Патрік М
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.