Package: libsigrokdecode2
Version: 0.3.0-1+b3
Severity: important

Dear Maintainer,

libsigrokdecode2 is marked as Multi-Arch: same but its postinst and preinst 
scripts call pycompile and pyclean without specifying the package architecture. 
As 
a result if libsigrokdecode2 is installed for more than one architecture the 
package name is ambiguous, causing the postinst and prerm scripts fail.

This then prevents any package from being installed or removed, thus breaking
the system permanently.


The solution is to replace the following line in 
/var/lib/dpkg/info/libsigrokdecode2:*.postinst

        py3compile -p libsigrokdecode2 /usr/share/libsigrokdecode2 -V 3.2-
with
        py3compile -p libsigrokdecode2:$DPKG_MAINTSCRIPT_ARCH 
/usr/share/libsigrokdecode2 -V 3.2-

And the following lines in /var/lib/dpkg/info/libsigrokdecode2:*.prerm

        py3clean -p libsigrokdecode2 
    else
        dpkg -L libsigrokdecode2 | perl -ne 's,/([^/]*)\.py$,/__pycache__/\1.*, 
or next; unlink $_ or die $! foreach glob($_)'

with:

        py3clean -p libsigrokdecode2:$DPKG_MAINTSCRIPT_ARCH 
    else
        dpkg -L libsigrokdecode2:$DPKG_MAINTSCRIPT_ARCH | perl -ne 
's,/([^/]*)\.py$,/__pycache__/\1.*, or next; unlink $_ or die $! foreach 
glob($_)'


Note that this bugs still affects Debian 9.4, the current stable release.
See also bug #770625 which shows how this same bug was fixed in gir1.2-ibus-1.0.

-- System Information:
Debian Release: 9.1
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.9.0-3-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages libsigrokdecode2:amd64 depends on:
ii  libc6         2.24-11+deb9u3
ii  libglib2.0-0  2.50.3-2
ii  libpython3.5  3.5.3-1
ii  python3       3.5.3-1

libsigrokdecode2:amd64 recommends no packages.

libsigrokdecode2:amd64 suggests no packages.

-- no debconf information

Reply via email to