Ubuntu 20.04 needs `libxcb-xinerama.so.0`
and Debian 10 needs `libxcb-util.so.1` for the Qt `xcb` plugin.
-----
ported from 380f04a805
see https://github.com/Electron-Cash/Electron-Cash/issues/2196
-----
In particular, see this comment:
>> I confirmed that both Ubuntu 20.04 and Debian 10.8 clean install have an issue with the 4.2.4 AppImage.
>
> Any idea what broke it? I assume it used to work.
Yes, it did work in 4.2.3 which used PyQt5 5.13.2. I just had a look at the xcb plugin and it definitely has less dependencies:
```
ago@ubuntu2004vm:~/src/Electron-Cash/dist$ ldd squashfs-root/usr/lib/python3.6/site-packages/PyQt5/Qt/plugins/platforms/libqxcb.so|grep xcb
libX11-xcb.so.1 => /lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x00007f0ec9d07000)
libxcb.so.1 => /lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f0ec9cdd000)
libxcb-xkb.so.1 => /lib/x86_64-linux-gnu/libxcb-xkb.so.1 (0x00007f0ec6ead000)
```
compared to PyQt5 5.15.2 in 4.2.4:
```
ago@ubuntu2004vm:~/src/Electron-Cash/dist$ ldd squashfs-root/usr/lib/python3.8/site-packages/PyQt5/Qt/plugins/platforms/libqxcb.so|grep xcb
libX11-xcb.so.1 => /lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x00007fcb5715f000)
libxcb-icccm.so.4 => /lib/x86_64-linux-gnu/libxcb-icccm.so.4 (0x00007fcb57158000)
libxcb-image.so.0 => /lib/x86_64-linux-gnu/libxcb-image.so.0 (0x00007fcb56f51000)
libxcb-shm.so.0 => /lib/x86_64-linux-gnu/libxcb-shm.so.0 (0x00007fcb56f4c000)
libxcb-util.so.1 => /lib/x86_64-linux-gnu/libxcb-util.so.1 (0x00007fcb56d46000)
libxcb-keysyms.so.1 => /lib/x86_64-linux-gnu/libxcb-keysyms.so.1 (0x00007fcb56d41000)
libxcb-randr.so.0 => /lib/x86_64-linux-gnu/libxcb-randr.so.0 (0x00007fcb56d2e000)
libxcb-render-util.so.0 => /lib/x86_64-linux-gnu/libxcb-render-util.so.0 (0x00007fcb56d27000)
libxcb-render.so.0 => /lib/x86_64-linux-gnu/libxcb-render.so.0 (0x00007fcb56d16000)
libxcb-shape.so.0 => /lib/x86_64-linux-gnu/libxcb-shape.so.0 (0x00007fcb56d11000)
libxcb-sync.so.1 => /lib/x86_64-linux-gnu/libxcb-sync.so.1 (0x00007fcb56d07000)
libxcb-xfixes.so.0 => /lib/x86_64-linux-gnu/libxcb-xfixes.so.0 (0x00007fcb56cfd000)
libxcb-xinerama.so.0 => /lib/x86_64-linux-gnu/libxcb-xinerama.so.0 (0x00007fcb56cf8000)
libxcb-xkb.so.1 => /lib/x86_64-linux-gnu/libxcb-xkb.so.1 (0x00007fcb56cda000)
libxcb.so.1 => /lib/x86_64-linux-gnu/libxcb.so.1 (0x00007fcb56cae000)
```
38 lines
1.4 KiB
Docker
38 lines
1.4 KiB
Docker
# Note: we deliberately use an old Ubuntu LTS as base image.
|
|
# from https://docs.appimage.org/introduction/concepts.html :
|
|
# "[AppImages] should be built on the oldest possible system, allowing them to run on newer system[s]"
|
|
FROM ubuntu:16.04@sha256:a4fc0c40360ff2224db3a483e5d80e9164fe3fdce2a8439d2686270643974632
|
|
|
|
ENV LC_ALL=C.UTF-8 LANG=C.UTF-8
|
|
ENV DEBIAN_FRONTEND=noninteractive
|
|
|
|
RUN apt-get update -q && \
|
|
apt-get install -qy \
|
|
git=1:2.7.4-0ubuntu1.10 \
|
|
wget=1.17.1-1ubuntu1.5 \
|
|
make=4.1-6 \
|
|
autotools-dev=20150820.1 \
|
|
autoconf=2.69-9 \
|
|
libtool=2.4.6-0.1 \
|
|
xz-utils=5.1.1alpha+20120614-2ubuntu2 \
|
|
libssl-dev=1.0.2g-1ubuntu4.19 \
|
|
libssl1.0.0=1.0.2g-1ubuntu4.19 \
|
|
openssl=1.0.2g-1ubuntu4.19 \
|
|
zlib1g-dev=1:1.2.8.dfsg-2ubuntu4.3 \
|
|
libffi-dev=3.2.1-4 \
|
|
libncurses5-dev=6.0+20160213-1ubuntu1 \
|
|
libsqlite3-dev=3.11.0-1ubuntu1.5 \
|
|
libusb-1.0-0-dev=2:1.0.20-1 \
|
|
libudev-dev=229-4ubuntu21.29 \
|
|
gettext=0.19.7-2ubuntu3.1 \
|
|
libzbar0=0.10+doc-10ubuntu1 \
|
|
libdbus-1-3=1.10.6-1ubuntu3.6 \
|
|
libxkbcommon-x11-0=0.5.0-1ubuntu2.1 \
|
|
libxcb-util1=0.4.0-0ubuntu3 \
|
|
libxcb-xinerama0=1.11.1-1ubuntu1 \
|
|
libc6-dev=2.23-0ubuntu11.2 \
|
|
&& \
|
|
rm -rf /var/lib/apt/lists/* && \
|
|
apt-get autoremove -y && \
|
|
apt-get clean
|