Utiliser Debian et dérivées

Ubuntu : Supprimer et bloquer les SNAPS

Cet article a été mis à jour, vous consultez ici une archive de cet article!
Table des matières

logo_ubuntu_large



Introduction



Comme vous le savez, Ubuntu est en train de faire imposer son système de paquets universels SNAP.
Cet article indique comment supprimer ceux installés et bloquer l'installation de ceux-ci.

Lister les snaps installés



Dans un premier temps, on va lister les snaps installés sur le système :

Code BASH :
snap list


Code TEXT :
Nom                Version           Révision  Suivi            Éditeur     Notes
core               16-2.43.3         8689      latest/stable    canonical✓  core
core18             20200124          1668      latest/stable    canonical✓  base
gnome-3-34-1804    0+git.2c86692     18        latest/stable/…  canonical✓  -
gtk-common-themes  0.1-28-g1503258   1440      latest/stable/…  canonical✓  -
snap-store         20200312.b31a6d4  295       latest/stable/…  canonical✓  -
 


On va donc supprimer les snaps 1 à 1 sauf core qui est inclus avec le package snapd :

Code BASH :
snap remove snap-store
snap remove gtk-common-themes
snap remove gnome-3-34-1804
snap remove core18


Répétez pour tous vos snaps.

Supprimer le paquet snapd



On va ensuite supprimer le service et le paquet snapd :

Code BASH :
apt autoremove snapd


Il faut privilégier autoremove à remove, car cela permet de supprimer les dépendances inutiles au passage :

Code TEXT :
Les paquets suivants seront ENLEVÉS :
  gnome-software-plugin-snap linux-modules-5.4.0-1002-oem snapd
0 mis à jour, 0 nouvellement installés, 3 à enlever et 150 non mis à jour.
 


On remarque ici que dans mon Ubuntu graphique, ça va retirer le plugin de gnome-software qui installe les snaps !

Bloquer les snaps



Ensuite, si on réinstalle un paquet qui n'est que transitoire vers un snap, le service snapd va se réinstaller en douce (c'est le cas du navigateur web Chromium depuis Ubuntu 19.10).

On va donc bloquer le paquet en paramétrant apt.

Créer le fichier nosnap par exemple dans /etc/apt/preferences.d/ :

Code BASH :
vi /etc/apt/preferences.d/nosnap


Dedans on indique une priorité négative au paquet snapd, quelque soit son dépôt :

Code BASH :
Package: snapd
Pin: release *
Pin-Priority: -1


Une fois enregistré, le paquet snap sera bloqué !


Si on teste :
Code BASH :
apt install snapd


Code TEXT :
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
Aucune version du paquet snapd n'est disponible, mais il existe dans la base
de données. Cela signifie en général que le paquet est manquant, qu'il est devenu obsolète
ou qu'il n'est disponible que sur une autre source
E: Le paquet « snapd » n'a pas de version susceptible d'être installée


Exemple avec chromium-browser qui va chercher snapd pour installer sa version snap (plus de deb dispo) :

Code BASH :
apt install chromium-browser


Code TEXT :
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
Certains paquets ne peuvent être installés. Ceci peut signifier
que vous avez demandé l'impossible, ou bien, si vous utilisez
la distribution unstable, que certains paquets n'ont pas encore
été créés ou ne sont pas sortis d'Incoming.
L'information suivante devrait vous aider à résoudre la situation : 
Les paquets suivants contiennent des dépendances non satisfaites :
 chromium-browser : Pré-Dépend: snapd mais il n'est pas installable
E: Impossible de corriger les problèmes, des paquets défectueux sont en mode « garder en l'état ».


Pour Chromium, ce ne sont pas les alternatives qui manquent pour avoir un navigateur basé sur chromium : Vivaldi, Opera, Google Chrome, Brave, ...