Diese Seite wird aktuell von cornix überarbeitet. Bitte hier keine Änderungen mehr vornehmen, sondern in Baustelle/Conky!

Conky
ist ein vielseitiger Systemmonitor für den Desktop. Neben Statistiken zu allen denkbaren Ressourcen wie Prozessor-, Speicher- und Netzwerk-Auslastung bringt Conky Email-Benachrichtigungen und Titelanzeigen für den Music Player Daemon und verschiedene Audioplayer auf den Desktop. Die Funktionen von Conky sind zusätzlich durch Skripte erweiterbar.
Conky ist als Fork auf der Codebasis des Programm Torsmo
entstanden und ist als besonders Ressourcen-schonender Systemmonitor, der individuell konfigurierbar ist, bekannt.
Durch die Vielzahl der Funktionen kann Conky aber auch bei entsprechenden Einstellungen einen großen Teil der Systemressourcen belegen, insbesondere die Variablen zum Einfügen von Log-Dateien ($tail), zur Prozess-Auflistung ($top), Schrift-Einstellung ($font) und für Graphen ($graph) verursachen relativ hohe Last.
Conky ist häufig Bestandteil des Desktops bei Linux-Distributionen, die mit schlanken Fenstermanagern wie Fluxbox arbeiten, da Conky die Ausgaben direkt in das Root-Fenster schreiben kann. Da aber auch die Möglichkeit besteht, Conky in einem eigenen Fenster laufen zu lassen, das undekoriert und transparent ist, stellt eine direkte Anzeige auf dem Desktop auch unter Xfce kein Problem dar. Für den GNOME- und KDE-Desktop gibt es Hilfsmittel, damit die Anzeige trotz technischer Hindernisse gelingt.
In der Standard-Konfiguration, die auch für das Paket aus den offiziellen Quellen genutzt wurde, stehen nicht alle Funktionen zur Verfügung. Um beispielsweise Anzeigen des Audacious-Audioplayer zu benutzen, muss das Programm mit entsprechenden Parametern kompiliert werden. Da Conky in den Quellen enthalten ist, ist dies sehr leicht mit apt-get zu bewerkstelligen.
Die folgenden Schritte setzten Root-Rechte voraus. Man installiert die Abhängigkeiten und lädt den Quellcode von Conky:
cd /tmp apt-get build-dep conky apt-get source conky
Stattdessen kann natürlich auch die aktuelle Version von der Projektseite
benutzt werden und die Abhängigkeiten können auch auf anderem Wege installiert werden. Es handelt sich dabei um folgende Pakete:
libx11-dev
libxext-dev
libxft-dev
x-dev
libxt-dev
libxdamage-dev
libglib2.0-dev
libxml2-dev
libcurl4-gnutls-dev
libiw-dev
Paketliste zum Kopieren:
sudo apt-get install libx11-dev libxext-dev libxft-dev x-dev libxt-dev libxdamage-dev libglib2.0-dev libxml2-dev libcurl4-gnutls-dev libiw-dev
sudo aptitude install libx11-dev libxext-dev libxft-dev x-dev libxt-dev libxdamage-dev libglib2.0-dev libxml2-dev libcurl4-gnutls-dev libiw-dev
Anschließend wechselt man in den Ordner mit dem Quellcode und kompiliert das Programm mit den gewünschten Optionen [7]. In diesem Beispiel wird die standardmäßig deaktivierte Unterstützung des Audacious-Audioplayers aktiviert. Alle verfügbaren Optionen können mit dem Befehl ./configure --help abgefragt werden.
cd conky-<Version>/ ./configure --enable-audacious make checkinstall
Anschließend kann das erstellte Debian-Paket gesichert werden (z.B. falls es auf weiteren Rechnern benutzt werden soll) und das /tmp-Verzeichnis aufgeräumt werden.
Zunächst sollte eine (versteckte) Konfigurationsdatei .conkyrc im Homeverzeichnis des Benutzers erstellt werden. Es bietet sich an, die Beispieldatei aus der Dokumentation zu entpacken [3] und umzubenennen. Seit Ubuntu Intrepid Ibex 8.10 kann das beispielsweise im Terminal mit folgendem Befehl [4] geschehen:
zcat /usr/share/doc/conky/examples/conky.conf.gz > ~/.conkyrc
In den früheren Paket Versionen hat sich der Pfad ein wenig geändert und deswegen sieht der Befehl wie folgt aus:
zcat /usr/share/doc/conky/examples/conkyrc.sample.gz > ~/.conkyrc
Weitere Beispiel-Konfigurationen mit Bildschirmfoto, Konfigurationsdatei und zusätzlichen Skripten findet man auf der Projektseite
und in verschiedenen Foren-Threads.
Conky kann nun über den Befehl conky gestartet werden [5], sofern nicht noch die Konfigurationsdatei ~/.conkyrc angepasst werden soll [6].
Um nach einer Änderung an der .conkyrc Conky neu zu starten, kann folgender Befehl verwendet werden:
killall -SIGUSR1 conky
![]() |
| Ein Conky Beispiel |
| .conkyrc, Public-IP-Skript |
Dem Befehl conky können verschiedene Startparameter mitgegeben werden, deren Funktionen jedoch größten Teils auch über Konfigurationsdateien genutzt werden können.
| Parameter | Argument | Funktion |
-v, -V | Versionsangabe anzeigen und beenden | |
-a | Ausrichtung | Ausrichtung auf dem Bildschirm, top/bottom, left/right oder none |
-b | double buffering benutzen | |
-c | Datei | Konfigurationsdatei, die statt der ~/.conkyrc benutzt werden soll |
-d | "Daemonize". Conky im Hintergrund ausführen. | |
-f | Schriftart | Schriftart setzten |
-h | Hilfe anzeigen und beenden | |
-o | Conky im eigenen Fenster starten | |
-t | Text, Variablen | Text der angezeigt wird. Hochkommata setzten (z.B. -t ’ $uptime ’)! |
-u | Sekunden | Update Intervall der Anzeige |
-w | Fenster-ID | Fenster, in das die Anzeige geschrieben wird. |
-x | X-Koordinate | X-Position der Anzeige |
-y | Y-Koordinate | Y-Position der Anzeige |
Die Konfigurationsdatei ~/.conkyrc besteht aus zwei Teilen: im ersten Teil werden Programm-Einstellungen festgelegt, im zweiten Teil, was auf dem Desktop angezeigt wird. Der zweite Teil wird mit einer Zeile eingeleitet, die nur den Begriff TEXT enthält.
In folgender Tabelle sind nur einige Einstellungen aufgeführt, alle verfügbaren Möglichkeiten sind in der Projekt-Dokumentation
zu finden. Bei Variablen denen ein Wahrheitswert zugewiesen wird, sind die Angaben true oder false und yes oder no möglich.
| Variable | Verwendung |
alignment | Ausrichtung auf dem Bildschirm, mögliche Werte sind top_left, top_right, bottom_left, bottom_right und none |
gap_x | Linker oder Rechter Abstand in Pixeln von der Position, die über alignment festgelegt wurde. |
gap_y | Oberer oder unterer Abstand in Pixeln von der Position, die über alignment festgelegt wurde. |
maximum_width | Maximale Breite des Fensters |
minimum_size | Minimale Breite des Fensters |
own_window | Eigenes Fenster benutzen (true/false). Voraussetzung für gleichzeitigen Gebrauch von Conky und Nautilus. |
own_window_colour | Wenn kein transparenter Hintergrund verwendet wird, kann eine Hintergrund-Farbe gewählt werden. Möglich sind Hexadecimalwerte (z.B. #ffffff) oder RGB-Farbnamen (siehe /usr/lib/X11/rgb.txt) |
own_window_hints | Verhalten des Fensters (undecorated, below, sticky, skip_taskbar, skip_pager). |
own_window_title | Manuelles setzen des Fensternamens. Standard ist <hostname> - conky. |
own_window_transparent | (Pseudo-) Transparenter Hintergrund (true/false). |
own_window_type | Art des Fensters. normal (Standard), desktop (keine Fensterdekoration, Sticky auf allen Arbeitsflächen, nicht im Pager aufgeführt) oder override (wird nicht durch den Fenstermanager kontrolliert). |
draw_borders | Rahmen um Text. |
draw_graph_borders | Rahmen um Graphen. |
border_margin | Rahmen-Abstand in Pixeln. |
border_width | Rahmen-Breite in Pixeln. |
stippled_borders | Abstände gestrichelter Rahmen gemessen in Pixeln. |
default_color | Standard Text- und Rahmen-Farbe. |
font | Schriftart |
uppercase | Verwende nur Großbuchstaben (true/false) |
use_xft | Benutze Xft (Anti-Aliasing für Schrift etc.) |
xftalpha | Alpha-Wert der Xft-Schriftart. Muss ein Wert zwischen 1 und 0 sein. |
xftfont | Xft Schriftart, die verwendet werden soll. |
use_spacer | Setzt Abstände hinter bestimmte Objekte, damit diese andere nicht verschieben. Dies funktioniert nur mit Mono-Schriften wie "Bitstream Vera Sans Mono". |
double_buffer | Benutzen des dbe-Modul des XServer (beseitigt Flackern). Es wird dringend empfohlen, dies nur zu verwenden, wenn Conky in einem eigenen Fenster läuft, damit der Buffer nicht zu groß wird. |
total_run_times | Gesamtzahl der Updates bis Conky beendet wird. Mit dem Wert 0 läuft Conky endlos. |
update_interval | Zeitabstand zwischen Auffrischungen der Anzeige in Sekunden |
imap | Standard IMAP-Mailserver. Argumente sind: host user pass [-i interval] [-f folder] [-p port] [-e command]. Standard-Port ist 143, Standard-Ordner ist INBOX, Standard-Intervall ist 5 Minuten. Wird als Passwort ein * verwendet, wird das Passwort beim Start von Conky abgefragt. |
mail_spool | Mail-Spool für die Email-Eingangsprüfung |
pop3 | Standard POP3-Mailserver. Argumente sind: host user pass [-i interval] [-p port] [-e command]. Standard-Port ist 110, Standard-Intervall ist 5 Minuten. Wird als Passwort ein * verwendet, wird das Passwort beim Start von Conky abgefragt. |
TEXT | Danach beginnt die Eingabe von Variablen und Text für die Anzeige |
Die Anzeige wird vom TEXT-Abschnitt bestimmt; in folgender Tabelle sind nur einige Variablen aufgeführt, alle verfügbaren Möglichkeiten sind in der Projekt-Dokumentation
zu finden.
![]() |
| Conky im Ubuntu Studio-Look |
| .conkyrc, Public-IP-Skript |
| Variable | Argumente | Verwendung |
kernel | Kernelversion | |
time | z.B.: ${time %a %d. %b %k:%M} | Datum und Uhrzeit (im Beispiel: "Di 30. Okt 21:58") |
uptime | Laufzeit des Rechners | |
acpitemp | Temperatur des Prozessors | |
cpu | Prozessor-Auslastung in Prozent | |
cpubar | Länge in Pixeln | CPU Auslastung als Leisten dargestellt |
freq | aktuelle Taktfrequenz des Prozessors | |
mem | Verwendeter Arbeitsspeicher | |
membar | Länge in Pixeln | Speicher-Auslastung als Leisten dargestellt |
memperc | Speicher-Auslastung in Prozent | |
memmax | Speichermenge | |
swap | Verwendeter Swap-Speicher | |
swapbar | Länge in Pixeln | Swap-Speicher-Auslastung als Leisten dargestellt |
swabperc | Swap-Speicher-Auslastung in Prozent | |
swabmax | Swap-Speichermenge | |
addr | Interface, z.B. eth0 | Anzeige der IP-Adresse für Netzwerkinterface |
linkstatus | Interface, z.B. ath0 | Signalstärke bei Wireless LAN |
downspeed | Interface, z.B. eth0 | Download-Geschwindigkeit in kbyte/s |
downspeedf | Interface, z.B. eth0 | Download-Geschwindigkeit in kbyte/s mit einer Dezimalstelle |
downspeedgraph | Interface Höhe in Pixeln,Breite in Pixeln, z.B eth0 32,120 | Download-Geschwindigkeit als Graph |
upspeed | Interface, z.B. eth0 | Upload-Geschwindigkeit in kbyte/s |
upspeedf | Interface, z.B. eth0 | Upload-Geschwindigkeit in kbyte/s mit einer Dezimalstelle |
upspeedgraph | Interface Höhe in Pixeln,Breite in Pixeln, z.B eth0 32,120 | Upload-Geschwindigkeit als Graph |
wireless_ap | Interface, z.B. ath0 oder wlan0 | MAC-Adresse des AP |
wireless_bitrate | Interface, z.B. ath0 oder wlan0 | Bitrate der Verbindung |
wireless_essid | Interface, z.B. ath0 oder wlan0 | Essid des AP |
wireless_mode | Interface, z.B. ath0 oder wlan0 | Mode der Schnittstelle |
wireless_link_bar | Höhe in Pixeln Interface, z.B 8 ath0 | Signalstärke als Leiste dargestellt |
wireless_link_qual | Interface, z.B. ath0 oder wlan0 | Signalstärke in % |
acpiacadapter | Rechner am Stromnetz oder Batterie | |
battery | Akku, z.B. BAT0 | Status der Batterie (Standard ist BAT0) |
fs_size | Mountpoint, z.B. /dev/sda1 | Größe einer Partition |
fs_used | Mountpoint, z.B. /dev/sda1 | Verbrauchter Speicherplatz einer Partition |
fs_free | Mountpoint, z.B. /dev/sda1 | Freier Speicherplatz einer Partition |
exec | Befehl | Ausführen eines beliebigen Befehls |
execi | Intervall Befehl | Ausführen eines Befehls in einem bestimmten Intervall (Sekunden) |
if_running | Prozess | Wenn ein Prozess existiert; Abschluss mit $endif |
if_existing | Datei | Wenn eine Datei existiert; Abschluss mit $endif |
if_mounted | Mountpoint, z.B. /media/usb0 | Wenn ein Datenträger eingehangen ist; Abschluss mit $endif |
Conky kann für verschiedene System-Ressourcen Diagramme in Form von Leisten und Graphen darstellen. Als Beispiel dient hier die Auslastung der Netzwerkkarte eth0. Bei einem Graphen für die Netzwerk-Auslastung müssen das Interface (eth0), Höhe und Breite (32,120), die Gradienten-Farben (efefef, 171717) und optional die Skalierung (2) angegeben werden.
Down: ${downspeedf eth0} k/s ${offset 80}Up: ${upspeedf eth0} k/s
${downspeedgraph eth0 32,120 efefef 171717 2} ${offset 40} ${upspeedgraph eth0 32,120 efefef 171717 2}Der Text kann in Ausrichtung, Format und Farbe unterschiedlich gestaltet werden. Dazu wird einer Variablen ein Wert zu gewiesen, der erst aufgehoben wird, wenn die Variable ohne Argument neu genannt wird.
${color #009bf9} Farbiger Text $color Text in Standard-Farbe
Bei diesem Beispiel wurde eine Farbe (#009bf9) für den Text gewählt und anschließend wieder auf den Standard ($color) zurückgesetzt. Es gibt viele weitere Formatierungsmöglichkeiten, beispielsweise folgende:
| Variable | Verwendung |
offset X | Abstand von X Pixeln zwischen zwei Elementen |
alignr | Rechtsbündiger Text |
alignc | Zentrierter Text |
font Monospace:size=8 | Schriftart und -größe festlegen |
Conky kann von einigen Audioplayern Daten auf dem Desktop anzeigen. Der Umfang der Anzeigen ist je nach Audioplayer unterschiedlich. Anzeigen für den Music Player Daemon und einige schlanke Audioplayer werden von Haus aus unterstützt, für weitere Audioplayer gibt es Skripte.
Conky kann ohne zusätzlich Skripte viele Daten des Music Player Daemon auslesen.
Im Konfigurationsabschnitt der .conkyrc müssen dafür die Verbindungsdaten zum MPD-Server angegeben werden:
mpd_host HOSTNAME #z.B.: localhost mpd_port PORT #Standard: 6600 mpd_password PASSWORT #kann man weglassen, wenn keine Passwort benötigt wird
Folgendes Beispiel eines TEXT-Abschnittes für MPD-Anzeigen setzt natürlich einen Konfigurationsabschnitt mit korrekten Verbindungsdaten voraus.
TEXT
Artist: ${mpd_artist}
Album: ${mpd_album}
Titel: ${mpd_title}
${mpd_bar 5,200}
${mpd_elapsed}/${mpd_length} - ${mpd_bitrate} kBit/s
Status: ${mpd_status}
Volume: ${mpd_vol}%
Random/Repeat: ${mpd_random}/${mpd_repeat}
Im TEXT-Abschnitt können weitere Variablen genutzt werden, die den MPD betreffen: 
| Variable | Verwendung |
mpd_artist | Artist des laufenden Titels |
mpd_album | Album des laufenden Titels |
mpd_bar (Höhe),(Breite) | MPD-Prozess-Bar |
mpd_bitrate | Bitrate des laufenden Titels |
mpd_status | MPD-Status: Playing, stopped, usw. |
mpd_title (max. Länge) | Title des laufenden MPD-Song |
mpd_vol | Lautstärke des MPD |
mpd_elapsed | Abgelaufene Zeit des Titels |
mpd_length | Länge des Titels |
mpd_percent | Abgelaufene Zeit des Songs in Prozent |
mpd_random | Zufall-Status (On/Off) |
mpd_repeat | Wiederholungs-Status (On/Off) |
mpd_track | MPD Track Nummer |
mpd_name | MPD Namen |
mpd_file | Dateinamen des MPD Songs |
mpd_smart | MPD Artist und Titel oder Artist und Name, je nach Verfügbarkeit |
Um die Informationen des Audacious-Audioplayer anzuzeigen, muss das Programm wie oben beschrieben kompiliert werden.
Folgendes einfache Beispiel eines TEXT-Abschnittes für die Anzeige der Audacious-Informationen setzt natürlich einen Konfigurationsabschnitt mit den üblichen Einstellungen voraus.
TEXT
${audacious_title}
${color #009bf9}${audacious_bar 5,300}$color
${audacious_position}/${audacious_length} - Titel: ${audacious_playlist_position}/${audacious_playlist_length}
Im TEXT-Abschnitt können weitere Variablen genutzt werden, die Audacious betreffen:
| Parameter | Argument | Funktion |
audacious_bar | Höhe, Breite | Prozess-Anzeige als Leiste |
audacious_bitrate | Bitrate des aktuellen Titels | |
audacious_channels | Anzahl der Kanäle des aktuellen Titels | |
audacious_filename | Voller Pfad und Dateiname des aktuellen Titels | |
audacious_frequency | Samplerate des aktuellen Titels | |
audacious_length | Länge des aktuellen Titels in der Form "MM:SS" | |
audacious_length_seconds | Länge des aktuellen Titels in Sekunden | |
audacious_playlist_position | Position des aktuellen Titels in der Playliste | |
audacious_playlist_length | Anzahl der Titel in der Playlliste | |
audacious_position | Position des aktuellen Titel ("MM:SS") | |
audacious_position_seconds | Position des aktuellen Titel in Sekunden | |
audacious_status | Player Status ("Playing" / "Paused" / "Stopped" / "Not running" ) | |
audacious_title | Max. Länge | Aktueller Titel mit optionaler Begrenzung der Länge |
Informationen des Audioplayers Amarok und zu dessen Datenbank können über ein Skript abgefragt werden. Die Einbindung von Skripten ist weiter unten genauer erläutert.
Ein beispielhafter Text-Abschnitt, der das Amarok-Skript nutzt, kann wie folgt aussehen:
TEXT
$stippled_hr${if_running amarokapp}
Interpret: ${execi 10 ~/.conky/amarok artist}
Titel: ${execi 10 ~/.conky/amarok title}
${execibar 250 ~/.conky/amarok progress}
Album: ${execi 10 ~/.conky/amarok album} (${execi 10 ~/.conky/amarok year})
Genre: ${execi 10 ~/.conky/amarok genre}
$stippled_hr
Collection Information
Artists: ${execi 10 ~/.conky/amarok totalArtists} ${alignr}Compilations: ${execi 10 ~/.conky/amarok totalCompilations}
Albums: ${execi 10 ~/.conky/amarok totalAlbums} ${alignr}Genres: ${execi 10 ~/.conky/amarok totalGenres}
Tracks: ${execi 10 ~/.conky/amarok totalTracks}
$stippled_hr
Collection Statisctics
Most songs by ${execi 10 ~/.conky/amarok most_songs_by_artist} $alignr(${execi 10 ~/.conky/amarok most_songs_by_artist_n})
Most songs are ${execi 10 ~/.conky/amarok most_songs_are_genre} $alignr(${execi 10 ~/.conky/amarok most_songs_are_genre_n})
Most songs during ${execi 10 ~/.conky/amarok most_songs_during_year} $alignr(${execi 10 ~/.conky/amarok most_songs_during_year_n})
Most albums by ${execi 10 ~/.conky/amarok most_albums_by_artist} $alignr(${execi 10 ~/.conky/amarok most_albums_by_artist_n})
Most albums are ${execi 10 ~/.conky/amarok most_albums_are_genre} $alignr(${execi 10 ~/.conky/amarok most_albums_are_genre_n})
Most albums during ${execi 10 ~/.conky/amarok most_albums_during_year} $alignr(${execi 10 ~/.conky/amarok most_albums_during_year_n})
$endif$stippled_hrUm Informationen von dem abgespielten Titel aus Amarok 2 über ein Skript abzufragen, muss folgendes Paket installiert werden:
libqt4-dbus
Die Einbindung von Skripten ist weiter unten genauer erläutert.
Um den Skript zu nutzen zu können, kann der Text-Abschnitt wie folgt aussehen:
TEXT
$stippled_hr${if_running amarok}
Interpret:$alignr${execi 10 ~/.conky/amarok2 artist}
Titel:$alignr${execi 10 ~/.conky/amarok2 title}
Länge:$alignr${execi 10 ~/.conky/amarok2 time} / ${execi 10 ~/.conky/amarok2 totaltime}
${execibar 10 ~/.conky/amarok2 progress}
Album:$alignr${execi 10 ~/.conky/amarok2 album}
Genre:$alignr${execi 10 ~/.conky/amarok2 genre}
$endif$stippled_hrInformationen von Banshee können über einen Skript ausgelesen werden. Dafür wird folgendes Paket benötigt:
python-dbus
Um das Programm aus dem PPA
conky von m-buck zu installieren, muss, abhängig von der Ubuntu-Version, eine der folgenden Paketquellen eingetragen werden:
Zusätzliche Fremdquellen können das System gefährden.
Für Ubuntu Jaunty Jackalope 9.04:
deb http://ppa.launchpad.net/m-buck/conky/ubuntu jaunty main
Für Ubuntu Intrepid Ibex 8.10:
deb http://ppa.launchpad.net/m-buck/conky/ubuntu intrepid main
Um die Quelle zu verwenden, sollte man den Signierungsschlüssel für diese Quelle einspielen. Dazu verwendet man folgenden Befehl:
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0A316B5D4827A579
Die folgenden Pakete müssen unter Intrepid Ibex und Jaunty Jackalope installiert werden:
conkybanshee (main)
Um den Skript zu nutzen zu können, kann der Text-Abschnitt wie folgt aussehen:
TEXT
$stippled_hr$
Interpret:$alignr${execi 10 conkyBanshee --datatype=AR}
Titel:$alignr${execi 10 conkyBanshee --datatype=TI}
Länge:$alignr${execi 10 conkyBanshee --datatype=PT} / ${execi 10 conkyBanshee --datatype=LE}
${execibar 10 conkyBanshee --datatype=PP}
Album:$alignr${execi 10 conkyBanshee --datatype=AL}
Genre:$alignr${execi 10 conkyBanshee --datatype=GE}
$stippled_hrInformationen von Exaile können über einen Skript ausgelesen werden. Dafür wird folgendes Paket benötigt:
python-dbus
Um das Programm aus dem PPA
conky von m-buck zu installieren, muss, abhängig von der Ubuntu-Version, eine der folgenden Paketquellen eingetragen werden:
Zusätzliche Fremdquellen können das System gefährden.
Für Ubuntu Jaunty Jackalope 9.04:
deb http://ppa.launchpad.net/m-buck/conky/ubuntu jaunty main
Für Ubuntu Intrepid Ibex 8.10:
deb http://ppa.launchpad.net/m-buck/conky/ubuntu intrepid main
Um die Quelle zu verwenden, sollte man den Signierungsschlüssel für diese Quelle einspielen. Dazu verwendet man folgenden Befehl:
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0A316B5D4827A579
Die folgenden Pakete müssen unter Intrepid Ibex und Jaunty Jackalope installiert werden:
conkyexaile (main)
Um den Skript zu nutzen zu können, kann der Text-Abschnitt wie folgt aussehen:
TEXT
$stippled_hr
Interpret:$alignr${execi 10 conkyExaile --datatype=AR}
Titel:$alignr${execi 10 conkyExaile --datatype=TI}
Länge:$alignr${execi 10 conkyExaile --datatype=PT} / ${execi 10 conkyExaile --datatype=LE}
${execibar 10 conkyExaile --datatype=PP}
Album:$alignr${execi 10 conkyExaile --datatype=AL}
Genre:$alignr${execi 10 conkyExaile --datatype=GE}
$stippled_hrConky ist leicht durch Skripte erweiterbar, von denen man viele im Netz findet, wenn man sie nicht gerade selber schreiben mag. Die Einbindung eines externenen Skriptes soll im Vergleich zu einer vorhandenen Funktion dargestellt werden. Die vorhandene Funktion ist das Anzeigen der lokalen IP, das Skript gibt die öffentliche (globale) IP aus.
Zuerst wird ein Shell-Skript erstellt:
#!/bin/bash
# eigene öffentliche ip anzeigen
wget http://checkip.dyndns.org/ -q -O - |
grep -Eo '\<[[:digit:]]{1,3}(\.[[:digit:]]{1,3}){3}\>'
Anstatt http://checkip.dyndns.org/ kann man natürlich auch
http://whatismyip.org/
http://wieistmeineip.net/
http://www.myipaddress.com/
http://wieistmeineip.de/
oder ähnliche Dienste eintragen.
Das Skript wird als ~/.conky/publicip.sh gespeichert und die Ausführung als Programm muss erlaubt werden. Im TEXT-Abschnitt der .conkyrc kann dann folgende Zeile ergänzt werden, um die lokale und globale IP anzuzeigen, wobei die globale IP alle 7200 Sekunden (zwei Stunden) ermittelt wird:
IP : Lokal: ${addr eth0} ${offset 10} Global: ${execi 7200 ~/.conky/publicip.sh}Das Einbinden von vnstat ist sinnvoll wenn man den Datenverkehr über einen bestimmten Zeitraums (Tag, Woche, Monat, Jahr) erhalten will.
Dazu installiert[1] man erst einmal das Paket
vnstat (universe)
und legt fest, welche Netzwerkschnittstelle überwacht werden soll (näheres zur Installation/Konfiguration unter Netzwerk-Monitoring). Die folgenden Beispiele zeigen, wie man vnstat letztendlich in die .conkyrc einbinden kann:
Für den heutigen Traffic:
Heute:
Down: ${execi 300 vnstat | grep "today" | awk '{print $2 $3}'} ${alignr}Up: ${execi 300 vnstat | grep "today" | awk '{print $5 $6}'}Für den Traffic der gesamten Woche:
Diese Woche:
Down: ${execi 300 vnstat -w | grep "current week" | awk '{print $3 $4}'} ${alignr}Up: ${execi 300 vnstat -w | grep "current week" | awk '{print $6 $7}'}Für den Traffic des gesamten Monats;
Traffic ${time %B}:
Down: ${execi 300 vnstat -m | grep "`LC_ALL=C date +"%b '%y"`" | awk '{print $3 $4}'} ${alignr}Up: ${execi 300 vnstat -m | grep "`LC_ALL=C date +"%b '%y"`" | awk '{print $6 $7}'}...und schließlich noch ein Beispiel für die Angabe des gesamten Traffics in einem Monat:
Traffic ${time %B}: ${execi 300 vnstat -m | grep "`LC_ALL=C date +"%b '%y"`" | awk '{print $9 $10}'}Beispiel für die Ausgabe (gesamt im Monat):
Traffic November: 12,45GB
Werden Umlaute und Sonderzeichen falsch dargestellt, muss in .conkyrc die Zeile
override_utf8_locale yes
eingefügt / auf "yes" umgestellt werden.
In der Regel sollten folgende Einstellungen einen problemlosen Betrieb ermöglichen, auch wenn der Desktop von Nautilus verwaltet wird:
own_window yes own_window_type normal own_window_transparent yes own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
Dabei ist die erste Einstellung (own_window yes) ausschlaggebend, die weiteren Einstellungen bewirken, dass das Fenster als solches nicht mehr zu erkennen ist und Conky scheinbar direkt auf dem Desktop dargestellt wird.
Werden bei Verwendung mit Nautilus dennoch keine Icons mehr auf dem Desktop angezeigt, so schafft das Programm Devilspie abhilfe.
Folgendes Paket muss installiert werden [1]:
devilspie (universe, [2])
Nach der Installation legt man im Homeverzeichnis einen Ordner .devilspie an und erstellt darin die Datei conky.ds mit folgendem Inhalt:
(if (is (window_class) "Conky") (begin (pin) (undecorate) (wintype "dock") (skip_pager) (skip_tasklist) (below) ) )
Nun kann man den Befehl devilspie jedesmal vor Conky ausführen, zum Beispiel indem man ihn der GNOME-Sitzung hinzufügt [8].
Wenn die Anzeige abgeschnitten zu sein scheint, kann man dies mit dem Eintrag
text_buffer_size 1024
in den Konfigurationsbereich oberhalb des TEXT-Feldes beheben, wobei 1024 hier einen Beispielwert darstellt.
Unter KDE muss die Option "Programme im Arbeitsflächenfenster unterstützen" aktiviert werden, die man im Kontrollzentrum unter "Arbeitsfläche -> Verhalten" im Reiter "Allgemein" findet.
Bei Verwendung der Pseudo-Transparenz wird jedoch ein schwarzer Hintergrund angezeigt, da KDE das Hintergrundbild nicht in das Root-Fenster schreibt, sondern eine Ebene darüber. Das Programm Qiv schafft abhilfe.
Folgendes Paket muss installiert werden [1]:
qiv (universe, [2])
Nun kann das Hintergrundbild gesetzt werden:
qiv --root /pfad/zum/bild.png
Damit dies mit jedem Conky-Start gemacht wird, trägt man folgende Zeile in die .conkyrc:
${exec /usr/bin/qiv --root /pfad/zum/bild.png}Bei Ubuntu mit Compiz, kann es manchmal vorkommen, dass Conky sich immer im Vordergrund befindet, wenn es sich im Autostart befindet. Abhilfe schafft da der Befehl sleep, welchen man vor den Startbefehl von Conky setzt:
Um den sleep-Befehl einzubauen benötigt man ein Script. Dieses erstellt man z.B. ins Home-Verzeichnis als versteckte Datei:
/home/user/.conkystart.sh
Der Inhalt dieser Datei sollte wie folgt aussehen:
#!/bin/bash sleep 5 && conky
Jetzt muss man das Script nur noch automatisch starten lassen:
"System -> Einstellungen -> Sitzungen" bzw.
"System -> Einstellungen -> Startprogramme"
#conky
- IRC-Channel auf freenode
Conky – der kleine Systemmonitor
- FreiesMagazin 07/2007
Conky mit Themes Personalisieren
- mit schönen Beispielbildern
Es gibt einige Foren, in denen Benutzer ihre Conky-Einstellungen mit Bildschirmfoto für andere Benutzer veröffentlichen:
Diese Revision wurde am 1. Februar 2010 um 12:52 Uhr
von noisefloor erstellt.
Dieser Seite wurden folgende Begriffe zugeordnet:
Desktop, Multimedia, Kommunikation, System
2004 – 2010 ubuntuusers.de • Einige Rechte vorbehalten