Bug#1035629: libnlopt-dev: unhandled symlink to directory conversion: /usr/share/doc/PACKAGE

Andreas Beckmann anbe at debian.org
Sun May 14 09:38:34 BST 2023


On 14/05/2023 10.22, Nilesh Patra wrote:
> Could you help explain where exactly the overwriting is happening?
   /usr/share/doc/libnlopt-dev/changelog.Debian.gz (libnlopt-dev:amd64) != /usr/share/doc/libnlopt0/changelog.Debian.gz (libnlopt0:amd64)
     /usr/share/doc/libnlopt-dev -> libnlopt0
   /usr/share/doc/libnlopt-dev/examples/CMakeLists.txt (libnlopt-dev:amd64) != /usr/share/doc/libnlopt0/examples/CMakeLists.txt (?)
     /usr/share/doc/libnlopt-dev -> libnlopt0

In bullseye libnlopt-dev ships /usr/share/doc/libnlopt-dev as a symlink to libnlopt0
dpkg retains this symlink on upgrades to bookworm
In bookworm libnlopt-dev ships /usr/share/doc/libnlopt-dev as a directory
libnlopt-dev now ships /usr/share/doc/libnlopt-dev/changelog.Debian.gz which overwrites
/usr/share/doc/libnlopt0/changelog.Debian.gz (not noticed by dpkg)
If you remove libnlopt-dev, it deletes /usr/share/doc/libnlopt0/changelog.Debian.gz
and libnlopt0 ends up without changelog, copyright, ...
libnlopt-dev ships /usr/share/doc/libnlopt-dev/examples/*, too, which ends up as
/usr/share/doc/libnlopt0/examples/*, but these could already be files owned by
another package.


Andreas



More information about the debian-science-maintainers mailing list