web-dev-qa-db-fra.com

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

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

Lorsque j'ai récemment mis à jour la dernière version d'Ubuntu, je me suis rendu compte que le programme d'installation avait réinstallé par programme le composant logiciel enfichable, même si je l'avais supprimé manuellement auparavant. De plus, le programme d'installation a supprimé Chromium, qui a été installé via les référentiels, et l'a réinstallé via snap.

Comme je ne veux pas que le composant logiciel enfichable 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 ramener le Chromium DEB aux sources?

Existe-t-il un AAE? Puis-je utiliser une source d'une saveur Ubuntu en plus, qui n'a pas supprimé le Chromium Deb de ses sources?

25
user5950

Debian Repo sauve la journée!

Debian maintient toujours Chromium en tant que paquet régulier dans leur dépôt APT. Nous pouvons configurer Ubuntu pour l'obtenir à partir de là, et continuer à recevoir des mises à jour de sécurité en temps opportun avec toutes nos autres mises à jour de système d'exploitation. Cela fait du point de vue de la sécurité, car Debian est un projet de haut niveau très connu, et c'est déjà là que Ubuntu obtient la plupart de ses packages. Il n'est pas nécessaire de risquer d'installer des versions de navigateur mystère à partir d'une source aléatoire ou d'une PPA marginale.

Avertissement: Ceci n'est pas entièrement pris en charge et pourrait éventuellement provoquer des problèmes immédiatement ou à l'avenir. Si vous cassez quelque chose, c'est de votre faute.

Voici ce que j'ai fait sur Ubuntu 19.10:

Sudo apt update && Sudo apt upgrade

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

snap remove chromium

Au revoir, claquement ennuyeux.

Sudo apt purge chromium-browser chromium-chromedriver

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

umask 22

Cela garantit simplement que les fichiers que je crée seront lisibles par tout le monde, y compris le système.

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

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

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

# stable-updates, previously known as 'volatile'
deb [signed-by=/usr/share/keyrings/debian-archive-keyring.gpg] http://ftp.us.debian.org/debian/ stable-updates main
deb-src [signed-by=/usr/share/keyrings/debian-archive-keyring.gpg] http://ftp.us.debian.org/debian/ stable-updates main

Cela indique à apt de rechercher des paquets non seulement dans les archives 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; cela casserait très probablement votre système. Cependant, nous allons ajouter quelques règles pour éviter que cela ne se produise.

