55 votes

Comment supprimer complètement snap sans perdre le navigateur Chromium ?

Je me demande s'il existe ou non un moyen de supprimer complètement snap d'Ubuntu 19.10 sans perdre la possibilité d'installer des applications importantes comme Chromium.

Lorsque j'ai récemment effectué la mise à jour vers la dernière version d'Ubuntu, j'ai réalisé que le programme d'installation réinstallait snap de manière programmée, alors que je l'avais supprimé manuellement auparavant. De plus, le programme d'installation a supprimé Chromium, qui était installé via les dépôts, et l'a réinstallé via snap.

Comme je ne veux pas que snap soit installé sur mes machines pour diverses raisons, ma question est de savoir si quelqu'un connaît un moyen sûr de le supprimer, et de récupérer le DEB de Chromium dans les sources ?

Y a-t-il un PPA ? Pourrais-je utiliser en plus les sources d'une saveur Ubuntu qui n'a pas supprimé la Deb Chromium de ses sources ?

48voto

ʇsәɹoɈ Points 874

Mise à jour de novembre 2021 :

Il semble que l'équipe de sécurité de Debian fin de la prise en charge de Chromium , ce qui laissera les anciennes installations avec vulnérabilités de sécurité non corrigées .

Je laisse ce post en place parce qu'il décrit une technique générale pour l'utilisation de plusieurs dépôts Debian, mais veuillez trouver une autre source de chrome. Candidats possibles :


Le Repo de Debian sauve la journée !

( Article complet ici )

Debian maintient toujours Chromium comme un paquet régulier dans son dépôt APT. Nous pouvons configurer Ubuntu pour le récupérer à partir de là et continuer à recevoir les mises à jour de sécurité en même temps que toutes les autres mises à jour du système d'exploitation. Cela a du sens du point de vue de la sécurité, puisque c'est dans Debian qu'Ubuntu obtient déjà la plupart de ses paquets, et que c'est un projet très connu et très médiatisé. Il n'est pas nécessaire de prendre le risque d'installer des logiciels provenant d'une source aléatoire ou de demander à votre système de faire confiance à un PPA.

Avertissement obligatoire : Cela n'est pas du tout pris en charge et pourrait causer des problèmes immédiats ou futurs. Si vous cassez quelque chose, c'est votre propre faute.

Voici ce que j'ai fait sur Ubuntu 19.10 :

sudo apt update && sudo apt upgrade

Cela met à jour tous mes paquets Ubuntu déjà installés, il sera donc plus facile de voir comment les mises à jour sont affectées après avoir effectué mes changements.

snap remove chromium

Bye bye, le snap ennuyeux.

sudo apt purge chromium-browser chromium-chromedriver

