The idea: To have Portage recognize multiple package.* files. There's at least a couple of ways that this could be done. Possibility #1: To have Portage recognize mutlipe package.* files by the end of the filename, such as kde.package.unmask. Possibility #2: To have subdirectories within /etc/portage for each type of package.* file, such as /etc/portage/package.unmask/kde. In both possibilities, the kde part of the filename is unimportant. This idea would allow for a much cleaner way to manage things within /etc/portage. You could now make as many separate package.* type files as you wished, Portage would be able to recognize and handle them all, and the end-user is potentially saved a huge amount of maintenance work.
*** Bug 114308 has been marked as a duplicate of this bug. ***
I don't exactly agree that my include directive idea in bug 114308 is the same as this idea, but i agree that they are related, so i'm content to clump them together and discuss here. I like "Possibility #1" better than #2, but I would make the suffix simply '.unmask' (etc), so you would have something like /etc/portage/kde.unmask. no need for unneccessarily long file names. that said, i'm biased, but i still like my include directive idea even more. Though, nothing would prevent the two from coexisting (ie, all /etc/portage/*.unmask would be loaded, and any include's in them would be parsed as well). I like the include because it allows the files to exist outside of /etc/portage, and keep them near your overlay(s), so they can be associated with them more easily, and removed more easily if needed. I do see one potential problem with include: the possibility of recursive inclusions. This shouldn't be hard to avoid in the implementation though (maximum include depth, or maintain a list of already-read files).
There won't be an "include" or "source" or whatever directive in pacakge.* files. The code I added to trunk implements option 2, so you could simply use symlinks to emulate the desired "include" behavior.
Released in 2.1_pre1.