Budgie Desktop migriert von GTK zu EFL vom Enlightenment-Projekt

Vor kurzem haben die Entwickler der Budgie-Desktop-Umgebung haben bekannt gegeben, dass sie sich entschieden haben, die GTK-Bibliothek zu verlassen zugunsten der Enlightenment Foundation Library (EFL).

Dies liegt an die erwähnt, dass leider GTK4 hat die Erwartungen nicht erfüllt von Entwicklern, anansonsten konzentriert sich der kontinuierliche Ansatz nur auf die Bedürfnisse des GNOME-Projekts, deren Entwickler nicht auf die Meinungen alternativer Projekte hören und deren Bedürfnisse nicht berücksichtigen wollen.

Der Hauptanreiz weg von GTK Es waren die Pläne von GNOME, die Art und Weise, wie es mit Themen arbeitet, zu ändern, wodurch es schwierig wird, benutzerdefinierte Designs in Projekten von Drittanbietern zu erstellen. Der Oberflächenstil der Plattform wird insbesondere durch die libadwaita-Bibliothek bereitgestellt, die mit dem Adwaita-Thema verknüpft ist.

Entwickler von Drittanbietern, die die GNOME-Schnittstelle nicht vollständig replizieren möchten, sollten ihre Bibliotheken auf den Stil vorbereiten, aber in diesem Fall gibt es eine Diskrepanz im Design von Anwendungen, die die alternative Bibliothek und die Themenbibliothek der Plattform verwenden.

So wie, sie erwähnen auch, dass es keine Standardmethode zum Hinzufügen zusätzlicher Funktionen gibt nach Libadwaita, und versucht, die Recoloration-API hinzuzufügen, das würde den Farbwechsel in den Anwendungen erleichtern, konnte nicht in Einklang gebracht werden, da andere Probleme befürchtet wurden Neben Adwaita könnten sie sich negativ auf die Qualität von GNOME-Anwendungen auswirken und die Analyse von Problemen für die Benutzer erschweren.

Daher hielten die alternativen Desktop-Entwickler am Adwaita-Thema fest.

Zwischen lDie GTK4-Funktionen, die Sie nicht mögen an Budgie-Entwickler, der Ausschluss der Möglichkeit, einige Widgets durch das Erstellen von Unterklassen zu ändern, Übergang in die Kategorie der veralteten X11-APIs, die nicht kompatibel mit Wayland (zum Beispiel in Budgie, Anrufe GdkScreen und GdkX11Screen wurde verwendet, um die Verbindung zu ermitteln und die Monitoreinstellungen zu ändern), Probleme beim Scrollen im Widget gtkListView und der Verlust der Fähigkeit, Maus- und Tastaturereignisse in GtkPopovers zu verarbeiten, wenn das Fenster unscharf ist.

Nachdem Sie alle Vor- und Nachteile des Wechsels zu alternativen Toolkits abgewogen haben, Die Entwickler kamen zu dem Schluss, dass der Übergang des Projekts zur Nutzung der EFL-Bibliotheken am optimalsten ist.

Die Umstellung auf Qt wurde aufgrund der Verlinkung dieser Bibliothek in C++ und Unsicherheiten in der zukünftigen Lizenzpolitik als problematisch erkannt. Der Großteil von Budgies Code ist in Vala geschrieben, aber andere Sprachen wie C oder Rust waren als Migrationsoptionen erlaubt.

Über die Verteilung von Solus, das Projekt wird weiterhin einen alternativen Build bilden basiert auf GNOME, aber dieser Build wird vom Projekt als unbeaufsichtigt markiert und es wird einem separaten Abschnitt auf der Download-Seite zugewiesen.

Zur Erinnerung: Der Budgie-Desktop bietet eine eigene GNOME-Shell-Implementierung, Panels, Applets und ein Benachrichtigungssystem. Um die Fenster zu verwalten, wird der Budgie Window Manager (BWM) verwendet, der eine erweiterte Modifikation des grundlegenden Mutter-Plugins ist. Budgie basiert auf einem Panel, das in der Arbeitsorganisation klassischen Desktop-Panels ähnelt. Alle Panel-Elemente sind Applets, mit denen Sie die Komposition flexibel anpassen, den Standort ändern und die Implementierung der wichtigsten Panel-Elemente nach Ihren Wünschen ersetzen können.

Migrationsergebnisse werden in Budgie 11 angeboten. Dies ist insbesondere nicht der erste Versuch, sich von GTK zu lösen, da das Projekt bereits 2017 die Entscheidung getroffen hat, auf Qt umzusteigen, die Pläne jedoch später überarbeitete, in der Hoffnung, dass sich die Situation in GTK4 ändern würde.

Nach der Veröffentlichung von Budgie 11 Entwickler werden seine Fähigkeiten mit GNOME Shell vergleichen und entscheiden, den Build mit GNOME weiter zu entwickeln oder einzustellen Bereitstellung von Tools für die Migration auf Builds von Budgie 11.

In der Solus-Kompilierung mit dem Budgie 11-Desktop ist geplant, die Zusammensetzung der Anwendungen zu überprüfen und die GNOME-Anwendungen durch analoge zu ersetzen, einschließlich der im Rahmen des Projekts entwickelten. So ist beispielsweise die Entwicklung eines eigenen Anwendungsinstallationszentrums geplant.

Quelle: https://joshuastrobl.com/