this is what happened to me:
I have developed a piece of software and created a .deb package out of it. I then tried to install my new package onto a system using dpkg. Unfortunately I discovered that I had a typo in the dependencies of my new package so it has one dependency it will never be able to resolve because the misspelled package does not exist.
Unfortunately apt-get carries this new defective package in its list of available packages and is resistant to any attempt to make it “forget” about the faulty package so I can correct and re-install it.
Attempts like dpkg –P or apt-get remove will try to de-install the package but just report it was not installed. (Which is correct as it could not be installed because of the defective dependency.) But even starting dpkg –install with a corrected .deb file failes as it obviously goes to the package cache, looks up the old, wrong dependency and then again tells me it cannot install the package because of unmet dependencies.
I would be interested
1. where apt maintains its list of packages it knows about, i.e. the list that will be displayed e.g. by synaptic.
2. how can that list be manipulated?