[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: sarge->etch upgrade hits dependency hell



On Sun, Dec 10, 2006 at 09:04:13 -0500, hendrik@topoi.xxxx.com wrote:

[...]

> I wouldn't say "too smart".  I'd say not smart enough.  It's smart 
> enough to come up with a set of consistent package versions, but not 
> smart enough to come up with a reasonable set.  I did find, for example, 
> that a lot of the packages that were to be deleted because they depended 
> on other packages were actually quite savagable -- I just '+'ed then and 
> they suddenly had no such dependency difficulties -- suggesting to me 
> that aptitude should have been able to discover that itself.

[...]

> The logjam broke when I deleted the xfractint package -- this was 
> undicated by the presence of an xfractint file within /use/X11R6/bin.

That is probably the explanation for a lot of your upgrade troubles: A
few non-Debian packages can easily upset the delicate balance of package
dependencies that is so carefully maintained by the Debian developers.
I think this is especially dangerous during a dist-upgrade. xfractint is
not in Sarge, therefore it is not so surprising that the dist-upgrade
process could not deal well with its presence. Just to give another
example: A very common show-stopper reported on this list during the
upgrade to xorg 7.0 was the presence of opera and its files in
/usr/X11R6/bin.

I think it is advisable to remove all non-Debian packages before a Sarge
-> Etch upgrade and reinstall them again afterwards, using official Etch
packages whenever possible.

You can run

aptitude search '~i!~Odebian'

to find installed ("~i") packages that have an origin ("~O") other than
("!") 'debian'. (This will also list all packages which are no longer
part of Debian, which might be a good opportunity to get rid of some
cruft on your system.)

I hope that the version of aptitude in Sarge already supports this type
of search pattern, but I do not know for sure.

-- 
Regards,
          Florian



Reply to: