On Thu, Apr 19, 2012 at 01:10:14AM +0200, Guillem Jover wrote: > > So the expected behavior is:
> > - libc6-i386 unpacked, libc6:i386 not yet installed: record diversion, > > move /lib/ld-linux.so.2 > This has the problem that it introduces a time window where there's no > interpreter for i386 on the system. That's not a problem because the only unpacked package providing the PI is libc6-i386, which cannot possibly be a dependency of any essential packages; therefore we know that i386 is a foreign arch and it's safe to have a window where it's missing. > > - libc6-i386 not installed, libc6:i386 not yet installed: record > > diversion, > > nothing moves > > - libc6-i386 unpacked, libc6:i386 already installed: record diversion, > > nothing moves, next upgrade of libc6-i386 redirects to the diverted > > location > And this one (assuming the Replaces are still in place) that if > libc6:i386 gets removed before libc6-i386 is upgraded then there will > be no interpreter left. Yep, that's the existing problem we're trying to solve, which would involve dropping the Replaces. But the only way to do that would be if we have a reliable dpkg-divert. > > - libc6-i386 not installed, libc6:i386 already installed: record > > diversion, nothing moves > So in any case regardless of the fix for this particular bug, I don't > think dpkg-divert is the right solution for this specific problem. In > this case I think what would make more sense is for Replaces to not > make packages lose track of owned files, just replace them on disk, > which would solve all instances of this problem. That's only helpful if you also make Replaces do an implicit diversion, as Goswin has argued on list in the past. There's no reason to believe that installing the replacing package, then removing it and leaving behind the files whose names happened to collide with those in the replaced package, is going to leave you in any better state than if you'd just removed the files entirely; so it's really only interesting if you're going to stash the replaced files somewhere that they can be restored when the replacing package is removed. > Attached a new patch. Makes sense to me. -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. Ubuntu Developer http://www.debian.org/ slanga...@ubuntu.com vor...@debian.org
signature.asc
Description: Digital signature