Что на самом деле означает «сублицензия»?

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 для своего программного обеспечения) ...
Lilian A. Moraru
Мне не ясно, какое отношение к этому имеет сублицензирование. Вы пытаетесь выбрать лицензию, которая позволяет это, и что означает для вас «сублицензирование»?
Роберт Харви
На сайте programmers.stackexchange.com/questions/105912/ я понимаю, что кто-то может смешать другую лицензию с текущей лицензией, а к ограничениям текущей библиотеки добавлены ограничения дополнительной библиотеки. Или можно применить дополнительную библиотеку к коду, который он добавил в исходный код. И нет, я бы предпочел лицензию, которая не позволяет кому-либо смешивать более ограниченную лицензию.
Лилиан А. Морару
3
Я думаю, вам нужно держать это просто; посмотрите на это с точки зрения «распространения», а не «сублицензирования». Все лицензии с открытым исходным кодом позволяют людям использовать код в любом месте по своему усмотрению; только когда происходит распространение , любые ограничения авторского права становятся очевидными. В вашем случае у вас есть кто-то, кто хочет GPL свой код. Полученный в результате выбор (который вы должны сделать только в случае перераспределения) прост: вы либо живете с новыми наложенными им ограничениями, либо избегаете его кода и остаетесь с исходным MIT-лицензированным кодом.
Роберт Харви
1
Ответ здесь в основном неправильный. Добавив ответ ниже для уточнения.
Крис Трэверс
20

IANAL, но я достаточно обсудил этот и многие другие подобные вопросы с юристами, чтобы иметь представление о том, о чем я здесь говорю. Это не юридическая консультация. Лучшим фоновым чтением является книга Ларри Розена в контексте программного обеспечения с открытым исходным кодом.

Права, Лицензии, Авторское право и Сублицензии

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

В настоящее время в Соединенных Штатах исключительные лицензиаты имеют право на сублицензию (хотя я предполагаю, что это может быть дополнительно уточнено в исключительной лицензии). Это имеет смысл, поскольку предполагается, что эксклюзивные лицензиаты имеют контроль. Не предполагается, что неисключительные лицензиаты не предоставят лицензиару такую ​​монополию.

Например, предположим, я пишу роман. Предположим, я предлагаю эксклюзивную лицензию на произведение в его нынешнем виде в виде книги, и я предлагаю кому-то еще неисключительную лицензию на создание сиквела, являющегося производным произведением. Исключительный лицензиат может выдавать неисключительные лицензии другим авторам для использования выдержек из книги путем сублицензирования. Неисключительный лицензиат не может санкционировать еще одно несанкционированное продолжение моего романа, а также не может сублицензировать исключительного лицензиата право, которое им не было предоставлено (например, права на кино).

Лицензии BSD против MIT и сублицензирование: возможно, большая разница

Этот раздел в основном основан на книге Розена (выше). Если вам нужна юридическая консультация, пожалуйста, наймите адвоката, и не получайте его от Stack Exchange.

Лицензия MIT явно разрешает сублицензирование, а лицензия BSD - нет. После приведенного выше обсуждения это означает, что лицензия MIT допускает то, чего лицензия BSD, вероятно, не делает в большинстве юрисдикций, а именно сублицензирование. Однако обе лицензии касаются только предоставленного кода и программного обеспечения, и ни одно из них не ограничивает то, на что может быть лицензировано произведение в целом. Это приводит к серьезному вопросу о том, как интерпретировать GPL v3 как совместимую с лицензиями BSD.

Под лицензией 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», то на него можно смело ответить «да». Если вопрос «могу ли я связать свое проприетарное приложение с GPL-версией библиотеки, лицензированной по MIT?» сейчас самое время поговорить с адвокатом.
Крис Траверс
1
(Я также не совсем уверен, что сублицензирование - это все, что необходимо в отношении программного обеспечения с открытым исходным кодом, FWIW.)
Chris Travers
0

Я не юрист и не играю в него по телевизору:

В то время как стандартный ответ на такой вопрос - просто поговорить с юристом, я думаю, что лучший ответ - поговорить с первоначальным автором. Скажите им, что вы собираетесь с этим делать и какова ваша целевая аудитория. Помните, что автор не отказывается от своего авторского права на свою работу, выпуская по лицензии, автор может свободно выбирать, что он хочет разрешить с ним. Автор может сказать: «Вы можете раскошелиться на эту библиотеку под этой другой лицензией, которая соответствует требованиям, которые вы ищете», или просто сказать, что «вы можете выпускать свое программное обеспечение, используя любую лицензию, которую хотите, я отказываюсь от требования для X так же, как вы делаете Y». , Лично я получил специальное разрешение на выпуск авторского программного обеспечения с открытым исходным кодом под Apache вместо GPL. Предоставлено для большого, в настоящее время поддерживаемого, проекта, такого как Qt,

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

Также я не согласен с ответом Криса Траверса.

Согласно этой таблице, BSD и MIT позволяют выпускать под другой лицензией. Вот еще один источник, предлагающий сублицензирование. Я прочитал новую лицензию BSD, и она ничего не говорит о том, что вам не разрешается выпускать под другой лицензией - однако в ней есть условия, ни одно из которых не запрещает вам изменять лицензию в производном продукте.

Натали Адамс
источник
Я «автор». Я хочу убедиться, что все это хорошо для пользователей.
Лилиан А. Морару
Лицензия BSD требует, чтобы вы поместили лицензию на копии исходного кода. Лицензия предоставляет прямые лицензионные гранты от автора. В отсутствие сублицензирования не существует механизма, позволяющего изменить лицензию на существующий BSD-лицензированный код, не отстаивая свои авторские права на собственный код напрямую. Это то, что позволяет вам делать сублицензирование, а именно добавлять ограничения, которых нет в исходной лицензии. Надеюсь, это прояснит это. Опять же, я нашел книгу Розена очень полезной здесь.
Крис Треверс
Конечно, как только у вас появятся свои авторские права, различие исчезнет. Поэтому, когда вы добавляете свой собственный код в файл, вы можете добавлять любые ограничения, которые вы хотите, но они применяются только к вашему собственному коду, и вы не можете утверждать их в отношении кода, который вы получили по лицензии BSD, при отсутствии явного права на сублицензию. Таким образом, разница между утверждением ограничений на ваш собственный код и утверждением их на код, который вы получили под другой лицензией.
Крис Треверс