On Mon, 2008-03-31 at 00:54 +0200, Cyril Brulebois wrote: > On 30/03/2008, Michael Biebl wrote: > > I don't understand, why it shouldn't be possible, that a single > > update-rc.insserv run, reoders *all* init scripts in one go. You could > > still skip the ones, which will cause loops or have no dependency > > information. > > I guess the algo is currently “there's no loop; try and add foo; if a > loop is introduced, foo is guilty; otherwise, be happy”. If you don't > have the “we're trying to add foo” bit, I guess it's hard (if possible > at all) to find which package(s) is/are guilty.
Huh, pretty straight forward - use tarjans method, get the strongly connected sets, and you can dump out the loops immediately. If you want to be able to say 'package X is at fault' - well, adding packages one by one does not tell you that - the loop exists in the archive, adding packages one by one only tells you when you have pulled in enough to show the loop. -Rob -- GPG key available at: <http://www.robertcollins.net/keys.txt>.
signature.asc
Description: This is a digitally signed message part