From Fedora Project Wiki

Dépêche sous licence CC BY-SA

En ce mardi 3 novembre 2015, le projet Fedora est fier d’annoncer la sortie de la distribution GNU/Linux Fedora 23.

Fedora est une distribution communautaire développée par le projet éponyme 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.

Par ailleurs, les distributions telles que RHEL, Scientific Linux ou CentOS (plus indirectement), avec un cycle de sortie plus espacé permettant un support à plus long terme, sont développées à partir d’une version de Fedora et mises à jour environ tous les trois à cinq ans. Notons que CentOS est un clone gratuit de RHEL, cette dernière étant certes libre, mais payante, offrant ainsi un support technique, des certifications et une garantie.

Environnement bureautique

Qui dit nouvelle Fedora, dit nouveau GNOME. La version 3.18 continue le peaufinage de l'ensemble de l'interface et des applications avec notamment :

  • L’amélioration de la gestion de Wayland, le successeur désigné de X11 ainsi que la gestion améliorée du multi-écran avec des densités de pixels élevées différentes ;
  • Les détecteurs de luminosité, avec un pilote Linux fonctionnel évidemment, sont également de la partie pour régler automatiquement la luminosité de l'écran ;
  • GNOME Logiciel gère mieux le débit Internet disponible et peut réaliser des mises à niveau complet du système ;
  • L'API Google a été rafraîchie, apportant par exemple la transparence du stockage dans Google Drive.

Dans la même veine, LibreOffice 5 est de la partie. Comme GNOME, la gestion des écrans à haute-densité de pixels a été améliorée, la prévision des style dans la barre idoine, l'importation améliorée des formats issues des éditeurs Microsoft et Apple. Un gros travail est en cours pour que la bibliothèque graphique interne de LibreOffice, qui repose sur GTK+2, passe sous GTK+3 afin d'apporter la gestion native de Wayland et renforcer l'intégration au sein de GNOME.

Le composant IBus évolue en version 1.5.11. Au menu l'intégration avec KDE Plasma 5 a été améliorée en affichant dans la zone de status le nom abrégé de la disposition clavier en entrée (FR pour l'AZERTY français par exemple) au lieu d'une icône fixe qui n'informait pas sur la disposition actuellement utilisée. De plus, la gestion du fichier .XCompose pour déterminer le rôle des touches mortes a été ajoutée.

Au niveau d'IBus, on peut noter la mise en place de ibus-libzhuyin pour gérer la saisi en chinois traditionnel (à Taiwan) par défaut. Cela devrait améliorer l'expérience utilisateur et la vitesse de saisie pour les utilisateurs concernés.

Fedora est maintenant compatible avec la norme Unicode 8.0. Nouvellement sortie en juin dernier, elle ajoute de nombreux caractères ou symboles exotiques qui sont dorénavant disponibles pour les utilisateurs et les développeurs. Cela renforce le Projet Fedora dans sa volonté d'une internationalisation forte.

Les amateurs de l'environnement de bureau Cinnamon seront en liesse avec la mise à disposition du spin Cinnamon ! Le successeur modernisé de Gnome 2 pourra donc être installé par défaut via le LiveCD dédié à son usage. Ceci évitera de passer par un autre environnement ou une installation minimale pour se le procurer.

Enfin, l'environnement de bureau Sugar passe à la version 0.106. Celui qui équipait par défaut les ordinateurs OLPC continue donc sa progression. Cette version apporte par exemple l'aide sociale où les activités et demandes d'aide autour de cet environnement peuvent être lues et envoyées depuis l'interface. Les discussions sont hébergées sur un forum dont il est possible d'en changer la localisation (pour un forum interne à un établissement par exemple). La gestion du rétroéclairage de l'écran et la capture d'écran sont aussi disponibles.

Administration système

Par défaut les algorithme de chiffrement SSL3 et RC4 ont été partiellement retirés. Ces algorithmes ont été très employés par le passé notamment pour améliorer la sécurité du Web. Hélas, ces dispositifs sont trop anciens pour résister aux attaques modernes avec la puissance de calcul disponible aujourd'hui. Alors que les programmes employant ces algorithme comme les navigateurs Web ont fixé une date de retrait de ces éléments, Fedora a décidé de les retirer des bibliothèques gnutls et openssl. Donc tous les logiciels qui les utilisaient n'auront plus accès à ces algorithmes obsolètes. Par contre les programmes reposant sur la bibliothèque nss (comme Mozilla) ne sont pas encore concernés par cette mesure.


Abandon de fedup au profit de dnf pour mettre à niveau Fedora. Jusqu'à présent, pour mettre à niveau sa Fedora sans réinstaller, preupgrade puis fedup ont été utilisés. Mais ces solutions souffraient de nombreux problèmes de fiabilité mais aussi d'intégration avec le gestionnaire de paquets employé. C'est pourquoi un plugin de dnf est maintenant mis à disposition. Dès à présent, vous pouvez le tester depuis une Fedora 22 ainsi :

# dnf install dnf-plugin-system-upgrade
# dnf system-upgrade download --releasever=23
# dnf system-upgrade reboot

Concernant les mises à jour, les firmwares UEFI sont maintenant concernés. Le BIOS et son successeur UEFI sont des composants essentiels pour le démarrage et les entrées/sorties élémentaires de nos machines. De part leur position, ils sont difficiles à mettre à jour et le moindre bogue peut être particulièrement bloquant. C'est pourquoi une première brique a été posée pour rendre cela possible dans Fedora pour les machines compatibles (à savoir celles avec un UEFI disposant de Capsule Update mechanism et de UEFI 2.5's ESR). Si une mise à jour est disponible, GNOME Logiciels vous en avertira comme pour la mise à jour d'un paquet traditionnel.


La migration des polices de sécurité de SELinux est maintenant disponible. Les chemins concernant leur enregistrement changent de /etc/selinux/ vers /var/lib/selinux/ afin d'en simplifier la maintenance par les administrateurs systèmes. Cependant il est enfin possible de saisir un autre emplacement pour les sauvegarder via le fichier semanage.conf qui se dote du champ store-root à cet effet. Cette modification a été faite en parallèle d'une amélioration de la structure de données employée. Cela permet d'employer le cache pour améliorer les performances mais aussi gérer la priorité des modules et de rendre les modules en cache plus lisibles par l'emploi du langage CIL au lieu du format compilé.


Encore une progression dans la sécurité : Fedora 23 uniformise et factorise les règles de mots de passe. Jusqu'aujourd'hui, un mot de passe était souvent demandé par plusieurs logiciels et chacun d'entre eux avait ses propres règles d'acceptation comme au moins 8 caractères dont deux spéciaux pour l'un, et d'un minimum de 10 caractères et un mélange de minuscules-majuscules pour l'autre. Cela complexifiait la gestion des mots de passe pour l'utilisateur et si on souhaitait modifier les règles il fallait le faire logiciel par logiciel. Maintenant, la bibliothèques libpwquality centralise tout cela pour le compte de anaconda, passwd, initial-setup et gnome-control-center. L'administrateur du système peut ainsi renforcer ces règles à l'aide des fichiers situés dans /etc/security/pwquality.conf.d/ qui s'appliqueront à tous les programmes cités précédemment.


Fedora continue d'étendre rolekit qui sert à simplifier la gestion de certains cas simples d'administration très courantes. Cette fois-ci les rôles pris en charge peuvent être lancés via un conteneur pour en améliorer la sécurité en l'isolant du système. Cela repose sur la spécification Nulecule et a été notamment envisagée dans le cadre du projet Fedora Atomic (pour un usage orienté Cloud donc). Cela rendra également ces applications plus flexibles, en effet si l’administrateur le souhaite une mise à jour du système ne devrait pas avoir d’impact sur ces applications par exemple. Par ailleurs, un nouveau rôle a été ajouté à sa panoplie : un cache pour le serveur web d'applications à l'aide de l'outil memcached.

Cloud et virtualisation

Le projet Atomic implémenté côté Fedora sous la forme Fedora Atomic Host va changer de rythme de publication. Les évolutions de ce côté sont trop rapides pour que le cycle de 6 mois soit vraiment pertinent. Il a été décidé que cette branche serait mise à jour toutes les deux semaines. L'intérêt de cette montée en charge est multiple :

  • Fedora se positionne ainsi comme une version de référence du projet Atomic ;
  • Cela accélérera le développement et les tests du projet ;
  • Les utilisateurs pourront bénéficier plus rapidement des améliorations et y effectuer leurs retours.

Une grosse modification sur le site web du projet mais aussi l'infrastructure de création des images ont du être nécessaires.

Projet Fedora

Tous les paquets de Fedora ont été renforcés en terme de sécurité. À la compilation de ceux-ci, des options ont été ajoutées pour éliminer ou diminuer le risque de certaines attaques sur tous les paquets proposés par la distribution. L'option principalement proposée ici est nommée PIC pour position-independent code. C'est-à-dire que de l'exécution à une autre, les adresses mémoires du programme changent pour ses données ou fonctions. L’objectif est d'empêcher des personnes mal intentionnées de réaliser des attaques en se basant sur le caractère fixe de ces éléments (pour les modifier ou les rediriger vers d'autres endroits par exemple).


Dans le cadre des systèmes hautement distribués, les processus tournant sur les systèmes peuvent communiquer entre eux via des messages. Ce concept très utilisé en milieu universitaire a abouti au concept de MPI (Message Passing Interface) d'où découlent plusieurs normes. Des bibliothèques et programmes peuvent être fournis par Fedora en étant compatibles à plusieurs d'entre eux comme MPICH ou OpenMpi. Avant DNF, Yum était capable de choisir quel paquet fournissait par exemple libfoo.so même s'il existe en plusieurs exemplaires (un paquet par norme cité plus haut — Yum se contentait de prendre le paquet au nom le plus court disponible). DNF n'en étant pas capable, il fallait trouver un moyen de reproduire ce genre de comportement sans modifier les fichiers aidant à générer les paquets RPMs ce qui serait un lourd travail et le résultat en serait peu flexible. Le travail est dorénavant effectué via le paquet rpm-mpi-hooks, au niveau en dessous de DNF donc, qui peut gérer les dépendances avec et sans mpich ou openmpi afin de sélectionner le bon paquet automatiquement.

Développement

Python 3 devient l'implémentation de Python par défaut. Sortie en 2008, cette version de Python peine toujours à s'imposer à cause de l'héritage important de Python 2 en terme de bibliothèques et d'applications. Comme la compatibilité est rompue entre ces deux versions majeures, la migration doit être effectuée correctement. Pour Fedora 23, une étape importante vient d'être franchie en ce sens dont voici les implications :

  • Python 3 est installé par défaut et est la seule version disponible dans les fichiers permettant l'installation de Fedora (à savoir les LiveCD notamment mais aussi les images Atomic ou DVD) ;
  • Python 2 reste disponible dans les dépôts ;
  • Pour les paquets fonctionnels avec les deux versions, Python 3 est désignée comme la version de référence ;
  • /usr/bin/python pour les utilisateurs et développeurs restera Python 2, afin de respecter les recommandations du projet Python.

Tout ceci permettra d'accélérer le déploiement de Python 3, et de tester à grande échelle l'usage de Python 3 au sein des programmes proposés. À terme les programmes internes de Fedora abandonneront la compatibilité avec Python 2 notamment pour exploiter les nouvelles possibilités. Python 2.7 restera présente probablement jusqu'à la fin de maintenance de la communauté Python (à savoir en 2020).

Toujours concernant Python, Fedora 23 intègre la boîte à outils Frappe destinée pour Python et JavaScript pour un usage orienté web. Près de 90 extensions sont fournies avec pour objectif de simplifier le développement.

L'implémentation libre de la plateforme de développement .NET, nommé Mono, saute à la version 4. En effet Fedora se débarrasse ainsi de la vieillissante branche 2.10 supportée jusqu'alors. Cela permettra aux développeurs de pouvoir compiler du C# en version 5 et 6, de bénéficier d'un débogueur plus léger, des optimisations dans le calcul des nombres flottants, la prise en charge préliminaire du PowerPC64 Little Endian ainsi que d'autres correctifs.

Pour les amateurs du dromadaire Perl, qui n'a pas nécessité une longue traversée du désert, cette évolution sera plus douce avec la version 5.22. L'équipe des empaqueteurs de Perl tiennent à rester proche de la dernière version disponible. C'est pourquoi les développeurs Perl seront ravis de profiter de l'Unicode 7.0, mais aussi des nouveaux opérateurs binaires applicables sur des chaines de caractères (à savoir &, |, ^, ! et &., |., ^., !.). Les premiers s'appliquent à leurs nombres en tant que tel quand le second jeu gère cela comme des chaines de caractères. Notons également l'apparition de l'opérateur double diamant <<>> pour ouvrir les fichiers avec les noms tels que fournis (|foo n'est donc pas considéré comme un tube mais bien comme un nom de fichier dans ce cadre).

La bibliothèque C++ très généraliste et populaire Boost est aussi de la fête. Le passage à la version 1.59 apporte notamment deux sous-bibliothèques Convert et Coroutine2. Le premier est dédié à la conversion des types quand au second il facilite l'usage des coroutines en exploitant les possibilités offertes par le C++14. Bien sûr, cette version apporte d'autres correctifs et fonctionnalités plus mineures.

À venir

Dans la mouvance autour de Python 3, Python 3.5 sera mis à l’honneur. On peut également s’attendre, enfin, à une mise à niveau du programme TexLive vers la version 2015 au lieu de 2011.

Plus impactant, Fedora Serveur n’aura plus d’image CD en 32 bits x86, les dépôts contiendront encore les paquets sous cette forme pour ceux ayant une image existante souhaitant procéder à la mise à niveau. L’objectif étant de diminuer la charge d’assurance qualité autour d’un produit qui visiblement manque d’utilisateurs pour justifier cet effort.

Il est également prévu de mettre à terme aux scripts de démarrage SysV en faveur d'unités systemd pour les paquets officiels exploitant encore cette possibilité. Cela ne concerne que des paquets assez secondaires et ne remet pas en cause la compatibilité pour des programmes externes ou personnels.

Liens