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