View previous topic :: View next topic |
Author |
Message |
kamagurka Veteran
Joined: 25 Jan 2004 Posts: 1026 Location: /germany/munich
|
Posted: Tue Sep 07, 2004 11:19 am Post subject: Portage needs a "skip errors" mode |
|
|
i'm kinda annoyed. see, yesterday before i went to bed i started an "emerge -uvDat world". the update had close to 40 packages, and i was looking forward to new versions of firefox, thunderbird and much more; but when i stood up this morning i saw that lablgtk (the second or third package) failed and the whole freaking update went down the drain. now, i wonder why portage just didn't skip the offending package and anything that depended on it, got the hell on with the upgrade and told me about the error in the end. is there any reason for that?
if not, is this a planned feature or am i the only one to be annoyed by that? _________________ If you loved me, you'd all kill yourselves today.
--Spider Jerusalem, the Word |
|
Back to top |
|
|
Raoul_Duke l33t
Joined: 15 Dec 2002 Posts: 694 Location: Caerdydd, Wales
|
Posted: Tue Sep 07, 2004 11:41 am Post subject: |
|
|
I kinda agree with you.....i've left a bunch of KDE packages to emerge overnight and had it fail 5 minutes after i've gone to bed.
I think something to solve this would be neat but the problem is actually quite difficult. Portage would need to know the difference between a casual dependence and a strict dependence. Also in a large update of packages, there may be certain choices.......ie update of QT fails. Does portage continue updating KDE packages or not? That's a very basic example but if you follow through with a large list of packages, portage would really need to know more about package relationships than just dependencies and USE variables. Then, it would need to be very precise about the kind of choices it made whilst we were snoozing. I wouldn't like to wake up and discover that portage had built the entire new KDE version on the old QT library!
It's a problem that we could do without, i just don't know if the work needed to solve it is worth the benifit.
Of course, that's only my opinion.....i encourage disagreement
edit: I guess you could fudge something that took your package list and emerged everything with '--nodeps --oneshot' and then reported the results at the end. Not perfect but it might work for small lists of 'not-very-dependent' packages? _________________ www.iamthepenguin.com |
|
Back to top |
|
|
andrew_j_w Guru
Joined: 28 Jun 2003 Posts: 534 Location: York, UK
|
Posted: Tue Sep 07, 2004 12:23 pm Post subject: |
|
|
What about if you want to see the error message so you can fix the problem? |
|
Back to top |
|
|
oberyno Guru
Joined: 15 Feb 2004 Posts: 467 Location: /bin/zsh
|
Posted: Tue Sep 07, 2004 12:35 pm Post subject: |
|
|
andrew_j_w wrote: | What about if you want to see the error message so you can fix the problem? | Well, if there are ~40 packages, it's probably going to take a long time to emerge. Most if not all are likely to succeed. Personally, I would like it to emerge all the packages it can, then when it's finished I can reemerge world and only the broken packages will show up.
kamagurka: What you are looking for is in this thread. |
|
Back to top |
|
|
spb Retired Dev
Joined: 02 Jan 2004 Posts: 2135 Location: Cambridge, UK
|
Posted: Tue Sep 07, 2004 12:54 pm Post subject: |
|
|
The problem is in the dependency tracking. Obviously, if you're installing KDE for the first time, you can't carry on if Qt fails. With the way emerge does dependency tracking, once it starts merging it essentially forgets about the depgraph, and just works on a list of packages to merge. Doing anything different would require some heavy restructuring of the dependency tracking code (which is planned, but AFAIK not any time soon). If you're interested, the relevant bug is #51411. |
|
Back to top |
|
|
kamagurka Veteran
Joined: 25 Jan 2004 Posts: 1026 Location: /germany/munich
|
Posted: Tue Sep 07, 2004 1:16 pm Post subject: |
|
|
andrew_j_w wrote: | What about if you want to see the error message so you can fix the problem? |
what i said: emerge remembers and tells you afterwards about the packages that failed.
if you want to see the error in more detail, you just emerge it (or just emerge -u world again, and there's your error). _________________ If you loved me, you'd all kill yourselves today.
--Spider Jerusalem, the Word |
|
Back to top |
|
|
oberyno Guru
Joined: 15 Feb 2004 Posts: 467 Location: /bin/zsh
|
Posted: Tue Sep 07, 2004 1:38 pm Post subject: |
|
|
thebell wrote: | The problem is in the dependency tracking. Obviously, if you're installing KDE for the first time, you can't carry on if Qt fails. |
Well, if you use emerge --resume --skipfirst like in the script I linked to, the kde app's ./configure will fail on the missing qt dependency. Then emerge can go onto the next app, and so on, until it finds a package that will build. It's not perfect, but it gets the job done. |
|
Back to top |
|
|
|