web-dev-qa-db-fra.com

Pourquoi les gros paquets dépendent-ils de thèmes d'icônes spécifiques?

J'utilise le thème d'icônes Breeze et je souhaite désinstaller les autres.

Cependant, lorsque j'essaie, de nombreuses dépendances sont supprimées.

par exemple. humanité-icône-thème

Sudo apt-get remove humanity-icon-theme
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  adwaita-icon-theme-full
The following packages will be REMOVED:
  humanity-icon-theme ubuntu-mono
The following NEW packages will be installed:
  adwaita-icon-theme-full
0 upgraded, 1 newly installed, 2 to remove and 2 not upgraded.
Need to get 8,429 kB of archives.
After this operation, 3,985 kB disk space will be freed.
Do you want to continue? [Y/n] n
Abort.
  • Pourquoi mono est-il supprimé lorsque je supprime un thème d'icônes?
  • Pourquoi un autre package est-il ajouté lorsque je supprime un package?

Existe-t-il une hiérarchie dans ces thèmes et s’appuient-ils les uns sur les autres?

Autre exemple: adwaita-icon-theme

Sudo apt-get remove adwaita-icon-theme
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following package was automatically installed and is no longer required:
  gnome-icon-theme
Use 'Sudo apt autoremove' to remove it.
The following additional packages will be installed:
  gnome-icon-theme
The following packages will be REMOVED:
  adwaita-icon-theme firefox gtk2-engines-pixbuf gtk3-engines-breeze humanity-icon-theme kde-config-gtk-style kde-config-gtk-style-preview libgail-common libgail18 libgtk-3-0
  libgtk-3-bin libgtk2.0-0 libgtk2.0-bin libscim8v5 plasma-desktop ubuntu-mono
The following NEW packages will be installed:
  gnome-icon-theme
0 upgraded, 1 newly installed, 16 to remove and 2 not upgraded.
Need to get 9,618 kB of archives.
After this operation, 157 MB disk space will be freed.
Do you want to continue? [Y/n] n
Abort.

Ceci est plus extrême et supprime firefox et l’ensemble du plasma-desktop!

Pourquoi ces autres packages dépendent-ils de thèmes d'icônes spécifiques?

3
opticyclic

Votre question est un peu large. Mais je réponds quand même.

Cas 1: lorsque vous avez essayé de supprimer humanity-icon-theme

Vous avez deux questions pour ce cas. Le premier est

  • Pourquoi mono est-il supprimé lorsque je supprime un thème d'icônes?

ubuntu-mono est en cours de suppression alors que vous tentiez de supprimer humanity-icon-theme, car ubuntu-mono dépend de humanity-icon-theme package. En règle générale, la suppression d'un package dont dépendent d'autres packages entraîne également la suppression de ces packages dépendants.

Vous pouvez le voir à partir de la commande apt-cache depends ubuntu-mono

→ apt-cache depends ubuntu-mono
ubuntu-mono
  Depends: adwaita-icon-theme
  Depends: hicolor-icon-theme
  Depends: humanity-icon-theme

On voit clairement que ubuntu-mono dépend de humanity-icon-theme.

Votre deuxième question sur cette affaire était

  • Pourquoi un autre package est-il ajouté lorsque je supprime un package?

adwaita-icon-theme-full allait être installé pendant que vous essayiez de supprimer humanity-icon-theme.

La théorie de apt est la suivante: Si certains packages importants dépendent d'un package à supprimer, recherchez d'autres packages ayant les mêmes fonctionnalités. de ce paquet bientôt à supprimer et essayez de l’installer.

Et cela se passe ici. Vous supprimiez humanity-icon-theme, mais certains packages en avaient besoin. Alors que faire? Recherchez les autres packages faisant le travail de humanity-icon-theme. Apt a constaté qu'il pouvait s'agir de adwaita-icon-theme-full, et l'a donc sélectionné pour l'installation.

Cas 2: en essayant de supprimer adwaita-icon-theme

Vous avez demandé pourquoi Firefox et d'autres paquets vont être supprimés alors que vous ne supprimiez que le thème des icônes. La raison est la même. Ce paquet en quelque sorte, même à travers une longue chaîne, dépend de adwaita-icon-theme. Donc, essayer de supprimer cela déclenchera la suppression de ces paquets dépendants.

Par exemple, firefox dépend de libgtk-3-0, qui dépend de libgtk-3-common, qui à son tour dépend de adwaita-icon-theme. Donc, bien que Firefox ne dépende pas directement du thème de l'icône, il en a besoin par certaines dépendances. (Vous pouvez le vérifier en utilisant la syntaxe de la commande apt-cache depends packagename.)

La même réponse peut être donnée pour la question de savoir pourquoi gnome-icon-theme est installé ici.

J'espère que ça t'as aidé.


OP a demandé en commentaire

Je ne comprends pas pourquoi les packages dépendraient d'un thème spécifique. N'est-ce pas le thème des thèmes qu'ils peuvent être changés?

Oui, dépendre d'un thème spécifique est mauvais. Mais aussi un environnement de bureau graphique a besoin d'une icône, non? Si aucune icône n'est nécessaire pour un élément DE, comment rendrait-il le composant icônes et thèmes? C'est pourquoi chaque DE spécifie un thème d'icône par défaut/de secours. Pour GNOME, il s’agit de adwaita-icon-theme. Donc, si vous le supprimez, les applications GNOME pourraient également vous dire au revoir! Dans mon système, lorsque j'ai émis l'ordre de le supprimer, il a tenté de supprimer les packages 46.

Mais, mis à part ces valeurs par défaut, vous pouvez ajouter et supprimer tout autre package de thème.

2
Anwar