[Pkg-rust-maintainers] Bug#1069593: libsequoia-octopus-librnp: dpkg-divert in preinst doesn't happen on upgrade

Daniel Kahn Gillmor dkg at fifthhorseman.net
Sun Apr 21 09:29:10 BST 2024


Package: libsequoia-octopus-librnp
Version: 1.8.1-2
Severity: normal
X-Debbugs-Cc: Daniel Kahn Gillmor <dkg at fifthhorseman.net>
Control: affects -1 thunderbird gpg-from-sq gpgv-from-sq

When i try to install thunderbird 1:115.10.1-1, i get this error:

```
Unpacking thunderbird (1:115.10.1-1) over (1:115.9.0-1+b1) ...
dpkg: error processing archive /var/cache/apt/archives/thunderbird_1%3a115.10.1-1_amd64.deb (--unpack):
 trying to overwrite '/usr/lib/thunderbird/librnp.so', which is also in package libsequoia-octopus-librnp 1.8.1-2
dpkg-deb: error: paste subprocess was killed by signal (Broken pipe)
Errors were encountered while processing:
 /var/cache/apt/archives/thunderbird_1%3a115.10.1-1_amd64.deb
```

This looks to me like the octopus's dpkg-diversion is supposed to work
to avoid this, but i don't see it happening.

This seems to be due to the way the preinst script adds the diversion:

```
if [ "$1" != "upgrade" ] ; then
  add_diversion /usr/lib/thunderbird/librnp.so
fi
```

i had version 1.8.1-1 installed before 1.8.1-2, which meant that i
upgraded, and i didn't get the diversion added:

grep octopus /var/log/dpkg.log.1 shows:

2024-03-26 06:38:49 status installed libsequoia-octopus-librnp:amd64 1.8.1-1
2024-03-28 10:27:08 upgrade libsequoia-octopus-librnp:amd64 1.8.1-1 1.8.1-2

Why does the package exclude the diversion when preinst runs on upgrade?

i see the same issue in the use of dpkg-divert in gpg-from-sq and
gpgv-from-sq also, btw.  Compare that to the use of dpkg-divert in
/var/lib/dpkg/info/perl-doc.preinst, for example, which triggers on both
"install" and on "upgrade".

I worked around this on my system by removing libsequoia-octopus-librnp,
upgrading thunderbird, and then reinstalling libsequoia-octopus-librnp,
but it seems like the goal should be to not have to make the user do
that.

    --dkg



-- System Information:
Debian Release: trixie/sid
  APT prefers testing-debug
  APT policy: (500, 'testing-debug'), (500, 'testing'), (500, 'stable'), (500, 'oldstable'), (200, 'unstable-debug'), (200, 'unstable'), (1, 'experimental-debug'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 6.6.15-amd64 (SMP w/4 CPU threads; PREEMPT)
Kernel taint flags: TAINT_FIRMWARE_WORKAROUND
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 324 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/pkg-rust-maintainers/attachments/20240421/9810b6ab/attachment.sig>


More information about the Pkg-rust-maintainers mailing list