Die Kinder des Gnoms

Vor etwa anderthalb Jahren begann es. GNOME 3.0 wurde veröffentlicht. Ubuntu ging nicht mit und setzte auf Unity. Linux Mint entwickelte Cinnamon, einem Fork der GNOME Shell, und GNOME 2 wurde unter den Namen MATE geforkt. Das alte Gnomenreich gibt es nicht mehr, es ist zerfallen und die neuen Herrscher haben alle eine andere Meinung, wie ihr jeweiliger Teil am besten zu regieren ist.

Dieser Separatismus hat seine Vorteile, bietet er doch die Chance, neue, verschiedene Bedienkonzepte auszuprobieren, ohne den Zwang, alles unter einen Hut bringen zu müssen. Problematisch ist jedoch, dass viele Komponenten zwischen den Projekten immer noch geteilt werden und Änderungen entweder eine Absprache oder eine Ausweitung des Forks bedarf. Ersteres ist schwierig, zweiteres führt zu Inkompatibilitäten und doppelter Arbeit. Wohin wird das ganze also führen, und welche langfristigen Ziele verfolgen die einzelnen Projekte eigentlich?

Fangen wir mit MATE an. Die Entwickler haben für ihr Ziel, den traditionellen GNOME-Desktop zu erhalten, den aufwändigsten, wenn auch konsequentesten Weg gewählt: Es wurde das komplette GNOME geforkt, nicht nur der eigentliche Desktop, auch die Anwendungen und Bibliotheken. Das Forken der Bibliotheken, also der für die Anwender nicht sicherbarer Teil, war ein Fehler, denn dies erzeugt viel Arbeit, da alles an den Rest der sich verändernden Linux-Welt angepasst werden muss, und man gleichzeitig die neuen Bibliotheken von GNOME 3 mit MATE verwenden können muss, will man neue Anwendungen einsetzen, die neuere Versionen der Bibliotheken wie etwa GTK+ 3, GSettings usw. benötigen. Daher denke ich, dass MATE ähnlich wie Trinity (KDE 3 Fork) langsam verschwinden wird, da sich nicht genügend Entwickler finden werden, um den großen Aufwand zu stemmen, einen Sack alter Technologien auf modernen Systemen am laufen zu halten.

Das Forken der Anwendungen scheint sich jedoch als richtig zu erweisen. Die GNOME-Entwickler beschränken sich mit ihren Ideen nicht nur auf die GNOME Shell, sondern nehmen auch die Anwendungen ins Visier. Auf der Apps-Seite im GNOME-Wiki sieht man, welche Art von Anwendungen die GNOME-Entwickler künftig mit ihrem Desktop ausliefern wollen. Reduzierte Benutzeroberfläche, standardmäßig im Vollbildmodus, keine Menüs – optimiert für Touchscreens (erinnert an das Elementary-Projekt). Dieses Apps sind teilweise schon Realität geworden, das Adressbuch und die Dokumentenanwendung kamen als erstes, das waren zusätzliche Anwendungen, die man ignorieren konnte. Ab GNOME 3.4 ging es jedoch bestehenden Anwendungen an den Kragen: Epiphany wurde zu “Web” umbenannt und die neue Oberfläche wurde schon teilweise implementiert. Ein Lesezeichenleiste gibt es etwa nicht mehr, die Tabs sollen in Zukunft durch Vorschaubilder ersetzt werden, wie man es etwa von Safari unter iOS kennt. In GNOME 3.6 ist Nautilus an der Reihe, er heißt dann “Files” und bietet keine Baumansicht (da nicht für Touchscreens geeignet), keine kompakte Ansicht (siehe Diskussion in der Mailingliste) und keinen Zwei-Fenster-Modus mehr. Weitere entfernte Features sind “Type Ahead Find”, also die Möglichkeit, den Inhalt eines geöffneten Verzeichnisses zu durchsuchen, indem man einfach zu tippen anfängt, etwas, was in vielen GTK+-Anwendungen funktioniert, außerdem die Dateivorlagen sowie das gesamte Menü. Man kann sich darauf einstellen, dass in den nächsten GNOME-Releases ähnliches passiert.

