0

I am actually working on modifying some parts of Tor Browser for my project and for that I will need to build Tor Browser's source code. I was following this website and after cloning tor-browser-build repo, I did a make nightly-linux-x86_64, which took almost half a day to complete on my Ubuntu 18.04 system. But, since I would be making some changes to the browser (mostly Firefox code), I need to alter code and build multiple times.

In the above website, there is an option for 'Building Just Firefox' and I decided to try that. As per the above website/doc, I cloned tor-browser repo and followed the instructions. First, the command

make $CONFIGURE_ARGS -f client.mk configure CONFIGURE_ARGS="--with-tor-browser-version=tbb-nightly --with-distribution-id=org.torproject --enable-update-channel=default --enable-bundled-fonts"

gave me :

client.mk:40: /.mozconfig-client-mk: No such file or directory

client.mk:72: *** client.mk must be used via mach. Try running ./mach configure. Stop.

./mach configure was not working as well, but using this webpage, I patched the init.configure file and it worked. But now when I run ./mach build, it finally gives (after doing a lot of compilation):

Error

So could anyone please guide me as to how should I go about doing this. Basically as I had said in the beginning, I just want to modify and rebuild to test the new code that I would be introducing. Kindly help me out.

0

Finally I did it with the help of the Tor developers (they are really nice!).

So, as can be seen, the wiki has been updated now and the commands altered a bit. One needs to clone the appropriate branch and not just blindly do a git clone https://git.torproject.org/tor-browser.git, because this clones the master branch. Use the -b flag to clone a specific branch, say tor-browser-60.7.0esr-9.0-1 (latest at the time of writing this answer). Now all you need to do is :

  1. git clone https://git.torproject.org/tor-launcher.git

  2. mv tor-launcher browser/extensions/

  3. ./mach configure --with-tor-browser-version=tbb-nightly --with-distribution-id=org.torproject --enable-update-channel=default --enable-bundled-fonts
    If you don't have the packages, just do a ./mach bootstrap

  4. ./mach build

  5. ./mach build stage-package

  6. cp -a obj-*/dist/firefox/* path_to_tor_browser_directory/Browser/

There is one issue that I was facing though. I had the latest rust version, which was 1.35.0 and it won't build (would give me some macro related errors). I had to downgrade rust to v1.29.1 and it worked.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.