лицензия gnu gpl что это
Мир лицензий: Часто задаваемые вопросы про лицензии GNU GPL
Недавно я написал статью под названием Мир лицензий: разбираемся с GNU GPL, в которой постарался осветить мир gpl-лицензий, историю и различия в версиях. Статья вызвала большой резонанс, возникло много вопросов, споров. Чтобы немного прояснить ситуацию с GPL, я решил перевести часть официального GPL FAQ. В нем затрагиваются многие вопросы и разъясняются некоторые позиции лицензии. Надеюсь, данный перевод несколько прояснит ситуацию с GPL.
В дальнейшем я продолжу цикл публикаций про лицензии описанием BSD, Apache, MIT и других свободных и не очень лицензий. Кроме того, постараюсь затронуть вопрос лицензий в нашей стране. А пока, предлагаю почитать данный перевод.
Почему GPL разрешает пользователям публиковать модифицированные ими версии?
Ключевым моментом свободного ПО является возможность пользователей свободно объединяться. Абсолютно нормально, когда пользователям разрешено открыть доступ к их исправлениям ошибок и улучшениям ПО для других пользователей.
Существуют другие альтернативы GPL, которые требуют, чтобы измененные версии прошли через автора оригинала. И пока автор продолжает заниматься поддержкой эта схема может работать на практике, но если автор приостановит свою деятельность (более или менее) или не будет удовлетворять всем нуждам пользователей, то эта схема рухнет. Существует и еще одна практическая проблема: эта схема не позволяет пользователям помогать друг-другу.
Иногда контроль над модификациями предлагается как предотвращение коллизий между разными версиями сделанными пользователями. По нашему опыту можно сказать, что эти коллизии не являются существенной проблемой. Множество версий Emacs было сделано вне проекта GNU, но пользователи могут их различить. GPL требует от создателя версии указать свое имя для нее, для того, чтобы отличить версию от других версий и защитить репутацию других разработчиков.
Требует ли GPL, чтобы исходный код измененной версии был выложен для обозрения?
GPL не требует от вас, что бы опубликовывали модифицированную версию или любую ее часть. Вы свободны делать модификации и использовать их в частном порядке, никогда не выпуская их. Это так же применимо к организациям (включая компании); организации могут создавать модифицированные версии и использовать их внутри, никогда не публикуя вне своей структуры.
Но, если вы выпускаете модифицированную версию публично в любом виде, GPL требует от вас сделать исходные коды модифицированной версии доступными для пользователей программы под GPL.
Таким образом, GPL позволяет выпускать модифицированные программы только в определенном порядке, и ни в каком другом; но решение о выпуске остается за вами.
Если я знаю что, у кого-то есть копия GPL-программы, могу я потребовать передать ее мне?
Нет. GPL разрешает ему создавать и распространять копии программы, если он того захочет. Он так же имеет право не распространять программу, если такого его желание.
Разрешает ли мне GPL продавать копии программ за деньги?
Да, GPL разрешает каждому делать это. Право продавать копии — это часть определения свободного ПО. За исключением одной особой ситуации, нет никакого лимита на цену, которую вы можете устанавливать. (Исключение составляют случаи, когда исходные коды поставляются отдельно (по запросу) от программы).
Позволяет ли мне GPL устанавливать цену на скачивание программы с моего сайта?
Да. Вы можете установить любую цену за распространение программы. Если вы распространяете бинарники через загрузку, вы обязаны предоставить «эквивалентный доступ» к загрузке исходных кодов, установив цену за скачивание исходных кодов не выше чем цену за скачивание бинарников.
Позволяет ли мне GPL требовать ото всех, кто получил мою программу заплатить мне и/или уведомить меня?
Нет. На самом деле, такое требование делает программу не свободной. Если люди обязаны платить за полученную копию программы или если они обязаны кого-то уведомить, то программа не свободна. Смотрите определение свободного ПО.
GPL — это лицензия свободного ПО и поэтому разрешает людям использовать и распространять ПО без обязанности платить кому-то за это.
Позволяет ли мне GPL распространять модифицированные или бета версии под NDA?
Нет. GPL говорит, что ваши модифицированные версии должны содержать все свободы указанные в GPL. Поэтому, любой получатель копии вашей версии от вас имеет права распространять копии (модифицированные или нет) этой версии. Вы не можете распространять никакую версию, которая содержит в основе большие запреты.
Что означает, когда говорят что две лицензии «совместимы»?
В случае совмещения двух программ (или их частей) в более крупной работе, вам необходимы разрешения на использование обеих программ. Если лицензии двух программ разрешают это, то они совместимы. Если нет возможности удовлетворить обе лицензии вместе, они считаются несовместимыми.
Для некоторых лицензий имеет значение способ комбинации. Они могут разрешать линковать два модуля вместе, но не разрешать совмещения их кодов в один модуль.
Если вы хотите просто установить две раздельные программы в одной системе, не имеет значения, совместимы ли их лицензии, потому что это не означает совмещение их в одной работе.
Что означает, когда говорят, что лицензия «совместима с GPL»?
Это означает, что другая лицензия и GNU GPL — совместимы; вы можете совмещать код, выпущенный под другой лицензией с кодом, выпущенным под GNU GPL в одной более крупной работе.
Все версии GNU GPL разрешают делать такие комбинации в частном порядке; они так же разрешают распространение таких комбинаций под той же самой GNU GPL версией. Другая лицензия совместимая с GPL также разрешает это.
GPLv3 совместима с большим количеством лицензий, чем GPLv2: это позволяет вам создавать комбинации кода, у которых есть особые типы дополнительных требований, которых нет в самом GPLv3. Секция 7 содержит больше информации об этом, включая список разрешенных дополнительных требований.
Я хотел бы выпустить программу, написанную мной под GNU GPL, но я также хотел бы использовать тот же код в несвободном ПО.
Выпуск несвободного ПО имеет этическую окраску, но юридически нет препятствий для того, что бы вы могли это сделать. Если вы владелец прав на код, вы можете выпустить его под разными лицензиями в любое время.
Может ли разработчик программы, выпустивший ее ранее под лицензией GPL, в дальнейшем ограничить ее использование?
Нет, поскольку пользователи уже получили права на использование программы под GPL и эти права не могут быть отняты.
Почему original BSD license несовместима с GPL?
Потому что она содержит особое требование, которого нет в GPL; а именно, требование касающиеся рекламирования программы. Секция 6 GPLv2 говорит:
«Вы не можете требовать от пользователя дополнительных условий нарушающих права данные в этом документе.»
GPLv3 говорит подобное в секции 10. Рекламная оговорка содержит такие ограничения, и поэтому несовместима с GPL.
Исправленная BSD-лицензия не содержит рекламной оговорки, что исправляет проблему.
Рассмотрим ситуацию: Х выпустил v1 продукта под GPL. Y распространил v2 с изменениями, основанными на v1. Х хочет переделать v2 в не-GPL-лицензию. Требуется ли Х-у согласие Y?
Да. От Y требовалось выпустить его версию под GNU GPL, как результат того, что она была основана на v1. Ничего не требует от Y соглашаться на то, чтобы выпустить его код под другой лицензией. Наоборот, Х должен получить разрешение Y перед выпуском кода под другой лицензией.
Могу я выпустить модифицированную версию GPL-программы в только бинарном виде?
Нет. Основной принцип GPL это то, что все модифицированные версии должны быть свободным ПО, что означает, в частности, что исходные коды модифицированного ПО должны быть доступны пользователям.
Могу я выложить бинарники на моем сайте, а исходные коды на другом?
Да. Секция 6(d) позволяет это. Впрочем, вы обязаны обеспечить четкие инструкции для людей, чтобы те могли получить коды, и вы должны позаботиться о том, что исходные коды будут доступны столько же, сколько распространяется бинарный код.
Лицензия gnu gpl что это
Опубликованные программы должны быть свободны. Чтобы сделать их свободными, вам нужно выпустить их под лицензией свободных программ. Мы обычно применяем Стандартную общественную лицензию GNU (GNU GPL), указывая версию 3 или более позднюю, но время от времени мы пользуемся другими лицензиями свободных программ. Для программ GNU мы применяем только лицензии, совместимые с GNU GPL.
Документация для свободных программ должна быть свободной документацией, чтобы люди могли перераспространять и улучшать ее вместе с программами, которые она описывает. Чтобы сделать документацию свободной, вам нужно выпустить ее под лицензией свободной документации. Мы обычно применяем Лицензию свободной документации GNU (GNU FDL), но время от времени мы пользуемся другими лицензиями свободной документации.
Если вы начали новый проект и не уверены в том, какую лицензию выбрать, то в статье “Как выбрать лицензию для своей собственной работы” приведены наши подробные рекомендации в виде простого руководства. Если вам нужен список для быстрой справки, у нас есть страница, в которой названы рекомендуемые нами лицензии с авторским левом.
У нас есть также страница, на которой обсуждается проблема лицензии BSD.
Оценка лицензий
Если вы встретили лицензию, не упомянутую в нашем списке лицензий, вы можете попросить нас определить, является ли она лицензией свободных программ. Пришлите, пожалуйста, нам по электронной почте копию лицензии (вместе с URL, по которому вы ее нашли) на адрес licensing@fsf.org. Наши эксперты лицензирования в штате сотрудников и совете директоров рассмотрят ее. Если в лицензии есть какие-то необычные условия, они могут привести к сложным философским проблемам, так что мы не обещаем принять решение быстро.
Общие материалы по нашим лицензиям для программ
У нас есть некоторое количество материалов в помощь людям, желающим понять наши лицензии и пользоваться ими:
Стандартная общественная лицензия GNU
Стандартную общественную лицензию GNU часто сокращенно называют GNU GPL; она применяется в большинстве программ GNU и более чем в половине всех свободных пакетов программ. Самая последняя версия — версия 3.
Меньшая стандартная общественная лицензия GNU
Меньшая стандартная общественная лицензия GNU применяется несколькими (но ни в коем случае не всеми) библиотеками GNU. Самая последняя версия — версия 3.
Стандартная общественная лицензия GNU Афферо
Стандартная общественная лицензия GNU Афферо основана на GNU GPL, но в ней есть дополнительное условие, чтобы позволить пользователям, взаимодействующим с лицензируемой программой по сети, получить исходный текст этой программы. Мы рекомендуем рассмотреть возможность применения GNU AGPL для любой программы, которая обычно будет выполняться по сети. Последняя версия — версия 3.
Лицензия свободной документации GNU
Лицензия свободной документации GNU — форма авторского лева, предназначенная для применения к руководству, учебнику или другому документу, чтобы гарантировать фактическую свободу каждого копировать и перераспространять его, с изменениями или без них, коммерчески или некоммерчески. Последняя версия — 1.3.
Исключения из лицензий GNU
У некоторых программ GNU есть дополнительные разрешения или особые исключения из определенных условий в одной из главных лицензий. Поскольку некоторые из них часто применяются или вызывают множество вопросов сами по себе, мы начали собирать их на нашей странице исключений.
URL лицензий
Стандартная общественная лицензия GNU (GPL) GPLv3, GPLv2, GPLv1 Меньшая стандартная лицензия GNU (LGPL) LGPLv3, LGPLv2.1 Стандартная общественная лицензия GNU Афферо (AGPL) GNU AGPLv3 (Стандартная общественная лицензия Афферо версии 1 не является лицензией GNU, но она составлена в целях, весьма сходных с целями GNU AGPL.) Лицензия свободной документации GNU (FDL) FDLv1.3, FDLv1.2, FDLv1.1
Стабильные ссылки на каждую лицензию в альтернативных форматах имеются на соответствующих страницах этих лицензий. Не каждая версия каждой лицензии доступна в каждом формате. Если вам нужна лицензия в недостающем формате, напишите нам, пожалуйста.
Неофициальные переводы
В соответствии с законом, действующие условия распространения программ GNU и других программ, применяющих лицензии GNU, определяются в оригинальной (английской) версии этих лицензий. Но чтобы помощь людям лучше понять лицензии, мы даем другим разрешение на публикацию переводов на другие языки при условии, что они следуют нашим нормам для неофициальных переводов.
ФСПО не принимает переводы лицензий как официально действительные. Причина этого заключается в том, что их проверка была бы трудной и дорогостоящей (потребовала бы помощи двуязычных юристов из других стран). Хуже того, если бы случайно закралась ошибка, результаты были бы катастрофичны для всего сообщества свободных программ. До тех пор, пока переводы неофициальны, они не могут причинить никакого юридического вреда.
Чтобы подчеркнуть тот факт, что эти переводы не имеют официальной силы, мы не публикуем переводов. Чтобы ясно показать это, мы не размещаем их на gnu.org и других сайтах GNU и ФСПО; мы только ссылаемся на них.
Буквальное копирование и распространение
В настоящее время обычными условиями распространения страниц сайта GNU является лицензия Creative Commons Attribution-NoDerivs (Атрибуция — Без производных произведений) 4.0 Всемирная. Раньше ими было (а у некоторых страниц остается до сих пор):
Буквальное копирование и распространение всей этой статьи в целом разрешено по всему миру безвозмездно на любом носителе при условии, что это уведомление сохраняется.
Пожалуйста, обратите внимание на следующее замечание Эбена Моглена об этой “буквальной лицензии”:
“Наше намерение при пользовании выражением ‘буквальное копирование на любом носителе’ состоит не в том, чтобы требовать воспроизведения обрамления страниц или других особенностей форматирования. Однако требуется воспроизводить ссылки как на носителях с интерактивными ссылками, так и на носителях без них (в виде примечаний или URL, напечатанных в какой-то другой форме, в случае формата, отличного от HTML)”.
Список лицензий свободных программ
Если это невозможно и вам действительно нужна новая лицензия, то с нашей помощью вы сможете гарантировать, что лицензия будет действительно лицензией свободных программ, и избежать разного рода практических проблем.
Что такое авторское лево?
Авторское лево — общий метод сделать программу свободной и потребовать, чтобы все измененные и расширенные версии этой программы также были свободны.
Простейший способ сделать программу свободной — это объявить ее общественным достоянием, вне авторского права. Это позволяет другим распространять программу со своими улучшениями, если они того желают. Но это позволяет также людям, не желающим сотрудничать, обратить программу в несвободную. Они могут внести изменения, большие или малые, и распространять результат как несвободный продукт. У получающих программу в такой измененной форме нет свободы, которую им изначально давал автор — она похищена посредником.
Цель проекта GNU — дать всем пользователям свободу распространять и модифицировать программы GNU. Если бы посредник мог отбирать свободу, у нас, возможно, было бы много пользователей, но у этих пользователей не было бы свободы. Поэтому вместо того, чтобы поместить GNU в общественное достояние, мы применяем для нее авторское лево. Оно требует, чтобы каждый, кто распространяет программу, как с изменениями, так и без них, передавал право копировать и модифицировать ее в дальнейшем. Авторское лево гарантирует, что у каждого пользователя есть свобода.
Авторское лево также создает стимул для других программистов дополнять свободные программы. Такие важные свободные программы, как компилятор GNU C++, существуют только по этой причине.
Авторское лево также помогает программистам, желающим вносить улучшения в свободные программы, получить разрешение делать это. Эти программисты нередко работают на компании либо университеты, которые сделают почти все, чтобы заработать побольше денег. Программист может хотеть передать обществу свои изменения в программе, а наниматель — обратить изменения в несвободный программный продукт.
Когда мы разъясняем нанимателю, что улучшенную версию по закону разрешено распространять только как свободную программу, он обычно принимает решение не выбрасывать ее, а выпустить как свободную программу.
Чтобы поместить программу под действие авторского лева, мы сперва заявляем авторские права на нее; затем мы добавляем условия распространения, которые служат юридическим средством предоставления каждому права на пользование, распространение и модификацию текста программы, а также любых производных от нее программ, но только если условия распространения неизменны. Таким образом, исходный текст и эти свободы становятся по закону неразделимы.
Разработчики несвободных программ пользуются авторским правом, чтобы лишить пользователей их свободы; мы пользуемся авторским правом, чтобы гарантировать их свободу. Вот почему мы употребляем термин “авторское лево” в противоположность “авторскому праву”.
Авторское лево — абстрактная идея; есть много способов уточнить детали. В рамках проекта GNU конкретные условия распространения, которые мы применяем, содержатся в Стандартной общественной лицензии GNU, Малой стандартной общественной лицензии GNU и Лицензии свободной документации GNU.
Соответствующая лицензия включается во многие руководства и в каждый дистрибутив исходных текстов GNU.
GNU GPL составлена так, чтобы вы могли легко применять ее к своей собственной программе, если вы — правообладатель. Для этого вам не требуется изменять GNU GPL; нужно только добавить уведомления, должным образом указывающие на GNU GPL, в свою программу. Пожалуйста, обратите внимание, что вы должны пользоваться полным текстом GPL, если вы применяете ее. Это единое целое, частичные копии не допускаются. (Точно так же, как для LGPL, AGPL и FDL.)
Применение одних и тех же условий распространения для большого числа разных программ облегчает копирование исходных текстов между разными программами. Поскольку у них у всех одни и те же условия распространения, не нужно думать о том, совместимы ли эти условия. В Меньшей GPL есть положение, позволяющее вам изменить условия распространения на обычную GPL, так что вы можете копировать исходные тексты в другую программу, распространяемую по GPL.
Лицензии для работ другого типа
Мы убеждены, что опубликованные программы и документация должны быть свободными программами и свободной документацией. Мы рекомендуем также делать свободными всевозможные образовательные и справочные работы, с помощью таких лицензий свободной документации, как Лицензия свободной документации GNU (GNU FDL).
Для очерков, выражающих мнение, и научных работ мы рекомендуем либо лицензию Creative Commons Attribution-NoDerivs (Атрибуция — Без производных произведений) 3.0 США, либо простую лицензию “только буквального копирования”, сформулированную выше.
Мы не утверждаем, что художественные или развлекательные произведения должны быть свободны, но если вы хотите сделать такое произведение свободным, мы рекомендуем Лицензию свободного искусства.
Статья:GNU GPL 3 человеческим языком
GNU GPL 3 человеческим языком
23 сентября 2008 г.
Интеллектуальная собственность — не хрен собачий, помните об этом. © Артемий Лебедев
Удивительное дело, практически все коммерческие лицензии, главная цель которых — связать пользователя по рукам и ногам, написаны четким и понятным языком. А самая либеральная в мире лицензия GPL, гарантирующая всем и каждому свободу использования, распространения и модификации программного обеспечения, напичкана такими формулировками, что сам черт ногу сломит и без поллитра не разберется. Парадоксальная ситуация! Попробуем разобраться что здесь к чему.
GNU General Public License — это свободная лицензия для программного обеспечения, разработанная Фондом Свободного Программного Обеспечения (Free Software Foundation). Если коммерческие лицензии запрещают распространять и изменять программное обеспечение, то GNU GPL, наоборот, разрешает и даже гарантирует право пользователя на свободное использование, распространение и модификацию программ. Большая часть программного обеспечения Free Software Foundation распространяется под лицензией GNU GPL. Любой автор может использовать эту лицензию для своего ПО.
GPL дает вам множество прав:
… и накладывает всего одну обязанность:
GPL3 — это идеальная лицензия для обычных пользователей, она попросту отмахивается от них и концентрируется на программистах и распространителях. Для того чтобы получить программу и пользоваться ею даже не обязательно читать и принимать лицензию. Передача ПО соседу Васе из рук в руки также не требует принятия лицензии. А вот если вы собираетесь изменить что-то в программе или заняться ее распространением — вам уже придется ознакомиться с текстом лицензии, осознать и принять все условия. В противном случае все ваши действия по модификации и распространению ПО будут считаться незаконными.
Однако и здесь есть свои послабления. Если вы модифицируете программу исключительно для собственных нужд и не собираетесь распространять ее — вам не обязательно делиться со всей Сетью своим кодом. Передача «свободного» ПО через peer-to-peer сети фактически приравнивается к простой передаче ПО от пользователя к пользователю. Соответственно, распространять GPL-софт через торрент теперь можно без предоставления исходного кода, достаточно просто оставить ссылку на общедоступный сервер, где этот код выложен. Это нововведение, которого не было в GPL2.
«Свободное» ПО — не значит «бесплатное». Вы можете распространять копии свободного ПО за деньги, но при этом вы обязаны передать покупателю весь комплекс прав: право на свободное распространение программы, исходный код программы, право на модификацию программы и использование ее элементов в собственных разработках и т. д. Так что на практике взимание платы за свободное ПО не имеет смысла, в абсолютном большинстве случаев софт, распространяемый под лицензией GNU GPL, бесплатен. Плату если и берут, то за пересылку, носители информации, обслуживание, помощь в настройке и установке и т. д.
Авторские права на свободное ПО принадлежат его разработчикам. При этом авторы не дают никаких гарантий на свои программы и не несут ответственности за проблемы, возникшие в результате их использования. Модифицированные версии программ должны помечаться как «измененные», также должна проставляться дата внесения изменений. Это делается с целью защиты авторов, чтобы им не приписывали чужие ошибки. Программа, созданная на основе «свободного» кода, должна распространяться также на условиях GPL, она не может быть переведена на коммерческую лицензию модификаторами и прочими «третьими лицами». Что понятно, иначе многие «свободные» разработки давно уже были бы растащены и закрыты, а всякие жадные до денег компании зарабатывали бы на них и даже не думали делиться кодом со «свободной» общественностью. Правообладатели имеют право перелицензировать свою программу (т. е. выпустить ее под другой лицензией, в том числе и коммерческой), но при этом они не могут отозвать лицензии у тех, кто уже успел получить программу под GPL.
Программы могут распространяться на любых носителях, выкладываться на ftp-сервера для скачивания и т. д. При этом к программе должна прилагаться копия GPL — она может быть встроена в программу или идти отдельным файлом, в любом случае в программе должна присутствовать ссылка на лицензию, под которой она распространяется.
Также должны присутствовать: информация об авторах и копирайтах, отказ от гарантий.
Обычно вся эта информация размещается в диалоге «О программе», также она должна присутствовать в начале каждого файла с исходным кодом… обо всем этом подробно написано в самом конце лицензии, в разделе «Как применить данные условия к Вашим Новым Программам».
При разработке свободного программного обеспечения не должны быть использованы софтверные патенты, т. к. это автоматически делает программу несвободной, превращает ее в частную собственность. Либо патент не должен запрещать свободное использование и модификацию программы, т. е. не должен противоречить принципам GPL.
Софтверный патент — это патент на какое-либо программное решение. Запатентована может быть любая мелочь, например, компания Amazon запатентовала «покупку одним кликом», теперь они могут подать в суд на любую компанию, которая случайно повторит эту элементарную технологию. В США таким образом запатентован практически каждый шаг в создании программы, написать программу и не нарушить при этом чьи-нибудь патенты практически невозможно. Microsoft активно пользуется таким положением вещей, заявляя, что использование свободного ПО незаконно. Недавно «мелкомягкие» сменили позицию и заявили, что не будут преследовать пользователей свободного ПО за нарушение авторских прав — при условии что те получают софт от поставщиков, работающих с Microsoft. Эта открытая попытка нажиться на пользователях свободного ПО противоречит принципам свободы, прописанным в GPL.
GPL3 гарантирует, что патенты не могут быть использованы с целью «закабалить» свободную программу. Исходный код программы должен быть доступен для копирования, бесплатно и с соблюдением всех условий GPL, в любом случае — даже если распространитель передает ПО, сознательно полагаясь на патентную лицензию. Несогласным с таким положением вещей предлагается просто перестать распространять программу. Это правило работает во всех подобных ситуациях. Если какие-либо посторонние обязательства не позволяют вам распространять программу в соответствии с требованиями GPL — вы должны вовсе отказаться от ее распространения.
В GPL3 расставлены все точки над «i» в том, что каcается технических средств защиты авторских прав (DRM) и законов, запрещающих создание средств для обхода этих ограничений (Digital Millennium Copyright Act и European Union Copyright Directie).
DRM (Digital Rights Management, управление цифровыми правами) — это технологии, защищающие аудио-, видео — и прочий контент от копирования и бесконтрольного распространения копий через Интернет. Защищенный таким образом фильм на DVD, игру или музыкальный диск можно воспроизвести, но затруднительно скопировать (или скопировать-то можно, но невозможно воспроизвести нелегальную копию). Обход и взлом защиты является противозаконным, взломанный или нелегально приобретенный контент считается «нечистым» и может не воспроизводиться проигрывателями. DRM-технологиями не только защищают файлы и диски, иногда их встраивают в средства воспроизведения (например, карманные цифровые плееры). DRM — крайне неудобная штука, причем в первую очередь она причиняет неудобства честным пользователям. Например, в некоторых моделях портативных видеокамер имеется ограничение на создание цифровых копий — записав ролик, вы не сможете сделать копию для своих знакомых. К счастью, DRM-технологии и связанные с ними законы цветут махровым цветом в основном в США, но и нам нужно держать ушки на макушке — с 1.01.2008 вступила в силу IV часть Гражданского Кодекса РФ, предусматривающая защиту DRM.
По американским законам создание и распространение ПО, предназначенного для обхода и взлома DRM, считается преступлением. Последняя версия GPL делает оговорку: программа, выпущенная под данной лицензией, не может считаться средством технической защиты от копирования (даже если фактически им является). А пользователь имеет право писать любой код, какой считает нужным (в том числе и средства для обхода защиты) и отключать любые неугодные ему функции (в том числе и ту, которая отвечает за ограничение доступа). Поэтому если кто-либо напишет под GPL3 программу для защиты контента, в случае взлома ему останется только пенять на себя. «Взломщик» может спокойно распространять ПО, он не подпадает под действие DMCA и прочих подобных законов. В пункте номер 3 [[GPL v3|третьей версии GPL] написано открытым текстом: «при передаче вами лицензированного произведения, вы отказываетесь от каких-либо юридических полномочий запрещать обход технических средств… и вы отказываетесь от любых намерений ограничить работу или модификацию произведения…«
GPL3 запрещает «тивоизацию». Термин «tivoization» был придуман Ричардом Столлменом, и применяется в тех случаях, когда в устройство на уровне железа встроен DRM, из-за чего на нем можно запустить только софт, подписанный обладателем секретного цифрового ключа. В результате производитель может изменить ПО на устройстве, а пользователь — нет.
Началось все с цифрового видео-плеера марки TiVo, где в качестве софта использовалась Linux. Внешне все требования GPL2 соблюдались — исходный код был доступен, его можно было получить и усовершенствовать, однако после обратной загрузки новая версия ПО просто не могла работать, ее блокировали встроенные DRM-механизмы. Поэтому последняя версия GPL требует вместе с исходным кодом предоставлять все используемые ключи и цифровые сертификаты. Право пользователя на изменение GPL-софта не должно быть ограничено никакими технологиями. Производители техники, на которой установлен свободный софт, обязаны обеспечивать пользователей любой информацией, необходимой для установки измененного ПО.
Больше всего споров и возмущений вызывает именно этот пункт GPL3. Линус Торвальдс, первый и основной разработчик ядра Linux, не согласен с требованием «поставлять вместе с исходным кодом все ключи, требуемые для его запуска». По его мнению, ядро должно быть доступно для любого использования – включая применение на компьютерах, не разрешающих замену ПО без санкции производителя. Так что Linux пока остается на GPL2.
За нарушение условий «свободной» лицензии тоже можно поплатиться, правда, не так жестоко как в случае с коммерческими лицензиями — вы просто теряете все права, которые дает GPL, начиная с права пользования программой. Чтобы оказаться «вне закона» достаточно начать распространять или модифицировать «свободное» ПО непрописанным или запрещенным в лицензии образом (например, скрывать код модифицированной вами программы, запрещать дальнейшим пользователям его изучение и т. д.). Предъявить вам претензии по поводу нарушения лицензии может конкретный обладатель авторских прав на программу, с которой вы «нехорошо» обошлись. Впрочем, GPL достаточно лояльна по отношению к нарушителям и действует по принципу «исправленному — верить».
Если в течение 30 дней после получения уведомления от обладателя авторских прав вы исправите положение и перестанете нарушать лицензию — ваши права будут полностью восстановлены. Если вы проявите сознательность и ликвидируете нарушение, не дожидаясь письма от авторов программы, а они так и не соизволят уведомить вас об уже исправленном нарушении в течение 60 дней — ваши права также считаются полностью восстановленными. Если ни вы, ни правообладатели не проявляете никакого беспокойства по поводу нарушения лицензии… что ж, на нет и суда нет. Но помните, что формально вы — злостный нарушитель, лишенный прав, и вас могут припереть к стенке в любую минуту.
Полное и окончательное прекращение ваших прав никак не повлияет на тех пользователей, которые получили программу от вас, они могут и дальше спокойно пользоваться ею и всеми правами, которые предоставляет им GPL. Вы же сами получить новые права лицензиата на ту же самую программу уже не сможете. В то же время вы не отвечаете за соблюдение лицензии пользователями, которые получили программу от вас. В случае нарушения с ними будут разбираться правообладатели (поскольку именно они и предоставляют права лицензиата, а распространитель предоставляет только саму программу), вас эти «разборки» никак не затронут.
Как распространитель программы, вы не вправе требовать от пользователей выплачивать вам лицензионные платежи или как-то иначе заставлять их расплачиваться за возможность пользоваться правами, предоставляемыми GPL. Эти права передаются «бэзвозмездно», то есть даром (при этом сама программа, как уже говорилось выше, не обязана быть бесплатной). В общем, вы не имеете права ограничивать право других пользоваться их правами.
Фонд Свободного ПО может время от времени выпускать новые версии GPL. Пользователь должен руководствоваться той версией лицензии, которая указана в программе или любой последующей версией. Если конкретный номер версии не оговаривается, вы можете выбрать любую из опубликованных на данный момент версий GPL, на свой вкус. При этом ваш личный выбор следовать более поздней версии лицензии, чем та, которая принята авторами программы, не налагает на этих самых авторов никаких дополнительных обязательств.
Сравнивая две последние версии GPL сложно сказать, что такого есть во второй, чего нет в третьей. Проще, наоборот, перечислить чего нет в GPL2. Вторая версия GPL вышла в 1991 году и просуществовала практически без изменений почти 15 лет. За это время появилось множество новых технологий и типов ПО, которые она не охватывает. Здесь нет ни слова о DRM и «тивоизации», peer-to-peer сетях и многом другом.
Патентам уделено минимум внимания, в те времена они еще не представляли серьезной опасности для развития свободного ПО. В GPL 2 говорится только о недопустимости приобретения кем-то исключительных прав на использование программного обеспечения и регистрации их в Патентном ведомстве.
«Обладатель исключительных прав обязан предоставить любому лицу права на использование программного обеспечения либо не приобретать исключительных прав вообще». «В том случае если распространение и/или использование Программы в отдельных государствах ограничено соглашениями в области патентных или авторских прав, первоначальный правообладатель, распространяющий Программу на условиях настоящей Лицензии, вправе ограничить территорию распространения Программы, указав только те государства, на территории которых допускается распространение Программы без ограничений…«
Вот и все, что можно увидеть здесь на тему патентов, в то время как в третьей версии GPL этому посвящен целый раздел, который так и называется — «Патенты». В нем больше не рассматриваются аспекты патентных условий, основным требованием является отсутствие каких бы то ни было претензий. Новая лицензия призвана исключить возможность патентования модифицированной версии ПО, защищенного GPL, и последующее судебное преследование тех, кто «незаконно» ею воспользуется.
При этом нарушение условий в GPL2 карается более жестко. Нарушитель автоматически теряет все предоставляемые лицензией права навсегда. Единственный способ обрести их снова — обратиться к правообладателю. Если учесть, что обычный Linux дистрибутив использует работу тысяч людей, можно представить, сколько времени займет процесс восстановления лицензии с рассылкой запросов ко всем держателям прав. Третья версия GPL в этом плане более демократична.
Автор не претендует на кристально ясное понимание всех условий GPL3 =) Если вы обнаружили в тексте неточность или какой-то важный момент упущен — пишите, тыкайте автора носом в ошибки и они будут исправлены =)