diff --git a/.gitignore b/.gitignore index 23d01e2..1a92e2c 100644 --- a/.gitignore +++ b/.gitignore @@ -611,3 +611,5 @@ firefox-3.6.4.source.tar.bz2 /firefox-langpacks-120.0-20231120.tar.xz /firefox-120.0.1.source.tar.xz /firefox-langpacks-120.0.1-20231201.tar.xz +/firefox-121.0.source.tar.xz +/firefox-langpacks-121.0-20231218.tar.xz diff --git a/disable-openh264-download.patch b/disable-openh264-download.patch index 01fa2da..0631850 100644 --- a/disable-openh264-download.patch +++ b/disable-openh264-download.patch @@ -1,32 +1,30 @@ -diff -up firefox-81.0/toolkit/modules/GMPInstallManager.sys.mjs.old firefox-81.0/toolkit/modules/GMPInstallManager.sys.mjs ---- firefox-81.0/toolkit/modules/GMPInstallManager.sys.mjs.old 2020-09-25 10:39:04.769458703 +0200 -+++ firefox-81.0/toolkit/modules/GMPInstallManager.sys.mjs 2020-09-25 10:39:22.038504747 +0200 -@@ -54,10 +54,6 @@ function getScopedLogger(prefix) { - - const LOCAL_GMP_SOURCES = [ - { -- id: "gmp-gmpopenh264", -- src: "chrome://global/content/gmp-sources/openh264.json", -- }, -- { - id: "gmp-widevinecdm", - src: "chrome://global/content/gmp-sources/widevinecdm.json", - }, -diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn ---- a/toolkit/content/jar.mn -+++ b/toolkit/content/jar.mn -@@ -108,7 +108,6 @@ toolkit.jar: +diff -up firefox-121.0/toolkit/content/jar.mn.disable-openh264-download firefox-121.0/toolkit/content/jar.mn +--- firefox-121.0/toolkit/content/jar.mn.disable-openh264-download 2023-12-18 20:15:04.352014249 +0100 ++++ firefox-121.0/toolkit/content/jar.mn 2023-12-18 20:19:26.857929200 +0100 +@@ -130,7 +130,6 @@ toolkit.jar: #ifdef XP_MACOSX content/global/macWindowMenu.js #endif - content/global/gmp-sources/openh264.json (gmp-sources/openh264.json) content/global/gmp-sources/widevinecdm.json (gmp-sources/widevinecdm.json) - - # Third party files -diff --git a/toolkit/modules/GMPInstallManager.sys.mjs b/toolkit/modules/GMPInstallManager.sys.mjs ---- a/toolkit/modules/GMPInstallManager.sys.mjs -+++ b/toolkit/modules/GMPInstallManager.sys.mjs -@@ -238,6 +234,9 @@ GMPInstallManager.prototype = { + content/global/gmp-sources/widevinecdm_l1.json (gmp-sources/widevinecdm_l1.json) + +diff -up firefox-121.0/toolkit/modules/GMPInstallManager.sys.mjs.disable-openh264-download firefox-121.0/toolkit/modules/GMPInstallManager.sys.mjs +--- firefox-121.0/toolkit/modules/GMPInstallManager.sys.mjs.disable-openh264-download 2023-12-11 21:42:21.000000000 +0100 ++++ firefox-121.0/toolkit/modules/GMPInstallManager.sys.mjs 2023-12-18 20:18:52.665768579 +0100 +@@ -35,11 +35,6 @@ function getScopedLogger(prefix) { + + const LOCAL_GMP_SOURCES = [ + { +- id: "gmp-gmpopenh264", +- src: "chrome://global/content/gmp-sources/openh264.json", +- installByDefault: true, +- }, +- { + id: "gmp-widevinecdm", + src: "chrome://global/content/gmp-sources/widevinecdm.json", + installByDefault: true, +@@ -421,6 +416,9 @@ GMPInstallManager.prototype = { * downloaderr, verifyerr or previouserrorencountered */ installAddon(gmpAddon) { diff --git a/firefox.spec b/firefox.spec index 3f90120..c9082b9 100644 --- a/firefox.spec +++ b/firefox.spec @@ -168,13 +168,13 @@ ExcludeArch: i686 Summary: Mozilla Firefox Web browser Name: firefox -Version: 120.0.1 +Version: 121.0 Release: 1%{?pre_tag}%{?dist} URL: https://www.mozilla.org/firefox/ License: MPLv1.1 or GPLv2+ or LGPLv2+ Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}%{?pre_version}/source/firefox-%{version}%{?pre_version}.source.tar.xz %if %{with langpacks} -Source1: firefox-langpacks-%{version}%{?pre_version}-20231201.tar.xz +Source1: firefox-langpacks-%{version}%{?pre_version}-20231218.tar.xz %endif Source2: cbindgen-vendor.tar.xz Source3: dump_syms-vendor.tar.xz @@ -248,7 +248,6 @@ Patch242: 0026-Add-KDE-integration-to-Firefox.patch Patch402: mozilla-1196777.patch Patch407: mozilla-1667096.patch Patch408: D167159.diff -Patch411: mozilla-1762816.patch # PGO/LTO patches Patch600: pgo.patch @@ -540,7 +539,6 @@ This package contains results of tests executed during build. %patch402 -p1 -b .1196777 %patch407 -p1 -b .1667096 %patch408 -p1 -b .D167159 -%patch411 -p1 -b .mozilla-1762816 # PGO patches %if %{build_with_pgo} @@ -1149,6 +1147,9 @@ fi #--------------------------------------------------------------------- %changelog +* Fri Dec 18 2023 Martin Stransky - 121.0-1 +- Updated to 121.0 + * Fri Dec 01 2023 Martin Stransky - 120.0.1-1 - Updated to 120.0.1 diff --git a/mozilla-1762816.patch b/mozilla-1762816.patch deleted file mode 100644 index 8d302df..0000000 --- a/mozilla-1762816.patch +++ /dev/null @@ -1,121 +0,0 @@ -changeset: 688555:933a3df01cfa -tag: tip -parent: 688549:db8c28afe588 -user: stransky -date: Tue Oct 31 15:27:05 2023 +0100 -files: widget/gtk/nsLookAndFeel.cpp widget/gtk/nsLookAndFeel.h -description: -Bug 1762816 [Linux] Watch org.freedesktop.portal.Desktop DBus name and get session data only if it's running r?emilio - -Don't autostart org.freedesktop.portal.Desktop by g_dbus_proxy_new_for_bus_sync(), that may block Firefox start for 30~ seconds after desktop start. -Use g_bus_watch_name() and get session data only if org.freedesktop.portal.Desktop is available. - -Differential Revision: https://phabricator.services.mozilla.com/D192335 - - -diff --git a/widget/gtk/nsLookAndFeel.cpp b/widget/gtk/nsLookAndFeel.cpp ---- a/widget/gtk/nsLookAndFeel.cpp -+++ b/widget/gtk/nsLookAndFeel.cpp -@@ -134,6 +134,35 @@ static void settings_changed_signal_cb(G - } - } - -+void nsLookAndFeel::WatchDBus() { -+ GUniquePtr error; -+ mDBusSettingsProxy = dont_AddRef(g_dbus_proxy_new_for_bus_sync( -+ G_BUS_TYPE_SESSION, G_DBUS_PROXY_FLAGS_NONE, nullptr, -+ "org.freedesktop.portal.Desktop", "/org/freedesktop/portal/desktop", -+ "org.freedesktop.portal.Settings", nullptr, getter_Transfers(error))); -+ if (mDBusSettingsProxy) { -+ g_signal_connect(mDBusSettingsProxy, "g-signal", -+ G_CALLBACK(settings_changed_signal_cb), this); -+ } else { -+ LOGLNF("Can't create DBus proxy for settings: %s\n", error->message); -+ return; -+ } -+ -+ // DBus interface was started after L&F init so we need to load -+ // our settings from DBus explicitly. -+ if (!sIgnoreChangedSettings) { -+ OnColorSchemeSettingChanged(); -+ } -+} -+ -+void nsLookAndFeel::UnwatchDBus() { -+ if (mDBusSettingsProxy) { -+ g_signal_handlers_disconnect_by_func( -+ mDBusSettingsProxy, FuncToGpointer(settings_changed_signal_cb), this); -+ mDBusSettingsProxy = nullptr; -+ } -+} -+ - nsLookAndFeel::nsLookAndFeel() { - static constexpr nsLiteralCString kObservedSettings[] = { - // Affects system font sizes. -@@ -172,27 +201,29 @@ nsLookAndFeel::nsLookAndFeel() { - nsWindow::GetSystemGtkWindowDecoration() != nsWindow::GTK_DECORATION_NONE; - - if (ShouldUsePortal(PortalKind::Settings)) { -- GUniquePtr error; -- mDBusSettingsProxy = dont_AddRef(g_dbus_proxy_new_for_bus_sync( -- G_BUS_TYPE_SESSION, G_DBUS_PROXY_FLAGS_NONE, nullptr, -- "org.freedesktop.portal.Desktop", "/org/freedesktop/portal/desktop", -- "org.freedesktop.portal.Settings", nullptr, getter_Transfers(error))); -- if (mDBusSettingsProxy) { -- g_signal_connect(mDBusSettingsProxy, "g-signal", -- G_CALLBACK(settings_changed_signal_cb), this); -- } else { -- LOGLNF("Can't create DBus proxy for settings: %s\n", error->message); -- } -+ mDBusID = g_bus_watch_name( -+ G_BUS_TYPE_SESSION, "org.freedesktop.portal.Desktop", -+ G_BUS_NAME_WATCHER_FLAGS_AUTO_START, -+ [](GDBusConnection*, const gchar*, const gchar*, -+ gpointer data) -> void { -+ auto* lnf = static_cast(data); -+ lnf->WatchDBus(); -+ }, -+ [](GDBusConnection*, const gchar*, gpointer data) -> void { -+ auto* lnf = static_cast(data); -+ lnf->UnwatchDBus(); -+ }, -+ this, nullptr); - } - } - - nsLookAndFeel::~nsLookAndFeel() { - ClearRoundedCornerProvider(); -- if (mDBusSettingsProxy) { -- g_signal_handlers_disconnect_by_func( -- mDBusSettingsProxy, FuncToGpointer(settings_changed_signal_cb), this); -- mDBusSettingsProxy = nullptr; -+ if (mDBusID) { -+ g_bus_unwatch_name(mDBusID); -+ mDBusID = 0; - } -+ UnwatchDBus(); - g_signal_handlers_disconnect_by_func( - gtk_settings_get_default(), FuncToGpointer(settings_changed_cb), nullptr); - } -diff --git a/widget/gtk/nsLookAndFeel.h b/widget/gtk/nsLookAndFeel.h ---- a/widget/gtk/nsLookAndFeel.h -+++ b/widget/gtk/nsLookAndFeel.h -@@ -53,6 +53,9 @@ class nsLookAndFeel final : public nsXPL - static bool ShouldHonorThemeScrollbarColors(); - mozilla::Maybe ComputeColorSchemeSetting(); - -+ void WatchDBus(); -+ void UnwatchDBus(); -+ - enum class ThemeFamily : uint8_t { - // Adwaita, the default GTK theme. - Adwaita, -@@ -160,6 +163,7 @@ class nsLookAndFeel final : public nsXPL - return mSystemThemeOverridden ? mAltTheme : mSystemTheme; - } - -+ uint32_t mDBusID = 0; - RefPtr mDBusSettingsProxy; - mozilla::Maybe mColorSchemePreference; - int32_t mCaretBlinkTime = 0; - diff --git a/sources b/sources index 58f60ce..b336129 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (mochitest-python.tar.gz) = 089b1593068b76f4572af0086eaccf52a6a1299bfffb58593206d19bf021ae381f2380bbfeb4371586cd53706ff6dde3d240238b2caf19b96c57dfc2f4524e36 SHA512 (cbindgen-vendor.tar.xz) = 3e7eaff088db918e95f5505e5feeb06e8b7b95cc62042a6d163a708fc76baea43d21bf49cf7e02bc64fdfc61e8d7704057dbb225098de56e110783104d166c54 SHA512 (dump_syms-vendor.tar.xz) = 5769c052fa874a965eb8837776b01fb097e8930f45d0d0d2a93997c4fae8726184a192aee52302bde62e62897801b1463cae9283563d9d60e8b8ee80a250f2a3 -SHA512 (firefox-120.0.1.source.tar.xz) = dd0e3eb234d58c39431d1f100834ef4bcc8cfb89ff471a37b948eda4dd3874b63b1979cda39a0db0dd3b4a579b5f09a7d2d1f39d26fd9f2b8d5635e4b8738b6c -SHA512 (firefox-langpacks-120.0.1-20231201.tar.xz) = 83252744496ef23bac310e680e8e2de0a8e9a68008f9295c5f2cbe37a86b59b0d06108d98cef5ee6c86e9c17efa6e0f69fa237ad40254e3d057a04d220a37ec1 +SHA512 (firefox-121.0.source.tar.xz) = 52e9e21ce825c4e58f09fd2c7347f1ac4efbca47e119136a712f0d4ee80c769ef80a43bad74a4c88cd377f804f5780b07f7af5b779f3fb5d244fa095e6b3b18a +SHA512 (firefox-langpacks-121.0-20231218.tar.xz) = 7e83b550cfdaeb876b1e65fdd8d7178f990805884d95ccf4b273730a417ea0b51db822a89064fdf67158e6f57f6bd4e2387570c33680c20a924ac872ec4bdec9