Przejdź do głównej zawartości

Niedziałające programy po aktualizacji harfbuzz

W sobotę na serwerach Archa zawitała aktualizacja harfbuzz i harfbuzz-icu do wersji 1.4.1. Objawy - są ciekawe, albowiem aktualizacja przechodzi bez żadnych problemów, działające programy nadal działają, aż do... ponownego uruchomienia. Wówczas największe oczy mogą mieć osoby korzystające z Plasma 5, albowiem przywita ich czarny ekran z wyświetlonym napisem: Couldn't start kdeinit5. Please check your installation.
Informacja, jak informacja - skoro startować nie może kdeinit5, to wydawałoby się, że coś jest z instalacją (bądź konfiguracją) Plasmy. Nic bardziej złudnego. Całą sprawę powoduje zakutalizowany harfbuzz, a w zasadzie to nie tyle on, co... dość powszechnie stosowane czcionki Infinality. To one, a w zasadzie freetype2-infinality jest niedostosowany do nowej wersji harfbuzz, co skutkuje brakiem możliwości wejścia do środowiska.
Jak się okazuje, problem dotyczy także innych aplikacji, jak VirtualBox, czy Lumina. Co ciekawe, nie dotyka LXQt, które uruchamia się prawidłowo, tym bardziej sugerując jakiś błąd Plasmy.

Wyjścia są dwa, z czego jednego nie polecam, ale o tym za chwilę. Przede wszystkim musimy się dostać w dowolny sposób do trybu konsolowego. Skoro już nas ekran taki jw. przywitał, to wciskamy: Ctrl+Alt+F2...8, logujemy się do swojego konta i:

1. Rozwiązanie pierwsze, niepolecane przeze mnie, to deaktualizacja harfbuzz. Możemy to zrobić na kilka sposobów najprościej skorzystać z narzędzia downgrade lub jeśli posiadamy w /var/cache/pacman/pkg wcześniejsze wersje harfbuzz instalacja wprost z dysku używając do tego wyłącznie pacmana.
W pierwszym przypadku należy wpisać:
downgrade harfbuzz harfbuzz-icu
a następnie wybrać z dostępnej listy ostatnią, wcześniejszą wersję (będzie ona oznaczona nr 2 w obu przpadkach).
W drugim przypadku należy wywołać:
pacman -U /var/cache/pacman/pkg/harfbuzz_pełna_nazwa_paczki
czyli najprościej wcisnąć, po słowie harfbuzz. To samo należy powtórzyć z harfbuzz-icu.
Wykorzystanie downgrade umożliwia jeszcze dość łatwe dodanie obu paczek do IgnorePkg, w drugim przypadku musimy to zrobić ręcznie, edytując plik /etc/pacman.conf.

Nie polecam jednakże tego rozwiązania, albowiem od harfbuzz zależne mogą być inne programy, które pojawią się w repozytorium, które będą skompilowane na podstawie nowej już wersji harfbuzz i problem z niedziałającymi programami się powtórzy, ale w odwrotną stronę.

2. Drugie rozwiązanie, to odinstalowanie paczek infinality oraz zainstalowanie ich systemowych odpowiedników. To rozwiązanie jest bezpieczne, aczkolwiek jego konsekwencją będą nieco gorzej renderowane czcionki ekranowe.
W pierwszej kolejności musimy znaleźć paczki "infinality". Najprościej zrobimy to pytając bazę pacmana:
pacman -Qs infinality
W odpowiedzi dostaniemy spis paczek zainstalowanych czy to z repozytorium Infinality (które kiedyś opisywałem) lub zbudowane z AUR.
Musimy dokonać odinstalowania tych paczek i zainstalowania ich systemowych odpowiedników. Czyli jeśli w odpowiedzi otrzymamy, że zainstalowane paczki to np. freetype2-infinality-ultimate i fontconfig-infinality-ultimate, to wykonujemy polecenie:
pacman -S freetype2 fontconfig
W jego wyniku dwukrotnie zostaniemy powiadomieni o tym, że próbujemy zainstalować w systemie paczki, które kolidują z paczkami infinality. Dwukrotnie zatem odpowiadamy twierdząco, a resztę wykona pacman.

