I installed Pipelight from the PPA archive, according to these instructions.
The installation command, sudo apt-get install --install-recommends pipelight-multi
was for only one package, but it entailed downloading and installing about 180 dependency packages, about 40 of which were upgrades to currently-installed packages.
Therefore, about 140 new packages were installed.
Pipelight subsequently didn't work, so I removed it:
sudo apt-get purge pipelight-multi
No other packages were removed.
I then used sudo apt-get autoremove
. This command removed all auto-removeable packages. There were exactly 100 of these (there were also exactly 100 packages in Synaptic Package Manager's 'Autoremovable' list).
So this left about 40 packages that weren't considered auto-removeable, and so weren't removed. I had to remove them manually.
There were no unmet dependencies on my system before I installed Pipelight; and I hadn't marked any packages as manually-installed, installed or removed anything else, or anything like that. Only about ten minutes passed between installing Pipelight and removing it.
So after I removed Pipelight, why weren't all of its unneeded dependencies marked as auto-removable?
pipelight-multi
caused them to be installed, but they were kept after its removal because of those recommendations. Since you've removed the packages manually it's hard to determine, but in future you can runaptitude why ${package}
for each package you think should be auto-removed, andaptitude
will tell you why it's being kept.A
is installed, and recommendsB
, butB
isn't installed. Now you install packageC
, which also recommendsB
, along with its recommended packages (using--install-recommends
as you did above), so packageB
is installed too. If you then removeC
, packageB
would (by default) still be considered useful since it's recommended byA
, andautoremove
wouldn't remove it. Since the link fromA
toB
is only a recommendation, you can still removeB
without removingA
and end up back in the initial situation.