Polybar – Die Statusleiste unter Linux aufhübschen

Viele Distributionen sehen schick aus und bringen viele Informationen auf die Statusleiste. Wem das jedoch nicht zusagt und von einer Statusleiste mit mehr Anpassungsmöglichkeiten geträumt wird, dann ist Polybar genau das richtige Tool. Die Polybar ist ein schnelles und effizientes Werkzeug zur Erstellung von wunderschönen Statusleisten auf Linux-Distributionen.

polybar

In neueren Distributionen lässt sich die Polybar via Paketmanager installieren, unter Ubuntu 20.04 LTS ist diese Variante allerdings noch nicht vorhanden, daher wird in diesem Artikel auch auf den Buildprozess eingegangen.

Geduldige warten bis zum Release von Ubuntu 22.04 LTS in wenigen Wochen, dort sollte das Polybar Paket mit an Bord sein.

polybar-statusleiste

Polybar unter Ubuntu 21.04 oder Debian 11 installieren

Wie bereits erwähnt ist bei neuen Systemen eine Installation via Paketmanager möglich

sudo apt install polybar

Auf älteren Ubuntu Systemen könnte ebenfalls auf ein PPA zurückgegriffen werden, allerdings ist dort nicht die neueste Version enthalten, daher nicht zu empfehlen.

sudo add-apt-repository ppa:kgilmer/speed-ricer
sudo apt-get update

Snap würde natürlich auch funktionieren, wenn gewünscht

sudo apt update 
sudo apt install snapd
sudo snap install polybar-git --edge

polybar-features

Polybar unter Ubuntu 20.04 LTS selbst kompilieren und installieren

Um das Paket selbst zu bauen, werden zunächst ein paar Pakete benötigt.

sudo apt-get install cmake cmake-data libcairo2-dev libxcb1-dev libxcb-ewmh-dev libxcb-icccm4-dev libxcb-image0-dev libxcb-randr0-dev libxcb-util0-dev libxcb-xkb-dev pkg-config python3-xcbgen xcb-proto libxcb-xrm-dev libasound2-dev libmpdclient-dev libiw-dev libcurl4-openssl-dev libpulse-dev libxcb-composite0-dev i3 alsa-oss xcb libxcb-ewmh2

Nun kann das Git Repository geklont werden.

git clone https://github.com/jaagr/polybar.git

Danach den Buildvorgang starten.

polybar && ./build.sh

Ist der Vorgang erfolgreich gewesen, kann die Polybar testweise gestartet werden.

polybar example

Weitere Konfigurationen werden via config.ini gemacht, dort kann zum Beispiel der Default Name „example“ geändert werden.

Die Beispielkonfiguration wird zunächst ins eigene Profil kopiert, dort können dann weitere Anpassungen vorgenommen werden. So lassen sich dort verschiedene Module aktivieren oder eigene einbinden. Einen Überblick der vorhandenen Funktionen könnt ihr der Grafik weiter oben entnehmen.

sudo mkdir -p ~.config/polybar

sudo cp /usr/local/share/doc/polybar/examples/config.ini ~.config/polybar/config.ini

Anpassungen & Fehlerbehebung

Polybar wird nach dem Start nicht angezeigt

Am besten lässt sich dieses Problem mit dem Ausblenden der Top-Leiste mit der Erweiterung Hide Top Bar lösen.

Dazu muss zunächst folgendes Paket installiert werden

sudo apt install chrome-gnome-shell

Danach lässt sich die Erweiterung leicht direkt via Browser aktivieren, dazu wird auf der folgenden Seite einfach der Schalter auf On gestellt.

https://extensions.gnome.org/extension/545/hide-top-bar/

Nun sollte bei einem Start von Polybar die vorhandene Statusleiste automatisch im Hintergrund verschwinden.

Natürlich lassen sich beide Statusleisten auch parallel anzeigen, dazu kann die Polybar einfach unter die vorhandene gesetzt werden in dem das Offset in der Konfiguration angepasst wird.
 

sudo vim ~.config/polybar/config.ini

offset-y = 27

Autostart von Polybar einrichten

Mit Ubuntu Desktop lässt sich das schnell über die Autostartfunktion regeln.

Falls nicht vorhanden (in Ubuntu 20.04 LTS dabei) kann das Autostartpaket nachinstalliert werden.

sudo apt install gnome-startup-applications

polybar-autostart

Alternativ lässt sich der Autostart auch über die Konsole regeln.

mkdir -p ~/.config/autostart/
cat <<EOF > ~/.config/autostart/polybar.desktop
[Desktop Entry]
Name=Polybar
Type=Application
Hidden=false
Exec="Pfad zur Polybar"
EOF

Wie stelle ich die Transparenz der Statusleiste ein?

In der config.ini den Wert der Hintergrundfarbe anpassen.

  • FF steht für undurchsichtig
  • 00 steht für Transparenz

Da es sich um Hexadezimalwerte handelt (0, 1, 2,.., 9, A, B, C, D, E, F ) bietet sich ein Mittelwert an.

Background = #aa282A2E

polybar-config

Jetzt aber viel Spaß beim Gestalten der eigenen Statusleiste.

Weitere Informationen und fertig Themes gibt es unter: