GNU General Public License

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
GNU General Public License
GPLv3 Logo.svg
Логотип GNU GPL третьей версии
Автор

Free Software Foundation

Версия

3

Издатель

Free Software Foundation, Inc.

Опубликована

январь 1989 (первая версия), июнь 1991 (предшественник последней версии), 29 июня 2007 (последняя версия)

Совместима с DFSG

Да

Свободное программное обеспечение

Да

Одобрена OSI

Да

Копилефт

Да

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

Нет (единственное исключение: GNU GPLv3 разрешает перелицензирование под GNU AGPLv3)

GNU General Public License (переводят как Универсальная общественная лицензия GNU, Универсальная общедоступная лицензия GNU или Открытое лицензионное соглашение GNU) — лицензия на свободное программное обеспечение, созданная в рамках проекта GNU в 1988 г. Её также сокращённо называют GNU GPL или даже просто GPL, если из контекста понятно, что речь идёт именно о данной лицензии (существует довольно много других лицензий, содержащих слова «general public license» в названии). Вторая версия этой лицензии была выпущена в 1991 году, третья версия, после многолетней работы и длительной дискуссии — в 2007 году. GNU Lesser General Public License (LGPL) — это ослабленная версия GPL, предназначенная для некоторых библиотек ПО. GNU Affero General Public License — это усиленная версия GPL для программ, предназначенных для доступа к ним через сеть[1].

Цель GNU GPL — предоставить пользователю права копировать, модифицировать и распространять (в том числе на коммерческой основе) программы, а также гарантировать, что и пользователи всех производных программ получат вышеперечисленные права[Прим. 1]. Принцип «наследования» прав называется «копилефт» (транслитерация c англ. copyleft) и был придуман Ричардом Столлманом. По контрасту с GPL, лицензии проприетарного ПО «очень редко дают пользователю такие права и обычно, наоборот, стремятся их ограничить, например, запрещая восстановление исходного кода»[2].

Согласно подготовленным Фондом разъяснениям по применению лицензии GNU GPL к конкретным лицензируемым программам (эти разъяснения приложены к размещенному на сайте Фонда тексту лицензии), лицензия должна в электронной форме присоединяться к компьютерной программе[3].

Лицензируя работу на условиях GNU GPL, автор сохраняет за собой авторство[Прим. 2].

GNU GPL не позволяет включать программу в проприетарное ПО. Если данная программа является библиотекой, вероятно, лучшим будет разрешить проприетарному ПО линковаться с ней. Для данной цели необходимо использовать GNU Lesser General Public License вместо GPL[4].

Свободы и обязательства[править | править вики-текст]

GPL предоставляет получателям компьютерных программ следующие права, или «свободы»[5]:

  • свободу запуска программы с любой целью;
  • свободу изучения того, как программа работает, и её модификации (предварительным условием для этого является доступ к исходному коду);
  • свободу распространения копий как исходного, так и исполняемого кода;
  • свободу улучшения программы, и выпуска улучшений в публичный доступ (предварительным условием для этого является доступ к исходному коду).

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

История[править | править вики-текст]

GPL была написана Ричардом Столлманом для использования с программами как часть проекта GNU. Она базируется на сходных лицензиях, использовавшихся для ранних версий GNU Emacs, GDB (отладчика GNU) и Коллекции компиляторов GNU (GCC), унифицирует и обобщает их.

GPL v1[править | править вики-текст]

Лицензии-прототипы содержали части, подобные частям GPL, но были специфичными для каждой программы. Целью Столлмана являлось создание единой лицензии, которая могла бы использоваться для любого проекта, делая таким образом возможным совместное использование кода различными программами. Такой лицензией и стала первая версия GNU GPL, выпущенная в январе 1989 года.

GPL v2[править | править вики-текст]

В 1990 году стало очевидным, что требуется менее ограничивающая лицензия, которая могла бы использоваться для некоторых библиотек ПО; когда версия 2 GPL была выпущена в июне 1991 года, вместе с ней была введена в обращение GNU Library General Public License (GNU LGPL, LGPL), также получившая номер 2, для обозначения того, что эти две лицензии являются взаимодополняющими. Номера версий разошлись в 1999 году, когда была выпущена LGPL версии 2.1, которая была переименована в Lesser General Public License для уточнения её местоположения в философии GNU.

GPL v3[править | править вики-текст]

