En ce mardi 1er mai, les utilisateurs du Projet Fedora seront ravis d'apprendre la disponibilité de la version Fedora 28.
Fedora 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 peut se voir 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, X.Org, systemd, la célèbre suite de compilateurs GCC, etc. Cliquez ici pour voir l’ensemble des contributions de Red Hat.
Notons que Fedora 28, avec ses quelques 51 changements officiels validés, est sans conteste la version comportant le plus de changements de son histoire. La version finale est pour le moment fixée pour la première semaine de mai (sortie le 1er ou le 8 mai).
Voici les nouveautés annoncées pour cette version :
Bureautique
Passage à GNOME 3.28. Ce nouvel environnement apporte comme souvent quelques raffinements :
- Disparition des icônes sur le bureau, faute de mainteneur ;
- Refonte du visuel du clavier virtuel ;
- Nouveau dessin pour la police par défaut Cantarell ;
- Fichiers gère les marques-pages dans un dossier dédié dans la barre latérale ;
- Photos prend en charge l'import depuis un média amovible ;
- Mise à disposition d'Usage, sorte de Moniteur système simplifié qui reprend les codes des applications similaires sur Mobile pour simplifier la maintenance de l'appareil ;
- Le glisser-déposer de fichiers entre l'hôte et la machine virtuelle est disponible dans Machines. Par ailleurs, Machines peut télécharger elle même l'ISO de votre distribution favorite ;
* Les fenêtres jointes latéralement sont redimensionnées ensemble.
L'environnement Sugar est disponible en version 112.
Mise à jour de Fontconfig à la version 2.13.
Réduction de la redondance entre Anaconda et gnome-initial-setup dans la configuration demandée à l'utilisateur crée lors de l'installation. Le clavier, la date, l'heure et la langue resteront configurés par Anaconda, par contre la configuration du nom d'hôte est supprimée tout comme la création du compte root pour reprendre la politique d'Ubuntu. La création du premier utilisateur revient à gnome-initial-setup.
Les modules invités de VirtualBox sont peu à peu intégrés dans le noyau officiel, Fedora propose ainsi dans ses dépôts officiels les paquets pour obtenir la résolution native ou le dossier partagé dans un système Fedora virtualisé dans Virtualbox.
Gestion du matériel
Meilleure gestion de l'autonomie des ordinateurs portables avec un processeur Intel. Cela passe par une meilleure gestion de l'énergie des ports SATA pour disques durs et SSD (gain de 1-1,5 W), Intel HDA codec pour le multimédia est mis en sommeil après une seconde d’inactivité (gain de 0,4 W) et activation de l'économie d'énergie pour les récepteurs Bluetooth en USB (gain de 0,4 W si tous les ports USB sont en repos). Sachant qu'un ordinateur portable récent non orienté puissance consomme moins de 10 W (7,5 W chez moi) en usage non intensif. Cela peut donner 20% d'autonomie supplémentaire.
Intégration de la norme Thunderbolt 3 (concurrent à l'USB sur de nombreux points). La politique de sécurité liée à cette norme (pour éviter qu'un nouveau périphérique accède sans autorisation à des informations confidentielles) est intégrée à Gnome Shell pour notifier les demandes à l'utilisateur.
Mise à jour de VA-API à la version 1.0.0, qui change l'API et l'ABI mais propose en contrepartie une meilleure exploitation de l’accélération matérielle du matériel récent.
Les appareils photo RealSens ont besoin de deux bibliothèques librealsense 1 et 2 pour exploiter l'entièreté de leur gamme historique. Le paquet librealsense réfèrera à la version 2 de la bibliothèque pour les versions modernes, un nouveau paquet librealsense1 sera nécessaire pour le matériel plus ancien.
Internationalisation
Ibus Typing utilise maintenant la boîte de dialogue pour les emoji afin de proposer des symboles UNICODE en tapant leur description. Ainsi copyright sign propose le symbole ©.
La bibliothèque libidn passe à la version 2.0.0 forçant le passage de la norme IDNA2003 à IDNA2008 qui ne sont pas compatibles et pouvaient être source d'attaque par redirection. Cette norme sert à transcrire un nom de domaine Internet UNICODE en une chaîne latine unique comme faß.de qui devient fass.de ou xn--fa-hia.de respectivement.
Les données concernant l’internationalisation de GLibc sont mises à jour à partir des fichiers ISO et CLDR de 2015 (Unicode 9.0) en remplacement de iso14651_t1_common qui avait 15 ans. Cela permettra de corriger pas mal d'erreurs, dont des tris alphabétiques dans des langages moins courants en Occident. Ou les symbole infini et ensemble vide qui étaient considérés comme identiques.
Les langues asiatiques chinoises, coréennes et japonaises utiliseront par défaut les polices de Google Noto.
Administration système
Anaconda, le programme d'installation, devient modulaire. La communication se fait via une API plus stable en DBus, permettant d'améliorer les tests, d'être utilisable sans les droits super utilisateur et d'être étendu par l'utilisateur.
authselect remplace authconfig et devient l'outil de configuration par défaut pour le PAM et le fichier nsswitch.conf.
Le paquet tcp_wrappers est supprimé. Son utilisation doit être remplacée par iptables, ou mieux par firewalld.
libnsl et nss_nis sont proposés hors de GLibc comme recommandé par le projet officiel. libnsl passe à la version 2 au passage autorisant la compatibilité de NIS avec la norme IPv6.
De même pour Sun RPC dont la gestion dans GLibc est supprimée pour libtirpc qui permet entre autre la gestion de l'IPv6 nativement.
Le stockage par défaut des clés et autres certificats de sécurité par la bibliothèque NSS est le format de SQLite au lieu de DBM. Cela permet l'accès parallèle et diminue le risque de corruption de la base de données.
OpenLDAP utilise OpenSSL au lieu de NSS, comme recommandée par le projet officiel.
Les bibliothèques de OpenLDAP non compatibles multithread redirigent vers leur version compatibles multithread comme libldap qui pointe vers libldap_r.
OpenLDAP abandonne la gestion de TCP Wrappers également.
L'utilisateur et groupe nobody:nobody passent de UID et GUID 99:99 à 65534:65534, nfsnobody est supprimé, et nobody n'est plus utilisé de manière systématiquement par défaut pour certains services. Des utilisateurs dédiés seront crées.
Nouvelle version de la politique de sécurité par défaut. Les clés RSA doivent être de minimum 2048 bits et DSA est désactivé par défaut. Le passage à TLS 1.2 minimum est repoussé pour le moment.
Les paquets de gestion de Kerberos dans Python sont grandement remaniés. python-krbV, pykerberos et python-requests-kerberos sont remplacés par python-gssapi. Le premier n'est pas compatible Python 3, le second n'a pas de documentation et est trop minimaliste quant au dernier il n'est plus maintenu.
libcurl utilisera libssh au lieu de libssh2 pour les protocoles SCP et SFTP ce qui permet l'utilisation de l'authentification GSS-API et l'usage d'algorithmes plus sécurisés par défaut.
L'outil time passe à la version 1.8, qui change de licence vers GPLv3 et GFDL, qui a de nouveaux codes d'erreur et une nouvelle sortie par défaut. L'affichage conforme POSIX reste possible via l'option -p.
Mise à disposition de l'application Stratis Storage qui est une application Python communiquant à travers DBus pour gérer l'espace de stockage du système. Reposant sur le système de fichier XFS pour le moment, son but est de proposer des fonctionnalités populaires chez Btrfs, ZFS ou LVM mais en plus simple pour l'utilisateur comme les clichés, l'intégrité des données ou mettre en place un système de cache.
Facter passe de la version 2.4.3 à 3.9.2.
Développement
Binutils passe à la version 2.29.1.
GLibc 2.27 est utilisée par défaut.
La partie cryptographique libcrypt de GLibc est remplacée par libcrypt.
GCC 8 devient le compilateur de référence.
Le framework Web de Python DJango dégaine à la version 2.0.
Coup de Boost à la version 1.66.
Ruby est polis à la version 2.5.
Le compilateur Haskell GHC évolue à la version 8.2.
De même pour le couple Erlang/OTP pour la version 20.
Le langage Go court vers la version 1.10.
L'éléphant PHP avance prudemment à la version 7.2.
Mise à jour de giflib vers la version 5.1.4. Un paquet compat-giflib est proposé pour faciliter la transition aux utilisateurs.
Les symboles de débogue PE pour les applications compilées avec MinGW (à destination de Windows donc) seront conservés pour simplifier le débogue natif. Les autres symboles seront bien conservés dans le dossier .debug à part. Cela a un sourcoût d'environ 17% d'espace disque pour une application compilée par ce biais.
Modularité
Ajout des dépôts modular, modular-updates et modular-updates-testing pour proposer des composants dans des versions différentes que dans les dépôts natifs de Fedora. Ainsi l'utilisateur peut choisir d'utiliser une version plus récente (ou ancienne) de Python que celle proposée nativement. Mais seulement des composants toujours maintenus par le projet officiel sont proposés.
Projet Fedora
L'architecture Aarch64 (ARM 64 bits) devient une architecture primaire pour Fedora Server, donnant lieu à une meilleure promotion et à une meilleure qualité des images officielles.
L'architecture s390x est proposée aux images Cloud, Docker et Atomic.
Les binaires empaquetés par Fedora et compilés avec GCC sont maintenant annotés pour permettre de plus facilement retrouver les options de compilations l'ayant généré ou les propriétés de son ABI.
Renforcement des options de compilation par défaut pour une meilleure sécurité. Ajout de -fstack-clash-protection, D_GLIBCXX_ASSERTIONS, -fcf-protection=full -mcet, .got.plt et --enable-default-pie.
Définition et empaquetage des applications écrites en Rust comme exa, ripgrep ou tokei.
Activation de Python Generators pour permettre aux empaqueteurs de choisir d'utiliser ou non le générateur automatique de dépendance envers un module Python au lancement.
Les scriptlets ldconfig sont supprimés, du moins pour les paquets installant les bibliothèques partagées dans des endroits standards. Cela simplifiera la maintenance des specs RPM et l'installation des paquets sera également plus rapide.
La communauté francophone
L'association
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 Freenode).
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 moindre que l'on puisse dire, c'est que le travail abattu est important : près de soixante-dix 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 Freenode) pour faire progresser la documentation par un travail collaboratif. Le reste de la semaine cela se passe sur les listes de diffusion.
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.