Licencja GNU GPL — co to jest, co wolno, co nie wolno i jak wpływa na open source

Licencja GNU GPL — co to jest, co wolno, co nie wolno i jak wpływa na open source
GNU GPL to najważniejsza licencja open source na świecie — WordPress, Linux, 7-Zip, VLC i tysiące innych programów ją używają. Wyjaśniam co oznacza GPL, jakie daje prawa i obowiązki, i czym różni się od MIT i Apache.

GNU GPL (GNU General Public License) to najważniejsza i najpopularniejsza licencja open source na świecie. Na licencji GPL działa: WordPress, Linux (kernel), 7-Zip, VLC, GIMP, MySQL (Community), Drupal, WooCommerce i dziesiątki tysięcy innych programów. Zrozumienie GPL jest kluczowe dla każdego, kto korzysta z WordPressa, rozwija wtyczki/motywy lub buduje biznes na open source.

W tym poradniku wyjaśniam co oznacza licencja GPL, jakie daje prawa, jakie nakłada obowiązki i czym różni się od innych popularnych licencji (MIT, Apache, BSD).

Co to jest licencja open source — szybkie wprowadzenie

Licencja open source to zestaw reguł, na których autor udostępnia swój kod źródłowy publicznie. Mówi: „możesz używać, czytać, modyfikować i dystrybuować ten program — pod warunkami X, Y, Z”. Bez licencji kod jest chroniony prawem autorskim i nie wolno go kopiować/modyfikować.

Istnieją dziesiątki licencji open source, ale najważniejsze to:

  • GNU GPL (copyleft — silne) — modyfikacje MUSZĄ być też GPL
  • MIT (permissive — łagodna) — rób co chcesz, zachowaj copyright notice
  • Apache 2.0 (permissive + patent) — jak MIT, plus ochrona patentowa
  • BSD (permissive) — jak MIT, historycznie starsza
  • LGPL (copyleft — słabsze niż GPL) — linkowanie do biblioteki nie wymaga GPL

GNU GPL — 4 wolności (freedoms)

GPL została stworzona przez Richarda Stallmana i Free Software Foundation (FSF) w 1989 roku. Opiera się na czterech wolnościach:

  1. Wolność 0: Wolność uruchamiania programu w dowolnym celu.
  2. Wolność 1: Wolność studiowania jak program działa i modyfikowania go (wymaga dostępu do kodu źródłowego).
  3. Wolność 2: Wolność rozpowszechniania kopii programu.
  4. Wolność 3: Wolność rozpowszechniania swoich modyfikacji — żeby inni mogli z nich skorzystać.

Numeracja od 0 jest celowa (programistyczny żart, ale też filozofia: wolność 0 jest najbardziej fundamentalna).

Copyleft — kluczowa cecha GPL

GPL jest licencją copyleft — co oznacza: jeżeli modyfikujesz program na GPL i dystrybuujesz swoją modyfikację (udostępniasz innym), Twoja modyfikacja musi być też na licencji GPL — z dostępnym kodem źródłowym.

To jest fundamentalna różnica między GPL a MIT/Apache:

Akcja GPL MIT / Apache
Użycie w komercyjnym produkcie Tak Tak
Modyfikacja kodu Tak Tak
Dystrybucja modyfikacji Tak, ale musi być GPL (copyleft) Tak, bez ograniczeń (nawet closed-source)
Kod źródłowy modyfikacji Musi być udostępniony Nie musi

Mówiąc prościej: jeśli weźmiesz program GPL, zmodyfikujesz go i będziesz go rozpowszechniać — Twoja wersja też musi być GPL i musi mieć dostępny kod źródłowy. Nie możesz „zamknąć” (close-source) czegoś, co było GPL.

GPL a WordPress — praktyczne znaczenie

WordPress jest na licencji GPL v2+. Co to oznacza w praktyce:

Dla użytkowników WordPressa

  • Możesz pobierać i używać WordPressa za darmo, do dowolnego celu (osobistego, komercyjnego, firmowego).
  • Możesz modyfikować WordPress jak chcesz (edytować pliki PHP, zmieniać funkcje, usuwać feature’y).
  • Możesz dystrybuować swoją modyfikację — ale musi być też GPL.

