Unity – Herausforderung und Chance für den freien Desktop

Letzte Woche wurde auf dem Ubuntu Developer Summit von Mark Shuttleworth angekündigt, dass 11.04 mit Unity statt GNOME Shell ausgeliefert wird. Dank Canonical hatte ich die Chance nicht nur die Ankündigung live zu erleben, sondern mich auch intensiv mit den Unity Entwicklern auszutauschen und mir einen Eindruck von der Entwicklung zu bilden. Als KDE Entwickler habe ich hoffentlich einen groß genugen Abstand um die Thematik objektiv zu bewerten.

Der Wechsel zu Unity wird sehr kontrovers diskutiert, persönlich überrascht er mich nicht und ich begrüße insbesondere den Wechsel zu Compiz von Mutter. Die Entwickler hatten sehr starke Performanceprobleme und waren auch mit der Technologie nicht wirklich zufrieden. Compiz stellt dazu im Vergleich einen sehr ausgereiften Compositing Manger da, von dem sich KWin auch schon öfter dankend bedient hat (in umgekehrter Richtung übrigens auch). Mutter hingegen hat ein Design, dass Austausch weder in die eine, noch in die andere Richtung möglich macht.

Viele Anwender hätten sich in 11.04 GNOME Shell gewünscht und das Canonical daran mitarbeitet. Nur wäre das überhaupt denkbar gewesen? Ubuntu wird in 12.04 wieder eine LTS ausliefern. Auf diese wird Canonical drei Jahre Support gewähren. Die Frage ist, ob GNOME Shell bis dahin ausgereift genug ist. Was aber wenn nicht? Weiter auf GNOME Panel setzen, auch wenn es im Prinzip von Upstream aufgegeben wurde? Für Canonical war das sicher keine einfache Entscheidung und es ist eine Herausforderung – darauf hat auch Mark in der Keynote hingewiesen.

Die Frage ist ob Mutter und GNOME Shell bis 12.04 ausgereift genug wären. Meiner Meinung nach ist das ziemlich undenkbar. Dies basiert nun hauptsächlich auf meiner Erfahrung als Entwickler an KWin. Mit 4.0 haben wir Compositing als zusätzliches Feature eingeführt, ein Jahr später mit 4.2 standardmäßig aktiviert. Wir haben uns also ein Jahr Zeit gelassen es out-in-the-wild zu testen. Dies ist bei Mutter so noch nicht wirklich geschehen. Ich weiß wie viele Änderungen wir vorgenommen haben, um den Compositing Stack performant zu bekommen – und dabei hatten wir den Vorteil uns an Compiz bedienen zu können. Wir haben den Vorteil, dass wir sowohl einen Fallback auf XRender als auch auf klassisches 2D rendering haben. Bei GNOME Shell ist dies nicht möglich. Ein anderes Thema ist die Frage ob die Shell funktional ausgreift ist. Schaut man sich an, wie lange es dauert bis so etwas ausgereift ist, denke ich nicht dass dies der Fall sein wird. Natürlich gilt für Unity in diesem Punkt das Gleiche.

Nun zum Punkt der Zusammenarbeit mit GNOME Shell. Canonical hat sehr klare Ideen wie der freie Desktop aussehen soll – ob man das nun gut findet oder nicht ist ein anderes Thema. Die Möglichkeit von Canonical Einfluss auf die GNOME Shell zu nehmen scheint nicht zu existieren. Keine der von Canonical vorgeschlagenen Neuerungen wurden aufgenommen – gerade was den Status Notifier/Indicator angeht ist das sehr schade, denn damit wird auch eine freedesktop.org Spezifikation verhindert. Persönlich habe ich auf der UDS die Erfahrung gemacht, dass Canonical ein sehr großes Interesse an guter Zusammenarbeit hat und KDE für die existierende Zusammenarbeit dankbar ist und auch sehr begrüßt dass KWin und Compiz in vielen Bereichen zusammenarbeiten. Nun da Kernentwickler von Compiz bei Canonical angestellt sind, bin ich persönlich zuversichtlich, dass sich die Zusammenarbeit verbessert. Angesichts der ablehnenden Haltung Seitens der GNOME Entwickler gegenüber Canonical Neuerungen und der Tatsache, dass GNOME Shell bisher fast nur vom Konkurrenten Red Hat entwickelt wird, ist es nicht überraschend, dass Canonical lieber etwas eigenes programmiert, als auf eine Shell zu setzen, die weder ihre Ziele verfolgt, noch darauf Einfluss nehmen kann.

Persönlich denke ich auch, dass Unity für GNOME insgesamt ein Gewinn ist. Wie Mark in seiner Keynote sagte, ist Unity zwar nicht die GNOME Shell, trotzdem eine Shell für GNOME. Mich persönlich hat die GNOME Shell von den Design Dokumenten her, nie überzeugt und ich halte vieles für unglaublich falsch (ich behaupte mal frech, dass ich ein bißchen was von der Entwicklung einer Desktop Shell verstehe). Hier sehe ich eine große Chance für die freie Software und für GNOME. Die Zeit der einen Shell für alle und die Frage zwischen GNOME oder KDE ist wohl endgültig vorbei. Es gibt je Aufgabengebiet eine andere Shell und je Zielgruppe. Viel wichtiger als GNOME Shell oder KDE ist doch ob die Shell den Anforderungen der Zielgruppe gerecht wird. Und ich denke, dass Ubuntu nun eine Shell baut, die auf ihre Zielgruppe gerichtet ist. Das dürfte eins der Probleme sein mit Unity: viele der heutigen Nutzer gehören nicht zur Zielgruppe. Ubuntu strebt mehr an, als den ca. 1 % Marktanteil, den Linux aktuell wohl so hat. Aus diesem Aspekt heraus, ist die größere Vielfalt durch Unity nur zu begrüßen.

Abschließend möchte ich noch einen Hinweis geben an all die, die nun meckern und mit Wechsel der Distro drohen: Auch GNOME Panel wird auf der Live CD enthalten sein, denn Unity benötigt OpenGL und FBOs. So wird ein NVIDIA Nutzer auf der Live CD kein Unity haben können – wir haben das auf dem Summit durchaus diskutiert (hab da auch ein Interesse dran aus KWin Sicht). GNOME Panel ist also weiterhin vorhanden. Und dann möchte ich darauf hinweisen, dass die Ankündigung auch hätte sein können, dass Ubuntu auf Plasma wechselt – angesichts der Architektur zum Erstellen eigener Shells wäre dies auch nicht überraschend gewesen. Sogesehen ist GNOME noch ganz gut weggekommen 😉

=-=-=-=-=
Powered by Blogilo