Openbox

W poszukiwaniu alternatywy do ociężałego i coraz bardziej wykastrowanego Gnoma postanowiłem poeksperymentować z openboxem, który lekkim menedżerem okiem, a będący alternatywą do innych lekkich (kafelkowych) menedżerów jak np. i3. Chciałem mieć podobną funkcjonalność jak przy tradycyjnych i „pełnych” środowiskach graficznych czyli móc przesuwać okna myszka, klawiaturą, tworzyć wirtualne pulpity, mieć jakiś panel. Oczywiście wszystkich tych czynności sam Openbox nie wykona i trzeba doinstalować trochę oprogramowania pomocniczego. Może to być pewna trudność z początku bo trzeba wiedzieć czego może brakować jak np. menu, panel, menedżer schowka, applet dźwiękowy, zarządzanie tapetą i wiele innych drobnych rzeczy, o których nie trzeba myśleć w Gnomie czy Plasmie, gdzie wszystko już jest od samego początku.

O dziwo instalacja jak integracja okazała się o wiele prostsza niż sądziłem. Wszystkie potrzebne informacje w przeważającej części znajdują się w wiki archowej lub w dokumentacji githuba dla poszczególnych programów.

No dobrze, ale od czego zacząć i co instalować?

 

Wszystkie kroki instalacyjne wykonywałem w Archu, ale nie ma w nich niczego specyficznego dla tej dystrybucji. Jedyne różnice to sposób instalacji i dostępność niektórych pomniejszych programików. Jeśli nie są dostępne w waszej dystrybucji to na pewno na stronie danego projektu jest dokładnych opis instalacji.

 

Poniższy opis jest dla instalacji dosyć minimalistycznej czyli takiej, w której nie korzystamy z już zainstalowanego środowiska graficznego.

 

1) Menedżer logowania – po usunięciu wszelakich śladów po gnomie zostałem z podstawowymi pakietami oraz kilkoma programami jak firefox, clementine czy steam, wraz ze swoimi zależnościami. Pierwsza rzecz do wybór menedżera logowania, może być każdy, ja wybrałem lightdm, który jest lekki, z początku brzydki jak noc, ale konfigurowalny.

 

sudo pacman -S lightdm, lightdm-gtk-greeter lightdm-gtk-greeter-settings

 

Ustawiamy motyw graficzny w pliku: /etc/lightdm/lightdm.conf i zmieniamy wartość atrybutu: greeter-session

[Seat:*]

greeter-session=lightdm-gtk-greeter

Włączamy na stałe lightdma

sudo systemctl enable lightdm

 

Później możemy za pomocą lightdm-gtk-greeter-settings zmienić ustawienia ekranu logowania

 

 

2) Openbox – kolejny krok to instalacja openboxa

 

sudo pacman -S openbox

 

Za chwilę będziemy go konfigurować

 

3) Compton – jeśli chcemy korzystać z przezroczystości, cieni itp wodotrysków to Compton jest godnym i lekkim kompozytorem

 

sudo pacman -S compton

 

Za chwilę będziemy go konfigurować (jak wszystko)

 

4) Kilka innych programów które mogą się nam przydać. Przy instalacji, w zależności od dystrybucji należy zwracać uwagę na opcjonalnego zależności i w razie potrzeby je doinstalować. Nazewnictwo, dla niektórych pakietów może się nieznacznie różnić między dystrybucjami.

 

#Motywy graficzne dla openboxa

openbox-themes

 

#Menedżer konfiguracji openboxa, czcionki itp

obconf

 

#Kolejny graficzny menedżer ustawień, zawiera trochę więcej opcji niż powyższy

lxappearance-obconf

 

#Panel, najpopularniejszy to polybar lub tint2, ja wolę tint2

tint2

 

#Menedżer plików, może być dowolny, ja lubię Thunara z xfce. Dla Thunara warto zainstalować opcjonalne zależności aby mieć obsługę śmietnika, montowania dysków i innych woluminów

thunar

+ opcjonalne zależności: gvfs,  thunar-volman, thunar-archive-plugin, tumbler

 

#Menu pod prawym klawiszem może być statyczne lub dynamiczne. Dynamiczne to takie, które się samo uaktualnia po instalacji nowych programów. Dla dynamicznych dobrym wyborem jest:

obmenu-generator

 

#Obsługa tapet

nitrogen

 

#Obsługa powiadomień

dunst

 

#Schowek

clipit

 

#Aplet do networkmanager (jeśli ktoś uzywa networ kmanagera)

network-manager-applet

 

#Aplet do kontroli dźwięku

volumeicon

 

#Terminal – chociaż wiele da się skonfigurować w sposób graficzny to jednak sporo również należy grzebać w terminalu i plikach tekstowych. Polecam np:.

terminator

 

#Launcher, odpowiednik krunnera (alt-f2) w plasmie lub dasha w Unity czy w Gnomie

rofi

 

#Przyciski do wylogowywania się

oblogout

 

To z grubsza już wszystko i można przejść do konfiguracji. Wszystkie programy, które wymieniłem, poza samym openboxem, są w pełni opcjonalne. Na tym polega cały plus, że jest pełna dowolność w doborze. Oczywiście nie warto robić śmietnika i instalować 3 różnych paneli chyba, że coś testujemy. Do testów na początek najlepiej się nadaje virtualbox z opcją migawki.

 

4) Podstawa konfiguracja – kilka podstawowych kroków przed zalogowaniem aby wszystko ruszyło. Tapety, czcionki, motywy omijam gdyż ich instalacja jest standardowa.

 