(Noter la /usr/share/keyrings/debian-archive-keyring.gpg le fichier référencé ci-dessus, ainsi que plusieurs autres fichiers de porte-clés Debian, sont déjà présents sur mon système Ubuntu grâce au debian-archive-keyring paquet. Il est probablement déjà installé sur votre système, mais sinon, vous devez l'installer: Sudo apt install debian-archive-keyring)

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

Explanation: Prevent installing from debian repo.
Package: *
Pin: Origin "*.debian.org"
Pin-Priority: 1

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

La première strophe attribue une très faible priorité à tous les paquets des archives Debian, de sorte qu'ils ne remplaceront rien dans les archives Ubuntu. La deuxième strophe attribue une priorité un peu plus élevée aux paquets Debian Chromium. Ceci est appelé apt pinning, et est décrit dans le manuel apt_preferences .

(Je suppose que j'aurais pu attribuer une priorité beaucoup plus élevée aux paquets Chromium de Debian si j'en avais eu besoin pour remplacer Ubuntu, mais comme ils utilisent des noms de paquets différents, aucune substitution n'est nécessaire.)

Sudo apt update

Cela rafraîchit la base de données des paquets, donc mon système Ubuntu sait maintenant tout sur les archives Debian que j'ai ajoutées.

apt upgrade --simulate

Cela me montre ce que ferait une mise à niveau de package à l'échelle du système, sans le faire réellement. Comme j'ai déjà effectué une mise à niveau avant d'apporter des modifications, je ne m'attends pas à voir des packages évolutifs répertoriés ici.

Si un ou deux packages évolutifs étaient répertoriés, cela pourrait signifier qu'Ubuntu a publié des mises à jour pendant que je travaillais, ce qui est normal. Je voudrais demander à apt d'où viennent chacune de ces mises à jour avant de continuer, avec apt-cache policy package-name. Si l'un d'entre eux venait 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 évolutifs étaient répertoriés, cela signifierait probablement qu'apt pense maintenant que les paquets Debian sont des remplacements valides pour les paquets Ubuntu, ce que je ne veux pas. Cela se produirait si je faisais une erreur dans les fichiers que j'ai créés. Je reviendrais sur mes modifications en supprimant les fichiers créés et exécutés Sudo apt update encore. Je pourrais alors envisager de recommencer et de taper plus attentivement.

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

Sudo apt install chromium

Le gestionnaire de packages m'a alors demandé de confirmer, répertoriant le chrome et une petite poignée de packages de dépendance nécessaires à Chromium. Encore une fois, si de nombreux packages étaient répertoriés ici, j'enquêterais et envisagerais d'annuler mes modifications. (J'ai quand même enquêté sur chaque dépendance, parce que je fais attention, et j'ai découvert qu'une seule des dépendances provenait de l'archive Debian: libjpeg62-turbo, et cela n'entre pas en conflit avec tout ce que j'ai installé.) Tout allait bien, alors j'ai dit au gestionnaire de paquets de continuer.

Une fois terminé, Chromium a finalement été installé en tant que package apt. Merci, responsables Debian!

Je n'utilise pas de snaps, donc la prochaine chose que j'ai faite a été de chercher dans le répertoire snap dans mon répertoire personnel, de m'assurer qu'il n'y avait rien là-dedans dont j'avais besoin, puis de le déposer dans la corbeille. Si vous souhaitez faire de même, considérez d'abord que toutes les données utilisateur que vous avez créées/modifiées/enregistrées dans Chromium depuis la première installation de l'accrochage se trouvent quelque part sous ce dossier d'accrochage. (Probablement sous snap/chromium/current/.config qui est masqué par défaut dans la plupart des gestionnaires de fichiers.) Vous pouvez le sauvegarder ou le déplacer vers 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 ancien emplacement habituel, car je n'avais utilisé le composant logiciel enfichable que pendant environ cinq minutes.

C'est ça. J'espère que ça aide quelqu'un. Si cela 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 c'est toujours votre propre responsabilité.

Bonne chance!

10
ʇsәɹoɈ
Sudo snap remove chromium    
Sudo apt purge snapd    
rm -rf ~/snap

ajouter un dépôt

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

changer eoan en disco /etc/apt/sources.list.d/chromium-team-dev.list

si le fichier n'existe pas ou 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 mettre à jour

Sudo apt update

vérifier

apt policy chromium-browser

installer

Sudo apt install chromium-browser
2
Evgeniy Bespalov

Ce PPA semble très bien fonctionner à cet effet: https://launchpad.net/~saiarcot895/+archive/ubuntu/chromium-dev C'est la branche dev, mais en plus de cela, elle est parfaite.

2
gaycoonie

Copiez manuellement les packages requis à partir de la distribution 19.04 et installez-les avec dpkg.

apt purge snapd
curl -OO http://ftp.ubuntu.com/ubuntu/ubuntu/pool/universe/c/chromium-browser/{chromium-browser_79.0.3945.79-0ubuntu0.19.04.3_AMD64.deb,chromium-codecs-ffmpeg-extra_79.0.3945.79-0ubuntu0.19.04.3_AMD64.deb}
dpkg -i chromium-codecs-ffmpeg-extra_79.0.3945.79-0ubuntu0.19.04.3_AMD64.deb chromium-browser_79.0.3945.79-0ubuntu0.19.04.3_AMD64.deb
apt-mark hold chromium-browser chromium-codecs-ffmpeg-extra snapd

Edit: Je viens de réaliser que je pouvais utiliser Pinning auquel ʇsәɹoɈ a fait référence ci-dessus par rapport au dépôt debian. J'y reviendrai quand j'aurai le temps d'expérimenter.

1
loop
  • Télécharger Google Chrome

  • Compiler Google Chromium à partir de source

  • Recherchez un fichier de package PPA ou deb fourni par un tiers.

Google publie une nouvelle version majeure de Chromium toutes les six semaines, avec généralement plusieurs versions mineures pour corriger les failles de sécurité entre les deux. Chaque nouvelle version stable doit être construite pour chaque version d'Ubuntu prise en charge - 16.04, 18.04, 19.04 et la prochaine 19.10 - et pour toutes les architectures prises en charge (AMD64, i386, armhf, arm64).

De plus, il peut être difficile de garantir que Chromium compile (et encore moins s'exécute) sur des versions plus anciennes telles que 16.04, car le projet en amont utilise souvent de nouvelles fonctionnalités de compilation qui ne sont pas disponibles sur les versions plus anciennes.

En revanche, un composant logiciel enfichable doit être créé une seule fois par architecture et s'exécutera sur tous les systèmes prenant en charge le composant logiciel enfichable. Cela couvre toutes les versions d'Ubuntu prises en charge, y compris 14.04 avec Extended Security Maintenance (ESM), ainsi que d'autres distributions comme Debian, Fedora, Mint et Manjaro.

https://ubuntu.com/blog/chromium-in-ubuntu-deb-to-snap-transition

0
leggazoid