Zagadnienia licencyjne związane z biblioteką Qt
| Tłumaczący: | Everth |
| Adres oryginału: | [1] |
| Pisownia sprawdzona: | nie |
Ta informacja zostanie usunięta po zakończeniu tłumaczenia.
Historia: Problem z Qt
Qt 2.2 wydane na licencji GPL
Obecnie biblioteka jest w całości Open-Source. Oznacza to rozwiązanie wszystkich możliwych problemów związanych z licencjonowaniem. Wobec tego ta strona ma tylko historyczne znaczenie, pokazując jakie problemy natury prawnej i moralnej musiały towarzyszyć twórcom KDE.
Problem Qt
KDE było atakowane za użycie w programowaniu KDE międzyplatformowej biblioteki Qt. Narosło wiele plotek, niesprawdzonych informacji narosło wokół Qt i jego roli w projekcie KDE. W tym artykule chcielibyśmy dać im odpór i wyjaśnić nasz punkt widzenia w tej kwestii.
Dlaczego KDE wybrało Qt?
Qt jest najlepszym pakietem narzędziowym GUI dla całej platformy *nix. Byłoby olbrzymim błędem rozpocząć i kontynuować rozwój tak dużego projektu jak KDE na czymkolwiek innym niż najlepsze rozwiązania dostępne na rynku. Jest częściowo prawdą że sukces projektów desktopowych zależy szczególnie od dostępności na ich platformy wielu dobrych aplikacji. To wręcz imperatyw dla deweloperów desktopu umożliwienie rozwoju aplikacji tak prostym jak to tylko możliwe.
Qt jest dostępne za darmo, wolne od jakichkolwiek opłat, włączając w to również kod źródłowy dla rozwiązań Open-Source. Co więcej, Qt może być za darmo rozpowszechniane.
Aktywnie włączyliśmy w przekonywanie firm produkujących komercyjne oprogramowanie do tworzenia aplikacji dla KDE. Te firmy potrzebowały rozwiązania dojrzałego, o wysokiej jakości i z technicznym wsparciem. Żadne z rozwiązań opartych o licencję GPL nie spełniało tych wymogów.
Kiedy większośc uczestników projektu KDE zaaprobowała użycie Qt, dobrze byłoby posiadać jeszcze wersję opartą o licencję LGPL, jeśli oferowałaby taką samą jakość jak implementacja TrollTech. Z głównego punktu widzenia nie miałoby większego sensu gdybyśmy napisali własny zestaw narzędzi przed rozpoczęciem prac nad KDE. Czuliśmy że naszym zadaniem jest najpierw zbudować dobry, otwarty i wolny (od wolność) desktop, a dopiero później w razie potrzeby zmienilibyśmy narzędzia użyte do jego budowy, liczyły się plan i jego wykonanie.
Została założona fundacja KDE Free Qt. Gwarantowała ona dostępność Qt w rozwoju otwartych aplikacji jak również rozwój samego Qt. Jej powstanie wynikało z obaw części społeczności że pewnego dnia Qt może już nie być dostępne za darmo dla otwartych projektów albo że przestanie być aktywnie rozwijane.
Dlaczego licencja ma tak wielkie znaczenie?
KDE używa między platformowego GUI opartego o bibliotekę Qt C++ w rozwoju swoich aplikacji. Qt jest dostępne za darmo jako kod źródłowy dla deweloperów projektów wolnego oprogramowania, jak również może być za darmo dystrybuowane. Nic nie zabrania legalnego umieszczania kopii np. na nośniku CDROM i rozpowszechniania go. Możesz używać Qt w pisaniu swojego programu za darmo tak długo jak długo, jak długo zezwalasz na swobodny dostęp do twojego kodu źródłowego. Jeśli nie chcesz by ktoś miał dostęp do kodu twojej aplikacji opartej o narzędzia Qt (chcesz zamknąć źródła) musisz wykupić specjalną komercyjną licencję od właścicieli Qt czyli TrollTechAS. Jeśli chcesz ulepszyć zestaw narzędziowy Qt możesz przesłać swoje zmiany firmie Troll Tech która może załączyć te modyfikacje w kolejnym wydaniu Qt, jeśli uzna że mają sens. Nie możesz legalnie rozpowszechniać zmodyfikowanych przez siebie bibliotek Qt.
Podsumowując:
Jeśli chcesz sprzedawać zamkniętą (bez wolnego dostępu do źródeł) aplikację przy tworzeniu której używano narzędzi Qt, jesteś zobowiązany do wykupienia komercyjnej licencji od firmy TrollTech. Jeśli chcesz ulepszyć Qt musisz wysłać swoje zmiany firmie TrollTech, która może je włączyć do kolejnego wydania.
Niektórzy ortodoksyjni zwolennicy wolnego oprogramowania mają zastrzeżenia do takiej polityki licencyjnej. Te kwestie mogą być trudne do zrozumienia dla zwykłego użytkownika, skoro Qt jest dostępne za darmo dla każdego kto rozwija projekty Open-Source, jednak mimo wszystko są.
Główne punkty krytyki to:
- Jesli chcesz sprzedawać aplikację z zamkniętymi źródłami, musisz wykupić specjalną licencję
- uważamy ten punkt za niesprawiedliwy. Większość programów Open-Source jest oparta o licencję GPL która nie zezwala na sprzedaż oprogramowania bez udostępnienia źródeł. GPL jest bardzo restrykcyjna w tym względzie. Korzystając z Qt zawsze możesz wybrać – zamknięte źródła, komercyjna licencja – otwarte źródła – otwarta licencja.
- Jeśli chcesz ulepszyć Qt musisz podzielić się tym z TrollTech. Nie możesz samodzielnie rozpowszechniać swoich zmian.
- Ma to sens, gdyż w tym przypadku istnieje centralny autorytet który wyznacza drogę rozwoju Qt. W większości projektów wolnego oprogramowania największą ich bolączką jest to że powstają różne forki tego samego projektu związane z różnym punktem widzenia ich autorów. W wyniku tego żaden z nich nie jest tak dobry jakby mógł być. Niektórzy argumentują że Qt nie jest tak bezpieczne jak inne wolne biblioteki gdyż musi upłynąć dłuższy okres czasu pomiędzy wykryciem dziury, załataniem jej – przesłaniem łaty do TrollTech a załączeniem jej do oficjalnej biblioteki. Ponieważ jednak kolejne wersje udostępniane są w odstępach tygodniowych nie można uznać że okres ten jest wyjątkowo długi. Z kolei ktoś inny podnosi argument że Qt nie udostępnia niektórych funkcji, np. zmodularyzowanych styli. Ponieważ nie można samodzielnie rozpowszechniać modyfikacji, trzeba czekać aż ta funkcja zostanie zaimplementowana w oficjalnym wydaniu Qt. W rzeczywistości TrollTech angażuje wszystkie swoje zasoby w rozwój Qt. Jego rozwój następuje w tempie nieosiągalnym przez żaden zestaw narzędziowy oparty o GPL. Zmodularyzowane style są już rozwijane i zostaną wdrożone do Qt szybciej niż jakakolwiek konkurencyjna biblioteka oparta o GPL zdąży to zrobić (w używalnej formie).
Ktoś zauważył że w powyższej dyskusji dokonano dwóch bezkrytycznych założeń, mianowicie:
- Qt zawsze będzie w sposób ciągły i aktywny rozwijane
- TrollTech nigdy nie wycofa się z oferowania za darmo Qt projektom wolnego oprogramowania
Te problemy zostały przedstawione KDE Free Qt Foundation
Projekt KDE i TrollTech, autorzy Qt założyli wspólnie KDE Free Qt Foundation. Zadaniem tej fundacji jest zagwarantowanie wolnej dostępności Qt dla społeczności wolnego oprogramowania teraz i w przyszłości. Będzie ona kontynuować rozwój Qt w obecnej postaci, lub w przypadku wycofania TrollTech z oferowania Qt za darmo wolnym projektom, ostatnia wersja Qt oferowana w taki sposób zostanie wydana na licencji BSD, która jest mniej restrykcyjna niż GPL czy LGPL. Ktoś zapyta – dlaczego miałoby się tak stać? Otóż w skład zarządu fundacji wchodzą 4 osoby, dwie z ramienia TrollTech, dwie z ramienia KDE. W razie wycofania się TrollTech z darmowego oferowania Qt otwartym projektom, członkowie KDE mogą wymusić udostępnienie ostatniej wersji Qt na licencji BSD poprzez swój sprzeciw.
Projekt Harmony (zawieszony odkąd Qt zostało wydane na licencji GPL)
Zadaniem projektu Harmony było stworzenie kopii bibliotek Qt oferowanej na licencji LGPL. Ponieważ oryginalne Qt składało się z 80 000 linii kodu, zaś projekt Harmony do czasu zawieszenia miał ponad 25 000, było możliwe że w ciągu roku uzyskałby podobną funkcjonalność. Być może to skłoniło TrollTech do wypuszczenia Qt na licencji GPL co obecnie rozwiązało wszelkie problemy związane z licencjonowaniem.
http://kde.org/whatiskde/qt.php.