В 2005 году Эбен Моглен и Ричард Столлман написали черновик третьей версии GPL. В разгоревшейся затем 7 апреля 2005 года в Филадельфии дискуссии Столлман сделал несколько заявлений, касающихся патентов на ПО и DRM.

В 2006 году Фонд свободного программного обеспечения начал двенадцатимесячную консультацию о возможных изменениях в GPL. Этот процесс координировался самим Фондом свободного ПО, Правовым центром свободы ПО и Европейским фондом свободного ПО. Целью консультаций являлось создание новой версии лицензии с учётом рекомендаций и опыта всех заинтересованных сторон, но с сохранением приверженности принципам свободного ПО.

Первый черновик был опубликован 16 января 2006 года.

Компании, распространяющие GPLv3-ПО, не могут предъявлять к пользователям GPLv3-продуктов судебные претензии касательно обхода распространяемыми версиями продуктов ТСЗАП и нарушения ими же патентов распространителей. Также запрещена тивоизация.

Окончательная версия GPLv3 была опубликована 29 июня 2007 года.

19 ноября 2007 года была выпущена GNU Affero General Public License v3 — GPLv3 с изменениями на основе Affero General Public License v1, выпущенной в 2002 году Affero Inc. на основе GNU GPLv2. Данная лицензия добавляет возможность получения исходного кода пользователям программы, взаимодействующим с ней только через сеть[1].

Схема GNU GPL[править | править вики-текст]

Текст GNU GPL состоит из нескольких пронумерованных разделов. Ниже приведена схема версии 2.0 лицензии. Эта схема не имеет никакой юридической силы и служит только для краткого ознакомления.

  1. Определения
    • (первый абзац) Определение термина «программа»
    • (второй абзац) Область действия лицензии
  2. Право на копирование и распространение
  3. Изменение программы
    • (первый абзац) Право на изменения при соблюдении следующих условий:
      • a) добавление информации об изменении в модифицированных файлах;
      • b) лицензирование модифицированных версий на условиях GNU GPL;
      • c) условное требование интерактивного вывода информации об авторских правах и отсутствии гарантии.
    • (абзацы 2—4) Уточнение термина «производная работа»
  4. Требование предоставления исходного кода
    • (первый абзац) Возможные варианты распространения исполнимого кода:
      • a) распространение вместе с исходным кодом, или
      • b) распространение с гарантией предоставления исходного кода, или
      • c) (для некоммерческого использования) распространение вместе с такой гарантией, полученной от третьего лица.
    • (второй абзац) Определение термина «исходный код»
    • (третий абзац) Достаточность одинакового доступа для копирования исполнимого и исходного кодов
  5. Прекращение действия лицензии при нарушении её условий
  6. Акты, означающие принятие лицензии
  7. Запрещение дополнительных ограничений при дальнейшем распространении
  8. Внешние ограничения не снимают обязательства выполнять условия лицензии
  9. Возможность географических ограничений
  10. Будущие версии GNU GPL
  11. Запросы на исключения из правил
  12. Отказ от предоставления гарантий
  13. Отказ от ответственности

Совместимость[править | править вики-текст]

Использование копилефта накладывает определённые ограничения на объединение работ под GPL и другими свободными (в первую очередь, копилефтными) лицензиями в производных работах.

GPLv2 несовместима с лицензиями Mozilla Public License (MPL), Common Development and Distribution License (CDDL), Apache Software License и некоторыми другими.

GPLv3 была сделана совместимой с лицензией Apache, однако с MPL и её производными она несовместима[6]. Работы под MPL часто одновременно лицензируются и под GPL, и под LGPL (например, код Mozilla Firefox), что частично решает проблему.

Известным примером несовместимости GPL с другой лицензией является невозможность включения файловой системы ZFS, выпущенной Sun Microsystems под CDDL, в ядро Linux, выпущенное под GPLv2.

Любая несвободная лицензия несовместима с GPL.

Сложности[править | править вики-текст]

GNU GPL требует распространения с двоичными файлами (в том числе неизменными) исходного кода или письменного обязательства его предоставить (своего или чужого; способы зависят от версии лицензии). Некоторые авторы считают, что это требование непривычно для отдельных пользователей и разработчиков, и не является для них очевидным и понятным[7].

