GNOME verwaltet die Clutter-Grafikbibliothek nicht mehr

Das GNOME-Projekt hat die Clutter-Grafikbibliothek zu einem Legacy-Projekt degradiert, das eingestellt wurde. Ab GNOME 42 werden die Clutter-Bibliothek und die zugehörigen Komponenten Cogl, Clutter-GTK und Clutter-GStreamer aus dem GNOME SDK entfernt und der zugehörige Code in archivierte Repositorys verschoben.

Um die Kompatibilität mit bestehenden Erweiterungen sicherzustellen, behält GNOME Shell interne Kopien von Cogl und Clutter und wird auf absehbare Zeit weiterhin ausgeliefert. Entwicklern von Anwendungen, die GTK3 mit Clutter, Clutter-GTK oder Clutter-GStreamer verwenden, wird empfohlen, ihre Programme auf GTK4, libadwaita und GStreamer zu migrieren. Wenn dies nicht möglich ist, sollten Sie Cogl, Clutter, Clutter-GTK und Clutter-GStreamer je nach Flatpak-Paket separat hinzufügen, da diese von der Haupt-GNOME-Laufzeit ausgeschlossen werden.

Das Clutter-Projekt stagnierte lange Zeit und war unentwickelt – die letzte bedeutende Version 1.26 wurde 2016 erstellt und das letzte Korrekturupdate wurde Anfang 2020 veröffentlicht. Die in Clutter entwickelten Funktionen und Ideen werden jetzt vom GTK4-Framework, libadwaita, GNOME Shell und dem Mutter-Composite-Server bereitgestellt.

Denken Sie daran, dass sich die Clutter-Bibliothek auf die Bereitstellung der Benutzeroberflächendarstellung konzentriert. Die Funktionen der Clutter-Bibliothek konzentrieren sich auf den aktiven Einsatz von Animationen und visuellen Effekten, wodurch Sie bei der Erstellung regulärer GUI-Anwendungen Methoden anwenden können, die in der Spieleentwicklung verwendet werden. Gleichzeitig ähnelt die Bibliothek selbst einer Spiele-Engine, bei der die maximale Anzahl an Operationen von der GPU ausgeführt wird und zum Erstellen einer komplexen Benutzeroberfläche nur ein Minimum an Code geschrieben werden muss. Die Bibliothek wurde hauptsächlich mit OpenGL verwendet, kann aber auch auf GLib, GObject, GLX, SDL, WGL, Quartz, EGL und Pango ausgeführt werden. Es gibt Bindungen für Perl, Python, C#, C++, Vala und Ruby.

Source: opennet.ru

Kommentar hinzufügen