03/01/2006
Instalacja i konfiguracja
Spis treści
Wstęp
I. Instalacja Fluxboksa
II. Konfiguracja Fluxboksa
1. Wybór stylu i czcionki
2. Menu
3. Skróty klawiszowe
4. Zachowanie okien
- grupowanie okien
5. Autostart
6. Tapeta
Wstęp
Na początku warto zauważyć, że Fluxbox to tylko menedżer okien - nie posiada on wbudowanych aplikacji do modyfikowania styli GTK czy QT, graficznych konfiguratorów, narzędzi służących do operacji na plikach i katalogach czy innych programów znanych chociażby z KDE. Zdecydowanie się na tego menedżera okien, to jednocześnie rezygnacja ze środowiska graficznego typu “all in one” i potrzeba “przegrzebania” się przez gąszcze linuksowych aplikacji celem wybrania czegoś dla siebie.
Co otrzymujemy w zamian? - W pełni funkcjonalne i wygodne środowisko pracy, stworzone właściwie od podstaw i dostosowane dokładnie do naszych potrzeb.
W tym tekście dowiesz się jak skonfigurować Fluxboksa aby uzyskać mniej więcej taki efekt:
Czyli jak Fluxboksa zamienić na owo funkcjonalne i w dodatku ładnie wyglądające środowisko pracy.
Postanowiłem zainstalować od podstaw Fluxboksa skompilowanego ze źródeł i razem z Tobą, drogi czytelniku, prześledzić proces jego konfiguracji.
I.Instalacja Fluxboksa
Źródła Fluxboksa dostępne są na stronie www.fluxbox.org. Najnowsza wersja stabilna obecnie to 1.0. Po ściągnięciu źródeł należy je rozpakować i przejść do rozpakowanego katalogu. Całość instalacji nie odbiega od schematów instalacji programów pod Linuxem (./configure && make i make install jako root).
Przy ./configure warto dodać –help na końcu. Wyświetli nam się lista opcji dostępnych podczas instalacji. Więc ostatecznie:
./configure && make
make install (jako root)
Fluxbox domyślnie jest instalowany w /usr/local/share/fluxbox pliki binarne w /usr/local/bin. Uruchamiamy go poleceniem startx (po wcześniejszym dodaniu exec startfluxbox do pliku .xinitrc z katalogu domowego) lub z poziomu managera logowania - jeśli takowy preferujemy przy uruchamianiu sesji X11.
II.Konfiguracja Fluxboksa
Fluxbox po pierwszym uruchomieniu wita nas czarnym ekranem, toolbarem u dołu ekranu i brakiem polskich znaków.
Niezbyt zachęcająco? - Spróbujemy coś na to poradzić :)
Zacznijmy od zmiany domyślnego stylu i czcionki Fluxboksa, aby nas nie raził brak polskich znaków w dalszej konfiguracji ;)
Powodem braku polskich znaków jest fakt, że czcionka “glisp” domyślnego stylu ich nie posiada (zakładam ze Fluxbox jest instalowany w spolonizowanym systemie). Łatwo sobie z tym poradzić zmieniając styl na “emerge” na przykład (prawy przycisk na pulpicie -> menu fluxbox -> style systemowe -> emerge) lub edytując plik konfiguracyjny domyślnego stylu i zmieniając czcionkę na taką która ma polskie znaki.
Możemy pokusić się również, o ściągnięcie stylu Fluxboksa, który nam się spodoba (dział z linkami na mojej stronie). Ściągnięty styl rozpakowujemy/przegrywamy do /home/user/.fluxbox/styles i następnie wybieramy go z menu (prawy przycisk na pulpicie -> menu fluxbox -> style użytkownika -> nowy_styl).
Jeśli czcionka stylu nie posiada polskich znaków lub nam nie odpowiada, edytujemy plik konfiguracyjny stylu (zazwyczaj /home/user/.fluxbox/styles/nazwa_stylu/theme.cfg lub
/usr/local/share/fluxbox/styles/nazwa_stylu/theme.cfg) , “haszujemy” wszystkie linie z ciągiem znaków “font” i dodajemy linię definiującą czcionkę dla wszystkich elementów Fluxboksa:
*Font: nazwa_czcionki
Uwaga: Od wersji 0.9.15 funkcję nadrzędną nad plikami konfiguracyjnymi styli spełnia plik /home/user/.fluxbox/overlay
Tak więc np wpis *font: sans-10 zmieni wszystkie czcionki we Fluxboksie na “Sans” rozmiar 10 - niezależnie od tego jakie są zdefiniowane w plikach konfiguracyjnych styli.
Przy pierwszym uruchomieniu menu generowane jest automatycznie, dzięki aplikacji fluxbox-generate_menu (jest ona domyślnie instalowana razem z Fluxboksem). Warto przyjrzeć się jej bliżej.
Po wydaniu w terminalu polecenia
fluxbox-generate_menu -h
wyświetli nam się szereg opcji które warto prześledzić i wybrać te które nam odpowiadają. Dzięki nim do naszego menu Fluxboksa możemy dodać menu KDE (opcja -k) i Gnome (opcja -g), możemy wybrać domyślny terminal (opcja -t), przeglądarkę (opcja -b) a nawet tytuł menu (opcja -m).
W ten sposób otrzymamy gotowe do pracy menu w którym aplikacje są sensownie pogrupowane. Nie ma się jednak co łudzić, że dodane zostaną wszystkie interesujące nas aplikacje, zainstalowane w naszym systemie.
W celu uzupełnienia braków edytujemy plik /home/user/.fluxbox/menu. Struktura tego pliku jest na tyle prosta, że nikt nie powinien mieć problemu z jego edycją.
Standardowe polecenie uruchamiające aplikacje wygląda w ten sposób:
[exec] (nazwa aplikacji) {polecenie uruchamiające aplikację}
natomiast tag dodający nową kategorię w menu wygląda tak:
[submenu] {nazwa submenu}
Po dodaniu niezbędnych aplikacji do pliku menu i zapisaniu go, menu pulpitu zostanie zaktualizowane o te wpisy.
Sensowne zdefiniowanie i nauczenie się skrótów klawiszowych we Fluxboksie bardzo ułatwia pracę z tym window managerem. Definiowanie skrótów sprowadza się do edycji pliku /home/user/.fluxbox/keys. Plik ten, podobnie jak plik menu ma jasną i klarowną strukturę.
Pod skróty klawiszowe, oprócz poleceń uruchamiających aplikacje (tych z execcommand na początku) możemy przypisać również wszystkie akcje obsługiwane przez Fluxboksa. Ich pełną listę znajdziecie w dokumentacji Fluxboksa (dział z linkami na mojej stronie).
Standardowa definicja skrótu wygląda tak:
modyfikator klawisz :polecenie
czyli np skrót alt + F1 uruchamiający przeglądarkę Firefox wygląda tak:
Mod1 F1 :execcommand firefox
Należy pamiętać że klawisz Alt to Mod1 w pliku definiującym skróty klawiszowe, natomiast klawisz Windows to Mod4. Reszta modyfikatorów wygląda standardowo (Shift, Control, Menu)
Ten fragment w zasadzie przy standardowej konfiguracji Fluxboksa można opuścić, zachęcam jednak do “przebrnięcia” przez niego - zawiera kilka użytecznych informacji.
Na początku tej części zajmijmy się sposobem aktywowania okien. Ustawień tych dokonujemy z poziomu menu (prawy przycisk na pulpicie -> menu fluxbox -> konfiguracja -> focus model). Przyjrzyjmy się dostepnym opcjom.
Standardowo okna na pulpicie stają sie aktywne po kliknięciu na nie Click To Focus. Możemy jednak sprawić aby okna aktywowały się po najechaniu na nie kursorem myszy Mouse Focus i jeśli chcemy aby aktywowane okno było na wierzchu zaznaczamy Auto Raise.
Zanim napiszę o ClickTabFocus i MouseTabFocus, musisz drogi czytelniku, zapoznać się z bardzo wygodną funkcją Fluxboksa jaką jest grupowanie okien.
Jeśli mamy dwa lub więcej okien otwartych na pulpicie, możemy je wszystkie pogrupować - tak aby miały ten sam rozmiar, położenie i stanowiły jedno “multiokno” z zakładkami na belce tytułowej. Wybierając teraz zakładkę odpowiadającą danemu oknu sprawiamy, że pojawia się ono na wierzchu.
Brzmi skomplikowanie ale w praktyce jest bardzo proste – mając dwa okna klikamy na belce tytułowej jednego z nich środkowym przyciskiem myszy i przesuwamy na belkę tytułową drugiego. Okna się łączą i możemy przełączać pomiędzy nimi przy pomocy zakładek na belce tytułowej.
Okna określonych aplikacji mogą być grupowane automatycznie - aplikacje takie zapisujemy w pliku /home/user/.fluxbox/groups
Wróćmy teraz do ClickTabFocus i MouseTabFocus – analogicznie do sposobu aktywacji okien opcje te określają sposób aktywacji zakładek. Po zaznaczeniu pierwszej zakładka jest aktywowana po kliknięciu, po zaznaczeniu drugiej opcji zakładka jest aktywowana po najechaniu na nią kursorem myszy.
Fluxbox ma również możliwość zapamiętania rozmiaru, położenia i zachowania okna danej aplikacji. Wystarczy kliknąć PPM na belce tytułowej okna danej aplikacji, i z podmenu “Remember” wybrać opcje które mają być zapamiętane. Ustawienia te są zapisywane w pliku /home/user/.fluxbox/apps .
Polecenia i aplikacje które maja być uruchamiane przy starcie Fluxboksa można zdefiniować na dwa sposoby. W pierwszym, starym sposobie aplikacje startowe dodajemy do pliku /home/user/.fluxbox/startup. Przy dodawaniu kolejnych poleceń należy na ich końcu zamieścić znak “&”, w przeciwnym wypadku kolejne polecenia nie zostaną wykonane, a Fluxbox nie uruchomi się. Na końcu winno znajdować się polecenie uruchamiające Fluxboksa exec fluxbox.
Jeżeli do polecenia exec fluxbox z pliku startup dodamy opcje -log ~/.fluxbox/log, utworzony zostanie plik dziennika o nazwie “log”, w którym oprócz informacji o wersji i ustawieniach Fluxboksa zapisywane są również ewentualne błędy.
W drugim, nowym sposobie (od wersji 0.9.4) zostawiamy w spokoju plik startup, a aplikacje startowe dodajemy do znanego nam już pliku home/user/.fluxbox/apps. Polecenia uruchamiane przy starcie Fluxboksa wpisujemy na początku tego pliku w formie:
[startup] {polecenie}
Nie wiem szczerze mówiąc (pisząc ;) ), dlaczego deweloperzy Fluxboksa zdecydowali się na zmianę sposobu dodawania aplikacji do autostartu i nie dostrzegając wyższości (być może) tego rozwiązania, wciąż używam pliku startup.
W tym miejscu czytelnikowi należy się małe wyjaśnienie. Otóż nadrzędną funkcję nad plikami startowymi Fluxboksa pełnią pliki startowe sesji xwindow - .xinitrc i .xsession (odpowiednio dla “startx” i graficznego menedżera logowania). Te pierwsze służą do startu aplikacji przy starcie menedżera okien Fluxbox, natomiast w drugich zapisuje się aplikacje startowe sesji X.
I na koniec zróbmy coś z tym czarnym tłem.
Jest wiele sposobów na ustawienie tapety we Fluxboksie i wiele programów których można do tego użyć. Można to zrobić z poziomu pliku init, startup czy pliku konfiguracyjnego używanego stylu. Zawsze jednak w tych sposobach jest jeden mankament – potrzeba edycji tych plików gdy chcemy zmienić tapetę. Sposób który podam tego nie wymaga.
Aplikacja której użyjemy do ustawienia tapety to fbsetbg (jest instalowana razem z Fluxboksem). Program ten wykonuje wpis do pliku /home/user/.fluxbox/latstwallpaper – dzięki któremu raz załadowana tapeta zostanie użyta po każdym uruchomieniu Fluxboksa.
Wystarczy więc w terminalu wydać polecenie fbsetbg -f /scieżka/do/tapety (opcja -f ustawia tapetę na całym ekranie), aby już przy każdym uruchomieniu Fluxboksa oglądać nasz ulubiony obrazek na pulpicie. Za ukazanie się owego obrazka przy każdym uruchomieniu odpowiada wpis:
session.screen0.rootCommand: fbsetbg -l
w pliku /home/user/.fluxbox/init i w razie problemów polecam sprawdzić czy ten wpis się tam znajduje.
Fbsetbg to tzw wrapper (z ang opakowanie? :) ), czyli aplikacja okreslająca spósob użycia innej aplikacji. Skrypt ten wyszukuje w systemie zewnętrzne aplikacje do ustawienia tapety. Mogą to być Esetroot wmsetbg feh hsetroot chbg display qiv xv xsri xli lub xsetbg. Dla sprawdzenia aktualnie używanej aplikacji wydajemy polecenie:
fbsetbg -iAby zmienic domyślną aplikację na feh np należy wydać polecenie:
wpsetters=feh fbsetbg wallpaper.jpg
Co zrobić aby zmieniać tapety z poziomu menu pod prawym przyciskiem? – do pliku menu nalezy dodać wpis:
[submenu] (wallpapers)
[wallpapers] (/sciezka/do/katalogu/z/tapetami) {fbsetbg -f}
[end]
Teraz po wybraniu z menu pliku z tapetą ukaże się ona na pulpicie.










