Hello and forgive me if this isn't the right place to post my sugestion.

Surely it has been sugested before, or there are currently plans to implement 
it. If this is the case, then again, my apologies.

To the point:
Suppose you want to merge lots of packages, (maybe in an upgrade) then it's 
half-way from completing and some package crashes. All of the remaining 
packages did not get to merge! So why not?: 
        1)remove crashed package from the list of packages to be merged but 
hold its 
name in a list of "crashed packages"

        2)recalculate dependencies of remaining packages to be merged

        3)if some of the remaining packages depend on a "crashed package" (or 
a "non-installable" one), remove from the list of packages to be merged and 
hold its name in a list of "non-installable packages"

        4)loop from 2) until only "installable packages" remain

        5)proceed to install them as usual, and if some of them crashes, well, 
go to 
1) again.

        6)When all is merged, show a result table. Maybe something like: 
                "       xx packages merged, xx packages failed to merge, xx 
packages depend on 
some of the packages that failed to merge, thus couldn't be merged either.
                        For information on packages that weren't merged type 
emerge --failed    "

        7)Then one types "emerge --failed" and something like this shows up:
                "       ###     Packages which failed to merge  ###
                        ###     Package name    -       error log       ###
                                =sys-apps/blah-blah-2.0 -       errorlogfile1
                        etc.
                        .
                        .
                        .
                        
                        ###     Packages which couldn't be merged       ###
                        ###     Package name    -       depends on      ###
                                =x11-misc/bleh-bleh-4.2 -       
=sys-apps/blah-blah-2.0
                        etc.
                                                                                
                                        "
        Probably there's no need for a step 7, but I feel it's more elegant 
than just 
outputing all that after emerge finishes. I'm also conscious that this may be 
harder to implement since you need to write the "crashed and non-installed 
packages" data in some file or db.

I've been reading through the code, but besides I have no experience with 
python, I couldn't understand much. It's all just too long to keep track of 
it all, and i'm not a good programer anyway. So I just give up on trying to 
do it myself, surely I wouldn't accomplish it in 1000 years anyway.

If this sugestion has already been proposed, I'd really like to know when is 
it expected to be released.

Thanks for your time, and regards,
oxi     
-- 
gentoo-portage-dev@gentoo.org mailing list

Reply via email to