Waybar & Desktop

Waybar konfigurieren: Eine verständliche Statusleiste für Sway

Statusanzeigen ohne Cloud-Dienst

Die hier gezeigten Module lesen lokale Uhr-, Audio- und Systemdaten. Eigene Skripte oder später ergänzte Netzwerkmodule können zusätzliche Datenwege eröffnen.

In diesem Artikel
  1. Zwei Dateien, zwei Aufgaben
  2. Was zeigt meine veröffentlichte Leiste?
  3. Eine eigene, kleine Testkonfiguration
  4. Ein lesbares Gruvbox-artiges Design
  5. Die Testleiste starten und wieder schließen
  6. Übung: Die CPU-Anzeige ergänzen
  7. Wenn ein Modul oder die gesamte Leiste fehlt
  8. Datenschutz und der Übergang zum Alltag
  9. Beispiel und Referenzen

Eine kleine Uhr und eine Lautstärkeanzeige reichen oft aus, um einen minimalistischen Desktop angenehm zu benutzen. Meine Waybar-Datei im Cthulhu-Repository ist deshalb ein guter Einstieg. Sie zeigt, wie aus wenigen Einstellungen eine Statusleiste entsteht.

Dieses Tutorial setzt eine laufende Sway-Sitzung und installiertes Waybar voraus. Wir legen eine eigene Testkonfiguration an und starten sie aus einem Terminal. Dadurch bleibt deine bisherige Leiste erhalten, während du Inhalt und Gestaltung kennenlernst. Den zugehörigen Desktop erklärt der Sway-Artikel.

Zwei Dateien, zwei Aufgaben

Die Konfiguration heißt üblicherweise config oder config.jsonc unter ~/.config/waybar/. JSONC beschreibt Inhalte und Verhalten und erlaubt auch Kommentare. Die CSS-Datei gestaltet Schrift, Farben und Abstände.

DateiTypische Aufgabe
config.jsoncPosition, Monitor, sichtbare Module, Format und Aktualisierung
style.cssHintergrund, Textfarbe, Schrift und Modulabstände

Eine falsche Modulliste löst du in der Konfiguration. Eine schlecht lesbare Textfarbe löst du in CSS. Waybar verwendet GTK-CSS; nicht jede CSS-Eigenschaft aus einem Webbrowser steht hier genauso zur Verfügung.

Was zeigt meine veröffentlichte Leiste?

Die entscheidenden Zeilen meines Beispiels lauten:

"position": "top",
"output": "DP-1",
"modules-left": [],
"modules-center": ["clock"],
"modules-right": ["pulseaudio"]

Die Uhr steht mittig, die Lautstärke rechts, und die Leiste erscheint auf meinem Ausgang DP-1. Diesen Monitornamen musst du an deinen Rechner anpassen oder die Auswahl weglassen. Die Uhr hat Sekunden und öffnet bei einem Klick gsimplecal; die Lautstärke öffnet pavucontrol. Diese Programme müssen separat vorhanden sein.

Die Datei definiert außerdem Netzwerk-, CPU-, Temperatur- und Speicheroptionen. Sie stehen aber nicht in den sichtbaren Modullisten. Ein definierter Block allein zeigt daher noch nichts an. Das ist der wichtigste Unterschied zwischen „konfiguriert“ und „auf der Leiste eingeblendet“.

Eine eigene, kleine Testkonfiguration

Lege bei Bedarf den Konfigurationsordner an:

mkdir -p ~/.config/waybar

Speichere die folgende vollständige JSON-Datei mit deinem Editor als ~/.config/waybar/tutorial.jsonc. Verwende einen anderen Namen, wenn dort schon eine eigene Datei liegt. Die Testleiste sitzt unten und benötigt keine Symbole aus einer Nerd Font:

{
  "layer": "top",
  "position": "bottom",
  "modules-center": ["clock"],
  "modules-right": ["pulseaudio"],
  "clock": {
    "format": "{:%H:%M}",
    "interval": 60
  },
  "pulseaudio": {
    "format": "Vol {volume}%",
    "format-muted": "Muted"
  }
}

Kommas trennen Eigenschaften; nach der letzten Eigenschaft eines Objekts steht hier kein Komma. Die geschweiften Klammern in {volume} gehören zum Format des Audiomoduls. Die Uhr verwendet ihre eigenen Zeitformat-Platzhalter.

Das Modul pulseaudio nutzt die entsprechende Audioschnittstelle. Diese kann bei einem PipeWire-Aufbau durch PipeWire-Pulse bereitgestellt werden. Der Name des Moduls verlangt nicht automatisch einen zweiten, eigenständigen PulseAudio-Dienst.

