Journal du dimanche 19 octobre 2025 à 17:36
Cette note fait partie de la série de notes : "J'ai étudié et testé CoreOS et je suis tombé dans un rabbit hole 🙈".
Note précédente : "composefs, un filesystem spécialement créé pour les besoins des distributions atomic"
En étudiant libostree, j'ai découvert que Flatpak est construit sur OSTree depuis sa création : voir page Flatpak documentation - Under the Hood.
Flatpak utilise la fonctionnalité pull d'OSTree pour télécharger l'intégralité des applications depuis un repository OSTree, ou des deltas pour les mises à jour.
Depuis la version 0.6.0 de 2016, Flatpak supporte aussi le téléchargement au format OCI.
Voici un exemple de repository Flatpak configuré sur mon workspace :
$ flatpak remotes -d
Name Title URL Collection ID Subset Filter Priority Options Com… Descript… Homepage Icon
fedora Fedora Flatpaks oci+https://registry.fedoraproject.org - - - 1 system,oci - - - -
flathub Fedora Flathub Selection https://dl.flathub.org/repo/ - - - 1 system Sel… Selected… https://flathub.org/ https://dl.flathub.org/repo/logo.svg
flathub Flathub https://dl.flathub.org/repo/ - - - 1 user Cen… Central … https://flathub.org/ https://dl.flathub.org/repo/logo.svg
On peut voir que Flathub est un serveur libostree et le registry registry.fedoraproject.org utilise le format OCI.
Sans entrer dans les détails (ce serait trop long pour cette note), libostree est la raison pour laquelle Flatpak est plus performant que Snap basé sur squashfs.
Selon Claude.ia, Flatpak offre par rapport à Snap : un démarrage des applications 2 à 3 fois plus rapide, 60-80% de bande passante en moins sur les mises à jour, et 30-40% d'espace disque économisé.
Note suivante : "Support OCI de CoreOS (image pull & updates)".