czwartek, 31 marca 2016

Plasma 5 bez... OpenGL

Co do zasady Plasma 5 jest oparta o OpenGL. Co zatem zrobić, gdy nie można z niego skorzystać (np. nie udała się  aktualizacja sterowników własnościowych NVidia), bądź też gdybyśmy chcieli skorzystać z tego środowiska na niezbyt mocnych (by nie powiedzieć, na dzisiejsze warunki słabych) komputerach?
Z pomocą przychodzi obecne od Qt 5.6 QtQuick 2D Render, które winno umożliwić uruchomienie Plasma 5 (w wersji zbudowanej na Qt5.6, co nie jest równoznaczne z Plasmą 5.6) w trybie niewymagającym OpenGL.
Możemy to zrobić poprzez uruchomienie plasmashell ze zmienną systemową:
export QMLSCENE_DEVICE=softwarecontent
Jeśli potrzebne jest to nam na stałe, możemy taką zmienną dodać np. do pliku ~/.bashrc, ale lepiej umieścić ją w katalogu ~/.config/plasma-workspace/env/ w pliku o dowolnej nazwie, najlepiej zakończonej suffiksem ".sh". Plik winien mieć następującą zawartość:
#!/usr/bin/bash
export QMLSCENE_DEVICE=softwarecontent
Dla pewności nadajemy mu uprawnienia wykonywalne (choć Plasma 5 tego nie powinna potrzebować):
chmod +x nazwa_pliku.sh
Taki plik winien być automatycznie uruchamiany przed startem środowiska. Dla upewnienia sprawdzamy, czy w istocie plik jest uruchamiany przed plasmashell:
systemsettings->Uruchamianie i wyłączanie->Samoczynne uruchamianie
Tutaj sprawdzamy, czy nasz skrypt został prawidłowo dodany i czy włącza się przed startem środowiska.
Jeśli natomiast zajdzie jednorazowa potrzeba wystartowania Plasmy bez OpenGL, wówczas komendę startującą Plasmę poprzedzamy wyeksportowaniem wyżej wymienionej zmiennej.

Więcej: w blogu Davida Edmundsona.