Comment supprimer l'indicateur «installé manuellement» et revenir à «installé automatiquement» avec apt-get?

103

Pour compiler quelque chose, il fallait que le zlib1g-devpaquet soit installé et j'ai donc lancé un apt-get install zlib1g-dev.

apt-get m'a informé gentiment que le paquet était déjà installé automatiquement à cause d'un autre paquet, et qu'il comprend que je le veux installer explicitement maintenant:

# apt-get install zlib1g-dev
zlib1g-dev is already the newest version.
zlib1g-dev set to manually installed.

Ma compilation terminée, je n'en ai plus besoin explicitement. Je souhaite donc revenir à l'état précédent: installé automatiquement. De cette façon, il sera automatiquement taillé quand il ne sera plus nécessaire avec un simple apt-get autoremove.

Je ne peux pas en faire apt-get remove zlib1g-devcar certains paquets en dépendent encore.

Alors, comment puis-je rétablir l' zlib1g-devétat d'installation automatique du paquet ?

Je sais que je pourrais éditer /var/lib/apt/extended_statesà la main depuis

Package: zlib1g-dev
Auto-Installed: 0

à

Package: zlib1g-dev
Auto-Installed: 1

... mais ça ne me semble pas juste.

Steve Schnepp
la source

Réponses:

81

Aptitude peut vous aider lors de l’installation initiale du paquet:

aptitude install "zlib1g-dev&M"

Ou, après avoir installé le paquet:

aptitude markauto "zlib1g"

Edit: Si vous n’avez pas d’aptitude, vous pouvez utiliser

apt-mark auto zlib1g-dev
Mikael S
la source
4
Bonne réponse, mais la réponse de I + 1 @ @ ArvindSing à l'aide apt-markcar elle ne nécessite pas l'installation aptitude. apt-markvient avec le aptpaquet que tout le monde devrait déjà avoir.
Christopher Schultz
106

apt-mark peut vous aider:

apt-mark auto zlib1g-dev

Pour 11.04 ou plus ancien, utilisez "markauto" au lieu de "auto"

Arvind Singh
la source
8

C'est ce que vous cherchez.

sudo apt-get markauto first-package second-package etc-package

La source:

apt-get --help
Mosty Mostacho
la source
12
Veuillez noter que ceci est obsolète maintenant en faveur d’apt-mark
Joril