1- FROM registry.gitlab.steamos.cloud/steamrt/scout /sdk:latest
1+ FROM registry.gitlab.steamos.cloud/steamrt/soldier /sdk:latest
22
33LABEL org.opencontainers.image.authors
"Jack Greiner <[email protected] >" 44LABEL org.opencontainers.image.source "https://github.com/ProjectSynchro/synchros-sexy-docker-containers"
5- LABEL org.opencontainers.image.description "Steam runtime development environment for Naev, various dependencies for testing meson and autotools as well as additional Naev functionality."
5+ LABEL org.opencontainers.image.description "Steam runtime (Soldier) development environment for Naev, various dependencies for testing meson and autotools as well as additional Naev functionality."
66
7- # Add stable git PPA to sources, as well as the signing key to silence warnings
8- RUN echo "deb http://ppa.launchpad.net/git-core/ppa/ubuntu precise main" | sudo tee -a /etc/apt/sources.list && \
9- echo "deb-src http://ppa.launchpad.net/git-core/ppa/ubuntu precise main" | sudo tee -a /etc/apt/sources.list && \
10- apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E1DD270288B4E6030699E45FA1715D88E1DF1F24
11-
12- # Install git, m4 macros (deprecated but still needed for 0.8.* releases), autopoint for autotools, and cpanminus to install the XML::Parser module
13- RUN DEBIAN_FRONTEND=noninteractive apt-get update && \
14- apt-get install -y --force-yes git autoconf-archive autopoint cpanminus
15-
16- # Install perl module XML::Parser (Installing this via the package libxml-parser-perl throws us into dependency hell.)
17- RUN cpanm XML::Parser --force
18-
19- # Install intltool (ditto on the dependency hell).
20- WORKDIR /usr/src
21- RUN curl "https://launchpadlibrarian.net/199705878/intltool-0.51.0.tar.gz" -o "intltool-0.51.0.tar.gz" && \
22- tar -xvf intltool-0.51.0.tar.gz && rm intltool-0.51.0.tar.gz
23-
24- WORKDIR /usr/src/intltool-0.51.0
25- RUN ./configure --prefix=/usr && \
26- make install -j"$(nproc --all)"
27-
28- # Compile OpenSSL 1.0.2 from source (required for Python >=3.7).
29- RUN DEBIAN_FRONTEND=noninteractive apt-get install -y --force-yes checkinstall
30-
31- WORKDIR /usr/local/src
32- RUN curl "https://www.openssl.org/source/old/1.0.2/openssl-1.0.2u.tar.gz" -o "openssl-1.0.2u.tar.gz" && \
33- tar -xvf openssl-1.0.2u.tar.gz && rm openssl-1.0.2u.tar.gz
34-
35- WORKDIR /usr/local/src/openssl-1.0.2u
36- RUN ./config --prefix=/usr/local/ssl --openssldir=/usr/local/ssl shared zlib && \
37- make -j"$(nproc --all)" && \
38- make install
39-
40- WORKDIR /usr/local/ssl/bin
41- RUN echo "Verifying openssl install" && \
42- which openssl && \
43- openssl version -a
44-
45- RUN echo "Directing local openssl to system certificates" && \
46- rmdir /usr/local/ssl/certs; \
47- ln -s /etc/ssl/certs /usr/local/ssl/certs
48-
49- # Compile Python 3.9.0 from source.
50- RUN DEBIAN_FRONTEND=noninteractive apt-get install -y --force-yes \
51- libreadline-dev libsqlite3-dev llvm tk-dev
52-
53- WORKDIR /usr/local/src
54- RUN curl "https://www.python.org/ftp/python/3.9.0/Python-3.9.0.tgz" -o "Python-3.9.0.tgz" && \
55- tar -xvf Python-3.9.0.tgz && rm Python-3.9.0.tgz
56-
57- WORKDIR /usr/local/src/Python-3.9.0
58- RUN PATH="/usr/local/ssl:$PATH" CPPFLAGS="-I/usr/local/ssl/include" CFLAGS="-I/usr/local/ssl/include/" \
59- LDFLAGS="-L/usr/local/ssl/lib -Wl,-rpath,/usr/local/ssl/lib" LD_LIBRARY_PATH=/usr/local/ssl/lib:$LD_LIBRARY_PATH \
60- LD_RUN_PATH="/usr/local/ssl/lib" CONFIGURE_OPTS="--with-openssl=/usr/local/ssl" PYTHON_CONFIGURE_OPTS="--enable-shared" \
61- ./configure --with-ensurepip=install && \
62- make -j"$(nproc --all)" && \
63- make altinstall
64-
65- RUN update-alternatives --install /usr/bin/python3 python3 /usr/local/bin/python3.9 1 && \
66- echo "Verifying python install" && \
67- which python3 && \
68- python3 --version
69-
70- # Update pip
7+ # Install pip from steam/debian repositories.
8+ RUN DEBIAN_FRONTEND=noninteractive apt-get install -y python3-pip
719RUN python3 -m pip install --upgrade pip && \
7210 echo "Verifying python install" && \
7311 which python3 && \
@@ -78,8 +16,8 @@ RUN python3 -m pip install --upgrade pip && \
7816# Install Mutagen for soundtrack generation via pip.
7917RUN python3 -m pip install mutagen
8018
81- # Install meson via pip.
82- RUN python3 -m pip install meson && \
19+ # Upgrade meson via pip.
20+ RUN python3 -m pip install meson --upgrade && \
8321 echo "Verifying meson install" && \
8422 which meson && \
8523 meson --version
0 commit comments