Hi, You know i am totaly supporting prefix but i have one point. Why on earth portage simply does not detect the prefix enviroment is being run and then INTERNALY switch D->ED and other variables. It would be much easier that way to migrate all stuff in portage instead of doing this || shebang. Mostly when it is done by eclasses its quite cool, but when you get into changing lots of ebuilds its quite hard for maintaining.
Even the multilib overlay guys rather modify the portage than changing a load of ebuilds. Just my 2 cents. Tomas