System: Haiku

Haiku ist der Name des freien Desktopbetriebssystems, das praktisch ein Open-Source-Nachbau des kommerziellen, doch leider gescheiterten, BeOS darstellt. Die 1998 als BeOS R3 von der Firma Be Inc. auf den Markt gebrachte Software konnte sich trotz zu dieser Zeit zukunftsweisender Technologien wie 64-Bit-Dateisystem mit indizierten Metadaten, umfassender Multithreading- und Multiprozessor-Unterstützung, ausgefeiltem Messaging in einem leichtgewichtigen Client-Server-Modell u. v. m. nicht durchsetzen. Haiku soll die erfolgreichere Nachfolge antreten.

BeOS Wurzeln

Die genauen Probleme, denen Be Inc. gegenüberstand, sollen hier nicht das Thema sein. Es reicht zu wissen, dass Be Inc. im Jahr 2001 Pleite ging, wenige Monate nachdem die letzte Version BeOS R5 veröffentlicht wurde. Die kostenlose und frei kopierbare Personal Edition war sozusagen ein Abschiedsgeschenk, ermöglichte sie doch ein bedingtes Weiterleben des Systems.

Noch wichtiger war allerdings die freie Verfügbarkeit aller Headerdateien. In ihnen werden praktisch sämtliche Features des Systems beschrieben, nicht jedoch deren programmiertechnische Umsetzung. Sie bildeten die Grundlage des Projekts OpenBeOS, das etwa zeitgleich mit dem Untergang von Be Inc. ins Leben gerufen wurde und Stück für Stück die fehlende Implementierung unter einer Open-Source-Lizenz (BSD/MIT) entwickeln sollte. Das hat leider um einiges länger gedauert, als es die große Anzahl der ersten enthusiastischen Entwickler zu Beginn hoffen ließ. Um eventuellen Trademark-Verfahren aus dem Weg zu gehen, wurde 2004 ein neuer Name gewählt: Haiku.





Die guten Multimedia-Eigenschaften wurden von BeOS geerbt.

Haiku ist nicht Linux

Der Reiz von Haiku lässt sich vielleicht an drei Merkmalen festmachen: Zum einen ist es ein Open-Source-System, das sich bewusst auf den Desktop-Einsatz beschränkt. So müssen keine Kompromisse eingegangen werden, um auf großen Serverfarmen wie auch auf schmalbrüstigen Kleinsthandys laufen zu können. Des Weiteren ist das System sehr transparent. Der Aufbau wird durch eine leicht verständliche Verzeichnisstruktur für jeden nachvollziehbar.

Haikus größter Vorteil dürfte jedoch die Entwicklung als einheitliches, komplettes Betriebssystem sein. Anders als bei Linux-Distributionen wird nicht um einen Kernel herum aus verschiedensten Einzelkomponenten ein mehr oder weniger gut zusammenarbeitendes System gezimmert. Bei Haiku werden alle Komponenten zusammen mit einer einheitlichen Programmierschnittstelle fein aufeinander abgestimmt entwickelt. Dadurch entsteht nicht nur für den Endbenutzer ein in seiner Optik und Bedienung konsistentes System. Auch Programmierer können sich auf einen festen Satz an Features verlassen. Sie müssen z. B. keine unterschiedlichen Audiosysteme oder Fenstermanager berücksichtigt werden. Sie können darauf vertrauen, dass alle Haiku-Besonderheiten, wie etwa die im Dateisystem (Metadaten, Live-Queries und Node-Monitoring zum überwachen von Verzeichnissen), zur Verfügung stehen. Folglich müssen sie nicht wie bei anderen Systemen Fallback-Lösungen konstruieren, falls das Programm auf einer Distribution laufen sollte, der die benötigten Features fehlen. Haiku bietet also eine Konstanz, die anderen Systemen fehlt.

Alphas testen

Jetzt, etwa neun Jahre nach dem Start des Projekts, wurde die zweite Alpha-Version veröffentlicht. Sie richtet sich vor allem an Entwickler, technisch versierte Benutzer und natürlich Ex-BeOS-Fans, die sich gespannt fragen dürften, ob Haiku dem Vergleich zu seinem Vorbild standhält. Berücksichtigt man Haikus Alphastatus, muss man das eindeutig bejahen. Zwar gibt es noch das ein oder andere Treiberproblem, man braucht also noch ein wenig Glück mit seiner Hardwarekonfiguration, aber wenn das klappt, zeigt sich Haiku sehr stabil und ausgesprochen flott.

Die Installation erfolgt über ein gebranntes ISO-Image oder auch durch ein auf einen USB-Stick geschriebenes Image. Daneben lässt sich Haiku auch in einer virtuellen Maschine wie VMWare oder VirtualBox betreiben, ist dann aber natürlich nicht mehr ganz so spritzig. Ähnlich verhält es sich, wenn man die Installations-CD als Live-CD benutzt.

Eine native Installation setzt eine zur Verfügung stehende leere Partition voraus. Diese sollte vorher mit einem Programm wie GParted angelegt werden. Das mit Haiku gelieferte DriveSetup beherrscht das verlustfreie Verkleinern/Vergrößern von Partitionen noch nicht.

Haiku ist nicht BeOS

Ex-BeOS-Nutzer dürften sich gleich zurecht finden. Haiku hält sich ziemlich gut an die Vorgaben des Vorbilds. So ist es nicht nur source- sondern auch binärkompatibel, was den Einsatz von unveränderter BeOS-Software gestattet. Außerdem werden die gleichen Anwendungen und Werkzeuge mitgeliefert, wenn auch mit zum Teil erheblichen Verbesserungen. Einiges an Software für Haiku findet man bei Haikuware, OsDrawer.net und HaikuPorts.

Generell muss man sagen, dass es sich bei Haiku mitnichten um einen bloßen Abklatsch eines Betriebssystems aus den späten 1990ern handelt. Die Re-Implementierung wurde als Gelegenheit genutzt, viele Verbesserungen und auch einige neue Features einfließen zu lassen.





Neben hübschen Vektoricons bietet Haiku einige für Einsteiger ungewöhnliche Features.

Optisch fällt da natürlich der leicht modernisierte Look der Benutzeroberfläche auf. Die dezente Verwendung von Farbverläufen und etwas nüchternere Buttons und Popup-Menüs sind eine stimmige Weiterentwicklung gegenüber BeOS. Die Verwendung von Vektoricons in einem speziell entwickelten platz- und ressourcensparenden Format und die Nutzung von Antialiasing tragen ebenfalls ausgesprochen positiv zum Gesamteindruck bei.

Die internationale Nutzergemeinde wird freuen, dass die Anfänge einer umfassenden Lokalisierung des Systems ausprobiert werden können. Durch Nutzung der ICU-Bibliothek sollen zukünftig auch verwandte Bereiche wie Datumsdarstellung, Währungen und Sortierordnungen angepasst werden.

Auch unter der Haube muss sich Haiku nicht verstecken. Obwohl sich noch einiger Debug-Code und nur wenige Optimierungen im System befinden, ist es schon ähnlich flott wie BeOS R5; in einigen Disziplinen, gerade im Dateisystem und bei der grafischen Darstellung, ist es teilweise sogar um einiges schneller.

In guter Open-Source-Tradition wird nicht versucht, jedes Rad neu zu erfinden. Wo es sinnvoll ist und sich eine Technik nahtlos integrieren lässt, werden andere Open-Source-Projekte genutzt oder angepasst und eingebaut. So nutzt Haiku die Anti-Grain-Geometry-Engine (AGG) und FreeType als Backend für die Benutzeroberfläche. Eine Kompatibilitätsschicht zu FreeBSD-Netzwerktreibern mildert ansonsten vorhandene Treiberengpässe. FFMPEG wird teilweise zum En-/Decodieren von Audio und Video genutzt. Steht kein Grafikkartentreiber zur Verfügung, wird auf VESA zurückgefallen, welches jedoch ausgesprochen flott zu Werke geht. Allenfalls kann über VESA nicht die native Auflösung des Monitors benutzt werden, falls sie dieser nicht standardkonform mitteilt.





Mit dem neuen WebKit-Browser ist Haiku im WWW gut gerüstet.

Für Entwickler dürfte Haikus weitgehende POSIX-Kompatibilität interessant sein, welche die Portierung von Unix Programmen vereinfacht. Als Compiler wird zur BeOS-Kompatibilität gcc2.95 verwendet. Daneben existiert aber auch noch ein gcc4 mit den entsprechenden Bibliotheken, sodass Haiku ein Hybridsystem ist, das mit Anwendungen von beiden Compilern zurecht kommt.

Anwendungen: Henne und Ei

Trotz der Fülle an verwendbaren BeOS-Programmen, welche oft jedoch nur wenig ausgereift sind und von ihren Autoren oft schon vor langer Zeit aufgegeben wurden, fehlen Haiku noch einige Anwendungen, die der normale Endanwender im täglichen Leben so braucht. Es gibt keine moderne Office-Suite oder mächtige Bild- und Videobearbeitungsprogramme, und der mitgelieferte Browser WebPositive ist zwar sehr fix und recht stabil, aber noch nicht ganz ausgereift, da er sich erst seit Anfang des Jahres in der Entwicklung befindet. Flash existiert nur als experimenteller gnash-Port für den etwas in die Jahre gekommenen Firefox 2.

Zwar wird auch an diesen Baustellen gearbeitet, aber das Haiku-Projekt sagt selbst, dass sich die Alphas in erster Linie an Entwickler richten. Ihre Hauptaufgabe besteht ja gerade darin, zusätzliche Programmierer anzusprechen nicht nur um am Betriebssystem selbst zu arbeiten, sondern auch um die nötige Softwarelandschaft drumherum aufzubauen.

Tatsächlich scheint jetzt ein guter Zeitpunkt zu sein, sich die Haiku-Programmierung einmal genauer anzusehen. Seit den Alphas ist das System stabil genug, um darauf zu entwickeln, und mit gcc4 steht dafür auch ein moderner Compiler zur Verfügung.

Und während Haiku die durchdachte und vielseits gelobte C++ API von BeOS geerbt hat, hat es ihm gegenüber einen entscheidenden Vorteil: Haiku ist Open Source, d. h. jeder kann mitmachen und niemand kann das System mehr einfach einstampfen.

Wer im übrigen Hilfe braucht, wird sicherlich im deutschen Haiku User Guide fündig. Daneben kann man auch Fragen im englischen IRC-Channel #haiku auf irc.freenode.net stellen.

Joachim Seemer benutzt seit Ende 2008 fast ausschließlich Haiku und war davor bis ca. 2003 BeOS-Nutzer. Im Haiku-Projekt arbeitet er am Benutzerhandbuch und hilft auch bei dessen deutscher Übersetzung.

 

Artikel von Joachim Seemer (Humdinger), Juni 2010 für das freiesMagazin
Danke an Joachim Seemer, der uns erlaubt hat, diesen Artikel auf unserer Wissensbasis zu intregieren
Bereitgestellt durch BeSly, der Haiku, BeOS und Zeta Wissensbasis.