Petit article qui rejoignent les “je présente ma manière de gérer mes outils” (après celui ou je présentait mon Android), cette fois basé sur mon outil principal de travail : mon PC ! Sous Ubuntu depuis des années, il est passé recemment sous Bluefin lorsqu’une erreur de mise à jour à fait que j’ai du réinstaller un OS (j’ai eut un plantage en plein milieu de mise à jour, laissant le système dans un état complètement cassé.
J’ai du coup décidé alors de passer sous Bluefin et j’aimerais partager ici un peu mon expérience et mes retours.
Présentation de Project Bluefin
Project Bluefin est un système d’exploitation Linux “cloud-native” (c’est à dire réutilisant des technologies venant du cloud, tel que les containers et tout), qui est basée sur Fedora Linux avec un gros aspect “atomique” (c’est à dire proposant une base en lecture-seule avec des mises à jours qui ne sont appliqué en “échangeant” l’image, évitant les soucis de mises à jour comme j’ai eut). C’est un peu barbare et avec des buzzword, mais globalement l’idée est simple :
- Le coeur est le lecture seule, et en “un seul morceau” plutôt qu’avec pleins de petits paquets
- Les applications utilisent flatpak et proviennent de flathub, le magasin d’appli Linux visant à rendre ça plus simple
- Les applications en ligne de commande utilisent homebrew, l’outil créé à la base pour macOS pour ça (et désormais aussi dispo Linux).
- Tout ça se met à jour automatiquement en arrière plan.
- Si une mise à jour système plante, on peut retourner sur la précédante puisque l’image est gardée
Les aventages supposés sont que cela créer un système plus simple à maintenir, évite des soucis traditionnels de distributions comme les conflits de paquets, etc. L’idée est d’avoir bien moins à “maintenir” son OS, c’est en quelque sorte l’opposé total d’un Arch Linux par exemple. C’est une approche très inspirée de la maintenance de serveur, d’où le nom “cloud native”, et un peu aussi des OS comme Android, macOS et tout (tout en ayant encore une partie de la configurabilité de Linux). Leur inconvénient est que c’est un peu plus dur de “mix and match” des composants, que cela demande plus d’espace disque et que même si à l’utilisation et que développer dessus est un poil plus complexe, demandant des containers et tout.
Dit autrement, le but de ce projet est de (je les cite) permettre “la fiabilité d’un Chromebook, mais avec la flexibilité et les capacités d’un bureau Linux traditionnel”.
Le projet Bluefin utilise GNOME, une version KDE existe aussi avec Aurora. J’utilise GNOME pour des raisons personnelle : j’aime son UX, son esthétique, etc. Et y’a un petit dinosaure comme mascotte sur Bluefin, ça marque des points. Ces deux projets, ainsi que Bazzite, un système d’exploitation pour Steam Deck et console similaire sont basés sur le projet Universal Blue, un projet basé sur Fedora visant à amener ces patterns dit “Cloud Native” dans les environnements desktop. Ce projet permet assez facilement à des petites communautés de construire leur propre système d’exploitation (et j’imagine bien dans le futur un Linux mobile basé sur Universal Blue, profitant de Flatpak et tout, même si pour l’instant j’utilise plus PostmarketOS)

Mon expérience
Le premier point que je vais donner sur Bluefin est un point négatif : c’était relou à installer mdr. L’installation auto marche bien (on peut même étendre l’espace sur deux disques), mais j’ai mis du temps avant d’accepter de l’utiliser et j’ai réussi zéro config custom mdr. Visiblement c’est l’installeur de Fedora (déjà connu pour être assez… pas dingue à utiliser). J’ai finalement abandonné et formaté mes deux disques pour utiliser tout en btrfs pour profiter des snapshot et tout, et pouvoir transférer ensuite sur mon futur NAS de sauvegarde.
Une fois l’installation terminée, on arrive sur un bureau GNOME pré-customisé, assez proche d’un Ubuntu sur cet aspect, avec des extensions et des applications pré-inclues. Les settings fonctionnent un peu mieux avec l’expérience GNOME que ceux d’Ubuntu IMO, notamment le dock en bas. Y’a un peu de eye-candy avec l’inclusion de Blur-my-shell, une extension qui permet de remplacer l’espace gris du fond de la vue des espaces de travail de GNOME Shell par une version blurry du fond d’écran. Le résultat donne quelque chose d’élégant (même si je ne suis pas fan de la couleur d’accent en gris par défaut, je trouve ça un peu tristounet) et de sympa niveau expérience utilisateur. Cependant, je l’ai quand même customisé après-coup pour adapter un peu à ce que j’appréciais personnellement.
Un des points qui m’a impressionné, c’est que c’est la distribution Linux que j’ai tenté où GNOME Software (le magasin de logiciel de GNOME) fonctionnait le mieux. Souvent, ce logiciel est pas terrible sur les distro que j’ai testé, mais ici il est impec, ça télécharge bien, et y’a rien à dire. Je pense que c’est un avantage du fait que le logiciel n’ai à géré que les flatpaks. Je pense qu’il en doit être de même avec Fedora Silverblue, mais par habitude, je n’avais pas utilisé le magasin d’application sur Silverblue mais uniquement la ligne de commande. J’ai pu installer les différentes applications disponible sur flathub sans trop de soucis, surtout que maintenant flathub commence à vraiment avoir un bon set d’application. Pour les mises à jour, c’est géré en arrière plan, avec des mises à jour du système toute les semaines, et des flatpak deux fois par jour. Ces premières sont appliqué après un redémarrage de l’ordinateur, du coup il est conseillé d’éteindre régulièrement son ordinateur. C’est l’un des aspects qui m’attire le plus du coup, cet aspect d’avoir le minimum de maintenance à faire. Pour les extensions GNOME, le logiciel Extension Manager est inclus par défaut, permettant d’en trouver et installer plus facilement. De ce que j’ai compris, contrairement à Fedora Silverblue, le passage à la version suivante sera aussi automatique, rendant le système proche d’une rolling release sur cet aspect. Je ne l’ai pas encore essayé, on reverra en Mars ce que ça donne.
La disponibilité d’application sur flathub est plutôt bonne, mais je n’ai pas énormément de besoins “spécifique”, donc il existe peut-être des manques que je ne vois pas. Niveau jeu, j’ai pour l’instant surtout testé Sonic Robo Blast 2, un fangame Sonic open-source développé par l’équipe Sonic Team Junior, et j’ai installé Steam, Itch.io et Heroic Launcher via Flathub pour les jeux propriétaires. Pour Steam+Flatpak ça va être un peu une découverte, parce que j’ai utilisé jusque là surtout la version Ubuntu de Steam. Pour le reste, j’utilisais déjà les version Flatpak.
Pour l’expérience en tant que développeur, une version “Developper Experience” est également fournie. Le développement est fait via des devcontainer en environnement containerisé… A titre personnel, je suis plus du genre à installer les trucs via la ligne de commande puis tester, donc ça va être un pli à prendre. Je peux voir l’intérêt cependant pour certaines vieilles applications java, mais pour certains de mes devs PHP sans BDD ni rien, j’ai eut plus tendance à utiliser un serveur PHP local. Mais ce sera une occasion d’apprendre !
Niveau des manques, pour l’instant, mes manques sont plus les quelques cas ou des applications ne sont disponible que pour Ubuntu, mais du à Flatpak et Flathub, cela arrive de moins en moins souvent, et ce seront souvent des trucs plutôt obscurs. Je pense que je commencerait a avoir des soucis si j’avais aussi besoin d’un drivers spécifiques ou un noyaux special, mais cela ne m’est encore jamais arrivé, même sous Ubuntu j’évitais en vrai.
Le futur du projet
Le projet contient déjà deux édition, l’édition stable basée sur la version courante de Fedora, et la version GTS basé sur la version précédante. Les deux sont donc montée de version tous les six mois. Un nouveau projet à commencé, bluefin LTS, visant à reproduire le schéma des LTS d’Ubuntu, avec des OS supporté de 2 à 3 ans pour les personnes préférant des sorties moins fréquentes.
Elle est basé sur CentOS Stream, l’upstream de Red Hat Entreprise Linux, qui est une base stable et du coup sera surement pas mal appréciée sur cet aspect. A noter qu’il y aura une grande différence par rapport à Ubuntu LTS (même si cela commence à arriver aussi sur Ubuntu LTS avec les Snap) ou a une debian : comme Bluefin utilise flatpak par défaut pour beaucoup de ses applications non “coeur”, elles seront mises à jour à la fréquence habituelle.
A noter qu’une autre variante de Bluefin LTS est prévue, avec un “Hardware Enablement”, qui offrira les nouveau noyaux Linux pour qu’une version reste compatible toute sa vie avec les nouveaux matériels et tout.
Conclusion
Cette distribution est faites par des anciens d’Ubuntu, et cela se voit dans certains aspects, tel que la présence d’une édition de GNOME un peu customisée avec un dock. Si le site est assez barbare avec du nerdspeak, je pense que le projet en lui-même à un fort potentiel pour le grand public, une fois qu’on aura la version LTS (pour avoir des changements moins fréquents) et que le soucis de l’installeur sera résolu. Je pense que beaucoup de ses aspects à l’utilisation peut plaire au grand public :
- Un peu moins déroutante que GNOME (j’adore GNOME, mais faut admettre que pour une partie du grand public, son côté minimaliste à l’extrême peut dérouter)
- Son petit eye-candy supplémentaire peut attirer
- Le fait de ne pas avoir à gérer la maintenance de son poste, les mises à jour en arrière plan, tout ça est plus agréable
- Flatpak et flathub rendent le magasin d’application bien plus agréable à utiliser, et la plupars des “grosses applis” sont là
- L’intégration des drivers par défaut peut aider aussi
Elle bénéficierait d’un site plus simple (voir de communauté FR comme Ubuntu possède), mais je pense que Bluefin à du potentiel pour créer un système d’exploitation Linux un peu plus “grand public”. Et qu’avec Universal Blue, ce sera possible d’en créer pour différent bureau et différent besoins (je vois bien un XFCE et un Cinnamon par exemple), à la manière des “flavors” d’Ubuntu.
Miniature : illustration de bluefin et fond d'écran de la distribution par Jacob Schnurr.