我希望 Ubuntu 自动使用 Tor 浏览器作为其默认浏览器。由于它是从脚本启动的start-tor-browser
,并且可能不是像 Firefox 或 Chrome 那样真正“安装”的,因此即使查看了以下相关答案,我也不知道该如何操作:
如何将 Tor 浏览器设置为 Ubuntu 中的默认浏览器,并在 Tor 浏览器中以“新窗口”形式打开相应的文件,即使 Tor 浏览器已经启动、运行且连接?
Ubuntu 14.04
答案1
全系统变革
默认浏览器由 x-www-browser 替代方案决定。
为了将 Tor 浏览器添加到可用选项列表中,您必须运行此命令:
sudo update-alternatives --install /usr/bin/x-www-browser x-www-browser /path/to/torbrowser/executable 1
然后,您需要使用以下方法将其选择为默认值
sudo update-alternatives --config x-www-browser
您也可以对 gnome-www-browser 执行相同操作。
请注意,这是系统范围的更改。如果您只想为您的用户更改它,请告诉我。
仅为单个用户更改
为了将其设置为单个用户的默认设置,可能需要做更多的工作(但不多)。
gedit ~/.local/share/applications/torbrowser.desktop
将以下内容粘贴到文件中并保存(请务必使用 Tor 浏览器脚本的真实路径):
[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon[en_US]=browser
Name[en_US]=Tor Browser
Exec=/path/to/tor/browser
Name=Tor Browser
Icon=browser
然后执行命令:
xdg-settings set default-web-browser torbrowser.desktop
答案2
此方法将 Tor 浏览器设置为单个用户的默认浏览器。它还使 Tor 浏览器在从操作系统打开链接时打开新选项卡。
作为单个脚本
此脚本应具有与手动按照其下方说明相同的效果。要执行它,需要将环境变量TOR_BROWSER_PATH
设置为您的PATH/TO/tor-browser_LANG
。
#!/bin/bash
set -e
set -x
mkdir -p ~/.local/share/applications
cat > ~/.local/share/applications/torbrowser.desktop << EOF
[Desktop Entry]
Type=Application
Name=Tor Browser
GenericName=Web Browser
Comment=Tor Browser is +1 for privacy and -1 for mass surveillance
Categories=Network;WebBrowser;Security;
Exec=$(realpath "$TOR_BROWSER_PATH")/Browser/start-tor-browser --detach --allow-remote %u
Icon=$(realpath "$TOR_BROWSER_PATH")/Browser/browser/chrome/icons/default/default128.png
StartupWMClass=Tor Browser
MimeType=x-scheme-handler/unknown;x-scheme-handler/about;x-scheme-handler/https;x-scheme-handler/http;text/html;
EOF
update-desktop-database ~/.local/share/applications
xdg-settings set default-web-browser torbrowser.desktop
mkdir -p ~/.local/bin
cat > ~/.local/bin/firefox << 'EOF'
#!/bin/bash
/usr/bin/firefox --no-remote "$@"
EOF
chmod u+x ~/.local/bin/firefox
if ! (echo "$PATH" | tr ":" "\n" | grep ~/.local/bin); then
cat >> ~/.profile << 'EOF'
if [ -d "$HOME/.local/bin" ] ; then
PATH="$HOME/.local/bin:$PATH"
fi
EOF
fi
您可能需要从 Linux 注销并重新登录才能应用这些设置。
手动配置
设置 Tor 浏览器
打开终端应用程序。然后在终端中输入或复制粘贴以下命令:
mkdir -p ~/.local/share/applications
gedit ~/.local/share/applications/torbrowser.desktop
在打开的编辑器中插入以下内容:
[Desktop Entry]
Type=Application
Name=Tor Browser
GenericName=Web Browser
Comment=Tor Browser is +1 for privacy and -1 for mass surveillance
Categories=Network;WebBrowser;Security;
Exec=PATH/TO/tor-browser_LANG/Browser/start-tor-browser --detach --allow-remote %u
Icon=PATH/TO/tor-browser_LANG/Browser/browser/chrome/icons/default/default128.png
StartupWMClass=Tor Browser
MimeType=x-scheme-handler/unknown;x-scheme-handler/about;x-scheme-handler/https;x-scheme-handler/http;text/html;
PATH/TO/tor-browser_LANG
用适当的路径替换。
保存文件并关闭编辑器。然后在终端中运行以下命令:
update-desktop-database ~/.local/share/applications
xdg-settings set default-web-browser torbrowser.desktop
完成!现在你的启动器菜单中应该有 Tor 浏览器了。
尝试使用以下命令从终端打开链接。它现在应该在 Tor 浏览器中打开。确保之前没有打开其他标准 Firefox 窗口。
xdg-open "https://askubuntu.com"
与标准 Firefox 共存
由于 Tor 浏览器在底层使用了经过修改的 Firefox,并且 Firefox 尝试以单个实例运行,因此链接现在可以在已经运行的 Firefox 实例中打开,而不是在 Tor 浏览器中打开。为了解决这个问题,我们需要要求标准 Firefox 不接受远程命令。
在终端中,运行以下命令:
mkdir -p ~/.local/bin
gedit ~/.local/bin/firefox
将其粘贴到编辑器中:
#!/bin/bash
/usr/bin/firefox --no-remote "$@"
保存并关闭,然后运行以下命令:
chmod u+x ~/.local/bin/firefox
echo "$PATH" | tr ":" "\n" | grep ~/.local/bin
如果最后一条命令确实有一行(粗体红色)包含.local/bin
输出,则表示您已完成此操作。如果没有,请运行以下命令:
gedit ~/.profile
将其添加到文件末尾,保存并关闭:
if [ -d "$HOME/.local/bin" ] ; then
PATH="$HOME/.local/bin:$PATH"
fi
您可能需要从 Linux 注销并重新登录才能应用这些设置。
我发现这种方法的唯一限制是,无法从 Firefox 外部在正在运行的标准 Firefox 实例中打开新选项卡。
系统范围的安装
出于隐私原因(不太确定),不建议在系统范围内安装 Tor 浏览器。
答案3
我用的是Ubuntu 17.10。试了很多方法都没用。终于找到了解决办法。
去系统设置 > 详细信息 > 默认应用程序并选择系统默认使用的应用程序。