How to remove the "installed manually" flag and revert to "automatically installed" with apt-get?

To compile something, I needed the zlib1g-dev package to be installed so I launched an apt-get install zlib1g-dev.

apt-get informed me nicely that the package was already auto-installed because of an other package, and that it understands that I want it installed explicitly now :

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

My compilation done, I don't need it any more explicitly, so I want to revert its status to the previous one : auto-installed. This way it will be pruned automatically when it will not be needed any more with a simple apt-get autoremove.

I cannot do an apt-get remove zlib1g-dev since some packages still depends on it.

So how may I revert the package zlib1g-devinstallation state to auto-installed ?

I know that I might edit /var/lib/apt/extended_states by hand from

Package: zlib1g-dev
Auto-Installed: 0

to

Package: zlib1g-dev
Auto-Installed: 1

... but it just doesn't feel right.


Solution 1:

Aptitude can help you when you initially install the package:

aptitude install "zlib1g-dev&M"

Or, after your have installed the package:

aptitude markauto "zlib1g"

Edit: If you do not have aptitude, you can use

apt-mark auto zlib1g-dev

Solution 2:

apt-mark can help you:

apt-mark auto zlib1g-dev

For 11.04 or older, use "markauto" instead of "auto"

Solution 3:

This is what you're looking for.

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

Source:

apt-get --help