KDE z GNOME na jednej scenie
Kiedy w świat gruchnął tweet, że KDE i GNOME chcą zrobić coś razem, wiele osób oczyma wyobraźni widziały już nowe środowisko graficzne dla Linuksa. Tymczasem obydwie fundacje zaprosiły wszystkich na tegoroczny Linux App Summit, który obędzie się w Barcelonie od 12 do 15 listopada 2019 roku. Jednym z ważniejszych celów tej imprezy jest opracowanie jeszcze bardziej przyjaznego ekosystemu dla programistów i ich programów.
Wiele osób zauważyło już, że różnorodność Linuksa jest jego siłą i przekleństwem. Sam Linus Torvalds sam stwierdził, że z powodu rozdrobnienia dystrybucji i koncepcji Linux przegrywa walkę o pulpity użytkowników. Zatem, czy winni są twórcy dziesiątek dystrybucji i kilku liczących się środowisk? Być może. A być może to dzięki temu mamy możliwość wyboru tego, co nam pasuje i cieszy. Niemniej, przeciętny konsument nie lubi wyboru nie mówiąc o zmianie przyzwyczajeń.
Dlatego KDE i GNOME po raz kolejny spróbują się dogadać. Bez obaw, deweloperzy GNOME nie planują zepsuć KDE i na odwrót. Całą ideą LAS jest wypracowanie wspólnych standardów, które mogą posłużyć w przyszłości aplikacjom tworzonym dla Linuksa. Tak, by środowisko graficzne było życiodajnym ekosystemem dla programów, a nie torem przeszkód i ukrytych pułapek. Nie od dziś wiadomo, że często deweloperzy stają przed trudnym wyborem – pisać program tak, by działał dobrze w KDE, czy może skupić się na rozwiązaniach GNOME?
Niebawem sytuacja ma się zmienić. A już na pewno zostaną podjęte rozmowy i plany, jak sprawić, by programiści chętniej tworzyli programy dla Linuksa, by było to zajęcie opłacalne, przyjemne i na dodatek z korzyścią dla użytkowników. KDE i GNOME zastanowią się też, które wspólne mianowniki są najważniejsze dla przyszłej pracy deweloperów.
Chociaż brzmi to jak festiwal obrad i teoretyzowania, to w Linux App Summit wezmą udział też sami deweloperzy. Sami będą mogli wykazać, co dla ich pracy jest najważniejsze i które elementy systemu lub jego komponentów widzieliby w innej formie. To nie pierwszy raz kiedy KDE i GNOME próbują współpracować. Merytoryczne efekty poprzednich LAS powoli tworzą z Linuksa najlepsze środowisko dla programistów i użytkowników.
I to jest właśnie powód, dla którego warto używać GNOME lub KDE, a nie nic nie znaczących w świecie desktopowego Linuksa pozostałych środowisk. KDE i GNOME tworzą siłę, standardy, choć oczywiście czasami też problemy. 🙂
Osobiście wolałbym GNOME Flashback. A jeśli już tak bardzo kochasz filozofię LXDE to przejdź na LXQt — twór autorów LXDE oparty na Qt. Oryginalne LXDE jest martwe.
Jaką filozofię? LXDE jest mniej procożerne – co ma do tego Gnome Flashback? Nie jest lżejsze niż Gnome – próbowałem – wciąż LXDE lepiej sobie daje radę na moim Celeronie. A LXQT… Próbowałęm, ale nie podoba mi się. Poza tym LXDE wciąż dostaje poprawki. Prędzej przejdę na IceWM.
“Chociaż brzmi to festiwal obrad i teoretyzowania,”
Jakiś robal coś zeżarł. Czyżby Sasser się przebranżowił?
Niby tak, ale LXDE jest bardziej litościwe niż GNOME i KDE dla procka w moim netbooku. Więc wszystko dobrze brać na miarę.
Choć w sumie odkąd Unity odpadło, to rzeczywiście przodują te dwa środowiska.
I dzięki Bogu,nie Ty o tym decydujesz.
Mylisz pojęcia. Qt i GTK to toolkity, czyli biblioteki do interfejsu graficznego. GNOME, KDE i pozostałe wymienione projekty to środowiska. Doskonale rozumiem, o co ci chodzi, ale programistyczna skrupulatność nie pozwala mi tej nieścisłości tak pozostawić. 🙂
Konkretnie w moim przypadku to właśnie dlatego GTK-based desktopy są dla mnie lepsze: Sublime Text, Firefox, Chrome, Thunderbird, Gimp, Inkscape, cały ważny dla mnie soft używa GTK, wxWidgets (czyli GTK) lub własnego toolkitu biorącego kolory z GTK. Są pojedyncze niedobitki — SpeedCrunch czy KeePassXC. Ale używam ich na tyle rzadko, że domyslny Fusion mi wystarcza.
Ciekaw jestem co sprawiło, że w końcu o tym pomyślano…
Co tracę, albo na co się narażam korzystając z Gimpa i Inkscapa pod KDE.
Nie narażasz się na nic. Tracisz natomiast spójność pomiędzy aplikacją (w przykładzie GIMP i Inkscape — oparte na GTK) a środowiskiem (w przykładzie KDE — oparte na Qt i frameworku KDE). Skutkiem braku spójności jest: niejednolite okna dialogowe wyboru pliku (np. nie zobaczysz swoich zakładek) i wydruku, niespójny wygląd skrórki, niespójne zachowanie dwukliku, drag and drop lub funkcji związanych z dostępnością dla niepełnosprawnych.
Nie są to krytyczne rzeczy, więc jeśli cię nie bolą, to nie ma problemu — nie ma jakiegoś hmm zagrożenia. 🙂 Natomiast dla mnie, użytkownika wymagającego spójności, niektóre punkty między GTK a Qt są bolesne, szczególnie dwa pierwsze.
Zgadzam się w 100%, moje początki z linuxem to przede wszystkim KDE 3.5 ale po sporej przerwie od linuxa i powrocie zastałem wersje KDE 5 i Gnome 3, z tych dwóch wybrałem Gnome.
Ostatnio nostalgia (i brak blura w terminalu na przezroczystości) skłoniły mnie do sprawdzenia KDE kolejny raz, niestety nie jest to najlepsze doświadczenie, przede wszystkim brak jednolitego wyglądu, o ile w Gnome te kilka aplikacji w QT przeżyje tak w KDE masa apek w GTK w ogóle mi nie pasuje, gryzą się ze sobą strasznie, denerwuje też że samo KDE jest tak bardzo rozbudowane że wiele rzeczy nie pracuje ze sobą najlepiej, próbowałem np. wyszukać plasmoida, kursor mruga na pasku wyszukiwania, wprowadzam tekst a on szuka mi po całym systemie w ogólnej wyszukiwarce, finalnie nie udało mi się nic wpisać w tym miejscu.
Oczywiście jest masa rzeczy które są lepsze w KDE i QT, programy działają szybciej i potrzebują mniej zasobów, są bardziej rozbudowane (same ustawiani chociażby czy też dolphin).
Obydwa te środowiska to bardzo dobrze, ale niestety nieidealne. KDE ma zbyt dużo opcji konfiguracyjnych — zestarzałem się, wolę podejście GNOME, które stara się podjąć jak najlepszą decyzję za użytkownika (choć czasamu mu to nie wychodzi). Biedna integracja GTK z KDE jest problemem GTK tak naprawdę. Design GTK nie przewiduje integracji z innymi desktopami (przynajmniej na razie, portale XDG to poprawiają w niewielkim zakresie), natomiast z perspektywy użytkownika to na KDE (podczas używania KDE) jest problem. Zaś największe bolączki GNOME’a to żle zoptymalizowana powłoka i „dziwność” — GNOME jest bardzo fajnym desktopem, ale jedynie dla tych, którzy włożą trochę wysiłku w zrozumienie „co autor miał na myśli” lub nauczą się go tak konfigurowac, by przypominał MS Windows.
Problematycznie zaczyna być, gdy podjęta za użytkownika decyzja kompletnie temu użytkownikowi nie odpowiada. O ile “od nadmiaru” głowa nie boli (wszak nie mi nie każe korzystać z czegoś, z czego nie chcę), to w odwrotną stronę nie jest już tak różowo.
Nie bardzo natomiast wiem w którą stronę tej integracji Ci brakuje. Jeśli chodzi o słabą integrowalność aplikacji Gtk, zwłaszcza w wersji 3 w DE korzystających z innych toolkitów – to fakt. Po prostu lepiej nie korzystać i znaleźć jakąś alternatywę. Natomiast jeśli chodzi o aplikacje Qt5 w DE na Gtk, to tutaj nie powinno być aż tak wielkiego problemu (znam to jednak praktycznie wyłącznie z opisu, bo ja akurat należę do tych osób, które z DE i aplikacji na Gtk po prostu nie potrafią korzystać).
I wygląd jest w sumie najmniejszym problemem. Gorzej gdy nagle wyskakuje mi kompletnie nieergonomiczne okno menedżera plików w jakiejś aplikacji Gtk, bowiem niekoniecznie portale XDG wszystko obsługują (na pewno FF, ale czy coś jeszcze?)
>> O ile “od nadmiaru” głowa nie boli
Boli. Im więcej opcji, tym trudniej się odnaleźć — znaleźć to, co potrzebne. Gubię się w ustawieniach KDE dużo bardziej niż w Windows nie tylko dlatego, że ich nie znam, ale głównie dlatego bo jest tam przesyt.
> . Jeśli chodzi o słabą integrowalność aplikacji Gtk, zwłaszcza w wersji 3 w DE
Zwłaszcza to w wersji drugiej. Wersja trzecia sugeruje używanie portali XDG i pozwala na integrację z Windows, Makiem i systemami z włączonymi portalami XDG poprzez file chooser native wprowadzony włąśnie w GTK 3.
> Nie bardzo natomiast wiem w którą stronę tej integracji Ci brakuje
GTK nie rozumie skórki KDE, skórka Breeze dla GTK to shit. Qt nie rozumie skórek GTK 3, a integracja GTK2 jest porzucona. Adwaita dla Qt jest mierna. Na co dzień widać drobne róznice w specyficznych rzeczach, o których wspomniałem powyżej.
> bowiem niekoniecznie portale XDG wszystko obsługują
To aplikacja musi używać portalu XDG zamiast „gołego” okna dialogowego. Można to osiągnąć w GTK3 zastępując gtk file chooser obiektem gtk file chooser native.
Ok. Ciebie boli. Mnie boli wówczas, gdy coś chcę dostosować pod swoje potrzeby, czy przyzwyczajenia i takiej możliwości nie mam. Nie mam, albowiem ktoś za mnie zadecydował, że mi to nie jest potrzebne. No i się mylił, bowiem to co jemu nie jest potrzebne, dla mnie może być zasadniczą opcją, bez której nie jestem w stanie używać danego DE.
O ile gtk2 “łapie” ustawienia z gtkrc-2.0, to w przypadku 3 tak łatwo nie jest. Musi być napisany “silnik”, który może być używany przez aplikacje Gtk3 oraz odpowiedni plik css, który pozwoli nałożyć wystrój. Spójrz na tego typu rzeczy jak adwaita-qt5, czy kde-gtk.
Tak, oczywiście, to aplikacja musi obsługiwać portale XDG. Masz absolutną rację. Tak, czy inaczej – aplikacje Gtk3 integrują się w Qt strasznie podle.
> to w przypadku 3 tak łatwo nie jest. Musi być napisany “silnik”,
W przypadku Xorga nie musi. Tak jak gtk2 czytało ~/.gtkrc tak gtk3 czyta ~/.config/gtk-3.0/settings.ini, a dopiero potem Xsettings, jeśli są ustawione. Gorzej jest na Waylandzie, bo na Waylandzie nie ma odpowiednika Xsettings, a obecna implementacja wygląda tak, że jeśli GTK wykryje pewne składniki GNOME „na pokładzie” to próbuje „gadać” bezpośrednio z GNOME, co jest hańbą, debilizmem i kretynizmem. W waylandowym desktopie innym niż GNOME możesz przypadkiem wywołąć kontekst, w którym GTK uzna se „a pogadam z rzeczami gnome-specific” tylko dlatego, bo masz w systemie jakąś jedną apkę, która w zależnościach ma akurat pechowo gsettings-desktop-schemas (nazwa pkg z archa). Nie śledzę tematu, bo od kiedy zamieniłem XFCE na GNOME to kij mnie to obchodzi, u mnie działa, ale takie są fakty.
Zgadza się, że czyta owe settings.ini. Problem jedynie, że trzeba je napisać 🙂 I problem w tym, że ów plik, to jedynie wierzchołek góry lodowej.
Tak, czy inaczej – nie jest prosto ustawić jednolity wygląd aplikacji Gtk3 w Qt5, chyba, że masz taki wystrój, który jest stworzony dla Qt5 i dla Gtk3. No i niestety pozostają jeszcze te nieszczęsne okna tak aplikacji samych, jak i dialogowe, w tym menedżera plików.
Zobaczymy co będzie dalej i co wymyślą na tej konferencji, choć raczej optymistą nie jestem.
Mam nadzieję, że współpraca sprawi, iż te kłopoty przestaną istnieć.
Niestety mocno wątpię, zwłaszcza, że chyba nie na tym się ta konferencja skupia.