Определение Open Source

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Определение Open Source (англ. Open Source Definition, OSD) используется организацией Open Source Initiative для определения степени соответствия лицензии на программное обеспечение стандартам Открытого программного обеспечения (Открытое ПО). Основываются на директивах Debian для свободного программного обеспечения, которые большей частью написаны Брюсом Перенсом.

Термин «Open Source» был создан как альтернатива термину «Free software». Для свободного программного обеспечения открытый исходный код является обязательным, что вытекает из самого определении «Free software» («Свобода 1» и «Свобода 3»).

Требования к лицензиям на Открытое ПО в редакции Open Source Initiative

[править | править код]
  1. Свободное распространение. Это значит, что лицензия не должна налагать ограничений на продажу и распространение ПО.
  2. Доступные исходные тексты. Даже если ПО не поставляется с исходными текстами, эти тексты должны быть легко доступны. Это должны быть именно редактируемые человеком исходные тексты, а не выход обфускаторов, препроцессоров и тому подобные промежуточные формы.
    Таким образом, freeware не является open source.
  3. Возможность модификации. Простая возможность читать исходные тексты не позволяет экспериментировать с ними и выпускать модификации. Лицензия, претендующая на звание «открытой», должна разрешать не только чтение кода, но и модификацию, использование частей кода в других проектах и распространение получившихся программ на условиях той же лицензии.
    Компания id Software выпустила исходные тексты (но не данные) Doom в 1998 году под «образовательной» лицензией. Когда отказавший диск поставил крест на многообещающем порте, тексты перелицензировали под GPL: будь лицензия открытой, у кого-то точно нашлась бы резервная копия[1].
  4. Даже в случае неприкосновенности авторского исходного текста, производные программы и их исходные тексты должны свободно распространяться. Чтобы не запутывать пользователя, свободные лицензии могут оставлять за автором какие-то права — например, производная программа обязана нести другое имя или версию; либо она должна состоять из авторских исходных текстов и патчей к ним. Тем не менее, автор должен разрешать распространять откомпилированные двоичные файлы и исходные тексты производной программы в том или ином виде.
    Компания Netscape, выпуская исходные тексты браузера, оставила имя Netscape за собой. Несмотря на этот пункт, Mozilla Public License является открытой.
  5. Отсутствие дискриминации против людей и групп людей. Некоторые страны, например, США, имеют некоторые ограничения на экспорт ПО. Свободная лицензия может напоминать, что такие правила есть, но не может ставить свои.
    Одна из «почти открытых» лицензий, созданных во время апартеида, запрещала использование программы полицией ЮАР. Апартеид пал, а требование осталось.
  6. Отсутствие дискриминации по цели применения. Свободная лицензия должна разрешать все виды деятельности, включая генетические и ядерные исследования, коммерческое применение и т. д. Про коммерческое применение говорится особо: «Мы хотим, чтобы коммерческие пользователи подключались к сообществу, а не считали себя отрезанными от него».
    Как и со свободным ПО, личные убеждения автора не должны мешать делу, и пункты наподобие «нельзя использовать в клиниках для абортов» запрещены. Ведь один может запретить аборты, другой — ругательства, третий — и то, и другое, а четвёртый — какой-нибудь из этих запретов, ничего от свободы не оставив.
  7. Распространение лицензии. Права, связанные с открытым ПО, должны быть применимы ко всем пользователям программы без заключения дополнительных соглашений, например, соглашения о неразглашении.
    Другими словами, любая открытая лицензия будет публичной.
  8. Лицензия не должна быть привязана к конкретному продукту. Права на программный код не должны зависеть от того, является ли программа частью какого-то продукта. Человек, распространяющий программу в отрыве от сборника или перенёсший часть кода в другой продукт, имеет такие же права, какие давал сборник. Это требование закрывает некоторые лицензионные лазейки.
    ReactOS и Wine активно обмениваются кодом. На основе ядра Linux строят прошивки различных устройств. Это возможно, потому что ни одна строчка кода, ни один файл исходного текста не привязан ни к какой программе.
  9. Лицензия не должна ограничивать другие программные продукты. За исключением банальной несовместимости, пользователь имеет право выбирать, чем пользоваться. Например, нельзя требовать, чтобы остальные программы, поставляемые вместе с данной, также были открытыми.
    Свежие версии Ghostscript имели лицензию, которая запрещала использовать программу вместе с закрытым ПО (устаревшие версии выпускались под GPL). От этой практики отказались в 2007 году. Часть лицензий Microsoft Shared Source допускают создание ПО только под Windows.
  10. Лицензия должна быть технологически нейтральной. То есть, лицензия не должна требовать что-либо от интерфейса или технологий, применяемых в производной программе.
    Например, непригоден пункт «пользователь должен принять лицензию, нажав на определённую кнопку» — это не даст использовать ПО в режиме командной строки без участия пользователя. Этот пункт также служит для того, чтобы закрыть лицензионные лазейки.

Примечания

[править | править код]
  1. Licences — Doom Wiki — Wikia. Дата обращения: 17 декабря 2018. Архивировано 18 декабря 2018 года.