I've got a box that usually runs with /usr mounted read only and I frequently find myself forgetting to remount rw before running emerge. When installing this isn't really a problem, just remount, then emerge --resume But when unmerging the unmerge just pushes on leaving bits and pieces of the app all over /usr, so I have to manually go through the log and track down all the files that were left behind. There must be a more graceful way that portage can alert me to this.
> When installing this isn't really a problem, just remount, then emerge --resume My mistake, this actually isn't very pretty, as the problem isn't detected until the merge phase, and --resume causes the source to be unpacked again and recompiles
`ebuild <ebuild> qmerge`
That solves the emerge problem, what about unmerge?
*** Bug 23675 has been marked as a duplicate of this bug. ***
A better fix is having unmerge flat out bail when it fails to remove a file (not the current behaviour).
Even better would be if portage could pause and give the user a chance to fix it, same as the -a option stops you from having to recalculate dependancies after a -p Then after the pause (when the user has fixed the problem and hit enter) the unmerge could resume from the file that failed and caused the pause.
While I'm all for giving the using more output and bailing properly when things fail, having portage wait for you to fix your errors is kind of siilly IMHO. If you forget to mount /usr RW before you emerge stuff, write a script to do it. I don't really see how it's portage's responsibility to detect it and let you fix it in a timely manner.
That's a fair enough call, but portage should at least fail fast so as to leave itself in a correct state. It seems I was mistaken in Comment #1 - I just did a merge of 7 packages with /usr mounted read only, and it "completed successfully". Even rerunning the original command won't solve it now because portage thinks the dependencies are now installed, so it only tries to re-merge the last package.
*** This bug has been marked as a duplicate of 23851 ***