Лекция 2. Проект GNU и Free Software Foundation
GNU — rulez?
Фонд свободного программного обеспечения (FSF — Free Software Foundation) — http://www.fsf.org основан в 1985 г.
- предназначен для устранения ограничений на копирование, перераспределение, разбор и модификацию компьютерных программ
- функционирует в рамках проекта GNU
FSF концентрирует свои усилия на разработке нового свободного программного обеспечения в направлении ГНУ-системы, полной настолько, чтобы исключить необходимость вкладывания средств в собственную систему.
Free as in Freedom
Вторичные функции
- тиражирование ПО и документацииGNU,
- распространение свободного ПО
- прием пожертвований на поддержку разработки
- оказание услуг по сопровождению свободного ПО
Источники существования
«Наши усилия по разработке частично субсидируются из пожертвований и частично — из оплаты за распространение. Заметьте, что оплата за распространение соотносится только с услугами по распространению: Вы никогда не должны платить кому-либо деньги за лицензию по использованию программного обеспечения ГНУ, и Вы всегда вольны сделать себе копию с машины своего друга задаром (при условии, что Ваш друг этого хочет).»an official quest: What's FSF?
Кто этим занимается?
- Richard M. Stallman, Founder of FSF and the GNU Project and author of the GNU GPL, President
- Peter T. Brown, Executive Director
- Geoffrey Knauth, Senior Software Engineer at SFA, Inc.
- Lawrence Lessig, Professor of Law at Stanford University
- Eben Moglen, Professor of Law and Legal History at Columbia University
- Henri Poole, Founder of CivicActions, a grassroots campaign technology consulting firm
- Gerald J. Sussman, Professor of Computer Science at the MassachusetInstitute of Technology
Что предлагает FSF?
- Концепция «copyleft»
- Лицензия GPL (General Public License)
- Каталог свободного программного обеспечения (http://directory.fsf.org/)
Copyleft
Идея сopyleft в том, что каждый, кто распространяет программу как с изменениями, так и без них, не вправе ограничивать свободу ее дальнейшего распространения либо модификации.
Copyleft гарантирует, что каждый пользователь свободен в своих действиях.
Как применяется copyleft?
- Мы (FSF — прим. авт.) объявляем свои авторские права на нее (copyright)
- Добавляем условия распространения, являющиеся правовым базисом, согласно которому каждый получает права использования, модификации и распространения программного кода, а также любых производных программ на условии, что правила распространения неизменны
Результат: код и предлагаемые свободы становятся юридически нераздельными
И что из этого следует?
Дальнейшее свободное распространение и использование copylefted-программ гарантируется Генеральной Общественной Лицензией (General Public License, GPL) и производными от нее (например, LGPL)
GNUтая лицензия
GPL — General Public License, Генеральная Общественная Лицензия
Текущая версия — GNU GPL v3 [Неофициальный русский перевод GNU GPL v3]
Основное назначение GPL — гарантировать и защитить свободы, объявленные в манифесте GNU
Юридической силой обладает только оригинальный (англоязычный) текст
Структура GPL
0. Определения 1. Права на копирование и распространение ПО 2. Изменение ПО 3. Требование представления исходного кода 4. Прекращение действия лицензии при нарушении условий 5. Акты, означающие принятие лицензии 6. Запрещение дополнительных ограничений при дальнейшем распространении 7. Возможность географических ограничений 8. Отказ от гарантий 9. Отказ от ответственности
Прочие лицензии
Мы (FSF) классифицируем лицензии по некоторым ключевым вопросам:
- квалифицируется ли она как свободная лицензия на ПО;
- реализует ли она принцип "авторского лева";
- совместима ли она с GNU GPL (это значит, что вы можете объединять модули, выпущенные под этой лицензией с другими, подчиняющимися GPL, в одной программе);
- не вызывает ли она некоторые практические трудности.
Прочие лицензии
- Сокращенная Универсальная Общественная Лицензия GNU (GNU Lesser General Public License, кратко GNU LGPL).
- Лицензия Guile.
- Лицензия на библиотеку поддержки исполнения (run-time units) компилятора GNU Ada.
- Лицензия X11.
- Лицензия BSD.
- Лицензия Apache.
- Общественная Лицензия IBM (IBM Public License)
- Общественная Лицензия Проекта LaTeX (LaTeX Project Public License).
- Лицензия Perl.
- Общественная Лицензия Mozilla (Mozilla Public License, MPL).
- Общественная Лицензия Netscape (Netscape Public License, NPL)
GNU LGPL
Сокращенная Универсальная Общественная Лицензия GNU (GNU Lesser General Public License).
Это лицензия на свободное ПО, не обеспечивающая строгое "авторское лево", поскольку в ней разрешена компоновка с несвободными модулями. Она совместима с GNU GPL.
Рекомендована к использованию только в особых случаях (например, для библиотек).
Лицензия Guile
Состоит из GNU GPL с добавлением особого пункта, дающего неограниченное право компоновки с несвободными программами. Как следствие, она не является строгим "авторским левом" и совместима с GNU GPL.
Лицензия BSD
Первоначальная: в которой имеется соглашение о рекламе BSD, может вызвать практические проблемы, включающие несовместимость с GNU GPL.
Измененная: лицензия BSD, из которой изъято соглашение о рекламе. Это простая, либеральная лицензия на свободные программы, не являющаяся "авторским левом", для которой нет частных проблем. Совместима с GNU GPL.
Mozilla Public License
Общественная Лицензия Mozilla (Mozilla Public License, MPL).
Лицензия на свободное ПО, не реализующая строгое "авторское лево". Имеет некоторые комплексные ограничения, которые делают ее несовместимой с GNU GPL. Например, модуль, подчиняющийся GPL, не может законным путем быть скомпонован с модулем, помещенным под действие MPL.
Сравнение некоторых лицензий
Автор: Елена Тяпкина [tiapkina@hotmail.com]. Источник: http://www.libertarium.ru1. Различие между категориями "free software" и "Open source".
Все шесть лицензий, которые будут рассматриваться в настоящем докладе, являются лицензиями, одобренными Open Source Initiative для распространения ПО с открытым исходным текстом. Эти же лицензии называются "лицензиями на свободное ПО" (free software licenses) на сайте проекта GNU Free software foundation (FSF). При этом совместимыми с лицензией GPL из указанных лицензий являются только три: LGPL, BSD и лицензия MIT. Лицензии Apache (версии 1.0 и 1.1), и Mozilla (версии 1.0 и 1.1) - лицензии на свободное ПО, несовместимые с GPL. В связи с этим хотелось бы кратко остановиться на различиях между концепциями "свободного ПО" (free software) и "ПО с открытыми исходными текстами".
Представители "Open Source Initiative", в частности г-н Давид Уилер (David A. Wheeler) употребляет эти термины, как синонимы, определяющие одно и то же понятие, однако указывает на их различное содержание. В своей статье он пишет: "Те, кто использует термин "ПО с открытыми исходными текстами" хотят подчеркнуть технические преимущества такого ПО (например, большую надежность и безопасность), тогда как те, кто использует термин "свободное ПО", хотят подчеркнуть независимость от контроля со стороны третьих лиц за использованием ПО".
Как считают представители FSF, в настоящее время Free Software и Open Source являются двумя самостоятельными движениями. "Мы не против движения Open Source, но мы не хотим, чтобы нас путали с этим движением", — так так указано на сайте FSF. Представители FSF считают, что понятие "ПО с открытыми исходными текстами" более-менее соответствует понятию "свободного ПО", однако предпочитают использовать именно последнее определение и приводят для этого целый ряд аргументов:
- определение "открытый исходный текст" является слишком узким;
- некоторые компании, разработчики "обычного" ПО используют определение "открытый исходный текст" в своих целях и придают этому определению совсем другой смысл.
2. Названия и тексты лицензий.
Тексты лицензий на английском языке можно найти как на сайте Open Source Initiative, так и на сайте GNU. Очевидно, что текст GPL и LGPL, а также изменения к ним или новые версии этих лицензий, если они появятся, лучше всего брать с сайта GNU. Однако тексты остальных лицензий: MIT, BSD, Mozilla public license, Apache software license лучше всего взять с сайта Open Source. Если вы внимательно прочитаете список лицензий на сайте Open Source и сравните его со списком лицензий на сайте GNU, то убедитесь, что отдельные лицензии на сайте GNU называются иначе. В частности, лицензия MIT на сайте GNU называется Expat license. Текст этой лицензии почти полностью соответствует тексту лицензии BSD, за исключением одного условия. В русских компьютерных изданиях упоминается также лицензия X-консорциума, или X11 (так она называется на сайте GNU). Этой лицензии нет в списке лицензий на сайте Open Source, может быть потому, что она практически повторяет лицензию MIT.
Отдельно следует остановиться на тексте лицензии BSD. Как известно, существует два варианта ее текста: с оговоркой о рекламе и без этой оговорки. Лицензия, которая одобрена для применения как Open Source, так и FSF - это лицензия без оговорки о рекламе. Эта оговорка была официально отменена директором Департамента Технологического Лицензирования Калифорнийского университета 22 июля 1999г. Текст лицензии BSD лучше брать с сайта Open Source.
В 2001г. появился еще один вариант лицензии BSD — это лицензия корпорации Intel "BSD+Patent License". Она специально разработана для того, чтобы позволить модифицировать и распространять ПО, которое может защищаться патентами на программное обеспечение корпорации Intel.
3. Совместимость с GPL.
Как уже было сказано выше, совместимыми с GPL из остальных пяти указанных лицензий, являются только три: LGPL, BSD, MIT. Совместимость с GPL означает, что разработчик вправе объединить модуль, который распространяется на условиях совместимой с GPL лицензии с модулем, распространяемым на условиях GPL, чтобы получить одну программу. Дальнейшее распространение полученной программы должно осуществляться в соответствии с условиями GPL (так называемый "Copyleft virus").
4. Сравнительная характеристика лицензий.
Для наглядности сравнительную характеристику условий лицензий лучше всего представить в виде таблицы, где будет указано о наличии или отсутствии в лицензии тех или иных требований.
Лицензия | GPL | BSD | MIT | Mozilla public license | Apache software license |
---|---|---|---|---|---|
Требуется указывать имя автора | Да | Да | Да | Да | Да |
Измененные файлы должны быть помечены | Да | Нет | Нет | Да | Нет |
Наименование производного ПО должно отличаться от наименования продукта создателей лицензии | Нет | Нет | Нет | Нет |
Да* |
Производные произведения должны распространяться на условиях первоначальной лицензии | Да | Нет | Нет | Да ** | Нет |
Указана территория, на которую предоставляется лицензия | Нет | Нет | Нет | Да | Нет |
Отсутствие гарантий на ПО | Да | Да | Да | Да | Да |
Предоставляется право применить другую лицензию | Нет | не указано | не указано | Да | не указано |
Отдельно следует сказать о лицензии LGPL. Эта лицензия носит ограниченное применение:
- она может применяться только к библиотеке;
- произведение, производное от первоначальной библиотеки, также должно быть библиотекой.
Если создатель библиотеки решит заменить лицензию LGPL на GPL, то такая замена будет окончательной и повлечет за собой применение GPL ко всем последующим копиям данного экземпляра библиотеки и произведениям, производным от нее. LGPL содержит ряд специфических условий, в частности в отношении произведений, возникающих в результате связывания ПО, использующего библиотеку, с библиотекой. Такие произведения могут распространяться на любых условиях с соблюдением определенных требований LGPL.
Примечания:
* Если нет письменного
разрешения об использовании наименования
продукта создателей лицензии.
** В данном случае речь
идет об исходном тексте.
Каталог программ
to be continued...
CC-BY-CA Анатольев А.Г., 08.06.2022