tor-commits
Threads by month
- ----- 2025 -----
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
November 2020
- 16 participants
- 1820 discussions

14 Nov '20
commit 0b8a55ae92bcafd8e6c855329f1008ea65d4e22f
Author: Matthew Finkel <sysrqb(a)torproject.org>
Date: Fri Nov 13 18:10:23 2020 +0000
Release preparations for 10.5a4
Versions bump and Changelog update
---
projects/android-components/config | 4 +-
.../gradle-dependencies-list.txt | 8 +-
projects/fenix/config | 4 +-
projects/fenix/gradle-dependencies-list.txt | 354 ++++++++++-----------
projects/firefox-langpacks/config | 2 +-
projects/firefox/config | 2 +-
projects/geckoview/config | 2 +-
projects/tba-translation/config | 2 +-
.../tor-browser/Bundle-Data/Docs/ChangeLog.txt | 23 ++
projects/tor/config | 2 +-
rbm.conf | 4 +-
11 files changed, 214 insertions(+), 193 deletions(-)
diff --git a/projects/android-components/config b/projects/android-components/config
index e8dc2ab..4d94db0 100644
--- a/projects/android-components/config
+++ b/projects/android-components/config
@@ -8,12 +8,12 @@ gpg_keyring: torbutton.gpg
variant: '[% IF c("var/release") %]Release[% ELSE %]Beta[% END %]'
var:
- android_components_version: 63.0.1
+ android_components_version: 63.0.8
torbrowser_branch: 10.5
container:
use_container: 1
# This should be updated when the list of gradle dependencies is changed.
- gradle_dependencies_version: 8
+ gradle_dependencies_version: 9
# Switch to make it easier to grab all dependencies during a dry-run.
fetch_gradle_dependencies: 0
gradle_version: 6.6.1
diff --git a/projects/android-components/gradle-dependencies-list.txt b/projects/android-components/gradle-dependencies-list.txt
index a9ce927..a37011f 100644
--- a/projects/android-components/gradle-dependencies-list.txt
+++ b/projects/android-components/gradle-dependencies-list.txt
@@ -400,12 +400,12 @@ d87cd2eea092430c4e5a95ff04c3213be89f54aa61c2c7f80fb6548e6dc38bab | https://maven
dbd706151fe820ed233792a6773b70efcceb42987c209e27575ef91d4552b8c4 | https://maven.mozilla.org/maven2/org/mozilla/components/support-ktx/56.0.0/…
22934a560b0bc34f01304efbdccc988d2e0fca039ae577894fcec52a7fdfd88e | https://maven.mozilla.org/maven2/org/mozilla/components/support-utils/56.0.…
a2c1e39e5e58f585c2908af2266953b6b43e51f2fabe45e7723bc177c9c49bc0 | https://maven.mozilla.org/maven2/org/mozilla/components/support-utils/56.0.…
-2a8adfa266cdfc0b48b4fa16d19219352cd77a5a9d655dd567ec4592598d9f3b | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview-beta/83.0.…
-c44f2bb3473956d2e673c05d8f2a6a299a8df357c3f9f22e489127488ff5d692 | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview-beta/83.0.…
+677281ce6616d67c6711dfdd594b7c7e318ddb6d2df1dbeaaa74e66e089dfe97 | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview-beta/83.0.…
+a2c7bc151dd1b3acafbcf718fa4da42a388ce3324fb9fcee93727dc9ea006366 | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview-beta/83.0.…
92ba04c556a1ad2e68c4df484325bb80356cebfb0acd8199e363d8e952b08a8f | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview-nightly/84…
ebdd8cd37e94d73d16bec80e21766c72ad8980449d7033a5dd507dd5ca9a0695 | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview-nightly/84…
-5731f31ff90a090745ebaaaf3f07b4f590e230202289bea9a70e92a6d735675a | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview/82.0.20201…
-3d741995e49c1979940d09fec6830491a5c1d9e43d4150b86ee4b43c827bc8e6 | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview/82.0.20201…
+4b9749ade5141f4284e0a99e01f33a2960b39a9f66275846caa83af3ec03f8df | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview/83.0.20201…
+7aba62adeff99576983f270bc396354420e69cc5a75bee3d8b52e42f4cd1125c | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview/83.0.20201…
e3b779d5f79c8012d62d3e43bfc2d577ca65439bcf7181c8ec333d0f3fc76890 | https://maven.mozilla.org/maven2/org/mozilla/telemetry/glean-forUnitTests/3…
6e0b82e4ed2fec26de9c9e68d6fa237d716177d9f9e7f6b1213699d7f55e73e6 | https://maven.mozilla.org/maven2/org/mozilla/telemetry/glean-forUnitTests/3…
5eb5d86577ecf64ba66df368c07dde772d1e82da63f25d73e63118d261ca7a7c | https://maven.mozilla.org/maven2/org/mozilla/telemetry/glean-gradle-plugin/…
diff --git a/projects/fenix/config b/projects/fenix/config
index c3bb039..f80565f 100644
--- a/projects/fenix/config
+++ b/projects/fenix/config
@@ -8,13 +8,13 @@ gpg_keyring: torbutton.gpg
variant: Beta
var:
- fenix_version: 83.0.0b2
+ fenix_version: 83.1.0
torbrowser_branch: 10.5
copyright_year: '[% exec("git show -s --format=%ci").remove("-.*") %]'
container:
use_container: 1
# This should be updated when the list of gradle dependencies is changed.
- gradle_dependencies_version: 10
+ gradle_dependencies_version: 11
# Switch to make it easier to grab all dependencies during a dry-run.
fetch_gradle_dependencies: 0
diff --git a/projects/fenix/gradle-dependencies-list.txt b/projects/fenix/gradle-dependencies-list.txt
index 8013616..4c18cbd 100644
--- a/projects/fenix/gradle-dependencies-list.txt
+++ b/projects/fenix/gradle-dependencies-list.txt
@@ -299,8 +299,6 @@ d08a8f5a678b2e7e22ad25200880cb209cf96c1f1bd91b703a3139632a63c2c7 | https://dl.go
160a290f3ebbf2ebe64589cebd70a566ef985a629957e575697ac7285b5fcd38 | https://dl.google.com/dl/android/maven2/com/android/zipflinger/4.0.1/zipfli…
1bfb68b9d898a682734faeaffaa86e3e63a1c70659438adfe7b38e63dec10ce2 | https://dl.google.com/dl/android/maven2/com/google/android/gms/oss-licenses…
02314144f98d892df6ebca9ae1a81bec24f416b3e9eefe8729de71acd5d119bd | https://dl.google.com/dl/android/maven2/com/google/android/gms/oss-licenses…
-380b09bfc5389fff93b5719c04e57c99678c9c3af0402a91e26d89734babcc49 | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service…
-d851ae0d9232951d36b1060eb8a3dc07ac5fcf668cb741b0a5a165c60519c898 | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service…
aca10c780c3219bc50f3db06734f4ab88badd3113c564c0a3156ff8ff674655b | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service…
1e663a4317c4d1b65fde180d29745fe9bb1c130fc06253ce2727cbe2e5e60532 | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service…
dd0980edf729e0d346e2b58e70801dc237c1aed0c7ab274fa3f1c8c8efc64cc7 | https://dl.google.com/dl/android/maven2/com/google/android/gms/play-service…
@@ -874,184 +872,184 @@ d583c72e82c4dc62c0ee4140e2c7e253e609c890f1c8c7dda5fb7ae726c04479 | https://maven
7cc2954d065c14e1a7cb49f8a4fb9b330f76c4ebc625d50f8a00d53e5f74bbbe | https://maven.mozilla.org/maven2/org/mozilla/appservices/syncmanager/63.0.0…
53f24189f0cff54e7b4937b6fd1e990b1ff8d9a52e8cc2b254852dabe08d1903 | https://maven.mozilla.org/maven2/org/mozilla/appservices/tabs/63.0.0/tabs-6…
a35dd95abca6750f590232a723f177c499b98c9640735ab1ab660327a4d0e3b1 | https://maven.mozilla.org/maven2/org/mozilla/appservices/tabs/63.0.0/tabs-6…
-a10d5f210fce21cfbc2fc102ca680c736dad1301a81eadfba0af04d630d75ad6 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-awesomebar/…
-0918fc7a2d5aa07ba884889afae974ddf53afa6b29ce847a03381917cb69d930 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-awesomebar/…
-96ba207d21b7f3ea35ed0d73e5a9ddc75235b7f047977fd862b653352b1f2561 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-domains/63.…
-e2304b2c0da4a448a8e9fec907ed078d73d5d297f96d1c79c15f9df8d356df4e | https://maven.mozilla.org/maven2/org/mozilla/components/browser-domains/63.…
-e51ca09a7636735596c2d75c468439e114c75222853fabb1061fb3c472d82e12 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck…
-608cc86f605572543287cba31902c0b0f7f97120caca0ba042d203beff7516db | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck…
-2927f45ec81bb0870e0bb4fc9549759f359b23e9974e8c69738a7967748649fe | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck…
-12dd4c4b028397bcf1a15c65548960fec81a91312ebfdf0e40279825c771e7f0 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck…
-5b32af510d67093b6d2a2aa786e9543fd282020a05f5b320e53a5334960de350 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck…
-bae39f4282cf8ce9607e5e211fe5d0dc904ecdc026cb10b3f97166156695ca44 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck…
-aa9519cbac4d22fc9dd419d271ab9ed1852ef68e58b4aa26fed16c43cac91dba | https://maven.mozilla.org/maven2/org/mozilla/components/browser-errorpages/…
-504e512768081ddb39413ccc1ad9c82ed7c3b8f5ab5ed0a247de2e361c3af25a | https://maven.mozilla.org/maven2/org/mozilla/components/browser-errorpages/…
-83461d5444505009997213a857fdd3f4329f6cec8e6cb73c0a1c3ad7d74f2e4b | https://maven.mozilla.org/maven2/org/mozilla/components/browser-icons/63.0.…
-f079a8f8179892e92c0ab9ebad70854c178b9443dc41c3b9d7a8ed15b4326915 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-icons/63.0.…
-fd8d45faece4ab36caaf2ef71b8fe49e3b08fcc161454a372ee07654dcbd34a8 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-menu/63.0.1…
-bbae1cd9e4d2cab1366807b0ad692ca050ccad540091e0369cc56c4ab29548a7 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-menu/63.0.1…
-ba2b1b5e11745a3eaacd891e33cfeed015d9d5292d44e8f515b2fa7f056c4115 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-menu2/63.0.…
-38c6103adc9a237aac1ec41a4da38c1995f74c4d75fb9a30c010470e079db4e0 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-menu2/63.0.…
-b3a1aa4fdd4b235548a4984b8a5283224b20687680a16a4a877bfaa106d3b8ca | https://maven.mozilla.org/maven2/org/mozilla/components/browser-search/63.0…
-1a6c6d11aa97dc5f73465bdfd6bfa538a935d805d9a368bfa0323ad555a4be55 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-search/63.0…
-6041603cd7410c6defc967fb218546b4b6d3ce59054e9ceed3ee5ddce8381b66 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-session/63.…
-720c6351992ce3b73716d75d7f715c07363c84462f7dc3f56928fd63dee5cb4e | https://maven.mozilla.org/maven2/org/mozilla/components/browser-session/63.…
-06407c0cfae8b787355297dbb1d6d41a3ca072a6ec76b1bb8183f0a07aa20b09 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-state/63.0.…
-4ba74c4e43c7fd64b351da8ff69181688dc4ff27975fb05ed549e984115c200f | https://maven.mozilla.org/maven2/org/mozilla/components/browser-state/63.0.…
-c65a683fcbe6d1a31863382d5b15ff30ea111fcc845e63367d2daa81368fd103 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-storage-syn…
-e25ec9f64e2abeaa80bb80defaea0e177529d1a2a1861cdd4dd3877e3a6464e3 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-storage-syn…
-674a6c6d869d9c40f7204480adc30e9856be4064499f9695ecf7e7229cff8b0b | https://maven.mozilla.org/maven2/org/mozilla/components/browser-tabstray/63…
-5e9a9cf164ac0a4fed968d0da48292ade694e627f821a86ed96a036d59d94173 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-tabstray/63…
-798081badfe0edfe91bf09be1d0f87a073b4b5e05006014cf9be861600cea7da | https://maven.mozilla.org/maven2/org/mozilla/components/browser-thumbnails/…
-014ab9aeff9f461ee23f64162fde7138f15093417f9e50d57caec987332ab8b2 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-thumbnails/…
-38db992b5b2f08bc3b084ced9af77fa232fe67a7b83da91d1202a56f4213fe4a | https://maven.mozilla.org/maven2/org/mozilla/components/browser-toolbar/63.…
-090c9c27556f563e3c27c8276bd6b1ef0b7d04c10f96db2fe5293bc2c32280a5 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-toolbar/63.…
-c09772c9db564df7cd0d6dbadd4daf8cb5181a807ad638cecd34062fd55c1bc6 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-awesomebar/…
-31b4c78684b3da64a8e95408e37d7865b4d56e2d44e13b690d0e2bd4d41421de | https://maven.mozilla.org/maven2/org/mozilla/components/concept-awesomebar/…
-bed8f538df3df9a61b38077b1a0bc7855c12b11d449a981769b7d7d34d3a2be9 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-base/63.0.1…
-ee6523490cf4bab174675acf96630c8a6c937e46e1470ae705e31f0b33842a86 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-base/63.0.1…
-ab775608d9b7ae7d041140341f1c2ebe343b64b178450b139da5c29b8f8d52fd | https://maven.mozilla.org/maven2/org/mozilla/components/concept-engine/63.0…
-ff3af64cc588a1d7f15fc5b8892d8aee4a37824796fe6b2e9230dbb5d6e6cd6a | https://maven.mozilla.org/maven2/org/mozilla/components/concept-engine/63.0…
-685e89d39c88c93e22d873667fbfc182873d171ab03ae285565867ba33961227 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-fetch/63.0.…
-093365b38bf29f72ef3189d73094910c85e799c34bfad77d9651e9eb36ff5274 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-fetch/63.0.…
-e9b778eb8417871e1ba8ac7ed81299a640b0100f646ee60171d3d57c32d6ddb2 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-menu/63.0.1…
-6427b9360d88ea09e9b22a74376ecf7271c17176b6e8c532a900879a4a57a4d4 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-menu/63.0.1…
-834ade77fd0fa0f314317ea9b78fe154143a98ef3b106cd7f363d9bf24b9929b | https://maven.mozilla.org/maven2/org/mozilla/components/concept-push/63.0.1…
-e36390e5ebd02d2b24b661c7f461035946a6076cb8036e624d9d66fe0bca0b11 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-push/63.0.1…
-cf426a1ee8adf7b0f2ebc718465a3e472286dd5db738b0ca26eed426a4024941 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-storage/63.…
-d65056ab7f74f0ba47b264bca66f7502686fff86080f64b01c09e870997497ad | https://maven.mozilla.org/maven2/org/mozilla/components/concept-storage/63.…
-4d280b735359a700b811f7a67abaff01711f41ea71ad29293c1c2f5dcae32e2f | https://maven.mozilla.org/maven2/org/mozilla/components/concept-sync/63.0.1…
-c750a18917a9e62b0eb28b0c5296dfa4dcb18c7bdcdc9f76fbb3e7ff3e4bd60f | https://maven.mozilla.org/maven2/org/mozilla/components/concept-sync/63.0.1…
-1ef9759642b7ce7554e742a53b2806f55be71963322434d3a6d1e963eacf9319 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-tabstray/63…
-9ffe864e99fa6f402d5ff95982d17698835d87fd78ad6b7fcd82342c4ceccc34 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-tabstray/63…
-2ee2349b44bd1db87ce3625b681d5f0df911824204dd232dec1d04c8449a877f | https://maven.mozilla.org/maven2/org/mozilla/components/concept-toolbar/63.…
-41263247135e41c856ef97aeaf7a8a8b40b7fc0118d50603cf57662f5c05d8f9 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-toolbar/63.…
-0793a76baad1732d9e9ecb457f219ce74c7c609c88146955e6514c1ac836d7fa | https://maven.mozilla.org/maven2/org/mozilla/components/feature-accounts-pu…
-4f2d4f045c1ec28c2077189f24f31c53017d7f14e66fd49cfbb982b6931397c7 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-accounts-pu…
-de9ffca0cd704855729d91f618123f790992c33ed1e0c53dc83fc1fe2f3ae378 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-accounts/63…
-e0b077d4cf67cd5a0b2ecc38a50a2c682e469bca7f2f1aaccae60013cf5def61 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-accounts/63…
-9521d21c2f419f67dc65f825432da1f2ecb40d11e680af9661b83ff89d404397 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-addons/63.0…
-23109adcd1aaac6c4d86025c5e26080329f109d5b42e674c16c811c2be3bf3ad | https://maven.mozilla.org/maven2/org/mozilla/components/feature-addons/63.0…
-dfb9948da30dab478bdac44ee66dedc817eee4a2f41f353a282cf93a5d9ea99b | https://maven.mozilla.org/maven2/org/mozilla/components/feature-app-links/6…
-58fdef65d9286baa078950643b03e0f29871df19e1f15f9c0eec92ad2a4c06d7 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-app-links/6…
-c95cea80901b39cea54cc1dd3766c2c5a546655f3852c20a96e075a518ed8c77 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-awesomebar/…
-edd8f83479c55304052cf585d1072f2f40298779f61b938e6c4cfd110bdf75f2 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-awesomebar/…
-c9121296918e58c61b69c18165844191d2b7c5d2e9f0e8c2e590b8e59731f107 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-contextmenu…
-83539d009a9718bc5e120a740336b293e961896d52c7caa58aea18228f2b4717 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-contextmenu…
-d7e014f9daeac48f913711043c52311984c218310d9fc46dbad5d1ad5217ae75 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-customtabs/…
-abadf0c0406a12b36ca58b4616dd28943ed9a0b7502101b610516b5cb091b925 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-customtabs/…
-8551e59c21ede1f827f78b9da94ace51d53e08d9d779bf0623a1898d1f95e95a | https://maven.mozilla.org/maven2/org/mozilla/components/feature-downloads/6…
-b285e23660dc5a44da8c81803cc7ba59077eddd33eab00397430a66297e702a2 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-downloads/6…
-80c26ccb8e6a1caf138544b889d54eeadb84f8d0a8ac55d6e4732d0442bc902e | https://maven.mozilla.org/maven2/org/mozilla/components/feature-findinpage/…
-005d3b476d2edf08398bae18127a6faaa1f1c970f392992257da1ea61324f6cf | https://maven.mozilla.org/maven2/org/mozilla/components/feature-findinpage/…
-09adc360f1fbe93c969ddb53ce8020cdffaebf2ae718c49c7410f9cf491aed70 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-intent/63.0…
-3fccb619771f8229423589f2ed0d60604aa1838f81a6ba858fae1e90f4de6160 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-intent/63.0…
-f079f3d751d3b0d66ee3916a9ac504b97cc6c54e0ea986ec0155cafb5d822ecf | https://maven.mozilla.org/maven2/org/mozilla/components/feature-logins/63.0…
-ca86a29d729a2eea83493227921ece4a0939ce603931f8b614541c11ee653ce3 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-logins/63.0…
-9d137d683b72406121c5ceb0d19e7981f15d98f701fe5afa5aa4ab12b9cef637 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-media/63.0.…
-cdc6c0c3478f2d398ceb6c2cfb1ae3b94dac1306024496e6a79a7fc05c39abd0 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-media/63.0.…
-8878d690e1f353eca7f13f15db9a2629c782b8a7e19aad55e98fc4687aed285c | https://maven.mozilla.org/maven2/org/mozilla/components/feature-privatemode…
-7c717cae89fe112e99a17dfd97ad64efd0c1749cc9f810ed96e3643187e575b1 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-privatemode…
-713e46409b8dd2ef29185bdb325ad3d0e6a9ffd46d3a572f6d43c42a2b584c1f | https://maven.mozilla.org/maven2/org/mozilla/components/feature-prompts/63.…
-224dfedfc3b272724cae4b2f5032a7506eaefce1eab4c95bd6c1af23f87065ea | https://maven.mozilla.org/maven2/org/mozilla/components/feature-prompts/63.…
-619b2acd091c9e0a7209f84fb0c27e93cfb2b8abdfd1fbf24ca59f0432d8942a | https://maven.mozilla.org/maven2/org/mozilla/components/feature-push/63.0.1…
-f722f43686c7ba2e29f3bc915baa26b3bdd174316fe8b23ed8b1fadde0d6e7e7 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-push/63.0.1…
-8dac461e536fa0563deeaefd1e80d37d51f3c3f61a5d7883f5f41eba1150bafb | https://maven.mozilla.org/maven2/org/mozilla/components/feature-pwa/63.0.1/…
-948678193286d8dd01258e6d5da4e8c39327dfd523bac003900c7b80ee1de3c0 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-pwa/63.0.1/…
-e05c2b4231d479f14abd5351176fb89d61620c68c921c796bcb3ae38dfba1f18 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-qr/63.0.1/f…
-18c9fcdcbd922a31b115c80e5fe92b5d4c3ca51fa27cf3ac22980a17935cf715 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-qr/63.0.1/f…
-2a43de018a3f6bf30bb46c87e0a3edf4d12c5e2757cdf2e50a8afcfcda9ac33c | https://maven.mozilla.org/maven2/org/mozilla/components/feature-readerview/…
-913436ab6a47876053b3eecd77b54342def244117c92dfb9c16b06c2de719c0b | https://maven.mozilla.org/maven2/org/mozilla/components/feature-readerview/…
-51dc3b1c158818e207f474275578f2115548ec68f881d177fdd5d26df45f84d9 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-recentlyclo…
-87922eee91de48fc73e3dd4e853318565dbc3005db109d126bdf39d9145d06b7 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-recentlyclo…
-946312f5f93168507d2c719639ee7a967b1f2a6ae6e9f4b0b83a2d4efad6e605 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-search/63.0…
-0c9f48556e2ac12813b21031e093370aa4d24c6ca4ae2e68647e3c39ddd05036 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-search/63.0…
-99c01f22204b449e2ecb4f7809b7edfd8661bc2efe30be09bb584c5feb27760a | https://maven.mozilla.org/maven2/org/mozilla/components/feature-session/63.…
-8e097d49232ba9160d4a12e69fc5c776a0a714a93894228238a7b998b69b3ab1 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-session/63.…
-692871cf1d65602814a0372024d1b8e6f1d22e9a86b72e4e0cc13573db42328c | https://maven.mozilla.org/maven2/org/mozilla/components/feature-share/63.0.…
-f8871c51887154ad1d460d2f58107fc000db2c757ad1c6ccf911e2e500b9fd89 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-share/63.0.…
-afb1c81eecf04069857f0e259810f7edae86c5150e520920ca7f07699384a9c2 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-sitepermiss…
-67ea640b0cfa851928df2529232466cf5ad8023ff2ec56fa15e851716ac09d9c | https://maven.mozilla.org/maven2/org/mozilla/components/feature-sitepermiss…
-b73ef22574f01ef481dceade81712cab2e56d3cbc09d0246821e5e41e475da66 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-syncedtabs/…
-29b584e0b527491f51b34d9fb1c5d4d793e5662ef0c1e3cda2f1620be775061b | https://maven.mozilla.org/maven2/org/mozilla/components/feature-syncedtabs/…
-f246ee2e74950e626a19fb95f9643b5d43083bcb203a459e6c8880b63531a7f0 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-tab-collect…
-46040ff08a0e454fba66a0b6bdc7e44c756b395856ecf931ece19be047fe75df | https://maven.mozilla.org/maven2/org/mozilla/components/feature-tab-collect…
-05d5d4b7b93424922944c58201e37b1d0fdfb59c3322d576c690a6509c9ab508 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-tabs/63.0.1…
-969197e286ffd33cfa11b5334f613b036eaefe1bad102be6ac954f4d7431f4d2 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-tabs/63.0.1…
-b856b4b014919d45a541e932e74ad5f614fd4bce16b854c15a7936680ec04286 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-toolbar/63.…
-4b266baac82c6f69b998939e4856ca62543edd1d16e1fb25f0f9aee3b5905e41 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-toolbar/63.…
-5e085ff5d1d752759fb33c9d74509e44f0a0136eec918df7fcb5a4f38ab7d3d3 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-top-sites/6…
-3e388e080a7db2592378240c1d4f0040e87b533f286e2857b8baa24eaddefcb4 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-top-sites/6…
-18fe05d36d86e945e92eda764d4415c083947c016b3031a97f89e66e2bbb9f7a | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webcompat-r…
-a5dc9416e16f5fb73bdcc66b6acbedccc577c063049a41c89db96db30fc830eb | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webcompat-r…
-b57537372e2dcbf9485eba1478d08dc2e1dab6da7ef5cd92d5d866e7f1253ca2 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webcompat/6…
-2cea2620db1878dfe3f4be68d85efb170dbba8fee03edc5ebd31b888f8d28720 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webcompat/6…
-478ac72aced73d74a2d496c67880eaf82b02ad2edd5c9204e381a7d7a66bdad3 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webnotifica…
-53d96b655dfe407eab8253ddde2e371c3bece434364706e15048e44a85a5bbfe | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webnotifica…
-f49e1fc18428ce672ff14c98b0f0a99f535f1dac06fd2b76ab3d533e9ce47d22 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-crash/63.0.1/li…
-91fb9e198d69dc1cdae2d218b972ebb247c158000dfb52809492cc61e162189b | https://maven.mozilla.org/maven2/org/mozilla/components/lib-crash/63.0.1/li…
-e835eb35d3e68f41fc4a79b523a6af00771597141bd78927d935c72903a664e7 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-dataprotect/63.…
-2ca5f2b8dc209a2c4fad743a2fc1dba78abe2f62a8cfe523bc52ab13450f6f71 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-dataprotect/63.…
-d4ff511e2ac82d4c77c71f91ee3f43d553c93729c9bab66504c9da5f1fc3dc97 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-fetch-httpurlco…
-de5c7e52eecc2fdcc45a220679397b879abe622d441ed198f39b8af424d5dc1b | https://maven.mozilla.org/maven2/org/mozilla/components/lib-fetch-httpurlco…
-c383aa95aeeb5a7f3734b2cfc8023bab19f74eaf13eeadee95c9b21ab057e224 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-publicsuffixlis…
-027ed06ab79c9607e357f4ecfd85538a552a4bfa9f0983b1a1c43d81493cceae | https://maven.mozilla.org/maven2/org/mozilla/components/lib-publicsuffixlis…
-fb5eecaaf1dfb64da14d4ffd3de7e713dfa702b9539dea54228ea43136a5f3c6 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-push-firebase/6…
-34c3fb0b372973a95504a6a1f16d809fe7bb872438049c99c0669cdbb076287c | https://maven.mozilla.org/maven2/org/mozilla/components/lib-push-firebase/6…
-0f258d10411b32ccf546850cf2bf09431b7ab14f28aafe8e278fba7147d062f2 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-state/63.0.1/li…
-4f7956c385d96df6cf8d0fc5ce68be90e8e0752027b350a162f6cb2ef1aa154b | https://maven.mozilla.org/maven2/org/mozilla/components/lib-state/63.0.1/li…
-68a674ded1b29ffbb61b8616c31a981dab92202b6a97a56d2c751a4eaef352bb | https://maven.mozilla.org/maven2/org/mozilla/components/service-digitalasse…
-f87321b38769dd1d9211132a51ba8bc6e1c41d40eb5fdbcffe019854678ec31c | https://maven.mozilla.org/maven2/org/mozilla/components/service-digitalasse…
-e22536ae6bdd9d02b84b8283cdd2aabb1404a4730bfdf96a7752b775074fb974 | https://maven.mozilla.org/maven2/org/mozilla/components/service-experiments…
-120be0bbe305ab213d467fb6d17eddb37bcabc12142d2c94299f3ef952aa1be5 | https://maven.mozilla.org/maven2/org/mozilla/components/service-experiments…
-3ee0916dc9076a20048ff184f42380d2cfc6ed55bacc007dc30cb1bfb80a5356 | https://maven.mozilla.org/maven2/org/mozilla/components/service-firefox-acc…
-24f07396a41be4cca5946b09c830c74f56c03b7d495162aec5234a860fb9a455 | https://maven.mozilla.org/maven2/org/mozilla/components/service-firefox-acc…
-377092988061736b0a6e8ddfd243fb9766598724abe0153767310ad2b0be86f5 | https://maven.mozilla.org/maven2/org/mozilla/components/service-glean/63.0.…
-e8b20494cac49e376141358b29ccf63bf68e62346386d39ac8f07d7060b2c353 | https://maven.mozilla.org/maven2/org/mozilla/components/service-glean/63.0.…
-c9eb670d9d2fdc96e82b8a2be22e17bdafed5458380a7828d087a95d227507c8 | https://maven.mozilla.org/maven2/org/mozilla/components/service-location/63…
-88e96664cb615fe0c85977943a52482f707a6006c4415b99bab3adf6cba6af84 | https://maven.mozilla.org/maven2/org/mozilla/components/service-location/63…
-9fc2bb91cc32089f66358a4c2f323528d8bc6830901f813a1fdc85d800601b2c | https://maven.mozilla.org/maven2/org/mozilla/components/service-sync-logins…
-7d08a9a97d884194899fd4ed958f82b8f6b48d5a6e1533f851781224cb04d6f6 | https://maven.mozilla.org/maven2/org/mozilla/components/service-sync-logins…
-e979fe0107092fbc6bec6052759206a1caf03e0c6f1e426de8f461148873ee00 | https://maven.mozilla.org/maven2/org/mozilla/components/support-base/63.0.1…
-c88e73643fa3dde1a89b33b00d5b7abd254c989d4631ea481ee7e20150793cae | https://maven.mozilla.org/maven2/org/mozilla/components/support-base/63.0.1…
-7272f578bb978856a612c4fbf1c503d3dc04a63ae45ac026b4c4f5492a70ef53 | https://maven.mozilla.org/maven2/org/mozilla/components/support-images/63.0…
-8233651110f0e69913e3cd06b02bf9cdf7737e5a5fe971ddb3a0b09d299da815 | https://maven.mozilla.org/maven2/org/mozilla/components/support-images/63.0…
-9eadd1526848b5669c6e00bfc4283eb63c2d2c1179db5c1329cca2a2e227003a | https://maven.mozilla.org/maven2/org/mozilla/components/support-ktx/63.0.1/…
-adf84714b2171f998ca913cb6e34f8a4993b7705635181497809719ab5522796 | https://maven.mozilla.org/maven2/org/mozilla/components/support-ktx/63.0.1/…
-8b424949d15dcb73c718b9a0c71019ed0b752d5866a2eff25a3cebb5cc95a8a3 | https://maven.mozilla.org/maven2/org/mozilla/components/support-locale/63.0…
-759db74befeec1d5abf18bf5b7df1bee81ac651c8ff4a2c8c5a8928f545a21be | https://maven.mozilla.org/maven2/org/mozilla/components/support-locale/63.0…
-b9235cc858969662cb1b8b6b6ef8e9918fb39a0eb6f73be5e91cbcd2b550eb32 | https://maven.mozilla.org/maven2/org/mozilla/components/support-migration/6…
-02e334321a011394f5b368e7b56c38930d102dd860f8253e133c32d16dff2ddc | https://maven.mozilla.org/maven2/org/mozilla/components/support-migration/6…
-8639a7b017f074538e46405e947de42614f512bf154c0e10bb823033a399fec3 | https://maven.mozilla.org/maven2/org/mozilla/components/support-rusthttp/63…
-6237e8d2cbb9dbfe8627d2d70926841b05a0b2036fd8188b53a74a3b94cd21f2 | https://maven.mozilla.org/maven2/org/mozilla/components/support-rusthttp/63…
-46804b487bf00a7e96fc7cfe0f256caca8844efd4ba442e09202f2ec3f0a1002 | https://maven.mozilla.org/maven2/org/mozilla/components/support-rustlog/63.…
-d9961bdbd416ccb842441a981cf8291daca0e1ec58ae7cfbd08046e3a8b2ba96 | https://maven.mozilla.org/maven2/org/mozilla/components/support-rustlog/63.…
-73e17b5e48a21d9882ec81e4885dc7681bd942c192f2ccb58856890fa94479e3 | https://maven.mozilla.org/maven2/org/mozilla/components/support-sync-teleme…
-ca2896d391ffd8c620526d177142fecd99d307c9a22e6eb682ad19de3e87f970 | https://maven.mozilla.org/maven2/org/mozilla/components/support-sync-teleme…
-2221c6d5aefac39176dbc8622f043a3fc3da8d80e25c6d232b1ff949ee8588b4 | https://maven.mozilla.org/maven2/org/mozilla/components/support-test/63.0.1…
-87304731b3420e2eae6d92fcdb49c8a17c268df5ad9c793a267843614ce22e75 | https://maven.mozilla.org/maven2/org/mozilla/components/support-test/63.0.1…
-93fd44998bfeeab9d7137cb34a50d510876ec8362e988b8a4ddf4e1629a69e71 | https://maven.mozilla.org/maven2/org/mozilla/components/support-utils/63.0.…
-4ed07681c1a310a515f8d842bbfa2284a3d079fa14b94577b340555d2c87c55b | https://maven.mozilla.org/maven2/org/mozilla/components/support-utils/63.0.…
-5aa43d65d89f547a28d090aa5e625a5ee96a3db6a6f1599680d4de306018d3d0 | https://maven.mozilla.org/maven2/org/mozilla/components/support-webextensio…
-b5be44a0a73083ea98ec17ee643f459435450922bdf963a0d490827afcec6fc9 | https://maven.mozilla.org/maven2/org/mozilla/components/support-webextensio…
-29cac55daf860aedfe1e65bd1ef4aaba625693e92ea9f07a7ece4aebbd64105a | https://maven.mozilla.org/maven2/org/mozilla/components/tooling-glean-gradl…
-60954d1cda8f66024858bb0ff1fd6eae9cd90f2526b8897ccee59044128aa9d3 | https://maven.mozilla.org/maven2/org/mozilla/components/tooling-glean-gradl…
-f7c3df3d22d806b190a58c7239114d2fca2740dd7db4cf788be74fbf8c5d5135 | https://maven.mozilla.org/maven2/org/mozilla/components/ui-autocomplete/63.…
-a18bf1056df9fc1d854339d6d4f3083d8a3fdf0adc6c68c750f5d28a0ea55a0f | https://maven.mozilla.org/maven2/org/mozilla/components/ui-autocomplete/63.…
-7ec7264a35b13382f84d701fab89daace99c6c8157c6fdc6d15da2361fb4f16b | https://maven.mozilla.org/maven2/org/mozilla/components/ui-colors/63.0.1/ui…
-cd7919c128fcb33d21aff74e0fee0b618e397d80fb4eead824361d9594b2686b | https://maven.mozilla.org/maven2/org/mozilla/components/ui-colors/63.0.1/ui…
-e6905869f068713e39add5e743c7af6ace41ad8041a6ae328dec0fc0f888b039 | https://maven.mozilla.org/maven2/org/mozilla/components/ui-icons/63.0.1/ui-…
-f78dc2bf6d1c6cc10bd0b8858106e027fec8ffa1b0abad278fb29c66d7d7fdef | https://maven.mozilla.org/maven2/org/mozilla/components/ui-icons/63.0.1/ui-…
-cac7392d6bd136b460f365d392fec55c65ac38de79f2d19c5a79f5926627bf8e | https://maven.mozilla.org/maven2/org/mozilla/components/ui-tabcounter/63.0.…
-a1970d8564ded3f1d1021b786dbc9f18519105951a8d016d9f485c0c3f42776a | https://maven.mozilla.org/maven2/org/mozilla/components/ui-tabcounter/63.0.…
-ea6635ff2bdbe7943dff10d1f32024ee28ab228fec232e5a9db1846d296fb82d | https://maven.mozilla.org/maven2/org/mozilla/components/ui-widgets/63.0.1/u…
-9960b2e95353890be1a4ce95495ee733ea4e3d1bd5ff4790872a8cab2aa4ee5d | https://maven.mozilla.org/maven2/org/mozilla/components/ui-widgets/63.0.1/u…
-2a8adfa266cdfc0b48b4fa16d19219352cd77a5a9d655dd567ec4592598d9f3b | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview-beta/83.0.…
-c44f2bb3473956d2e673c05d8f2a6a299a8df357c3f9f22e489127488ff5d692 | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview-beta/83.0.…
+a10d5f210fce21cfbc2fc102ca680c736dad1301a81eadfba0af04d630d75ad6 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-awesomebar/…
+2161575f559d863c0eac61443292610cd12dcedef0cca2301d125e6ea9eda2e5 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-awesomebar/…
+96ba207d21b7f3ea35ed0d73e5a9ddc75235b7f047977fd862b653352b1f2561 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-domains/63.…
+7620acadf30197d682e825c6f50b5ed1a5ddc0a498ef651113672dba0b2f93fa | https://maven.mozilla.org/maven2/org/mozilla/components/browser-domains/63.…
+434dad187779b666c101f7977ffc6962751ba4a024df175a81435c28ff273c76 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck…
+6f1b886f2aed594c81f7a76f91415dd13f2d20e41985698316e952176613addd | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck…
+645b27eb6a415f85b5212102f16022911b03fdab35e1ad1cbd2134b051959314 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck…
+0284baa71dfe6f8cd37d08f4fc9e3e796c938e0c207ab629f3c0083c83fa4cb6 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck…
+4259878674c0989c5761f90ce52d765a6af9c1fa367fc99e5bf8832c882b14f0 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck…
+27f44678d3e4e59982f50ddffe1604ac8bb38b1ee4619d028b2b3f6d5130115f | https://maven.mozilla.org/maven2/org/mozilla/components/browser-engine-geck…
+aa9519cbac4d22fc9dd419d271ab9ed1852ef68e58b4aa26fed16c43cac91dba | https://maven.mozilla.org/maven2/org/mozilla/components/browser-errorpages/…
+eb6fa7c439a0ee69aa39dcb4c37075b36d4f71bcde21c4b031ddd8b364011a56 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-errorpages/…
+e5c4d932c5c09451085ba3adab77de82b727c6ea4ae0bdd5f36a810fb20010b3 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-icons/63.0.…
+070435ed4f22d08dbe9cd0629de9b6abe64572d9376e382700bfaea872c89d80 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-icons/63.0.…
+d7e5d78d72a0b44fe7e6554d2028f80b3b5f28a72f5f3a6cc1187e9e02dee54c | https://maven.mozilla.org/maven2/org/mozilla/components/browser-menu/63.0.8…
+94bdc760c0a70fd9f2b95cf8f97c15c4ac0dca322f9a56681492dffca2bf2427 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-menu/63.0.8…
+ba2b1b5e11745a3eaacd891e33cfeed015d9d5292d44e8f515b2fa7f056c4115 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-menu2/63.0.…
+a61a4593f78fee6c620764900d8c1078be887505d6cb08f7d4cd2229af879f90 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-menu2/63.0.…
+b3a1aa4fdd4b235548a4984b8a5283224b20687680a16a4a877bfaa106d3b8ca | https://maven.mozilla.org/maven2/org/mozilla/components/browser-search/63.0…
+d7322d049940f5799fda72042704a3f4866ad2245e18ca910f3d18d0bb9bc77a | https://maven.mozilla.org/maven2/org/mozilla/components/browser-search/63.0…
+6041603cd7410c6defc967fb218546b4b6d3ce59054e9ceed3ee5ddce8381b66 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-session/63.…
+0e388e5c5ecae104a386199c5637cb44ad97d7c05323d861c5b88bcf29cd6ac1 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-session/63.…
+06407c0cfae8b787355297dbb1d6d41a3ca072a6ec76b1bb8183f0a07aa20b09 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-state/63.0.…
+8f2c5399fa2a6a385376919fb96e4695255f26c2d1e237cc2e21daf1d4f98eae | https://maven.mozilla.org/maven2/org/mozilla/components/browser-state/63.0.…
+c65a683fcbe6d1a31863382d5b15ff30ea111fcc845e63367d2daa81368fd103 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-storage-syn…
+24834cb0a72364c572c272df346dd3e2ef2e199cc28f0748c8ea56dfdd78f89f | https://maven.mozilla.org/maven2/org/mozilla/components/browser-storage-syn…
+674a6c6d869d9c40f7204480adc30e9856be4064499f9695ecf7e7229cff8b0b | https://maven.mozilla.org/maven2/org/mozilla/components/browser-tabstray/63…
+716c9d0ffb0eb5fd3d114cbe331790496c27a0f9118075b42dd30232dfa4bea9 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-tabstray/63…
+798081badfe0edfe91bf09be1d0f87a073b4b5e05006014cf9be861600cea7da | https://maven.mozilla.org/maven2/org/mozilla/components/browser-thumbnails/…
+216e0dac3ecdefc4e18135d332e9348fdc461c31a6ed7b01ade0bbbeaa98bd4d | https://maven.mozilla.org/maven2/org/mozilla/components/browser-thumbnails/…
+38db992b5b2f08bc3b084ced9af77fa232fe67a7b83da91d1202a56f4213fe4a | https://maven.mozilla.org/maven2/org/mozilla/components/browser-toolbar/63.…
+f3c7ee2f04f0514e70d8a671d0bdbe4f9d1f95046fa0fed7f24b6c3ec4614275 | https://maven.mozilla.org/maven2/org/mozilla/components/browser-toolbar/63.…
+c09772c9db564df7cd0d6dbadd4daf8cb5181a807ad638cecd34062fd55c1bc6 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-awesomebar/…
+ca39f2e8aa9fc86306a16ce1e10dc71977550eae7ee6d4277d44804ad68f9c07 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-awesomebar/…
+2b72a4e7680f822c2f3a52e8336f9b95048444762418c0bcc68a56aa4007177f | https://maven.mozilla.org/maven2/org/mozilla/components/concept-base/63.0.8…
+7296111870293cc988943f11073165bc147223e988a68ddfcabe4d6100aee64f | https://maven.mozilla.org/maven2/org/mozilla/components/concept-base/63.0.8…
+c58fd085145063adb425a1d89f783d3ccd7d583e5862e28538b96faccf743722 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-engine/63.0…
+38ca7547473ce25d23ffee1adbc8715cd843e4c422f88a61644c6e5e450f8723 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-engine/63.0…
+4188a05af7a6c6885f3563dc12e5dc770bd9a548b829fe0629136525b88018e6 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-fetch/63.0.…
+af1aa14e2632296be9a450799d532a080b9b2df8023694268e08f7b3446280fd | https://maven.mozilla.org/maven2/org/mozilla/components/concept-fetch/63.0.…
+e9b778eb8417871e1ba8ac7ed81299a640b0100f646ee60171d3d57c32d6ddb2 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-menu/63.0.8…
+b1f3b23399090c750ba21adaf8bf5bd867dc526a7423b177feba55e09f1e93c8 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-menu/63.0.8…
+834ade77fd0fa0f314317ea9b78fe154143a98ef3b106cd7f363d9bf24b9929b | https://maven.mozilla.org/maven2/org/mozilla/components/concept-push/63.0.8…
+c18ea5dc3dfb9778ffc7bbba527e0bfa0c1aa6a829b371f1119017fa6fb7a55b | https://maven.mozilla.org/maven2/org/mozilla/components/concept-push/63.0.8…
+cf426a1ee8adf7b0f2ebc718465a3e472286dd5db738b0ca26eed426a4024941 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-storage/63.…
+d3584dbcbc796176d12cf5dadc0b806c85718792c3132aab07b26ff488b3ddfd | https://maven.mozilla.org/maven2/org/mozilla/components/concept-storage/63.…
+4d280b735359a700b811f7a67abaff01711f41ea71ad29293c1c2f5dcae32e2f | https://maven.mozilla.org/maven2/org/mozilla/components/concept-sync/63.0.8…
+a4b28fc43ed5d190c053419613773d0eb207aff97a03bdb01146dac9e3c29f0e | https://maven.mozilla.org/maven2/org/mozilla/components/concept-sync/63.0.8…
+1ef9759642b7ce7554e742a53b2806f55be71963322434d3a6d1e963eacf9319 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-tabstray/63…
+a27b1194f57f901ae1d225667b2659fff4d42029d7c6227fa8de1e33dca7323e | https://maven.mozilla.org/maven2/org/mozilla/components/concept-tabstray/63…
+2ee2349b44bd1db87ce3625b681d5f0df911824204dd232dec1d04c8449a877f | https://maven.mozilla.org/maven2/org/mozilla/components/concept-toolbar/63.…
+bc38a2ce0f8e66725618dfb3b6a13d0c113f37fef4a6246ba712d90b54ba27f4 | https://maven.mozilla.org/maven2/org/mozilla/components/concept-toolbar/63.…
+0793a76baad1732d9e9ecb457f219ce74c7c609c88146955e6514c1ac836d7fa | https://maven.mozilla.org/maven2/org/mozilla/components/feature-accounts-pu…
+38fec40abfc0f464469632ff0f8c3ba97f6f07085ae13e64e0aa4874d5d49b54 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-accounts-pu…
+ed864db1c019677e369bf9a60e1fe053b942de6a431381ad953275e622d7dee2 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-accounts/63…
+15c4f1355c33b7fec15af18bc5c6b74da7f5a9f5775a1e8d798af2afd795504d | https://maven.mozilla.org/maven2/org/mozilla/components/feature-accounts/63…
+9521d21c2f419f67dc65f825432da1f2ecb40d11e680af9661b83ff89d404397 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-addons/63.0…
+601db3b91002acf7eb331a4488d4bf5b9bb4971173d03bdd225fab4f16bddc8d | https://maven.mozilla.org/maven2/org/mozilla/components/feature-addons/63.0…
+dfb9948da30dab478bdac44ee66dedc817eee4a2f41f353a282cf93a5d9ea99b | https://maven.mozilla.org/maven2/org/mozilla/components/feature-app-links/6…
+ef2f19dd5e72b2d86337f652e9b5e827fd55907d7ec6fbb354a0e30ad380618a | https://maven.mozilla.org/maven2/org/mozilla/components/feature-app-links/6…
+c95cea80901b39cea54cc1dd3766c2c5a546655f3852c20a96e075a518ed8c77 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-awesomebar/…
+101f48d1586f78c55bb686bca2c57583ed248ed3722b86614d40820467ec3c72 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-awesomebar/…
+c9121296918e58c61b69c18165844191d2b7c5d2e9f0e8c2e590b8e59731f107 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-contextmenu…
+da9e9c15249560d009c4890556c13ef88b7980a0436d64f7782d91e371bf2b54 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-contextmenu…
+d7e014f9daeac48f913711043c52311984c218310d9fc46dbad5d1ad5217ae75 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-customtabs/…
+b5a897a1be9e5dd4cf070e48fe24b94fe87800931633333df2af2027d576bcf0 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-customtabs/…
+33b2e04965d621747fb59f116dcfd58f6cb4739d5324b8008252e58848b862a4 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-downloads/6…
+5a9807d20ace2c72ce2e0194635da18795bc736336c31c91760c008ece42a3b2 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-downloads/6…
+80c26ccb8e6a1caf138544b889d54eeadb84f8d0a8ac55d6e4732d0442bc902e | https://maven.mozilla.org/maven2/org/mozilla/components/feature-findinpage/…
+69beb2e5ad8dbdaec00e06ac5092ca6b3836cd3918c216b42d86251e9265dbcf | https://maven.mozilla.org/maven2/org/mozilla/components/feature-findinpage/…
+09adc360f1fbe93c969ddb53ce8020cdffaebf2ae718c49c7410f9cf491aed70 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-intent/63.0…
+ef9cb0d9f90888c9322c5037147de56b3c4b8c35fdeffa3b4074a2e9f19796fc | https://maven.mozilla.org/maven2/org/mozilla/components/feature-intent/63.0…
+f079f3d751d3b0d66ee3916a9ac504b97cc6c54e0ea986ec0155cafb5d822ecf | https://maven.mozilla.org/maven2/org/mozilla/components/feature-logins/63.0…
+dde6438127f1420cf5ed0008e8a6ecd3041a3eac5b8893e85c0bc38dafac7882 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-logins/63.0…
+9d137d683b72406121c5ceb0d19e7981f15d98f701fe5afa5aa4ab12b9cef637 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-media/63.0.…
+3e605c514538a73e219dfc4f701881629dd055ee1e4319a625161891b3515d18 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-media/63.0.…
+8878d690e1f353eca7f13f15db9a2629c782b8a7e19aad55e98fc4687aed285c | https://maven.mozilla.org/maven2/org/mozilla/components/feature-privatemode…
+94df7b01d7cd8b69516f9ab4d967c4525b5d61fdace4da44e821459c3f30f852 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-privatemode…
+713e46409b8dd2ef29185bdb325ad3d0e6a9ffd46d3a572f6d43c42a2b584c1f | https://maven.mozilla.org/maven2/org/mozilla/components/feature-prompts/63.…
+191fffc198784085b83ebcbe569525593b8dcef8ff65562130616110642b7321 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-prompts/63.…
+619b2acd091c9e0a7209f84fb0c27e93cfb2b8abdfd1fbf24ca59f0432d8942a | https://maven.mozilla.org/maven2/org/mozilla/components/feature-push/63.0.8…
+060b7ef640912c64786c62da63e4500e6faadd4ab2d7f5c4ff31eeae67128d89 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-push/63.0.8…
+8dac461e536fa0563deeaefd1e80d37d51f3c3f61a5d7883f5f41eba1150bafb | https://maven.mozilla.org/maven2/org/mozilla/components/feature-pwa/63.0.8/…
+15ae2edcd2b5e73d844abaf1a856b9c91eceae55fef119e0b304d9026faf1213 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-pwa/63.0.8/…
+e05c2b4231d479f14abd5351176fb89d61620c68c921c796bcb3ae38dfba1f18 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-qr/63.0.8/f…
+7616adecdcdc6b3e2ec55317f28adbf5bb79272ad5570b5b3495f2122940240a | https://maven.mozilla.org/maven2/org/mozilla/components/feature-qr/63.0.8/f…
+cf91ff0896616b8e30e4b9d2d915d1ba35a37a70cf24b6342b2fde13243ce6f1 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-readerview/…
+4a85e7855eab03b8845c8c589b5450be3d0700150f745698aaef6f59ee1dfd37 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-readerview/…
+51dc3b1c158818e207f474275578f2115548ec68f881d177fdd5d26df45f84d9 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-recentlyclo…
+ebb24784997a2b3125324799ac5cd258ae4a1c8e0ec3ac01a5aa8835f5c16270 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-recentlyclo…
+946312f5f93168507d2c719639ee7a967b1f2a6ae6e9f4b0b83a2d4efad6e605 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-search/63.0…
+9b91995ef2674fdcecf51905e7e5e0b24b0adaf67f1b2b0fdf8e4332aa13bae1 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-search/63.0…
+99c01f22204b449e2ecb4f7809b7edfd8661bc2efe30be09bb584c5feb27760a | https://maven.mozilla.org/maven2/org/mozilla/components/feature-session/63.…
+9d2514d301312cbfa4c7ddeef4ac1ce1000151f411e7ac643209509359b95710 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-session/63.…
+692871cf1d65602814a0372024d1b8e6f1d22e9a86b72e4e0cc13573db42328c | https://maven.mozilla.org/maven2/org/mozilla/components/feature-share/63.0.…
+d89f217d6e142d6e304eb4963972f0ae171d3e11b38ef5f08b094910210b33a6 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-share/63.0.…
+afb1c81eecf04069857f0e259810f7edae86c5150e520920ca7f07699384a9c2 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-sitepermiss…
+e78b5956186b697659dee435b57c7b13a1728d1e477a23cd842e09e178f48db5 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-sitepermiss…
+b73ef22574f01ef481dceade81712cab2e56d3cbc09d0246821e5e41e475da66 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-syncedtabs/…
+f645aa4c42d245531e4600c48bad7f7dac3ff9b049c6b8a2783256b7eb6834ff | https://maven.mozilla.org/maven2/org/mozilla/components/feature-syncedtabs/…
+f246ee2e74950e626a19fb95f9643b5d43083bcb203a459e6c8880b63531a7f0 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-tab-collect…
+de471bbf69ee64c2c1e4343a7a0fa6413ab3842da5836af4894c232bb56c8c50 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-tab-collect…
+05d5d4b7b93424922944c58201e37b1d0fdfb59c3322d576c690a6509c9ab508 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-tabs/63.0.8…
+fa02a90aa35cf9bc86a90529a79500dc32aca48634952b626ad20a930a66c41b | https://maven.mozilla.org/maven2/org/mozilla/components/feature-tabs/63.0.8…
+f84df79bea8cc25aee7aeee6ebe244d8b14bb2163b4b6b6c2a1c661afe19e732 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-toolbar/63.…
+26a26c5d7340106389a6ce380cd95269d229675f47828e129495d62b905ee99f | https://maven.mozilla.org/maven2/org/mozilla/components/feature-toolbar/63.…
+5e085ff5d1d752759fb33c9d74509e44f0a0136eec918df7fcb5a4f38ab7d3d3 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-top-sites/6…
+3cb2f6146a59664d8aba693b2000a43cdda0e8c277e423458978684a2d30089a | https://maven.mozilla.org/maven2/org/mozilla/components/feature-top-sites/6…
+18fe05d36d86e945e92eda764d4415c083947c016b3031a97f89e66e2bbb9f7a | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webcompat-r…
+d794df35060e5716e3b292df4c48076e976616a7502bbd23b4b0f5df96c3e174 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webcompat-r…
+b57537372e2dcbf9485eba1478d08dc2e1dab6da7ef5cd92d5d866e7f1253ca2 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webcompat/6…
+5c1cf36a4609e49b64dab83aa4e934f3ddd9128cfb6acc56388719aa09a26a90 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webcompat/6…
+478ac72aced73d74a2d496c67880eaf82b02ad2edd5c9204e381a7d7a66bdad3 | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webnotifica…
+13989903c14fb85b1a2dcb42da95d2d206723625f330e70978fe66fd3e65480b | https://maven.mozilla.org/maven2/org/mozilla/components/feature-webnotifica…
+8347a8d9963cfae81d6f5b7bb4660eb7d808a4b2ddb3257f4be87d719fc1d858 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-crash/63.0.8/li…
+202cd45ceaf1a5245923ff819ca45dd7146377ec2d8a8dc422faf85f60c894a2 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-crash/63.0.8/li…
+e835eb35d3e68f41fc4a79b523a6af00771597141bd78927d935c72903a664e7 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-dataprotect/63.…
+ded7744125c8638b4b939f044c18a31420bf86190e75715bec233069a9c21471 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-dataprotect/63.…
+3408612d3fb9d2c65c16d41ecb77830a26e60ebbe0164e6087aef99a647b8c82 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-fetch-httpurlco…
+06611cd555fa418ea64602e52111a18911a18e67dffa8fa1d4194a0442c921b6 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-fetch-httpurlco…
+c383aa95aeeb5a7f3734b2cfc8023bab19f74eaf13eeadee95c9b21ab057e224 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-publicsuffixlis…
+16c10a8fc3ba8219c72ca7e28617bd28ddbd85d1c82ea993a66e32e9709cf5bf | https://maven.mozilla.org/maven2/org/mozilla/components/lib-publicsuffixlis…
+fb5eecaaf1dfb64da14d4ffd3de7e713dfa702b9539dea54228ea43136a5f3c6 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-push-firebase/6…
+67e2b8af6f878cccf6d3a08d72ceef6cd59a800c627e7dda8551de9c56411776 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-push-firebase/6…
+0f258d10411b32ccf546850cf2bf09431b7ab14f28aafe8e278fba7147d062f2 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-state/63.0.8/li…
+2bab242f045e3125ba98f5a1485f77e26330984d1b67f02990fd3c1fffeceb41 | https://maven.mozilla.org/maven2/org/mozilla/components/lib-state/63.0.8/li…
+68a674ded1b29ffbb61b8616c31a981dab92202b6a97a56d2c751a4eaef352bb | https://maven.mozilla.org/maven2/org/mozilla/components/service-digitalasse…
+0f3b8d8d397951cc7cb942dfd98630171b4f93f14afc0dc4eed6d3624042647e | https://maven.mozilla.org/maven2/org/mozilla/components/service-digitalasse…
+e22536ae6bdd9d02b84b8283cdd2aabb1404a4730bfdf96a7752b775074fb974 | https://maven.mozilla.org/maven2/org/mozilla/components/service-experiments…
+5139241044b672d4dc01499e8a60fa1e2c8674878a507716c456c69dbb87efcc | https://maven.mozilla.org/maven2/org/mozilla/components/service-experiments…
+3ee0916dc9076a20048ff184f42380d2cfc6ed55bacc007dc30cb1bfb80a5356 | https://maven.mozilla.org/maven2/org/mozilla/components/service-firefox-acc…
+206028dbbd2a80821824e5c083e59fe45f7a7e187b65e84dd7b696c9ea4348b5 | https://maven.mozilla.org/maven2/org/mozilla/components/service-firefox-acc…
+377092988061736b0a6e8ddfd243fb9766598724abe0153767310ad2b0be86f5 | https://maven.mozilla.org/maven2/org/mozilla/components/service-glean/63.0.…
+ac112db4c3735a96d62ca2cf3f2b8c75ce5c70e5194b7156f75c453d64841f0b | https://maven.mozilla.org/maven2/org/mozilla/components/service-glean/63.0.…
+5e8e981dde4b86bf532b85c3925e151159a7cd0d2f79c3a54b9d5025d36125e4 | https://maven.mozilla.org/maven2/org/mozilla/components/service-location/63…
+4ae6378e996e91c89239995d92cf24d405d744e4943ed0c18311e71b51b2e7bc | https://maven.mozilla.org/maven2/org/mozilla/components/service-location/63…
+9fc2bb91cc32089f66358a4c2f323528d8bc6830901f813a1fdc85d800601b2c | https://maven.mozilla.org/maven2/org/mozilla/components/service-sync-logins…
+8794783b659cab29f7e511a7ef3b7132706374bbfb879487cd5d4388a5512de4 | https://maven.mozilla.org/maven2/org/mozilla/components/service-sync-logins…
+4f92a4b1a1a702b2bcb3271fe1384eb9556fc9707d6fba22be50019d7c959aab | https://maven.mozilla.org/maven2/org/mozilla/components/support-base/63.0.8…
+ed564e04a813fc7a9645d0ea11d6621a27def48f7eef22bc944ecda4d346de21 | https://maven.mozilla.org/maven2/org/mozilla/components/support-base/63.0.8…
+7272f578bb978856a612c4fbf1c503d3dc04a63ae45ac026b4c4f5492a70ef53 | https://maven.mozilla.org/maven2/org/mozilla/components/support-images/63.0…
+49d55e3750de2e6cc624a1522ce3a2ba1e4bd59203ca732c460660422797f37c | https://maven.mozilla.org/maven2/org/mozilla/components/support-images/63.0…
+9eadd1526848b5669c6e00bfc4283eb63c2d2c1179db5c1329cca2a2e227003a | https://maven.mozilla.org/maven2/org/mozilla/components/support-ktx/63.0.8/…
+e944af9a245a07f762763ba371bf506027cd6f336f8d47d27ec302d7029e59e7 | https://maven.mozilla.org/maven2/org/mozilla/components/support-ktx/63.0.8/…
+8b424949d15dcb73c718b9a0c71019ed0b752d5866a2eff25a3cebb5cc95a8a3 | https://maven.mozilla.org/maven2/org/mozilla/components/support-locale/63.0…
+46bb6b83e9e4304c7258877ae846fda6d9669a0e69e2971a095d8edf72641cdf | https://maven.mozilla.org/maven2/org/mozilla/components/support-locale/63.0…
+b9235cc858969662cb1b8b6b6ef8e9918fb39a0eb6f73be5e91cbcd2b550eb32 | https://maven.mozilla.org/maven2/org/mozilla/components/support-migration/6…
+eba0d1ce4a90780bc45de9932261c5381c03660e5f2548144d3a9ca0a41f3c9b | https://maven.mozilla.org/maven2/org/mozilla/components/support-migration/6…
+8639a7b017f074538e46405e947de42614f512bf154c0e10bb823033a399fec3 | https://maven.mozilla.org/maven2/org/mozilla/components/support-rusthttp/63…
+546af4dae238e5805bf095a55f3fcf83d8fc26bd1098794bb36724c07d5584cb | https://maven.mozilla.org/maven2/org/mozilla/components/support-rusthttp/63…
+46804b487bf00a7e96fc7cfe0f256caca8844efd4ba442e09202f2ec3f0a1002 | https://maven.mozilla.org/maven2/org/mozilla/components/support-rustlog/63.…
+9fd5d524d4ff3f2e187e28862faea16d44fdab367b693d698b0cc63793a4afc5 | https://maven.mozilla.org/maven2/org/mozilla/components/support-rustlog/63.…
+73e17b5e48a21d9882ec81e4885dc7681bd942c192f2ccb58856890fa94479e3 | https://maven.mozilla.org/maven2/org/mozilla/components/support-sync-teleme…
+2ccbdbc5b120eb418360f8bbfb0e922833d3d22ed44cb3c90a64df59b3d03d25 | https://maven.mozilla.org/maven2/org/mozilla/components/support-sync-teleme…
+2221c6d5aefac39176dbc8622f043a3fc3da8d80e25c6d232b1ff949ee8588b4 | https://maven.mozilla.org/maven2/org/mozilla/components/support-test/63.0.8…
+b2679976ff1ae25056c8c179aad4c60785cf994ec2fd1f31adc9c85fdc440068 | https://maven.mozilla.org/maven2/org/mozilla/components/support-test/63.0.8…
+93fd44998bfeeab9d7137cb34a50d510876ec8362e988b8a4ddf4e1629a69e71 | https://maven.mozilla.org/maven2/org/mozilla/components/support-utils/63.0.…
+78ec22f7fd8201ec437830974be5b6aa29414e8c0488adc76cb13cc3a9a326c3 | https://maven.mozilla.org/maven2/org/mozilla/components/support-utils/63.0.…
+5aa43d65d89f547a28d090aa5e625a5ee96a3db6a6f1599680d4de306018d3d0 | https://maven.mozilla.org/maven2/org/mozilla/components/support-webextensio…
+4b376e24ff95c0e469c267712051ed50e37fb134c9ecf1ba50d94f9291e3f01b | https://maven.mozilla.org/maven2/org/mozilla/components/support-webextensio…
+48183875971ccab13d2bff910d2d9b3fec30af27b3a7f489f481ef9abec41c6a | https://maven.mozilla.org/maven2/org/mozilla/components/tooling-glean-gradl…
+141d62021b365fe76fd717feee3661cd1fd244dba5413995957475655d4cd628 | https://maven.mozilla.org/maven2/org/mozilla/components/tooling-glean-gradl…
+f7c3df3d22d806b190a58c7239114d2fca2740dd7db4cf788be74fbf8c5d5135 | https://maven.mozilla.org/maven2/org/mozilla/components/ui-autocomplete/63.…
+13b385be4e5b9a19f61f343fabe5c2d317656844913a2a17c08672e021629c8f | https://maven.mozilla.org/maven2/org/mozilla/components/ui-autocomplete/63.…
+7ec7264a35b13382f84d701fab89daace99c6c8157c6fdc6d15da2361fb4f16b | https://maven.mozilla.org/maven2/org/mozilla/components/ui-colors/63.0.8/ui…
+3ecade7b475059f8a7179634ceb16461f4068455db06d85a0a8550014942bcc7 | https://maven.mozilla.org/maven2/org/mozilla/components/ui-colors/63.0.8/ui…
+e6905869f068713e39add5e743c7af6ace41ad8041a6ae328dec0fc0f888b039 | https://maven.mozilla.org/maven2/org/mozilla/components/ui-icons/63.0.8/ui-…
+395e223cbce43c8bb361abe749da2ae27568c5dfc406ffa0bafd8fc4f602a5b1 | https://maven.mozilla.org/maven2/org/mozilla/components/ui-icons/63.0.8/ui-…
+cac7392d6bd136b460f365d392fec55c65ac38de79f2d19c5a79f5926627bf8e | https://maven.mozilla.org/maven2/org/mozilla/components/ui-tabcounter/63.0.…
+7f1a1e74bf65692a5d5ae30c18c9077dee865fdd010cbb0e64d847e1dcf19473 | https://maven.mozilla.org/maven2/org/mozilla/components/ui-tabcounter/63.0.…
+ea6635ff2bdbe7943dff10d1f32024ee28ab228fec232e5a9db1846d296fb82d | https://maven.mozilla.org/maven2/org/mozilla/components/ui-widgets/63.0.8/u…
+70e0ecdc31200e330c29324689ac9c17b836f1108d641f412c854b026ff5eb93 | https://maven.mozilla.org/maven2/org/mozilla/components/ui-widgets/63.0.8/u…
+677281ce6616d67c6711dfdd594b7c7e318ddb6d2df1dbeaaa74e66e089dfe97 | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview-beta/83.0.…
+a2c7bc151dd1b3acafbcf718fa4da42a388ce3324fb9fcee93727dc9ea006366 | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview-beta/83.0.…
92ba04c556a1ad2e68c4df484325bb80356cebfb0acd8199e363d8e952b08a8f | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview-nightly/84…
ebdd8cd37e94d73d16bec80e21766c72ad8980449d7033a5dd507dd5ca9a0695 | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview-nightly/84…
-5731f31ff90a090745ebaaaf3f07b4f590e230202289bea9a70e92a6d735675a | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview/82.0.20201…
-3d741995e49c1979940d09fec6830491a5c1d9e43d4150b86ee4b43c827bc8e6 | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview/82.0.20201…
+4b9749ade5141f4284e0a99e01f33a2960b39a9f66275846caa83af3ec03f8df | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview/83.0.20201…
+7aba62adeff99576983f270bc396354420e69cc5a75bee3d8b52e42f4cd1125c | https://maven.mozilla.org/maven2/org/mozilla/geckoview/geckoview/83.0.20201…
e3b779d5f79c8012d62d3e43bfc2d577ca65439bcf7181c8ec333d0f3fc76890 | https://maven.mozilla.org/maven2/org/mozilla/telemetry/glean-forUnitTests/3…
6e0b82e4ed2fec26de9c9e68d6fa237d716177d9f9e7f6b1213699d7f55e73e6 | https://maven.mozilla.org/maven2/org/mozilla/telemetry/glean-forUnitTests/3…
5eb5d86577ecf64ba66df368c07dde772d1e82da63f25d73e63118d261ca7a7c | https://maven.mozilla.org/maven2/org/mozilla/telemetry/glean-gradle-plugin/…
diff --git a/projects/firefox-langpacks/config b/projects/firefox-langpacks/config
index 17a707a..34d6fad 100644
--- a/projects/firefox-langpacks/config
+++ b/projects/firefox-langpacks/config
@@ -4,7 +4,7 @@ filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/buil
var:
ff_version: '[% pc("firefox", "var/firefox_version") %]'
- ff_build: build2
+ ff_build: build1
input_filename: 'dl-langpack-[% c("var/ff_arch") %]-[% c("version") %]'
targets:
diff --git a/projects/firefox/config b/projects/firefox/config
index 2daf0c3..b8bc4bd 100644
--- a/projects/firefox/config
+++ b/projects/firefox/config
@@ -8,7 +8,7 @@ git_submodule: 1
gpg_keyring: torbutton.gpg
var:
- firefox_platform_version: 78.4.0
+ firefox_platform_version: 78.5.0
firefox_version: '[% c("var/firefox_platform_version") %]esr'
torbrowser_branch: 10.5
branding_directory: 'browser/branding/alpha'
diff --git a/projects/geckoview/config b/projects/geckoview/config
index e1608ed..ebb84a9 100644
--- a/projects/geckoview/config
+++ b/projects/geckoview/config
@@ -8,7 +8,7 @@ git_submodule: 1
gpg_keyring: torbutton.gpg
var:
- geckoview_version: 83.0b1
+ geckoview_version: 83.0
torbrowser_branch: 10.5
copyright_year: '[% exec("git show -s --format=%ci").remove("-.*") %]'
deps:
diff --git a/projects/tba-translation/config b/projects/tba-translation/config
index b2def42..245577f 100644
--- a/projects/tba-translation/config
+++ b/projects/tba-translation/config
@@ -3,5 +3,5 @@ filename: '[% project %]-[% c("version") %]-[% c("var/build_id") %].tar.gz'
git_url: https://git.torproject.org/translation.git
# We need to bump the commit before releasing but just pointing to a branch
# might cause too much rebuidling of the Firefox part.
-git_hash: 96c5386d045d7413c4e208337aed7465fb0a666d
+git_hash: e20c294e6687a91abfc432c3f59e244031c35b2d
version: '[% c("abbrev") %]'
diff --git a/projects/tor-browser/Bundle-Data/Docs/ChangeLog.txt b/projects/tor-browser/Bundle-Data/Docs/ChangeLog.txt
index 7fb02a0..74c39a3 100644
--- a/projects/tor-browser/Bundle-Data/Docs/ChangeLog.txt
+++ b/projects/tor-browser/Bundle-Data/Docs/ChangeLog.txt
@@ -1,3 +1,26 @@
+Tor Browser 10.5a4 -- November 17 2020
+ * All Platforms
+ * Update Tor to 0.4.5.1-alpha
+ * Bug 40212: Add new default bridge "PraxedisGuerrero" [tor-browser]
+ * Windows + OS X + Linux
+ * Update Firefox to 78.5.0esr
+ * Android
+ * Update Fenix to 83.1.0
+ * Bug 27002: (Mozilla 1673237) Always allow SVGs on about: pages
+ * Bug 40137: Built-in https-everywhere storage is not migrated to idb [tor-browser]
+ * Bug 40152: Top Crash: android.database.sqlite.SQLiteConstraintException [tor-browser-build]
+ * Bug 40171: Make WebRequest and GeckoWebExecutor First-Party aware [tor-browser]
+ * Bug 40205: Replace occurrence of EmptyCString with 0-length _ns literal [tor-browser]
+ * Bug 40206: Disable the /etc/hosts parser
+ * Translations update
+ * Build System
+ * OS X
+ * Bug 40139: Set RANLIB in macOS tor build [tor-browser-build]
+ * Android
+ * Bug 40211: Lower required build-tools version to 29.0.2 [tor-browser]
+ * Bug 40126: Bump Node to 10.22.1 for mozilla83 [tor-browser-build]
+ * Bug 40127: Update components for switch to mozilla83-based Fenix [tor-browser-build]
+
Tor Browser 10.5a3 -- November 10 2020
* All Platforms
* Update NoScript to 11.1.5
diff --git a/projects/tor/config b/projects/tor/config
index 429e7d6..4c68ce1 100644
--- a/projects/tor/config
+++ b/projects/tor/config
@@ -1,6 +1,6 @@
# vim: filetype=yaml sw=2
filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %]'
-version: 0.4.4.5
+version: 0.4.5.1-alpha
git_hash: 'tor-[% c("version") %]'
git_url: https://git.torproject.org/tor.git
git_submodule: 1
diff --git a/rbm.conf b/rbm.conf
index 0fe45cd..e2e1acf 100644
--- a/rbm.conf
+++ b/rbm.conf
@@ -24,10 +24,10 @@ buildconf:
git_signtag_opt: '-s'
var:
- torbrowser_version: '10.5a3'
+ torbrowser_version: '10.5a4'
torbrowser_build: 'build1'
torbrowser_incremental_from:
- - 10.5a2
+ - 10.5a3
project_name: tor-browser
multi_lingual: 0
build_mar: 1
1
0

[translation/communitytpo-contentspot] https://gitweb.torproject.org/translation.git/commit/?h=communitytpo-contentspot
by translation@torproject.org 14 Nov '20
by translation@torproject.org 14 Nov '20
14 Nov '20
commit aa9bd3e550469f2b92337406db3bd5b68708d56d
Author: Translation commit bot <translation(a)torproject.org>
Date: Sat Nov 14 20:15:14 2020 +0000
https://gitweb.torproject.org/translation.git/commit/?h=communitytpo-conten…
---
contents+he.po | 26 +++++++++++++++++++++++---
1 file changed, 23 insertions(+), 3 deletions(-)
diff --git a/contents+he.po b/contents+he.po
index 4f853e4962..dba4a3f6dc 100644
--- a/contents+he.po
+++ b/contents+he.po
@@ -8040,6 +8040,8 @@ msgid ""
" communication services in your country (and the country of your hosting "
"provider!)."
msgstr ""
+"### וודאו שאתם מכירים את הסעיפים המשפטיים הרלוונטים של common-carrier כמו "
+"שרותי תקשורת בארצכם (ומדינתו של הספק המארח שלכם!)."
#: https//community.torproject.org/relay/community-resources/tor-exit-guidelines/
#: (content/relay-operations/community-resources/tor-exit-guidelines/contents+en.lrpage.body)
@@ -8047,11 +8049,12 @@ msgid ""
"At least most western countries should have regulations that exclude "
"communication service providers from liability."
msgstr ""
+"לכל הפחות המדינות המערביות צריכות לכלול תקנות אשר משחררות ספקי שרות מתביעות."
#: https//community.torproject.org/relay/community-resources/tor-exit-guidelines/
#: (content/relay-operations/community-resources/tor-exit-guidelines/contents+en.lrpage.body)
msgid "Please add your country's regulations to this list."
-msgstr ""
+msgstr "אנא הוסיפו את התקנות במדינתכם לרשימה הזו."
#: https//community.torproject.org/relay/community-resources/tor-exit-guidelines/
#: (content/relay-operations/community-resources/tor-exit-guidelines/contents+en.lrpage.body)
@@ -8060,6 +8063,9 @@ msgid ""
"[EFF's Legal FAQ for Tor Operators](/relay/community-resources/eff-tor-"
"legal-faq) (a very good and relevant read for other countries as well)"
msgstr ""
+"* ארצות הברית: [DMCA 512](https://www.law.cornell.edu/uscode/text/17/512); "
+"ראו [EFF's Legal FAQ for Tor Operators](/relay/community-resources/eff-tor-"
+"legal-faq) (מאד טוב ורלוונטי לעיון למדינות אחרות גם כן )"
#: https//community.torproject.org/relay/community-resources/tor-exit-guidelines/
#: (content/relay-operations/community-resources/tor-exit-guidelines/contents+en.lrpage.body)
@@ -8067,6 +8073,8 @@ msgid ""
"* Germany: [TMG 8](http://www.gesetze-im-internet.de/tmg/__8.html) and "
"[15](http://www.gesetze-im-internet.de/tmg/__15.html)."
msgstr ""
+"* גרמניה: [TMG 8](http://www.gesetze-im-internet.de/tmg/__8.html) ו "
+"[15](http://www.gesetze-im-internet.de/tmg/__15.html)."
#: https//community.torproject.org/relay/community-resources/tor-exit-guidelines/
#: (content/relay-operations/community-resources/tor-exit-guidelines/contents+en.lrpage.body)
@@ -8074,6 +8082,8 @@ msgid ""
"* Netherlands: [Artikel 6:196c "
"BW](http://wetten.overheid.nl/BWBR0005289/Boek6/Titel3/Afdeling4A/Artikel196c/)"
msgstr ""
+"* הולנד: [Artikel 6:196c "
+"BW](http://wetten.overheid.nl/BWBR0005289/Boek6/Titel3/Afdeling4A/Artikel196c/)"
#: https//community.torproject.org/relay/community-resources/tor-exit-guidelines/
#: (content/relay-operations/community-resources/tor-exit-guidelines/contents+en.lrpage.body)
@@ -8081,11 +8091,13 @@ msgid ""
"* Austria: [ECG "
"13](http://www.ris.bka.gv.at/Dokument.wxe?Abfrage=Bundesnormen&Dokumentnummer=NOR40025809)"
msgstr ""
+"* אוסטריה: [ECG "
+"13](http://www.ris.bka.gv.at/Dokument.wxe?Abfrage=Bundesnormen&Dokumentnummer=NOR40025809)"
#: https//community.torproject.org/relay/community-resources/tor-exit-guidelines/
#: (content/relay-operations/community-resources/tor-exit-guidelines/contents+en.lrpage.body)
msgid "* Sweden: [16-19 2002:562](https://lagen.nu/2002:562#P16S1)"
-msgstr ""
+msgstr "* שבדיה: [16-19 2002:562](https://lagen.nu/2002:562#P16S1)"
#: https//community.torproject.org/relay/community-resources/tor-exit-guidelines/
#: (content/relay-operations/community-resources/tor-exit-guidelines/contents+en.lrpage.body)
@@ -8093,6 +8105,8 @@ msgid ""
"If you country is missing here and you know a lawyer who can provide a legal"
" opinion, please get in contact with Tor Project."
msgstr ""
+"אם מדינתך חסרה כאן, והנך מכיר עורך דין שיכול לספק חוות דעת משפטית, אנא צור "
+"קשר עם פרויקט Tor."
#: https//community.torproject.org/relay/community-resources/tor-exit-guidelines/
#: (content/relay-operations/community-resources/tor-exit-guidelines/contents+en.lrpage.body)
@@ -8100,6 +8114,8 @@ msgid ""
"### If you're part of an organization that will be running the exit relay "
"(ISP, university etc), consider teaching your legal people about Tor."
msgstr ""
+"### אם הנכם חלק מארגון שיפעיל את ניתוב היציאה (ISP, university etc), שיקלו "
+"ללמד את המשפטנים שלכם לגבי Tor."
#: https//community.torproject.org/relay/community-resources/tor-exit-guidelines/
#: (content/relay-operations/community-resources/tor-exit-guidelines/contents+en.lrpage.body)
@@ -8110,11 +8126,15 @@ msgid ""
"/eff-tor-legal-faq). EFF has also offered to talk to other lawyers to "
"explain the legal aspects of Tor."
msgstr ""
+"טוב יותר שהם ישמעו על Tot מכם, באוירה רגועה, מאשר לשמוע עליו מזר בטלפוו. "
+"ידעו אותם לגבי [EFF's Legal FAQ for Tor Operators](/relay/community-"
+"resources/eff-tor-legal-faq). EFF גם הציע לשוחח עם עורכי דין אחרים ולהסביר "
+"את ההבטים החוקיים של Tor."
#: https//community.torproject.org/relay/community-resources/tor-exit-guidelines/
#: (content/relay-operations/community-resources/tor-exit-guidelines/contents+en.lrpage.body)
msgid "### If you're not part of an organization, think about starting one!"
-msgstr ""
+msgstr "### אם אינכם חלק מארון שיקלו להקים אחד!"
#: https//community.torproject.org/relay/community-resources/tor-exit-guidelines/
#: (content/relay-operations/community-resources/tor-exit-guidelines/contents+en.lrpage.body)
1
0

