summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorDavid Lönnhager <david.l@mullvad.net>2021-03-08 16:12:55 +0100
committerDavid Lönnhager <david.l@mullvad.net>2021-03-10 10:29:57 +0100
commit156849174f40fb1284908193eaeaece85c14a930 (patch)
treece168c532f053881978578f0274aa2426dbce4c0
parenta094c8158a3ba3969bf6a23faf0e2a29ab40f5e5 (diff)
downloadmullvadvpn-156849174f40fb1284908193eaeaece85c14a930.tar.xz
mullvadvpn-156849174f40fb1284908193eaeaece85c14a930.zip
Version Dockerfile for Android
-rw-r--r--wireguard/libwg/Dockerfile47
1 files changed, 47 insertions, 0 deletions
diff --git a/wireguard/libwg/Dockerfile b/wireguard/libwg/Dockerfile
new file mode 100644
index 0000000000..1e7422edab
--- /dev/null
+++ b/wireguard/libwg/Dockerfile
@@ -0,0 +1,47 @@
+# To build the image:
+# docker build . -t quay.io/mullvad/mullvad-android-app-build
+# To push the image to Quay.io:
+# docker push quay.io/mullvad/mullvad-android-app-build
+
+FROM debian@sha256:75f7d0590b45561bfa443abad0b3e0f86e2811b1fc176f786cd30eb078d1846f
+
+RUN apt-get update -y && apt-get install -y \
+ curl \
+ file \
+ gcc \
+ git \
+ make \
+ python \
+ unzip
+
+# Install Android NDK
+RUN cd /tmp && \
+ curl -sf -L -O https://dl.google.com/android/repository/android-ndk-r20-linux-x86_64.zip && \
+ test $(sha256sum android-ndk-r20-linux-x86_64.zip | cut -f1 -d' ') = "57435158f109162f41f2f43d5563d2164e4d5d0364783a9a6fab3ef12cb06ce0" && \
+ mkdir /opt/android && \
+ cd /opt/android && \
+ unzip -q /tmp/android-ndk-r20-linux-x86_64.zip && \
+ rm /tmp/android-ndk-r20-linux-x86_64.zip
+
+
+ENV ANDROID_NDK_HOME="/opt/android/android-ndk-r20"
+
+
+# Install Go-lang and patch it to use the appropriate monotonic clock
+COPY goruntime-boottime-over-monotonic.diff /opt/goruntime-boottime-over-monotonic.diff
+RUN cd /tmp && \
+ curl -sf -L -O https://dl.google.com/go/go1.13.3.linux-amd64.tar.gz && \
+ echo "0804bf02020dceaa8a7d7275ee79f7a142f1996bfd0c39216ccb405f93f994c0 go1.13.3.linux-amd64.tar.gz" | sha256sum --check && \
+ cd /opt && \
+ tar -xzf /tmp/go1.13.3.linux-amd64.tar.gz && \
+ rm /tmp/go1.13.3.linux-amd64.tar.gz && \
+ patch -p1 -f -N -r- -d "/opt/go" < /opt/goruntime-boottime-over-monotonic.diff
+
+ENV PATH=${PATH}:/opt/go/bin
+ENV GOROOT=/opt/go
+ENV GOPATH=/opt/go-path
+
+RUN apt-get remove -y curl && \
+ apt-get autoremove -y
+
+ENTRYPOINT []