Niestety próba instalacji infinality z AUR również się nie powiedzie, albowiem dla wersji, która jest tam budowana harfbuzz w systemie będzie zbyt nowy, a kompilacja po prostu nie powiedzie się.

Komentarze

Popularne posty z tego bloga

Na prostej drodze do wysypania Manjaro

Do napisania dzisiejszego wpisu zainspirował mnie jeden z wątków na forum manjaro.pl. Otóż jeden z użytkowników Manjaro chciał zainstalować spotify, którego PKGBUILD dostępny jest w AUR. Akurat ta paczka powstaje przez przebudowanie udostępnianej przez Spotify paczki deb na paczkę Archa. Niestety od pewnego czasu spotify z udostępnionego PKGBUILDu gdyż wersja to 1.0.92.x, która nie jest już dłużej udostępniana przez Spotify. Obecnie udostępniane są 3 paczki, przy czym dla wspieranej architektury w Archu to wyłącznie 1.0.80.x oraz najnowsza 1.0.94.x. Instalacja zatem z takiego PKGBUILDu nie ma najmniejszych szans powodzenia.
Autor wątku chce zaktualizować paczkę, stąd też domniemuję, że jakąś wersję spotify ma.
Inny forumowicz poleca zatem... dodanie repozytorium nexus do systemu (uwaga - poleca dodanie repozytorium budowanego dla Archa do Manjaro!!!), albowiem w tym repozytorium jest najnowsza wersja spotify.
Autor zastanawia się jednak, czy jest to bezpieczne i dochodzi do wniosku, ż…

Plasma i Strażnik Krypt

W czasach, gdy nasza prywatność jest wystawiana na ciężką próbę, jeden z deweloperów KDE postanowił dodać do Plasmy możliwość dość łatwej obsługi szyfrowanych, wirtualnych "katalogów" - krypt, jak je nazywa. Sam projekt nazywa się plasma-vault i po około 3 miesiącach rozwijania pojawiła się w repozytorium unstable KDE najpierw jego wersja 5.9.95, a obecnie 5.9.96. Jak wskazuje numer wersji (choć ten został nadany nie przez opiekuna, ale przez wszędobylskiego Jonathana Riddella), aplikacja była planowana jako część Plasma 5.10. Tak się jednak z jakichś przyczyn nie stało. Obecnie jest ona planowana, jako część nadchodzącego wydania 5.11. Sam program w Archu dostępny jest w AUR. Buduje się całkiem żwawo i działa na tyle, by można zaryzykować jeśli nie używanie, to przynajmniej sprawdzenie działania i zgłoszenie ewentualnych błędów deweloperom. Pamiętajcie by czytać to co po pacman pisze przy instalacji. Program do prawidłowej funkcjonalności potrzebuje bądź encfs bądź cryfs. …

MEGA a sprawa Arch Linux

Mniejsza o to, czy MEGA to popularny, czy godny zaufania itd. itp. dostarczyciel przestrzeni w chmurze. Fakt, że po moich doświadczeniach z dropboksem nie chcę mieć więcej z nim nic wspólnego. Może zatem MEGA, do którego mam dostęp niemal od samego początku? Miłym dodatkiem do MEGA może okazać się uruchomione repozytorium oferujące sam program synchronizujący (megasync) oraz dodatki dla trzech, chyba najpopularniejszych, menedżerów plików: Dolphin, Nautilus i Thunar, umożliwiające synchronizację z plików z ich poziomu. Jest to o tyle miłe, że do tej pory musieliśmy kompilować te programy z AUR, a nadto w przypadku megasync wersja oferowana w repozytorium jest nowsza, zaś dolphin-megasync obecnie w ogóle się nie kompiluje. Chcąc dodać repozytorium MEGA do pacmana, edytujemy plik /etc/pacman.conf i gdzieś na końcu listy dodajemy: [DEB_Arch_Extra]SigLevel = Optional TrustAllServer = https://mega.nz/linux/MEGAsync/Arch_Extra/x86_64/ Nadto musimy jeszcze dodać klucz: gpg --receive-keys BF…