Tutonaut
cowsay
Jede Minute aufs Neue beglückt ;)

Conky: Monitoring-Widgets für den Desktop gestalten

Conky ist ein Baukasten für individuelle Systemmonitore, die sich optional dezent in den Desktop-Hintergrund einfügen lassen. Aber Conky kann noch mehr!

Conky ist einfach großartig und sollte jedem Linuxer bekannt sein – nur beschreiben lässt es sich schwer in einem Wort. Conky erstellt Widgets für den Desktop, die Live- oder statische Daten zeigen. Im Gegensatz zu üblichen Widgets lassen sich diese aber quasi als Teil des Hintergrunds setzen – ganz ohne Fenster, nicht anklick- oder verschiebbar. Oder anders ausgedrückt: Ein Systemmonitor für den Desktop, den Ihr völlig frei designen und mit Inhalten versorgen könnt.

Systemmonitor!

Nun, eigentlich lässt sich Conky doch gut in ein Wort fassen, nämlich Systemmonitor. Sagt Conky auch selbst. Allerdings bringt das zwei Problemchen mit sich: Zum einen wird es dem Funktionsumfang nicht wirklich gerecht und zum anderen gerät das „Widget-hafte“ dabei etwas in den Hintergrund. Dabei ist eben gerade die transparente, fensterlose Variante eines der Dinge, die Conky so spaßig machen. Übrigens: Entdecken kann man Conky am besten via Bunsenlabs – eine sehr interessante, leichtgewichtige Linux-Distri.

conky
Einige Beispiele von mitgelieferten Configs in Bunsenlabs.

Dennoch steht das Systemmonitoring im Vordergrund: Conky kann über 300 integrierte Objekte nutzen, beispielsweise Werte zu CPU, Arbeitsspeicher und Festplatten, Email-Konten, diverse Musik-Player, Prozesse, Netzwerkverkehr und vieles mehr. Doch es lassen sich eben auch beliebige sonstige Skripte, Programme und Webseiten abgreifen. So könntet Ihr zum Beispiel Sportergebnisse einblenden oder Nachrichten zu bestimmten Stichworten.

Wie erwähnt, kann Conky Widgets im Hintergrund platzieren – muss aber nicht. Alternativ lassen sich auch echte, verschiebbare Fenster basteln. Basteln ist übrigens ein gutes Stichwort: Conky ist Bastelei – aber auf die angenehme Art! Soll heißen: Es gibt viele Optionen und es lässt sich fast alles designen, aber es ist ziemlich simpel, eher Fleißarbeit als technisch kompliziert. Eigentlich ist es ein Spielzeug 😉

Die Arbeitsweise: Die gesamte Konfiguration findet in einer simplen Textdatei statt, die Ihr Conky beim Start einfach übergebt. Für den Anfang könnt Ihr am besten eine der vielen hier verfügbaren Konfigurationen nehmen, einzelne Werte ändern und die Auswirkungen betrachten. Oder Euch gleich daraus ein eigenes Conky bauen.

In der Anleitung zeigen wir Euch, wie Ihr Conky installiert, eine Minimal-Konfiguration anlegt und wie Ihr von dort zu Eurem persönlichen Monitor gelangt. Hier läuft das Ganze übrigens unter Bunsenlabs, und unter Debian/LXDE funktioniert es ebenfalls. Je nach Desktopumgebung kann es schon mal vorkommen, dass Optionen zur Darstellung abweichen – im Zweifelsfall im Conky-Wiki auf der Homepage nachschlagen.

1. Conky installieren

Die Installation ist zumindest unter Debian-/Ubuntu-mäßigen Linuxen trivial wie immer:

sudo apt-get install conky

Ihr könnt es auch direkt per

conky

mit der Standardkonfiguration starten – und bei Bedarf mit STRG+C wieder beenden.

2. Minimal-Konfiguration anlegen

Zunächst legt Ihr eine Datei ~/.mein_conky (oder wie auch immer) mit folgendem Inhalt ein:

conky.config = {
    alignment = 'down_left',
    default_outline_color = 'white',
    default_shade_color = 'white',
    double_buffer = true,
    font = 'DejaVu Sans Mono:size=15',
    gap_x = 5,
    gap_y = 10,
    own_window = true,
    own_window_class = 'Conky',
    own_window_type = 'desktop',
    update_interval = 0.5,
    use_xft = true,
    own_window_transparent = true,
}

