aboutsummaryrefslogtreecommitdiffstats
path: root/tools/docker
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2021-10-12 18:10:32 +0200
committerDmitry Vyukov <dvyukov@google.com>2021-10-13 08:49:25 +0200
commit69d5bff89c8967357d2d4467f011380d7eecfb7d (patch)
treea8964b0a14d6578d52fa5454de507fbdc805fb21 /tools/docker
parent08362356376a3cfad8ed045e808ab6e66b79be1f (diff)
tools/docker: switch from buster to bullseye
The gcc 8 and clang 7 provided by buster are too old to build kernel. Gcc 8 does not support MTE anymore and clang 7 is plain unsupported. Update to bullseye which provides gcc 10 and clang 11.
Diffstat (limited to 'tools/docker')
-rw-r--r--tools/docker/big-env/Dockerfile15
-rw-r--r--tools/docker/env/Dockerfile14
2 files changed, 17 insertions, 12 deletions
diff --git a/tools/docker/big-env/Dockerfile b/tools/docker/big-env/Dockerfile
index f6fb21a3d..dbf8195db 100644
--- a/tools/docker/big-env/Dockerfile
+++ b/tools/docker/big-env/Dockerfile
@@ -32,9 +32,11 @@ FROM gcr.io/syzkaller/env
RUN dpkg --add-architecture i386 && \
apt-get update --allow-releaseinfo-change && \
- DEBIAN_FRONTEND=noninteractive apt-get install -y -q --no-install-recommends \
+ DEBIAN_FRONTEND=noninteractive apt-get install -y -q \
# required to build root images.
debootstrap ssh-tools qemu-user-static \
+ # required for gcloud sdk.
+ python2 \
&& \
apt-get -y autoremove && \
apt-get clean autoclean && \
@@ -48,9 +50,9 @@ ENV SOURCEDIR_NETBSD /syzkaller/netbsd
ENV SOURCEDIR_AKAROS /syzkaller/akaros
# Install gcloud sdk for dashboard/app tests.
-RUN curl https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-294.0.0-linux-x86_64.tar.gz | tar -C /usr/local -xz
+RUN curl https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-360.0.0-linux-x86_64.tar.gz | tar -C /usr/local -xz
ENV PATH /usr/local/google-cloud-sdk/bin:$PATH
-RUN gcloud components install --quiet app-engine-python app-engine-go cloud-datastore-emulator
+RUN gcloud components install --quiet app-engine-python app-engine-go app-engine-python-extras cloud-datastore-emulator
RUN chmod 0777 /usr/local/google-cloud-sdk
# Install Go 1.12 for local testing of the appengine app build.
@@ -65,10 +67,13 @@ RUN HOME=/syzkaller go1.12 download
# in particular it does not detect some warnings that later fire on OpenBSD.
# Install clang-14 from https://apt.llvm.org.
RUN apt-get install -y -q gnupg software-properties-common apt-transport-https
+# Without this I am getting error:
+# aptsources.distro.NoDistroTemplateException: Error: could not find a distribution template for Debian
+RUN apt-get install -y -q --reinstall base-files
RUN curl https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add -
-RUN add-apt-repository "deb http://apt.llvm.org/buster/ llvm-toolchain-buster main"
+RUN add-apt-repository "deb http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye main"
RUN apt-get update --allow-releaseinfo-change
-RUN apt-get remove -y -q clang-7
+RUN apt-get remove -y -q clang-11
RUN apt-get install -y -q --no-install-recommends clang-14
RUN apt autoremove -y -q
diff --git a/tools/docker/env/Dockerfile b/tools/docker/env/Dockerfile
index 83c537517..7cb35ecca 100644
--- a/tools/docker/env/Dockerfile
+++ b/tools/docker/env/Dockerfile
@@ -3,17 +3,17 @@
# See /tools/docker/README.md for details.
-FROM debian:buster
+FROM debian:bullseye
LABEL homepage="https://github.com/google/syzkaller"
-RUN dpkg --add-architecture i386 && \
- apt-get update --allow-releaseinfo-change && \
- DEBIAN_FRONTEND=noninteractive apt-get install -y -q --no-install-recommends \
- sudo make nano git curl ca-certificates clang-format clang-tidy binutils g++ clang \
+RUN apt-get update --allow-releaseinfo-change
+RUN DEBIAN_FRONTEND=noninteractive apt-get install -y -q --no-install-recommends \
+ sudo make python nano git curl ca-certificates \
+ clang-format clang-tidy binutils g++ clang \
g++-arm-linux-gnueabi g++-aarch64-linux-gnu g++-powerpc64le-linux-gnu \
g++-mips64el-linux-gnuabi64 g++-s390x-linux-gnu g++-riscv64-linux-gnu \
- libc6-dev:i386 linux-libc-dev:i386 lib32gcc-8-dev lib32stdc++-8-dev \
+ libc6-dev-i386 libc6-dev-i386-amd64-cross lib32gcc-10-dev lib32stdc++-10-dev \
# These are needed to build Linux kernel:
flex bison bc libelf-dev libssl-dev \
# qemu-user is required to run alien arch binaries in pkg/cover tests.
@@ -23,7 +23,7 @@ RUN dpkg --add-architecture i386 && \
apt-get clean autoclean && \
rm -rf /var/lib/apt/lists/{apt,dpkg,cache,log} /tmp/* /var/tmp/*
-RUN curl https://dl.google.com/go/go1.16.linux-amd64.tar.gz | tar -C /usr/local -xz
+RUN curl https://dl.google.com/go/go1.17.linux-amd64.tar.gz | tar -C /usr/local -xz
ENV PATH /usr/local/go/bin:/gopath/bin:$PATH
ENV GOPATH /gopath