summaryrefslogtreecommitdiff
path: root/libre/iceweasel
diff options
context:
space:
mode:
authorbill-auger <mr.j.spam.me@gmail.com>2022-03-14 06:50:54 -0400
committerbill-auger <mr.j.spam.me@gmail.com>2022-03-26 05:57:45 -0400
commit380a4791bf425e7bf132558326a09ca81ba93231 (patch)
tree6412e5d40520374f2a22d614f9c712f7c7c3a8fb /libre/iceweasel
parentfdad940b19b35572064e0f9925946bb4f9d0729a (diff)
downloadabslibre-380a4791bf425e7bf132558326a09ca81ba93231.tar.gz
abslibre-380a4791bf425e7bf132558326a09ca81ba93231.tar.bz2
abslibre-380a4791bf425e7bf132558326a09ca81ba93231.zip
[iceweasel]: upgrade to v98.0
Diffstat (limited to 'libre/iceweasel')
-rw-r--r--libre/iceweasel/0001-Use-remoting-name-for-GDK-application-names.patch57
-rw-r--r--libre/iceweasel/9001-FSDG-sync-remote-settings-with-local-dump.patch (renamed from libre/iceweasel/9001-FSDG-always-sync-remote-settings-with-local-dump.patch)0
-rw-r--r--libre/iceweasel/9003-FSDG-urihandlers.patch240
-rw-r--r--libre/iceweasel/9004-FSDG-misc.patch (renamed from libre/iceweasel/9003-FSDG-misc.patch)118
-rw-r--r--libre/iceweasel/PKGBUILD169
5 files changed, 415 insertions, 169 deletions
diff --git a/libre/iceweasel/0001-Use-remoting-name-for-GDK-application-names.patch b/libre/iceweasel/0001-Use-remoting-name-for-GDK-application-names.patch
deleted file mode 100644
index f30777294..000000000
--- a/libre/iceweasel/0001-Use-remoting-name-for-GDK-application-names.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
-Date: Mon, 25 Mar 2019 20:30:11 +0100
-Subject: [PATCH] Use remoting name for GDK application names
-
----
- toolkit/xre/nsAppRunner.cpp | 6 +-----
- widget/gtk/nsAppShell.cpp | 12 +++++-------
- 2 files changed, 6 insertions(+), 12 deletions(-)
-
-diff --git a/toolkit/xre/nsAppRunner.cpp b/toolkit/xre/nsAppRunner.cpp
-index ce001e93821f..3be817c5cbd5 100644
---- a/toolkit/xre/nsAppRunner.cpp
-+++ b/toolkit/xre/nsAppRunner.cpp
-@@ -4348,11 +4348,7 @@ int XREMain::XRE_mainStartup(bool* aExitFlag) {
- // consistently.
-
- // Set program name to the one defined in application.ini.
-- {
-- nsAutoCString program(gAppData->name);
-- ToLowerCase(program);
-- g_set_prgname(program.get());
-- }
-+ g_set_prgname(gAppData->remotingName);
-
- // Initialize GTK here for splash.
-
-diff --git a/widget/gtk/nsAppShell.cpp b/widget/gtk/nsAppShell.cpp
-index c8bbd9a373f5..a6a2186f20fb 100644
---- a/widget/gtk/nsAppShell.cpp
-+++ b/widget/gtk/nsAppShell.cpp
-@@ -27,6 +27,8 @@
- # include "nsIObserverService.h"
- #endif
- #include "gfxPlatform.h"
-+#include "nsAppRunner.h"
-+#include "mozilla/XREAppData.h"
- #include "ScreenHelperGTK.h"
- #include "HeadlessScreenHelper.h"
- #include "mozilla/widget/ScreenManager.h"
-@@ -257,13 +259,9 @@ nsresult nsAppShell::Init() {
- // See https://bugzilla.gnome.org/show_bug.cgi?id=747634
- //
- // Only bother doing this for the parent process, since it's the one
-- // creating top-level windows. (At this point, a child process hasn't
-- // received the list of registered chrome packages, so the
-- // GetBrandShortName call would fail anyway.)
-- nsAutoString brandName;
-- mozilla::widget::WidgetUtils::GetBrandShortName(brandName);
-- if (!brandName.IsEmpty()) {
-- gdk_set_program_class(NS_ConvertUTF16toUTF8(brandName).get());
-+ // creating top-level windows.
-+ if (gAppData) {
-+ gdk_set_program_class(gAppData->remotingName);
- }
- }
- }
diff --git a/libre/iceweasel/9001-FSDG-always-sync-remote-settings-with-local-dump.patch b/libre/iceweasel/9001-FSDG-sync-remote-settings-with-local-dump.patch
index d4e4ef5d3..d4e4ef5d3 100644
--- a/libre/iceweasel/9001-FSDG-always-sync-remote-settings-with-local-dump.patch
+++ b/libre/iceweasel/9001-FSDG-sync-remote-settings-with-local-dump.patch
diff --git a/libre/iceweasel/9003-FSDG-urihandlers.patch b/libre/iceweasel/9003-FSDG-urihandlers.patch
new file mode 100644
index 000000000..504d18b36
--- /dev/null
+++ b/libre/iceweasel/9003-FSDG-urihandlers.patch
@@ -0,0 +1,240 @@
+diff --git a/uriloader/exthandler/HandlerList.jsm b/uriloader/exthandler/HandlerList.jsm
+index 04b9205..ff3aec5 100644
+--- a/uriloader/exthandler/HandlerList.jsm
++++ b/uriloader/exthandler/HandlerList.jsm
+@@ -11,229 +11,25 @@ this.kHandlerListVersion = 1;
+ this.kHandlerList = {
+ default: {
+ schemes: {
+- mailto: {
++ irc: {
+ handlers: [
+ {
+- name: "Gmail",
+- uriTemplate: "https://mail.google.com/mail/?extsrc=mailto&url=%s",
++ name: "KiwiIRC",
++ uriTemplate: "https://web.libera.chat/?url=%s",
+ },
+ ],
+ },
+- },
+- },
+- cs: {
+- schemes: {
+- mailto: {
++ ircs: {
+ handlers: [
+ {
+- name: "Seznam",
+- uriTemplate: "https://email.seznam.cz/newMessageScreen?mailto=%s",
+- },
+- {
+- name: "Gmail",
+- uriTemplate: "https://mail.google.com/mail/?extsrc=mailto&url=%s",
++ name: "KiwiIRC",
++ uriTemplate: "https://web.libera.chat/?url=%s",
+ },
+ ],
+ },
+- },
+- },
+- csb: {
+- schemes: {
+ mailto: {
+ handlers: [
+ {
+- name: "Poczta Interia.pl",
+- uriTemplate: "http://poczta.interia.pl/mh/?mailto=%s",
+- },
+- {
+- name: "OnetPoczta",
+- uriTemplate: "http://poczta.onet.pl/napisz.html?uri=%s",
+- },
+- ],
+- },
+- },
+- },
+- "es-CL": {
+- schemes: {
+- mailto: {
+- handlers: [
+- {
+- name: "Gmail",
+- uriTemplate: "https://mail.google.com/mail/?extsrc=mailto&url=%s",
+- },
+- {
+- name: "Outlook",
+- uriTemplate:
+- "https://outlook.live.com/default.aspx?rru=compose&to=%s",
+- },
+- ],
+- },
+- },
+- },
+- "ja-JP-mac": {
+- schemes: {
+- mailto: {
+- handlers: [
+- {
+- name: "Yahoo!メール",
+- uriTemplate: "https://mail.yahoo.co.jp/compose/?To=%s",
+- },
+- {
+- name: "Gmail",
+- uriTemplate: "https://mail.google.com/mail/?extsrc=mailto&url=%s",
+- },
+- ],
+- },
+- },
+- },
+- ja: {
+- schemes: {
+- mailto: {
+- handlers: [
+- {
+- name: "Yahoo!メール",
+- uriTemplate: "https://mail.yahoo.co.jp/compose/?To=%s",
+- },
+- {
+- name: "Gmail",
+- uriTemplate: "https://mail.google.com/mail/?extsrc=mailto&url=%s",
+- },
+- ],
+- },
+- },
+- },
+- kk: {
+- schemes: {
+- mailto: {
+- handlers: [
+- {
+- name: "Яндекс.Почта",
+- uriTemplate: "https://mail.yandex.ru/compose?mailto=%s",
+- },
+- {
+- name: "Mail.Ru",
+- uriTemplate: "https://e.mail.ru/cgi-bin/sentmsg?mailto=%s",
+- },
+- {
+- name: "Gmail",
+- uriTemplate: "https://mail.google.com/mail/?extsrc=mailto&url=%s",
+- },
+- ],
+- },
+- },
+- },
+- ltg: {
+- schemes: {
+- mailto: {
+- handlers: [
+- {
+- name: "Gmail",
+- uriTemplate: "https://mail.google.com/mail/?extsrc=mailto&url=%s",
+- },
+- {
+- name: "inbox.lv mail",
+- uriTemplate: "https://mail.inbox.lv/compose?to=%s",
+- },
+- ],
+- },
+- },
+- },
+- lv: {
+- schemes: {
+- mailto: {
+- handlers: [
+- {
+- name: "Gmail",
+- uriTemplate: "https://mail.google.com/mail/?extsrc=mailto&url=%s",
+- },
+- {
+- name: "inbox.lv mail",
+- uriTemplate: "https://mail.inbox.lv/compose?to=%s",
+- },
+- ],
+- },
+- },
+- },
+- pl: {
+- schemes: {
+- mailto: {
+- handlers: [
+- {
+- name: "Poczta Interia.pl",
+- uriTemplate: "https://poczta.interia.pl/mh/?mailto=%s",
+- },
+- {
+- name: "Gmail",
+- uriTemplate: "https://mail.google.com/mail/?extsrc=mailto&url=%s",
+- },
+- ],
+- },
+- },
+- },
+- ru: {
+- schemes: {
+- mailto: {
+- handlers: [
+- {
+- name: "Яндекс.Почту",
+- uriTemplate: "https://mail.yandex.ru/compose?mailto=%s",
+- },
+- {
+- name: "Mail.Ru",
+- uriTemplate: "https://e.mail.ru/cgi-bin/sentmsg?mailto=%s",
+- },
+- {
+- name: "Gmail",
+- uriTemplate: "https://mail.google.com/mail/?extsrc=mailto&url=%s",
+- },
+- ],
+- },
+- },
+- },
+- sah: {
+- schemes: {
+- mailto: {
+- handlers: [
+- {
+- name: "Яндекс.Почта",
+- uriTemplate: "https://mail.yandex.ru/compose?mailto=%s",
+- },
+- {
+- name: "Mail.Ru",
+- uriTemplate: "https://e.mail.ru/cgi-bin/sentmsg?mailto=%s",
+- },
+- ],
+- },
+- },
+- },
+- uk: {
+- schemes: {
+- mailto: {
+- handlers: [
+- {
+- name: "Gmail",
+- uriTemplate: "https://mail.google.com/mail/?extsrc=mailto&url=%s",
+- },
+- {
+- name: "Outlook",
+- uriTemplate:
+- "https://outlook.live.com/default.aspx?rru=compose&to=%s",
+- },
+- ],
+- },
+- },
+- },
+- uz: {
+- schemes: {
+- mailto: {
+- handlers: [
+- {
+- name: "Gmail",
+- uriTemplate: "https://mail.google.com/mail/?extsrc=mailto&url=%s",
+- },
+- {
+- name: "Mail.Ru",
+- uriTemplate: "https://e.mail.ru/cgi-bin/sentmsg?mailto=%s",
+ },
+ ],
+ },
diff --git a/libre/iceweasel/9003-FSDG-misc.patch b/libre/iceweasel/9004-FSDG-misc.patch
index b9e5c4224..a42043ec5 100644
--- a/libre/iceweasel/9003-FSDG-misc.patch
+++ b/libre/iceweasel/9004-FSDG-misc.patch
@@ -98,72 +98,79 @@ index 1b29e8d..6f7566c 100644
## Firefox Account - Signed in
sync-profile-picture =
-diff --git a/browser/locales/generic/profile/bookmarks.html.in b/browser/locales/generic/profile/bookmarks.html.in
-index 2d3c7b4..00221d3 100644
---- a/browser/locales/generic/profile/bookmarks.html.in
-+++ b/browser/locales/generic/profile/bookmarks.html.in
-@@ -1,15 +1,15 @@
+diff --git a/browser/base/content/default-bookmarks.html b/browser/base/content/default-bookmarks.html
+index b2d18d3..41cd27a 100644
+--- a/browser/base/content/default-bookmarks.html
++++ b/browser/base/content/default-bookmarks.html
+@@ -1,14 +1,14 @@
#filter substitution
- #include @BOOKMARKS_INCLUDE_PATH@
-
+
-#define mozilla_icon data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E %3Cpath d='M0 0h16v16H0z'/%3E %3Cpath d='M13.994 10.356H15V12h-3.171V7.741c0-1.308-.435-1.81-1.29-1.81-1.04 0-1.46.737-1.46 1.8v2.63h1.006V12H6.918V7.741c0-1.308-.435-1.81-1.291-1.81-1.039 0-1.459.737-1.459 1.8v2.63h1.441V12H1v-1.644h1.006V6.079H1V4.435h3.168v1.139a2.507 2.507 0 0 1 2.3-1.29A2.452 2.452 0 0 1 8.931 5.91 2.535 2.535 0 0 1 11.4 4.284 2.448 2.448 0 0 1 14 6.9v3.458z' fill='%23fff'/%3E %3C/svg%3E
+#define parabola_icon data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABL0lEQVQ4jWNgoCcoq16VU1GzygnEBtEVDWuV8GooKFuhWVG3uiM3d5UokG4qr1szAaa5vGbVt4ralacwNDU0rGIrr10VBVG0+lxhwyqVsqqVtRW1q6eD5IvL19oB2V+B+D9QzQu4xtDQVZylVavygRKHqurWOlbUrknKK12qWlCwWLK8elUFA8N/xvLy5VYVtas+gzWDDVi9E2QjT1XdcufymjWpQJt1cXmnvHwVP1DzR7hmIC6vW+kOtpnYQKysW30arrlm9RVi9cFBRfXKJTADympWJZNsQFnN6rUQA1adAQU2SZqBXmUGBtozUDiU1qxQJtl2oCY3kO2l1avCSdYMAsBAWwyM2plkaS4p6eYGOv1YQ0MDB1kGlFWuDChuWKZBlmYQqK5eJU22ZkIAAEIlnQZQkzITAAAAAElFTkSuQmCC
-
+
-#define firefox_icon data:image/png;base64,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
+#define fsf_icon data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAACXBIWXMAAAsTAAALEwEAmpwYAAADG0lEQVQoFQEQA+/8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQECAAAAAAAAAAAAAAAAAAAA2qOp7tTXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAP///wAAAAAAAOCyt7pUXQcSEgcQDwAAAP///wAAAAAAAAD//x9NSDqNhQEBAQQAAAAAAAAAAAAAAAAQJiQGDQ0aPToZPjoAAQEAAAAAAAAAAAABAQEpZV4AAAAAAAAAAAAA////////////////pSIv05KZ////////////////////////////////AAAAAQAAAP///6krNwAAAAAAAPHc3ggSEQcSEQAAAAAAAAAAABY3NEGelQAAAAAAAAEBAQEAAAD///+YARAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGDg1g690CBgYAAAABAQEEAAAAAAAAS7etAAAAAAAAwGVtHklFIlJOAAAAAAAAAAAAAAAA+/X2BwYGAAAAAAAABAAAAAAAAB1IQwAAAAAAAAYNDBAmJB1IQwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAgL//v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAQEB//7/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAECAv/+/gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD////////////////cqK3qzM////////////////////////////////8AAAABAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGuLjDf9F8oBAAAAAElFTkSuQmCC
-
+
-#define bugzilla_icon data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnYCL7J0pY9wwETY9kYEM9AAAAAEBAYAhVVVUDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1bjTOS1Vb/wAA2/8JEqT/Q0g8kQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJnMqoiJtJ/0haST/NEkp/yQnW/8AAPD8AAHY/RsgP/JZUI+GKitih4ObUEAAAAAAAAAAAAAAAAAAAAAAKnouwip5Lv9ooW//a6Jz/y9GIv8JBXb/AADO/gEBvf8AAK7/FRJp/z9BfP8iLGj1AAAAAAAAAAAAAAAAL4YzwiB0I/+UwJ3/bK+C/02eZ/9CTjz/DBa1/wABxf8BAOj/AACp/w8Oc/sJCv//EhCN9AAAAAAAAAAANJA6iC2MMv93tYL/TZ5U/3mzjP9NoWr/NEss/wYIU/8CBOn/ARCX/wwNqP0TD6X/Cgyex5qacDAAAAAAAAAAADKUN/ZirWj/d76R/0SgXf9Ln1P/eLSM/1mda/8rOkb/CQiD/wMQvf8UEnT/MTAt4P//MwUhZyN8AAAAAAAAAAAznDf5UqlZ/228jP9NqnD/Qp9c/0yiVP+Dv5b/VaVw/0VxXf9PZXD/S3pQ/y54Nf8jcCf/I2wn/wAAAAA0ozjIM6E4/zOeOP+Uz6z/XLR+/06scv9BoV3/TqZX/4XBmP9XqHP/hr6Z/yp+Lf8leSr1JXUqbQAAAAA3rTz7Nqo7/zWmOqM3oz7rUK1W/43Mpf9etYD/T61z/0KjXf9Rqln/msup/46/lf8pgy7/JFg6sAAAAAAAAAAAOK8+8jqvOiMAAAAAAAAAADSlOv85pT//kM6o/2K5hP9Ysnv/YLJ2/ziXPv8piS3/V6Ri/yZQQ9wAAAAAAAAAAAAAAAAAAAAAAAAAADetP0E2qzz/OKg98UWsS/+e1K3/pNe4/4XDjv8ojy3/T7df/5fIqv8sjTH/K4kw/yqFLv8AAAAAAAAAAAAAAAA4sT3xN7A8+QAAAAA4qz3yNag6/zSlOf80oTn/csJ+/6/jwv9fjHj/MmRMdQAAAAAAAAAAAAAAAAAAAAAAAAAAOrdA/zm0QHQAAAAAAAAAADasO/k2qTvuRX5lpjqGT/gznDr/O3FXigAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADq9QiMAAAAAAAAAAAAAAAA4sj7/Nq09s0uOaSI1qTplM6U68wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOrc//zu0P0EAAAAAOK4+UjWsPPgAAAAAAAAAAAAAAAAAAAAA/48AAP8HAAD4AQAA8AAAAOAAAADAAQAAwAMAAMAAAACAAwAAAAMAAHADAADwAAAA5AcAAO4HAAD+bwAA/u8AAA==
+#define gnu_icon data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgBAMAAACBVGfHAAAAGFBMVEVFRUV+fn6mpqa/v7/Ozs7Y2Njg4OD8/Pwuhn+TAAAAAWJLR0QAiAUdSAAAAAlwSFlzAAALEQAACxEBf2RfkQAAAAd0SU1FB9MBDhQ6Gd8s57cAAAEVSURBVBgZBcGxVtpgGADQL9gHSBzqSognzMixmcWWzB6pmRHhnyvku6/fewMAIPD3TwHmQxHs6vr+A16bphNum/vV0x429201hcPjAGBTDZGnR/Kw1U181+u4HXvOdSxjUcztz8jjg1xGVBG9XPYxt4PviKiaWLg168iXtbrq+mPT1utjNcR1U73deRnL43M2sRgj3+oYs8uL3rLphPd2QWmHbMu/VS/cnk6UdtSW657g9yBlcZ0UAkUWzPvyRaAYmfd+HT4IZtvC59ibEJxXiqJjQpBpNEufBYE0McoOAunGhRMEFIPc7h4goJigQEBxk8u7AgEpL3IEAUZfcgAByGFXQACm5+4MAuB19QMEgI8CAgDgP4rivVgoKP6ZAAAAAElFTkSuQmCC
-
+
-#define mdn_icon data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAABgElEQVR4AWPouPiRpmjUAjgatSBj+aG0OVuyVhymsgWl2y475zXySikwwIC4lpFDVk3avG0BrXP9mmeV7bhCvgXuxW3M7JwMeAGfpByZFpjHFzAQB2KmrSfZAtuMKgaiAZ+MUuLc7SRY4FbYwkA60HAJiJm8uubQAwIWeJV1MlAAOAREHDJrcFqQMG+ngIK6oKyykLwqAyMjeXZwiUjgtKD+yGMIwyGzmoGBTAs4hcXrgObgi4OiVkpCiUtYov7YU5wW1B194t0ww69ldvjktYouwWRYIGdkQ1Q+iJ28hp2Xn7B5zKzIPAlNw6S52wlbkL3mJJecOq+CBqeIJC6TjUJTMlcdz9lwLmriSuPgJBVbj/D+5SSXRequQVhNN4nIoEJhV77jKgs7B6bprJw85XtuU8GCpNlbSS3gSA4ii4QiTAvElDWpWeH41kxg5eZDSypUrtFKd1zTcA1EpHRDS5rUyQEts+VN7JjYOGR0TWhY6RdsOhc/Y9NoswUJjVoAAE+h555Rgcg2AAAAAElFTkSuQmCC
+#define libreplanet_icon data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACfElEQVQ4jZXTS0hUcRTH8f+9M3fGd0gRRq1a2bZdBAotWtS6TQtB6IHgKzRy0UKqjRaRCAq+R21MDMsUR83JR5fJxhmaK2lzsWAWw+ToEHJxgnFm7reFIgza66z/58P/dzhHcESZpsluIsFPwyCVSmGa5lHPEEIIkdGYTqPPvqUlP4fK8nJ2DINYNEq71YJ3fv4QlAGkUynaj+VRdfUK7580M52rEN/ZYWNjg2GrjEMSPFXsmOn0YcA0TZ4V5tNZUkJTTTWfJiZIJhJ8U1VczwcZs0o4JUHzufM0ZGcf/OQASCaTxGIxDMNA00P8iEbpuXyJ8Tw77+wWJhWZQYuVbiHoFIKwpmUC4XCYzc1NDMMgHo9z8+IFvl6/xsf7D9ArbjOpyAxLEt1C0CUErfvJDwBd14lEImxvb/N9fR1fgY3egmyWsq0sO/poUyw4pb3mLiFolyRM09wDEokEfr+fUChEJBJh4HgBS7kKn92zLIy9ZriqklFZwiEEHfsRRp1O0un0HpDa3cU9M8PKygp3Tp5AzbKgZlmYt1uYtkn02q0MyYKmnBxWNI27Nhtut5tkMrkHmKZJbWkpqqryQpFxKTJTisyEVeaVRWJIlqgpLuZRWRkejwe/34/P58ucwZvWVhYXF5l2uejIzeHGqbM4ZYmB/dy1hUV8mJpibm4On8/H1tbW4T1YXV3F6/WysLDA5Pg4nfsDe5yfz8OiIjweD5qmEQwGf7/KwWCQtbU1NE2jRZbpEoI2SWKqr49lVUXX9T/fAkAgEKC/e5SW6mo6hKD+zGn6e0bw+/x/PyaA9S/rvOwfobGukfpbddyraMDR7iCwHPg34H9KCCF+Abts3KCj/p6aAAAAAElFTkSuQmCC
-
+
-#define addon_icon data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAABOFBMVEUAAAAAzdwAydcAyNgA//8AzOYAydcAyNgAyNgA2NgAytoAzNkAytgAydgA29sA0egAyNgAyNgA//8AyNgAydgA//8Ay9cAydcAytkAz90Ay9gA1eoAydgAytsAyNgAytgAydkAydgAydgAyNgAydgAyNcAy9oAydgA//8AytsAy9kAytkAyNgAydgAydkAy9kAzP8AydgAydgAydgAz98AzN0AyNcAyNsAydcAydgAydgAydcAytgAytcAydcAydcAytcAydcAyNcAydcAy9gAztgAydcAydgAzOAAydcAyNgAyNgAytwAyNcAyNgAy9wAyNcAyNcAyNgAydgAyNcAydcAydgA0uEAydkAyNgAyeQA4+MAyNgAydkAzN0AyNsA1f8AyNgAydgAydcA1eMAydgAydcAyNdj6PGJAAAAZ3RSTlMAJFpBAQqm8qwNPiiPygcLv8QEw5cDQMA1JU4MwiuDbl/+6+m4+0XLAj9KePz9cjYFvervEA/IDsfFr+xcgeaOYIDo+ica1OMZ9bXlHe73LM3M35itxs8Rf5ATCbFeHjgGttC5ErzO3WvwaAAAAWxJREFUOMt9kudCwkAQhFcITQWCoaggiBqxoaixYUVsYMMGCmLXff838LIXCJAL84fvmCHsTg4AYMDhlIDkcnu8Po4w6BjiIA0joj+gY1BmGKLEiMIwHNFR9xGjuh8jpMQoYZjRGBGOA8QTHDEUB4hynABwcEqCT8GW2DNSnCYBnJzSoSk0NT2jcphlM/rRXpk5NkRgfmFxSWBml6MrOWNlWBUEEmDKtyYIrGttP66gSP4Nww8mUKzNLd5/zHaJbb1Tl9xnzR2WcGM/5QE8BLvJvf0Dc4HDo8IxUVECL5Vywv7s9Mzwz/WLcFHSsWy8w0sa9+qa/JtbOlUY3mnGLbjnCz9Q4JEfnhCrNb5nXi3w754p8MIPKVWpt6psGJ+vFJBbBUO3GlozzYdsSmCV1NlntiTnegNvPQ29Wx7h7fKrEUvg47PD/6oLpgh8m7//AZEav4b/J/bbb75SAzvR3crY+6y8fLGsQV9ZSvwHF4LQIhDjT+8AAAAASUVORK5CYII=
+#define hnode_icon data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABgElEQVQ4jaXRz2uSARzHcb0vlRGEzTVWISU1BVkFYTIyjNK1pKcxHA+yhWMWIamHYikFgpoLIi9jwegi3QbL9SzdLmMbM9J+DkJBgm5RDvEPeHeQHOyQz0OH9+V7ePGBr0pqpPmfVPsP8a0AR4MnMEwf48x9K0s/E8oAY9iEMOvD+8yP2qVjrhhRBnSN61n5sIpULqC+pGHh8wNlgEY8jPQXcGh4VXukDND5evYAl46odIuXtYdKAANSudAChO52/XeMZMohecCbcoGdH99Y+7LO72adT9+/4nh8nYOjBl7/SsoB8gBkpHk8T0S2K++pN3fRin3cfnFDHvCuWkI9rEMvHGEo5gbAHnXhnLF1BpZLeRaLOVT2A8Q3A5wMngXgWtKLxX9KPqC+rCWQvYkpeK4NWKcGOgO50ts2MJJ0cPreeQDciTHMchZYIhcwh2wcuqjn+ccwGm9v6wsTxxn0dVgQXZ7Ek3Agpq6QrcaQGmmebtxFSDkRU1fJVmL/BpT2ByV/3eDMhinRAAAAAElFTkSuQmCC
<!-- 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/. -->
-@@ -21,29 +21,21 @@
+@@ -29,31 +29,31 @@
<dl><p>
- <dt><h3 personal_toolbar_folder="true">@bookmarks_toolbarfolder@</h3></dt>
- <dd>@bookmarks_toolbarfolder_description@
+ <dt><h3 personal_toolbar_folder="true" data-l10n-id="default-bookmarks-toolbarfolder">default-bookmarks-toolbarfolder</h3></dt>
+ <dd data-l10n-id="default-bookmarks-toolbarfolder-description">default-bookmarks-toolbarfolder-description</dd>
-#ifndef NIGHTLY_BUILD
- <dl>
-- <p><dt><a href="https://www.mozilla.org/@AB_CD@/firefox/central/" icon="@firefox_icon@">@getting_started@</a></dt>
-+ <p><dt><a href="https://www.parabola.nu/" icon="@parabola_icon@">Parabola GNU/Linux-libre</a></dt>
- </dl>
-- <p><dt><h3>@firefox_heading@</h3></dt>
-+ <p><dt><h3>Parabola GNU/Linux-libre</h3></dt>
<dl><p>
-- <dt><a href="https://support.mozilla.org/@AB_CD@/products/firefox" icon="@firefox_icon@">@firefox_get_help@</a>
-- <dt><a href="https://support.mozilla.org/@AB_CD@/kb/customize-firefox-controls-buttons-and-toolbars?utm_source=firefox-browser&utm_medium=default-bookmarks&utm_campaign=customize" icon="@firefox_icon@">@firefox_customize@</a>
-- <dt><a href="https://www.mozilla.org/@AB_CD@/contribute/" icon="@mozilla_icon@">@firefox_community@</a>
-- <dt><a href="https://www.mozilla.org/@AB_CD@/about/" icon="@mozilla_icon@">@firefox_about@</a>
-+ <dt><a href="https://www.parabola.nu/" icon="@parabola_icon@">Parabola GNU/Linux-libre</a>
-+ <dt><a href="https://www.parabola.nu/packages/" icon="@parabola_icon@">Parabola GNU/Linux-libre Packages</a>
-+ <dt><a href="https://wiki.parabola.nu/" icon="@parabola_icon@">Parabola GNU/Linux-libre Wiki</a>
-+ <dt><a href="https://labs.parabola.nu/" icon="@parabola_icon@">Parabola GNU/Linux-libre Labs</a>
- </dl>
+- <dt><a href="https://www.mozilla.org/firefox/central/" icon="@firefox_icon@" data-l10n-id="default-bookmarks-getting-started">default-bookmarks-getting-started</a></dt>
++ <dt><a href="https://www.parabola.nu/" icon="@parabola_icon@" data-l10n-id="default-bookmarks-getting-started">Parabola GNU/Linux-libre</a></dt>
+ </dl><p>
+- <dt><h3 data-l10n-id="default-bookmarks-firefox-heading">default-bookmarks-firefox-heading</h3></dt>
++ <dt><h3 data-l10n-id="default-bookmarks-firefox-heading">Parabola GNU/Linux-libre</h3></dt>
+ <dl><p>
+- <dt><a href="https://support.mozilla.org/products/firefox" icon="@firefox_icon@" data-l10n-id="default-bookmarks-firefox-get-help">default-bookmarks-firefox-get-help</a></dt>
+- <dt><a href="https://support.mozilla.org/kb/customize-firefox-controls-buttons-and-toolbars?utm_source=firefox-browser&utm_medium=default-bookmarks&utm_campaign=customize" icon="@firefox_icon@" data-l10n-id="default-bookmarks-firefox-customize">default-bookmarks-firefox-customize</a></dt>
+- <dt><a href="https://www.mozilla.org/contribute/" icon="@mozilla_icon@" data-l10n-id="default-bookmarks-firefox-community">default-bookmarks-firefox-community</a></dt>
+- <dt><a href="https://www.mozilla.org/about/" icon="@mozilla_icon@" data-l10n-id="default-bookmarks-firefox-about">default-bookmarks-firefox-about</a></dt>
++ <dt><a href="https://www.parabola.nu/" icon="@parabola_icon@" data-l10n-id="default-bookmarks-firefox-get-help">Parabola GNU/Linux-libre</a></dt>
++ <dt><a href="https://www.parabola.nu/packages/" icon="@parabola_icon@" data-l10n-id="default-bookmarks-firefox-customize">Parabola GNU/Linux-libre Packages</a></dt>
++ <dt><a href="https://wiki.parabola.nu/" icon="@parabola_icon@" data-l10n-id="default-bookmarks-firefox-community">Parabola GNU/Linux-libre Wiki</a></dt>
++ <dt><a href="https://labs.parabola.nu/" icon="@parabola_icon@" data-l10n-id="default-bookmarks-firefox-about">Parabola GNU/Linux-libre Labs</a></dt>
+ </dl><p>
-#else
-- <dl>
-- <p><dt><a href="https://www.mozilla.org/@AB_CD@/contribute/" icon="@mozilla_icon@">@firefox_community@</a>
-- </dl>
-- <p><dt><h3>@nightly_heading@</h3></dt>
-+ <p><dt><h3>Free Software Foundation</h3></dt>
++ <!-- TODO: delete one of these duplicated sections above or below -->
++ <dt><h3 data-l10n-id="default-bookmarks-parabola-heading">Parabola GNU/Linux-libre</h3></dt>
+ <dl><p>
+- <dt><a href="https://www.mozilla.org/contribute/" icon="@mozilla_icon@" data-l10n-id="default-bookmarks-firefox-community">default-bookmarks-firefox-community</a></dt>
++ <dt><a href="https://www.parabola.nu/" icon="@parabola_icon@" data-l10n-id="default-bookmarks-parabola-get-help">Parabola GNU/Linux-libre</a></dt>
++ <dt><a href="https://www.parabola.nu/packages/" icon="@parabola_icon@" data-l10n-id="default-bookmarks-parabola-customize">Parabola GNU/Linux-libre Packages</a></dt>
++ <dt><a href="https://wiki.parabola.nu/" icon="@parabola_icon@" data-l10n-id="default-bookmarks-parabola-community">Parabola GNU/Linux-libre Wiki</a></dt>
++ <dt><a href="https://labs.parabola.nu/" icon="@parabola_icon@" data-l10n-id="default-bookmarks-parabola-about">Parabola GNU/Linux-libre Labs</a></dt>
+ </dl><p>
+- <dt><h3 data-l10n-id="default-bookmarks-nightly-heading">default-bookmarks-nightly-heading</h3></dt>
++ <dt><h3 data-l10n-id="default-bookmarks-fsf-heading">Free Software Foundation</h3></dt>
<dl><p>
-- <dt><a href="https://blog.nightly.mozilla.org/" icon="@mozilla_icon@">@nightly_blog@</a>
-- <dt><a href="https://bugzilla.mozilla.org/" icon="@bugzilla_icon@" shortcuturl="bz">@bugzilla@</a>
-- <dt><a href="https://developer.mozilla.org/" icon="@mdn_icon@" shortcuturl="mdn">@mdn@</a>
-- <dt><a href="https://addons.mozilla.org/@AB_CD@/firefox/addon/nightly-tester-tools/" icon="@addon_icon@">@nightly_tester_tools@</a>
-- <dt><a href="about:crashes" icon="@mozilla_icon@">@crashes@</a>
-- <dt><a href="https://planet.mozilla.org/" icon="@mozilla_icon@">@planet@</a>
-+ <dt><a href="https://www.fsf.org/" icon="@fsf_icon@">Free Software Foundation</a>
-+ <dt><a href="https://www.gnu.org/" icon="@gnu_icon@">The GNU Operating System and the Free Software Movement</a>
-+ <dt><a href="https://libreplanet.org/" icon="@libreplanet_icon@">LibrePlanet</a>
-+ <dt><a href="https://www.h-node.org/" icon="@hnode_icon@">h-node</a>
- </dl>
+- <dt><a href="https://blog.nightly.mozilla.org/" icon="@mozilla_icon@" data-l10n-id="default-bookmarks-nightly-blog">default-bookmarks-nightly-blog</a></dt>
+- <dt><a href="https://bugzilla.mozilla.org/" icon="@bugzilla_icon@" shortcuturl="bz" data-l10n-id="default-bookmarks-bugzilla">default-bookmarks-bugzilla</a></dt>
+- <dt><a href="https://developer.mozilla.org/" icon="@mdn_icon@" shortcuturl="mdn" data-l10n-id="default-bookmarks-mdn">default-bookmarks-mdn</a></dt>
+- <dt><a href="https://addons.mozilla.org/firefox/addon/nightly-tester-tools/" icon="@addon_icon@" data-l10n-id="default-bookmarks-nightly-tester-tools">default-bookmarks-nightly-tester-tools</a></dt>
+- <dt><a href="about:crashes" icon="@mozilla_icon@" data-l10n-id="default-bookmarks-crashes">default-bookmarks-crashes</a></dt>
+- <dt><a href="https://planet.mozilla.org/" icon="@mozilla_icon@" data-l10n-id="default-bookmarks-planet">default-bookmarks-planet</a></dt>
++ <dt><a href="https://www.fsf.org/" icon="@fsf_icon@" data-l10n-id="default-bookmarks-fsf">Free Software Foundation</a></dt>
++ <dt><a href="https://www.gnu.org/" icon="@gnu_icon@" data-l10n-id="default-bookmarks-gnu">The GNU Operating System and the Free Software Movement</a></dt>
++ <dt><a href="https://libreplanet.org/" icon="@libreplanet_icon@" data-l10n-id="default-bookmarks-libreplanet">LibrePlanet</a></dt>
++ <dt><a href="https://www.h-node.org/" icon="@hnode_icon@" data-l10n-id="default-bookmarks-hnode" shortcuturl="hnode">h-node</a></dt>
+ </dl><p>
-#endif
</dl>
+ </body>
+ </html>
diff --git a/devtools/startup/aboutdevtools/aboutdevtools.xhtml b/devtools/startup/aboutdevtools/aboutdevtools.xhtml
index 5b0709e..38ea275 100644
--- a/devtools/startup/aboutdevtools/aboutdevtools.xhtml
@@ -247,27 +254,6 @@ index edd871b..77870fe 100644
addon-page-options-button =
.title = Tools for all add-ons
-diff --git a/browser/locales/en-US/chrome/browser-region/region.properties b/browser/locales/en-US/chrome/browser-region/region.properties
-index 4c4ea76..e0f2880 100644
---- a/browser/locales/en-US/chrome/browser-region/region.properties
-+++ b/browser/locales/en-US/chrome/browser-region/region.properties
-@@ -9,16 +9,3 @@
- # don't make any spelling errors here.
- gecko.handlerService.defaultHandlersVersion=4
-
--# The default set of protocol handlers for mailto:
--gecko.handlerService.schemes.mailto.0.name=Yahoo! Mail
--gecko.handlerService.schemes.mailto.0.uriTemplate=https://compose.mail.yahoo.com/?To=%s
--gecko.handlerService.schemes.mailto.1.name=Gmail
--gecko.handlerService.schemes.mailto.1.uriTemplate=https://mail.google.com/mail/?extsrc=mailto&url=%s
--
--# The default set of protocol handlers for irc:
--gecko.handlerService.schemes.irc.0.name=Mibbit
--gecko.handlerService.schemes.irc.0.uriTemplate=https://www.mibbit.com/?url=%s
--
--# The default set of protocol handlers for ircs:
--gecko.handlerService.schemes.ircs.0.name=Mibbit
--gecko.handlerService.schemes.ircs.0.uriTemplate=https://www.mibbit.com/?url=%s
diff --git a/browser/components/protections/content/protections.ftl b/browser/components/protections/content/protections.ftl
index 5ac8a7b08c..fec81698e3 100644
--- a/browser/components/protections/content/protections.ftl
diff --git a/libre/iceweasel/PKGBUILD b/libre/iceweasel/PKGBUILD
index 57a711174..3048a21d6 100644
--- a/libre/iceweasel/PKGBUILD
+++ b/libre/iceweasel/PKGBUILD
@@ -45,23 +45,36 @@
# (good manners because of all of the other patching we're doing)
+# NOTE: This PKGBUILD is kept in-sync with arch{,arm,32}, as closely as possible,
+# for the sake of documentation and cleaner diffs.
+# That also helps to identify which changes were made by Parabola vs upstream.
+# Therefore, this PKGBUILD may declare blacklisted dependencies, non-free sources,
+# or include code for anti-features; but those will be filtered-out subsequently.
+# Any code which implements an anti-feature should be commented-out;
+# and include an 'anti-feature' comment, for clarity.
+# Any blacklisted dependencies and non-free sources should be filtered.
+# Without those over-rides, the resulting program may not be FSDG-fit.
+# Do not circumvent those over-rides, if compiling for the Parabola repos.
+
+
pkgname=iceweasel
epoch=1
-pkgver=97.0.2
+pkgver=98.0
pkgrel=1
-pkgrel+=.parabola5
-_brandingver=97.0-1 # unreleased WIP
+pkgrel+=.parabola1
+_brandingver=98.0-1
pkgdesc="Standalone web browser derived from Mozilla Firefox"
arch=(x86_64)
arch+=(armv7h i686)
license=(MPL GPL LGPL)
url="https://wiki.parabola.nu/Iceweasel"
-depends=(gtk3 libxt mime-types dbus-glib ffmpeg nss ttf-font libpulse)
+depends=(gtk3 libxt mime-types dbus-glib ffmpeg4.4 nss ttf-font libpulse)
makedepends=(unzip zip diffutils yasm mesa imake inetutils xorg-server-xvfb
autoconf2.13 rust clang llvm jack nodejs cbindgen nasm
python-setuptools python-psutil python-zstandard lld dump_syms
wasi-compiler-rt wasi-libc wasi-libc++ wasi-libc++abi)
makedepends+=(quilt libxslt imagemagick git jq python-jsonschema)
+depends=( ${depends[*]/ffmpeg4.4/ffmpeg} )
makedepends+=(libvpx=1.11.0-1)
[[ "${CARCH}" == i686 ]] && makedepends=( ${makedepends[*]/jack/jack2} )
[[ "${CARCH}" == i686 ]] && makedepends=( ${makedepends[*]/llvm/llvm12} )
@@ -75,28 +88,29 @@ optdepends=('networkmanager: Location detection via available WiFi networks'
'xdg-desktop-portal: Screensharing with Wayland')
replaces=('firefox')
options=(!emptydirs !makeflags !strip !lto !debug) # FIXME: make debug package
-source=(https://archive.mozilla.org/pub/firefox/releases/${pkgver}/source/firefox-${pkgver}.source.tar.xz{,.asc}
- 0001-Use-remoting-name-for-GDK-application-names.patch
- $pkgname.desktop)
+source=(https://archive.mozilla.org/pub/firefox/releases/$pkgver/source/firefox-$pkgver.source.tar.xz{,.asc}
+ $pkgname.desktop identity-icons-brand.svg)
+source=(${source[*]/identity-icons-brand.svg/})
source+=(https://repo.parabola.nu/other/iceweasel/${pkgname}_${_brandingver}.branding.tar.xz{,.sig}
- 9001-FSDG-always-sync-remote-settings-with-local-dump.patch
+ 9001-FSDG-sync-remote-settings-with-local-dump.patch
9002-FSDG-preference-defaults.patch
- 9003-FSDG-misc.patch
+ 9003-FSDG-urihandlers.patch
+ 9004-FSDG-misc.patch
process-json-files.py
vendor.js.in)
source_armv7h=(build-arm-libopus.patch)
source_i686=('avoid-libxul-OOM-python-check.patch'
'rust-static-disable-network-test-on-static-libraries.patch'
'firefox-93.0_x86_math_private_20211110.patch')
-sha256sums=('c9f127741beabde78b021dc95b1740259d01677d461400682cb30e072126f075'
+sha256sums=('fd0a4c11d007d9045706667eb0f99f9b7422945188424cb937bfef530cb6f4dd'
'SKIP'
- '8de6c0ecc70d2763936be6df4b91a3d2e806765bf510f987d6f2ffa2377c3f01'
'9cdc2602661717712092d28bb494e5b48e518cb930898aca85eaf21f91f7ef58')
-sha256sums+=('f6013003a6bac275fc27d1c10d1f38a033fe888a4dc64a6ad50522de41aaa70b'
+sha256sums+=('f3e89499909b172476e931d9ab18b856d0001e3042b3816d1728809536179768'
'SKIP'
'a4e3c3869085cb282cb5a0fcb64e816c0415f25d4792a62c4f1d599d3111b23c'
'cb3079a0dc30321183bf8e112532c6f2aad045f68103f8d422c9691137aa770e'
- '39e3a5e1ad137e21f842a44d7e3bd24050292d2b41fe59b4e7c7dfed52a195dd'
+ 'e192458a2a9878483984e1400bb3c66df369adfbf6f144b90445f80973c32ed1'
+ 'e7b8d08bb9fa98f09290632f37d1453c52db56fa0d20acf9bc5d110d2d64a920'
'9386f1c50506cd20ab6d212335d5e4417faeb2aea371dd46f2d107d171e80b83'
'c93ce98e1cb64033079343ff1f3037fab6a3bc6d3eb5bc14c5edb70e2d45965d')
sha256sums_armv7h=('2d4d91f7e35d0860225084e37ec320ca6cae669f6c9c8fe7735cdbd542e3a7c9')
@@ -108,6 +122,19 @@ validpgpkeys+=('BFA8008A8265677063B11BF47171986E4B745536') # Andreas Grapentin
validpgpkeys+=('3954A7AB837D0EA9CFA9798925DB7D9B5A8D4B40') # bill-auger
+# Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) # anti-feature
+# Note: These are for Arch Linux use ONLY. For your own distribution, please # anti-feature
+# get your own set of keys. Feel free to contact foutrelis@archlinux.org for # anti-feature
+# more information. # anti-feature
+# _google_api_key=AIzaSyDwr302FpOSkGRpLlUpPThNTDPbXcIn_FM # anti-feature
+
+# Mozilla API keys (see https://location.services.mozilla.com/api) # anti-feature
+# Note: These are for Arch Linux use ONLY. For your own distribution, please # anti-feature
+# get your own set of keys. Feel free to contact heftig@archlinux.org for # anti-feature
+# more information. # anti-feature
+# _mozilla_api_key=e05d56db0a694edc8b5aaebda3f2db6a # anti-feature
+
+
# PGO requires networking
_should_skip_pgo_armv7h=1 # disable for armv7h - always
_should_skip_pgo_i686=1 # disable for i686 - always
@@ -115,8 +142,10 @@ _should_skip_pgo_x86_64=0 # disable for x86_64 - sometimes for libremakepkg
eval "_should_skip_pgo=\$_should_skip_pgo_${CARCH}"
+## helpers ##
+
_check_build_config() {
- pushd "$srcdir/firefox-${pkgver%_*}" > /dev/null
+ pushd "${srcdir}"/firefox-${pkgver} > /dev/null
echo "Checking build configuration..."
@@ -144,12 +173,36 @@ _check_build_config() {
popd > /dev/null
}
+_check_patching() {
+ pushd "${srcdir}"/firefox-${pkgver} > /dev/null
+
+ # URI protocol handlers
+ local uri_handlers=uriloader/exthandler/HandlerList.jsm
+ local webmails='google|yahoo'
+ grep 'name:' $uri_handlers | grep '"KiwiIRC",' && \
+ ! grep 'name:' $uri_handlers | grep -v '"KiwiIRC",' && \
+ ! grep -E "($webmails)" $uri_handlers || \
+ ! echo "9003-FSDG-misc.patch needs reworking" || \
+ return 1
+
+ # Remote Settings
+ local settings_server='firefox.settings.services.mozilla.com'
+ ! grep -qr $settings_server || \
+ ! echo '9001-FSDG-sync-remote-settings-with-local-dump.patch needs reworking' || \
+ return 1
+
+ popd > /dev/null
+}
+
+
+## business ##
+
prepare() {
mkdir mozbuild
cd firefox-$pkgver
- # https://bugzilla.mozilla.org/show_bug.cgi?id=1530052
- patch -Np1 -i ../0001-Use-remoting-name-for-GDK-application-names.patch
+ # echo -n "$_google_api_key" >google-api-key # anti-feature
+ # echo -n "$_mozilla_api_key" >mozilla-api-key # anti-feature
cat >../mozconfig <<END
ac_add_options --enable-application=browser
@@ -167,17 +220,22 @@ ac_add_options --with-wasi-sysroot=/usr/share/wasi-sysroot
# Branding
ac_add_options --disable-official-branding
+ac_add_options --enable-update-channel=release
+ac_add_options --with-distribution-id=nu.parabola
ac_add_options --with-branding=browser/branding/${pkgname}
ac_add_options --with-app-name=${pkgname}
ac_add_options --with-app-basename=${pkgname}
-ac_add_options --enable-update-channel=release
-ac_add_options --with-distribution-id=nu.parabola
ac_add_options --with-unsigned-addon-scopes=app,system
ac_add_options --allow-addon-sideload
-export MOZ_APP_REMOTINGNAME=${pkgname}
+export MOZ_APP_REMOTINGNAME=${pkgname//-/}
export MOZ_TELEMETRY_REPORTING=
export MOZ_REQUIRE_SIGNING=
+# Keys
+# ac_add_options --with-google-location-service-api-keyfile=${PWD@Q}/google-api-key # anti-feature
+# ac_add_options --with-google-safebrowsing-api-keyfile=${PWD@Q}/google-api-key # anti-feature
+# ac_add_options --with-mozilla-api-keyfile=${PWD@Q}/mozilla-api-key # anti-feature
+
# System libraries
ac_add_options --with-system-nspr
ac_add_options --with-system-nss
@@ -266,10 +324,9 @@ END
echo "applying parabola branding"
local brandingsrcdir="${srcdir}"/${pkgname}-${_brandingver/-*}
local brandingdestdir=browser/branding/${pkgname}
+ local blank_svg='<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"></svg>'
rm -rf -- ${brandingdestdir}
cp -aT -- ${brandingsrcdir}/branding ${brandingdestdir}
- cp "${brandingdestdir}"/iceweasel_logo.svg "${brandingdestdir}"/content/aboutlogins.svg
- cp "${brandingdestdir}"/iceweasel_logo.svg "${brandingdestdir}"/content/about-logo.svg
# produce icons
for i in 16 22 24 32 48 64 128 192 256 384; do
@@ -277,6 +334,14 @@ END
-o "${brandingdestdir}"/default${i}.png
done
+ pushd "${brandingdestdir}"
+ cp iceweasel_logo.svg content/aboutlogins.svg
+ cp iceweasel_logo.svg content/about-logo.svg
+ convert -background none -geometry 192x192 iceweasel_logo.svg content/about-logo.png
+ convert -background none -geometry 384x384 iceweasel_logo.svg content/about-logo@2x.png
+ echo ${blank_svg} > content/blank.svg
+ popd
+
# custom new tab page
# FIXME: the newtab page (aka "Start Page") has changed significantly
# the new upstream start page ('activity-streams') is an add-on now
@@ -321,6 +386,9 @@ END
export QUILT_PC="${srcdir}"/.pc
quilt push -av
+ # misc branding
+ sed -i "s|({ \$bits }-bit)|($CARCH)|" browser/locales/en-US/browser/aboutDialog.ftl
+
## searchengines ##
@@ -364,12 +432,8 @@ END
rm testing/mozbase/mozproxy/tests/files/mitm5-linux-firefox-amazon.zip
# Disable/neutralize Remote Settings (as best we can)
- echo "applying 9001-FSDG-always-sync-remote-settings-with-local-dump.patch"
- patch -Np1 --no-backup-if-mismatch -i ../9001-FSDG-always-sync-remote-settings-with-local-dump.patch
-
- # Verify Remote Settings patching
- local settings_server='firefox.settings.services.mozilla.com'
- ! grep -qr $settings_server || { echo 'Remote Settings patching needs rework'; return 1; }
+ echo "applying 9001-FSDG-sync-remote-settings-with-local-dump.patch"
+ patch -Np1 --no-backup-if-mismatch -i ../9001-FSDG-sync-remote-settings-with-local-dump.patch
# Disable various components at the source level
sed -i 's/;1/;0/' toolkit/components/telemetry/components.conf
@@ -380,12 +444,22 @@ END
python ../process-json-files.py "${srcdir}"/firefox-${pkgver} "${brandingsrcdir}"
+ # disable various phone-home/goelocation anti-featires
echo "applying 9002-FSDG-preference-defaults.patch"
patch -Np1 --no-backup-if-mismatch -i "${srcdir}"/9002-FSDG-preference-defaults.patch
+ # over-ride/install default URI protocol handlers
+ echo "applying 9003-FSDG-urihandlers.patch"
+ patch -Np1 --no-backup-if-mismatch -i "${srcdir}"/9003-FSDG-urihandlers.patch
+
# Remove remaining non-free bits
- echo "applying 9003-FSDG-misc.patch"
- patch -Np1 --no-backup-if-mismatch -i "${srcdir}"/9003-FSDG-misc.patch
+ echo "applying 9004-FSDG-misc.patch"
+ patch -Np1 --no-backup-if-mismatch -i "${srcdir}"/9004-FSDG-misc.patch
+
+
+ ## patching sanity checks ##
+
+ _check_patching
}
build() {
@@ -395,15 +469,12 @@ build() {
export MOZ_NOSPAM=1
export MOZBUILD_STATE_PATH="$srcdir/mozbuild"
+ export MOZ_ENABLE_FULL_SYMBOLS=1
export MACH_USE_SYSTEM_PYTHON=1
# LTO needs more open files
ulimit -n 4096
- # clang-{9,10,11} -> error: unknown argument: '-fvar-tracking-assignments'
- CFLAGS="${CFLAGS/-fvar-tracking-assignments/}"
- CXXFLAGS="${CXXFLAGS/-fvar-tracking-assignments/}"
-
## [ARCH-SPECIFIC BUILD ENV] ##
@@ -479,15 +550,11 @@ END
xvfb-run -s "-screen 0 1920x1080x24 -nolisten local" \
./mach python build/pgo/profileserver.py
- if [[ ! -s merged.profdata ]]; then
- echo "No profile data produced."
- return 1
- fi
+ stat -c "Profile data found (%s bytes)" merged.profdata
+ test -s merged.profdata
- if [[ ! -s jarlog ]]; then
- echo "No jar log produced."
- return 1
- fi
+ stat -c "Jar log found (%s bytes)" jarlog
+ test -s jarlog
echo "Removing instrumented browser..."
./mach clobber
@@ -504,7 +571,7 @@ END
## sanity checks ##
# each of the [ARCH-SPECIFIC BUILD CONFIG] branches above should have created .mozconfig
- [[ ! -f .mozconfig ]] && echo ".mozconfig file not found in source root" && return 1
+ [[ ! -f .mozconfig ]] && echo "cannot continue without a .mozconfig file" && return 1
_check_build_config
@@ -512,6 +579,9 @@ END
echo "Building optimized browser..."
./mach build
+
+ echo "Building symbol archive..."
+ ./mach buildsymbols
}
package() {
@@ -554,13 +624,20 @@ app.distributor.channel=$pkgname
app.partner.parabola=parabola
END
- local i
- for i in 16 22 24 32 48 64 128 192 256 384; do
- install -Dvm644 browser/branding/$pkgname/default$i.png \
+ # NOTE: browser/branding/$theme is $brandingdestdir in configure()
+ local i theme=$pkgname
+ for i in 16 22 24 32 48 64 128 256; do
+ install -Dvm644 browser/branding/$theme/default$i.png \
"$pkgdir/usr/share/icons/hicolor/${i}x${i}/apps/$pkgname.png"
done
- install -Dvm644 "browser/branding/$pkgname/${pkgname}_icon.svg" \
+ install -Dvm644 browser/branding/$theme/content/about-logo.png \
+ "$pkgdir/usr/share/icons/hicolor/192x192/apps/$pkgname.png"
+ install -Dvm644 browser/branding/$theme/content/about-logo@2x.png \
+ "$pkgdir/usr/share/icons/hicolor/384x384/apps/$pkgname.png"
+ install -Dvm644 browser/branding/$theme/content/about-logo.svg \
"$pkgdir/usr/share/icons/hicolor/scalable/apps/$pkgname.svg"
+ install -Dvm644 browser/branding/$theme/content/blank.svg \
+ "$pkgdir/usr/share/icons/hicolor/symbolic/apps/$pkgname-symbolic.svg"
install -Dvm644 ../$pkgname.desktop \
"$pkgdir/usr/share/applications/$pkgname.desktop"