# Copyright 2019, The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. FROM ubuntu:latest ARG UID ARG USER ARG SRCTOP ENV IS_CONTAINER=true ENV USER=${USER} # Installing AOSP essential packages and creating the local user. # The UID inside and outside must be the same. RUN useradd -mu ${UID} ${USER} && \ export DEBIAN_FRONTEND=noninteractive && \ apt-get update -qq && apt-get install -y \ git-core \ gnupg \ flex \ bison \ gperf \ build-essential \ zip \ unzip \ curl \ zlib1g-dev \ gcc-multilib \ g++-multilib \ libc6-dev-i386 \ lib32ncurses5-dev \ x11proto-core-dev \ libx11-dev \ lib32z-dev \ libgl1-mesa-dev \ libxml2-utils \ tzdata \ python-dev \ python3-dev \ xsltproc \ sudo # Configuring tzdata noninteractively RUN dpkg-reconfigure -f noninteractive tzdata && \ echo "${USER} ALL=(ALL:ALL)NOPASSWD: ALL" > /etc/sudoers.d/${USER} && \ mkdir ${SRCTOP} && chown -R ${USER} ${SRCTOP} RUN curl https://storage.googleapis.com/git-repo-downloads/repo > /bin/repo && chmod +x /bin/repo ENV LANG=C.UTF-8 USER ${USER} WORKDIR ${SRCTOP}