[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[tor-bugs] #17379 [Tor Browser]: Using the same build process in Tor Browser and Tor Messenger
#17379: Using the same build process in Tor Browser and Tor Messenger
-----------------------------+-------------------
Reporter: boklm | Owner: boklm
Type: task | Status: new
Priority: Medium | Milestone:
Component: Tor Browser | Version:
Severity: Normal | Keywords:
Actual Points: | Parent ID:
Points: | Sponsor:
-----------------------------+-------------------
The current Tor Browser build process is using gitian to run the build
inside virtual machines, with some shell scripts to download and verify
dependencies.
Tor Messenger is using a different system to do that.
To make maintenance easier, we should try to use the same tools in both
projects.
I think one of the main advantages of the way we are building in tor-
messenger is that we can do faster builds as we rebuild only what is
necessary. All components are built separately, with all built components
having an identifier in their filename that is a hash of all their
dependencies (build script, commit hash, source tarballs,
distribution used in the container, additional packages installed). We
only rebuild a component when its identifier has changed. We currently
only have one branch on tor messenger, but with multiple branches (alpha,
beta, nightly, etc ...) it would be possible to build the different
branches from the same build repository and share the components that are
identical.
An other advantage of splitting the build of each component is to be able
to share them between different projects. For instance we are also
building a Tor Mail bundle from the same repository and sharing some of
the components. In the case of Tor Browser and Tor Messenger I think we
could share the compilers. Components can also be built differently
depending on which project they are built for, for instance tor-launcher
is patched to use a different control port for tor-mail and tor-messenger:
https://gitweb.torproject.org/tor-messenger-build.git/tree/projects/tor-
launcher/controlport.patch.tmpl
https://gitweb.torproject.org/tor-messenger-build.git/tree/rbm.conf#n74
I will open child tickets to list all the tasks that need to be done if we
want Tor Browser to use the same build process as Tor Messenger.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/17379>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
_______________________________________________
tor-bugs mailing list
tor-bugs@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs