GNU General Public License

Талісман проєкту GNU

GNU General Public License (Загальна публічна ліцензія GNU або Загальна громадська ліцензія GNU) — одна з найпопулярніших[1] ліцензій на вільне програмне забезпечення, створена Річардом Столменом для проєкту GNU. Часто її скорочено називають GNU GPL чи просто GPL, якщо з контексту зрозуміло, про яку ліцензію йдеться (існує чимало інших ліцензій зі словами «general public license» у назві).

Концепція

Мета GNU GPL — надання користувачеві прав на копіювання, зміни й розповсюдження програми та зобов'язань, згідно з якими користувачі всіх похідних від неї програм теж отримають ці права. Принцип «спадковості» таких прав називають «копілефт» (транслітерація англійського «copyleft»). Такий термін запропонував Річард Столмен. На відміну від GPL, ліцензії на власницьке (пропрієтарне) програмне забезпечення дуже рідко надають користувачеві такі права й, переважно, намагаються навпаки обмежити їх, наприклад, встановивши заборону на відновлення початкового коду.

GPL — приклад сильної копілефт-ліцензії, яка вимагає, щоб усі похідні роботи були доступні на тих же умовах, що й оригінал. GPL надає одержувачам комп'ютерної програми права відповідно до визначення вільного програмного забезпечення й використовує копілефт, щоб гарантувати, що ці права будуть збережені навіть тоді, коли робота буде значно змінена чи до неї будуть додані будь-які частини. Це відрізняє її від до́звільних ліцензій на безплатне програмне забезпечення, прикладом яких є ліцензія BSD або ліцензія Apache.

Свобода

GPL надає одержувачам комп'ютерних програм такі права, або «свободи»:

  • свободу запуску програми з будь-якою метою;
  • свободу вивчення того, як програма працює, і її модифікації (попередньою умовою цього є гарантований доступ до початкового коду);
  • свободу розповсюдження копій;
  • свободу поліпшення програми й випуску поліпшень у публічний доступ (попередньою умовою цього є гарантований доступ до початкового коду).

Історія

GPL була написана Річардом Столменом 1989 року для використання з програмами, які випускались як частина проєкту GNU. Оригінальна GPL була заснована на об'єднанні ліцензій, які він використовував для ранніх версій GNU Emacs, GDB (зневаджувача GNU) i Колекції компіляторів GNU (GCC). Ці ліцензії містили умови, подібні тим, що вимагає сучасна GPL, але були специфічними для кожної програми, що робило їх несумісними. Метою Столмена було створити єдину ліцензію, яка могла використовуватися для будь-якого проєкту, роблячи таким чином можливим сумісне використання коду різними програмами. Саме такою ліцензією стала перша версія GNU GPL, випущена в січні 1989 року.

Довіра до GPL зросла після того, як Лінус Торвальдс 1992 року ухвалив ліцензування ядра Linux на умовах GPL (до того воно виходило за ліцензією, що забороняла комерційне розповсюдження).

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

Наступні 15 років члени Фонду вільного програмного забезпечення (FSF) збирали дані про лазівки, які використовували деякі продавці програмного та апаратного забезпечення для того, щоб користуватися програмами, ліцензованими на умовах GPL, всупереч задуму програмістів. Після тривалого обговорення була створена версія 3 ліцензії, яку FSF офіційно випустив[2] 29 червня 2007.

Деякі спостерігачі вважають, що сильний копілефт, забезпечений GPL, був «ракетним двигуном» успіху Linux, надавши програмістам надію, що їх робота принесе користь усьому світу й залишиться вільною, а не буде експлуатуватися компаніями програмного забезпечення, яким не прийде в голову зробити щось корисне для суспільства.[3]

GPL v2

Для забезпечення прав розробників і користувачів GPL накладає обов'язок поширювати разом із програмою її початковий код і передавати користувачеві всі права, які захищає ця ліцензія.

Ці обмеження є предметом довгих суперечок. Альтернативною є точка зору, що виражається в різних ліцензіях, заснованих на ліцензії BSD, яка дозволяє користувачеві те, що забороняє GPL — застосування коду в невільних програмних продуктах. Ліцензії такого типу використовує значна частина вільного ПЗ, включаючи FreeBSD, Apache, BIND і інші проєкти.

Разом з тим, GPL 2 також використовується безліччю програмних проєктів. Парадокс полягає в тому, що, попри суперечки, які не стихають у вузьких колах, у результаті 15-річної історії розвитку в будь-якому репозиторії Linux або колекції портів FreeBSD завжди можна знайти програми, що розповсюджуються під ліцензіями обох типів.

GPL v3

Третя версія GPL, яка, за задумом Столлмена, мала відповісти на питання, що виникли з моменту випуску другої версії, почала розроблятися 2005 року й побачила світ у липні 2007 року.

Основними змінами в ній стали пункти, що уточнюють право користувачів бути захищеними від нових загроз. Фонд вільного ПЗ вважає такими загрозами спроби патентного переслідування користувачів і розробників вільного ПЗ, обмеження прав користувачів за допомогою технологій DRM (Digital rights management), які накладають обмеження на копіювання й зміни контенту і, нарешті, засоби технічного захисту, що перешкоджають зміні користувачем ПЗ, у тому числі і того, що перебуває під вільною ліцензією. У GPL v3 додані положення для протидії тивоїзації (прив'язки програмного забезпечення до обладнання) та укладанню дискримінаційних патентних угод — патент може бути ліцензований для GPLv3-коду лише на умовах повсюдного і безплатного використання, а також для забезпечення захисту від патентних позовів від постачальника GPLv3-продукту (якщо фірма постачає GPLv3-компоненти, то вона не може пред'явити судовий позов проти користувачів таких компонентів, звинувативши їх у порушенні патентів у цьому ПЗ або в обході засобів захисту інтелектуальної власності).

Нова версія ліцензії викликала істотні розбіжності в спільноті, попри 12-місячний цикл обговорення. Найбільше питань виникло до пунктів, що стосуються заборони на використання у вільних продуктах технологій DRM. Як вважають деякі компанії й розробники, це привело б до втрати позиції Linux на ринку мультимедійних пристроїв.

Запеклим супротивником GPL v3 виступив і творець ядра Linux Лінус Торвальдс, який заявив, що ядро Linux залишиться на GPL v2 (проте не виключив можливості переходу на «третю GPL», якщо виникне небезпека виникнення двох несумісних ядер Linux).

Таким чином, спільнота розділилося в думках відносно GPL v3, зайнявши одну з трьох позицій:

  • супротивники оновленої ліцензії обмежили ліцензування, додавши або зберігши примітку «тільки GPL v2»;
  • згідні з принципами GPL v3 випустили нові версії виключно під нею;
  • а велика частина розробників зберегла ліцензування «GPL v2 або пізніша версія», залишивши вибір за користувачами.

Остаточні висновки про успіх або невдачу GPL 3 надасть практика, проте статистика показує, що вже на початок 2008 року під GPL v3 ліцензовано понад 2000 проєктів, серед яких — всі розробки GNU (GCC, GnuPG, GNU Radius, GNU CoreUtils, tar, GRUB, wget), Samba, Rsync, Octave. Ще більше 6000 продуктів підтримують декілька варіантів ліцензій, які включають GPL v3.[4]

Див. також

  • GNU Lesser General Public License (LGPL) — «послаблена» версія GPL, спочатку створена для бібліотек програмного забезпечення, — дозволяє пов'язання з цією програмою чи бібліотекою іншої програми, випущеною під будь-якою іншою ліцензією, несумісною з GNU GPL.
  • Affero General Public License (GNU AGPL) — посилена версія ліцензії GPL, призначена для мережевого серверного програмного забезпечення, — вимагає, щоб повний початковий код програми був доступним для будь-якого користувача мережі, який працює з цією програмою.
  • GNU Free Documentation License (GNU FDL, GFDL) — ліцензія документації, яка спочатку призначалася для використання з документацією для програмного забезпечення GNU, але також була прийнята для інших проєктів, одним з найбільших з них є Wikipedia.
  • Вірусна ліцензія

Джерела

  1. David A. Wheeler. Estimating Linux's Size. Архів оригіналу за 25 червня 2013. Процитовано 2 червня 2008. {{cite web}}: Cite має пустий невідомий параметр: |4= (довідка)(англ.)
  2. FSF releases the GNU General Public License, version 3. Архів оригіналу за 25 червня 2013. Процитовано 2 червня 2008. {{cite web}}: Cite має пустий невідомий параметр: |3= (довідка)(англ.)
  3. why the GPL rocketed Linux to success. Архів оригіналу за 25 червня 2013. Процитовано 2 червня 2008. {{cite web}}: Cite має пустий невідомий параметр: |3= (довідка)(англ.)
  4. Раскола в СПО не будет: третью GPL признали [Архівовано 20 березня 2015 у Wayback Machine.](рос.)

Посилання

  • Офіційний текст GNU General Public License, версія 3 [Архівовано 2 червня 2012 у WebCite](англ.)
  • Текст GNU General Public License, версія 3 [Архівовано 30 березня 2017 у Wayback Machine.] — неофіційний український переклад
  • п
  • о
  • р
