LINUX.ORG.RU
решено ФорумTalks

Как BSD, но GPL

 , ,


0

2

А кто тут у нас закалён в лицензионных срачах?
Какая у нас есть лицензия чтобы код по ней можно было влинковывать в проприетарщину, но закрыть код было нельзя и чтобы изменения в этот маленький кусочек кода должны быть сводобными?
Код будет распространяться, разумеется, в исходниках, но нужно чтобы у проприетарщиков не было проблем вообще никаких. Т.е. чтобы не нужно было танцевать вокруг .so и т.п. Чтобы код можно было просто бросить в проект и юзать как хочешь, но если вдруг в код внесены изменения и кому-то хочется так же, то лицензия обязывала бы такими изменениями делиться.

★★☆

но закрыть код было нельзя и чтобы изменения в этот маленький кусочек кода должны быть сводобными?

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

Не распарсил, открытыми должны быть изменения библиотеки или библиотека полностью, включая изменения?

Arlecchino ★★
()

в исходниках, но нужно чтобы у проприетарщиков не было проблем вообще никаких.

CDDL/MPL

Ygor ★★★★★
()
Ответ на: комментарий от Arlecchino

А какая разница? Будет открыто всё — ок. Будут открыты лишь диффы — берёшь оригинальную либу и накладываешь диффы.

Stahl ★★☆
() автор топика
Ответ на: комментарий от Stahl

I am not a lawyer

Вроде LGPL подходит, разрешает линковаться к закрытому ПО при условии открытия всех изменений библиотеки.

Arlecchino ★★
()

Не уверен, как там обстоят дела с танцами вокруг .so, но посмотри LGPL. По описанию похоже.

Klymedy ★★★★★
()

LGPL

Код под лицензией LGPL обычно используется в форме разделяемой библиотеки, так что существует четкое разделение между проприетарными компонентами и LGPL компонентами.

«Обычно» просто обычно или это диктуется какими-то хитрыми нюансами?

Stahl ★★☆
() автор топика
Ответ на: LGPL от Stahl

Наверное имеется в виду что закрытое ПО и LGPL библиотеку нельзя линковать статически.

Arlecchino ★★
()

но закрыть код было нельзя
закрыть код

Что сие значит?

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

Если вы имеете в виду то, что сказали, то такая лицензия называется *несвободной*.

Zmicier ★★★★★
()
Ответ на: комментарий от Arlecchino

Наверное имеется в виду что [несвободное] ПО и [библиотеку под] LGPL нельзя линковать статически.

Нет, если бы имелось в виду эта ложная мысль, то сказано так, как сказано, быть не могло.

Zmicier ★★★★★
()
Ответ на: LGPL от Stahl

«Обычно» [— это] просто обычно...

Нет, это не просто, это удобно. Библиотеки — они обычно разделяемые, вне зависимости от условий их распространения.

Zmicier ★★★★★
()
Ответ на: комментарий от Stahl

А вот хотелось бы чтобы было можно.

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

Zmicier ★★★★★
()
Ответ на: комментарий от Zmicier

Нет, ты утверждал:

Не могу назвать навскидку ни одной свободной лицензии, что бы воспрещала тот или иной вид компоновки

Но используя библиотеку лицензированную под LGPL нельзя линковать код статически, получается что «свободная» лицензия всё же запрещает.

Arlecchino ★★
()

Перефразирую требования более кратко:
Лицензия позволяет использовать код как угодно на условии раскрытия изменений в код под такой же лицензией.

Stahl ★★☆
() автор топика
Ответ на: комментарий от anonymous00

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

Arlecchino ★★
()
Ответ на: комментарий от Arlecchino

Библиотеки лицензированные под LGPL нельзя линковать с закрытым ПО

Может быть, я просто неправильно вас понимаю — вы используете какие-то странные термины.

закрытым ПО

Вот это что такое?

если только не

Если же я вас все-таки правильно сначала понял, то у вас формулировка с ног на голову перевернута.

Отличительная черта GNU Lesser GPL — она разрешает компоновать (в расширенном смысле) программу Б под собой с любыми (в том числе несвободными) программами при условии, что программа Б сама по себе останется свободной: и в частности всякий пользователь сохранит за собой право на изменение программы Б, даже когда она связана с несвободной программой.

