środa, 23 marca 2016

Plasma 5.6 i Qt 5.6 wylądowały w Archu

Po wielu miesiącach opóźnienia w końcu ukazało się Qt 5.6. Myślę, że nie tylko użytkownicy czekali na tę wersję jak na Godota, albowiem przynieść ma ona znaczące zmiany dla programów opartych o Qt5. Pośród zmian, które niesie, umożliwi prawdopodobnie w końcu pojawienie się nowej wersji QupZilli (wersja master w GIT jest od dawna dostosowana do qtwebengine, ale włąśnie w wersji 5.6), nowy Otter Browser w wersji opartej o qtwebengine również wymaga tej wesji frameworka. Z ciekawych informacji - Qt5.6 jest wydaniem o przedłużonym wsparciu, które ma być z nami obecne przez najbliższe trzy lata. Czy to oznacza, że na Plasmę 6 będziemy czekać do roku 2020? Czas okaże, ale nie jest to wykluczone. Jak na razie zresztą inne problemy trapią Plasmę 5. A propos - na nowe wydanie Qt5 czekali również twócy KDE. Oprócz różnych optymalizacji, wersja ta bowiem miała umożliwić usunięcie kilku dolegliwości trapiących od miesięcy to środowisko.
Czy to się stało?
Odpowiem behawiorystycznie. Plasma 5.6 - jak na razie (wraz z testami Qt5.6RC oraz Plasma 5.5.95) zachowuje się dobrze. Dobrze - nie znaczy idealnie. Po wstępnych problemach, wynikających m.in. ze zmianą paczkowania (inne zależności niezbędne do poszczególnym składnikom Plasmy), środowisko umieszczone obecnie w repozytorium testing jest stabilne. Przynajmniej z mojego doświadczenia. Plasma jest bowiem - jak to wielokrotnie już pisałem - bardzo wrażliwa na przeróżne aspekty konfiguracji.
O zmianach przeczytacie pewnie tu i ówdzie. Pełny katalog zmian dostępny jest natomiast w zwyczajowym miejscu na portalu KDE. Warto również zaznajomić się z tzw. erratą wydania. Zmian, poprawek - mnóstwo. Interesujące dla użytkownika jest jednakże to, co widzą, z czego korzystają.
O jednym należy pamiętać. Pomimo tego, że lista dokonanych zmian jest olbrzymia, nie oznacza to wcale, że wszystkie dostrzeżone i sygnalizowane błędy w wydaniu zostaną usunięte. Wynika to m.in. z przyjętego cyklu wydawniczego w KDE (od czasów KDE4). Jest on zbliżony do tego, z czym mamy do czynienia w LibreOffice. Nowe wydania (KF5, Plasma 5, Applications) pojawiają się w określonym, z góry wiadomym, cyklu wydawniczym. Framework jest zamrażane w pierwszą sobotę miesiąca, a wydawane tydzień później, Plasma oparta na danym KF jest zamrażana w czwartek po wydaniu KF, w dwa tygodnie później pojawia się beta, a za następne dwa tygodnie wydanie stabilne. Aplikacje pojawiają się trzy razy do roku w kwietniu, sierpniu i grudniu (bodaj trzeci tydzień). Jest to ustawione w sposób sztywny. W okresie od zamrożenia do wydania, poprawiane są - co do zasady - jedynie błędy owego "stanu zamrożenia" (i niewiele więcej, jeśli się uda, co wynika m.in. z faktu, że niektóre błędy usuwane są nie w samej Plaźmie, a w Frameworks). Nie oznacza to, że twórcy KDE są niechętni do naprawiania błędów. Są naprawiane także między wydaniami i niekiedy dają się nakładać zanim jeszcze nastąpi wydanie poprawkowe, czy nowe "duże". Niemniej jednak rozwój KDE zbliżony jest do modelu ciągłego, tyle, że ze sztywno ustawionymi datami wydań. Odmiennie to wygląda w tych programach (środowiskach), które nowe wydania ukazują, gdy (przynajmniej co do zasady) zrealizują jakiś postawiony przed programistami cel. Każde rozwiązanie ma swoje wady i zalety. Piszę o tym jedynie, by każdy mógł zrozumieć, że nowe wydanie Plasmy raczej nigdy nie dokona naprawy wszystkich błędów dostrzeżonych od poprzedniego wydania. Pozytywne dla nas jest natomiast to, że błędy są systematycznie naprawiane i - co do zasady - każde następne wydanie likwiduje jakąś część poprzednich.

Poniżej mój, kompletnie prywatny, zestaw wrażeń nowej Plasmy. Nie mam ochoty powtarzać po innych, tego co łatwo dostępne.

PLUSY:

