URL: https://linuxfr.org/news/gnome-3-22-karlsruhe-a-land-far-far-away Title: GNOME 3.22 Karlsruhe : A Land Far, Far Away Authors: antistress M5oul, Davy Defaud, Eric, Jehan, ZeroHeure, Jiehong, Laurent Pointecouteau, Lucas, 4fages, Benoît Sibaud, palm123, Anonyme, olivierweb, guitou, Kekun, esdeem, Adrien Dorsaz, ff9097, Yves Bourguignon, j, jcr83 et EmmanuelP Date: 2016年04月10日T14:52:15+02:00 License: CC By-SA Tags: rust, wayland, libreoffice, pitivi, gtk, gtk3 et xdg-app Score: 99 On ne présente plus [[GNOME]], l’[[environnement de bureau]] libre (depuis toujours), sexy (depuis [la série 3._x_](https://www.gnome.org/gnome-3/)), ergonomique (selon les points de vue), personnalisable (non, là, je plaisante, en revanche) et, dorénavant, à la pointe de la technique ! GNOME 3.22, nom de code _Karlsruhe_, est sorti le mercredi 21 septembre 2016, avec, sous le capot, rien de moins qu’une révolution... La dernière version de GNOME est le résultat de six mois de développement dont 22 980 changements effectués par approximativement 775 contributeurs. ---- [Site officiel de GNOME](https://www.gnome.org/) [Article Wikipédia de GNOME](https://fr.wikipedia.org/wiki/GNOME) [GNOME libre : Sortie de la première bêta de GNOME 3.22](https://www.gnomelibre.fr/2016/08/sortie-de-la-premiere-beta-de-gnome-3-22/) [3.22 – Notes de version](https://wiki.gnome.org/ThreePointTwentyone/ReleaseNotes) [3.22 – Calendrier de sortie](https://wiki.gnome.org/ThreePointTwentyone) [3.20 – Précédente dépêche LinuxFr.org](https://linuxfr.org/news/parution-de-gnome-3-20-delhi) [3.22 – Vidéo de présentation](https://youtu.be/LhY7rpWXm1Y) [3.22 – Article détaillé des changements](https://help.gnome.org/misc/release-notes/3.22/index.html.fr) ---- ![logo de GNOME](https://img.linuxfr.org/img/68747470733a2f2f75706c6f61642e77696b696d656469612e6f72672f77696b6970656469612f636f6d6d6f6e732f7468756d622f362f36382f476e6f6d656c6f676f2e7376672f31393870782d476e6f6d656c6f676f2e7376672e706e67/198px-Gnomelogo.svg.png) # Général ## Wayland, Wayland, Wayland ! Le choix de faire reposer par défaut GNOME sur [[Wayland]] a été différé à de nombreuses reprises... Le travail d’intégration est achevé et GNOME-Wayland est à présent [comparable en termes de fonctionnalités](https://fedoraproject.org/wiki/Wayland_features) à GNOME-X11. Ceci sans compter les bonus apportés par l’implémentation du protocole Wayland en termes de finition, de sécurité et même d’[efficacité énergétique](https://bugzilla.gnome.org/show_bug.cgi?id=742254), ni [les nouvelles possibilités qui s’ouvrent aux développeurs](https://blogs.gnome.org/mclasen/2016/03/04/why-wayland-anyway/) ! ![logo Wayland](https://img.linuxfr.org/img/68747470733a2f2f75706c6f61642e77696b696d656469612e6f72672f77696b6970656469612f636f6d6d6f6e732f7468756d622f392f39392f5761796c616e645f4c6f676f2e7376672f31363070782d5761796c616e645f4c6f676f2e7376672e706e67/160px-Wayland_Logo.svg.png) ### Périphériques d’entrée Ces derniers mois ont vu arriver la prise en charge des tablettes graphiques par GTK+ sous Wayland (_cf._ [ce billet de blogue](https://blogs.gnome.org/carlosg/2016/04/06/gtk-wayland-tablet-support-is-merged/)), ce qui fut une des grosses raisons du retard de Wayland par défaut. En effet, si Wayland est probablement prêt à 99 % (statistiques sorties du chapeau), comme toujours, ce sont les détails qui bloquent. Bien qu’une majeure partie de la population utilisera essentiellement souris et clavier, sortir un système d’exploitation sans prise en charge de périphériques d’entrée avancés n’est pas possible de nos jours. C’est ainsi que [_libinput_](http://who-t.blogspot.fr/2016/04/libinput-and-graphics-tablet-pad-support.html) a annoncé successivement les versions [1.3.0](https://lists.freedesktop.org/archives/wayland-devel/2016-May/028704.html) et [1.4.0](https://lists.freedesktop.org/archives/wayland-devel/2016-July/030121.html) à quelques mois d’intervalle. Cette dernière version donne à son mainteneur l’occasion de [jeter un œil en arrière pour mesurer le chemin parcouru](https://who-t.blogspot.fr/2016/07/libinput-is-done.html). Parmi les apports intéressants de Wayland, nous pouvons noter la gestion de pointeurs multiples : chaque périphérique de pointage est indépendant avec son propre pointeur (et même une icône de pointeur différente), contrairement à X où tous les périphériques se partageaient un pointeur unique. Ainsi, une souris et une tablette affichent deux pointeurs indépendants simultanément. On pourrait donc imaginer de nouvelles manières de travailler où un artiste pourrait dessiner avec un stylo à la main, et cliquer sur des boutons de l’autre main. On pourrait même avoir deux stylos numériques et dessiner simultanément (comme si vous dessiniez avec deux pinceaux en même temps, chacun pouvant avoir une texture, couleur et brosse différentes), ce qui est actuellement impossible. Ce type de fonctionnalité ouvre de nouvelles perspectives pour l’art numérique, mais aussi au niveau de l’interaction homme‐machine. Bien sûr, cela nécessite que les applications qui souhaitent tirer avantage de ceci adaptent leur code. Mais quand on parle d’avancée dans les périphériques d’entrée, on parle notamment de tablettes graphiques, car ce sont des périphériques très polyvalents. Les souris, les claviers, etc., ce type de périphériques est plutôt bien supporté depuis longtemps et, même s’ils peuvent profiter de quelques touches un peu hors norme, ce sont généralement des fonctionnalités bien définies. C’est d’un ennui ! Les tablettes graphiques, en revanche, ont cette particularité qu’elles sont fournies de boutons génériques, c’est‐à‐dire qui n’ont pas de fonction par conception, à charge de l’utilisateur de les configurer. C’est ainsi que Carlos Garnacho explique l’[amélioration de la prise en charge de ces boutons dans Wayland](https://blogs.gnome.org/carlosg/2016/08/24/wayland-%E2%99%A1-drawing-tablets) : plutôt qu’associer seulement une combinaison de type « touche clavier » (ex : `ctrl` + `lettre`), il est désormais également possible d’associer des actions (donc une fonction sémantique). Mais encore mieux, les applications seront capables de configurer les boutons, un peu comme des profils applicatifs. Un artiste pourra ainsi configurer un bouton pour lancer une action particulière dans GIMP, par exemple un effet souvent utilisé, alors que dans Inkscape, ce même bouton pourra avoir une toute autre fonction. Cela nécessitera, bien sûr, une prise en charge au niveau du code des applications intéressées par ce type de fonctionnalité, qui sont donc probablement avant tout les applications de création graphique (davantage susceptibles d’avoir des utilisateurs possédant ce type de périphériques). ![Configuration des boutons de tablette graphique](https://blogs.gnome.org/carlosg/files/2016/08/Screenshot-from-2016年08月04日-18-32-10.png) ### Mutter [Mutter aussi a été optimisé durant ce cycle de développement](https://mail.gnome.org/archives/gnome-announce-list/2016-June/msg00020.html) : amélioration du copier‐coller entre les applications X11 et les applications Wayland natives. Meilleure gestion du multi‐écran sous Wayland... ### Applications tournant nativement Outre les applications au cœur de GNOME, citons‐en quelques autres tournant nativement sous Wayland : [[LibreOffice]], à partir de [la version 5.0](https://linuxfr.org/news/libreoffice-5-0-sous-le-capot) (quelques finitions peuvent rester nécessaires [ici](http://caolanm.blogspot.fr/2015/07/libreoffice-on-wayland.html) ou [là](http://caolanm.blogspot.fr/2016/02/gtk3-and-libreoffice.html)) ou encore [[Pitivi]] à partir de la [version 0.95](https://linuxfr.org/news/pitivi-0-95-s-elance-avec-un-nouveau-moteur). Rappelons également que les applications non encore converties à Wayland — par exemple, Firefox ([ticket 635134](https://bugzilla.mozilla.org/show_bug.cgi?id=635134)) et GIMP ([qui doit attendre le portage vers la version 3 de GTK+](http://wiki.gimp.org/wiki/Roadmap)) — tournent néanmoins parfaitement et fluidement dans une session Wayland de GNOME, via le procédé [XWayland](https://wayland.freedesktop.org/xserver.html). Enfin, nous savons déjà que [Fedora 25, par exemple, activera Wayland par défaut](https://www.phoronix.com/scan.php?page=news_item&px=Fedora-25-Alpha-Released). Ainsi, RedHat tient une liste à jour de [ce qui ne marche pas encore](https://fedoraproject.org/wiki/How_to_debug_Wayland_problems#Known_issues.2C_frequent_complaints.2C_fundamental_changes), mais également de ce qu’il reste à faire pour que [certains outils puissent continuer à marcher sur Wayland _avec_ GNOME](https://fedoraproject.org/wiki/Wayland_features). ## Paramètres ![Nouvelle vue des paramètres (crédit : feaneron)](https://feaneron.files.wordpress.com/2016/07/captura-de-tela-de-2016年07月21日-20-32-58.png) Le centre de paramétrage est en train de changer de _design_ avec une barre latérale de navigation où sont listées les paramétrages par catégorie avec leurs icônes et descriptions. Cette barre latérale redimensionnable est placée sur la gauche de la fenêtre. L’ancienne vue est toujours celle par défaut. N’importe qui peut donc la lancer avec `gnome-control-center-alt`. À vous de tester et de remonter ce qui ne va pas ! # Shell - meilleure prise en charge de Wayland ; - implémentation du système de permissions qui demandera à l’utilisateur s’il souhaite partager sa géolocalisation ou autoriser l’accès à certains périphériques (webcam, microphone...) pour les applications isolées qui en feront la demande ; - plusieurs dizaines de corrections de bogues. # Applications Des fonctionnalités pour utilisateurs avancés font leur apparition dans cette version, comme la possibilité de renommer les fichiers en masse dans Fichiers (qui [rattrape Thunar, son équivalent Xfce, sur ce point](http://docs.xfce.org/xfce/thunar/bulk-renamer/start)) ou d’éditer les méta‐données de vos fichiers musicaux via Musique. Ces fonctionnalités ont été implémentées par des étudiants du [GSoC 2016](https://summerofcode.withgoogle.com/ "Google Summer of Code 2016"), respectivement Alexandru Pandelea [[_blogue_](https://alexandrupandelea.wordpress.com/)] et Saiful B. Khan [[_blogue_](https://saifulbkhan.wordpress.com/)]. ## Logiciels - gestion des applications [Flatpak](http://news.softpedia.com/news/gnome-software-package-manager-has-just-received-support-for-flatpak-packages-504397.shtml) et [Snap](http://news.softpedia.com/news/gnome-software-3-22-will-support-installation-of-snaps-flatpak-repository-files-506580.shtml) ; - prise en charge des extensions GNOME Shell ; - prise en charge initiale de Steam ; - les boîtes de dialogues pour la mise à niveau du système d’exploitation ont été retravaillées ; - l’information concernant la taille des paquets est désormais séparée en deux : la taille à télécharger et celle nécessaire pour l’installation ; - ajout d’un bouton d’annulation et d’informations de progression sur la page de détails ; - l’origine d’un paquet est désormais indiquée quand ce dernier est disponible depuis plusieurs sources différentes ; - prise en charge des liens `appstream://` ; - ajout d’informations concernant les applications isolées. ## Agenda L’agenda a été encore peaufiné, avec une gestion des alarmes, le changement possible de mois par raccourci clavier, une vue de tous les évènements du mois en cliquant sur le nom du mois, la prise en charge du glisser‐déposer... ![Rappel évènement](http://i1-news.softpedia-static.com/images/news2/gnome-calendar-will-support-alarms-gnome-software-to-better-handle-flatpaks-506048-2.jpg) ## Fichiers ### Renommage en masse Nautilus se dote d’un outil de renommage en masse de fichiers qui permet de faire du « rechercher et remplacer », mais également d’utiliser un patron prédéfini. Ce patron peut utiliser les étiquettes (_tags_) des fichiers musicaux. ![Renommage par patron de fichiers musicaux](https://csorianognome.files.wordpress.com/2016/08/batch-renaming1.png) ![Renommage par « cherche et remplace »](https://csorianognome.files.wordpress.com/2016/08/batch-rename3.png) À noter que les conflits sont surlignés en jaune par sécurité. ### Fichiers compressés L’ouverture des fichiers compressés s’est toujours faite avec un outil tiers, comme _file-roller_. Ceci empêchait de gérer la progression de la décompression au sein de Nautilus (mais également l’annulation, la répétition et la décompression en arrière‐plan en fermant la fenêtre), une bibliothèque a donc été mise en place pour ça : _gnome-autoar_. Nautilus gère maintenant la création d’archives et leur décompression. Cette nouvelle bibliothèque permettra à d’autres applications, comme Evolution ou Epiphany, de gérer les archives directement. ![Compression d'archives et barre de progression](https://csorianognome.files.wordpress.com/2016/08/compression.png) Le comportement par défaut est de décompresser l’archive sélectionnée avec un double clic, mais une option dans les préférences permet de désactiver ce choix si besoin est. ### Autres Le menu de droite s’améliore, pour s’inspirer un peu de Firefox, par exemple dans la gestion du zoom. ![Menu de droite](https://csorianognome.files.wordpress.com/2016/08/menus.png) La gestion du bureau est maintenant séparée de Nautilus pour plus de facilité de travail. ## Cartes Cartes [utilise désormais Mapbox](http://www.gnomelibre.fr/2016/08/mapbox-a-la-rescousse-de-cartes). Plutôt que de passer par un serveur mandataire (_proxy_) pour éviter une nouvelle interruption de service en cas de changement de fournisseur de tuiles, un fichier `service.json` est désormais téléchargé depuis les serveurs de GNOME pour savoir quel fournisseur de tuiles utiliser directement, ce qui rend l’affichage bien plus rapide. Enfin, le « rebouclage horizontal » de la carte pour pouvoir faire le tour de la planète est maintenant là. ## Jeux [_Jeux_](https://wiki.gnome.org/Apps/Games) est une jeune application GNOME pour présenter les jeux stockés dans votre ordinateur, qu’il s’agisse de jeux installés (natifs, Steam), de jeux à part (comme ceux utilisant l’infrastructure [LÖVE](https://love2d.org/)) ou même de jeux à émuler (ROM et images disque). Dans le cas de ces derniers, Jeux se charge de les lancer dans sa propre fenêtre, faisant ainsi office de frontal pour émulateur basé sur [Libretro](http://www.libretro.com/). Cette version 3.22 comporte pas mal de nouveautés majeures : - prise en charge des manettes de jeu ; - prise en charge du plein écran ; - prise en charge des jeux PlayStation pour l'émulation ; - téléchargement des pochettes de jeu pour la plupart des consoles (les pochettes sont récupérées depuis _TheGamesDB.net_ pour les jeux consoles et le magasin Steam pour les jeux Steam), - affichage des jeux Atari 2600, Atari 7800, NEC CD-ROM2 et Mega-CD ; - ajout d’icônes pour LÖVE et Nintendo DS. Les détails figurent dans l’annonce de la sortie [sur le _blog_ d’Adrien Plazas](http://bytesgnomeschozo.blogspot.fr/2016/09/gnome-games-322-giant-leap.html). ## Machines L’outil de gestion des machines virtuelles présente les nouveautés suivantes : - ajout d’une option de clonage ; - l’ordre d’affichage des différentes machines virtuelles est préservé d’une session à l’autre ; - les noms d’hôte n’utilisent plus de caractères qui poseraient problème sous Microsoft Windows ; - les nouvelles machines virtuelles n’exposent plus la connexion [SPICE](https://fr.wikipedia.org/wiki/SPICE_%28protocole%29 "Simple Protocol for Independent Computing Environments") à tous les utilisateurs ; - prise en charge des adresses URL SPICE _spice+unix_ ; - ajout d’une action « redémarrer » et suppression de l’action « pause » dans le menu contextuel du mode _Affichage_. ## Web Le navigateur par défaut prend maintenant en charge le « coller et aller » (permettant de rendre directement à la page dont l’adresse est dans la presse‐papiers), déjà présent sous Firefox par exemple. La nouvelle fenêtre des raccourcis clavier fait maintenant son arrivée. Enfin, il est maintenant possible de dupliquer un onglet. ## Musique Certains auront noté que les performances de _Musique_ n’étaient pas extraordinaires, mais [c’est maintenant du passé](https://feaneron.com/2016/08/09/gnome-music-is-fast-again/). Enfin, tout comme _Web_, _Musique_ implémente également la page des raccourcis clavier. ## Photos Une prise en charge expérimentale du partage de photos (courrier électronique, Bluetooth, Google, Flickr...) fait son entrée, accompagnée de la possibilité d’annuler toutes les modifications effectuées sur une photo. Vous pouvez désormais [envoyer vos photos dans les nuages](https://bugzilla.gnome.org/show_bug.cgi?id=751181) directement. Les fichiers GIF étant mal pris en charge (les fichiers GIF animés ne le sont pas toujours), ces derniers ne sont plus affichés pour le moment. ## Documents Documents vous permet maintenant de lire les fichiers au format EPUB (dans _Books_) et, pourquoi pas, en plein écran avec une barre d’outils sombre ! ## Évolution _Évolution_ vient juste de changer son moteur de rendu pour passer de Webkit 1 à Webkit 2 pour l’affichage des courriels. C’est un changement qui a pris du temps, mais qui a permis de résoudre plusieurs dizaines de bogues et d’apporter diverses améliorations. # Développeurs ## Builder [_Builder_ se refait une beauté](https://blogs.gnome.org/chergert/2016/07/01/builder-designs) : - nouveau système de recherche et de remplacement ; - nouvelle barre de compilation qui fournit des informations sur la configuration, la branche du système de gestion de versions et autres informations importantes ; - un nouvel outil pour le profilage de code basé sur _Sysprof_ ; - amélioration des modèles de projets ; - ajout d’une interface de configuration des logiciels de gestion de versions ; - amélioration de la prise en charge de _Vim_ ; - nouveau greffon de gestion des couleurs ; - amélioration de l’interface concernant la commande `git clone`, le sélecteur de fichiers ou l’assistant ; - nouvelle icône. ## Flatpak Flatpak (anciennement [_xdg-app_](https://www.gnomelibre.fr/2016/05/xdg-app-change-de-nom-et-devient-flatpak)). Une [sortie a eu lieu le 21 juin 2016](http://flatpak.org/press/2016-06-21-flatpak-released.html). ![logo de flatpak](http://img15.hostingpics.net/pics/974790flatpak.png) Rappelons brièvement pourquoi cette nouvelle technologie fait autant de bruit : Flatpak devrait permettre aux Linuxiens d’installer l’application de leur choix sans se soucier de leur distribution, de la version de celle‐ci ou même des dépendances requises. En intégrant Flatpak à _Logiciels_ (_cf._ plus haut), GNOME veut rendre son usage aussi simple que l’est déjà celui des logiciels distribués via [APT](https://fr.wikipedia.org/wiki/Advanced_Packaging_Tool "Advanced Packaging Tool") ou [RPM](https://fr.wikipedia.org/wiki/RPM_Package_Manager "Red Hat Package Manager"). Une [page dédiée](http://flatpak.org/apps.html) recense quelques dépôts Flatpak disponibles : un dépôt `gnome-apps` pour les applications GNOME en version stable, un dépôt `gnome-nightly-apps` pour les applications GNOME en version [_nightly_](https://fr.wikipedia.org/wiki/Version_d'un_logiciel#Version_avanc.C3.A9e), un dépôt `nightly-graphics` d’outils de création graphique non liés à un environnement de bureau particulier et également en version _nightly_ (tels que Darktable, GIMP, Inkscape et MyPaint) et enfin des dépôts pour LibreOffice, Telegram ou Pitivi. À défaut de _bundle_ pour le moment, un script préparé par un développeur de Red Hat permet [de compiler Firefox depuis sa branche _master_](https://www.reddit.com/r/linux/comments/4oaazq/latest_firefox_in_sandbox_using_flatpak/?st=iqzv34gn&sh=913e8db3), puis de le lancer et de le mettre à jour facilement en tant qu’application Flatpak. [Flatpak](http://flatpak.org) est disponible sur la plupart des [distributions GNU/Linux courantes](http://flatpak.org/getting.html). Debian, parmi d’autres distributions, [est prête](http://smcv.pseudorandom.co.uk/2016/flatpak). ## Glib En bref : - refonte de l’API de journalisation pour supporter les champs clef‐valeur structurés dans les journaux ; - ajout de la gestion du transfert de ces derniers au service _systemd-journald_ ; - les sorties basées sur `stdio` bénéficient désormais de couleurs ; - réorganisation de l’infrastructure de journalisation autour d’une fonction `writer` pour laquelle les applications spécifient leur stratégie de journalisation et dépréciation des gestionnaires de journaux en faveur de ce dernier, afin d’éliminer l’ambiguïté sur où et comment prendre en charge les journaux ainsi que les conflits entre gestionnaires de journaux ; - d’autres fonctionnalités encore de l’infrastructure de journalisation sont présentées dans une API publique, laissant libres les applications de choisir entre différentes stratégies, allant de celle par défaut de la GLib à une personnalisation complète ; - les tests unitaires des messages de journal sont maintenant plus flexibles, car on peut les faire dans une fonction `writer` personnalisée plutôt qu’avec des fonctions internes à GLib (limitant, car imposant un ordre strict des vérifications de messages) ; - la journalisation structurée simplifie l’implémentation de procédés de journalisation plus puissants, et devrait entraîner une moindre confusion sur les conflits entre les gestionnaires de journaux des différentes bibliothèques ; - facilitation de l’inclusion de plus de métadonnées dans les messages journaux, comme les identifiants de message (comme avec _journald_ : ) ; - utilisation de _journald_ si actif. ## GTK+ ### Coup d’œil dans le rétro Vous pouvez regarder la conférence (en anglais) [_GTK: Are we in the future, yet?_](https://media.ccc.de/v/16-gtk_are_we_in_the_future_yet), donnée au dernier [GUADEC](https://fr.wikipedia.org/wiki/GNOME#GUADEC "GNOME Users And Developers European Conference") par Emmanuele Bassi, qui revient notamment sur l’évolution de GTK+ au cours de ces vingt dernières années. ### Nouveautés de GTK+ 3.22 Nous attendions l’avènement de _GTK Scene Kit_ (GSK) pour cette version, mais [ce sera finalement pour la prochaine](https://www.phoronix.com/scan.php?page=news_item&px=GTK-GSK-Not-For-3.22), [autrement dit GTK+ 4.0](https://www.phoronix.com/scan.php?page=news_item&px=GTK4-Beyond-Long-Term-Promise). Nous en reparlerons donc à cette occasion. En attendant, les plus impatients d’entre vous pourront suivre (en anglais) le travail en cours sur le [blogue d’Emmanuele Bassi](https://www.bassi.io/tag/gsk/) [[_feuille de route de GTK+_](https://wiki.gnome.org/Projects/GTK%2B/Roadmap)]. ### GTK+ 4.0 en approche ! #### Insaisissable GTK+ (= le problème) Commençons par un résumé du feuilleton exposant le problème. Ceux qui lisent _LinuxFr.org_ le savent bien : [le thémage avec le CSS a reçu une refonte majeure dans la précédente version de GTK+](https://linuxfr.org/news/parution-de-gnome-3-20-delhi#gtk). Vers avril/mai, certains ont publiquement râlé [en découvrant après coup que leurs applications ne se comportaient soudainement plus comme prévu](https://blogs.gnome.org/mortenw/2016/04/22/another-gtk-abi-break), et [divers](https://blogs.gnome.org/mclasen/2016/04/29/yet-another-gtk-update) [échanges](https://blogs.gnome.org/mortenw/2016/05/06/change) ont suivis. L’occasion de poser, une fois de plus, la question de la stabilité des interfaces de programmation de GTK+, spécialement de la série 3._x_... Hasard ou coïncidence, il a été [décidé](https://www.bassi.io/articles/2016/05/16/reviving-the-gtk-dev-blog) mi‐mai de [réactiver le blogue relatif au développement de GTK+](https://blog.gtk.org). De fait, celui‐ci est alimenté avec talent par Emmanuele Bassi et permet de suivre, semaine après semaine, l’actualité du développement de GTK+. #### Vous avez dit _Less‐than‐perfect API stability_ ? Reconnaissant (par euphémisme interposé) le problème posé par le manque de stabilité de l’API de GTK+ 3, mais soulignant dans le même temps l’inconvénient que créerait un engagement de stabilité à long terme de cette dernière (qui risquerait de bloquer les évolutions futures nécessaires de la bibliothèque), les développeurs réunis au _GTK Hackfest_ de Toronto mi‐juin ont proposé un plan qui semblait alors assez peu lisible (voir certains billets de blogue : [_"Gtk 4.0 is not Gtk 4"_](https://blogs.gnome.org/desrt/2016/06/13/gtk-4-0-is-not-gtk-4), [_"Gtk 5.0 is not Gtk 5"_](https://blogs.gnome.org/desrt/2016/06/14/gtk-5-0-is-not-gtk-5), [_GTK versioning and distributions_](http://smcv.pseudorandom.co.uk/2016/gtk-versioning), [_Dispatches from the GTK+ hackfest_](https://blogs.gnome.org/mclasen/2016/06/14/dispatches-from-the-gtk-hackfest), [_Gtk+ Versioning_](https://blogs.gnome.org/mortenw/2016/06/15/gtk-versioning), [_Long term support for GTK+_](https://blogs.gnome.org/mortenw/2016/06/15/gtk-versioning)...). Les diverses propositions (résumées sur une [page de wiki](https://wiki.gnome.org/Projects/GTK%2B/Lifecycle)) ont provoquées beaucoup de discussions et, bien sûr, du _troll_ en pagaille, parfois virulent. #### Tout est bien qui finit bien (du moins, espérons‐le) Le [consensus final](https://blog.gtk.org/2016/09/01/versioning-and-long-term-stability-promise-in-gtk) est cependant bien plus simple et tout à fait compréhensible (car plus proche de la gestion de versions sémantique à laquelle les gens sont habitués). Tous les deux ou trois ans, une nouvelle version majeure stable sortira, ce qui implique un gel des fonctionnalités existantes (API stable). Bien sûr, des versions mineures stables pourront ajouter des _widgets_ ou mettre à jour des implémentations, mais rien de transcendantal et, en particulier, il n’y aura pas de nouvelles fonctionnalités, ni de changement de thèmes ou d’API. Chaque version stable sera maintenue pour au moins trois ans (avec des corrections de bogues mettant à jour la micro‐version) et les développeurs d’applications tierces sont appelés à utiliser cette branche stable faite pour ne plus casser les applications. Exceptionnellement, la première version stable est GTK+ 3.22, car c’est une étape de transition, mais les versions stables ultérieures seront 4.0, puis 5.0, 6.0, etc. Parallèlement à chaque sortie d’une nouvelle majeure stable, une nouvelle branche numérotée _x_.90 deviendra la nouvelle branche de développement. De cette branche éclora tous les six mois une version de développement. Ces versions pourront casser l’API, les thèmes, etc. Bien sûr, cela ne signifie pas que l’API sera cassée à chaque fois. Les développeurs GTK+ éviteront au maximum de casser le fonctionnement existant ; et, les rares fois où ils le feront, ils communiqueront dessus. En d’autres termes, cette branche de développement suivra la logique de développement actuelle de GTK+ 3. Les développeurs d’applications tierces ne sont pas encouragés à utiliser ces versions (mais peuvent le faire, en acceptant le prix d’un travail de maintenance plus élevé). En revanche, on s’attend à ce que les applications _core_ du projet GNOME, bien plus proches de GTK+ et de ses évolutions, se basent sur ces versions de développement et profitent ainsi des dernières nouveautés. Tout cela peut mieux se comprendre par ce schéma d’exemple : ![The new versioning scheme](https://blog.gtk.org/wp-content/blogs.dir/119/files/2016/08/gtk-versioning-scheme-1.png) ## GStreamer ### La compilation de GStreamer bientôt confiée à Meson plutôt que les Autotools Jusqu’à présent le projet GStreamer utilisait la suite d’outils de compilation du projet GNU nommée [[Autotools]], créée dans les années 80. [Nirbheek Chauhan](http://nirbheek.in/) et [Tim‐Philipp Müller](https://twitter.com/tp_muller), pour le compte de Centricular, travaillent depuis quelques mois à utiliser un autre outil : [Meson](https://github.com/mesonbuild/meson/). Celui‐ci s’avère prometteur en ce qu’il permet de raccourcir drastiquement le temps de compilation : d’un facteur 2,5 sur GNU/Linux et d’un facteur 10 sur Windows ! Les tests se poursuivent sur l’ensemble des plates‐formes prises en charge par GStreamer : GNU/Linux, Mac OS X, Windows, iOS et Android. Dans son [billet](http://blog.nirbheek.in/2016/05/gstreamer-and-meson-new-hope.html), Nirbheek Chauhan semble aussi enthousiaste à l’égard de Meson que dépité à l’égard d’Autotools qu’il évoque en ces termes : « Appeler Autotools le X.Org des outils de compilation relève de la flatterie. C’est juste un outil horrible. Nous devons vraiment consacrer du temps à trouver quelque chose qui travaille pour nous plutôt que contre nous. » Emmanuele Bassi y est également allé de [son rapport d’expérience](https://www.bassi.io/articles/2016/06/09/experiments-in-meson/), et [Pitivi](https://linuxfr.org/news/gnome-3-22-a-land-far-far-away#pitivi) 0.97 a sauté le pas. Vous pouvez regarder [la conférence donnée au dernier GUADEC sur le sujet par Nirbheek Chauhan](https://media.ccc.de/v/44-making_your_gnome_app_compile_24x_faster). ### Oxydation de GStreamer Décidément la rouille (*rust*, en anglais) corrode tout : après Firefox, voici venu le tour de GStreamer ! [Sebastian Dröge (alias _slomo_)](https://coaxion.net/) (Centricular), à l’occasion du _GStreamer Spring Hackfest 2016_, a travaillé avec [Luis de Bethencourt](http://luisbg.blogalia.com/) (Samsung) à permettre de lier le code [_C_](https://fr.wikipedia.org/wiki/C_%28langage%29) de [[GStreamer]] avec du code [Rust](https://fr.wikipedia.org/wiki/Rust_%28langage%29) (lire [_ce billet_](https://coaxion.net/blog/2016/05/writing-gstreamer-plugins-and-elements-in-rust/)). Selon lui, dans un premier temps, des composants comme les analyseurs et les (dé)multiplexeurs gagneraient à être écrits en Rust compte tenu de leur complexité et de leur exposition à des données de tout genre et de toute provenance (parfois non garantie). Plus tard, des parts plus importantes du code de GStreamer pourraient également être réécrites en Rust. # Intégration dans les distributions GNOME 3.22 sera intégré dans [Fedora 25](https://fedoraproject.org/wiki/Releases/25/ChangeSet) prévue pour [novembre 2016](https://fedoraproject.org/wiki/Releases/25/Schedule), [Arch Linux](https://archlinux.fr/), [Ubuntu GNOME](https://fr.wikipedia.org/wiki/Ubuntu_GNOME) 17.04, [Debian](https://www.0d.be/debian/debian-gnome-3.22-status.html) (cette version devrait logiquement être proposée dans [Debian 9 _Stretch_](https://wiki.debian.org/fr/DebianStretch)), ainsi que dans un certain nombre d’[autres distributions GNU/Linux](https://en.wikipedia.org/wiki/Comparison_of_Linux_distributions#Technical). Par ailleurs, comment ne pas signaler que, peu après la parution de GNOME 3.20, Gedit a finalement été doté d’[une nouvelle version pour systèmes Microsoft Windows](https://blogs.gnome.org/nacho/2016/04/05/gedit-3-20-1-for-windows/) ? La 3.20.1 pour Windows 64 bits succède donc à la 2.30 pour Windows 32 bits ! # Vitalité du projet Notons tout d’abord [le _satisfecit_ donné par un des développeurs de _Fichiers_ concernant la petite équipe de développement qui s’est formée depuis un an et demi](https://csorianognome.wordpress.com/2016/05/04/nautilus-gtk-status-1-year-of-progress/) autour de ce composant majeur de notre environnement de bureau favori et qui revient de loin, semble‐t‐il, pour le coup. Voyons ensuite [les statistiques de développement de la précédente version (3.20) de GTK+ présentées par Emmanuele Bassi](https://www.bassi.io/articles/2016/05/06/who-wrote-gtk-3-20/) (qui avait déjà fait le point à l’occasion de la version 3.18 en [deux](https://www.bassi.io/articles/2015/09/15/who-wrote-gtk-3-18/) [billets](https://www.bassi.io/articles/2015/09/16/who-wrote-gtk-reprise/)). Au passage, on se rend mieux compte du travail qu’a représenté la refonte du « thémage » avec le CSS (le nombre de lignes de code ajoutées et supprimées atteint respectivement 158 427 et 117 823 dans la version 3.20 de GTK+, contre 78 676 et 54 508 dans la version précédente). Ce billet liste [les projets retenus](http://www.gnomelibre.fr/2016/05/liste-des-projets-acceptes-pour-le-google-summer-of-code-2016/) pour le [_Google Summer of Code_](https://fr.wikipedia.org/wiki/Google_Summer_of_Code "Google Summer of Code") _2016_. À l’occasion du _GNOME Asia Summit 2016_, Tobias Mueller [[_blogue_](https://blogs.gnome.org/muelli/)] est revenu sur [les cinq ans de GNOME 3](https://muelli.cryptobitch.de/paper/2016-GNOME.Asia-Summit-Five-years-of-GNOME-3-web.pdf). # Autour de GNOME ## Pitivi Les versions 0.96 et 0.97 de [Pitivi](https://fr.wikipedia.org/wiki/Pitivi), le logiciel de montage vidéo non linéaire libre, puissant et intuitif, qui partage les technologies du bureau GNOME (la boîte à outils graphiques GTK+, le moteur multimédia [[GStreamer]]) et respecte ses [bonnes pratiques pour l’IHM](https://fr.wikipedia.org/wiki/Bonnes_pratiques_pour_l'IHM) (énoncées [_ici_](https://developer.gnome.org/hig/stable/ "Human Interface Guidelines")), sont sorties durant ce cycle de développement (respectivement les 30 juin et 8 août 2016). Si votre distribution ne vous propose pas encore cette version, vous pouvez [récupérer un paquet [Flatpak](http://linuxfr.org/news/gnome-3-22-a-land-far-far-away#flatpak-anciennement-xdg-app) de cette dernière version sur le site officiel du projet](http://pitivi.org/?go=download) qui propose également un canal _nightly_. ## LibreOffice et Firefox La version 5.2 de [LibreOffice](https://fr.wikipedia.org/wiki/LibreOffice) (sortie le 3 août 2016), la suite bureautique phare du monde libre, améliore son intégration graphique dans un environnement GTK+ (billets de blogue [_un_](http://caolanm.blogspot.fr/2016/02/current-libreoffice-native-gtk3-elements.html) et [_deux_](http://caolanm.blogspot.fr/2016/02/native-gtk3-menubar-in-libreoffice.html)). En passant à la version 46 (sortie le 26 avril 2016, voir [notre dépêche](https://linuxfr.org/news/firefox-46-version-suedee)), Firefox, notre navigateur préféré, embrasse GTK+ 3 (sous réserve des choix faits à la compilation par votre distribution). ## Shotwell et Geary Bonne nouvelle : deux logiciels orphelins depuis l’arrêt de la fondation [[Yorba]] en novembre 2015 ont successivement retrouvé un foyer. Il s’agit tout d’abord du logiciel de gestion de photos personnelles [[Shotwell]], pour lequel [Jens Georg a proposé de reprendre les rênes du projet](https://mail.gnome.org/archives/shotwell-list/2016-April/msg00000.html) à compter de la version 0.22.1 parue le 15 avril 2016 ! Du coup, une version 0.23 est sortie quelques jours après. Il s’agit ensuite du logiciel de messagerie [Geary](https://fr.wikipedia.org/wiki/Geary_(logiciel)), pour lequel [Michael Gratton s’est également manifesté](https://mail.gnome.org/archives/geary-list/2016-March/msg00002.html) et a publié [la version 0.11.0 le 15 mai 2016](http://www.gnomelibre.fr/2016/05/sortie-de-geary-0-11-0), ainsi que deux versions mineures 0.11.1 et 0.11.2. ## Systemd Manager _Systemd Manager_ est un tout jeune logiciel (son développement a débuté en novembre 2015) repéré par Okki qui en a fait [un billet de présentation](http://www.gnomelibre.fr/2016/05/sortie-de-systemd-manager-0-4-5/). Ce logiciel, qui permet, entre autres, de démarrer et arrêter graphiquement les différents services gérés par _systemd_, est développé principalement par Michael Murphy, alias _mmstick_, qui semble fan de [Rust](https://fr.wikipedia.org/wiki/Rust_%28langage%29) (il contribue également à [Redox OS](https://linuxfr.org/users/tankey/journaux/redox-os)) et [GTK+ 3](https://fr.wikipedia.org/wiki/GTK%2B) pour ses différents projets logiciels, dont celui‐ci : ![Capture d’écran de systemd-manager](https://github.com/mmstick/systemd-manager/raw/master/screenshot-services.png) ## GUADEC 2016 & 2017 Le GUADEC (_GNOME Users And Developers European Conference_), Conférence européenne annuelle des utilisateurs et développeurs GNOME, pour les francophones. L’[édition 2016](https://2016.guadec.org) a eu lieu à Karlsruhe, en Allemagne, du 12 au 17 août 2016 : - [conférences enregistrées](https://media.ccc.de/c/guadec2016) ; - [compte rendu de Jehan](https://linuxfr.org/users/jehan/journaux/compte-rendu-de-guadec-2016) ; - [compte rendu de _GNOME libre_](https://www.gnomelibre.fr/2016/09/guadec-2016). L’[édition 2017, devrait se dérouler en été à Manchester, en Angleterre](https://www.gnome.org/news/2016/09/guadec-2017).

AltStyle によって変換されたページ (->オリジナル) /