Fingerbung.jpg

Aufpoliert

gDesklets installieren und nutzen

01.05.2005
Mit ebenso nützlichen wie optisch attraktiven Desktop-Extensions verleiht gDesklets der Gnome-Oberfläche einen persönlichen Charakter. Setzen sie die piffige Desktop-Erweiterung auch mit anderen GUIs optimal ein und entwickeln Sie Ihre eigenen Desklets.

Mittlerweile gibt es allerhand nützliche Programme, um den Desktop zu verschönern. Zu den beliebtesten Vertretern dieser Riege zählen Erweiterungen, die nützliche oder auch einfach grafisch ansprechende Miniprogramme – so genannte Desklets – auf dem Desktop anzeigen. Eine der vielseitigsten Anwendungen dieser Art ist gDesklets. Die erste Release, gDesklets 0.10, erschien im August 2003 nach sechsmonatiger Planung.

Zum damaligen Zeitpunkt gab es bereits DesktopX, Konfabulator und (Super-)Karamba, die eine ähnliche Philosophie wie gDesklets vertreten. Das Problem dieser Programme war und bleibt, dass sie nur für einen Desktop oder für ein bestimmtes Betriebsssystem (Konfabulator für den Mac, DesktopX für Windows) konzipiert sind. gDesklets dagegen sollte von Anfang an auf so vielen Window-Managern bzw. Desktops wie möglich funktionieren. gDesklets braucht einen Vergleich mit der Konkurrenz nicht zu scheuen und hat in einigen Bereichen sogar die Nase vorn.

Abbildung 1: Eine Zierde für jeden Desktop: gDesklets in Aktion.

Grundsätzlich läuft gDesklets zusammen mit allen Window-Managern, die die Freedesktop-Spezifikation [1] erfüllen. Zu seinem mächtigen Funktionsumfang trägt nicht zuletzt die Tatsache bei, dass es größtenteils in Python [2] geschrieben ist. Mit dieser interpretierten, objektorientierte Programmiersprache lassen sich auch größere Projekte erstellen.

Es gibt viele Einsatzgebiete für gDesklets, von denen einige über schlichtes "Eye Candy" weit hinausgehen. So kann ein Administrator damit Systeme überwachen und gegebenfalls administrieren. Im Gnome-CVS existiert ein Presentation-Desklet, mit dem man ohne großen Aufwand Präsentationen gestalten kann. gDesklets setzen der Fantasie kaum Grenzen – und lassen sich sogar verblüffend einfach selbst erstellen (Kasten 1).

Kasten 1: Desklets selbst erstellen

Selbst unerfahrenen Programmierern gelingt es ohne größere Schwierigkeiten, einfache Desklets selbst zu erstellen. Grundlegende XML- und Python-Kenntnisse sind von Vorteil, aber nicht wirklich notwendig. Dazu ein kurzes Beispiel, das in nur drei Codezeilen ein dynamisches Desklet realisiert:

<display window-flags="sticky, above">
<label value="Mein erstes…" font="MonoSpace 1cm" color="blue" on-enter=" self.font='MonoSpace 0.5in'; self.value='Hello World'; self.color='red' " on-leave=" self.font='MonoSpace 12pt'; self.value='…Desklet'; self.color='blue' "/>
</display>

Zeile ist obligatorisch – ohne <display> funktioniert das Desklet nicht. Das Tag <display> kann mehrere Attribute haben. So legt window-flags="sticky, above" fest, dass das Desklet auf jedem virtuellen Desktop und über allen anderen Anwendungen erscheinen soll.

Zeile 3 definiert zunächst ein Textfeld mit dem Anfangswert "Mein erstes…", das beim Starten des Desklets erscheint. Als Schrift dient MonoSpace in der Ausgabegröße 1cm. Alternativ können Sie die Größe auch in Pixel, Zoll, Punkt oder als Prozentangabe festlegen. Näheres dazu finden Sie in Appendix A des gDesklets-Entwicklerhandbuchs [9].

Alle modernen GUI-Bibliotheken arbeiten ereignisbasiert: Ein Tastendruck oder eine Mausbewegung lösen bestimmte Ereignisse aus. Auf einige davon reagieren die Anweisungen on-enter und on-leave in Zeile 3.

Bewegen Sie den Mauszeiger in das Desklet(-Fenster), löst dies das on-enter-Ereignis aus. Die Textgröße ändert sich auf einen halben Zoll, als Text erscheint nun "Hello World" in roter Farbe. Dabei besagt der Zusatz "self" vor dem jeweiligen Attributnamen, dass sich die Anweisung auf das label-Tag selbst bezieht. Vergessen Sie keinesfalls die Strichpunkte: Fehlen diese, erscheint ein Dialog, der die ungültige Stelle im Code hervorhebt.

Das on-leave-Ereignis wird ausgelöst, sobald der Mauszeiger das Desklet(-Fenster) wieder verlässt. Die Schriftgröße ändert sich zu 12 Punkt, die Farbe wieder zu blau.

Das Tag muss, wie bei XML üblich, mit einem Slash ("/") abgeschlossen werden. Zeile 5 beendet den Desklet-Code mit einem schließenden </display>.

Vorbereitung

Um gDesklets erfolgreich einzusetzen, bedarf es einiger Vorarbeit. Unter einer halbwegs aktuellen Distribution stellt dies jedoch kein größeres Problem dar. Vergewissern Sie sich aber auf jeden Fall, dass keine älteren Versionen des Paketes auf dem System installiert sind.

Eine speziell für Suse 9.2 zusammengestellte Variante von gDesklets finden Sie auf der Heft-CD. Die jeweils aktuellste Version des Programms können Sie unter [3] beziehen. Wollen Sie auf Basis der allerneuesten Quellen arbeiten, so finden Sie unter [7] den so genannten gDesklets Nightly Build Tarball zum Download. Er spiegelt die aktuellste Entwicklerversion wider und wird, wie der Name schon vermuten lässt, jede Nacht frisch gebaut.

Abhängigkeiten

Sie benötigt folgende Bibliotheken und Bindungen auf dem System (die Namen können je nach Distribution variieren): * python mindestens in Version 2.3. Bei SuSE teilt sich Python in mehrere Pakete auf – installieren Sie python-xml ebenfalls. * python-gtk2, die Python-Bindungen für gtk+-2.x, mindestens in Version 2.4.x. * python-pyorbit, die Python-Bindungen für ORBit2, in Version 2.0.1. * python-gnome2 2.6.x oder höher. Suse hat auch dieses Paket in mehrere kleinere aufgesplittet. Installieren Sie am besten alle, um eventuellen Problemen vorzubeugen. * expat sollte in Version 1.95.6 bzw. 1.95.8 vorliegen, 1.95.7 scheint fehlerhaft zu sein. * Clibgtop2 und librsvg jeweils mindestens in Version 2.8.0. * Cintltool Version 0.30 oder höher

Um gDesklets zu kompilieren, benötigen Sie zudem die Developer-Pakete von python, python-gtk2, python-gnome2, libgtop2 und librsvg. Suse 9.2 und älter liefern sehr veraltete Versionen der Pakete aus, deswegen ist man auf [4] oder [5] angewiesen. Dagegen bringen sowohl Debian Sarge als auch Fedora Core 3 bereits alles mit, was Sie brauchen. Für ältere Fedora-Versionen hält Dag Wieers [6] passende Pakete bereit.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

  • Überwachen und Spielen
    Schöner arbeiten: Mit Gdesklets überwachen Sie Ihr System, ohne auf Ästhetik zu verzichten. Die transparenten Fenster verschmelzen nahtlos mit dem Desktop.
  • Desktopumgebung XFCE und Dreamlinux aus Brasilien
    Das schlanke XFCE fristet in vielen Distributionen im Schatten der Giganten KDE und Gnome sein Dasein – zu Unrecht: Was die clevere Arbeitsumgebung alles kann, zeigt eindrucksvoll das brasilianische Dreamlinux.
  • Tux' neueste Kleider
    Jede Windows-Installation ähnelt allen anderen; Linux bietet mehrere Arbeitsoberflächen mit verschiedenen Konzepten an. Anwender dürfen frei wählen – manche sagen: Sie haben die Qual der Wahl. Wir zeigen Ihnen, was die drei großen Desktops bieten.
  • Leicht gemacht
    Jörn Lindaus Gentoo-Ableger Toorox macht mit pfiffigen Ideen gerade Linux-Neulingen den Einstieg leicht.
  • Linux Mint 15 Cinnamon im Test
    Linux Mint 15, das Sie auch auf der Heft-DVD dieser Ausgabe finden, basiert auf Ubuntu 13.04 und bringt mit Cinnamon einen eigenen Desktop mit, der eine interessante Alternative zu Unity oder KDE ist.
Kommentare

Infos zur Publikation

LU 12/2014: ANONYM & SICHER

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 0 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

Nach Ubdates alles weg ...
Maria Hänel, 15.11.2014 17:23, 4 Antworten
Ich brauche dringen eure Hilfe . Ich habe am wochenende ein paar Ubdates durch mein Notebook von...
Brother Drucker MFC-7420
helmut berger, 11.11.2014 12:40, 1 Antworten
Hallo, ich habe einen Drucker, brother MFC-7420. Bin erst seit einigen Tagen ubuntu 14.04-Nutzer...
Treiber für Drucker brother MFC-7420
helmut berger, 10.11.2014 16:05, 2 Antworten
Hallo, ich habe einen Drucker, brother MFC-7420. Bin erst seit einigen Tagen ubuntu12.14-Nutzer u...
Can't find X includes.
Roland Welcker, 05.11.2014 14:39, 1 Antworten
Diese Meldung erhalte ich beim Versuch, kdar zu installieren. OpenSuse 12.3. Gruß an alle Linuxf...
DVDs über einen geeigneten DLNA-Server schauen
GoaSkin , 03.11.2014 17:19, 0 Antworten
Mein DVD-Player wird fast nie genutzt. Darum möchte ich ihn eigentlich gerne abbauen. Dennoch wür...