From Fedora Project Wiki

En ce mardi XX octobre, les utilisateurs du Projet Fedora seront ravis d'apprendre la disponibilité de la version Fedora Linux 37.

Fedora Linux est une distribution communautaire développée par le projet Fedora et sponsorisée par Red Hat, qui lui fournit des développeurs ainsi que des moyens financiers et logistiques. Fedora Linux peut être vu comme une sorte de vitrine technologique pour le monde du logiciel libre, c’est pourquoi elle est prompte à inclure des nouveautés.

Fedora garde un rôle central dans le développement de ces nouveautés via le développement en amont. En effet, les développeurs de la distribution contribuent également directement au code d’un certain nombre de logiciels libres contenus dans la distribution, dont le noyau Linux, GNOME, NetworkManager, PackageKit, PulseAudio, Wayland, systemd, la célèbre suite de compilateurs GCC, etc. Cliquez ici pour voir l’ensemble des contributions de Red Hat.

Cela a été aussi abordé dans une série d'articles ici, et par ici encore.


Expérience utilisateur

Passage à GNOME 43. Le menu principal bénéficie d'une refonte importante, les informations ne sont plus affichées sous forme de listes mais plutôt sous la forme de boutons à état. Par ailleurs des boutons pour prendre une capture d'écran ou basculer du mode sombre au mode clair font leur apparition à cet endroit. Il est également possible de changer de périphérique audio par ce menu (par exemple passer du casque à l'enceinte), rendant inutile les extensions qui fournissaient cette fonctionnalité par le passé.

Plus d'applications passent à la bibliothèque graphique GTK 4, comme Fichiers, Carte, Builder ou Console. Cela améliore l'intégration avec le reste du système et tire profit de l'ensemble des changements de cette bibliothèque, comme une meilleure prise en charge du mode sombre.

Le navigateur de fichiers bénéficie de nombreux changements. L'affichage est enfin adaptatif, l'affichage par défaut affiche ou non des widgets suivant l'espace disponible à l'écran. Les menus ont été entièrement réorganisés pour être plus pratiques à l'usage pendant que les résultats d'une recherche affichent mieux où sont situés les fichiers dans l'arborescence. La fonctionnalité ouvrir avec permet de garder en mémoire l'application par défaut pour un type de fichier considéré. La fenêtre des propriétés d'un fichier a été également entièrement redessinée pour être plus claire.

Le Calendrier bénéficie d'un menu contextuel pour afficher les événements à venir et a une nouvelle palette de couleurs pour son interface. Contact permet d'importer ou d'exporter des données sous le format standard vCard. Le client VOIP nommé Appels démarre plus rapidement, et gère les appels chiffrés.

Dans le panneau de configuration, un nouveau menu situé dans la partie confidentialité précise l'état de sécurité de votre machine : si votre processeur est affecté par des bogue matériels corrigés ou non par votre noyau, si vos firmware comme l'UEFI ont des mises à jour ou failles de sécurité connues, etc.

Il est possible de convertir n'importe quelle page web en web app qui s'intègre dans le menu de GNOME. Il suffit avec le navigateur Web de GNOME d'installer le site comme une web app pour cela.

L'environnement de bureau LXQt est proposé à la version 1.1.0. Cette version propose une meilleure intégration de son navigateur de fichiers avec les autres logiciels comme Firefox ou Chrome par la mise à disposition de l'interface DBus org.freedesktop.FileManager1 permettant de l'appeler lors de l'ouverture ou de l'enregistrement d'un fichier. La navigateur de fichiers dispose également d'un dossier fichiers récents. De nombreux nouveaux thèmes et fonds d'écran sont proposés, avec une meilleure intégration avec le thème Qt Fusion. Il est possible de configurer le ratio d'affichage pour la session. Dans la barre de statut, l'affichage de l'icône de batterie permet aussi d'afficher le pourcentage de charge.

Le logiciel de chat audio Mumble 1.4 est également mis à jour. Pour l'occasion, Fedora active l'intégration avec Pipewire pour le son, mais aussi renomme le paquet murmur en mumble-server pour mieux correspondre au choix du projet officiel. De même le fichier de configuration passe de /etc/murmur/murmur.ini à /etc/murmur.ini. Sinon le projet Mumble propose de son côté un nouveau système de plugin plus complet et qui permet l'installation ou la mise à jour de ceux-ci n'importe quand. Un module de recherche fait son apparition pour retrouver un utilisateur ou un canal de discussion. Une nouvelle petite fenêtre fait son entrée en scène pour visualiser qui parle sur quel canal en temps réel pour faciliter la compréhension de qui parle où sans utiliser l'affichage du client en entier. Les messages textes peuvent être rédigés avec le formatage Markdown ou encore l'audio est maintenant en stéréo de bout en bout. L'utilisateur peut configurer des surnoms à chaque interlocuteur pour faciliter la reconnaissance des autres utilisateurs.

Le répertoire /sysroot devient en lecture seule pour les images Fedora Silverblue, Kinoite et IoT. Pour l'image IoT, uniquement les nouvelles installations sont concernées, pour les autres les installations existantes auront aussi ce changement. Cela permet en effet d'améliorer la robustesse du système, notamment en empêchant la ré-étiquetage de SELinux qui pouvait casser le système faute de politique adéquate fournie.

Possibilité de tester le nouvel installateur Anaconda basé sur des technologies Web, sur des images dédiées. Anaconda repose sur la bibliothèque PatternFly pour la conception de l'interface et tire profil de ce qui a été développé à ce sujet pour le logiciel Cockpit. L'idée est de favoriser un affichage plus adaptatif aux différentes tailles d'écran ou un affichage distant. En effet l'installation via le protocole VNC était plutôt lent et décevant, en particulier sur des machines ayant des caractéristiques techniques très limitées. L'écriture de tests notamment d'affichage est simplifiée ce qui améliore la maintenance sur le long terme.

Création d'une image disque KVM pour faciliter l'usage de Fedora Server dans un environnement virtualisé. L'image repose sur les mêmes composants que l'image classique, si ce n'est pas le support matériel en moins. Par conséquent l'installation d'une Fedora peut prendre 2 minutes au lieu de 30 minutes pour une nouvelle machine virtuelle.

Gestion du matériel

L'architecture ARMv7 n'est plus prise en charge. Aussi dénommée arm32 ou armhfp, c'était la dernière architecture 32 bits pleinement supportée par Fedora, i686 n'ayant que quelques paquets et non une image complète depuis plusieurs versions maintenant. La prise en charge a été supprimée pour des raisons de maintenance, de nombreuses optimisation activées pour Fedora généraient des problèmes pour cette architecture. En particulier, l'édition de lien pour les gros logiciels de cette cible devenait délicate faute de mémoire vive par processus. Il y avait trop peu d'utilisateurs de cette architecture pour justifier autant de ressources et de contraintes, ressources qui seront alloués pour le reste du projet.

Prise en charge officielle de la carte Raspberry Pi 4. Elle a tardé à être proposée pour cause de manque de support matériel par le noyau et mesa entre autres. La carte graphique V3D GPU gère OpenGL-ES et Vulkan, le module Raspberry Pi CM4 est également supporté. Le wifi et le décodage vidéo accéléré matériellement ne sont pour le moment pas proposés.

Prise en charge du nouveau standard Device Onboarding pour améliorer la sécurité des machines IoT. Cette norme ouverte élaborée par des industriels dont ARM et Intel permet de s'affranchir l'écriture de mots de passe en dur et partagés nativement par l'usage du module matériel TPM pour la sauvegarde des données d'identification, l'usage de Secure Boot pour éviter l'usage de systèmes non certifiés ou d'une API d'authentification commune. Cette norme permet d'être facilement employée en production pour des millions de machine sans devoir recourir à de trop nombreuses opérations manuelles ou par l'usage de données d'identification communes.

Par défaut sur l'architecture x86_64 avec un BIOS, le système de partition GPT sera employé plutôt que son ancêtre MBR. Une partition biosboot devient nécessaire à l'installation de Fedora pour sauvegarder cette table sur ces systèmes. Il permet d'améliorer la prise en charge des systèmes BIOS avec une procédure d'installation plus unifiée entre UEFI et BIOS. À plus long terme, cela pourrait permettre l'émulation UEFI ou encore une conversion BIOS vers UEFI pour les machines gérant les deux modes.

L'image boot.iso pour systèmes BIOS utilise GRUB2 au lieu de syslinux comme chargeur de démarrage. En effet le projet syslinux n'est plus maintenu. Cela simplifie également la création et le test des images, n'ayant plus de composant spécifique à certaines installations à ce niveau. La maintenance sera également plus aisée car l'équipe de Fedora pourra utiliser le travail de l'équipe de GRUB plutôt que de maintenir syslinux à bout de bras pour ces machines.

Les paquets pour jdk 8, 11, 17 et 18 n'ont plus de paquets pour l'architecture i686. En effet le projet OpenJDK ne gère plus cette architecture, la maintenance en devient difficile pour Fedora, la prise en charge du JIT est par exemple assez boguée. Corriger cela devenait difficile et ce pour assez peu d'utilisateurs en fin de compte.

Gros nettoyage dans les paquets orphelins i686 qui sont supprimés des dépôts. En lien avec le paragraphe précédent, maintenir les paquets i686 consomme beaucoup de ressources que ce soit pour la maintenance des paquets comme pour leurs compilations. De plus en plus de logiciels ne gèrent plus vraiment cette architecture matérielle, faute d'utilisateurs et de développeurs motivés.

Comme pour l'abandon de ARMv7, le manque de mémoire vive par processus pose problème pour certaines compilations. Cependant, contrairement à ce dernier, l'abandon n'est pas encore complet pour garder la prise en charge des logiciels purement i686 comme WINE et Steam et de certaines applications et bibliothèques dites multilib. Les suppressions de prise en charge futures de i686 paquet par paquet ne seront plus annoncées, en dehors de l'abandon complet de cette architecture. Un jour peut être.

Internationalisation

Les langues additionnelles de Firefox sont dans un paquet dédié firefox-langpacks avant de passer à un paquet par langue comme effectué pour LibreOffice il y a des années déjà. En tant que dépendance faible, ce paquet reste installée par défaut mais peut être supprimé sans contraintes. Ces langues prennent en effet beaucoup de place (50 Mio au regard de 210 Mio pour le reste de Firefox). Plus tard il pourra passer au système reposant sur les langpacks avec un paquet apr langue comme déjà effectué pour d'autres projets pour n'installer que les langues nécessaires à l'utilisateur et gagner davantage de place et de bande passante.

Mis à jour de IBus 1.5.27. La commande ibus restart relance le démon IBus de GNOME, tandis que la commande ibus im-module permet de vérifier la valeur associée à gtk-im-module pour s'assurer si ibus est bien configuré pour les logiciels reposant sur la bibliothèque graphique GTK. L'outil ibus-setup permet aussi de configurer on thème, particulièrement utile pour les environnements ne reposant pas sur la bibliothèque GTK.

Mis à jour de ibus-libpinyin 1.13. La méthode d'entrée Intelligent Pinyin a une meilleure prise en charge de l'anglais, en suggérant des mots anglais s'il y a une correspondance, et des tables de correspondance personnalisées.

Amélioration de la prise en charge des polices de caractères de la langue perse. Jusqu'ici la police de caractères était DejaVu pour cette langue ce qui était bien, mais avec la migration de nombreuses langues vers les polices Noto et Droid, la cohérence de l'affichage du perse avec d'autres langues n'était plus là. Depuis de nouvelles polices libres gérant le perses sont apparus, la police Vazirmatn devient celle par défaut, et d'autres ont été ajoutées pour ceux qui le souhaitent.

Administration système

Toutes les unités de systemd seront activés ou désactivés selon leur configuration preset lors du premier démarrage d'une image de Fedora. Cela ne concerne pas les démarrages après l'installation via Anaconda par exemple. Cela revient à exécuter la commande systemctl preset-all --preset-mode=full, avant la commande employée était systemctl preset-all --preset-mode=enable-only qui comme son paramètre l'indique, ne pouvait qu'activer des unités ainsi. L'intérêt est qu'une image CoreOS peut installer sa propre unité qui sera activée dès le premier démarrage, si l'unité a configuré le champ preset. Cela rend aussi le comportement de Fedora dans ce cas de figure plus simple à comprendre car la règle est uniforme. Cela incite également les administrateurs systèmes à configurer ce champ des unités et à s'en servir pour leurs propres besoins.

Le nom d'hôte de secours est localhost au lieu de fedora pour les éditions CoreOS, IoT, Cloud et Server. Ce nom d'hôte est celui employé quand les autres méthodes (type configuration locale, DHCP ou DNS inversé) ne la définissent pas. Une mise à jour de systemd pour Fedora 33 avait fait l'opération inverse, avec la conséquence que de nombreux outils reposaient sur localhost comme nom d'hôte pour identifier les systèmes non configurés. Ce nom étant effectivement un nom trop basique et commun pour être une vraie valeur exploitable en production. L'objectif est de rétablir ce comportement afin de ne pas courir après les bogues et des correctifs manuels pour chaque logiciel concerné.

L'étiquetage des contextes SELinux est maintenant parallélisé. Cette opération va lancer un fil d'exécution par processeur détecté sur la machine automatiquement, selon les cas cela peut améliorer la vitesse de l'opération jusqu'à 18 fois. L'étiquetage se produit au prochain redémarrage après avoir passé SELinux de l'état désactivé à l'état activé ou après exécution de la commande fixfiles onboot. Si vous souhaitez changer le nombre de processus, vous pouvez exécuter la commande fixfiles -T 0 onboot, la valeur 0 signifiant tous les processeurs de la machine, les autres valeurs signifient le nombre de fils d'exécution souhaités.

La gestion des paquets passe par la nouvelle version de RPM 4.18. La prise en charge de OpenPGP passe à Sequoia-PGP, écrit en Rust. La restauration des permissions avec l'option --restore est plus robuste et sécurisée, en particulier concernant les liens symboliques. Il propose également un shell interactif pour les macros via 'rpmspec --shell' et en Lua avec 'rpmlua'.

Tous fichiers fournis par un paquet RPM sont signés, pour plus de sécurité. Il exploite les capacités du noyau nommées Linux Integrity Measurement Architecture, afin de définir des politiques de sécurité pour par exemple n'exécuter que les fichiers avec la bonne signature. Ou de vérifier tout fichier sauf ceux dans /var, ou encore ne vérifier la signature que des shell.

Fedora ne propose cependant aucune politique par défaut pour laisser l'utilisateur libre de s'en servir ou pas, histoire de ne pas lui ajouter des contraintes trop fortes. L'édition IoT aura par contre des exemples de politiques adaptées à des cas d'usage pour simplifier le travail, car le contexte s'y prête plus. L'intégration avec l'outil Keylime est également un plus pour cette édition.

Le paquet rpm-plugin-ima doit être également installer pour s'en servir. La taille des paquets est en légère hausse par conséquent, mais sur un ensemble de 450 Mio de paquets RPM installés, le surplus de données est d'environ 1% soit 5 Mio ce qui est assez faible.

Fedora Workstation par défaut embarque le paquet whois au lieu de jwhois. Ce premier est en effet plus activement développé, et a moins d'erreurs sur certains noms de domaines qui pouvaient nécessiter de changer la configuration à la main de l'outil.

Première étape pour le renforcement par défaut de la politique de sécurité manipulé via l'outil update-crypto-policies. Ce changement, en lien avec ce qui a été introduit par Fedora 28 puis 33 met à disposition une nouvelle règle optionnelle qui deviendra effective par défaut pour Fedora 39 seulement. Elle vise à mettre fin à l'algorithme de hashage SHA-1 dans les protocoles de chiffrement ou de signatures car il est considéré comme non sûr. De fait aussi les protocoles TLS 1.0 et 1.1 ne seront plus possibles.

Vous pouvez tester l'impact potentiel dès maintenant via la commande :

# update-crypto-policies --set TEST-FEDORA39

Et revenir aux règles par défaut via la commande

# update-crypto-policies --set DEFAULT

Notons qu'il faut redémarrer les applications pour en voir les effets.

Le paquet openssl1.1 est marqué comme déprécié en vue d'une suppression pour F38 ou F39. Plus aucun nouveau paquet ne sera admis avec une telle dépendance, la bibliothèque devant ne plus être maintenue officiellement en 2023.

Le paquet gettext est séparé en deux en gettext et gettext-runtime pour alléger la taille minimale du système d'environ 4,7 Mio.

Mis à jour du serveur DNS BIND 9.18. Il prend en charge le protocole DNS over TLS et DNS over HTTPS que ce soit comme source ou pour résoudre les noms de domaine ce qui améliore la confidentialité de ces requêtes.

Mis à jour du gestionnaire de stockage Stratis 3.2.0. Les utilisateurs ont la possibilité d'arrêter ou de démarrer un ensemble de stockage sans détruire les métadonnées associées.

Développement

  • Mise à jour de la chaîne de compilation GNU avec glibc 2.36 et binutils 2.38 ;
  • La chaîne de compilation LLVM a aussi son lot de mise à jour avec sa 15e version ;
  • Coup de Boost pour la version 1.78 de la bibliothèque C++ ;
  • Le lapin Go bondit vers sa version 1.19 ;
  • La branche Node.js 18.x devient celle de référence ;
  • Le langage Perl bénéficie de sa version 5.36 ;
  • Alors que le langage Python rampe vers sa version 3.11 ;
  • Le langage Erlang dispose d'une 25e mise à jour ;
  • Pendant que son rival Haskell GHC 8.10.7 avec sa suite Stackage LTS 18.28 sont disponibles ;
  • L'éditeur de texte Emacs passe à la version 28 ;
  • La bibliothèque libsoup version 3 fait son entrée dans Fedora, en parallèle de sa 2e version pour des questions de compatibilité ;
  • Mise à jour de la chaine de compilation pour Windows nommée MinGW ;
  • Ce dernier utilise la bibliothèque OpenSSL 3e du nom par ailleurs ;
  • Il bénéfice également de la cible UCRT en plus de MSVCRT, ce support étant recommandé depuis Windows 10.

Projet Fedora

Fedora CoreOS devient une édition officielle. Il rejoint ainsi les éditions Cloud, IoT, Server et Workstation, en conséquence elle sera plus mise en avant sur le site web et les bogues l'impactant seront mieux considérées avant la sortie d'une nouvelle version.

Fedora Cloud Base redevient une édition officielle également. De même que pour CoreOS, il retrouve ce statut qu'il avait perdu faute d'intérêts identifiés à une époque. Il doit être complémentaire de Server et de CoreOS pour être utilisé dans des environnements virtualisés.

La génération des images IoT se fait avec l'outil osbuild. L'objectif est d'utiliser la même plateforme que RHEL for Edge et ainsi redevenir un véritable projet en amont de celui-ci.

Les paquets Python ont par défaut un shebang avec l'option -P activée. L'objectif est de retirer notamment /usr/bin/ de la variable sys.path ce qui peut engendrer des bogues gênants selon les fichiers présents dans le même répertoire notamment lors de l'importation des modules. Ce changement consiste en 'lajout e l'argument en question dans les macros RPM '%{py3_shbang_opts} et %{py3_shebang_flags}. Pour les paquets ayant un soucis avec ce changement, il est possible de rétablir le comportement précédent en invoquant la macro %undefine _py3_shebang_P.

Python Dist RPM fourni uniquement des noms normalisés selon la PEP 503. Ainsi par exemple sous Fedora 36, le paquet python3-ruamel-yaml peut être défini sous la forme python3dist(ruamel-yaml) ou python3dist(ruamel.yaml) alors que dorénavant uniquement le premier est possible. Cela rend les noms plus cohérents avec notamment ce qui est utilisé dans l'écosystème Python.

Ajout d'une nouvelle cible ELN-extras pour étendre les fonctions de ELN et améliorer EPEL. EPEL peut être résumé comme une collection de paquets supplémentaires pour RHEL qui se base essentiellement sur le contenu des dépôts de Fedora. ELN est quant à lui une compilation de Fedora Rawhide (la version en développement continue) comme une RHEL pour tester les procédures de génération des images. Le but du changement ici est, contrairement au contenu de ELN qui est essentiellement décidé par Red Hat, ici le contenu serait essentiellement communautaire. Cela donnerait la possibilité de tester d'autres choses dans la procédure de compilation de RHEL, avant que cela n’atterrisse dans CentOS Stream par exemple. Cela réduirait également le délai pour fournir une nouvelle version de EPEL (pour RHEL 10 par exemple) car on pourrait tester la compilation des paquets EPEL plus tôt.

La communauté francophone

L'association

Logo de Borsalinux-fr
Logo de Borsalinux-fr

Borsalinux-fr est l'association qui gère la promotion de Fedora dans l'espace francophone. Nous constatons depuis quelques années une baisse progressive des membres à jour de cotisation et de volontaires pour prendre en main les activités dévolues à l'association.

Nous lançons donc un appel à nous rejoindre afin de nous aider.

L'association est en effet propriétaire du site officiel de la communauté francophone de Fedora, organise des évènements promotionnels comme les Rencontres Fedora régulièrement et participe à l'ensemble des évènements majeurs concernant le libre à travers la France principalement.

Si vous aimez Fedora, et que vous souhaitez que notre action perdure, vous pouvez :

  • Adhérer à l'association : les cotisations nous aident à produire des goodies, à nous déplacer pour les évènements, à payer le matériel ;
  • Participer sur le forum, les listes de diffusion, à la réfection de la documentation, représenter l'association sur différents évènements francophones ;
  • Concevoir des goodies ;
  • Organiser des évènements type Rencontres Fedora dans votre ville.

Nous serions ravis de vous accueillir et de vous aider dans vos démarches. Toute contribution, même minime, est appréciée.

Si vous souhaitez avoir un aperçu de notre activité, vous pouvez participer à nos réunions hebdomadaires chaque lundi soir à 20h30 (heure de Paris) sur IRC (canal #fedora-meeting-1 sur Libera).

La documentation

Depuis juin 2017, un grand travail de nettoyage a été entrepris sur la documentation francophone de Fedora, pour rattraper les 5 années de retard accumulées sur le sujet.

Le moins que l'on puisse dire, c'est que le travail abattu est important : près de 90 articles corrigés et remis au goût du jour. Un grand merci à Charles-Antoine Couret, Nicolas Berrehouc, Édouard Duliège, José Fournier et les autres contributeurs et relecteurs pour leurs contributions.

L'équipe se réunit tous les lundis soir après 21h (heure de Paris) sur IRC (canal #fedora-doc-fr sur Libera) pour faire progresser la documentation par un travail collaboratif. Le reste de la semaine cela se passe sur le forum. Pour plus de convivialité, nous avons mis en place également une réunion mensuelle le premier lundi du mois à la même heure en visio-conférence sur Jitsi.

Si vous avez des idées d'articles ou de corrections à effectuer, que vous avez une compétence technique à retransmettre, n'hésitez pas à participer.

Comment se procurer Fedora Linux 37 ?

Fedora Media Writer
Fedora Media Writer

Si vous avez déjà Fedora Linux 35 ou 34 sur votre machine, vous pouvez faire une mise à niveau vers Fedora Linux 36. Cela consiste en une grosse mise à jour, vos applications et données sont préservées.

Autrement, pas de panique, vous pouvez télécharger Fedora Linux avant de procéder à son installation. La procédure ne prend que quelques minutes.

Nous vous recommandons dans les deux cas de procéder à une sauvegarde de vos données au préalable.

De plus, pour éviter les mauvaises surprises, nous vous recommandons aussi de lire au préalable les bogues importants connus à ce jour pour Fedora Linux 37.