Cieszy powrót apletu pogody. Inna sprawa, że przyroda nie znosi próżni i w międzyczasie pojawiły się bodaj trzy, niezależnie oferowane aplety pogodowe przygotowane dla Plasma 5. Różnica między nimi głównie polega na udostępnianych serwisach pogodowych (nie liczę kwestii wyglądu, jednemu będzie się podobać jedno, innemu drugie rozwiązanie). Obecne w Plasma 5 korzysta z niemieckiego serwisu pogodowego, co od razu widać, albowiem miasto, w którym przyszło mi mieszkać nosi złowrogą nazwę Krakau. Pozostała część apletu jest spolszczona, ale Krakau, Braslau itp. razi. Wiem, to nie jest kwestia związana z Plasmą, a zależna od serwisu, z którego aplet korzysta. Szkoda tylko, że dostępny jest wyłącznie jeden. "Konkurencja" korzysta z serwisu norweskiego, Yahoo bądź OpenWeather.
Podoba mi się, że usprawnione zostały animacje. Przejścia są jakby płynniejsze, ładniejsze. To jednak kwestia odczucia.
W sumie niewiele więcej zauważyłem.

OBOJĘTNE:

"Usprawnieniem" którym się twórcy chwalą ma być animacja operacji wykonywanych w danym programie widoczna w "Zarządzaniu zadaniami" (task manager, a dla większości z nas po prostu to co widoczne na panelu). Cóż. Po pierwsze owa animacja dostępna jest wyłącznie w stanadrowym "Zarządzcy zadań". Po przełączeniu choćby na "Przełącznik zadań z ikonami" - nic już nie będzie widoczne. "Usprawnienie" ma niby zwiększać łatwość pracy w trybie wielozadaniowym. Czy aby na pewno? Śmiem wątpić, zwłaszcza, że od dawna tego typu informacje (np. o postępie kopiowania plików) dostępne są w "Informacjach" lokujących się w tacce systemowej. Nie zauważam zatem użyteczności.
Dwa następne, którymi się chwalą twórcy, to usprawnienie zarządzania kolorystyką środowiska, które ma teraz przekładać się na inne programy. Przyznam, że ani tego nie rozumiem, ani nie dostrzegłem w praktyce. Fakt - moje środowisko jest sporo zmienione w stosunku do oryginalnej Breeze, czy Breeze Dark, albowiem ze względu na odmienne gusta kolorystyczne nie jestem w stanie znieść ani paryskiego błękitu na bladoszarawoniebieskawym, ani na czarnym. Drugi to usprawnienie odtwarzacza multimedialnego, którego to usprawnienia... również nie widzę. Stary i ślepy być może już jestem.

MINUSY:

