My system comes with Firefox as its browser and I have installed Tor Browser for my user. It took me a while to determine how to register Tor Browser as GNOME's default browser (Settings > Details > Default Applications > Web), but I was able to accomplish it via the command line:

xdg-settings set default-web-browser 'Tor Browser.desktop' # or whatever name your Tor Browser Desktop file has

However, even after setting Tor Browser as the default Web Browser, I found that URLs from external programs were opening still in my regular (non-TOR) Firefox instance, rather than opening in Tor Browser or even starting Tor Browser if it was not running. How can I configure my account to use Tor Browser to open URLs by default, but still use normal Firefox concurrently?


1 Answer 1


Tor Browser (as of Version 10) uses Firefox as a base, so essentially, you have two instances of Firefox running, and thus you are asking how to specify one instance of Firefox to handle URLs. The answer lies in the --no-remote argument:

> firefox --help | grep remote
  --no-remote        Do not accept or send remote commands; implies --new-instance.

You have to run the non-TOR Firefox instance with the --no-remote option and run Tor Browser without the --no-remote option (using a Tor-Browser-specific --allow-remote option, since Tor Browser defaults to --no-remote).


To start the non-TOR Firefox instance, I created a new Desktop Entry for Firefox with the /usr/share/applications/firefox.desktop file as a base, but changed the following keys:

[Desktop Entry]
Name=Firefox (Yield to TOR)
Exec=firefox --no-remote %u

Then, I put the Desktop entry I created in my user Applications directory:

cp firefox-tor-friend.desktop ~/.local/share/applications/

Tor Browser

On installation, Tor Browser generates a Desktop Entry for itself (~/.local/share/applications/torbrowser.desktop or similar) with an Exec key value like:

Exec=sh -c '"/path/to/tor-browser/Browser/start-tor-browser" --detach || ([ !  -x "/path/to/tor-browser/Browser/start-tor-browser" ] && "$(dirname "$*")"/Browser/start-tor-browser --detach)' dummy %k
X-TorBrowser-ExecShell=./Browser/start-tor-browser --detach

This command doesn't pass URLs and implicitly uses the --no-remote option. To enable these features, I changed the Exec key value to:

Exec=sh /path/to/tor-browser/Browser/start-tor-browser --allow-remote %u
X-TorBrowser-ExecShell=./Browser/start-tor-browser --allow-remote --detach

The Tor Project wants every Tor Browser to look as similar as possible, so if I've compromised something by changing the Exec key in this way, let me know. But, use this alteration to Tor Browser at your own risk.

Having modified the Desktop Entries for both Firefox and Tor Browser, Tor Browser then handles my external URLs like I would expect.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .