
Open source ліцензії визначають правила використання, модифікації та розповсюдження програмного забезпечення з відкритим кодом. Тому вибір правильної ліцензії дуже важливий для розробників, оскільки він впливає на те, як інші можуть використовувати ваш код та які зобов'язання вони матимуть.
Open source ліцензії поділяються на дві головні категорії: дозвільні (permissive) та копілефт (copyleft). Дозвільні ліцензії надають максимальну свободу користувачам, дозволяючи майже будь-яке використання коду, включно з інтеграцією в пропрієтарні продукти. Копілефт ліцензії вимагають, щоб будь-які похідні роботи також розповсюджувалися під тією самою або сумісною open source ліцензією.
У нашій статті розглянемо такі ліцензії:

Діаграма популярності відкритих ліцензій (джерело - Вікіпедія)
MIT License є однією з найпростіших та найпопулярніших дозвільних ліцензій. Вона дозволяє необмежене використання, копіювання, модифікацію та розповсюдження коду за єдиної умови - збереження копірайту та тексту ліцензії. Розробники можуть вільно інтегрувати MIT-код в комерційні продукти без розкриття власного коду.
Основні особливості MIT License:
MIT License ідеально підходить для розробників, які хочуть максимально широкого поширення свого коду без правових ускладнень. Багато великих проектів, включно з jQuery, Rails та Node.js, використовують саме цю ліцензію.
Apache 2.0 є більш складною дозвільною ліцензією, яка надає додаткові правові гарантії. На відміну від MIT, вона містить детальні положення щодо патентних прав та захисту торгових марок. Ліцензія автоматично надає користувачам ліцензію на будь-які патенти, які можуть бути порушені при використанні коду.
Apache 2.0 вимагає збереження повідомлень про копірайт, зміни в коді повинні бути задокументовані, а файл NOTICE (якщо він існує) має супроводжувати розповсюдження. Ця ліцензія особливо популярна в корпоративному середовищі через свої патентні положення та юридичну ясність.
Ліцензія дозволяє створення пропрієтарних похідних робіт та не вимагає розкриття вихідного коду модифікацій. Проекти як Android, Kubernetes та Apache HTTP Server використовують цю ліцензію.
Сім'я BSD ліцензій включає кілька варіантів, найпопулярнішими з яких є 2-clause (спрощена) та 3-clause (нова) BSD. Обидві є дозвільними ліцензіями, схожими на MIT, але з дещо іншими формулюваннями.
2-clause BSD практично ідентична MIT License, вимагаючи лише збереження копірайту та тексту ліцензії. 3-clause BSD додає заборону на використання імені автора для реклами похідних продуктів без письмового дозволу.
Існує також застаріла 4-clause BSD, яка містила проблематичну "рекламну застережку", що робила її несумісною з GPL. Ця версія більше не рекомендується до використання.
BSD ліцензії популярні в академічному середовищі та серед розробників системного програмного забезпечення. FreeBSD, OpenBSD та багато інших Unix-подібних систем використовують варіанти BSD ліцензій.
GPL є найвідомішою копілефт ліцензією, розробленою Free Software Foundation. Вона гарантує, що код залишатиметься вільним, вимагаючи від усіх похідних робіт розповсюдження під тією самою ліцензією. Це означає, що будь-хто, хто модифікує GPL-код та розповсюджує результат, повинен надати доступ до вихідного коду.
Ключові принципи GPL:
GPL версії 3 (GPLv3) додала захист від "тивоізації" - практики використання GPL коду в пристроях, які технічно блокують запуск модифікованих версій. Ліцензія також містить положення про патенти, схожі на Apache 2.0.
Linux kernel, GNU Compiler Collection та багато інших фундаментальних проектів використовують GPL. Ця ліцензія ідеально підходить для розробників, які хочуть гарантувати, що їх код залишиться вільним назавжди.
LGPL є компромісом між повним копілефтом GPL та дозвільними ліцензіями. Вона дозволяє лінкування з пропрієтарним кодом, але вимагає, щоб самі LGPL-компоненти залишалися відкритими при модифікації.
Ця ліцензія особливо корисна для бібліотек, які автори хочуть зберегти відкритими, але дозволити їх використання в комерційних продуктах. LGPL гарантує, що покращення бібліотеки будуть повернуті спільноті, але не примушує розробників комерційних додатків відкривати власний код.
Популярні бібліотеки як GTK+, Qt (частково) та GNU C Library використовують LGPL. Ця ліцензія ідеально підходить для бібліотек загального призначення, які автори хочуть зробити широко доступними.
MPL 2.0 є ліцензією слабкого копілефту, яка застосовується на рівні файлів, а не всього проекту. Файли під MPL повинні залишатися під тією самою ліцензією, але їх можна комбінувати з файлами під іншими ліцензіями в одному проекті.
Ця ліцензія дозволяє створення "розширених робіт" без копілефт вимог, що робить її привабливою для комерційного використання. MPL сумісна з GPL та містить патентні положення. Firefox, Thunderbird та інші продукти Mozilla використовують цю ліцензію.
MPL підходить для проектів, які хочуть гарантувати відкритість основного коду, але дозволити пропрієтарні розширення та інтеграцію.
При виборі ліцензії ключовим фактором є ваша філософія щодо використання коду. Якщо ви хочете максимального поширення без обмежень, MIT або Apache 2.0 будуть оптимальними. Apache 2.0 краще підходить для корпоративного середовища через патентні гарантії.
Для забезпечення того, щоб код залишився назавжди вільним, GPL є найкращим вибором. Вона гарантує, що всі похідні роботи також будуть відкритими. LGPL підходить для бібліотек, які ви хочете зберегти відкритими, але дозволити використання в пропрієтарних продуктах.
MPL пропонує баланс між відкритістю та комерційною привабливістю, особливо для компонентно-орієнтованих проектів. BSD ліцензії схожі на MIT, але з дещо іншими юридичними формулюваннями.
Важливо розуміти сумісність між різними ліцензіями при створенні проектів, які використовують код з різних джерел. Дозвільні ліцензії (MIT, Apache 2.0, BSD) сумісні майже з усім. GPL має строгі вимоги сумісності - код під GPL можна поєднувати лише з GPL-сумісними ліцензіями.
Apache 2.0 сумісна з GPLv3, але не з GPLv2 через різні патентні положення. MPL 2.0 сумісна з GPL при певних умовах. LGPL дозволяє лінкування з будь-яким кодом, але самі LGPL-файли повинні залишатися під LGPL.

Взаємодія між Open Source ліцензіями (джерело - Вікіпедія)
Для новачків найпростішим вибором є MIT License через свою простоту та широку прийнятність. Якщо ваш проект може мати патентні аспекти або призначений для корпоративного використання, Apache 2.0 буде кращим вибором.
Для проектів з ідеологічною мотивацією щодо вільного програмного забезпечення GPL забезпечує найсильніший захист свободи коду. Розробники бібліотек часто обирають LGPL для балансу між відкритістю та практичністю.
Завжди консультуйтеся з юристами при виборі ліцензії для комерційних проектів або при роботі з складними сценаріями ліцензування. Розуміння ліцензій критично важливе для будь-якого розробника в сучасному світі відкритого програмного забезпечення.
n8n (вимовляється "n-eight-n") - це низькокодова платформа автоматизації робочих процесів з відкрити..
OSINT - це збір та аналіз інформації з публічно доступних джерел, методика отримання розвідувальних ..
Повноцінна graph розмітка трансформує присутність компанії в пошукових системах. Збільшується видимі..
SiteHub.com.ua — українська біржа для купівлі та продажу цифрових активів: сайтів, доменів, соціальн..