a) Openbox – zanim się zalogujemy, należy przejść do konsoli alt-f1 i przekopiować podstawową konfigurację openboxa

 

cp -R /etc/xdg/openbox ~/.config/

 

Interesowały będą nas głównie dla pliki: autostart, w którym będziemy wpisywać programy, który będą działały w tle jak panel, aplety itp. Drugi plik to rc.xml, który służy do konfiguracji skrótów klawiszowych. Wiki archowe doskonale to opisuje

 

Zaraz wrócimy jeszcze do autostartu

b) Compton czyli nasz kompozytor wodotrysków, tu również musimy przekopiować podstawoą konfigurację.

 

cp -R /etc/xdg/compton ~/.config/

 

Dwie uwagi: po pierwsze w pliku compton.conf warto ustawić opcję vsync na none, która wyłączy vsync. Oczywiście przy dużych problemach ze smużeniem można ją przywrócić

vsync = „none”;

 

Po drugie backend, jeśli testujemy w virtualboxie to jest spora szansa, że zobaczymy artefakty, czerwone tła, cienie. Wtedy backend należy przestawić na  backend = „xrenderer”;

 

c)  Dunst – tu również należy przekopiować podstawową powiadomień. Oczywiście wszystko należy potem dostosować.

cp -R /usr/share/dunst ~/.config/

 

d) Generujemy menu wraz ikonami pod prawym klawiszem. Jeśli nie zainstolwaliśmy opcjonalnyuch zależności do obmenu-generatora to ikony się nie wyświetlą, a prawy klawisz nie będzie działał 😉 Opcję ikon możną pominąć usuwają -i

obmenu-generator -i -p

 

e) Aby uniknąć problemów z motywami graficznymi dla niektórych programów gtk/qt należy dodać poniższą linię do /etc/profile

 

#z roota

echo 'export DESKTOP_SESSION=gnome' >> /etc/profile

 

e) Autostart – po przekopiowaniu podstawowej konfiguracji w konsoli należy jeszcze uzupełnić plik ~/.config/openbox/autostart

U mnie wygląda mniej więcej tak:

 

compton -b –config ~/.config/compton/compton.conf &
tint2 &
clipit &
nitrogen –restore &
volumeicon &
nm-applet &
dunst &

 

5) Dalszą konfigurację możemy już wykonywać w środowisku graficznym, w lightdm wybieramy opcję openbox i po pierwszym logowaniu zobaczymy czarny pulpit z panelem u dołu. Teraz pozostaje kwestia dostosowania, kilka rad:

 

a) lightdm – opisałem już wcześniej, można zainstalować dowolny motyw i włączyć go przy pomocy sudo lightdm-gtk-greeter-settings. Jeśli chemy ustawić tapetę ekranu logowania to należy ją wcześniej przekopiować do katalogu /usr/share/pixmaps

 

b) obmenu – prawy klawisz myszy wyświetla menu z programami, kategorie są w języku angielskim, co można zmienić w pliku: ~/.config/obmenu-generator/schema.pl

 

Jeśli zainstalowaliśmy oblogout to wystarczy w tym samym pliku odhashować przedostatnią linijkę: {item => [‚oblogout’, ‚Exit’, ‚application-exit’]},

 

Warto również zmienić domyślny motyw oblogout w /etc/oblogout.conf  na: buttontheme = foom

 

 

c) Ustawienia panelu tint2 najlepiej wykonać na początku graficznie, opcji jest mnóstwo, można tworzyć panele na osobnych pulpitach, ukrywać je itd

tint2conf

 

 

d)  Ustawienie tapety ekranu to program nitrogen, uruchamia się go przez terminal ze wskazaniem ścieżki z tapetami i wybraniu jej w oknie. Ostatnia wybrana tapeta będzie używana jako… tapeta bo dodaliśmy nitrogen z odpowiednią opcją do autostartu

np. nitrogen ~/Obrazy

 

 

e) Ustawienia motywu graficznego, czcionek, ikon itp to programy: lxappearance oraz obconf

 

 

f) Zmiana ustawień dusnta to już w pliku dunstrc, który przekopiowaliśmy do ~/.config/dunst. Opcje jest naprawdę dużo, dodam tylko, że jeśli chcemy pokazywać ikony w powiadomieniach to należy odhashować linię:  icon_position = left

 

g) volumeicon, schowek, aplet network manager – nic szczególnego poza opcjami dostępnymi w menu

 

h) Na koniec rofi, baardzo popularny launcher, którego sobie podmapowałęm pod klawisz alt-f2 (jak krunner) i wygląda tak:

 

 

Skrót ustawiłem w pliku ~/.config/openbox/rc.xml

 

<!– Keybindings for window switching with the arrow keys –>

<keybind key=”A-F2″>
<action name=”Execute”>
<command>rofi -show</command>
</action>
</keybind>

 

Dodatkowe ustawienia dla rofiego można umieścić w pliki ~/.config/rogi/config np. tak:

rofi.combi-modi: window,drun,run
rofi.theme: /usr/share/rofi/themes/android_notification.rasi
rofi.modi: combi

 

I to chyba już na tyle, w pełni działające środowisko tuż po starcie „waży” ok. 300 MB. Zachęcam do zapoznania się dokumentacją archową dot. openboxa i głównymi skrótami klawiatury, a inspiracje graficzne można czerpać z reddit.com/r/unixporn

 

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.