tor-browser

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

privileged-setup.sh (2128B)


      1 #!/bin/bash
      2 # This Source Code Form is subject to the terms of the Mozilla Public
      3 # License, v. 2.0. If a copy of the MPL was not distributed with this
      4 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
      5 
      6 set -vex
      7 
      8 . ./updatebot-version.sh # Get UPDATEBOT_REVISION
      9 
     10 export DEBIAN_FRONTEND=noninteractive
     11 
     12 # Update apt-get lists
     13 apt-get update -y
     14 
     15 # Install dependencies
     16 apt-get install -y --no-install-recommends \
     17    ca-certificates \
     18    cloudsql-proxy \
     19    curl \
     20    ed \
     21    golang-go \
     22    gcc \
     23    libc6-dev \
     24    meson \
     25    php-cli \
     26    php-curl \
     27    python3-minimal \
     28    python3-wheel \
     29    python3-pip \
     30    python3-venv \
     31    python3-requests \
     32    python3-requests-unixsocket \
     33    python3-setuptools \
     34    openssh-client \
     35    rsync \
     36    wget
     37 
     38 mkdir -p /builds/worker/.mozbuild
     39 chown -R worker:worker /builds/worker/
     40 export GOPATH=/builds/worker/go
     41 
     42 # Install specific version of Arcanist
     43 pushd /builds/worker/.mozbuild/
     44 git clone https://github.com/phacility/arcanist.git
     45 cd arcanist
     46 git checkout e50d1bc4eabac9c37e3220e9f3fb8e37ae20b957
     47 ln -s /builds/worker/.mozbuild/arcanist/bin/arc /usr/local/bin/arc
     48 popd
     49 
     50 . install-node-for-pdfjs.sh
     51 
     52 # pdf.js setup
     53 # We want to aviod downloading a ton of packages all the time, so
     54 # we will preload the pdf.js repo (and packages) in the Docker image
     55 # and only update it at runtime. This means that the `./mach vendor`
     56 # behavior for pdf.js will also be kind of custom
     57 npm install -g gulp-cli
     58 cd /builds/worker/
     59 git clone https://github.com/mozilla/pdf.js.git
     60 cd /builds/worker/pdf.js
     61 npm ci --legacy-peer-deps
     62 
     63 # seed a v8 repository because it's large, and doing an update will
     64 # be much faster than a new clone each time.
     65 cd /builds/worker/
     66 git clone https://github.com/v8/v8.git
     67 
     68 # Check out source code
     69 cd /builds/worker/
     70 git clone https://github.com/mozilla-services/updatebot.git
     71 cd updatebot
     72 git checkout "$UPDATEBOT_REVISION"
     73 
     74 # Set up dependencies
     75 cd /builds/worker/
     76 chown -R worker:worker .
     77 chown -R worker:worker .*
     78 
     79 python3 -m pip install --break-system-packages -U pip
     80 python3 -m pip install --break-system-packages poetry==2.1.1
     81 
     82 rm -rf /setup