Sprzedaż wyjątków do GNU GPL
Richard StallmanWyjątki od sprzedaży oznaczają, że właściciel praw autorskich udostępnia kod publice pod właściwą wolną licencją, po czym osobno oferuje użytkownikom możliwość płacenia za możliwość wykorzystania tego samego kodu pod innymi zasadami, przykładowo pozwalającymi na wykorzystywanie go we własnościowych programach.
Musimy rozróżniać praktykę sprzedaży na innych licencjach od czegoś całkowicie innego: czysto własnościowych rozszerzeń lub wersji wolnego oprogramowania. Te dwie działalności, nawet jeżeli praktykowane są jednocześnie przez jedną firmę, są dwoma osobnymi zagadnieniami. Przy sprzedaży na innej licencji, ten sam kod, którego dotyczy dana klauzula, jest także ogólnie dostępny jako wolne oprogramowanie. Rozszerzenie lub wersja zmodyfikowana dostępna wyłącznie na zasadach licencji własnościowej jest oprogramowaniem własnościowym w najczystszej postaci i nie jest w żaden sposób lepsza niż jakiekolwiek inne oprogramowanie własnościowe. Ten artykuł skupia się na przypadkach związanych wyłącznie ze sprzedażą na innej licencji.
Musimy również rozróżniać wyjątki sprzedażowe od podwójnego licencjonowania, co oznacza publikowanie programu pod różnymi licencjami. Dzięki podwójnemu licencjonowaniu każdy użytkownik może wybrać pod którą licencją chce wykorzystywać program, lub pod obiema przeplatającymi się dla aktywności, do których obie pasują (Przez co redystrybutorzy zwykle przekazują obie licencje.). Przykładowo Perl był dystrybuowany przez wiele lat pod podwójną licencją którymi były GNU GPL oraz Licencja Artystyczna. Nie jest to już konieczne, ponieważ wersja druga Licencji Artystycznej jest kompatybilna z GNU GPL.
W wyjątkach sprzedażowych zasady wyjątków nie są drugą licencją, pod którą program jest wydawany. Są one jednak dostępne tylko dla tych użytkowników, którzy zakupili wyjątek. Jedyną licencją, pod którą są wydane jest GNU GPL, zatem nie jest to podwójne licencjonowanie.
Musimy odróżnić sprzedaż wyjątków od zwykłych rodzajów „wyjątków od GPL”, co tylko daje wszystkim użytkownikom prawo do wychodzenia poza zasady GPL przez specyficzne metody. Te wyjątki są zarządzane przez sekcję 7 GNU GPL. Wyjątki sprzedażowe są prawnie niezależne od GNU GPL. Aby uniknąć zamieszania najlepiej nie odnosić się do sprzedawanych wyjątków jako „wyjątków od GPL.”
Kwestię sprzedaży na innych licencjach akceptuję od lat 90. XX wieku i czasami nawet proponowałem takie postępowanie firmom. W kilku przypadkach takie podejście umożliwiło ważnym programom stanie się wolnym oprogramowaniem.
Środowisko graficzne KDE zostało stworzone w latach 90. i bazowało na bibliotece Qt. Była ona oprogramowaniem własnościowym, a TrollTech pobierał opłaty za włączenie jej do własnościowych aplikacji. TrollTech zezwolił na używanie Qt w wolnych aplikacjach, ale to nie uczyniło jej wolnym oprogramowaniem. W związku z tym całkowicie wolne systemy operacyjne nie mogły zawierać biblioteki Qt i dlatego też nie mogły używać środowiska KDE.
W 1998 roku zarząd TrollTech uznał, że mogą uczynić bibliotekę Qt wolnym oprogramowaniem i kontynuować pobieranie opłat za zezwolenia na włączenie jej do oprogramowania własnościowego. Nie pamiętam, czy ta taka sugestia wyszła ode mnie, lecz z pewnością byłem szczęśliwy widząc zmianę, dzięki której można było używać biblioteki Qt, a zatem także środowiska KDE, w świecie wolnego oprogramowania.
Początkowo używali własnej licencji, Publicznej Licencji Q (QPL) – dość restrykcyjnej jak na licencje wolnego oprogramowania i niekompatybilnej z GNU GPL. Później przeszli na GNU GPL; myślę, że wyjaśniłem im, że sprawdzi się to w ich sytuacji.
Sprzedaż na innej licencji jest nierozerwalnie związana z objęciem oprogramowania licencją typu copyleft, np. GNU GPL. Licencja typu copyleft zezwala na włączenie kodu do większego programu wyłącznie wtedy, gdy cały program będzie objęty taką licencją; dzięki temu również rozszerzone wersje takiego programu będą wolne. Dlatego też użytkownicy chcący stworzyć z takiego połączonego programu oprogramowanie własnościowe potrzebują specjalnego pozwolenia. Tylko właściciel praw autorskich może udzielić takiego pozwolenia; sprzedaż na innej licencji jest jednym ze sposobów takiego działania. Ktoś, kto otrzymał kod źródłowy na licencji GNU GPL lub innej licencji typu copyleft, nie może czegoś takiego uczynić.
Kiedy pierwszy raz usłyszałem o praktyce sprzedaży na innej licencji, zapytałem samego siebie, czy jest to etyczne. Jeżeli ktoś licencję w celu włączenia programu do większego oprogramowania własnościowego, robi coś złego (mianowicie tworzy oprogramowanie własnościowe). Czy to oznacza, że programista, który sprzedał licencję, także robi coś złego?
Gdyby taka sugestia była słuszna, obejmowałaby również udostępnianie tego samego oprogramowania na zasadach licencji wolnego oprogramowania typu non-copyleft, jak np. licencji X11. Ona również zezwala na takie włączanie w programy własnościowe. Dochodzimy więc do wniosku, iż obejmowanie jakikolwiek oprogramowania licencją X11 jest złe – co uważam za niedopuszczalnie skrajne – bądź odrzucamy taką sugestię. Użycie licencji typu non-copyleft jest słabym i zazwyczaj gorszym rozwiązaniem, ale nie jest czymś złym.
Innymi słowy, sprzedaż na innej licencji pozwala na ograniczone włączanie kodu źródłowego do oprogramowania własnościowego, lecz licencja X11 posuwa się nawet dalej, pozwalając na nieograniczone używanie kodu (oraz jego zmodyfikowanych wersji) w oprogramowaniu własnościowym. Jeżeli to nie czyni licencji X11 nieakceptowalną, nie czyni również nieakceptowalną sprzedaży na innych licencjach.
Są trzy powody, dla których FSF nie praktykuje sprzedaży na innej licencji. Pierwszy z nich jest taki, iż nie prowadzi to do osiągnięcia celów ustalonych przez FSF: zapewnienia wolności dla każdego użytkownika naszego oprogramowania. W tym celu napisaliśmy licencję GNU GPL, a najlepszym sposobem na jego osiągniecie jest objęcie programu licencją GPL w wersji 3-lub-późniejszej i niezezwalanie na dołączenie go do oprogramowania własnościowego. Sprzedaż na innej licencji nie pozwoliłaby na osiągnięcie tego celu, podobnie jak objęcie oprogramowania licencją X11. Dlatego zwykle nie robimy żadnej z tych rzeczy, a nasze oprogramowanie obejmujemy wyłącznie licencją GPL.
Kolejny powód, dla którego używamy wyłącznie licencji GPL jest taki, iż nie chcemy, aby bardziej rozbudowane oprogramowanie własnościowe oparte na naszych programach mogło oferować zalety praktyczne nad naszym własnym oprogramowaniem. Użytkownicy, którzy nie cenią swojej wolności, mogliby wybrać takie niewolne wersje zamiast pierwotnych programów, na których są one oparte, a w ten sposób stracić swoją wolność. Nie chcemy do tego zachęcać.
Istnieją jednak sporadyczne przypadki, kiedy ze szczególnie strategicznych przyczyn podejmujemy decyzję, iż objęcie konkretnego programu bardziej liberalną licencją lepiej przyczynia się do naszej wolności. W takich przypadkach udostępniamy konkretny program każdemu na warunkach wybranej przyzwalającej licencji.
Jest to spowodowane inną etyczną zasadą, której FSF przestrzega: równo traktować wszystkich użytkowników. Idealistyczna kampania na rzecz wolności nie powinna dyskryminować, dlatego FSF zobowiązała się do udostępniania swojego oprogramowania każdemu na zasadach takiej samej licencji. FSF nigdy nie sprzedaje na innych licencjach; jakąkolwiek licencją obejmujemy jakiś program, obowiązuje ona (lub one) wszystkich użytkowników.
Nie musimy jednakże nalegać, by firmy przestrzegały tej zasady. Uważam sprzedaż na innej licencji za dozwolone w przypadku firm i będę proponować takie rozwiązanie w sytuacjach, kiedy pozwoli to na uwolnienie danego oprogramowania.