golang.org/x/build@v0.0.0-20240506185731-218518f32b70/env/linux-x86-sid/Dockerfile (about) 1 # Copyright 2014 The Go Authors. All rights reserved. 2 # Use of this source code is governed by a BSD-style 3 # license that can be found in the LICENSE file. 4 5 FROM golang/buildlet-stage0 AS stage0 6 7 FROM debian:sid 8 MAINTAINER golang-dev <golang-dev@googlegroups.com> 9 10 ENV DEBIAN_FRONTEND noninteractive 11 12 # gdb: optionally used by runtime tests for gdb 13 # strace: optionally used by some net/http tests 14 # gcc libc6-dev: for building Go's bootstrap 'dist' prog 15 # gfortran: for compiling cgo with fortran support (multilib for 386) 16 # libc6-dev-i386 gcc-multilib: for 32-bit builds 17 # procps lsof psmisc: misc basic tools 18 # libgles2-mesa-dev libopenal-dev fonts-droid-fallback: required by x/mobile repo 19 # upx: executable compressor, needed to test for go binaries compatibility 20 # qemu-user: QEMU (machine emulator and virtualizer) user-space emulation 21 RUN apt-get update && apt-get install -y \ 22 --no-install-recommends \ 23 libcrypt1 \ 24 ca-certificates \ 25 curl \ 26 gdb \ 27 strace \ 28 gcc \ 29 libc6-dev \ 30 gfortran \ 31 gfortran-multilib \ 32 libc6-dev-i386 \ 33 gcc-multilib \ 34 procps \ 35 lsof \ 36 psmisc \ 37 libgles2-mesa-dev \ 38 libopenal-dev \ 39 fonts-droid-fallback \ 40 upx \ 41 qemu-user \ 42 netbase \ 43 openssh-server \ 44 make \ 45 sudo \ 46 iproute2 \ 47 && rm -rf /var/lib/apt/lists/* 48 49 # Otherwise we get "Missing privilege separation directory: /run/sshd" ... 50 RUN mkdir --mode=0700 /run/sshd 51 52 RUN mkdir -p /go1.4-amd64 \ 53 && ( \ 54 curl --silent https://storage.googleapis.com/golang/go1.4.3.linux-amd64.tar.gz | tar -C /go1.4-amd64 -zxv \ 55 ) \ 56 && mv /go1.4-amd64/go /go1.4 \ 57 && rm -rf /go1.4-amd64 \ 58 && rm -rf /go1.4/pkg/linux_amd64_race \ 59 /go1.4/api \ 60 /go1.4/blog \ 61 /go1.4/doc \ 62 /go1.4/misc \ 63 /go1.4/test \ 64 && find /go1.4 -type d -name testdata | xargs rm -rf 65 66 COPY --from=stage0 /go/bin/* /usr/local/bin/ 67 68 CMD ["/usr/local/bin/run-worker.sh"]