During the last month I have repeatedly tried a "emerge -u world" which eventually stopped due to a
minor error (some not so important package failed building, emerge couldn't download, etc).
This is extremly anoying since I usually kick of such huge builds during a weekend, when I am away,
since I need the station during the week.
Since failures in updateing a package are generally uncritical (except for the very rare case that
another package depends on the new version) the failure should just be ignored, and emerge
should go on with the next package. (and perhaps retry the failed package later)
The failed packages should be written to a log (or shown at the end of the emerge), so that the
user can then manually retry.
So what I want is a swich with which tells emerge to go on in case of errors.
Note there is e script called rmerge2 which tries to emulate this behaviour, but it should realy be
inside emerge, because it is more stable that way.
Perhaps this could depend on a command-line flag. I see this being something like "make -k" - the make (or in this case, the emerge) skips the offending package, as well as those that depend on it.
For example, emerging packages foo, bar, and baz. foo depends on quux and blarg.
The command "emerge -k foo bar baz" (or whatever flag is used) should do the following:
Deps for foo - quux and blarg.
Compile quux. Whether quux succeeds or fails, compile blarg
If both quux and blarg succeed, compile foo.
Whether foo succeeds, fails, or doesn't start, compile bar
Whether bar succeeds or fails, compile baz.
At the end, if any packages failed, print a list of the failures (including those that didn't start because of failures). So in this case, if quux failed, the output would be something like:
The following packages have failed to build:
FWIW, I'm planning to write a patch for this soon (as in some time this week).
*** This bug has been marked as a duplicate of 12768 ***