Charles-Antoine Couret: Apports de Fedora à l'écosystème du Logiciel Libre

Share Button

Il est courant, au sein de la communauté du Logiciel Libre, de présenter une
distribution GNU/Linux comme une simple intégration, ou un assemblage de tous
les logiciels qu’elle propose. Une sorte de glu entre eux.

Si c’est sans doute le cas de certaines d’entre elles, nous ne pouvons en
conclure que c’est toujours le cas. En particulier, la distribution Fedora va
au delà de ce constat. Ses objectifs et sa communauté lui permettent de
réaliser d’autres choses. En effet depuis sa création Fedora est une
vitrine technologique et à ce titre a essayé de mettre en avant ou de
développer des solutions novatrices pour le Logiciel Libre. Mais depuis Fedora
21, sortie fin 2011, Fedora s’est découpée en trois produits distincts. Si
finalement une Fedora Workstation et Server ont accès aux mêmes paquets, le
projet a souhaité fournir des expériences utilisateur adaptées à chaque cas
d’usage dès la fin de l’installation. Par conséquent, Fedora
Workstation a sa liste de travail
pour intégrer et développer de nouvelles
solutions pour améliorer l’usage bureautique de l’utilisateur.

Et si la distribution Fedora est souvent considérée comme une version de
tests pour la distribution Red Hat Enterprise Linux (RHEL) de Red Hat nous
allons constater que finalement toute la communauté tire des bénéfices de ses
travaux.

Le présent article est une adaptation des articles de blogs ici et de Christian Schaller qui m’en a donné l’autorisation. Il
a fait l’objet d’une conférence lors des JM2L de fin novembre 2017 dont
vous pouvez retrouver la diapo
.

Expérience utilisateur

GNOME Logiciels

Logiciels_accueil.png Logiciels_GIMP.png
Logiciels_GIMP_2.png

GNOME Logiciels est un pur produit de la vision Fedora Workstation
de la distribution Linux à devenir pour simplifier la vie de ses utilisateurs.
Essayer de reprendre certains codes provenant des magasins applicatifs
concurrents, en proposant uniquement des applications graphiques (et donc
visibles pour le commun des mortels), avec des captures d’écran, des notes des
utilisateurs et des commentaires.

Mais l’objectif est de fournir un tout intégré. GNOME Logiciels est donc
capable de détecter si vous avez une police qui manque pour afficher un contenu
dans une langue exotique, ou encore un codec multimédia pour votre film. Ainsi
il peut vous proposer de l’installer à la volée au travers d’une pop-up. Il
gère également de manière transparente les extensions de GNOME Shell, les mises
à jour et les mises à niveau du système en passant par les firmwares des
différents périphériques.

L’ensemble repose sur un format de fichier nommé appdata qui se
retrouve peu à peu dans les sources de tous les logiciels concernés. Cela ouvre
la possibilité à partir des mêmes données d’offrir différentes expériences
utilisateur, de ne remplir et de ne traduire ces métadonnées qu’une fois.

Fedora Media Writer

Fedora_Media_Writer.png

Fedora s’est attaqué au fameux problème de la création d’une image
installable sur clé USB. D’habitude il faut télécharger un fichier ISO,
l’installer en suivant des procédures pas toujours évidentes et tester l’image.
Et comprendre ce qu’est un fichier ISO n’est pas évident pour tous les
utilisateurs.

Fedora propose un utilitaire multiplateforme, pour Windows, macOS et Linux
afin de choisir l’image souhaitée (Fedora GNOME ou KDE par exemple) et procéder
automatiquement à l’installation sur le média choisi. Cela est plus clair et
simple pour l’utilisateur qui a besoin de moins de compétences de base pour
débuter. Cela permet également de simplifier la documentation et la
communication autour du projet Fedora, cette étape étant maîtrisée et ne
dépendant plus de la gestion des ISO sur différents systèmes.

De plus, certains se sont amusés à concevoir par impression 3D autour d’un
Raspberry Pi, un
petit ordinateur nommé Fedorator
pour les salons où le visiteur peut
enficher sa clé USB, choisir l’image qu’il souhaite et repartir avec une image
de Fedora prête à l’emploi en totale autonomie.

