From 511cf20c4f8df555e65b37f1303310c8b4ac2af3 Mon Sep 17 00:00:00 2001 From: Eike Rathke Date: Wed, 20 Sep 2023 00:05:06 +0200 Subject: [PATCH 1/5] Temporarily revert rebase to 115 to update to the last 102.* This is a combination of 10 commits. Revert "Update to 115.1.1" This reverts commit e123d8e3a651f61df4687c30065a69b303480628. Revert "Use python3.11 instead of python3.12" This reverts commit a5dc8a324f977f993c015a856dde6d3c995210cd. Revert "Use python3.11 instead of python3.12" This reverts commit 28f70df4a722912e02f1eac896cd9f897b143574. Revert "Removed old ac_add_options and variables" This reverts commit 9142c39a1f06ba1a813950dc86989c3f18a760ab. Revert "Added glxtest and vaapitest to the %files section" This reverts commit a3ab6bbdcb41033e3a1f67a48be4199454763e38. Revert "Use python3.11" This reverts commit 402483886d673aae3177d9c6681da075333a42e6. Revert "Use python3.11" This reverts commit 3bbad3dba90d5c2e7ae706344d5afb56458e6c7b. Revert "Set MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=system" This reverts commit 3b2042664bd8e13a76a1a618441dd0e006bcf4c3. Revert "added missing patch" This reverts commit 57bdee481063dfb96f1f28fa527592cf50a3abd0. Revert "Rebase to 115" This reverts commit 0522d97f2cfe48ae22b6a59fd14a5a93e40399f6. --- .gitignore | 4 - D165150.diff | 163 ++++++++++++++++++++++++++++++++ D165152.diff | 117 +++++++++++++++++++++++ build-disable-elfhack.patch | 20 ++-- build-rnp.patch | 11 --- gcc13-header-dependencies.patch | 30 ++++++ mozilla-1170092.patch | 64 +++++++------ sources | 6 +- thunderbird.spec | 74 +++++++++++---- 9 files changed, 412 insertions(+), 77 deletions(-) create mode 100644 D165150.diff create mode 100644 D165152.diff delete mode 100644 build-rnp.patch create mode 100644 gcc13-header-dependencies.patch diff --git a/.gitignore b/.gitignore index 76652ef..473fdcf 100644 --- a/.gitignore +++ b/.gitignore @@ -406,7 +406,3 @@ thunderbird-langpacks-3.1.2-20100803.tar.bz2 /thunderbird-langpacks-102.12.0-20230605.tar.xz /thunderbird-102.13.0.source.tar.xz /thunderbird-langpacks-102.13.0-20230707.tar.xz -/thunderbird-langpacks-115.0.1-20230720.tar.xz -/thunderbird-115.0.1.source.tar.xz -/thunderbird-langpacks-115.1.1-20230815.tar.xz -/thunderbird-115.1.1.source.tar.xz diff --git a/D165150.diff b/D165150.diff new file mode 100644 index 0000000..fc9a9f7 --- /dev/null +++ b/D165150.diff @@ -0,0 +1,163 @@ +diff -up thunderbird-102.6.0/widget/gtk/WidgetUtilsGtk.cpp.D165150 thunderbird-102.6.0/widget/gtk/WidgetUtilsGtk.cpp +--- thunderbird-102.6.0/widget/gtk/WidgetUtilsGtk.cpp.D165150 2022-12-12 22:37:39.000000000 +0100 ++++ thunderbird-102.6.0/widget/gtk/WidgetUtilsGtk.cpp 2022-12-20 14:43:29.742482848 +0100 +@@ -9,11 +9,20 @@ + #include "mozilla/UniquePtr.h" + #include "nsReadableUtils.h" + #include "nsWindow.h" ++#include "nsGtkKeyUtils.h" + + #include + #include + #include + ++#ifdef MOZ_LOGGING ++# include "mozilla/Logging.h" ++extern mozilla::LazyLogModule gWidgetLog; ++# define LOGW(...) MOZ_LOG(gWidgetLog, mozilla::LogLevel::Debug, (__VA_ARGS__)) ++#else ++# define LOGW(...) ++#endif /* MOZ_LOGGING */ ++ + namespace mozilla::widget { + + int32_t WidgetUtilsGTK::IsTouchDeviceSupportPresent() { +@@ -165,4 +174,108 @@ nsTArray ParseTextURIList(con + return result; + } + ++#ifdef MOZ_WAYLAND ++static gboolean token_failed(gpointer aData); ++ ++class XDGTokenRequest { ++ public: ++ void SetTokenID(const char* aTokenID) { ++ mTransferPromise->Resolve(aTokenID, __func__); ++ } ++ void Cancel() { ++ mTransferPromise->Reject(false, __func__); ++ mActivationTimeoutID = 0; ++ } ++ ++ XDGTokenRequest(xdg_activation_token_v1* aXdgToken, ++ RefPtr aTransferPromise) ++ : mXdgToken(aXdgToken), mTransferPromise(aTransferPromise) { ++ mActivationTimeoutID = ++ g_timeout_add(sActivationTimeout, token_failed, this); ++ } ++ ~XDGTokenRequest() { ++ if (mXdgToken) { ++ xdg_activation_token_v1_destroy(mXdgToken); ++ } ++ if (mActivationTimeoutID) { ++ g_source_remove(mActivationTimeoutID); ++ } ++ } ++ ++ private: ++ xdg_activation_token_v1* mXdgToken; ++ RefPtr mTransferPromise; ++ guint mActivationTimeoutID; ++ // Reject FocusRequestPromise if we don't get XDG token in 0.5 sec. ++ const int sActivationTimeout = 500; ++}; ++ ++// Failed to get token in time ++static gboolean token_failed(gpointer data) { ++ UniquePtr request(static_cast(data)); ++ request->Cancel(); ++ return false; ++} ++ ++// We've got activation token from Wayland compositor so it's time to use it. ++static void token_done(gpointer data, struct xdg_activation_token_v1* provider, ++ const char* tokenID) { ++ UniquePtr request(static_cast(data)); ++ request->SetTokenID(tokenID); ++} ++ ++static const struct xdg_activation_token_v1_listener token_listener = { ++ token_done, ++}; ++ ++RefPtr RequestWaylandFocus() { ++ RefPtr sourceWindow = nsWindow::GetFocusedWindow(); ++ if (!sourceWindow) { ++ return nullptr; ++ } ++ ++ RefPtr display = WaylandDisplayGet(); ++ xdg_activation_v1* xdg_activation = display->GetXdgActivation(); ++ if (!xdg_activation) { ++ return nullptr; ++ } ++ ++ wl_surface* focusSurface; ++ uint32_t focusSerial; ++ KeymapWrapper::GetFocusInfo(&focusSurface, &focusSerial); ++ if (!focusSurface) { ++ return nullptr; ++ } ++ ++ GdkWindow* gdkWindow = gtk_widget_get_window(sourceWindow->GetGtkWidget()); ++ if (!gdkWindow) { ++ return nullptr; ++ } ++ wl_surface* surface = gdk_wayland_window_get_wl_surface(gdkWindow); ++ if (focusSurface != surface) { ++ return nullptr; ++ } ++ ++ RefPtr transferPromise = ++ new FocusRequestPromise::Private(__func__); ++ ++ xdg_activation_token_v1* aXdgToken = ++ xdg_activation_v1_get_activation_token(xdg_activation); ++ xdg_activation_token_v1_add_listener( ++ aXdgToken, &token_listener, ++ new XDGTokenRequest(aXdgToken, transferPromise)); ++ xdg_activation_token_v1_set_serial(aXdgToken, focusSerial, ++ KeymapWrapper::GetSeat()); ++ xdg_activation_token_v1_set_surface(aXdgToken, focusSurface); ++ xdg_activation_token_v1_commit(aXdgToken); ++ ++ return transferPromise.forget(); ++} ++ ++bool CanTransferWaylandFocus() { ++ return GdkIsWaylandDisplay() && nsWindow::GetFocusedWindow() && ++ !nsWindow::GetFocusedWindow()->IsDestroyed(); ++} ++#endif ++ + } // namespace mozilla::widget +diff -up thunderbird-102.6.0/widget/gtk/WidgetUtilsGtk.h.D165150 thunderbird-102.6.0/widget/gtk/WidgetUtilsGtk.h +--- thunderbird-102.6.0/widget/gtk/WidgetUtilsGtk.h.D165150 2022-12-12 22:37:41.000000000 +0100 ++++ thunderbird-102.6.0/widget/gtk/WidgetUtilsGtk.h 2022-12-20 13:44:15.343638003 +0100 +@@ -8,11 +8,13 @@ + + #include "nsString.h" + #include "nsTArray.h" ++#include "mozilla/MozPromise.h" + + #include + + typedef struct _GdkDisplay GdkDisplay; + typedef struct _GdkDevice GdkDevice; ++class nsWindow; + + namespace mozilla::widget { + +@@ -51,6 +53,12 @@ bool ShouldUsePortal(PortalKind); + // Parse text/uri-list + nsTArray ParseTextURIList(const nsACString& data); + ++#ifdef MOZ_WAYLAND ++using FocusRequestPromise = mozilla::MozPromise; ++bool CanTransferWaylandFocus(); ++RefPtr RequestWaylandFocus(); ++#endif ++ + } // namespace mozilla::widget + + #endif // WidgetUtilsGtk_h__ diff --git a/D165152.diff b/D165152.diff new file mode 100644 index 0000000..96350e9 --- /dev/null +++ b/D165152.diff @@ -0,0 +1,117 @@ +diff -up thunderbird-102.6.0/toolkit/system/gnome/nsGIOService.cpp.D165152 thunderbird-102.6.0/toolkit/system/gnome/nsGIOService.cpp +--- thunderbird-102.6.0/toolkit/system/gnome/nsGIOService.cpp.D165152 2022-12-12 22:37:40.000000000 +0100 ++++ thunderbird-102.6.0/toolkit/system/gnome/nsGIOService.cpp 2022-12-20 13:41:17.337477022 +0100 +@@ -19,6 +19,7 @@ + #include "mozilla/WidgetUtilsGtk.h" + #include "mozilla/StaticPrefs_widget.h" + #include "mozilla/net/DNS.h" ++#include "prenv.h" + + #include + #include +@@ -224,9 +225,7 @@ static RefPtr GetLaun + return context; + } + +-NS_IMETHODIMP +-nsGIOMimeApp::LaunchWithURI(nsIURI* aUri, +- mozilla::dom::BrowsingContext* aBrowsingContext) { ++static NS_IMETHODIMP LaunchWithURIImpl(RefPtr aInfo, nsIURI* aUri) { + GList uris = {0}; + nsCString spec; + aUri->GetSpec(spec); +@@ -235,7 +234,7 @@ nsGIOMimeApp::LaunchWithURI(nsIURI* aUri + + GUniquePtr error; + gboolean result = g_app_info_launch_uris( +- mApp, &uris, GetLaunchContext().get(), getter_Transfers(error)); ++ aInfo, &uris, GetLaunchContext().get(), getter_Transfers(error)); + if (!result) { + g_warning("Cannot launch application: %s", error->message); + return NS_ERROR_FAILURE; +@@ -244,6 +243,27 @@ nsGIOMimeApp::LaunchWithURI(nsIURI* aUri + return NS_OK; + } + ++NS_IMETHODIMP ++nsGIOMimeApp::LaunchWithURI(nsIURI* aUri, ++ mozilla::dom::BrowsingContext* aBrowsingContext) { ++ if (mozilla::widget::CanTransferWaylandFocus()) { ++ mozilla::widget::RequestWaylandFocus()->Then( ++ GetMainThreadSerialEventTarget(), __func__, ++ /* resolve */ ++ [app = RefPtr{mApp}, uri = RefPtr{aUri}](nsCString token) { ++ PR_SetEnv(ToNewCString("XDG_ACTIVATION_TOKEN="_ns + token)); ++ LaunchWithURIImpl(app, uri); ++ }, ++ /* reject */ ++ [app = RefPtr{mApp}, uri = RefPtr{aUri}](bool state) { ++ LaunchWithURIImpl(app, uri); ++ }); ++ return NS_OK; ++ } ++ ++ return LaunchWithURIImpl(mApp, aUri); ++} ++ + class GIOUTF8StringEnumerator final : public nsStringEnumeratorBase { + ~GIOUTF8StringEnumerator() = default; + +@@ -531,7 +551,7 @@ nsGIOService::GetDescriptionForMimeType( + return NS_OK; + } + +-nsresult nsGIOService::ShowURI(nsIURI* aURI) { ++static nsresult ShowURIImpl(nsIURI* aURI) { + nsAutoCString spec; + MOZ_TRY(aURI->GetSpec(spec)); + GUniquePtr error; +@@ -544,7 +564,24 @@ nsresult nsGIOService::ShowURI(nsIURI* a + return NS_OK; + } + +-static nsresult LaunchPath(const nsACString& aPath) { ++nsresult nsGIOService::ShowURI(nsIURI* aURI) { ++ if (mozilla::widget::CanTransferWaylandFocus()) { ++ mozilla::widget::RequestWaylandFocus()->Then( ++ GetMainThreadSerialEventTarget(), __func__, ++ /* resolve */ ++ [uri = RefPtr{aURI}](nsCString token) { ++ PR_SetEnv(ToNewCString("XDG_ACTIVATION_TOKEN="_ns + token)); ++ ShowURIImpl(uri); ++ }, ++ /* reject */ ++ [uri = RefPtr{aURI}](bool state) { ShowURIImpl(uri); }); ++ return NS_OK; ++ } ++ ++ return ShowURIImpl(aURI); ++} ++ ++static nsresult LaunchPathImpl(const nsACString& aPath) { + RefPtr file = dont_AddRef( + g_file_new_for_commandline_arg(PromiseFlatCString(aPath).get())); + GUniquePtr spec(g_file_get_uri(file)); +@@ -558,6 +595,22 @@ static nsresult LaunchPath(const nsACStr + return NS_OK; + } + ++static nsresult LaunchPath(const nsACString& aPath) { ++ if (mozilla::widget::CanTransferWaylandFocus()) { ++ mozilla::widget::RequestWaylandFocus()->Then( ++ GetMainThreadSerialEventTarget(), __func__, ++ /* resolve */ ++ [path = nsCString{aPath}](nsCString token) { ++ PR_SetEnv(ToNewCString("XDG_ACTIVATION_TOKEN="_ns + token)); ++ LaunchPathImpl(path); ++ }, ++ /* reject */ ++ [path = nsCString{aPath}](bool state) { LaunchPathImpl(path); }); ++ return NS_OK; ++ } ++ return LaunchPathImpl(aPath); ++} ++ + nsresult nsGIOService::LaunchFile(const nsACString& aPath) { + return LaunchPath(aPath); + } diff --git a/build-disable-elfhack.patch b/build-disable-elfhack.patch index 67bb731..04d49f2 100644 --- a/build-disable-elfhack.patch +++ b/build-disable-elfhack.patch @@ -1,12 +1,12 @@ -diff -up firefox-115.0.2/toolkit/moz.configure.disable-elfhack firefox-115.0.2/toolkit/moz.configure ---- firefox-115.0.2/toolkit/moz.configure.disable-elfhack 2023-07-18 12:21:22.507358334 +0200 -+++ firefox-115.0.2/toolkit/moz.configure 2023-07-18 12:52:55.972727498 +0200 -@@ -1520,7 +1520,7 @@ with only_when("--enable-compile-environ - "Cannot enable elfhack with lld." - " Use --enable-linker=bfd, --enable-linker=gold, or --disable-elf-hack" - ) -- return True -+ return False +diff -up firefox-97.0/toolkit/moz.configure.disable-elfhack firefox-97.0/toolkit/moz.configure +--- firefox-97.0/toolkit/moz.configure.disable-elfhack 2022-02-08 09:58:47.518047952 +0100 ++++ firefox-97.0/toolkit/moz.configure 2022-02-08 10:17:49.552945956 +0100 +@@ -1273,7 +1273,7 @@ with only_when("--enable-compile-environ + help="{Enable|Disable} elf hacks", + ) - set_config("USE_ELF_HACK", use_elf_hack) +- set_config("USE_ELF_HACK", depends_if("--enable-elf-hack")(lambda _: True)) ++ set_config("USE_ELF_HACK", depends_if("--enable-elf-hack")(lambda _: False)) + + @depends(build_environment) diff --git a/build-rnp.patch b/build-rnp.patch deleted file mode 100644 index edc9573..0000000 --- a/build-rnp.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up thunderbird-115.0.1/comm/third_party/rnp/src/libsexp/include/sexp/sexp-error.h.build-rnp thunderbird-115.0.1/comm/third_party/rnp/src/libsexp/include/sexp/sexp-error.h ---- thunderbird-115.0.1/comm/third_party/rnp/src/libsexp/include/sexp/sexp-error.h.build-rnp 2023-07-24 11:38:24.732782411 +0200 -+++ thunderbird-115.0.1/comm/third_party/rnp/src/libsexp/include/sexp/sexp-error.h 2023-07-24 11:38:46.824773498 +0200 -@@ -32,6 +32,7 @@ - #include - #include - #include -+#include - - namespace sexp { - diff --git a/gcc13-header-dependencies.patch b/gcc13-header-dependencies.patch new file mode 100644 index 0000000..d16b4bc --- /dev/null +++ b/gcc13-header-dependencies.patch @@ -0,0 +1,30 @@ +--- thunderbird-102.7.1/dom/media/webrtc/sdp/RsdparsaSdpGlue.cpp.gcc13-header-dependency 2023-01-24 04:23:43.000000000 +0100 ++++ thunderbird-102.7.1/dom/media/webrtc/sdp/RsdparsaSdpGlue.cpp 2023-01-25 19:23:11.048662899 +0100 +@@ -3,6 +3,7 @@ + /* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this file, + * You can obtain one at http://mozilla.org/MPL/2.0/. */ ++#include + #include + + #include "sdp/RsdparsaSdpInc.h" +--- thunderbird-102.7.1/gfx/2d/Rect.h.gcc13-header-dependency 2023-01-24 04:23:44.000000000 +0100 ++++ thunderbird-102.7.1/gfx/2d/Rect.h 2023-01-25 19:23:11.049662897 +0100 +@@ -15,6 +15,7 @@ + #include "mozilla/Maybe.h" + + #include ++#include + + namespace mozilla { + +--- thunderbird-102.7.1/toolkit/components/telemetry/pingsender/pingsender.cpp.gcc13-header-dependency 2023-01-24 04:23:55.000000000 +0100 ++++ thunderbird-102.7.1/toolkit/components/telemetry/pingsender/pingsender.cpp 2023-01-25 21:38:39.432188899 +0100 +@@ -3,6 +3,7 @@ + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + ++#include + #include + #include + #include diff --git a/mozilla-1170092.patch b/mozilla-1170092.patch index 36d2b00..49b7b49 100644 --- a/mozilla-1170092.patch +++ b/mozilla-1170092.patch @@ -1,7 +1,7 @@ -diff -up firefox-115.0.2/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 firefox-115.0.2/extensions/pref/autoconfig/src/nsReadConfig.cpp ---- firefox-115.0.2/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 2023-07-10 21:08:53.000000000 +0200 -+++ firefox-115.0.2/extensions/pref/autoconfig/src/nsReadConfig.cpp 2023-07-17 10:33:23.443355156 +0200 -@@ -263,8 +263,20 @@ nsresult nsReadConfig::openAndEvaluateJS +diff -up firefox-75.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 firefox-75.0/extensions/pref/autoconfig/src/nsReadConfig.cpp +--- firefox-75.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 2020-04-03 21:34:41.000000000 +0200 ++++ firefox-75.0/extensions/pref/autoconfig/src/nsReadConfig.cpp 2020-04-06 22:40:02.760674871 +0200 +@@ -244,8 +244,20 @@ nsresult nsReadConfig::openAndEvaluateJS if (NS_FAILED(rv)) return rv; rv = NS_NewLocalFileInputStream(getter_AddRefs(inStr), jsFile); @@ -23,10 +23,10 @@ diff -up firefox-115.0.2/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 } else { nsAutoCString location("resource://gre/defaults/autoconfig/"); location += aFileName; -diff -up firefox-115.0.2/modules/libpref/Preferences.cpp.1170092 firefox-115.0.2/modules/libpref/Preferences.cpp ---- firefox-115.0.2/modules/libpref/Preferences.cpp.1170092 2023-07-10 21:09:00.000000000 +0200 -+++ firefox-115.0.2/modules/libpref/Preferences.cpp 2023-07-17 10:33:23.444355156 +0200 -@@ -4825,6 +4825,9 @@ nsresult Preferences::InitInitialObjects +diff -up firefox-75.0/modules/libpref/Preferences.cpp.1170092 firefox-75.0/modules/libpref/Preferences.cpp +--- firefox-75.0/modules/libpref/Preferences.cpp.1170092 2020-04-06 22:40:02.761674865 +0200 ++++ firefox-75.0/modules/libpref/Preferences.cpp 2020-04-06 22:40:57.675325227 +0200 +@@ -4468,6 +4468,9 @@ nsresult Preferences::InitInitialObjects // // Thus, in the omni.jar case, we always load app-specific default // preferences from omni.jar, whether or not `$app == $gre`. @@ -36,10 +36,10 @@ diff -up firefox-115.0.2/modules/libpref/Preferences.cpp.1170092 firefox-115.0.2 nsresult rv = NS_ERROR_FAILURE; UniquePtr find; -diff -up firefox-115.0.2/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-115.0.2/toolkit/xre/nsXREDirProvider.cpp ---- firefox-115.0.2/toolkit/xre/nsXREDirProvider.cpp.1170092 2023-07-10 22:57:20.000000000 +0200 -+++ firefox-115.0.2/toolkit/xre/nsXREDirProvider.cpp 2023-07-17 10:56:25.309692121 +0200 -@@ -72,6 +72,7 @@ +diff -up firefox-75.0/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-75.0/toolkit/xre/nsXREDirProvider.cpp +--- firefox-75.0/toolkit/xre/nsXREDirProvider.cpp.1170092 2020-04-03 21:35:39.000000000 +0200 ++++ firefox-75.0/toolkit/xre/nsXREDirProvider.cpp 2020-04-06 22:40:02.761674865 +0200 +@@ -60,6 +60,7 @@ #endif #ifdef XP_UNIX # include @@ -47,11 +47,13 @@ diff -up firefox-115.0.2/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-115.0. #endif #ifdef XP_IOS # include "UIKitDirProvider.h" -@@ -478,6 +479,17 @@ nsXREDirProvider::GetFile(const char* aP - rv = file->AppendNative(nsLiteralCString(PREF_OVERRIDE_DIRNAME)); - NS_ENSURE_SUCCESS(rv, rv); - rv = EnsureDirectoryExists(file); -+ } else if (!strcmp(aProperty, NS_APP_PREFS_SYSTEM_CONFIG_DIR)) { +@@ -533,6 +534,21 @@ nsXREDirProvider::GetFile(const char* aP + } + } + } ++ ++#if defined(XP_UNIX) ++ if (!strcmp(aProperty, NS_APP_PREFS_SYSTEM_CONFIG_DIR)) { + nsCString sysConfigDir = nsLiteralCString("/etc/"); + nsCOMPtr appInfo = do_GetService("@mozilla.org/xre/app-info;1"); + if (!appInfo) @@ -60,14 +62,16 @@ diff -up firefox-115.0.2/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-115.0. + appInfo->GetName(appName); + ToLowerCase(appName); + sysConfigDir.Append(appName); -+ NS_NewNativeLocalFile(sysConfigDir, false, getter_AddRefs(file)); -+ rv = EnsureDirectoryExists(file); - } else { - // We don't know anything about this property. Fail without warning, because - // otherwise we'll get too much warning spam due to -@@ -694,6 +706,16 @@ nsXREDirProvider::GetFiles(const char* a - } - #endif ++ return NS_NewNativeLocalFile(sysConfigDir, false, aFile); ++ } ++#endif ++ + if (NS_FAILED(rv) || !file) return NS_ERROR_FAILURE; + + if (ensureFilePermissions) { +@@ -845,6 +861,16 @@ nsresult nsXREDirProvider::GetFilesInter + + LoadDirIntoArray(mXULAppDir, kAppendPrefDir, directories); + // Add /etc//pref/ directory if it exists + nsCOMPtr systemPrefDir; @@ -77,15 +81,15 @@ diff -up firefox-115.0.2/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-115.0. + rv = systemPrefDir->AppendNative(nsLiteralCString("pref")); + if (NS_SUCCEEDED(rv)) + directories.AppendObject(systemPrefDir); -+ } ++ } + rv = NS_NewArrayEnumerator(aResult, directories, NS_GET_IID(nsIFile)); } else if (!strcmp(aProperty, NS_APP_CHROME_DIR_LIST)) { // NS_APP_CHROME_DIR_LIST is only used to get default (native) icons -diff -up firefox-115.0.2/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 firefox-115.0.2/xpcom/io/nsAppDirectoryServiceDefs.h ---- firefox-115.0.2/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 2023-07-10 21:09:13.000000000 +0200 -+++ firefox-115.0.2/xpcom/io/nsAppDirectoryServiceDefs.h 2023-07-17 10:33:23.444355156 +0200 -@@ -58,6 +58,7 @@ +diff -up firefox-75.0/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 firefox-75.0/xpcom/io/nsAppDirectoryServiceDefs.h +--- firefox-75.0/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 2020-04-03 21:35:39.000000000 +0200 ++++ firefox-75.0/xpcom/io/nsAppDirectoryServiceDefs.h 2020-04-06 22:40:02.761674865 +0200 +@@ -60,6 +60,7 @@ #define NS_APP_PREFS_DEFAULTS_DIR_LIST "PrefDL" #define NS_APP_PREFS_OVERRIDE_DIR \ "PrefDOverride" // Directory for per-profile defaults diff --git a/sources b/sources index b1583fd..a35662b 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (thunderbird-langpacks-115.1.1-20230815.tar.xz) = 95acb1771d21dbd29544f9bde7452cc1ebc65c410438cfc16efcf361e9ba184e54ab2839741e4f41ddc3ab3713a4ca1dde1408c4278ee0fde14e81766d40d14f -SHA512 (thunderbird-115.1.1.source.tar.xz) = 26f69dded43bd24ffce9acb0de204bef8c10c8df3cb82b33594d035e41179cb7450cb7c10470bfc92a933c1d801fb968049ea8a17d838d16de9973f5dddff9fc -SHA512 (cbindgen-vendor.tar.xz) = 161811f4adfc74e5d92871c78139704d32e1e1ad6b615c85353de300d9647a68f1ca8b1c953f7cc5539d861e9e8d8e42892cae757a3eafea78804e19bc323c16 +SHA512 (cbindgen-vendor.tar.xz) = 590e27b6c093a5c1bd839ca39c68537097d0849087a4a385ee6d7b180e9ceadbbb8974fa997f5f75af03e2c243a2f232d0d4c4c46e253ea464521b76c6886067 +SHA512 (thunderbird-102.13.0.source.tar.xz) = 1ed48220f91cc2c38f59067664c02f1f2098c843810b8f81cb8dee4fe98911d87aac352ab8639c68d0eed74297240cd9e0ce0e64a40360511be85315f2bfcfc6 +SHA512 (thunderbird-langpacks-102.13.0-20230707.tar.xz) = bf9007b066f7211bad70a68449297a5847a1e840a1e5e88d0db5f5cd367c752130c70e266177585b3386ae7796c2ea98dba657da75ae6a22f064a7b584352ca0 diff --git a/thunderbird.spec b/thunderbird.spec index 2518d4a..4539bf1 100644 --- a/thunderbird.spec +++ b/thunderbird.spec @@ -42,8 +42,21 @@ ExcludeArch: armv7hl ExcludeArch: s390x # libvpx is too new for Firefox 65 +%if 0%{?fedora} < 30 +%global system_libvpx 1 +%else +%global system_libvpx 0 +%endif + %define system_jpeg 1 +# Use system libicu? - libicu even on rawhide too old +%if 0%{?fedora} >= 27 +%define system_libicu 0 +%else +%define system_libicu 0 +%endif + # Big endian platforms %ifarch ppc64 s390x # Javascript Intl API is not supported on big endian platforms right now: @@ -51,6 +64,10 @@ ExcludeArch: s390x %define big_endian 1 %endif +%if %{?system_libvpx} +%global libvpx_version 1.4.0 +%endif + %define thunderbird_app_id \{3550f703-e582-4d05-9a08-453d09bdfdc6\} %global langpackdir %{mozappdir}/extensions @@ -65,6 +82,12 @@ ExcludeArch: s390x %define official_branding 1 %define enable_mozilla_crashreporter 0 +# enable crash reporter only for iX86 +%ifarch %{ix86} x86_64 +%if 0%{?fedora} < 27 && 0%{?rhel} <= 7 +%define enable_mozilla_crashreporter 1 +%endif +%endif %if %{with toolchain_clang} %global toolchain clang @@ -76,13 +99,13 @@ ExcludeArch: s390x Summary: Mozilla Thunderbird mail/newsgroup client Name: thunderbird -Version: 115.1.1 -Release: 1%{?dist} +Version: 102.13.0 +Release: 2%{?dist} URL: http://www.mozilla.org/projects/thunderbird/ License: MPL-2.0 OR GPL-2.0-or-later OR LGPL-2.0-or-later Source0: https://archive.mozilla.org/pub/thunderbird/releases/%{version}%{?pre_version}/source/thunderbird-%{version}%{?pre_version}.source.tar.xz %if %{build_langpacks} -Source1: thunderbird-langpacks-%{version}-20230815.tar.xz +Source1: thunderbird-langpacks-%{version}-20230707.tar.xz %endif Source3: get-calendar-langpacks.sh Source4: cbindgen-vendor.tar.xz @@ -108,7 +131,7 @@ Patch103: rhbz-1219542-s390-build.patch # gcc 12 build fix patches Patch422: 0001-GLIBCXX-fix-for-GCC-12.patch Patch425: build-disable-elfhack.patch -Patch426: build-rnp.patch +Patch426: gcc13-header-dependencies.patch # PPC fix Patch304: mozilla-1245783.patch @@ -118,6 +141,8 @@ Patch304: mozilla-1245783.patch # Upstream patches Patch402: mozilla-526293.patch Patch406: mozilla-1170092.patch +Patch408: D165150.diff +Patch409: D165152.diff # Bundled expat backported patches Patch501: expat-CVE-2022-25235.patch @@ -177,6 +202,9 @@ BuildRequires: m4 BuildRequires: desktop-file-utils BuildRequires: libcurl-devel BuildRequires: mesa-libGL-devel +%if %{?system_libvpx} +BuildRequires: libvpx-devel >= %{libvpx_version} +%endif BuildRequires: pulseaudio-libs-devel BuildRequires: libicu-devel BuildRequires: perl-interpreter @@ -189,7 +217,7 @@ Obsoletes: thunderbird-lightning-gdata <= 1:3.3.0.14 BuildRequires: rust BuildRequires: cargo BuildRequires: clang-devel -BuildRequires: python3.11-devel +BuildRequires: python3-devel %if !0%{?use_bundled_cbindgen} BuildRequires: cbindgen %endif @@ -264,6 +292,9 @@ debug %{name}, you want to install %{name}-debuginfo instead. %endif %patch -P 304 -p1 -b .1245783 +# Patch for big endian platforms only +#%if 0%{?big_endian} +#%endif #ARM run-time patch %ifarch aarch64 @@ -277,14 +308,16 @@ debug %{name}, you want to install %{name}-debuginfo instead. %if 0%{?disable_elfhack} %patch -P 425 -p1 -b .build-disable-elfhack %endif -%patch -P 426 -p1 -b .build-rnp # most likely fixed #%patch -P 419 -p1 -b .bindgen %patch -P 402 -p1 -b .526293 %patch -P 406 -p1 -b .1170092-etc-conf +%patch -P 408 -p1 -b .D165150 +%patch -P 409 -p1 -b .D165152 %patch -P 422 -p1 -b .0001-GLIBCXX-fix-for-GCC-12 +%patch -P 426 -p1 -b .gcc13-header-dependencies %patch -P 501 -p1 -b .expat-CVE-2022-25235 %patch -P 502 -p1 -b .expat-CVE-2022-25236 @@ -367,10 +400,23 @@ echo "ac_add_options --with-arch=armv5te" >> .mozconfig echo "ac_add_options --with-float-abi=soft" >> .mozconfig echo "ac_add_options --disable-yarr-jit" >> .mozconfig %endif -%if %{?system_jpeg} -echo "ac_add_options --with-system-jpeg" >> .mozconfig + +%if %{?system_libicu} +echo "ac_add_options --with-system-icu" >> .mozconfig %else +echo "ac_add_options --without-system-icu" >> .mozconfig +%endif + +%if !%{?system_jpeg} echo "ac_add_options --without-system-jpeg" >> .mozconfig +%else +echo "ac_add_options --with-system-jpeg" >> .mozconfig +%endif + +%if %{?system_libvpx} +echo "ac_add_options --with-system-libvpx" >> .mozconfig +%else +echo "ac_add_options --without-system-libvpx" >> .mozconfig %endif %if %{enable_mozilla_crashreporter} @@ -518,9 +564,7 @@ MOZ_SMP_FLAGS=-j1 export MOZ_MAKE_FLAGS="$MOZ_SMP_FLAGS" export STRIP=/bin/true -export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=system -#Use python 3.11 for mach -sed -i -e 's|#!/usr/bin/env python3|#!/usr/bin/env python3.11|' mach +export MACH_USE_SYSTEM_PYTHON=1 ./mach build -v # create debuginfo for crash-stats.mozilla.com @@ -707,18 +751,10 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %{mozappdir}/dependentlibs.list %{mozappdir}/fonts %{mozappdir}/pingsender -%{mozappdir}/glxtest -%{mozappdir}/vaapitest #=============================================================================== %changelog -* Tue Aug 15 2023 Jan Horak - 115.1.1-1 -- Update to 115.1.1 - -* Mon Jul 24 2023 Jan Horak - 115.0.1-1 -- Update to 115.0.1 - * Sat Jul 22 2023 Fedora Release Engineering - 102.13.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From d7d5c7bfc56fa24a2f6f7f95fb499dcf592d0e40 Mon Sep 17 00:00:00 2001 From: Eike Rathke Date: Tue, 19 Sep 2023 22:15:12 +0200 Subject: [PATCH 2/5] Update to 102.15.1 --- .gitignore | 2 ++ sources | 4 ++-- thunderbird.spec | 9 ++++++--- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index 473fdcf..ee3cb81 100644 --- a/.gitignore +++ b/.gitignore @@ -406,3 +406,5 @@ thunderbird-langpacks-3.1.2-20100803.tar.bz2 /thunderbird-langpacks-102.12.0-20230605.tar.xz /thunderbird-102.13.0.source.tar.xz /thunderbird-langpacks-102.13.0-20230707.tar.xz +/thunderbird-102.15.1.source.tar.xz +/thunderbird-langpacks-102.15.1-20230913.tar.xz diff --git a/sources b/sources index a35662b..fc9eaf3 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ SHA512 (cbindgen-vendor.tar.xz) = 590e27b6c093a5c1bd839ca39c68537097d0849087a4a385ee6d7b180e9ceadbbb8974fa997f5f75af03e2c243a2f232d0d4c4c46e253ea464521b76c6886067 -SHA512 (thunderbird-102.13.0.source.tar.xz) = 1ed48220f91cc2c38f59067664c02f1f2098c843810b8f81cb8dee4fe98911d87aac352ab8639c68d0eed74297240cd9e0ce0e64a40360511be85315f2bfcfc6 -SHA512 (thunderbird-langpacks-102.13.0-20230707.tar.xz) = bf9007b066f7211bad70a68449297a5847a1e840a1e5e88d0db5f5cd367c752130c70e266177585b3386ae7796c2ea98dba657da75ae6a22f064a7b584352ca0 +SHA512 (thunderbird-102.15.1.source.tar.xz) = 2c96b9cae7acbf354a6aaf7a7987f40ffddbcb8d05a579e6782afbf9c685392e29b274460e7a82426f41f604cec06cb96139be45f099121603ffe434ec8fac06 +SHA512 (thunderbird-langpacks-102.15.1-20230913.tar.xz) = aac5cf22f11b8c788b067ad71cb8ae61455b26b964956d7bf604c1b7ec5770454678b2544de05ef7e76cfcb440992dc1735221824955e10ad63655a290b47a96 diff --git a/thunderbird.spec b/thunderbird.spec index 4539bf1..a348ad7 100644 --- a/thunderbird.spec +++ b/thunderbird.spec @@ -99,13 +99,13 @@ ExcludeArch: s390x Summary: Mozilla Thunderbird mail/newsgroup client Name: thunderbird -Version: 102.13.0 -Release: 2%{?dist} +Version: 102.15.1 +Release: 1%{?dist} URL: http://www.mozilla.org/projects/thunderbird/ License: MPL-2.0 OR GPL-2.0-or-later OR LGPL-2.0-or-later Source0: https://archive.mozilla.org/pub/thunderbird/releases/%{version}%{?pre_version}/source/thunderbird-%{version}%{?pre_version}.source.tar.xz %if %{build_langpacks} -Source1: thunderbird-langpacks-%{version}-20230707.tar.xz +Source1: thunderbird-langpacks-%{version}-20230913.tar.xz %endif Source3: get-calendar-langpacks.sh Source4: cbindgen-vendor.tar.xz @@ -755,6 +755,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : #=============================================================================== %changelog +* Tue Sep 19 2023 Eike Rathke - 102.15.1-1 +- Update to 102.15.1 + * Sat Jul 22 2023 Fedora Release Engineering - 102.13.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From 27ac3f30ed234e0f544554279a99f942126bde6f Mon Sep 17 00:00:00 2001 From: Eike Rathke Date: Wed, 20 Sep 2023 00:13:07 +0200 Subject: [PATCH 3/5] Revert "Temporarily revert rebase to 115 to update to the last 102.*" This reverts commit 511cf20c4f8df555e65b37f1303310c8b4ac2af3. --- .gitignore | 4 + D165150.diff | 163 -------------------------------- D165152.diff | 117 ----------------------- build-disable-elfhack.patch | 20 ++-- build-rnp.patch | 11 +++ gcc13-header-dependencies.patch | 30 ------ mozilla-1170092.patch | 64 ++++++------- sources | 6 +- thunderbird.spec | 72 ++++---------- 9 files changed, 76 insertions(+), 411 deletions(-) delete mode 100644 D165150.diff delete mode 100644 D165152.diff create mode 100644 build-rnp.patch delete mode 100644 gcc13-header-dependencies.patch diff --git a/.gitignore b/.gitignore index ee3cb81..b1028e2 100644 --- a/.gitignore +++ b/.gitignore @@ -408,3 +408,7 @@ thunderbird-langpacks-3.1.2-20100803.tar.bz2 /thunderbird-langpacks-102.13.0-20230707.tar.xz /thunderbird-102.15.1.source.tar.xz /thunderbird-langpacks-102.15.1-20230913.tar.xz +/thunderbird-langpacks-115.0.1-20230720.tar.xz +/thunderbird-115.0.1.source.tar.xz +/thunderbird-langpacks-115.1.1-20230815.tar.xz +/thunderbird-115.1.1.source.tar.xz diff --git a/D165150.diff b/D165150.diff deleted file mode 100644 index fc9a9f7..0000000 --- a/D165150.diff +++ /dev/null @@ -1,163 +0,0 @@ -diff -up thunderbird-102.6.0/widget/gtk/WidgetUtilsGtk.cpp.D165150 thunderbird-102.6.0/widget/gtk/WidgetUtilsGtk.cpp ---- thunderbird-102.6.0/widget/gtk/WidgetUtilsGtk.cpp.D165150 2022-12-12 22:37:39.000000000 +0100 -+++ thunderbird-102.6.0/widget/gtk/WidgetUtilsGtk.cpp 2022-12-20 14:43:29.742482848 +0100 -@@ -9,11 +9,20 @@ - #include "mozilla/UniquePtr.h" - #include "nsReadableUtils.h" - #include "nsWindow.h" -+#include "nsGtkKeyUtils.h" - - #include - #include - #include - -+#ifdef MOZ_LOGGING -+# include "mozilla/Logging.h" -+extern mozilla::LazyLogModule gWidgetLog; -+# define LOGW(...) MOZ_LOG(gWidgetLog, mozilla::LogLevel::Debug, (__VA_ARGS__)) -+#else -+# define LOGW(...) -+#endif /* MOZ_LOGGING */ -+ - namespace mozilla::widget { - - int32_t WidgetUtilsGTK::IsTouchDeviceSupportPresent() { -@@ -165,4 +174,108 @@ nsTArray ParseTextURIList(con - return result; - } - -+#ifdef MOZ_WAYLAND -+static gboolean token_failed(gpointer aData); -+ -+class XDGTokenRequest { -+ public: -+ void SetTokenID(const char* aTokenID) { -+ mTransferPromise->Resolve(aTokenID, __func__); -+ } -+ void Cancel() { -+ mTransferPromise->Reject(false, __func__); -+ mActivationTimeoutID = 0; -+ } -+ -+ XDGTokenRequest(xdg_activation_token_v1* aXdgToken, -+ RefPtr aTransferPromise) -+ : mXdgToken(aXdgToken), mTransferPromise(aTransferPromise) { -+ mActivationTimeoutID = -+ g_timeout_add(sActivationTimeout, token_failed, this); -+ } -+ ~XDGTokenRequest() { -+ if (mXdgToken) { -+ xdg_activation_token_v1_destroy(mXdgToken); -+ } -+ if (mActivationTimeoutID) { -+ g_source_remove(mActivationTimeoutID); -+ } -+ } -+ -+ private: -+ xdg_activation_token_v1* mXdgToken; -+ RefPtr mTransferPromise; -+ guint mActivationTimeoutID; -+ // Reject FocusRequestPromise if we don't get XDG token in 0.5 sec. -+ const int sActivationTimeout = 500; -+}; -+ -+// Failed to get token in time -+static gboolean token_failed(gpointer data) { -+ UniquePtr request(static_cast(data)); -+ request->Cancel(); -+ return false; -+} -+ -+// We've got activation token from Wayland compositor so it's time to use it. -+static void token_done(gpointer data, struct xdg_activation_token_v1* provider, -+ const char* tokenID) { -+ UniquePtr request(static_cast(data)); -+ request->SetTokenID(tokenID); -+} -+ -+static const struct xdg_activation_token_v1_listener token_listener = { -+ token_done, -+}; -+ -+RefPtr RequestWaylandFocus() { -+ RefPtr sourceWindow = nsWindow::GetFocusedWindow(); -+ if (!sourceWindow) { -+ return nullptr; -+ } -+ -+ RefPtr display = WaylandDisplayGet(); -+ xdg_activation_v1* xdg_activation = display->GetXdgActivation(); -+ if (!xdg_activation) { -+ return nullptr; -+ } -+ -+ wl_surface* focusSurface; -+ uint32_t focusSerial; -+ KeymapWrapper::GetFocusInfo(&focusSurface, &focusSerial); -+ if (!focusSurface) { -+ return nullptr; -+ } -+ -+ GdkWindow* gdkWindow = gtk_widget_get_window(sourceWindow->GetGtkWidget()); -+ if (!gdkWindow) { -+ return nullptr; -+ } -+ wl_surface* surface = gdk_wayland_window_get_wl_surface(gdkWindow); -+ if (focusSurface != surface) { -+ return nullptr; -+ } -+ -+ RefPtr transferPromise = -+ new FocusRequestPromise::Private(__func__); -+ -+ xdg_activation_token_v1* aXdgToken = -+ xdg_activation_v1_get_activation_token(xdg_activation); -+ xdg_activation_token_v1_add_listener( -+ aXdgToken, &token_listener, -+ new XDGTokenRequest(aXdgToken, transferPromise)); -+ xdg_activation_token_v1_set_serial(aXdgToken, focusSerial, -+ KeymapWrapper::GetSeat()); -+ xdg_activation_token_v1_set_surface(aXdgToken, focusSurface); -+ xdg_activation_token_v1_commit(aXdgToken); -+ -+ return transferPromise.forget(); -+} -+ -+bool CanTransferWaylandFocus() { -+ return GdkIsWaylandDisplay() && nsWindow::GetFocusedWindow() && -+ !nsWindow::GetFocusedWindow()->IsDestroyed(); -+} -+#endif -+ - } // namespace mozilla::widget -diff -up thunderbird-102.6.0/widget/gtk/WidgetUtilsGtk.h.D165150 thunderbird-102.6.0/widget/gtk/WidgetUtilsGtk.h ---- thunderbird-102.6.0/widget/gtk/WidgetUtilsGtk.h.D165150 2022-12-12 22:37:41.000000000 +0100 -+++ thunderbird-102.6.0/widget/gtk/WidgetUtilsGtk.h 2022-12-20 13:44:15.343638003 +0100 -@@ -8,11 +8,13 @@ - - #include "nsString.h" - #include "nsTArray.h" -+#include "mozilla/MozPromise.h" - - #include - - typedef struct _GdkDisplay GdkDisplay; - typedef struct _GdkDevice GdkDevice; -+class nsWindow; - - namespace mozilla::widget { - -@@ -51,6 +53,12 @@ bool ShouldUsePortal(PortalKind); - // Parse text/uri-list - nsTArray ParseTextURIList(const nsACString& data); - -+#ifdef MOZ_WAYLAND -+using FocusRequestPromise = mozilla::MozPromise; -+bool CanTransferWaylandFocus(); -+RefPtr RequestWaylandFocus(); -+#endif -+ - } // namespace mozilla::widget - - #endif // WidgetUtilsGtk_h__ diff --git a/D165152.diff b/D165152.diff deleted file mode 100644 index 96350e9..0000000 --- a/D165152.diff +++ /dev/null @@ -1,117 +0,0 @@ -diff -up thunderbird-102.6.0/toolkit/system/gnome/nsGIOService.cpp.D165152 thunderbird-102.6.0/toolkit/system/gnome/nsGIOService.cpp ---- thunderbird-102.6.0/toolkit/system/gnome/nsGIOService.cpp.D165152 2022-12-12 22:37:40.000000000 +0100 -+++ thunderbird-102.6.0/toolkit/system/gnome/nsGIOService.cpp 2022-12-20 13:41:17.337477022 +0100 -@@ -19,6 +19,7 @@ - #include "mozilla/WidgetUtilsGtk.h" - #include "mozilla/StaticPrefs_widget.h" - #include "mozilla/net/DNS.h" -+#include "prenv.h" - - #include - #include -@@ -224,9 +225,7 @@ static RefPtr GetLaun - return context; - } - --NS_IMETHODIMP --nsGIOMimeApp::LaunchWithURI(nsIURI* aUri, -- mozilla::dom::BrowsingContext* aBrowsingContext) { -+static NS_IMETHODIMP LaunchWithURIImpl(RefPtr aInfo, nsIURI* aUri) { - GList uris = {0}; - nsCString spec; - aUri->GetSpec(spec); -@@ -235,7 +234,7 @@ nsGIOMimeApp::LaunchWithURI(nsIURI* aUri - - GUniquePtr error; - gboolean result = g_app_info_launch_uris( -- mApp, &uris, GetLaunchContext().get(), getter_Transfers(error)); -+ aInfo, &uris, GetLaunchContext().get(), getter_Transfers(error)); - if (!result) { - g_warning("Cannot launch application: %s", error->message); - return NS_ERROR_FAILURE; -@@ -244,6 +243,27 @@ nsGIOMimeApp::LaunchWithURI(nsIURI* aUri - return NS_OK; - } - -+NS_IMETHODIMP -+nsGIOMimeApp::LaunchWithURI(nsIURI* aUri, -+ mozilla::dom::BrowsingContext* aBrowsingContext) { -+ if (mozilla::widget::CanTransferWaylandFocus()) { -+ mozilla::widget::RequestWaylandFocus()->Then( -+ GetMainThreadSerialEventTarget(), __func__, -+ /* resolve */ -+ [app = RefPtr{mApp}, uri = RefPtr{aUri}](nsCString token) { -+ PR_SetEnv(ToNewCString("XDG_ACTIVATION_TOKEN="_ns + token)); -+ LaunchWithURIImpl(app, uri); -+ }, -+ /* reject */ -+ [app = RefPtr{mApp}, uri = RefPtr{aUri}](bool state) { -+ LaunchWithURIImpl(app, uri); -+ }); -+ return NS_OK; -+ } -+ -+ return LaunchWithURIImpl(mApp, aUri); -+} -+ - class GIOUTF8StringEnumerator final : public nsStringEnumeratorBase { - ~GIOUTF8StringEnumerator() = default; - -@@ -531,7 +551,7 @@ nsGIOService::GetDescriptionForMimeType( - return NS_OK; - } - --nsresult nsGIOService::ShowURI(nsIURI* aURI) { -+static nsresult ShowURIImpl(nsIURI* aURI) { - nsAutoCString spec; - MOZ_TRY(aURI->GetSpec(spec)); - GUniquePtr error; -@@ -544,7 +564,24 @@ nsresult nsGIOService::ShowURI(nsIURI* a - return NS_OK; - } - --static nsresult LaunchPath(const nsACString& aPath) { -+nsresult nsGIOService::ShowURI(nsIURI* aURI) { -+ if (mozilla::widget::CanTransferWaylandFocus()) { -+ mozilla::widget::RequestWaylandFocus()->Then( -+ GetMainThreadSerialEventTarget(), __func__, -+ /* resolve */ -+ [uri = RefPtr{aURI}](nsCString token) { -+ PR_SetEnv(ToNewCString("XDG_ACTIVATION_TOKEN="_ns + token)); -+ ShowURIImpl(uri); -+ }, -+ /* reject */ -+ [uri = RefPtr{aURI}](bool state) { ShowURIImpl(uri); }); -+ return NS_OK; -+ } -+ -+ return ShowURIImpl(aURI); -+} -+ -+static nsresult LaunchPathImpl(const nsACString& aPath) { - RefPtr file = dont_AddRef( - g_file_new_for_commandline_arg(PromiseFlatCString(aPath).get())); - GUniquePtr spec(g_file_get_uri(file)); -@@ -558,6 +595,22 @@ static nsresult LaunchPath(const nsACStr - return NS_OK; - } - -+static nsresult LaunchPath(const nsACString& aPath) { -+ if (mozilla::widget::CanTransferWaylandFocus()) { -+ mozilla::widget::RequestWaylandFocus()->Then( -+ GetMainThreadSerialEventTarget(), __func__, -+ /* resolve */ -+ [path = nsCString{aPath}](nsCString token) { -+ PR_SetEnv(ToNewCString("XDG_ACTIVATION_TOKEN="_ns + token)); -+ LaunchPathImpl(path); -+ }, -+ /* reject */ -+ [path = nsCString{aPath}](bool state) { LaunchPathImpl(path); }); -+ return NS_OK; -+ } -+ return LaunchPathImpl(aPath); -+} -+ - nsresult nsGIOService::LaunchFile(const nsACString& aPath) { - return LaunchPath(aPath); - } diff --git a/build-disable-elfhack.patch b/build-disable-elfhack.patch index 04d49f2..67bb731 100644 --- a/build-disable-elfhack.patch +++ b/build-disable-elfhack.patch @@ -1,12 +1,12 @@ -diff -up firefox-97.0/toolkit/moz.configure.disable-elfhack firefox-97.0/toolkit/moz.configure ---- firefox-97.0/toolkit/moz.configure.disable-elfhack 2022-02-08 09:58:47.518047952 +0100 -+++ firefox-97.0/toolkit/moz.configure 2022-02-08 10:17:49.552945956 +0100 -@@ -1273,7 +1273,7 @@ with only_when("--enable-compile-environ - help="{Enable|Disable} elf hacks", - ) +diff -up firefox-115.0.2/toolkit/moz.configure.disable-elfhack firefox-115.0.2/toolkit/moz.configure +--- firefox-115.0.2/toolkit/moz.configure.disable-elfhack 2023-07-18 12:21:22.507358334 +0200 ++++ firefox-115.0.2/toolkit/moz.configure 2023-07-18 12:52:55.972727498 +0200 +@@ -1520,7 +1520,7 @@ with only_when("--enable-compile-environ + "Cannot enable elfhack with lld." + " Use --enable-linker=bfd, --enable-linker=gold, or --disable-elf-hack" + ) +- return True ++ return False -- set_config("USE_ELF_HACK", depends_if("--enable-elf-hack")(lambda _: True)) -+ set_config("USE_ELF_HACK", depends_if("--enable-elf-hack")(lambda _: False)) + set_config("USE_ELF_HACK", use_elf_hack) - - @depends(build_environment) diff --git a/build-rnp.patch b/build-rnp.patch new file mode 100644 index 0000000..edc9573 --- /dev/null +++ b/build-rnp.patch @@ -0,0 +1,11 @@ +diff -up thunderbird-115.0.1/comm/third_party/rnp/src/libsexp/include/sexp/sexp-error.h.build-rnp thunderbird-115.0.1/comm/third_party/rnp/src/libsexp/include/sexp/sexp-error.h +--- thunderbird-115.0.1/comm/third_party/rnp/src/libsexp/include/sexp/sexp-error.h.build-rnp 2023-07-24 11:38:24.732782411 +0200 ++++ thunderbird-115.0.1/comm/third_party/rnp/src/libsexp/include/sexp/sexp-error.h 2023-07-24 11:38:46.824773498 +0200 +@@ -32,6 +32,7 @@ + #include + #include + #include ++#include + + namespace sexp { + diff --git a/gcc13-header-dependencies.patch b/gcc13-header-dependencies.patch deleted file mode 100644 index d16b4bc..0000000 --- a/gcc13-header-dependencies.patch +++ /dev/null @@ -1,30 +0,0 @@ ---- thunderbird-102.7.1/dom/media/webrtc/sdp/RsdparsaSdpGlue.cpp.gcc13-header-dependency 2023-01-24 04:23:43.000000000 +0100 -+++ thunderbird-102.7.1/dom/media/webrtc/sdp/RsdparsaSdpGlue.cpp 2023-01-25 19:23:11.048662899 +0100 -@@ -3,6 +3,7 @@ - /* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this file, - * You can obtain one at http://mozilla.org/MPL/2.0/. */ -+#include - #include - - #include "sdp/RsdparsaSdpInc.h" ---- thunderbird-102.7.1/gfx/2d/Rect.h.gcc13-header-dependency 2023-01-24 04:23:44.000000000 +0100 -+++ thunderbird-102.7.1/gfx/2d/Rect.h 2023-01-25 19:23:11.049662897 +0100 -@@ -15,6 +15,7 @@ - #include "mozilla/Maybe.h" - - #include -+#include - - namespace mozilla { - ---- thunderbird-102.7.1/toolkit/components/telemetry/pingsender/pingsender.cpp.gcc13-header-dependency 2023-01-24 04:23:55.000000000 +0100 -+++ thunderbird-102.7.1/toolkit/components/telemetry/pingsender/pingsender.cpp 2023-01-25 21:38:39.432188899 +0100 -@@ -3,6 +3,7 @@ - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ - -+#include - #include - #include - #include diff --git a/mozilla-1170092.patch b/mozilla-1170092.patch index 49b7b49..36d2b00 100644 --- a/mozilla-1170092.patch +++ b/mozilla-1170092.patch @@ -1,7 +1,7 @@ -diff -up firefox-75.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 firefox-75.0/extensions/pref/autoconfig/src/nsReadConfig.cpp ---- firefox-75.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 2020-04-03 21:34:41.000000000 +0200 -+++ firefox-75.0/extensions/pref/autoconfig/src/nsReadConfig.cpp 2020-04-06 22:40:02.760674871 +0200 -@@ -244,8 +244,20 @@ nsresult nsReadConfig::openAndEvaluateJS +diff -up firefox-115.0.2/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 firefox-115.0.2/extensions/pref/autoconfig/src/nsReadConfig.cpp +--- firefox-115.0.2/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 2023-07-10 21:08:53.000000000 +0200 ++++ firefox-115.0.2/extensions/pref/autoconfig/src/nsReadConfig.cpp 2023-07-17 10:33:23.443355156 +0200 +@@ -263,8 +263,20 @@ nsresult nsReadConfig::openAndEvaluateJS if (NS_FAILED(rv)) return rv; rv = NS_NewLocalFileInputStream(getter_AddRefs(inStr), jsFile); @@ -23,10 +23,10 @@ diff -up firefox-75.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 fi } else { nsAutoCString location("resource://gre/defaults/autoconfig/"); location += aFileName; -diff -up firefox-75.0/modules/libpref/Preferences.cpp.1170092 firefox-75.0/modules/libpref/Preferences.cpp ---- firefox-75.0/modules/libpref/Preferences.cpp.1170092 2020-04-06 22:40:02.761674865 +0200 -+++ firefox-75.0/modules/libpref/Preferences.cpp 2020-04-06 22:40:57.675325227 +0200 -@@ -4468,6 +4468,9 @@ nsresult Preferences::InitInitialObjects +diff -up firefox-115.0.2/modules/libpref/Preferences.cpp.1170092 firefox-115.0.2/modules/libpref/Preferences.cpp +--- firefox-115.0.2/modules/libpref/Preferences.cpp.1170092 2023-07-10 21:09:00.000000000 +0200 ++++ firefox-115.0.2/modules/libpref/Preferences.cpp 2023-07-17 10:33:23.444355156 +0200 +@@ -4825,6 +4825,9 @@ nsresult Preferences::InitInitialObjects // // Thus, in the omni.jar case, we always load app-specific default // preferences from omni.jar, whether or not `$app == $gre`. @@ -36,10 +36,10 @@ diff -up firefox-75.0/modules/libpref/Preferences.cpp.1170092 firefox-75.0/modul nsresult rv = NS_ERROR_FAILURE; UniquePtr find; -diff -up firefox-75.0/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-75.0/toolkit/xre/nsXREDirProvider.cpp ---- firefox-75.0/toolkit/xre/nsXREDirProvider.cpp.1170092 2020-04-03 21:35:39.000000000 +0200 -+++ firefox-75.0/toolkit/xre/nsXREDirProvider.cpp 2020-04-06 22:40:02.761674865 +0200 -@@ -60,6 +60,7 @@ +diff -up firefox-115.0.2/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-115.0.2/toolkit/xre/nsXREDirProvider.cpp +--- firefox-115.0.2/toolkit/xre/nsXREDirProvider.cpp.1170092 2023-07-10 22:57:20.000000000 +0200 ++++ firefox-115.0.2/toolkit/xre/nsXREDirProvider.cpp 2023-07-17 10:56:25.309692121 +0200 +@@ -72,6 +72,7 @@ #endif #ifdef XP_UNIX # include @@ -47,13 +47,11 @@ diff -up firefox-75.0/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-75.0/tool #endif #ifdef XP_IOS # include "UIKitDirProvider.h" -@@ -533,6 +534,21 @@ nsXREDirProvider::GetFile(const char* aP - } - } - } -+ -+#if defined(XP_UNIX) -+ if (!strcmp(aProperty, NS_APP_PREFS_SYSTEM_CONFIG_DIR)) { +@@ -478,6 +479,17 @@ nsXREDirProvider::GetFile(const char* aP + rv = file->AppendNative(nsLiteralCString(PREF_OVERRIDE_DIRNAME)); + NS_ENSURE_SUCCESS(rv, rv); + rv = EnsureDirectoryExists(file); ++ } else if (!strcmp(aProperty, NS_APP_PREFS_SYSTEM_CONFIG_DIR)) { + nsCString sysConfigDir = nsLiteralCString("/etc/"); + nsCOMPtr appInfo = do_GetService("@mozilla.org/xre/app-info;1"); + if (!appInfo) @@ -62,16 +60,14 @@ diff -up firefox-75.0/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-75.0/tool + appInfo->GetName(appName); + ToLowerCase(appName); + sysConfigDir.Append(appName); -+ return NS_NewNativeLocalFile(sysConfigDir, false, aFile); -+ } -+#endif -+ - if (NS_FAILED(rv) || !file) return NS_ERROR_FAILURE; - - if (ensureFilePermissions) { -@@ -845,6 +861,16 @@ nsresult nsXREDirProvider::GetFilesInter - - LoadDirIntoArray(mXULAppDir, kAppendPrefDir, directories); ++ NS_NewNativeLocalFile(sysConfigDir, false, getter_AddRefs(file)); ++ rv = EnsureDirectoryExists(file); + } else { + // We don't know anything about this property. Fail without warning, because + // otherwise we'll get too much warning spam due to +@@ -694,6 +706,16 @@ nsXREDirProvider::GetFiles(const char* a + } + #endif + // Add /etc//pref/ directory if it exists + nsCOMPtr systemPrefDir; @@ -81,15 +77,15 @@ diff -up firefox-75.0/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-75.0/tool + rv = systemPrefDir->AppendNative(nsLiteralCString("pref")); + if (NS_SUCCEEDED(rv)) + directories.AppendObject(systemPrefDir); -+ } ++ } + rv = NS_NewArrayEnumerator(aResult, directories, NS_GET_IID(nsIFile)); } else if (!strcmp(aProperty, NS_APP_CHROME_DIR_LIST)) { // NS_APP_CHROME_DIR_LIST is only used to get default (native) icons -diff -up firefox-75.0/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 firefox-75.0/xpcom/io/nsAppDirectoryServiceDefs.h ---- firefox-75.0/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 2020-04-03 21:35:39.000000000 +0200 -+++ firefox-75.0/xpcom/io/nsAppDirectoryServiceDefs.h 2020-04-06 22:40:02.761674865 +0200 -@@ -60,6 +60,7 @@ +diff -up firefox-115.0.2/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 firefox-115.0.2/xpcom/io/nsAppDirectoryServiceDefs.h +--- firefox-115.0.2/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 2023-07-10 21:09:13.000000000 +0200 ++++ firefox-115.0.2/xpcom/io/nsAppDirectoryServiceDefs.h 2023-07-17 10:33:23.444355156 +0200 +@@ -58,6 +58,7 @@ #define NS_APP_PREFS_DEFAULTS_DIR_LIST "PrefDL" #define NS_APP_PREFS_OVERRIDE_DIR \ "PrefDOverride" // Directory for per-profile defaults diff --git a/sources b/sources index fc9eaf3..b1583fd 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (cbindgen-vendor.tar.xz) = 590e27b6c093a5c1bd839ca39c68537097d0849087a4a385ee6d7b180e9ceadbbb8974fa997f5f75af03e2c243a2f232d0d4c4c46e253ea464521b76c6886067 -SHA512 (thunderbird-102.15.1.source.tar.xz) = 2c96b9cae7acbf354a6aaf7a7987f40ffddbcb8d05a579e6782afbf9c685392e29b274460e7a82426f41f604cec06cb96139be45f099121603ffe434ec8fac06 -SHA512 (thunderbird-langpacks-102.15.1-20230913.tar.xz) = aac5cf22f11b8c788b067ad71cb8ae61455b26b964956d7bf604c1b7ec5770454678b2544de05ef7e76cfcb440992dc1735221824955e10ad63655a290b47a96 +SHA512 (thunderbird-langpacks-115.1.1-20230815.tar.xz) = 95acb1771d21dbd29544f9bde7452cc1ebc65c410438cfc16efcf361e9ba184e54ab2839741e4f41ddc3ab3713a4ca1dde1408c4278ee0fde14e81766d40d14f +SHA512 (thunderbird-115.1.1.source.tar.xz) = 26f69dded43bd24ffce9acb0de204bef8c10c8df3cb82b33594d035e41179cb7450cb7c10470bfc92a933c1d801fb968049ea8a17d838d16de9973f5dddff9fc +SHA512 (cbindgen-vendor.tar.xz) = 161811f4adfc74e5d92871c78139704d32e1e1ad6b615c85353de300d9647a68f1ca8b1c953f7cc5539d861e9e8d8e42892cae757a3eafea78804e19bc323c16 diff --git a/thunderbird.spec b/thunderbird.spec index a348ad7..9a2547a 100644 --- a/thunderbird.spec +++ b/thunderbird.spec @@ -42,21 +42,8 @@ ExcludeArch: armv7hl ExcludeArch: s390x # libvpx is too new for Firefox 65 -%if 0%{?fedora} < 30 -%global system_libvpx 1 -%else -%global system_libvpx 0 -%endif - %define system_jpeg 1 -# Use system libicu? - libicu even on rawhide too old -%if 0%{?fedora} >= 27 -%define system_libicu 0 -%else -%define system_libicu 0 -%endif - # Big endian platforms %ifarch ppc64 s390x # Javascript Intl API is not supported on big endian platforms right now: @@ -64,10 +51,6 @@ ExcludeArch: s390x %define big_endian 1 %endif -%if %{?system_libvpx} -%global libvpx_version 1.4.0 -%endif - %define thunderbird_app_id \{3550f703-e582-4d05-9a08-453d09bdfdc6\} %global langpackdir %{mozappdir}/extensions @@ -82,12 +65,6 @@ ExcludeArch: s390x %define official_branding 1 %define enable_mozilla_crashreporter 0 -# enable crash reporter only for iX86 -%ifarch %{ix86} x86_64 -%if 0%{?fedora} < 27 && 0%{?rhel} <= 7 -%define enable_mozilla_crashreporter 1 -%endif -%endif %if %{with toolchain_clang} %global toolchain clang @@ -99,13 +76,13 @@ ExcludeArch: s390x Summary: Mozilla Thunderbird mail/newsgroup client Name: thunderbird -Version: 102.15.1 +Version: 115.1.1 Release: 1%{?dist} URL: http://www.mozilla.org/projects/thunderbird/ License: MPL-2.0 OR GPL-2.0-or-later OR LGPL-2.0-or-later Source0: https://archive.mozilla.org/pub/thunderbird/releases/%{version}%{?pre_version}/source/thunderbird-%{version}%{?pre_version}.source.tar.xz %if %{build_langpacks} -Source1: thunderbird-langpacks-%{version}-20230913.tar.xz +Source1: thunderbird-langpacks-%{version}-20230815.tar.xz %endif Source3: get-calendar-langpacks.sh Source4: cbindgen-vendor.tar.xz @@ -131,7 +108,7 @@ Patch103: rhbz-1219542-s390-build.patch # gcc 12 build fix patches Patch422: 0001-GLIBCXX-fix-for-GCC-12.patch Patch425: build-disable-elfhack.patch -Patch426: gcc13-header-dependencies.patch +Patch426: build-rnp.patch # PPC fix Patch304: mozilla-1245783.patch @@ -141,8 +118,6 @@ Patch304: mozilla-1245783.patch # Upstream patches Patch402: mozilla-526293.patch Patch406: mozilla-1170092.patch -Patch408: D165150.diff -Patch409: D165152.diff # Bundled expat backported patches Patch501: expat-CVE-2022-25235.patch @@ -202,9 +177,6 @@ BuildRequires: m4 BuildRequires: desktop-file-utils BuildRequires: libcurl-devel BuildRequires: mesa-libGL-devel -%if %{?system_libvpx} -BuildRequires: libvpx-devel >= %{libvpx_version} -%endif BuildRequires: pulseaudio-libs-devel BuildRequires: libicu-devel BuildRequires: perl-interpreter @@ -217,7 +189,7 @@ Obsoletes: thunderbird-lightning-gdata <= 1:3.3.0.14 BuildRequires: rust BuildRequires: cargo BuildRequires: clang-devel -BuildRequires: python3-devel +BuildRequires: python3.11-devel %if !0%{?use_bundled_cbindgen} BuildRequires: cbindgen %endif @@ -292,9 +264,6 @@ debug %{name}, you want to install %{name}-debuginfo instead. %endif %patch -P 304 -p1 -b .1245783 -# Patch for big endian platforms only -#%if 0%{?big_endian} -#%endif #ARM run-time patch %ifarch aarch64 @@ -308,16 +277,14 @@ debug %{name}, you want to install %{name}-debuginfo instead. %if 0%{?disable_elfhack} %patch -P 425 -p1 -b .build-disable-elfhack %endif +%patch -P 426 -p1 -b .build-rnp # most likely fixed #%patch -P 419 -p1 -b .bindgen %patch -P 402 -p1 -b .526293 %patch -P 406 -p1 -b .1170092-etc-conf -%patch -P 408 -p1 -b .D165150 -%patch -P 409 -p1 -b .D165152 %patch -P 422 -p1 -b .0001-GLIBCXX-fix-for-GCC-12 -%patch -P 426 -p1 -b .gcc13-header-dependencies %patch -P 501 -p1 -b .expat-CVE-2022-25235 %patch -P 502 -p1 -b .expat-CVE-2022-25236 @@ -400,23 +367,10 @@ echo "ac_add_options --with-arch=armv5te" >> .mozconfig echo "ac_add_options --with-float-abi=soft" >> .mozconfig echo "ac_add_options --disable-yarr-jit" >> .mozconfig %endif - -%if %{?system_libicu} -echo "ac_add_options --with-system-icu" >> .mozconfig -%else -echo "ac_add_options --without-system-icu" >> .mozconfig -%endif - -%if !%{?system_jpeg} -echo "ac_add_options --without-system-jpeg" >> .mozconfig -%else +%if %{?system_jpeg} echo "ac_add_options --with-system-jpeg" >> .mozconfig -%endif - -%if %{?system_libvpx} -echo "ac_add_options --with-system-libvpx" >> .mozconfig %else -echo "ac_add_options --without-system-libvpx" >> .mozconfig +echo "ac_add_options --without-system-jpeg" >> .mozconfig %endif %if %{enable_mozilla_crashreporter} @@ -564,7 +518,9 @@ MOZ_SMP_FLAGS=-j1 export MOZ_MAKE_FLAGS="$MOZ_SMP_FLAGS" export STRIP=/bin/true -export MACH_USE_SYSTEM_PYTHON=1 +export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=system +#Use python 3.11 for mach +sed -i -e 's|#!/usr/bin/env python3|#!/usr/bin/env python3.11|' mach ./mach build -v # create debuginfo for crash-stats.mozilla.com @@ -751,10 +707,18 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %{mozappdir}/dependentlibs.list %{mozappdir}/fonts %{mozappdir}/pingsender +%{mozappdir}/glxtest +%{mozappdir}/vaapitest #=============================================================================== %changelog +* Tue Aug 15 2023 Jan Horak - 115.1.1-1 +- Update to 115.1.1 + +* Mon Jul 24 2023 Jan Horak - 115.0.1-1 +- Update to 115.0.1 + * Tue Sep 19 2023 Eike Rathke - 102.15.1-1 - Update to 102.15.1 From c728a522c077c69921d1e9631cc8b39e4edf16e7 Mon Sep 17 00:00:00 2001 From: Eike Rathke Date: Wed, 4 Oct 2023 13:40:26 +0200 Subject: [PATCH 4/5] Fix changelog chronological order --- thunderbird.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/thunderbird.spec b/thunderbird.spec index 9a2547a..1b31da3 100644 --- a/thunderbird.spec +++ b/thunderbird.spec @@ -713,15 +713,15 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : #=============================================================================== %changelog +* Tue Sep 19 2023 Eike Rathke - 102.15.1-1 +- Update to 102.15.1 + * Tue Aug 15 2023 Jan Horak - 115.1.1-1 - Update to 115.1.1 * Mon Jul 24 2023 Jan Horak - 115.0.1-1 - Update to 115.0.1 -* Tue Sep 19 2023 Eike Rathke - 102.15.1-1 -- Update to 102.15.1 - * Sat Jul 22 2023 Fedora Release Engineering - 102.13.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From f1f41a6dcf524b2ad83d2b3ba44174bc1ad62e6e Mon Sep 17 00:00:00 2001 From: Eike Rathke Date: Tue, 19 Mar 2024 12:38:36 +0100 Subject: [PATCH 5/5] Update to 115.9.0 Fix expat CVE-2023-52425 --- sources | 4 ++-- thunderbird.spec | 8 ++++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/sources b/sources index d25d147..8f8bdd1 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ SHA512 (cbindgen-vendor.tar.xz) = 161811f4adfc74e5d92871c78139704d32e1e1ad6b615c85353de300d9647a68f1ca8b1c953f7cc5539d861e9e8d8e42892cae757a3eafea78804e19bc323c16 -SHA512 (thunderbird-115.8.1.source.tar.xz) = 4d28f865f482a0d4c91f26ef26709a00f78955699b4ca191f960bcdb8d2c0c95c2a8e8782129d5660e192c605cba021fac553b13868861086a608f0c50aa5da7 -SHA512 (thunderbird-langpacks-115.8.1-20240305.tar.xz) = 5578b99cdf1ebb7e690c508fc26edd2f203e6d827339b0107a3fd91f32354c98d445df11bbf8c401788266b4f3ef671b02792fb884342b59d8c1711e51c10a30 +SHA512 (thunderbird-115.9.0.source.tar.xz) = 8ff0bed6e6d7f337ebae09011a10b59343ae7a8355ed1da2d72ec0d4218010adfae78e42565e5b784df26cef4702f313dc9616ac5ca5530fb772d77bdf7f2ea4 +SHA512 (thunderbird-langpacks-115.9.0-20240318.tar.xz) = b0cce5c30ba6d718f5cf6ccbd11402656161a92c6956b99059c1ef4e24e95f316ee7ec3d3726c95a2e387dd2663bc2538974efc45d00061b86b2b170a96adc26 diff --git a/thunderbird.spec b/thunderbird.spec index 818952c..12cbef0 100644 --- a/thunderbird.spec +++ b/thunderbird.spec @@ -76,13 +76,13 @@ ExcludeArch: s390x Summary: Mozilla Thunderbird mail/newsgroup client Name: thunderbird -Version: 115.8.1 +Version: 115.9.0 Release: 1%{?dist} URL: http://www.mozilla.org/projects/thunderbird/ License: MPL-2.0 OR GPL-2.0-or-later OR LGPL-2.0-or-later Source0: https://archive.mozilla.org/pub/thunderbird/releases/%{version}%{?pre_version}/source/thunderbird-%{version}%{?pre_version}.source.tar.xz %if %{build_langpacks} -Source1: thunderbird-langpacks-%{version}-20240305.tar.xz +Source1: thunderbird-langpacks-%{version}-20240318.tar.xz %endif Source3: get-calendar-langpacks.sh Source4: cbindgen-vendor.tar.xz @@ -719,6 +719,10 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : #=============================================================================== %changelog +* Mon Mar 18 2024 Eike Rathke - 115.9.0-1 +- Update to 115.9.0 +- Fix expat CVE-2023-52425 + * Tue Mar 05 2024 Eike Rathke - 115.8.1-1 - Update to 115.8.1