Package: gnuzilla;
Reported by: Maxim Cournoyer <maxim <at> guixotic.coop>
Date: Sun, 31 Aug 2025 14:13:02 UTC
Severity: normal
Tags: patch
To reply to this bug, email your comments to 79355 AT debbugs.gnu.org.
Toggle the display of automated, internal messages from the tracker.
View this report as an mbox folder, status mbox, maintainer mbox
bug-gnuzilla <at> gnu.org
:bug#79355
; Package gnuzilla
.
(Sun, 31 Aug 2025 14:13:03 GMT) Full text and rfc822 format available.Maxim Cournoyer <maxim <at> guixotic.coop>
:bug-gnuzilla <at> gnu.org
.
(Sun, 31 Aug 2025 14:13:03 GMT) Full text and rfc822 format available.Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Maxim Cournoyer <maxim <at> guixotic.coop> To: bug-gnuzilla <at> gnu.org Cc: Maxim Cournoyer <maxim <at> guixotic.coop> Subject: [PATCH 1/2] Update to 140.2.0-1. Date: Sun, 31 Aug 2025 23:11:55 +0900
* makeicecat: Update FFMINOR and SOURCEBALL_CHECKSUM. Update patching for moved files on no longer existing patterns. Do not set MOZ_APP_VENDOR/MOZ_APP_UA_NAME/MOZ_APP_PROFILE, as confvars, which now fails the build. Delete no obsolete variables, or those already set to the correct value in browser/moz.configure. * data/patches/hide-firefox-view-button.patch: Update patch. * data/patches/hide-submit-feedback-menu-item.patch: Likewise. * data/patches/icecat-about-dialog.patch: Likewise. * data/patches/moz-configure-changes.patch: Likewise. Set MOZILLA_OFFICIAL to False by default, which disables telemetry. * tools/process-json-files.py (SearchConfig) (SearchConfigOverrides): Delete classes. (processors): De-register them. * data/patches/icecat-fix-install.patch: New file. --- data/patches/hide-firefox-view-button.patch | 18 +++--- .../hide-submit-feedback-menu-item.patch | 12 ++-- data/patches/icecat-about-dialog.patch | 23 ++++---- data/patches/icecat-fix-install.patch | 14 +++++ data/patches/moz-configure-changes.patch | 33 +++++++++-- makeicecat | 44 ++++++-------- tools/process-json-files.py | 59 +------------------ 7 files changed, 88 insertions(+), 115 deletions(-) create mode 100644 data/patches/icecat-fix-install.patch diff --git a/data/patches/hide-firefox-view-button.patch b/data/patches/hide-firefox-view-button.patch index ef24a34..52bad1c 100644 --- a/data/patches/hide-firefox-view-button.patch +++ b/data/patches/hide-firefox-view-button.patch @@ -1,10 +1,10 @@ ---- a/browser/base/content/navigator-toolbox.inc.xhtml -+++ b/browser/base/content/navigator-toolbox.inc.xhtml -@@ -43,6 +43,7 @@ - oncommand="FirefoxViewHandler.openTab();" - onmousedown="FirefoxViewHandler.openToolbarMouseEvent(event);" - cui-areatype="toolbar" -+ hidden="true" - removable="true"/> +--- a/browser/base/content/navigator-toolbox.inc.xhtml 2025-08-12 02:31:44.000000000 +0900 ++++ b/browser/base/content/navigator-toolbox.inc.xhtml 2025-08-26 21:10:15.709368257 +0900 +@@ -41,6 +41,7 @@ + role="button" + aria-pressed="false" + cui-areatype="toolbar" ++ hidden="true" + removable="true"/> - <tabs id="tabbrowser-tabs" + <tabs id="tabbrowser-tabs" diff --git a/data/patches/hide-submit-feedback-menu-item.patch b/data/patches/hide-submit-feedback-menu-item.patch index 402ba31..5278da7 100644 --- a/data/patches/hide-submit-feedback-menu-item.patch +++ b/data/patches/hide-submit-feedback-menu-item.patch @@ -1,10 +1,10 @@ ---- a/browser/base/content/browser-menubar.inc -+++ b/browser/base/content/browser-menubar.inc -@@ -465,6 +465,7 @@ - hidden="true" - appmenu-data-l10n-id="menu-report-broken-site"/> +--- a/browser/base/content/browser-menubar.inc 2025-08-26 21:16:57.929903122 +0900 ++++ b/browser/base/content/browser-menubar.inc 2025-08-26 21:17:09.257918204 +0900 +@@ -431,6 +431,7 @@ + disabled="true" + appmenu-data-l10n-id="appmenuitem-report-broken-site"/> <menuitem id="feedbackPage" + hidden="true" - oncommand="openFeedbackPage()" data-l10n-id="menu-help-share-ideas" appmenu-data-l10n-id="appmenu-help-share-ideas"/> + <menuitem id="helpSafeMode" diff --git a/data/patches/icecat-about-dialog.patch b/data/patches/icecat-about-dialog.patch index c7e77b0..87dc835 100644 --- a/data/patches/icecat-about-dialog.patch +++ b/data/patches/icecat-about-dialog.patch @@ -1,16 +1,16 @@ ---- a/browser/base/content/aboutDialog.xhtml -+++ b/browser/base/content/aboutDialog.xhtml -@@ -148,7 +148,6 @@ +--- a/browser/base/content/aboutDialog.xhtml 2025-08-26 21:23:08.866394736 +0900 ++++ b/browser/base/content/aboutDialog.xhtml 2025-08-26 21:23:19.986408921 +0900 +@@ -139,7 +139,6 @@ <hbox pack="center"> <label is="text-link" class="bottom-link" useoriginprincipal="true" href="about:license" data-l10n-id="bottomLinks-license"/> - <label is="text-link" class="bottom-link" useoriginprincipal="true" href="about:rights" data-l10n-id="bottomLinks-rights"/> -- <label is="text-link" class="bottom-link" href="https://www.mozilla.org/privacy/?utm_source=firefox-browser&utm_medium=firefox-desktop&utm_campaign=about-dialog" data-l10n-id="bottomLinks-privacy"/> + <label is="text-link" class="bottom-link" href="https://www.mozilla.org/about/legal/terms/firefox/" data-l10n-id="bottom-links-terms"/> +- <label is="text-link" class="bottom-link" href="https://www.mozilla.org/privacy/firefox/?utm_source=firefox-browser&utm_medium=firefox-desktop&utm_campaign=about-dialog" data-l10n-id="bottom-links-privacy"/> </hbox> <description id="trademark" data-l10n-id="trademarkInfo"></description> </vbox> ---- a/browser/base/content/aboutDialog.css -+++ b/browser/base/content/aboutDialog.css -@@ -38,10 +38,9 @@ +--- a/browser/base/content/aboutDialog.css 2025-08-26 21:26:43.618669160 +0900 ++++ b/browser/base/content/aboutDialog.css 2025-08-26 21:31:54.207067616 +0900 +@@ -32,10 +32,9 @@ #rightBox { background-image: url("chrome://branding/content/about-wordmark.svg"); background-repeat: no-repeat; @@ -19,6 +19,9 @@ padding-top: 38px; - margin-top: 20px; + margin-top: 60px; - } - + /* We don't want this box to contribute arbitrarily to the intrinsic size of + * the dialog, so set the width to a reasonable size, but let it flex to take + * all available space. */ +--- a/browser/base/content/aboutDialog.css ++++ b/browser/base/content/aboutDialog.css #rightBox:-moz-locale-dir(rtl) { diff --git a/data/patches/icecat-fix-install.patch b/data/patches/icecat-fix-install.patch new file mode 100644 index 0000000..b62d36f --- /dev/null +++ b/data/patches/icecat-fix-install.patch @@ -0,0 +1,14 @@ +diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in +index 6ebf2f62c477..2ddcef37816c 100644 +--- a/browser/installer/package-manifest.in ++++ b/browser/installer/package-manifest.in +@@ -174,7 +174,9 @@ + @RESPATH@/components/nsUpdateService.manifest + #endif + @RESPATH@/components/ProcessSingleton.manifest ++#ifdef MOZ_SERVICES_SYNC + @RESPATH@/components/SyncComponents.manifest ++#endif + @RESPATH@/components/servicesComponents.manifest + @RESPATH@/components/servicesSettings.manifest + @RESPATH@/components/cryptoComponents.manifest diff --git a/data/patches/moz-configure-changes.patch b/data/patches/moz-configure-changes.patch index 6f0525e..5745b38 100644 --- a/data/patches/moz-configure-changes.patch +++ b/data/patches/moz-configure-changes.patch @@ -1,18 +1,41 @@ +diff --git a/browser/moz.configure b/browser/moz.configure +index e8b401a7dfb2..d5b3117ce3d8 100644 --- a/browser/moz.configure +++ b/browser/moz.configure -@@ -5,11 +5,11 @@ +@@ -5,16 +5,17 @@ # file, You can obtain one at http://mozilla.org/MPL/2.0/. imply_option("MOZ_PLACES", True) -imply_option("MOZ_SERVICES_HEALTHREPORT", True) -+imply_option("MOZ_SERVICES_HEALTHREPORT", False) - imply_option("MOZ_SERVICES_SYNC", True) +-imply_option("MOZ_SERVICES_SYNC", True) -imply_option("MOZ_DEDICATED_PROFILES", True) -imply_option("MOZ_BLOCK_PROFILE_DOWNGRADE", True) -imply_option("MOZ_NORMANDY", True) ++imply_option("MOZ_SERVICES_HEALTHREPORT", False) ++imply_option("MOZ_SERVICES_SYNC", False) +imply_option("MOZ_DEDICATED_PROFILES", False) +imply_option("MOZ_BLOCK_PROFILE_DOWNGRADE", False) +imply_option("MOZ_NORMANDY", False) + imply_option("MOZ_PROFILE_MIGRATOR", True) + + +-imply_option("MOZ_APP_VENDOR", "Mozilla") ++imply_option("MOZ_APP_VENDOR", "GNU") + imply_option("MOZ_APP_ID", "{ec8030f7-c20a-464f-9b0e-13a3a9e97384}") ++imply_option("MOZ_APP_PROFILE", "mozilla/icecat") + # Include the DevTools client, not just the server (which is the default) + imply_option("MOZ_DEVTOOLS", "all") + imply_option("BROWSER_CHROME_URL", "chrome://browser/content/browser.xhtml") +diff --git a/build/moz.configure/init.configure b/build/moz.configure/init.configure +index 193272588caa..da8a729548c8 100644 +--- a/build/moz.configure/init.configure ++++ b/build/moz.configure/init.configure +@@ -991,7 +991,7 @@ set_config("MOZ_BUILD_APP", build_project) + set_define("MOZ_BUILD_APP", build_project) + + +-option(env="MOZILLA_OFFICIAL", help="Build an official release") ++option(env="MOZILLA_OFFICIAL", help="Build an official release", default=False) + - with only_when(target_has_linux_kernel & compile_environment): - option(env="MOZ_NO_PIE_COMPAT", help="Enable non-PIE wrapper") + @depends("MOZILLA_OFFICIAL") diff --git a/makeicecat b/makeicecat index fc0bb76..8601e70 100755 --- a/makeicecat +++ b/makeicecat @@ -21,12 +21,13 @@ # metadata -readonly FFMAJOR=128 -readonly FFMINOR=14 +readonly FFMAJOR=140 +readonly FFMINOR=2 readonly FFSUB=0 readonly FFBUILD=1 readonly GNUVERSION=1 -readonly SOURCEBALL_CHECKSUM='93b9ef6229f41cb22ff109b95bbf61a78395a0fe4b870192eeca22947cb09a53' +# SHA-256 +readonly SOURCEBALL_CHECKSUM='956dce675c3b706d563caf07ed3ca9af632ab830be710dfd4351da78a0a2ef55' readonly SOURCEBALL_SIGNINGKEY='14F26682D0916CDD81E37B6D61B7B526D98F0353' readonly FFVERSION=${FFMAJOR}.${FFMINOR}.${FFSUB} readonly SOURCEBALL=firefox-${FFVERSION}esr.source.tar.xz @@ -41,7 +42,7 @@ readonly LIST_URL=lists.gnu.org/mailman/listinfo/bug-gnuzilla # l10n readonly L10N_URL=https://github.com/mozilla-l10n/firefox-l10n -readonly L10N_REV=fcd0300e8478d1ec4d1c097a073ddb8e1e0351e3 +readonly L10N_REV=4846304555affc92db4c693149c0f1c59afc7828 readonly L10N_CMP_URL=https://github.com/mozilla/compare-locales readonly L10N_CMP_REV=RELEASE_9_0_4 readonly L10N_PREFS_DIR=browser/chrome/browser/preferences @@ -377,7 +378,7 @@ configure() sed '/"datareporting\.healthreport\.uploadEnabled"/s/true/false/' -i modules/libpref/init/all.js # Custom privacy statement link - sed "s|https://www\\.mozilla\\.org/legal/privacy/|https://${LEGALINFO_URL}|" -i ./browser/app/profile/firefox.js ./toolkit/content/aboutRights.xhtml + sed "s|https://www\\.mozilla\\.org/legal/privacy/|https://${LEGALINFO_URL}|" -i ./browser/app/profile/firefox.js # Sanitize lists local plugin_file @@ -393,8 +394,8 @@ configure() # Disable activity-stream anti-features. # These are not condensed into a single sed script so that it # fails on individual commands that didn't change the source - local activity_stream=browser/components/newtab/lib/ActivityStream.sys.mjs - sed '/^const DEFAULT_SITES/,/^])\;/c const DEFAULT_SITES = new Map\([[""]]\);' -i browser/components/newtab/lib/DefaultSites.sys.mjs + local activity_stream=browser/extensions/newtab/lib/ActivityStream.sys.mjs + sed '/^const DEFAULT_SITES/,/^])\;/c const DEFAULT_SITES = new Map\([[""]]\);' -i browser/extensions/newtab/lib/DefaultSites.sys.mjs sed '/"showSponsored"/,/value/s/value: true/value: false/' -i $activity_stream sed '/ "telemetry"/,/value/s/value: true/value: false/' -i $activity_stream sed '/"section\.highlights\.includePocket"/,/value/s/value: true/value: false/' -i $activity_stream @@ -405,11 +406,10 @@ configure() sed '/"telemetry\.structuredIngestion\.endpoint"/,/value/s/value: .*/value: "",/' -i $activity_stream sed '/name: "telemetry"/,/value/s/value: true/value: false/' -i $activity_stream sed '/name: "system\.topstories"/,/},/s/.*!!locales.*/false/' -i $activity_stream - sed 's/Ubuntu, //' -i browser/components/newtab/css/activity-stream*.css - sed '/^]$/d' -i browser/components/newtab/data/content/tippytop/top_sites.json - sed 's/}$/},/' -i browser/components/newtab/data/content/tippytop/top_sites.json - cat << EOF >> browser/components/newtab/data/content/tippytop/top_sites.json + sed '/^]$/d' -i browser/components/topsites/content/tippytop/top_sites.json + sed 's/}$/},/' -i browser/components/topsites/content/tippytop/top_sites.json + cat << EOF >> browser/components/topsites/content/tippytop/top_sites.json { "domains": ["gnu.org"], "image_url": "images/gnu.png", @@ -505,8 +505,8 @@ EOF } EOF - cp "${DATADIR}"/newtab/*.ico browser/components/newtab/data/content/tippytop/favicons/ - cp "${DATADIR}"/newtab/*.png browser/components/newtab/data/content/tippytop/images/ + cp "${DATADIR}"/newtab/*.ico browser/components/topsites/content/tippytop/favicons/ + cp "${DATADIR}"/newtab/*.png browser/components/topsites/content/tippytop/images/ # IceCat menu l10n /bin/sed '/appmenuitem-settings/,+1s/\(.*.label = \)\(.*\)/\1\2\nappmenuitem-icecat-settings =\n\1IceCat \2/' -i ./l10n/*/browser/browser/appmenu.ftl ./browser/locales/en-US/browser/appmenu.ftl @@ -541,7 +541,6 @@ configure_mobile() cat << EOF >> mobile/android/confvars.sh # IceCat settings -MOZ_APP_VENDOR=GNU MOZ_APP_VERSION=${FFVERSION} MOZ_PAY=0 MOZ_SERVICES_HEALTHREPORT=0 @@ -713,27 +712,18 @@ s/OpenSource/Free Software/g; # Ditto for browser/modules/moz.build sort_inner_list_in_file "EXTRA_JS_MODULES += [" "]" browser/modules/moz.build + # Adjust the capitalization of IceCat to match the expected symbol + # names in build-time generated source files like TelemetryEventEnums.h. + sed 's/IceCatview/Icecatview/g' -i browser/components/icecatview/metrics.yaml + # Copy js settings cat "${DATADIR}"/settings.js >> browser/app/profile/icecat.js cat << EOF >> browser/confvars.sh # IceCat settings MOZ_APP_BASENAME=IceCat -MOZ_APP_UA_NAME=Firefox -MOZ_APP_VENDOR=GNU MOZ_APP_VERSION=${FFVERSION} -MOZ_APP_PROFILE=mozilla/icecat -MOZ_PAY=0 -MOZ_SERVICES_HEALTHREPORT=0 -MOZ_SERVICES_HEALTHREPORTER=0 -MOZ_SERVICES_FXACCOUNTS=0 -MOZ_SERVICES_METRICS=0 MOZ_DATA_REPORTING=0 -MOZ_NORMANDY=0 -MOZ_SERVICES_SYNC=0 -MOZ_DEVICES=0 -MOZ_ANDROID_GOOGLE_PLAY_SERVICES=0 -MOZ_ADDON_SIGNING=0 EOF } diff --git a/tools/process-json-files.py b/tools/process-json-files.py index d449057..2407fa9 100644 --- a/tools/process-json-files.py +++ b/tools/process-json-files.py @@ -148,48 +148,6 @@ class Changes(RemoteSettings): return File(cls.OUTPUT_PATH, changes) -class SearchConfig(RemoteSettings): - JSON_PATHS = ( - RemoteSettings.DUMPS_PATH_ABSOLUTE / - 'main/search-config.json', - ) - SCHEMA_PATH = arguments.MAIN_PATH / \ - 'toolkit/components/search/schema/search-config-schema.json' - OUTPUT_PATH = JSON_PATHS[0] - - _DUCKDUCKGO_SEARCH_ENGINE_ID = 'ddg <at> search.mozilla.org' - - @classmethod - def should_drop_record(cls, search_engine): - return search_engine['webExtension']['id'] not in ( - cls._DUCKDUCKGO_SEARCH_ENGINE_ID, 'wikipedia <at> search.mozilla.org') - - @classmethod - def process_record(cls, search_engine): - [search_engine.pop(key, None) - for key in ['extraParams', 'telemetryId']] - - general_specifier = {} - for specifier in search_engine['appliesTo'].copy(): - if 'application' in specifier: - if 'distributions' in specifier['application']: - search_engine['appliesTo'].remove(specifier) - continue - specifier['application'].pop('extraParams', None) - - if 'included' in specifier and 'everywhere' in specifier[ - 'included'] and specifier['included']['everywhere']: - general_specifier = specifier - - if not general_specifier: - general_specifier = {'included': {'everywhere': True}} - search_engine['appliesTo'].insert(0, general_specifier) - if search_engine['webExtension']['id'] == cls._DUCKDUCKGO_SEARCH_ENGINE_ID: - general_specifier['default'] = 'yes' - - return search_engine - - class SearchConfigV2(RemoteSettings): JSON_PATHS = ( RemoteSettings.DUMPS_PATH_ABSOLUTE / @@ -224,20 +182,6 @@ class SearchConfigV2(RemoteSettings): return record -class SearchConfigOverrides(RemoteSettings): - JSON_PATHS = ( - RemoteSettings.DUMPS_PATH_ABSOLUTE / - 'main/search-config-overrides.json', - ) - SCHEMA_PATH = arguments.MAIN_PATH / \ - 'toolkit/components/search/schema/search-config-overrides-schema.json' - OUTPUT_PATH = JSON_PATHS[0] - - @classmethod - def should_drop_record(cls, record): - return True - - class SearchConfigOverridesV2(RemoteSettings): JSON_PATHS = ( RemoteSettings.DUMPS_PATH_ABSOLUTE / @@ -295,8 +239,7 @@ class TopSites(RemoteSettings): # To reflect the latest timestamps, Changes class should always come after # all other RemoteSettings subclasses -processors = (SearchConfig, SearchConfigOverrides, - SearchConfigV2, SearchConfigOverridesV2, +processors = (SearchConfigV2, SearchConfigOverridesV2, Changes) for processor in processors: base-commit: ba161be3de71bb556be951ac4dbb81c807f68770 -- 2.51.0
bug-gnuzilla <at> gnu.org
:bug#79355
; Package gnuzilla
.
(Mon, 01 Sep 2025 02:25:01 GMT) Full text and rfc822 format available.Message #8 received at 79355 <at> debbugs.gnu.org (full text, mbox):
From: Maxim Cournoyer <maxim <at> guixotic.coop> To: 79355 <at> debbugs.gnu.org Cc: Maxim Cournoyer <maxim <at> guixotic.coop> Subject: [PATCH v2] Update to 140.2.0-1. Date: Mon, 1 Sep 2025 11:23:58 +0900
* makeicecat: Update FFMINOR and SOURCEBALL_CHECKSUM. Update patching for moved files on no longer existing patterns. Do not set MOZ_APP_VENDOR/MOZ_APP_UA_NAME/MOZ_APP_PROFILE, as confvars, which now fails the build. Delete no obsolete variables, or those already set to the correct value in browser/moz.configure. Do not patch (and break) translation data. * data/patches/hide-firefox-view-button.patch: Update patch. * data/patches/hide-submit-feedback-menu-item.patch: Likewise. * data/patches/icecat-about-dialog.patch: Likewise. * data/patches/moz-configure-changes.patch: Likewise. Set MOZILLA_OFFICIAL to False by default, which disables telemetry. * tools/process-json-files.py (SearchConfig) (SearchConfigOverrides): Delete classes. (processors): De-register them. * data/patches/icecat-fix-install.patch: New file. --- data/patches/hide-firefox-view-button.patch | 18 +++--- .../hide-submit-feedback-menu-item.patch | 12 ++-- data/patches/icecat-about-dialog.patch | 23 ++++---- data/patches/icecat-fix-install.patch | 14 +++++ data/patches/moz-configure-changes.patch | 33 +++++++++-- makeicecat | 53 ++++++----------- tools/process-json-files.py | 59 +------------------ 7 files changed, 88 insertions(+), 124 deletions(-) create mode 100644 data/patches/icecat-fix-install.patch diff --git a/data/patches/hide-firefox-view-button.patch b/data/patches/hide-firefox-view-button.patch index ef24a34..52bad1c 100644 --- a/data/patches/hide-firefox-view-button.patch +++ b/data/patches/hide-firefox-view-button.patch @@ -1,10 +1,10 @@ ---- a/browser/base/content/navigator-toolbox.inc.xhtml -+++ b/browser/base/content/navigator-toolbox.inc.xhtml -@@ -43,6 +43,7 @@ - oncommand="FirefoxViewHandler.openTab();" - onmousedown="FirefoxViewHandler.openToolbarMouseEvent(event);" - cui-areatype="toolbar" -+ hidden="true" - removable="true"/> +--- a/browser/base/content/navigator-toolbox.inc.xhtml 2025-08-12 02:31:44.000000000 +0900 ++++ b/browser/base/content/navigator-toolbox.inc.xhtml 2025-08-26 21:10:15.709368257 +0900 +@@ -41,6 +41,7 @@ + role="button" + aria-pressed="false" + cui-areatype="toolbar" ++ hidden="true" + removable="true"/> - <tabs id="tabbrowser-tabs" + <tabs id="tabbrowser-tabs" diff --git a/data/patches/hide-submit-feedback-menu-item.patch b/data/patches/hide-submit-feedback-menu-item.patch index 402ba31..5278da7 100644 --- a/data/patches/hide-submit-feedback-menu-item.patch +++ b/data/patches/hide-submit-feedback-menu-item.patch @@ -1,10 +1,10 @@ ---- a/browser/base/content/browser-menubar.inc -+++ b/browser/base/content/browser-menubar.inc -@@ -465,6 +465,7 @@ - hidden="true" - appmenu-data-l10n-id="menu-report-broken-site"/> +--- a/browser/base/content/browser-menubar.inc 2025-08-26 21:16:57.929903122 +0900 ++++ b/browser/base/content/browser-menubar.inc 2025-08-26 21:17:09.257918204 +0900 +@@ -431,6 +431,7 @@ + disabled="true" + appmenu-data-l10n-id="appmenuitem-report-broken-site"/> <menuitem id="feedbackPage" + hidden="true" - oncommand="openFeedbackPage()" data-l10n-id="menu-help-share-ideas" appmenu-data-l10n-id="appmenu-help-share-ideas"/> + <menuitem id="helpSafeMode" diff --git a/data/patches/icecat-about-dialog.patch b/data/patches/icecat-about-dialog.patch index c7e77b0..87dc835 100644 --- a/data/patches/icecat-about-dialog.patch +++ b/data/patches/icecat-about-dialog.patch @@ -1,16 +1,16 @@ ---- a/browser/base/content/aboutDialog.xhtml -+++ b/browser/base/content/aboutDialog.xhtml -@@ -148,7 +148,6 @@ +--- a/browser/base/content/aboutDialog.xhtml 2025-08-26 21:23:08.866394736 +0900 ++++ b/browser/base/content/aboutDialog.xhtml 2025-08-26 21:23:19.986408921 +0900 +@@ -139,7 +139,6 @@ <hbox pack="center"> <label is="text-link" class="bottom-link" useoriginprincipal="true" href="about:license" data-l10n-id="bottomLinks-license"/> - <label is="text-link" class="bottom-link" useoriginprincipal="true" href="about:rights" data-l10n-id="bottomLinks-rights"/> -- <label is="text-link" class="bottom-link" href="https://www.mozilla.org/privacy/?utm_source=firefox-browser&utm_medium=firefox-desktop&utm_campaign=about-dialog" data-l10n-id="bottomLinks-privacy"/> + <label is="text-link" class="bottom-link" href="https://www.mozilla.org/about/legal/terms/firefox/" data-l10n-id="bottom-links-terms"/> +- <label is="text-link" class="bottom-link" href="https://www.mozilla.org/privacy/firefox/?utm_source=firefox-browser&utm_medium=firefox-desktop&utm_campaign=about-dialog" data-l10n-id="bottom-links-privacy"/> </hbox> <description id="trademark" data-l10n-id="trademarkInfo"></description> </vbox> ---- a/browser/base/content/aboutDialog.css -+++ b/browser/base/content/aboutDialog.css -@@ -38,10 +38,9 @@ +--- a/browser/base/content/aboutDialog.css 2025-08-26 21:26:43.618669160 +0900 ++++ b/browser/base/content/aboutDialog.css 2025-08-26 21:31:54.207067616 +0900 +@@ -32,10 +32,9 @@ #rightBox { background-image: url("chrome://branding/content/about-wordmark.svg"); background-repeat: no-repeat; @@ -19,6 +19,9 @@ padding-top: 38px; - margin-top: 20px; + margin-top: 60px; - } - + /* We don't want this box to contribute arbitrarily to the intrinsic size of + * the dialog, so set the width to a reasonable size, but let it flex to take + * all available space. */ +--- a/browser/base/content/aboutDialog.css ++++ b/browser/base/content/aboutDialog.css #rightBox:-moz-locale-dir(rtl) { diff --git a/data/patches/icecat-fix-install.patch b/data/patches/icecat-fix-install.patch new file mode 100644 index 0000000..b62d36f --- /dev/null +++ b/data/patches/icecat-fix-install.patch @@ -0,0 +1,14 @@ +diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in +index 6ebf2f62c477..2ddcef37816c 100644 +--- a/browser/installer/package-manifest.in ++++ b/browser/installer/package-manifest.in +@@ -174,7 +174,9 @@ + @RESPATH@/components/nsUpdateService.manifest + #endif + @RESPATH@/components/ProcessSingleton.manifest ++#ifdef MOZ_SERVICES_SYNC + @RESPATH@/components/SyncComponents.manifest ++#endif + @RESPATH@/components/servicesComponents.manifest + @RESPATH@/components/servicesSettings.manifest + @RESPATH@/components/cryptoComponents.manifest diff --git a/data/patches/moz-configure-changes.patch b/data/patches/moz-configure-changes.patch index 6f0525e..5745b38 100644 --- a/data/patches/moz-configure-changes.patch +++ b/data/patches/moz-configure-changes.patch @@ -1,18 +1,41 @@ +diff --git a/browser/moz.configure b/browser/moz.configure +index e8b401a7dfb2..d5b3117ce3d8 100644 --- a/browser/moz.configure +++ b/browser/moz.configure -@@ -5,11 +5,11 @@ +@@ -5,16 +5,17 @@ # file, You can obtain one at http://mozilla.org/MPL/2.0/. imply_option("MOZ_PLACES", True) -imply_option("MOZ_SERVICES_HEALTHREPORT", True) -+imply_option("MOZ_SERVICES_HEALTHREPORT", False) - imply_option("MOZ_SERVICES_SYNC", True) +-imply_option("MOZ_SERVICES_SYNC", True) -imply_option("MOZ_DEDICATED_PROFILES", True) -imply_option("MOZ_BLOCK_PROFILE_DOWNGRADE", True) -imply_option("MOZ_NORMANDY", True) ++imply_option("MOZ_SERVICES_HEALTHREPORT", False) ++imply_option("MOZ_SERVICES_SYNC", False) +imply_option("MOZ_DEDICATED_PROFILES", False) +imply_option("MOZ_BLOCK_PROFILE_DOWNGRADE", False) +imply_option("MOZ_NORMANDY", False) + imply_option("MOZ_PROFILE_MIGRATOR", True) + + +-imply_option("MOZ_APP_VENDOR", "Mozilla") ++imply_option("MOZ_APP_VENDOR", "GNU") + imply_option("MOZ_APP_ID", "{ec8030f7-c20a-464f-9b0e-13a3a9e97384}") ++imply_option("MOZ_APP_PROFILE", "mozilla/icecat") + # Include the DevTools client, not just the server (which is the default) + imply_option("MOZ_DEVTOOLS", "all") + imply_option("BROWSER_CHROME_URL", "chrome://browser/content/browser.xhtml") +diff --git a/build/moz.configure/init.configure b/build/moz.configure/init.configure +index 193272588caa..da8a729548c8 100644 +--- a/build/moz.configure/init.configure ++++ b/build/moz.configure/init.configure +@@ -991,7 +991,7 @@ set_config("MOZ_BUILD_APP", build_project) + set_define("MOZ_BUILD_APP", build_project) + + +-option(env="MOZILLA_OFFICIAL", help="Build an official release") ++option(env="MOZILLA_OFFICIAL", help="Build an official release", default=False) + - with only_when(target_has_linux_kernel & compile_environment): - option(env="MOZ_NO_PIE_COMPAT", help="Enable non-PIE wrapper") + @depends("MOZILLA_OFFICIAL") diff --git a/makeicecat b/makeicecat index fc0bb76..85ca5c6 100755 --- a/makeicecat +++ b/makeicecat @@ -21,12 +21,13 @@ # metadata -readonly FFMAJOR=128 -readonly FFMINOR=14 +readonly FFMAJOR=140 +readonly FFMINOR=2 readonly FFSUB=0 readonly FFBUILD=1 readonly GNUVERSION=1 -readonly SOURCEBALL_CHECKSUM='93b9ef6229f41cb22ff109b95bbf61a78395a0fe4b870192eeca22947cb09a53' +# SHA-256 +readonly SOURCEBALL_CHECKSUM='956dce675c3b706d563caf07ed3ca9af632ab830be710dfd4351da78a0a2ef55' readonly SOURCEBALL_SIGNINGKEY='14F26682D0916CDD81E37B6D61B7B526D98F0353' readonly FFVERSION=${FFMAJOR}.${FFMINOR}.${FFSUB} readonly SOURCEBALL=firefox-${FFVERSION}esr.source.tar.xz @@ -41,7 +42,7 @@ readonly LIST_URL=lists.gnu.org/mailman/listinfo/bug-gnuzilla # l10n readonly L10N_URL=https://github.com/mozilla-l10n/firefox-l10n -readonly L10N_REV=fcd0300e8478d1ec4d1c097a073ddb8e1e0351e3 +readonly L10N_REV=4846304555affc92db4c693149c0f1c59afc7828 readonly L10N_CMP_URL=https://github.com/mozilla/compare-locales readonly L10N_CMP_REV=RELEASE_9_0_4 readonly L10N_PREFS_DIR=browser/chrome/browser/preferences @@ -377,7 +378,7 @@ configure() sed '/"datareporting\.healthreport\.uploadEnabled"/s/true/false/' -i modules/libpref/init/all.js # Custom privacy statement link - sed "s|https://www\\.mozilla\\.org/legal/privacy/|https://${LEGALINFO_URL}|" -i ./browser/app/profile/firefox.js ./toolkit/content/aboutRights.xhtml + sed "s|https://www\\.mozilla\\.org/legal/privacy/|https://${LEGALINFO_URL}|" -i ./browser/app/profile/firefox.js # Sanitize lists local plugin_file @@ -393,8 +394,8 @@ configure() # Disable activity-stream anti-features. # These are not condensed into a single sed script so that it # fails on individual commands that didn't change the source - local activity_stream=browser/components/newtab/lib/ActivityStream.sys.mjs - sed '/^const DEFAULT_SITES/,/^])\;/c const DEFAULT_SITES = new Map\([[""]]\);' -i browser/components/newtab/lib/DefaultSites.sys.mjs + local activity_stream=browser/extensions/newtab/lib/ActivityStream.sys.mjs + sed '/^const DEFAULT_SITES/,/^])\;/c const DEFAULT_SITES = new Map\([[""]]\);' -i browser/extensions/newtab/lib/DefaultSites.sys.mjs sed '/"showSponsored"/,/value/s/value: true/value: false/' -i $activity_stream sed '/ "telemetry"/,/value/s/value: true/value: false/' -i $activity_stream sed '/"section\.highlights\.includePocket"/,/value/s/value: true/value: false/' -i $activity_stream @@ -405,11 +406,10 @@ configure() sed '/"telemetry\.structuredIngestion\.endpoint"/,/value/s/value: .*/value: "",/' -i $activity_stream sed '/name: "telemetry"/,/value/s/value: true/value: false/' -i $activity_stream sed '/name: "system\.topstories"/,/},/s/.*!!locales.*/false/' -i $activity_stream - sed 's/Ubuntu, //' -i browser/components/newtab/css/activity-stream*.css - sed '/^]$/d' -i browser/components/newtab/data/content/tippytop/top_sites.json - sed 's/}$/},/' -i browser/components/newtab/data/content/tippytop/top_sites.json - cat << EOF >> browser/components/newtab/data/content/tippytop/top_sites.json + sed '/^]$/d' -i browser/components/topsites/content/tippytop/top_sites.json + sed 's/}$/},/' -i browser/components/topsites/content/tippytop/top_sites.json + cat << EOF >> browser/components/topsites/content/tippytop/top_sites.json { "domains": ["gnu.org"], "image_url": "images/gnu.png", @@ -505,8 +505,8 @@ EOF } EOF - cp "${DATADIR}"/newtab/*.ico browser/components/newtab/data/content/tippytop/favicons/ - cp "${DATADIR}"/newtab/*.png browser/components/newtab/data/content/tippytop/images/ + cp "${DATADIR}"/newtab/*.ico browser/components/topsites/content/tippytop/favicons/ + cp "${DATADIR}"/newtab/*.png browser/components/topsites/content/tippytop/images/ # IceCat menu l10n /bin/sed '/appmenuitem-settings/,+1s/\(.*.label = \)\(.*\)/\1\2\nappmenuitem-icecat-settings =\n\1IceCat \2/' -i ./l10n/*/browser/browser/appmenu.ftl ./browser/locales/en-US/browser/appmenu.ftl @@ -541,7 +541,6 @@ configure_mobile() cat << EOF >> mobile/android/confvars.sh # IceCat settings -MOZ_APP_VENDOR=GNU MOZ_APP_VERSION=${FFVERSION} MOZ_PAY=0 MOZ_SERVICES_HEALTHREPORT=0 @@ -606,15 +605,6 @@ apply_branding() # Custom legal about pages find l10n -wholename '*/brand.ftl' | xargs /bin/sed 's/^trademarkInfo = .*/trademarkInfo = The IceCat logo is Copyright 2008-2015 Free Software Foundation, released under the terms of the GNU Lesser General Public License, version 3 or any later version./' -i - local string - for string in rights-intro-point-2 rights-intro-point-3 rights-intro-point-4 rights-intro-point-5 rights-intro-point-6 rights-webservices rights-safebrowsing - do - find -name aboutRights.ftl | xargs sed -i "s/^${string}.*/${string} = /" - done - for string in helpus community-2 community-exp - do - find -wholename '*/browser/aboutDialog.ftl' | xargs sed -i "s/^${string}.*/${string} = /" - done cp "${DATADIR}"/aboutRights.xhtml toolkit/content/aboutRights.xhtml cp "${DATADIR}"/aboutRights.xhtml toolkit/content/aboutRights-unbranded.xhtml sed -i 's|<a href="http://www\.mozilla\.org/">Mozilla Project</a>|<a href="http://www.gnu.org/">GNU Project</a>|g' browser/base/content/overrides/app-license.html @@ -713,27 +703,18 @@ s/OpenSource/Free Software/g; # Ditto for browser/modules/moz.build sort_inner_list_in_file "EXTRA_JS_MODULES += [" "]" browser/modules/moz.build + # Adjust the capitalization of IceCat to match the expected symbol + # names in build-time generated source files like TelemetryEventEnums.h. + sed 's/IceCatview/Icecatview/g' -i browser/components/icecatview/metrics.yaml + # Copy js settings cat "${DATADIR}"/settings.js >> browser/app/profile/icecat.js cat << EOF >> browser/confvars.sh # IceCat settings MOZ_APP_BASENAME=IceCat -MOZ_APP_UA_NAME=Firefox -MOZ_APP_VENDOR=GNU MOZ_APP_VERSION=${FFVERSION} -MOZ_APP_PROFILE=mozilla/icecat -MOZ_PAY=0 -MOZ_SERVICES_HEALTHREPORT=0 -MOZ_SERVICES_HEALTHREPORTER=0 -MOZ_SERVICES_FXACCOUNTS=0 -MOZ_SERVICES_METRICS=0 MOZ_DATA_REPORTING=0 -MOZ_NORMANDY=0 -MOZ_SERVICES_SYNC=0 -MOZ_DEVICES=0 -MOZ_ANDROID_GOOGLE_PLAY_SERVICES=0 -MOZ_ADDON_SIGNING=0 EOF } diff --git a/tools/process-json-files.py b/tools/process-json-files.py index d449057..2407fa9 100644 --- a/tools/process-json-files.py +++ b/tools/process-json-files.py @@ -148,48 +148,6 @@ class Changes(RemoteSettings): return File(cls.OUTPUT_PATH, changes) -class SearchConfig(RemoteSettings): - JSON_PATHS = ( - RemoteSettings.DUMPS_PATH_ABSOLUTE / - 'main/search-config.json', - ) - SCHEMA_PATH = arguments.MAIN_PATH / \ - 'toolkit/components/search/schema/search-config-schema.json' - OUTPUT_PATH = JSON_PATHS[0] - - _DUCKDUCKGO_SEARCH_ENGINE_ID = 'ddg <at> search.mozilla.org' - - @classmethod - def should_drop_record(cls, search_engine): - return search_engine['webExtension']['id'] not in ( - cls._DUCKDUCKGO_SEARCH_ENGINE_ID, 'wikipedia <at> search.mozilla.org') - - @classmethod - def process_record(cls, search_engine): - [search_engine.pop(key, None) - for key in ['extraParams', 'telemetryId']] - - general_specifier = {} - for specifier in search_engine['appliesTo'].copy(): - if 'application' in specifier: - if 'distributions' in specifier['application']: - search_engine['appliesTo'].remove(specifier) - continue - specifier['application'].pop('extraParams', None) - - if 'included' in specifier and 'everywhere' in specifier[ - 'included'] and specifier['included']['everywhere']: - general_specifier = specifier - - if not general_specifier: - general_specifier = {'included': {'everywhere': True}} - search_engine['appliesTo'].insert(0, general_specifier) - if search_engine['webExtension']['id'] == cls._DUCKDUCKGO_SEARCH_ENGINE_ID: - general_specifier['default'] = 'yes' - - return search_engine - - class SearchConfigV2(RemoteSettings): JSON_PATHS = ( RemoteSettings.DUMPS_PATH_ABSOLUTE / @@ -224,20 +182,6 @@ class SearchConfigV2(RemoteSettings): return record -class SearchConfigOverrides(RemoteSettings): - JSON_PATHS = ( - RemoteSettings.DUMPS_PATH_ABSOLUTE / - 'main/search-config-overrides.json', - ) - SCHEMA_PATH = arguments.MAIN_PATH / \ - 'toolkit/components/search/schema/search-config-overrides-schema.json' - OUTPUT_PATH = JSON_PATHS[0] - - @classmethod - def should_drop_record(cls, record): - return True - - class SearchConfigOverridesV2(RemoteSettings): JSON_PATHS = ( RemoteSettings.DUMPS_PATH_ABSOLUTE / @@ -295,8 +239,7 @@ class TopSites(RemoteSettings): # To reflect the latest timestamps, Changes class should always come after # all other RemoteSettings subclasses -processors = (SearchConfig, SearchConfigOverrides, - SearchConfigV2, SearchConfigOverridesV2, +processors = (SearchConfigV2, SearchConfigOverridesV2, Changes) for processor in processors: -- 2.51.0
bug-gnuzilla <at> gnu.org
:bug#79355
; Package gnuzilla
.
(Tue, 02 Sep 2025 13:48:02 GMT) Full text and rfc822 format available.Message #11 received at 79355 <at> debbugs.gnu.org (full text, mbox):
From: Maxim Cournoyer <maxim <at> guixotic.coop> To: 79355 <at> debbugs.gnu.org Cc: Maxim Cournoyer <maxim <at> guixotic.coop> Subject: [PATCH v3] Update to 140.2.0-1. Date: Tue, 2 Sep 2025 22:46:06 +0900
* makeicecat: Update FFMINOR and SOURCEBALL_CHECKSUM. Update patching for moved files on no longer existing patterns. Do not set MOZ_APP_VENDOR/MOZ_APP_UA_NAME/MOZ_APP_PROFILE, as confvars, which now fails the build. Delete no obsolete variables, or those already set to the correct value in browser/moz.configure. Do not patch (and break) translation data. * data/patches/hide-firefox-view-button.patch: Update patch. * data/patches/hide-submit-feedback-menu-item.patch: Likewise. * data/patches/icecat-about-dialog.patch: Likewise. * data/patches/moz-configure-changes.patch: Likewise. Set MOZILLA_OFFICIAL to False by default, which disables telemetry. * tools/process-json-files.py (SearchConfig) (SearchConfigOverrides): Delete classes. (processors): De-register them. * data/patches/icecat-fix-install.patch: New file. --- Successfully built and ran icecat & icedove 140.2 with this. data/patches/hide-firefox-view-button.patch | 18 +++--- .../hide-submit-feedback-menu-item.patch | 12 ++-- data/patches/icecat-about-dialog.patch | 23 ++++--- data/patches/icecat-fix-install.patch | 14 +++++ data/patches/moz-configure-changes.patch | 33 ++++++++-- makeicecat | 63 +++++++------------ tools/process-json-files.py | 59 +---------------- 7 files changed, 95 insertions(+), 127 deletions(-) create mode 100644 data/patches/icecat-fix-install.patch diff --git a/data/patches/hide-firefox-view-button.patch b/data/patches/hide-firefox-view-button.patch index ef24a34..52bad1c 100644 --- a/data/patches/hide-firefox-view-button.patch +++ b/data/patches/hide-firefox-view-button.patch @@ -1,10 +1,10 @@ ---- a/browser/base/content/navigator-toolbox.inc.xhtml -+++ b/browser/base/content/navigator-toolbox.inc.xhtml -@@ -43,6 +43,7 @@ - oncommand="FirefoxViewHandler.openTab();" - onmousedown="FirefoxViewHandler.openToolbarMouseEvent(event);" - cui-areatype="toolbar" -+ hidden="true" - removable="true"/> +--- a/browser/base/content/navigator-toolbox.inc.xhtml 2025-08-12 02:31:44.000000000 +0900 ++++ b/browser/base/content/navigator-toolbox.inc.xhtml 2025-08-26 21:10:15.709368257 +0900 +@@ -41,6 +41,7 @@ + role="button" + aria-pressed="false" + cui-areatype="toolbar" ++ hidden="true" + removable="true"/> - <tabs id="tabbrowser-tabs" + <tabs id="tabbrowser-tabs" diff --git a/data/patches/hide-submit-feedback-menu-item.patch b/data/patches/hide-submit-feedback-menu-item.patch index 402ba31..5278da7 100644 --- a/data/patches/hide-submit-feedback-menu-item.patch +++ b/data/patches/hide-submit-feedback-menu-item.patch @@ -1,10 +1,10 @@ ---- a/browser/base/content/browser-menubar.inc -+++ b/browser/base/content/browser-menubar.inc -@@ -465,6 +465,7 @@ - hidden="true" - appmenu-data-l10n-id="menu-report-broken-site"/> +--- a/browser/base/content/browser-menubar.inc 2025-08-26 21:16:57.929903122 +0900 ++++ b/browser/base/content/browser-menubar.inc 2025-08-26 21:17:09.257918204 +0900 +@@ -431,6 +431,7 @@ + disabled="true" + appmenu-data-l10n-id="appmenuitem-report-broken-site"/> <menuitem id="feedbackPage" + hidden="true" - oncommand="openFeedbackPage()" data-l10n-id="menu-help-share-ideas" appmenu-data-l10n-id="appmenu-help-share-ideas"/> + <menuitem id="helpSafeMode" diff --git a/data/patches/icecat-about-dialog.patch b/data/patches/icecat-about-dialog.patch index c7e77b0..87dc835 100644 --- a/data/patches/icecat-about-dialog.patch +++ b/data/patches/icecat-about-dialog.patch @@ -1,16 +1,16 @@ ---- a/browser/base/content/aboutDialog.xhtml -+++ b/browser/base/content/aboutDialog.xhtml -@@ -148,7 +148,6 @@ +--- a/browser/base/content/aboutDialog.xhtml 2025-08-26 21:23:08.866394736 +0900 ++++ b/browser/base/content/aboutDialog.xhtml 2025-08-26 21:23:19.986408921 +0900 +@@ -139,7 +139,6 @@ <hbox pack="center"> <label is="text-link" class="bottom-link" useoriginprincipal="true" href="about:license" data-l10n-id="bottomLinks-license"/> - <label is="text-link" class="bottom-link" useoriginprincipal="true" href="about:rights" data-l10n-id="bottomLinks-rights"/> -- <label is="text-link" class="bottom-link" href="https://www.mozilla.org/privacy/?utm_source=firefox-browser&utm_medium=firefox-desktop&utm_campaign=about-dialog" data-l10n-id="bottomLinks-privacy"/> + <label is="text-link" class="bottom-link" href="https://www.mozilla.org/about/legal/terms/firefox/" data-l10n-id="bottom-links-terms"/> +- <label is="text-link" class="bottom-link" href="https://www.mozilla.org/privacy/firefox/?utm_source=firefox-browser&utm_medium=firefox-desktop&utm_campaign=about-dialog" data-l10n-id="bottom-links-privacy"/> </hbox> <description id="trademark" data-l10n-id="trademarkInfo"></description> </vbox> ---- a/browser/base/content/aboutDialog.css -+++ b/browser/base/content/aboutDialog.css -@@ -38,10 +38,9 @@ +--- a/browser/base/content/aboutDialog.css 2025-08-26 21:26:43.618669160 +0900 ++++ b/browser/base/content/aboutDialog.css 2025-08-26 21:31:54.207067616 +0900 +@@ -32,10 +32,9 @@ #rightBox { background-image: url("chrome://branding/content/about-wordmark.svg"); background-repeat: no-repeat; @@ -19,6 +19,9 @@ padding-top: 38px; - margin-top: 20px; + margin-top: 60px; - } - + /* We don't want this box to contribute arbitrarily to the intrinsic size of + * the dialog, so set the width to a reasonable size, but let it flex to take + * all available space. */ +--- a/browser/base/content/aboutDialog.css ++++ b/browser/base/content/aboutDialog.css #rightBox:-moz-locale-dir(rtl) { diff --git a/data/patches/icecat-fix-install.patch b/data/patches/icecat-fix-install.patch new file mode 100644 index 0000000..b62d36f --- /dev/null +++ b/data/patches/icecat-fix-install.patch @@ -0,0 +1,14 @@ +diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in +index 6ebf2f62c477..2ddcef37816c 100644 +--- a/browser/installer/package-manifest.in ++++ b/browser/installer/package-manifest.in +@@ -174,7 +174,9 @@ + @RESPATH@/components/nsUpdateService.manifest + #endif + @RESPATH@/components/ProcessSingleton.manifest ++#ifdef MOZ_SERVICES_SYNC + @RESPATH@/components/SyncComponents.manifest ++#endif + @RESPATH@/components/servicesComponents.manifest + @RESPATH@/components/servicesSettings.manifest + @RESPATH@/components/cryptoComponents.manifest diff --git a/data/patches/moz-configure-changes.patch b/data/patches/moz-configure-changes.patch index 6f0525e..5745b38 100644 --- a/data/patches/moz-configure-changes.patch +++ b/data/patches/moz-configure-changes.patch @@ -1,18 +1,41 @@ +diff --git a/browser/moz.configure b/browser/moz.configure +index e8b401a7dfb2..d5b3117ce3d8 100644 --- a/browser/moz.configure +++ b/browser/moz.configure -@@ -5,11 +5,11 @@ +@@ -5,16 +5,17 @@ # file, You can obtain one at http://mozilla.org/MPL/2.0/. imply_option("MOZ_PLACES", True) -imply_option("MOZ_SERVICES_HEALTHREPORT", True) -+imply_option("MOZ_SERVICES_HEALTHREPORT", False) - imply_option("MOZ_SERVICES_SYNC", True) +-imply_option("MOZ_SERVICES_SYNC", True) -imply_option("MOZ_DEDICATED_PROFILES", True) -imply_option("MOZ_BLOCK_PROFILE_DOWNGRADE", True) -imply_option("MOZ_NORMANDY", True) ++imply_option("MOZ_SERVICES_HEALTHREPORT", False) ++imply_option("MOZ_SERVICES_SYNC", False) +imply_option("MOZ_DEDICATED_PROFILES", False) +imply_option("MOZ_BLOCK_PROFILE_DOWNGRADE", False) +imply_option("MOZ_NORMANDY", False) + imply_option("MOZ_PROFILE_MIGRATOR", True) + + +-imply_option("MOZ_APP_VENDOR", "Mozilla") ++imply_option("MOZ_APP_VENDOR", "GNU") + imply_option("MOZ_APP_ID", "{ec8030f7-c20a-464f-9b0e-13a3a9e97384}") ++imply_option("MOZ_APP_PROFILE", "mozilla/icecat") + # Include the DevTools client, not just the server (which is the default) + imply_option("MOZ_DEVTOOLS", "all") + imply_option("BROWSER_CHROME_URL", "chrome://browser/content/browser.xhtml") +diff --git a/build/moz.configure/init.configure b/build/moz.configure/init.configure +index 193272588caa..da8a729548c8 100644 +--- a/build/moz.configure/init.configure ++++ b/build/moz.configure/init.configure +@@ -991,7 +991,7 @@ set_config("MOZ_BUILD_APP", build_project) + set_define("MOZ_BUILD_APP", build_project) + + +-option(env="MOZILLA_OFFICIAL", help="Build an official release") ++option(env="MOZILLA_OFFICIAL", help="Build an official release", default=False) + - with only_when(target_has_linux_kernel & compile_environment): - option(env="MOZ_NO_PIE_COMPAT", help="Enable non-PIE wrapper") + @depends("MOZILLA_OFFICIAL") diff --git a/makeicecat b/makeicecat index fc0bb76..f47f089 100755 --- a/makeicecat +++ b/makeicecat @@ -21,12 +21,13 @@ # metadata -readonly FFMAJOR=128 -readonly FFMINOR=14 +readonly FFMAJOR=140 +readonly FFMINOR=2 readonly FFSUB=0 readonly FFBUILD=1 readonly GNUVERSION=1 -readonly SOURCEBALL_CHECKSUM='93b9ef6229f41cb22ff109b95bbf61a78395a0fe4b870192eeca22947cb09a53' +# SHA-256 +readonly SOURCEBALL_CHECKSUM='956dce675c3b706d563caf07ed3ca9af632ab830be710dfd4351da78a0a2ef55' readonly SOURCEBALL_SIGNINGKEY='14F26682D0916CDD81E37B6D61B7B526D98F0353' readonly FFVERSION=${FFMAJOR}.${FFMINOR}.${FFSUB} readonly SOURCEBALL=firefox-${FFVERSION}esr.source.tar.xz @@ -41,7 +42,7 @@ readonly LIST_URL=lists.gnu.org/mailman/listinfo/bug-gnuzilla # l10n readonly L10N_URL=https://github.com/mozilla-l10n/firefox-l10n -readonly L10N_REV=fcd0300e8478d1ec4d1c097a073ddb8e1e0351e3 +readonly L10N_REV=4846304555affc92db4c693149c0f1c59afc7828 readonly L10N_CMP_URL=https://github.com/mozilla/compare-locales readonly L10N_CMP_REV=RELEASE_9_0_4 readonly L10N_PREFS_DIR=browser/chrome/browser/preferences @@ -377,7 +378,7 @@ configure() sed '/"datareporting\.healthreport\.uploadEnabled"/s/true/false/' -i modules/libpref/init/all.js # Custom privacy statement link - sed "s|https://www\\.mozilla\\.org/legal/privacy/|https://${LEGALINFO_URL}|" -i ./browser/app/profile/firefox.js ./toolkit/content/aboutRights.xhtml + sed "s|https://www\\.mozilla\\.org/legal/privacy/|https://${LEGALINFO_URL}|" -i ./browser/app/profile/firefox.js # Sanitize lists local plugin_file @@ -393,8 +394,8 @@ configure() # Disable activity-stream anti-features. # These are not condensed into a single sed script so that it # fails on individual commands that didn't change the source - local activity_stream=browser/components/newtab/lib/ActivityStream.sys.mjs - sed '/^const DEFAULT_SITES/,/^])\;/c const DEFAULT_SITES = new Map\([[""]]\);' -i browser/components/newtab/lib/DefaultSites.sys.mjs + local activity_stream=browser/extensions/newtab/lib/ActivityStream.sys.mjs + sed '/^const DEFAULT_SITES/,/^])\;/c const DEFAULT_SITES = new Map\([[""]]\);' -i browser/extensions/newtab/lib/DefaultSites.sys.mjs sed '/"showSponsored"/,/value/s/value: true/value: false/' -i $activity_stream sed '/ "telemetry"/,/value/s/value: true/value: false/' -i $activity_stream sed '/"section\.highlights\.includePocket"/,/value/s/value: true/value: false/' -i $activity_stream @@ -405,11 +406,10 @@ configure() sed '/"telemetry\.structuredIngestion\.endpoint"/,/value/s/value: .*/value: "",/' -i $activity_stream sed '/name: "telemetry"/,/value/s/value: true/value: false/' -i $activity_stream sed '/name: "system\.topstories"/,/},/s/.*!!locales.*/false/' -i $activity_stream - sed 's/Ubuntu, //' -i browser/components/newtab/css/activity-stream*.css - sed '/^]$/d' -i browser/components/newtab/data/content/tippytop/top_sites.json - sed 's/}$/},/' -i browser/components/newtab/data/content/tippytop/top_sites.json - cat << EOF >> browser/components/newtab/data/content/tippytop/top_sites.json + sed '/^]$/d' -i browser/components/topsites/content/tippytop/top_sites.json + sed 's/}$/},/' -i browser/components/topsites/content/tippytop/top_sites.json + cat << EOF >> browser/components/topsites/content/tippytop/top_sites.json { "domains": ["gnu.org"], "image_url": "images/gnu.png", @@ -505,8 +505,8 @@ EOF } EOF - cp "${DATADIR}"/newtab/*.ico browser/components/newtab/data/content/tippytop/favicons/ - cp "${DATADIR}"/newtab/*.png browser/components/newtab/data/content/tippytop/images/ + cp "${DATADIR}"/newtab/*.ico browser/components/topsites/content/tippytop/favicons/ + cp "${DATADIR}"/newtab/*.png browser/components/topsites/content/tippytop/images/ # IceCat menu l10n /bin/sed '/appmenuitem-settings/,+1s/\(.*.label = \)\(.*\)/\1\2\nappmenuitem-icecat-settings =\n\1IceCat \2/' -i ./l10n/*/browser/browser/appmenu.ftl ./browser/locales/en-US/browser/appmenu.ftl @@ -541,7 +541,6 @@ configure_mobile() cat << EOF >> mobile/android/confvars.sh # IceCat settings -MOZ_APP_VENDOR=GNU MOZ_APP_VERSION=${FFVERSION} MOZ_PAY=0 MOZ_SERVICES_HEALTHREPORT=0 @@ -606,15 +605,6 @@ apply_branding() # Custom legal about pages find l10n -wholename '*/brand.ftl' | xargs /bin/sed 's/^trademarkInfo = .*/trademarkInfo = The IceCat logo is Copyright 2008-2015 Free Software Foundation, released under the terms of the GNU Lesser General Public License, version 3 or any later version./' -i - local string - for string in rights-intro-point-2 rights-intro-point-3 rights-intro-point-4 rights-intro-point-5 rights-intro-point-6 rights-webservices rights-safebrowsing - do - find -name aboutRights.ftl | xargs sed -i "s/^${string}.*/${string} = /" - done - for string in helpus community-2 community-exp - do - find -wholename '*/browser/aboutDialog.ftl' | xargs sed -i "s/^${string}.*/${string} = /" - done cp "${DATADIR}"/aboutRights.xhtml toolkit/content/aboutRights.xhtml cp "${DATADIR}"/aboutRights.xhtml toolkit/content/aboutRights-unbranded.xhtml sed -i 's|<a href="http://www\.mozilla\.org/">Mozilla Project</a>|<a href="http://www.gnu.org/">GNU Project</a>|g' browser/base/content/overrides/app-license.html @@ -632,8 +622,10 @@ apply_branding() apply_batch_branding() { - find . -depth | grep -i fennec | rename_files -e s/fennec/icecatmobile/g -e s/Fennec/IceCatMobile/g - find . -depth | grep -i firefox | rename_files -e s/firefox/icecat/g -e s/Firefox/IceCat/g + find . -depth | grep -i fennec | + rename_files -e s/fennec/icecatmobile/g -e s/Fennec/IceCatMobile/g + find . -depth | grep -i firefox | + rename_files -e s/firefox/icecat/g -e s/Firefox/IceCat/g echo "Running batch rebranding (this will take a while)" local sed_script=" @@ -672,7 +664,9 @@ s|https://www\\.mozilla\\.org/icecat/?utm_source=synceol|https://www.mozilla.org s|www\\.gnu\\.org/software/gnuzilla/icecat-help|libreplanet.org/wiki/Group:IceCat/Help|g; " - find . -type f -not -iregex '.*changelog.*' -not -iregex '.*copyright.*' -not -iregex '.*third_party/rust.*' -execdir /bin/sed --follow-symlinks -i "${sed_script}" '{}' ';' + find . -type f -not -iregex '.*changelog.*' -not -iregex '.*copyright.*' \ + -not -iregex '.*third_party/rust.*' \ + -execdir /bin/sed --follow-symlinks -i "${sed_script}" '{}' ';' find l10n -type f -execdir /bin/sed --follow-symlinks -i "s/from GNU/from Mozilla/g" '{}' ';' @@ -713,27 +707,18 @@ s/OpenSource/Free Software/g; # Ditto for browser/modules/moz.build sort_inner_list_in_file "EXTRA_JS_MODULES += [" "]" browser/modules/moz.build + # Adjust the capitalization of IceCat to match the expected symbol + # names in build-time generated source files like TelemetryEventEnums.h. + sed 's/IceCatview/Icecatview/g' -i browser/components/icecatview/metrics.yaml + # Copy js settings cat "${DATADIR}"/settings.js >> browser/app/profile/icecat.js cat << EOF >> browser/confvars.sh # IceCat settings MOZ_APP_BASENAME=IceCat -MOZ_APP_UA_NAME=Firefox -MOZ_APP_VENDOR=GNU MOZ_APP_VERSION=${FFVERSION} -MOZ_APP_PROFILE=mozilla/icecat -MOZ_PAY=0 -MOZ_SERVICES_HEALTHREPORT=0 -MOZ_SERVICES_HEALTHREPORTER=0 -MOZ_SERVICES_FXACCOUNTS=0 -MOZ_SERVICES_METRICS=0 MOZ_DATA_REPORTING=0 -MOZ_NORMANDY=0 -MOZ_SERVICES_SYNC=0 -MOZ_DEVICES=0 -MOZ_ANDROID_GOOGLE_PLAY_SERVICES=0 -MOZ_ADDON_SIGNING=0 EOF } diff --git a/tools/process-json-files.py b/tools/process-json-files.py index d449057..2407fa9 100644 --- a/tools/process-json-files.py +++ b/tools/process-json-files.py @@ -148,48 +148,6 @@ class Changes(RemoteSettings): return File(cls.OUTPUT_PATH, changes) -class SearchConfig(RemoteSettings): - JSON_PATHS = ( - RemoteSettings.DUMPS_PATH_ABSOLUTE / - 'main/search-config.json', - ) - SCHEMA_PATH = arguments.MAIN_PATH / \ - 'toolkit/components/search/schema/search-config-schema.json' - OUTPUT_PATH = JSON_PATHS[0] - - _DUCKDUCKGO_SEARCH_ENGINE_ID = 'ddg <at> search.mozilla.org' - - @classmethod - def should_drop_record(cls, search_engine): - return search_engine['webExtension']['id'] not in ( - cls._DUCKDUCKGO_SEARCH_ENGINE_ID, 'wikipedia <at> search.mozilla.org') - - @classmethod - def process_record(cls, search_engine): - [search_engine.pop(key, None) - for key in ['extraParams', 'telemetryId']] - - general_specifier = {} - for specifier in search_engine['appliesTo'].copy(): - if 'application' in specifier: - if 'distributions' in specifier['application']: - search_engine['appliesTo'].remove(specifier) - continue - specifier['application'].pop('extraParams', None) - - if 'included' in specifier and 'everywhere' in specifier[ - 'included'] and specifier['included']['everywhere']: - general_specifier = specifier - - if not general_specifier: - general_specifier = {'included': {'everywhere': True}} - search_engine['appliesTo'].insert(0, general_specifier) - if search_engine['webExtension']['id'] == cls._DUCKDUCKGO_SEARCH_ENGINE_ID: - general_specifier['default'] = 'yes' - - return search_engine - - class SearchConfigV2(RemoteSettings): JSON_PATHS = ( RemoteSettings.DUMPS_PATH_ABSOLUTE / @@ -224,20 +182,6 @@ class SearchConfigV2(RemoteSettings): return record -class SearchConfigOverrides(RemoteSettings): - JSON_PATHS = ( - RemoteSettings.DUMPS_PATH_ABSOLUTE / - 'main/search-config-overrides.json', - ) - SCHEMA_PATH = arguments.MAIN_PATH / \ - 'toolkit/components/search/schema/search-config-overrides-schema.json' - OUTPUT_PATH = JSON_PATHS[0] - - @classmethod - def should_drop_record(cls, record): - return True - - class SearchConfigOverridesV2(RemoteSettings): JSON_PATHS = ( RemoteSettings.DUMPS_PATH_ABSOLUTE / @@ -295,8 +239,7 @@ class TopSites(RemoteSettings): # To reflect the latest timestamps, Changes class should always come after # all other RemoteSettings subclasses -processors = (SearchConfig, SearchConfigOverrides, - SearchConfigV2, SearchConfigOverridesV2, +processors = (SearchConfigV2, SearchConfigOverridesV2, Changes) for processor in processors: -- 2.51.0
bug-gnuzilla <at> gnu.org
:bug#79355
; Package gnuzilla
.
(Tue, 02 Sep 2025 18:08:02 GMT) Full text and rfc822 format available.Message #14 received at 79355 <at> debbugs.gnu.org (full text, mbox):
From: Mark H Weaver <mhw <at> netris.org> To: Maxim Cournoyer <maxim <at> guixotic.coop> Cc: 79355 <at> debbugs.gnu.org Subject: Re: bug#79355: [PATCH v2] Update to 140.2.0-1. Date: Tue, 02 Sep 2025 14:08:32 -0400
Hi Maxim, Thanks very much for this work, Maxim! I'm profoundly grateful to you for taking care of this. Please see below for inline comments: Maxim Cournoyer <maxim <at> guixotic.coop> writes: > * makeicecat: Update FFMINOR and SOURCEBALL_CHECKSUM. > Update patching for moved files on no longer existing patterns. > Do not set MOZ_APP_VENDOR/MOZ_APP_UA_NAME/MOZ_APP_PROFILE, as confvars, which now > fails the build. Delete no obsolete variables, or those already set to > the correct value in browser/moz.configure. > Do not patch (and break) translation data. > * data/patches/hide-firefox-view-button.patch: Update patch. > * data/patches/hide-submit-feedback-menu-item.patch: Likewise. > * data/patches/icecat-about-dialog.patch: Likewise. > * data/patches/moz-configure-changes.patch: Likewise. Set > MOZILLA_OFFICIAL to False by default, which disables telemetry. Interesting observation about telemetry! Can you please cite a reference for this claim, or else tell us how you came to know it? > diff --git a/data/patches/icecat-about-dialog.patch b/data/patches/icecat-about-dialog.patch > index c7e77b0..87dc835 100644 > --- a/data/patches/icecat-about-dialog.patch > +++ b/data/patches/icecat-about-dialog.patch [...] > ---- a/browser/base/content/aboutDialog.css > -+++ b/browser/base/content/aboutDialog.css > -@@ -38,10 +38,9 @@ > +--- a/browser/base/content/aboutDialog.css 2025-08-26 21:26:43.618669160 +0900 > ++++ b/browser/base/content/aboutDialog.css 2025-08-26 21:31:54.207067616 +0900 > +@@ -32,10 +32,9 @@ > #rightBox { > background-image: url("chrome://branding/content/about-wordmark.svg"); > background-repeat: no-repeat; > @@ -19,6 +19,9 @@ > padding-top: 38px; > - margin-top: 20px; > + margin-top: 60px; > - } > - > + /* We don't want this box to contribute arbitrarily to the intrinsic size of > + * the dialog, so set the width to a reasonable size, but let it flex to take > + * all available space. */ > +--- a/browser/base/content/aboutDialog.css > ++++ b/browser/base/content/aboutDialog.css > #rightBox:-moz-locale-dir(rtl) { The three lines above, which are the last three lines of 'data/patches/icecat-about-dialog.patch' after your patch is applied, are vestigial and should be dropped. > diff --git a/data/patches/icecat-fix-install.patch b/data/patches/icecat-fix-install.patch > new file mode 100644 > index 0000000..b62d36f > --- /dev/null > +++ b/data/patches/icecat-fix-install.patch > @@ -0,0 +1,14 @@ > +diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in > +index 6ebf2f62c477..2ddcef37816c 100644 > +--- a/browser/installer/package-manifest.in > ++++ b/browser/installer/package-manifest.in > +@@ -174,7 +174,9 @@ > + @RESPATH@/components/nsUpdateService.manifest > + #endif > + @RESPATH@/components/ProcessSingleton.manifest > ++#ifdef MOZ_SERVICES_SYNC > + @RESPATH@/components/SyncComponents.manifest > ++#endif > + @RESPATH@/components/servicesComponents.manifest > + @RESPATH@/components/servicesSettings.manifest > + @RESPATH@/components/cryptoComponents.manifest It's a minor point, but I'd prefer to name this patch "fix-install.patch" without the "icecat-" prefix. > --- a/browser/moz.configure > +++ b/browser/moz.configure > -@@ -5,11 +5,11 @@ > +@@ -5,16 +5,17 @@ > # file, You can obtain one at http://mozilla.org/MPL/2.0/. > > imply_option("MOZ_PLACES", True) > -imply_option("MOZ_SERVICES_HEALTHREPORT", True) > -+imply_option("MOZ_SERVICES_HEALTHREPORT", False) > - imply_option("MOZ_SERVICES_SYNC", True) > +-imply_option("MOZ_SERVICES_SYNC", True) > -imply_option("MOZ_DEDICATED_PROFILES", True) > -imply_option("MOZ_BLOCK_PROFILE_DOWNGRADE", True) > -imply_option("MOZ_NORMANDY", True) > ++imply_option("MOZ_SERVICES_HEALTHREPORT", False) > ++imply_option("MOZ_SERVICES_SYNC", False) > +imply_option("MOZ_DEDICATED_PROFILES", False) > +imply_option("MOZ_BLOCK_PROFILE_DOWNGRADE", False) > +imply_option("MOZ_NORMANDY", False) > + imply_option("MOZ_PROFILE_MIGRATOR", True) > + > + > +-imply_option("MOZ_APP_VENDOR", "Mozilla") > ++imply_option("MOZ_APP_VENDOR", "GNU") > + imply_option("MOZ_APP_ID", "{ec8030f7-c20a-464f-9b0e-13a3a9e97384}") > ++imply_option("MOZ_APP_PROFILE", "mozilla/icecat") > + # Include the DevTools client, not just the server (which is the default) > + imply_option("MOZ_DEVTOOLS", "all") > + imply_option("BROWSER_CHROME_URL", "chrome://browser/content/browser.xhtml") I suggest adding the line: imply_option("MOZ_APP_UA_NAME", "Firefox") to 'browser/moz.configure' above, to compensate for the fact that the MOZ_APP_UA_NAME option had to be removed from 'browser/confvars.sh' (via the code in 'makeicecat'). > diff --git a/makeicecat b/makeicecat > index fc0bb76..85ca5c6 100755 > --- a/makeicecat > +++ b/makeicecat > @@ -21,12 +21,13 @@ > > > # metadata > -readonly FFMAJOR=128 > -readonly FFMINOR=14 > +readonly FFMAJOR=140 > +readonly FFMINOR=2 > readonly FFSUB=0 > readonly FFBUILD=1 > readonly GNUVERSION=1 > -readonly SOURCEBALL_CHECKSUM='93b9ef6229f41cb22ff109b95bbf61a78395a0fe4b870192eeca22947cb09a53' > +# SHA-256 I'd prefer to drop the "# SHA-256" comment. It's trivial enough to find this out by grepping for SOURCEBALL_CHECKSUM in the script. > +readonly SOURCEBALL_CHECKSUM='956dce675c3b706d563caf07ed3ca9af632ab830be710dfd4351da78a0a2ef55' > readonly SOURCEBALL_SIGNINGKEY='14F26682D0916CDD81E37B6D61B7B526D98F0353' > readonly FFVERSION=${FFMAJOR}.${FFMINOR}.${FFSUB} > readonly SOURCEBALL=firefox-${FFVERSION}esr.source.tar.xz > @@ -41,7 +42,7 @@ readonly LIST_URL=lists.gnu.org/mailman/listinfo/bug-gnuzilla > > # l10n > readonly L10N_URL=https://github.com/mozilla-l10n/firefox-l10n > -readonly L10N_REV=fcd0300e8478d1ec4d1c097a073ddb8e1e0351e3 > +readonly L10N_REV=4846304555affc92db4c693149c0f1c59afc7828 I prefer to set L10N_REV to the commit specified in 'browser/locales/l10n-changesets.json', which in the case of 140.2 is a0c1ffda4ed19c0399e4175610361179e09829de. > @@ -541,7 +541,6 @@ configure_mobile() > > cat << EOF >> mobile/android/confvars.sh > # IceCat settings > -MOZ_APP_VENDOR=GNU > MOZ_APP_VERSION=${FFVERSION} > MOZ_PAY=0 > MOZ_SERVICES_HEALTHREPORT=0 Did you intend to make this change to the Android configuration? Note that our Android support has fallen into disrepair, and is not currently functional. > @@ -606,15 +605,6 @@ apply_branding() > > # Custom legal about pages > find l10n -wholename '*/brand.ftl' | xargs /bin/sed 's/^trademarkInfo = .*/trademarkInfo = The IceCat logo is Copyright 2008-2015 Free Software Foundation, released under the terms of the GNU Lesser General Public License, version 3 or any later version./' -i > - local string > - for string in rights-intro-point-2 rights-intro-point-3 rights-intro-point-4 rights-intro-point-5 rights-intro-point-6 rights-webservices rights-safebrowsing > - do > - find -name aboutRights.ftl | xargs sed -i "s/^${string}.*/${string} = /" > - done > - for string in helpus community-2 community-exp > - do > - find -wholename '*/browser/aboutDialog.ftl' | xargs sed -i "s/^${string}.*/${string} = /" > - done > cp "${DATADIR}"/aboutRights.xhtml toolkit/content/aboutRights.xhtml > cp "${DATADIR}"/aboutRights.xhtml toolkit/content/aboutRights-unbranded.xhtml > sed -i 's|<a href="http://www\.mozilla\.org/">Mozilla Project</a>|<a href="http://www.gnu.org/">GNU Project</a>|g' browser/base/content/overrides/app-license.html Are you sure that the code above is no longer appropriate? I see files named 'aboutRights.ftl' in l10n that still contain bindings for 'rights-intro-point-*', and therefore at least the first loop above still seems to be relevant. > @@ -713,27 +703,18 @@ s/OpenSource/Free Software/g; > # Ditto for browser/modules/moz.build > sort_inner_list_in_file "EXTRA_JS_MODULES += [" "]" browser/modules/moz.build > > + # Adjust the capitalization of IceCat to match the expected symbol > + # names in build-time generated source files like TelemetryEventEnums.h. > + sed 's/IceCatview/Icecatview/g' -i browser/components/icecatview/metrics.yaml > + Hmm. Do you know where the "Icecatview" is originating from? Is there some code that changes all but the first letter of that identifier to lowercase? > # Copy js settings > cat "${DATADIR}"/settings.js >> browser/app/profile/icecat.js > > cat << EOF >> browser/confvars.sh > # IceCat settings > MOZ_APP_BASENAME=IceCat > -MOZ_APP_UA_NAME=Firefox > -MOZ_APP_VENDOR=GNU > MOZ_APP_VERSION=${FFVERSION} > -MOZ_APP_PROFILE=mozilla/icecat > -MOZ_PAY=0 > -MOZ_SERVICES_HEALTHREPORT=0 > -MOZ_SERVICES_HEALTHREPORTER=0 > -MOZ_SERVICES_FXACCOUNTS=0 > -MOZ_SERVICES_METRICS=0 > MOZ_DATA_REPORTING=0 > -MOZ_NORMANDY=0 > -MOZ_SERVICES_SYNC=0 > -MOZ_DEVICES=0 > -MOZ_ANDROID_GOOGLE_PLAY_SERVICES=0 > -MOZ_ADDON_SIGNING=0 > EOF > } In the code above, what is the rationale for removing the settings for MOZ_PAY=0, MOZ_SERVICES_HEALTHREPORTER=0, MOZ_SERVICES_FXACCOUNTS=0, MOZ_SERVICES_METRICS=0, MOZ_DEVICES=0, MOZ_ANDROID_GOOGLE_PLAY_SERVICES=0, and MOZ_ADDON_SIGNING=0? I just successfully built IceCat 140.2 with those settings retained. I understand why the settings for MOZ_APP_UA_NAME, MOZ_APP_VENDOR, and MOZ_APP_PROFILE, MOZ_SERVICES_HEALTHREPORT, MOZ_NORMANDY, and MOZ_SERVICES_SYNC had to be removed, and anyway those settings are now made in 'browser/moz.configure'. Anyway, many thanks again for this excellent work! Warm regards, Mark
bug-gnuzilla <at> gnu.org
:bug#79355
; Package gnuzilla
.
(Wed, 03 Sep 2025 14:16:02 GMT) Full text and rfc822 format available.Message #17 received at 79355 <at> debbugs.gnu.org (full text, mbox):
From: Maxim Cournoyer <maxim <at> guixotic.coop> To: Mark H Weaver <mhw <at> netris.org> Cc: 79355 <at> debbugs.gnu.org Subject: Re: bug#79355: [PATCH v2] Update to 140.2.0-1. Date: Wed, 03 Sep 2025 23:14:42 +0900
Hey Mark! Thanks for your reactivity! Mark H Weaver <mhw <at> netris.org> writes: [...] >> * makeicecat: Update FFMINOR and SOURCEBALL_CHECKSUM. >> Update patching for moved files on no longer existing patterns. >> Do not set MOZ_APP_VENDOR/MOZ_APP_UA_NAME/MOZ_APP_PROFILE, as confvars, which now >> fails the build. Delete no obsolete variables, or those already set to >> the correct value in browser/moz.configure. >> Do not patch (and break) translation data. >> * data/patches/hide-firefox-view-button.patch: Update patch. >> * data/patches/hide-submit-feedback-menu-item.patch: Likewise. >> * data/patches/icecat-about-dialog.patch: Likewise. >> * data/patches/moz-configure-changes.patch: Likewise. Set >> MOZILLA_OFFICIAL to False by default, which disables telemetry. > > Interesting observation about telemetry! Can you please cite a > reference for this claim, or else tell us how you came to know it? I spent quite some time grepping the firefox source, and I randomly found that odd relationship. In Telemetry.cpp, there's: --8<---------------cut here---------------start------------->8--- // This function was copied from the implementation of // nsITelemetry::isOfficialTelemetry, currently found in the file // toolkit/components/telemetry/core/Telemetry.cpp. static bool IsOfficialTelemetry() { #if defined(MOZILLA_OFFICIAL) && defined(MOZ_TELEMETRY_REPORTING) && \ !defined(DEBUG) return true; #else return false; #endif } [...] // Do not send the ping if we are not an official telemetry-enabled build; // don't even generate the ping in fact, because if we write the file out // then some other build might find it later and decide to submit it. if (!IsOfficialTelemetry() || IsTelemetryDisabled()) { return MaybeCache(cache, notificationType, notificationShown, notificationAction, prevNotificationAction); } --8<---------------cut here---------------end--------------->8--- [...] >> +--- a/browser/base/content/aboutDialog.css 2025-08-26 21:26:43.618669160 +0900 >> ++++ b/browser/base/content/aboutDialog.css 2025-08-26 21:31:54.207067616 +0900 >> +@@ -32,10 +32,9 @@ >> #rightBox { >> background-image: url("chrome://branding/content/about-wordmark.svg"); >> background-repeat: no-repeat; >> @@ -19,6 +19,9 @@ >> padding-top: 38px; >> - margin-top: 20px; >> + margin-top: 60px; >> - } >> - >> + /* We don't want this box to contribute arbitrarily to the intrinsic size of >> + * the dialog, so set the width to a reasonable size, but let it flex to take >> + * all available space. */ >> +--- a/browser/base/content/aboutDialog.css >> ++++ b/browser/base/content/aboutDialog.css >> #rightBox:-moz-locale-dir(rtl) { > > The three lines above, which are the last three lines of > 'data/patches/icecat-about-dialog.patch' after your patch is applied, > are vestigial and should be dropped. These lines are part of the context (from recent commit 0da0a471026ca), so I'm not sure what is the suggestion here. [...] > It's a minor point, but I'd prefer to name this patch > "fix-install.patch" without the "icecat-" prefix. Done. >> --- a/browser/moz.configure >> +++ b/browser/moz.configure >> -@@ -5,11 +5,11 @@ >> +@@ -5,16 +5,17 @@ >> # file, You can obtain one at http://mozilla.org/MPL/2.0/. >> >> imply_option("MOZ_PLACES", True) >> -imply_option("MOZ_SERVICES_HEALTHREPORT", True) >> -+imply_option("MOZ_SERVICES_HEALTHREPORT", False) >> - imply_option("MOZ_SERVICES_SYNC", True) >> +-imply_option("MOZ_SERVICES_SYNC", True) >> -imply_option("MOZ_DEDICATED_PROFILES", True) >> -imply_option("MOZ_BLOCK_PROFILE_DOWNGRADE", True) >> -imply_option("MOZ_NORMANDY", True) >> ++imply_option("MOZ_SERVICES_HEALTHREPORT", False) >> ++imply_option("MOZ_SERVICES_SYNC", False) >> +imply_option("MOZ_DEDICATED_PROFILES", False) >> +imply_option("MOZ_BLOCK_PROFILE_DOWNGRADE", False) >> +imply_option("MOZ_NORMANDY", False) >> + imply_option("MOZ_PROFILE_MIGRATOR", True) >> + >> + >> +-imply_option("MOZ_APP_VENDOR", "Mozilla") >> ++imply_option("MOZ_APP_VENDOR", "GNU") >> + imply_option("MOZ_APP_ID", "{ec8030f7-c20a-464f-9b0e-13a3a9e97384}") >> ++imply_option("MOZ_APP_PROFILE", "mozilla/icecat") >> + # Include the DevTools client, not just the server (which is the default) >> + imply_option("MOZ_DEVTOOLS", "all") >> + imply_option("BROWSER_CHROME_URL", "chrome://browser/content/browser.xhtml") > > I suggest adding the line: > > imply_option("MOZ_APP_UA_NAME", "Firefox") > > to 'browser/moz.configure' above, to compensate for the fact that the > MOZ_APP_UA_NAME option had to be removed from 'browser/confvars.sh' (via > the code in 'makeicecat'). This doesn't seem to be necessary; testing 140.2 my useragent is currently: --8<---------------cut here---------------start------------->8--- Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0 --8<---------------cut here---------------end--------------->8--- According to code in nsHttpHandler.cpp, a fallback is used when it's not set: --8<---------------cut here---------------start------------->8--- mAppName.AssignLiteral(MOZ_APP_UA_NAME); if (mAppName.Length() == 0 && appInfo) { // Try to get the UA name from appInfo, falling back to the name appInfo->GetUAName(mAppName); if (mAppName.Length() == 0) { appInfo->GetName(mAppName); } appInfo->GetVersion(mAppVersion); mAppName.StripChars(R"( ()<>@,;:\"/[]?={})"); } else { mAppVersion.AssignLiteral(MOZ_APP_UA_VERSION); } --8<---------------cut here---------------end--------------->8--- > >> diff --git a/makeicecat b/makeicecat >> index fc0bb76..85ca5c6 100755 >> --- a/makeicecat >> +++ b/makeicecat >> @@ -21,12 +21,13 @@ >> >> >> # metadata >> -readonly FFMAJOR=128 >> -readonly FFMINOR=14 >> +readonly FFMAJOR=140 >> +readonly FFMINOR=2 >> readonly FFSUB=0 >> readonly FFBUILD=1 >> readonly GNUVERSION=1 >> -readonly SOURCEBALL_CHECKSUM='93b9ef6229f41cb22ff109b95bbf61a78395a0fe4b870192eeca22947cb09a53' >> +# SHA-256 > > I'd prefer to drop the "# SHA-256" comment. It's trivial enough to find > this out by grepping for SOURCEBALL_CHECKSUM in the script. The purpose of the comment was to tell the reader *which* checksum type is used here. Maybe be obvious for some, but I had to check. >> +readonly SOURCEBALL_CHECKSUM='956dce675c3b706d563caf07ed3ca9af632ab830be710dfd4351da78a0a2ef55' >> readonly SOURCEBALL_SIGNINGKEY='14F26682D0916CDD81E37B6D61B7B526D98F0353' >> readonly FFVERSION=${FFMAJOR}.${FFMINOR}.${FFSUB} >> readonly SOURCEBALL=firefox-${FFVERSION}esr.source.tar.xz >> @@ -41,7 +42,7 @@ readonly LIST_URL=lists.gnu.org/mailman/listinfo/bug-gnuzilla >> >> # l10n >> readonly L10N_URL=https://github.com/mozilla-l10n/firefox-l10n >> -readonly L10N_REV=fcd0300e8478d1ec4d1c097a073ddb8e1e0351e3 >> +readonly L10N_REV=4846304555affc92db4c693149c0f1c59afc7828 > > I prefer to set L10N_REV to the commit specified in > 'browser/locales/l10n-changesets.json', which in the case of 140.2 is > a0c1ffda4ed19c0399e4175610361179e09829de. Good catch! Adjusted. >> @@ -541,7 +541,6 @@ configure_mobile() >> >> cat << EOF >> mobile/android/confvars.sh >> # IceCat settings >> -MOZ_APP_VENDOR=GNU >> MOZ_APP_VERSION=${FFVERSION} >> MOZ_PAY=0 >> MOZ_SERVICES_HEALTHREPORT=0 > > Did you intend to make this change to the Android configuration? Note > that our Android support has fallen into disrepair, and is not currently > functional. Yeah, it's not used right now, but if someone tried, it fail, so it's better to remove it. >> @@ -606,15 +605,6 @@ apply_branding() >> >> # Custom legal about pages >> find l10n -wholename '*/brand.ftl' | xargs /bin/sed >> 's/^trademarkInfo = .*/trademarkInfo = The IceCat logo is Copyright >> 2008-2015 Free Software Foundation, released under the terms of the >> GNU Lesser General Public License, version 3 or any later version./' >> -i >> - local string >> - for string in rights-intro-point-2 rights-intro-point-3 >> rights-intro-point-4 rights-intro-point-5 rights-intro-point-6 >> rights-webservices rights-safebrowsing >> - do >> - find -name aboutRights.ftl | xargs sed -i "s/^${string}.*/${string} = /" >> - done >> - for string in helpus community-2 community-exp >> - do >> - find -wholename '*/browser/aboutDialog.ftl' | xargs sed -i "s/^${string}.*/${string} = /" >> - done >> cp "${DATADIR}"/aboutRights.xhtml toolkit/content/aboutRights.xhtml >> cp "${DATADIR}"/aboutRights.xhtml toolkit/content/aboutRights-unbranded.xhtml >> sed -i 's|<a href="http://www\.mozilla\.org/">Mozilla >> Project</a>|<a href="http://www.gnu.org/">GNU Project</a>|g' >> browser/base/content/overrides/app-license.html > > Are you sure that the code above is no longer appropriate? I see files > named 'aboutRights.ftl' in l10n that still contain bindings for > 'rights-intro-point-*', and therefore at least the first loop above > still seems to be relevant. I think the above code above was only clearing the last 3 keys (helpus, comMnity-2, community-exp) with empty values, which is no longer valid and broke the fluent parser (localization tool) These values left unpatched are thus: --8<---------------cut here---------------start------------->8--- community-exp = <label data-l10n-name="community-exp-mozillaLink">{ -vendor-short-name }</label> is a <label data-l10n-name="community-exp-creditsLink">global community</label> working together to keep the Web open, public and accessible to all. community-2 = { -brand-short-name } is designed by <label data-l10n-name="community-mozillaLink">{ -vendor-short-name }</label>, a <label data-l10n-name="community-creditsLink">global community</label> working together to keep the Web open, public and accessible to all. helpus = Want to help? <label data-l10n-name="helpus-donateLink">Make a donation</label> or <label data-l10n-name="helpus-getInvolvedLink">get involved!</label> --8<---------------cut here---------------end--------------->8--- Which doesn't look too critical to my eye. >> @@ -713,27 +703,18 @@ s/OpenSource/Free Software/g; >> # Ditto for browser/modules/moz.build >> sort_inner_list_in_file "EXTRA_JS_MODULES += [" "]" browser/modules/moz.build >> >> + # Adjust the capitalization of IceCat to match the expected symbol >> + # names in build-time generated source files like TelemetryEventEnums.h. >> + sed 's/IceCatview/Icecatview/g' -i browser/components/icecatview/metrics.yaml >> + > > Hmm. Do you know where the "Icecatview" is originating from? Is there > some code that changes all but the first letter of that identifier to > lowercase? I think it comes from the scripts under toolkit/components/telemetry/build_scripts/gen_*.py, but I can't find where the capital casing code is anymore. > >> # Copy js settings >> cat "${DATADIR}"/settings.js >> browser/app/profile/icecat.js >> >> cat << EOF >> browser/confvars.sh >> # IceCat settings >> MOZ_APP_BASENAME=IceCat >> -MOZ_APP_UA_NAME=Firefox >> -MOZ_APP_VENDOR=GNU >> MOZ_APP_VERSION=${FFVERSION} >> -MOZ_APP_PROFILE=mozilla/icecat >> -MOZ_PAY=0 >> -MOZ_SERVICES_HEALTHREPORT=0 >> -MOZ_SERVICES_HEALTHREPORTER=0 >> -MOZ_SERVICES_FXACCOUNTS=0 >> -MOZ_SERVICES_METRICS=0 >> MOZ_DATA_REPORTING=0 >> -MOZ_NORMANDY=0 >> -MOZ_SERVICES_SYNC=0 >> -MOZ_DEVICES=0 >> -MOZ_ANDROID_GOOGLE_PLAY_SERVICES=0 >> -MOZ_ADDON_SIGNING=0 >> EOF >> } > > In the code above, what is the rationale for removing the settings for > MOZ_PAY=0, MOZ_SERVICES_HEALTHREPORTER=0, MOZ_SERVICES_FXACCOUNTS=0, > MOZ_SERVICES_METRICS=0, MOZ_DEVICES=0, > MOZ_ANDROID_GOOGLE_PLAY_SERVICES=0, and MOZ_ADDON_SIGNING=0? None of these outside MOZ_SERVICES_HEALTHREPORTER are still in use, according to 'git grep' on Firefox's source. ++imply_option("MOZ_SERVICES_HEALTHREPORT", False) is now in the 'moz-configure-changes.patch' There are two things that are currently broken in IceCat 140.2 based on limited testing: 1. Contextual menu on right click has empty lines (sounds deja-vu? what was the past resolution?) 2. The parameters page is borked. I have no idea what needs fixing. I'd appreciate your help for the above two points. -- Thanks, Maxim
bug-gnuzilla <at> gnu.org
:bug#79355
; Package gnuzilla
.
(Wed, 03 Sep 2025 14:20:02 GMT) Full text and rfc822 format available.Message #20 received at 79355 <at> debbugs.gnu.org (full text, mbox):
From: Maxim Cournoyer <maxim <at> guixotic.coop> To: 79355 <at> debbugs.gnu.org Cc: Maxim Cournoyer <maxim <at> guixotic.coop> Subject: [PATCH v4] Update to 140.2.0-1. Date: Wed, 3 Sep 2025 23:17:42 +0900
* makeicecat: Update FFMINOR and SOURCEBALL_CHECKSUM. Update patching for moved files on no longer existing patterns. Do not set MOZ_APP_VENDOR/MOZ_APP_UA_NAME/MOZ_APP_PROFILE, as confvars, which now fails the build. Delete no obsolete variables, or those already set to the correct value in browser/moz.configure. Do not patch (and break) translation data. * data/patches/hide-firefox-view-button.patch: Update patch. * data/patches/hide-submit-feedback-menu-item.patch: Likewise. * data/patches/icecat-about-dialog.patch: Likewise. * data/patches/moz-configure-changes.patch: Likewise. Set MOZILLA_OFFICIAL to False by default, which disables telemetry. * tools/process-json-files.py (SearchConfig) (SearchConfigOverrides): Delete classes. (processors): De-register them. * data/patches/fix-install.patch: New file. --- This renames the fix-install.patch file and fixes the L10N_REV commit data/patches/fix-install.patch | 14 +++++ data/patches/hide-firefox-view-button.patch | 18 +++--- .../hide-submit-feedback-menu-item.patch | 12 ++-- data/patches/icecat-about-dialog.patch | 23 ++++--- data/patches/moz-configure-changes.patch | 33 ++++++++-- makeicecat | 63 +++++++------------ tools/process-json-files.py | 59 +---------------- 7 files changed, 95 insertions(+), 127 deletions(-) create mode 100644 data/patches/fix-install.patch diff --git a/data/patches/fix-install.patch b/data/patches/fix-install.patch new file mode 100644 index 0000000..b62d36f --- /dev/null +++ b/data/patches/fix-install.patch @@ -0,0 +1,14 @@ +diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in +index 6ebf2f62c477..2ddcef37816c 100644 +--- a/browser/installer/package-manifest.in ++++ b/browser/installer/package-manifest.in +@@ -174,7 +174,9 @@ + @RESPATH@/components/nsUpdateService.manifest + #endif + @RESPATH@/components/ProcessSingleton.manifest ++#ifdef MOZ_SERVICES_SYNC + @RESPATH@/components/SyncComponents.manifest ++#endif + @RESPATH@/components/servicesComponents.manifest + @RESPATH@/components/servicesSettings.manifest + @RESPATH@/components/cryptoComponents.manifest diff --git a/data/patches/hide-firefox-view-button.patch b/data/patches/hide-firefox-view-button.patch index ef24a34..52bad1c 100644 --- a/data/patches/hide-firefox-view-button.patch +++ b/data/patches/hide-firefox-view-button.patch @@ -1,10 +1,10 @@ ---- a/browser/base/content/navigator-toolbox.inc.xhtml -+++ b/browser/base/content/navigator-toolbox.inc.xhtml -@@ -43,6 +43,7 @@ - oncommand="FirefoxViewHandler.openTab();" - onmousedown="FirefoxViewHandler.openToolbarMouseEvent(event);" - cui-areatype="toolbar" -+ hidden="true" - removable="true"/> +--- a/browser/base/content/navigator-toolbox.inc.xhtml 2025-08-12 02:31:44.000000000 +0900 ++++ b/browser/base/content/navigator-toolbox.inc.xhtml 2025-08-26 21:10:15.709368257 +0900 +@@ -41,6 +41,7 @@ + role="button" + aria-pressed="false" + cui-areatype="toolbar" ++ hidden="true" + removable="true"/> - <tabs id="tabbrowser-tabs" + <tabs id="tabbrowser-tabs" diff --git a/data/patches/hide-submit-feedback-menu-item.patch b/data/patches/hide-submit-feedback-menu-item.patch index 402ba31..5278da7 100644 --- a/data/patches/hide-submit-feedback-menu-item.patch +++ b/data/patches/hide-submit-feedback-menu-item.patch @@ -1,10 +1,10 @@ ---- a/browser/base/content/browser-menubar.inc -+++ b/browser/base/content/browser-menubar.inc -@@ -465,6 +465,7 @@ - hidden="true" - appmenu-data-l10n-id="menu-report-broken-site"/> +--- a/browser/base/content/browser-menubar.inc 2025-08-26 21:16:57.929903122 +0900 ++++ b/browser/base/content/browser-menubar.inc 2025-08-26 21:17:09.257918204 +0900 +@@ -431,6 +431,7 @@ + disabled="true" + appmenu-data-l10n-id="appmenuitem-report-broken-site"/> <menuitem id="feedbackPage" + hidden="true" - oncommand="openFeedbackPage()" data-l10n-id="menu-help-share-ideas" appmenu-data-l10n-id="appmenu-help-share-ideas"/> + <menuitem id="helpSafeMode" diff --git a/data/patches/icecat-about-dialog.patch b/data/patches/icecat-about-dialog.patch index c7e77b0..87dc835 100644 --- a/data/patches/icecat-about-dialog.patch +++ b/data/patches/icecat-about-dialog.patch @@ -1,16 +1,16 @@ ---- a/browser/base/content/aboutDialog.xhtml -+++ b/browser/base/content/aboutDialog.xhtml -@@ -148,7 +148,6 @@ +--- a/browser/base/content/aboutDialog.xhtml 2025-08-26 21:23:08.866394736 +0900 ++++ b/browser/base/content/aboutDialog.xhtml 2025-08-26 21:23:19.986408921 +0900 +@@ -139,7 +139,6 @@ <hbox pack="center"> <label is="text-link" class="bottom-link" useoriginprincipal="true" href="about:license" data-l10n-id="bottomLinks-license"/> - <label is="text-link" class="bottom-link" useoriginprincipal="true" href="about:rights" data-l10n-id="bottomLinks-rights"/> -- <label is="text-link" class="bottom-link" href="https://www.mozilla.org/privacy/?utm_source=firefox-browser&utm_medium=firefox-desktop&utm_campaign=about-dialog" data-l10n-id="bottomLinks-privacy"/> + <label is="text-link" class="bottom-link" href="https://www.mozilla.org/about/legal/terms/firefox/" data-l10n-id="bottom-links-terms"/> +- <label is="text-link" class="bottom-link" href="https://www.mozilla.org/privacy/firefox/?utm_source=firefox-browser&utm_medium=firefox-desktop&utm_campaign=about-dialog" data-l10n-id="bottom-links-privacy"/> </hbox> <description id="trademark" data-l10n-id="trademarkInfo"></description> </vbox> ---- a/browser/base/content/aboutDialog.css -+++ b/browser/base/content/aboutDialog.css -@@ -38,10 +38,9 @@ +--- a/browser/base/content/aboutDialog.css 2025-08-26 21:26:43.618669160 +0900 ++++ b/browser/base/content/aboutDialog.css 2025-08-26 21:31:54.207067616 +0900 +@@ -32,10 +32,9 @@ #rightBox { background-image: url("chrome://branding/content/about-wordmark.svg"); background-repeat: no-repeat; @@ -19,6 +19,9 @@ padding-top: 38px; - margin-top: 20px; + margin-top: 60px; - } - + /* We don't want this box to contribute arbitrarily to the intrinsic size of + * the dialog, so set the width to a reasonable size, but let it flex to take + * all available space. */ +--- a/browser/base/content/aboutDialog.css ++++ b/browser/base/content/aboutDialog.css #rightBox:-moz-locale-dir(rtl) { diff --git a/data/patches/moz-configure-changes.patch b/data/patches/moz-configure-changes.patch index 6f0525e..5745b38 100644 --- a/data/patches/moz-configure-changes.patch +++ b/data/patches/moz-configure-changes.patch @@ -1,18 +1,41 @@ +diff --git a/browser/moz.configure b/browser/moz.configure +index e8b401a7dfb2..d5b3117ce3d8 100644 --- a/browser/moz.configure +++ b/browser/moz.configure -@@ -5,11 +5,11 @@ +@@ -5,16 +5,17 @@ # file, You can obtain one at http://mozilla.org/MPL/2.0/. imply_option("MOZ_PLACES", True) -imply_option("MOZ_SERVICES_HEALTHREPORT", True) -+imply_option("MOZ_SERVICES_HEALTHREPORT", False) - imply_option("MOZ_SERVICES_SYNC", True) +-imply_option("MOZ_SERVICES_SYNC", True) -imply_option("MOZ_DEDICATED_PROFILES", True) -imply_option("MOZ_BLOCK_PROFILE_DOWNGRADE", True) -imply_option("MOZ_NORMANDY", True) ++imply_option("MOZ_SERVICES_HEALTHREPORT", False) ++imply_option("MOZ_SERVICES_SYNC", False) +imply_option("MOZ_DEDICATED_PROFILES", False) +imply_option("MOZ_BLOCK_PROFILE_DOWNGRADE", False) +imply_option("MOZ_NORMANDY", False) + imply_option("MOZ_PROFILE_MIGRATOR", True) + + +-imply_option("MOZ_APP_VENDOR", "Mozilla") ++imply_option("MOZ_APP_VENDOR", "GNU") + imply_option("MOZ_APP_ID", "{ec8030f7-c20a-464f-9b0e-13a3a9e97384}") ++imply_option("MOZ_APP_PROFILE", "mozilla/icecat") + # Include the DevTools client, not just the server (which is the default) + imply_option("MOZ_DEVTOOLS", "all") + imply_option("BROWSER_CHROME_URL", "chrome://browser/content/browser.xhtml") +diff --git a/build/moz.configure/init.configure b/build/moz.configure/init.configure +index 193272588caa..da8a729548c8 100644 +--- a/build/moz.configure/init.configure ++++ b/build/moz.configure/init.configure +@@ -991,7 +991,7 @@ set_config("MOZ_BUILD_APP", build_project) + set_define("MOZ_BUILD_APP", build_project) + + +-option(env="MOZILLA_OFFICIAL", help="Build an official release") ++option(env="MOZILLA_OFFICIAL", help="Build an official release", default=False) + - with only_when(target_has_linux_kernel & compile_environment): - option(env="MOZ_NO_PIE_COMPAT", help="Enable non-PIE wrapper") + @depends("MOZILLA_OFFICIAL") diff --git a/makeicecat b/makeicecat index fc0bb76..552a41e 100755 --- a/makeicecat +++ b/makeicecat @@ -21,12 +21,13 @@ # metadata -readonly FFMAJOR=128 -readonly FFMINOR=14 +readonly FFMAJOR=140 +readonly FFMINOR=2 readonly FFSUB=0 readonly FFBUILD=1 readonly GNUVERSION=1 -readonly SOURCEBALL_CHECKSUM='93b9ef6229f41cb22ff109b95bbf61a78395a0fe4b870192eeca22947cb09a53' +# SHA-256 +readonly SOURCEBALL_CHECKSUM='956dce675c3b706d563caf07ed3ca9af632ab830be710dfd4351da78a0a2ef55' readonly SOURCEBALL_SIGNINGKEY='14F26682D0916CDD81E37B6D61B7B526D98F0353' readonly FFVERSION=${FFMAJOR}.${FFMINOR}.${FFSUB} readonly SOURCEBALL=firefox-${FFVERSION}esr.source.tar.xz @@ -41,7 +42,7 @@ readonly LIST_URL=lists.gnu.org/mailman/listinfo/bug-gnuzilla # l10n readonly L10N_URL=https://github.com/mozilla-l10n/firefox-l10n -readonly L10N_REV=fcd0300e8478d1ec4d1c097a073ddb8e1e0351e3 +readonly L10N_REV=a0c1ffda4ed19c0399e4175610361179e09829de readonly L10N_CMP_URL=https://github.com/mozilla/compare-locales readonly L10N_CMP_REV=RELEASE_9_0_4 readonly L10N_PREFS_DIR=browser/chrome/browser/preferences @@ -377,7 +378,7 @@ configure() sed '/"datareporting\.healthreport\.uploadEnabled"/s/true/false/' -i modules/libpref/init/all.js # Custom privacy statement link - sed "s|https://www\\.mozilla\\.org/legal/privacy/|https://${LEGALINFO_URL}|" -i ./browser/app/profile/firefox.js ./toolkit/content/aboutRights.xhtml + sed "s|https://www\\.mozilla\\.org/legal/privacy/|https://${LEGALINFO_URL}|" -i ./browser/app/profile/firefox.js # Sanitize lists local plugin_file @@ -393,8 +394,8 @@ configure() # Disable activity-stream anti-features. # These are not condensed into a single sed script so that it # fails on individual commands that didn't change the source - local activity_stream=browser/components/newtab/lib/ActivityStream.sys.mjs - sed '/^const DEFAULT_SITES/,/^])\;/c const DEFAULT_SITES = new Map\([[""]]\);' -i browser/components/newtab/lib/DefaultSites.sys.mjs + local activity_stream=browser/extensions/newtab/lib/ActivityStream.sys.mjs + sed '/^const DEFAULT_SITES/,/^])\;/c const DEFAULT_SITES = new Map\([[""]]\);' -i browser/extensions/newtab/lib/DefaultSites.sys.mjs sed '/"showSponsored"/,/value/s/value: true/value: false/' -i $activity_stream sed '/ "telemetry"/,/value/s/value: true/value: false/' -i $activity_stream sed '/"section\.highlights\.includePocket"/,/value/s/value: true/value: false/' -i $activity_stream @@ -405,11 +406,10 @@ configure() sed '/"telemetry\.structuredIngestion\.endpoint"/,/value/s/value: .*/value: "",/' -i $activity_stream sed '/name: "telemetry"/,/value/s/value: true/value: false/' -i $activity_stream sed '/name: "system\.topstories"/,/},/s/.*!!locales.*/false/' -i $activity_stream - sed 's/Ubuntu, //' -i browser/components/newtab/css/activity-stream*.css - sed '/^]$/d' -i browser/components/newtab/data/content/tippytop/top_sites.json - sed 's/}$/},/' -i browser/components/newtab/data/content/tippytop/top_sites.json - cat << EOF >> browser/components/newtab/data/content/tippytop/top_sites.json + sed '/^]$/d' -i browser/components/topsites/content/tippytop/top_sites.json + sed 's/}$/},/' -i browser/components/topsites/content/tippytop/top_sites.json + cat << EOF >> browser/components/topsites/content/tippytop/top_sites.json { "domains": ["gnu.org"], "image_url": "images/gnu.png", @@ -505,8 +505,8 @@ EOF } EOF - cp "${DATADIR}"/newtab/*.ico browser/components/newtab/data/content/tippytop/favicons/ - cp "${DATADIR}"/newtab/*.png browser/components/newtab/data/content/tippytop/images/ + cp "${DATADIR}"/newtab/*.ico browser/components/topsites/content/tippytop/favicons/ + cp "${DATADIR}"/newtab/*.png browser/components/topsites/content/tippytop/images/ # IceCat menu l10n /bin/sed '/appmenuitem-settings/,+1s/\(.*.label = \)\(.*\)/\1\2\nappmenuitem-icecat-settings =\n\1IceCat \2/' -i ./l10n/*/browser/browser/appmenu.ftl ./browser/locales/en-US/browser/appmenu.ftl @@ -541,7 +541,6 @@ configure_mobile() cat << EOF >> mobile/android/confvars.sh # IceCat settings -MOZ_APP_VENDOR=GNU MOZ_APP_VERSION=${FFVERSION} MOZ_PAY=0 MOZ_SERVICES_HEALTHREPORT=0 @@ -606,15 +605,6 @@ apply_branding() # Custom legal about pages find l10n -wholename '*/brand.ftl' | xargs /bin/sed 's/^trademarkInfo = .*/trademarkInfo = The IceCat logo is Copyright 2008-2015 Free Software Foundation, released under the terms of the GNU Lesser General Public License, version 3 or any later version./' -i - local string - for string in rights-intro-point-2 rights-intro-point-3 rights-intro-point-4 rights-intro-point-5 rights-intro-point-6 rights-webservices rights-safebrowsing - do - find -name aboutRights.ftl | xargs sed -i "s/^${string}.*/${string} = /" - done - for string in helpus community-2 community-exp - do - find -wholename '*/browser/aboutDialog.ftl' | xargs sed -i "s/^${string}.*/${string} = /" - done cp "${DATADIR}"/aboutRights.xhtml toolkit/content/aboutRights.xhtml cp "${DATADIR}"/aboutRights.xhtml toolkit/content/aboutRights-unbranded.xhtml sed -i 's|<a href="http://www\.mozilla\.org/">Mozilla Project</a>|<a href="http://www.gnu.org/">GNU Project</a>|g' browser/base/content/overrides/app-license.html @@ -632,8 +622,10 @@ apply_branding() apply_batch_branding() { - find . -depth | grep -i fennec | rename_files -e s/fennec/icecatmobile/g -e s/Fennec/IceCatMobile/g - find . -depth | grep -i firefox | rename_files -e s/firefox/icecat/g -e s/Firefox/IceCat/g + find . -depth | grep -i fennec | + rename_files -e s/fennec/icecatmobile/g -e s/Fennec/IceCatMobile/g + find . -depth | grep -i firefox | + rename_files -e s/firefox/icecat/g -e s/Firefox/IceCat/g echo "Running batch rebranding (this will take a while)" local sed_script=" @@ -672,7 +664,9 @@ s|https://www\\.mozilla\\.org/icecat/?utm_source=synceol|https://www.mozilla.org s|www\\.gnu\\.org/software/gnuzilla/icecat-help|libreplanet.org/wiki/Group:IceCat/Help|g; " - find . -type f -not -iregex '.*changelog.*' -not -iregex '.*copyright.*' -not -iregex '.*third_party/rust.*' -execdir /bin/sed --follow-symlinks -i "${sed_script}" '{}' ';' + find . -type f -not -iregex '.*changelog.*' -not -iregex '.*copyright.*' \ + -not -iregex '.*third_party/rust.*' \ + -execdir /bin/sed --follow-symlinks -i "${sed_script}" '{}' ';' find l10n -type f -execdir /bin/sed --follow-symlinks -i "s/from GNU/from Mozilla/g" '{}' ';' @@ -713,27 +707,18 @@ s/OpenSource/Free Software/g; # Ditto for browser/modules/moz.build sort_inner_list_in_file "EXTRA_JS_MODULES += [" "]" browser/modules/moz.build + # Adjust the capitalization of IceCat to match the expected symbol + # names in build-time generated source files like TelemetryEventEnums.h. + sed 's/IceCatview/Icecatview/g' -i browser/components/icecatview/metrics.yaml + # Copy js settings cat "${DATADIR}"/settings.js >> browser/app/profile/icecat.js cat << EOF >> browser/confvars.sh # IceCat settings MOZ_APP_BASENAME=IceCat -MOZ_APP_UA_NAME=Firefox -MOZ_APP_VENDOR=GNU MOZ_APP_VERSION=${FFVERSION} -MOZ_APP_PROFILE=mozilla/icecat -MOZ_PAY=0 -MOZ_SERVICES_HEALTHREPORT=0 -MOZ_SERVICES_HEALTHREPORTER=0 -MOZ_SERVICES_FXACCOUNTS=0 -MOZ_SERVICES_METRICS=0 MOZ_DATA_REPORTING=0 -MOZ_NORMANDY=0 -MOZ_SERVICES_SYNC=0 -MOZ_DEVICES=0 -MOZ_ANDROID_GOOGLE_PLAY_SERVICES=0 -MOZ_ADDON_SIGNING=0 EOF } diff --git a/tools/process-json-files.py b/tools/process-json-files.py index d449057..2407fa9 100644 --- a/tools/process-json-files.py +++ b/tools/process-json-files.py @@ -148,48 +148,6 @@ class Changes(RemoteSettings): return File(cls.OUTPUT_PATH, changes) -class SearchConfig(RemoteSettings): - JSON_PATHS = ( - RemoteSettings.DUMPS_PATH_ABSOLUTE / - 'main/search-config.json', - ) - SCHEMA_PATH = arguments.MAIN_PATH / \ - 'toolkit/components/search/schema/search-config-schema.json' - OUTPUT_PATH = JSON_PATHS[0] - - _DUCKDUCKGO_SEARCH_ENGINE_ID = 'ddg <at> search.mozilla.org' - - @classmethod - def should_drop_record(cls, search_engine): - return search_engine['webExtension']['id'] not in ( - cls._DUCKDUCKGO_SEARCH_ENGINE_ID, 'wikipedia <at> search.mozilla.org') - - @classmethod - def process_record(cls, search_engine): - [search_engine.pop(key, None) - for key in ['extraParams', 'telemetryId']] - - general_specifier = {} - for specifier in search_engine['appliesTo'].copy(): - if 'application' in specifier: - if 'distributions' in specifier['application']: - search_engine['appliesTo'].remove(specifier) - continue - specifier['application'].pop('extraParams', None) - - if 'included' in specifier and 'everywhere' in specifier[ - 'included'] and specifier['included']['everywhere']: - general_specifier = specifier - - if not general_specifier: - general_specifier = {'included': {'everywhere': True}} - search_engine['appliesTo'].insert(0, general_specifier) - if search_engine['webExtension']['id'] == cls._DUCKDUCKGO_SEARCH_ENGINE_ID: - general_specifier['default'] = 'yes' - - return search_engine - - class SearchConfigV2(RemoteSettings): JSON_PATHS = ( RemoteSettings.DUMPS_PATH_ABSOLUTE / @@ -224,20 +182,6 @@ class SearchConfigV2(RemoteSettings): return record -class SearchConfigOverrides(RemoteSettings): - JSON_PATHS = ( - RemoteSettings.DUMPS_PATH_ABSOLUTE / - 'main/search-config-overrides.json', - ) - SCHEMA_PATH = arguments.MAIN_PATH / \ - 'toolkit/components/search/schema/search-config-overrides-schema.json' - OUTPUT_PATH = JSON_PATHS[0] - - @classmethod - def should_drop_record(cls, record): - return True - - class SearchConfigOverridesV2(RemoteSettings): JSON_PATHS = ( RemoteSettings.DUMPS_PATH_ABSOLUTE / @@ -295,8 +239,7 @@ class TopSites(RemoteSettings): # To reflect the latest timestamps, Changes class should always come after # all other RemoteSettings subclasses -processors = (SearchConfig, SearchConfigOverrides, - SearchConfigV2, SearchConfigOverridesV2, +processors = (SearchConfigV2, SearchConfigOverridesV2, Changes) for processor in processors: -- 2.51.0
bug-gnuzilla <at> gnu.org
:bug#79355
; Package gnuzilla
.
(Wed, 03 Sep 2025 14:22:02 GMT) Full text and rfc822 format available.Message #23 received at 79355 <at> debbugs.gnu.org (full text, mbox):
From: Maxim Cournoyer <maxim <at> guixotic.coop> To: 79355 <at> debbugs.gnu.org Cc: Maxim Cournoyer <maxim <at> guixotic.coop> Subject: [PATCH v4] Update to 140.2.0-1. Date: Wed, 3 Sep 2025 23:20:18 +0900
* makeicecat: Update FFMINOR and SOURCEBALL_CHECKSUM. Update patching for moved files on no longer existing patterns. Do not set MOZ_APP_VENDOR/MOZ_APP_UA_NAME/MOZ_APP_PROFILE, as confvars, which now fails the build. Delete no obsolete variables, or those already set to the correct value in browser/moz.configure. Do not patch (and break) translation data. * data/patches/hide-firefox-view-button.patch: Update patch. * data/patches/hide-submit-feedback-menu-item.patch: Likewise. * data/patches/icecat-about-dialog.patch: Likewise. * data/patches/moz-configure-changes.patch: Likewise. Set MOZILLA_OFFICIAL to False by default, which disables telemetry. * tools/process-json-files.py (SearchConfig) (SearchConfigOverrides): Delete classes. (processors): De-register them. * data/patches/fix-install.patch: New file. --- Fixes L10N_REV and renames fix-install.patch. data/patches/fix-install.patch | 14 +++++ data/patches/hide-firefox-view-button.patch | 18 +++--- .../hide-submit-feedback-menu-item.patch | 12 ++-- data/patches/icecat-about-dialog.patch | 23 ++++--- data/patches/moz-configure-changes.patch | 33 ++++++++-- makeicecat | 63 +++++++------------ tools/process-json-files.py | 59 +---------------- 7 files changed, 95 insertions(+), 127 deletions(-) create mode 100644 data/patches/fix-install.patch diff --git a/data/patches/fix-install.patch b/data/patches/fix-install.patch new file mode 100644 index 0000000..b62d36f --- /dev/null +++ b/data/patches/fix-install.patch @@ -0,0 +1,14 @@ +diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in +index 6ebf2f62c477..2ddcef37816c 100644 +--- a/browser/installer/package-manifest.in ++++ b/browser/installer/package-manifest.in +@@ -174,7 +174,9 @@ + @RESPATH@/components/nsUpdateService.manifest + #endif + @RESPATH@/components/ProcessSingleton.manifest ++#ifdef MOZ_SERVICES_SYNC + @RESPATH@/components/SyncComponents.manifest ++#endif + @RESPATH@/components/servicesComponents.manifest + @RESPATH@/components/servicesSettings.manifest + @RESPATH@/components/cryptoComponents.manifest diff --git a/data/patches/hide-firefox-view-button.patch b/data/patches/hide-firefox-view-button.patch index ef24a34..52bad1c 100644 --- a/data/patches/hide-firefox-view-button.patch +++ b/data/patches/hide-firefox-view-button.patch @@ -1,10 +1,10 @@ ---- a/browser/base/content/navigator-toolbox.inc.xhtml -+++ b/browser/base/content/navigator-toolbox.inc.xhtml -@@ -43,6 +43,7 @@ - oncommand="FirefoxViewHandler.openTab();" - onmousedown="FirefoxViewHandler.openToolbarMouseEvent(event);" - cui-areatype="toolbar" -+ hidden="true" - removable="true"/> +--- a/browser/base/content/navigator-toolbox.inc.xhtml 2025-08-12 02:31:44.000000000 +0900 ++++ b/browser/base/content/navigator-toolbox.inc.xhtml 2025-08-26 21:10:15.709368257 +0900 +@@ -41,6 +41,7 @@ + role="button" + aria-pressed="false" + cui-areatype="toolbar" ++ hidden="true" + removable="true"/> - <tabs id="tabbrowser-tabs" + <tabs id="tabbrowser-tabs" diff --git a/data/patches/hide-submit-feedback-menu-item.patch b/data/patches/hide-submit-feedback-menu-item.patch index 402ba31..5278da7 100644 --- a/data/patches/hide-submit-feedback-menu-item.patch +++ b/data/patches/hide-submit-feedback-menu-item.patch @@ -1,10 +1,10 @@ ---- a/browser/base/content/browser-menubar.inc -+++ b/browser/base/content/browser-menubar.inc -@@ -465,6 +465,7 @@ - hidden="true" - appmenu-data-l10n-id="menu-report-broken-site"/> +--- a/browser/base/content/browser-menubar.inc 2025-08-26 21:16:57.929903122 +0900 ++++ b/browser/base/content/browser-menubar.inc 2025-08-26 21:17:09.257918204 +0900 +@@ -431,6 +431,7 @@ + disabled="true" + appmenu-data-l10n-id="appmenuitem-report-broken-site"/> <menuitem id="feedbackPage" + hidden="true" - oncommand="openFeedbackPage()" data-l10n-id="menu-help-share-ideas" appmenu-data-l10n-id="appmenu-help-share-ideas"/> + <menuitem id="helpSafeMode" diff --git a/data/patches/icecat-about-dialog.patch b/data/patches/icecat-about-dialog.patch index c7e77b0..87dc835 100644 --- a/data/patches/icecat-about-dialog.patch +++ b/data/patches/icecat-about-dialog.patch @@ -1,16 +1,16 @@ ---- a/browser/base/content/aboutDialog.xhtml -+++ b/browser/base/content/aboutDialog.xhtml -@@ -148,7 +148,6 @@ +--- a/browser/base/content/aboutDialog.xhtml 2025-08-26 21:23:08.866394736 +0900 ++++ b/browser/base/content/aboutDialog.xhtml 2025-08-26 21:23:19.986408921 +0900 +@@ -139,7 +139,6 @@ <hbox pack="center"> <label is="text-link" class="bottom-link" useoriginprincipal="true" href="about:license" data-l10n-id="bottomLinks-license"/> - <label is="text-link" class="bottom-link" useoriginprincipal="true" href="about:rights" data-l10n-id="bottomLinks-rights"/> -- <label is="text-link" class="bottom-link" href="https://www.mozilla.org/privacy/?utm_source=firefox-browser&utm_medium=firefox-desktop&utm_campaign=about-dialog" data-l10n-id="bottomLinks-privacy"/> + <label is="text-link" class="bottom-link" href="https://www.mozilla.org/about/legal/terms/firefox/" data-l10n-id="bottom-links-terms"/> +- <label is="text-link" class="bottom-link" href="https://www.mozilla.org/privacy/firefox/?utm_source=firefox-browser&utm_medium=firefox-desktop&utm_campaign=about-dialog" data-l10n-id="bottom-links-privacy"/> </hbox> <description id="trademark" data-l10n-id="trademarkInfo"></description> </vbox> ---- a/browser/base/content/aboutDialog.css -+++ b/browser/base/content/aboutDialog.css -@@ -38,10 +38,9 @@ +--- a/browser/base/content/aboutDialog.css 2025-08-26 21:26:43.618669160 +0900 ++++ b/browser/base/content/aboutDialog.css 2025-08-26 21:31:54.207067616 +0900 +@@ -32,10 +32,9 @@ #rightBox { background-image: url("chrome://branding/content/about-wordmark.svg"); background-repeat: no-repeat; @@ -19,6 +19,9 @@ padding-top: 38px; - margin-top: 20px; + margin-top: 60px; - } - + /* We don't want this box to contribute arbitrarily to the intrinsic size of + * the dialog, so set the width to a reasonable size, but let it flex to take + * all available space. */ +--- a/browser/base/content/aboutDialog.css ++++ b/browser/base/content/aboutDialog.css #rightBox:-moz-locale-dir(rtl) { diff --git a/data/patches/moz-configure-changes.patch b/data/patches/moz-configure-changes.patch index 6f0525e..5745b38 100644 --- a/data/patches/moz-configure-changes.patch +++ b/data/patches/moz-configure-changes.patch @@ -1,18 +1,41 @@ +diff --git a/browser/moz.configure b/browser/moz.configure +index e8b401a7dfb2..d5b3117ce3d8 100644 --- a/browser/moz.configure +++ b/browser/moz.configure -@@ -5,11 +5,11 @@ +@@ -5,16 +5,17 @@ # file, You can obtain one at http://mozilla.org/MPL/2.0/. imply_option("MOZ_PLACES", True) -imply_option("MOZ_SERVICES_HEALTHREPORT", True) -+imply_option("MOZ_SERVICES_HEALTHREPORT", False) - imply_option("MOZ_SERVICES_SYNC", True) +-imply_option("MOZ_SERVICES_SYNC", True) -imply_option("MOZ_DEDICATED_PROFILES", True) -imply_option("MOZ_BLOCK_PROFILE_DOWNGRADE", True) -imply_option("MOZ_NORMANDY", True) ++imply_option("MOZ_SERVICES_HEALTHREPORT", False) ++imply_option("MOZ_SERVICES_SYNC", False) +imply_option("MOZ_DEDICATED_PROFILES", False) +imply_option("MOZ_BLOCK_PROFILE_DOWNGRADE", False) +imply_option("MOZ_NORMANDY", False) + imply_option("MOZ_PROFILE_MIGRATOR", True) + + +-imply_option("MOZ_APP_VENDOR", "Mozilla") ++imply_option("MOZ_APP_VENDOR", "GNU") + imply_option("MOZ_APP_ID", "{ec8030f7-c20a-464f-9b0e-13a3a9e97384}") ++imply_option("MOZ_APP_PROFILE", "mozilla/icecat") + # Include the DevTools client, not just the server (which is the default) + imply_option("MOZ_DEVTOOLS", "all") + imply_option("BROWSER_CHROME_URL", "chrome://browser/content/browser.xhtml") +diff --git a/build/moz.configure/init.configure b/build/moz.configure/init.configure +index 193272588caa..da8a729548c8 100644 +--- a/build/moz.configure/init.configure ++++ b/build/moz.configure/init.configure +@@ -991,7 +991,7 @@ set_config("MOZ_BUILD_APP", build_project) + set_define("MOZ_BUILD_APP", build_project) + + +-option(env="MOZILLA_OFFICIAL", help="Build an official release") ++option(env="MOZILLA_OFFICIAL", help="Build an official release", default=False) + - with only_when(target_has_linux_kernel & compile_environment): - option(env="MOZ_NO_PIE_COMPAT", help="Enable non-PIE wrapper") + @depends("MOZILLA_OFFICIAL") diff --git a/makeicecat b/makeicecat index fc0bb76..552a41e 100755 --- a/makeicecat +++ b/makeicecat @@ -21,12 +21,13 @@ # metadata -readonly FFMAJOR=128 -readonly FFMINOR=14 +readonly FFMAJOR=140 +readonly FFMINOR=2 readonly FFSUB=0 readonly FFBUILD=1 readonly GNUVERSION=1 -readonly SOURCEBALL_CHECKSUM='93b9ef6229f41cb22ff109b95bbf61a78395a0fe4b870192eeca22947cb09a53' +# SHA-256 +readonly SOURCEBALL_CHECKSUM='956dce675c3b706d563caf07ed3ca9af632ab830be710dfd4351da78a0a2ef55' readonly SOURCEBALL_SIGNINGKEY='14F26682D0916CDD81E37B6D61B7B526D98F0353' readonly FFVERSION=${FFMAJOR}.${FFMINOR}.${FFSUB} readonly SOURCEBALL=firefox-${FFVERSION}esr.source.tar.xz @@ -41,7 +42,7 @@ readonly LIST_URL=lists.gnu.org/mailman/listinfo/bug-gnuzilla # l10n readonly L10N_URL=https://github.com/mozilla-l10n/firefox-l10n -readonly L10N_REV=fcd0300e8478d1ec4d1c097a073ddb8e1e0351e3 +readonly L10N_REV=a0c1ffda4ed19c0399e4175610361179e09829de readonly L10N_CMP_URL=https://github.com/mozilla/compare-locales readonly L10N_CMP_REV=RELEASE_9_0_4 readonly L10N_PREFS_DIR=browser/chrome/browser/preferences @@ -377,7 +378,7 @@ configure() sed '/"datareporting\.healthreport\.uploadEnabled"/s/true/false/' -i modules/libpref/init/all.js # Custom privacy statement link - sed "s|https://www\\.mozilla\\.org/legal/privacy/|https://${LEGALINFO_URL}|" -i ./browser/app/profile/firefox.js ./toolkit/content/aboutRights.xhtml + sed "s|https://www\\.mozilla\\.org/legal/privacy/|https://${LEGALINFO_URL}|" -i ./browser/app/profile/firefox.js # Sanitize lists local plugin_file @@ -393,8 +394,8 @@ configure() # Disable activity-stream anti-features. # These are not condensed into a single sed script so that it # fails on individual commands that didn't change the source - local activity_stream=browser/components/newtab/lib/ActivityStream.sys.mjs - sed '/^const DEFAULT_SITES/,/^])\;/c const DEFAULT_SITES = new Map\([[""]]\);' -i browser/components/newtab/lib/DefaultSites.sys.mjs + local activity_stream=browser/extensions/newtab/lib/ActivityStream.sys.mjs + sed '/^const DEFAULT_SITES/,/^])\;/c const DEFAULT_SITES = new Map\([[""]]\);' -i browser/extensions/newtab/lib/DefaultSites.sys.mjs sed '/"showSponsored"/,/value/s/value: true/value: false/' -i $activity_stream sed '/ "telemetry"/,/value/s/value: true/value: false/' -i $activity_stream sed '/"section\.highlights\.includePocket"/,/value/s/value: true/value: false/' -i $activity_stream @@ -405,11 +406,10 @@ configure() sed '/"telemetry\.structuredIngestion\.endpoint"/,/value/s/value: .*/value: "",/' -i $activity_stream sed '/name: "telemetry"/,/value/s/value: true/value: false/' -i $activity_stream sed '/name: "system\.topstories"/,/},/s/.*!!locales.*/false/' -i $activity_stream - sed 's/Ubuntu, //' -i browser/components/newtab/css/activity-stream*.css - sed '/^]$/d' -i browser/components/newtab/data/content/tippytop/top_sites.json - sed 's/}$/},/' -i browser/components/newtab/data/content/tippytop/top_sites.json - cat << EOF >> browser/components/newtab/data/content/tippytop/top_sites.json + sed '/^]$/d' -i browser/components/topsites/content/tippytop/top_sites.json + sed 's/}$/},/' -i browser/components/topsites/content/tippytop/top_sites.json + cat << EOF >> browser/components/topsites/content/tippytop/top_sites.json { "domains": ["gnu.org"], "image_url": "images/gnu.png", @@ -505,8 +505,8 @@ EOF } EOF - cp "${DATADIR}"/newtab/*.ico browser/components/newtab/data/content/tippytop/favicons/ - cp "${DATADIR}"/newtab/*.png browser/components/newtab/data/content/tippytop/images/ + cp "${DATADIR}"/newtab/*.ico browser/components/topsites/content/tippytop/favicons/ + cp "${DATADIR}"/newtab/*.png browser/components/topsites/content/tippytop/images/ # IceCat menu l10n /bin/sed '/appmenuitem-settings/,+1s/\(.*.label = \)\(.*\)/\1\2\nappmenuitem-icecat-settings =\n\1IceCat \2/' -i ./l10n/*/browser/browser/appmenu.ftl ./browser/locales/en-US/browser/appmenu.ftl @@ -541,7 +541,6 @@ configure_mobile() cat << EOF >> mobile/android/confvars.sh # IceCat settings -MOZ_APP_VENDOR=GNU MOZ_APP_VERSION=${FFVERSION} MOZ_PAY=0 MOZ_SERVICES_HEALTHREPORT=0 @@ -606,15 +605,6 @@ apply_branding() # Custom legal about pages find l10n -wholename '*/brand.ftl' | xargs /bin/sed 's/^trademarkInfo = .*/trademarkInfo = The IceCat logo is Copyright 2008-2015 Free Software Foundation, released under the terms of the GNU Lesser General Public License, version 3 or any later version./' -i - local string - for string in rights-intro-point-2 rights-intro-point-3 rights-intro-point-4 rights-intro-point-5 rights-intro-point-6 rights-webservices rights-safebrowsing - do - find -name aboutRights.ftl | xargs sed -i "s/^${string}.*/${string} = /" - done - for string in helpus community-2 community-exp - do - find -wholename '*/browser/aboutDialog.ftl' | xargs sed -i "s/^${string}.*/${string} = /" - done cp "${DATADIR}"/aboutRights.xhtml toolkit/content/aboutRights.xhtml cp "${DATADIR}"/aboutRights.xhtml toolkit/content/aboutRights-unbranded.xhtml sed -i 's|<a href="http://www\.mozilla\.org/">Mozilla Project</a>|<a href="http://www.gnu.org/">GNU Project</a>|g' browser/base/content/overrides/app-license.html @@ -632,8 +622,10 @@ apply_branding() apply_batch_branding() { - find . -depth | grep -i fennec | rename_files -e s/fennec/icecatmobile/g -e s/Fennec/IceCatMobile/g - find . -depth | grep -i firefox | rename_files -e s/firefox/icecat/g -e s/Firefox/IceCat/g + find . -depth | grep -i fennec | + rename_files -e s/fennec/icecatmobile/g -e s/Fennec/IceCatMobile/g + find . -depth | grep -i firefox | + rename_files -e s/firefox/icecat/g -e s/Firefox/IceCat/g echo "Running batch rebranding (this will take a while)" local sed_script=" @@ -672,7 +664,9 @@ s|https://www\\.mozilla\\.org/icecat/?utm_source=synceol|https://www.mozilla.org s|www\\.gnu\\.org/software/gnuzilla/icecat-help|libreplanet.org/wiki/Group:IceCat/Help|g; " - find . -type f -not -iregex '.*changelog.*' -not -iregex '.*copyright.*' -not -iregex '.*third_party/rust.*' -execdir /bin/sed --follow-symlinks -i "${sed_script}" '{}' ';' + find . -type f -not -iregex '.*changelog.*' -not -iregex '.*copyright.*' \ + -not -iregex '.*third_party/rust.*' \ + -execdir /bin/sed --follow-symlinks -i "${sed_script}" '{}' ';' find l10n -type f -execdir /bin/sed --follow-symlinks -i "s/from GNU/from Mozilla/g" '{}' ';' @@ -713,27 +707,18 @@ s/OpenSource/Free Software/g; # Ditto for browser/modules/moz.build sort_inner_list_in_file "EXTRA_JS_MODULES += [" "]" browser/modules/moz.build + # Adjust the capitalization of IceCat to match the expected symbol + # names in build-time generated source files like TelemetryEventEnums.h. + sed 's/IceCatview/Icecatview/g' -i browser/components/icecatview/metrics.yaml + # Copy js settings cat "${DATADIR}"/settings.js >> browser/app/profile/icecat.js cat << EOF >> browser/confvars.sh # IceCat settings MOZ_APP_BASENAME=IceCat -MOZ_APP_UA_NAME=Firefox -MOZ_APP_VENDOR=GNU MOZ_APP_VERSION=${FFVERSION} -MOZ_APP_PROFILE=mozilla/icecat -MOZ_PAY=0 -MOZ_SERVICES_HEALTHREPORT=0 -MOZ_SERVICES_HEALTHREPORTER=0 -MOZ_SERVICES_FXACCOUNTS=0 -MOZ_SERVICES_METRICS=0 MOZ_DATA_REPORTING=0 -MOZ_NORMANDY=0 -MOZ_SERVICES_SYNC=0 -MOZ_DEVICES=0 -MOZ_ANDROID_GOOGLE_PLAY_SERVICES=0 -MOZ_ADDON_SIGNING=0 EOF } diff --git a/tools/process-json-files.py b/tools/process-json-files.py index d449057..2407fa9 100644 --- a/tools/process-json-files.py +++ b/tools/process-json-files.py @@ -148,48 +148,6 @@ class Changes(RemoteSettings): return File(cls.OUTPUT_PATH, changes) -class SearchConfig(RemoteSettings): - JSON_PATHS = ( - RemoteSettings.DUMPS_PATH_ABSOLUTE / - 'main/search-config.json', - ) - SCHEMA_PATH = arguments.MAIN_PATH / \ - 'toolkit/components/search/schema/search-config-schema.json' - OUTPUT_PATH = JSON_PATHS[0] - - _DUCKDUCKGO_SEARCH_ENGINE_ID = 'ddg <at> search.mozilla.org' - - @classmethod - def should_drop_record(cls, search_engine): - return search_engine['webExtension']['id'] not in ( - cls._DUCKDUCKGO_SEARCH_ENGINE_ID, 'wikipedia <at> search.mozilla.org') - - @classmethod - def process_record(cls, search_engine): - [search_engine.pop(key, None) - for key in ['extraParams', 'telemetryId']] - - general_specifier = {} - for specifier in search_engine['appliesTo'].copy(): - if 'application' in specifier: - if 'distributions' in specifier['application']: - search_engine['appliesTo'].remove(specifier) - continue - specifier['application'].pop('extraParams', None) - - if 'included' in specifier and 'everywhere' in specifier[ - 'included'] and specifier['included']['everywhere']: - general_specifier = specifier - - if not general_specifier: - general_specifier = {'included': {'everywhere': True}} - search_engine['appliesTo'].insert(0, general_specifier) - if search_engine['webExtension']['id'] == cls._DUCKDUCKGO_SEARCH_ENGINE_ID: - general_specifier['default'] = 'yes' - - return search_engine - - class SearchConfigV2(RemoteSettings): JSON_PATHS = ( RemoteSettings.DUMPS_PATH_ABSOLUTE / @@ -224,20 +182,6 @@ class SearchConfigV2(RemoteSettings): return record -class SearchConfigOverrides(RemoteSettings): - JSON_PATHS = ( - RemoteSettings.DUMPS_PATH_ABSOLUTE / - 'main/search-config-overrides.json', - ) - SCHEMA_PATH = arguments.MAIN_PATH / \ - 'toolkit/components/search/schema/search-config-overrides-schema.json' - OUTPUT_PATH = JSON_PATHS[0] - - @classmethod - def should_drop_record(cls, record): - return True - - class SearchConfigOverridesV2(RemoteSettings): JSON_PATHS = ( RemoteSettings.DUMPS_PATH_ABSOLUTE / @@ -295,8 +239,7 @@ class TopSites(RemoteSettings): # To reflect the latest timestamps, Changes class should always come after # all other RemoteSettings subclasses -processors = (SearchConfig, SearchConfigOverrides, - SearchConfigV2, SearchConfigOverridesV2, +processors = (SearchConfigV2, SearchConfigOverridesV2, Changes) for processor in processors: -- 2.51.0
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.