Dla twórców wtyczek i motywów

  • Wtyczki i motywy WordPress, które zawierają kod PHP, są uznawane za „derivative works” (dzieła pochodne) WordPressa — i dlatego muszą być na licencji GPL (stanowisko WordPress Foundation i większości prawników).
  • To nie znaczy, że muszą być darmowe — możesz sprzedawać wtyczki/motywy GPL. GPL wymaga udostępnienia kodu, nie darmowego udostępnienia. Możesz sprzedawać za 99 zł, ale kupujący ma prawo udostępnić kod dalej (i to jest legalne).
  • Pliki CSS, JavaScript i obrazki w motywach/wtyczkach nie muszą być GPL — mogą mieć osobną licencję (split licensing). Ale PHP musi być GPL.

Co to oznacza dla „nulled” wtyczek i motywów

„Nulled” (pirackie) wtyczki premium WordPress — jeśli oryginał jest GPL, to technicznie redystrybucja kodu PHP jest legalna (GPL pozwala na to). Ale:

  • Nulled = zmodyfikowane (usunięta weryfikacja licencji) — modyfikacja jest OK na GPL, ale…
  • Nulled często zawiera malware — backdoory, spamery, redirect hacki. To główne ryzyko.
  • Brak aktualizacji i wsparcia — kupując od autora, dostajesz aktualizacje i pomoc. Nulled = sam sobie.
  • Kwestia etyczna — twórca zainwestował czas i pieniądze w rozwój. GPL nie oznacza „bierz za darmo” — oznacza „kod jest otwarty”.

GPL v2 vs GPL v3 — różnice

Cecha GPL v2 (1991) GPL v3 (2007)
Copyleft Tak Tak (silniejsze)
Kompatybilność z Apache 2.0 Nie Tak
Anti-tivoization Nie Tak (hardware nie może blokować modyfikacji)
Ochrona patentowa Ograniczona Pełna (contributor patent grant)
Kto używa WordPress, Linux kernel Bash, GCC, Samba

WordPress używa GPL v2 „or later” — co oznacza, że można stosować GPL v2 lub dowolną późniejszą wersję. Linux kernel: ściśle GPL v2 (nie „or later”).

GPL vs MIT vs Apache — porównanie dla programistów

Cecha GPL MIT Apache 2.0
Typ Copyleft (silny) Permissive Permissive + patent
Komercyjne użycie Tak Tak Tak
Modyfikacja Tak Tak Tak
Dystrybucja closed-source Nie (musi być GPL) Tak Tak
Kod źródłowy wymagany Tak (przy dystrybucji) Nie Nie
Ochrona patentowa Ograniczona (v3: pełna) Brak Tak
Popularne projekty WordPress, Linux, MySQL jQuery, React, Rails, .NET Android, TensorFlow, Kubernetes

Kiedy GPL: chcesz, żeby modyfikacje Twojego kodu ZAWSZE były otwarte. Ideologia: „wolny software powinien pozostać wolny”. Kiedy MIT: chcesz maksymalnej adopcji — każdy może użyć Twojego kodu do czegokolwiek (open + closed source). Kiedy Apache: jak MIT, ale z ochroną patentową (ważne dla dużych firm).

Najczęstsze pytania biznesowe o GPL

Czy mogę zarabiać na oprogramowaniu GPL?

Tak! GPL nie zabrania zarabiania. Modele biznesowe na GPL:

  • Sprzedaż z wartością dodaną: kod jest GPL (otwarty), ale sprzedajesz: wsparcie, aktualizacje, hosting, konfigurację, SLA. Model: Red Hat (Linux), Automattic (WordPress.com), Canonical (Ubuntu).
  • Freemium: darmowa wersja GPL + płatna wersja Pro z dodatkowymi funkcjami (nadal GPL, ale płacisz za dostęp do kodu Pro). Model: WooCommerce, Yoast SEO, Elementor.
  • Dual licensing: oferujesz kod na GPL (open source) i na licencji komercyjnej (closed source, bez copyleft). Klient wybiera. Model: MySQL (GPL + komercyjna Oracle).
  • SaaS: uruchamiasz oprogramowanie GPL na swoim serwerze i sprzedajesz dostęp jako usługę. GPL wymaga udostępnienia kodu tylko przy dystrybucji — uruchamianie na serwerze (SaaS) nie jest dystrybucją. Model: WordPress.com, GitLab.

Czy mogę użyć biblioteki GPL w swoim komercyjnym programie?

Jeśli Twój program linkuje do biblioteki GPL (jest „derivative work”) — Tw��j program musi być GPL. Jeśli nie chcesz GPL: użyj biblioteki na licencji LGPL (Lesser GPL) — LGPL pozwala na linkowanie bez wymuszania GPL na Twoim kodzie. Albo szukaj alternatywy na MIT/Apache.

Czy muszę udostępniać kod, jeśli modyfikuję WordPressa tylko dla siebie?

Nie. GPL wymaga udostępnienia kodu tylko przy dystrybucji (udostępnianiu innym). Jeśli modyfikujesz WordPressa na swojej stronie i nikomu nie dajesz zmodyfikowanej wersji — nie musisz udostępniać kodu. GPL chroni wolność przy rozpowszechnianiu, nie przy prywatnym użytku.

Najczęściej zadawane pytania

Czy GPL oznacza „za darmo”?

Nie — GPL oznacza „wolne” (free as in freedom), nie „darmowe” (free as in free beer). Możesz sprzedawać oprogramowanie GPL za dowolną cenę. Ale po zakupie: kupujący ma prawo do kodu źródłowego i może go redystrybuować (nawet za darmo). Dlatego model biznesowy GPL opiera się na wartości dodanej (support, aktualizacje), nie na zamknięciu kodu.

Co to jest AGPL?

AGPL (Affero GPL) to GPL z dodatkowym wymogiem: jeśli uruchamiasz zmodyfikowany program na serwerze (SaaS), MUSISZ udostępnić kod użytkownikom serwisu. Zwykła GPL tego nie wymaga (SaaS ≠ dystrybucja). AGPL zamyka tę lukę. Przykład: MongoDB (do 2018 na AGPL, potem przeszła na SSPL).

Czy Creative Commons to to samo co GPL?

Nie — Creative Commons (CC) to licencje do treści (teksty, obrazki, muzyka, wideo). GPL to licencja do oprogramowania (kod źródłowy). CC nie nadaje się do kodu, GPL nie nadaje się do treści. Do kodu: GPL, MIT, Apache. Do treści: CC-BY, CC-BY-SA, CC0.

Jak sprawdzić licencję programu/wtyczki?

Szukaj pliku LICENSE, LICENSE.txt lub COPYING w repozytorium/paczce. Na WordPress.org: każda wtyczka/motyw musi być „100% GPL compatible” — sprawdź sekcję „License” na stronie wtyczki. Na GitHub: licencja widoczna w prawym panelu repozytorium.

Podsumowanie

GNU GPL to licencja open source z copyleft — pozwala na użycie, modyfikację i dystrybucję kodu, ale wymaga, żeby modyfikacje też były GPL z dostępnym kodem źródłowym. WordPress, Linux i tysiące programów działają na GPL. Dla użytkownika: możesz robić z WordPressem co chcesz. Dla twórcy wtyczek: PHP musi być GPL, możesz sprzedawać, ale kupujący ma prawo do kodu. Dla biznesu: GPL nie zabrania zarabiania — zabrania zamykania kodu. Modele biznesowe: support, freemium, dual licensing, SaaS. Jeśli budujesz coś na open source — zrozum licencję, zanim zaczniesz budować.

Picture of Tomasz Zieliński
Tomasz Zieliński

Tomasz zajmuje się tematyką SEO, sztucznej inteligencji i automatyzacji pracy w marketingu internetowym. W swoich artykułach analizuje zmiany w algorytmach wyszukiwarek, rozwój narzędzi AI oraz nowe sposoby tworzenia i optymalizacji treści. Interesuje go przede wszystkim to, jak technologia wpływa na codzienną pracę specjalistów SEO, marketerów i twórców internetowych.

Facebook
Twitter
LinkedIn
Pinterest

Najnowsze Wpisy

Śledź nas