2009-07-08 2 views
4

Что значит удвоить лицензионный код? Я не могу просто поставить обе лицензии в исходные файлы. Это означает, что я обязываю пользователей следовать правилам обоих из них, но лицензии, вероятно, будут противоречивыми (в противном случае не было бы причин удваивать лицензию).Что значит удвоить лицензию?

Я предполагаю, что это что-то вроде в криптографической цепочки, cipher = crypt_2(crypt_1(clear)) (в общем случае) означает, что cipher ни выход crypt_2 на clear, ни выход crypt_1 на clear. Это результат композиции.

Кроме того, в двойном лицензировании, в действительности мой код имеет один лицензию, это просто, что эта новая лицензия говорит пожалуйста, следуйте всем правилам license1, или все правила license2, и вы тем самым предоставило право перераспределить это приложение в соответствии с этой «двойной» лицензией, лицензией1 или лицензией2 или любой лицензией, в соответствии с которой лицензия 1 или лицензия2 разрешают вам распространять это программное обеспечение, и в этом случае вы должны заменить соответствующую лицензионную информацию в этом приложении на новая лицензия.

(Означает ли это, что, прежде чем кто-то может использовать приложение под license1, он должен выполнить операцию перераспределения самостоятельно? Как бы он задокументировать тот факт, что он сделал эту операцию?)

Я правильно. Какой файл LICENSE и какой текст поместить в исходные файлы мне понадобится, если я захочу удвоить лицензию, для примера, Apachev2 и GPLv3?

+0

Aha! Ruby имеет явную основную лицензию: http://www.ruby-lang.org/en/LICENSE.txt –

+0

Соглашение занимает в два раза больше места, чем лицензия 'float' – bobobobo

+3

Я голосую, чтобы закрыть этот вопрос, потому что ** речь идет о лицензировании или юридических проблемах **, а не о программировании или разработке программного обеспечения. [См. Здесь] (http://meta.stackoverflow.com/a/274964/1402846) для получения дополнительной информации и [помощь/по теме] для получения дополнительной информации. –

ответ

1

Хорошо, я думаю, что я получил его.

Я думаю, что это так:

распределяя его исходный код программы с LICENSE файла, разработчик фактически делает обещание, что он будет предоставлять любому заинтересованному лицу в лицензию на его программу.

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

Разработчик может «освободить программное обеспечение под двойной лицензией», что на самом деле означает, что его обещание - предоставить заинтересованной стороне лицензию, которую она выбирает, в свою программу.

Эта интерпретация устраняет проблему имитируемого я имел с выполнением

license['my-program-v1.0'] := GPLv3 
license['my-program-v1.0'] := SomeOtherLicense 

в то же время, параллельно и держать оба значения, присвоенные license['my-program-v1.0'] неповрежденной.

3

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

Пример, лицензия 1:
Вы можете не перераспределять,
Вы можете использовать для личного или корпоративного использования .

Лицензия 2:
Вы можете распространять,
Вы не может изменить код.

Теперь я могу выбрать любой из двух, но не могу скомпоновать вещи из обоих.

Это также поднимает вопрос, вы действительно нужно удвоить лицензию? Почему бы не подделать свою собственную лицензию, используя наиболее желательные для вас правила из двух комбинированных.

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

+0

Вы можете включить оба, но, как я уже сказал, это может сделать невозможным повторное объединение кода в некоторых случаях. –

+0

IANAL, но в том числе их достаточно. Получатель может согласиться на любую лицензию в полном объеме. Я мог бы лицензировать песню, которую я написал различным людям, не имея необходимости писать какую-то «основную лицензию», которая включает в себя все из них. – Eli

+0

Но действительно ли в том числе лицензии достаточно или мне нужно создать составную лицензию, указывающую на эти два? Тогда новые разработки просто будут лицензированы по составной лицензии. –

5

Двойная лицензия позволяет пользователям выбирать, какую лицензию использовать.

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

Вы также можете выбрать тройной или несколько лицензий на свой проект, а затем ваши пользователи могут выбрать любую лицензию.