Различия между лицензиями свободного ПО
Введение
Иногда разработчики неправильно понимают термин «открытое программное обеспечение» (open-source), подразумевая, что он автоматически разрешает как угодно использовать это ПО в своих целях, если оно распространяется бесплатно. Это не всегда так.
Любое ПО необходимо лицензировать. У всех лицензий, за исключением общественного достояния, есть правообладатель. Поэтому, при использовании чужого открытого ПО, необходимо соблюдать условия и ограничения, которые предусмотрены лицензией на это ПО. По сути это касается всего кода, который можно найти на просторах интернета.
В российском законодательстве в ст. 1286.1 ГК РФ лицензии для открытого ПО определены как открытые лицензии, под ними понимается заключаемый в упрощенном порядке лицензионный договор, который относится к конструкции договора присоединения. Появление данной нормы в ГК РФ свидетельствует о том, что open-source
лицензии не противоречат российскому праву и их можно использовать, соблюдая их условия.
Сглаживая различные нюансы, по сути все лицензии для открытого ПО можно отнести к двум категориям:
- "Копилефт" (copyleft) лицензия — это тип лицензии, при котором код, полученный от источника с открытым исходным кодом, наследует тип лицензии.
- Разрешающая (permissive) лицензия - предоставляет больше свободы для использования, модификации и распространения.
Лицензии с авторским левом
Наиболее популярными лицензиями с авторским левом являются AGPL, GPL, LGPL, EPL и Mozilla.
GPL
Стандартная общественная лицензия GNU (GPL) имеет простой принцип: если вы использовали бесплатный и открытый код для разработки своего приложения, то и ваш модифицированный код должен быть в открытом доступе под такой же лицензией.
GPL
может представлять собой реальную проблему для тех, кто хочет коммерциализировать ПО и получать от него прибыль. Поскольку GPL
была специально разработана как альтернатива проприетарному ПО. Однако GPL-продукты разрешено использовать в коммерческих целях, продавая различные формы технической поддержки или документацию.
AGPL
Affero GPL (AGPL)- усиленная версия GPL. Она разрешает делать с кодом всё, что угодно, но взамен от всех, кто изменяет или распространяет работу, требуется указание исходного авторства, распространение исходного кода вместе с работой (или предоставление его по первому требованию), а также указание того, что в работу были внесены изменения. При этом производные работы должны публиковаться строго под этой же лицензией, без исключений. Лицензия гарантирует, что к пользователю (распространителю) не будут применены никакие требования из-за патентных прав.
Отличительной особенностью этой лицензии от основной лицензии GPL
является то, что если кто-то предоставляет доступ к программе по сети (например, через интернет), то это считается распространением, а значит, распространитель обязан представлять исходный код, если от него этого потребуют.
LGPL
От основной GPL
лицензии эта отличается тем, что использование работы под LGPL
в качестве части для большей работы (т.е. в качестве библиотеки) не накладывает требования лицензировать большую работу под LGPL
, или открывать её исходный код. Но код самой библиотеки все равно должен предоставляться по первому требованию.
EPL
Публичная лицензия Eclipse (EPL) обычно используется для программного обеспечения для бизнеса. С помощью EPL
программное обеспечение можно комбинировать и сублицензировать, но при условии, что любые не-EPL-элементы находятся обособленно в виде отдельных модулей или объектов. Модификации могут быть сделаны под лицензией EPL
, но они должны быть выпущены на тех же условиях.
Mozilla
Общественная лицензия Mozilla (MPL) является наименее ограничительной лицензией на программное обеспечение с авторским левом. При использовании работы под этой лицензией в качестве библиотеки, не нужно открывать даже исходный код самой библиотеки, равно как и указывать изменения, которые были внесены в работу.
Лицензия отдельно оговаривает, что для производных работ нельзя использовать те же названия, если они являются торговым марками.
Разрешающие лицензии
Наиболее популярными разрешительными лицензиями с открытым исходным кодом являются: Apache, MIT, BSD и Unlicense.
Apache
Эта лицензия дает право использовать ПО для любых целей, модифицировать его и распространять. При этом есть один интересный нюанс: производные работы могут иметь другие условия лицензирования и не обязаны предоставлять исходный код.
Условие, которое накладывает данная лицензия, одно — необходимо проинформировать пользователей о факте использования исходного кода. Для этого в корневую папку приложения нужно поместить 2 файла:
Licence
с копией текста лицензииNotice
с перечислением всех библиотек, лицензированных подApache
. При внесении изменений в код файлы должны актуализироваться.
Лицензия отдельно оговаривает, что для производных работ нельзя использовать те же названия, если они являются торговым марками.
MIT
MIT
или лицензия Массачусетского технологического института, является одной из самых популярных, коротких и простых для понимания. Она позволяет использовать исходный код в любых целях при условии, что оригинальное уведомление об авторских правах и лицензии включено либо в распространяемый исходный код, либо в само программное обеспечение. Это уведомление снимает с авторов любую ответственность за итоговую продукцию. Производные работы можно выпускать под другой лицензией и не открывать их исходники.
BSD
Лицензия Berkeley Source Distribution (BSD) — это лицензия, которая сохраняет уведомления о лицензии и авторские права, но также позволяет распространять более крупные работы на других условиях.
Есть разные вариации это лицензии, которые добавляют дополнительные требования или ограничения:
- BSD-2: с 2 пунктами (также известна как FreeBSD) очень похожа на лицензию MIT, только отличается текстом уведомления.
- BSD-3: добавляется пункт о запрещении использования названия продукта или торговой марки оригинального автора для продвижения своей производной работы.
- BSD-4: добавляется пункт об обязательном упоминании оригинального автора работы во всех рекламных материалах, ссылающихся на функции или использование этой работы.
Unlicense
Автор ПО под этой лицензией, отказывается от всех прав на неё, буквально передавая её в общественное достояние — на тех, кто её использует, не накладывается никаких ограничений. Приятная новость в том, что вы не будете нести ответственность за то, что написали — отсутствие гарантии здесь прописано.
Ссылки и дополнительная информация
Коментарии
Остались вопросы, появились идеи для обсуждения или просто хотите оставить отзыв? Буду рад любой обратной связи!
Вместо авторизации в приложении giscus , вы также можете оставлять комментарии непосредственно на GitHub, с которым связанна данная ветка комментариев.
Похожие записи
Доступ к Docker Hub
Обход блокировки досутпа к Docker Hub с помощью прокси-сервера
Комментарии в блоге с Giscus
Система комментариев на основе GitHub Discussions.