L’outil fleet commander

FleetCommander.png

Fleet
Commander
est un outil pour gérer des flottes entières de machines sous
Fedora ou RHEL, notamment pour les universités, les grosses entreprises ou les
administrations et ainsi, de pouvoir gérer des milliers de machines. Il est
possible de configurer les postes avec un navigateur Web ou l’outil
Cockpit.

Actuellement il est capable de configurer tout ce qui est accessible pour
dconf (l’utilitaire de configuration de GNOME), les extensions de cet
environnement, Networkmanager (dont le VPN ou le proxy). Ou de facilement
migrer la configuration de Evolution vers un autre serveur de courriels. Ou
encore configurer Firefox, Libreoffice et quelques autres outils plus
génériques.

La configuration est intégrée avec la solution FreeIPA, et donc les
informations sont liées au compte LDAP ce qui évite devoir gérer un autre
service en interne.

Les performances de GNOME Shell

Carlos Garnacho a travaillé quelque temps pour identifier et résoudre des soucis de performance dans GNOME Shell.

Que l’on aime ou pas GNOME Shell, réduire sa consommation en ressource est
toujours une bonne chose.

Les portails captifs

Portail_d_acces.png

Dans les lieux publics, il y a souvent du Wifi offert aux clients que ce
soit dans les aéroports ou hôtels par exemple. Pour permettre
l’authentification de l’utilisateur, un portail captif est souvent en place
pour que l’utilisateur saisisse ses identifiants et obtienne ainsi accès à
Internet.

L’inconvénient de ce procédé est qu’il est indispensable d’ouvrir une page
Web quelconque pour visualiser la page d’authentification et ainsi obtenir
l’accès à Internet après la saisie. Si vous ne le faites pas, la machine sera
considérée comme connectée au réseau mais n’aura pas accès aux ressources du
réseau. Les requêtes pour collecter ses courriels échoueraient sans indication
sur la raison de l’échec.

Fedora a travaillé pour que GNOME et NetworkManager ouvrent automatiquement
une fenêtre dédiée si un portail captif a été détecté. Permettant la saisie des
identifiants nécessaires sans que l’utilisateur ait besoin d’effectuer cette
manipulation manuellement.

Améliorations de GNOME

Renommage_en_masse.png

Quelques fonctionnalités de GNOME sont l’œuvre de la communauté de Fedora.
Par exemple Carlos Soriano a apporté le renommage multiple dans Nautilus et un
rafraîchissement de son interface.

Terminal_notification.png

GNOME Terminal notifie maintenant l’utilisateur quand une tâche est terminée
(vraiment utile pour connaître la fin d’une longue compilation). GNOME Builder
a reçu également quelques ajouts de ce côté là.

libratbag

Fedora a conçu cette bibliothèque pour faciliter la configuration des souris
et d’autres périphériques d’entrées dont les manettes. Il a également une
collaboration en cours avec des constructeurs pour améliorer la gestion des
souris orientées jeux.

Un outil est en cours d’élaboration pour tirer partie de cette bibliothèque
sous GNOME. Pour configurer les touches additionnelles, les différentes
résolutions de la souris ou encore les LEDs qui arborent ces souris.

La libération des codecs audio

Ces deux dernières années, des brevets autour des codecs audio MP3, ACC et
AC3 sont peu à peu tombés. Cela autorisait de fait les différents composants
libres à fournir leur gestion par défaut sans devoir verser de contributions
financières. Red Hat et Fedora étant des entités américaines légalement, il
fallait s’assurer que tout était clair de ce côté avant de fournir le feu vert.
Pour des questions légales, il vaut mieux éviter de se fier aux déclarations de
personnes inconnues sur Internet.

Red Hat Legal a donc planché sur la question de la conformité des solutions
libres sur le sujet (comme GStreamer) avec leur développeur pour s’assurer
qu’ils ne violaient pas des brevets sur des sujets annexes encore en cours sur
ces technologies ou que les brevets étaient vraiment bien tombés.

Le feu vert juridique a été donné, et normalement ces codecs ont pu intégrer
la section codecs libres des différentes bibliothèques qui les
implémentent.

L’intégration de Qt sous GNOME

Okular_sans_QGNOMEPlatform.png Okular-QGNOMEPlatform.png

Avec Fedora 25 et 26, il y a eu un travail pour concevoir QtGNOME
plateforme
. Un outil pour faire en sorte que les applications réalisées
avec Qt (au lieu de GTK+ pour les applications de GNOME) se marient bien
visuellement.

Cela passe aussi par l’intégration des différents paramètres, avec prise en
compte du HiDPI, du thème sombre, du thème GTK+ actuel, etc. L’objectif est de
minimiser au maximum l’écart visuel entre les deux écosystèmes et de s’assurer
que les choix de l’utilisateur s’appliquent aux deux bibliothèques. Ainsi
l’utilisateur en configurant son interface GNOME n’a pas à reproduire ces
changements sous Qt également, cela est automatiquement pris en charge.

Gestion du matériel

Intégration du pilote propriétaire de nVidia

Hans
de Goede
et Simone Caronni ont collaboré sur les travaux de NVIDIA et
d’Adam Jackson autour de glvnd. Donc si vous installez le pilote propriétaire
NVIDIA provenant de dépôts correctement gérés, il n’y aura plus de conflits
avec la pile graphique fournie par Mesa.

Et en cas de mise à jour du noyau, s’il y a incompatibilité, le pilote libre
nouveau prendra automatiquement le relais le temps que le pilote
propriétaire soit à nouveau disponible. Cela permet de corriger un souci
récurrent du délai de la mise à disposition des derniers pilotes de nVidia pour
le nouveau noyau.

Gestion native du pilote invité de VirtualBox dans le noyau Linux

Hans de Goede a travaillé pour incorporer dans le noyau Linux officiel le
pilote invité de VirtualBox. D’habitude une fois votre système invité installé,
il était nécessaire de télécharger les pilotes additionnels et les installer
dans la machine virtuelle pour bénéficier du plein écran, du dossier partagé,
etc.

Cette étape ne sera bientôt qu’un lointain souvenir, le pilote Linux a déjà
été accepté une partie du pilote le mois dernier. La gestion du dossier partagé
devrait suivre bientôt.

La mise à jour des firmwares

Richard Hughes, mainteneur de PackageKit, de GNOME Logiciels et fwup, a
fourni un grand effort pour simplifier la mise à jour des différents firmwares
de nos machines : l’UEFI de nos cartes mères, celui des souris, des cartes
réseaux ou graphiques, etc. Il y a quelques mois, il a collaboré avec Logitech pour fournir la mise à jour
automatique du firmware d’une souris de la marque suite à une faille de
sécurité récemment découverte.

De nombreux ordinateurs portables de Dell sont aussi pris en charge par
cette solution, qui est pleinement intégrée à GNOME Logiciels également. Des
discussions seraient en cours avec d’autres marques.

Ce travail reste important pour garantir la sécurité de composants matériels
souvent invisibles et même négligés dans la politique de mise à jour du
système.

L’autonomie

GNOME_Battery_bench.png

Souvent Linux est considéré comme moins performant que Windows ou macOS sur
la question de la gestion de l’énergie. Pour résoudre ce problème, Christian
Kellner et Owen Taylor ont œuvré pour fournir un utilitaire Battery Bench Tool
pour récupérer des données variées et exploitables pour identifier les
problèmes réels et y apporter des solutions. En effet cet outil génère
différents scénarios d’utilisation pour identifier les composants responsables
de la baisse d’autonomie (le processeur, le disque dur, etc.) et ce de manière
reproductible.

Pendant ce temps, Hans de Goede souhaite activer de manière générique la SATA Link
Power Management
dans le noyau ce qui améliorait la gestion de l’énergie
des périphériques accessibles via SATA, soit des SSD ou disques dur
principalement. Seulement par le passé, cela causait des corruptions de données
sur certains SSD à cause d’un firmware foireux. Il souhaite des retours
utilisateurs sur la question pour savoir le gain d’autonomie estimé et si des
corruptions de données sont à signaler ou non.

Hans souhaite également désactiver les modules multimédia des processeurs
quand ils ne sont pas actifs, ce qui permet de gagner un peu d’autonomie
également.

RADV

Fedora a apporté l’implémentation libre et complète de Vulkan pour les GPU
d’AMD qui sont certifiés compatibles avec la norme.

Travail de fond

Wayland

Wayland est le remplaçant de l’ancêtre X11 dans les systèmes UNIX ou Linux.
La remise à plat du protocole comporte son lot de surprisses et de régressions.
Après 8 ans de gestation, et 2 ans de tests intensifs sous Fedora, il a été
proposé par défaut pour Fedora 25, première distribution à avoir fait ce
changement nativement.

Cela a été possible grâce à Olivier Fourdan, Jonas Ådahl et la communauté
Wayland pour notamment résoudre les derniers problèmes de stabilité et de
rendu. L’attention a été portée notamment sur XWayland pour assurer la
compatibilité ascendante avec les applications ne pouvant utiliser Wayland
directement aujourd’hui.

Mais le travail continue. Actuellement, ils travaillent sur l’affichage
distant du bureau.

libinput

Cette bibliothèque est le Wayland des entrées du système (claviers, souris,
touchpad, tablettes tactiles, écrans tactiles, etc.). Mais contrairement à
Wayland, il était possible d’utiliser libinput dans Xorg directement (à des
fins de tests mais aussi pour améliorer ce dernier). Cela a permis l’apport de
la gestion du multitouch par exemple et a rendu libinput fonctionnel plus
rapidement.

Portage vers GTK+3

GTK+2 est une bibliothèque graphique qui fut très utilisée mais qui est
aujourd’hui obsolète. Elle ne bénéficie plus d’évolutions, et ne gèrera jamais
Wayland ou le HiDPI par exemple. La communauté Fedora a œuvré pour porter
Libreoffice et Firefox sous GTK+3 en proposant des correctifs en ce sens, et en
proposant ces logiciels en premier avec cette implémentation. Ce qui a donné
lieu à l’identification de nombreux bogues qui ont pu être corrigés avant leur
prise en charge par d’autres distributions.

Ce qui est prévu à l’avenir

Fedora n’est pas en reste pour l’avenir. Outre son évolution vers la
modularité, la communauté a d’autres éléments à ajouter.

La construction des applications Flatpak

Owen Taylor travaille sur l’infrastructure de Fedora pour apporter de quoi
construire des applications Flatpak directement, en parallèle des formats RPM
classiques. L’objectif est de faciliter la vie du mainteneur qui pourra
concevoir en une fois la construction des deux formats et les autres
distributions ou utilisateurs pourront récupérer le Flatpak à jour directement
s’ils le souhaitent.

Pipewire

Wim Taymans, co-auteur de GStreamer et grand contributeur de PulseAudio
projette d’étendre le spectre de ses travaux avec Pipewire. Il souhaite avec ce
composant unifier l’audio et la vidéo sous Linux. L’objectif au long terme
n’est pas de gérer uniquement la vidéo, mais de prendre en compte également
tout type de flux audio. Et non seulement il souhaite s’attaquer aux cas
d’usage de PulseAudio, mais également à ceux de Jack (qui est plutôt dédié au
traitement audio professionnel ou d’amateurs éclairés). Cela passera notamment
par une compatibilité avec les applications existantes sans réécriture de leur
part.

L’objectif est de rendre la plateforme Linux plus attirante pour les
compositeurs et autres artistes du milieu. Pipewire a fait sa première
apparition dans Fedora 27.

Optimus et équivalents

Adam Jackson travaille autour d’un nouveau composant glxmux pour
permettre l’exploitation de plusieurs sessions GLX sur un même système.
L’objectif est de pouvoir facilement passer de la pile Mesa, à celle d’Intel ou
à celle de nVidia. Cela est bien sûr en lien pour un usage transparent de
solutions hybrides comme Optimus.

Les contacts avec nVidia sont nombreux à ce sujet pour finir ce travail.

Prise en charge de Thunderbolt 3 et de sa politique de sécurité

Christian Kellner travaille sur un autre pan du matériel moderne
de l’ordinateur : Thunderbolt 3
. Cette norme concurrente de l’USB type C
propose en plus des fonctionnalités usuelles de ce type de bus (affichage,
transfert de données, etc.) un système de sécurité pour éviter qu’un
périphérique inconnu ait accès de manière privilégiée à votre machine dans
votre dos.

Grâce à son travail, l’utilisateur est notifié dans GNOME de la présence
d’un nouveau périphérique et peut ainsi décider de lui octroyer l’accès ou non
à certaines fonctionnalités de la machine.

Tests automatisés des ordinateurs portables

Les ordinateurs portables sont des machines ayant un grand nombre de
périphériques en simultanée ce qui nécessite une bonne intégration avec le
système d’exploitation pour en tirer pleinement partie.

Pour détecter les régressions dans ce domaine, et avoir une vue d’ensemble
de la compatibilité actuelle du parc, Benjamin Berg conçoit une suite de tests
dédiés à la question avec un site listant les fameux rapports.

Le HiDPI fractionnel

Les affichages à haute densité de pixels (HiDPI) sont de plus en plus
fréquents dans les configurations milieu et haut de gamme. Ils permettent
d’améliorer la finesse de l’affichage sans pour autant réduire la taille des
éléments affichés. Cependant sur certains modèles d’écran, les ratios entiers
du HiDPI produisent des affichages trop grands ou trop petits. Pour résoudre ce
problème, on souhaite introduire des valeurs intermédiaires non entières.
Le travail est en cours pour le permettre, d’autant qu’il
faut s’assurer que cela s’applique également aux programmes tournant avec
XWayland sans nécessiter une gestion directe depuis leur bibliothèque graphique
ou de leur gestionnaire de fenêtre.

Le HDR

La technologie High Dynamic Range se répand de plus en plus sur les
moniteurs et les ordinateurs aujourd’hui. L’objectif est de fournir une plus
grande gamme de rendu des couleurs. Une collaboration est en cours avec Intel,
nVidia et AMD sur le sujet pour fournir ce type de solution à Linux.

Fedora Atomic : c’est de la bombe

Fedora travaille beaucoup pour concevoir un système atomique, selon les
travaux de Project
Atomic
. Actuellement c’est la version Cloud qui en bénéficie, mais les
travaux sur la version Workstation sont en cours. Le but est d’améliorer la
fiabilité du système, il sera ainsi possible de facilement mettre à jour le
système en diminuant les risques liés à une procédure exécutée dans un ordre
différent que prévu par exemple. Le retour à une situation antérieure en cas de
problème sera également plus facile en sélectionnant l’état précédent du
système dans GRUB.

Devant l’intérêt récent pour cette technologie, un groupe de travail a été constitué ce mois-ci pour faire avancer le
sujet.

Conclusion

Comme nous pouvons le voir avec cette liste d’exemples, une distribution
d’envergure comme Fedora, mais aussi Ubuntu, Debian ou autres peuvent apporter
bien plus qu’une liste de logiciels à installer. Ils proposent des nouveaux
outils, participent au développement ou à la stabilisation des logiciels qu’ils
fournissent, peuvent collaborer avec d’autres entreprises ou communautés pour
améliorer la prise en charge de leur produit.

Et encore, nous ne parlons que des travaux significatifs de ces trois
dernières années, Fedora a également œuvré pour PulseAudio, systemd,
PackageKit, NetworkManager, le pilote libre nouveau et tant d’autres
composants par le passé !

Et malgré les liens forts entre Red Hat et Fedora, nous pouvons voir que
beaucoup des travaux de Fedora de ces dernières années ont bénéficié à la
plupart des distributions aujourd’hui. Et cela n’est pas près de se
terminer.

Powered by WPeMatico

Share Button