Migrate android container base to plain debian 13

This commit is contained in:
Albin committed 2026-10-02 15:20:01 +02:00
1 parent 3bbcce9c66
commit 76b7136150
7 files changed
+39 -2161

No files matched your search

+1
View File
@@ -2,4 +2,5 @@
!building/setup-debian-snapshot.sh
!building/install-rust.sh
!rust-toolchain.toml
!android/docker/pkcs11_java.cfg
!desktop/package.json
@@ -30,7 +30,6 @@ on:
- android/gradle/wrapper/gradle-wrapper.jar
- android/gradle/wrapper/gradle-wrapper.properties
- android/scripts/lockfile
- android/docker/requirements.txt
- flake.lock
- building/build-and-publish-container-image.sh
- building/mullvad-app-container-signing.asc
+34 -92
View File
@@ -1,5 +1,5 @@
# To build the image (executed from this Dockerfile directory):
# podman build . -t mullvadvpn-app-build-android
# To build the image (executed from the repository root):
# podman build -f android/docker/Dockerfile . -t mullvadvpn-app-build-android
#
# To build using the image:
# podman run --rm \
@@ -9,20 +9,26 @@
# -v $GRADLE_CACHE_VOLUME_NAME:/root/.gradle:Z \
# -v /path/to/repository_root:/build:Z \
# mullvadvpn-app-build-android ./android/gradlew -p android debug
#
# See the base image Dockerfile in the repository root (../../Dockerfile)
# for more information.
# === Base image (built from: ../../Dockerfile) ===
# By digest, not by tag, so this can never be repointed at a different image.
FROM ghcr.io/mullvad/mullvadvpn-app-build@sha256:67adca4e557b697ecf5a8cd46a70015447514e9c2846da4573ed00df036ce6f9
# Base image: Debian trixie (13.7-slim)
FROM --platform=linux/amd64 debian@sha256:a99cfc517144bc59b1978475ec53b46ecabec7e43635402ee5b77cc54cd1b20a
# === Metadata ===
LABEL org.opencontainers.image.source=https://github.com/mullvad/mullvadvpn-app
LABEL org.opencontainers.image.description="Mullvad VPN app Android build container"
LABEL org.opencontainers.image.licenses=GPL-3.0-or-later
# === Define toolchain versions and paths ===
# === Common setup ===
ARG DEBIAN_SNAPSHOT=20260927T000000Z
COPY building/setup-debian-snapshot.sh /tmp/
RUN /tmp/setup-debian-snapshot.sh && rm /tmp/setup-debian-snapshot.sh
COPY building/install-rust.sh rust-toolchain.toml /tmp/rust/
RUN /tmp/rust/install-rust.sh android && rm -r /tmp/rust
ENV PATH=/root/.cargo/bin:$PATH
# === Define toolchain versions ===
ARG SDK_VERSION=android-37.0 \
BUILD_TOOLS_VERSION=37.0.0
@@ -37,6 +43,8 @@ ARG NDK_VERSION_NAME=r27d \
MIN_SDK_VERSION=28 \
NDK_VERSION=27.3.13750724
# === Define paths and environment ===
ENV ANDROID_SDK_ROOT=/opt/android
# ANDROID_HOME is kept for backwards compatibility
ENV ANDROID_HOME=$ANDROID_SDK_ROOT
@@ -67,10 +75,7 @@ ENV AR_x86_64_linux_android=${NDK_TOOLCHAIN_DIR}/llvm-ar \
# Set up python3 path for the rust gradle plugin
ENV RUST_ANDROID_GRADLE_PYTHON_COMMAND=/usr/bin/python3
# Set Java home for the downloaded JDK
ENV JAVA_HOME=/opt/jdk-21
ARG JDK_SHA256_CHECKSUM=a2def047a73941e01a73739f92755f86b895811afb1f91243db214cff5bdac3f
ENV JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64
# Make adb, apk signer, apk analyzer and other tools accessible
ENV PATH="\
@@ -84,32 +89,25 @@ ${JAVA_HOME}/bin\
RUN apt-get update -y && apt-get install -y \
file \
gpg \
git \
curl \
jq \
make \
python \
software-properties-common \
gcc \
gpg \
unzip \
ca-certificates-java \
openjdk-21-jdk-headless \
tidy \
pcscd \
python3-pip \
rclone \
python3-qrcode \
yubico-piv-tool \
ykcs11 \
protobuf-compiler \
libprotobuf-dev \
&& apt-get install -y --no-install-recommends fdroidserver \
&& rm -rf /var/lib/apt/lists/*
# Install fdroid server using pip instead to get a version that is using a later versions of androguard
# This and installing pip can be removed when updating to a newer version of debian
# Uses a requirement file to pin hashes of fdroidserver and its dependencies
COPY requirements.txt /tmp/requirements.txt
RUN pip install --require-hashes -r /tmp/requirements.txt
# Install openjdk-21 (this cannot be done with apt-get as it would require the image to be updated to Debian 13)
RUN curl -sfLo /tmp/openjdk-21.tar.gz https://download.java.net/java/GA/jdk21.0.2/f2283984656d49d69e91c558476027ac/13/GPL/openjdk-21.0.2_linux-x64_bin.tar.gz && \
echo "$JDK_SHA256_CHECKSUM /tmp/openjdk-21.tar.gz" | sha256sum -c && \
tar -xf /tmp/openjdk-21.tar.gz -C /tmp/ && \
mv /tmp/jdk-21.0.2 /opt/jdk-21 && \
rm /tmp/openjdk-21.tar.gz
# Install Android command line tools
RUN curl -sfLo /tmp/cmdline-tools.zip https://dl.google.com/android/repository/commandlinetools-linux-${COMMAND_LINE_TOOLS_VERSION}_latest.zip && \
echo "$COMMAND_LINE_TOOLS_SHA256_CHECKSUM /tmp/cmdline-tools.zip" | sha256sum -c && \
@@ -132,67 +130,11 @@ RUN mkdir -p ${ANDROID_SDK_ROOT}/ndk && \
mv /tmp/android-ndk-${NDK_VERSION_NAME} ${ANDROID_NDK_HOME} && \
rm /tmp/ndk.zip
# Add rust targets
RUN rustup target add x86_64-linux-android i686-linux-android aarch64-linux-android armv7-linux-androideabi
COPY android/docker/pkcs11_java.cfg /usr/local/etc/pkcs11_java.cfg
# Keep ykcs11 at the path used by pkcs11_java.cfg and existing override configs
RUN ln -s /usr/lib/x86_64-linux-gnu/libykcs11.so.2 /usr/local/lib/libykcs11.so.2
# Install yubico-piv-tool (by building from source)
#
# NOTE: Yubico doesn't have a main signing key, instead individual devs
# sign release. On version bumps, verify the new tarball .sig and update
# the key file if a different developer signed the release.
# https://developers.yubico.com/Software_Projects/Software_Signing.html
ARG YUBICO_PIV_TOOL_VERSION=2.7.3
ARG YUBICO_PIV_TOOL_SHA256=fcb25c42f54298ece8b20684fb3c581ed9195a162cbc55180a4161501be93181
COPY yubico-piv-tool-signing-key.asc /tmp/yubico-piv-tool-signing-key.asc
RUN set -eux; \
# Install build-only dependencies (some marked auto for later removal)
apt-get update -y && \
apt-get install -y --no-install-recommends \
check \
cmake \
g++ \
gengetopt \
help2man \
libpcsclite-dev \
libssl-dev \
pkg-config \
zlib1g-dev \
&& \
apt-mark auto \
check \
cmake \
gengetopt \
help2man \
libpcsclite-dev \
libssl-dev \
pkg-config \
zlib1g-dev \
&& \
# Download source tarball and detached signature
curl -sfLo /tmp/yubico-piv-tool.tar.gz \
"https://developers.yubico.com/yubico-piv-tool/Releases/yubico-piv-tool-${YUBICO_PIV_TOOL_VERSION}.tar.gz" && \
curl -sfLo /tmp/yubico-piv-tool.tar.gz.sig \
"https://developers.yubico.com/yubico-piv-tool/Releases/yubico-piv-tool-${YUBICO_PIV_TOOL_VERSION}.tar.gz.sig" && \
# Check checksum
echo "$YUBICO_PIV_TOOL_SHA256 /tmp/yubico-piv-tool.tar.gz" | sha256sum -c && \
# Verify signature
export GNUPGHOME="$(mktemp -d)" && \
gpg --batch --import /tmp/yubico-piv-tool-signing-key.asc && \
gpg --batch --verify /tmp/yubico-piv-tool.tar.gz.sig /tmp/yubico-piv-tool.tar.gz && \
rm -rf "$GNUPGHOME" && \
# Extract and build
tar -xzf /tmp/yubico-piv-tool.tar.gz -C /tmp && \
mkdir /tmp/yubico-piv-tool-${YUBICO_PIV_TOOL_VERSION}/build && \
cd /tmp/yubico-piv-tool-${YUBICO_PIV_TOOL_VERSION}/build && \
cmake .. && \
make -j"$(nproc)" && \
make install && \
ldconfig && \
# Cleanup
rm -rf /tmp/yubico-piv-tool* && \
apt-get autoremove --purge -y && \
rm -rf /var/lib/apt/lists/*
COPY pkcs11_java.cfg /usr/local/etc/pkcs11_java.cfg
# There is no polkit daemon in the container to authorize pcscd clients
RUN echo 'PCSCD_ARGS="--disable-polkit"' >> /etc/default/pcscd
WORKDIR /build
File diff suppressed because it is too large. Load diff
@@ -1,840 +0,0 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
Comment: 1D73 08B0 055F 5AEF 3694 4A8F 27A9 C24D 9588 EA0F
Comment: Aveen Ismail <aveen.ismail@yubico.com>
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
GDRtn4xjO/BcsPEJhI9UGKIjwsF8BBgBCgAmAhsgFiEEHXMIsAVfWu82lEqPJ6nC
TZWI6g8FAl0//rYFCQOs62UACgkQJ6nCTZWI6g+k5Q/+Pm2X1IGOUuGv5jT8KoCs
A/3hkYG+hoIe4fhyJwS5Yzn6RVifiKOinoOQEy9Q3k1tl9hTGtGJrzw3YYyqg+y2
duQ4ac7Ka6D0/Gh4rA/trU5DlkOZqMicrcTvAIDMEutcsIeBojF7VWrFkO3oRU6q
3o0mf+llHocobZIKHq5VUfUxxxsSnqk/hgL8R7RsxdzZkfpGbMKUUKhYO4GOvWYU
WRbWKKJs+3hgnNlVRuvKExgQWL9cYd945AQWaJ8DDr8mUulsoKTJHDwbKTUN6m1o
pjEPK8yaKqW30BQcf2FSjgsYfSUgXc1kMSg/3c5oEBWjK301s3TNMqfQYatmppgC
qUoXB7Sc5c/BDVxRBH8MOrj2Ugqjsii3nvcitJ33VYM9hbmbzZvlYpJdxC6WHBtX
ueX2jMH2ve88E6nU5Tty0Gub7asFlkD6cRmDEm6jtKwF8qdp/5jwG1DvINwPFPt4
Bv9thfi7Y+gBR6BsFxJpYQjUbZIgt02e9dQhIPXQlvVdp0cOoPqMvGoGDu1m5nu3
vd0D7OBNfBBpcKBmQU1rw9/ekPHnUccE+CG1ogAZyh951Xb6B5uH3vfMyZzGwpRm
4Ww1nvSR5VRniwBiki2Ea579IRgI7LEnSlhtGTEfGaK00SR4rwXNOZ2Zn/s9Zu6L
FwAJtYe/bczhFxLvsWDfDJLCwXwEGAEKACYWIQQdcwiwBV9a7zaUSo8nqcJNlYjq
DwUCW3RGzgIbIAUJAeEzgAAKCRAnqcJNlYjqD5A8D/4+S48vjgD5Kd+n0P+WEZrC
44hmeym40OYPx573A2PwYj7Gr38P8UL3IgnLvWxPGgeJoJZh8QmwIJlcmWuATl/l
SPHHxHfpghN1TosbF5Kw1tBt5U5yP5k0obSooPOps4hUZT7KJ1KgEm4J59Bbb8Fo
6VAjCIHHykQGglK+KmgIlzDVv9A6z+ECvrrA3jdcn7uk4IeOtMAHCps/xbFmXN0h
7xIZ1vAktjYfz9SmKnW6T8rP5WAcyhAOHBpiZldy+FnTfS53ifLf+VBhfXy2n8JP
/P5XU12/Sevg+POkGeA9+Z7V13tM+5dz+Z6dzx3v+T4gkXbnvBhuNyPnNvkwDN5C
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
nxsARbNH/YY8TZjFsIK1IKrHSArxKnVzVacmbQ==
=J7F/
-----END PGP PUBLIC KEY BLOCK-----
+3 -2
View File
@@ -247,8 +247,9 @@ When building without the container on Linux systems, reproducibility depends on
To maximize reproducibility when building without the container:
- Build the app on a **Linux system or virtual machine**.
- Use the exact same versions of all build dependencies as specified in the [root Dockerfile](../../building/Dockerfile)
and [Android Dockerfile](../docker/Dockerfile). This includes for example Android SDK and NDK versions.
- Use the exact same versions of all build dependencies as specified in the [Android Dockerfile](../docker/Dockerfile)
and the setup scripts in [building](../../building) that it runs. This includes for example the Rust toolchain,
protobuf compiler, and Android SDK and NDK versions.
### How to verify reproducible builds across environments
@@ -28,7 +28,7 @@ case ${1-:""} in
android)
container_name="mullvadvpn-app-build-android"
containerfile_path="$REPO_DIR/android/docker/Dockerfile"
container_context_dir="$REPO_DIR/android/docker/"
container_context_dir="$REPO_DIR"
image_reference_file="building/android-container-image.txt"
;;
*)