Bye bye, les faux paquets Chromium. (Vous pouvez laisser de côté le chromium-chromedriver si ce paquet n'est pas installé sur votre système).

umask 22

Cela permet simplement de s'assurer que les fichiers que je crée seront lisibles par tous, y compris par le système.

Créer un /etc/apt/sources.list.d/debian-stable.list contenant :

deb [signed-by=/usr/share/keyrings/debian-archive-keyring.gpg] http://deb.debian.org/debian stable main
deb-src [signed-by=/usr/share/keyrings/debian-archive-keyring.gpg] http://deb.debian.org/debian stable main

deb [signed-by=/usr/share/keyrings/debian-archive-keyring.gpg] http://deb.debian.org/debian-security/ stable-security main
deb-src [signed-by=/usr/share/keyrings/debian-archive-keyring.gpg] http://deb.debian.org/debian-security/ stable-security main

deb [signed-by=/usr/share/keyrings/debian-archive-keyring.gpg] http://deb.debian.org/debian stable-updates main
deb-src [signed-by=/usr/share/keyrings/debian-archive-keyring.gpg] http://deb.debian.org/debian stable-updates main

Cela indique à apt de chercher des paquets non seulement dans les archives d'Ubuntu, mais aussi dans les archives stables de Debian. C'est généralement une mauvaise idée, car vous ne voulez pas que des centaines de paquets Ubuntu aléatoires soient remplacés par des versions Debian, ce qui pourrait très probablement casser votre système. Cependant, nous allons ajouter quelques règles pour éviter ce problème.

Note : Le /usr/share/keyrings/debian-archive-keyring.gpg référencé ci-dessus, ainsi que plusieurs autres fichiers de trousseau de clés Debian, sont déjà présents sur mon systÃ?me Ubuntu grâce à l'utilitaire debian-archive-keyring paquet. Il est peut-être déjà présent sur votre système, mais si ce n'est pas le cas, vous devriez l'installer : sudo apt install debian-archive-keyring

Créer un /etc/apt/preferences.d/debian-chromium contenant :

Explanation: Allow installing chromium from the debian repo.
Package: chromium*
Pin: origin "*.debian.org"
Pin-Priority: 100

Explanation: Avoid other packages from the debian repo.
Package: *
Pin: origin "*.debian.org"
Pin-Priority: 1

La première strophe attribue une priorité inférieure à la normale aux paquets Debian Chromium ; juste assez élevée pour leur permettre d'être installés manuellement et mis à jour automatiquement, mais pas assez élevée pour être préférée aux paquets Ubuntu. C'est ce que l'on appelle l'épinglage apt, et c'est décrit dans le document Manuel apt_preferences . La deuxième strophe attribue une priorité très faible à tous les autres paquets Debian, de sorte qu'ils ne seront automatiquement installés ou mis à jour que si cela est nécessaire pour satisfaire une dépendance.

(Je suppose que j'aurais pu attribuer une priorité beaucoup plus élevée aux paquets Chromium de Debian si j'avais eu besoin qu'ils supplantent ceux d'Ubuntu, mais comme ils utilisent des noms de paquets différents, aucune supplantation n'est nécessaire. J'aurais également pu attribuer la priorité 100 à l'ensemble du dépôt Debian, ce qui aurait rendu toutes les dépendances de Debian éligibles pour les mises à jour automatiques, traitant ainsi le dépôt Debian comme Backports Ubuntu en mode d'installation manuelle. J'ai choisi l'approche la plus conservatrice juste pour être prudent).

sudo apt update

Cela rafraîchit la base de données des paquets, de sorte que mon système Ubuntu connaît maintenant tout ce que j'ai ajouté dans les archives Debian.

apt upgrade --simulate

Cela me montre ce qu'une mise à jour de paquet à l'échelle du système ferait, sans le faire réellement. Comme j'ai déjà effectué une mise à niveau avant de faire des changements, je ne m'attends pas à voir des paquets à mettre à niveau listés ici.

Si un ou deux paquets pouvant être mis à niveau sont listés, cela peut signifier qu'Ubuntu a publié des mises à jour pendant que je travaillais, ce qui est normal. Je demanderais à apt d'où proviennent chacune de ces mises à jour avant de continuer, avec apt policy package-name . Si l'un d'entre eux provenait des archives Debian, j'envisagerais de revenir sur mes modifications, en supprimant les fichiers que j'ai créés et en exécutant sudo apt update encore.

Si de nombreux paquets pouvant être mis à jour étaient listés, cela signifierait probablement qu'apt pense maintenant que les paquets de Debian sont des remplacements valables des paquets d'Ubuntu, ce que je ne veulent pas . Cela se produirait si je faisais une erreur dans les fichiers que j'ai créés. Je rétablirais mes modifications en supprimant les fichiers que j'ai créés et en exécutant la commande sudo apt update encore. Je pourrais alors envisager de recommencer et de taper plus soigneusement.

Tout allait bien à ce stade (aucun paquet à mettre à niveau n'était répertorié), alors j'ai continué.

sudo apt install chromium

Le gestionnaire de paquets m'a ensuite demandé de confirmer, en listant Chromium et une petite poignée de paquets de dépendance nécessaires à Chromium. Une fois encore, si de nombreux paquets étaient listés ici, j'enquêterais et envisagerais de revenir sur mes modifications. (J'ai quand même examiné chaque dépendance, parce que je suis prudent, et j'ai trouvé qu'une seule des dépendances provenait de l'archive Debian : libjpeg62-turbo et il n'entre pas en conflit avec ce que j'ai installé). Tout semblait bien se passer, j'ai donc demandé au gestionnaire de paquets de continuer.

Lorsqu'il s'est terminé, Chromium a finalement été installé comme un paquet apt. Merci aux mainteneurs de Debian !

Je n'utilise pas de boutons-pression, donc la prochaine chose que j'ai faite a été de regarder dans la section de l'ordinateur. snap dans mon répertoire personnel, pour m'assurer qu'il n'y avait rien dont j'avais besoin, et ensuite le mettre à la poubelle. Si vous voulez faire la même chose, considérez d'abord que toutes les données utilisateur que vous avez créées/modifiées/sauvegardées dans Chromium depuis que le snap a été installé vivent quelque part dans ce dossier snap. (Probablement sous snap/chromium/current/.config qui est caché par défaut dans la plupart des gestionnaires de fichiers). Vous pourriez vouloir le sauvegarder ou le déplacer dans le répertoire de données habituel de Chrome : $HOME/.config/chromium . Dans mon cas, les données Chromium que je voulais conserver étaient toujours à leur place habituelle, puisque je n'avais utilisé le snap que pendant environ cinq minutes.

C'est ça. J'espère que ça aidera quelqu'un. S'il endommage votre système, vole votre vélo, s'enfuit avec votre petit ami ou fait autre chose que vous n'aimez pas, alors je suis désolé, mais vous en êtes toujours responsable.

Bonne chance !

4voto

Andrew Barr Points 491
sudo snap remove chromium    
sudo apt purge snapd    
rm -rf ~/snap

ajouter un repo

sudo add-apt-repository ppa:chromium-team/dev

changement eoan à disco sur /etc/apt/sources.list.d/chromium-team-dev.list

Si le fichier n'existe pas ou est vide, collez-le :

deb http://ppa.launchpad.net/chromium-team/dev/ubuntu disco main
deb-src http://ppa.launchpad.net/chromium-team/dev/ubuntu disco main

puis actualiser

sudo apt update

vérifier

apt policy chromium-browser

installer

sudo apt install chromium-browser

4voto

Gringo Suave Points 558

Je n'ai rien contre snap en théorie, mais spammer mes montages, processus, et système de fichiers est juste trop. Je ne l'ai utilisé que pour une seule chose (le micro-éditeur) avant que Chromium ne me soit imposé également. (Et n'est plus nécessaire pour micro non plus en 20.04).

Enlever le snap*, et empêcher son retour :

sudo apt remove --purge snapd -y    # may take a while
killall snap snapd                  # probably not necessary

sudo rm -rf /snap /var/cache/snapd/ # buh-bye
rm -rf ~/snap                       # that one too!
sudo apt-mark hold snap snapd       # prevent reinstall

Installer chrome, dev ou beta :

# sudo add-apt-repository ppa:chromium-team/dev
sudo add-apt-repository ppa:saiarcot895/chromium-beta
# sudo apt update                   # if it didn't already
sudo apt install chromium-browser

Micro éditeur - avant < 20.04 Focal

# install it from snap beforehand or compile, then copy locally:
cp micro ~/bin

Micro éditeur - après >= 20.04 Focal

sudo apt install micro

3voto

gaycoonie Points 31

Ce PPA semble très bien fonctionner à cet effet : https://launchpad.net/~saiarcot895/+archive/ubuntu/chromium-dev C'est la branche de développement, mais à part ça, c'est parfait.

3voto

eitch Points 175

Comme l'exemple de Forest ci-dessus, j'ai fait ce qui suit :

# first add the beta repo, the stable isn't possible as it doesn't get updated
sudo add-apt-repository ppa:chromium-team/beta

# now edit the file, changing the reference to disco, instead of eoan:
sudo nano /etc/apt/sources.list.d/chromium-team-ubuntu-stable-eoan.list
    deb http://ppa.launchpad.net/chromium-team/beta/ubuntu disco main

# Now update the repos:
sudo apt update

Now pin the repository order:
sudo nano /etc/apt/preferences.d/chromium

    Explanation: Disallow installing chromium from ubuntu repo.
    Package: chromium*
    Pin: origin "*.ubuntu.com"
    Pin-Priority: 1

    Explanation: Allow installing chromium from launchpad repo.
    Package: chromium*
    Pin: origin "ppa.launchpad.net"
    Pin-Priority: 100

# Check which version is to be installed:
apt policy chromium-browser

# Now we can install chromium (the extra codecs resolve playback issues):
sudo apt install chromium-browser chromium-codecs-ffmpeg-extra

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X