Nawiązując do dawnych, odległych już czasów (2008-2010... pamięta to ktoś?), kiedy na bieżąco testowałem kolejne wersje KDE4, postanowiłem podzielić się swoimi wrażeniami i obserwacjami z migracji z KDE4 na jego następczynię, czyli Plasmę.
Na wstępie dodam, że jest to moje trzecie podejście. Pierwszy raz za czasów Plasmy 5.3 był koszmarny. Więcej nie działało niż działało, a całe środowisko sypało się, kiedy tylko krzywo na nie spojrzałem. Drugie podejście w kwietniu bieżącego roku z Plasmą 5.6 wypadło zdecydowanie lepiej, ale ostatecznie drobne, ale uciążliwe niedoróbki, braki funkcjonalności i okazjonalne problemy ze stabilnością, zmusiły mnie do powrotu do KDE4 (dzięki Bogu za snapshoty btrfs). Czarę goryczy przelał moment, kiedy po zmianie motywu pulpitu na slim-glow i przelogowaniu całe środowisko po prostu przestało działać, zamierając przy starcie.
Minęło jednak parę miesięcy, a w międzyczasie w Gentoo KDE4 stało się obywatelem drugiej kategorii, którego z każdą aktualizacją coraz trudniej było utrzymać przy życiu. Chcąc nie chcąc, byłem więc zmuszony do stawienia czoła Plasmie. I wiecie co? Tym razem używam jej od tygodnia i nic nie doprowadziło mnie do szału. Ba, pod pewnymi względami czuję nawet, że pracuje się szybciej i przyjemniej. Nie ma oczywiście róży bez kolców, ale o tym już poniżej.
Zacznijmy jednak od pozytywów. Ze stabilnością jest zdecydowanie lepiej. Zniknęły uporczywe crashe przy dłuższym używaniu środowiska. Wygląd i funkcjonalność również udało mi się doprowadzić mniej więcej do stanu sprzed migracji. Jako motyw ustawiłem slim-glow i tym razem po restarcie nic nie wybuchło. Stary plasmoid półki z Lancelota zastąpiłem Places Widget. Stary plasmoid powiadamiający o nowej poczcie również znalazł godnego zastępcę w postaci Gmail Feed. Najtrudniejszym orzechem do zgryzienia był aplet Superkaramby, którego używałem od dawna pod KDE4 i służył mi za bardziej nowoczesną wersję conky'ego. Niestety, Superkaramba nie jest już wspierana. Na szczęście udało mi się znaleźć coś o nazwie Awesome Widget, który pozwala w bardzo elastyczny sposób za pomocą szablonów HTML-a i funkcji zbudować lekki plasmoid monitora systemu. I choć ma parę niedoróbek, które musiałem obejść, po odpowiednim ustawieniu działa doskonale.
Wracając do innych komponentów, niektóre z ustawień skrótów klawiszowych i efektów pulpitu musiałem ustawić na nowo, ale nie zajęło mi to wiele czasu. Tym razem w końcu poprawnie działają gesty myszki, co cieszy mnie o tyle, że ich używanie weszło do mojej pamięci mięśniowej. Nie byłem do końca zadowolony z wyglądu zegara, gdyż nie oferował formatu daty, do którego przywykłem, plus brakowało mu marginesów, przez co praktycznie zlewał się z sąsiednimi ikonami. Na szczęście dzięki temu, że plasmoidy są teraz pisane w QML-u, wystarczyło zmienić jedynie trzy linijki w kodzie. Podobnie KRunner nie ma już opcji zmiany pozycji, w jakiej się wyświetla, ale to udało się obejść prostą regułą kwina ustawiającą okno. Menedżer zadań w trybie samych ikon ma zdecydowanie mniej opcji niż jego odpowiednik z KDE4 i nieco różni się zachowaniem, ale na szczęście szybko przyzwyczaiłem się do używania jego nowego wcielenia. EDIT: Powiadomienia w nowym środowisku zachowują się też nieco inaczej w kwestii przechowywania historii. O ile poprzednia Plasma przechowywała historię wszystkich powiadomień, przez co czasem gromadziło się ich sporo, nowa idzie w drugą stronę i loguje tylko powiadomienia oznaczone przez dany program jako "persistent". Osobiście nie byłem do końca przekonany tą zmianą, więc popełniłem kolejną łatkę.
Spotkało mnie jednak parę niemiłych niespodzianek. Po aktualizacji KDE Frameworks do 5.21 z jakiegoś powodu kwallet zwariował i zawiesił jednorazowo Plasmę przy następnym starcie, przy okazji gubiąc hasła w nim zapisane. Nie jestem pewien jaka była dokładna przyczyna, ale problem więcej się nie powtórzył. Idąc dalej, Konsole czasem wyświetla niewłaściwe menu kontekstowe, ale nie na tyle często, by było to naprawdę uciążliwe. Plasmoid informacji o urządzeniach ma jedną brakującą ikonkę od montowania urządzeń, jeśli używa się innego motywu ikon niż Breeze albo Breeze Dark, co jednak łatwo udało mi się obejść kopiując ikonę emblems/emblem-mounted w miejsce actions/media-mount. Przejściowo byłem też pozbawiony wsparcia dla MTP, ale jak się okazało kio-mtp zostało wcielone w kio-extras i była to kwestia dodania jednej flagi. Chromium nie wykrywa już poprawnie środowiska, przez co okna Otwórz/Zapisz nie są natywnymi z Plasmy, ale nie jest to wielki problem, szczególnie, że ich wsparcie poprzednio nieco kulało. Kończąc tę wyliczankę, SDDM z jakiegoś powodu działa naprawdę ociężale na grafice Intela. Jeszcze szukam na to obejścia. Jedną z opcji byłaby zamiana go na lightdm, który jednak integruje się nieco gorzej ze środowiskiem.
Może to efekt placebo, ale wszystko zdaje się działać zauważalnie płynniej i zużywać mniej ramu. To pierwsze to jednak kwestia subiektywna, a nie mam żadnych konkretnych liczb na poparcie drugiego. Ponadto w aplikacjach zauważyłem trochę drobnych, ale miłych usprawnień w różnych miejscach, jak choćby pasek nawigacyjny z miniaturą struktury pliku przy podglądzie plików tekstowych. Oczywiście aplikacje oparte na Qt4/KDE4 nadal działają, ale na moim systemie z takowych pozostaje na dobrą sprawę tylko k3b, a jeszcze parę dni temu Okular, ale ten w międzyczasie doczekał się oficjalnego wydania portu pod KDE Frameworks. Przy okazji bardzo cieszy mnie rozbicie monolitu, jakim było kdelibs, na wiele mniejszych paczek z lżejszymi i bardziej logicznymi zależnościami.
Reasumując, tym razem moje wrażenia są zdecydowanie pozytywne i nie rozważam powrotu do KDE4. Mam jedynie nadzieję, że niewielkie niedoróbki i braki zostaną kiedyś naprawione. Ale w międzyczasie mam środowisko graficzne, które po drobnych poprawkach działa bardzo w porządku i nie przeszkadza mi w pracy.
EDIT: Zapomniałem wspomnieć o jednej rzeczy. Początkowo plasmoid do montowania urządzeń (device notifier) odmawiał posłuszeństwa i marudził na brak wystarczających uprawnień. Montowanie w Dolphinie działało jednak poprawnie. Teoretycznie mój użytkownik był dodany do odpowiedniej grupy, a consolekit działał poprawnie. Ostatecznie śledztwo zaprowadziło mnie do tego rozwiązania i szczęśliwie był to koniec problemu. Nie jest to problem stricte z nową Plasmą, raczej coś z konfiguracją mojego systemu, ale tak czy inaczej, gdyby ktoś nadział się na niego, zaręczam, że rozwiązanie podane w powyższym linku działa.
Cóż, niektórzy developerzy po prostu uwielbiają robić rewolucje w kodzie. I nie dotyczy to tylko KDE. Często są ku temu jakieś techniczne przesłanki. To bardzo filozoficzny temat :) W przypadku Plasmy bezpośrednimi przesłankami były port środowiska do Qt5, plasmoidów do QML oraz rozbicie kdelibs na modularne frameworks. Użytkownik ma zasadniczo do wyboru trzymać się starej wersji, licząc się z pewnymi utrudnieniami, szukać innego środowiska albo popłynąć z prądem. W moim przypadku ostatnia alternatywa była po prostu najmniej uciążliwa. Czy skórka była warta wyprawki? To pozostawiam już indywidualnej ocenie. Osobiście uważam, że nie jest to katastrofa pokroju Windows 10 :P
Osobiście uważam, że KDE4 po okrzepnięciu działało bardzo dobrze i dlatego ze zgrozą patrzyłem na pierwsze kroki Plasmy, bo teoretycznie miało być mniej boleśnie niż przy przejściu z KDE3, ale jednak nie było pięknie. Na szczęście dojrzało to na tyle, że mogę nowego środowiska spokojnie używać. Znamienne jest jednak to, że moją pierwszą reakcją było dostosowanie nowej Plasmy, żeby wyglądała i działała mniej więcej jak wcześniej :)
W każdym razie, jednym ze sposobów rozwiązywania problemów, których nikt nie chce rozwiązać za nas, jest zakasać rękawy i pogrzebać samemu w kodzie. Zdaję sobie sprawę, że nie każdy ma czas i umiejętności, żeby się tego podjąć. Sam staram się to robić w miarę możliwości i póki co nawet mi się to udaje :) Gentoo na szczęście zdecydowanie ułatwia nakładanie własnych łatek i wszelakie grzebanie. Ale jak mówię, jestem świadom, że nie każdy jest równie skłonny do rozwiązywania technicznych łamigłówek jak ja :)
“mam (nowe) środowisko graficzne, które po drobnych poprawkach”
Ot taka niedzielna uwaga, nic wiecej — zawsze mnie zastanawia po co jest to parcie na “nowe”, skoro nie jest ono tozsame z “lepsze”. Tworzenie problemow, aby pozniej je dzielnie rozwiazywac?
“w Gentoo KDE4 stało się obywatelem drugiej kategorii, ”
Szczesliwie w openSUSE sa paczki KDE3 (to nie typo), wiec od lat tak jak uzywalem, tak uzywam wlasnie KDE3. KDE77 nie rozwiaze zadnych moich problemow — sladowych — z KDE3 (bo autorzy nie identifikuja ich jako problemy), wiec i przesiadanie sie jest zupelnie bezcelowe. Zycie ucieka.