Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • janitor-team/proposed/torbrowser-launcher
  • nirgal/torbrowser-launcher
  • birger/torbrowser-launcher
  • pkg-privacy-team/torbrowser-launcher
4 results
Show changes
Commits on Source (81)
Showing
with 147 additions and 254 deletions
name: Python
on:
push:
branches: [ develop ]
pull_request:
branches: [ develop ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install system dependencies
run: sudo apt-get install gettext python3 libgpgme-dev
- name: Install torbrowser-launcher
run: sudo pip3 install .
- name: Test torbrowser-launcher install
run: torbrowser-launcher -h
{
"python.formatting.provider": "black"
}
\ No newline at end of file
# Tor Browser Launcher Changelog
## 0.3.5
* Fix refreshing Tor Browser signing key in Flatpak package
* Fix issues with localization files
## 0.3.4
* Ship with latest version of the Tor Browser Developers OpenPGP public key
* Add several translations
* Various small bug fixes
## 0.3.3
* Switch to Web Key Directory to refresh signing key from torproject.org, because everything is broken
......
Tor Browser Launcher
https://github.com/micahflee/torbrowser-launcher/
Copyright (c) 2013-2017 Micah Lee <micah@micahflee.com>
Copyright (c) 2013-2021 Micah Lee <micah@micahflee.com>
Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation
......
......@@ -6,6 +6,8 @@
profile torbrowser_firefox @{torbrowser_firefox_executable} {
#include <abstractions/audio>
#include <abstractions/gnome>
#include <abstractions/ibus>
#include if exists <abstractions/vulkan>
# Uncomment the following lines if you want to give the Tor Browser read-write
# access to most of your personal files.
......@@ -36,6 +38,7 @@ profile torbrowser_firefox @{torbrowser_firefox_executable} {
/dev/ r,
/dev/shm/ r,
owner @{PROC}/@{pid}/cgroup r,
owner @{PROC}/@{pid}/environ r,
owner @{PROC}/@{pid}/fd/ r,
owner @{PROC}/@{pid}/mountinfo r,
......@@ -99,6 +102,7 @@ profile torbrowser_firefox @{torbrowser_firefox_executable} {
/sys/devices/system/cpu/present r,
/sys/devices/system/node/ r,
/sys/devices/system/node/node[0-9]*/meminfo r,
/sys/fs/cgroup/cpu,cpuacct/{,user.slice/}cpu.cfs_quota_us r,
deny /sys/devices/virtual/block/*/uevent r,
# Should use abstractions/gstreamer instead once merged upstream
......@@ -126,7 +130,6 @@ profile torbrowser_firefox @{torbrowser_firefox_executable} {
deny /sys/devices/system/cpu/*/cache/index[0-9]*/size r,
deny /run/user/[0-9]*/dconf/user rw,
deny /usr/bin/lsb_release x,
deny capability sys_admin,
# Silence denial logs about PulseAudio
deny /etc/pulse/client.conf r,
......@@ -148,5 +151,11 @@ profile torbrowser_firefox @{torbrowser_firefox_executable} {
# Yubikey NEO also needs this:
/sys/devices/**/hidraw/hidraw*/uevent r,
# Needed for Firefox sandboxing via unprivileged user namespaces
capability sys_admin,
capability sys_chroot,
owner @{PROC}/@{pid}/{gid,uid}_map w,
owner @{PROC}/@{pid}/setgroups w,
#include <local/torbrowser.Browser.firefox>
}
torbrowser-launcher (0.3.5-1) unstable; urgency=medium
* New upstream release 0.3.5
* debian/patches:
- Refresh patches.
- Cherry-pick patch from upstream: Fix U2F for Yubikey 5 tokens
- Cherry-pick patch from upstream: AppArmor: support Wayland display
protocol
-- Roger Shimizu <rosh@debian.org> Mon, 30 Aug 2021 03:09:41 +0900
torbrowser-launcher (0.3.3-6) unstable; urgency=medium
* debian/patches:
......
......@@ -9,7 +9,7 @@ Added since [419e5f7] to fix the extra dialog issue
1 file changed, 16 insertions(+), 13 deletions(-)
diff --git a/torbrowser_launcher/__init__.py b/torbrowser_launcher/__init__.py
index 800fe88..79875b2 100644
index bff3e8e..6cf50e8 100644
--- a/torbrowser_launcher/__init__.py
+++ b/torbrowser_launcher/__init__.py
@@ -37,6 +37,8 @@ from .common import Common, SHARE
......
......@@ -9,7 +9,7 @@ Added since [419e5f7] to fix the extra dialog issue
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/torbrowser_launcher/__init__.py b/torbrowser_launcher/__init__.py
index 79875b2..fd46d77 100644
index 6cf50e8..2e3743f 100644
--- a/torbrowser_launcher/__init__.py
+++ b/torbrowser_launcher/__init__.py
@@ -91,8 +91,7 @@ def main():
......
......@@ -7,24 +7,14 @@ platform.dist was deprecated a while ago and finally removed in Python
3.8. It was only used for a workaround for issue #128 (and #215) which
is no longer necessary, so just remove the use altogether.
---
setup.py | 37 ++++++++++++++++---------------------
1 file changed, 16 insertions(+), 21 deletions(-)
setup.py | 34 ++++++++++++++++------------------
1 file changed, 16 insertions(+), 18 deletions(-)
diff --git a/setup.py b/setup.py
index 1649eb4..5f58f82 100644
index 4e06e60..0b71b8e 100644
--- a/setup.py
+++ b/setup.py
@@ -34,9 +34,6 @@ from distutils.core import setup
SHARE = "share"
-# detect linux distribution
-distro = platform.dist()[0]
-
def file_list(path):
files = []
@@ -72,24 +69,22 @@ for root, dirs, files in os.walk(SHARE):
@@ -74,24 +74,22 @@ for root, dirs, files in os.walk(SHARE):
if files:
datafiles.append((root, [os.path.join(root, f) for f in files]))
......
From: Roger Shimizu <rosh@debian.org>
Date: Sun, 26 Apr 2020 18:25:52 +0900
Subject: Fix use case that enforce install of EN version on non-EN user
session
build_paths() is called before load_settings(), so it won't recognize
"force_en-US" setting.
Here we add build_paths() again after load_settings() to do the trick.
Closes: #842021
---
torbrowser_launcher/common.py | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/torbrowser_launcher/common.py b/torbrowser_launcher/common.py
index cae725e..a479d2b 100644
--- a/torbrowser_launcher/common.py
+++ b/torbrowser_launcher/common.py
@@ -175,6 +175,10 @@ class Common(object):
else:
language = self.language
+ if hasattr(self, 'settings') and self.settings['force_en-US']:
+ language = 'en-US'
+ else:
+ language = self.language
if tbb_version:
# tarball filename
if self.architecture == "x86_64":
From: Karl-Johan Karlsson <creideiki@ferretporn.se>
Date: Sun, 6 Jan 2019 13:58:43 +0100
Subject: Set language from LC_MESSAGES, not LC_CTYPE
Origin: https://github.com/micahflee/torbrowser-launcher/pull/383
Calling `locale.getlocale()` checks LC_CTYPE, which is not meant for
UI strings. Change the call to check LC_MESSAGES instead.
Also call `locale.setlocale()` first to import the locale settings
from the environment. This is not needed for LC_CTYPE due to
https://bugs.python.org/issue6203 but is required for LC_MESSAGES.
(cherry picked from commit cd8edcd637520d2a652dddbf0004b7eb96f4f748)
---
torbrowser_launcher/common.py | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/torbrowser_launcher/common.py b/torbrowser_launcher/common.py
index 1a05fb4..94ae39c 100644
--- a/torbrowser_launcher/common.py
+++ b/torbrowser_launcher/common.py
@@ -100,7 +100,8 @@ class Common(object):
"zh-CN",
"zh-TW",
]
- default_locale = locale.getlocale()[0]
+ locale.setlocale(locale.LC_MESSAGES, '')
+ default_locale = locale.getlocale(locale.LC_MESSAGES)[0]
if default_locale is None:
self.language = "en-US"
else:
From: Roger Shimizu <rosh@debian.org>
Date: Sun, 26 Apr 2020 18:25:52 +0900
Subject: Fix use case that enforce install of EN version on non-EN user
session
build_paths() is called before load_settings(), so it won't recognize
"force_en-US" setting.
Here we add build_paths() again after load_settings() to do the trick.
Closes: #842021
---
torbrowser_launcher/common.py | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/torbrowser_launcher/common.py b/torbrowser_launcher/common.py
index 94ae39c..13cb538 100644
--- a/torbrowser_launcher/common.py
+++ b/torbrowser_launcher/common.py
@@ -63,6 +63,7 @@ class Common(object):
self.mkdir(self.paths["dirs"][d])
self.load_mirrors()
self.load_settings()
+ self.build_paths()
self.mkdir(self.paths["download_dir"])
self.mkdir(self.paths["tbb"]["dir"])
self.init_gnupg()
@@ -144,6 +145,10 @@ class Common(object):
tbb_local = '{0}/torbrowser'.format(self.get_env('XDG_DATA_HOME', '{0}/.local/share'.format(homedir)))
old_tbb_data = '{0}/.torbrowser'.format(homedir)
+ if hasattr(self, 'settings') and self.settings['force_en-US']:
+ language = 'en-US'
+ else:
+ language = self.language
if tbb_version:
# tarball filename
if self.architecture == "x86_64":
@@ -151,10 +156,6 @@ class Common(object):
else:
arch = "linux32"
- if hasattr(self, "settings") and self.settings["force_en-US"]:
- language = "en-US"
- else:
- language = self.language
tarball_filename = (
"tor-browser-" + arch + "-" + tbb_version + "_" + language + ".tar.xz"
)
@@ -203,19 +204,19 @@ class Common(object):
+ "/tbb/"
+ self.architecture
+ "/tor-browser_"
- + self.language
+ + language
+ "/Browser/TorBrowser/Docs/ChangeLog.txt",
"dir": tbb_local + "/tbb/" + self.architecture,
"dir_tbb": tbb_local
+ "/tbb/"
+ self.architecture
+ "/tor-browser_"
- + self.language,
+ + language,
"start": tbb_local
+ "/tbb/"
+ self.architecture
+ "/tor-browser_"
- + self.language
+ + language
+ "/start-tor-browser.desktop",
},
}
......@@ -22,18 +22,18 @@ Closes: #983198
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/torbrowser_launcher/common.py b/torbrowser_launcher/common.py
index e8e8d39..fb8ad50 100644
index a479d2b..1be706e 100644
--- a/torbrowser_launcher/common.py
+++ b/torbrowser_launcher/common.py
@@ -64,6 +64,7 @@ class Common(object):
self.load_mirrors()
@@ -66,6 +66,7 @@ class Common(object):
self.load_settings()
# some settings require a path rebuild, like force_en-US
self.build_paths()
+ self.load_settings()
self.mkdir(self.paths["download_dir"])
self.mkdir(self.paths["tbb"]["dir"])
self.init_gnupg()
@@ -371,7 +372,10 @@ class Common(object):
@@ -409,7 +410,10 @@ class Common(object):
resave = False
# detect installed
......
From: Koala Yeung <koalay@gmail.com>
Date: Wed, 22 Apr 2020 21:52:18 +0800
Subject: Fix language fallback for Chinese (Hong Kong)
Origin: https://github.com/micahflee/torbrowser-launcher/pull/464
* Add a way to manually override the language detection
for some of the languages.
* Add manual language overriding for zh-HK (to zh-TW).
(cherry picked from commit e92e11e6d7cde178d4aad3635fe84a32e5a32069)
---
torbrowser_launcher/common.py | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/torbrowser_launcher/common.py b/torbrowser_launcher/common.py
index 13cb538..f16bdee 100644
--- a/torbrowser_launcher/common.py
+++ b/torbrowser_launcher/common.py
@@ -101,12 +101,20 @@ class Common(object):
"zh-CN",
"zh-TW",
]
+
+ # a list of manually configured language fallback overriding
+ language_overrides = {
+ 'zh-HK': 'zh-TW',
+ }
+
locale.setlocale(locale.LC_MESSAGES, '')
default_locale = locale.getlocale(locale.LC_MESSAGES)[0]
if default_locale is None:
self.language = "en-US"
else:
self.language = default_locale.replace("_", "-")
+ if self.language in language_overrides:
+ self.language = language_overrides[self.language]
if self.language not in available_languages:
self.language = self.language.split("-")[0]
if self.language not in available_languages:
......@@ -8,10 +8,10 @@ Subject: Update apparmor profile
2 files changed, 2 insertions(+)
diff --git a/apparmor/torbrowser.Browser.firefox b/apparmor/torbrowser.Browser.firefox
index a95d6e7..df34629 100644
index 6882f9d..e682d07 100644
--- a/apparmor/torbrowser.Browser.firefox
+++ b/apparmor/torbrowser.Browser.firefox
@@ -92,6 +92,7 @@ profile torbrowser_firefox @{torbrowser_firefox_executable} {
@@ -93,6 +93,7 @@ profile torbrowser_firefox @{torbrowser_firefox_executable} {
/usr/share/gnome/applications/ r,
/usr/share/gnome/applications/kde4/ r,
/usr/share/poppler/cMap/ r,
......
From: Jerome Charaoui <jerome@riseup.net>
Date: Mon, 9 Aug 2021 13:54:25 -0400
Subject: Fix U2F for Yubikey 5 tokens
(cherry picked from commit 508640ff05a7caf027b77fc3f260ade4a2b98d82)
---
apparmor/torbrowser.Browser.firefox | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/apparmor/torbrowser.Browser.firefox b/apparmor/torbrowser.Browser.firefox
index e682d07..0434c2b 100644
--- a/apparmor/torbrowser.Browser.firefox
+++ b/apparmor/torbrowser.Browser.firefox
@@ -147,7 +147,7 @@ profile torbrowser_firefox @{torbrowser_firefox_executable} {
/sys/class/ r,
/sys/bus/ r,
/sys/class/hidraw/ r,
- /run/udev/data/c24{7,9}:* r,
+ /run/udev/data/c24{5,7,9}:* r,
/dev/hidraw* rw,
# Yubikey NEO also needs this:
/sys/devices/**/hidraw/hidraw*/uevent r,
From: Roger Shimizu <rosh@debian.org>
Date: Wed, 9 Sep 2020 01:46:15 +0900
Subject: Use gpg instead of gpg2
Forwarded: https://github.com/micahflee/torbrowser-launcher/issues/529
Closes: #969901
---
torbrowser_launcher/common.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/torbrowser_launcher/common.py b/torbrowser_launcher/common.py
index f16bdee..e8e8d39 100644
--- a/torbrowser_launcher/common.py
+++ b/torbrowser_launcher/common.py
@@ -265,7 +265,7 @@ class Common(object):
# Fetch key from wkd, as per https://support.torproject.org/tbb/how-to-verify-signature/
p = subprocess.Popen(
[
- "gpg2",
+ "gpg",
"--status-fd",
"2",
"--homedir",
From: intrigeri <intrigeri@boum.org>
Date: Sun, 16 May 2021 14:00:51 +0000
Subject: AppArmor: allow usage of cgroups
Firefox uses cgroups to determine how many CPUs are available,
and gather other information it needs about the CPUs.
I did not investigate what are the consequences of Firefox
lacking this information. I suspect performance, and thus UX,
may be impacted.
closes #547
(cherry picked from commit 12477d3d5cb4438651d922f5feb7a5070b76b6d9)
Closes: #980155
---
apparmor/torbrowser.Browser.firefox | 2 ++
1 file changed, 2 insertions(+)
diff --git a/apparmor/torbrowser.Browser.firefox b/apparmor/torbrowser.Browser.firefox
index 57c0359..c00d4bb 100644
--- a/apparmor/torbrowser.Browser.firefox
+++ b/apparmor/torbrowser.Browser.firefox
@@ -36,6 +36,7 @@ profile torbrowser_firefox @{torbrowser_firefox_executable} {
/dev/ r,
/dev/shm/ r,
+ owner @{PROC}/@{pid}/cgroup r,
owner @{PROC}/@{pid}/environ r,
owner @{PROC}/@{pid}/fd/ r,
owner @{PROC}/@{pid}/mountinfo r,
@@ -99,6 +100,7 @@ profile torbrowser_firefox @{torbrowser_firefox_executable} {
/sys/devices/system/cpu/present r,
/sys/devices/system/node/ r,
/sys/devices/system/node/node[0-9]*/meminfo r,
+ /sys/fs/cgroup/cpu,cpuacct/user.slice/cpu.cfs_quota_us r,
deny /sys/devices/virtual/block/*/uevent r,
# Should use abstractions/gstreamer instead once merged upstream
From: travankor <travankor@tuta.io>
Date: Fri, 9 Jul 2021 21:02:55 -0700
Subject: AppArmor: support Wayland display protocol
When the environment variable MOZ_ENABLE_WAYLAND is set,
Firefox will try to use Wayland IPC sockets.
Closes #591
(cherry picked from commit a4bc9789b0d25c5d604e310f313d85ee15871a65)
---
apparmor/torbrowser.Browser.firefox | 3 +++
1 file changed, 3 insertions(+)
diff --git a/apparmor/torbrowser.Browser.firefox b/apparmor/torbrowser.Browser.firefox
index 0434c2b..57f6981 100644
--- a/apparmor/torbrowser.Browser.firefox
+++ b/apparmor/torbrowser.Browser.firefox
@@ -116,6 +116,9 @@ profile torbrowser_firefox @{torbrowser_firefox_executable} {
owner /{dev,run}/shm/org.chromium.* rw,
owner /dev/shm/org.mozilla.ipc.[0-9]*.[0-9]* rw, # for Chromium IPC
+ # Required for Wayland display protocol support
+ owner /dev/shm/wayland.mozilla.ipc.[0-9]* rw,
+
# Deny access to DRM nodes, that's granted by the X abstraction, which is
# sourced by the gnome abstraction, that we include.
deny /dev/dri/** rwklx,
From: intrigeri <intrigeri@boum.org>
Date: Sun, 16 May 2021 13:52:28 +0000
Subject: AppArmor: allow usage of the IBus input framework
closes #540
(cherry picked from commit 6d32fe1200d74d3cdc306429690823c3498c35d2)
Closes: #976084
---
apparmor/torbrowser.Browser.firefox | 1 +
1 file changed, 1 insertion(+)
diff --git a/apparmor/torbrowser.Browser.firefox b/apparmor/torbrowser.Browser.firefox
index c00d4bb..a95d6e7 100644
--- a/apparmor/torbrowser.Browser.firefox
+++ b/apparmor/torbrowser.Browser.firefox
@@ -6,6 +6,7 @@
profile torbrowser_firefox @{torbrowser_firefox_executable} {
#include <abstractions/audio>
#include <abstractions/gnome>
+ #include <abstractions/ibus>
# Uncomment the following lines if you want to give the Tor Browser read-write
# access to most of your personal files.