Budgie Desktop passe de GTK aux bibliothèques EFL par Enlightenment Project

Les développeurs de l'environnement de bureau Budgie ont décidé d'abandonner l'utilisation de la bibliothèque GTK au profit des bibliothèques EFL (Enlightenment Foundation Library) développées par le projet Enlightenment. Les résultats de la migration seront proposés dans la version Budgie 11. Il est à noter que ce n'est pas la première tentative d'abandonner l'utilisation de GTK - en 2017, le projet a déjà décidé de passer à Qt, mais a ensuite révisé ses plans, en espérant que la situation change dans GTK4.

Malheureusement, GTK4 n'a pas répondu aux attentes des développeurs en raison de la concentration continue sur les besoins du projet GNOME, dont les développeurs n'écoutent pas les opinions des projets alternatifs et ne sont pas disposés à prendre en compte leurs besoins. La principale motivation pour s'éloigner de GTK était le projet de GNOME de modifier la façon dont il gère les skins, ce qui rend difficile la création de skins personnalisés dans des projets tiers. En particulier, le style d'interface de la plateforme est fourni par la bibliothèque libadwaita, qui est liée au thème de conception Adwaita.

Les créateurs d'environnements tiers qui ne souhaitent pas répliquer complètement l'interface GNOME doivent préparer leurs bibliothèques pour gérer le style, mais dans ce cas, il existe une divergence dans la conception des applications utilisant la bibliothèque alternative et la bibliothèque de thèmes de la plateforme. Il n'existe aucun outil standard pour ajouter des fonctionnalités supplémentaires à libadwaita, et les tentatives d'ajout d'une API de recoloration, qui faciliterait le changement de couleurs dans les applications, n'ont pas pu être acceptées en raison des craintes que des thèmes autres qu'Adwaita puissent affecter négativement la qualité de libadwaita. applications pour GNOME et compliquent l'analyse des problèmes des utilisateurs. Ainsi, les développeurs d’ordinateurs de bureau alternatifs se sont retrouvés liés au thème Adwaita.

Parmi les fonctionnalités de GTK4 qui suscitent le mécontentement des développeurs de Budgie figurent l'exclusion de la possibilité de modifier certains widgets via la création de sous-classes, le transfert vers la catégorie des API X11 obsolètes qui ne sont pas compatibles avec Wayland (par exemple, dans Budgie appelle GdkScreen et GdkX11Screen ont été utilisés pour déterminer la connexion et modifier la configuration des moniteurs ), des problèmes de défilement dans le widget GtkListView et la perte de la capacité de gérer les événements de souris et de clavier dans GtkPopovers si la fenêtre n'est pas mise au point.

Après avoir pesé tous les avantages et les inconvénients du passage à des boîtes à outils alternatives, les développeurs sont arrivés à la conclusion que l'option la plus optimale consiste à faire passer le projet à l'utilisation des bibliothèques EFL. La transition vers Qt est considérée comme problématique en raison du fait que la bibliothèque est basée sur C++ et de l'incertitude quant à la future politique de licence. La plupart du code de Budgie est écrit en Vala, mais une boîte à outils C ou Rust était disponible comme options de migration.

Quant à la distribution Solus, le projet continuera à créer une version alternative basée sur GNOME, mais cette version sera marquée comme non supervisée par le projet et mise en évidence dans une section distincte sur la page de téléchargement. Une fois Budgie 11 publié, les développeurs évalueront ses capacités par rapport à GNOME Shell et décideront de continuer à construire une build avec GNOME ou de l'arrêter, en fournissant des outils de migration vers une build avec Budgie 11. Dans la build Solus avec le bureau Budgie 11, il est prévu de réviser la composition des applications, en remplaçant les applications GNOME par des analogues, y compris celles développées dans le cadre du projet. Il est par exemple prévu de développer notre propre centre d'installation d'applications.

Rappelons que le bureau Budgie propose sa propre implémentation du shell GNOME, du panneau, des applets et du système de notification. Pour gérer les fenêtres, le gestionnaire de fenêtres Budgie Window Manager (BWM) est utilisé, qui est une modification étendue du plugin de base Mutter. Budgie est basé sur un panneau dont l'organisation est similaire aux panneaux de bureau classiques. Tous les éléments du panneau sont des applets, ce qui vous permet de personnaliser la composition de manière flexible, de modifier le placement et de remplacer les implémentations des éléments principaux du panneau à votre goût. Les applets disponibles incluent le menu d'application classique, le système de changement de tâches, la zone de liste des fenêtres ouvertes, la visionneuse de bureau virtuel, l'indicateur de gestion de l'alimentation, l'applet de contrôle du volume, l'indicateur d'état du système et l'horloge.

Budgie Desktop passe de GTK aux bibliothèques EFL par Enlightenment Project


Source: opennet.ru

Ajouter un commentaire