conky.text = [[
CPU Usage: $cpu% ${cpubar 4}
${exec echo Hallo Welt}
]]

Bevor es weiter geht, startet Conky nun mit dieser Konfiguration:

nutzer@linux:~$ conky --config=mein_conky

Das erzeugt folgendes Widget auf dem Desktop, mit den Inhalten „Hallo Welt“ und der CPU-Auslastung:

conky
Eine ganz simple Conky-Konfiguration in Aktion.

Ihr seht in der Datei, dass es zwei Bereiche gibt: Im oberen Teil conky.config gestaltet Ihr das Design, im unteren Teil conky.text legt Ihr die Inhalte fest.

Design: conky.config

Das oben aufgeführte Design zeigt den gewünschten Hintergrund-Widget-Effekt, verzichtet ansonsten aber auf alles Überflüssige – für den Start! Die meisten Punkte dürften selbsterklärend sein, einige nicht: double_buffer, own_window, own_window_class, own_window_transparent, own_window_type und use_xft dienen dazu, das Fenster transparent und flickerfrei darzustellen – andernfalls kommen sich Conky und andere Programme in die Quere, die ebenfalls das Hauptfenster (also den Desktop) zeichnen wollen.

Wichtig ist natürlich das update_interval: Systeminformationen wie den CPU-Status wollt Ihr vielleicht sekundengenau haben, die Abfrage von Webseiten wäre eher eine Frage von Stunden. Natürlich könnt Ihr auch mehrere Conky-Konfigurationen parallel laufen lassen.

Inhalt: conky.text

Auch bei den Inhalten soll es minimal bleiben: Hier wird zunächst ganz simpel Text „CPU Usage: “ angegeben, dann folt ein Conky-internes Objekt, nämlich „$cpu% ${cpubar 4}“. Die in Conky eingebauten Funktionen könnt Ihr ganz trivial über solche Variablen verwenden – einfacher geht es kaum.

Die zweite Zeile zeigt beispielhaft am Befehl echo Hallo Welt, wie man externe Befehle/Programme/Skripte bemüht, nämlich wie so oft aus dem Terminal bekannt mit exec.

Auch wenn es nur zwei triviale Zeilen sind, reißen sie doch das Potenzial von Conky an: Interne Objekte sind sehr einfach zu nutzen, externe Infos können genauso einfach ergänzt werden. Und was hinter dem exec läuft, liegt freilich ganz an Euch.

Eigene Conkys erstellen

Das Prinzip sollte klar sein, jetzt müsst Ihr Euch mit den eingebauten Objekten/Variablen beschäftigen – sprich ein wenig im Katalog blättern, und zwar mit:

man -P "less -p 'OBJECTS/VARIABLES'" conky

Das Gleiche ist nochmal bei den Design-Optionen:

man -P "less -p 'CONFIGURATION SETTINGS'" conky

Und wenn Ihr dann noch nicht genugt habt, könnt Ihr auch komplette LUA-Skripte schreiben:

man -P "less -p 'LUA API'" conky

Zugegeben, das ist jede Menge Stoff, aber wie gesagt: Im Grunde nur Fleißarbeit. Aber mal ehrlich, wer hätte denn nicht gerne eine fortune-gefütterte Kuh, die minütlich Weisheiten ausspuckt auf dem Desktop?

cowsay
Jede Minute aufs Neue beglückt 😉

Das ist übrigens nicht das erste Auftreten der Glückskekskuh. Mehr zu Bunsenlabs findet Ihr hier und mehr zu 31 weiteren Distributionen hier und hier.

Mirco Lang

Mirco Lang

Freier Journalist, Exil-Sauerländer, (ziemlich alter) Skateboarder, Dipl.-Inf.-Wirt, Einzelhandelskaufmann, Open-Source-Nerd, Checkmk-Handbuchschreiber. Ex-Saturn'ler, Ex-Data-Becker'ler, Ex-BSI'ler.

Computer-Erstkontakt: ca. 1982 - der C64 des großen Bruders eines Freunds.

Wenn Du hier mehr über Open Source, Linux, Bastelkram oder auch Windows-Basics lesen und Tutonaut unterstützen möchtest:
Spendier mir einen Kaffee via Paypal. Schon mal im Voraus: Danke!

Nicht verpassen: cli.help

4 Kommentare

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.

Do NOT follow this link or you will be banned from the site!