unsnap, un outil pour migrer les packages snap vers flatpak
Snap est un système de gestion de paquets développé par Canonical pour Ubuntu qui peut être implémenté sur les systèmes d'exploitation utilisant le noyau Linux et le système d'initialisation systemd.
Ce système de gestion de paquets est présenté comme un système « universel », que Canonical a promu à un tel point que, dans les nouvelles versions prévues pour Ubuntu, il a abandonné la prise en charge de Flatpak et a ainsi tout misé sur son propre système de gestion de paquets.
Par ailleurs, Canonical a également décidé de distribuer une version d'Ubuntu entièrement sous forme de paquets Snap. Cette décision a suscité le mécontentement et a divisé la communauté, les paquets Snap ne faisant pas l'unanimité.
En réaction, plusieurs initiatives ont vu le jour pour promouvoir l'utilisation des paquets Flatpak. Parmi les projets soutenant ce format, on trouve unsnap, un outil développé pour convertir les systèmes Ubuntu utilisant les paquets snap vers les paquets Flatpak.
L'utilitaire remplace non seulement le gestionnaire de packages snap par flatpak, mais sélectionne et installe également des équivalents flatpak pour les packages snap déjà installés sur le système. Dans le cas idéal, l'utilisateur peut obtenir un ensemble d'applications complètement similaire, mais installé au format flatpak.
à propos de détacher
La migration s'effectue en plusieurs étapes. Dans un premier temps, unsnap génère un ensemble de scripts shell décrivant les opérations de remplacement. En fonction de l'état actuel du système, des scripts distincts sont créés pour sauvegarder l'environnement snap, installer le gestionnaire de paquets flatpak, activer les dépôts flatpak, installer les équivalents flatpak des paquets snap déjà présents sur le système et supprimer les paquets snap ainsi que la boîte à outils snapd. Avant d'exécuter les scripts générés automatiquement, l'utilisateur peut les modifier selon ses besoins.
Ce projet est développé par Alan Pope , l'un des concepteurs du système Snap, qui a quitté Canonical en 2021 après dix ans au sein de l'entreprise. L'ensemble d'outils est encore en phase expérimentale (pré-alpha) et compatible uniquement avec Ubuntu.
Parmi les projets connexes, l'auteur unsnap mentionne custom-desktop (un ensemble de scripts pour convertir la composition d'un environnement Ubuntu déjà installé) et deb-get (un analogue d'apt-get pour travailler avec des packages deb situés dans des référentiels tiers ou sur des sites Web).
En plus du gestionnaire de packages, le projet deb-get fournit des métadonnées de packages tiers prêtes à installer qui peuvent être utilisées pour remplacer les packages snap par des packages deb.
Unsnap peut exécuter automatiquement un ensemble de scripts générés :
- 00-backup : Exécutez la sauvegarde de snap pour chaque snap installé qui est en cours de migration
- 01-install-flatpak : S'il n'est pas déjà installé, il installera le gestionnaire de paquets flatpak
- 02-enable-flathub : s'il n'est pas activé, ajoutera l'emplacement distant du flathub dans le flatpak
- 03-install-flatpaks : installe des flatpaks équivalents pour chaque plugin identifié
- 04-remove-snaps : supprime les snaps pour lesquels des flatpaks ont été installés
- 99-remove-snapd : supprime snapd seul, ce qui supprimera tous les paquets snap
Il est mentionné qu'à l'avenir, unsnap prévoit de prendre en charge d'autres distributions compatibles Snap, telles que Manjaro, Linux Mint, Zorin, Debian, Fedora, Pop_OS!, KDE Neon, Raspbian, CentOS et Elementary OS. Les utilisateurs peuvent également être intéressés par la liste des packages analogiques préparés par le projet aux formats snap et flatpak.
Comment installer unsnap sur Ubuntu ?
Pour ceux qui souhaitent pouvoir installer cet outil sur leur système, ils doivent savoir que l'installation est assez simple et qu'il suffit d'ouvrir un terminal et qu'ils y taperont ce qui suit :
git clone https://github.com/popey/unsnap
cd unsnap
./unsnap
Unsnap fonctionne en deux étapes. Dans un premier temps, Unsnap génère un ensemble de scripts chargés de la migration des Instant Packages vers Flatpak. Cette fonctionnalité permet aux utilisateurs de consulter et, si nécessaire, de modifier les scripts avant leur exécution afin de les valider ou de les adapter à leurs besoins.
Une fois les scripts générés, les utilisateurs peuvent les exécuter dans l'ordre pour terminer le processus de migration.
Ou, comme mentionné au début, si vous préférez l'exécution de tous les scripts, tapez simplement :
./unsnap auto
Enfin, il convient de mentionner que, comme tout processus de migration, il est recommandé de faire une sauvegarde des informations importantes, car en tant que telle, il s'agit de supprimer et d'installer des applications, ce qui implique également la suppression d'informations.
Si vous souhaitez en savoir plus, vous trouverez les détails en suivant ce lien.