Ein lesbares Gruvbox-artiges Design

Speichere als zweite Testdatei ~/.config/waybar/tutorial.css:

* {
  font-family: sans-serif;
  font-size: 13px;
}

window#waybar {
  background: #282828;
  color: #ebdbb2;
}

#clock, #pulseaudio, #cpu {
  padding: 0 10px;
}

Der dunkle Hintergrund und die helle Schrift passen zur Farbwelt meines Desktops. Der einfache Systemfont hält den Einstieg unabhängig von besonderen Symbolschriften. #clock bezeichnet das Uhrmodul; die Selektoren beziehen sich auf Waybars Elemente.

Beginne mit Kontrast und Lesbarkeit. Farben, Rahmen und zusätzliche Effekte kannst du danach einzeln ergänzen. Eine beeindruckende Leiste hilft wenig, wenn du den Batteriestand oder eine Stummschaltung kaum erkennen kannst.

Die Testleiste starten und wieder schließen

Starte genau die beiden angelegten Dateien:

waybar -c ~/.config/waybar/tutorial.jsonc -s ~/.config/waybar/tutorial.css

Unten sollten Uhr und Lautstärke erscheinen. Das Terminal bleibt mit diesem Prozess verbunden und zeigt seine Meldungen. Eine zusätzlich laufende Leiste kann dabei Bildschirmfläche beanspruchen; das ist die getrennte Vorschau, keine zweite dauerhaft eingerichtete Autostart-Leiste.

Beende diese Vorschau mit Strg + C im zugehörigen Terminal. Deine normale Leiste bleibt bestehen. Änderungen kannst du anschließend speichern und denselben Vorschau-Befehl erneut ausführen. Für den Einstieg ist das nachvollziehbarer als pauschal alle Waybar-Prozesse zu beenden.

Übung: Die CPU-Anzeige ergänzen

Ersetze in der Testdatei die rechte Modulliste durch:

"modules-right": ["cpu", "pulseaudio"]

Ergänze auf derselben Objektebene einen CPU-Block. Achte auf das trennende Komma vor oder nach diesem neuen Eintrag:

"cpu": {
  "format": "CPU {usage}%",
  "interval": 2
}

Nach dem nächsten Vorschau-Start sollte rechts vor der Lautstärke ein CPU-Prozentwert erscheinen. Er ist eine kurze Auslastungsanzeige, keine umfassende Diagnose eines langsamen Systems. Entferne zum Zurücknehmen cpu wieder aus der Modulliste; der ungenutzte Einstellungsblock kann stehen bleiben.

Wenn ein Modul oder die gesamte Leiste fehlt

  • Keine Leiste: Prüfe die Ausgabe im Terminal, den Dateipfad und ob du den Befehl in der laufenden Sway-Sitzung gestartet hast.
  • JSON-Fehler: Kontrolliere Kommas, Anführungszeichen und geschlossene Klammern an der gemeldeten Stelle.
  • Ein Modul fehlt: Prüfe seine Schreibweise in der sichtbaren Liste und die Verfügbarkeit im installierten Waybar-Build.
  • Kein Audiowert: Prüfe den laufenden Audiostack und dessen Standardausgabe, statt zuerst die Farben zu ändern.
  • Leere Kästchen statt Icons: Prüfe die verwendete Schrift. Unser Textbeispiel umgeht diese Abhängigkeit.

Bei übernommenen Konfigurationen ist auch ein falscher output-Name eine häufige Ursache. Die Testdatei lässt ihn bewusst weg. In Sway liefert swaymsg -t get_outputs deine tatsächlichen Ausgänge.

Datenschutz und der Übergang zum Alltag

Die gezeigten Anzeigen lesen lokale Zeit-, Audio- und CPU-Daten. Sie brauchen keinen Cloud-Dienst. Das gilt nicht automatisch für jede fremde Waybar-Konfiguration: Ein Custom-Modul kann ein Skript starten, das beispielsweise Wetterdaten aus dem Netz abruft. Prüfe deshalb auch solche Skripte.

Wenn dir die Testleiste gefällt, sichere deine regulären Konfigurationsdateien und übernimm die gewünschten Änderungen gezielt. Richte nur einen passenden Autostart-Aufruf ein. Meine Sway-Datei startet Waybar bereits; zusätzliche Einträge können doppelte Leisten verursachen. Für den Rückweg reichen bei dieser Übung Strg + C und das Beibehalten deiner ursprünglichen Dateien.

Beispiel und Referenzen

Meine Datei und die Waybar-Dokumentation wurden am 7. Oktober 2026 geprüft. Die Testdateien hier sind bewusst vereinfachte Lernbeispiele.