Running dpkg in debug mode, I see: root@stgraber-upgrade:/var/cache/apt/archives# dpkg -D10 -i udev_167-0ubuntu1_amd64.deb 2>&1 | grep udevadm Adding 'diversion of /sbin/udevadm to /sbin/udevadm.upgrade by udev' D000010: tarobject ti->name='./sbin/udevadm' mode=100755 owner=0.0 type=48(-) ti->linkname='' namenode='/sbin/udevadm' flags=2 instead='/sbin/udevadm.upgrade' D000010: namenodetouse namenode=`/sbin/udevadm' pkg=udev D000010: namenodetouse ... useinstead=/sbin/udevadm.upgrade camefrom=<none> pkg=udev return /sbin/udevadm D000010: ensure_pathname_nonexisting `/sbin/udevadm.dpkg-tmp' D000010: ensure_pathname_nonexisting `/sbin/udevadm.dpkg-new' D000010: tarobject ti->name='./usr/share/man/man8/udevadm.8.gz' mode=100644 owner=0.0 type=48(-) ti->linkname='' namenode='/usr/share/man/man8/udevadm.8.gz' flags=2 instead='<none>' D000010: ensure_pathname_nonexisting `/usr/share/man/man8/udevadm.8.gz.dpkg-tmp' D000010: ensure_pathname_nonexisting `/usr/share/man/man8/udevadm.8.gz.dpkg-new' D000010: namenodetouse namenode=`/sbin/udevadm' pkg=udev D000010: namenodetouse ... useinstead=/sbin/udevadm.upgrade camefrom=<none> pkg=udev return /sbin/udevadm D000010: deferred extract of '/sbin/udevadm' D000010: namenodetouse namenode=`/sbin/udevadm' pkg=udev D000010: namenodetouse ... useinstead=/sbin/udevadm.upgrade camefrom=<none> pkg=udev return /sbin/udevadm D000010: deferred extract of '/usr/share/man/man8/udevadm.8.gz' D000010: process_archive not overwriting any `/sbin/udevadm' (overriding, `/sbin/udevadm.upgrade') D000010: process_archive looking for overwriting `/usr/share/man/man8/udevadm.8.gz' D000010: namenodetouse namenode=`/sbin/udevadm' pkg=udev D000010: namenodetouse ... useinstead=/sbin/udevadm.upgrade camefrom=<none> pkg=udev return /sbin/udevadm D000010: namenodetouse namenode=`/sbin/udevadm' pkg=udev D000010: namenodetouse ... useinstead=/sbin/udevadm.upgrade camefrom=<none> pkg=udev return /sbin/udevadm D000010: ensure_pathname_nonexisting `//sbin/udevadm.dpkg-tmp' D000010: ensure_pathname_nonexisting `//usr/share/man/man8/udevadm.8.gz.dpkg-tmp' Removing 'diversion of /sbin/udevadm to /sbin/udevadm.upgrade by udev'
The above shows that the diversion is indeed probably registered but that for some reason it still returns the old path instead of "useinstead". The condition that's producing this result is: r= (namenode->divert->useinstead && namenode->divert->pkgset != pkg->set) ? namenode->divert->useinstead : namenode; I tried adding the following to the namenodetouse() function in help.c: printf("divert_useinstead=%s, divert_pkgset=%s, pkgset=%s, namenode=%s, using=%s\n",namenode->divert->useinstead,namenode->divert->pkgset,pkg->set,namenode,r); That would have given me more details on exactly what's going on but dpkg doesn't seem to build today because of another unrelated issue: https://launchpad.net/~stgraber/+archive/foundation- build/+buildjob/2427483 >From the debug output we get, the "useinstead" is set properly, so the issue is with the pkgset part of that check. -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/745011 Title: "info: unrecognized option '--convert-db'" on upgrade -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs