1 votes

éviter d'installer certains paquets à partir de métapackage

Je veux installer xubuntu-desktop (un très grand métapaquet) mais en laissant de côté certains des paquets qu'il contient (environ 10). La façon dont je procède actuellement est en deux étapes : 1) installer le métapaquet, et 2) purger les paquets non désirés. Je me demande s'il existe une méthode plus efficace et plus propre pour faire cela.

Je pensais apt-get accepterait une instruction comme installez cette sauf ces mais très étonnamment, il semble que non.

Une solution potentielle serait d'exécuter la commande sudo apt-get install xubuntu-desktop puis sélectionnez Non et copier tous les paquets listés dans le terminal, en supprimant manuellement les paquets non désirés. Cependant, cela peut prendre encore plus de temps que la procédure en deux étapes mentionnée précédemment, et risque également de se retrouver avec de mauvaises dépendances.

Avez-vous des idées sur la façon de faire cela en une simple instruction de ligne de commande ?

1voto

muru Points 180007

Vous pourriez script la tâche. Je suis presque sûr d'avoir posté ceci ailleurs, mais je ne peux pas le trouver maintenant. Tout d'abord, créez un fichier avec les paquets que vous ne voulez pas. Par exemple :

$ cat dont-want.txt
memtest86+
wireless-tools
firefox
evince

Ensuite, il faut analyser la sortie de apt-cache depends :

apt-cache depends xubuntu-desktop | awk '$1 == "Depends:" {print $2}' | grep -vFf dont-want.txt

Cela devrait inclure les paquets dont le métapaquet dépend directement, sans les paquets que vous avez exclus. Vous pouvez alors utiliser xargs à installer :

apt-cache depends xubuntu-desktop | 
  awk '$1 == "Depends:" {print $2}' | 
  grep -vFf dont-want.txt |
  sudo xargs apt-get install

Si le paquet indésirable n'est pas une dépendance directe, vous devrez utiliser apt-rdepends au lieu de apt-cache depends .

Vous pouvez également utiliser l'épinglage d'Apt pour faire respecter l'interdiction : Comment interdire l'installation d'un paquet spécifique ?

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