Загальне
Історія
ОС на базі ВПЗ
BSD · Apple Darwin · FreeDOS · FreeBSD · OpenBSD · FreeNAS · GNU · Haiku · Hurd · Inferno · Linux · Mach · MINIX · OpenSolaris · Plan 9 · ReactOS
Розробка ВПЗ[en]
Eclipse · FreeBASIC · Free Pascal · GCC · Java · libJIT[ru] · LLVM · Lua · Open64 · Perl · PHP · Python · ROSE[en] · Ruby · Tcl
Менеджери
вікон XWS
Blackbox Compiz EDE Enlightenment Fluxbox GNOME JWM IceWM KDE Openbox ROX[en] Window Maker[en] Xfce
Організації
Фонд вільного ПЗ (FSF) (європейський[en] індійський[en] латиноамериканський[en]) • Apache Software Foundation · Blender Foundation[en] · Eclipse Foundation · freedesktop.org · GNOME Foundation · Проєкт GNU · Google Code · Linux Foundation · Mozilla Foundation · Open Source Initiative · SourceForge · The Document Foundation · Xiph.Org · XMPP Standards Foundation[en] · X.Org Foundation
Ліцензії
Apache · APSL · Artistic[en] · BSD · CPL · GNU GPL · GNU LGPL · MIT · CDDL · MPL · Ms-PL/RL · zlib · FSF approved licenses[en] · Дозвільна ліцензія вільного ПЗ · Вільна ліцензія · Розмаїття ліцензій
Проблеми
Двійковий блоб · Технічні засоби захисту авторських прав · Вільні та відкриті графічні драйвери[en] · Ліцензійна проліферація · Iceweasel · Безпека відкритого ПЗ[en] · Власницьке програмне забезпечення · Конфлікт SCO—Linux · Програмні патенти · Тивоїзація · Trusted Computing · Апаратне обмеження[es] · Вірусна ліцензія
Інше
Визначення вільного ПЗ · Визначення Open Source · Альтернативні назви[en] · Рух · Вільне та відкрите ПЗ Microsoft Open Specification Promise[en] · Порівняння відкритих та закритих кодів[en] · Revolution OS · Собор і базар
  • п
  • о
  • р
Історія
Маніфест GNU • Проєкт GNU Фонд ВПЗ Історія ВПЗ
Ліцензії
GNU GPL • GNU LGPL Affero GPL GNU FDL GPL linking exception[en]
Програмне
забезпечення
GNU (варіанти) • Hurd GNOME Bash GCC GRUB GNU Emacs Guile glibc Coreutils Autotools • GNUnet •GNU linker GNU DebuggerGNUzilla (GNU IceCat) • Gnash • Guix Shepherd інші пакети...
Персони
Alexandre Oliva • Benjamin Mako Hill • Bradley Kuhn • Eben Moglen • Federico Heinz • Георг Греве • Джошуа Гей • Loïc Dachary • Мет Лі • Ricardo Galli • Річард Столмен Robert Chassell • William John Sullivan
Інше
Суперечка про найменування GNU/Linux • Revolution OS BadVista • Defective by Design
  • п
  • о
  • р
Linux
Adoption • Порівняння з Windows • Критика • Історія • Ядро (підтримувані архітектури)Закон ЛінусаLinux Foundation • Linux-libre • Tux • vmlinux
Tux, талісман Linux
Дистрибутиви
GNU
Free Software FoundationGNU • GNU General Public License • Суперечка про найменування GNU/Linux • Пакети GNUПроєкт GNU
Інтерфейс користувача
CLIGUIX Window SystemGNOMEKDEXfceLXDE
Менеджери вікон
CompizMetacityKWinOpenboxAfterStepBlackbox • CTWM • EnlightenmentFVWM • Hackedbox • IceWM • Metisse • OLVWM • PLWM • PWM • Sawfish • vtwm • wm2 • Wmx • Xmonad
Застосування
Desktop • Пристрої • Linux у вбудованих системах • Ігри • LAMPLTSP
Ключові особи
Джоно БеконАлан Кокс • Jon Hall • Benjamin Mako Hill • Greg Kroah-Hartman • David S. Miller • Ендрю Мортон • Іан Мердок • Брюс Перенс • Деніел Робінс • Марк ШаттлвортРічард СтолменЛінус Торвальдс • Theodore Ts'o • Патрік Волкердінґ • Matt Zimmerman
ЗМІ
Free Software Magazine • Linux.com • Linux Format • Linux For You • Linux Gazette • Linux Journal • Linux-Magazin • Linux Magazine • Linux Outlaws • LugRadio • LWN.net • O3 Magazine • Phoronix • DistroWatch
Мобільність
Access Linux Platform • Androidbada • LiMo Foundation • LiMo Platform • Linux Phone Standards Forum • MeeGo (MaemoMoblin) • Mobilinux • Open Handset Alliance • Openmoko • OPhone • Ubuntu MobilewebOS
Інше
Linux-конференції • Linux Documentation Project • Linux Standard Base • Linux User Group • Revolution OS (фільм) • SCO і Linux • Суперечка Таненбаума та ТорвальдсаThe Code (фільм) • Власницьке програмування для Лінукса • Віруси та хробакиОб'єднане ядро Linux