Skip to content
GitLab
  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • TPA team TPA team
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Issues 175
    • Issues 175
    • List
    • Boards
    • Service Desk
    • Milestones
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
  • Wiki
    • Wiki
  • Activity
  • Create a new issue
  • Issue Boards
Collapse sidebar
  • The Tor Project
  • TPA
  • TPA teamTPA team
  • Issues
  • #34122
Closed
Open
Created May 05, 2020 by Matthew Finkel@sysrqb

Create two Tor Browser build machines

Currently, Tor Browser developers have access to one external machine for building Tor Browser. We'd like two new build machines that are maintained by TPA. This will allow us to run parallel builds, and confirm reproducibility of the resulting builds.

The resource requirements for the machines are quite large:

  • For storage: 200GB should be an okay starting point
  • For memory: we'll need at least 16 GB.
  • For CPUs: at least two, but more would be better

The package requirements are documented here: https://gitweb.torproject.org/builders/tor-browser-build.git/tree/README#n20

apt-get install libyaml-libyaml-perl libtemplate-perl \
                  libio-handle-util-perl libio-all-perl \
                  libio-captureoutput-perl libjson-perl libpath-tiny-perl \
                  libstring-shellquote-perl libsort-versions-perl \
                  libdigest-sha-perl libdata-uuid-perl libdata-dump-perl \
                  libfile-copy-recursive-perl libfile-slurp-perl git runc \
                  mercurial

Currently, the default Tor Browser build system (tor-browser-build) requires the user have (essentially) full sudo permissions (legacy/trac#23631 (moved)) due to its underlying use of runc for creating deterministic build environments.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking