web-dev-qa-db-fra.com

Marquez un paquet deb comme utilisé, donc ce n'est pas suggéré pour un autoremoval

J'ai un tas de bibliothèques partagées installées sur mon système qui ne sont pas des dépendances d'un paquet concret mais qui sont nécessaires pour les bibliothèques non gérées par apt-compilées à partir des sources (comme le dernier SDL, Allegro, SFML, ...) et autre logiciel construit à partir de la source. Le problème est que ces bibliothèques sont considérées par APT comme étant inutilisées et sont donc candidates à une suppression automatique. Elles se mêlent alors aux packages non utilisés légitimes qu’il est gratuit de supprimer.

Existe-t-il un moyen de marquer les paquets comme utilisés afin qu'ils ne soient pas suggérés pour le retrait automatique? Ma première pensée a été de créer mon propre métapaquet pour contenir les dépendances (comme par exemple ubuntu-desktop), mais je ne sais pas comment le faire.

8
Boris B.

Bien que apt-get install marque les packages comme étant également installés, il effectue d'autres tâches, telles que la mise à niveau des packages (si une mise à niveau est disponible). Le programme correct pour modifier les états installés automatiquement est apt-mark.

Usage

Marquer un paquet comme installé manuellement (pour qu'il ne soit pas supprimé par apt-get autoremove):

Sudo apt-mark manual package1 package2 ... packageN

Pour marquer un paquet comme installé automatiquement (de manière à ce qu'il soit supprimé par apt-get autoremove si aucun paquet ne dépend de celui-ci):

Sudo apt-mark auto package1 package2 ... packageN

Plus de détails sont disponibles dans la page de manuel apt-mark (8) .

9
Lekensteyn

Il suffit d’utiliser apt-get install:

Sudo apt-get install [your-packages]

Il ne les installera pas réellement. Il suffit de définir le drapeau pour installer manuellement.

4
jasmines

Vous n'avez rien de plus compliqué que de créer vos propres métapaquets.

Supposons que vous vouliez vous assurer qu'un paquetage appelé foo n'est jamais éligible pour un enlèvement automatique.

Ouvrez une fenêtre de terminal (Ctrl+Alt+T) et courir:

Sudo apt-get install foo

C'est-à-dire que la même commande qui installe manuellement les paquets les marquera comme installés manuellement afin qu'ils ne soient pas supprimés automatiquement même lorsque les paquets pour lesquels ils ont été installés à l'origine car les dépendances sont elles-mêmes supprimées.

2
Eliah Kagan