[translation/torbutton-browseronboardingproperties] https://gitweb.torproject.org/translation.git/commit/?h=torbutton-browseronboardingproperties
by translation@torproject.org 14 Nov '20
by translation@torproject.org 14 Nov '20
14 Nov '20
commit 07e9dd75eb892909ef914d594a6bc40505c16ff5
Author: Translation commit bot <translation(a)torproject.org>
Date: Sat Nov 14 18:47:44 2020 +0000
https://gitweb.torproject.org/translation.git/commit/?h=torbutton-browseron…
---
sv-SE/browserOnboarding.properties | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sv-SE/browserOnboarding.properties b/sv-SE/browserOnboarding.properties
index 21329aae60..975896d9d6 100644
--- a/sv-SE/browserOnboarding.properties
+++ b/sv-SE/browserOnboarding.properties
@@ -40,7 +40,7 @@ onboarding.tour-tor-expect-differences.next-button=Gå till Onion-tjänster
onboarding.tour-tor-onion-services=Onion-tjänster
onboarding.tour-tor-onion-services.title=Var extra skyddad.
-onboarding.tour-tor-onion-services.description=Onion-tjänster är webbplatser som slutar med .onion som ger extra skydd till utgivare och besökare, inklusive extra skyddsåtgärder mot censur. Onion-tjänster tillåter alla att tillhandahålla innehåll och tjänster anonymt. Klicka nedan för att besöka onion-webbplatsen för DuckDuckGo.
+onboarding.tour-tor-onion-services.description=Onion-tjänster är webbplatser som slutar med .onion som ger extra skydd till utgivare och besökare, inklusive extra skyddsåtgärder mot censur. Onion-tjänster tillåter vem som helst att tillhandahålla innehåll och tjänster anonymt. Klicka nedan för att besöka onion-webbplatsen för DuckDuckGo.
onboarding.tour-tor-onion-services.button=Besök en Onion
onboarding.tour-tor-onion-services.next-button=Färdig
1
0

