tbb-commits
Threads by month
- ----- 2025 -----
- July
- 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
- 1 participants
- 18632 discussions

[Git][tpo/applications/tor-browser-update-responses][main] Restore release/download-android-*.json from 13.0.4
by boklm (@boklm) 07 Dec '23
by boklm (@boklm) 07 Dec '23
07 Dec '23
boklm pushed to branch main at The Tor Project / Applications / Tor Browser update responses
Commits:
1f03f584 by Nicolas Vigier at 2023-12-07T12:49:53+01:00
Restore release/download-android-*.json from 13.0.4
tor-browser-build#41039.
- - - - -
4 changed files:
- + update_3/release/download-android-aarch64.json
- + update_3/release/download-android-armv7.json
- + update_3/release/download-android-x86.json
- + update_3/release/download-android-x86_64.json
Changes:
=====================================
update_3/release/download-android-aarch64.json
=====================================
@@ -0,0 +1 @@
+{"binary":"https://dist.torproject.org/torbrowser/13.0.4/tor-browser-android-aarch64-1…","git_tag":"tbb-13.0.4-build1","sig":"https://dist.torproject.org/torbrowser/13.0.4/tor-browser-android-aarch64-1…","version":"13.0.4"}
\ No newline at end of file
=====================================
update_3/release/download-android-armv7.json
=====================================
@@ -0,0 +1 @@
+{"binary":"https://dist.torproject.org/torbrowser/13.0.4/tor-browser-android-armv7-13.…","git_tag":"tbb-13.0.4-build1","sig":"https://dist.torproject.org/torbrowser/13.0.4/tor-browser-android-armv7-13.…","version":"13.0.4"}
\ No newline at end of file
=====================================
update_3/release/download-android-x86.json
=====================================
@@ -0,0 +1 @@
+{"binary":"https://dist.torproject.org/torbrowser/13.0.4/tor-browser-android-x86-13.0.…","git_tag":"tbb-13.0.4-build1","sig":"https://dist.torproject.org/torbrowser/13.0.4/tor-browser-android-x86-13.0.…","version":"13.0.4"}
\ No newline at end of file
=====================================
update_3/release/download-android-x86_64.json
=====================================
@@ -0,0 +1 @@
+{"binary":"https://dist.torproject.org/torbrowser/13.0.4/tor-browser-android-x86_64-13…","git_tag":"tbb-13.0.4-build1","sig":"https://dist.torproject.org/torbrowser/13.0.4/tor-browser-android-x86_64-13…","version":"13.0.4"}
\ No newline at end of file
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-update-responses…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-update-responses…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/firefox-android][firefox-android-115.2.1-13.5-1] fixup! Modify UI/UX
by Dan Ballard (@dan) 06 Dec '23
by Dan Ballard (@dan) 06 Dec '23
06 Dec '23
Dan Ballard pushed to branch firefox-android-115.2.1-13.5-1 at The Tor Project / Applications / firefox-android
Commits:
06e63c65 by clairehurst at 2023-12-05T14:58:25-07:00
fixup! Modify UI/UX
- - - - -
2 changed files:
- fenix/app/src/main/java/org/mozilla/fenix/settings/CustomizationFragment.kt
- fenix/app/src/main/res/xml/customization_preferences.xml
Changes:
=====================================
fenix/app/src/main/java/org/mozilla/fenix/settings/CustomizationFragment.kt
=====================================
@@ -46,12 +46,11 @@ class CustomizationFragment : PreferenceFragmentCompat() {
}
private fun setupPreferences() {
-// Remove as part of tor-browser#42076 : https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/42076
-// bindFollowDeviceTheme()
-// bindDarkTheme()
-// bindLightTheme()
-// bindAutoBatteryTheme()
-// setupRadioGroups()
+ bindFollowDeviceTheme()
+ bindDarkTheme()
+ bindLightTheme()
+ bindAutoBatteryTheme()
+ setupRadioGroups()
setupToolbarCategory()
setupGesturesCategory()
}
=====================================
fenix/app/src/main/res/xml/customization_preferences.xml
=====================================
@@ -4,33 +4,32 @@
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<androidx.preference.PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
-<!-- Remove as part of tor-browser#42076 : https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/42076 -->
-<!-- <androidx.preference.PreferenceCategory-->
-<!-- android:layout="@layout/preference_cat_style"-->
-<!-- android:title="@string/preferences_theme"-->
-<!-- app:iconSpaceReserved="false">-->
-<!-- <org.mozilla.fenix.settings.RadioButtonPreference-->
-<!-- android:defaultValue="@bool/underAPI28"-->
-<!-- android:key="@string/pref_key_light_theme"-->
-<!-- android:title="@string/preference_light_theme" />-->
-<!---->
-<!-- <org.mozilla.fenix.settings.RadioButtonPreference-->
-<!-- android:defaultValue="false"-->
-<!-- android:key="@string/pref_key_dark_theme"-->
-<!-- android:title="@string/preference_dark_theme" />-->
-<!---->
-<!-- <org.mozilla.fenix.settings.RadioButtonPreference-->
-<!-- android:defaultValue="false"-->
-<!-- android:key="@string/pref_key_auto_battery_theme"-->
-<!-- android:title="@string/preference_auto_battery_theme"-->
-<!-- app:isPreferenceVisible="@bool/underAPI28" />-->
-<!---->
-<!-- <org.mozilla.fenix.settings.RadioButtonPreference-->
-<!-- android:defaultValue="@bool/API28"-->
-<!-- android:key="@string/pref_key_follow_device_theme"-->
-<!-- android:title="@string/preference_follow_device_theme"-->
-<!-- app:isPreferenceVisible="@bool/API28" />-->
-<!-- </androidx.preference.PreferenceCategory>-->
+ <androidx.preference.PreferenceCategory
+ android:layout="@layout/preference_cat_style"
+ android:title="@string/preferences_theme"
+ app:iconSpaceReserved="false">
+ <org.mozilla.fenix.settings.RadioButtonPreference
+ android:defaultValue="@bool/underAPI28"
+ android:key="@string/pref_key_light_theme"
+ android:title="@string/preference_light_theme" />
+
+ <org.mozilla.fenix.settings.RadioButtonPreference
+ android:defaultValue="false"
+ android:key="@string/pref_key_dark_theme"
+ android:title="@string/preference_dark_theme" />
+
+ <org.mozilla.fenix.settings.RadioButtonPreference
+ android:defaultValue="false"
+ android:key="@string/pref_key_auto_battery_theme"
+ android:title="@string/preference_auto_battery_theme"
+ app:isPreferenceVisible="@bool/underAPI28" />
+
+ <org.mozilla.fenix.settings.RadioButtonPreference
+ android:defaultValue="@bool/API28"
+ android:key="@string/pref_key_follow_device_theme"
+ android:title="@string/preference_follow_device_theme"
+ app:isPreferenceVisible="@bool/API28" />
+ </androidx.preference.PreferenceCategory>
<androidx.preference.PreferenceCategory
android:layout="@layout/preference_cat_style"
View it on GitLab: https://gitlab.torproject.org/tpo/applications/firefox-android/-/commit/06e…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/firefox-android/-/commit/06e…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-115.5.0esr-13.5-1] 2 commits: fixup! Omnibox: Add DDG, Startpage, Disconnect, Youtube, Twitter; remove Amazon, eBay, bing
by Pier Angelo Vendrame (@pierov) 06 Dec '23
by Pier Angelo Vendrame (@pierov) 06 Dec '23
06 Dec '23
Pier Angelo Vendrame pushed to branch tor-browser-115.5.0esr-13.5-1 at The Tor Project / Applications / Tor Browser
Commits:
116e6f82 by Pier Angelo Vendrame at 2023-12-06T17:04:38+00:00
fixup! Omnibox: Add DDG, Startpage, Disconnect, Youtube, Twitter; remove Amazon, eBay, bing
Bug 42283: Remove blockchair
- - - - -
4195dec5 by Pier Angelo Vendrame at 2023-12-06T17:04:38+00:00
fixup! Bug 41435: Add a Tor Browser migration function
Bug 42283: Remove blockchair
- - - - -
6 changed files:
- browser/components/BrowserGlue.sys.mjs
- − browser/components/search/extensions/blockchair-onion/favicon.png
- − browser/components/search/extensions/blockchair-onion/manifest.json
- − browser/components/search/extensions/blockchair/favicon.png
- − browser/components/search/extensions/blockchair/manifest.json
- toolkit/components/search/SearchService.sys.mjs
Changes:
=====================================
browser/components/BrowserGlue.sys.mjs
=====================================
@@ -4576,7 +4576,9 @@ BrowserGlue.prototype = {
// migration to packaged locales.
// Version 2: Tor Browser 13.0/13.0a1: tor-browser#41845. Also, removed some
// torbutton preferences that are not used anymore.
- const TBB_MIGRATION_VERSION = 2;
+ // Version 3: Tor Browser 13.0.7/13.5a3: Remove blockchair
+ // (tor-browser#42283).
+ const TBB_MIGRATION_VERSION = 3;
const MIGRATION_PREF = "torbrowser.migration.version";
// If we decide to force updating users to pass through any version
@@ -4628,6 +4630,22 @@ BrowserGlue.prototype = {
}
}
}
+ if (currentVersion < 3) {
+ (async () => {
+ try {
+ const engine = await lazy.AddonManager.getAddonByID(
+ "blockchair(a)search.mozilla.org"
+ );
+ await engine?.uninstall();
+ } catch {}
+ try {
+ const engine = await lazy.AddonManager.getAddonByID(
+ "blockchair-onion(a)search.mozilla.org"
+ );
+ engine?.uninstall();
+ } catch {}
+ })();
+ }
Services.prefs.setIntPref(MIGRATION_PREF, TBB_MIGRATION_VERSION);
},
=====================================
browser/components/search/extensions/blockchair-onion/favicon.png deleted
=====================================
Binary files a/browser/components/search/extensions/blockchair-onion/favicon.png and /dev/null differ
=====================================
browser/components/search/extensions/blockchair-onion/manifest.json deleted
=====================================
@@ -1,26 +0,0 @@
-{
- "name": "BlockchairOnion",
- "description": "Blockchair Onion",
- "manifest_version": 2,
- "version": "1.0",
- "applications": {
- "gecko": {
- "id": "blockchair-onion(a)search.mozilla.org"
- }
- },
- "hidden": true,
- "icons": {
- "16": "favicon.png"
- },
- "web_accessible_resources": [
- "favicon.png"
- ],
- "chrome_settings_overrides": {
- "search_provider": {
- "name": "BlockchairOnion",
- "search_url": "http://blkchairbknpn73cfjhevhla7rkp4ed5gg2knctvv7it4lioy22defid.onion/search",
- "search_form": "http://blkchairbknpn73cfjhevhla7rkp4ed5gg2knctvv7it4lioy22defid.onion/searc…",
- "search_url_get_params": "q={searchTerms}"
- }
- }
-}
=====================================
browser/components/search/extensions/blockchair/favicon.png deleted
=====================================
Binary files a/browser/components/search/extensions/blockchair/favicon.png and /dev/null differ
=====================================
browser/components/search/extensions/blockchair/manifest.json deleted
=====================================
@@ -1,26 +0,0 @@
-{
- "name": "Blockchair",
- "description": "Blockchair",
- "manifest_version": 2,
- "version": "1.0",
- "applications": {
- "gecko": {
- "id": "blockchair(a)search.mozilla.org"
- }
- },
- "hidden": true,
- "icons": {
- "16": "favicon.png"
- },
- "web_accessible_resources": [
- "favicon.png"
- ],
- "chrome_settings_overrides": {
- "search_provider": {
- "name": "Blockchair",
- "search_url": "https://blockchair.com/search",
- "search_form": "https://blockchair.com/search/?q={searchTerms}",
- "search_url_get_params": "q={searchTerms}"
- }
- }
-}
=====================================
toolkit/components/search/SearchService.sys.mjs
=====================================
@@ -2282,16 +2282,11 @@ export class SearchService {
{ webExtension: { id: "ddg(a)search.mozilla.org" }, orderHint: 100 },
{ webExtension: { id: "youtube(a)search.mozilla.org" }, orderHint: 90 },
{ webExtension: { id: "google(a)search.mozilla.org" }, orderHint: 80 },
- { webExtension: { id: "blockchair(a)search.mozilla.org" }, orderHint: 70 },
- { webExtension: { id: "ddg-onion(a)search.mozilla.org" }, orderHint: 60 },
- {
- webExtension: { id: "blockchair-onion(a)search.mozilla.org" },
- orderHint: 50,
- },
- { webExtension: { id: "startpage(a)search.mozilla.org" }, orderHint: 40 },
- { webExtension: { id: "twitter(a)search.mozilla.org" }, orderHint: 30 },
- { webExtension: { id: "wikipedia(a)search.mozilla.org" }, orderHint: 20 },
- { webExtension: { id: "yahoo(a)search.mozilla.org" }, orderHint: 10 },
+ { webExtension: { id: "ddg-onion(a)search.mozilla.org" }, orderHint: 70 },
+ { webExtension: { id: "startpage(a)search.mozilla.org" }, orderHint: 60 },
+ { webExtension: { id: "twitter(a)search.mozilla.org" }, orderHint: 50 },
+ { webExtension: { id: "wikipedia(a)search.mozilla.org" }, orderHint: 40 },
+ { webExtension: { id: "yahoo(a)search.mozilla.org" }, orderHint: 30 },
];
for (let e of engines) {
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/30248a…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/30248a…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/firefox-android][firefox-android-115.2.1-13.0-1] fixup! Bug 40009: Change the default search engines
by richard (@richard) 06 Dec '23
by richard (@richard) 06 Dec '23
06 Dec '23
richard pushed to branch firefox-android-115.2.1-13.0-1 at The Tor Project / Applications / firefox-android
Commits:
325edd9a by cypherpunks1 at 2023-12-06T16:58:01+00:00
fixup! Bug 40009: Change the default search engines
Bug 42261: Update the icon and URL of Startpage search engine
- - - - -
1 changed file:
- android-components/components/feature/search/src/main/assets/searchplugins/startpage.xml
Changes:
=====================================
android-components/components/feature/search/src/main/assets/searchplugins/startpage.xml
=====================================
@@ -2,10 +2,10 @@
<ShortName>Startpage</ShortName>
<Description>Start Page</Description>
<InputEncoding>UTF-8</InputEncoding>
-<Image width="16" height="16">data:image/png;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2jkj+9YtD/vWLQ/71i0P+9otD/vaLRP72i0T+9YtE/vWLRP72i0T+9otD/vaNRP72jUT+9otF/vaLRf73kkv+9Yc///WJP//1iT//9Yk///rAmf/94Mz/+sCa//aRTv/1iUH/9ok///aJP//2i0H/9otB//aJQv/2iUL/9otC//aNRP/2jUT/9o1E//aNRP/6wpv////////////96dr/95dQ//aNRP/2kET/9pBG//aQRv/2kEb/9pBG//aRR//3lEz/95BH//mueP/7xJ3/959g//efYf/4p23//vDm//3p2//3kEr/95FJ//aRSf/niFH/95FK//aRSv/2mE//95hS/vq4iP/////////////////81bj/95xZ//q4iP//////+bF+//eZT//njFT/PSqi/2xGjv/2mVD/951V/vedVv783cX///////vQrf/++PP///////748//+8uj///////m3gf/olFr/PSuj/w8Pt/9sSJD/951V//eeWf73oVv++8ul///////5sXf/+KRi//vRsf////////////3r3v/olF//Piyk/w8Pt/9sSJH/+J5Z//ieWv/3oV/++KZf/vihXP/97N7//vn0//zTs//6wJP/+bBy//q6iP/onW//Piyl/w8Pt/8fGbH/m2iB/+icY//4pGD/96hl/viqZf74pmD/+Kxr//3iy/////////n1//ivbP/onGj/Pi2m/w8Pt/8uJKz/fFeQ/x8Zsf8+Lqb/6J9r//ivbP74rm3++Klm//mpZv/5q2f/+bR9//m0e//poW7/Pi6n/w8Pt/9sTZj/+Ktp//ira/+rd4P/Dw+3/4xijv/5snH++LN1/vmvbf/5r23/+a5t//mvb//4r2//TTuk/w8Pt/8fGrL/6ah1//ivcP/4r3P/q3yI/w8Pt/+MZpP/+bN5/vm4ev75t3X/+bV1//m1df/5t3X/+Ld3/8qUhP98XZn/Hxqz/+mse//5t3f/2p+B/x8as/8PD7f/u4qK//m7fv76u4D++bl7//m3fP/5uXz/+bl8//m5fP/5t3z/+bl//x8as/9NPKf/fWCb/x8as/8PD7f/bVOh//q5f//6v4X++sGI/vm9g//5voX/+b6F//m9hf/6vYX/+r6F//nCh/+bepr/Hxu0/w8Pt/8PD7f/fWOh//q+hf/6wof/+saN/vrGjf75xIv/+ceL//nEi//5xIv/+sSL//rHi//6x43/+ceN/+m7kP+7lpj/6ruQ//rHkP/6x43/+seQ//rLlf76ypT++seR//rJkf/6yZH/+seR//rJkf/6yZH/+8mR//vJlP/7yZT/+smU//rJlP/6yZT/+8yV//rJlf/6zpn+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==</Image>
+<Image width="16" height="16">data:image/png;base64,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</Image>
-<Url type="text/html" method="POST" template="https://startpage.com/rto/search">
+<Url type="text/html" method="POST" template="https://startpage.com/sp/search">
<Param name="q" value="{searchTerms}"/>
</Url>
-<SearchForm>https://startpage.com/rto/search/</SearchForm>
+<SearchForm>https://startpage.com/sp/search/</SearchForm>
</SearchPlugin>
View it on GitLab: https://gitlab.torproject.org/tpo/applications/firefox-android/-/commit/325…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/firefox-android/-/commit/325…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-115.5.0esr-13.0-1] fixup! Omnibox: Add DDG, Startpage, Disconnect, Youtube, Twitter; remove Amazon, eBay, bing
by richard (@richard) 06 Dec '23
by richard (@richard) 06 Dec '23
06 Dec '23
richard pushed to branch tor-browser-115.5.0esr-13.0-1 at The Tor Project / Applications / Tor Browser
Commits:
73234e2b by cypherpunks1 at 2023-12-06T16:56:16+00:00
fixup! Omnibox: Add DDG, Startpage, Disconnect, Youtube, Twitter; remove Amazon, eBay, bing
Bug 42261: Update the icon of Startpage search engine
- - - - -
1 changed file:
- browser/components/search/extensions/startpage/favicon.png
Changes:
=====================================
browser/components/search/extensions/startpage/favicon.png
=====================================
Binary files a/browser/components/search/extensions/startpage/favicon.png and b/browser/components/search/extensions/startpage/favicon.png differ
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/73234e2…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/73234e2…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][base-browser-115.5.0esr-13.5-1] Bug 1865238 - Use One UI Sans KR VF for Korean sans-serif font on Android r=jfkthame
by richard (@richard) 06 Dec '23
by richard (@richard) 06 Dec '23
06 Dec '23
richard pushed to branch base-browser-115.5.0esr-13.5-1 at The Tor Project / Applications / Tor Browser
Commits:
02be06d6 by Kagami Sascha Rosylight at 2023-12-06T16:10:56+00:00
Bug 1865238 - Use One UI Sans KR VF for Korean sans-serif font on Android r=jfkthame
Per /etc/fonts.xml, there are now only two `<family lang="ko">` nodes there:
* OneUISansKRVF series
* SECCJK series (but no KR postfix anymore?)
This patch uses One UI Sans KR VF as the replacement as this is newer and is a variable font (tested with https://codepen.io/SaschaNaz/pen/ExrdYXJ)
Differential Revision: https://phabricator.services.mozilla.com/D195078
- - - - -
1 changed file:
- modules/libpref/init/all.js
Changes:
=====================================
modules/libpref/init/all.js
=====================================
@@ -3053,7 +3053,7 @@ pref("font.size.monospace.x-math", 13);
pref("font.name-list.monospace.ja", "MotoyaLMaru, MotoyaLCedar, Noto Sans Mono CJK JP, SEC Mono CJK JP, Droid Sans Mono");
pref("font.name-list.serif.ko", "Charis SIL Compact, Noto Serif CJK KR, Noto Serif, Droid Serif, HYSerif");
- pref("font.name-list.sans-serif.ko", "Roboto, Google Sans, SmartGothic, NanumGothic, Noto Sans KR, Noto Sans CJK KR, SamsungKorean_v2.0, SEC CJK KR, DroidSansFallback, Droid Sans Fallback");
+ pref("font.name-list.sans-serif.ko", "Roboto, Google Sans, SmartGothic, NanumGothic, Noto Sans KR, Noto Sans CJK KR, One UI Sans KR VF, SamsungKorean_v2.0, SEC CJK KR, DroidSansFallback, Droid Sans Fallback");
pref("font.name-list.monospace.ko", "Droid Sans Mono, Noto Sans Mono CJK KR, SEC Mono CJK KR");
pref("font.name-list.serif.th", "Charis SIL Compact, Noto Serif, Noto Serif Thai, Droid Serif");
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/02be06d…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/02be06d…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-115.5.0esr-13.5-1] Bug 1865238 - Use One UI Sans KR VF for Korean sans-serif font on Android r=jfkthame
by richard (@richard) 06 Dec '23
by richard (@richard) 06 Dec '23
06 Dec '23
richard pushed to branch tor-browser-115.5.0esr-13.5-1 at The Tor Project / Applications / Tor Browser
Commits:
30248ab5 by Kagami Sascha Rosylight at 2023-12-06T16:06:58+00:00
Bug 1865238 - Use One UI Sans KR VF for Korean sans-serif font on Android r=jfkthame
Per /etc/fonts.xml, there are now only two `<family lang="ko">` nodes there:
* OneUISansKRVF series
* SECCJK series (but no KR postfix anymore?)
This patch uses One UI Sans KR VF as the replacement as this is newer and is a variable font (tested with https://codepen.io/SaschaNaz/pen/ExrdYXJ)
Differential Revision: https://phabricator.services.mozilla.com/D195078
- - - - -
1 changed file:
- modules/libpref/init/all.js
Changes:
=====================================
modules/libpref/init/all.js
=====================================
@@ -3053,7 +3053,7 @@ pref("font.size.monospace.x-math", 13);
pref("font.name-list.monospace.ja", "MotoyaLMaru, MotoyaLCedar, Noto Sans Mono CJK JP, SEC Mono CJK JP, Droid Sans Mono");
pref("font.name-list.serif.ko", "Charis SIL Compact, Noto Serif CJK KR, Noto Serif, Droid Serif, HYSerif");
- pref("font.name-list.sans-serif.ko", "Roboto, Google Sans, SmartGothic, NanumGothic, Noto Sans KR, Noto Sans CJK KR, SamsungKorean_v2.0, SEC CJK KR, DroidSansFallback, Droid Sans Fallback");
+ pref("font.name-list.sans-serif.ko", "Roboto, Google Sans, SmartGothic, NanumGothic, Noto Sans KR, Noto Sans CJK KR, One UI Sans KR VF, SamsungKorean_v2.0, SEC CJK KR, DroidSansFallback, Droid Sans Fallback");
pref("font.name-list.monospace.ko", "Droid Sans Mono, Noto Sans Mono CJK KR, SEC Mono CJK KR");
pref("font.name-list.serif.th", "Charis SIL Compact, Noto Serif, Noto Serif Thai, Droid Serif");
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/30248ab…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/30248ab…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][maint-13.0] Bug 40990: Remove old macos signing scripts
by richard (@richard) 06 Dec '23
by richard (@richard) 06 Dec '23
06 Dec '23
richard pushed to branch maint-13.0 at The Tor Project / Applications / tor-browser-build
Commits:
7d25ba41 by Nicolas Vigier at 2023-12-06T16:01:16+00:00
Bug 40990: Remove old macos signing scripts
- - - - -
30 changed files:
- tools/signing/do-all-signing
- − tools/signing/finished-signing-clean-macos-signer
- tools/signing/gatekeeper-bundling.sh
- − tools/signing/macos-signer-gatekeeper-signing
- − tools/signing/macos-signer-gatekeeper-signing.mullvadbrowser
- − tools/signing/macos-signer-gatekeeper-signing.torbrowser
- − tools/signing/macos-signer-notarization
- − tools/signing/macos-signer-notarization.mullvadbrowser
- − tools/signing/macos-signer-notarization.torbrowser
- − tools/signing/macos-signer-proxy
- − tools/signing/macos-signer-proxy.mullvadbrowser
- − tools/signing/macos-signer-proxy.torbrowser
- − tools/signing/macos-signer-stapler
- − tools/signing/macos-signer-stapler.mullvadbrowser
- − tools/signing/macos-signer-stapler.torbrowser
- tools/signing/set-config
- tools/signing/set-config.hosts
- − tools/signing/set-config.macos-notarization
- − tools/signing/sync-macos-local-to-macos-signer
- − tools/signing/sync-macos-local-to-macos-signer.mullvadbrowser
- − tools/signing/sync-macos-local-to-macos-signer.torbrowser
- − tools/signing/sync-macos-local-to-macos-signer.torbrowser.dry-run
- − tools/signing/sync-macos-signer-stapled-to-macos-local-stapled
- − tools/signing/sync-macos-signer-stapled-to-macos-local-stapled.mullvadbrowser
- − tools/signing/sync-macos-signer-stapled-to-macos-local-stapled.torbrowser
- − tools/signing/sync-macos-signer-stapled-to-macos-local-stapled.torbrowser.dry-run
- − tools/signing/sync-scripts-to-macos-signer
- − tools/signing/sync-scripts-to-macos-signer.mullvadbrowser
- − tools/signing/sync-scripts-to-macos-signer.torbrowser
- − tools/signing/sync-scripts-to-macos-signer.torbrowser.dry-run
Changes:
=====================================
tools/signing/do-all-signing
=====================================
@@ -8,19 +8,9 @@ NON_INTERACTIVE=1
steps_dir="$signed_version_dir.steps"
test -d "$steps_dir" || mkdir -p "$steps_dir"
-if test -n "$use_rcodesign"
-then
- test -f "$steps_dir/linux-signer-rcodesign-sign.done" ||
- read -sp "Enter rcodesign passphrase for key-1: " RCODESIGN_PW
- echo
-else
- test -f "$steps_dir/macos-signer-gatekeeper-signing.done" ||
- read -sp "Enter macos keychain passphrase: " KEYCHAIN_PW
- echo
- test -f "$steps_dir/macos-signer-notarization.done" ||
- read -sp "Enter macos notarization passphrase: " NOTARIZATION_PW
- echo
-fi
+test -f "$steps_dir/linux-signer-rcodesign-sign.done" ||
+ read -sp "Enter rcodesign passphrase for key-1: " RCODESIGN_PW
+echo
is_project torbrowser && nssdb=torbrowser-nssdb7
is_project mullvadbrowser && nssdb=mullvadbrowser-nssdb-1
test -f "$steps_dir/linux-signer-signmars.done" ||
@@ -67,52 +57,6 @@ function rcodesign-notary-submit {
"$script_dir/rcodesign-notary-submit"
}
-function macos-signer-directory-not-present {
- # To avoid doing two signings at the same time, or to avoid unknowingly
- # using parts from a previous signing attempt, we check that the
- # directory does not exist yet (see tor-browser-build#40497)
- if ssh "$ssh_host_macos_signer" "test -d $tbb_version"
- then
- echo "The directory $tbb_version already exists on $ssh_host_macos_signer"
- return 1
- fi
- return 0
-}
-
-function sync-scripts-to-macos-signer {
- "$script_dir/sync-scripts-to-macos-signer"
-}
-
-function macos-signer-enable-network-proxy-settings {
- ssh "$ssh_host_macos_signer" 'networksetup -setsecurewebproxystate Ethernet on'
-}
-
-function macos-signer-gatekeeper-signing {
- "$script_dir/sync-macos-local-to-macos-signer"
- ssh "$ssh_host_macos_signer" 'bash -s' << EOF
- export KEYCHAIN_PW=$KEYCHAIN_PW
- ~/signing-$SIGNING_PROJECTNAME-$tbb_version_type/macos-signer-gatekeeper-signing.$SIGNING_PROJECTNAME
-EOF
- unset KEYCHAIN_PW
-}
-
-function macos-signer-notarization {
- ssh "$ssh_host_macos_signer" 'bash -s' << EOF
- export PW=$NOTARIZATION_PW
- ~/signing-$SIGNING_PROJECTNAME-$tbb_version_type/macos-signer-notarization.$SIGNING_PROJECTNAME
-EOF
- unset NOTARIZATION_PW
-}
-
-function macos-signer-stapler {
- ssh "$ssh_host_macos_signer" "~/signing-$SIGNING_PROJECTNAME-$tbb_version_type/macos-signer-stapler.$SIGNING_PROJECTNAME"
- "$script_dir/sync-macos-signer-stapled-to-macos-local-stapled"
-}
-
-function macos-signer-disable-network-proxy-settings {
- ssh "$ssh_host_macos_signer" 'networksetup -setsecurewebproxystate Ethernet off'
-}
-
function gatekeeper-bundling {
"$script_dir/gatekeeper-bundling.sh"
}
@@ -212,10 +156,6 @@ function upload-update_responses-to-staticiforme {
"$script_dir/upload-update_responses-to-staticiforme"
}
-function finished-signing-clean-macos-signer {
- "$script_dir/finished-signing-clean-macos-signer"
-}
-
function finished-signing-clean-linux-signer {
"$script_dir/finished-signing-clean-linux-signer"
}
@@ -233,22 +173,11 @@ export SIGNING_PROJECTNAME
do_step wait-for-finished-build
do_step sync-builder-unsigned-to-local-signed
-if test -n "$use_rcodesign";
-then
- do_step sync-scripts-to-linux-signer
- do_step sync-before-linux-signer-rcodesign-sign
- do_step linux-signer-rcodesign-sign
- do_step sync-linux-signer-macos-signed-tar-to-local
- do_step rcodesign-notary-submit
-else
- do_step macos-signer-directory-not-present
- do_step sync-scripts-to-macos-signer
- do_step macos-signer-enable-network-proxy-settings
- do_step macos-signer-gatekeeper-signing
- do_step macos-signer-notarization
- do_step macos-signer-stapler
- do_step macos-signer-disable-network-proxy-settings
-fi
+do_step sync-scripts-to-linux-signer
+do_step sync-before-linux-signer-rcodesign-sign
+do_step linux-signer-rcodesign-sign
+do_step sync-linux-signer-macos-signed-tar-to-local
+do_step rcodesign-notary-submit
do_step gatekeeper-bundling
do_step dmg2mar
do_step sync-scripts-to-linux-signer
@@ -272,5 +201,4 @@ do_step sync-local-to-staticiforme
do_step sync-scripts-to-staticiforme
do_step staticiforme-prepare-cdn-dist-upload
do_step upload-update_responses-to-staticiforme
-do_step finished-signing-clean-macos-signer
do_step finished-signing-clean-linux-signer
=====================================
tools/signing/finished-signing-clean-macos-signer deleted
=====================================
@@ -1,14 +0,0 @@
-#!/bin/bash
-
-# Remove current tbb version from macos-signer. You should run this
-# when all signing has been done.
-
-set -e
-script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
-source "$script_dir/functions"
-
-var_is_defined ssh_host_macos_signer tbb_version
-
-ssh "$ssh_host_macos_signer" 'bash -s' << EOF
- test -n "$tbb_version" && rm -Rfv ~/"$SIGNING_PROJECTNAME-$tbb_version"
-EOF
=====================================
tools/signing/gatekeeper-bundling.sh
=====================================
@@ -68,11 +68,7 @@ export PATH="$PATH:$tmpdir/libdmg-hfsplus:$tmpdir/hfsplus-tools"
cd $tmpdir/dmg
-if test -n "$use_rcodesign"; then
- tar -xf $macos_stapled_dir/"${proj_name}-${tbb_version}-notarized+stapled.tar.zst"
-else
- unzip -q $macos_stapled_dir/tb-${tbb_version}_ALL-stapled.zip
-fi
+tar -xf $macos_stapled_dir/"${proj_name}-${tbb_version}-notarized+stapled.tar.zst"
cd ..
$script_dir/ddmg.sh $macos_signed_dir/${proj_name}-macos-${tbb_version}.dmg $tmpdir/dmg/ "$Proj_Name"
=====================================
tools/signing/macos-signer-gatekeeper-signing deleted
=====================================
@@ -1,100 +0,0 @@
-#!/bin/bash
-set -e
-
-script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
-source "$script_dir/functions"
-source "$script_dir/set-config.generated-config"
-
-ENTITLEMENTS="$script_dir/$tbb_version_type.entitlements.xml"
-app_name=$(Project_Name)
-
-function check_signature() {
- LANG=$1
- UNZIP=$2
- local failed_open=0
- local failed_exec=0
- if [ ${UNZIP} -eq 1 ]
- then
- test -d test_${LANG} && rm -r test_${LANG}
- unzip -d test_${LANG} -q tb-${tbb_version}_$LANG.zip
- pushd test_${LANG}
- fi
- echo "Checking $LANG..."
- spctl -vvvv --assess --type open --context context:primary-signature "$app_name.app/"
- if [ $? -ne 3 ]; then
- echo tb-${tbb_version}_$LANG.zip not signed correctly. Failed open.
- failed_open=1
- fi
- spctl -vvvv --assess --type exec --context context:primary-signature "$app_name.app/"
- if [ $? -ne 0 ]; then
- echo tb-${tbb_version}_$LANG.zip not signed correctly. Failed exec.
- failed_exec=1
- fi
- if [ ${UNZIP} -eq 1 ]
- then
- popd
- rm -r test_${LANG}
- fi
- if [ ${failed_open} -ne 0 -o ${failed_exec} -ne 0 ]
- then
- return 1
- fi
-}
-
-cd ~/$SIGNING_PROJECTNAME-${tbb_version}
-
-if test -n "$KEYCHAIN_PW"
-then
- KPW="-p $KEYCHAIN_PW"
-fi
-
-security unlock $KPW /Users/torbrowser/Library/Keychains/tbb-signing-alpha.keychain
-security unlock $KPW /Users/torbrowser/Library/Keychains/tbb-signing-2021.keychain
-
-unset KPW KEYCHAIN_PW
-
-for LANG in ALL
-do
- if [ -f tb-${tbb_version}_${LANG}.zip ]
- then
- echo "Deleting tb-${tbb_version}_${LANG}.zip"
- rm tb-${tbb_version}_${LANG}.zip
- fi
- if [ -d "$app_name.app" ]
- then
- echo "Deleting $app_name.app"
- rm -r "$app_name.app"
- fi
- if [ -d "/Volumes/$app_name" ]; then
- echo "DMG already mounted. Please correct."
- exit 1
- fi
- hdiutil attach $(project-name)-macos-${tbb_version}.dmg
- cp -rf "/Volumes/$app_name/$app_name.app" "$app_name.app"
- echo "Signing ${app_name}_${LANG}.app"
- codesign -vvv --deep -o runtime --entitlements="$ENTITLEMENTS" --timestamp -f -s "Developer ID Application: The Tor Project, Inc (MADPSAYN6T)" "$app_name.app/"
- echo "codesign exit code: $?"
- set +e
- check_signature $LANG 0
- if [ $? -eq 1 ]
- then
- echo Signature verification failed.
- rm -r "$app_name.app"
- hdiutil detach "/Volumes/$app_name"
- exit 1
- fi
- set -e
- echo "Zipping up tb-${tbb_version}_${LANG}.zip"
- zip -qr tb-${tbb_version}_${LANG}.zip "$app_name.app"
- rm -rf "$app_name.app"
- hdiutil detach "/Volumes/$app_name"
- set +e
- check_signature $LANG 1
- if [ $? -eq 1 ]
- then
- echo "Signature verification failed (${LANG})".
- rm -r "$app_name.app"
- exit 1
- fi
- set -e
-done
=====================================
tools/signing/macos-signer-gatekeeper-signing.mullvadbrowser deleted
=====================================
@@ -1 +0,0 @@
-macos-signer-gatekeeper-signing
\ No newline at end of file
=====================================
tools/signing/macos-signer-gatekeeper-signing.torbrowser deleted
=====================================
@@ -1 +0,0 @@
-macos-signer-gatekeeper-signing
\ No newline at end of file
=====================================
tools/signing/macos-signer-notarization deleted
=====================================
@@ -1,44 +0,0 @@
-#!/bin/bash
-set -e
-
-script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
-source "$script_dir/functions"
-source "$script_dir/set-config.macos-notarization"
-
-ALTOOL=~/Xcode.app/Contents/SharedFrameworks/ContentDeliveryServices.framework/Versions/A/Frameworks/AppStoreService.framework/Versions/A/Support/altool
-
-cd ~/$SIGNING_PROJECTNAME-${tbb_version}
-
-if [ -z "${PW}" ]; then
- echo "Please enter notarization password:"
- stty -echo; read PW; stty echo; export PW
-fi
-
-for LANG in ALL
-do
- if test -f ${LANG}/tb-${tbb_version}_$LANG.zip.uuid
- then
- echo "Skipping ${LANG}/tb-${tbb_version}_$LANG.zip"
- continue;
- fi
- if test -d ${LANG}; then
- mv ${LANG}/tb-${tbb_version}_$LANG.zip ./
- rm -r ${LANG}/
- fi
- mkdir $LANG
- cd $LANG
- mv ../tb-${tbb_version}_$LANG.zip .
- unzip -q tb-${tbb_version}_$LANG.zip
- echo "Notarizing $LANG..."
- $ALTOOL --notarize-app --verbose -t osx -f tb-${tbb_version}_$LANG.zip --primary-bundle-id org.torproject.torbrowser -u "$macos_notarization_user" -p @env:PW --output-format xml | tee tb-${tbb_version}_$LANG.zip.log 2>&1
-
- request_uuid=`grep -A1 RequestUUID tb-${tbb_version}_$LANG.zip.log | grep -o '[0-9a-f]\+[0-9a-f-]\+'`
- if [ -z "${request_uuid}" ]; then
- echo "Request UUID not present. Notarization failed"
- exit 1
- fi
- echo ${request_uuid} > tb-${tbb_version}_$LANG.zip.uuid
- echo "Notarization done for $LANG."
-
- cd ..
-done
=====================================
tools/signing/macos-signer-notarization.mullvadbrowser deleted
=====================================
@@ -1 +0,0 @@
-macos-signer-notarization
\ No newline at end of file
=====================================
tools/signing/macos-signer-notarization.torbrowser deleted
=====================================
@@ -1 +0,0 @@
-macos-signer-notarization
\ No newline at end of file
=====================================
tools/signing/macos-signer-proxy deleted
=====================================
@@ -1,6 +0,0 @@
-#!/bin/bash
-set -e
-script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
-source "$script_dir/functions"
-
-ssh -R :1080 "$ssh_host_macos_signer" 'python ~/proxy.py --port 8443'
=====================================
tools/signing/macos-signer-proxy.mullvadbrowser deleted
=====================================
@@ -1 +0,0 @@
-macos-signer-proxy
\ No newline at end of file
=====================================
tools/signing/macos-signer-proxy.torbrowser deleted
=====================================
@@ -1 +0,0 @@
-macos-signer-proxy
\ No newline at end of file
=====================================
tools/signing/macos-signer-stapler deleted
=====================================
@@ -1,22 +0,0 @@
-#!/bin/bash
-set -e
-
-read -n 1 -p "Press enter once notarization is complete..."
-
-script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
-source "$script_dir/functions"
-source "$script_dir/set-config.generated-config"
-
-STAPLER=/Users/torbrowser/Xcode.app/Contents//Developer/usr/bin/stapler
-app_name=$(Project_Name)
-
-cd ~/$SIGNING_PROJECTNAME-${tbb_version}
-
-for LANG in ALL
-do
- echo "Stapling $LANG..."
- cd $LANG
- $STAPLER staple "$app_name.app"
- zip -qr ../tb-${tbb_version}_$LANG-stapled.zip "$app_name.app"
- cd ..
-done
=====================================
tools/signing/macos-signer-stapler.mullvadbrowser deleted
=====================================
@@ -1 +0,0 @@
-macos-signer-stapler
\ No newline at end of file
=====================================
tools/signing/macos-signer-stapler.torbrowser deleted
=====================================
@@ -1 +0,0 @@
-macos-signer-stapler
\ No newline at end of file
=====================================
tools/signing/set-config
=====================================
@@ -38,5 +38,3 @@ rsync_options="-avH ${rsync_progress:-} ${DRY_RUN:-}"
tb_builders='boklm dan henry ma1 pierov richard'
wrappers_dir=/signing/tor-browser-build/tools/signing/wrappers
-
-use_rcodesign=1
=====================================
tools/signing/set-config.hosts
=====================================
@@ -1,6 +1,5 @@
ssh_host_builder=tbbuild
ssh_host_linux_signer=linux-signer-notor
-ssh_host_macos_signer=mac-signer-notor
ssh_host_staticiforme=staticiforme.torproject.org
builder_tor_browser_build_dir=/home/user/tor-browser-build
=====================================
tools/signing/set-config.macos-notarization deleted
=====================================
@@ -1,5 +0,0 @@
-# The following line should be uncommented and updated:
-
-#macos_notarization_user='user@email'
-
-var_is_defined macos_notarization_user
=====================================
tools/signing/sync-macos-local-to-macos-signer deleted
=====================================
@@ -1,8 +0,0 @@
-#!/bin/bash
-set -e
-script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
-source "$script_dir/functions"
-
-var_is_defined ssh_host_macos_signer
-
-rsync $rsync_options "$signed_version_dir"/*.dmg "$ssh_host_macos_signer:$SIGNING_PROJECTNAME-$tbb_version/"
=====================================
tools/signing/sync-macos-local-to-macos-signer.mullvadbrowser deleted
=====================================
@@ -1 +0,0 @@
-sync-macos-local-to-macos-signer
\ No newline at end of file
=====================================
tools/signing/sync-macos-local-to-macos-signer.torbrowser deleted
=====================================
@@ -1 +0,0 @@
-sync-macos-local-to-macos-signer
\ No newline at end of file
=====================================
tools/signing/sync-macos-local-to-macos-signer.torbrowser.dry-run deleted
=====================================
@@ -1 +0,0 @@
-sync-macos-local-to-macos-signer
\ No newline at end of file
=====================================
tools/signing/sync-macos-signer-stapled-to-macos-local-stapled deleted
=====================================
@@ -1,8 +0,0 @@
-#!/bin/bash
-set -e
-script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
-source "$script_dir/functions"
-
-var_is_defined ssh_host_macos_signer
-
-rsync $rsync_options "$ssh_host_macos_signer:$SIGNING_PROJECTNAME-$tbb_version/*-stapled.zip" "$macos_stapled_dir/"
=====================================
tools/signing/sync-macos-signer-stapled-to-macos-local-stapled.mullvadbrowser deleted
=====================================
@@ -1 +0,0 @@
-sync-macos-signer-stapled-to-macos-local-stapled
\ No newline at end of file
=====================================
tools/signing/sync-macos-signer-stapled-to-macos-local-stapled.torbrowser deleted
=====================================
@@ -1 +0,0 @@
-sync-macos-signer-stapled-to-macos-local-stapled
\ No newline at end of file
=====================================
tools/signing/sync-macos-signer-stapled-to-macos-local-stapled.torbrowser.dry-run deleted
=====================================
@@ -1 +0,0 @@
-sync-macos-signer-stapled-to-macos-local-stapled
\ No newline at end of file
=====================================
tools/signing/sync-scripts-to-macos-signer deleted
=====================================
@@ -1,10 +0,0 @@
-#!/bin/bash
-set -e
-script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
-source "$script_dir/functions"
-
-var_is_defined ssh_host_macos_signer
-
-generate_config
-
-rsync $rsync_options "$script_dir/" "$ssh_host_macos_signer:signing-$SIGNING_PROJECTNAME-$tbb_version_type/"
=====================================
tools/signing/sync-scripts-to-macos-signer.mullvadbrowser deleted
=====================================
@@ -1 +0,0 @@
-sync-scripts-to-macos-signer
\ No newline at end of file
=====================================
tools/signing/sync-scripts-to-macos-signer.torbrowser deleted
=====================================
@@ -1 +0,0 @@
-sync-scripts-to-macos-signer
\ No newline at end of file
=====================================
tools/signing/sync-scripts-to-macos-signer.torbrowser.dry-run deleted
=====================================
@@ -1 +0,0 @@
-sync-scripts-to-macos-signer
\ No newline at end of file
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/7…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/7…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][main] Bug 40990: Remove old macos signing scripts
by richard (@richard) 06 Dec '23
by richard (@richard) 06 Dec '23
06 Dec '23
richard pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
fa846d22 by Nicolas Vigier at 2023-12-06T15:59:55+00:00
Bug 40990: Remove old macos signing scripts
- - - - -
30 changed files:
- tools/signing/do-all-signing
- − tools/signing/finished-signing-clean-macos-signer
- tools/signing/gatekeeper-bundling.sh
- − tools/signing/macos-signer-gatekeeper-signing
- − tools/signing/macos-signer-gatekeeper-signing.mullvadbrowser
- − tools/signing/macos-signer-gatekeeper-signing.torbrowser
- − tools/signing/macos-signer-notarization
- − tools/signing/macos-signer-notarization.mullvadbrowser
- − tools/signing/macos-signer-notarization.torbrowser
- − tools/signing/macos-signer-proxy
- − tools/signing/macos-signer-proxy.mullvadbrowser
- − tools/signing/macos-signer-proxy.torbrowser
- − tools/signing/macos-signer-stapler
- − tools/signing/macos-signer-stapler.mullvadbrowser
- − tools/signing/macos-signer-stapler.torbrowser
- tools/signing/set-config
- tools/signing/set-config.hosts
- − tools/signing/set-config.macos-notarization
- − tools/signing/sync-macos-local-to-macos-signer
- − tools/signing/sync-macos-local-to-macos-signer.mullvadbrowser
- − tools/signing/sync-macos-local-to-macos-signer.torbrowser
- − tools/signing/sync-macos-local-to-macos-signer.torbrowser.dry-run
- − tools/signing/sync-macos-signer-stapled-to-macos-local-stapled
- − tools/signing/sync-macos-signer-stapled-to-macos-local-stapled.mullvadbrowser
- − tools/signing/sync-macos-signer-stapled-to-macos-local-stapled.torbrowser
- − tools/signing/sync-macos-signer-stapled-to-macos-local-stapled.torbrowser.dry-run
- − tools/signing/sync-scripts-to-macos-signer
- − tools/signing/sync-scripts-to-macos-signer.mullvadbrowser
- − tools/signing/sync-scripts-to-macos-signer.torbrowser
- − tools/signing/sync-scripts-to-macos-signer.torbrowser.dry-run
Changes:
=====================================
tools/signing/do-all-signing
=====================================
@@ -8,19 +8,9 @@ NON_INTERACTIVE=1
steps_dir="$signed_version_dir.steps"
test -d "$steps_dir" || mkdir -p "$steps_dir"
-if test -n "$use_rcodesign"
-then
- test -f "$steps_dir/linux-signer-rcodesign-sign.done" ||
- read -sp "Enter rcodesign passphrase for key-1: " RCODESIGN_PW
- echo
-else
- test -f "$steps_dir/macos-signer-gatekeeper-signing.done" ||
- read -sp "Enter macos keychain passphrase: " KEYCHAIN_PW
- echo
- test -f "$steps_dir/macos-signer-notarization.done" ||
- read -sp "Enter macos notarization passphrase: " NOTARIZATION_PW
- echo
-fi
+test -f "$steps_dir/linux-signer-rcodesign-sign.done" ||
+ read -sp "Enter rcodesign passphrase for key-1: " RCODESIGN_PW
+echo
is_project torbrowser && nssdb=torbrowser-nssdb7
is_project mullvadbrowser && nssdb=mullvadbrowser-nssdb-1
test -f "$steps_dir/linux-signer-signmars.done" ||
@@ -67,52 +57,6 @@ function rcodesign-notary-submit {
"$script_dir/rcodesign-notary-submit"
}
-function macos-signer-directory-not-present {
- # To avoid doing two signings at the same time, or to avoid unknowingly
- # using parts from a previous signing attempt, we check that the
- # directory does not exist yet (see tor-browser-build#40497)
- if ssh "$ssh_host_macos_signer" "test -d $tbb_version"
- then
- echo "The directory $tbb_version already exists on $ssh_host_macos_signer"
- return 1
- fi
- return 0
-}
-
-function sync-scripts-to-macos-signer {
- "$script_dir/sync-scripts-to-macos-signer"
-}
-
-function macos-signer-enable-network-proxy-settings {
- ssh "$ssh_host_macos_signer" 'networksetup -setsecurewebproxystate Ethernet on'
-}
-
-function macos-signer-gatekeeper-signing {
- "$script_dir/sync-macos-local-to-macos-signer"
- ssh "$ssh_host_macos_signer" 'bash -s' << EOF
- export KEYCHAIN_PW=$KEYCHAIN_PW
- ~/signing-$SIGNING_PROJECTNAME-$tbb_version_type/macos-signer-gatekeeper-signing.$SIGNING_PROJECTNAME
-EOF
- unset KEYCHAIN_PW
-}
-
-function macos-signer-notarization {
- ssh "$ssh_host_macos_signer" 'bash -s' << EOF
- export PW=$NOTARIZATION_PW
- ~/signing-$SIGNING_PROJECTNAME-$tbb_version_type/macos-signer-notarization.$SIGNING_PROJECTNAME
-EOF
- unset NOTARIZATION_PW
-}
-
-function macos-signer-stapler {
- ssh "$ssh_host_macos_signer" "~/signing-$SIGNING_PROJECTNAME-$tbb_version_type/macos-signer-stapler.$SIGNING_PROJECTNAME"
- "$script_dir/sync-macos-signer-stapled-to-macos-local-stapled"
-}
-
-function macos-signer-disable-network-proxy-settings {
- ssh "$ssh_host_macos_signer" 'networksetup -setsecurewebproxystate Ethernet off'
-}
-
function gatekeeper-bundling {
"$script_dir/gatekeeper-bundling.sh"
}
@@ -212,10 +156,6 @@ function upload-update_responses-to-staticiforme {
"$script_dir/upload-update_responses-to-staticiforme"
}
-function finished-signing-clean-macos-signer {
- "$script_dir/finished-signing-clean-macos-signer"
-}
-
function finished-signing-clean-linux-signer {
"$script_dir/finished-signing-clean-linux-signer"
}
@@ -233,22 +173,11 @@ export SIGNING_PROJECTNAME
do_step wait-for-finished-build
do_step sync-builder-unsigned-to-local-signed
-if test -n "$use_rcodesign";
-then
- do_step sync-scripts-to-linux-signer
- do_step sync-before-linux-signer-rcodesign-sign
- do_step linux-signer-rcodesign-sign
- do_step sync-linux-signer-macos-signed-tar-to-local
- do_step rcodesign-notary-submit
-else
- do_step macos-signer-directory-not-present
- do_step sync-scripts-to-macos-signer
- do_step macos-signer-enable-network-proxy-settings
- do_step macos-signer-gatekeeper-signing
- do_step macos-signer-notarization
- do_step macos-signer-stapler
- do_step macos-signer-disable-network-proxy-settings
-fi
+do_step sync-scripts-to-linux-signer
+do_step sync-before-linux-signer-rcodesign-sign
+do_step linux-signer-rcodesign-sign
+do_step sync-linux-signer-macos-signed-tar-to-local
+do_step rcodesign-notary-submit
do_step gatekeeper-bundling
do_step dmg2mar
do_step sync-scripts-to-linux-signer
@@ -272,5 +201,4 @@ do_step sync-local-to-staticiforme
do_step sync-scripts-to-staticiforme
do_step staticiforme-prepare-cdn-dist-upload
do_step upload-update_responses-to-staticiforme
-do_step finished-signing-clean-macos-signer
do_step finished-signing-clean-linux-signer
=====================================
tools/signing/finished-signing-clean-macos-signer deleted
=====================================
@@ -1,14 +0,0 @@
-#!/bin/bash
-
-# Remove current tbb version from macos-signer. You should run this
-# when all signing has been done.
-
-set -e
-script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
-source "$script_dir/functions"
-
-var_is_defined ssh_host_macos_signer tbb_version
-
-ssh "$ssh_host_macos_signer" 'bash -s' << EOF
- test -n "$tbb_version" && rm -Rfv ~/"$SIGNING_PROJECTNAME-$tbb_version"
-EOF
=====================================
tools/signing/gatekeeper-bundling.sh
=====================================
@@ -68,11 +68,7 @@ export PATH="$PATH:$tmpdir/libdmg-hfsplus:$tmpdir/hfsplus-tools"
cd $tmpdir/dmg
-if test -n "$use_rcodesign"; then
- tar -xf $macos_stapled_dir/"${proj_name}-${tbb_version}-notarized+stapled.tar.zst"
-else
- unzip -q $macos_stapled_dir/tb-${tbb_version}_ALL-stapled.zip
-fi
+tar -xf $macos_stapled_dir/"${proj_name}-${tbb_version}-notarized+stapled.tar.zst"
cd ..
$script_dir/ddmg.sh $macos_signed_dir/${proj_name}-macos-${tbb_version}.dmg $tmpdir/dmg/ "$Proj_Name"
=====================================
tools/signing/macos-signer-gatekeeper-signing deleted
=====================================
@@ -1,100 +0,0 @@
-#!/bin/bash
-set -e
-
-script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
-source "$script_dir/functions"
-source "$script_dir/set-config.generated-config"
-
-ENTITLEMENTS="$script_dir/$tbb_version_type.entitlements.xml"
-app_name=$(Project_Name)
-
-function check_signature() {
- LANG=$1
- UNZIP=$2
- local failed_open=0
- local failed_exec=0
- if [ ${UNZIP} -eq 1 ]
- then
- test -d test_${LANG} && rm -r test_${LANG}
- unzip -d test_${LANG} -q tb-${tbb_version}_$LANG.zip
- pushd test_${LANG}
- fi
- echo "Checking $LANG..."
- spctl -vvvv --assess --type open --context context:primary-signature "$app_name.app/"
- if [ $? -ne 3 ]; then
- echo tb-${tbb_version}_$LANG.zip not signed correctly. Failed open.
- failed_open=1
- fi
- spctl -vvvv --assess --type exec --context context:primary-signature "$app_name.app/"
- if [ $? -ne 0 ]; then
- echo tb-${tbb_version}_$LANG.zip not signed correctly. Failed exec.
- failed_exec=1
- fi
- if [ ${UNZIP} -eq 1 ]
- then
- popd
- rm -r test_${LANG}
- fi
- if [ ${failed_open} -ne 0 -o ${failed_exec} -ne 0 ]
- then
- return 1
- fi
-}
-
-cd ~/$SIGNING_PROJECTNAME-${tbb_version}
-
-if test -n "$KEYCHAIN_PW"
-then
- KPW="-p $KEYCHAIN_PW"
-fi
-
-security unlock $KPW /Users/torbrowser/Library/Keychains/tbb-signing-alpha.keychain
-security unlock $KPW /Users/torbrowser/Library/Keychains/tbb-signing-2021.keychain
-
-unset KPW KEYCHAIN_PW
-
-for LANG in ALL
-do
- if [ -f tb-${tbb_version}_${LANG}.zip ]
- then
- echo "Deleting tb-${tbb_version}_${LANG}.zip"
- rm tb-${tbb_version}_${LANG}.zip
- fi
- if [ -d "$app_name.app" ]
- then
- echo "Deleting $app_name.app"
- rm -r "$app_name.app"
- fi
- if [ -d "/Volumes/$app_name" ]; then
- echo "DMG already mounted. Please correct."
- exit 1
- fi
- hdiutil attach $(project-name)-macos-${tbb_version}.dmg
- cp -rf "/Volumes/$app_name/$app_name.app" "$app_name.app"
- echo "Signing ${app_name}_${LANG}.app"
- codesign -vvv --deep -o runtime --entitlements="$ENTITLEMENTS" --timestamp -f -s "Developer ID Application: The Tor Project, Inc (MADPSAYN6T)" "$app_name.app/"
- echo "codesign exit code: $?"
- set +e
- check_signature $LANG 0
- if [ $? -eq 1 ]
- then
- echo Signature verification failed.
- rm -r "$app_name.app"
- hdiutil detach "/Volumes/$app_name"
- exit 1
- fi
- set -e
- echo "Zipping up tb-${tbb_version}_${LANG}.zip"
- zip -qr tb-${tbb_version}_${LANG}.zip "$app_name.app"
- rm -rf "$app_name.app"
- hdiutil detach "/Volumes/$app_name"
- set +e
- check_signature $LANG 1
- if [ $? -eq 1 ]
- then
- echo "Signature verification failed (${LANG})".
- rm -r "$app_name.app"
- exit 1
- fi
- set -e
-done
=====================================
tools/signing/macos-signer-gatekeeper-signing.mullvadbrowser deleted
=====================================
@@ -1 +0,0 @@
-macos-signer-gatekeeper-signing
\ No newline at end of file
=====================================
tools/signing/macos-signer-gatekeeper-signing.torbrowser deleted
=====================================
@@ -1 +0,0 @@
-macos-signer-gatekeeper-signing
\ No newline at end of file
=====================================
tools/signing/macos-signer-notarization deleted
=====================================
@@ -1,44 +0,0 @@
-#!/bin/bash
-set -e
-
-script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
-source "$script_dir/functions"
-source "$script_dir/set-config.macos-notarization"
-
-ALTOOL=~/Xcode.app/Contents/SharedFrameworks/ContentDeliveryServices.framework/Versions/A/Frameworks/AppStoreService.framework/Versions/A/Support/altool
-
-cd ~/$SIGNING_PROJECTNAME-${tbb_version}
-
-if [ -z "${PW}" ]; then
- echo "Please enter notarization password:"
- stty -echo; read PW; stty echo; export PW
-fi
-
-for LANG in ALL
-do
- if test -f ${LANG}/tb-${tbb_version}_$LANG.zip.uuid
- then
- echo "Skipping ${LANG}/tb-${tbb_version}_$LANG.zip"
- continue;
- fi
- if test -d ${LANG}; then
- mv ${LANG}/tb-${tbb_version}_$LANG.zip ./
- rm -r ${LANG}/
- fi
- mkdir $LANG
- cd $LANG
- mv ../tb-${tbb_version}_$LANG.zip .
- unzip -q tb-${tbb_version}_$LANG.zip
- echo "Notarizing $LANG..."
- $ALTOOL --notarize-app --verbose -t osx -f tb-${tbb_version}_$LANG.zip --primary-bundle-id org.torproject.torbrowser -u "$macos_notarization_user" -p @env:PW --output-format xml | tee tb-${tbb_version}_$LANG.zip.log 2>&1
-
- request_uuid=`grep -A1 RequestUUID tb-${tbb_version}_$LANG.zip.log | grep -o '[0-9a-f]\+[0-9a-f-]\+'`
- if [ -z "${request_uuid}" ]; then
- echo "Request UUID not present. Notarization failed"
- exit 1
- fi
- echo ${request_uuid} > tb-${tbb_version}_$LANG.zip.uuid
- echo "Notarization done for $LANG."
-
- cd ..
-done
=====================================
tools/signing/macos-signer-notarization.mullvadbrowser deleted
=====================================
@@ -1 +0,0 @@
-macos-signer-notarization
\ No newline at end of file
=====================================
tools/signing/macos-signer-notarization.torbrowser deleted
=====================================
@@ -1 +0,0 @@
-macos-signer-notarization
\ No newline at end of file
=====================================
tools/signing/macos-signer-proxy deleted
=====================================
@@ -1,6 +0,0 @@
-#!/bin/bash
-set -e
-script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
-source "$script_dir/functions"
-
-ssh -R :1080 "$ssh_host_macos_signer" 'python ~/proxy.py --port 8443'
=====================================
tools/signing/macos-signer-proxy.mullvadbrowser deleted
=====================================
@@ -1 +0,0 @@
-macos-signer-proxy
\ No newline at end of file
=====================================
tools/signing/macos-signer-proxy.torbrowser deleted
=====================================
@@ -1 +0,0 @@
-macos-signer-proxy
\ No newline at end of file
=====================================
tools/signing/macos-signer-stapler deleted
=====================================
@@ -1,22 +0,0 @@
-#!/bin/bash
-set -e
-
-read -n 1 -p "Press enter once notarization is complete..."
-
-script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
-source "$script_dir/functions"
-source "$script_dir/set-config.generated-config"
-
-STAPLER=/Users/torbrowser/Xcode.app/Contents//Developer/usr/bin/stapler
-app_name=$(Project_Name)
-
-cd ~/$SIGNING_PROJECTNAME-${tbb_version}
-
-for LANG in ALL
-do
- echo "Stapling $LANG..."
- cd $LANG
- $STAPLER staple "$app_name.app"
- zip -qr ../tb-${tbb_version}_$LANG-stapled.zip "$app_name.app"
- cd ..
-done
=====================================
tools/signing/macos-signer-stapler.mullvadbrowser deleted
=====================================
@@ -1 +0,0 @@
-macos-signer-stapler
\ No newline at end of file
=====================================
tools/signing/macos-signer-stapler.torbrowser deleted
=====================================
@@ -1 +0,0 @@
-macos-signer-stapler
\ No newline at end of file
=====================================
tools/signing/set-config
=====================================
@@ -38,5 +38,3 @@ rsync_options="-avH ${rsync_progress:-} ${DRY_RUN:-}"
tb_builders='boklm dan henry ma1 pierov richard'
wrappers_dir=/signing/tor-browser-build/tools/signing/wrappers
-
-use_rcodesign=1
=====================================
tools/signing/set-config.hosts
=====================================
@@ -1,6 +1,5 @@
ssh_host_builder=tbbuild
ssh_host_linux_signer=linux-signer-notor
-ssh_host_macos_signer=mac-signer-notor
ssh_host_staticiforme=staticiforme.torproject.org
builder_tor_browser_build_dir=/home/user/tor-browser-build
=====================================
tools/signing/set-config.macos-notarization deleted
=====================================
@@ -1,5 +0,0 @@
-# The following line should be uncommented and updated:
-
-#macos_notarization_user='user@email'
-
-var_is_defined macos_notarization_user
=====================================
tools/signing/sync-macos-local-to-macos-signer deleted
=====================================
@@ -1,8 +0,0 @@
-#!/bin/bash
-set -e
-script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
-source "$script_dir/functions"
-
-var_is_defined ssh_host_macos_signer
-
-rsync $rsync_options "$signed_version_dir"/*.dmg "$ssh_host_macos_signer:$SIGNING_PROJECTNAME-$tbb_version/"
=====================================
tools/signing/sync-macos-local-to-macos-signer.mullvadbrowser deleted
=====================================
@@ -1 +0,0 @@
-sync-macos-local-to-macos-signer
\ No newline at end of file
=====================================
tools/signing/sync-macos-local-to-macos-signer.torbrowser deleted
=====================================
@@ -1 +0,0 @@
-sync-macos-local-to-macos-signer
\ No newline at end of file
=====================================
tools/signing/sync-macos-local-to-macos-signer.torbrowser.dry-run deleted
=====================================
@@ -1 +0,0 @@
-sync-macos-local-to-macos-signer
\ No newline at end of file
=====================================
tools/signing/sync-macos-signer-stapled-to-macos-local-stapled deleted
=====================================
@@ -1,8 +0,0 @@
-#!/bin/bash
-set -e
-script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
-source "$script_dir/functions"
-
-var_is_defined ssh_host_macos_signer
-
-rsync $rsync_options "$ssh_host_macos_signer:$SIGNING_PROJECTNAME-$tbb_version/*-stapled.zip" "$macos_stapled_dir/"
=====================================
tools/signing/sync-macos-signer-stapled-to-macos-local-stapled.mullvadbrowser deleted
=====================================
@@ -1 +0,0 @@
-sync-macos-signer-stapled-to-macos-local-stapled
\ No newline at end of file
=====================================
tools/signing/sync-macos-signer-stapled-to-macos-local-stapled.torbrowser deleted
=====================================
@@ -1 +0,0 @@
-sync-macos-signer-stapled-to-macos-local-stapled
\ No newline at end of file
=====================================
tools/signing/sync-macos-signer-stapled-to-macos-local-stapled.torbrowser.dry-run deleted
=====================================
@@ -1 +0,0 @@
-sync-macos-signer-stapled-to-macos-local-stapled
\ No newline at end of file
=====================================
tools/signing/sync-scripts-to-macos-signer deleted
=====================================
@@ -1,10 +0,0 @@
-#!/bin/bash
-set -e
-script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
-source "$script_dir/functions"
-
-var_is_defined ssh_host_macos_signer
-
-generate_config
-
-rsync $rsync_options "$script_dir/" "$ssh_host_macos_signer:signing-$SIGNING_PROJECTNAME-$tbb_version_type/"
=====================================
tools/signing/sync-scripts-to-macos-signer.mullvadbrowser deleted
=====================================
@@ -1 +0,0 @@
-sync-scripts-to-macos-signer
\ No newline at end of file
=====================================
tools/signing/sync-scripts-to-macos-signer.torbrowser deleted
=====================================
@@ -1 +0,0 @@
-sync-scripts-to-macos-signer
\ No newline at end of file
=====================================
tools/signing/sync-scripts-to-macos-signer.torbrowser.dry-run deleted
=====================================
@@ -1 +0,0 @@
-sync-scripts-to-macos-signer
\ No newline at end of file
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/f…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/f…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-115.5.0esr-13.5-1] 6 commits: fixup! Bug 3455: Add DomainIsolator, for isolating circuit by domain.
by richard (@richard) 06 Dec '23
by richard (@richard) 06 Dec '23
06 Dec '23
richard pushed to branch tor-browser-115.5.0esr-13.5-1 at The Tor Project / Applications / Tor Browser
Commits:
9d6ca8ac by Pier Angelo Vendrame at 2023-12-05T11:00:25+01:00
fixup! Bug 3455: Add DomainIsolator, for isolating circuit by domain.
Collect the browsers also on Android.
- - - - -
9e239230 by Pier Angelo Vendrame at 2023-12-05T11:08:42+01:00
fixup! Bug 40597: Implement TorSettings module
Moved the creation of Meek credentials to a function on its own that we
will reuse also with the Android version of MeekTransport.
- - - - -
6a649d7f by Pier Angelo Vendrame at 2023-12-05T11:25:06+01:00
fixup! Bug 40933: Add tor-launcher functionality
Store the SOCKS settings as a member, so that we can customize them if
needed before applying them.
Also, cleanup the public interface of TorProcess.
E.g., removed TorProcess.connectionWorked, since we do not use this
information anymore.
Finally, added a TorLauncherUtil.isAndroid.
- - - - -
1ad1d839 by Pier Angelo Vendrame at 2023-12-05T13:48:35+01:00
fixup! Bug 27476: Implement about:torconnect captive portal within Tor Browser
HTML-ize about:torconnect.
Changed file extension, updated the HTML tag, removed short-tags on tags
that are expected to have a closing tag.
Also, removed the preprocessor and moved the onion pattern to this
commit, since it is used only here.
- - - - -
fbd5b4bb by Pier Angelo Vendrame at 2023-12-05T13:48:42+01:00
fixup! Bug 2176: Rebrand Firefox to TorBrowser
Move the onion pattern files to the commit of about:torconnect.
- - - - -
3649cc3f by Pier Angelo Vendrame at 2023-12-05T18:48:25+01:00
Temporary changes to about:torconnect for Android.
We are planning of tempoorarily using about:torconnect on Android, until
the native UX is ready.
- - - - -
14 changed files:
- docshell/base/nsAboutRedirector.cpp
- toolkit/components/tor-launcher/TorDomainIsolator.sys.mjs
- toolkit/components/tor-launcher/TorLauncherUtil.sys.mjs
- toolkit/components/tor-launcher/TorProcess.sys.mjs
- toolkit/components/tor-launcher/TorProvider.sys.mjs
- toolkit/components/torconnect/content/aboutTorConnect.css
- toolkit/components/torconnect/content/aboutTorConnect.xhtml → toolkit/components/torconnect/content/aboutTorConnect.html
- toolkit/components/torconnect/content/aboutTorConnect.js
- toolkit/themes/shared/onionPattern.svg → toolkit/components/torconnect/content/onion-pattern.svg
- toolkit/components/torconnect/jar.mn
- toolkit/modules/Moat.sys.mjs
- toolkit/themes/shared/minimal-toolkit.jar.inc.mn
- − toolkit/themes/shared/onionPattern.css
- − toolkit/themes/shared/onionPattern.inc.xhtml
Changes:
=====================================
docshell/base/nsAboutRedirector.cpp
=====================================
@@ -169,7 +169,7 @@ static const RedirEntry kRedirMap[] = {
#endif
{"telemetry", "chrome://global/content/aboutTelemetry.xhtml",
nsIAboutModule::ALLOW_SCRIPT | nsIAboutModule::IS_SECURE_CHROME_UI},
- {"torconnect", "chrome://global/content/torconnect/aboutTorConnect.xhtml",
+ {"torconnect", "chrome://global/content/torconnect/aboutTorConnect.html",
nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT |
nsIAboutModule::URI_CAN_LOAD_IN_CHILD | nsIAboutModule::ALLOW_SCRIPT |
nsIAboutModule::HIDE_FROM_ABOUTABOUT |
=====================================
toolkit/components/tor-launcher/TorDomainIsolator.sys.mjs
=====================================
@@ -475,9 +475,19 @@ class TorDomainIsolatorImpl {
* @returns {MozBrowser?} The browser the channel is associated to
*/
#getBrowserForChannel(channel) {
+ const currentBrowser =
+ channel.loadInfo.browsingContext?.topChromeWindow?.browser;
+ if (
+ channel.loadInfo.browsingContext &&
+ currentBrowser?.browsingContext === channel.loadInfo.browsingContext
+ ) {
+ // Android has only one browser, and does not have the browsers property.
+ return currentBrowser;
+ }
const browsers =
channel.loadInfo.browsingContext?.topChromeWindow?.gBrowser?.browsers;
if (!browsers || !channel.loadInfo.browsingContext?.browserId) {
+ logger.debug("Missing data to associate to a browser", channel.loadInfo);
return null;
}
for (const browser of browsers) {
=====================================
toolkit/components/tor-launcher/TorLauncherUtil.sys.mjs
=====================================
@@ -325,6 +325,10 @@ class TorFile {
}
export const TorLauncherUtil = Object.freeze({
+ get isAndroid() {
+ return Services.appinfo.OS === "Android";
+ },
+
get isMac() {
return Services.appinfo.OS === "Darwin";
},
=====================================
toolkit/components/tor-launcher/TorProcess.sys.mjs
=====================================
@@ -33,8 +33,6 @@ export class TorProcess {
#args = [];
#subprocess = null;
#status = TorProcessStatus.Unknown;
- // Have we ever made a connection on the control port?
- #didConnectToTorControlPort = false;
onExit = exitCode => {};
@@ -69,10 +67,6 @@ export class TorProcess {
}
}
- get status() {
- return this.#status;
- }
-
get isRunning() {
return (
this.#status === TorProcessStatus.Starting ||
@@ -102,7 +96,6 @@ export class TorProcess {
}
this.#status = TorProcessStatus.Starting;
- this.#didConnectToTorControlPort = false;
// useful for simulating slow tor daemon launch
const kPrefTorDaemonLaunchDelay = "extensions.torlauncher.launch_delay";
@@ -155,13 +148,6 @@ export class TorProcess {
this.#status = TorProcessStatus.Exited;
}
- // The owner of the process can use this function to tell us that they
- // successfully connected to the control port. This information will be used
- // only to decide which text to show in the confirmation dialog if tor exits.
- connectionWorked() {
- this.#didConnectToTorControlPort = true;
- }
-
async #dumpStdout() {
let string;
while (
@@ -201,20 +187,6 @@ export class TorProcess {
#processExitedUnexpectedly(exitCode) {
this.#subprocess = null;
this.#status = TorProcessStatus.Exited;
- // FIXME: We can probably drop #didConnectToTorControlPort and use only one
- // callback. Then we can let the provider actually distinguish between the
- // cases.
- if (!this.#didConnectToTorControlPort) {
- logger.warn("Tor exited before we could connect to its control port.");
- // tor might be misconfigured, because we could never connect to it.
- // Two instances of Tor Browser trying to use the same port numbers is
- // also a typical scenario for this.
- // This might happen very early, before the browser UI is actually
- // available. So, we will tell the process owner that the process exited,
- // without trying to restart it.
- this.onExit(exitCode);
- return;
- }
logger.warn("Tor exited suddenly.");
this.onExit(exitCode);
}
=====================================
toolkit/components/tor-launcher/TorProvider.sys.mjs
=====================================
@@ -35,6 +35,15 @@ const logger = new ConsoleAPI({
* @property {string=} host The host to connect for a TCP control port
* @property {number=} port The port number to use for a TCP control port
*/
+/**
+ * @typedef {object} SocksSettings An object that includes the proxy settings to
+ * be configured in the browser.
+ * @property {boolean=} transproxy If true, no proxy is configured
+ * @property {nsIFile=} ipcFile The nsIFile object with the path to a Unix
+ * socket to use for an IPC proxy
+ * @property {string=} host The host to connect for a TCP proxy
+ * @property {number=} port The port number to use for a TCP proxy
+ */
/**
* @typedef {object} LogEntry An object with a log message
* @property {Date} date The date at which we received the message
@@ -111,6 +120,13 @@ export class TorProvider {
*/
#torProcess = null;
+ /**
+ * The settings for the SOCKS proxy.
+ *
+ * @type {SocksSettings?}
+ */
+ #socksSettings = null;
+
/**
* The logs we received over the control port.
* We store a finite number of log entries which can be configured with
@@ -165,8 +181,9 @@ export class TorProvider {
async init() {
logger.debug("Initializing the Tor provider.");
- const socksSettings = TorLauncherUtil.getPreferredSocksConfiguration();
- logger.debug("Requested SOCKS configuration", socksSettings);
+ // These settings might be customized in the following steps.
+ this.#socksSettings = TorLauncherUtil.getPreferredSocksConfiguration();
+ logger.debug("Requested SOCKS configuration", this.#socksSettings);
try {
await this.#setControlPortConfiguration();
@@ -175,11 +192,11 @@ export class TorProvider {
throw e;
}
- if (socksSettings.transproxy) {
+ if (this.#socksSettings.transproxy) {
logger.info("Transparent proxy required, not starting a Tor daemon.");
} else if (this.ownsTorDaemon) {
try {
- await this.#startDaemon(socksSettings);
+ await this.#startDaemon();
} catch (e) {
logger.error("Failed to start the tor daemon", e);
throw e;
@@ -197,8 +214,7 @@ export class TorProvider {
throw e;
}
- // We do not customize SOCKS settings, at least for now.
- TorLauncherUtil.setProxyConfiguration(socksSettings);
+ TorLauncherUtil.setProxyConfiguration(this.#socksSettings);
logger.info("The Tor provider is ready.");
@@ -464,7 +480,7 @@ export class TorProvider {
// Process management
- async #startDaemon(socksSettings) {
+ async #startDaemon() {
// TorProcess should be instanced once, then always reused and restarted
// only through the prompt it exposes when the controlled process dies.
if (this.#torProcess) {
@@ -476,7 +492,7 @@ export class TorProvider {
this.#torProcess = new lazy.TorProcess(
this.#controlPortSettings,
- socksSettings
+ this.#socksSettings
);
// Use a closure instead of bind because we reassign #cancelConnection.
// Also, we now assign an exit handler that cancels the first connection,
@@ -619,7 +635,6 @@ export class TorProvider {
}
this.#openControlPort()
.then(controller => {
- this.#torProcess?.connectionWorked();
this.#cancelConnection = () => {};
// The cancel function should have already called reject.
if (!canceled) {
=====================================
toolkit/components/torconnect/content/aboutTorConnect.css
=====================================
@@ -10,6 +10,11 @@
--onion-radius: 75px;
}
+html {
+ width: 100%;
+ height: 100%;
+}
+
input[type="checkbox"]:focus, select:focus {
outline: none!important;
box-shadow: 0 0 0 3px var(--purple-30) !important;
@@ -330,3 +335,166 @@ body {
background-image: url("chrome://global/content/torconnect/connection-location.svg");
stroke: var(--warning-color);
}
+
+.onion-pattern-container {
+ flex: auto; /* grow to consume remaining space on the page */
+ display: flex;
+ margin: 0 auto;
+ width: 100%;
+ /* two onions tall, 4x the radius */
+ height: calc(4 * var(--onion-radius));
+ max-height: calc(4 * var(--onion-radius));
+ min-height: calc(4 * var(--onion-radius));
+ direction: ltr;
+}
+
+.onion-pattern-crop {
+ height: 100%;
+ width: 100%;
+
+ -moz-context-properties: fill;
+ fill: var(--onion-color, currentColor);
+ /* opacity of the entire div, not context-opacity */
+ opacity: var(--onion-opacity, 1);
+
+ background-image: url("chrome://global/content/torconnect/onion-pattern.svg");
+ background-repeat: repeat;
+ background-attachment: local;
+ background-position: center;
+ /* svg source is 6 onions wide and 2 onions tall */
+ background-size: calc(6 * 2 * var(--onion-radius)) calc(2 * 2 * var(--onion-radius));;
+}
+
+:root {
+ --android-dark-accents-buttons: #9059FF;
+ --android-dark-background-secondary: #E1E0E7;
+ --android-dark-text-primary: #FBFBFE;
+ --android-light-text-primary: #15141A;
+}
+
+[hidden=true] {
+ display: none !important;
+}
+
+body.android {
+ --onion-color: var(--android-dark-text-primary);
+ width: 100%;
+ height: 100%;
+ box-sizing: border-box;
+ margin: 0;
+ padding: 0 24px !important;
+ color: var(--onion-color);
+ background: linear-gradient(194deg, #692E9D -0.93%, #393270 48.91%);
+ font: menu;
+ font-size: 14px;
+ display: flex;
+}
+
+.android #connectPageContainer {
+ max-width: none;
+ display: flex;
+ flex-direction: column;
+ flex: 1;
+}
+
+.android #breadcrumbs {
+ display: none;
+}
+
+.android #text-container {
+ display: flex;
+ flex-direction: column;
+ flex: 1;
+}
+
+.android .title {
+ background-position: left 0;
+ background-repeat: no-repeat;
+ background-size: 40px;
+ padding-top: 64px;
+ font-size: 22px;
+ line-height: 28px;
+}
+
+.android h1 {
+ font-weight: normal;
+ font-size: 100%;
+ margin: 0 0 16px 0;
+}
+
+.android p {
+ margin: 0;
+ padding-bottom: 8px;
+ line-height: 20px;
+}
+
+.android #quickstartContainer {
+ margin-top: 24px;
+}
+
+.android .button-container {
+ display: flex;
+ flex: 1;
+ flex-direction: column;
+}
+
+.android #locationDropdown {
+ width: 100%;
+ max-width: none;
+ margin: 0;
+}
+
+.android select {
+ background: transparent;
+ border: none;
+ border-bottom: 1px solid var(--android-dark-text-primary);
+ color: var(--android-dark-text-primary);
+ display: block;
+ width: 100%;
+ margin-top: 10px;
+ padding: 8px;
+}
+
+.android #buttonPadding {
+ flex: 1;
+}
+
+.android #connectButtonContainer {
+ width: 100%;
+ padding-bottom: 18px;
+ display: grid;
+}
+
+/* Be sure not to match the togglee */
+.android #connectButtonContainer button {
+ display: block;
+ width: 100%;
+ margin: 4px 0;
+ padding: 11px 30px;
+ font-size: 14px;
+ font-weight: 500;
+ border: none;
+ border-radius: 4px;
+}
+
+.android #connectButton, .android #tryBridgeButton, .android #configureButton.primary {
+ color: var(--android-dark-text-primary);
+ background-color: var(--android-dark-accents-buttons);
+}
+
+.android #configureButton {
+ order: 1;
+}
+
+.android #restartButton {
+ order: 2;
+}
+
+.android #restartButton, .android #cancelButton, .android #configureButton {
+ color: var(--android-light-text-primary);
+ background-color: var(--android-dark-background-secondary);
+}
+
+.android .onion-pattern-container {
+ display: none;
+}
=====================================
toolkit/components/torconnect/content/aboutTorConnect.xhtml → toolkit/components/torconnect/content/aboutTorConnect.html
=====================================
@@ -1,17 +1,12 @@
<!-- Copyright (c) 2021, The Tor Project, Inc. -->
<!DOCTYPE html>
-<html xmlns="http://www.w3.org/1999/xhtml">
+<html>
<head>
<meta
http-equiv="Content-Security-Policy"
content="default-src chrome:; object-src 'none'"
/>
- <link
- rel="stylesheet"
- href="chrome://global/skin/onionPattern.css"
- type="text/css"
- media="all"
- />
+ <meta name="viewport" content="width=device-width">
<link
rel="stylesheet"
href="chrome://global/content/torconnect/aboutTorConnect.css"
@@ -21,64 +16,69 @@
</head>
<body>
<div id="progressBar">
- <div id="progressBackground" />
- <div id="progressSolid" />
+ <div id="progressBackground"></div>
+ <div id="progressSolid"></div>
</div>
<div id="connectPageContainer" class="container">
<div id="breadcrumbs" class="hidden">
<span id="connect-to-tor" class="breadcrumb-item">
- <span id="connect-to-tor-icon" class="breadcrumb-icon" />
- <span class="breadcrumb-label" />
+ <span id="connect-to-tor-icon" class="breadcrumb-icon"></span>
+ <span class="breadcrumb-label"></span>
</span>
<span
id="connection-assist-separator"
class="breadcrumb-separator breadcrumb-icon"
- />
+ ></span>
<span id="connection-assist" class="breadcrumb-item">
- <span id="connection-assist-icon" class="breadcrumb-icon" />
- <span class="breadcrumb-label" />
+ <span id="connection-assist-icon" class="breadcrumb-icon"></span>
+ <span class="breadcrumb-label"></span>
</span>
<span
id="try-bridge-separator"
class="breadcrumb-separator breadcrumb-icon"
- />
+ ></span>
<span id="try-bridge" class="breadcrumb-item">
- <span id="try-bridge-icon" class="breadcrumb-icon" />
- <span class="breadcrumb-label" />
+ <span id="try-bridge-icon" class="breadcrumb-icon"></span>
+ <span class="breadcrumb-label"></span>
</span>
</div>
<div id="text-container">
<div class="title">
- <h1 class="title-text" />
+ <h1 class="title-text"></h1>
</div>
<div id="connectLongContent">
- <p id="connectLongContentText" />
+ <p id="connectLongContentText"></p>
</div>
<div id="connectShortDesc">
- <p id="connectShortDescText" />
+ <p id="connectShortDescText"></p>
</div>
<button id="viewLogButton"></button>
<div id="quickstartContainer">
<input id="quickstartCheckbox" type="checkbox" />
- <label id="quickstartCheckboxLabel" for="quickstartCheckbox" />
+ <label id="quickstartCheckboxLabel" for="quickstartCheckbox"></label>
</div>
- <div id="connectButtonContainer" class="button-container">
- <button id="restartButton" hidden="true"></button>
- <button id="configureButton" hidden="true"></button>
- <button id="cancelButton" hidden="true"></button>
- <button id="connectButton" class="primary" hidden="true"></button>
- <label id="locationDropdownLabel" for="countries" />
+ <div class="button-container">
+ <label id="locationDropdownLabel" for="countries"></label>
<form id="locationDropdown" hidden="true">
<select id="countries"></select>
</form>
- <button id="tryBridgeButton" class="primary" hidden="true"></button>
+ <span id="buttonPadding"></span>
+ <span id="connectButtonContainer">
+ <button id="restartButton" hidden="true"></button>
+ <button id="configureButton" hidden="true"></button>
+ <button id="cancelButton" hidden="true"></button>
+ <button id="connectButton" class="primary" hidden="true"></button>
+ <button id="tryBridgeButton" class="primary" hidden="true"></button>
+ </span>
</div>
</div>
</div>
-#include ../../../themes/shared/onionPattern.inc.xhtml
+ <div class="onion-pattern-container">
+ <div class="onion-pattern-crop"></div>
+ </div>
+ <script src="chrome://global/content/torconnect/aboutTorConnect.js"></script>
</body>
- <script src="chrome://global/content/torconnect/aboutTorConnect.js" />
</html>
=====================================
toolkit/components/torconnect/content/aboutTorConnect.js
=====================================
@@ -70,8 +70,8 @@ class AboutTorConnect {
connect: "button#connectButton",
tryBridge: "button#tryBridgeButton",
locationDropdownLabel: "#locationDropdownLabel",
- locationDropdown: "form#locationDropdown",
- locationDropdownSelect: "form#locationDropdown select",
+ locationDropdown: "#locationDropdown",
+ locationDropdownSelect: "#locationDropdown select",
},
});
@@ -666,6 +666,9 @@ class AboutTorConnect {
}
initElements(direction) {
+ const isAndroid = navigator.userAgent.indexOf("Android") !== -1;
+ document.body.classList.toggle("android", isAndroid);
+
document.documentElement.setAttribute("dir", direction);
this.elements.connectToTorLink.addEventListener("click", event => {
=====================================
toolkit/themes/shared/onionPattern.svg → toolkit/components/torconnect/content/onion-pattern.svg
=====================================
=====================================
toolkit/components/torconnect/jar.mn
=====================================
@@ -3,12 +3,13 @@ toolkit.jar:
content/global/torconnect/torConnectTitlebarStatus.js (content/torConnectTitlebarStatus.js)
content/global/torconnect/torConnectTitlebarStatus.css (content/torConnectTitlebarStatus.css)
content/global/torconnect/aboutTorConnect.css (content/aboutTorConnect.css)
-* content/global/torconnect/aboutTorConnect.xhtml (content/aboutTorConnect.xhtml)
+ content/global/torconnect/aboutTorConnect.html (content/aboutTorConnect.html)
content/global/torconnect/aboutTorConnect.js (content/aboutTorConnect.js)
content/global/torconnect/arrow-right.svg (content/arrow-right.svg)
content/global/torconnect/bridge.svg (content/bridge.svg)
content/global/torconnect/connection-failure.svg (content/connection-failure.svg)
content/global/torconnect/connection-location.svg (content/connection-location.svg)
+ content/global/torconnect/onion-pattern.svg (content/onion-pattern.svg)
content/global/torconnect/tor-connect.svg (content/tor-connect.svg)
content/global/torconnect/tor-not-connected-to-connected-animated.svg (content/tor-not-connected-to-connected-animated.svg)
content/global/torconnect/tor-connect-broken.svg (content/tor-connect-broken.svg)
=====================================
toolkit/modules/Moat.sys.mjs
=====================================
@@ -21,6 +21,56 @@ const TorLauncherPrefs = Object.freeze({
moat_service: "extensions.torlauncher.moat_service",
});
+function makeMeekCredentials(proxyType) {
+ // Construct the per-connection arguments.
+ let meekClientEscapedArgs = "";
+ const meekReflector = Services.prefs.getStringPref(
+ TorLauncherPrefs.bridgedb_reflector
+ );
+
+ // Escape aValue per section 3.5 of the PT specification:
+ // First the "<Key>=<Value>" formatted arguments MUST be escaped,
+ // such that all backslash, equal sign, and semicolon characters
+ // are escaped with a backslash.
+ const escapeArgValue = aValue =>
+ aValue
+ ? aValue
+ .replaceAll("\\", "\\\\")
+ .replaceAll("=", "\\=")
+ .replaceAll(";", "\\;")
+ : "";
+
+ if (meekReflector) {
+ meekClientEscapedArgs += "url=";
+ meekClientEscapedArgs += escapeArgValue(meekReflector);
+ }
+ const meekFront = Services.prefs.getStringPref(
+ TorLauncherPrefs.bridgedb_front
+ );
+ if (meekFront) {
+ if (meekClientEscapedArgs.length) {
+ meekClientEscapedArgs += ";";
+ }
+ meekClientEscapedArgs += "front=";
+ meekClientEscapedArgs += escapeArgValue(meekFront);
+ }
+
+ // socks5
+ if (proxyType === "socks") {
+ if (meekClientEscapedArgs.length <= 255) {
+ return [meekClientEscapedArgs, "\x00"];
+ } else {
+ return [
+ meekClientEscapedArgs.substring(0, 255),
+ meekClientEscapedArgs.substring(255),
+ ];
+ }
+ // socks4
+ } else {
+ return [meekClientEscapedArgs, undefined];
+ }
+}
+
//
// Launches and controls the PT process lifetime
//
@@ -70,39 +120,6 @@ class MeekTransport {
proxy.pathToBinary = meekPath.path;
}
- // Construct the per-connection arguments.
- let meekClientEscapedArgs = "";
- const meekReflector = Services.prefs.getStringPref(
- TorLauncherPrefs.bridgedb_reflector
- );
-
- // Escape aValue per section 3.5 of the PT specification:
- // First the "<Key>=<Value>" formatted arguments MUST be escaped,
- // such that all backslash, equal sign, and semicolon characters
- // are escaped with a backslash.
- const escapeArgValue = aValue =>
- aValue
- ? aValue
- .replaceAll("\\", "\\\\")
- .replaceAll("=", "\\=")
- .replaceAll(";", "\\;")
- : "";
-
- if (meekReflector) {
- meekClientEscapedArgs += "url=";
- meekClientEscapedArgs += escapeArgValue(meekReflector);
- }
- const meekFront = Services.prefs.getStringPref(
- TorLauncherPrefs.bridgedb_front
- );
- if (meekFront) {
- if (meekClientEscapedArgs.length) {
- meekClientEscapedArgs += ";";
- }
- meekClientEscapedArgs += "front=";
- meekClientEscapedArgs += escapeArgValue(meekFront);
- }
-
// Setup env and start meek process
const ptStateDir = lazy.TorLauncherUtil.getTorFile("tordatadir", false);
ptStateDir.append("pt_state"); // Match what tor uses.
@@ -247,22 +264,9 @@ class MeekTransport {
this.#meekClientProcess = null;
this.uninit();
});
-
- // socks5
- if (this.proxyType === "socks") {
- if (meekClientEscapedArgs.length <= 255) {
- this.proxyUsername = meekClientEscapedArgs;
- this.proxyPassword = "\x00";
- } else {
- this.proxyUsername = meekClientEscapedArgs.substring(0, 255);
- this.proxyPassword = meekClientEscapedArgs.substring(255);
- }
- // socks4
- } else {
- this.proxyUsername = meekClientEscapedArgs;
- this.proxyPassword = undefined;
- }
-
+ [this.proxyUsername, this.proxyPassword] = makeMeekCredentials(
+ this.proxyType
+ );
this.#inited = true;
} catch (ex) {
if (this.#meekClientProcess) {
@@ -403,7 +407,7 @@ export class MoatRPC {
throw new Error("MoatRPC: Already initialized");
}
- let meekTransport = new MeekTransport();
+ const meekTransport = new MeekTransport();
await meekTransport.init();
this.#meekTransport = meekTransport;
this.#inited = true;
=====================================
toolkit/themes/shared/minimal-toolkit.jar.inc.mn
=====================================
@@ -47,7 +47,3 @@ toolkit.jar:
skin/classic/global/media/textrecognition.css (../../shared/media/textrecognition.css)
skin/classic/global/browser-colors.css (../../shared/browser-colors.css)
-
-# Tor customization
- skin/classic/global/onionPattern.css (../../shared/onionPattern.css)
- skin/classic/global/onionPattern.svg (../../shared/onionPattern.svg)
=====================================
toolkit/themes/shared/onionPattern.css deleted
=====================================
@@ -1,31 +0,0 @@
-/* Onion pattern */
-
-.onion-pattern-container {
-
- flex: auto; /* grow to consume remaining space on the page */
- display: flex;
- margin: 0 auto;
- width: 100%;
- /* two onions tall, 4x the radius */
- height: calc(4 * var(--onion-radius));
- max-height: calc(4 * var(--onion-radius));
- min-height: calc(4 * var(--onion-radius));
- direction: ltr;
-}
-
-.onion-pattern-crop {
- height: 100%;
- width: 100%;
-
- -moz-context-properties: fill;
- fill: var(--onion-color, currentColor);
- /* opacity of the entire div, not context-opacity */
- opacity: var(--onion-opacity, 1);
-
- background-image: url("chrome://global/skin/onionPattern.svg");
- background-repeat: repeat;
- background-attachment: local;
- background-position: center;
- /* svg source is 6 onions wide and 2 onions tall */
- background-size: calc(6 * 2 * var(--onion-radius)) calc(2 * 2 * var(--onion-radius));;
-}
=====================================
toolkit/themes/shared/onionPattern.inc.xhtml deleted
=====================================
@@ -1,12 +0,0 @@
-<!--
- Container div that holds onionPattern.svg
- It is expected the includer of this xhtml file also includes onionPattern.css
- and define the following vars:
- onion-radius : radius of an onion
- onion-color : the base color of the onion pattern
- onion-opacity : the opacity of the entire repeating pattern
--->
-
-<div class="onion-pattern-container">
- <div class="onion-pattern-crop"/>
-</div>
\ No newline at end of file
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/410b9a…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/410b9a…
You're receiving this email because of your account on gitlab.torproject.org.
1
0