Tiling window manageri (WM) iznimno su hvaljeni u Unix zajednici zbog svoje lagane strukture, ekstremnog potencijala za prilagodbu i visoke učinkovitosti. Zamjenom tradicionalnih radnih okruženja upravljanjem prozorima putem tipkovnice, programeri mogu postići visoko optimiziran radni proces.
Ovaj vodič detaljno opisuje konfiguraciju prilagođenog radnog okruženja korak-po-korak temeljenog na Pop!_OS-u i BSPWM-u (Binary Space Partitioning Window Manager). Oslanjajući se na popularnu Nordic paletu boja, ova postavka kombinira minimalističku estetiku s moćnom funkcionalnošću.
Prikaz radnog prostora
Evo vizualnog pregleda dovršenog okruženja u kojem se izvode različiti prilagođeni sustavni i terminalski alati:

Arhitektura jezgre sustava
Kako bismo replicirali ovo okruženje, standardno GNOME radno okruženje Pop!_OS-a zamijenit ćemo modularnim sklopom pojedinačnih alata. Tablica u nastavku prikazuje tehničke specifikacije okruženja:
| Komponenta | Softver / Projekt | Opis |
|---|---|---|
| Operativni sustav | Pop!_OS | Stabilna Linux distribucija temeljena na Debianu/Ubuntuu |
| Window Manager | BSPWM | Tiling window manager s binarnim dijeljenjem prostora |
| Hotkey Daemon | Sxhkd | Jednostavan X hotkey daemon za prečace na tipkovnici |
| Statusna traka | Polybar | Brz i jednostavan generator statusne trake |
| X Kompozitor | Picom (ibhagwan fork) | Kompozitor sa zaobljenim kutovima i dual-kawase zamućenjem |
| Pokretač aplikacija | Rofi | Prebacivač prozora, pokretač aplikacija i zamjena za dmenu |
| Emulator terminala | Alacritty | GPU-ubrzani emulator terminala |
| Shell i tema | Zsh + Powerlevel10k | Interaktivno shell okruženje visokih performansi |
| Vizualna tema | Nordic Dark GTK | Čista tamna GTK tema inspirirana arktičkim bojama |
| Ikone i kursor | Flattery Dark & Oreo Blue | Ravne ikone i elegantni moderni pokazivači miša |
| Primarni font | Source Code Pro | Monospace font optimiziran za čitljivost koda |
Instalacija i kompilacija korak-po-korak
Ovaj vodič pretpostavlja da krećete od čiste instalacije Pop!_OS-a. Kako bismo osigurali potpunu kontrolu nad ovisnostima (dependencies) i optimalne performanse, nekoliko jezgrih komponenti kompajlirat ćemo izravno iz izvornog koda.
1. Sinkronizacija repozitorija i paketa sustava
Prije preuzimanja ovisnosti, provjerite je li vaša lokalna baza podataka paketa ažurna i jesu li svi osnovni programi sustava potpuno nadograđeni:
sudo apt update
sudo apt upgrade -y
2. Instalacija i konfiguracija BSPWM-a
BSPWM je lagani tiling window manager koji prozore prikazuje kao listove potpunog binarnog stabla.
Preuzimanje ključnih ovisnosti
Kompajlirajte i pokrenite BSPWM sigurno instaliranjem potrebnih XCB i sistemskih biblioteka:
sudo apt install -y build-essential git vim xcb libxcb-util0-dev libxcb-ewmh-dev libxcb-randr0-dev libxcb-icccm4-dev libxcb-keysyms1-dev libxcb-xinerama0-dev libasound2-dev libxcb-xtest0-dev libxcb-shape0-dev
Kompilacija iz izvornog koda
Klonirajte službeni repozitorij, kompajlirajte binarnu datoteku i izvršite instalaciju na razini cijelog sustava:
cd ~/Downloads
git clone https://github.com/baskerville/bspwm.git
cd bspwm
make
sudo make install
Pokretanje konfiguracijskih datoteka
Uspostavite strukturu konfiguracijskih direktorija i kopirajte zadane skripte za pokretanje:
mkdir -p ~/.config/bspwm
cp examples/bspwmrc ~/.config/bspwm/
chmod +x ~/.config/bspwm/bspwmrc
cd ..
3. Postavljanje alata Simple X Hotkey Daemon (sxhkd)
Za razliku od drugih tiling window managera, BSPWM ne upravlja izravno unosom putem tipkovnice. Umjesto toga, oslanja se na zaseban daemon, sxhkd, koji povezuje pritiske tipki s naredbama.
Kompilacija alata sxhkd
git clone https://github.com/baskerville/sxhkd.git
cd sxhkd
make
sudo make install
Konfiguriranje prečaca na tipkovnici
Kreirajte konfiguracijski direktorij i pripremite primjere definicija prečaca:
mkdir -p ~/.config/sxhkd
cp ../bspwm/examples/sxhkdrc ~/.config/sxhkd/
cd ..
Napomena o konfiguraciji: Ako mijenjate
~/.config/sxhkd/sxhkdrc, provjerite je li definirani emulator terminala ispravan. Ako testirate unutar standardnog GNOME shell okruženja prije same tranzicije, prilagodite zadani blok naredbi za terminal kako bi pozivaognome-terminal.
4. Kompajliranje Polybara za prikaz statusnih traka
Polybar je visoko modularan alat koji generira elegantne, prilagodljive statusne trake.
Preuzimanje ovisnosti za izgradnju
sudo apt install -y cmake cmake-data pkg-config python3-sphinx libcairo2-dev libxcb1-dev libxcb-util0-dev libxcb-randr0-dev libxcb-composite0-dev python3-xcbgen xcb-proto libxcb-image0-dev libxcb-ewmh-dev libxcb-icccm4-dev libxcb-xkb-dev libxcb-xrm-dev libxcb-cursor-dev libasound2-dev libpulse-dev libjsoncpp-dev libmpdclient-dev libcurl4-openssl-dev libnl-genl-3-dev
Kompajliranje i instalacija
git clone --recursive https://github.com/polybar/polybar
cd polybar
mkdir build
cd build
cmake ..
make -j$(nproc)
sudo make install
cd ../..
5. Kompajliranje Picoma s eksperimentalnim pozadinskim sustavima
Standardna radna okruženja koriste kompozitne sustave za upravljanje prozorima. Za BSPWM koristimo prilagođeni fork Picoma (koji održava ibhagwan), a koji podržava glatko dual-kawase zamućenje, prozirnost aktivnog prozora i elegantne zaobljene kutove prozora.
Preuzimanje ovisnosti
sudo apt install -y meson libxext-dev libxcb1-dev libxcb-damage0-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-render-util0-dev libxcb-render0-dev libxcb-randr0-dev libxcb-composite0-dev libxcb-image0-dev libxcb-present-dev libxcb-xinerama0-dev libpixman-1-dev libdbus-1-dev libconfig-dev libgl1-mesa-dev libpcre2-dev libevdev-dev uthash-dev libev-dev libx11-xcb-dev
Generiranje binarne datoteke pomoću Ninje
git clone https://github.com/ibhagwan/picom.git
cd picom
git submodule update --init --recursive
meson --buildtype=release . build
ninja -C build
sudo ninja -C build install
cd ..
6. Ključne komponente radne površine: Rofi i Alacritty
Nakon što smo instalirali osnovnu arhitekturu za upravljanje prozorima, preuzimamo izbornik aplikacija i glavno terminalsko okruženje:
sudo apt install -y rofi alacritty
Postavljanje prilagođenih konfiguracija
Preuzimamo repozitorij s unaprijed konfiguriranim datotekama (dotfiles) kako bismo izdvojili naše prilagođene postavke:
git clone https://github.com/lukapiplica/nordic-bspwm-dotfiles
mkdir -p ~/.config/alacritty
cp nordic-bspwm-dotfiles/alacritty/alacritty.yml ~/.config/alacritty/
Savjet za hardversko ubrzanje: Ako naiđete na pogrešku
GLSL 3.30 is not supportedna starijim grafičkim karticama ili u virtualnim okruženjima, prisilno pokrenite softversku rasterizaciju izmjenom konfiguracijske datoteke za Alacritty:sudo nano /usr/share/applications/com.alacritty.Alacritty.desktopZamijenite liniju
Exec=alacrittysExec=bash -c "LIBGL_ALWAYS_SOFTWARE=1 alacritty".
Poliranje sučelja i podešavanje okruženja
Sada konfiguriramo ZSH, teme, fontove, pozadine i zaključane zaslone kako bismo povezali i zaokružili estetiku nordijskog radnog prostora.
1. Tipografija i predmemoriranje fontova
Ubacite primarni monospace font za programiranje kako biste osigurali ispravan prikaz simbola i terminalskih znakova (glyphs):
sudo cp -r ~/Downloads/nordic-bspwm-dotfiles/Source_Code_Pro /usr/share/fonts/
fc-cache -fv
2. Postavljanje pozadinskih slika putem Feh-a
Za programsko upravljanje i postavljanje pozadinske slike pri prijavi u sustav, instalirajte feh alat za naredbeni redak:
sudo apt install feh -y
mkdir -p ~/Wall
cp -r ~/Downloads/nordic-bspwm-dotfiles/Wallpapers/ ~/Wall/
Ubacite naredbu za pokretanje pozadine u vašu bspwmrc datoteku kako bi se izvršila prilikom inicijalizacije window managera:
echo 'feh --bg-fill $HOME/Wall/Wallpapers/wallpaper2.jpeg &' >> ~/.config/bspwm/bspwmrc
3. Aktivacija prilagođenih Polybar tema
Izvezite naše prilagođene Polybar postavke i kopirajte potrebne TrueType fontove kako biste omogućili prikaz ikona na statusnoj traci:
mkdir -p ~/.config/polybar
cp -r ~/Downloads/nordic-bspwm-dotfiles/polybar/* ~/.config/polybar/
echo '~/.config/polybar/./launch.sh &' >> ~/.config/bspwm/bspwmrc
sudo cp ~/.config/polybar/fonts/* /usr/share/fonts/truetype/
fc-cache -fv
4. Optimizacija interaktivnog shella (ZSH i Powerlevel10k)
Promijenite zadano shell okruženje iz standardnog Basha u ZSH, a zatim preuzmite Oh-My-ZSH okvir (framework):
sudo apt install zsh -y
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
Primjena Powerlevel10k prompta
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
Izmijenite konfiguraciju okruženja:
- Otvorite profil vašeg shella (
nano ~/.zshrc). - Postavite liniju aktivne teme na:
ZSH_THEME="powerlevel10k/powerlevel10k". - Spremite i zatvorite. Pokrenite
source ~/.zshrcili upišitep10k configurekako biste prošli kroz vizualni asistent za postavljanje.
5. Razvoj u Vimu: Integracija nordijskih tema
Prenesite nordijsku paletu boja u Vim i instalirajte estetski dodatak za statusnu traku Vim-Airline:
mkdir -p ~/.vim/colors
cp ~/Downloads/nordic-bspwm-dotfiles/nord.vim ~/.vim/colors/
Klonirajte Airline proširenje:
git clone https://github.com/vim-airline/vim-airline.git ~/Downloads/vim-airline
cp -r ~/Downloads/vim-airline/* ~/.vim/
Aktivirajte konfiguracijska pravila u vašem profilu uređivača teksta:
echo 'colorscheme nord' >> ~/.vimrc
echo "let g:airline_theme='base16'" >> ~/.vimrc
6. Prilagodba Rofi izbornika aplikacija
Kopirajte datoteku Nord teme i konfigurirajte je kao primarno sučelje:
mkdir -p ~/.config/rofi/themes
cp ~/Downloads/nordic-bspwm-dotfiles/nord.rasi ~/.config/rofi/themes/
rofi-theme-selector
Aktivacija teme: Dođite do
Nord themeunutar izbornika, pritisnite Enter za pregled, te je primijenite na razini cijelog sustava pritiskom na Alt + a.Kako biste postavili Rofi kao vaš zadani pokretač aplikacija, ažurirajte svoje prečace na tipkovnici:
nano ~/.config/sxhkd/sxhkdrcIzmijenite kombinaciju tipki za pokretanje aplikacija s
dmenu_runnarofi -show drun.
Produktivnost radnog prostora i CLI alati
Kako bismo izgradili potpuno funkcionalnu razvojnu radnu stanicu, instalirat ćemo nekoliko programa za naredbeni redak i vizualnih alata koji će popuniti naše prilagođene radne prostore.

Instalacija prilagođenog CLI paketa alata
Instalirajte moderne vizualizatore, monitore hardvera sustava i upravitelje datoteka koristeći standardne repozitorije paketa:
# Monitor sustava (Htop)
sudo apt install htop -y
# Efekt matrične kiše na zaslonu (Cmatrix)
sudo apt install cmatrix -y
# Minimalistički preglednik slika (Sxiv)
sudo apt install sxiv -y
# Terminalski upravitelj datoteka (Ranger)
sudo apt install ranger -y
# Digitalni terminalski sat (Tty-clock)
sudo apt install tty-clock -y
Napredni vizualizatori i alati za informacije o sustavu
CAVA (Console-based Audio Visualizer)
Kompajlirajte CAVA-u za generiranje stupčastih vizualizatora na temelju ALSA/PulseAudio ulaznih signala u stvarnom vremenu:
sudo add-apt-repository ppa:hsheth2/ppa -y
sudo apt update
sudo apt install cava -y
pfetch (Minimalistički alat za prikaz informacija o sustavu)
git clone https://github.com/dylanaraps/pfetch.git ~/Downloads/pfetch
sudo install ~/Downloads/pfetch/pfetch /usr/local/bin/
Chafa (Alat za pretvaranje slika u znakove u terminalu)
Chafa analizira standardne slike i pretvara ih u vrlo detaljan prikaz u obliku znakova (character art) renderiran unutar samog terminala:
git clone https://github.com/hpjansson/chafa.git ~/Downloads/chafa
cd ~/Downloads/chafa
./autogen.sh
make
sudo make install
cd ~
Snake (Terminalska rekreacija klasika)
Rekreirajte klasičnu Nokia zmijicu koristeći python-pygame biblioteke:
sudo apt install python3-pip -y
python3 -m pip install -U pygame --user
git clone https://github.com/Unixado/Snake.git ~/Downloads/Snake
Pokrenite igru izravno iz terminalskih sesija:
python3 ~/Downloads/Snake/src/game.py

Lollypop (Moderni audio player za radnu površinu)
sudo add-apt-repository ppa:gnumdk/lollypop -y
sudo apt update
sudo apt install lollypop -y
Prilagodba GTK i Firefox estetike
Kako bi sučelje operativnog sustava izgledalo jedinstveno, aplikacije i internetski preglednici moraju dijeliti istu paletu boja.
1. Integracija sučelja radne površine putem LXAppearance-a
Za učitavanje i dodjeljivanje prilagođenih stilova widgeta, paketa ikona i pokazivača miša na laganim upraviteljima prozora, instalirajte LXAppearance:
sudo apt install lxappearance -y
Otvorite lxappearance kako biste odabrali i primijenili preuzete elemente nordijskog dizajna:
- GTK izgled sučelja: Nordic Dark theme
- Biblioteka ikona: Flattery Dark icons
- Paket pokazivača miša: Oreo Blue cursor
2. Minimalističko uređenje preglednika (Firefox i Minimal Functional Fox)
Preuzmite prilagođenu minimalističku userChrome konfiguraciju kako biste uklonili standardne naslovne trake, centrirali web elemente te uskladili rubove preglednika s nordijskom paletom boja:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/mut-ex/minimal-functional-fox/master/install.sh)"
cp -r ~/Downloads/nordic-bspwm-dotfiles/.firefoxthemes ~/
- Pokrenite Firefox.
- Idite na Preferences > Home (Postavke > Početna stranica).
- Pronađite opciju Homepage and new windows, odaberite Custom URLs, te unesite odredišnu stazu koja pokazuje na vašu lokalnu početnu stranicu:
file:///home/<VAŠE_KORISNIČKO_IME>/.firefoxthemes/startpage/Startpage/index.html - Ponovno pokrenite aplikaciju kako bi se primijenile promjene izgleda.
Prečaci na tipkovnici i navigacija radnom površinom
Popločani (tiling) upravitelji prozora optimiziraju produktivnost držeći vaše ruke na osnovnom redu tipkovnice. Tipka Windows/Super (super) konfigurirana je kao primarna modifikacijska tipka.
U nastavku se nalazi standardni referentni popis zadanih i prilagođenih prečaca na tipkovnici:
| Kombinacija tipki | Ciljani događaj / Radnja |
|---|---|
| super + Enter | Pokreće instancu Alacritty terminala s GPU ubrzanjem |
| super + Space | Otvara Rofi izbornik aplikacija za pokretanje grafičkih alata |
| super + Escape | Trenutačno ponovno učitava sxhkd konfiguracijska pravila |
| super + Alt + r | Ponovno pokreće BSPWM upravitelj prozora |
| super + w | Uništava/zatvara aktivni prozor u fokusu |
| super + [1-0] | Navigira između radnih prostora od 1 do 10 |
| super + g | Zamjenjuje prozor u fokusu s glavnim (master) okvirom |
| super + m | Uključuje/isključuje uvećanje izgleda na cijeli zaslon |
| super + [h,j,k,l] | Pomiče fokus prozora u određenom smjeru (Lijevo, Dolje, Gore, Desno) |
| super + Alt + [h,j,k,l] | Širi granice fokusiranog prozora prema van |
| super + Alt + Shift + [h,j,k,l] | Skuplja granice fokusiranog prozora prema unutra |
| super + s | Uključuje/isključuje plutajući način rada (floating mode) na odabranom prozoru |
| super + Ctrl + [Tipke sa strelicama] | Pomiče plutajući prozor po koordinatama |
Zaključak i profesionalni osvrt
Izgradnja okruženja radne površine iz modularnih CLI alata demonstrira fleksibilnost i dubinu sustava temeljenih na Linuxu. Osim čistog, minimalističkog nordijskog dizajna, ovaj BSPWM i Pop!_OS radni prostor nudi značajne prednosti u performansama: smanjeno opterećenje procesora i memorije, apsolutnu kontrolu nad mapiranjem prečaca te iznimno responzivan radni prostor skrojen za napredne tijekove razvoja softvera.
Bilo da ste programer, sistem administrator ili Linux entuzijast, izrada vlastitog radnog prostora vođenog tipkovnicom vrlo je isplativa investicija u vaše svakodnevno programersko iskustvo i operativnu učinkovitost.