from small one page howto to huge articles all in one place

search text in:

Other sites:

Last additions:
How to make X listen on port 6000

How to make X listen on port 6000






average rating: 1.5 (4 votes) (1=very good 6=terrible)

May, 25th 2007:
April, 26th 2007:
Apr, 10th. 2007:
Druckversion . pdf icon
You are here: Tips&Tricks

Portage magic

/var/log/emerge.log is well-known as the central reporitory of information about all emerge activity going on in system.

Lesser known are some tricks you can do with the content of that log file. For example, when you start an upgrade, you generally don't know how much time it will take to finish compiling. You probably don't remember how long your last mplayer installation took, but Portage does, and if you'd decipher the Unix time stamps in /var/log/emerge.log, you'd get a pretty good idea, too.

Or you could let app-portage/genlop do it for you. Emerge (the unstable, ~arch version of) genlop with:

Code Listing 1: Emerge genlop

#emerge -av genlop

Now run a pretended world upgrade and pipe it to genlop for an estimation of your upgrade schedule:

Code Listing 2: Estimate upgrade time

#emerge -pu world | genlop --pretend 
These are the pretended packages: (this may take a while; wait...) 
 * media-libs/tiff 
 * x11-base/xorg-x11 
 * app-sci/stellarium 
 * app-arch/gzip 
 * dev-libs/libIDL 
 * net-www/mozilla-firefox 
 * sys-boot/lilo 
 * app-doc/abs-guide 
 * app-arch/unarj 
 * app-emulation/wine 
 * app-admin/sudo 
Estimated update time: 4 hours, 38 minutes.

A look at the mechanism explains how Portage can double as an oracle. It uses the statistics stored in the emerge.log file, take an average of compilation times for given packages, and summarize the results. There are some uncertainties, of course, for example if you use the CCACHE feature, then compile times for a minor version bump may be much faster than the original package took compiling the first time. On the other hand, if an application has been extended with new features, the old average compile time can be shorter than the version you're about to emerge.

Another brilliant feature of genlop is its --current option, the perfect companion to the estimated compile-time from --pretend:

Code Listing 3: How much time spent since the beginning of an emerge

# genlop --current 
 * app-portage/splat-0.07  
       current merge time: 12 seconds.

Now you can say how long time you have to wait.


rate this article:
current rating: average rating: 1.1 (76 votes) (1=very good 6=terrible)
Your rating:
Very good (1) Good (2) ok (3) average (4) bad (5) terrible (6)


Other free services
Shorten long
URLs to short
links like
Reverse DNS lookup
Find out which hostname(s)
resolve to a
given IP or other hostnames for the server

New Packages

- as rdf newsfeed
- as rss newsfeed
- as Atom newsfeed
rdf newsfeed | rss newsfeed | Atom newsfeed
- Powered by LeopardCMS - Running on Gentoo -
Copyright 2004-2018 Sascha Nitsch Unternehmensberatung UG(haftungsbeschänkt)
Valid XHTML1.1 : Valid CSS : buttonmaker
- Level Triple-A Conformance to Web Content Accessibility Guidelines 1.0 -
- Copyright and legal notices -
Time to create this page: 71.2 ms