Całkiem przydatny opis, szczególnie dla początkujących ;)
Przy kompilacji:
“z tych wyłączonych polecam dodać –enable-imlib2″
Moim zdaniem niegłupim pomysłem jest dodanie do tego –enable-nls, który domyślnie również jest wyłączony.
Mimo wszystko dobrze, jak Fluxbox “mówi” w naszym ojczystym języku. ;)
Dodane, choc ja zawsze wyłączam NLS, wolę anglojęzyczne menu i brak problemów z polskimi znakam ;] - ale to moje prywatne zdanie.
Pytanie dotyczące grupowania okien. Mam fluxboxa na Ubuntu.pl Nie mam pliku /home/marcin/.fluxbox.groups
Chciałbym grupować automatycznie. Co robić ?
Chodziło mi oczywiście o plik /home/marcin/.fluxbox/groups
Trzeba stworzyć plik /home/marcin/.fluxbox/groups i wpisać do niego aplikacje które mają być grupowane automatycznie - w taki sposób
Dzięki. Działa :) Ale wogóle link, który podałeś jest bardzo ciekawy, można znaleźć odpowiedzi na różne pytania dotyczące fluxboksa. Kiedyś go używałem ale nie umiałem konfigurować. Teraz dopiero mam na komputerze szybkie i proste w użytkowaniu środowisko graficzne, co najbardziej cenie. Pozdrowionka :)
witam mam pytanie dot. autostartu
świeżo po instalacji jestem z fluxconf idesk itp
i chodzi konkretnie o autostart conky
dodaje /home/magnifiq/.fluxbox/startup
exec /usr/local/bin/conky &
ale nic sie nie dzieje
probowalem tez dodac to apps jako
[startup] {conky}
niestety ten sam efekt
nawet gorzej - nie zostaje to zapisane po ponownym
zalogowaniu zastaje stary plik bez tego wpisu
ocb?
hm no rozwiazalem to w taki sposob:
plik ~/.xinitrc
tam wpisalem na samym poczatku
conky &
i hula
ale bede wdzieczny jezeli ktos mi wytlumaczy dlaczego nie dziala mi startup ani apps
dobra mozna to pokasowac albo zostawic dla innych
jezeli w .xinitrc mam
exec /usr/local/bin/fluxbox
to nie dziala startup
a zmienilem to na
exec startfluxbox
wszystko hula pieknie z startup’a
pozdrawiam
Niech zostanie
startfluxbox to skrypt uruchamiający polecenia z ~/.fluxbox/startup , dlatego przy samym “exec fluxbox” w .xinitrc nie jest ów plik czytany.
Świetny poradnik. :) Zawsze ta konfiguracja mnie przerażała we Fluxboksie. Okazuje się, że to wcale nie takie trudne.
Gdy znajdę trochę czasu, to zabieram się za Fluksia. :D
heh, genialne w swojej prostocie, zawsze marudzilem na zbyt malo ramu, a flux byl jakis nieprzystepny dla mnie, teraz sie za niego wezme ;] pozdrawiam :)
“–enable-imlib2 –enable-nls”
Niepotrzbne. Obie te opcje sa domyslnie wlaczone.
Dzięki, poprawione - dotyczyło to jeszcze wersji 0.9.x.