Speiender Drache
Im ständigen Wettstreit um die bessere grafische Arbeitsumgebung haben die KDE-Entwickler eine neue Runde eingeläutet. Für die Version 4.0 polierten sie nicht nur die Optik, sondern schraubten auch kräftig unter der Haube. Ein Blick auf den neuen Desktop und die Technik im Hintergrund.
- Markus Franz
Nach vielen Monaten emsiger Programmierarbeit steht die Version 4.0 in den Startlöchern: Am 20. November gaben die KDE-Entwickler den Release Candidate 1 ihrer Desktop-Umgebung frei. Für die Version 4.0 krempelte die Community die grafische Umgebung für Unix- und Linux-Rechner kräftig um. KDE erfreut sich nach wie vor großer Beliebtheit, alle wichtigen Distributionen liefern es standardmäßig mit aus oder bieten das Nachrüsten an. Obwohl es in den letzten zwei Jahren Marktanteile gegen Gnome verloren hat (vor allem durch Ubuntu), läuft auf vielen Unternehmens-Desktops noch immer ein gepflegtes KDE.
Mit der neuen Release wollten die Entwickler viele angestaubte Bibliotheken komplett neu schreiben und technisch zu Mac OS X und Windows Vista aufschließen. Eine Liste der Neuigkeiten findet sich auf der Homepage des Projekts (siehe „Onlinequellen“ [a]). Natürlich spiegelt sich in einigen Punkten auch die Konkurrenz zum Gnome-Projekt wider. Es fällt bei KDE 4.0 sofort auf, dass die Änderungen nicht nur an der Oberfläche, sondern auch unter der Haube erfolgt sind: Es gibt eine ganze Reihe neuer Frameworks. Zum einen soll es damit einfacher sein, neue Programme für KDE zu schreiben oder existierende anzupassen. Zum anderen sollen sie KDE gleichzeitig beschleunigen und benutzerfreundlicher machen.
Dabei sind die im Folgenden ausführlicher behandelten neuen Frameworks keine Konkurrenz zu existierenden Tools: Wie der Kasten „Neue Komponenten in KDE 4.0“ zeigt, ziehen sie sozusagen nur eine weitere Abstraktionsschicht zwischen den alten Tools und Frameworks sowie der Benutzeroberfläche mit Programmen und Einstellungsmanagern ein.
Oberfläche mit Plasma
Beim ersten Start von KDE 4.0 fällt dem Benutzer sofort die überarbeitete Oberfläche auf. Sie wirkt klarer und strukturierter als das bisherige Pendant. Mit Plasma [b] haben die KDE-Entwickler einen Ersatz für KDesktop, Kicker und andere Kernkomponenten der Oberfläche entworfen. Plasma stellt zum ersten Mal eine integrierte KDE-API für Entwickler bereit, um vom kleinen Applet/Widget zur großen Anwendung schnell Ergebnisse zu erzielen. Mit dem Scripting-Framework Kross lassen sich Widgets in Sprachen wie Python, Javascript, Ruby und anderen schreiben - selbst Widgets für Apple Dashboard kann man im neuen KDE verwenden, wenn auch noch mit häufigen Abstürzen. Es gibt sogar Pläne, Opera-Widgets ebenfalls zu unterstützen. Damit könnte sich KDE zur universellen Widget-Plattform entwickeln - vorausgesetzt die Entwickler bessern bis zur finalen Release bei der Stabilität erheblich nach.
| Neue Komponenten in KDE 4.0 | |
| Decibel | gemeinsames Adressbuch aller K-Anwendungen und einheitliches Kommunikations-Interface |
| Dolphin | Dateimanager, Ersatz fĂĽr Konqueror |
| Oxygen | benutzerfreundliche, einheitliche Icons in allen K-Anwendungen |
| Phonon | Multimedia-Framework für Audio, Video und zugehörige Endgeräte |
| Plasma | neue Oberfläche für KDE und neue Bibliotheken |
| Solid | Framework-API zum einheitlichen Zugriff auf Geräte |
| Strigi | Desktop-Suche mit semantischen Funktionen |
Die „Plasmoids“ genannten Programme bezeichnen sowohl externe Widgets als auch interne KDE-Tools wie den CPU-Monitor. Die Grundlage eines Plasmoids bildet eine Komponentenarchitektur, die aus drei Teilen besteht:
DataSource: Hierunter versteht man eine einheitliche Schnittstelle der Anwendungen zu irgendwelchen externen Daten (auch Systeminformationen wie CPU-Auslastung oder Speicherbelegung).
DataEngine: Dieser Teil bezeichnet die Anwendungslogik eines KDE-4.0-Plasmoids. Er bereitet die mit der DataSource angezapften Informationen fĂĽr die Visualisierung auf.
Visualisierung: KTrader erledigt das Laden und Anzeigen aller Plasmoids.
Diese Trennung der verschiedenen Schichten eines Plasmoids ermöglicht es sozusagen, das Model-View-Controller-Schema für Widgets beziehungsweise Desktop-Applets zu verwenden.
Fans der „alten“, für Superkaramba in KDE 3.5 geschriebenen Widgets, kommen ebenfalls auf ihre Kosten: Zur Sicherung der Rückwärtskompatibilität integrierten die Entwickler Superkaramba als eine Teilbibliothek in Plasma, sodass alte Widgets ohne Probleme laufen sollten. Dies wollte in der Praxis jedoch nicht gelingen. Man darf gespannt sein, welche Änderungen die Final-Release an bestehenden Applikationen erfordert, damit alles wie versprochen funktioniert.
Ein Vorteil des Gnome-Projekts war es bisher, dass es viele Elemente der Oberfläche konsequent nach Richtlinien zur Barrierefreiheit entwickelt hat. Hier schließt neben einigen Anpassungen an Plasma das Oxygen-Projekt [c] auf: Es definiert ein neues Icon-Thema für KDE 4.0, das den Standards von FreeDesktop.org folgt. Damit garantiert es nicht nur Barrierefreiheit, sondern auch ein einheitliches Aussehen der K-Anwendungen über alle Grenzen hinweg.
Neuer Dateiverwalter
Bisher war der Konqueror sowohl fürs Dateimanagement als auch fürs Surfen im Web zuständig. Die erste Aufgabe übernimmt jetzt standardmäßig Dolphin (auch wenn Konqueror weiterhin Dateien verwalten kann). Mit dieser Neuentwicklung gab das KDE-Team der jahrelangen Kritik nach, dass durch die beiden Einsatzbereiche der Konqueror nur noch schwer zu bedienen sei und einfache Dateioperationen unnötig viel Aufwand erforderten. Tatsächlich geht per Dolphin die Arbeit mit Dateien schneller von der Hand.
Konqueror wurde zu einem reinen Webbrowser degradiert. Seine Oberfläche wirkt wesentlich klarer und die Menüs übersichtlicher. Durch die Radikalkur rendert er durchweg alle Websites nun schneller als zuvor - auch dank der neuen Rendering-Engine Webkit (früher: KHTML). Ins Auge springt der neue Download-Manager, der sich nun endlich direkt in die Symbolleiste integriert.
Im Umgang mit Dateien hilft nun anstelle von KPDF der Betrachter Okular, der mit beinahe jedem Medientyp zurechtkommt. Er beherrscht sogar Windows-Hilfedateien in den Formaten CHM (Compiled HTML Help) und XPS (XML Paper Specification). Anwender können jetzt Anmerkungen zu Dokumenten dauerhaft speichern - besonders praktisch bei PDF-Dateien. Der Bildbetrachter Gwenview erfuhr nur marginale Veränderungen: Die Menüs sind entschlackt und der Benutzer kann Bilder nun beschneiden.
Um die Änderungen rund um den Umgang mit Dateien abzuschließen, noch ein Satz zum Editor Kate: Er ist nun Grundlage für die Editorkomponenten von Konqueror, KEdit und weiteren Applikationen. Das neue Plug-in-System und die verbesserte Suchfunktion kommen so vielen Anwendungen zugute.
Jeder KDE-Anwender hat sicher die eine oder andere unangenehme Begegnung mit dem HAL-Daemon gehabt. Er war für das Einbinden von Geräten und Treibern zuständig. Gleichzeitig gab es mit dem KNetworkmanager ein Tool speziell für (WLAN-)Netze, das manchmal ebenfalls ein instabiles Eigenleben entwickelte.
Solid begreift Geräte
In KDE 4.0 erweitert das Solid-Framework [d] diese beiden Komponenten: Es stellt eine zentrale API für alle Geräte und Dateisysteme bereit. Als Basis dient weiterhin HAL, der also nicht verschwindet - aber für Anwendungsentwickler und Benutzer komplett in den Hintergrund tritt.
Solid entwarfen die Entwickler vor allem dazu, die Unterstützung für im laufenden Betrieb hinzugefügte oder entfernte Geräte zu verbessern. Intern ist die API in viele themenspezifische Domains unterteilt, die sich um ein bestimmtes Thema intensiv kümmern: Ein Bereich kümmert sich um Netze und abstrahiert den Zugriff auf den Networkmanager, sodass jede KDE-Anwendung hiermit interagieren kann. Das stabilisiert in KDE die Verwaltung von kabellosen Netzen und VPNs - die Konfiguration sieht in der Oberfläche aber weitgehend identisch aus. Sogar KPPP gibt es noch in KDE 4.0.
Eine weitere Domain von Solid behandelt das Power Management: So kann der Nutzer (oder eigene KDE-Anwendungen) hier an vielen Optionen drehen - und im Hintergrund läuft wieder HAL. Freunde dürfte der neue Bluetooth-Stack in Solid finden, der endlich diese Funktion im KDE-Kern nachrüstet: Das Suchen und Verbinden zu Geräten funktionierte im Test schon problemlos. Bei Dateiübertragungen traten aber noch Abstürze auf.
Zu guter Letzt sollte man sich das Kommandozeilenprogramm solidshell ansehen. Über den Befehl solidshell network set wireless diabled lässt sich das WLAN schnell deaktivieren. Mit diesem Tool hat man ein mächtiges Werkzeug an der Hand, das richtig Spaß macht.
Multimedia bĂĽndeln
Die Wiedergabe von Multimedia hat schon manchem Linux-Anwender den Schweiß auf die Stirn getrieben: Es fehlt ein Codec hier, dort irgendein Plug-in. Damit will - ähnlich der Intention von Plasma und Solid - ein neues Framework aufräumen: Phonon [e]. Es befreit KDE von GStreamer und Xine und ersetzt den altgedienten Soundserver aRts. Die Grundidee hinter Phonon ist es, die gemeinsamen Funktionen aller Medienabspieler - Wiedergabe von Dateien, Start, Pause, Stop - in einem Framework zu bündeln. Die zentralen Einstellungen dazu nimmt der Anwender im sogenannten „Phonon Settings Manager“ vor.
Angelehnt an die Domains bei Solid unterteilt sich Phonon in sogenannte Engines, die beispielsweise für Play, Pause und Suche zuständig sind. Im Zusammenspiel mit Solid bietet Phonon in KDE 4.0 eine bessere Unterstützung von Headsets und anderen Audiogeräten - im Test zeigte sich tatsächlich auf Notebooks eine bessere Steuerung und Stabilität. Insbesondere das integrierte Mikrofon eines Vaio-Notebooks wird nun nicht nur durch Linux mit dem passenden Treiber versorgt, sondern lässt sich auch endlich verwenden.
Ähnlich wie Solid basiert das Phonon-Framework selbst auf den „alten“ Tools wie GStreamer und dem Soundserver. Der Vorteil liegt aber darin, dass die Entwickler bei API-Änderungen an diesen Low-Level-Frameworks nicht alle KDE-Programme, sondern lediglich Phonon anpassen müssen. Phonon kann laut Dokumentation sogar während des Betriebes das Basis-Framework (beispielsweise von GStreamer zu Xine) wechseln - ohne Unterbrechung im Betrieb.
Es spricht Decibel
Zu den zahlreichen neuen Frameworks gesellt sich noch Decibel [f] dazu. Anders als bei den Brüdern und Schwestern für Desktop, Geräte und Multimedia handelt es sich nicht um einen erweiterten Aufsatz für bestehende Dienste. Vielmehr ist es eine vollkommen neue Basisarchitektur für jegliche Kommunikation: Es bietet eine API mit Schnittstellen für Protokolle jeder Art. In der Theorie bedeutet dies vor allem, dass man in KDE ab sofort ein zentrales Adressbuch hat. Möchte man nun beispielsweise mit einer Person telefonisch in Kontakt treten, startet die passende Anwendung - egal ob Skype, Instant Messenger oder der VoIP-Client.
In der Praxis merkt man von dieser eigentlich genialen Idee noch nichts: Nicht einmal Kopete oder KMail, die Standardclients für Messaging und Mail, greifen auf das neue Framework zu. Die Entwickler haben angekündigt, dass dies auch im finalen KDE 4.0 noch nicht oder nur teilweise der Fall sein wird - erst mit KDE 4.1 sollen die K-Anwendungen vollständig an Decibel andocken.
Mit Strigi schneller suchen
Für die KDE-3-Familie diente Beagle mit einem KDE-Frontend als Suchwerkzeug. Ab KDE 4.0 übernimmt Strigi diese Aufgabe. Das Projekt ist zwar noch recht jung, aber integriert sich hervorragend in die KDE-Bibliotheken. Außerdem ist Strigi bedeutend schneller als Beagle: Bei Tests auf einer mit rund 950 MByte Dateien verschiedenster Typen gefüllten externen Festplatte war Strigi etwa 40 % schneller als der Indizierungsvorgang mit Beagle. Das liegt zum einen daran, dass Strigi von Beginn an auf Geschwindigkeit optimiert wurde. Zum anderen verwendet es - im Gegensatz zu Beagle - ein komplett eigenes System, genannt Jstream, zur Tiefenindizierung des Dateisystems. Neben der üblichen Unterstützung gängiger Formate (Open Document, PDF, MP3, Plain Text et cetera) versteht sich Strigi auch mit Debian- und RPM-Paketen. Mithilfe eines SHA-1-Hash findet es zuverlässig Duplikate im Suchindex.
Zusammen mit dem Informations-Framework Nepomuk bildet Strigi die Grundlage des „semantischen KDE-Desktop“. Dieser soll alle Programme und Dateien über eine einheitliche, integrierte Suchplattform zur Verfügung stellen. Bis auf eine normale Desktopsuche merkt man in der aktuellen Vorabversion aber von diesem engagierten Konzept nichts. Geplant ist, dass in kommenden Versionen Nepomuk eine Basis für Ontologien und beliebige Metadaten bildet.
Eine Frage der Plattform
KDE 4.0 fühlt sich unter Linux auf den ersten Klick schneller an als der Vorgänger. Das liegt nicht nur an den komplett neuen, effizienter gestalteten Bibliotheken, sondern vor allem an Qt 4.0 - dem zentralen Framework, auf dem KDE traditionell basiert. Die 3er-Versionen von KDE nutzen die Qt-Features nicht so effizient aus wie die neue Hauptversion 4.0. Wem Geschwindigkeit weniger wichtig ist, der kann KDE 4 auch auf *BSD, Solaris oder Mac OS X verwenden. Für Mac OS X 10.4 und 10.5 gibt es im Web eine Kurzanleitung [g]. Dort findet man ein wöchentlich aktualisiertes DMG-Paket, das alles beinhaltet, was Anwender für KDE auf dem Mac benötigen. Die Performance dürfte aber deutlich schlechter sein als unter Linux.
Abschließend sei noch auf die KDE Development Platform hingewiesen. Hierin bündeln die Entwickler des KDE-Teams die wichtigen Bibliotheken, um eigene Applikationen zu entwickeln. Dazu gehören APIs für PIM-Anwendungen, I/O-Operationen, die Kern-APIs von KDE und der Notification Daemon, um mit KDE und anderen K-Programmen zu kommunizieren.
Fazit
Schon der aktuelle Release Candidate von KDE 4.0 lässt Freude aufkommen: Es macht richtig Spaß, auf diesem Desktop zu arbeiten. Die neue Version zeichnet sich aber weniger durch die Anpassung der Oberfläche als vielmehr durch die neuen APIs aus: Sie machen KDE schneller, stabiler und effizienter für Entwickler. An der einen oder anderen Fensterkante sollte das KDE-Team noch einmal putzen. Dann kann KDE aber in der finalen Version (die laut Roadmap schon mit Erscheinen dieser Ausgabe freigegeben sein soll) mit Mac OS X, Windows Vista und Gnome auf Augenhöhe um die Gunst des Nutzers buhlen - nicht nur optisch, sondern auch technisch.
Markus Franz
ist Mitgründer und CTO der BF Blogform Search GmbH in Berlin und studiert Wirtschaftsinformatik an der Friedrich-Schiller-Universität in Jena.
iX-TRACT
- Mit Plasma, Solid, Phonon und Decibel fĂĽhrt KDE 4.0 neue Frameworks ein.
- FĂĽr die Suche setzt der Open-Source-Desktop Strigi mit semantischen Funktionen ein.
- Neben Linux läuft KDE 4.0 auch unter BSD, Mac OS X und Solaris.
(avr)