Я нашел библиотеку GPL (без двойной лицензии), которая делает именно то, что мне нужно. К сожалению, лицензия GPL на библиотеку несовместима с лицензией другой библиотеки, которую я использую. Поэтому я решил переписать библиотеку GPL, чтобы можно было изменить лицензию.
Мой вопрос: насколько обширными должны быть изменения в библиотеке, чтобы можно было изменить лицензию? Другими словами, какой самый дешевый способ сделать это?
Ответы:
Я не юрист, но AFAIK, если вы видели код библиотеки GPL, любая написанная вами библиотека эмуляции будет испорчена и может быть объявлена производной работой судьей, если она слишком схожа с его оценкой.
Таким образом, процесс будет состоять в том, чтобы написать функциональную спецификацию и попросить кого-то, кто не видел GPL-код, написать библиотеку.
Изменить: Обратите внимание, что с тем, как вы сформулируете свой вопрос: «Насколько обширными должны быть изменения в библиотеке, чтобы иметь возможность изменить лицензию?» Ответ AFAIK ясен: что бы вы ни делали, если вы просто изменяете библиотеку, вы должны уважать срок действия лицензии, что позволяет вам изменять ее в первую очередь.
источник
Обычный способ решения этой проблемы - сначала связаться с владельцем библиотеки и спросить, выпустят ли они ее вам под другой лицензией.
Если вы работаете над проектом с открытым исходным кодом, в котором GPL не совместима, то есть большая вероятность, что они это сделают, некоторые проекты в конечном итоге получат лицензию GPL только потому, что она кажется лучшим выбором.
Конечно, это относится к обеим библиотекам. Получение разрешительной лицензии с двумя лицензиями под менее разрешительной не должно быть проблемой.
Если вы работаете с коммерческим продуктом, то многие авторы библиотек предоставят вам выпуск под другой лицензией, если вы компенсируете их соответствующим образом.
источник
Насколько я понимаю, если вы начнете с работы и измените ее, независимо от того, насколько обширными будут модификации, конечный результат будет производным произведением оригинала. Вам нужно будет написать библиотеку с нуля. Если вы пишете библиотеку с нуля, но видели код, то, если он слишком похож, вы снова можете быть привлечены к ответственности за нарушение авторских прав.
Эти правила не являются специфическими для программного обеспечения, они применяются к защищенным авторским правом вещам всех видов.
Я не юрист, и это не юридическая консультация. Я также, вполне возможно, не в вашей юрисдикции, и вы всегда должны сомневаться в юридических консультациях, предлагаемых в Интернете. Если вы хотите получить надежную юридическую консультацию, вам нужно будет заплатить адвокату.
источник
IANAL, но я знаю, что в США никакая степень модификации не создаст непроизводную работу. Если у него есть какой-либо код, скопированный из старой библиотеки, или он имеет достаточное внутреннее сходство, что может привести к проблемам с плагиатом в университетском классе, то вы не рядом с новой работой. Изменение некоторых имен функций или переменных ничего не изменит, равно как и перемещение фрагментов кода в исходном коде. Вы должны были бы самостоятельно воссоздать это, чтобы даже иметь шанс. IOWs, вам нужно было бы взглянуть только на интерфейсы, которые он предоставляет, и решить, как обеспечить эту функциональность и воссоздать ее таким образом, чтобы иметь шанс. Даже тогда вы все равно не можете быть вне леса, если кто-то действительно заботится и злится.
В конце концов, вам лучше всего связаться с автором библиотеки и надеяться, что вы сможете договориться о более разрешительном лицензировании библиотеки.
источник
Если все остальное, что предлагается здесь (запрос на двойную лицензию, переписывание), неприемлемо, пожалуйста, помните, что до сих пор неясно, считается ли динамическое связывание с проприетарной программой / библиотекой производной работой. FSF говорит, что это так, но многие юристы (включая Лоуренса Розена) подвергли сомнению это.
Таким образом, вы можете связать свое программное обеспечение с библиотекой GPL, а затем убедиться, что исходный код для него распространяется с каждой копией вашего программного обеспечения. Если кто-то предъявляет вам иск, он должен доказать, что его понимание этого хитрого и темного аспекта GPL является правильным. Как кажется (например, Galoob против Nintendo), вы не можете быть абсолютно уверены, что делает производную работу, а что нет.
источник
Единственный способ, которым это не будет производной работой, - это если вы переписываете весь код самостоятельно, без использования какого-либо исходного кода. Что, вероятно, невозможно.
Есть много более простых способов обойти GPL:
Также обратите внимание, что GPL является лицензией на распространение , поэтому вам нужно лицензировать свою работу, только если вы распространяете двоичные файлы третьим лицам. И вы обязаны только публиковать им исходный код, не обязаны публиковать его для широкой публики, если только вы не выпускаете двоичные файлы для широкой публики. Если вы используете свой код, например, только на своих серверах, вы не обязаны выпускать какой-либо код. Вот как, например, Google делает это с их подправленными ядрами Linux.
источник
IANAL и, в любом случае, это может ничего не значить юридически, но, я полагаю, что в книге Стивена Леви «Хакеры» он описывает, как в какой-то момент RMS писал * nix-код для денег в течение дня и ночью писал одно и то же дома, чтобы он мог быть частью ... GNU? ... это было до Linux ... какой-то бесплатной системы типа Unix. Я считаю, что он должен был сделать домашний код отличным от дневного, но в основном он делал именно то, что вы предлагаете.
Это, вероятно, не имеет юридического значения, но ... Я не уверен, что Apple и / или Microsoft получили разрешение / лицензию или что-то в этом роде, но в лабораториях Белла не было изобретено интерфейса desktop / icon / mouse, который использовался для Mac. (или Лиза?), которая тогда использовалась Microsoft.
источник
На это нет ответа, кроме как перед судом в вашей конкретной юрисдикции. Но вы хотите рискнуть этим? Или перейдите к переписыванию библиотеки GPL, тестов и т. Д. И т. Д. Вы уверены, что другая библиотека несовместима с GPL? Это на самом деле довольно необычно, если вы не хотите распространять обе библиотеки в соответствии с условиями библиотек не-GPL.
источник
В большинстве частей света нужно начинать с нуля, а не срезать и ничего не делать. Вам нужны новые имена для функций / классов / переменных и т. Д., И структура должна быть другой. Тогда вы в безопасности.
С другой стороны, если diff-инструмент не может найти сходства, то ...
источник