|
|
|
# Note: we deliberately use an old Debian stable 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 debian:buster@sha256:fb9654aac57319592f1d51497c62001e7033eddf059355408a0b53f7c71f8d5f
|
|
|
|
|
|
|
|
ENV LC_ALL=C.UTF-8 LANG=C.UTF-8
|
|
|
|
ENV DEBIAN_FRONTEND=noninteractive
|
|
|
|
|
|
|
|
# need ca-certificates before using snapshot packages
|
|
|
|
RUN apt update -qq > /dev/null && apt install -qq --yes --no-install-recommends \
|
|
|
|
ca-certificates
|
|
|
|
|
|
|
|
# pin the distro packages
|
|
|
|
COPY apt.sources.list /etc/apt/sources.list
|
|
|
|
COPY apt.preferences /etc/apt/preferences.d/snapshot
|
|
|
|
|
|
|
|
RUN apt-get update -q && \
|
|
|
|
apt-get install -qy --allow-downgrades \
|
appimage build: build and include libxcb-util1
fixes https://github.com/spesmilo/electrum/issues/8011
> Upgraded from Appimage 4.1.5 to 4.3.2 on MX-Linux 19.
> The new version fails to start with:
>
> ```
> $ electrum
> qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
> This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may > fix this problem.
>
> Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, webgl, xcb.
>
> Aborted (core dumped)
> ```
debian 10 only distributes libxcb-util0.
debian 11 distributes libxcb-util1.
our base image atm is debian 10, so we build the package from source.
2 years ago
|
|
|
sudo \
|
|
|
|
git \
|
|
|
|
wget \
|
|
|
|
make \
|
|
|
|
autotools-dev \
|
|
|
|
autoconf \
|
|
|
|
libtool \
|
|
|
|
autopoint \
|
appimage build: build and include libxcb-util1
fixes https://github.com/spesmilo/electrum/issues/8011
> Upgraded from Appimage 4.1.5 to 4.3.2 on MX-Linux 19.
> The new version fails to start with:
>
> ```
> $ electrum
> qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
> This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may > fix this problem.
>
> Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, webgl, xcb.
>
> Aborted (core dumped)
> ```
debian 10 only distributes libxcb-util0.
debian 11 distributes libxcb-util1.
our base image atm is debian 10, so we build the package from source.
2 years ago
|
|
|
pkg-config \
|
|
|
|
xz-utils \
|
|
|
|
libssl-dev \
|
|
|
|
libssl1.1 \
|
|
|
|
openssl \
|
|
|
|
zlib1g-dev \
|
|
|
|
libffi-dev \
|
|
|
|
libncurses5-dev \
|
|
|
|
libncurses5 \
|
|
|
|
libtinfo-dev \
|
|
|
|
libtinfo5 \
|
|
|
|
libsqlite3-dev \
|
|
|
|
libusb-1.0-0-dev \
|
|
|
|
libudev-dev \
|
|
|
|
libudev1 \
|
|
|
|
gettext \
|
|
|
|
libzbar0 \
|
|
|
|
libdbus-1-3 \
|
appimage build: build and include libxcb-util1
fixes https://github.com/spesmilo/electrum/issues/8011
> Upgraded from Appimage 4.1.5 to 4.3.2 on MX-Linux 19.
> The new version fails to start with:
>
> ```
> $ electrum
> qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
> This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may > fix this problem.
>
> Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, webgl, xcb.
>
> Aborted (core dumped)
> ```
debian 10 only distributes libxcb-util0.
debian 11 distributes libxcb-util1.
our base image atm is debian 10, so we build the package from source.
2 years ago
|
|
|
xutils-dev \
|
|
|
|
libxkbcommon0 \
|
|
|
|
libxkbcommon-x11-0 \
|
appimage build: build and include libxcb-util1
fixes https://github.com/spesmilo/electrum/issues/8011
> Upgraded from Appimage 4.1.5 to 4.3.2 on MX-Linux 19.
> The new version fails to start with:
>
> ```
> $ electrum
> qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
> This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may > fix this problem.
>
> Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, webgl, xcb.
>
> Aborted (core dumped)
> ```
debian 10 only distributes libxcb-util0.
debian 11 distributes libxcb-util1.
our base image atm is debian 10, so we build the package from source.
2 years ago
|
|
|
libxcb1-dev \
|
|
|
|
libxcb-xinerama0 \
|
|
|
|
libxcb-randr0 \
|
|
|
|
libxcb-render0 \
|
|
|
|
libxcb-shm0 \
|
|
|
|
libxcb-shape0 \
|
|
|
|
libxcb-sync1 \
|
|
|
|
libxcb-xfixes0 \
|
|
|
|
libxcb-xkb1 \
|
|
|
|
libxcb-icccm4 \
|
|
|
|
libxcb-image0 \
|
|
|
|
libxcb-keysyms1 \
|
|
|
|
libxcb-util0 \
|
appimage build: build and include libxcb-util1
fixes https://github.com/spesmilo/electrum/issues/8011
> Upgraded from Appimage 4.1.5 to 4.3.2 on MX-Linux 19.
> The new version fails to start with:
>
> ```
> $ electrum
> qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
> This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may > fix this problem.
>
> Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, webgl, xcb.
>
> Aborted (core dumped)
> ```
debian 10 only distributes libxcb-util0.
debian 11 distributes libxcb-util1.
our base image atm is debian 10, so we build the package from source.
2 years ago
|
|
|
#libxcb-util1 \
|
|
|
|
libxcb-render-util0 \
|
|
|
|
libx11-xcb1 \
|
|
|
|
libc6-dev \
|
|
|
|
libc6 \
|
|
|
|
libc-dev-bin \
|
|
|
|
&& \
|
|
|
|
rm -rf /var/lib/apt/lists/* && \
|
|
|
|
apt-get autoremove -y && \
|
|
|
|
apt-get clean
|
|
|
|
|
|
|
|
# create new user to avoid using root; but with sudo access and no password for convenience.
|
|
|
|
ENV USER="user"
|
|
|
|
ENV HOME_DIR="/home/${USER}"
|
|
|
|
ENV WORK_DIR="${HOME_DIR}/wspace" \
|
|
|
|
PATH="${HOME_DIR}/.local/bin:${PATH}"
|
|
|
|
RUN useradd --create-home --shell /bin/bash ${USER}
|
|
|
|
RUN usermod -append --groups sudo ${USER}
|
|
|
|
RUN echo "%sudo ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
|
|
|
|
WORKDIR ${WORK_DIR}
|
|
|
|
RUN chown --recursive ${USER} ${WORK_DIR}
|
|
|
|
USER ${USER}
|