Konsequenz: Die Jungs von Linux Mint haben Nautilus 3.4 unter dem Namen “Nemo” geforkt und wird wahrscheinlich in zukünftigen Versionen von Mint als Standarddateimanager eingesetzt werden. Hier bietet sich die Chance für Ubuntu, da mit einzusteigen, denn wahrscheinlich werden weitere Forks notwendig sein, die Mint allein nicht stemmen kann. Cinnamon und Unity könnten sich Code teilen, auf denen dann ihre jeweiligen Shells laufen. Für Unity ist etwa die Abschaffung der Menüleiste (was eigentlich den GNOME Human Interface Guidelines widerspricht) in den GNOME-Anwendungen tragisch, hat Unity doch eine elegante Weise Weise gefunden, mit Menüs umzugehen: Da man sie meistens sowieso nicht braucht, werden sie im oberen Panel versteckt, wie unter OS X, was Platz spart. Sie lassen sich nach Drücken der Alt-Taste durchsuchen, was die Möglichkeiten der Tastaturbedienung stark erweitert, besonders auf Notebooks (das Gedrückhalten der Windows-Taste zeigt übrigens die möglichen Tastenkombinationen).

Vor 16 Monaten wurde Ubuntu 11.04 mit Unity veröffentlicht. Viel fragten sich, welchen Sinn Unity hätte, es gäbe ja bereits die GNOME Shell. Ich sah den Grund in Differenzen zwischen Canonical und den GNOME-Entwicklern in der Frage, wie ein guter Desktop auszusehen hatte – schon damals begannen die Entwickler, Features zu entfernen (wie die Möglichkeit, den Rechner auszuschalten, geht heute immer noch nicht ohne Tricks). Damals wie heute gebe ich Unity den Vorzug gegenüber der GNOME Shell.

Die Aufgabe einer Benutzerschnittstelle ist es, dem Benutzer die Funktionalität des Programms zugänglich zu machen, dabei soll der Benutzer möglichst wenig Aufwand mit der Schnittstelle haben und die Funktionalität der Programms möglichst effizient nutzen können.

GNOME 3 erfüllt diese Aufgabe zur Hälfte. Es ist zwar einfach zu erlernen, aber es gibt auch nicht viel zu erlernen. Was bringt mir ein schönes, übersichtliches Interface, wenn die notwendige Funktionalität nicht vorhanden oder umständlich zu erreichen ist? Die GNOME-Entwickler scheinen die Absicht zu haben, GNOME Tablett-tauglich zu machen. Das hat aber zur Folge, dass Funktionalität entfernt werden muss (weil sie sich auf einem Touchscreen nicht umsetzen lässt) oder dass die Funktionen versteckt werden, das Programmfenster wird in mehrere Perspektiven aufgeteilt, wobei man nur eine gleichzeitig sehen kann. Bei Touchscreens ist das nötig, bei größeren Bildschirmen führt es nur zu längeren Mauswegen, denn dort kann man auch Menüs und geteilte Ansichten benutzen. Weiterhin bleibt die Frage, wer ein GNOME für Tabletts eigentlich braucht, es gibt ja bereits Android, das iPad und Windows 8. Oder wozu man Tabletts überhaupt braucht.

KDE erfüllt die Aufgabe einer Benutzerschnittstelle zur anderen Hälfte. KDE bietet eine ganze Menge an Funktionalität, Features werden nicht entfernt, sondern höchstens optional gemacht. Durch den modularen Aufbau und die vielen Konfigurationsmöglichkeiten läuft KDE etwa auf Desktops, Netbooks und mittlerweile auch Tabletts, für jede Geräteklasse gibt es das passende Plasma-Interface und auch die Anwendungen werden teilweise angepasst – ähnlich wie bei Webseiten, wo man über CSS für unterschiedliche Geräteklassen ein unterschiedliches Layout vergeben kann. Das hört sich alles toll an, weil niemand zu kurz kommt, denn der Nutzer hat die Wahl. Der Nachteil besteht natürlich dann darin, dass manch ein Nutzer durch die vielen Möglichkeiten überfordert ist, viele Features werden vielleicht gar nicht benötigt und stehen im Weg, die riesige Konfigurationsdialoge sind zu unübersichtlich. Hinzu kommt, dass all die verschiedenen Konfigurationsmöglichkeiten das System fehleranfälliger machen, ein wenig konfigurierbares Programm lässt sich wesentlich leichter testen als ein hochmodulares. Gerade die komplexeren Komponenten in KDE wie Akonadi sind meiner Erfahrung nach ziemlich widerspenstig.

Wie sieht eine perfekte Schnittstelle denn nun aus? Ich weiß es nicht. Das ist die Kunst bei der Sache: Ein Schnittstelle zu entwickeln, welche die geforderte Funktionalität bereitstellt, und zwar möglichst effizient, ohne dabei überfrachtetet und verschachtelt zu sein. Was meiner Meinung nach wohl nicht gehen wird, ist die Bereitstellung einer GUI sowohl für Tastatur + Maus als auch für Touchscreens. Da sind einfach andere Anforderungen und Nutzungsszenarien vorhanden, da auch dann bitte getrennte Oberflächen. Gerne auch auf dem selben Gerät, siehe Ubuntu for Android. Derzeit scheint mir Ubuntu mit Unity das ausgewogenste Konzept zu fahren. Es ist nicht überfrachtet und kann daher auch von Einsteigern gut bedient werden, aber unter anderen dank HUD und Compiz gibt es auch Features für erfahrene Benutzer. Verbesserungen gibt es hin und wieder mal, auch kleine “Papercuts” wie das Ayatana-Projekt, ohne gleich alles über den Haufen zu werfen. Ubuntu 12.04 LTS läuft gut auf meinen Geräten, ich werde wohl eine Zeit lang dabei bleiben und dabei zusehen, wie sich das ganze entwickelt.

About these ads

