Подтвердить что ты не робот

Код GPL: что считается производной?

Я работаю над проектом с открытым исходным кодом, который я хочу выпустить под разрешительной лицензией, потому что это библиотека, а не приложение и лично, мне не нравится copyleft для библиотечного кода. Если бы я просматривал код GPL, написанный на другом языке программирования, чтобы получить общее представление о том, как что-то сделать, а затем написать другую реализацию аналогичного или идентичного алгоритма на используемом мне языке, что, вероятно, будет последствия? Могут ли владельцы copyleft получить какие-либо законные жалобы, если бы мой код был несколько похож на и явно под влиянием их? Как обычно работают эти серые области?

4b9b3361

Ответ 1

Обычно я использую лицензию X11 (aka 3 clause BSD) при выпуске любой библиотеки, хотя я, как известно, склоняюсь к GPL2/3 при выпуске программы. Я делаю это, потому что хочу, чтобы моя библиотека могла использоваться без ограничений каким-либо проектом FLOSS, это для меня важнее, чем утверждение идеалов copyleft, когда дело касается библиотек.

Это глупо сделать библиотеку ограничительной в этом отношении, например, BSD переписал GNU libreadline в editline и сохранил 100% совместимый интерфейс. Это также является примером того, почему вы, вероятно, можете делать то, что вы намереваетесь сделать.

Если вы посмотрите на какой-то пример, написанный на Схеме, или скажите LISP, возможно даже PERL.. и написав некоторую реализацию его на C, вы должны быть в полном порядке. Нет ничего плохого в изучении существующих реализаций при работе над созданием собственных.

Я бы настоятельно предложил просто спросить проект GNU, e-mail [email protected] и предоставить им подробную информацию о том, что вы надеетесь выполнить. Вы наверняка получите очень дружеский ответ и, вероятно, можете продолжить, не беспокоясь.

Даже сам RMS признает, что интерпретация GPL/AGPL/LGPL может быть утомительной, они ожидают и приветствуют такие вопросы.

Ответ 2

"Что представляет собой производную работу?" это не вопрос, на который программист может ответить. См. Например В чем разница между "агрегатом" и другими типами "измененных версий" ? и Часто задаваемые вопросы о лицензиях GNU.

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

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

Ответ 3

2 отличные лицензии, которые, вероятно, соответствуют вашим требованиям:

  • Лицензия Apache, версия 2.0, очень разрешительная (например, MIT/BSD), но с защитой патентного судебного разбирательства для обеих сторон
  • LGPL, версия 3, разрешающее использование библиотеки, но ее дальнейшее развитие (и распространение) требует сохранения LGPL и освобождения источник.

Ответ 4

Отказ от ответственности: я не юрист, и вам следует обратиться к адвокату по интеллектуальной собственности, который знает о лицензировании программного обеспечения. Если вы поймете глупость, он или она скажут вам: "Не делайте этого просто, чтобы быть в безопасности", о котором каждый может сказать.

См. Дизайн чистой комнаты. Если программное обеспечение ведет себя почти точно, вы не должны читать исходный код.

Ответ 5

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

Еще один момент заключается в том, что если исходный код GPL'ed, то автор вряд ли будет тем типом, который будет возражать против вас, вызывая что-то из его алгоритмов и идей (поскольку копилефтеры, как правило, выступают против патентов на программное обеспечение).

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

Ответ 6

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