Commit da3eae39c8e5261196bbc1b460e5b556c6836dbf

Authored by Jay Berkenbilt
1 parent b6e12f48

Build AppImage and linux binary using Ubuntu 18.04 (fixes #1068)

This is needed to get an old enough version of glibc to run the Linux
binary as an AWS Lambda layer and to support some versions of CentOS.
ChangeLog
  1 +2023-11-20 Jay Berkenbilt <ejb@ql.org>
  2 +
  3 + * Build AppImage with an older Linux distribution to support AWS
  4 + Lambda. Fixes #1086.
  5 +
1 6 2023-10-15 Jay Berkenbilt <ejb@ql.org>
2 7  
3 8 * 11.6.3: release
... ...
appimage/Dockerfile
1   -FROM ubuntu:20.04
  1 +FROM ubuntu:18.04
2 2 ENV DEBIAN_FRONTEND=noninteractive
3 3 RUN apt-get update
4 4 RUN apt-get -y install screen git sudo \
5   - build-essential pkg-config cmake \
  5 + build-essential pkg-config \
6 6 zlib1g-dev libjpeg-dev libgnutls28-dev \
7 7 python3-pip texlive-latex-extra latexmk \
8 8 inkscape imagemagick busybox-static wget fuse && \
9 9 apt-get clean && rm -rf /var/lib/apt/lists/*
10   -RUN pip3 install sphinx sphinx_rtd_theme
  10 +# Get cmake from pypi. We need to keep Ubuntu 18.04 for a while longer
  11 +# since the glibc in Ubuntu 20.04 is too new (as of late 2023) for
  12 +# Amazon Linux 2 in Lambda and for some supported CentOS versions.
  13 +# When we are ready to update to 20.04 or newer, remove the version
  14 +# constraint on sphinx, and install the OS package for cmake.
  15 +RUN pip3 install --upgrade pip
  16 +RUN pip3 install sphinx==4 sphinx_rtd_theme cmake
11 17 COPY entrypoint /entrypoint
12 18 RUN chmod +x /entrypoint
13 19 ENTRYPOINT [ "/entrypoint" ]
... ...
appimage/build-appimage
... ... @@ -47,14 +47,14 @@ fi
47 47 _osversion=$(cat /etc/os-release | grep PRETTY_NAME | awk -F'=' '{print $2}' | sed 's#"##g')
48 48  
49 49 # Warn users building the AppImage locally:
50   -if [[ ! $_osversion =~ Ubuntu\ 20.04.*\ LTS ]]; then
  50 +if [[ ! $_osversion =~ Ubuntu\ 18.04.*\ LTS ]]; then
51 51 set +x
52 52 echo ""
53 53 # 0 1 2 3 4 5 6 7
54 54 # 01234567890123456789012345678901234567890123456789012345678901234567890123456789
55 55 echo "+===========================================================================+"
56 56 echo "|| WARNING: You are about to build a QPDF AppImage on a system which is ||"
57   - echo "|| NOT Ubuntu 20.04 LTS. ||"
  57 + echo "|| NOT Ubuntu 18.04 LTS. ||"
58 58 echo "|| ||"
59 59 echo "|| It is recommended that you use a distribution that is at least a ||"
60 60 echo "|| few years old to maximize the number of Linux distributions the ||"
... ...