17 thoughts on “Die Kinder des Gnoms

  1. Danke für den Artikel – stellt bis auf Kleinigkeiten genau meine Meinung dar – SUPER!!
    Bin selbst ein “Fan” von Unitiy, weiles einfach auf dem Netbook am sinnvollsten zu benutzen ist und ich glaube, es hat das Potenzial die Desktopflut etwas zu vereinheitlichen und so ein “bisschen mehr Linux” in die Welt zu bringen.

  2. Unity wurde damals entwickelt bzw. eingesetzt (weil Unity ja schon existierte), weil Gnome-Shell damals komplett anders aussah, such einfach nach Bildern. Sie erfüllte die Anforderungen von Canonical nicht, es gab z.B. keine Leiste/Panel. Daraufhin hat Canonical Gnome-Entwickler kontaktiert und gebeten, dies und das umzusetzen, das wollten die Entwickler nicht, also hat man Unity (weiter)entwickelt.

  3. Gut Zusammengefasst und trifft genau meine Meinung. Hab hier ein kleines Unternehmen mit ca. 10 Ubuntu Desktops, mittlerweile alle auf 12.04 und alle freiwillig auf Unity. (Gnome Shell, und andere Alternativen wurden angeboten).
    Persönlich hab ich immer schon die nächste Alpha auf einem Laptop und seit dem neuen Nautilus kann ich tatsächlich nicht mehr gut damit arbeiten.
    Aber dank der Änderung dass jetzt das LTS auch 5 Jahre auf dem Desktop supported wird heisst das das meine Jungs zur not damit die nächsten 5 Jahre auskommen können.

  4. Danke für den Beitrag. Ich nutze auch lieber Unity als Gnome3 und deine Beschreibung erklärt ganz gut warum.

    • Unter Unity kannst du dir zwar zusätzliche Quicklists, Scopes, Lenses, Indicators und Compiz-Plugins installieren, die Möglichkeiten von richtigen Extensions hast du aber nicht, da ist die GNOME Shell im Vorteil. Allerdings haben Extensions auch Nachteile, wie etwa Kompatibilitätsprobleme bei Updates oder inkonsistente Oberflächen, sieht man z.B auch bei Firefox.

  5. Wie sieht eine perfekte Schnittstelle aus? Also für mich war es das alte Gnome von welchem ich von Anfang an begeistert war und der Grund warum ich vor 4 Jahren von Windows weg bin… zugegeben, es erinnerte mich ein wenig an meine alten Mac-Zeiten (MacOS 9) was aber auch damals schon übersichtlich war und keine Funktionen zu wünschen übrig lies (für mich zumindest).
    Warum die “Interface Nazis” jetzt Gnome kastrieren verstehe ich nicht – bisher ist Gnome 3.4 noch immer nicht alltagstauglich – um den Drucker vernünftig zu konfigurieren muss ich über das Terminal den alten Druckerdialog aufrufen. Jedesmal wenn ich einen Stick oder ähnliches einbinde muss ich einen nervigen Dialog wegdrücken. In Nautilus kann ich keine Emblems für Ordner mehr setzen und für simple Settings muss ich ein Tweak-Tool installieren. Zeitgeist ist ja eine nette Idee aber eine vernünftige indizierte Suche für Dateien, wie es bei Apple- und Microsoft-Systemen nicht mehr wegzudenken ist wäre doch mal ein wünschenswerter Schritt gewesen.
    Ich hoffe nur Mint wird richten… meine letzte Hoffnung^^

    • Die Systemeinstellungen von Ubuntu verwenden noch den alten Druckdialog. Unter Fedora öffnet sich der neue, aber den alten gibts als Extra-Anwendung. Hat anscheinend seine Gründe ;)

  6. Gnome 3 ist ein relative schönes Interface, doch leider viel zu hard zu konfigurieren.

    IMHO: Sollten die Entwickler…
    1. Desktop und Tablet modes einführen, wo man zwischen wechseln kann.( das erstere mit voller Funktionstüchtigkeit und das zweite von mir aus halb verkrüpelt wie die es momentan planen )
    2. Alle Extensions nativ in einen config-center implementieren.( Einige scheinen der Meinung zu sein das Extensions heutzutage des power-user config-Interface ist. Die Frage stellt sich jedoch was geschieht, sollte man seinen desktop configurieren wollen, jedoch keinen Netzanschluss haben…power-user my arse.

    würde die Gnome3 DE wieder ziemlich beliebt werden.

  7. Kann das nur bestätigen. Unity, so sehr ich es am Anfang etwas schräg beäugelt habe, ist nun meiner Meinung nach IMHO der am besten zu bedienende Desktop unter Linux.
    Ich hab ein paarmal herumgeswitcht – GNOME Shell ist schön und stylish, aber das wars dann. Mit der Maus immer die linke obere Ecke zu bedienen ist strunzdumm, wenn man 2 Bildschirme angeschlossen hat, um nur eine komische Sache zu erwähnen. vom Nicht-Ausschalten-Möglich-Sein ganz zu schweigen.
    Und KDE SC, so sehr ich Qt mag und selbst damit programmiere, ist einfach nicht benutzerfreundlich, sondern einfach nur technisch orientiert.
    Leider bringt der Ansatz “Alles konfigurierbar machen” nur dann was, wenn das System an der Oberfläche einfach ist und vor allem FUNKTIONIERT. Darunter versteht man heutzutage: Ohne was zu konfigurieren, muss alles “von selbst” gehen und intuitiv sein. Die vielen KDE-Menüs und komplizierte Art und Weise, mit einfachen Einstellungen umzugehen (Vergleicht mal das Indicator-Menü unter Unity für den NetworkManager zum Vewalten der Netzwerke und das Networkmanager-PlasmaApplet. Das Applet ist dermaßen überladen und kompliziert, dass es der alten Sau graust).
    Ich hab KDE echt gern gehabt, aber ich finde, die Oberfläche versucht immer, die eierlegende Wollmilchsau zu sein – und das geht in diesem Fall leider auf Kosten der Usability.
    Schade.
    Mein Idealsystem wäre, wenn ichf eine 3-Wunsch-Fee hätte
    1. Qt-Rewrite in einer moderneren Sprache (wie D, Go, evtl Rust?, vielleicht sowas wie Vala?), um die C++ -Altlasten wegzubekommen.
    2. Oberfläche wie GNOME/Unity, allerdings
    3. mit dem oben genannten Unterbau.

    Also nichts einfacheres als das. ;-)
    Ach ja, ein freies System sollte es sein, sonst kann ich mir ja gleich MacOS antun.

    • Das mit den NetworkManager kann ich bestätigen, als ich neulich KDE SC 4.8 unter Fedora testete, konnte er keine Verbindung zu meinem WLAN-Netzwerk herstellen, mit GNOME gings.

      Unity 2D wurde übrigens mit Qt und C++ implementiert. Soll aber wohl künftig aufgeben werden, weil sich Unity 3D (Vala, kein Qt, sondern Nux) mittels llvmpipe auch auf Systemen ausführen lässt, die keine 3D-Beschleunigung haben.

      Auf welcher Basis Unity nun läuft, dürfte für Entwickler aber egal sein, denn Unity unterstützt von Beginn an sowohl GTK+ als auch Qt. Das globale Menü, HUD, Quicklists, die Indikatoren etc. funktionieren mit beiden Toolkits, kann aber sein, dass man zu Unity + GTK+ mehr Doku findet als zu Unity + Qt, weil Unity eben aus dem GNOME-Umfeld kommt und daher noch stark auf GNOME-Technologien zurückgreift, in Zukunft wird sich das vermutlich ändern, zumindest ist es das Ziel der Unity-Entwickler, sich nicht an eine Technologie zu binden.

      • Du hast Recht, nur libunity ist in Vala geschrieben, der Rest wurde mittlerweile nach C++ portiert. Aber warum ist es dann Crap? Ob man die Programmiersprache mag oder nicht, ist für den Benutzer ja egal. Ich benutze ja auch WordPress, obwohl es in PHP geschrieben ist. Wenn die Entwickler damit klarkommen…

  8. Ich denke, dass Gnome und KDE das selbe ziel von verschiedenen Seiten aufgreifen und sich entsprechend entwickeln werden.

    Gnome wird erstmal alles rausschmeissen und nachträglich z.B. durch die extensions oder duche extra einstellungseinstellungen wieder integrieren.

    KDE Dagegen hat mit den Funktionen und Einstellungen angefangen. KDE wird deshalb versuchen immer mehr Einstellungen zu verstecken, diese etwas zu separieren. So das nur die offensichtlisten und einfachsten Einstellungen sofort sichtbar sind. Letztens könnten sie sich auf etwa das selbe niveau bewegen.

    Ich könnte mir übrigens gut vorstellen, das die Gnome Forks Gnome selbst den Mut gegeben haben weiter zu machen und sich ihre “gefühlte” Marktnische aus zu bauen. Hätten sie stattdesen doch für alle ehemaligen Gnomer da sein sollen, wäre der Druck zu gross gewesen so weiter zu machen wie sie es bisher tun.

  9. Interessanter Gedanke, derartige Tendenzen könnte ich geben, dass GNOME und KDE auf demselben Level ankommen, glaube ich aber nicht, da beide unterschiedliche Zielsetzungen haben.

    Die Flexibilität von KDE ist ja auch eine gute Sache, nur birgt sie einige Nachteile in der Umsetzung, die sich womöglich reduzieren lassen. Dies wird aber sicher nicht auf Kosten der Flexibilität passieren, die KDE’ler wollen ja die vielen Funktionen und Einstellungsmöglichkeiten und deswegen ist es auch gut, dass es so einen Desktop gibt.

    Im Gegensatz zu KDE sehe ich beim neuen GNOME die Zielgruppe nicht so wirklich. Der Tablett-Markt ist ja schon gut bedient, GNOME ist da etwas spät dran. Vielleicht wirds ein Konkurrent zu Windows 8 auf x86-Tabletts: Reduzierte Oberfläche, man kann aber trotzdem noch klassische Anwendungen ausführen, wenn man muss.

  10. die Möglichkeit der neuen Oberflächen, über die super-taste eine Programm-”instant-search” zu starten und das Gefundene über eingabetaste auszuführen finde ich schon sehr angenehm.
    Ich habe aber einiges gegen Unity auszusetzen.
    Was mich am meisten an Unity stört, ist die Aufwendigkeit ein installiertes Programm zu suchen, von dem du nicht weißt, wie es heißt. Ich weiß, man kann ca. 10 Programme in die starter-leiste geben, aber brauchst du irgendwann zb. die laufwerkswerwaltung und einem fällt nur der name “datenträgermanager” ein o.ä., dann braucht man ewig um einmal zur vollständigen programmliste zu gelangen, und in dieser von 100 programmen das herauzusuchen was man braucht.
    Es gibt einfach zu viele Programme die man regelmäßig braucht, als dass man sie in der Starterleiste unterbringt.
    Diese Ärgernisse bleiben einem in Cinnamon erspart, obwohl das auch (noch) kleine Makel hat, und nach eigener Erfahrung noch nicht so stabil läuft.
    Ich bin kein Fan von den Programmkategorien, aber so umständlich wie bei unity ist es wohl kaum woanders, ein Programm oder eine Einstellung zu finden, wenn man dessen Namen nicht weiß.
    Was mich auch an Unity stört, ist die enorme unflexibilität. Man kann zwar mit einer Erweiterung diverse effekte hinzufügen (um die computerleistung herauszufordern),
    aber es ist unmöglich die starterleist einfach an einen anderen bildschirmrand zu bringen(außer mit unempfohlenen hacks) oder die titelleisten auf gewohnte Art anzeigen zu lassen, (für kleine bildschirm mag die Standardeinstellung ganz nützlich sein, aber wenn man zwei verschiedene Oberflächen verwendet, kann es sehr irritieren sein, wenn bei einer die minimieren/maximieren/schließen-Schalflächen auf dem linken Ende der Titelleiste sind und bei der anderen auf der rechten)
    Was ich an Unity aber sehr gut und innovativ finde, ist die form, wie die geöffneten programme in der starterleiste angezeigt werden(mit den pfeilen), (gibt es aber in ähnlicher form schon lange bei mac).
    Da ist XFCE mit Anwendungstarter angenehmer zu bedienen, und bei weitem flexibler.

    • Was mich am meisten an Unity stört, ist die Aufwendigkeit ein installiertes Programm zu suchen, von dem du nicht weißt, wie es heißt.

      Eine Suche funktioniert prinzipiell nur dann, wenn man weiß, wonach man sucht ;) Die Alternative wäre eben das Durchstöbern der installierten Programme, also Super+A und dann rechts die Kategorie auswählen, also z.B “System”. Das geht unter Unity tatsächlich etwas hakeliger als unter anderen Umgebungen, aber probier doch mal den Classic Menu Indicator, der dir das klassische Anwendungs-Menü aus GNOME 2 zurückholt. Mich persönlich stört das nicht, arbeite auch viel mit dem Terminal, wo die Kenntnis des Programmnamens (oder eines Teils davon) absolut notwendig ist. Was mich eher stört ist, dass bei Unity unter den Anwendungen auch Einstellungen mit angezeigt werden. Einstellungen sind aber keine Anwendungen, verschwenden da nur Platz, weil man sie nur selten aufruft. Naja, immerhin wird “Ausschalten” und “Neustarten” etc. jetzt nicht mehr unter Anwendungen angezeigt, war bei älteren Versionen noch der Fall.

      Den Launcher kann man nicht verschieben, aber die Position der Fensterknöpfe kann man sich beliebig konfigurieren (z.B mit Ubuntu Tweak). KDE kanns auch (natürlich), sodass man auch hier linke Knöpfe haben kann, OS X hat es eh schon so. Es hat aber auch seinen Sinn, dass die Knöpfe bei Unity links sind, denn die Knöpfe wandern beim Maximieren ins Panel, rechts ist da kein Platz, da sind die Indikatoren – beim Maximieren sind die Knöpfe immer links, auch wenn man sie sich nach rechts konfiguriert hat. Konfigurationsmöglichkeiten zu integrieren ist also nicht immer so einfach.

Die Kommentarfunktion ist geschlossen.