r   e   k   l   a   m   a
r   e   k   l   a   m   a

Fedora Workstation, czyli prawdziwy system, a nie tylko worek z opensource'owymi klockami

Strona główna AktualnościOPROGRAMOWANIE

Fedora jest tą dystrybucją Linuksa, o której wszyscy niemal słyszeli, praktycznie każdy ją docenia, a jednak mało kto używa. Użytkownicy postrzegają bowiem zwykle Fedorę jako poletko doświadczalne linuksowej techniki, dystrybucję najszybciej wprowadzającą w życie pomysły programistów linuksowych komponentów, ale pozbawioną tego szlifu, wykończenia, jakim cieszy się np. Linux Mint czy OpenSUSE. By zmienić ten wizerunek, twórcy Fedory wzięli się za zakrojony na ogromną skalę projekt, w ramach którego działają trzy grupy: Fedora Workstation, Fedora Cloud i Fedora Server. Pierwszy z nich sprawić ma, że Fedora stanie się najlepszym Linuksem na świecie – przynajmniej dla programistów.

Stan prac nad tym ambitnym zadaniem przedstawił niedawno Christian Schaller z Red Hata, tak opisujący misję projektu: Fedora Workstation przyniesie najwyższej klasy desktopowy system operacyjny dla twojego laptopa czy stacji roboczej, system łączący dopracowany interfejs użytkownika z dostępem do najnowszych rozwiązań technicznych. W pierwszych wydaniach kładziemy specjalny nacisk na programistów, zarówno pod kątem wygody pracy z pulpitem jak i narzędzi, jakie możemy im zaoferować, by mogli być produktywni tak szybko, jak to jest możliwe. A kiedy mówimy „programiści”, mamy na myśli nie tylko tych, którzy piszą aplikacje na desktop, czy sam desktop, myślimy o wszelkiego rodzaju deweloperach i DevOP-ach”.

Osiągnięcie takiego stanu rzeczy będzie wymagało wiele pracy, bo dziś Fedora, z jej relatywnie krótkim okresem wsparcia dla kolejnych wydań, rozmaitymi usterkami, których w pogoni za nowoczesnością nikt nie naprawia i brakiem wyraźnej wizualnej tożsamości, przypomina bardziej worek z opensource'owymi pakietami, które po prostu są wstawiane do repozytoriów dystrybucji, bez żadnych łatek i prób dopasowania tego wszystkiego do siebie.

Schaller nie zaprzecza, że tak to można dziś postrzegać. Choć zaczynamy od tego wielkiego pudła klocków Lego, to dokładamy do nich trochę inżynierskiej pracy, podejmujemy jasne, trudne decyzje w kwestii kierunku działań, zaczynamy budować coś, co sprawia wrażenie całości, a nie świeżo zmontowanego zestawu przypadkowych części. Projektując Fedorę Workstation patrzymy więc nie tylko z perspektywy tego, co możemy zrobić dla poszczególnych bibliotek czy aplikacji, jak GTK+, Firefox czy LibreOffice, ale także tego, jaki system chcemy uzyskać w całości (…) Zamiast pytać „które funkcje systemd możemy ujawnić w desktopie”, pytamy „jakie to nowe funkcje chcemy zaoferować użytkownikom w przyszłych wersjach produktu, i czego potrzebujemy od systemd, jądra i innych komponentów, by to zrobić” – wyjaśnia programista Red Hata.

Takie podejście do projektowania systemów operacyjnych zdało egzamin w RHEL-u, Mac OS-ie X, Playstation 4, Androidzie czy Chrome OS-ie. Tam najpierw powstawała wizja systemu, potem szukano otwartych komponentów, które pasowały do tej wizji, a następnie samodzielnie opracowywano to, czego brakowało. Alternatywa dla takiego podejścia, czyli korzystanie z niezależnych od siebie komponentów, dostarczanych jako pakiety .rpm czy .deb, i wiązanych w całość przeróżnymi skryptami, nakładkami i warstwami abstrakcji, po prostu nie jest w stanie przynieść spójnego desktopu. Z kolei zaś twórcy tych komponentów nigdy nie mogą być pewni, na co mogą w docelowym systemie liczyć, jaki zestaw interfejsów tam napotkają, ani też jak ich interfejs powinien wyglądać, by pasować do całości.

By temu zaradzić, Fedora Workstation budowana jest wokół koncepcji LinuxApps Lennarta Poetteringa. To izolacja aplikacji, uruchamianych we własnych kontenerach, które otrzymują zestaw standardowych interfejsów systemowych, łączących je z takimi linuksowymi komponentami jak Wayland, overlayfs czy kdbus. Tak izolowane aplikacje byłyby kontrolowane przez mechanizm uprawnień, przypominający to, co znamy z Androida i mogłyby być dostarczane w postaci paczek, zawierających w razie potrzeby własne wersje bibliotek uruchomieniowych, pozwalając im działać bez względu na to, co znajduje się w systemie-gospodarzu.

Fedora Workstation będzie najwyraźniej produktem zbudowanym wokół pulpitu GNOME Shell, jednak zapewnić ma też dobre wsparcie dla aplikacji budowanych na innych niż GTK toolkitach. Dla użytkownika ten podział nie ma i nie powinien mieć znaczenia. Aplikacje napisane w Qt czy Javie powinny nie tylko wyglądać w Fedorze Workstation jak aplikacje GTK, ale też powinny korzystać z jego natywnych mechanizmów, zapewniających np. opcje dostępności dla niepełnosprawnych czy obsługę ekranów o wysokiej gęstości pikseli (HiDPI).

Finalną wytyczną projektową Fedory Workstation wydaje się otwartość na usługi webowe na miarę naszych czasów. Choć deweloperzy projektu śmieją się z twierdzeń hipsterów o tym, jakoby skończył się czas desktopowych komputerów, to zarazem dobrze widzą, z jak wielu webowych usług i aplikacji dziś korzystamy. Te usługi i aplikacje mogłyby być jednak znacznie efektywniejsze, gdyby nie były ograniczone tylko do przeglądarki, ale zostały osadzone w samym pulpicie, by można je było uruchamiać lokalnie.

Ambitne plany nie doczekały się jeszcze harmonogramu ich realizacji, pierwszego wydania Fedory Workstation nie doczekamy się raczej przed 2015 rokiem. Śledzić stan prac nad nimi możecie na wiki projektu. Czy można liczyć w tym wypadku na sukces? Standaryzacja userlandu Linuksa rozbija się wciąż o bibliotekę GTK, z której nikt spośród członków Fedory Workstation rezygnować nie zamierza. A przecież zdecydował się na Qt Mark Shuttleworth, wybierając ten toolkit dla nowej wersji środowiska Unity, w tę stronę poszło też Valve, wybierając właśnie Qt i IDE QtCreator na środowisko dla swoich narzędzi deweloperskich. Uporczywe trwanie Fedory przy GTK skazuje desktopowego Linuksa na schizmę, której przekroczenie za pomocą samych łatek i abstrakcji raczej nie będzie możliwe.

r   e   k   l   a   m   a
© dobreprogramy
r   e   k   l   a   m   a
r   e   k   l   a   m   a

Komentarze

r   e   k   l   a   m   a
r   e   k   l   a   m   a
Czy wiesz, że używamy cookies (ciasteczek)? Dowiedz się więcej o celu ich używania i zmianach ustawień.
Korzystając ze strony i asystenta pobierania wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.