I encountered this with portage 2.0.5x as well, but I notice that this is still a problem in 2.1_pre4 at least. When deciding that I want to stay at a certain version, but the package vanishes from the main tree, portage bails out. Case example: I use ck-sources. I have installed sys-kernel/ck-sources-2.6.15_p3. I have sys-kernel/ck-sources in my package.keywords. Now, an upgrade has appeared, ie. sys-kernel/ck-sources-2.6.15_p3-r1. I really don't want to recompile my kernel for something really small, so I decide that 2.6.15_p3 is enough for me right now. Adding >sys-kernel/ck-sources-2.6.15_p3 to package.mask causes portage to suggest an earlier version (that is still in the tree): emerge -uvDaN world These are the packages that I would merge, in order: Calculating world dependencies ...done! [ebuild NS ] sys-kernel/ck-sources-2.6.14_p8-r2 USE="symlink -build -ck-server -doc" 38,368 kB Considering that I have 2.6.15_p3, a newer version already installed, this reeks a bit strange. But fine. I'll ditch the stuff in package mask and explicitly specify =sys-kernel/ck-sources-2.6.15_p3 in package.keywords: # emerge -uvDaN world These are the packages that I would merge, in order: Calculating world dependencies | !!! All ebuilds that could satisfy "sys-kernel/ck-sources" have been masked. !!! One of the following masked packages is required to complete your request: - sys-kernel/ck-sources-2.6.15_p3-r1 (masked by: ~x86 keyword) - sys-kernel/ck-sources-2.6.12_p4 (masked by: ~x86 keyword) - sys-kernel/ck-sources-2.6.14_p8-r2 (masked by: ~x86 keyword) For more information, see MASKED PACKAGES section in the emerge man page or refer to the Gentoo Handbook. --------- As of now, I have this workaround: mkdir /usr/local/portage/sys-kernel mkdir /usr/local/portage/sys-kernel/ck-sources cp /var/db/pkg/sys-kernel/ck-sources-2.6.15_p3/ck-sources-2.6.15_p3.ebuild /usr/local/portage/sys-kernel/ck-sources With that, the "already installed" version also gets to be taken into account. Apart from kernels, this is also annoying with packages that have fetch restrictions turned on, such as sun-jre and sun-jdk. Could this be fixed, and have portage take into account the already installed versions even if they are gone from the main tree?
*** This bug has been marked as a duplicate of 48195 ***