tl;dr: You use deborphan wrong. The last paragraph of this mail describes the fix that depends an unreleased deborphan version. I'll send an update when it hits unstable.
* Martin-Éric Racine [2012-06-09 12:24 +0300]: > 2012/5/14 Carsten Hey <cars...@debian.org>: > > Since it does not require a multiarch-aware dpkg, I don't think it > > should depend on a multiarch-aware dpkg. It's upgrade-systems that > > enters an endless loop if it is run with deborphan 1.7.28.6 or earlier > > on multiarch enabled systems (which of course requires a recent dpkg). > > It only enters into a loop when the components below it are > mismatched. In this case, it was deborphan that wasn't able to produce > multiarch-aware output that APT could use. deborphan was broken, not > upgrade-system. I'm closing this bug. I disagree for multiple reasons, anyway, the partial upgrade problem in Debian in only theoretical and this is not Ubuntu's bug tracker. In general, running while [ -n "`deborphan`" ]; do apt-get remove `deborphan`; done without checking for endless loops is wrong, as described in the quoted paragraph below: > > upgrade-systems relies on apt to remove the packages that are > > displayed by deborphan. This is nothing deborphan can guarantee, > > for example apt won't remove itself without using --force-whatever. > > It is mostly save to rely on this behaviour, though. If you need > > this you must ensure that the known exceptions won't occur, for > > example, don't run deborphan with options that could show apt as > > orphaned, or, as in this case, don't run an old deborphan on > > mutliarch-enabled systems. If you ran stable with oldstable still in your sources.list, e.g., whilst upgrading to stable, you got a similar problem that could lead (depending on your loop's implementation) to a failure or an endless loop: | deborphan (1.7.28.2) unstable; urgency=low | * Exclude diff and mktemp from being displayed in orphaner. Apt and dpkg | sometimes disagree about essentialness of packages, which leads to | failures for dpkg frontends that use apt to remove packages, e.g., | deborphan. Currently, the relevant packages are diff and mktemp. The | package install-info has deliberately not been added to the list of to be | excluded packages. A proper fix for both packages, upgrade-system and grml-live, is depending on a yet not released deborphan with a --recursive option and running apt-get remove `deborphan` instead of of your loop. I'll drop you a mail when such a deborphan release gets uploaded to unstable. Regards Carsten -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org