Cóż, czasy są takie, że wszystko ulegać ma uproszczeniu. Wprawdzie Plasma 5 wyłamuje się od tego wzorca i wciąż daje nam możliwości dalekiej i praktycznie swobodnej ingerencji w praktycznie każdy aspekt swego wyglądu i zachowania, jednakże niektóre elementy są likwidowane. W bieżącym wydaniu została zlikwidowana możliwość dostosowywania "Wystroju pulpitu" według własnych upodobań z poziomu "Ustawień systemowych". Oczywiście w dalszym ciągu można zmieniać owe wystroje, w tym pobierać z kde-look.org, jednakże nie ma już możliwości dostosowania takiego wystroju według własnego gustu. Jesteśmy zatem zdani na elementy wystroju w wersji takiej, jakiej dostarczył jego twórca. Jeśli zatem wszystko się nam podoba, ale nie podoba wystrój "zegara analogowego", to nie ma już możliwości zmiany. Oczywiście również możliwości  zapisania tak zmienionego wystroju. Biorąc pod uwagę, że wiele wystrojów było zmianami dokonanymi przez użytkowników właśnie poprzez dokonanie zmieszania wystrojów, dodania własnej kolorystyki (to jeszcze jest możliwe), "własnego" zestawu ikon itd., to prawdopodobieństwo, że w kde-look.org będziemy widzieć nowe zestawy tego typu jest raczej mizerne. Szkoda, bo przypomina mi to podejście znane z innych środowisk, w których mogę używać wyłącznie predefiniowanego wystroju. Jeśli mi się nie podoba, to mogę zmienić środowisko lub samemu napisać nowy wystrój. Twórca tego "usprawnienia" tłumaczył to faktem, że rozwiązanie jest rzadko wykorzystywane (ale skąd czerpał statystykę - nie mam pojęcia, prawdopodobnie z własnego doświadczenia), a przez to niepotrzebne. Miało też dublować inne rozwiązania, ale tu już nie wiadomo jakie (fakt, że część powielała np. możliwość zmian ikon, czy kolorystyki). Zauważył, że najczęściej zmieniane są w poszczególnych wystrojach wystrój panelu oraz zegar analogowy. Najczęściej poprzez dodanie transparentnego tła. Miało się zatem pojawić rozwiązanie, które umożliwi zmianę samego panela, czy zegara cyfrowego, m.in. poprzez dodanie do nich efektu transparentności, ale nie zauważam, by cokolwiek się pojawiło. W sumie jeśli byłoby to zrealizowane, to nie miałbym większych uwag. Dzisiaj jednak mamy do czynienia z taką sytuacją, że jedno rozwiązanie zostało usunięte, a w zamian nie pojawiło się nic.
Druga kwestia, to regresja w aplecie "Pokaż pulpit". Jego umieszczenie w najbardziej naturalnym miejscu, czyli na panelu, powoduje, że praktycznie wszystkie inne umieszczone na nim elementy (jak np. tacka systemowa) znikają. Sam "Pokaż pulpit" też się nie pojawia.
Trzecia sprawa, to... znikające elementy. No może nie wiele, ale dzisiaj dopadła mnie przypadłość zniknięcia z menu polecenia "Zablokuj elementy interfejsu". Otworzyłem do edycji, by sprawdzić, czy w końcu "Pokaż pulpit" działa prawidłowo i... możliwość  ponownego zablokowania - zniknęła raz na zawsze. Gwoli ścisłości - jest. To znaczy - niby jest. Jest bowiem w dalszym ciągu obecna z menu edycji ustawień panelu. Problem w tym, że... nie działa.
Niemal ostatnia sprawa, to rozrastanie się apetytu na RAM procesu plasmashell. O ile "startowe" wartości (przynajmniej u mnie) są bardzo niskie, porównywalne ze środowiskami, które uchodzą za "lekkie" (cokolwiek by to nie znaczyło), to po pewnym czasie używania środowiska, wartość ta rośnie. Dwu, trzykrotnie... Prawdopodobnie jest to związane z określonymi aplikacjami, jednakże pewności nie ma. Na pewno jedną z takich aplikacji jest Kadu 3.0, którego uruchomienie powoduje, że zapotrzebowanie na RAM przez plasmashell, ze startowego ok. 100MB, po 2-3 godzinach uruchomionej aplikacji rozrośnie się około 2,5-3 krotnie. Niestety samo zamknięcie aplikacji nie pomoże. Niezmiernie trudno też stwierdzić czy i co pozostało w pamięci, albowiem swój apetyt zwiększył jedynie podstawowy proces, czyli plasmashell.
Kolejna kwestia, jest już w niewielkim stopniu związana z samym środowiskiem, bądź nowym Qt5. Po zainstalowaniu ich, niektóre aplikacje przestają działać poprawnie. Ja spotkałem się z dwoma (lub trzema). Pierwszą z nich była QupZilla, która po instalacji Qt5.6RC bardzo często samoistnie zamykała się. Rozwiązaniem - nie do końca jeszcze prawidłowym - okazało się zbudowanie aplikacji w wersji głównej (master) z GIT. Tu jest dostępny kod przyszłej QupZilli 2.0, która oparta ma jest o qtwebengine w wersji co najmniej 5.6. Niestety samo qtwebengine 5.6 też dalekie od oryginału, a ze względu na to, że swoje źródło ma w blinku sprzed kilku miesięcy, to niektóre serwisy (np. gmail.com) sygnalizują, że przeglądarka jest zbyt stara (mała zmiana w stosunku do qtwebkita, który był uważany za jeszcze starszą przeglądarkę). Qupzilla-git działa w miarę sprawnie i przyjemnie, z jednym zastrzeżeniem - qtwebengine, to blink, a zatem w stosunku do qtwebkit większe zapotrzebowanie na RAM. Pozytywne informacje są trzy: nie zaobserwowałem wycieków pamięci, których doświadczałem w QupZilli do wydania 1.8.9 włącznie (nie zawsze, niemniej jednak bywały), więcej treści jest widocznych i... przede wszystkim, to przedpremierowe jeszcze wydanie działa.
Drugą aplikacją była Clementine w wersji zbudowanej na Qt5. Jeśli pamiętam, to również i ją musiałem przebudować na Qt5.6. Działa bez zarzutów, choć nie jest to jeszcze wydanie oficjalne.
Trzecią aplikacją jest KTP, czyli telepathy-kde. Używam, bo wygodne i zintegrowane ze środowiskiem. Niemniej jednak obecnie używać się nie da. Działa wszystko, tylko... okno rozmowy pozostaje w kolorze swego obramowania i po prostu go nie ma. W okresie testowania Qt5.6RC/Plasma 5.5.95 błąd ten pojawił się i zniknął. Niekiedy dopiero drugie, czy trzecie otwarcie okna powodowało, że okno rozmowy stawało się widoczne. Obecnie nic takiego się nie dzieje. Samo przepakowanie programu na Qt5.6/Plasma 5.6 nie dało nic. Podobnie jak budowa wersji 15.12.70 nic tu nie zmieniła. Nawet przebudowanie telepathy-kde-text-ui z użyciem patcha budującego je na qtwebengine (a nie jak do tej pory na qtwebkit) nie przyniosło spodziewanego efektu.
Niestety niektórzy mogą się spodziewać również długiego okresu wstawania Plasmy 5.6. Błąd prawdopodobnie tkwi w kded, a w zasadzie w samym Qt5.6 i jest obserwowalny co najmniej od Qt5.6RC. Teoretycznie istnieje zbiór patchy, które błąd ten mają naprawić, jednakże ze względu na niezbadaną jego naturę, jak na razie twórcy Qt nie zdecydowali się na ich włączenie do Qt. Nie zdecydowali się również opiekunowie Qt5 w Archu. Osobiście błąd ten niekiedy obserwuję. Nie jest zatem tak, by pojawiał się on przy każdym starcie środowiska. Kiedy znika ekran startowy pojawia się czarny ekran jedynie z kursorem. Niekiedy okazuje się, że proces plasmashell jest uruchomiony, ale jakby nie mógł wystartować. Przy okazji zużywa sporo zasobów CPU (ok. 100% jednego rdzenia). Innym razem w ogóle nawet plasmashell nie jest aktywowana. Co ciekawe, nie wydaje się to być właściwe wyłącznie dla Plasma 5.6/Qt5.6, albowiem i wcześniej niekiedy czegoś takiego doświadczałem. W okresie testowania poradziłem sobie przez kompilację kilku komponentów Plasmy w wersjach już planowanej Plasmy 5.6 (a nie 5.5.95) i co do zasady problem wydawał się zniknąć. Jeśli się z czymś takim spotkacie, to niekiedy prostackim rozwiązaniem okazuje się restart SDDM (ja akutat jego obecnie używam). Jest dość łatwe, albowiem najczęściej na owym czasnym ekranie dostępny jest np. krunner (Alt+F2) bądź możliwe jest przejście do trybu konsolowego (np. Alt+Ctrl+F2).
Jeśli ktoś doświadcza natomiast jakichś artefaktów na ekranie, to pomocnym może się okazać aktywacja DRI3 bądź użycie KWina w trybie OpenGL ES.
Reszta błędów związanych z wadliwym wyświetlaniem na niektórych układach Intela (nie mam takiego GPU) składana jest na karb wadliwych sterowników i rozwiązania są tu niezmienne od początku istnienia Plasmy. Zmiana metody akceleracji Xów na UXA winna pomóc, choć z lektury BBS Archa nie wynika, by za każdym razem okazywała się panaceum na te problemy.

Na koniec Plasma 5 i Wayland. No jest lepiej. Uruchomienie nie sypie już niesamowitą ilością błędów, jednakże w dalszym ciągu - przynajmniej na moim sprzęcie - używanie tego zestawu jest niemożliwe. Po pierwsze... czarny ekran, który znany jest również z sesji kwin_x11. Obecnie przynajmniej udaje się mimo to uruchomić krunnera i za jego pomocą wywołać np. konsole. Niestety obszar widoczny jest jedynie jakby częścią obszaru, który "widzi" KWin do spółki z Waylandem. Z testowania wersji Plasma 5 na Waylandzie pochodzącej z Neona wiem, że musi to być jakieś specyficzne ustawienie mojego systemu. Inna sprawa, że obraz testowy z Neona trudno zakwalifikować w kategoriach "używalny", a zatem Plasma 5 i Wayland - jak dla mnie - pozostają jeszcze melodią dalekiej przyszłości.

I to w zasadzie tyle, subiektywnego przeglądu Plasmy i Qt, obu w wersjach 5.6.

ERRATA:
Okazuje się, że za brak możliwości wyświetlania okna rozmowy w Telepathy KDE odpowiada wtyczka telepathy-hanging-git, która teoretycznie jest niezbędna do uruchomienia komunikacji zgodnej z protokołem Google Talk. Jest ona dostępna w AUR i od dawna się nie buduje, jednakże ci, którzy mają ją zainstalowaną uprzednio spotkają się właśnie z informacją o zbyt starych modułach, która głównie przejawia się w niewyświetlaniu okna rozmowy. Usunięcie tej paczki oraz biblioteki, na której jest oparta, czyli libhangish-git przywróci funkcjonalność Telepathy KDE. Mój błąd, że tego nie sprawdziłem, ale szczerze zapomniałem już o tym, że miałem ją zainstalowaną. Bez tej wtyczki (i biblioteki) Hangouts działają, zatem nic się nie traci.