Skip to content

Commit 8a18df2

Browse files
committed
Ubuntu 22.04: Install cargo, rust & sccache
1 parent 45132c6 commit 8a18df2

1 file changed

Lines changed: 14 additions & 0 deletions

File tree

ubuntu-22.04/Dockerfile

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ ARG DEBIAN_FRONTEND=noninteractive
55
RUN apt-get update -q && apt-get -y -q install --no-install-recommends \
66
bzip2 \
77
ca-certificates \
8+
cargo \
89
clang \
910
cmake \
1011
curl \
@@ -47,6 +48,7 @@ RUN apt-get update -q && apt-get -y -q install --no-install-recommends \
4748
qt6-l10n-tools \
4849
qt6-tools-dev \
4950
qt6-tools-dev-tools \
51+
rustc \
5052
wget \
5153
xvfb \
5254
zlib1g \
@@ -59,5 +61,17 @@ RUN update-alternatives --install /usr/bin/python python /usr/bin/python3 100
5961
# Allow installing pip packages system-wide since there's no risk in a container
6062
ENV PIP_BREAK_SYSTEM_PACKAGES=1
6163

64+
# Make .cargo/ writable for everyone to allow running the container as non-root
65+
RUN mkdir /.cargo && chmod 777 /.cargo
66+
67+
# Install sccache
68+
ARG SCCACHE_VERSION="0.8.2"
69+
ARG SCCACHE_URL="https://github.com/mozilla/sccache/releases/download/v$SCCACHE_VERSION/sccache-v$SCCACHE_VERSION-x86_64-unknown-linux-musl.tar.gz"
70+
RUN wget -c "$SCCACHE_URL" -O /tmp.tar.gz \
71+
&& tar -zxf /tmp.tar.gz \
72+
&& cp "./sccache-v$SCCACHE_VERSION-x86_64-unknown-linux-musl/sccache" /usr/local/bin/ \
73+
&& rm -rf "./sccache-v$SCCACHE_VERSION-x86_64-unknown-linux-musl" \
74+
&& rm /tmp.tar.gz
75+
6276
# LibrePCB's unittests expect that there is a USERNAME environment variable
6377
ENV USERNAME="root"

0 commit comments

Comments
 (0)