Никакой умышленной дискриминации того или иного способа компоновки тут нет.

Zmicier ★★★★★
()
Ответ на: комментарий от Arlecchino

Это уже проблемы вендора, пусть он их и разгребает. У тех, кто разрабатывает СПО в публичном репозитории кода, таких проблем нет. Вендор сам выбрал путь страдания.

anonymous00 ★★
()
Ответ на: комментарий от Stahl

Лицензия позволяет использовать код как угодно

Это целая плеяда лицензий, что зовутся свободными.

на условии раскрытия изменений в код под такой же лицензией.

«Раскрытия» — это как? Обратите внимание на первое мое письмо в эту ветку.

Если вы не имеете в виду ничего сверх условий GNU AGPL, то это тоже целая плеяда лицензий, что зовутся лицензиями авторского лева.

Разница (в том числе умышленная) между ними в том, что́ же считается «изменениями в код».

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от Zmicier

закрытым ПО

Вот что это такое

https://en.wikipedia.org/wiki/Closed_source
Воин Свободы, closed это алиас proprietary.
И мы с тобой прожигаем время на opensource.ru, а не на freesoftware.ru

Отличительная черта GNU Lesser GPL — она разрешает компоновать (в расширенном смысле) программу Б под собой с любыми (в том числе несвободными) программами при условии, что программа Б сама по себе останется свободной: и в частности всякий пользователь сохранит за собой право на изменение программы Б, даже когда она связана с несвободной программой.

Too complicated, проще не касаться копилефта и не кормить юристов FSF.

Arlecchino ★★
()
Последнее исправление: Arlecchino (всего исправлений: 1)

нужно чтобы у проприетарщиков не было проблем вообще никаких

*Никаких* проблем у них не будет, когда вы им свои исключительные имущественные права уступите.

Zmicier ★★★★★
()
Ответ на: комментарий от Zmicier

что́ же считается «изменениями в код».

Я может совсем тупой, но как можно различно трактовать слово «изменение»? Есть код. Изменил хоть сраный байт, пусть это даже прибежал Саакрихту и перекодировал в КОИ-7, то будь любезен предоставить полученный результат по требованию.
Изменил логику — предоставь по требованию.
Не понимаю.
Приведи пример когда изменение может не считаться изменением.

Stahl ★★☆
() автор топика
Ответ на: комментарий от Arlecchino

closed это алиас proprietary

Ой-ой? Вы никакое слово не пропустили? И потом, вы кажется английских слов тут вовсе не произносили.

проще не касаться копилефта

Переведите в положительную форму. Проще сделать что́?

Zmicier ★★★★★
()
Ответ на: комментарий от Stahl

Я может совсем тупой, но как можно различно трактовать слово «изменение»?

Или в полную силу авторского права — как любое *производное* произведение. Тогда это будет лицензия сильного авторского лева. Хрестоматийный пример такой лицензии — GNU GPL.

Или сколь угодно ослабленно.

Zmicier ★★★★★
()
Ответ на: комментарий от Stahl

то будь любезен предоставить полученный результат по требованию

По чьему требованию?

И вообще, обратите внимание, что предоставление исходников по требованию — это исключительная редкость: я не могу назвать навскидку ни одной прикладной программы для ПЭВМ, распространили какой бы к нему прибегали. Что и понятно — какой дурак будет на такое подписываться — отвечать на любое требование.

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от Arlecchino

Слились со своей проприетарской агитацией? Ну и отлично.

Zmicier ★★★★★
()
Ответ на: комментарий от Stahl

Я тебя не понимаю.

Печаль-грусть. Что именно непонятно? Что такое производное произведение, и почему программа, скомпонованная из N частей производна от них ото всех?

Сам разберусь.

Не хочу показаться хамом, но не думаю.

Zmicier ★★★★★
()
Ответ на: комментарий от Zmicier

Что такое производное произведение, и почему программа, скомпонованная из N частей производна от них ото всех?

Я не хочу накладывать никакие ограничения на программу в целом. Меня интересует лишь код моей библиотеки.

но не думаю.

Но и не помогаешь.

Stahl ★★☆
() автор топика

Ладно, давайте ближе к делу.