Иногда у авторов возникают затруднения в выборе того, что считать исходным кодом для цифровых представлений аналоговых данных: музыкальных записей, видео с видеокамеры, фотографических изображений. Обычно это происходит при использовании сжатия с потерями или многократном преобразовании (например, цифровая запись игры на пианино по нотам или пения). Например, под вопросом свободность звуковой дорожки под лицензией CC BY-SA (не требующей распространять исходный код), если её компоненты недоступны под свободной лицензией отдельно, так как из них нельзя собрать такую же или другую звуковую дорожку.[источник не указан 322 дня]

Соответствие законодательству[править | править вики-текст]

  • Лицензионный договор GPL не допускает модификации под локальное законодательство и в нём не указаны территориальные ограничения. Поэтому такой договор не совместим с правовым режимом, установленным на территории РФ, так как в нём не предусмотрено адекватное регулирование свободного распространения продуктов или услуг.

Но в то же время, международное право имеет примат перед российским для международных договоров и сделок, то есть для правообладателя — гражданина РФ, действие договора под лицензией GPL будет распространяться только на территорию РФ (п. 3 ст. 1235 ГК РФ), а для иностранного гражданина он будет действовать в полную силу раздела VI ГК РФ «Международное частное право»[8].

  • Иногда говорят о возможности провести GNU GPL как договор присоединения, согласно статьям (428, 435 ГК РФ). Но единственный такой способ для лицензионных договоров описан в п. 3 ст. 1286 ГК РФ («Заключение лицензионных договоров о предоставлении права использования программы для ЭВМ или базы данных допускается путём заключения каждым пользователем с соответствующим правообладателем договора присоединения, условия которого изложены на приобретаемом экземпляре таких программы или базы данных либо на упаковке этого экземпляра…»). Эта статья не даёт возможность для легализации ПО, скачанного из Интернет и предоставляемого по лицензии GNU GPL, так как, во-первых, она говорит о «приобретении» экземпляров, чего не происходит при получении СПО через сайт, а, во-вторых, согласно ст. 1268 ГК РФ экземпляр произведения — это копия произведения в любой материальной форме, поэтому текст лицензии в электронном виде, выводимый в программе или находящийся рядом с программой в файле, этому условию не удовлетворяет. Ст. 1286 ГК РФ требует, чтобы условия договора были нанесены на материальный носитель или на его упаковку.[12]

Первоисточники[править | править вики-текст]

Интересные факты[править | править вики-текст]

  • Microsoft распространяет для владельцев нетбуков USB-ключи с программой установки Windows 7. Однако выяснилось, что программа содержит код, находящийся под GPL. В ноябре 2009 года Microsoft извинилась перед покупателями и пообещала открыть код программы[13][14]. 10 декабря 2009 года Microsoft окончательно открыла исходные коды Windows 7 USB/DVD Download Tool под лицензией GPLv2[15]. Windows 7 USB/DVD Download Tool можно скачать из Интернета по адресу: http://wudt.codeplex.com/
  • 25 января 2006 года Линус Торвальдс, автор ядра Linux, публично заявил, что оно, скорее всего, будет по-прежнему распространяться по лицензии GPL версии 2[Прим. 3]. В своём сообщении в почтовую рассылку для Linux-разработчиков Линус Торвальдс говорит о том, что ОС Solaris может инициировать переход ядра на новую готовящуюся версию лицензии на свободное программное обеспечение — GNU GPLv3. «Если Sun действительно собирается выпустить OpenSolaris под GPLv3, это может стать хорошей причиной для перехода Linux на новую лицензию» — заявил Торвальдс[16]. «Не думаю, что GPLv3 — такая же хорошая лицензия, как и GPLv2, но с другой стороны, я прагматик, и, если мы можем избежать ситуации с существованием двух ядер, распространяющихся под разными лицензиями, и с вызванными этим разногласиями, я по крайней мере вижу причину для перехода на GPLv3», — пояснил свою позицию главный разработчик Linux-ядра. До этого Торвальдс уже выражал своё недовольство новой версией лицензии GNU GPL, однако после появления последнего чернового варианта GPLv3 стал лучше относиться к этому проекту. Несмотря на это, сам он до сих пор отдаёт предпочтение GPLv2.

Переводы на русский[править | править вики-текст]

См. также[править | править вики-текст]

Примечания[править | править вики-текст]

