czwartek, 22 grudnia 2016

Integracja LibreOffice w Plasma 5

Prawdopodobnie mając zainstalowane "czyste" środowisko oparte o KF5/Qt5 i używając LO zauważyliście, że aplikacja ta nie integruje się z nim. Wygląd jest niespójny, a okna dialogowe w żaden sposób nie chcą przypomnieć tych znanych ze środowiska.
Sam pakiet biurowy nie jest zbudowany z wykorzystaniem bibliotek KDE (zarówno "starych", jak i obecnego KF5). Nawet o Qt nie ma tu mowy. Niemniej jednak, pakiet zawiera możliwość upodobnienia się do stylu używanego środowiska. Możliwości są cztery i są to w kolejności: gtk3, gtk, kde4 oraz generic. Można je wymusić, można też zdać się na wszyty w program automat, który rozpoznając, że dane środowisko, w którym ma pracować LO jest zbudowane z wykorzystaniem gtk3, to uruchamia się z takim "pluginem", jeśli na gtk2 - uruchamia się z "pluginem" gtk, jeśli stwierdzi, że jest to KDE, to uruchamia się z "pluginem" kde4, a ostatecznie jako "generic".
Teoretycznie zatem, gdy mam obecne KDE, to program winien je rozpoznać i uruchomić się z "pluginem" kde4. Uruchomiona w ten sposób aplikacja otrzymuje przede wszystkim dwie warstwy integracji z KDE. Po pierwsze z wyglądu przypominać winna natywną aplikację KDE (Qt), po drugie uzyskuje natywne dla KDE okna dialogowe.
W przypadku KDE program uruchomi się z "pluginem" kde4 jednakże wyłącznie wówczas, gdy znajdzie w systemie bibliotekę kdelibs pochodzącą jeszcze z KDE4 oraz... gdy znajdzie jakiś wystrój dla KDE4. O opcjonalnej zależności LO służącej jego integracji z KDE informuje program podczas instalacji, wymieniając pośród nich także kdelibs. Nie informuje jednak o tym, że w systemie winien się znajdować jakiś wystrój dla aplikacji KDE4, jak np. znajdujący się w repozytoriach breeze-kde4.
Idąc od końca, konsekwencje tego są takie:

  • jeśli w systemie nie będziemy mieć zainstalowanego gtk3 lub gtk2 oraz nie będziemy mieć zainstalowanej biblioteki kdelibs oraz wystroju Plasmy dla aplikacji KDE4, wówczas LO uruchomi się jako "generic" z natywnymi dla LO oknami dialogowymi i wystrojem nieco przypominającym aplikacje zbudowane w JAVA,
  • jeśli w systemie znajdą się biblioteki gtk3 lub gtk2, ale nie znajdzie kdelibs i wystrój dla KDE4, to wówczas aplikacja uruchomi się z wystrojem gtk3 lub gtk2 (obecnie bardzo zbliżonym) i z oknami dialogowymi natywnymi dla tych aplikacji,
  • jeśli w systemie odnaleziona zostanie biblioteka kdelibs, ale nie odnaleziony zostanie wystrój dla KDE4, to wówczas aplikacja uruchomi się z oknami natywnymi dla Plasmy, ale z wystrojem będącym swoistą hybrydą aplikacji Gtk i czegoś, co sam nie potrafię określić,
  • jeśli w systemie znaleziona zostanie biblioteka kdelibs oraz jakiś wystrój dla KDE4, wówczas aplikacja upodobni się do natywnej dla KDE.

Sytuacja, w której mielibyśmy wystrój dla KDE4 i jednocześnie nie mielibyśmy kdelibs, w zasadzie nie powinna zaistnieć i będzie ona wynikiem jakiejś błędnej instalacji takiego wystroju z nieoficjalnego źródła.
Chcąc zatem mieć maksymlanie upodobniające się LO do Plasmy musimy zainstalować kdelibs oraz jakiś wystrój kde4; osobiście polecam breeze-kde4, bowiem tu w istocie dobrze to wygląda (w szczególności w nadchodzącym wydaniu 5.3, gdzie w końcu pozbyto się gradientu w obszarze pasków narzędziowych).
Jak długo taki stan będzie istniał? Myślę, że jeszcze sporo lat, albowiem KDE4 w takich dystrybucjach jak Debian będzie trzymane (nie wiadomo po co) do początku lat 2020. Dla tej wersji nie ma też oficjalnych paczek KF5.
Cóż można powiedzieć jedynie... niestety.