KDE dla Windows

Od tłumacza: poniższy tekst jest tłumaczeniem fragmentu magazynu KDE Commit-Digest z dnia 14 stycznia 2007

UWAGA! Tekst oraz grafiki w nim zamieszczone mogą być szokujące dla fanatyków Linuksa i KDE oraz mogą wywołać pewne negatywne emocje. Redakcja nie ponosi odpowiedzialności za szkody wyrządzone pod wpływem tych emocji.

Ralf Habacker i Christian Ehrlicher zaprezentowali postęp prac instalatora KDE dla Windows oraz ogólne działanie aplikacji KDE w tym systemie.

Trwają prace nad instalatorem KDE dla Windows. Proces instalacji ma być maksymalnie uproszczony.

Zależności KDE a Windows

Aplikacje KDE wykorzystują wiele dodatkowych bibliotek i narzędzi zewnętrznych. Biblioteka kdelibs posiada następujące zależności (17 sztuk): zlib, pnglib, jpeglib, tiff, jasper, pcre carbon lib, acl, bzip2, libxml2, libxslt, openexr, openssl, gettext, perl, dbus i Qt.

Dystrybucje Linuksa posiadają większość z tych bibliotek albo na płytach instalacyjnych, lub też są one dostępne w repozytoriach systemu, dzięki czemu bardzo łatwo jest zainstalować aplikację KDE, która ich wymaga. To śledzenie zależności umożliwiają systemy takie jak RPM lub DPKG oraz jednolity system pakietów taki jak RPM lub DEB.

W systemie Windows sytuacja jest zupełnie inna. Bibliotek, potrzebnych KDE do działania nie ma na płycie z systemem, nie ma też żadnego wspólnego repozytorium, a nawet wspólnego formatu instalacyjnego. Pakiety z bibliotekami mogą być w plikach ZIP, BZ2, plikach wykonywalnych tworzonych za pomocą różnych instalatorów, lub w pakietach MSI (Microsoft Software Installation).

Kolejnym utrudnieniem jest brak jednego powszechnego miejsca do przechowywania bibliotek i narzędzi systemowych. Mimo, iż wiele open-sourcowych programów używa schematu katalogów bin/include/lib/doc/…, są także takie biblioteki, które stosują własny schemat ścieżek dostępu.

Instalator KDE

Do celów budowania pakietów instalacyjnych w Windowsie służy wiele open-sourcowych programów, między innymi NSIS (http://nsis.sourceforge.net) i Inno Setup (http://www.jrsoftware.org/isinfo.php), oraz komercyjne narzędzia jak InstallShield i Windows Installer. Tylko niektóre instalatory potrafią pobrać dodatkowe pakiety z internetu, tak jak Windowsowy instalator dla Qt.

Wszystkie wymienione wyżej instalatory mają jedną poważną wadę: budują plik wykonywalny, który nie może być już potem modyfikowany bez konieczności jego przebudowy.

Są oczywiście także inne instalatory, takie jak na przykład Cygwin installer, który może pobierać pliki konfiguracyjne z Internetu. Instalator KDE można zaliczyć do tej właśnie kategorii, ponieważ podczas każdego uruchomienia pobiera on swoją konfigurację ze strony internetowej. Konfiguracja ta może być łatwo modyfikowana, dzięki czemu, można szybko dokonać poprawek.

Instalator KDE nie odbiega zbytnio wyglądem od typowych instalatorów – kreatorów. Wykorzystuje on statyczne wydanie Qt4, co czyni go niezależnym od bibliotek dostępnych w systemie. Plik wykonywalny jest skompresowany za pomocą programu UPX. Wynikowy plik wykonywalny to około 2.8 MB, co nie jest dużym rozmiarem jak na instalator oparty o GUI Qt.

Portowanie aplikacji

Część deweloperów projektu KDE cały czas pracuje nad przeportowaniem biblioteki kdelibs na platformę Windows i wychodzi im to coraz lepiej. Część aplikacji KDE takie jak: kdeinit, klauncher, kded i inne części KDE działają już na systemie Windows i nawet mogą wykorzystywać mechanizm kio_file (w całości) i kio_http (częściowo). Są też obszary KDE zupełnie nie przeportowane jak na przykład wsparcie dla SSL w kio_http. Aplikacja KStars jest już używalna, lecz nie wyświetlają się obrazki pobierane z internetu, oraz nie można kontrolować teleskopu. KDevelop uruchamia się, można otworzyć projekt, używać edytora, przeglądarki klas oraz okna konfiguracji, lecz jest wiele funkcji nie wyświetlanych w IDE.

„Niezależni” deweloperzy mogą pomóc w portowaniu, po prostu biorąc którąś aplikację KDE i próbując ją przeportować (lub przynajmniej uruchomić). Podczas portowania aplikacji o wiele łatwiej znaleźć błędy w bibliotekach KDE, niż na przykład uruchamiając zautomatyzowane testy da poszczególnych bibliotek.

Dzięki takiej współpracy deweloperów całe portowanie ma szanse dokonać się w o wiele krótszym okresie.

Zrzuty ekranu instalatora

Na koniec kilka świeżych zrzutów ekranów z działającego instalatora KDE pod Windows.

Instalator KDE dla Windows
Rys.1 Pierwsza strona instalatora KDE w systemie Windows

Instalator KDE dla Windows
Rys.2 Wybór miejsca instalacji

Instalator KDE dla Windows
Rys.3 Wybór komponentów

Instalator KDE dla Windows
Rys.4 Pobieranie niezbędnych pakietów

Instalator KDE dla Windows
Rys.5 Instalacja

Zrzuty ekranu aplikacji

Aplikacja „dbus-viewer” pokazuje, że niektóre komponenty KDE takie jak kded i klauncher działają. W prawym oknie widać niektóre dostępne akcje klaunchera.

dbus-viewer
Rys.6 Dbus-viewer

Jak już wcześniej wspomniano kioslave „file” udostępnia już prawie całą swoją funkcjonalność. Poniższy zrzut ekranu pokazuje Kate z otwartym oknem wyboru plików. Widzimy też dostępny mechanizm kioslave:

Kate z oknem wyboru plików - kioslave
Rys.7 Kate z mechanizmem kioslave

Ten zrzut ekranu pokazuje edytor tekstu KWrite z otwartym dokumentem. Zauważ, że działa już kolorowanie składni:

Edytor tekstu KWrite
Rys.8 Edytor tekstu KWrite

Na kolejnym zrzucie ekranu widać KFind wyszukującego pliki .cpp w drzewie źródłowym kdebase. Jest to kolejny przykład działającego kio_slave „file”:

Wyszukiwanie plików
Rys.9 Wyszukiwanie plików

Strona startowa Konquerora (na razie jeszcze z niedziałającymi obrazkami):

Strona startowa Konquerora
Rys.10 Strona startowa Konquerora

Podsumowanie

Bardzo imponującym jest tak zgodne działanie programistów w projekcie open source oraz niesamowity rozwój K Desktop Environment na przestrzeni ostatnich lat. Za czasów KDE 1 o aplikacjach KDE działających na Windowsie można było jedynie pomarzyć, KDE 2 i 3 działały już pod kontrolą Cygwina, a teraz KDE 4 działa w tym systemie natywnie.

Komentarze na statycznych stronach zostały wyłączone. Zapraszamy do komentowania na forum.