Вы не отвечаете на вопросы, что позволили бы отсечь предположение, что на самом деле вы желаете выбрать несвободную лицензию («раскрытие», «требования», вот это все).

Положим, что вы все-таки хотите выпустить свободную программу.

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

Однако вы хотите, чтобы вашу программу могли включать в несвободные программы, значит нужно слабое авторское лево.

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

Если да, то GNU Lesser GPL (актуальной версии — третьей или более поздней).

Если нет, то Mozilla PL (опять же актуальной — второй — версии, отказаться от «или более поздней» она вам не даст).

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

CDDL и более старые версии лицензии Мозиллы для новых программ выбирать нельзя — они несовместимы с GNU GPL.

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от Stahl

Разве [программу под GNU] LGPL можно статически линковать [с несвободными]?

Бог ты мой! Да.

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

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 2)
Ответ на: комментарий от Zmicier

Да.

Тогда о чём вообще этот разговор?
Делай с кодом что хочешь, но предоставляй доступ к изменениям. Так?
Но, хм. А что там с Qt? Есть версия под LGPL, но со статической линковкой там вроде бы нельзя. Как так?

Stahl ★★☆
() автор топика
Ответ на: комментарий от Stahl

Тогда о чём вообще этот разговор?

Не знаю. Это же вы затеяли. :-)

Делай с кодом что хочешь, но предоставляй доступ к изменениям. Так?

Я не могу понять недвусмысленно то, что вы сейчас сказали. GNU Lesser GPL третьей версии не зря занимает столько строчек, сколько занимает — сократить ее до одной нельзя. (То же самое справедливо для любого документа, разумеется.)

Вам пересказать ее условия более подробно? А вы прочитать их в оригинале точно не хотите?

А что там с Qt?

Все в порядке.

Есть версия под LGPL

Большей частью — да.

но со статической линковкой там вроде бы нельзя. Как так?

Никак. Это не так.

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 3)
Ответ на: комментарий от Zmicier

В качестве альтернативы разрешена статическая линковка если предоставлен исходный код или объектные файлы для линковки.

Всё ясно. Всё оказалось проще.
У проприетарщика остаётся вариант не предоставлять исходники, а отмахиваться объектными файлами, но хрен с ним. Пусть это остаётся на его совести.

Stahl ★★☆
() автор топика
Ответ на: комментарий от Stahl

Вам пересказать ее условия более подробно?

Ладно, не вредно. (Хотя оригиналы бы я вашем месте хотя бы попробовал почитать — лицензии ГНУ на удивление понятно для юридического документа написаны.)

IANAL, TINLA.

Итак, допустим, вы проприетарщик и желаете поставлять вашу несвободную программу *вместе* с библиотекой под GNU LGPL — как бы они ни были скомпонованы, еще как-то об’единены или просто положены рядом.

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

1. Поставить получателей вашей программы в известность, о том, что у них есть такое право: то есть сообщить, что в нее включена такая-то свободная библиотека на условиях GNU Lesser GPL, приложить уведомление об авторских правах на нее, включая полный текст GNU LGPL (включая и GNU GPL, если v3).

2. Предоставить возможность получить соответствующий исходный код библиотеки и об’яснить, как его получить. «Соответствующий» — значит именно тот, из которого вы собрали ту библиотеку, что передаете получателю в составе вашего продукта: в частности, версию не новее, а именно ту, а *если вы ее изменили*, то, разумеется, версию со всеми изменениями.

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

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

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

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)

Однажды опубликованный код закрыть нельзя. В принципе.

iZEN ★★★★★
()
Ответ на: LGPL от Stahl

в виде разделяемой библиотеки можно всегда,

в виде скомпиленном в бинарь тоже можно, но тогда объектники предоставлять по запросу, так чтобы человек мог собать из них ваш исполняемый файл самостоятельно

next_time ★★★★★
()
Ответ на: комментарий от next_time

GNU LGPL

предоставлять по запросу

Это неверно. Предоставление по запросу настоящей версией GNU (Lesser) GPL дозволяется очень ограниченно — только при поставке на материальном носителе.

Да и раньше, когда оно позволялось безусловно, им почти никто не пользовался, что и не удивительно — как я уже отметил выше, люди себе не враги, брать на себя такие обязательства.

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.