Re: Help me understand why apt-rpm wants to remove all of these packages

Axel Thimm <[email protected]> Sun, 18 Jul 2004 15:19:13 +0200
Newsgroups gmane.linux.conectiva.apt-rpm,gmane.linux.redhat.rpm.atrpms.general
Message-ID <[email protected]>
On Tue, Jul 13, 2004 at 01:19:23PM +0200, Axel Thimm wrote:
> > > > An obsoletes/provides/requires mismatch *somewhere* would explain the
> > > > difference between upgrade and dist-upgrade since the former doesn't
> > > > consider any packages which require new packages to be installed nor
> > > > obsoletes.

Just to isolate the error I removed all repos but the vendor's and
tested with an installed util-linux that _does not_ obsolete
mount/losetup, but only provides them.

From the seesion below one can see that

o all entities from the old mount rpm are provided by the new
  util-linux rpm.
o even though sit-upgrade suggests to install mount (but not losetup).
o the dist-upgrade operation resulting in the suggested installation
  for mount has no debug output (why?)
o apt-get upgrade is not affected by this bug

The dist-upgrade bug removing tons of packages is due to the
dist-upgrade algorithm not accepting the virtual "mount" package as
present/adequate. If the Obsoletes tags become active again (which
they should be to avoid file conflicts) dist-upgrade detects it cannot
install (the old) mount and tries to remove all packages depending on
it.

The final question is why is the virtual "mount" provide hidden
from/not enough for dist-upgrade's algorithm?

# rpm -ql --provides -p mount-2.11y-29.i386.rpm
mount = 2.11y-29
/bin/mount
/bin/umount
/sbin/swapoff
/sbin/swapon
/usr/share/man/man5/fstab.5.gz
/usr/share/man/man5/nfs.5.gz
/usr/share/man/man8/mount.8.gz
/usr/share/man/man8/swapoff.8.gz
/usr/share/man/man8/swapon.8.gz
/usr/share/man/man8/umount.8.gz
# rpm -q --whatprovides mount /bin/mount /bin/umount /sbin/swapoff /sbin/swapon | sort -u
util-linux-2.12-17.99_3.rhfc1.at
# rpm -q --provides util-linux | grep mount
mount = 2.12-17.99_3.rhfc1.at
# rpm -q --obsoletes util-linux
fdisk  
tunelp  
# apt-get update
Get:1 http://ayo.freshrpms.net fedora/linux/1/i386 release [1814B]
Fetched 1814B in 0s (1868B/s)                             
Hit http://ayo.freshrpms.net fedora/linux/1/i386/core pkglist
Hit http://ayo.freshrpms.net fedora/linux/1/i386/core release
Hit http://ayo.freshrpms.net fedora/linux/1/i386/updates pkglist
Hit http://ayo.freshrpms.net fedora/linux/1/i386/updates release
Reading Package Lists... Done
Building Dependency Tree... Done
# apt-get upgrade
Reading Package Lists... Done
Building Dependency Tree... Done
0 upgraded, 0 newly installed, 0 removed and 0 not upgraded.
# apt-get -o debug::pkgproblemresolver=1 dist-upgrade 
Reading Package Lists... Done
Building Dependency Tree... Done
Calculating Upgrade... Starting
Starting 2
Done
Done
The following NEW packages will be installed:
  mount
0 upgraded, 1 newly installed, 0 removed and 0 not upgraded.
Need to get 0B/103kB of archives.
After unpacking 135kB of additional disk space will be used.
Do you want to continue? [Y/n] n
Abort.
-- 
Axel.Thimm at ATrpms.net

_______________________________________________
apt-rpm mailing list
[email protected]
http://distro2.conectiva.com.br/mailman/listinfo/apt-rpm
signature.asc (application/pgp-signature, 189 B)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)

iD8DBQFA+njQQBVS1GOamfERAtEGAJ43XdoSrT0dag+UdPK1kFwgU86YNwCdHd4M
HDqAr/mK86+RG/innasLbEs=
=u/AN
-----END PGP SIGNATURE-----