emerge -p foobar |genlop -p can give the total (estimated) time for something (with many conditions that are out of topic: all things to emerge must have already been emerged so it has stats to compute to be able to estimate emerge time ...). genlop -c can say the actual # of emerge, and the total number of ebuilds to merge, and remaining time for actual ebuild on merge. I would like a new feature to be able to, when emerge is already running: - give a list of ebuild names left to merge - estimate the remaining time (remaining for actual merge, plus adding estimated time for remaining ebuilds). This would be close to "emerge -p foobar | genlop -p" - "user time already spent by process emerge", and would be very usefull for people who forget to do genlop -p before, plus check the start time. I know it is technically difficult to implement; for example, if the "emerge foobar" had to introduce new packages (for example during an upgrade of USE flag change), running "emerge -p foobar" *now* will not show them anymore. And sometimes, order of merges may also differ. So, to implement the feature I am asking about, genlop needs to talk directly to emerge, and ask "what have you been to merge", "what did you decide to emerge", and "what did you already do" ... then deduce whats left to emerge, and estimate time required. I know it will not be trivial to code this feature, but, it would really be helpful :) The most difficult may be to get the list of remaining ebuild to merge; estimate time to merge them will then be a peace of cake (based on genlop -i).
From [1], to get remaining packages while emerge is running : > $ python -c 'import portage; print portage.mtimedb.get("resume", {}).get("mergelist")' 1. http://forums.gentoo.org/viewtopic-t-873021.html