[tor-browser/tor-browser-78.5.0esr-10.5-1] TB3: Tor Browser's official .mozconfigs.
by sysrqb@torproject.org 14 Nov '20
by sysrqb@torproject.org 14 Nov '20
14 Nov '20
commit 12523a751d16f00c2202cef92a96bb8c00f8b4b8
Author: Mike Perry <mikeperry-git(a)torproject.org>
Date: Mon May 6 15:51:06 2013 -0700
TB3: Tor Browser's official .mozconfigs.
Also:
Bug #9829.1: new .mozconfig file for the new cross-compiler and ESR24
Changes needed to build Mac in 64bit
Bug 10715: Enable Webgl for mingw-w64 again.
Disable ICU when cross-compiling; clean-up.
Bug 15773: Enable ICU on OS X
Bug 15990: Don't build the sandbox with mingw-w64
Bug 12761: Switch to ESR 38 for OS X
Updating .mozconfig-asan
Bug 12516: Compile hardenend Tor Browser with -fwrapv
Bug 18331: Switch to Mozilla's toolchain for building Tor Browser for OS X
Bug 17858: Cannot create incremental MARs for hardened builds.
Define HOST_CFLAGS, etc. to avoid compiling programs such as mbsdiff
(which is part of mar-tools and is not distributed to end-users) with
ASan.
Bug 13419: Add back ICU for Windows
Bug 21239: Use GTK2 for ESR52 Linux builds
Bug 23025: Add hardening flags for macOS
Bug 24478: Enable debug assertions and tests in our ASan builds
--enable-proxy-bypass-protection
Bug 27597: ASan build option in tor-browser-build is broken
Bug 27623 - Export MOZILLA_OFFICIAL during desktop builds
This fixes a problem where some preferences had the wrong default value.
Also see bug 27472 where we made a similar fix for Android.
Bug 30463: Explicitly disable MOZ_TELEMETRY_REPORTING
Bug 31450: Set proper BINDGEN_CFLAGS for ASan builds
Add an --enable-tor-browser-data-outside-app-dir configure option
Add --with-tor-browser-version configure option
Bug 21849: Don't allow SSL key logging.
Bug 31457: disable per-installation profiles
The dedicated profiles (per-installation) feature does not interact
well with our bundled profiles on Linux and Windows, and it also causes
multiple profiles to be created on macOS under TorBrowser-Data.
Bug 31935: Disable profile downgrade protection.
Since Tor Browser does not support more than one profile, disable
the prompt and associated code that offers to create one when a
version downgrade situation is detected.
Bug 32493: Disable MOZ_SERVICES_HEALTHREPORT
Bug 25741 - TBA: Disable features at compile-time
MOZ_NATIVE_DEVICES for casting and the media player
MOZ_TELEMETRY_REPORTING for telemetry
MOZ_DATA_REPORTING for all data reporting preferences (crashreport, telemetry, geo)
Bug 25741 - TBA: Add default configure options in dedicated file
Define MOZ_ANDROID_NETWORK_STATE and MOZ_ANDROID_LOCATION
Bug 29859: Disable HLS support for now
Add --disable-tor-launcher build option
Add --enable-tor-browser-update build option
Bug 33734: Set MOZ_NORMANDY to False
Bug 33851: Omit Parental Controls.
Bug 40061: Omit the Windows default browser agent from the build
squash! TB3: Tor Browser's official .mozconfigs.
Bug 40107: Adapt .mozconfig-asan for ESR 78
---
.mozconfig | 38 ++++++++++++++++++++++++
.mozconfig-android | 35 ++++++++++++++++++++++
.mozconfig-asan | 44 ++++++++++++++++++++++++++++
.mozconfig-mac | 55 +++++++++++++++++++++++++++++++++++
.mozconfig-mingw | 30 +++++++++++++++++++
browser/base/moz.build | 3 ++
browser/installer/Makefile.in | 8 +++++
browser/moz.configure | 8 ++---
build/moz.configure/old.configure | 6 ++++
mobile/android/confvars.sh | 9 ++++++
mobile/android/geckoview/build.gradle | 1 +
mobile/android/moz.configure | 17 +++++++++--
mobile/android/torbrowser.configure | 30 +++++++++++++++++++
old-configure.in | 49 +++++++++++++++++++++++++++++++
security/moz.build | 2 +-
security/nss/lib/ssl/Makefile | 2 +-
toolkit/modules/AppConstants.jsm | 9 ++++++
toolkit/modules/moz.build | 3 ++
18 files changed, 341 insertions(+), 8 deletions(-)
diff --git a/.mozconfig b/.mozconfig
new file mode 100755
index 000000000000..24efaea57b0b
--- /dev/null
+++ b/.mozconfig
@@ -0,0 +1,38 @@
+. $topsrcdir/browser/config/mozconfig
+
+# This mozconfig file is not used in official Tor Browser builds.
+# It is only intended to be used when doing incremental Linux builds
+# during development. The platform-specific mozconfig configuration
+# files used in official Tor Browser releases can be found in the
+# tor-browser-build repo:
+# https://gitweb.torproject.org/builders/tor-browser-build.git/
+# under:
+# tor-browser-build/projects/firefox/mozconfig-$OS-$ARCH
+
+mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-@CONFIG_GUESS@
+mk_add_options MOZ_APP_DISPLAYNAME="Tor Browser"
+export MOZILLA_OFFICIAL=1
+
+ac_add_options --enable-optimize
+ac_add_options --enable-official-branding
+
+# Let's support GTK3 for ESR60
+ac_add_options --enable-default-toolkit=cairo-gtk3
+
+ac_add_options --disable-strip
+ac_add_options --disable-install-strip
+ac_add_options --disable-tests
+ac_add_options --disable-debug
+ac_add_options --disable-crashreporter
+ac_add_options --disable-webrtc
+ac_add_options --disable-parental-controls
+# Let's make sure no preference is enabling either Adobe's or Google's CDM.
+ac_add_options --disable-eme
+ac_add_options --enable-proxy-bypass-protection
+
+# Disable telemetry
+ac_add_options MOZ_TELEMETRY_REPORTING=
+
+ac_add_options --disable-tor-launcher
+ac_add_options --with-tor-browser-version=dev-build
+ac_add_options --disable-tor-browser-update
diff --git a/.mozconfig-android b/.mozconfig-android
new file mode 100755
index 000000000000..1b5e3f3178b7
--- /dev/null
+++ b/.mozconfig-android
@@ -0,0 +1,35 @@
+mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-arm-linux-androideabi
+mk_add_options MOZ_APP_DISPLAYNAME="Tor Browser"
+export MOZILLA_OFFICIAL=1
+
+ac_add_options --enable-optimize
+ac_add_options --enable-official-branding
+
+# Android
+ac_add_options --enable-application=mobile/android
+ac_add_options --target=arm-linux-androideabi
+ac_add_options --with-android-ndk="$NDK_BASE" #Enter the android ndk location(ndk r17b)
+ac_add_options --with-android-sdk="$SDK_BASE" #Enter the android sdk location
+ac_add_options --with-branding=mobile/android/branding/alpha
+
+# Use Mozilla's Clang blobs
+CC="$HOME/.mozbuild/clang/bin/clang"
+CXX="$HOME/.mozbuild/clang/bin/clang++"
+
+#enable ccache to set amount of cache assigned for build.
+ac_add_options --with-ccache
+
+ac_add_options --enable-strip
+ac_add_options --disable-tests
+ac_add_options --disable-debug
+ac_add_options --disable-rust-debug
+
+ac_add_options --disable-updater
+ac_add_options --disable-crashreporter
+ac_add_options --disable-webrtc
+ac_add_options --disable-parental-controls
+
+ac_add_options --enable-proxy-bypass-protection
+
+# Disable telemetry
+ac_add_options MOZ_TELEMETRY_REPORTING=
diff --git a/.mozconfig-asan b/.mozconfig-asan
new file mode 100644
index 000000000000..d812a55a9cea
--- /dev/null
+++ b/.mozconfig-asan
@@ -0,0 +1,44 @@
+. $topsrcdir/browser/config/mozconfig
+
+export CFLAGS="-fsanitize=address -Dxmalloc=myxmalloc"
+export CXXFLAGS="-fsanitize=address -Dxmalloc=myxmalloc"
+# We need to add -ldl explicitely due to bug 1213698
+export LDFLAGS="-fsanitize=address -ldl"
+
+# Define HOST_CFLAGS, etc. to avoid compiling programs such as mbsdiff
+# (which is part of mar-tools and is not distributed to end-users) with
+# ASan. See bug 17858.
+export HOST_CFLAGS=""
+export HOST_CXXFLAGS=""
+export HOST_LDFLAGS="-ldl"
+
+mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-@CONFIG_GUESS@
+mk_add_options MOZ_APP_DISPLAYNAME="Tor Browser"
+export MOZILLA_OFFICIAL=1
+export BINDGEN_CFLAGS='--gcc-toolchain=/var/tmp/dist/gcc'
+
+ac_add_options --enable-address-sanitizer
+ac_add_options --disable-jemalloc
+ac_add_options --disable-elf-hack
+ac_add_options --with-clang-path=/var/tmp/dist/clang/bin/clang
+
+ac_add_options --enable-optimize
+ac_add_options --enable-official-branding
+
+# Let's support GTK3 for ESR60
+ac_add_options --enable-default-toolkit=cairo-gtk3
+
+ac_add_options --enable-tor-browser-update
+
+ac_add_options --disable-strip
+ac_add_options --disable-install-strip
+ac_add_options --disable-tests
+ac_add_options --disable-debug
+ac_add_options --disable-crashreporter
+ac_add_options --disable-webrtc
+ac_add_options --disable-parental-controls
+ac_add_options --disable-eme
+ac_add_options --enable-proxy-bypass-protection
+
+# Disable telemetry
+ac_add_options MOZ_TELEMETRY_REPORTING=
diff --git a/.mozconfig-mac b/.mozconfig-mac
new file mode 100644
index 000000000000..1f89cab30bbc
--- /dev/null
+++ b/.mozconfig-mac
@@ -0,0 +1,55 @@
+# ld needs libLTO.so from llvm
+mk_add_options "export LD_LIBRARY_PATH=$topsrcdir/clang/lib"
+
+CROSS_CCTOOLS_PATH=$topsrcdir/cctools
+CROSS_SYSROOT=$topsrcdir/MacOSX10.7.sdk
+CROSS_PRIVATE_FRAMEWORKS=$CROSS_SYSROOT/System/Library/PrivateFrameworks
+HARDENING_FLAGS="-Werror=format -Werror=format-security -fstack-protector-strong -D_FORTIFY_SOURCE=2"
+FLAGS="-target x86_64-apple-darwin10 -mlinker-version=136 -B $CROSS_CCTOOLS_PATH/bin -isysroot $CROSS_SYSROOT $HARDENING_FLAGS"
+
+export CC="$topsrcdir/clang/bin/clang $FLAGS"
+export CXX="$topsrcdir/clang/bin/clang++ $FLAGS"
+export CPP="$topsrcdir/clang/bin/clang $FLAGS -E"
+export LLVMCONFIG=$topsrcdir/clang/bin/llvm-config
+export LDFLAGS="-Wl,-syslibroot,$CROSS_SYSROOT -Wl,-dead_strip -Wl,-pie"
+export TOOLCHAIN_PREFIX=$CROSS_CCTOOLS_PATH/bin/x86_64-apple-darwin10-
+#TODO: bug 1184202 - would be nice if these could be detected with TOOLCHAIN_PREFIX automatically
+export AR=${TOOLCHAIN_PREFIX}ar
+export RANLIB=${TOOLCHAIN_PREFIX}ranlib
+export STRIP=${TOOLCHAIN_PREFIX}strip
+export OTOOL=${TOOLCHAIN_PREFIX}otool
+export DSYMUTIL=$topsrcdir/clang/bin/llvm-dsymutil
+
+export HOST_CC="$topsrcdir/clang/bin/clang"
+export HOST_CXX="$topsrcdir/clang/bin/clang++"
+export HOST_CPP="$topsrcdir/clang/bin/clang -E"
+export HOST_CFLAGS="-g"
+export HOST_CXXFLAGS="-g"
+export HOST_LDFLAGS="-g"
+
+ac_add_options --target=x86_64-apple-darwin
+ac_add_options --with-macos-private-frameworks=$CROSS_PRIVATE_FRAMEWORKS
+
+mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-macos
+mk_add_options MOZ_APP_DISPLAYNAME="Tor Browser"
+export MOZILLA_OFFICIAL=1
+
+ac_add_options --enable-application=browser
+ac_add_options --enable-strip
+ac_add_options --enable-official-branding
+ac_add_options --enable-optimize
+ac_add_options --disable-debug
+
+ac_add_options --enable-tor-browser-data-outside-app-dir
+ac_add_options --enable-tor-browser-update
+
+ac_add_options --disable-crashreporter
+ac_add_options --disable-webrtc
+ac_add_options --disable-parental-controls
+ac_add_options --disable-tests
+# Let's make sure no preference is enabling either Adobe's or Google's CDM.
+ac_add_options --disable-eme
+ac_add_options --enable-proxy-bypass-protection
+
+# Disable telemetry
+ac_add_options MOZ_TELEMETRY_REPORTING=
diff --git a/.mozconfig-mingw b/.mozconfig-mingw
new file mode 100644
index 000000000000..4fb050308060
--- /dev/null
+++ b/.mozconfig-mingw
@@ -0,0 +1,30 @@
+CROSS_COMPILE=1
+
+ac_add_options --enable-application=browser
+ac_add_options --target=i686-w64-mingw32
+ac_add_options --with-toolchain-prefix=i686-w64-mingw32-
+ac_add_options --enable-default-toolkit=cairo-windows
+mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-mingw
+mk_add_options MOZ_APP_DISPLAYNAME="Tor Browser"
+export MOZILLA_OFFICIAL=1
+
+ac_add_options --disable-debug
+ac_add_options --enable-optimize
+ac_add_options --enable-strip
+ac_add_options --enable-official-branding
+
+ac_add_options --enable-tor-browser-update
+ac_add_options --disable-bits-download
+
+# Let's make sure no preference is enabling either Adobe's or Google's CDM.
+ac_add_options --disable-eme
+ac_add_options --disable-crashreporter
+ac_add_options --disable-maintenance-service
+ac_add_options --disable-webrtc
+ac_add_options --disable-parental-controls
+ac_add_options --disable-tests
+ac_add_options --enable-proxy-bypass-protection
+
+# Disable telemetry
+ac_add_options MOZ_TELEMETRY_REPORTING=
+ac_add_options --disable-default-browser-agent
diff --git a/browser/base/moz.build b/browser/base/moz.build
index e136e0986a3c..ebb4cbf79fd0 100644
--- a/browser/base/moz.build
+++ b/browser/base/moz.build
@@ -71,4 +71,7 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('windows', 'gtk', 'cocoa'):
if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('windows', 'gtk'):
DEFINES['MENUBAR_CAN_AUTOHIDE'] = 1
+if CONFIG['TOR_BROWSER_UPDATE']:
+ DEFINES['TOR_BROWSER_UPDATE'] = 1
+
JAR_MANIFESTS += ['jar.mn']
diff --git a/browser/installer/Makefile.in b/browser/installer/Makefile.in
index b861ad214a64..0325f0ffab9a 100644
--- a/browser/installer/Makefile.in
+++ b/browser/installer/Makefile.in
@@ -82,6 +82,14 @@ endif
endif
endif
+ifdef TOR_BROWSER_DISABLE_TOR_LAUNCHER
+DEFINES += -DTOR_BROWSER_DISABLE_TOR_LAUNCHER
+endif
+
+ifdef TOR_BROWSER_UPDATE
+DEFINES += -DTOR_BROWSER_UPDATE
+endif
+
ifneq (,$(filter WINNT Darwin Android,$(OS_TARGET)))
DEFINES += -DMOZ_SHARED_MOZGLUE=1
endif
diff --git a/browser/moz.configure b/browser/moz.configure
index a251050feb9b..3b6b377235ca 100644
--- a/browser/moz.configure
+++ b/browser/moz.configure
@@ -5,11 +5,11 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
imply_option('MOZ_PLACES', True)
-imply_option('MOZ_SERVICES_HEALTHREPORT', True)
+imply_option('MOZ_SERVICES_HEALTHREPORT', False)
imply_option('MOZ_SERVICES_SYNC', True)
-imply_option('MOZ_DEDICATED_PROFILES', True)
-imply_option('MOZ_BLOCK_PROFILE_DOWNGRADE', True)
-imply_option('MOZ_NORMANDY', True)
+imply_option('MOZ_DEDICATED_PROFILES', False)
+imply_option('MOZ_BLOCK_PROFILE_DOWNGRADE', False)
+imply_option('MOZ_NORMANDY', False)
with only_when(target_is_linux & compile_environment):
option(env='MOZ_NO_PIE_COMPAT',
diff --git a/build/moz.configure/old.configure b/build/moz.configure/old.configure
index 136abbcafa69..9b663a1bf4f1 100644
--- a/build/moz.configure/old.configure
+++ b/build/moz.configure/old.configure
@@ -248,6 +248,12 @@ def old_configure_options(*options):
'--with-user-appdir',
'--x-includes',
'--x-libraries',
+
+ # Tor additions.
+ '--with-tor-browser-version',
+ '--enable-tor-browser-update',
+ '--enable-tor-browser-data-outside-app-dir',
+ '--enable-tor-launcher',
)
def prepare_configure_options(host, target, all_options, *options):
# old-configure only supports the options listed in @old_configure_options
diff --git a/mobile/android/confvars.sh b/mobile/android/confvars.sh
index 77191834d240..47a6a8dbae1d 100644
--- a/mobile/android/confvars.sh
+++ b/mobile/android/confvars.sh
@@ -30,9 +30,18 @@ MOZ_ANDROID_BROWSER_INTENT_CLASS=org.mozilla.gecko.BrowserApp
MOZ_NO_SMART_CARDS=1
+# Adds MIME-type support for raw video
MOZ_RAW=1
# use custom widget for html:select
MOZ_USE_NATIVE_POPUP_WINDOWS=1
MOZ_APP_ID={aa3c5121-dab2-40e2-81ca-7ea25febc110}
+
+### Tor Browser for Android ###
+
+# Disable telemetry at compile-time
+unset MOZ_TELEMETRY_REPORTING
+
+# Disable data reporting at compile-time
+unset MOZ_DATA_REPORTING
diff --git a/mobile/android/geckoview/build.gradle b/mobile/android/geckoview/build.gradle
index 82d36c179c92..c1b51537031d 100644
--- a/mobile/android/geckoview/build.gradle
+++ b/mobile/android/geckoview/build.gradle
@@ -92,6 +92,7 @@ android {
buildConfigField 'String', "MOZ_APP_DISPLAYNAME", "\"${mozconfig.substs.MOZ_APP_DISPLAYNAME}\"";
buildConfigField 'String', "MOZ_APP_UA_NAME", "\"${mozconfig.substs.MOZ_APP_UA_NAME}\"";
buildConfigField 'String', "MOZ_UPDATE_CHANNEL", "\"${mozconfig.substs.MOZ_UPDATE_CHANNEL}\"";
+ buildConfigField 'String', "TOR_BROWSER_VERSION", "\"${mozconfig.substs.TOR_BROWSER_VERSION}\"";
// MOZILLA_VERSION is oddly quoted from autoconf, but we don't have to handle it specially in Gradle.
buildConfigField 'String', "MOZILLA_VERSION", "\"${mozconfig.substs.MOZILLA_VERSION}\"";
diff --git a/mobile/android/moz.configure b/mobile/android/moz.configure
index fa510f0a57d3..f7b4df4ac24a 100644
--- a/mobile/android/moz.configure
+++ b/mobile/android/moz.configure
@@ -10,7 +10,7 @@ project_flag('MOZ_ANDROID_EXCLUDE_FONTS',
project_flag('MOZ_ANDROID_HLS_SUPPORT',
help='Enable HLS (HTTP Live Streaming) support (currently using the ExoPlayer library)',
- default=True)
+ default=False)
option(env='FENNEC_NIGHTLY',
help='Enable experimental code for Fennec Nightly users. NOTE: This is *not* equivalent '
@@ -26,9 +26,12 @@ def fennec_nightly(nightly):
return bool(nightly)
imply_option('MOZ_NORMANDY', False)
-imply_option('MOZ_SERVICES_HEALTHREPORT', True)
imply_option('MOZ_ANDROID_HISTORY', True)
imply_option('--enable-small-chunk-size', True)
+# Comment this so we can imply |False| in torbrowser.configure
+# The Build system doesn't allow multiple imply_option()
+# calls with the same key.
+#imply_option('MOZ_SERVICES_HEALTHREPORT', True)
@depends(target)
def check_target(target):
@@ -39,6 +42,8 @@ def check_target(target):
'Build_Instructions/Simple_Firefox_for_Android_build '
'for more information about the necessary options.')
+include('torbrowser.configure')
+
include('../../toolkit/moz.configure')
include('../../build/moz.configure/android-sdk.configure')
include('../../build/moz.configure/java.configure')
@@ -50,3 +55,11 @@ option(env='MOZ_ANDROID_FAT_AAR_ARCHITECTURES',
help='Comma-separated list of Android CPU architectures like "armeabi-v7a,arm64-v8a,x86,x86_64"')
set_config('MOZ_ANDROID_FAT_AAR_ARCHITECTURES', depends('MOZ_ANDROID_FAT_AAR_ARCHITECTURES')(lambda x: x))
+
+project_flag('MOZ_ANDROID_NETWORK_STATE',
+ help='Include permission for accessing WiFi/network state on Android',
+ default=False)
+
+project_flag('MOZ_ANDROID_LOCATION',
+ help='Include permission for accessing fine and course-grain Location on Android',
+ default=False)
diff --git a/mobile/android/torbrowser.configure b/mobile/android/torbrowser.configure
new file mode 100644
index 000000000000..2ff6215eedc9
--- /dev/null
+++ b/mobile/android/torbrowser.configure
@@ -0,0 +1,30 @@
+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
+# vim: set filetype=python:
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Set Tor Browser default config
+
+imply_option('MOZ_ANDROID_EXCLUDE_FONTS', False)
+
+# Disable uploading crash reports and dump files to an external server
+# This is still configured in old-configure. Uncomment when this moves
+# to the python config
+#imply_option('MOZ_CRASHREPORTER', False)
+
+# Disable uploading information about the browser configuration and
+# performance to an external server
+imply_option('MOZ_SERVICES_HEALTHREPORT', False)
+
+# Disable creating telemetry and data reports that are uploaded to an
+# external server
+# These aren't actually configure options. These are disabled in
+# confvars.sh, but they look like configure options so we'll document
+# them here, as well.
+#XXX: no confvars.sh here
+#imply_option('MOZ_TELEMETRY_REPORTING', False)
+#imply_option('MOZ_DATA_REPORTING', False)
+
+imply_option('MOZ_ANDROID_NETWORK_STATE', False);
+imply_option('MOZ_ANDROID_LOCATION', False);
diff --git a/old-configure.in b/old-configure.in
index dfb072b19cfb..2c3308a27657 100644
--- a/old-configure.in
+++ b/old-configure.in
@@ -1966,6 +1966,55 @@ if test -n "$MOZ_UPDATER"; then
AC_DEFINE(MOZ_UPDATER)
fi
+dnl ========================================================
+dnl Tor additions
+dnl ========================================================
+MOZ_ARG_WITH_STRING(tor-browser-version,
+[ --with-tor-browser-version=VERSION
+ Set Tor Browser version, e.g., 7.0a1],
+ TOR_BROWSER_VERSION="$withval")
+
+if test -z "$TOR_BROWSER_VERSION"; then
+ AC_MSG_ERROR([--with-tor-browser-version is required for Tor Browser.])
+fi
+
+MOZ_ARG_ENABLE_BOOL(tor-browser-update,
+[ --enable-tor-browser-update
+ Enable Tor Browser update],
+ TOR_BROWSER_UPDATE=1,
+ TOR_BROWSER_UPDATE= )
+
+if test -n "$TOR_BROWSER_UPDATE"; then
+ AC_DEFINE(TOR_BROWSER_UPDATE)
+fi
+
+MOZ_ARG_ENABLE_BOOL(tor-browser-data-outside-app-dir,
+[ --enable-tor-browser-data-outside-app-dir
+ Enable Tor Browser data outside of app directory],
+ TOR_BROWSER_DATA_OUTSIDE_APP_DIR=1,
+ TOR_BROWSER_DATA_OUTSIDE_APP_DIR= )
+
+if test -n "$TOR_BROWSER_DATA_OUTSIDE_APP_DIR"; then
+ AC_DEFINE(TOR_BROWSER_DATA_OUTSIDE_APP_DIR)
+fi
+
+AC_DEFINE_UNQUOTED(TOR_BROWSER_VERSION,$TOR_BROWSER_VERSION)
+AC_DEFINE_UNQUOTED(TOR_BROWSER_VERSION_QUOTED,"$TOR_BROWSER_VERSION")
+AC_SUBST(TOR_BROWSER_UPDATE)
+AC_SUBST(TOR_BROWSER_DATA_OUTSIDE_APP_DIR)
+
+MOZ_ARG_DISABLE_BOOL(tor-launcher,
+[ --disable-tor-launcher
+ Do not include Tor Launcher],
+ TOR_BROWSER_DISABLE_TOR_LAUNCHER=1,
+ TOR_BROWSER_DISABLE_TOR_LAUNCHER=)
+
+if test -n "$TOR_BROWSER_DISABLE_TOR_LAUNCHER"; then
+ AC_DEFINE(TOR_BROWSER_DISABLE_TOR_LAUNCHER)
+fi
+
+AC_SUBST(TOR_BROWSER_DISABLE_TOR_LAUNCHER)
+
dnl ========================================================
dnl parental controls (for Windows Vista)
dnl ========================================================
diff --git a/security/moz.build b/security/moz.build
index dec6f3ef7e21..f00f9fe5d7a7 100644
--- a/security/moz.build
+++ b/security/moz.build
@@ -85,7 +85,7 @@ gyp_vars['nss_dist_obj_dir'] = '$PRODUCT_DIR/dist/bin'
gyp_vars['disable_tests'] = 1
gyp_vars['disable_dbm'] = 1
gyp_vars['disable_libpkix'] = 1
-gyp_vars['enable_sslkeylogfile'] = 1
+gyp_vars['enable_sslkeylogfile'] = 0
# pkg-config won't reliably find zlib on our builders, so just force it.
# System zlib is only used for modutil and signtool unless
# SSL zlib is enabled, which we are disabling immediately below this.
diff --git a/security/nss/lib/ssl/Makefile b/security/nss/lib/ssl/Makefile
index 8a8b06f4b508..90571bb3e256 100644
--- a/security/nss/lib/ssl/Makefile
+++ b/security/nss/lib/ssl/Makefile
@@ -41,7 +41,7 @@ endif
# Enable key logging by default in debug builds, but not opt builds.
# Logging still needs to be enabled at runtime through env vars.
-NSS_ALLOW_SSLKEYLOGFILE ?= $(if $(BUILD_OPT),0,1)
+NSS_ALLOW_SSLKEYLOGFILE ?= 0
ifeq (1,$(NSS_ALLOW_SSLKEYLOGFILE))
DEFINES += -DNSS_ALLOW_SSLKEYLOGFILE=1
endif
diff --git a/toolkit/modules/AppConstants.jsm b/toolkit/modules/AppConstants.jsm
index 9b035435aed6..cd8ca2659626 100644
--- a/toolkit/modules/AppConstants.jsm
+++ b/toolkit/modules/AppConstants.jsm
@@ -341,6 +341,8 @@ this.AppConstants = Object.freeze({
MOZ_WIDGET_TOOLKIT: "@MOZ_WIDGET_TOOLKIT@",
ANDROID_PACKAGE_NAME: "@ANDROID_PACKAGE_NAME@",
+ TOR_BROWSER_VERSION: "@TOR_BROWSER_VERSION@",
+
DEBUG_JS_MODULES: "@DEBUG_JS_MODULES@",
MOZ_BING_API_CLIENTID: "@MOZ_BING_API_CLIENTID@",
@@ -418,4 +420,11 @@ this.AppConstants = Object.freeze({
#else
false,
#endif
+
+ TOR_BROWSER_UPDATE:
+#ifdef TOR_BROWSER_UPDATE
+ true,
+#else
+ false,
+#endif
});
diff --git a/toolkit/modules/moz.build b/toolkit/modules/moz.build
index e5858122fa1c..f000f35c126f 100644
--- a/toolkit/modules/moz.build
+++ b/toolkit/modules/moz.build
@@ -296,6 +296,9 @@ for var in ('MOZ_ALLOW_ADDON_SIDELOAD',
if CONFIG[var]:
DEFINES[var] = True
+if CONFIG['TOR_BROWSER_UPDATE']:
+ DEFINES['TOR_BROWSER_UPDATE'] = 1
+
JAR_MANIFESTS += ['jar.mn']
DEFINES['TOPOBJDIR'] = TOPOBJDIR
1
0

[tor-browser/tor-browser-78.5.0esr-10.5-1] Bug 1585470 - Remove duplicate cpu-features.c definition when building GV without webrtc r=glandium
by sysrqb@torproject.org 14 Nov '20
by sysrqb@torproject.org 14 Nov '20
14 Nov '20
commit 0fd68a8b57b43dcd6c9e3bb0981910248f68562c
Author: Matthew Finkel <Matthew.Finkel(a)gmail.com>
Date: Thu Jul 9 19:10:34 2020 +0000
Bug 1585470 - Remove duplicate cpu-features.c definition when building GV without webrtc r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D82120
---
media/libaom/moz.build | 5 -----
1 file changed, 5 deletions(-)
diff --git a/media/libaom/moz.build b/media/libaom/moz.build
index 2dec3de4581c..0b3ba0707df9 100644
--- a/media/libaom/moz.build
+++ b/media/libaom/moz.build
@@ -84,11 +84,6 @@ if CONFIG['OS_TARGET'] == 'Android':
# the OS they're on, so do it for them.
DEFINES['__linux__'] = True
- if not CONFIG['MOZ_WEBRTC']:
- SOURCES += [
- '%%%s/sources/android/cpufeatures/cpu-features.c' % CONFIG['ANDROID_NDK'],
- ]
-
for f in SOURCES:
if f.endswith('sse2.c'):
SOURCES[f].flags += CONFIG['SSE2_FLAGS']
1
0

[tor-browser/tor-browser-78.5.0esr-10.5-1] TB4: Tor Browser's Firefox preference overrides.
by sysrqb@torproject.org 14 Nov '20
by sysrqb@torproject.org 14 Nov '20
14 Nov '20
commit 61432de93cc2d18c6e3ac79ae1714be49c09e38d
Author: Mike Perry <mikeperry-git(a)torproject.org>
Date: Tue Sep 10 18:20:43 2013 -0700
TB4: Tor Browser's Firefox preference overrides.
This hack directly includes our preference changes in omni.ja.
Bug 18292: Staged updates fail on Windows
Temporarily disable staged updates on Windows.
Bug 18297: Use separate Noto JP,KR,SC,TC fonts
Bug 23404: Add Noto Sans Buginese to the macOS whitelist
Bug 23745: Set dom.indexedDB.enabled = true
Bug 13575: Disable randomised Firefox HTTP cache decay user tests.
(Fernando Fernandez Mancera <ffmancera(a)riseup.net>)
Bug 17252: Enable session identifiers with FPI
Session tickets and session identifiers were isolated
by OriginAttributes, so we can re-enable them by
allowing the default value (true) of
"security.ssl.disable_session_identifiers".
The pref "security.enable_tls_session_tickets" is obsolete
(removed in https://bugzilla.mozilla.org/917049)
Bug 14952: Enable http/2 and AltSvc
In Firefox, SPDY/HTTP2 now uses Origin Attributes for
isolation of connections, push streams, origin frames, etc.
That means we get first-party isolation provided
"privacy.firstparty.isolate" is true. So in this patch, we
stop overriding "network.http.spdy.enabled" and
"network.http.spdy.enabled.http2".
Alternate Services also use Origin Attributes for isolation.
So we stop overriding
"network.http.altsvc.enabled" and "network.http.altsvc.oe"
as well.
(All 4 of the abovementioned "network.http.*" prefs adopt
Firefox 60ESR's default value of true.)
However, we want to disable HTTP/2 push for now, so we
set "network.http.spdy.allow-push" to false.
"network.http.spdy.enabled.http2draft" was removed in Bug 1132357.
"network.http.sped.enabled.v2" was removed in Bug 912550.
"network.http.sped.enabled.v3" was removed in Bug 1097944.
"network.http.sped.enabled.v3-1" was removed in Bug 1248197.
Bug 26114: addons.mozilla.org is not special
* Don't expose navigator.mozAddonManager on any site
* Don't block NoScript from modifying addons.mozilla.org or other sites
Enable ReaderView mode again (#27281).
Bug 29916: Make sure enterprise policies are disabled
Bug 2874: Block Components.interfaces from content
Bug 26146: Spoof HTTP User-Agent header for desktop platforms
In Tor Browser 8.0, the OS was revealed in both the HTTP User-Agent
header and to JavaScript code via navigator.userAgent. To avoid
leaking the OS inside each HTTP request (which many web servers
log), always use the Windows 7 OS value in the desktop User-Agent
header. We continue to allow access to the actual OS via JavaScript,
since doing so improves compatibility with web applications such
as GitHub and Google Docs.
Bug 12885: Windows Jump Lists fail for Tor Browser
Jumplist entries are stored in a binary file in:
%APPDATA%\\Microsoft\Windows\Recent\CustomDestinations\
and has a name in the form
[a-f0-9]+.customDestinations-ms
The hex at the front is unique per app, and is ultimately derived from
something called the 'App User Model ID' (AUMID) via some unknown
hashing method. The AUMID is provided as a key when programmatically
creating, updating, and deleting a jumplist. The default behaviour in
firefox is for the installer to define an AUMID for an app, and save it
in the registry so that the jumplist data can be removed by the
uninstaller.
However, the Tor Browser does not set this (or any other) regkey during
installation, so this codepath fails and the app's AUMID is left
undefined. As a result the app's AUMID ends up being defined by
windows, but unknowable by Tor Browser. This unknown AUMID is used to
create and modify the jumplist, but the delete API requires that we
provide the app's AUMID explicitly. Since we don't know what the AUMID
is (since the expected regkey where it is normally stored does not
exist) jumplist deletion will fail and we will leave behind a mostly
empty customDestinations-ms file. The name of the file is derived from
the binary path, so an enterprising person could reverse engineer how
that hex name is calculated, and generate the name for Tor Browser's
default Desktop installation path to determine whether a person had
used Tor Browser in the past.
The 'taskbar.grouping.useprofile' option that is enabled by this patch
works around this AUMID problem by having firefox.exe create it's own
AUMID based on the profile path (rather than looking for a regkey). This
way, if a user goes in and enables and disables jumplist entries, the
backing store is properly deleted.
Unfortunately, all windows users currently have this file lurking in
the above mentioned directory and this patch will not remove it since it
was created with an unknown AUMID. However, another patch could be
written which goes to that directory and deletes any item containing the
'Tor Browser' string. See bug 28996.
Bug 31396: Disable indexedDB WebExtension storage backend.
Bug 30845: Make sure default themes and other internal extensions are enabled
Bug 28896: Enable extensions in private browsing by default
Bug 31065: Explicitly allow proxying localhost
Bug 31598: Enable letterboxing
Disable Presentation API everywhere
Bug 21549 - Use Firefox's WASM default pref. It is disabled at safer
security levels.
Bug 32321: Disable Mozilla's MitM pings
Bug 19890: Disable installation of system addons
By setting the URL to "" we make sure that already installed system
addons get deleted as well.
Bug 22548: Firefox downgrades VP9 videos to VP8.
On systems where H.264 is not available or no HWA, VP9 is preferred. But in Tor
Browser 7.0 all youtube videos are degraded to VP8.
This behaviour can be turned off by setting media.benchmark.vp9.threshold to 0.
All clients will get better experience and lower traffic, beause TBB doesn't
use "Use hardware acceleration when available".
Bug 25741 - TBA: Add mobile-override of 000-tor-browser prefs
Bug 16441: Suppress "Reset Tor Browser" prompt.
Bug 29120: Use the in-memory media cache and increase its maximum size.
Bug 33697: use old search config based on list.json
Bug 33855: Ensure that site-specific browser mode is disabled.
Bug 30682: Disable Intermediate CA Preloading.
Bug 40061: Omit the Windows default browser agent from the build
squash! TB4: Tor Browser's Firefox preference overrides.
Bug 40140: Videos stop working with Tor Browser 10.0 on Windows
---
.eslintignore | 3 +
browser/app/profile/000-tor-browser.js | 642 ++++++++++++++++++++++++++
browser/app/profile/firefox.js | 6 +-
browser/installer/package-manifest.in | 1 +
browser/moz.build | 1 +
mobile/android/app/000-tor-browser-android.js | 47 ++
mobile/android/app/geckoview-prefs.js | 2 +
mobile/android/app/mobile.js | 4 +
mobile/android/app/moz.build | 1 +
taskcluster/ci/source-test/mozlint.yml | 2 +
10 files changed, 706 insertions(+), 3 deletions(-)
diff --git a/.eslintignore b/.eslintignore
index e0be1073894c..031ff26f1808 100644
--- a/.eslintignore
+++ b/.eslintignore
@@ -143,6 +143,9 @@ js/src/jsapi-tests/binast/
js/src/tests/
js/src/Y.js
+# uses `#include`
+mobile/android/app/000-tor-browser-android.js
+
# Uses `#filter substitution`
mobile/android/app/mobile.js
mobile/android/app/geckoview-prefs.js
diff --git a/browser/app/profile/000-tor-browser.js b/browser/app/profile/000-tor-browser.js
new file mode 100644
index 000000000000..0c423069a2c8
--- /dev/null
+++ b/browser/app/profile/000-tor-browser.js
@@ -0,0 +1,642 @@
+# Default Preferences
+# Tor Browser Bundle
+# Do not edit this file.
+
+// Please maintain unit tests at ./tbb-tests/browser_tor_TB4.js
+
+// Disable initial homepage notifications
+pref("browser.search.update", false);
+pref("browser.rights.3.shown", true);
+pref("browser.startup.homepage_override.mstone", "ignore");
+pref("startup.homepage_welcome_url", "");
+pref("startup.homepage_welcome_url.additional", "");
+
+// Set a generic, default URL that will be opened in a tab after an update.
+// Typically, this will not be used; instead, the <update> element within
+// each update manifest should contain attributes similar to:
+// actions="showURL"
+// openURL="https://blog.torproject.org/tor-browser-55a2-released"
+pref("startup.homepage_override_url", "https://blog.torproject.org/category/tags/tor-browser");
+
+// Try to nag a bit more about updates: Pop up a restart dialog an hour after the initial dialog
+pref("app.update.promptWaitTime", 3600);
+
+#ifdef XP_WIN
+// For now, disable staged updates on Windows (see #18292).
+pref("app.update.staging.enabled", false);
+#endif
+
+// Disable "Slow startup" warnings and associated disk history
+// (bug #13346)
+pref("browser.slowStartup.notificationDisabled", true);
+pref("browser.slowStartup.maxSamples", 0);
+pref("browser.slowStartup.samples", 0);
+
+// Disable the "Refresh" prompt that is displayed for stale profiles.
+pref("browser.disableResetPrompt", true);
+
+// Disk activity: Disable Browsing History Storage
+pref("browser.privatebrowsing.autostart", true);
+pref("browser.cache.disk.enable", false);
+pref("browser.cache.offline.enable", false);
+pref("permissions.memory_only", true);
+pref("network.cookie.lifetimePolicy", 2);
+pref("security.nocertdb", true);
+
+// Disk activity: TBB Directory Isolation
+pref("browser.download.useDownloadDir", false);
+pref("browser.shell.checkDefaultBrowser", false);
+pref("browser.download.manager.addToRecentDocs", false);
+
+// Misc privacy: Disk
+pref("signon.rememberSignons", false);
+pref("browser.formfill.enable", false);
+pref("signon.autofillForms", false);
+pref("browser.sessionstore.privacy_level", 2);
+// Use the in-memory media cache and increase its maximum size (#29120)
+pref("browser.privatebrowsing.forceMediaMemoryCache", true);
+pref("media.memory_cache_max_size", 16384);
+// Disable site-specific browsing to avoid sharing site icons with the OS.
+pref("browser.ssb.enabled", false);
+
+// Misc privacy: Remote
+pref("browser.send_pings", false);
+pref("geo.enabled", false);
+pref("geo.provider.network.url", "");
+pref("browser.search.suggest.enabled", false);
+pref("browser.safebrowsing.malware.enabled", false);
+pref("browser.safebrowsing.phishing.enabled", false);
+pref("browser.safebrowsing.downloads.enabled", false);
+pref("browser.safebrowsing.downloads.remote.enabled", false);
+pref("browser.safebrowsing.blockedURIs.enabled", false);
+pref("browser.safebrowsing.downloads.remote.url", "");
+pref("browser.safebrowsing.provider.google.updateURL", "");
+pref("browser.safebrowsing.provider.google.gethashURL", "");
+pref("browser.safebrowsing.provider.google4.updateURL", "");
+pref("browser.safebrowsing.provider.google4.gethashURL", "");
+pref("browser.safebrowsing.provider.mozilla.updateURL", "");
+pref("browser.safebrowsing.provider.mozilla.gethashURL", "");
+pref("extensions.ui.lastCategory", "addons://list/extension");
+pref("datareporting.healthreport.uploadEnabled", false);
+pref("datareporting.policy.dataSubmissionEnabled", false);
+// Make sure Unified Telemetry is really disabled, see: #18738.
+pref("toolkit.telemetry.unified", false);
+pref("toolkit.telemetry.enabled", false);
+#ifdef XP_WIN
+// Defense-in-depth: ensure that the Windows default browser agent will
+// not ping Mozilla if it is somehow present (we omit it at build time).
+pref("default-browser-agent.enabled", false);
+#endif
+pref("identity.fxaccounts.enabled", false); // Disable sync by default
+pref("services.sync.engine.prefs", false); // Never sync prefs, addons, or tabs with other browsers
+pref("services.sync.engine.addons", false);
+pref("services.sync.engine.tabs", false);
+pref("extensions.getAddons.cache.enabled", false); // https://blog.mozilla.org/addons/how-to-opt-out-of-add-on-metadata-updates/
+pref("browser.newtabpage.enabled", false);
+pref("browser.search.region", "US"); // The next two prefs disable GeoIP search lookups (#16254)
+pref("browser.search.geoip.url", "");
+pref("browser.fixup.alternate.enabled", false); // Bug #16783: Prevent .onion fixups
+// Make sure there is no Tracking Protection active in Tor Browser, see: #17898.
+pref("privacy.trackingprotection.enabled", false);
+pref("privacy.trackingprotection.pbmode.enabled", false);
+pref("privacy.trackingprotection.annotate_channels", false);
+pref("privacy.trackingprotection.cryptomining.enabled", false);
+pref("privacy.trackingprotection.fingerprinting.enabled", false);
+pref("privacy.trackingprotection.socialtracking.enabled", false);
+pref("privacy.socialtracking.block_cookies.enabled", false);
+pref("privacy.annotate_channels.strict_list.enabled", false);
+
+// Disable the Pocket extension (Bug #18886 and #31602)
+pref("extensions.pocket.enabled", false);
+pref("network.http.referer.hideOnionSource", true);
+
+// Disable use of WiFi location information
+pref("browser.region.network.scan", false);
+pref("browser.region.network.url", "");
+
+// Don't load Mozilla domains in a separate tab process
+pref("browser.tabs.remote.separatedMozillaDomains", "");
+
+// Avoid DNS lookups on search terms
+pref("browser.urlbar.dnsResolveSingleWordsAfterSearch", 0);
+
+// Disable about:newtab and "first run" experiments
+pref("messaging-system.rsexperimentloader.enabled", false);
+pref("trailhead.firstrun.branches", "");
+
+// Clear the list of trusted recursive resolver services
+pref("network.trr.resolvers", "");
+
+// Disable crlite
+pref("security.pki.crlite_mode", 0);
+
+// Disable website password breach alerts
+pref("signon.management.page.breach-alerts.enabled", false);
+pref("extensions.fxmonitor.enabled", false);
+
+// Remove mobile app tracking URLs
+pref("signon.management.page.mobileAndroidURL", "");
+pref("signon.management.page.mobileAppleURL", "");
+
+// Disable ServiceWorkers and push notifications by default
+pref("dom.serviceWorkers.enabled", false);
+pref("dom.push.enabled", false);
+
+// Fingerprinting
+pref("webgl.disable-extensions", true);
+pref("webgl.disable-fail-if-major-performance-caveat", true);
+pref("webgl.enable-webgl2", false);
+pref("gfx.downloadable_fonts.fallback_delay", -1);
+pref("browser.startup.homepage_override.buildID", "20100101");
+pref("browser.link.open_newwindow.restriction", 0); // Bug 9881: Open popups in new tabs (to avoid fullscreen popups)
+// Set video VP9 to 0 for everyone (bug 22548)
+pref("media.benchmark.vp9.threshold", 0);
+pref("dom.enable_resource_timing", false); // Bug 13024: To hell with this API
+pref("privacy.resistFingerprinting", true);
+pref("privacy.resistFingerprinting.block_mozAddonManager", true); // Bug 26114
+pref("dom.webaudio.enabled", false); // Bug 13017: Disable Web Audio API
+pref("dom.w3c_touch_events.enabled", 0); // Bug 10286: Always disable Touch API
+pref("dom.w3c_pointer_events.enabled", false);
+pref("dom.vr.enabled", false); // Bug 21607: Disable WebVR for now
+// Disable randomised Firefox HTTP cache decay user test groups (Bug: 13575)
+pref("security.webauth.webauthn", false); // Bug 26614: Disable Web Authentication API for now
+// Disable intermediate preloading (Bug 30682)
+pref("security.remote_settings.intermediates.enabled", false);
+// Bug 2874: Block Components.interfaces from content
+pref("dom.use_components_shim", false);
+// Enable letterboxing
+pref("privacy.resistFingerprinting.letterboxing", true);
+// Disable network information API everywhere. It gets spoofed in bug 1372072
+// but, alas, the behavior is inconsistent across platforms, see:
+// https://trac.torproject.org/projects/tor/ticket/27268#comment:19. We should
+// not leak that difference if possible.
+pref("dom.netinfo.enabled", false);
+pref("network.http.referer.defaultPolicy", 2); // Bug 32948: Make referer behavior consistent regardless of private browing mode status
+pref("media.videocontrols.picture-in-picture.enabled", false); // Bug 40148: disable until audited in #40147
+
+// Third party stuff
+pref("privacy.firstparty.isolate", true); // Always enforce first party isolation
+pref("network.cookie.cookieBehavior", 1);
+pref("network.http.spdy.allow-push", false); // Disabled for now. See https://bugs.torproject.org/27127
+pref("network.predictor.enabled", false); // Temporarily disabled. See https://bugs.torproject.org/16633
+
+// Proxy and proxy security
+pref("network.proxy.socks", "127.0.0.1");
+pref("network.proxy.socks_port", 9150);
+pref("network.proxy.socks_remote_dns", true);
+pref("network.proxy.no_proxies_on", ""); // For fingerprinting and local service vulns (#10419)
+pref("network.proxy.allow_hijacking_localhost", true); // Allow proxies for localhost (#31065)
+pref("network.proxy.type", 1);
+pref("network.security.ports.banned", "9050,9051,9150,9151");
+pref("network.dns.disabled", true); // This should cover the #5741 patch for DNS leaks
+pref("network.dns.disablePrefetch", true);
+pref("network.protocol-handler.external-default", false);
+pref("network.protocol-handler.external.mailto", false);
+pref("network.protocol-handler.external.news", false);
+pref("network.protocol-handler.external.nntp", false);
+pref("network.protocol-handler.external.snews", false);
+pref("network.protocol-handler.warn-external.mailto", true);
+pref("network.protocol-handler.warn-external.news", true);
+pref("network.protocol-handler.warn-external.nntp", true);
+pref("network.protocol-handler.warn-external.snews", true);
+// Make sure we don't have any GIO supported protocols (defense in depth
+// measure)
+pref("network.gio.supported-protocols", "");
+pref("plugin.disable", true); // Disable to search plugins on first start
+pref("plugin.state.flash", 0); // Disable for defense-in-depth
+pref("media.peerconnection.enabled", false); // Disable WebRTC interfaces
+// Disables media devices but only if `media.peerconnection.enabled` is set to
+// `false` as well. (see bug 16328 for this defense-in-depth measure)
+pref("media.navigator.enabled", false);
+// GMPs: We make sure they don't show up on the Add-on panel and confuse users.
+// And the external update/donwload server must not get pinged. We apply a
+// clever solution for https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=769716.
+pref("media.gmp-provider.enabled", false);
+pref("media.gmp-manager.url.override", "data:text/plain,");
+// Since ESR52 it is not enough anymore to block pinging the GMP update/download
+// server. There is a local fallback that must be blocked now as well. See:
+// https://bugzilla.mozilla.org/show_bug.cgi?id=1267495.
+pref("media.gmp-manager.updateEnabled", false);
+// Mozilla is relying on preferences to make sure no DRM blob is downloaded and
+// run. Even though those prefs should be set correctly by specifying
+// --disable-eme (which we do), we disable all of them here as well for defense
+// in depth (see bug 16285 for more details).
+pref("browser.eme.ui.enabled", false);
+pref("media.gmp-widevinecdm.visible", false);
+pref("media.gmp-widevinecdm.enabled", false);
+pref("media.eme.enabled", false);
+pref("media.mediadrm-widevinecdm.visible", false);
+// WebIDE can bypass proxy settings for remote debugging. It also downloads
+// some additional addons that we have not reviewed. Turn all that off.
+pref("devtools.webide.autoinstallADBExtension", false);
+pref("devtools.webide.enabled", false);
+// The in-browser debugger for debugging chrome code is not coping with our
+// restrictive DNS look-up policy. We use "127.0.0.1" instead of "localhost" as
+// a workaround. See bug 16523 for more details.
+pref("devtools.debugger.chrome-debugging-host", "127.0.0.1");
+// Disable using UNC paths (bug 26424 and Mozilla's bug 1413868)
+pref("network.file.disable_unc_paths", true);
+// Enhance our treatment of file:// to avoid proxy bypasses (see Mozilla's bug
+// 1412081)
+pref("network.file.path_blacklist", "/net");
+// Make sure no enterprise policy can interfere with our proxy settings, see
+// #29916.
+pref("browser.policies.testing.disallowEnterprise", true);
+
+// Security slider
+pref("svg.in-content.enabled", true);
+pref("mathml.disabled", false);
+
+// Network and performance
+pref("security.ssl.enable_false_start", true);
+pref("network.http.connection-retry-timeout", 0);
+pref("network.http.max-persistent-connections-per-proxy", 256);
+pref("network.manage-offline-status", false);
+// No need to leak things to Mozilla, see bug 21790
+pref("network.captive-portal-service.enabled", false);
+// As a "defense in depth" measure, configure an empty push server URL (the
+// DOM Push features are disabled by default via other prefs).
+pref("dom.push.serverURL", "");
+
+// Extension support
+pref("extensions.autoDisableScopes", 0);
+pref("extensions.bootstrappedAddons", "{}");
+pref("extensions.checkCompatibility.4.*", false);
+pref("extensions.databaseSchema", 3);
+pref("extensions.enabledAddons", "https-everywhere%40eff.org:3.1.4,%7B73a6fe31-595d-460b-a920-fcc0f8843232%7D:2.6.6.1,torbutton%40torproject.org:1.5.2,ubufox%40ubuntu.com:2.6,%7B972ce4c6-7e08-4474-a285-3208198ce6fd%7D:17.0.5");
+pref("extensions.enabledItems", "langpack-en-US@firefox.mozilla.org:,{73a6fe31-595d-460b-a920-fcc0f8843232}:1.9.9.57,{e0204bd5-9d31-402b-a99d-a6aa8ffebdca}:1.2.4,{972ce4c6-7e08-4474-a285-3208198ce6fd}:3.5.8");
+pref("extensions.enabledScopes", 5); // AddonManager.SCOPE_PROFILE=1 | AddonManager.SCOPE_APPLICATION=4
+pref("extensions.pendingOperations", false);
+pref("xpinstall.whitelist.add", "");
+pref("xpinstall.whitelist.add.36", "");
+// We don't know what extensions Mozilla is advertising to our users and we
+// don't want to have some random Google Analytics script running either on the
+// about:addons page, see bug 22073, 22900 and 31601.
+pref("extensions.getAddons.showPane", false);
+pref("extensions.htmlaboutaddons.recommendations.enabled", false);
+// Show our legacy extensions directly on about:addons and get rid of the
+// warning for the default theme.
+pref("extensions.legacy.exceptions", "{972ce4c6-7e08-4474-a285-3208198ce6fd},torbutton(a)torproject.org");
+// Bug 26114: Allow NoScript to access addons.mozilla.org etc.
+pref("extensions.webextensions.restrictedDomains", "");
+// Bug 28896: Make sure our bundled WebExtensions are running in Private Browsing Mode
+pref("extensions.allowPrivateBrowsingByDefault", true);
+
+// Toolbar layout
+pref("browser.uiCustomization.state", "{\"placements\":{\"widget-overflow-fixed-list\":[],\"PersonalToolbar\":[\"personal-bookmarks\"],\"nav-bar\":[\"back-button\",\"forward-button\",\"stop-reload-button\",\"urlbar-container\",\"torbutton-button\",\"security-level-button\",\"downloads-button\"],\"TabsToolbar\":[\"tabbrowser-tabs\",\"new-tab-button\",\"alltabs-button\"],\"toolbar-menubar\":[\"menubar-items\"],\"PanelUI-contents\":[\"home-button\",\"edit-controls\",\"zoom-controls\",\"new-window-button\",\"save-page-button\",\"print-button\",\"bookmarks-menu-button\",\"history-panelmenu\",\"find-button\",\"preferences-button\",\"add-ons-button\",\"developer-button\"],\"addon-bar\":[\"addonbar-closebutton\",\"status-bar\"]},\"seen\":[\"developer-button\",\"https-everywhere-eff_eff_org-browser-action\",\"_73a6fe31-595d-460b-a920-fcc0f8843232_-browser-action\"],\"dirtyAreaCache\":[\"PersonalToolbar\",\"nav-bar\",\"TabsToolbar\",\"toolbar-menubar\"],\"currentVersion\":14,\"newElementCount
\":1}");
+
+// Putting the search engine prefs into this file to fix #11236.
+// Default search engine
+pref("browser.search.defaultenginename", "Search");
+
+// Search engine order (order displayed in the search bar dropdown)
+// Somewhat surprisingly we get some random behavior if we specify more than
+// two search engines as below. See
+// https://bugzilla.mozilla.org/show_bug.cgi?id=1126722 for details.
+pref("browser.search.order.extra.1", "Search");
+pref("browser.search.order.extra.2", "YouTube");
+
+// Enforce certificate pinning, see: https://bugs.torproject.org/16206
+pref("security.cert_pinning.enforcement_level", 2);
+
+// Don't allow MitM via Microsoft Family Safety, see bug 21686
+pref("security.family_safety.mode", 0);
+
+// Don't allow MitM via enterprise roots, see bug 30681
+pref("security.enterprise_roots.enabled", false);
+
+// Don't ping Mozilla for MitM detection, see bug 32321
+pref("security.certerrors.mitm.priming.enabled", false);
+
+// Disable the language pack signing check for now on macOS, see #31942
+#ifdef XP_MACOSX
+pref("extensions.langpacks.signatures.required", false);
+#endif
+
+// Avoid report TLS errors to Mozilla. We might want to repurpose this feature
+// one day to help detecting bad relays (which is bug 19119). For now we just
+// hide the checkbox, see bug 22072.
+pref("security.ssl.errorReporting.enabled", false);
+
+// Workaround for https://bugs.torproject.org/13579. Progress on
+// `about:downloads` is only shown if the following preference is set to `true`
+// in case the download panel got removed from the toolbar.
+pref("browser.download.panel.shown", true);
+
+// Treat .onions as secure
+pref("dom.securecontext.whitelist_onions", true);
+
+// Disable special URL bar behaviors
+pref("browser.urlbar.suggest.topsites", false);
+pref("browser.urlbar.update1.interventions", false);
+pref("browser.urlbar.update1.searchTips", false);
+
+// Skip checking omni.ja and other files for corruption since the result
+// is only reported via telemetry (which is disabled).
+pref("corroborator.enabled", false);
+
+// Having the RDD Opus option enabled on Windows breaks videos for us.
+// See: https://bugzilla.mozilla.org/show_bug.cgi?id=1667360 and
+// tor-browser#40140.
+#ifdef XP_WIN
+pref("media.rdd-opus.enabled", false);
+#endif
+
+// prefs to disable jump-list entries in the taskbar on Windows (see bug #12885)
+#ifdef XP_WIN
+// this pref changes the app's set AUMID to be dependent on the profile path, rather than
+// attempting to read it from the registry; this is necessary so that the file generated
+// by the jumplist system can be properly deleted if it is disabled
+pref("taskbar.grouping.useprofile", true);
+pref("browser.taskbar.lists.enabled", false);
+pref("browser.taskbar.lists.frequent.enabled", false);
+pref("browser.taskbar.lists.tasks.enabled", false);
+pref("browser.taskbar.lists.recent.enabled", false);
+#endif
+
+// Disable Presentation API
+pref("dom.presentation.controller.enabled", false);
+pref("dom.presentation.enabled", false);
+pref("dom.presentation.discoverable", false);
+pref("dom.presentation.discoverable.encrypted", false);
+pref("dom.presentation.discovery.enabled", false);
+pref("dom.presentation.receiver.enabled", false);
+
+pref("dom.audiochannel.audioCompeting", false);
+pref("dom.audiochannel.mediaControl", false);
+
+#expand pref("torbrowser.version", __TOR_BROWSER_VERSION_QUOTED__);
+
+// Old torbutton prefs
+
+// debug prefs
+pref("extensions.torbutton.loglevel",4);
+pref("extensions.torbutton.logmethod",1); // 0=stdout, 1=errorconsole, 2=debuglog
+
+// Display prefs
+pref("extensions.torbutton.display_circuit", true);
+pref("extensions.torbutton(a)torproject.org.description", "chrome://torbutton/locale/torbutton.properties");
+pref("extensions.torbutton.updateNeeded", false);
+
+// Tor check and proxy prefs
+pref("extensions.torbutton.test_enabled",true);
+pref("extensions.torbutton.test_url","https://check.torproject.org/?TorButton=true");
+pref("extensions.torbutton.local_tor_check",true);
+pref("extensions.torbutton.versioncheck_url","https://www.torproject.org/projects/torbrowser/RecommendedTBBVersions");
+pref("extensions.torbutton.versioncheck_enabled",true);
+pref("extensions.torbutton.use_nontor_proxy",false);
+
+// State prefs:
+pref("extensions.torbutton.startup",false);
+pref("extensions.torbutton.inserted_button",false);
+pref("extensions.torbutton.inserted_security_level",false);
+
+// This is only used when letterboxing is disabled.
+// See #7255 for details. We display the warning three times to make sure the
+// user did not click on it by accident.
+pref("extensions.torbutton.maximize_warnings_remaining", 3);
+
+// Security prefs:
+pref("extensions.torbutton.clear_http_auth",true);
+pref("extensions.torbutton.close_newnym",true);
+pref("extensions.torbutton.resize_new_windows",false);
+pref("extensions.torbutton.startup_state", 2); // 0=non-tor, 1=tor, 2=last
+pref("extensions.torbutton.tor_memory_jar",false);
+pref("extensions.torbutton.nontor_memory_jar",false);
+pref("extensions.torbutton.launch_warning",true);
+
+// Opt out of Firefox addon pings:
+// https://developer.mozilla.org/en/Addons/Working_with_AMO
+pref("extensions.torbutton(a)torproject.org.getAddons.cache.enabled", false);
+
+// Security Slider
+pref("extensions.torbutton.security_slider", 4);
+pref("extensions.torbutton.security_custom", false);
+
+pref("extensions.torbutton.confirm_plugins", true);
+pref("extensions.torbutton.confirm_newnym", true);
+
+pref("extensions.torbutton.noscript_inited", false);
+pref("extensions.torbutton.noscript_persist", false);
+
+// Browser home page:
+pref("browser.startup.homepage", "about:tor");
+
+// This pref specifies an ad-hoc "version" for various pref update hacks we need to do
+pref("extensions.torbutton.pref_fixup_version", 0);
+
+// If we are bundling fonts, whitelist those bundled fonts, and restrict system fonts to a selection.
+
+#ifdef MOZ_BUNDLED_FONTS
+
+#ifdef XP_MACOSX
+pref("font.system.whitelist", "AppleGothic, Apple Color Emoji, Arial, Courier, Geneva, Georgia, Heiti TC, Helvetica, Helvetica Neue, .Helvetica Neue DeskInterface, Hiragino Kaku Gothic ProN, Lucida Grande, Monaco, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Tibetan, Noto Sans Yi, STHeiti, STIX Math, Tahoma, Thonburi, Times, Times New Roman, Verdana");
+pref("font.name-list.cursive.x-unicode", "Apple Chancery, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Tibetan, Noto Sans Yi");
+pref("font.name-list.fantasy.x-unicode", "Papyrus, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Tibetan, Noto Sans Yi");
+pref("font.name-list.monospace.x-unicode", "Courier, Arial, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Tibetan, Noto Sans Yi");
+pref("font.name-list.sans-serif.x-unicode", "Helvetica, Tahoma, Arial, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Tibetan, Noto Sans Yi");
+pref("font.name-list.serif.x-unicode", "Times, Arial, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Tibetan, Noto Sans Yi");
+pref("font.name.cursive.ar", "Arial");
+pref("font.name.fantasy.ar", "Arial");
+pref("font.name.monospace.ar", "Arial");
+pref("font.name.sans-serif.ar", "Arial");
+#endif
+
+#ifdef XP_WIN
+pref("font.system.whitelist", "Arial, Batang, 바탕, Cambria Math, Courier New, Euphemia, Gautami, Georgia, Gulim, 굴림, GulimChe, 굴림체, Iskoola Pota, Kalinga, Kartika, Latha, Lucida Console, MS Gothic, MS ゴシック, MS Mincho, MS 明朝, MS PGothic, MS Pゴシック, MS PMincho, MS P明朝, MV Boli, Malgun Gothic, Mangal, Meiryo, Meiryo UI, Microsoft Himalaya, Microsoft JhengHei, Microsoft JhengHei UI, Microsoft YaHei, 微软雅黑, Microsoft YaHei UI, MingLiU, 細明體, Noto Sans Buginese, Noto Sans Khmer, Noto Sans Lao, Noto Sans Myanmar, Noto Sans Yi, Nyala, PMingLiU, 新細明體, Plantagenet Cherokee, Raavi, Segoe UI, Shruti, SimSun, 宋体, Sylfaen, Tahoma, Times New Roman, Tunga, Verdana, Vrinda, Yu Gothic UI");
+#endif
+
+#ifdef XP_LINUX
+pref("font.default.lo", "Noto Sans Lao");
+pref("font.default.my", "Noto Sans Myanmar");
+pref("font.default.x-western", "sans-serif");
+pref("font.name-list.cursive.ar", "Noto Naskh Arabic, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.cursive.he", "Noto Sans Hebrew, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.cursive.x-cyrillic", "Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.cursive.x-unicode", "Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.cursive.x-western", "Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.fantasy.ar", "Noto Naskh Arabic, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.fantasy.el", "Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.fantasy.he", "Noto Sans Hebrew, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.fantasy.x-cyrillic", "Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.fantasy.x-unicode", "Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.fantasy.x-western", "Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.ar", "Noto Naskh Arabic, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.el", "Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.he", "Noto Sans Hebrew, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.ja", "Noto Sans JP Regular, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.ko", "Noto Sans KR Regular, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.th", "Noto Sans Thai, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.x-armn", "Noto Sans Armenian, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.x-beng", "Noto Sans Bengali, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.x-cyrillic", "Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.x-devanagari", "Noto Sans Devanagari, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.x-ethi", "Noto Sans Ethiopic, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.x-geor", "Noto Sans Georgian, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.x-gujr", "Noto Sans Gujarati, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.x-guru", "Noto Sans Gurmukhi, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.x-khmr", "Noto Sans Khmer, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.x-knda", "Noto Sans Kannada, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.x-mlym", "Noto Sans Malayalam, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.x-orya", "Noto Sans Oriya, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.x-sinh", "Noto Sans Sinhala, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.x-tamil", "Noto Sans Tamil, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.x-telu", "Noto Sans Telugu, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.x-tibt", "Noto Sans Tibetan, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.x-unicode", "Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.x-western", "Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.zh-CN", "Noto Sans SC Regular, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.zh-HK", "Noto Sans TC Regular, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.monospace.zh-TW", "Noto Sans TC Regular, Cousine, Courier, Courier New, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.ar", "Noto Naskh Arabic, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.el", "Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.he", "Noto Sans Hebrew, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.ja", "Noto Sans JP Regular, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.ko", "Noto Sans KR Regular, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.th", "Noto Sans Thai, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.x-armn", "Noto Sans Armenian, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.x-beng", "Noto Sans Bengali, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.x-cyrillic", "Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.x-devanagari", "Noto Sans Devanagari, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.x-ethi", "Noto Sans Ethiopic, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.x-geor", "Noto Sans Georgian, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.x-gujr", "Noto Sans Gujarati, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.x-guru", "Noto Sans Gurmukhi, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.x-khmr", "Noto Sans Khmer, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.x-knda", "Noto Sans Kannada, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.x-mlym", "Noto Sans Malayalam, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.x-orya", "Noto Sans Oriya, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.x-sinh", "Noto Sans Sinhala, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.x-tamil", "Noto Sans Tamil, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.x-telu", "Noto Sans Telugu, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.x-tibt", "Noto Sans Tibetan, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.x-unicode", "Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.x-western", "Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.zh-CN", "Noto Sans SC Regular, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.zh-HK", "Noto Sans TC Regular, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.sans-serif.zh-TW", "Noto Sans TC Regular, Arimo, Arial, Verdana, Noto Naskh Arabic, Noto Sans Armenian, Noto Sans Bengali, Noto Sans Buginese, Noto Sans JP Regular, Noto Sans KR Regular, Noto Sans SC Regular, Noto Sans TC Regular, Noto Sans Canadian Aboriginal, Noto Sans Cherokee, Noto Sans Devanagari, Noto Sans Ethiopic, Noto Sans Georgian, Noto Sans Gujarati, Noto Sans Gurmukhi, Noto Sans Hebrew, Noto Sans Kannada, Noto Sans Khmer, Noto Sans Lao, Noto Sans Malayalam, Noto Sans Mongolian, Noto Sans Myanmar, Noto Sans Oriya, Noto Sans Sinhala, Noto Sans Tamil, Noto Sans Telugu, Noto Sans Thaana, Noto Sans Thai, Noto Sans Tibetan, Noto Sans Yi, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.ar", "Noto Naskh Arabic, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.el", "Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.he", "Tinos, Georgia, Noto Sans Hebrew, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.ja", "Noto Sans JP Regular, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.ko", "Noto Sans KR Regular, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.th", "Noto Serif Thai, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.x-armn", "Noto Serif Armenian, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.x-beng", "Noto Sans Bengali, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.x-cyrillic", "Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.x-devanagari", "Noto Sans Devanagari, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.x-ethi", "Noto Sans Ethiopic, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.x-geor", "Noto Sans Georgian, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.x-gujr", "Noto Sans Gujarati, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.x-guru", "Noto Sans Gurmukhi, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.x-khmr", "Noto Serif Khmer, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.x-knda", "Noto Sans Kannada, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.x-mlym", "Noto Sans Malayalam, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.x-orya", "Noto Sans Oriya, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.x-sinh", "Noto Sans Sinhala, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.x-tamil", "Noto Sans Tamil, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.x-telu", "Noto Sans Telugu, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.x-tibt", "Noto Sans Tibetan, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.x-unicode", "Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.x-western", "Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.zh-CN", "Noto Sans SC Regular, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.zh-HK", "Noto Sans TC Regular, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name-list.serif.zh-TW", "Noto Sans TC Regular, Tinos, Georgia, Noto Serif Armenian, Noto Serif Khmer, Noto Serif Lao, Noto Serif Thai");
+pref("font.name.cursive.ar", "Noto Naskh Arabic");
+pref("font.name.cursive.el", "Tinos, Georgia");
+pref("font.name.cursive.he", "Noto Sans Hebrew");
+pref("font.name.cursive.x-cyrillic", "Tinos, Georgia");
+pref("font.name.cursive.x-unicode", "Tinos, Georgia");
+pref("font.name.cursive.x-western", "Tinos, Georgia");
+pref("font.name.fantasy.ar", "Noto Naskh Arabic");
+pref("font.name.fantasy.el", "Tinos, Georgia");
+pref("font.name.fantasy.he", "Noto Sans Hebrew");
+pref("font.name.fantasy.x-cyrillic", "Tinos, Georgia");
+pref("font.name.fantasy.x-unicode", "Tinos, Georgia");
+pref("font.name.fantasy.x-western", "Tinos, Georgia");
+pref("font.name.monospace.ar", "Noto Naskh Arabic");
+pref("font.name.monospace.el", "Tinos, Georgia");
+pref("font.name.monospace.he", "Noto Sans Hebrew");
+pref("font.name.monospace.ja", "Noto Sans JP Regular");
+pref("font.name.monospace.ko", "Noto Sans KR Regular");
+pref("font.name.monospace.my", "Noto Sans Myanmar");
+pref("font.name.monospace.th", "Noto Sans Thai");
+pref("font.name.monospace.x-armn", "Noto Sans Armenian");
+pref("font.name.monospace.x-beng", "Noto Sans Bengali");
+pref("font.name.monospace.x-cyrillic", "Cousine, Courier, Courier New");
+pref("font.name.monospace.x-devanagari", "Noto Sans Devanagari");
+pref("font.name.monospace.x-ethi", "Noto Sans Ethiopic");
+pref("font.name.monospace.x-geor", "Noto Sans Georgian");
+pref("font.name.monospace.x-gujr", "Noto Sans Gujarati");
+pref("font.name.monospace.x-guru", "Noto Sans Gurmukhi");
+pref("font.name.monospace.x-khmr", "Noto Sans Khmer");
+pref("font.name.monospace.x-knda", "Noto Sans Kannada");
+pref("font.name.monospace.x-mlym", "Noto Sans Malayalam");
+pref("font.name.monospace.x-orya", "Noto Sans Oriya");
+pref("font.name.monospace.x-sinh", "Noto Sans Sinhala");
+pref("font.name.monospace.x-tamil", "Noto Sans Tamil");
+pref("font.name.monospace.x-telu", "Noto Sans Telugu");
+pref("font.name.monospace.x-tibt", "Noto Sans Tibetan");
+pref("font.name.monospace.x-unicode", "Cousine, Courier, Courier New");
+pref("font.name.monospace.x-western", "Cousine, Courier, Courier New");
+pref("font.name.monospace.zh-CN", "Noto Sans SC Regular");
+pref("font.name.monospace.zh-HK", "Noto Sans TC Regular");
+pref("font.name.monospace.zh-TW", "Noto Sans TC Regular");
+pref("font.name.sans-serif.ar", "Noto Naskh Arabic");
+pref("font.name.sans-serif.el", "Arimo, Arial, Verdana");
+pref("font.name.sans-serif.he", "Noto Sans Hebrew");
+pref("font.name.sans-serif.ja", "Noto Sans JP Regular");
+pref("font.name.sans-serif.ko", "Noto Sans KR Regular");
+pref("font.name.sans-serif.th", "Noto Sans Thai");
+pref("font.name.sans-serif.x-armn", "Noto Sans Armenian");
+pref("font.name.sans-serif.x-beng", "Noto Sans Bengali");
+pref("font.name.sans-serif.x-cyrillic", "Arimo, Arial, Verdana");
+pref("font.name.sans-serif.x-devanagari", "Noto Sans Devanagari");
+pref("font.name.sans-serif.x-ethi", "Noto Sans Ethiopic");
+pref("font.name.sans-serif.x-geor", "Noto Sans Georgian");
+pref("font.name.sans-serif.x-gujr", "Noto Sans Gujarati");
+pref("font.name.sans-serif.x-guru", "Noto Sans Gurmukhi");
+pref("font.name.sans-serif.x-khmr", "Noto Sans Khmer");
+pref("font.name.sans-serif.x-knda", "Noto Sans Kannada");
+pref("font.name.sans-serif.x-mlym", "Noto Sans Malayalam");
+pref("font.name.sans-serif.x-orya", "Noto Sans Oriya");
+pref("font.name.sans-serif.x-sinh", "Noto Sans Sinhala");
+pref("font.name.sans-serif.x-tamil", "Noto Sans Tamil");
+pref("font.name.sans-serif.x-telu", "Noto Sans Telugu");
+pref("font.name.sans-serif.x-tibt", "Noto Sans Tibetan");
+pref("font.name.sans-serif.x-unicode", "Arimo, Arial, Verdana");
+pref("font.name.sans-serif.x-western", "Arimo, Arial, Verdana");
+pref("font.name.sans-serif.zh-CN", "Noto Sans SC Regular");
+pref("font.name.sans-serif.zh-HK", "Noto Sans TC Regular");
+pref("font.name.sans-serif.zh-TW", "Noto Sans TC Regular");
+pref("font.name.sans.my", "Noto Sans Myanmar");
+pref("font.name.serif.ar", "Noto Naskh Arabic");
+pref("font.name.serif.el", "Tinos, Georgia");
+pref("font.name.serif.he", "Noto Sans Hebrew");
+pref("font.name.serif.ja", "Noto Sans JP Regular");
+pref("font.name.serif.ko", "Noto Sans KR Regular");
+pref("font.name.serif.my", "Noto Sans Myanmar");
+pref("font.name.serif.th", "Noto Serif Thai");
+pref("font.name.serif.x-armn", "Noto Serif Armenian");
+pref("font.name.serif.x-beng", "Noto Sans Bengali");
+pref("font.name.serif.x-cyrillic", "Tinos, Georgia");
+pref("font.name.serif.x-devanagari", "Noto Sans Devanagari");
+pref("font.name.serif.x-ethi", "Noto Sans Ethiopic");
+pref("font.name.serif.x-geor", "Noto Sans Georgian");
+pref("font.name.serif.x-gujr", "Noto Sans Gujarati");
+pref("font.name.serif.x-guru", "Noto Sans Gurmukhi");
+pref("font.name.serif.x-khmr", "Noto Serif Khmer");
+pref("font.name.serif.x-knda", "Noto Sans Kannada");
+pref("font.name.serif.x-mlym", "Noto Sans Malayalam");
+pref("font.name.serif.x-orya", "Noto Sans Oriya");
+pref("font.name.serif.x-sinh", "Noto Sans Sinhala");
+pref("font.name.serif.x-tamil", "Noto Sans Tamil");
+pref("font.name.serif.x-telu", "Noto Sans Telugu");
+pref("font.name.serif.x-tibt", "Noto Sans Tibetan");
+pref("font.name.serif.x-unicode", "Tinos, Georgia");
+pref("font.name.serif.x-western", "Tinos, Georgia");
+pref("font.name.serif.zh-CN", "Noto Sans SC Regular");
+pref("font.name.serif.zh-HK", "Noto Sans TC Regular");
+pref("font.name.serif.zh-TW", "Noto Sans TC Regular");
+#endif
+#endif
diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js
index 6bd3d6131589..810be1361771 100644
--- a/browser/app/profile/firefox.js
+++ b/browser/app/profile/firefox.js
@@ -53,9 +53,9 @@ pref("extensions.recommendations.themeRecommendationUrl", "https://color.firefox
pref("extensions.update.autoUpdateDefault", true);
-// Check AUS for system add-on updates.
-pref("extensions.systemAddon.update.url", "https://aus5.mozilla.org/update/3/SystemAddons/%VERSION%/%BUILD_ID%/%BUILD_…");
-pref("extensions.systemAddon.update.enabled", true);
+// No AUS check for system add-on updates for Tor Browser users.
+pref("extensions.systemAddon.update.url", "");
+pref("extensions.systemAddon.update.enabled", false);
// Disable add-ons that are not installed by the user in all scopes by default.
// See the SCOPE constants in AddonManager.jsm for values to use here.
diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in
index e011b74cc4b4..7deaf1b51f9a 100644
--- a/browser/installer/package-manifest.in
+++ b/browser/installer/package-manifest.in
@@ -292,6 +292,7 @@
@RESPATH@/browser/defaults/settings/pinning
@RESPATH@/browser/defaults/settings/main
@RESPATH@/browser/defaults/settings/security-state
+@RESPATH@/browser/@PREF_DIR@/000-tor-browser.js
; Warning: changing the path to channel-prefs.js can cause bugs (Bug 756325)
; Technically this is an app pref file, but we are keeping it in the original
diff --git a/browser/moz.build b/browser/moz.build
index cfbfea4f31f2..19977e036fba 100644
--- a/browser/moz.build
+++ b/browser/moz.build
@@ -53,6 +53,7 @@ if CONFIG['MOZ_GPSD']:
# These files are specified in this moz.build to pick up DIST_SUBDIR as set in
# this directory, which is un-set in browser/app.
JS_PREFERENCE_PP_FILES += [
+ 'app/profile/000-tor-browser.js',
'app/profile/firefox.js',
]
FINAL_TARGET_FILES.defaults += ['app/permissions']
diff --git a/mobile/android/app/000-tor-browser-android.js b/mobile/android/app/000-tor-browser-android.js
new file mode 100644
index 000000000000..61c8a0cd7fa1
--- /dev/null
+++ b/mobile/android/app/000-tor-browser-android.js
@@ -0,0 +1,47 @@
+// Import all prefs from the canonical file
+// We override mobile-specific prefs below
+// Tor Browser for Android
+// Do not edit this file.
+
+#include ../../../browser/app/profile/000-tor-browser.js
+
+// Space separated list of URLs that are allowed to send objects (instead of
+// only strings) through webchannels. This list is duplicated in browser/app/profile/firefox.js
+pref("webchannel.allowObject.urlWhitelist", "");
+
+// Disable browser auto updaters
+pref("app.update.auto", false);
+pref("browser.startup.homepage_override.mstone", "ignore");
+
+// Clear data on quit
+pref("privacy.clearOnShutdown.cache", true);
+pref("privacy.clearOnShutdown.cookies",true);
+pref("privacy.clearOnShutdown.downloads",true);
+pref("privacy.clearOnShutdown.formdata",true);
+pref("privacy.clearOnShutdown.history",true);
+pref("privacy.clearOnShutdown.offlineApps",true);
+pref("privacy.clearOnShutdown.passwords",true);
+pref("privacy.clearOnShutdown.sessions",true);
+pref("privacy.clearOnShutdown.siteSettings",true);
+
+// controls if we want camera support
+pref("media.realtime_decoder.enabled", false);
+
+// Enable touch events on Android (highlighting text, etc)
+pref("dom.w3c_touch_events.enabled", 2);
+
+// Ensure that pointer events are disabled
+pref("dom.w3c_pointer_events.multiprocess.android.enabled", false);
+
+// No HLS support for now due to browser freezing, see: #29859.
+pref("media.hls.enabled", false);
+
+// Inherit locale from the OS, used for multi-locale builds
+pref("intl.locale.requested", "");
+
+// Disable WebAuthn. It requires Google Play Services, so it isn't
+// available, but avoid any potential problems.
+pref("security.webauth.webauthn_enable_android_fido2", false);
+
+// Disable the External App Blocker on Android
+pref("extensions.torbutton.launch_warning", false);
diff --git a/mobile/android/app/geckoview-prefs.js b/mobile/android/app/geckoview-prefs.js
index 3d3871975a28..826970425362 100644
--- a/mobile/android/app/geckoview-prefs.js
+++ b/mobile/android/app/geckoview-prefs.js
@@ -91,3 +91,5 @@ pref("toolkit.autocomplete.delegate", true);
// Android doesn't support the new sync storage yet, we will have our own in
// Bug 1625257.
pref("webextensions.storage.sync.kinto", true);
+
+#include 000-tor-browser-android.js
diff --git a/mobile/android/app/mobile.js b/mobile/android/app/mobile.js
index dc1385a36b86..a33666d4cfcf 100644
--- a/mobile/android/app/mobile.js
+++ b/mobile/android/app/mobile.js
@@ -399,7 +399,11 @@ pref("app.update.timerMinimumDelay", 30); // seconds
// used by update service to decide whether or not to
// automatically download an update
pref("app.update.autodownload", "wifi");
+#ifdef TOR_BROWSER_VERSION
+pref("app.update.url.android", "");
+#else
pref("app.update.url.android", "https://aus5.mozilla.org/update/4/%PRODUCT%/%VERSION%/%BUILD_ID%/%BUILD_TAR…");
+#endif
#ifdef MOZ_UPDATER
/* prefs used specifically for updating the app */
diff --git a/mobile/android/app/moz.build b/mobile/android/app/moz.build
index 65963fe448eb..4075e8a9d2c4 100644
--- a/mobile/android/app/moz.build
+++ b/mobile/android/app/moz.build
@@ -17,6 +17,7 @@ if CONFIG['MOZ_PKG_SPECIAL']:
DEFINES['MOZ_PKG_SPECIAL'] = CONFIG['MOZ_PKG_SPECIAL']
JS_PREFERENCE_PP_FILES += [
+ '000-tor-browser-android.js',
'mobile.js',
]
diff --git a/taskcluster/ci/source-test/mozlint.yml b/taskcluster/ci/source-test/mozlint.yml
index 6e3373dee6ec..42067fcf14a0 100644
--- a/taskcluster/ci/source-test/mozlint.yml
+++ b/taskcluster/ci/source-test/mozlint.yml
@@ -135,7 +135,9 @@ lintpref:
files-changed:
- 'modules/libpref/init/all.js'
- 'modules/libpref/init/StaticPrefList.yaml'
+ - 'browser/app/profile/000-tor-browser.js'
- 'browser/app/profile/firefox.js'
+ - 'mobile/android/app/000-tor-browser-android.js'
- 'mobile/android/app/mobile.js'
- 'devtools/client/preferences/debugger.js'
- 'mobile/android/app/geckoview-prefs.js'
1
0

[tor-browser/tor-browser-78.5.0esr-10.5-1] Bug 1642754 - Update prompts should not depend on how update was initiated r=bytesized
by sysrqb@torproject.org 14 Nov '20
by sysrqb@torproject.org 14 Nov '20
14 Nov '20
commit d8669d6163ed94bee949f1137862ea56550d72f5
Author: Mark Smith <mcs(a)pearlcrescent.com>
Date: Wed Jun 17 19:24:09 2020 +0000
Bug 1642754 - Update prompts should not depend on how update was initiated r=bytesized
Show update badge and doorhanger when entering the "pending"
state for foreground updates.
Differential Revision: https://phabricator.services.mozilla.com/D79903
---
toolkit/mozapps/update/UpdateService.jsm | 10 ++--------
.../browser/browser_aboutDialog_fc_downloadAuto.js | 18 +++++++++++++++++-
2 files changed, 19 insertions(+), 9 deletions(-)
diff --git a/toolkit/mozapps/update/UpdateService.jsm b/toolkit/mozapps/update/UpdateService.jsm
index a91290dead13..87f1e1536625 100644
--- a/toolkit/mozapps/update/UpdateService.jsm
+++ b/toolkit/mozapps/update/UpdateService.jsm
@@ -4988,8 +4988,6 @@ Downloader.prototype = {
}
}
- // XXX ehsan shouldShowPrompt should always be false here.
- // But what happens when there is already a UI showing?
var state = this._patch.state;
var shouldShowPrompt = false;
var shouldRegisterOnlineObserver = false;
@@ -5030,9 +5028,7 @@ Downloader.prototype = {
} else {
state = STATE_PENDING;
}
- if (this.background) {
- shouldShowPrompt = !getCanStageUpdates();
- }
+ shouldShowPrompt = !getCanStageUpdates();
AUSTLMY.pingDownloadCode(this.isCompleteUpdate, AUSTLMY.DWNLD_SUCCESS);
// Tell the updater.exe we're ready to apply.
@@ -5315,9 +5311,7 @@ Downloader.prototype = {
LOG(
"Downloader:onStopRequest - failed to stage update. Exception: " + e
);
- if (this.background) {
- shouldShowPrompt = true;
- }
+ shouldShowPrompt = true;
}
}
}
diff --git a/toolkit/mozapps/update/tests/browser/browser_aboutDialog_fc_downloadAuto.js b/toolkit/mozapps/update/tests/browser/browser_aboutDialog_fc_downloadAuto.js
index 6a8835251dec..be65ce8ddef1 100644
--- a/toolkit/mozapps/update/tests/browser/browser_aboutDialog_fc_downloadAuto.js
+++ b/toolkit/mozapps/update/tests/browser/browser_aboutDialog_fc_downloadAuto.js
@@ -15,7 +15,7 @@ add_task(async function aboutDialog_foregroundCheck_downloadAuto() {
// Since the partial should be successful specify an invalid size for the
// complete update.
- let params = { queryString: "&invalidCompleteSize=1" };
+ let params = { queryString: "&invalidCompleteSize=1&promptWaitTime=0" };
await runAboutDialogUpdateTest(params, [
{
panelId: "checkingForUpdates",
@@ -28,6 +28,22 @@ add_task(async function aboutDialog_foregroundCheck_downloadAuto() {
continueFile: CONTINUE_DOWNLOAD,
downloadInfo,
},
+ async function aboutDialog_restart_notification() {
+ is(
+ PanelUI.notificationPanel.state,
+ "closed",
+ "The window's doorhanger is closed."
+ );
+ ok(
+ PanelUI.menuButton.hasAttribute("badge-status"),
+ "The window has a badge."
+ );
+ is(
+ PanelUI.menuButton.getAttribute("badge-status"),
+ "update-restart",
+ "The restart badge is showing for the background window"
+ );
+ },
{
panelId: "apply",
checkActiveUpdate: { state: STATE_PENDING },
1
0

[tor-browser/tor-browser-78.5.0esr-10.5-1] Bug 12620: TorBrowser regression tests
by sysrqb@torproject.org 14 Nov '20
by sysrqb@torproject.org 14 Nov '20
14 Nov '20
commit cfd7fb5213a6ea2710c5c0f0c20fe6f3d1586cb9
Author: Arthur Edelstein <arthuredelstein(a)gmail.com>
Date: Wed Aug 27 16:25:00 2014 -0700
Bug 12620: TorBrowser regression tests
Regression tests for Bug #2950: Make Permissions Manager memory-only
Regression tests for TB4: Tor Browser's Firefox preference overrides.
Note: many more functional tests could be made here
Regression tests for #2874: Block Components.interfaces from content
Bug 18923: Add a script to run all Tor Browser specific tests
Regression tests for Bug #16441: Suppress "Reset Tor Browser" prompt.
---
run-tbb-tests | 60 +++++++++++++++
tbb-tests/browser.ini | 5 ++
tbb-tests/browser_tor_TB4.js | 162 +++++++++++++++++++++++++++++++++++++++
tbb-tests/browser_tor_bug2950.js | 74 ++++++++++++++++++
tbb-tests/mochitest.ini | 3 +
tbb-tests/moz.build | 10 +++
tbb-tests/test_tor_bug2874.html | 25 ++++++
toolkit/toolkit.mozbuild | 3 +-
8 files changed, 341 insertions(+), 1 deletion(-)
diff --git a/run-tbb-tests b/run-tbb-tests
new file mode 100755
index 000000000000..5e266f9ba4cd
--- /dev/null
+++ b/run-tbb-tests
@@ -0,0 +1,60 @@
+#!/bin/bash
+
+# This script runs all the Mochitest tests that have been added or
+# modified since the last ffxbld commit.
+#
+# It does not currently run XPCShell tests. We should change this if we
+# start using this type or other types of tests.
+#
+# The logs of the tests are stored in the tbb-tests.log file.
+# Ignored tests are listed in the tbb-tests-ignore.txt file.
+#
+# https://trac.torproject.org/projects/tor/ticket/18923
+
+IFS=$'\n'
+
+if [ -n "$USE_TESTS_LIST" ] && [ -f tbb-tests-list.txt ]
+then
+ echo "Using tests list from file tbb-tests-list.txt"
+ tests=($(cat tbb-tests-list.txt))
+else
+ ffxbld_commit=$(git log -500 --format='%an %H' | grep '^ffxbld ' \
+ | head -1 | cut -d ' ' -f 2)
+
+ tests=($(git diff --name-status "$ffxbld_commit" HEAD | \
+ grep -e '^[AM].*/test_[^/]\+\.\(html\|xul\)$' \
+ -e '^[AM].*/browser_[^/]\+\.js$' \
+ | sed 's/^[AM]\s\+//'))
+fi
+
+echo 'The following tests will be run:'
+for i in "${!tests[@]}"
+do
+ if [ -z "$USE_TESTS_LIST" ] \
+ && grep -q "^${tests[$i]}$" tbb-tests-ignore.txt
+ then
+ unset "tests[$i]"
+ continue
+ fi
+ echo "- ${tests[$i]}"
+done
+
+if [ -n "$WRITE_TESTS_LIST" ]
+then
+ rm -f tbb-tests-list.txt
+ for i in "${!tests[@]}"
+ do
+ echo "${tests[$i]}" >> tbb-tests-list.txt
+ done
+ exit 0
+fi
+
+rm -f tbb-tests.log
+echo $'\n''Starting tests'
+./mach mochitest --log-tbpl tbb-tests.log --setpref security.nocertdb=false \
+ "${tests[@]}"
+
+echo "*************************"
+echo "*************************"
+echo "Summary of failed tests:"
+grep --color=never TEST-UNEXPECTED-FAIL tbb-tests.log
diff --git a/tbb-tests/browser.ini b/tbb-tests/browser.ini
new file mode 100644
index 000000000000..f481660f1417
--- /dev/null
+++ b/tbb-tests/browser.ini
@@ -0,0 +1,5 @@
+[DEFAULT]
+
+[browser_tor_bug2950.js]
+[browser_tor_omnibox.js]
+[browser_tor_TB4.js]
diff --git a/tbb-tests/browser_tor_TB4.js b/tbb-tests/browser_tor_TB4.js
new file mode 100644
index 000000000000..af688bee0226
--- /dev/null
+++ b/tbb-tests/browser_tor_TB4.js
@@ -0,0 +1,162 @@
+// # Test for TB4: Tor Browser's Firefox preference overrides
+// Simple regression tests to check the value of each pref and
+// decides if it is set as expected.
+
+// TODO: Write unit tests to check that each pref setting here
+// causes the browser to have the desired behavior (a big task).
+
+function test() {
+
+let expectedPrefs = [
+ // Disable browser auto updaters and associated homepage notifications
+ ["app.update.auto", false],
+ ["app.update.enabled", false],
+ ["browser.search.update", false],
+ ["browser.rights.3.shown", true],
+ ["browser.startup.homepage_override.mstone", "ignore"],
+ ["startup.homepage_welcome_url", ""],
+ ["startup.homepage_override_url", ""],
+
+ // Disable the "Refresh" prompt that is displayed for stale profiles.
+ ["browser.disableResetPrompt", true],
+
+ // Disk activity: Disable Browsing History Storage
+ ["browser.privatebrowsing.autostart", true],
+ ["browser.cache.disk.enable", false],
+ ["browser.cache.offline.enable", false],
+ ["dom.indexedDB.enabled", false],
+ ["permissions.memory_only", true],
+ ["network.cookie.lifetimePolicy", 2],
+ ["security.nocertdb", true],
+
+ // Disk activity: TBB Directory Isolation
+ ["browser.download.useDownloadDir", false],
+ ["browser.shell.checkDefaultBrowser", false],
+ ["browser.download.manager.addToRecentDocs", false],
+
+ // Misc privacy: Disk
+ ["signon.rememberSignons", false],
+ ["browser.formfill.enable", false],
+ ["signon.autofillForms", false],
+ ["browser.sessionstore.privacy_level", 2],
+ ["media.cache_size", 0],
+
+ // Misc privacy: Remote
+ ["browser.send_pings", false],
+ ["geo.enabled", false],
+ ["geo.wifi.uri", ""],
+ ["browser.search.suggest.enabled", false],
+ ["browser.safebrowsing.malware.enabled", false],
+ ["extensions.ui.lastCategory", "addons://list/extension"],
+ ["datareporting.healthreport.uploadEnabled", false],
+ ["datareporting.policy.dataSubmissionEnabled", false],
+ ["security.mixed_content.block_active_content", false], // Disable until https://bugzilla.mozilla.org/show_bug.cgi?id=878890 is patched
+ ["browser.syncPromoViewsLeftMap", "{\"addons\":0, \"passwords\":0, \"bookmarks\":0}"], // Don't promote sync
+ ["services.sync.engine.prefs", false], // Never sync prefs, addons, or tabs with other browsers
+ ["services.sync.engine.addons", false],
+ ["services.sync.engine.tabs", false],
+ ["extensions.getAddons.cache.enabled", false], // https://blog.mozilla.org/addons/how-to-opt-out-of-add-on-metadata-updates/
+
+ // Fingerprinting
+ ["webgl.min_capability_mode", true],
+ ["webgl.disable-extensions", true],
+ ["dom.battery.enabled", false], // fingerprinting due to differing OS implementations
+ ["browser.display.max_font_attempts",10],
+ ["browser.display.max_font_count",10],
+ ["gfx.downloadable_fonts.fallback_delay", -1],
+ ["browser.startup.homepage_override.buildID", "20100101"],
+
+ // Third party stuff
+ ["network.cookie.cookieBehavior", 1],
+ ["security.enable_tls_session_tickets", false],
+ ["network.http.spdy.enabled", false], // Stores state and may have keepalive issues (both fixable)
+ ["network.http.spdy.enabled.v2", false], // Seems redundant, but just in case
+ ["network.http.spdy.enabled.v3", false], // Seems redundant, but just in case
+
+ // Proxy and proxy security
+ ["network.proxy.socks", "127.0.0.1"],
+ ["network.proxy.socks_port", 9150],
+ ["network.proxy.socks_remote_dns", true],
+ ["network.proxy.no_proxies_on", ""], // For fingerprinting and local service vulns (#10419)
+ ["network.proxy.type", 1],
+ ["network.security.ports.banned", "9050,9051,9150,9151"],
+ ["network.dns.disablePrefetch", true],
+ ["network.protocol-handler.external-default", false],
+ ["network.protocol-handler.external.mailto", false],
+ ["network.protocol-handler.external.news", false],
+ ["network.protocol-handler.external.nntp", false],
+ ["network.protocol-handler.external.snews", false],
+ ["network.protocol-handler.warn-external.mailto", true],
+ ["network.protocol-handler.warn-external.news", true],
+ ["network.protocol-handler.warn-external.nntp", true],
+ ["network.protocol-handler.warn-external.snews", true],
+
+ // Network and performance
+ ["network.http.pipelining", true],
+ ["network.http.pipelining.aggressive", true],
+ ["network.http.pipelining.maxrequests", 12],
+ ["network.http.pipelining.ssl", true],
+ ["network.http.proxy.pipelining", true],
+ ["security.ssl.enable_false_start", true],
+ ["network.http.keep-alive.timeout", 20],
+ ["network.http.connection-retry-timeout", 0],
+ ["network.http.max-persistent-connections-per-proxy", 256],
+ ["network.http.pipelining.reschedule-timeout", 15000],
+ ["network.http.pipelining.read-timeout", 60000],
+ // Hacked pref: Now means "Attempt to pipeline at least this many requests together"
+ ["network.http.pipelining.max-optimistic-requests", 3],
+ ["security.disable_session_identifiers", true],
+
+ // Extension support
+ ["extensions.autoDisableScopes", 0],
+ ["extensions.bootstrappedAddons", "{}"],
+ ["extensions.checkCompatibility.4.*", false],
+ ["extensions.databaseSchema", 3],
+ ["extensions.enabledAddons", "https-everywhere%40eff.org:3.1.4,%7B73a6fe31-595d-460b-a920-fcc0f8843232%7D:2.6.6.1,torbutton%40torproject.org:1.5.2,ubufox%40ubuntu.com:2.6,%7B972ce4c6-7e08-4474-a285-3208198ce6fd%7D:17.0.5"],
+ ["extensions.enabledItems", "langpack-en-US@firefox.mozilla.org:,{73a6fe31-595d-460b-a920-fcc0f8843232}:1.9.9.57,{e0204bd5-9d31-402b-a99d-a6aa8ffebdca}:1.2.4,{972ce4c6-7e08-4474-a285-3208198ce6fd}:3.5.8"],
+ ["extensions.enabledScopes", 1],
+ ["extensions.pendingOperations", false],
+ ["xpinstall.whitelist.add", ""],
+ ["xpinstall.whitelist.add.36", ""],
+
+ // Omnibox settings
+ ["keyword.URL", "https://startpage.com/do/search?q="],
+
+ // Hacks/workarounds: Direct2D seems to crash w/ lots of video cards w/ MinGW?
+ // Nvida cards also experience crashes without the second pref set to disabled
+ ["gfx.direct2d.disabled", true],
+ ["layers.acceleration.disabled", true],
+
+ // Security enhancements
+ // https://trac.torproject.org/projects/tor/ticket/9387#comment:17
+ ["javascript.options.ion.content", false],
+ ["javascript.options.baselinejit.content", false],
+ ["javascript.options.asmjs", false],
+ ["javascript.options.typeinference", false],
+
+ // Enable TLS 1.1 and 1.2:
+ // https://trac.torproject.org/projects/tor/ticket/11253
+ ["security.tls.version.max", 3],
+
+ // Version placeholder
+ ["torbrowser.version", "UNKNOWN"],
+
+ ];
+
+let getPref = function (prefName) {
+ let type = gPrefService.getPrefType(prefName);
+ if (type === gPrefService.PREF_INT) return gPrefService.getIntPref(prefName);
+ if (type === gPrefService.PREF_BOOL) return gPrefService.getBoolPref(prefName);
+ if (type === gPrefService.PREF_STRING) return gPrefService.getCharPref(prefName);
+ // Something went wrong.
+ throw new Error("Can't access pref " + prefName);
+};
+
+let testPref = function([key, expectedValue]) {
+ let foundValue = getPref(key);
+ is(foundValue, expectedValue, "Pref '" + key + "' should be '" + expectedValue +"'.");
+};
+
+expectedPrefs.map(testPref);
+
+} // end function test()
diff --git a/tbb-tests/browser_tor_bug2950.js b/tbb-tests/browser_tor_bug2950.js
new file mode 100644
index 000000000000..010cc6356202
--- /dev/null
+++ b/tbb-tests/browser_tor_bug2950.js
@@ -0,0 +1,74 @@
+// # Regression tests for tor Bug #2950, Make Permissions Manager memory-only
+// Ensures that permissions.sqlite file in profile directory is not written to,
+// even when we write a value to Firefox's permissions database.
+
+// The requisite test() function.
+function test() {
+
+// Needed because of asynchronous part later in the test.
+waitForExplicitFinish();
+
+// Shortcut
+let Ci = Components.interfaces;
+
+// ## utility functions
+
+// __uri(spec)__.
+// Creates an nsIURI instance from a spec
+// (string address such as "http://torproject.org").
+let uri = spec => Services.io.newURI(spec, null, null);
+
+// __setPermission(spec, key, value)__.
+// Sets the site permission of type key to value, for the site located at address spec.
+let setPermission = (spec, key, value) => SitePermissions.set(uri(spec), key, value);
+
+// __getPermission(spec, key)__.
+// Reads the site permission value for permission type key, for the site
+// located at address spec.
+let getPermission = (spec, key) => SitePermissions.get(uri(spec), key);
+
+// __profileDirPath__.
+// The Firefox Profile directory. Expected location of various persistent files.
+let profileDirPath = Services.dirsvc.get("ProfD", Components.interfaces.nsIFile).path;
+
+// __fileInProfile(fileName)__.
+// Returns an nsIFile instance corresponding to a file in the Profile directory.
+let fileInProfile = fileName => FileUtils.File(profileDirPath + "/" + fileName);
+
+// ## Now let's run the test.
+
+let SITE = "http://torproject.org",
+ KEY = "popup";
+
+let permissionsFile = fileInProfile("permissions.sqlite"),
+ lastModifiedTime = null,
+ newModifiedTime = null;
+if (permissionsFile.exists()) {
+ lastModifiedTime = permissionsFile.lastModifiedTime;
+}
+// Read the original value of the permission.
+let originalValue = getPermission(SITE, KEY);
+
+// We need to delay by at least 1000 ms, because that's the granularity
+// of file time stamps, it seems.
+window.setTimeout(
+ function () {
+ // Set the permission to a new value.
+ setPermission(SITE, KEY, (originalValue === 0) ? 1 : 0);
+ // Now read back the permission value again.
+ let newReadValue = getPermission(SITE, KEY);
+ // Compare to confirm that the permission
+ // value was successfully changed.
+ isnot(newReadValue, originalValue, "Set a value in permissions db (perhaps in memory).");;
+ // If file existed or now exists, get the current time stamp.
+ if (permissionsFile.exists()) {
+ newModifiedTime = permissionsFile.lastModifiedTime;
+ }
+ // If file was created or modified since we began this test,
+ // then permissions db is not memory only. Complain!
+ is(lastModifiedTime, newModifiedTime, "Don't write to permissions.sqlite file on disk.");
+ // We are done with the test.
+ finish();
+ }, 1100);
+
+} // test()
diff --git a/tbb-tests/mochitest.ini b/tbb-tests/mochitest.ini
new file mode 100644
index 000000000000..cc5172733bbe
--- /dev/null
+++ b/tbb-tests/mochitest.ini
@@ -0,0 +1,3 @@
+[DEFAULT]
+
+[test_tor_bug2874.html]
diff --git a/tbb-tests/moz.build b/tbb-tests/moz.build
new file mode 100644
index 000000000000..de8a41a67a5c
--- /dev/null
+++ b/tbb-tests/moz.build
@@ -0,0 +1,10 @@
+# -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
+# vim: set filetype=python:
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+MOCHITEST_MANIFESTS += ['mochitest.ini']
+
+BROWSER_CHROME_MANIFESTS += [ 'browser.ini' ]
+
diff --git a/tbb-tests/test_tor_bug2874.html b/tbb-tests/test_tor_bug2874.html
new file mode 100644
index 000000000000..c0a956e9f687
--- /dev/null
+++ b/tbb-tests/test_tor_bug2874.html
@@ -0,0 +1,25 @@
+<!DOCTYPE HTML>
+<html>
+<!--
+Tor bug
+https://trac.torproject.org/projects/tor/ticket/2874
+-->
+<head>
+ <meta charset="utf-8">
+ <title>Test for Tor Bug 2874</title>
+ <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
+ <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
+ <script type="application/javascript">
+ is(typeof Components, 'undefined', "The global window object should not expose a Components property to untrusted content.");
+ </script>
+</head>
+<body>
+<a target="_blank" href="https://trac.torproject.org/projects/tor/ticket/2874">Tor Bug 2874</a>
+<p id="display"></p>
+<div id="content" style="display: none">
+
+</div>
+<pre id="test">
+</pre>
+</body>
+</html>
diff --git a/toolkit/toolkit.mozbuild b/toolkit/toolkit.mozbuild
index d092b8b22346..6e35a4602300 100644
--- a/toolkit/toolkit.mozbuild
+++ b/toolkit/toolkit.mozbuild
@@ -96,7 +96,8 @@ if CONFIG['MOZ_WEBRTC'] and CONFIG['COMPILE_ENVIRONMENT']:
]
if CONFIG['ENABLE_TESTS']:
- DIRS += ['/testing/specialpowers']
+ DIRS += ['/testing/specialpowers',
+ '/tbb-tests']
DIRS += [
'/testing/gtest',
1
0

[tor-browser/tor-browser-78.5.0esr-10.5-1] Bug 3547: Block all plugins.
by sysrqb@torproject.org 14 Nov '20
by sysrqb@torproject.org 14 Nov '20
14 Nov '20
commit e5f0fca5fccb6b0c02410257ed7088b90ac2c2a8
Author: Mike Perry <mikeperry-git(a)torproject.org>
Date: Tue Dec 4 16:03:13 2012 -0800
Bug 3547: Block all plugins.
We cannot use the @mozilla.org/extensions/blocklist;1 service, because we
actually want to stop plugins from ever entering the browser's process space
and/or executing code (for example, AV plugins that collect statistics/analyse
urls, magical toolbars that phone home or "help" the user, skype buttons that
ruin our day, and censorship filters). Hence we rolled our own.
See https://trac.torproject.org/projects/tor/ticket/3547#comment:6 for musings
on a better way. Until then, it is delta-darwinism for us.
---
dom/plugins/base/PluginFinder.cpp | 3 +++
1 file changed, 3 insertions(+)
diff --git a/dom/plugins/base/PluginFinder.cpp b/dom/plugins/base/PluginFinder.cpp
index 4e1c1fd53698..cace7d4ef6ba 100644
--- a/dom/plugins/base/PluginFinder.cpp
+++ b/dom/plugins/base/PluginFinder.cpp
@@ -480,6 +480,9 @@ nsresult PluginFinder::ScanPluginsDirectory(nsIFile* pluginsDir,
*aPluginsChanged = false;
+ // Block all plugins
+ return NS_OK;
+
#ifdef PLUGIN_LOGGING
nsAutoCString dirPath;
pluginsDir->GetNativePath(dirPath);
1
0

[tor-browser/tor-browser-78.5.0esr-10.5-1] Add TorStrings module for localization
by sysrqb@torproject.org 14 Nov '20
by sysrqb@torproject.org 14 Nov '20
14 Nov '20
commit 6fdb3c6ced816fca75ce5498829552b62e7fc039
Author: Alex Catarineu <acat(a)torproject.org>
Date: Fri Jul 24 21:15:20 2020 +0200
Add TorStrings module for localization
---
browser/modules/TorStrings.jsm | 490 +++++++++++++++++++++++++++++++++++++++++
browser/modules/moz.build | 1 +
2 files changed, 491 insertions(+)
diff --git a/browser/modules/TorStrings.jsm b/browser/modules/TorStrings.jsm
new file mode 100644
index 000000000000..e8a8d37ae373
--- /dev/null
+++ b/browser/modules/TorStrings.jsm
@@ -0,0 +1,490 @@
+"use strict";
+
+var EXPORTED_SYMBOLS = ["TorStrings"];
+
+const { XPCOMUtils } = ChromeUtils.import(
+ "resource://gre/modules/XPCOMUtils.jsm"
+);
+const { Services } = ChromeUtils.import(
+ "resource://gre/modules/Services.jsm"
+);
+const { getLocale } = ChromeUtils.import(
+ "resource://torbutton/modules/utils.js"
+);
+
+XPCOMUtils.defineLazyGlobalGetters(this, ["DOMParser"]);
+XPCOMUtils.defineLazyGetter(this, "domParser", () => {
+ const parser = new DOMParser();
+ parser.forceEnableDTD();
+ return parser;
+});
+
+/*
+ Tor DTD String Bundle
+
+ DTD strings loaded from torbutton/tor-launcher, but provide a fallback in case they aren't available
+*/
+class TorDTDStringBundle {
+ constructor(aBundleURLs, aPrefix) {
+ let locations = [];
+ for (const [index, url] of aBundleURLs.entries()) {
+ locations.push(`<!ENTITY % dtd_${index} SYSTEM "${url}">%dtd_${index};`);
+ }
+ this._locations = locations;
+ this._prefix = aPrefix;
+ }
+
+ // copied from testing/marionette/l10n.js
+ localizeEntity(urls, id) {
+ // Use the DOM parser to resolve the entity and extract its real value
+ let header = `<?xml version="1.0"?><!DOCTYPE elem [${this._locations.join(
+ ""
+ )}]>`;
+ let elem = `<elem id="elementID">&${id};</elem>`;
+ let doc = domParser.parseFromString(header + elem, "text/xml");
+ let element = doc.querySelector("elem[id='elementID']");
+
+ if (element === null) {
+ throw new Error(`Entity with id='${id}' hasn't been found`);
+ }
+
+ return element.textContent;
+ }
+
+ getString(key, fallback) {
+ if (key) {
+ try {
+ return this.localizeEntity(this._bundleURLs, `${this._prefix}${key}`);
+ } catch (e) {}
+ }
+
+ // on failure, assign the fallback if it exists
+ if (fallback) {
+ return fallback;
+ }
+ // otherwise return string key
+ return `$(${key})`;
+ }
+}
+
+/*
+ Tor Property String Bundle
+
+ Property strings loaded from torbutton/tor-launcher, but provide a fallback in case they aren't available
+*/
+class TorPropertyStringBundle {
+ constructor(aBundleURL, aPrefix) {
+ try {
+ this._bundle = Services.strings.createBundle(aBundleURL);
+ } catch (e) {}
+
+ this._prefix = aPrefix;
+ }
+
+ getString(key, fallback) {
+ if (key) {
+ try {
+ return this._bundle.GetStringFromName(`${this._prefix}${key}`);
+ } catch (e) {}
+ }
+
+ // on failure, assign the fallback if it exists
+ if (fallback) {
+ return fallback;
+ }
+ // otherwise return string key
+ return `$(${key})`;
+ }
+}
+
+/*
+ Security Level Strings
+*/
+var TorStrings = {
+ /*
+ Tor Browser Security Level Strings
+ */
+ securityLevel: (function() {
+ let tsb = new TorDTDStringBundle(
+ ["chrome://torbutton/locale/torbutton.dtd"],
+ "torbutton.prefs.sec_"
+ );
+ let getString = function(key, fallback) {
+ return tsb.getString(key, fallback);
+ };
+
+ // read localized strings from torbutton; but use hard-coded en-US strings as fallbacks in case of error
+ let retval = {
+ securityLevel: getString("caption", "Security Level"),
+ customWarning: getString("custom_warning", "Custom"),
+ overview: getString(
+ "overview",
+ "Disable certain web features that can be used to attack your security and anonymity."
+ ),
+ standard: {
+ level: getString("standard_label", "Standard"),
+ tooltip: getString("standard_tooltip", "Security Level : Standard"),
+ summary: getString(
+ "standard_description",
+ "All Tor Browser and website features are enabled."
+ ),
+ },
+ safer: {
+ level: getString("safer_label", "Safer"),
+ tooltip: getString("safer_tooltip", "Security Level : Safer"),
+ summary: getString(
+ "safer_description",
+ "Disables website features that are often dangerous, causing some sites to lose functionality."
+ ),
+ description1: getString(
+ "js_on_https_sites_only",
+ "JavaScript is disabled on non-HTTPS sites."
+ ),
+ description2: getString(
+ "limit_typography",
+ "Some fonts and math symbols are disabled."
+ ),
+ description3: getString(
+ "click_to_play_media",
+ "Audio and video (HTML5 media), and WebGL are click-to-play."
+ ),
+ },
+ safest: {
+ level: getString("safest_label", "Safest"),
+ tooltip: getString("safest_tooltip", "Security Level : Safest"),
+ summary: getString(
+ "safest_description",
+ "Only allows website features required for static sites and basic services. These changes affect images, media, and scripts."
+ ),
+ description1: getString(
+ "js_disabled",
+ "JavaScript is disabled by default on all sites."
+ ),
+ description2: getString(
+ "limit_graphics_and_typography",
+ "Some fonts, icons, math symbols, and images are disabled."
+ ),
+ description3: getString(
+ "click_to_play_media",
+ "Audio and video (HTML5 media), and WebGL are click-to-play."
+ ),
+ },
+ custom: {
+ summary: getString(
+ "custom_summary",
+ "Your custom browser preferences have resulted in unusual security settings. For security and privacy reasons, we recommend you choose one of the default security levels."
+ ),
+ },
+ learnMore: getString("learn_more_label", "Learn more"),
+ learnMoreURL: `https://tb-manual.torproject.org/${getLocale()}/security-settings/`,
+ restoreDefaults: getString("restore_defaults", "Restore Defaults"),
+ advancedSecuritySettings: getString(
+ "advanced_security_settings",
+ "Advanced Security Settings\u2026"
+ ),
+ };
+ return retval;
+ })() /* Security Level Strings */,
+
+ /*
+ Tor about:preferences#tor Strings
+ */
+ settings: (function() {
+ let tsb = new TorDTDStringBundle(
+ ["chrome://torlauncher/locale/network-settings.dtd"],
+ ""
+ );
+ let getString = function(key, fallback) {
+ return tsb.getString(key, fallback);
+ };
+
+ let retval = {
+ categoryTitle: getString("torPreferences.categoryTitle", "Tor"),
+ torPreferencesHeading: getString(
+ "torPreferences.torSettings",
+ "Tor Settings"
+ ),
+ torPreferencesDescription: getString(
+ "torPreferences.torSettingsDescription",
+ "Tor Browser routes your traffic over the Tor Network, run by thousands of volunteers around the world."
+ ),
+ learnMore: getString("torPreferences.learnMore", "Learn More"),
+ bridgesHeading: getString("torPreferences.bridges", "Bridges"),
+ bridgesDescription: getString(
+ "torPreferences.bridgesDescription",
+ "Bridges help you access the Tor Network in places where Tor is blocked. Depending on where you are, one bridge may work better than another."
+ ),
+ useBridge: getString("torPreferences.useBridge", "Use a bridge"),
+ selectBridge: getString(
+ "torsettings.useBridges.default",
+ "Select a bridge"
+ ),
+ requestBridgeFromTorProject: getString(
+ "torsettings.useBridges.bridgeDB",
+ "Request a bridge from torproject.org"
+ ),
+ requestNewBridge: getString(
+ "torPreferences.requestNewBridge",
+ "Request a New Bridge\u2026"
+ ),
+ provideBridge: getString(
+ "torPreferences.provideBridge",
+ "Provide a bridge"
+ ),
+ provideBridgeDirections: getString(
+ "torsettings.useBridges.label",
+ "Enter bridge information from a trusted source."
+ ),
+ provideBridgePlaceholder: getString(
+ "torsettings.useBridges.placeholder",
+ "type address:port (one per line)"
+ ),
+ advancedHeading: getString("torPreferences.advanced", "Advanced"),
+ advancedDescription: getString(
+ "torPreferences.advancedDescription",
+ "Configure how Tor Browser connects to the internet."
+ ),
+ useLocalProxy: getString("torsettings.useProxy.checkbox", "I use a proxy to connect to the Internet"),
+ proxyType: getString("torsettings.useProxy.type", "Proxy Type"),
+ proxyTypeSOCKS4: getString("torsettings.useProxy.type.socks4", "SOCKS4"),
+ proxyTypeSOCKS5: getString("torsettings.useProxy.type.socks5", "SOCKS5"),
+ proxyTypeHTTP: getString("torsettings.useProxy.type.http", "HTTP/HTTPS"),
+ proxyAddress: getString("torsettings.useProxy.address", "Address"),
+ proxyAddressPlaceholder: getString(
+ "torsettings.useProxy.address.placeholder",
+ "IP address or hostname"
+ ),
+ proxyPort: getString("torsettings.useProxy.port", "Port"),
+ proxyUsername: getString("torsettings.useProxy.username", "Username"),
+ proxyPassword: getString("torsettings.useProxy.password", "Password"),
+ proxyUsernamePasswordPlaceholder: getString(
+ "torsettings.optional",
+ "Optional"
+ ),
+ useFirewall: getString(
+ "torsettings.firewall.checkbox",
+ "This computer goes through a firewall that only allows connections to certain ports"
+ ),
+ allowedPorts: getString(
+ "torsettings.firewall.allowedPorts",
+ "Allowed Ports"
+ ),
+ allowedPortsPlaceholder: getString(
+ "torPreferences.firewallPortsPlaceholder",
+ "Comma-seperated values"
+ ),
+ requestBridgeDialogTitle: getString(
+ "torPreferences.requestBridgeDialogTitle",
+ "Request Bridge"
+ ),
+ submitCaptcha: getString(
+ "torsettings.useBridges.captchaSubmit",
+ "Submit"
+ ),
+ contactingBridgeDB: getString(
+ "torPreferences.requestBridgeDialogWaitPrompt",
+ "Contacting BridgeDB. Please Wait."
+ ),
+ solveTheCaptcha: getString(
+ "torPreferences.requestBridgeDialogSolvePrompt",
+ "Solve the CAPTCHA to request a bridge."
+ ),
+ captchaTextboxPlaceholder: getString(
+ "torsettings.useBridges.captchaSolution.placeholder",
+ "Enter the characters from the image"
+ ),
+ incorrectCaptcha: getString(
+ "torPreferences.requestBridgeErrorBadSolution",
+ "The solution is not correct. Please try again."
+ ),
+ showTorDaemonLogs: getString(
+ "torPreferences.viewTorLogs",
+ "View the Tor logs."
+ ),
+ showLogs: getString("torPreferences.viewLogs", "View Logs\u2026"),
+ torLogDialogTitle: getString(
+ "torPreferences.torLogsDialogTitle",
+ "Tor Logs"
+ ),
+ copyLog: getString("torsettings.copyLog", "Copy Tor Log to Clipboard"),
+
+ learnMoreTorBrowserURL: `https://tb-manual.torproject.org/${getLocale()}/about/`,
+ learnMoreBridgesURL: `https://tb-manual.torproject.org/${getLocale()}/bridges/`,
+ learnMoreNetworkSettingsURL: `about:blank`,
+ };
+
+ return retval;
+ })() /* Tor Network Settings Strings */,
+
+ /*
+ Tor Onion Services Strings, e.g., for the authentication prompt.
+ */
+ onionServices: (function() {
+ let tsb = new TorPropertyStringBundle(
+ "chrome://torbutton/locale/torbutton.properties",
+ "onionServices."
+ );
+ let getString = function(key, fallback) {
+ return tsb.getString(key, fallback);
+ };
+
+ const kProblemLoadingSiteFallback = "Problem Loading Onionsite";
+ const kLongDescFallback = "Details: %S";
+
+ let retval = {
+ learnMore: getString("learnMore", "Learn more"),
+ learnMoreURL: `https://support.torproject.org/${getLocale()}/onionservices/client-auth/`,
+ errorPage: {
+ browser: getString("errorPage.browser", "Browser"),
+ network: getString("errorPage.network", "Network"),
+ onionSite: getString("errorPage.onionSite", "Onionsite"),
+ },
+ descNotFound: { // Tor SOCKS error 0xF0
+ pageTitle: getString("descNotFound.pageTitle", kProblemLoadingSiteFallback),
+ header: getString("descNotFound.header", "Onionsite Not Found"),
+ longDescription: getString("descNotFound.longDescription", kLongDescFallback),
+ },
+ descInvalid: { // Tor SOCKS error 0xF1
+ pageTitle: getString("descInvalid.pageTitle", kProblemLoadingSiteFallback),
+ header: getString("descInvalid.header", "Onionsite Cannot Be Reached"),
+ longDescription: getString("descInvalid.longDescription", kLongDescFallback),
+ },
+ introFailed: { // Tor SOCKS error 0xF2
+ pageTitle: getString("introFailed.pageTitle", kProblemLoadingSiteFallback),
+ header: getString("introFailed.header", "Onionsite Has Disconnected"),
+ longDescription: getString("introFailed.longDescription", kLongDescFallback),
+ },
+ rendezvousFailed: { // Tor SOCKS error 0xF3
+ pageTitle: getString("rendezvousFailed.pageTitle", kProblemLoadingSiteFallback),
+ header: getString("rendezvousFailed.header", "Unable to Connect to Onionsite"),
+ longDescription: getString("rendezvousFailed.longDescription", kLongDescFallback),
+ },
+ clientAuthMissing: { // Tor SOCKS error 0xF4
+ pageTitle: getString("clientAuthMissing.pageTitle", "Authorization Required"),
+ header: getString("clientAuthMissing.header", "Onionsite Requires Authentication"),
+ longDescription: getString("clientAuthMissing.longDescription", kLongDescFallback),
+ },
+ clientAuthIncorrect: { // Tor SOCKS error 0xF5
+ pageTitle: getString("clientAuthIncorrect.pageTitle", "Authorization Failed"),
+ header: getString("clientAuthIncorrect.header", "Onionsite Authentication Failed"),
+ longDescription: getString("clientAuthIncorrect.longDescription", kLongDescFallback),
+ },
+ badAddress: { // Tor SOCKS error 0xF6
+ pageTitle: getString("badAddress.pageTitle", kProblemLoadingSiteFallback),
+ header: getString("badAddress.header", "Invalid Onionsite Address"),
+ longDescription: getString("badAddress.longDescription", kLongDescFallback),
+ },
+ introTimedOut: { // Tor SOCKS error 0xF7
+ pageTitle: getString("introTimedOut.pageTitle", kProblemLoadingSiteFallback),
+ header: getString("introTimedOut.header", "Onionsite Circuit Creation Timed Out"),
+ longDescription: getString("introTimedOut.longDescription", kLongDescFallback),
+ },
+ authPrompt: {
+ description:
+ getString("authPrompt.description2", "%S is requesting that you authenticate."),
+ keyPlaceholder: getString("authPrompt.keyPlaceholder", "Enter your key"),
+ done: getString("authPrompt.done", "Done"),
+ doneAccessKey: getString("authPrompt.doneAccessKey", "d"),
+ invalidKey: getString("authPrompt.invalidKey", "Invalid key"),
+ failedToSetKey:
+ getString("authPrompt.failedToSetKey", "Failed to set key"),
+ },
+ authPreferences: {
+ header: getString("authPreferences.header", "Onion Services Authentication"),
+ overview: getString("authPreferences.overview", "Some onion services require that you identify yourself with a key"),
+ savedKeys: getString("authPreferences.savedKeys", "Saved Keys"),
+ dialogTitle: getString("authPreferences.dialogTitle", "Onion Services Keys"),
+ dialogIntro: getString("authPreferences.dialogIntro", "Keys for the following onionsites are stored on your computer"),
+ onionSite: getString("authPreferences.onionSite", "Onionsite"),
+ onionKey: getString("authPreferences.onionKey", "Key"),
+ remove: getString("authPreferences.remove", "Remove"),
+ removeAll: getString("authPreferences.removeAll", "Remove All"),
+ failedToGetKeys: getString("authPreferences.failedToGetKeys", "Failed to get keys"),
+ failedToRemoveKey: getString("authPreferences.failedToRemoveKey", "Failed to remove key"),
+ },
+ };
+
+ return retval;
+ })() /* Tor Onion Services Strings */,
+
+ /*
+ OnionLocation
+ */
+ onionLocation: (function() {
+ const tsb = new TorPropertyStringBundle(
+ ["chrome://torbutton/locale/torbutton.properties"],
+ "onionLocation."
+ );
+ const getString = function(key, fallback) {
+ return tsb.getString(key, fallback);
+ };
+
+ const retval = {
+ alwaysPrioritize: getString(
+ "alwaysPrioritize",
+ "Always Prioritize Onionsites"
+ ),
+ alwaysPrioritizeAccessKey: getString("alwaysPrioritizeAccessKey", "a"),
+ notNow: getString("notNow", "Not Now"),
+ notNowAccessKey: getString("notNowAccessKey", "n"),
+ description: getString(
+ "description",
+ "Website publishers can protect users by adding a security layer. This prevents eavesdroppers from knowing that you are the one visiting that website."
+ ),
+ tryThis: getString("tryThis", "Try this: Onionsite"),
+ onionAvailable: getString("onionAvailable", "Onionsite available"),
+ learnMore: getString("learnMore", "Learn more"),
+ learnMoreURL: `https://tb-manual.torproject.org/${getLocale()}/onion-services/`,
+ always: getString("always", "Always"),
+ askEverytime: getString("askEverytime", "Ask you every time"),
+ prioritizeOnionsDescription: getString(
+ "prioritizeOnionsDescription",
+ "Prioritize onionsites when they are available."
+ ),
+ onionServicesTitle: getString("onionServicesTitle", "Onion Services"),
+ };
+
+ return retval;
+ })() /* OnionLocation */,
+
+ /*
+ Tor Deamon Configuration Key Strings
+ */
+
+ // TODO: proper camel case
+ configKeys: {
+ /* Bridge Conf Settings */
+ useBridges: "UseBridges",
+ bridgeList: "Bridge",
+ /* Proxy Conf Strings */
+ socks4Proxy: "Socks4Proxy",
+ socks5Proxy: "Socks5Proxy",
+ socks5ProxyUsername: "Socks5ProxyUsername",
+ socks5ProxyPassword: "Socks5ProxyPassword",
+ httpsProxy: "HTTPSProxy",
+ httpsProxyAuthenticator: "HTTPSProxyAuthenticator",
+ /* Firewall Conf Strings */
+ reachableAddresses: "ReachableAddresses",
+
+ /* BridgeDB Strings */
+ clientTransportPlugin: "ClientTransportPlugin",
+ },
+
+ /*
+ about:config preference keys
+ */
+
+ preferenceKeys: {
+ defaultBridgeType: "extensions.torlauncher.default_bridge_type",
+ recommendedBridgeType:
+ "extensions.torlauncher.default_bridge_recommended_type",
+ },
+
+ /*
+ about:config preference branches
+ */
+ preferenceBranches: {
+ defaultBridge: "extensions.torlauncher.default_bridge.",
+ bridgeDBBridges: "extensions.torlauncher.bridgedb_bridge.",
+ },
+};
diff --git a/browser/modules/moz.build b/browser/modules/moz.build
index cbb94cf736a0..88f2a55d6f49 100644
--- a/browser/modules/moz.build
+++ b/browser/modules/moz.build
@@ -154,6 +154,7 @@ EXTRA_JS_MODULES += [
'TabUnloader.jsm',
'ThemeVariableMap.jsm',
'TopSiteAttribution.jsm',
+ 'TorStrings.jsm',
'TransientPrefs.jsm',
'webrtcUI.jsm',
'ZoomUI.jsm',
1
0