Комментарии

  1. Пример гарантий: запрещается создавать на основе свободной программы под GPL другой проект, не предоставляя его исходники пользователям. Таким образом, данная лицензия вовсе не позволяет делать с программами «что угодно», как могут ошибочно трактовать данную лицензию плохо знакомые с ней.
  2. Имена авторов обычно указываются в исходном коде или документации (например, файле AUTHORS).
  3. В отличие от многих других GPL-программ, Linux распространяется на условиях только второй версии GPL, а не «версии 2 или более поздней»:GPL V3 and Linux - Dead Copyright Holders (англ.) (28.01.2006). Проверено 10 июля 2010. Архивировано из первоисточника 22 августа 2011.

Источники

  1. 1 2 Free Software Foundation Releases GNU Affero General Public License Version 3 (англ.). Free Software Foundation (19.11.2007). Проверено 8 июля 2010. Архивировано из первоисточника 22 августа 2011.
  2. Ася Власова. Как украсть Linux? (рус.) (24.06.2008). — о FOSS-лицензиях и их применении в России. Проверено 10 июля 2010. Архивировано из первоисточника 22 августа 2011.
  3. Вопросы применения свободной лицензии GNU GPL, 2013
  4. Understanding Open Source and Free Software Licensing, 2004, с. 49
  5. М. Брауде-Золотарев, Г. Гребнев, П. Протасов, А. Ралько, Е. Сербина. Свободное программное обеспечение в организации. Сборник материалов / М. Брауде-Золотарев. — 3-е. — М.: «Интернет-Полиграфия» INFO-FOSS.RU, 22.09.2008. — 124 с. — 1000 экз. — ISBN 978-5-903423-03-3 УДК: 681.3.06 ББК: 32.973.26.
  6. Various Licenses and Comments about Them. — Совместимость свободных лицензий с GPL. Проверено 10 августа 2010. Архивировано из первоисточника 22 августа 2011.
  7. Bruce Byfield. A GPL requirement could have a chilling effect on derivative distros (англ.). VA Software (27 июня 2006). Проверено 10 августа 2010. Архивировано из первоисточника 22 августа 2011.
  8. GPL в России: продолжаем перевод. Проверено 15 июля 2010. Архивировано из первоисточника 22 августа 2011.
  9. Unofficial Translations (англ.). Проверено 1 августа 2010. Архивировано из первоисточника 22 августа 2011.
  10. М. Брауде-Золотарев, Г. Гребнев, П. Протасов, А. Ралько, Е. Сербина / сост. М. Брауде-Золотарев. Свободное программное обеспечение в организации. Сборник материалов. (рус.). INFO-FOSS.RU. — . — 3-е. — М.: «Интернет-Полиграфия» INFO-FOSS.RU, 22.09.2008. — 124 с. — 1000 экз. — ISBN 978-5-903423-03-3 УДК: 681.3.06 ББК: 32.973.26. о соответствии распространённых, в том числе свободных, лицензионных договоров российскому законодательству. Проверено 15 июля 2010. Архивировано из первоисточника 22 августа 2011.
  11. Международная сфера действие лицензии, а также ориентированность на понимание любым грамотным, но не являющимся профессиональным юристом, человеком: GPL в России: трудности перевода
  12. Макогон Станислав Иванович, руководитель проекта «LinuxWizard». Лицензионность СПО в России: проблемы и перспективы (рус.). СПО в образовательных учреждениях Санкт-Петербурга (2012). — Статья. Архивировано из первоисточника 24 ноября 2012.
  13. Microsoft admits its GPL violation; will reissue Windows 7 tool under open-source license, zdnet.com, 18 ноября 2009 г.
  14. Protalinski, Emil. Windows 7 tool violates GPL; Microsoft will open source it  (англ.), Ars Technica, Condé Nast Digital (16 ноября 2009). Проверено 27 января 2010.
  15. Bantle, Ulrich. Microsoft Puts Windows 7 USB/DVD Tool under GPL  (англ.), Linux Magazine, Linux New Media (11 декабря 2009). Проверено 27 января 2010.
  16. Dual-Licensing Linux Kernel with GPL V2 and GPL V3 (10.06.2010). — Сообщение Линуса Торвальдса о возможности перехода Linux на GPLv3 в случае, если Sun выпустит под ней OpenSolaris. Проверено 10 июля 2010. Архивировано из первоисточника 22 августа 2011.

Литература[править | править вики-текст]

Andrew M. St. Laurent Understanding Open Source and Free Software Licensing. — 2004. — 207 с.

Ссылки[править | править вики-текст]