tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

Dockerfile (1720B)


      1 # Dockerfile for running fuzzing tests.
      2 # Used for ASAN.
      3 # Note that when running this, you need to add `--cap-add SYS_PTRACE` to the
      4 # docker invocation or ASAN won't work.
      5 # On taskcluster for ASAN use `features: ["allowPtrace"]`.
      6 # See https://github.com/google/sanitizers/issues/764#issuecomment-276700920
      7 FROM ubuntu:noble-20240605
      8 LABEL maintainer="Martin Thomson <martin.thomson@gmail.com>"
      9 
     10 VOLUME /builds/worker/checkouts
     11 VOLUME /builds/worker/workspace
     12 VOLUME /builds/worker/.cache
     13 
     14 # %include-run-task
     15 
     16 ENV DEBIAN_FRONTEND noninteractive
     17 RUN dpkg --add-architecture i386
     18 RUN apt-get update \
     19 && apt-get install -y --no-install-recommends \
     20    build-essential \
     21    ca-certificates \
     22    clang \
     23    clang-tools \
     24    cmake \
     25    curl \
     26    g++-multilib \
     27    git \
     28    gyp \
     29    libboost-dev \
     30    libboost-dev:i386 \
     31    libclang-rt-dev \
     32    libsqlite3-dev \
     33    libsqlite3-dev:i386 \
     34    libxml2-utils \
     35    lib32z1-dev \
     36    linux-libc-dev:i386 \
     37    llvm-dev \
     38    locales \
     39    mercurial \
     40    ninja-build \
     41    pkg-config \
     42    python-is-python3 \
     43    python3-requests \
     44    python3-toml \
     45    unzip \
     46    valgrind \
     47    zlib1g-dev \
     48 && rm -rf /var/lib/apt/lists/* \
     49 && apt-get autoremove -y && apt-get clean -y
     50 
     51 ENV SHELL /bin/bash
     52 ENV USER worker
     53 ENV LOGNAME $USER
     54 ENV HOME /builds/worker
     55 ENV LANG en_US.UTF-8
     56 ENV LC_ALL $LANG
     57 ENV HOST localhost
     58 ENV DOMSUF localdomain
     59 
     60 RUN locale-gen $LANG \
     61 && dpkg-reconfigure locales
     62 
     63 RUN userdel ubuntu && \
     64    useradd -d $HOME -s $SHELL -m $USER && \
     65    mkdir -p /builds/worker/workspace && \
     66    mkdir -p /builds/worker/artifacts && \
     67    chown -R $USER: /builds/worker
     68 WORKDIR $HOME
     69 
     70 # Set a default command for debugging.
     71 CMD ["/bin/bash", "--login"]