-
Notifications
You must be signed in to change notification settings - Fork 1
/
Dockerfile-jammy
70 lines (65 loc) · 2.28 KB
/
Dockerfile-jammy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
FROM ubuntu:jammy
ARG DEBIAN_FRONTEND=noninteractive
RUN apt update && \
apt -y upgrade && \
apt install -y \
build-essential \
cargo \
cmake \
file \
libboost-dev \
libboost-filesystem-dev \
libboost-system-dev \
libcurl4-gnutls-dev \
libenet-dev \
libfmt-dev \
libfreetype6-dev \
libgloox-dev \
libicu-dev \
libminiupnpc-dev \
libogg-dev \
libopenal-dev \
libpng-dev \
libsdl2-dev \
libsodium-dev \
libvorbis-dev \
libvulkan-dev \
libwxgtk3.0-gtk3-dev \
libxml2-dev \
m4 \
python3 \
subversion \
rustc \
zlib1g-dev && \
apt install -y \
curl \
patchelf \
wget && \
rm -rf /var/lib/apt/lists
ENV TOOLS_DIR="/tools"
RUN mkdir -p $TOOLS_DIR
ARG ARCH=x86_64
RUN /bin/bash -c 'cd $TOOLS_DIR \
&& curl -LO https://github.com/linuxdeploy/linuxdeploy/releases/download/1-alpha-20220822-1/linuxdeploy-${ARCH}.AppImage \
&& chmod +x linuxdeploy-${ARCH}.AppImage \
&& ./linuxdeploy-${ARCH}.AppImage --appimage-extract \
&& rm ./linuxdeploy-${ARCH}.AppImage \
&& cd -'
ARG MINISIGN_VERSION="0.11"
ENV MINISIGN_PATH=${TOOLS_DIR}/minisign
ARG MINISIGN_URL=https://github.com/jedisct1/minisign/releases/download/${MINISIGN_VERSION}
RUN /bin/bash -c 'curl -LO ${MINISIGN_URL}/minisign-${MINISIGN_VERSION}-linux.tar.gz \
&& curl -LO ${MINISIGN_URL}/minisign-${MINISIGN_VERSION}-linux.tar.gz.minisig \
&& tar xf minisign-${MINISIGN_VERSION}-linux.tar.gz -C ${TOOLS_DIR} \
&& mv ${TOOLS_DIR}/minisign-linux/${ARCH}/minisign ${TOOLS_DIR} \
&& $MINISIGN_PATH -Vm minisign-$MINISIGN_VERSION-linux.tar.gz -P RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3 \
&& rm -rf ${TOOLS_DIR}/minisign-linux minisign-${MINISIGN_VERSION}-linux.tar.gz*'
# For some reason, if '/home/0adbuilder' exists,
# ./updateworkspaces.sh fails after the Collada
# build, when the python virtual environment is created.
# Using '-M' here so the home dir doesn't get created
RUN useradd -M 0adbuilder && passwd -d 0adbuilder
ENV DOCKER_0AD_BUILD=TRUE
# needed for spidermonkey build
ENV SHELL=/bin/bash
CMD ["/bin/bash","-l"]