@@ -12,35 +12,71 @@ ENV LD_LIBRARY_PATH="./:/opt/cubecoders/amp/:/AMP/"
1212ARG DEBIAN_FRONTEND=noninteractive
1313ARG TARGETARCH
1414
15- # Update base packages and install dependencies, including temp fix if libssl1.1 needed
15+ # Update base packages and install dependencies
1616RUN set -eux; \
1717 mkdir -p /usr/share/man/man1; \
1818 apt-get update; \
1919 apt-get install -y --no-install-recommends \
20- ca-certificates software-properties-common curl wget tar unzip xz-utils bzip2 \
21- coreutils procps net-tools iproute2 iputils-ping socat jq git git-lfs gnupg lsof tmux sqlite3 gdb \
20+ ca-certificates curl wget tar unzip xz-utils bzip2 \
21+ coreutils procps iproute2 iputils-ping socat jq git git-lfs gnupg tmux sqlite3 dbus \
2222 tini tzdata locales \
23+ libssl3 libcurl4 libsqlite3-0 libzstd1 libsdl2-2.0-0 libsdl1.2-compat \
24+ # Required for Core Keeper
2325 xvfb xauth libxi6 \
24- libc6 libc++-dev libcurl4 libatomic1 libpulse-dev liblua5.3-0 libfontconfig1 libgdiplus libsqlite3-0 libzstd1 libsdl2-2.0-0 libsdl1.2-compat; \
25- if [ "$TARGETARCH" = "amd64" ]; then \
26- dpkg --add-architecture i386; \
27- apt-get update; \
28- apt-get install -y --no-install-recommends \
29- libc6:i386 libstdc++6:i386 libgcc-s1:i386 zlib1g:i386 libbz2-1.0:i386 libzstd1:i386 libcurl4:i386 libcurl3-gnutls:i386 libcurl4-gnutls-dev:i386 \
30- libtinfo6:i386 libncurses6:i386 libncurses5:i386 libtinfo5:i386 libsdl2-2.0-0:i386 libsdl1.2-compat:i386 libssl-dev:i386; \
31- fi ; \
26+ # Required for Valheim crossplay (and variously some others)
27+ libc6 libatomic1 libpulse-dev \
28+ # Required for BeamMP
29+ liblua5.3-0 \
30+ # Required for Eco
31+ libgdiplus \
32+ # Required for Pavlov VR (and variously some others)
33+ gdb libc++-dev ; \
3234 case "$TARGETARCH" in \
33- amd64) wget -qO libssl1.1.deb https://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.0g-2ubuntu4_amd64.deb ;; \
34- arm64) wget -qO libssl1.1.deb https://ports.ubuntu.com/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_arm64.deb ;; \
35+ amd64) \
36+ dpkg --add-architecture i386; \
37+ apt-get update; \
38+ apt-get install -y --no-install-recommends \
39+ # Required for steamcmd
40+ libgcc-s1:i386 \
41+ # Others
42+ libstdc++6:i386 zlib1g:i386 libbz2-1.0:i386 libcurl4:i386 libcurl3-gnutls:i386 libcurl4-gnutls-dev:i386 \
43+ libncurses6:i386 libncurses5:i386 libtinfo6:i386 libtinfo5:i386 libsdl2-2.0-0:i386 libssl-dev:i386; \
44+ ;; \
45+ arm64) \
46+ dpkg --add-architecture armhf; \
47+ apt-get update; \
48+ apt-get install -y --no-install-recommends \
49+ # Required for steamcmd
50+ libgcc-s1:armhf \
51+ # Others
52+ libstdc++6:armhf zlib1g:armhf libbz2-1.0:armhf libcurl4:armhf libcurl3-gnutls:armhf libcurl4-gnutls-dev:armhf \
53+ libncurses6:armhf libncurses5:armhf libtinfo6:armhf libtinfo5:armhf libsdl2-2.0-0:armhf libssl-dev:armhf; \
54+ # Add box86/box64
55+ install -d -m 0755 /etc/apt/keyrings; \
56+ wget -qO- "https://pi-apps-coders.github.io/box86-debs/KEY.gpg" | gpg --dearmor -o /etc/apt/keyrings/box86-archive-keyring.gpg; \
57+ printf "Types: deb\n URIs: https://Pi-Apps-Coders.github.io/box86-debs/debian\n Suites: ./\n Signed-By: /etc/apt/keyrings/box86-archive-keyring.gpg" | tee /etc/apt/sources.list.d/box86.sources >/dev/null; \
58+ wget -qO- "https://pi-apps-coders.github.io/box64-debs/KEY.gpg" | gpg --dearmor -o /etc/apt/keyrings/box64-archive-keyring.gpg; \
59+ printf "Types: deb\n URIs: https://Pi-Apps-Coders.github.io/box64-debs/debian\n Suites: ./\n Signed-By: /etc/apt/keyrings/box64-archive-keyring.gpg" | tee /etc/apt/sources.list.d/box64.sources >/dev/null; \
60+ apt-get update; \
61+ apt-get install -y \
62+ box86-generic-arm:armhf box64-generic-arm; \
63+ ;; \
64+ esac; \
65+ # Temp fix if libssl1.1 needed
66+ case "$TARGETARCH" in \
67+ amd64) wget -qO libssl1.1.deb https://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.0g-2ubuntu4_amd64.deb;; \
68+ arm64) wget -qO libssl1.1.deb https://ports.ubuntu.com/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_arm64.deb;; \
3569 esac; \
3670 apt-get install -y --no-install-recommends ./libssl1.1.deb; \
3771 rm libssl1.1.deb; \
72+ # Install AMP instance manager
3873 case "$TARGETARCH" in \
39- amd64) wget -q https://cdn-repo.c7rs.com/ampinstmgr-latest.tgz ;; \
40- arm64) wget -q https://cdn-repo.c7rs.com/aarch64/ampinstmgr-latest.tgz ;; \
74+ amd64) wget -q https://cdn-repo.c7rs.com/ampinstmgr-latest.tgz;; \
75+ arm64) wget -q https://cdn-repo.c7rs.com/aarch64/ampinstmgr-latest.tgz;; \
4176 esac; \
4277 tar -xzf ampinstmgr-latest.tgz -C /; \
4378 rm ampinstmgr-latest.tgz; \
79+ # Set up locales
4480 sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen; \
4581 locale-gen; \
4682 apt-get clean; \
@@ -52,5 +88,5 @@ ENV LC_ALL=en_US.UTF-8
5288
5389COPY ./scripts/ampstart.sh /ampstart.sh
5490RUN chmod +x /ampstart.sh
55- ENTRYPOINT ["/usr/bin/tini" , "-g" , "--" ]
56- CMD ["/ampstart.sh" ]
91+ ENTRYPOINT ["/usr/bin/tini" , "-g" , "--" , "/ampstart.sh" ]
92+ CMD []
0 commit comments