mai 20, 2023

Flatpak, ToolBox, de quoi parle-t-on?

Pour faire suite au précédent article, je voudrais apporter des éclairages sur ce que j'ai compris de ces deux éléments, parties importantes de la distribution Fedora SilverBlue.

FlatPak

"Flatpak (anciennement xdg-app) est un système de virtualisation d’application pour les distributions GNU/Linux de bureau."

ou en d'autres termes : "Le logiciel flatpak est un utilitaire (intégré aux logithèques graphiques, ou bien utilisable en ligne de commande) pour la gestion de paquets, le déploiement de logiciels, et l'isolement d'applications (sandboxing). Il fournit un environnement isolé du reste du système (sandbox), où l'utilisateur peut faire fonctionner des applications de manière sûre".

"Un bac à sable (de l'anglais sandbox) est un mécanisme de sécurité informatique se basant sur l'isolation de composants logiciels, de logiciels ou de groupes de logiciels par rapport à leur logiciel ou système d'exploitation hôte."

"L'objectif est de fournir un environnement « bac à sable » (sandbox) sûr, isolé du reste du système, dans lequel les utilisateurs peuvent exécuter des applications non validées par les dépôts de la distribution (des versions de test, par exemple)."

"Le second objectif est de permettre l’installation des paquets Flatpak (ndlr par Flathub par exemple) sur n'importe quelle distribution, les développeurs n'ont plus besoin d'emballer leur application pour chaque distribution GNU/Linux." Il existe donc de nombreuses distributions autres que Fedora Silverblue qui utilisent la "technique" Flatpak. Par ailleurs, Flatpak permet à des créateurs de logiciels de faire tourner ceux-ci dans toutes les distributions qui utilisent Flatpak, ils n'ont pas à adapter leur logiciel à chaque distribution, ce qui est un gain énorme de travail.

Flatpak n'est pas préinstallé sur Ubuntu, mais il est compatible et peut être installé. Un autre article explique son installation sur Ubuntu .

Quelle différence entre Snap et Flatpak dont nous avons vu que le premier était installé sous Ubuntu Unity et le deuxième sous Fedora SilverBlue?

Globalement Snap et Flatpak sont pour l'utilisateur "lambda" identiques.

Il existe évidemment des différences techniques, mais qui concernent essentiellement les "pro".

La grosse différence tient en fait à ce que Snapd est "le service d’installation et de gestion des paquets snap – de code propriétaire de Canonical, donc source d’agacement dans la communauté du logiciel libre." La puissance de Canonical fait "une crainte de situation hégémonique sur la distribution des paquets, l’éditeur étant suivi de grands noms du secteur." Ainsi "l’équipe de Linux Mint a décidé d’une renonciation à installer snapd par défaut dans le système. Pourquoi ? Parce que Canonical n’a pas tenu sa promesse initiale : snapd ne devait jamais être rendu obligatoire pour installer une application."

Vous trouverez une autre approche et explications dans l'article suivant : "Mais pourquoi Flatpak?"

ToolBox

"C’est la deuxième voie pour installer des logiciels supplémentaires dans le système. Fedora toolbox repose sur buildah et podman, qui est lui-même un clone de Docker pouvant s’exécuter sans droits super‐utilisateur."

"En fait, cet utilitaire permet de créer un conteneur basé sur une version de Fedora de votre choix, avec une configuration par défaut pour que le partage avec l’hôte soit simple, comme la correspondance des noms utilisateurs et des différents identifiants. La base du conteneur peut être partagée entre les instances : deux conteneurs basés sur, par exemple, Fédora 31 ne requièrent de télécharger qu’une fois cette base."

"C'est est un outil conçu pour faciliter la vie des développeurs qui ont souvent besoin d'installer plusieurs bibliothèques et applications supplémentaires"

Vous trouverez un peu plus d'informations pratique dans cet article

Prochain article NixOs