diff --git a/.gitignore b/.gitignore index 71ccf32..fe0f509 100644 --- a/.gitignore +++ b/.gitignore @@ -436,3 +436,8 @@ thunderbird-langpacks-3.1.2-20100803.tar.bz2 /thunderbird-langpacks-115.6.0-20231218.tar.xz /thunderbird-115.6.1.source.tar.xz /thunderbird-langpacks-115.6.1-20240110.tar.xz +/nspr-4.35.0-1.el8_1.src.rpm +/nss-3.90.0-2.el8_1.src.rpm +/nss-3.90.0-3.el9_0.src.rpm +/thunderbird-115.12.1.processed-source.tar.xz +/thunderbird-langpacks-115.12.1-20240618.tar.xz diff --git a/0001-GLIBCXX-fix-for-GCC-12.patch b/0001-GLIBCXX-fix-for-GCC-12.patch deleted file mode 100644 index 972cebc..0000000 --- a/0001-GLIBCXX-fix-for-GCC-12.patch +++ /dev/null @@ -1,42 +0,0 @@ -From efd5bc0715e5477318be95a76811cda0a89e8289 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Emilio=20Cobos=20=C3=81lvarez?= -Date: Fri, 4 Mar 2022 12:00:26 +0100 -Subject: [PATCH] GLIBCXX fix for GCC 12? - -Borrowed from Firefox and adjusted to Thunderbird 91.7.0 - ---- - build/unix/stdc++compat/stdc++compat.cpp | 14 ++++++++++++++ - 1 file changed, 14 insertions(+) - -diff --git a/build/unix/stdc++compat/stdc++compat.cpp b/build/unix/stdc++compat/stdc++compat.cpp ---- thunderbird-91.7.0/build/unix/stdc++compat/stdc++compat.cpp.0001-GLIBCXX-fix-for-GCC-12 2022-03-07 20:34:15.000000000 +0100 -+++ thunderbird-91.7.0/build/unix/stdc++compat/stdc++compat.cpp 2022-03-15 22:50:03.161345590 +0100 -@@ -24,6 +24,7 @@ - GLIBCXX_3.4.27 is from gcc 10 - GLIBCXX_3.4.28 is from gcc 10 - GLIBCXX_3.4.29 is from gcc 11 -+ GLIBCXX_3.4.30 is from gcc 12 - - This file adds the necessary compatibility tricks to avoid symbols with - version GLIBCXX_3.4.20 and bigger, keeping binary compatibility with -@@ -73,6 +74,19 @@ void __attribute__((weak)) __throw_bad_a - - } // namespace std - #endif -+ -+#if _GLIBCXX_RELEASE >= 12 -+namespace std { -+ -+/* This avoids the GLIBCXX_3.4.30 symbol version. */ -+void __attribute__((weak)) -+__glibcxx_assert_fail(const char* __file, int __line, const char* __function, -+ const char* __condition) { -+ MOZ_CRASH(); -+} -+ -+} // namespace std -+#endif - - #if MOZ_LIBSTDCXX_VERSION >= GLIBCXX_VERSION(3, 4, 21) - /* While we generally don't build with exceptions, we have some host tools diff --git a/Bug-1238661---fix-mozillaSignalTrampoline-to-work-.patch b/Bug-1238661---fix-mozillaSignalTrampoline-to-work-.patch deleted file mode 100644 index 0663ffe..0000000 --- a/Bug-1238661---fix-mozillaSignalTrampoline-to-work-.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up thunderbird-60.5.0/mfbt/LinuxSignal.h.mozilla-1238661 thunderbird-60.5.0/mfbt/LinuxSignal.h ---- thunderbird-60.5.0/mfbt/LinuxSignal.h.mozilla-1238661 2019-01-30 11:33:21.447003175 +0100 -+++ thunderbird-60.5.0/mfbt/LinuxSignal.h 2019-01-30 11:35:13.848537051 +0100 -@@ -22,7 +22,7 @@ __attribute__((naked)) void SignalTrampo - void* aContext) { - asm volatile("nop; nop; nop; nop" : : : "memory"); - -- asm volatile("b %0" : : "X"(H) : "memory"); -+ asm volatile("bx %0" : : "r"(H), "l"(aSignal), "l"(aInfo), "l"(aContext) : "memory"); - } - - #define MOZ_SIGNAL_TRAMPOLINE(h) (mozilla::SignalTrampoline) diff --git a/CVE-2023-44488-libvpx.patch b/CVE-2023-44488-libvpx.patch new file mode 100644 index 0000000..79e5235 --- /dev/null +++ b/CVE-2023-44488-libvpx.patch @@ -0,0 +1,127 @@ +From 263682c9a29395055f3b3afe2d97be1828a6223f Mon Sep 17 00:00:00 2001 +From: Jerome Jiang +Date: Thu, 30 Jun 2022 13:48:56 -0400 +Subject: [PATCH] Fix bug with smaller width bigger size + +Fixed previous patch that clusterfuzz failed on. + +Bug: webm:1642 +Change-Id: If0e08e72abd2e042efe4dcfac21e4cc51afdfdb9 +--- + test/resize_test.cc | 11 +++-------- + vp9/common/vp9_alloccommon.c | 13 ++++++------- + vp9/encoder/vp9_encoder.c | 27 +++++++++++++++++++++++++-- + 3 files changed, 34 insertions(+), 17 deletions(-) + +diff --git a/test/resize_test.cc b/test/resize_test.cc +index fd1c2a92de6..20ad2229b46 100644 +--- a/test/resize_test.cc ++++ b/test/resize_test.cc +@@ -102,11 +102,8 @@ void ScaleForFrameNumber(unsigned int frame, unsigned int initial_w, + if (frame < 30) { + return; + } +- if (frame < 100) { +- *w = initial_w * 7 / 10; +- *h = initial_h * 16 / 10; +- return; +- } ++ *w = initial_w * 7 / 10; ++ *h = initial_h * 16 / 10; + return; + } + if (frame < 10) { +@@ -559,9 +556,7 @@ TEST_P(ResizeRealtimeTest, TestExternalResizeWorks) { + } + } + +-// TODO(https://crbug.com/webm/1642): This causes a segfault in +-// init_encode_frame_mb_context(). +-TEST_P(ResizeRealtimeTest, DISABLED_TestExternalResizeSmallerWidthBiggerSize) { ++TEST_P(ResizeRealtimeTest, TestExternalResizeSmallerWidthBiggerSize) { + ResizingVideoSource video; + video.flag_codec_ = true; + video.smaller_width_larger_size_ = true; +diff --git a/vp9/common/vp9_alloccommon.c b/vp9/common/vp9_alloccommon.c +index e53883f621d..9e73e40ea09 100644 +--- a/vp9/common/vp9_alloccommon.c ++++ b/vp9/common/vp9_alloccommon.c +@@ -135,13 +135,6 @@ int vp9_alloc_context_buffers(VP9_COMMON *cm, int width, int height) { + cm->free_mi(cm); + if (cm->alloc_mi(cm, new_mi_size)) goto fail; + } +- +- if (cm->seg_map_alloc_size < cm->mi_rows * cm->mi_cols) { +- // Create the segmentation map structure and set to 0. +- free_seg_map(cm); +- if (alloc_seg_map(cm, cm->mi_rows * cm->mi_cols)) goto fail; +- } +- + if (cm->above_context_alloc_cols < cm->mi_cols) { + vpx_free(cm->above_context); + cm->above_context = (ENTROPY_CONTEXT *)vpx_calloc( +@@ -156,6 +149,12 @@ int vp9_alloc_context_buffers(VP9_COMMON *cm, int width, int height) { + cm->above_context_alloc_cols = cm->mi_cols; + } + ++ if (cm->seg_map_alloc_size < cm->mi_rows * cm->mi_cols) { ++ // Create the segmentation map structure and set to 0. ++ free_seg_map(cm); ++ if (alloc_seg_map(cm, cm->mi_rows * cm->mi_cols)) goto fail; ++ } ++ + if (vp9_alloc_loop_filter(cm)) goto fail; + + return 0; +diff --git a/vp9/encoder/vp9_encoder.c b/vp9/encoder/vp9_encoder.c +index 69a4e3c314f..e3ba294c32f 100644 +--- a/vp9/encoder/vp9_encoder.c ++++ b/vp9/encoder/vp9_encoder.c +@@ -2047,6 +2047,17 @@ static void alloc_copy_partition_data(VP9_COMP *cpi) { + } + } + ++static void free_copy_partition_data(VP9_COMP *cpi) { ++ vpx_free(cpi->prev_partition); ++ cpi->prev_partition = NULL; ++ vpx_free(cpi->prev_segment_id); ++ cpi->prev_segment_id = NULL; ++ vpx_free(cpi->prev_variance_low); ++ cpi->prev_variance_low = NULL; ++ vpx_free(cpi->copied_frame_cnt); ++ cpi->copied_frame_cnt = NULL; ++} ++ + void vp9_change_config(struct VP9_COMP *cpi, const VP9EncoderConfig *oxcf) { + VP9_COMMON *const cm = &cpi->common; + RATE_CONTROL *const rc = &cpi->rc; +@@ -2126,6 +2137,8 @@ void vp9_change_config(struct VP9_COMP *cpi, const VP9EncoderConfig *oxcf) { + new_mi_size = cm->mi_stride * calc_mi_size(cm->mi_rows); + if (cm->mi_alloc_size < new_mi_size) { + vp9_free_context_buffers(cm); ++ vp9_free_pc_tree(&cpi->td); ++ vpx_free(cpi->mbmi_ext_base); + alloc_compressor_data(cpi); + realloc_segmentation_maps(cpi); + cpi->initial_width = cpi->initial_height = 0; +@@ -2144,8 +2157,18 @@ void vp9_change_config(struct VP9_COMP *cpi, const VP9EncoderConfig *oxcf) { + update_frame_size(cpi); + + if (last_w != cpi->oxcf.width || last_h != cpi->oxcf.height) { +- memset(cpi->consec_zero_mv, 0, +- cm->mi_rows * cm->mi_cols * sizeof(*cpi->consec_zero_mv)); ++ vpx_free(cpi->consec_zero_mv); ++ CHECK_MEM_ERROR( ++ &cm->error, cpi->consec_zero_mv, ++ vpx_calloc(cm->mi_rows * cm->mi_cols, sizeof(*cpi->consec_zero_mv))); ++ ++ vpx_free(cpi->skin_map); ++ CHECK_MEM_ERROR( ++ &cm->error, cpi->skin_map, ++ vpx_calloc(cm->mi_rows * cm->mi_cols, sizeof(cpi->skin_map[0]))); ++ ++ free_copy_partition_data(cpi); ++ alloc_copy_partition_data(cpi); + if (cpi->oxcf.aq_mode == CYCLIC_REFRESH_AQ) + vp9_cyclic_refresh_reset_resize(cpi); + rc->rc_1_frame = 0; diff --git a/bindgen-d0dfc52706f23db9dc9d74642eeebd89d73cb8d0.patch b/bindgen-d0dfc52706f23db9dc9d74642eeebd89d73cb8d0.patch deleted file mode 100644 index 0968827..0000000 --- a/bindgen-d0dfc52706f23db9dc9d74642eeebd89d73cb8d0.patch +++ /dev/null @@ -1,171 +0,0 @@ -diff -up thunderbird-68.3.0/third_party/rust/bindgen/.cargo-checksum.json.bindgen thunderbird-68.3.0/third_party/rust/bindgen/.cargo-checksum.json ---- thunderbird-68.3.0/third_party/rust/bindgen/.cargo-checksum.json.bindgen 2019-12-01 15:29:26.000000000 +0100 -+++ thunderbird-68.3.0/third_party/rust/bindgen/.cargo-checksum.json 2019-12-04 11:38:42.878975886 +0100 -@@ -1 +1 @@ --{"files":{"Cargo.toml":"9af635e7bad9021a49742a312faf6178b757dbd48aabc998931d6f491f14c179","LICENSE":"c23953d9deb0a3312dbeaf6c128a657f3591acee45067612fa68405eaa4525db","README.md":"5a1f556c6a57c0a6ccc65e19c27718e0f4b32381a8efcc80f6601b33c58c5d59","build.rs":"a9f6915c54d75f357ce32f96327bf4df53dc81a505b70831978f9dac6f43841d","src/callbacks.rs":"b24d7982332c6a35928f134184ddf4072fe4545a45546b97b9b0e0c1fbb77c08","src/clang.rs":"e9203eb5a1b432efebafcd011896e35e8c9145037bf99e7bb3709dc1b8e8e783","src/codegen/bitfield_unit.rs":"88b0604322dc449fc9284850eadc1f5d14b42fa747d4258bae0b6b9535f52dfd","src/codegen/bitfield_unit_tests.rs":"2073ac6a36e0bc9afaef5b1207966817c8fb7a1a9f6368c3b1b8f79822efbfba","src/codegen/error.rs":"2613af1d833377fd4a70719f4a09951d9d45dc9227827b9a2a938a1bcaaea2dd","src/codegen/helpers.rs":"fbd23e68dd51ccaddeb9761394d5df2db49baded0e2dccf6bbc52a2d6de502eb","src/codegen/impl_debug.rs":"f82969461d522fb758eca552ceaf189122a404cbb47fcc16008bfe52fc62aefa","src/codegen/impl_partialeq.rs":"d40d9ee2849c4d3d557b033c4d3af5e6de4a44347f67c0f016198086338811af","src/codegen/mod.rs":"238d989e13b7556e5d120a2bfe85b43332fba56cbe8df886d4c32e650fff1247","src/codegen/struct_layout.rs":"3fa5524aff82365ce292b0cc85080514c85a6dbd31bce90f001773b995dda28e","src/extra_assertions.rs":"494534bd4f18b80d89b180c8a93733e6617edcf7deac413e9a73fd6e7bc9ced7","src/features.rs":"c5fd7149f4a3b41fd4f89ade08505170942f4bc791bcb6a34fdddd3ae61856f8","src/ir/analysis/derive.rs":"325d4c1c1e6194e743f42a2316f1501b0ef852fe309f2e9cac3434825ad235f0","src/ir/analysis/has_destructor.rs":"63644f479738df35e531d3324ff892614083c3656e0747aa34d9f20dada878ec","src/ir/analysis/has_float.rs":"76162a309e4285a806755a08c687a3e7bc894a100a63da4e88584035e215b11d","src/ir/analysis/has_type_param_in_array.rs":"fdbc0af28a144c88ea2de83e6e6da5e1ffb40e3dd63fd7a708095d085bb06f94","src/ir/analysis/has_vtable.rs":"5788372d27bdbaaf0454bc17be31a5480918bc41a8a1c4832e8c61185c07f9cd","src/ir/analysis/mod.rs":"1f218e15c19f6666512908abc853fa7ff9ca5d0fafd94f026d9e4b0ce287ec3c","src/ir/analysis/sizedness.rs":"8dc10043d872e68e660ef96edca4d9733f95be45cdad4893462fa929b335014f","src/ir/analysis/template_params.rs":"6312c008bbc80f50e72a766756c8daddea0b6eeb31ec924b83a231df931e170e","src/ir/annotations.rs":"39a5ab19f4d5dfa617577e4a0d0d2b67b5369d480c7cca4b14d172458c9843f0","src/ir/comment.rs":"c48abe01c5af0f09f583a89f1394bc6c161b40f6c8f0f600bbfe3c907b47969b","src/ir/comp.rs":"ca439407faefbe3a198246f0a1dbdf4e40307e45eaaad317e85d1aab37bb31fc","src/ir/context.rs":"599226eb04d337a1b1b13af91af91bdb02dbd5f26f274cbc0ebc4489eb144fc0","src/ir/derive.rs":"34f9aa76b6c9c05136bb69dcd6455397faef571a567254d2c541d50a962994db","src/ir/dot.rs":"95ed2968fc3239d87892e9f1edf1ed6dd18630d949564961765967ea1d16960c","src/ir/enum_ty.rs":"9cc242d6b3c1866665594e8b306860ee39c0ea42d22198d46b7fded473fe3e84","src/ir/function.rs":"2d41d9df19f42b0c383f338be4c026c005853a8d1caf5f3e5a2f3a8dad202232","src/ir/int.rs":"07e0c7dbd2dd977177fae3acd2a14adf271c6cf9ff4b57cddc11d50734fd4801","src/ir/item.rs":"3bcdb69b793350e5744aec3577cdbb1e5068ece5220c38763cecd82dfb5e8f03","src/ir/item_kind.rs":"dbeae8c4fd0e5c9485d325aea040e056a1f2cd6d43fc927dee8fe1c0c59a7197","src/ir/layout.rs":"d49582081f5f86f7595afbe4845f38fb3b969a840b568f4a49b265e7d790bb5b","src/ir/mod.rs":"2eae90f207fad2e45957ec9287064992a419e3fc916aba84faff2ea25cbeb5ee","src/ir/module.rs":"c4d90bf38fe3672e01923734ccbdb7951ea929949d5f413a9c2aee12395a5094","src/ir/objc.rs":"758aa955a0c5d6ad82606c88a1f4cd1d93e666b71e82d43b18b1aaae96cf888a","src/ir/template.rs":"c0f8570b927dfd6a421fc4ce3094ec837a3ed936445225dbfac961e8e0842ae5","src/ir/traversal.rs":"ea751379a5aec02f93f8d2c61e18232776b1f000dbeae64b9a7195ba21a19dd6","src/ir/ty.rs":"952fb04cd6a71a2bca5c509aecacb42a1de0cae75824941541a38dc589f0993a","src/ir/var.rs":"8bdafb6d02f2c55ae11c28d88b19fb7a65ba8466da12ff039ae4c16c790b291e","src/lib.rs":"d5c8b404c515d30fc2d78b28eb84cff6b256f1f1e2dbd6aca280529bb2af6879","src/log_stubs.rs":"6dfdd908b7c6453da416cf232893768f9480e551ca4add0858ef88bf71ee6ceb","src/main.rs":"e519053bcdde6bc88f60f955246a02d53b3db1cc5ccd1612e6675b790b7460b0","src/options.rs":"041d635c8f6712ca32676a68f06d0245faed5577d9513786e058540ea2a69a7f","src/parse.rs":"be7d13cc84fae79ec7b3aa9e77063fa475a48d74a854423e2c72d75006a25202","src/regex_set.rs":"5cb72fc3714c0d79e9e942d003349c0775fafd7cd0c9603c65f5261883bbf9cf","src/time.rs":"3b763e6fee51d0eb01228dfe28bc28a9f692aff73b2a7b90a030902e0238fca6"},"package":"6bd7710ac8399ae1ebe1e3aac7c9047c4f39f2c94b33c997f482f49e96991f7c"} -\ No newline at end of file -+{"files":{"Cargo.toml":"9af635e7bad9021a49742a312faf6178b757dbd48aabc998931d6f491f14c179","LICENSE":"c23953d9deb0a3312dbeaf6c128a657f3591acee45067612fa68405eaa4525db","README.md":"5a1f556c6a57c0a6ccc65e19c27718e0f4b32381a8efcc80f6601b33c58c5d59","build.rs":"a9f6915c54d75f357ce32f96327bf4df53dc81a505b70831978f9dac6f43841d","src/callbacks.rs":"b24d7982332c6a35928f134184ddf4072fe4545a45546b97b9b0e0c1fbb77c08","src/clang.rs":"e9203eb5a1b432efebafcd011896e35e8c9145037bf99e7bb3709dc1b8e8e783","src/codegen/bitfield_unit.rs":"88b0604322dc449fc9284850eadc1f5d14b42fa747d4258bae0b6b9535f52dfd","src/codegen/bitfield_unit_tests.rs":"2073ac6a36e0bc9afaef5b1207966817c8fb7a1a9f6368c3b1b8f79822efbfba","src/codegen/error.rs":"2613af1d833377fd4a70719f4a09951d9d45dc9227827b9a2a938a1bcaaea2dd","src/codegen/helpers.rs":"fbd23e68dd51ccaddeb9761394d5df2db49baded0e2dccf6bbc52a2d6de502eb","src/codegen/impl_debug.rs":"f82969461d522fb758eca552ceaf189122a404cbb47fcc16008bfe52fc62aefa","src/codegen/impl_partialeq.rs":"d40d9ee2849c4d3d557b033c4d3af5e6de4a44347f67c0f016198086338811af","src/codegen/mod.rs":"238d989e13b7556e5d120a2bfe85b43332fba56cbe8df886d4c32e650fff1247","src/codegen/struct_layout.rs":"3fa5524aff82365ce292b0cc85080514c85a6dbd31bce90f001773b995dda28e","src/extra_assertions.rs":"494534bd4f18b80d89b180c8a93733e6617edcf7deac413e9a73fd6e7bc9ced7","src/features.rs":"c5fd7149f4a3b41fd4f89ade08505170942f4bc791bcb6a34fdddd3ae61856f8","src/ir/analysis/derive.rs":"325d4c1c1e6194e743f42a2316f1501b0ef852fe309f2e9cac3434825ad235f0","src/ir/analysis/has_destructor.rs":"63644f479738df35e531d3324ff892614083c3656e0747aa34d9f20dada878ec","src/ir/analysis/has_float.rs":"76162a309e4285a806755a08c687a3e7bc894a100a63da4e88584035e215b11d","src/ir/analysis/has_type_param_in_array.rs":"fdbc0af28a144c88ea2de83e6e6da5e1ffb40e3dd63fd7a708095d085bb06f94","src/ir/analysis/has_vtable.rs":"8c92a52c0f859c7bec7bfbc36b9d18f904baab0c8c9dc1b3e7af34de1a0b0da4","src/ir/analysis/mod.rs":"1f218e15c19f6666512908abc853fa7ff9ca5d0fafd94f026d9e4b0ce287ec3c","src/ir/analysis/sizedness.rs":"71f1a37f75b971ea5b0d8457473cc410947dbf706cb6d2c0338916910b78a675","src/ir/analysis/template_params.rs":"6312c008bbc80f50e72a766756c8daddea0b6eeb31ec924b83a231df931e170e","src/ir/annotations.rs":"39a5ab19f4d5dfa617577e4a0d0d2b67b5369d480c7cca4b14d172458c9843f0","src/ir/comment.rs":"c48abe01c5af0f09f583a89f1394bc6c161b40f6c8f0f600bbfe3c907b47969b","src/ir/comp.rs":"ca439407faefbe3a198246f0a1dbdf4e40307e45eaaad317e85d1aab37bb31fc","src/ir/context.rs":"599226eb04d337a1b1b13af91af91bdb02dbd5f26f274cbc0ebc4489eb144fc0","src/ir/derive.rs":"e5581852eec87918901a129284b4965aefc8a19394187a8095779a084f28fabe","src/ir/dot.rs":"95ed2968fc3239d87892e9f1edf1ed6dd18630d949564961765967ea1d16960c","src/ir/enum_ty.rs":"9cc242d6b3c1866665594e8b306860ee39c0ea42d22198d46b7fded473fe3e84","src/ir/function.rs":"2d41d9df19f42b0c383f338be4c026c005853a8d1caf5f3e5a2f3a8dad202232","src/ir/int.rs":"07e0c7dbd2dd977177fae3acd2a14adf271c6cf9ff4b57cddc11d50734fd4801","src/ir/item.rs":"3bcdb69b793350e5744aec3577cdbb1e5068ece5220c38763cecd82dfb5e8f03","src/ir/item_kind.rs":"dbeae8c4fd0e5c9485d325aea040e056a1f2cd6d43fc927dee8fe1c0c59a7197","src/ir/layout.rs":"d49582081f5f86f7595afbe4845f38fb3b969a840b568f4a49b265e7d790bb5b","src/ir/mod.rs":"2eae90f207fad2e45957ec9287064992a419e3fc916aba84faff2ea25cbeb5ee","src/ir/module.rs":"c4d90bf38fe3672e01923734ccbdb7951ea929949d5f413a9c2aee12395a5094","src/ir/objc.rs":"758aa955a0c5d6ad82606c88a1f4cd1d93e666b71e82d43b18b1aaae96cf888a","src/ir/template.rs":"c0f8570b927dfd6a421fc4ce3094ec837a3ed936445225dbfac961e8e0842ae5","src/ir/traversal.rs":"ea751379a5aec02f93f8d2c61e18232776b1f000dbeae64b9a7195ba21a19dd6","src/ir/ty.rs":"952fb04cd6a71a2bca5c509aecacb42a1de0cae75824941541a38dc589f0993a","src/ir/var.rs":"8bdafb6d02f2c55ae11c28d88b19fb7a65ba8466da12ff039ae4c16c790b291e","src/lib.rs":"d5c8b404c515d30fc2d78b28eb84cff6b256f1f1e2dbd6aca280529bb2af6879","src/log_stubs.rs":"6dfdd908b7c6453da416cf232893768f9480e551ca4add0858ef88bf71ee6ceb","src/main.rs":"e519053bcdde6bc88f60f955246a02d53b3db1cc5ccd1612e6675b790b7460b0","src/options.rs":"041d635c8f6712ca32676a68f06d0245faed5577d9513786e058540ea2a69a7f","src/parse.rs":"be7d13cc84fae79ec7b3aa9e77063fa475a48d74a854423e2c72d75006a25202","src/regex_set.rs":"5cb72fc3714c0d79e9e942d003349c0775fafd7cd0c9603c65f5261883bbf9cf","src/time.rs":"3b763e6fee51d0eb01228dfe28bc28a9f692aff73b2a7b90a030902e0238fca6"},"package":"6bd7710ac8399ae1ebe1e3aac7c9047c4f39f2c94b33c997f482f49e96991f7c"} -diff -up thunderbird-68.3.0/third_party/rust/bindgen/src/ir/analysis/has_vtable.rs.bindgen thunderbird-68.3.0/third_party/rust/bindgen/src/ir/analysis/has_vtable.rs ---- thunderbird-68.3.0/third_party/rust/bindgen/src/ir/analysis/has_vtable.rs.bindgen 2019-12-01 15:29:26.000000000 +0100 -+++ thunderbird-68.3.0/third_party/rust/bindgen/src/ir/analysis/has_vtable.rs 2019-12-04 11:33:09.631921359 +0100 -@@ -9,17 +9,17 @@ use std::ops; - use {HashMap, Entry}; - - /// The result of the `HasVtableAnalysis` for an individual item. --#[derive(Copy, Clone, Debug, PartialEq, Eq, Ord)] -+#[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord)] - pub enum HasVtableResult { -- /// The item has a vtable, but the actual vtable pointer is in a base -- /// member. -- BaseHasVtable, -+ /// The item does not have a vtable pointer. -+ No, - - /// The item has a vtable and the actual vtable pointer is within this item. - SelfHasVtable, - -- /// The item does not have a vtable pointer. -- No -+ /// The item has a vtable, but the actual vtable pointer is in a base -+ /// member. -+ BaseHasVtable, - } - - impl Default for HasVtableResult { -@@ -28,21 +28,6 @@ impl Default for HasVtableResult { - } - } - --impl cmp::PartialOrd for HasVtableResult { -- fn partial_cmp(&self, rhs: &Self) -> Option { -- use self::HasVtableResult::*; -- -- match (*self, *rhs) { -- (x, y) if x == y => Some(cmp::Ordering::Equal), -- (BaseHasVtable, _) => Some(cmp::Ordering::Greater), -- (_, BaseHasVtable) => Some(cmp::Ordering::Less), -- (SelfHasVtable, _) => Some(cmp::Ordering::Greater), -- (_, SelfHasVtable) => Some(cmp::Ordering::Less), -- _ => unreachable!(), -- } -- } --} -- - impl HasVtableResult { - /// Take the least upper bound of `self` and `rhs`. - pub fn join(self, rhs: Self) -> Self { -diff -up thunderbird-68.3.0/third_party/rust/bindgen/src/ir/analysis/sizedness.rs.bindgen thunderbird-68.3.0/third_party/rust/bindgen/src/ir/analysis/sizedness.rs ---- thunderbird-68.3.0/third_party/rust/bindgen/src/ir/analysis/sizedness.rs.bindgen 2019-12-01 15:29:26.000000000 +0100 -+++ thunderbird-68.3.0/third_party/rust/bindgen/src/ir/analysis/sizedness.rs 2019-12-04 11:33:09.632921362 +0100 -@@ -22,13 +22,14 @@ use {HashMap, Entry}; - /// - /// We initially assume that all types are `ZeroSized` and then update our - /// understanding as we learn more about each type. --#[derive(Copy, Clone, Debug, PartialEq, Eq, Ord)] -+#[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord)] - pub enum SizednessResult { -- /// Has some size that is known to be greater than zero. That doesn't mean -- /// it has a static size, but it is not zero sized for sure. In other words, -- /// it might contain an incomplete array or some other dynamically sized -- /// type. -- NonZeroSized, -+ /// The type is zero-sized. -+ /// -+ /// This means that if it is a C++ type, and is not being used as a base -+ /// member, then we must add an `_address` byte to enforce the -+ /// unique-address-per-distinct-object-instance rule. -+ ZeroSized, - - /// Whether this type is zero-sized or not depends on whether a type - /// parameter is zero-sized or not. -@@ -52,12 +53,11 @@ pub enum SizednessResult { - /// https://github.com/rust-lang-nursery/rust-bindgen/issues/586 - DependsOnTypeParam, - -- /// The type is zero-sized. -- /// -- /// This means that if it is a C++ type, and is not being used as a base -- /// member, then we must add an `_address` byte to enforce the -- /// unique-address-per-distinct-object-instance rule. -- ZeroSized, -+ /// Has some size that is known to be greater than zero. That doesn't mean -+ /// it has a static size, but it is not zero sized for sure. In other words, -+ /// it might contain an incomplete array or some other dynamically sized -+ /// type. -+ NonZeroSized, - } - - impl Default for SizednessResult { -@@ -66,21 +66,6 @@ impl Default for SizednessResult { - } - } - --impl cmp::PartialOrd for SizednessResult { -- fn partial_cmp(&self, rhs: &Self) -> Option { -- use self::SizednessResult::*; -- -- match (*self, *rhs) { -- (x, y) if x == y => Some(cmp::Ordering::Equal), -- (NonZeroSized, _) => Some(cmp::Ordering::Greater), -- (_, NonZeroSized) => Some(cmp::Ordering::Less), -- (DependsOnTypeParam, _) => Some(cmp::Ordering::Greater), -- (_, DependsOnTypeParam) => Some(cmp::Ordering::Less), -- _ => unreachable!(), -- } -- } --} -- - impl SizednessResult { - /// Take the least upper bound of `self` and `rhs`. - pub fn join(self, rhs: Self) -> Self { -diff -up thunderbird-68.3.0/third_party/rust/bindgen/src/ir/derive.rs.bindgen thunderbird-68.3.0/third_party/rust/bindgen/src/ir/derive.rs ---- thunderbird-68.3.0/third_party/rust/bindgen/src/ir/derive.rs.bindgen 2019-12-01 15:29:26.000000000 +0100 -+++ thunderbird-68.3.0/third_party/rust/bindgen/src/ir/derive.rs 2019-12-04 11:33:09.632921362 +0100 -@@ -92,10 +92,10 @@ pub trait CanDeriveOrd { - /// - /// Initially we assume that we can derive trait for all types and then - /// update our understanding as we learn more about each type. --#[derive(Debug, Copy, Clone, PartialEq, Eq, Ord)] -+#[derive(Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord)] - pub enum CanDerive { -- /// No, we cannot. -- No, -+ /// Yes, we can derive automatically. -+ Yes, - - /// The only thing that stops us from automatically deriving is that - /// array with more than maximum number of elements is used. -@@ -103,8 +103,8 @@ pub enum CanDerive { - /// This means we probably can "manually" implement such trait. - Manually, - -- /// Yes, we can derive automatically. -- Yes, -+ /// No, we cannot. -+ No, - } - - impl Default for CanDerive { -@@ -113,22 +113,6 @@ impl Default for CanDerive { - } - } - --impl cmp::PartialOrd for CanDerive { -- fn partial_cmp(&self, rhs: &Self) -> Option { -- use self::CanDerive::*; -- -- let ordering = match (*self, *rhs) { -- (x, y) if x == y => cmp::Ordering::Equal, -- (No, _) => cmp::Ordering::Greater, -- (_, No) => cmp::Ordering::Less, -- (Manually, _) => cmp::Ordering::Greater, -- (_, Manually) => cmp::Ordering::Less, -- _ => unreachable!() -- }; -- Some(ordering) -- } --} -- - impl CanDerive { - /// Take the least upper bound of `self` and `rhs`. - pub fn join(self, rhs: Self) -> Self { diff --git a/build-big-endian-errors.patch b/build-big-endian-errors.patch new file mode 100644 index 0000000..b4bcb38 --- /dev/null +++ b/build-big-endian-errors.patch @@ -0,0 +1,57 @@ +diff -up firefox-102.0/third_party/libwebrtc/common_audio/wav_file.cc.big-endian-errors firefox-102.0/third_party/libwebrtc/common_audio/wav_file.cc +--- firefox-102.0/third_party/libwebrtc/common_audio/wav_file.cc.big-endian-errors 2022-08-17 13:19:53.056891028 +0200 ++++ firefox-102.0/third_party/libwebrtc/common_audio/wav_file.cc 2022-08-17 13:19:57.251879556 +0200 +@@ -89,9 +89,6 @@ void WavReader::Reset() { + + size_t WavReader::ReadSamples(const size_t num_samples, + int16_t* const samples) { +-#ifndef WEBRTC_ARCH_LITTLE_ENDIAN +-#error "Need to convert samples to big-endian when reading from WAV file" +-#endif + + size_t num_samples_left_to_read = num_samples; + size_t next_chunk_start = 0; +@@ -129,9 +126,6 @@ size_t WavReader::ReadSamples(const size + } + + size_t WavReader::ReadSamples(const size_t num_samples, float* const samples) { +-#ifndef WEBRTC_ARCH_LITTLE_ENDIAN +-#error "Need to convert samples to big-endian when reading from WAV file" +-#endif + + size_t num_samples_left_to_read = num_samples; + size_t next_chunk_start = 0; +@@ -213,9 +207,6 @@ WavWriter::WavWriter(FileWrapper file, + } + + void WavWriter::WriteSamples(const int16_t* samples, size_t num_samples) { +-#ifndef WEBRTC_ARCH_LITTLE_ENDIAN +-#error "Need to convert samples to little-endian when writing to WAV file" +-#endif + + for (size_t i = 0; i < num_samples; i += kMaxChunksize) { + const size_t num_remaining_samples = num_samples - i; +@@ -243,9 +234,6 @@ void WavWriter::WriteSamples(const int16 + } + + void WavWriter::WriteSamples(const float* samples, size_t num_samples) { +-#ifndef WEBRTC_ARCH_LITTLE_ENDIAN +-#error "Need to convert samples to little-endian when writing to WAV file" +-#endif + + for (size_t i = 0; i < num_samples; i += kMaxChunksize) { + const size_t num_remaining_samples = num_samples - i; +diff -up firefox-102.0/third_party/libwebrtc/common_audio/wav_header.cc.big-endian-errors firefox-102.0/third_party/libwebrtc/common_audio/wav_header.cc +--- firefox-102.0/third_party/libwebrtc/common_audio/wav_header.cc.big-endian-errors 2022-08-17 13:18:04.688187393 +0200 ++++ firefox-102.0/third_party/libwebrtc/common_audio/wav_header.cc 2022-08-17 13:18:22.451138816 +0200 +@@ -26,10 +26,6 @@ + namespace webrtc { + namespace { + +-#ifndef WEBRTC_ARCH_LITTLE_ENDIAN +-#error "Code not working properly for big endian platforms." +-#endif +- + #pragma pack(2) + struct ChunkHeader { + uint32_t ID; diff --git a/build-ppc64-abiv2.patch b/build-ppc64-abiv2.patch new file mode 100644 index 0000000..7a68390 --- /dev/null +++ b/build-ppc64-abiv2.patch @@ -0,0 +1,12 @@ +diff -up firefox-115.0.2/security/nss/lib/freebl/sha512-p8.s.ppc-abiv2 firefox-115.0.2/security/nss/lib/freebl/sha512-p8.s +--- firefox-115.0.2/security/nss/lib/freebl/sha512-p8.s.ppc-abiv2 2023-07-25 09:01:42.602375809 +0200 ++++ firefox-115.0.2/security/nss/lib/freebl/sha512-p8.s 2023-07-25 09:01:48.273373924 +0200 +@@ -3,7 +3,7 @@ + # See the full LICENSE under scripts/. + + .machine "any" +-.abiversion 2 ++.abiversion 1 + .text + + .globl sha512_block_p8 diff --git a/build-rhel7-lower-node-min-version.patch b/build-rhel7-lower-node-min-version.patch new file mode 100644 index 0000000..398cbc3 --- /dev/null +++ b/build-rhel7-lower-node-min-version.patch @@ -0,0 +1,11 @@ +--- firefox-115.8.0/python/mozbuild/mozbuild/nodeutil.py.lower-node-min-version 2024-02-12 21:53:56.000000000 +0200 ++++ firefox-115.8.0/python/mozbuild/mozbuild/nodeutil.py 2024-02-14 16:48:12.476182627 +0200 +@@ -13,7 +13,7 @@ from mozboot.util import get_tools_dir + from packaging.version import Version + from six import PY3 + +-NODE_MIN_VERSION = Version("12.22.12") ++NODE_MIN_VERSION = Version("10.24.0") + NPM_MIN_VERSION = Version("6.14.16") + + diff --git a/build-rhel7-nasm-dwarf.patch b/build-rhel7-nasm-dwarf.patch new file mode 100644 index 0000000..5e2ba4a --- /dev/null +++ b/build-rhel7-nasm-dwarf.patch @@ -0,0 +1,12 @@ +diff -up firefox-91.0.1/python/mozbuild/mozbuild/frontend/context.py.rhel7-nasm firefox-91.0.1/python/mozbuild/mozbuild/frontend/context.py +--- firefox-91.0.1/python/mozbuild/mozbuild/frontend/context.py.rhel7-nasm 2021-08-31 08:02:10.814740774 +0200 ++++ firefox-91.0.1/python/mozbuild/mozbuild/frontend/context.py 2021-08-31 08:04:03.967146994 +0200 +@@ -420,7 +420,7 @@ class AsmFlags(BaseCompileFlags): + if self._context.config.substs.get("OS_ARCH") == "WINNT": + debug_flags += ["-F", "cv8"] + elif self._context.config.substs.get("OS_ARCH") != "Darwin": +- debug_flags += ["-F", "dwarf"] ++ debug_flags += ["-f", "elf32"] + elif ( + self._context.config.substs.get("OS_ARCH") == "WINNT" + and self._context.config.substs.get("CPU_ARCH") == "aarch64" 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/build-tb-rnp-openssl.patch b/build-tb-rnp-openssl.patch new file mode 100644 index 0000000..d0d9346 --- /dev/null +++ b/build-tb-rnp-openssl.patch @@ -0,0 +1,12 @@ +diff -up thunderbird-115.1.0/comm/third_party/rnp/moz.build.rnp-openssl thunderbird-115.1.0/comm/third_party/rnp/moz.build +--- thunderbird-115.1.0/comm/third_party/rnp/moz.build.rnp-openssl 2023-08-07 16:38:39.272780256 +0200 ++++ thunderbird-115.1.0/comm/third_party/rnp/moz.build 2023-08-07 16:38:42.822780087 +0200 +@@ -93,7 +93,7 @@ elif CONFIG["MZLA_LIBRNP_BACKEND"] == "o + # Supported, but not with RHEL's OpenSSL, disabled for now; + "ENABLE_BRAINPOOL": False, + }) +- rnp_defines["PACKAGE_STRING"] = rnp_defines["PACKAGE_STRING"][:-1] + '-openssl"' ++ #rnp_defines["PACKAGE_STRING"] = rnp_defines["PACKAGE_STRING"][:-1] + '-openssl"' + if CONFIG["MZLA_LIBRNP_OPENSSL_VERSION"][0] == "3": + rnp_defines["CRYPTO_BACKEND_OPENSSL3"] = True + diff --git a/disable-openpgp-in-thunderbird.patch b/disable-openpgp-in-thunderbird.patch new file mode 100644 index 0000000..43bc620 --- /dev/null +++ b/disable-openpgp-in-thunderbird.patch @@ -0,0 +1,12 @@ +diff -up thunderbird-102.2.1/comm/mail/extensions/openpgp/content/BondOpenPGP.jsm.disable-openpgp-in-thunderbird thunderbird-102.2.1/comm/mail/extensions/openpgp/content/BondOpenPGP.jsm +--- thunderbird-102.2.1/comm/mail/extensions/openpgp/content/BondOpenPGP.jsm.disable-openpgp-in-thunderbird 2022-09-12 14:33:54.995339932 +0200 ++++ thunderbird-102.2.1/comm/mail/extensions/openpgp/content/BondOpenPGP.jsm 2022-09-12 14:39:26.784999636 +0200 +@@ -51,6 +51,8 @@ var BondOpenPGP = { + _alreadyTriedInit: false, // if already true, we will not try again + + async init() { ++ // We don't have support for the opengpg in rhel ATM. ++ return; + if (this._alreadyTriedInit) { + // We have previously attempted to init, don't try again. + return; diff --git a/expat-CVE-2022-25235.patch b/expat-CVE-2022-25235.patch deleted file mode 100644 index ac495b1..0000000 --- a/expat-CVE-2022-25235.patch +++ /dev/null @@ -1,49 +0,0 @@ -diff -up thunderbird-91.7.0/parser/expat/lib/xmltok.c.expat-CVE-2022-25235 thunderbird-91.7.0/parser/expat/lib/xmltok.c ---- thunderbird-91.7.0/parser/expat/lib/xmltok.c.expat-CVE-2022-25235 2022-03-02 17:57:38.364361168 +0100 -+++ thunderbird-91.7.0/parser/expat/lib/xmltok.c 2022-03-02 17:58:22.235512399 +0100 -@@ -65,13 +65,6 @@ - + ((((byte)[2]) >> 5) & 1)] \ - & (1u << (((byte)[2]) & 0x1F))) - --#define UTF8_GET_NAMING(pages, p, n) \ -- ((n) == 2 \ -- ? UTF8_GET_NAMING2(pages, (const unsigned char *)(p)) \ -- : ((n) == 3 \ -- ? UTF8_GET_NAMING3(pages, (const unsigned char *)(p)) \ -- : 0)) -- - /* Detection of invalid UTF-8 sequences is based on Table 3.1B - of Unicode 3.2: http://www.unicode.org/unicode/reports/tr28/ - with the additional restriction of not allowing the Unicode -diff -up thunderbird-91.7.0/parser/expat/lib/xmltok_impl.c.expat-CVE-2022-25235 thunderbird-91.7.0/parser/expat/lib/xmltok_impl.c ---- thunderbird-91.7.0/parser/expat/lib/xmltok_impl.c.expat-CVE-2022-25235 2022-03-02 17:57:38.365361172 +0100 -+++ thunderbird-91.7.0/parser/expat/lib/xmltok_impl.c 2022-03-02 18:04:51.240853247 +0100 -@@ -34,7 +34,7 @@ - case BT_LEAD ## n: \ - if (end - ptr < n) \ - return XML_TOK_PARTIAL_CHAR; \ -- if (!IS_NAME_CHAR(enc, ptr, n)) { \ -+ if (IS_INVALID_CHAR(enc, ptr, n) || ! IS_NAME_CHAR(enc, ptr, n)) { \ - *nextTokPtr = ptr; \ - return XML_TOK_INVALID; \ - } \ -@@ -62,7 +62,7 @@ - case BT_LEAD ## n: \ - if (end - ptr < n) \ - return XML_TOK_PARTIAL_CHAR; \ -- if (!IS_NMSTRT_CHAR(enc, ptr, n)) { \ -+ if (IS_INVALID_CHAR(enc, ptr, n) || ! IS_NMSTRT_CHAR(enc, ptr, n)) { \ - *nextTokPtr = ptr; \ - return XML_TOK_INVALID; \ - } \ -@@ -1090,6 +1090,10 @@ PREFIX(prologTok)(const ENCODING *enc, c - case BT_LEAD ## n: \ - if (end - ptr < n) \ - return XML_TOK_PARTIAL_CHAR; \ -+ if (IS_INVALID_CHAR(enc, ptr, n)) { \ -+ *nextTokPtr = ptr; \ -+ return XML_TOK_INVALID; \ -+ } \ - if (IS_NMSTRT_CHAR(enc, ptr, n)) { \ - ptr += n; \ - tok = XML_TOK_NAME; \ diff --git a/expat-CVE-2022-25236.patch b/expat-CVE-2022-25236.patch deleted file mode 100644 index 84cafd2..0000000 --- a/expat-CVE-2022-25236.patch +++ /dev/null @@ -1,40 +0,0 @@ -diff -up thunderbird-91.7.0/parser/expat/lib/xmlparse.c.expat-CVE-2022-25236 thunderbird-91.7.0/parser/expat/lib/xmlparse.c ---- thunderbird-91.7.0/parser/expat/lib/xmlparse.c.expat-CVE-2022-25236 2022-03-02 18:08:40.085642028 +0100 -+++ thunderbird-91.7.0/parser/expat/lib/xmlparse.c 2022-03-02 18:13:31.838667958 +0100 -@@ -700,8 +700,7 @@ XML_ParserCreate(const XML_Char *encodin - XML_Parser XMLCALL - XML_ParserCreateNS(const XML_Char *encodingName, XML_Char nsSep) - { -- XML_Char tmp[2]; -- *tmp = nsSep; -+ XML_Char tmp[2] = {nsSep, 0}; - return XML_ParserCreate_MM(encodingName, NULL, tmp); - } - #endif -@@ -1276,8 +1275,7 @@ XML_ExternalEntityParserCreate(XML_Parse - would be otherwise. - */ - if (ns) { -- XML_Char tmp[2]; -- *tmp = namespaceSeparator; -+ XML_Char tmp[2] = {parser->m_namespaceSeparator, 0}; - parser = parserCreate(encodingName, &parser->m_mem, tmp, newDtd); - } - else { -@@ -3667,6 +3665,16 @@ addBinding(XML_Parser parser, PREFIX *pr - if (!mustBeXML && isXMLNS - && (len > xmlnsLen || uri[len] != xmlnsNamespace[len])) - isXMLNS = XML_FALSE; -+ // NOTE: While Expat does not validate namespace URIs against RFC 3986, -+ // we have to at least make sure that the XML processor on top of -+ // Expat (that is splitting tag names by namespace separator into -+ // 2- or 3-tuples (uri-local or uri-local-prefix)) cannot be confused -+ // by an attacker putting additional namespace separator characters -+ // into namespace declarations. That would be ambiguous and not to -+ // be expected. -+ if (parser->m_ns && (uri[len] == parser->m_namespaceSeparator)) { -+ return XML_ERROR_SYNTAX; -+ } - } - isXML = isXML && len == xmlLen; - isXMLNS = isXMLNS && len == xmlnsLen; diff --git a/expat-CVE-2022-25315.patch b/expat-CVE-2022-25315.patch deleted file mode 100644 index 4d4efb7..0000000 --- a/expat-CVE-2022-25315.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up thunderbird-91.7.0/parser/expat/lib/xmlparse.c.expat-CVE-2022-25315 thunderbird-91.7.0/parser/expat/lib/xmlparse.c ---- thunderbird-91.7.0/parser/expat/lib/xmlparse.c.expat-CVE-2022-25315 2022-03-02 18:17:50.966583254 +0100 -+++ thunderbird-91.7.0/parser/expat/lib/xmlparse.c 2022-03-02 18:19:27.636924735 +0100 -@@ -2479,6 +2479,7 @@ storeRawNames(XML_Parser parser) - while (tag) { - int bufSize; - int nameLen = sizeof(XML_Char) * (tag->name.strLen + 1); -+ size_t rawNameLen; - char *rawNameBuf = tag->buf + nameLen; - /* Stop if already stored. Since tagStack is a stack, we can stop - at the first entry that has already been copied; everything -@@ -2490,7 +2491,11 @@ storeRawNames(XML_Parser parser) - /* For re-use purposes we need to ensure that the - size of tag->buf is a multiple of sizeof(XML_Char). - */ -- bufSize = nameLen + ROUND_UP(tag->rawNameLength, sizeof(XML_Char)); -+ rawNameLen = ROUND_UP(tag->rawNameLength, sizeof(XML_Char)); -+ /* Detect and prevent integer overflow. */ -+ if (rawNameLen > (size_t)INT_MAX - nameLen) -+ return XML_FALSE; -+ bufSize = nameLen + (int)rawNameLen; - if (bufSize > tag->bufEnd - tag->buf) { - char *temp = (char *)REALLOC(tag->buf, bufSize); - if (temp == NULL) diff --git a/firefox-SIOCGSTAMP.patch b/firefox-SIOCGSTAMP.patch deleted file mode 100644 index 673cb07..0000000 --- a/firefox-SIOCGSTAMP.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -up firefox-68.0/media/libyuv/libyuv/tools_libyuv/autoroller/unittests/testdata/DEPS.chromium.old firefox-68.0/media/libyuv/libyuv/tools_libyuv/autoroller/unittests/testdata/DEPS.chromium -diff -up firefox-68.0/media/webrtc/trunk/Makefile.old firefox-68.0/media/webrtc/trunk/Makefile -diff -up firefox-68.0/media/webrtc/trunk/webrtc/rtc_base/physicalsocketserver.cc.old firefox-68.0/media/webrtc/trunk/webrtc/rtc_base/physicalsocketserver.cc ---- firefox-68.0/media/webrtc/trunk/webrtc/rtc_base/physicalsocketserver.cc.old 2019-07-10 20:10:04.420328534 +0200 -+++ firefox-68.0/media/webrtc/trunk/webrtc/rtc_base/physicalsocketserver.cc 2019-07-10 20:13:48.766658793 +0200 -@@ -62,6 +62,10 @@ typedef void* SockOptArg; - - #if defined(WEBRTC_POSIX) && !defined(WEBRTC_MAC) && !defined(WEBRTC_BSD) && !defined(__native_client__) - -+#ifndef SIOCGSTAMP -+#define SIOCGSTAMP 0x8906 /* Get stamp (timeval) */ -+#endif -+ - int64_t GetSocketRecvTimestamp(int socket) { - struct timeval tv_ioctl; - int ret = ioctl(socket, SIOCGSTAMP, &tv_ioctl); diff --git a/firefox-enable-addons.patch b/firefox-enable-addons.patch new file mode 100644 index 0000000..15d0707 --- /dev/null +++ b/firefox-enable-addons.patch @@ -0,0 +1,13 @@ +diff -up firefox-55.0/browser/app/profile/firefox.js.addons firefox-55.0/browser/app/profile/firefox.js +--- firefox-55.0/browser/app/profile/firefox.js.addons 2017-08-02 10:58:30.566363833 +0200 ++++ firefox-55.0/browser/app/profile/firefox.js 2017-08-02 10:59:15.377216959 +0200 +@@ -65,7 +65,8 @@ pref("extensions.systemAddon.update.url" + + // Disable add-ons that are not installed by the user in all scopes by default. + // See the SCOPE constants in AddonManager.jsm for values to use here. +-pref("extensions.autoDisableScopes", 15); ++pref("extensions.autoDisableScopes", 0); ++pref("extensions.showMismatchUI", false); + // Scopes to scan for changes at startup. + pref("extensions.startupScanScopes", 0); + diff --git a/firefox-gcc-build.patch b/firefox-gcc-build.patch new file mode 100644 index 0000000..55017ad --- /dev/null +++ b/firefox-gcc-build.patch @@ -0,0 +1,38 @@ +--- firefox-80.0.1/toolkit/crashreporter/google-breakpad/src/third_party/lss/linux_syscall_support.h 2020-08-31 10:04:19.000000000 -0400 ++++ firefox-80.0.1/toolkit/crashreporter/google-breakpad/src/third_party/lss/linux_syscall_support.h 2020-09-12 07:24:35.298931628 -0400 +@@ -1962,7 +1962,7 @@ struct kernel_statfs { + LSS_ENTRYPOINT \ + "pop %%ebx" \ + args \ +- : "esp", "memory"); \ ++ : "memory"); \ + LSS_RETURN(type,__res) + #undef _syscall0 + #define _syscall0(type,name) \ +@@ -2019,7 +2019,7 @@ struct kernel_statfs { + : "i" (__NR_##name), "ri" ((long)(arg1)), \ + "c" ((long)(arg2)), "d" ((long)(arg3)), \ + "S" ((long)(arg4)), "D" ((long)(arg5)) \ +- : "esp", "memory"); \ ++ : "memory"); \ + LSS_RETURN(type,__res); \ + } + #undef _syscall6 +@@ -2041,7 +2041,7 @@ struct kernel_statfs { + : "i" (__NR_##name), "0" ((long)(&__s)), \ + "c" ((long)(arg2)), "d" ((long)(arg3)), \ + "S" ((long)(arg4)), "D" ((long)(arg5)) \ +- : "esp", "memory"); \ ++ : "memory"); \ + LSS_RETURN(type,__res); \ + } + LSS_INLINE int LSS_NAME(clone)(int (*fn)(void *), void *child_stack, +@@ -2127,7 +2127,7 @@ struct kernel_statfs { + : "0"(-EINVAL), "i"(__NR_clone), + "m"(fn), "m"(child_stack), "m"(flags), "m"(arg), + "m"(parent_tidptr), "m"(newtls), "m"(child_tidptr) +- : "esp", "memory", "ecx", "edx", "esi", "edi"); ++ : "memory", "ecx", "edx", "esi", "edi"); + LSS_RETURN(int, __res); + } + diff --git a/firefox-nss-addon-hack.patch b/firefox-nss-addon-hack.patch new file mode 100644 index 0000000..0322707 --- /dev/null +++ b/firefox-nss-addon-hack.patch @@ -0,0 +1,19 @@ +diff -up firefox-84.0.2/security/certverifier/NSSCertDBTrustDomain.cpp.nss-hack firefox-84.0.2/security/certverifier/NSSCertDBTrustDomain.cpp +--- firefox-84.0.2/security/certverifier/NSSCertDBTrustDomain.cpp.nss-hack 2021-01-11 12:12:02.585514543 +0100 ++++ firefox-84.0.2/security/certverifier/NSSCertDBTrustDomain.cpp 2021-01-11 12:47:50.345984582 +0100 +@@ -1619,6 +1619,15 @@ SECStatus InitializeNSS(const nsACString + return srv; + } + ++ /* Sets the NSS_USE_ALG_IN_ANY_SIGNATURE bit. ++ * does not change NSS_USE_ALG_IN_CERT_SIGNATURE, ++ * so policy will still disable use of sha1 in ++ * certificate related signature processing. */ ++ srv = NSS_SetAlgorithmPolicy(SEC_OID_SHA1, NSS_USE_ALG_IN_ANY_SIGNATURE, 0); ++ if (srv != SECSuccess) { ++ NS_WARNING("Unable to use SHA1 for Add-ons, expect broken/disabled Add-ons. See https://bugzilla.redhat.com/show_bug.cgi?id=1908018 for details."); ++ } ++ + if (nssDbConfig == NSSDBConfig::ReadWrite) { + UniquePK11SlotInfo slot(PK11_GetInternalKeySlot()); + if (!slot) { diff --git a/gen_cbindgen-vendor.sh b/gen_cbindgen-vendor.sh deleted file mode 100755 index c2b60f0..0000000 --- a/gen_cbindgen-vendor.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/bash -set -x - -# Dummy Cargo.toml file with cbindgen dependency -cat > Cargo.toml <. - void trace(JSTracer* aTrc); diff --git a/mozilla-526293.patch b/mozilla-526293.patch deleted file mode 100644 index a03796a..0000000 --- a/mozilla-526293.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up firefox-60.6.0/widget/gtk/nsFilePicker.cpp.old firefox-60.6.0/widget/gtk/nsFilePicker.cpp ---- firefox-60.6.0/widget/gtk/nsFilePicker.cpp.old 2019-03-27 10:29:47.918560620 +0100 -+++ firefox-60.6.0/widget/gtk/nsFilePicker.cpp 2019-03-27 10:30:08.384491717 +0100 -@@ -366,9 +366,7 @@ nsFilePicker::Open(nsIFilePickerShownCal - // If we have --enable-proxy-bypass-protection, then don't allow - // remote URLs to be used. - #ifndef MOZ_PROXY_BYPASS_PROTECTION -- if (mAllowURLs) { -- gtk_file_chooser_set_local_only(GTK_FILE_CHOOSER(file_chooser), FALSE); -- } -+ gtk_file_chooser_set_local_only(GTK_FILE_CHOOSER(file_chooser), FALSE); - #endif - - if (action == GTK_FILE_CHOOSER_ACTION_OPEN || diff --git a/mozilla-api-key b/mozilla-api-key new file mode 100644 index 0000000..81877bc --- /dev/null +++ b/mozilla-api-key @@ -0,0 +1 @@ +9008bb7e-1e22-4038-94fe-047dd48ccc0b diff --git a/mozilla-1170092.patch b/mozilla-bmo1170092.patch similarity index 100% rename from mozilla-1170092.patch rename to mozilla-bmo1170092.patch diff --git a/mozilla-bmo1504834-part1.patch b/mozilla-bmo1504834-part1.patch new file mode 100644 index 0000000..cc66dd4 --- /dev/null +++ b/mozilla-bmo1504834-part1.patch @@ -0,0 +1,89 @@ +# HG changeset patch +# Parent 9fcbd287056a40084b1e679f787bf683b291f323 +Taken from https://bugzilla.mozilla.org/show_bug.cgi?id=1504834 + +diff --git a/gfx/2d/DrawTargetSkia.cpp b/gfx/2d/DrawTargetSkia.cpp +--- a/gfx/2d/DrawTargetSkia.cpp ++++ b/gfx/2d/DrawTargetSkia.cpp +@@ -156,7 +156,8 @@ static IntRect CalculateSurfaceBounds(co + } + + static const int kARGBAlphaOffset = +- SurfaceFormat::A8R8G8B8_UINT32 == SurfaceFormat::B8G8R8A8 ? 3 : 0; ++ 0; // Skia is always BGRA SurfaceFormat::A8R8G8B8_UINT32 == ++ // SurfaceFormat::B8G8R8A8 ? 3 : 0; + + static bool VerifyRGBXFormat(uint8_t* aData, const IntSize& aSize, + const int32_t aStride, SurfaceFormat aFormat) { +diff --git a/gfx/2d/Types.h b/gfx/2d/Types.h +--- a/gfx/2d/Types.h ++++ b/gfx/2d/Types.h +@@ -89,18 +89,11 @@ enum class SurfaceFormat : int8_t { + // This represents the unknown format. + UNKNOWN, // TODO: Replace uses with Maybe. + +-// The following values are endian-independent synonyms. The _UINT32 suffix +-// indicates that the name reflects the layout when viewed as a uint32_t +-// value. +-#if MOZ_LITTLE_ENDIAN() ++ // The following values are endian-independent synonyms. The _UINT32 suffix ++ // indicates that the name reflects the layout when viewed as a uint32_t ++ // value. + A8R8G8B8_UINT32 = B8G8R8A8, // 0xAARRGGBB + X8R8G8B8_UINT32 = B8G8R8X8, // 0x00RRGGBB +-#elif MOZ_BIG_ENDIAN() +- A8R8G8B8_UINT32 = A8R8G8B8, // 0xAARRGGBB +- X8R8G8B8_UINT32 = X8R8G8B8, // 0x00RRGGBB +-#else +-# error "bad endianness" +-#endif + + // The following values are OS and endian-independent synonyms. + // +diff --git a/gfx/skia/skia/modules/skcms/skcms.cc b/gfx/skia/skia/modules/skcms/skcms.cc +--- a/gfx/skia/skia/modules/skcms/skcms.cc ++++ b/gfx/skia/skia/modules/skcms/skcms.cc +@@ -30,6 +30,8 @@ + #include + #include + #endif ++#else ++ #define SKCMS_PORTABLE + #endif + + static bool runtime_cpu_detection = true; +@@ -324,20 +326,28 @@ enum { + static uint16_t read_big_u16(const uint8_t* ptr) { + uint16_t be; + memcpy(&be, ptr, sizeof(be)); +-#if defined(_MSC_VER) +- return _byteswap_ushort(be); ++#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ ++ return be; + #else +- return __builtin_bswap16(be); ++ #if defined(_MSC_VER) ++ return _byteswap_ushort(be); ++ #else ++ return __builtin_bswap16(be); ++ #endif + #endif + } + + static uint32_t read_big_u32(const uint8_t* ptr) { + uint32_t be; + memcpy(&be, ptr, sizeof(be)); +-#if defined(_MSC_VER) +- return _byteswap_ulong(be); ++#if __BYTE_ORDER == __ORDER_BIG_ENDIAN__ ++ return be; + #else +- return __builtin_bswap32(be); ++ #if defined(_MSC_VER) ++ return _byteswap_ulong(be); ++ #else ++ return __builtin_bswap32(be); ++ #endif + #endif + } + diff --git a/mozilla-bmo1504834-part3.patch b/mozilla-bmo1504834-part3.patch new file mode 100644 index 0000000..9c2ece0 --- /dev/null +++ b/mozilla-bmo1504834-part3.patch @@ -0,0 +1,17 @@ +# HG changeset patch +# Parent 09cd4ac2cc607e85aa572425b824fbab386af607 +For FF68, AntiAliasing of XULTexts seem to be broken on big endian (s390x). Text and icons of the sandwich-menu to the +right of the address bar, as well as plugin-windows appears transparant, which usually means unreadable (white on white). + +diff --git a/gfx/skia/skia/src/opts/SkBlitMask_opts.h b/gfx/skia/skia/src/opts/SkBlitMask_opts.h +--- a/gfx/skia/skia/src/opts/SkBlitMask_opts.h ++++ b/gfx/skia/skia/src/opts/SkBlitMask_opts.h +@@ -210,6 +210,8 @@ namespace SK_OPTS_NS { + // ~~~> + // a = 1*aa + d(1-1*aa) = aa + d(1-aa) + // c = 0*aa + d(1-1*aa) = d(1-aa) ++ // TODO: Check this for endian-issues! ++ // Do we need to switch 255 to the front for all of those tuples? + return (aa & Sk4px(skvx::byte16{0,0,0,255, 0,0,0,255, 0,0,0,255, 0,0,0,255})) + + d.approxMulDiv255(aa.inv()); + }; diff --git a/mozilla-bmo1670333.patch b/mozilla-bmo1670333.patch new file mode 100644 index 0000000..7126d43 --- /dev/null +++ b/mozilla-bmo1670333.patch @@ -0,0 +1,69 @@ +diff -up firefox-115.0/dom/media/mp4/MP4Demuxer.cpp.1670333 firefox-115.0/dom/media/mp4/MP4Demuxer.cpp +--- firefox-115.0/dom/media/mp4/MP4Demuxer.cpp.1670333 2023-06-06 23:14:43.000000000 +0200 ++++ firefox-115.0/dom/media/mp4/MP4Demuxer.cpp 2023-06-08 08:15:48.214109403 +0200 +@@ -32,6 +32,8 @@ mozilla::LogModule* GetDemuxerLog() { re + DDMOZ_LOG(gMediaDemuxerLog, mozilla::LogLevel::Debug, "::%s: " arg, \ + __func__, ##__VA_ARGS__) + ++extern bool gUseKeyframeFromContainer; ++ + namespace mozilla { + + using TimeUnit = media::TimeUnit; +@@ -404,6 +406,12 @@ already_AddRefed MP4TrackD + [[fallthrough]]; + case H264::FrameType::OTHER: { + bool keyframe = type == H264::FrameType::I_FRAME; ++ if (gUseKeyframeFromContainer) { ++ if (sample->mKeyframe && sample->mKeyframe != keyframe) { ++ sample->mKeyframe = keyframe; ++ } ++ break; ++ } + if (sample->mKeyframe != keyframe) { + NS_WARNING(nsPrintfCString("Frame incorrectly marked as %skeyframe " + "@ pts:%" PRId64 " dur:%" PRId64 +diff -up firefox-115.0/dom/media/platforms/PDMFactory.cpp.1670333 firefox-115.0/dom/media/platforms/PDMFactory.cpp +--- firefox-115.0/dom/media/platforms/PDMFactory.cpp.1670333 2023-06-06 23:14:44.000000000 +0200 ++++ firefox-115.0/dom/media/platforms/PDMFactory.cpp 2023-06-08 08:09:33.145289602 +0200 +@@ -67,6 +67,8 @@ + + #include + ++bool gUseKeyframeFromContainer = false; ++ + using DecodeSupport = mozilla::media::DecodeSupport; + using DecodeSupportSet = mozilla::media::DecodeSupportSet; + using MediaCodec = mozilla::media::MediaCodec; +@@ -562,7 +564,7 @@ void PDMFactory::CreateRddPDMs() { + #ifdef MOZ_FFMPEG + if (StaticPrefs::media_ffmpeg_enabled() && + StaticPrefs::media_rdd_ffmpeg_enabled() && +- !CreateAndStartupPDM()) { ++ !(mFFmpegUsed = CreateAndStartupPDM())) { + mFailureFlags += GetFailureFlagBasedOnFFmpegStatus( + FFmpegRuntimeLinker::LinkStatusCode()); + } +@@ -738,9 +740,10 @@ void PDMFactory::CreateDefaultPDMs() { + + CreateAndStartupPDM(); + +- if (StaticPrefs::media_gmp_decoder_enabled() && ++ if (StaticPrefs::media_gmp_decoder_enabled() && !mFFmpegUsed && + !StartupPDM(GMPDecoderModule::Create(), + StaticPrefs::media_gmp_decoder_preferred())) { ++ gUseKeyframeFromContainer = true; + mFailureFlags += DecoderDoctorDiagnostics::Flags::GMPPDMFailedToStartup; + } + } +diff -up firefox-115.0/dom/media/platforms/PDMFactory.h.1670333 firefox-115.0/dom/media/platforms/PDMFactory.h +--- firefox-115.0/dom/media/platforms/PDMFactory.h.1670333 2023-06-06 23:14:42.000000000 +0200 ++++ firefox-115.0/dom/media/platforms/PDMFactory.h 2023-06-08 08:09:33.145289602 +0200 +@@ -103,6 +103,7 @@ class PDMFactory final { + RefPtr mNullPDM; + + DecoderDoctorDiagnostics::FlagsSet mFailureFlags; ++ bool mFFmpegUsed = false; + + friend class RemoteVideoDecoderParent; + static void EnsureInit(); diff --git a/mozilla-bmo1716707-svg.patch b/mozilla-bmo1716707-svg.patch new file mode 100644 index 0000000..9c0559c --- /dev/null +++ b/mozilla-bmo1716707-svg.patch @@ -0,0 +1,29 @@ +# HG changeset patch +# User M. Sirringhaus +# Date 1645518286 -3600 +# Tue Feb 22 09:24:46 2022 +0100 +# Node ID 81832d035e101471dcf52dd91de287268add7a91 +# Parent 66f7ce16eb4965108687280e5443edd610631efb +imported patch svg-rendering.patch + +diff --git a/image/imgFrame.cpp b/image/imgFrame.cpp +--- a/image/imgFrame.cpp ++++ b/image/imgFrame.cpp +@@ -372,6 +372,17 @@ nsresult imgFrame::InitWithDrawable(gfxD + return NS_ERROR_OUT_OF_MEMORY; + } + ++#if MOZ_BIG_ENDIAN() ++ if (aBackend == gfx::BackendType::SKIA && canUseDataSurface) { ++ // SKIA is lying about what format it returns on big endian ++ for (int ii=0; ii < mRawSurface->GetSize().Height()*mRawSurface->Stride() / 4; ++ii) { ++ uint32_t *vals = (uint32_t*)(mRawSurface->GetData()); ++ uint32_t val = ((vals[ii] << 8) & 0xFF00FF00 ) | ((vals[ii] >> 8) & 0xFF00FF ); ++ vals[ii] = (val << 16) | (val >> 16); ++ } ++ } ++#endif ++ + if (!canUseDataSurface) { + // We used an offscreen surface, which is an "optimized" surface from + // imgFrame's perspective. diff --git a/mozilla-bmo1716707-swizzle.patch b/mozilla-bmo1716707-swizzle.patch new file mode 100644 index 0000000..bb37560 --- /dev/null +++ b/mozilla-bmo1716707-swizzle.patch @@ -0,0 +1,34 @@ +# HG changeset patch +# User M. Sirringhaus +# Date 1645518286 -3600 +# Tue Feb 22 09:24:46 2022 +0100 +# Node ID 494640792b4677f6462e95b90a54a4e22aeb738b +# Parent 81832d035e101471dcf52dd91de287268add7a91 +imported patch one_swizzle_to_rule_them_all.patch + +Index: firefox-102.0/gfx/webrender_bindings/RenderCompositorSWGL.cpp +=================================================================== +--- firefox-102.0.orig/gfx/webrender_bindings/RenderCompositorSWGL.cpp ++++ firefox-102.0/gfx/webrender_bindings/RenderCompositorSWGL.cpp +@@ -7,6 +7,7 @@ + #include "RenderCompositorSWGL.h" + + #include "mozilla/gfx/Logging.h" ++#include "mozilla/gfx/Swizzle.h" + #include "mozilla/widget/CompositorWidget.h" + + #ifdef MOZ_WIDGET_GTK +@@ -235,6 +237,13 @@ void RenderCompositorSWGL::CommitMappedB + } + mDT->Flush(); + ++#if MOZ_BIG_ENDIAN() ++ // One swizzle to rule them all. ++ gfx::SwizzleData(mMappedData, mMappedStride, gfx::SurfaceFormat::B8G8R8A8, ++ mMappedData, mMappedStride, gfx::SurfaceFormat::A8R8G8B8, ++ mDT->GetSize()); ++#endif ++ + // Done with the DT. Hand it back to the widget and clear out any trace of it. + mWidget->EndRemoteDrawingInRegion(mDT, mDirtyRegion); + mDirtyRegion.SetEmpty(); diff --git a/mozilla-bmo1789216-disable-av1.patch b/mozilla-bmo1789216-disable-av1.patch new file mode 100644 index 0000000..ce91a12 --- /dev/null +++ b/mozilla-bmo1789216-disable-av1.patch @@ -0,0 +1,89 @@ +diff --git a/media/ffvpx/libavcodec/allcodecs.c b/media/ffvpx/libavcodec/allcodecs.c +--- a/media/ffvpx/libavcodec/allcodecs.c ++++ b/media/ffvpx/libavcodec/allcodecs.c +@@ -755,12 +755,15 @@ + extern FFCodec ff_libaom_av1_encoder; + extern const FFCodec ff_libaribb24_decoder; + extern const FFCodec ff_libcelt_decoder; + extern const FFCodec ff_libcodec2_encoder; + extern const FFCodec ff_libcodec2_decoder; ++#if CONFIG_MOZ_AV1 + extern const FFCodec ff_libdav1d_decoder; + extern const FFCodec ff_libdavs2_decoder; ++extern const FFCodec ff_libuavs3d_decoder; ++#endif + extern const FFCodec ff_libfdk_aac_encoder; + extern const FFCodec ff_libfdk_aac_decoder; + extern const FFCodec ff_libgsm_encoder; + extern const FFCodec ff_libgsm_decoder; + extern const FFCodec ff_libgsm_ms_encoder; +@@ -783,11 +786,10 @@ + extern const FFCodec ff_libspeex_encoder; + extern const FFCodec ff_libspeex_decoder; + extern const FFCodec ff_libsvtav1_encoder; + extern const FFCodec ff_libtheora_encoder; + extern const FFCodec ff_libtwolame_encoder; +-extern const FFCodec ff_libuavs3d_decoder; + extern const FFCodec ff_libvo_amrwbenc_encoder; + extern const FFCodec ff_libvorbis_encoder; + extern const FFCodec ff_libvorbis_decoder; + extern const FFCodec ff_libvpx_vp8_encoder; + extern const FFCodec ff_libvpx_vp8_decoder; +diff --git a/media/ffvpx/libavcodec/codec_list.c b/media/ffvpx/libavcodec/codec_list.c +--- a/media/ffvpx/libavcodec/codec_list.c ++++ b/media/ffvpx/libavcodec/codec_list.c +@@ -9,12 +9,14 @@ + &ff_flac_decoder, + #endif + #if CONFIG_MP3_DECODER + &ff_mp3_decoder, + #endif ++#if CONFIG_MOZ_AV1 + #if CONFIG_LIBDAV1D + &ff_libdav1d_decoder, + #endif + #if CONFIG_AV1_DECODER + &ff_av1_decoder, + #endif ++#endif + NULL }; +diff --git a/media/ffvpx/libavcodec/moz.build b/media/ffvpx/libavcodec/moz.build +--- a/media/ffvpx/libavcodec/moz.build ++++ b/media/ffvpx/libavcodec/moz.build +@@ -84,11 +84,10 @@ + 'cbs.c', + 'cbs_av1.c', + 'golomb.c', + 'h264pred.c', + 'imgconvert.c', +- 'libdav1d.c', + 'mathtables.c', + 'qsv_api.c', + 'raw.c', + 'videodsp.c', + 'vp8.c', +@@ -107,14 +106,19 @@ + 'vp9mvs.c', + 'vp9prob.c', + 'vp9recon.c', + 'vpx_rac.c', + ] +- USE_LIBS += [ +- 'dav1d', +- 'media_libdav1d_asm', +- ] ++ if CONFIG['MOZ_AV1']: ++ USE_LIBS += [ ++ 'dav1d', ++ 'media_libdav1d_asm', ++ ] ++ SOURCES += [ ++ 'libdav1d.c', ++ ] ++ + if CONFIG['MOZ_WAYLAND']: + LOCAL_INCLUDES += ['/media/mozva'] + SOURCES += [ + 'vaapi_av1.c', + 'vaapi_decode.c', + diff --git a/mozilla-bmo849632.patch b/mozilla-bmo849632.patch new file mode 100644 index 0000000..913d6bc --- /dev/null +++ b/mozilla-bmo849632.patch @@ -0,0 +1,26 @@ +# HG changeset patch +# Parent 3de59fe1b8708c01e134ce698c4232b8a854f617 +Problem: webGL sites are displayed in the wrong color (usually blue-ish) +Solution: Problem is with skia once again. Output of webgl seems endian-correct, but skia only + knows how to deal with little endian. + So we swizzle the output of webgl after reading it from readpixels() +Note: This does not fix all webGL sites, but is a step in the right direction + +Index: firefox-115.0/gfx/gl/GLContext.h +=================================================================== +--- firefox-115.0.orig/gfx/gl/GLContext.h ++++ firefox-115.0/gfx/gl/GLContext.h +@@ -1560,6 +1560,13 @@ class GLContext : public GenericAtomicRe + BEFORE_GL_CALL; + mSymbols.fReadPixels(x, y, width, height, format, type, pixels); + OnSyncCall(); ++#if MOZ_BIG_ENDIAN() ++ uint8_t* itr = (uint8_t*)pixels; ++ for (GLsizei i = 0; i < width * height; i++) { ++ NativeEndian::swapToLittleEndianInPlace((uint32_t*)itr, 1); ++ itr += 4; ++ } ++#endif + AFTER_GL_CALL; + mHeavyGLCallsSinceLastFlush = true; + } diff --git a/mozilla-bmo998749.patch b/mozilla-bmo998749.patch new file mode 100644 index 0000000..50e22b5 --- /dev/null +++ b/mozilla-bmo998749.patch @@ -0,0 +1,29 @@ +# HG changeset patch +# User msirringhaus@suse.de +# Date 1583738770 -3600 +# Mon Mar 09 08:26:10 2020 +0100 +# Node ID 34676feac1a542e409e22acf5b98735f8313b1ce +# Parent 506857dace0a08d1c9685e3ac264646590b3e27f +[mq]: mozilla-bmo998749.patch + +diff -r 506857dace0a -r 34676feac1a5 gfx/2d/FilterProcessing.h +--- a/gfx/2d/FilterProcessing.h Fri Feb 28 12:31:51 2020 +0100 ++++ b/gfx/2d/FilterProcessing.h Mon Mar 09 08:26:10 2020 +0100 +@@ -13,10 +13,17 @@ + namespace mozilla { + namespace gfx { + ++#if MOZ_BIG_ENDIAN() ++const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_B = 3; ++const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_G = 2; ++const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_R = 1; ++const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_A = 0; ++#else + const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_B = 0; + const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_G = 1; + const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_R = 2; + const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_A = 3; ++#endif + + class FilterProcessing { + public: diff --git a/mozilla-build-arm.patch b/mozilla-build-arm.patch deleted file mode 100644 index f98cbe3..0000000 --- a/mozilla-build-arm.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up firefox-29.0/mozilla-release/gfx/ycbcr/moz.build.arm firefox-29.0/mozilla-release/gfx/ycbcr/moz.build ---- firefox-29.0/mozilla-release/gfx/ycbcr/moz.build.arm 2014-04-22 07:27:47.000000000 +0200 -+++ firefox-29.0/mozilla-release/gfx/ycbcr/moz.build 2014-04-22 16:40:34.862849368 +0200 -@@ -61,7 +61,7 @@ else: - 'yuv_row_other.cpp', - ] - --if CONFIG['CPU_ARCH'] == 'arm' and CONFIG['HAVE_ARM_NEON']: -+if CONFIG['HAVE_ARM_NEON']: - SOURCES += [ - 'yuv_row_arm.s', - ] diff --git a/node-stdout-nonblocking-wrapper b/node-stdout-nonblocking-wrapper index b2814b8..7dfb513 100755 --- a/node-stdout-nonblocking-wrapper +++ b/node-stdout-nonblocking-wrapper @@ -1,2 +1,2 @@ #!/bin/sh -exec /usr/bin/node "$@" 2>&1 | cat - +exec node "$@" 2>&1 | cat - diff --git a/nss-setup-flags-env.inc b/nss-setup-flags-env.inc new file mode 100644 index 0000000..45f6e79 --- /dev/null +++ b/nss-setup-flags-env.inc @@ -0,0 +1,7 @@ +sed -i 's@%{bundled_install_path}@%{_buildrootdir}%{bundled_install_path}@g' %{_buildrootdir}%{bundled_install_path}/%{_lib}/pkgconfig/nss*.pc + +export LDFLAGS="-L%{_buildrootdir}%{bundled_install_path}/%{_lib} $LDFLAGS" +export LDFLAGS="-Wl,-rpath,%{bundled_install_path}/%{_lib} $LDFLAGS" +export LDFLAGS="-Wl,-rpath-link,%{_buildrootdir}%{bundled_install_path}/%{_lib} $LDFLAGS" +export PKG_CONFIG_PATH=%{_buildrootdir}%{bundled_install_path}/%{_lib}/pkgconfig +export PATH="{_buildrootdir}%{bundled_install_path}/bin:$PATH" diff --git a/process-official-tarball b/process-official-tarball new file mode 100755 index 0000000..449e7bb --- /dev/null +++ b/process-official-tarball @@ -0,0 +1,23 @@ +#!/bin/sh + +rm -rf ./process-tarball-dir +mkdir ./process-tarball-dir +tar -xJf $1 --directory process-tarball-dir + +rm -vf ./process-tarball-dir/*/testing/web-platform/tests/conformance-checkers/html-rdfa/0030-isvalid.html +rm -vf ./process-tarball-dir/*/testing/web-platform/tests/conformance-checkers/html-rdfa/0008-isvalid.html +rm -vf ./process-tarball-dir/*/testing/web-platform/tests/conformance-checkers/html-rdfalite/0030-isvalid.html +rm -vf ./process-tarball-dir/*/testing/web-platform/tests/css/css-ui/support/cursors/woolly-64.svg +rm -vf ./process-tarball-dir/*/testing/web-platform/tests/css/css-ui/support/cursors/woolly.svg +rm -vf ./process-tarball-dir/*/testing/web-platform/tests/conformance-checkers/html-rdfa/0230-novalid.html +rm -vf ./process-tarball-dir/*/testing/web-platform/tests/conformance-checkers/html-rdfa/0231-isvalid.html +rm -vf ./process-tarball-dir/*/layout/inspector/tests/chrome/test_fontVariationsAPI.css + +processed_tarball=${1/source/processed-source} + +cd ./process-tarball-dir +tar -cf - ./* | xz -9 -T 0 -f > $processed_tarball +mv $processed_tarball .. +cd .. + +rm -rf ./process-tarball-dir diff --git a/rhbz-1173156.patch b/rhbz-1173156.patch new file mode 100644 index 0000000..c35d901 --- /dev/null +++ b/rhbz-1173156.patch @@ -0,0 +1,12 @@ +diff -up firefox-60.5.0/extensions/auth/nsAuthSambaNTLM.cpp.rhbz-1173156 firefox-60.5.0/extensions/auth/nsAuthSambaNTLM.cpp +--- firefox-60.5.0/extensions/auth/nsAuthSambaNTLM.cpp.rhbz-1173156 2019-01-22 10:36:09.284069020 +0100 ++++ firefox-60.5.0/extensions/auth/nsAuthSambaNTLM.cpp 2019-01-22 10:37:12.669757744 +0100 +@@ -161,7 +161,7 @@ nsresult nsAuthSambaNTLM::SpawnNTLMAuthH + const char* username = PR_GetEnv("USER"); + if (!username) return NS_ERROR_FAILURE; + +- const char* const args[] = {"ntlm_auth", ++ const char* const args[] = {"/usr/bin/ntlm_auth", + "--helper-protocol", + "ntlmssp-client-1", + "--use-cached-creds", diff --git a/rhbz-1219542-s390-build.patch b/rhbz-1219542-s390-build.patch deleted file mode 100644 index f94e43a..0000000 --- a/rhbz-1219542-s390-build.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up firefox-55.0/js/src/old-configure.in.rhbz-1219542-s390 firefox-55.0/js/src/old-configure.in ---- firefox-55.0/js/src/old-configure.in.rhbz-1219542-s390 2017-07-31 18:20:48.000000000 +0200 -+++ firefox-55.0/js/src/old-configure.in 2017-08-02 14:31:32.190243669 +0200 -@@ -541,7 +541,7 @@ case "$host" in - - *-linux*|*-kfreebsd*-gnu|*-gnu*) - HOST_CFLAGS="$HOST_CFLAGS -DXP_UNIX" -- HOST_OPTIMIZE_FLAGS="${HOST_OPTIMIZE_FLAGS=-O3}" -+ HOST_OPTIMIZE_FLAGS="${HOST_OPTIMIZE_FLAGS=-O1}" - ;; - - *) -@@ -617,8 +617,8 @@ case "$target" in - - *-*linux*) - if test "$GNU_CC" -o "$GNU_CXX"; then -- MOZ_PGO_OPTIMIZE_FLAGS="-O3" -- MOZ_OPTIMIZE_FLAGS="-O3" -+ MOZ_PGO_OPTIMIZE_FLAGS="-O1" -+ MOZ_OPTIMIZE_FLAGS="-O1" - if test -z "$CLANG_CC"; then - MOZ_OPTIMIZE_FLAGS="-freorder-blocks $MOZ_OPTIMIZE_FLAGS" - fi diff --git a/rhbz-1354671.patch b/rhbz-1354671.patch index 7660f14..b6e8bbd 100644 --- a/rhbz-1354671.patch +++ b/rhbz-1354671.patch @@ -1,12 +1,12 @@ -diff -up firefox-60.5.0/layout/base/nsIPresShell.h.1354671 firefox-60.5.0/layout/base/nsIPresShell.h ---- firefox-60.5.0/layout/base/nsIPresShell.h.1354671 2019-01-22 16:08:40.796539950 +0100 -+++ firefox-60.5.0/layout/base/nsIPresShell.h 2019-01-22 16:10:25.106069228 +0100 -@@ -204,7 +204,7 @@ class nsIPresShell : public nsStubDocume +diff -up firefox-70.0/layout/base/PresShell.h.1354671 firefox-70.0/layout/base/PresShell.h +--- firefox-70.0/layout/base/PresShell.h.1354671 2019-10-22 12:33:12.987775587 +0200 ++++ firefox-70.0/layout/base/PresShell.h 2019-10-22 12:36:39.999366086 +0200 +@@ -257,7 +257,7 @@ class PresShell final : public nsStubDoc * to the same aSize value. AllocateFrame is infallible and will abort * on out-of-memory. */ - void* AllocateFrame(nsQueryFrame::FrameIID aID, size_t aSize) { + void* __attribute__((optimize("no-lifetime-dse"))) AllocateFrame(nsQueryFrame::FrameIID aID, size_t aSize) { - void* result = mFrameArena.AllocateByFrameID(aID, aSize); - RecordAlloc(result); - return result; + #define FRAME_ID(classname, ...) \ + static_assert(size_t(nsQueryFrame::FrameIID::classname##_id) == \ + size_t(eArenaObjectID_##classname), \ diff --git a/rustflags-commasplit.patch b/rustflags-commasplit.patch deleted file mode 100644 index 0669bd8..0000000 --- a/rustflags-commasplit.patch +++ /dev/null @@ -1,76 +0,0 @@ ---- thunderbird-102.10.0/build/moz.configure/rust.configure.rustflags-commasplit 2023-03-21 06:16:03.000000000 -0700 -+++ thunderbird-102.10.0/build/moz.configure/rust.configure 2023-04-05 08:57:29.403219120 -0700 -@@ -593,7 +593,7 @@ - - # ============================================================== - --option(env="RUSTFLAGS", nargs=1, help="Rust compiler flags") -+option(env="RUSTFLAGS", nargs=1, help="Rust compiler flags", comma_split=False) - set_config("RUSTFLAGS", depends("RUSTFLAGS")(lambda flags: flags)) - - ---- thunderbird-102.10.0/python/mozbuild/mozbuild/configure/options.py.rustflags-commasplit 2023-03-21 06:16:09.000000000 -0700 -+++ thunderbird-102.10.0/python/mozbuild/mozbuild/configure/options.py 2023-04-05 08:57:31.270193468 -0700 -@@ -191,6 +191,10 @@ - to instantiate an option indirectly. Set this to a positive integer to - force the script to look into a deeper stack frame when inferring the - `category`. -+ - `comma_split` specifies whether the value string should be split on -+ commas. The default is True. Setting it False is necessary for things -+ like compiler flags which should be a single string that may contain -+ commas. - """ - - __slots__ = ( -@@ -205,6 +209,7 @@ - "possible_origins", - "category", - "define_depth", -+ "comma_split", - ) - - def __init__( -@@ -218,6 +223,7 @@ - category=None, - help=None, - define_depth=0, -+ comma_split=True, - ): - if not name and not env: - raise InvalidOptionError( -@@ -335,9 +341,10 @@ - self.choices = choices - self.help = help - self.category = category or _infer_option_category(define_depth) -+ self.comma_split = comma_split - - @staticmethod -- def split_option(option): -+ def split_option(option, comma_split=True): - """Split a flag or variable into a prefix, a name and values - - Variables come in the form NAME=values (no prefix). -@@ -350,7 +357,13 @@ - - elements = option.split("=", 1) - name = elements[0] -- values = tuple(elements[1].split(",")) if len(elements) == 2 else () -+ if len(elements) == 2: -+ if comma_split: -+ values = tuple(elements[1].split(",")) -+ else: -+ values = (elements[1],) -+ else: -+ values = () - if name.startswith("--"): - name = name[2:] - if not name.islower(): -@@ -426,7 +439,7 @@ - % (option, origin, ", ".join(self.possible_origins)) - ) - -- prefix, name, values = self.split_option(option) -+ prefix, name, values = self.split_option(option, self.comma_split) - option = self._join_option(prefix, name) - - assert name in (self.name, self.env) diff --git a/sources b/sources index 5ff26c2..135c4de 100644 --- a/sources +++ b/sources @@ -1,3 +1,6 @@ SHA512 (cbindgen-vendor.tar.xz) = 161811f4adfc74e5d92871c78139704d32e1e1ad6b615c85353de300d9647a68f1ca8b1c953f7cc5539d861e9e8d8e42892cae757a3eafea78804e19bc323c16 -SHA512 (thunderbird-115.6.1.source.tar.xz) = f2efaff8b209234b202671b5322fb14a367b955e28c4b24b139af091b838186126e3d387ca21e57ed089629af876e86b38588789b1ef3db14f4f8703095467b3 -SHA512 (thunderbird-langpacks-115.6.1-20240110.tar.xz) = 4f0e52e05ef3c4445f1a0ac2fe0df7a5056db13d656b8af3960ddda05c2e4e0ac1bc75ce194f0961fe9a63e19c4bcc92500b5322ebb5f238f22188714db443cd +SHA512 (nspr-4.35.0-1.el8_1.src.rpm) = 5123a443fcc42602e31104999be339ae899eb7b1f1e2f1ea87ba4f283eb894d08ab568e421dba1df4770f23be91ff88aa6a0748bce7feef31ed88bee5bdecb2c +SHA512 (nss-3.90.0-2.el8_1.src.rpm) = 850cd6a343e62d34ad28ac356db03371f0b1f018274901cc700cc4f8138c9929eb159bbb1ebe167f727a69f6499423a54581ca65ed655ee468f1cae8450df85c +SHA512 (nss-3.90.0-3.el9_0.src.rpm) = f321b9c1bda0b09eee564e2903023435851a4ff2e55bdd5b03012ca51be7999b18d85061f874065d0b25913721eb574f49746a3111f8f1cdd5b21268dddd8367 +SHA512 (thunderbird-115.12.1.processed-source.tar.xz) = bef06c1136069d5ba76ce4ca759f2268b61e1424ff14de9ec831a49198954fb1e39f3d28709e838f5eb8b119b35454c40f03bc3f98ec7f7325c52ae05cb3c575 +SHA512 (thunderbird-langpacks-115.12.1-20240618.tar.xz) = 033d0641b2c1445fa0af7aa3a0e629bdbcea2d408f356519a689d502bac547bcf74f262fc414bc103cc646ac06be754bd1beb68e86e0d144b73faa74c5ee04d7 diff --git a/thunderbird-mozconfig b/thunderbird-mozconfig index 003cad3..c7b2c9e 100644 --- a/thunderbird-mozconfig +++ b/thunderbird-mozconfig @@ -1,44 +1,40 @@ -mk_add_options MOZ_CO_PROJECT=mail ac_add_options --enable-application=comm/mail -ac_add_options --with-system-zlib +ac_add_options --allow-addon-sideload +ac_add_options --disable-bootstrap +ac_add_options --disable-crashreporter +#ac_add_options --disable-elf-hack +ac_add_options --disable-jemalloc ac_add_options --disable-strip -#ac_add_options --enable-libnotify -ac_add_options --enable-necko-wifi +ac_add_options --disable-tests ac_add_options --disable-updater ac_add_options --enable-chrome-format=omni -ac_add_options --enable-pulseaudio -ac_add_options --enable-av1 -ac_add_options --without-system-icu -ac_add_options --enable-release -ac_add_options --update-channel=release -ac_add_options --allow-addon-sideload +ac_add_options --enable-default-toolkit=cairo-gtk3-wayland ac_add_options --enable-js-shell -ac_add_options --with-unsigned-addon-scopes=app,system -ac_add_options --without-wasm-sandboxed-libraries -ac_add_options --disable-bootstrap +ac_add_options --enable-necko-wifi +ac_add_options --enable-official-branding +ac_add_options --enable-official-branding +ac_add_options --enable-pulseaudio +ac_add_options --enable-release +ac_add_options --enable-system-ffi +ac_add_options --libdir="$LIBDIR" +ac_add_options --prefix="$PREFIX" +ac_add_options --update-channel=release +ac_add_options --with-google-location-service-api-keyfile=../google-api-key +ac_add_options --with-google-safebrowsing-api-keyfile=../google-api-key +ac_add_options --with-mozilla-api-keyfile=../mozilla-api-key ac_add_options --without-sysroot - - - -#mk_add_options AUTOCONF=autoconf-2.13 - -#ac_add_options --enable-default-toolkit=cairo-gtk3-wayland - -#ac_add_options --prefix="$PREFIX" -#ac_add_options --libdir="$LIBDIR" -#ac_add_options --with-system-jpeg -#ac_add_options --with-system-zlib -#ac_add_options --with-system-libvpx -#ac_add_options --disable-tests -#ac_add_options --disable-strip -## temporary disable system cairo, because compilation fails -#ac_add_options --disable-necko-wifi -#ac_add_options --disable-updater -#ac_add_options --with-system-icu +ac_add_options --without-system-icu +ac_add_options --without-wasm-sandboxed-libraries +ac_add_options --with-system-jpeg +ac_add_options --with-system-jpeg +ac_add_options --with-system-zlib +ac_add_options --with-unsigned-addon-scopes=app,system export BUILD_OFFICIAL=1 export MOZILLA_OFFICIAL=1 +export MOZ_UPDATE_CHANNEL=release mk_add_options BUILD_OFFICIAL=1 +mk_add_options MOZ_CO_PROJECT=mail mk_add_options MOZILLA_OFFICIAL=1 mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir diff --git a/thunderbird-mozconfig-branded b/thunderbird-mozconfig-branded deleted file mode 100644 index 53b376d..0000000 --- a/thunderbird-mozconfig-branded +++ /dev/null @@ -1 +0,0 @@ -ac_add_options --enable-official-branding diff --git a/thunderbird-redhat-default-prefs.js b/thunderbird-redhat-default-prefs.js index bb25581..4d01b78 100644 --- a/thunderbird-redhat-default-prefs.js +++ b/thunderbird-redhat-default-prefs.js @@ -2,7 +2,7 @@ pref("app.update.enabled", false); pref("app.update.autoInstallEnabled", false); /* Allow users to set custom colors*/ /* pref("browser.display.use_system_colors", true);*/ -pref("general.useragent.vendor", "Fedora"); +pref("general.useragent.vendor", "Red Hat"); pref("general.useragent.vendorSub", "THUNDERBIRD_RPM_VR"); pref("intl.locale.matchOS", true); pref("mail.shell.checkDefaultClient", false); diff --git a/thunderbird-wayland.desktop b/thunderbird-wayland.desktop deleted file mode 100644 index 10fba80..0000000 --- a/thunderbird-wayland.desktop +++ /dev/null @@ -1,30 +0,0 @@ -[Desktop Entry] -Version=1.0 -Name=Thunderbird on Wayland -GenericName=Email -Comment=Send and Receive Email -Exec=thunderbird-wayland --name thunderbird-wayland %u -TryExec=thunderbird-wayland -Icon=thunderbird -Terminal=false -Type=Application -MimeType=message/rfc822;x-scheme-handler/mailto; -StartupNotify=true -Categories=Network;Email; -Name[cs]=Poštovní klient Thunderbird -Name[ca]=Client de correu Thunderbird -Name[fi]=Thunderbird-sähköposti -Name[fr]=Messagerie Thunderbird -Name[pl]=Klient poczty Thunderbird -Name[pt_BR]=Cliente de E-mail Thunderbird -Name[sv]=E-postklienten Thunderbird -Comment[ca]=Llegiu i escriviu correu -Comment[cs]=Čtení a psaní pošty -Comment[de]=Emails lesen und verfassen -Comment[fi]=Lue ja kirjoita sähköposteja -Comment[fr]=Lire et écrire des courriels -Comment[it]=Leggere e scrivere email -Comment[ja]=メールの読み書き -Comment[pl]=Czytanie i wysyłanie e-maili -Comment[pt_BR]=Ler e escrever suas mensagens -Comment[sv]=Läs och skriv e-post diff --git a/thunderbird-wayland.sh.in b/thunderbird-wayland.sh.in deleted file mode 100644 index 31d7def..0000000 --- a/thunderbird-wayland.sh.in +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash -# -# Run Thunderbird under Wayland -# -export MOZ_ENABLE_WAYLAND=1 -exec __PREFIX__/bin/thunderbird "$@" diff --git a/thunderbird.sh.in b/thunderbird.sh.in index a4173d6..88024b3 100644 --- a/thunderbird.sh.in +++ b/thunderbird.sh.in @@ -34,7 +34,22 @@ MOZ_DIST_BIN="$MOZ_LIB_DIR/thunderbird" MOZ_PROGRAM="$MOZ_DIST_BIN/thunderbird" MOZ_LANGPACKS_DIR="$MOZ_DIST_BIN/langpacks" MOZ_EXTENSIONS_PROFILE_DIR="$HOME/.mozilla/extensions/{3550f703-e582-4d05-9a08-453d09bdfdc6}" -MOZ_LAUNCHER="$MOZ_DIST_BIN/thunderbird" + +## +## Enable Wayland backend? +## +%DISABLE_WAYLAND_PLACEHOLDER% + +if ! [ $MOZ_DISABLE_WAYLAND ] && [ "$WAYLAND_DISPLAY" ]; then + if [ "$XDG_CURRENT_DESKTOP" == "GNOME" ]; then + export MOZ_ENABLE_WAYLAND=1 + fi +## Enable Wayland on KDE/Sway +## + if [ "$XDG_SESSION_TYPE" == "wayland" ]; then + export MOZ_ENABLE_WAYLAND=1 + fi +fi ## ## Set MOZ_ENABLE_PANGO is no longer used because Pango is enabled by default @@ -59,12 +74,6 @@ export GNOME_DISABLE_CRASH_DIALOG ## export G_SLICE=always-malloc -## -## Allow downgrade because during distro upgrade the build time can be -## older in newer version than the previous one. -## -export MOZ_ALLOW_DOWNGRADE=1 - ## ## To disable the use of Firefox localization, set MOZ_DISABLE_LANGPACKS=1 ## in your environment before launching Firefox. @@ -74,13 +83,6 @@ export MOZ_ALLOW_DOWNGRADE=1 # export MOZ_DISABLE_LANGPACKS # -## -## Use D-Bus remote exclusively when there's Wayland display. -## -if [ "$WAYLAND_DISPLAY" ]; then - export MOZ_DBUS_REMOTE=1 -fi - ## ## Automatically installed langpacks are tracked by .fedora-langpack-install ## config file. @@ -137,36 +139,4 @@ fi NSS_SSL_CBC_RANDOM_IV=${NSS_SSL_CBC_RANDOM_IV-1} export NSS_SSL_CBC_RANDOM_IV -# Prepare command line arguments -script_args="" -pass_arg_count=0 -while [ $# -gt $pass_arg_count ] -do - case "$1" in - -g | --debug) - script_args="$script_args -g" - debugging=1 - shift - ;; - -d | --debugger) - if [ $# -gt 1 ]; then - script_args="$script_args -d $2" - shift 2 - else - shift - fi - ;; - *) - # Move the unrecognized argument to the end of the list. - arg="$1" - shift - set -- "$@" "$arg" - pass_arg_count=`expr $pass_arg_count + 1` - ;; - esac -done - -# Don't throw "old profile" dialog box. -export MOZ_ALLOW_DOWNGRADE=1 - exec $MOZ_PROGRAM "$@" diff --git a/thunderbird.spec b/thunderbird.spec index dc1b54f..bc242ff 100644 --- a/thunderbird.spec +++ b/thunderbird.spec @@ -1,74 +1,132 @@ -%if 0%{?fedora} > 35 || 0%{?rhel} > 9 +# Set for local builds only +%global disable_toolsets 0 + +# Produce debug (non-optimized) package build. Suitable for debugging only +# as the build is *very* slow. +%global debug_build 0 + +%if 0%{?rhel} > 9 %global dictionarydir hunspell %else %global dictionarydir myspell %endif -# Disabled arm due to rhbz#1658940 -ExcludeArch: armv7hl +%{lua: +function dist_to_rhel_minor(str, start) + match = string.match(str, ".module%+el8.%d+") + if match then + return string.sub(match, 13) + end + match = string.match(str, ".el8_%d+") + if match then + return string.sub(match, 6) + end + match = string.match(str, ".el8") + if match then + return 10 + end + match = string.match(str, ".module%+el9.%d+") + if match then + return string.sub(match, 13) + end + match = string.match(str, ".el9_%d+") + if match then + return string.sub(match, 6) + end + match = string.match(str, ".el9") + if match then + return 5 + end + return -1 +end} -# Use system nspr/nss? -%define system_nss 1 +%global rhel_minor_version %{lua:print(dist_to_rhel_minor(rpm.expand("%dist")))} -# Build as a debug package? -%define debug_build 0 +# System libraries options +%global system_nss 1 +%global bundle_nss 0 -# Hardened build? -%define hardened_build 1 - -%define system_ffi 1 - -%define build_langpacks 1 -%bcond_with toolchain_clang -%global use_bundled_cbindgen 1 - -%global disable_elfhack 1 - -%if %{?system_nss} -%global nspr_version 4.26.0 -%global nspr_build_version %(pkg-config --silence-errors --modversion nspr 2>/dev/null || echo 65536) -%global nss_version 3.55.0 -%global nss_build_version %(pkg-config --silence-errors --modversion nss 2>/dev/null || echo 65536) +%if 0%{?rhel} == 8 + %if %{rhel_minor_version} <= 6 + %global bundle_nss 1 + %global system_nss 1 + %global _build_id_links none + %endif +%endif +%if 0%{?rhel} == 9 + %if %{rhel_minor_version} <= 0 + %global bundle_nss 1 + %global system_nss 1 + %global _build_id_links none + %endif %endif -%define freetype_version 2.1.9 +%global dts_version 10 +%global llvm_version 7.0 +%global nspr_version 4.35 +%global nspr_version_max 4.36 +%global nss_version 3.90 +%global nss_version_max 3.91 +%global rust_version 1.66 +%global system_libvpx 0 -%define libnotify_version 0.4 -%define _default_patch_fuzz 2 +# Toolsets setup +%global use_dts 0 +%global use_gcc_ts 0 +%global use_llvm_ts 0 +%global use_nodejs_scl 0 +%global use_rust_ts 1 +%global use_python3_scl 0 -# There are still build problems on s390x, see -# https://koji.fedoraproject.org/koji/taskinfo?taskID=55048351 -# https://bugzilla.redhat.com/show_bug.cgi?id=1897522 -ExcludeArch: s390x +%global nodejs_build_req nodejs -# libvpx is too new for Firefox 65 -%define system_jpeg 1 - -# Big endian platforms -%ifarch ppc64 s390x -# Javascript Intl API is not supported on big endian platforms right now: -# https://bugzilla.mozilla.org/show_bug.cgi?id=1322212 -%define big_endian 1 +%if 0%{?rhel} >= 8 + %global use_rust_ts 0 %endif +%if 0%{?rhel} == 8 && %{rhel_minor_version} < 6 + %ifarch aarch64 +%global use_gcc_ts 1 + %endif +%endif + +%if 0%{?rhel} == 7 + %global use_dts 1 + %global use_llvm_ts 1 + %global use_nodejs_scl 1 + %global nodejs_build_req rh-nodejs10-nodejs + %global llvm_version 11.0 + %global use_python3_scl 1 +%endif + +%if 0%{?disable_toolsets} +%global use_dts 0 +%global use_llvm_ts 0 +%global use_nodejs_scl 0 +%global use_rust_ts 0 +%global use_python3_scl 0 +%endif + +# librnp with openssl support, not available in RHEL7 because it requires openssl >= 1.1.1e, +# nor in rhel-8.1.0 or rhel-8.2.0 +%global use_openssl_for_librnp 1 +%if 0%{?rhel} == 7 || (0%{?rhel} == 8 && %{rhel_minor_version} < 4) + %global use_openssl_for_librnp 0 +%endif + + %define thunderbird_app_id \{3550f703-e582-4d05-9a08-453d09bdfdc6\} -%global langpackdir %{mozappdir}/extensions - -# The tarball is pretty inconsistent with directory structure. -# Sometimes there is a top level directory. That goes here. -# -# IMPORTANT: If there is no top level directory, this should be -# set to the cwd, ie: '.' -%define objdir objdir %define mozappdir %{_libdir}/thunderbird +%global langpackdir %{mozappdir}/extensions +%define bundled_install_path %{mozappdir}/bundled +##global pre_version b2 +# Workaround the dreaded "upstream source file changed content" rpminspect failure. +# If set to .b2 or .b3 ... the processed source file needs to be renamed before upload, e.g. +# thunderbird-102.8.0.b2.processed-source.tar.xz +# When unset use processed source file name as is. +##global buildnum .b2 -%define official_branding 1 - -%define enable_mozilla_crashreporter 0 - -%if %{with toolchain_clang} -%global toolchain clang -%endif +%bcond_without langpacks # Exclude private libraries from autogenerated provides and requires %global __provides_exclude_from ^%{mozappdir} @@ -76,235 +134,835 @@ ExcludeArch: s390x Summary: Mozilla Thunderbird mail/newsgroup client Name: thunderbird -Version: 115.6.1 +Version: 115.12.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}-20240110.tar.xz -%endif -Source3: get-calendar-langpacks.sh -Source4: cbindgen-vendor.tar.xz +License: MPLv1.1 or GPLv2+ or LGPLv2+ +%if 0%{?rhel} == 9 +ExcludeArch: %{ix86} +%endif +%if 0%{?rhel} == 8 + # Started to ship on aarch64 in RHEL 8.2, on s390x in RHEL 8.3 + %if %{rhel_minor_version} == 1 +ExcludeArch: %{ix86} s390x aarch64 + %else + %if %{rhel_minor_version} == 2 +ExcludeArch: %{ix86} s390x + %else +ExcludeArch: %{ix86} + %endif + %endif +%endif +%if 0%{?rhel} == 7 +ExcludeArch: aarch64 s390 ppc ppc64 +%endif + +# We can't use the official tarball as it contains some test files that use +# licenses that are rejected by Red Hat Legal. +# The official tarball has to be always processed by the process-official-tarball +# script +#Source0: https://archive.mozilla.org/pub/thunderbird/releases/%%{version}%%{?pre_version}/source/thunderbird-%%{version}%%{?pre_version}.processed-source.tar.xz +Source0: thunderbird-%{version}%{?pre_version}%{?buildnum}.processed-source.tar.xz +%if %{with langpacks} +Source1: thunderbird-langpacks-%{version}-20240618.tar.xz +%endif +Source2: cbindgen-vendor.tar.xz +Source3: process-official-tarball Source10: thunderbird-mozconfig -Source11: thunderbird-mozconfig-branded Source12: thunderbird-redhat-default-prefs.js Source20: thunderbird.desktop Source21: thunderbird.sh.in +Source24: mozilla-api-key Source25: thunderbird-symbolic.svg -Source28: thunderbird-wayland.sh.in -Source29: thunderbird-wayland.desktop +Source27: google-api-key Source32: node-stdout-nonblocking-wrapper +Source35: google-loc-api-key +Source401: nss-setup-flags-env.inc +Source402: nspr-4.35.0-1.el8_1.src.rpm +Source403: nss-3.90.0-2.el8_1.src.rpm +Source404: nss-3.90.0-3.el9_0.src.rpm -# Build patches -Patch9: mozilla-build-arm.patch -#Patch226: rhbz-1354671.patch -Patch415: Bug-1238661---fix-mozillaSignalTrampoline-to-work-.patch -#Patch416: firefox-SIOCGSTAMP.patch -Patch418: mozilla-1512162.patch -#Patch419: bindgen-d0dfc52706f23db9dc9d74642eeebd89d73cb8d0.patch -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 +# ---- RHEL specific patches --- +# -- Downstream only -- +Patch01: build-disable-elfhack.patch +Patch02: firefox-gcc-build.patch +Patch03: build-big-endian-errors.patch +Patch05: build-rhel7-lower-node-min-version.patch +Patch06: build-ppc64-abiv2.patch +Patch07: build-rhel7-nasm-dwarf.patch +Patch08: build-tb-rnp-openssl.patch +Patch09: disable-openpgp-in-thunderbird.patch -# PPC fix -Patch304: mozilla-1245783.patch +# -- Upstreamed patches -- +Patch51: mozilla-bmo1170092.patch -# Fedora specific patches +# -- Submitted upstream, not merged -- +Patch101: mozilla-bmo1670333.patch +# Big endian fix +Patch102: mozilla-bmo1504834-part1.patch +Patch103: mozilla-bmo1504834-part3.patch +# Big endian fix +Patch104: mozilla-bmo849632.patch +# Big endian fix +Patch105: mozilla-bmo998749.patch +# Big endian fix +Patch106: mozilla-bmo1716707-swizzle.patch +Patch107: mozilla-bmo1716707-svg.patch +Patch108: mozilla-bmo1789216-disable-av1.patch -# Upstream patches -Patch402: mozilla-526293.patch -Patch406: mozilla-1170092.patch +# ---- Fedora specific patches ---- +Patch151: firefox-enable-addons.patch +Patch152: rhbz-1173156.patch +Patch154: firefox-nss-addon-hack.patch +# ARM run-time patch +Patch155: rhbz-1354671.patch -# Bundled expat backported patches -Patch501: expat-CVE-2022-25235.patch -Patch502: expat-CVE-2022-25236.patch -Patch503: expat-CVE-2022-25315.patch +# ---- Security patches ---- +Patch301: CVE-2023-44488-libvpx.patch -# Tentative patch for RUSTFLAGS parsing issue, -# borrowed from firefox commit 24c9accce19c5cae9394430b24eaf938a9c17882: -# https://bugzilla.redhat.com/show_bug.cgi?id=2184743 -# https://bugzilla.mozilla.org/show_bug.cgi?id=1474486 -Patch1200: rustflags-commasplit.patch - -%if %{official_branding} -# Required by Mozilla Corporation - -%else -# Not yet approved by Mozillla Corporation - -%endif - -BuildRequires: make -BuildRequires: gcc-c++ -%if %{?system_nss} +# BUILD REQURES/REQUIRES +%if %{?system_nss} && !0%{?bundle_nss} +BuildRequires: pkgconfig(nspr) >= %{nspr_version} +BuildRequires: pkgconfig(nspr) < %{nspr_version_max} +BuildRequires: pkgconfig(nss) >= %{nss_version} +BuildRequires: pkgconfig(nss) < %{nss_version_max} BuildRequires: nss-static >= %{nss_version} -BuildRequires: nspr-devel >= %{nspr_version} -BuildRequires: nss-devel >= %{nss_version} -Requires: nspr >= %{nspr_build_version} -Requires: nss >= %{nss_build_version} +BuildRequires: nss-static < %{nss_version_max} %endif -BuildRequires: libnotify-devel >= %{libnotify_version} -BuildRequires: libpng-devel -BuildRequires: libjpeg-devel -BuildRequires: zip + +%if %{?system_libvpx} +BuildRequires: libvpx-devel >= 1.8.2 +%endif + BuildRequires: bzip2-devel -BuildRequires: zlib-devel -#BuildRequires: libIDL-devel -BuildRequires: pkgconfig(gtk+-3.0) -BuildRequires: krb5-devel -BuildRequires: pango-devel -BuildRequires: freetype-devel >= %{freetype_version} -BuildRequires: libXt-devel -BuildRequires: libXrender-devel -BuildRequires: hunspell-devel -BuildRequires: llvm -BuildRequires: llvm-devel -BuildRequires: clang -BuildRequires: clang-libs -%if "%toolchain" == "clang" -BuildRequires: lld -%endif -%if %{?system_ffi} -BuildRequires: libffi-devel -%endif -BuildRequires: startup-notification-devel -BuildRequires: alsa-lib-devel -BuildRequires: m4 -BuildRequires: desktop-file-utils -BuildRequires: libcurl-devel -BuildRequires: mesa-libGL-devel -BuildRequires: pulseaudio-libs-devel -BuildRequires: libicu-devel -BuildRequires: perl-interpreter -Requires: mozilla-filesystem -BuildRequires: yasm BuildRequires: dbus-glib-devel -Obsoletes: thunderbird-lightning -Provides: thunderbird-lightning -Obsoletes: thunderbird-lightning-gdata <= 1:3.3.0.14 -BuildRequires: rust -BuildRequires: cargo -BuildRequires: clang-devel -BuildRequires: python3.11-devel -%if !0%{?use_bundled_cbindgen} -BuildRequires: cbindgen -%endif -BuildRequires: nodejs +BuildRequires: desktop-file-utils +BuildRequires: libappstream-glib +BuildRequires: libjpeg-devel +BuildRequires: libstdc++-devel +BuildRequires: libstdc++-static +BuildRequires: m4 +BuildRequires: make BuildRequires: nasm >= 1.13 +BuildRequires: %{nodejs_build_req} >= 10.21 +BuildRequires: pciutils-libs +BuildRequires: perl-interpreter +BuildRequires: pkgconfig(alsa) +BuildRequires: pkgconfig(dri) +BuildRequires: pkgconfig(freetype2) +BuildRequires: pkgconfig(gtk+-3.0) +BuildRequires: pkgconfig(krb5) +BuildRequires: pkgconfig(libcurl) +BuildRequires: pkgconfig(libffi) +BuildRequires: pkgconfig(libnotify) +BuildRequires: pkgconfig(libpng) +BuildRequires: pkgconfig(libpulse) +BuildRequires: pkgconfig(libstartup-notification-1.0) +BuildRequires: pkgconfig(pango) +BuildRequires: pkgconfig(xrender) +BuildRequires: pkgconfig(xt) +BuildRequires: pkgconfig(xtst) +BuildRequires: pkgconfig(zlib) +BuildRequires: zip -%if 0%{?big_endian} -BuildRequires: icu +%if 0%{?rhel} == 7 +%if 0%{?use_python3_scl} +BuildRequires: rh-python38-python-devel +BuildRequires: rh-python38-python-setuptools +BuildRequires: scl-utils +%endif +BuildRequires: findutils +%else +BuildRequires: pipewire-devel %endif -# require any OpenPGP backend with the librnp interface -# see comm/mail/extensions/openpgp/content/modules/RNPLib.jsm -# %%{mozappdir}/librnp.so or %%{_libdir}/librnp.so.0 -Requires: (thunderbird-librnp%{?_isa} or librnp%{?_isa}) -# prefer the librnp implementation bundled with thunderbird -Suggests: thunderbird-librnp-rnp%{?_isa} +%if 0%{?rhel} == 8 +BuildRequires: cargo +BuildRequires: clang-devel >= %{llvm_version} +BuildRequires: clang >= %{llvm_version} +BuildRequires: llvm-devel >= %{llvm_version} +BuildRequires: llvm >= %{llvm_version} + %if 0%{?disable_toolsets} == 0 +BuildRequires: python38-devel +BuildRequires: python38-setuptools + %endif +BuildRequires: rustfmt >= %{rust_version} +BuildRequires: rust >= %{rust_version} +%endif + +%if 0%{?rhel} == 9 +BuildRequires: cargo +BuildRequires: clang clang-libs llvm llvm-devel +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: rust +%endif + +%if 0%{?use_dts} +BuildRequires: devtoolset-%{dts_version}-gcc +BuildRequires: devtoolset-%{dts_version}-gcc-c++ +BuildRequires: devtoolset-%{dts_version}-libatomic-devel +%endif + +%if 0%{?use_llvm_ts} +BuildRequires: llvm-toolset-%{llvm_version} +BuildRequires: llvm-toolset-%{llvm_version}-clang +BuildRequires: llvm-toolset-%{llvm_version}-clang-devel +BuildRequires: llvm-toolset-%{llvm_version}-llvm-devel +%endif + +%if 0%{?use_rust_ts} +BuildRequires: rust-toolset-%{rust_version} +%endif + +# Bundled nss/nspr requirement +%if 0%{?bundle_nss} +BuildRequires: gawk +BuildRequires: gcc-c++ +BuildRequires: nss-softokn +BuildRequires: perl-interpreter +BuildRequires: pkgconfig +BuildRequires: psmisc +BuildRequires: sqlite-devel +BuildRequires: xmlto +BuildRequires: zlib-devel +%endif + +%if 0%{?rhel} == 8 && %{rhel_minor_version} < 6 + %ifarch aarch64 +BuildRequires: gcc-toolset-12-gcc-plugin-annobin + %endif +%endif + +%if %{?use_openssl_for_librnp} +BuildRequires: pkgconfig(openssl) +%endif + +Requires: p11-kit-trust +Requires: pciutils-libs + +%if %{?system_nss} && !0%{?bundle_nss} +Requires: nspr >= %{nspr_version} +Requires: nss >= %{nss_version} +%endif + +Obsoletes: mozilla <= 37:1.7.13 +Provides: webclient + +# Bundled libraries +#Provides: bundled(libjxl) it's used only on nightly builds +Provides: bundled(angle) +Provides: bundled(aom) +Provides: bundled(audioipc-2) +Provides: bundled(bergamot-translator) +Provides: bundled(brotli) +Provides: bundled(bzip2) +Provides: bundled(cairo) +Provides: bundled(cfworker) +Provides: bundled(cld2) +Provides: bundled(cubeb) +Provides: bundled(d3.js) +Provides: bundled(double-conversion) +Provides: bundled(expat) +Provides: bundled(fastText) +Provides: bundled(fathom) +Provides: bundled(fdlibm) +Provides: bundled(ffvpx) +Provides: bundled(freetype2) +Provides: bundled(function2) +Provides: bundled(gemmology) +Provides: bundled(graphite2) +Provides: bundled(harfbuzz) +Provides: bundled(highway) +Provides: bundled(hunspell) +Provides: bundled(intgemm) +Provides: bundled(irregexp) +Provides: bundled(jpeg-xl) +Provides: bundled(kissfft) +Provides: bundled(libaom) +Provides: bundled(libcubeb) +Provides: bundled(libdav1d) +Provides: bundled(libdrm) +Provides: bundled(libepoxy) +Provides: bundled(libgbm) +Provides: bundled(libjpeg) +Provides: bundled(libmar) +Provides: bundled(libmkv) +Provides: bundled(libnestegg) +Provides: bundled(libogg) +Provides: bundled(libopus) +Provides: bundled(libpng) +Provides: bundled(libprio) +Provides: bundled(libsoundtouch) +Provides: bundled(libspeex_resampler) +Provides: bundled(libsrtp) +Provides: bundled(libtheora) +Provides: bundled(libtremor) +Provides: bundled(libvorbis) +Provides: bundled(libvpx) +Provides: bundled(libwebp) +Provides: bundled(libwebrtc) +Provides: bundled(libyuv) +Provides: bundled(lit) +Provides: bundled(mp4parse-rust) +Provides: bundled(msgpack-c) +Provides: bundled(mtransport) +Provides: bundled(nestegg) +Provides: bundled(nICEr) +Provides: bundled(nimbus) +Provides: bundled(openmax_dl) +Provides: bundled(openmax_il) +Provides: bundled(ots) +Provides: bundled(pdf.js) +Provides: bundled(picosha2) +Provides: bundled(PKI) +Provides: bundled(qcms) +Provides: bundled(rlbox) +Provides: bundled(rlbox_sandboxing_api) +Provides: bundled(rnp) +Provides: bundled(sfntly) +Provides: bundled(sipcc) +Provides: bundled(skia) +Provides: bundled(soundtouch) +Provides: bundled(sqlite3) +Provides: bundled(thebes) +Provides: bundled(theora) +Provides: bundled(usrsctp) +Provides: bundled(wabt) +Provides: bundled(wasm2c) +Provides: bundled(WebRender) +Provides: bundled(wgpu) +Provides: bundled(woff2) +Provides: bundled(xsimd) +Provides: bundled(xz-embedded) +Provides: bundled(ycbcr) +Provides: bundled(zlib) + +# Thunderbird third party libraries +Provides: bundled(ANS1.js) +Provides: bundled(bzip2) +Provides: bundled(json-c) +Provides: bundled(libgcrypt) +Provides: bundled(libgpg-error) +Provides: bundled(libotr) + +%if 0%{?bundle_nss} +Provides: bundled(nss) = %{nss_version} +Provides: bundled(nspr) = %{nspr_version} +%endif + +# Rust third parties: +# List obtained by `get_rust_bundled_provides.sh build.log` script:: +Provides: bundled(crate(aa-stroke)) = 0.1.0 +Provides: bundled(crate(adler)) = 1.0.2 +Provides: bundled(crate(ahash)) = 0.7.6 +Provides: bundled(crate(aho-corasick)) = 0.7.20 +Provides: bundled(crate(alsa)) = 0.7.0 +Provides: bundled(crate(alsa-sys)) = 0.3.1 +Provides: bundled(crate(anyhow)) = 1.0.69 +Provides: bundled(crate(app_services_logger)) = 0.1.0 +Provides: bundled(crate(app_units)) = 0.7.2 +Provides: bundled(crate(arrayref)) = 0.3.6 +Provides: bundled(crate(arrayvec)) = 0.7.2 +Provides: bundled(crate(ash)) = 0.37.2+1.3.238 +Provides: bundled(crate(askama)) = 0.11.1 +Provides: bundled(crate(askama_derive)) = 0.11.2 +Provides: bundled(crate(askama_escape)) = 0.10.3 +Provides: bundled(crate(askama_shared)) = 0.12.2 +Provides: bundled(crate(async-task)) = 4.3.0 +Provides: bundled(crate(async-trait)) = 0.1.64 +Provides: bundled(crate(atomic_refcell)) = 0.1.9 +Provides: bundled(crate(audioipc2)) = 0.5.0 +Provides: bundled(crate(audioipc2-client)) = 0.5.0 +Provides: bundled(crate(audioipc2-server)) = 0.5.0 +Provides: bundled(crate(audio_thread_priority)) = 0.26.1 +Provides: bundled(crate(authenticator)) = 0.4.0-alpha.15 +Provides: bundled(crate(authrs_bridge)) = 0.1.0 +Provides: bundled(crate(autocfg)) = 1.1.0 +Provides: bundled(crate(base64)) = 0.13.999 +Provides: bundled(crate(base64)) = 0.21.0 +Provides: bundled(crate(bhttp)) = 0.3.1 +Provides: bundled(crate(binary_http)) = 0.1.0 +Provides: bundled(crate(bincode)) = 1.3.3 +Provides: bundled(crate(bindgen)) = 0.63.999 +Provides: bundled(crate(bindgen)) = 0.64.0 +Provides: bundled(crate(bitflags)) = 1.3.2 +Provides: bundled(crate(bitflags)) = 2.999.999 +Provides: bundled(crate(bitreader)) = 0.3.6 +Provides: bundled(crate(bit-set)) = 0.5.3 +Provides: bundled(crate(bit-vec)) = 0.6.3 +Provides: bundled(crate(block-buffer)) = 0.10.3 +Provides: bundled(crate(bookmark_sync)) = 0.1.0 +Provides: bundled(crate(build-parallel)) = 0.1.2 +Provides: bundled(crate(builtins-static)) = 0.1.0 +Provides: bundled(crate(byteorder)) = 1.4.3 +Provides: bundled(crate(bytes)) = 1.4.0 +Provides: bundled(crate(cache-padded)) = 1.2.0 +Provides: bundled(crate(camino)) = 1.1.2 +Provides: bundled(crate(cargo_metadata)) = 0.15.3 +Provides: bundled(crate(cargo-platform)) = 0.1.2 +Provides: bundled(crate(cascade_bloom_filter)) = 0.1.0 +Provides: bundled(crate(cc)) = 1.0.73 +Provides: bundled(crate(cert_storage)) = 0.0.1 +Provides: bundled(crate(cexpr)) = 0.6.0 +Provides: bundled(crate(cfg-if)) = 0.1.999 +Provides: bundled(crate(cfg-if)) = 1.0.0 +Provides: bundled(crate(chardetng)) = 0.1.9 +Provides: bundled(crate(chardetng_c)) = 0.1.2 +Provides: bundled(crate(chrono)) = 0.4.19 +Provides: bundled(crate(chunky-vec)) = 0.1.0 +Provides: bundled(crate(clang-sys)) = 1.6.0 +Provides: bundled(crate(cmake)) = 0.1.999 +Provides: bundled(crate(codespan-reporting)) = 0.11.1 +Provides: bundled(crate(cose)) = 0.1.4 +Provides: bundled(crate(cose-c)) = 0.1.5 +Provides: bundled(crate(cpufeatures)) = 0.2.5 +Provides: bundled(crate(crc32fast)) = 1.3.2 +Provides: bundled(crate(crossbeam-channel)) = 0.5.6 +Provides: bundled(crate(crossbeam-deque)) = 0.8.2 +Provides: bundled(crate(crossbeam-epoch)) = 0.9.14 +Provides: bundled(crate(crossbeam-queue)) = 0.3.8 +Provides: bundled(crate(crossbeam-utils)) = 0.8.14 +Provides: bundled(crate(crypto-common)) = 0.1.6 +Provides: bundled(crate(crypto_hash)) = 0.1.0 +Provides: bundled(crate(cssparser)) = 0.31.0 +Provides: bundled(crate(cssparser-macros)) = 0.6.0 +Provides: bundled(crate(cstr)) = 0.2.11 +Provides: bundled(crate(cty)) = 0.2.2 +Provides: bundled(crate(cubeb)) = 0.10.3 +Provides: bundled(crate(cubeb-backend)) = 0.10.3 +Provides: bundled(crate(cubeb-core)) = 0.10.3 +Provides: bundled(crate(cubeb-pulse)) = 0.4.1 +Provides: bundled(crate(cubeb-sys)) = 0.10.3 +Provides: bundled(crate(dap_ffi)) = 0.1.0 +Provides: bundled(crate(darling)) = 0.13.99 +Provides: bundled(crate(darling)) = 0.14.3 +Provides: bundled(crate(darling_core)) = 0.14.3 +Provides: bundled(crate(darling_macro)) = 0.14.3 +Provides: bundled(crate(data-encoding)) = 2.3.3 +Provides: bundled(crate(data-encoding-ffi)) = 0.1.0 +Provides: bundled(crate(dbus)) = 0.6.5 +Provides: bundled(crate(derive_common)) = 0.0.1 +Provides: bundled(crate(derive_more)) = 0.99.17 +Provides: bundled(crate(digest)) = 0.10.6 +Provides: bundled(crate(dirs)) = 4.0.0 +Provides: bundled(crate(dirs-sys)) = 0.3.7 +Provides: bundled(crate(displaydoc)) = 0.2.3 +Provides: bundled(crate(dns-parser)) = 0.8.0 +Provides: bundled(crate(dogear)) = 0.5.0 +Provides: bundled(crate(dom)) = 0.1.0 +Provides: bundled(crate(dtoa)) = 0.4.8 +Provides: bundled(crate(dtoa-short)) = 0.3.3 +Provides: bundled(crate(either)) = 1.8.1 +Provides: bundled(crate(encoding_c)) = 0.9.8 +Provides: bundled(crate(encoding_c_mem)) = 0.2.6 +Provides: bundled(crate(encoding_glue)) = 0.1.0 +Provides: bundled(crate(encoding_rs)) = 0.8.32 +Provides: bundled(crate(enumset)) = 1.0.12 +Provides: bundled(crate(enumset_derive)) = 0.6.1 +Provides: bundled(crate(env_logger)) = 0.10.0 +Provides: bundled(crate(env_logger)) = 0.9.999 +Provides: bundled(crate(error-chain)) = 0.12.4 +Provides: bundled(crate(error-support)) = 0.1.0 +Provides: bundled(crate(error-support-macros)) = 0.1.0 +Provides: bundled(crate(etagere)) = 0.2.7 +Provides: bundled(crate(euclid)) = 0.22.7 +Provides: bundled(crate(fallible_collections)) = 0.4.6 +Provides: bundled(crate(fallible-iterator)) = 0.2.0 +Provides: bundled(crate(fallible-streaming-iterator)) = 0.1.9 +Provides: bundled(crate(fastrand)) = 1.9.0 +Provides: bundled(crate(ffi-support)) = 0.4.4 +Provides: bundled(crate(firefox-on-glean)) = 0.1.0 +Provides: bundled(crate(flate2)) = 1.0.25 +Provides: bundled(crate(fluent)) = 0.16.0 +Provides: bundled(crate(fluent-bundle)) = 0.15.2 +Provides: bundled(crate(fluent-fallback)) = 0.7.0 +Provides: bundled(crate(fluent-ffi)) = 0.1.0 +Provides: bundled(crate(fluent-langneg)) = 0.13.0 +Provides: bundled(crate(fluent-langneg-ffi)) = 0.1.0 +Provides: bundled(crate(fluent-pseudo)) = 0.3.1 +Provides: bundled(crate(fluent-syntax)) = 0.11.0 +Provides: bundled(crate(fnv)) = 1.0.7 +Provides: bundled(crate(fog_control)) = 0.1.0 +Provides: bundled(crate(freetype)) = 0.7.0 +Provides: bundled(crate(fs-err)) = 2.9.0 +Provides: bundled(crate(futures)) = 0.3.26 +Provides: bundled(crate(futures-channel)) = 0.3.26 +Provides: bundled(crate(futures-core)) = 0.3.26 +Provides: bundled(crate(futures-executor)) = 0.3.26 +Provides: bundled(crate(futures-io)) = 0.3.26 +Provides: bundled(crate(futures-macro)) = 0.3.26 +Provides: bundled(crate(futures-sink)) = 0.3.26 +Provides: bundled(crate(futures-task)) = 0.3.26 +Provides: bundled(crate(futures-util)) = 0.3.26 +Provides: bundled(crate(fxhash)) = 0.2.1 +Provides: bundled(crate(gecko_logger)) = 0.1.0 +Provides: bundled(crate(gecko-profiler)) = 0.1.0 +Provides: bundled(crate(geckoservo)) = 0.0.1 +Provides: bundled(crate(generic-array)) = 0.14.6 +Provides: bundled(crate(getrandom)) = 0.2.9 +Provides: bundled(crate(gkrust)) = 0.1.0 +Provides: bundled(crate(gkrust-shared)) = 0.1.0 +Provides: bundled(crate(gkrust_utils)) = 0.1.0 +Provides: bundled(crate(gleam)) = 0.15.0 +Provides: bundled(crate(glean)) = 52.7.0 +Provides: bundled(crate(glean-core)) = 52.7.0 +Provides: bundled(crate(gl_generator)) = 0.14.0 +Provides: bundled(crate(glob)) = 0.3.1 +Provides: bundled(crate(glsl)) = 6.0.2 +Provides: bundled(crate(glslopt)) = 0.1.9 +Provides: bundled(crate(glsl-to-cxx)) = 0.1.0 +Provides: bundled(crate(goblin)) = 0.6.0 +Provides: bundled(crate(golden_gate)) = 0.1.0 +Provides: bundled(crate(gpu-alloc)) = 0.5.3 +Provides: bundled(crate(gpu-alloc-types)) = 0.2.0 +Provides: bundled(crate(gpu-descriptor)) = 0.2.3 +Provides: bundled(crate(gpu-descriptor-types)) = 0.1.1 +Provides: bundled(crate(half)) = 1.8.2 +Provides: bundled(crate(hashbrown)) = 0.12.3 +Provides: bundled(crate(hashlink)) = 0.8.1 +Provides: bundled(crate(heck)) = 0.4.1 +Provides: bundled(crate(hex)) = 0.4.3 +Provides: bundled(crate(hexf-parse)) = 0.2.1 +Provides: bundled(crate(http_sfv)) = 0.1.0 +Provides: bundled(crate(id-arena)) = 2.2.1 +Provides: bundled(crate(ident_case)) = 1.0.1 +Provides: bundled(crate(idna)) = 0.2.3 +Provides: bundled(crate(indexmap)) = 1.9.2 +Provides: bundled(crate(inherent)) = 1.0.4 +Provides: bundled(crate(instant)) = 0.1.12 +Provides: bundled(crate(interrupt-support)) = 0.1.0 +Provides: bundled(crate(intl-memoizer)) = 0.5.1 +Provides: bundled(crate(intl_pluralrules)) = 7.0.2 +Provides: bundled(crate(iovec)) = 0.1.4 +Provides: bundled(crate(ipcclientcerts-static)) = 0.1.0 +Provides: bundled(crate(itertools)) = 0.10.5 +Provides: bundled(crate(itoa)) = 1.0.5 +Provides: bundled(crate(jobserver)) = 0.1.25 +Provides: bundled(crate(jog)) = 0.1.0 +Provides: bundled(crate(jsrust)) = 0.1.0 +Provides: bundled(crate(jsrust_shared)) = 0.1.0 +Provides: bundled(crate(khronos_api)) = 3.1.0 +Provides: bundled(crate(kvstore)) = 0.1.0 +Provides: bundled(crate(l10nregistry)) = 0.3.0 +Provides: bundled(crate(l10nregistry-ffi)) = 0.1.0 +Provides: bundled(crate(lazycell)) = 1.3.0 +Provides: bundled(crate(lazy_static)) = 1.4.0 +Provides: bundled(crate(leb128)) = 0.2.5 +Provides: bundled(crate(libc)) = 0.2.139 +Provides: bundled(crate(libdbus-sys)) = 0.2.2 +Provides: bundled(crate(libloading)) = 0.7.4 +Provides: bundled(crate(libsqlite3-sys)) = 0.25.2 +Provides: bundled(crate(libudev)) = 0.2.0 +Provides: bundled(crate(libudev-sys)) = 0.1.3 +Provides: bundled(crate(lmdb-rkv)) = 0.14.0 +Provides: bundled(crate(lmdb-rkv-sys)) = 0.11.2 +Provides: bundled(crate(localization-ffi)) = 0.1.0 +Provides: bundled(crate(lock_api)) = 0.4.9 +Provides: bundled(crate(log)) = 0.4.17 +Provides: bundled(crate(malloc_size_of)) = 0.0.1 +Provides: bundled(crate(malloc_size_of_derive)) = 0.1.2 +Provides: bundled(crate(mapped_hyph)) = 0.4.3 +Provides: bundled(crate(matches)) = 0.1.10 +Provides: bundled(crate(md-5)) = 0.10.5 +Provides: bundled(crate(mdns_service)) = 0.1.1 +Provides: bundled(crate(memalloc)) = 0.1.0 +Provides: bundled(crate(memchr)) = 2.5.0 +Provides: bundled(crate(memmap2)) = 0.5.9 +Provides: bundled(crate(memoffset)) = 0.8.0 +Provides: bundled(crate(midir)) = 0.7.0 +Provides: bundled(crate(midir_impl)) = 0.1.0 +Provides: bundled(crate(mime)) = 0.3.16 +Provides: bundled(crate(mime_guess)) = 2.0.4 +Provides: bundled(crate(mime-guess-ffi)) = 0.1.0 +Provides: bundled(crate(minimal-lexical)) = 0.2.1 +Provides: bundled(crate(miniz_oxide)) = 0.6.2 +Provides: bundled(crate(mio)) = 0.8.0 +Provides: bundled(crate(moz_asserts)) = 0.1.0 +Provides: bundled(crate(mozbuild)) = 0.1.0 +Provides: bundled(crate(moz_cbor)) = 0.1.2 +Provides: bundled(crate(mozglue-static)) = 0.1.0 +Provides: bundled(crate(mozilla-central-workspace-hack)) = 0.1.0 +Provides: bundled(crate(moz_task)) = 0.1.0 +Provides: bundled(crate(mozurl)) = 0.0.1 +Provides: bundled(crate(mp4parse)) = 0.17.0 +Provides: bundled(crate(mp4parse_capi)) = 0.17.0 +Provides: bundled(crate(murmurhash3)) = 0.0.5 +Provides: bundled(crate(naga)) = 0.12.0 +Provides: bundled(crate(neqo-common)) = 0.6.4 +Provides: bundled(crate(neqo-crypto)) = 0.6.4 +Provides: bundled(crate(neqo_glue)) = 0.1.0 +Provides: bundled(crate(neqo-http3)) = 0.6.4 +Provides: bundled(crate(neqo-qpack)) = 0.6.4 +Provides: bundled(crate(neqo-transport)) = 0.6.4 +Provides: bundled(crate(netwerk_helper)) = 0.0.1 +Provides: bundled(crate(new_debug_unreachable)) = 1.0.4 +Provides: bundled(crate(nix)) = 0.24.99 +Provides: bundled(crate(nix)) = 0.26.2 +Provides: bundled(crate(nom)) = 7.1.3 +Provides: bundled(crate(nserror)) = 0.1.0 +Provides: bundled(crate(nss_build_common)) = 0.1.0 +Provides: bundled(crate(nss-gk-api)) = 0.2.1 +Provides: bundled(crate(nsstring)) = 0.1.0 +Provides: bundled(crate(num_cpus)) = 1.15.0 +Provides: bundled(crate(num-derive)) = 0.3.3 +Provides: bundled(crate(num-integer)) = 0.1.45 +Provides: bundled(crate(num-traits)) = 0.2.15 +Provides: bundled(crate(object)) = 0.30.3 +Provides: bundled(crate(oblivious_http)) = 0.1.0 +Provides: bundled(crate(ohttp)) = 0.3.1 +Provides: bundled(crate(once_cell)) = 1.17.1 +Provides: bundled(crate(ordered-float)) = 3.4.0 +Provides: bundled(crate(origin-trials-ffi)) = 0.1.0 +Provides: bundled(crate(origin-trial-token)) = 0.1.1 +Provides: bundled(crate(owning_ref)) = 0.4.1 +Provides: bundled(crate(parking_lot)) = 0.11.2 +Provides: bundled(crate(parking_lot)) = 0.12.999 +Provides: bundled(crate(parking_lot_core)) = 0.8.6 +Provides: bundled(crate(paste)) = 1.0.11 +Provides: bundled(crate(peeking_take_while)) = 0.1.2 +Provides: bundled(crate(peek-poke)) = 0.3.0 +Provides: bundled(crate(peek-poke-derive)) = 0.3.0 +Provides: bundled(crate(percent-encoding)) = 2.2.0 +Provides: bundled(crate(phf)) = 0.10.1 +Provides: bundled(crate(phf_codegen)) = 0.10.0 +Provides: bundled(crate(phf_generator)) = 0.10.0 +Provides: bundled(crate(phf_macros)) = 0.10.0 +Provides: bundled(crate(phf_shared)) = 0.10.0 +Provides: bundled(crate(pin-project-lite)) = 0.2.9 +Provides: bundled(crate(pin-utils)) = 0.1.0 +Provides: bundled(crate(pkcs11-bindings)) = 0.1.5 +Provides: bundled(crate(pkg-config)) = 0.3.26 +Provides: bundled(crate(plain)) = 0.2.3 +Provides: bundled(crate(plane-split)) = 0.18.0 +Provides: bundled(crate(ppv-lite86)) = 0.2.17 +Provides: bundled(crate(precomputed-hash)) = 0.1.1 +Provides: bundled(crate(prefs_parser)) = 0.0.1 +Provides: bundled(crate(prio)) = 0.9.1 +Provides: bundled(crate(processtools)) = 0.1.0 +Provides: bundled(crate(proc-macro2)) = 1.0.51 +Provides: bundled(crate(proc-macro-hack)) = 0.5.20+deprecated +Provides: bundled(crate(profiler_helper)) = 0.1.0 +Provides: bundled(crate(profiler-macros)) = 0.1.0 +Provides: bundled(crate(profiling)) = 1.0.7 +Provides: bundled(crate(prost)) = 0.8.0 +Provides: bundled(crate(prost-derive)) = 0.8.0 +Provides: bundled(crate(pulse)) = 0.3.0 +Provides: bundled(crate(pulse-ffi)) = 0.1.0 +Provides: bundled(crate(qcms)) = 0.2.0 +Provides: bundled(crate(qlog)) = 0.4.0 +Provides: bundled(crate(quick-error)) = 1.2.3 +Provides: bundled(crate(quote)) = 1.0.23 +Provides: bundled(crate(rand)) = 0.8.5 +Provides: bundled(crate(rand_chacha)) = 0.3.1 +Provides: bundled(crate(rand_core)) = 0.6.4 +Provides: bundled(crate(raw-window-handle)) = 0.5.0 +Provides: bundled(crate(rayon)) = 1.6.1 +Provides: bundled(crate(rayon-core)) = 1.10.2 +Provides: bundled(crate(regex)) = 1.7.1 +Provides: bundled(crate(regex-syntax)) = 0.6.28 +Provides: bundled(crate(remove_dir_all)) = 0.5.3 +Provides: bundled(crate(replace_with)) = 0.1.7 +Provides: bundled(crate(ringbuf)) = 0.2.8 +Provides: bundled(crate(rkv)) = 0.18.4 +Provides: bundled(crate(ron)) = 0.8.0 +Provides: bundled(crate(rsclientcerts)) = 0.1.0 +Provides: bundled(crate(rsdparsa_capi)) = 0.1.0 +Provides: bundled(crate(runloop)) = 0.1.0 +Provides: bundled(crate(rure)) = 0.2.2 +Provides: bundled(crate(rusqlite)) = 0.28.0 +Provides: bundled(crate(rust_cascade)) = 1.5.0 +Provides: bundled(crate(rustc-demangle)) = 0.1.21 +Provides: bundled(crate(rustc-hash)) = 1.1.0 +Provides: bundled(crate(rustc_version)) = 0.4.0 +Provides: bundled(crate(rust_decimal)) = 1.28.1 +Provides: bundled(crate(ryu)) = 1.0.12 +Provides: bundled(crate(same-file)) = 1.0.6 +Provides: bundled(crate(scopeguard)) = 1.1.0 +Provides: bundled(crate(scroll)) = 0.11.0 +Provides: bundled(crate(scroll_derive)) = 0.11.0 +Provides: bundled(crate(selectors)) = 0.22.0 +Provides: bundled(crate(self_cell)) = 0.10.2 +Provides: bundled(crate(semver)) = 1.0.16 +Provides: bundled(crate(serde)) = 1.0.152 +Provides: bundled(crate(serde_bytes)) = 0.11.9 +Provides: bundled(crate(serde_cbor)) = 0.11.2 +Provides: bundled(crate(serde_derive)) = 1.0.152 +Provides: bundled(crate(serde_json)) = 1.0.93 +Provides: bundled(crate(serde_with)) = 1.14.0 +Provides: bundled(crate(serde_with_macros)) = 1.5.2 +Provides: bundled(crate(servo_arc)) = 0.1.1 +Provides: bundled(crate(sfv)) = 0.9.3 +Provides: bundled(crate(sha1)) = 0.10.5 +Provides: bundled(crate(sha2)) = 0.10.6 +Provides: bundled(crate(shlex)) = 1.1.0 +Provides: bundled(crate(siphasher)) = 0.3.10 +Provides: bundled(crate(slab)) = 0.4.8 +Provides: bundled(crate(smallbitvec)) = 2.5.1 +Provides: bundled(crate(smallvec)) = 1.10.0 +Provides: bundled(crate(socket2)) = 0.4.7 +Provides: bundled(crate(spirv)) = 0.2.0+1.5.4 +Provides: bundled(crate(sql-support)) = 0.1.0 +Provides: bundled(crate(stable_deref_trait)) = 1.2.0 +Provides: bundled(crate(static_assertions)) = 1.1.0 +Provides: bundled(crate(static_prefs)) = 0.1.0 +Provides: bundled(crate(storage)) = 0.1.0 +Provides: bundled(crate(storage_variant)) = 0.1.0 +Provides: bundled(crate(strsim)) = 0.10.0 +Provides: bundled(crate(style)) = 0.0.1 +Provides: bundled(crate(style_derive)) = 0.0.1 +Provides: bundled(crate(style_traits)) = 0.0.1 +Provides: bundled(crate(svg_fmt)) = 0.4.1 +Provides: bundled(crate(swgl)) = 0.1.0 +Provides: bundled(crate(syn)) = 1.0.107 +Provides: bundled(crate(sync15)) = 0.1.0 +Provides: bundled(crate(sync-guid)) = 0.1.0 +Provides: bundled(crate(synstructure)) = 0.12.6 +Provides: bundled(crate(tabs)) = 0.1.0 +Provides: bundled(crate(tempfile)) = 3.3.0 +Provides: bundled(crate(termcolor)) = 1.2.0 +Provides: bundled(crate(thin-vec)) = 0.2.12 +Provides: bundled(crate(thiserror)) = 1.0.38 +Provides: bundled(crate(thiserror-impl)) = 1.0.38 +Provides: bundled(crate(threadbound)) = 0.1.5 +Provides: bundled(crate(time)) = 0.1.45 +Provides: bundled(crate(tinystr)) = 0.7.1 +Provides: bundled(crate(tinyvec)) = 1.999.999 +Provides: bundled(crate(toml)) = 0.5.11 +Provides: bundled(crate(topological-sort)) = 0.1.0 +Provides: bundled(crate(to_shmem)) = 0.0.1 +Provides: bundled(crate(to_shmem_derive)) = 0.0.1 +Provides: bundled(crate(tracy-rs)) = 0.1.2 +Provides: bundled(crate(typed-arena-nomut)) = 0.1.0 +Provides: bundled(crate(type-map)) = 0.4.0 +Provides: bundled(crate(typenum)) = 1.16.0 +Provides: bundled(crate(uluru)) = 3.0.0 +Provides: bundled(crate(unicase)) = 2.6.0 +Provides: bundled(crate(unic-langid)) = 0.9.1 +Provides: bundled(crate(unic-langid-ffi)) = 0.1.0 +Provides: bundled(crate(unic-langid-impl)) = 0.9.1 +Provides: bundled(crate(unicode-bidi)) = 0.3.8 +Provides: bundled(crate(unicode-ident)) = 1.0.6 +Provides: bundled(crate(unicode-normalization)) = 0.1.22 +Provides: bundled(crate(unicode-segmentation)) = 1.10.0 +Provides: bundled(crate(unicode-width)) = 0.1.10 +Provides: bundled(crate(unicode-xid)) = 0.2.4 +Provides: bundled(crate(uniffi)) = 0.23.0 +Provides: bundled(crate(uniffi_bindgen)) = 0.23.0 +Provides: bundled(crate(uniffi_build)) = 0.23.0 +Provides: bundled(crate(uniffi_checksum_derive)) = 0.23.0 +Provides: bundled(crate(uniffi_core)) = 0.23.0 +Provides: bundled(crate(uniffi_macros)) = 0.23.0 +Provides: bundled(crate(uniffi_meta)) = 0.23.0 +Provides: bundled(crate(uniffi_testing)) = 0.23.0 +Provides: bundled(crate(url)) = 2.1.0 +Provides: bundled(crate(uuid)) = 1.3.0 +Provides: bundled(crate(vcpkg)) = 0.2.999 +Provides: bundled(crate(version_check)) = 0.9.4 +Provides: bundled(crate(viaduct)) = 0.1.0 +Provides: bundled(crate(void)) = 1.0.2 +Provides: bundled(crate(walkdir)) = 2.3.2 +Provides: bundled(crate(wasm-encoder)) = 0.25.0 +Provides: bundled(crate(wast)) = 56.0.0 +Provides: bundled(crate(webext-storage)) = 0.1.0 +Provides: bundled(crate(webext_storage_bridge)) = 0.1.0 +Provides: bundled(crate(webrender)) = 0.62.0 +Provides: bundled(crate(webrender_api)) = 0.62.0 +Provides: bundled(crate(webrender_bindings)) = 0.1.0 +Provides: bundled(crate(webrender_build)) = 0.0.2 +Provides: bundled(crate(webrtc-sdp)) = 0.3.10 +Provides: bundled(crate(weedle2)) = 4.0.0 +Provides: bundled(crate(wgpu_bindings)) = 0.1.0 +Provides: bundled(crate(wgpu-core)) = 0.16.0 +Provides: bundled(crate(wgpu-hal)) = 0.16.0 +Provides: bundled(crate(wgpu-types)) = 0.16.0 +Provides: bundled(crate(whatsys)) = 0.3.1 +Provides: bundled(crate(wpf-gpu-raster)) = 0.1.0 +Provides: bundled(crate(wr_glyph_rasterizer)) = 0.1.0 +Provides: bundled(crate(wr_malloc_size_of)) = 0.0.2 +Provides: bundled(crate(xmldecl)) = 0.2.0 +Provides: bundled(crate(xml-rs)) = 0.8.4 +Provides: bundled(crate(xpcom)) = 0.1.0 +Provides: bundled(crate(xpcom_macros)) = 0.1.0 +Provides: bundled(crate(zeitstempel)) = 0.1.1 -Suggests: u2f-hidraw-policy %description Mozilla Thunderbird is a standalone mail and newsgroup client. -%package librnp-rnp -Summary: OpenPGP implementation for Thunderbird based on RNP -Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} -Provides: thunderbird-librnp -Provides: thunderbird-librnp%{?_isa} -Conflicts: thunderbird-librnp%{?_isa} -%description librnp-rnp -The thunderbird-librnp-rnp package contains an OpenPGP implementation -based on RNP. -%files librnp-rnp -%{mozappdir}/librnp.so -%{mozappdir}/rnp-cli -%{mozappdir}/rnpkeys - -%package wayland -Summary: Thunderbird Wayland launcher. -Requires: %{name} -%description wayland -The thunderbird-wayland package contains launcher and desktop file -to run Thunderbird natively on Wayland. -%files wayland -%{_bindir}/thunderbird-wayland -%attr(644,root,root) %{_datadir}/applications/mozilla-thunderbird-wayland.desktop - -%if %{enable_mozilla_crashreporter} -%global moz_debug_prefix %{_prefix}/lib/debug -%global moz_debug_dir %{moz_debug_prefix}%{mozappdir} -%global uname_m %(uname -m) -%global symbols_file_name %{name}-%{version}.en-US.%{_os}-%{uname_m}.crashreporter-symbols.zip -%global symbols_file_path %{moz_debug_dir}/%{symbols_file_name} -%global _find_debuginfo_opts -p %{symbols_file_path} -o debugcrashreporter.list -%global crashreporter_pkg_name mozilla-crashreporter-%{name}-debuginfo -%package -n %{crashreporter_pkg_name} -Summary: Debugging symbols used by Mozilla's crash reporter servers -%description -n %{crashreporter_pkg_name} -This package provides debug information for XULRunner, for use by -Mozilla's crash reporter servers. If you are trying to locally -debug %{name}, you want to install %{name}-debuginfo instead. -%files -n %{crashreporter_pkg_name} -f debugcrashreporter.list -%defattr(-,root,root) -%endif - %prep +echo "Build environment" +echo "--------------------------------------------" +echo "dist %{?dist}" +echo "RHEL minor version: %{?rhel_minor_version}" +echo "bundle_nss %{?bundle_nss}" +echo "system_nss %{?system_nss}" +echo "use_rust_ts %{?use_rust_ts}" +echo "use_dts %{?use_dts}" +echo "use_nodejs_scl %{?use_nodejs_scl}" +echo "use_llvm_ts %{?use_llvm_ts}" +echo "use_python3_scl %{?use_python3_scl}" +echo "--------------------------------------------" + %setup -q -# Build patches -%patch -P 9 -p2 -b .arm -%ifarch s390 -%patch -P 103 -p1 -b .rhbz-1219542-s390-build +# ---- RHEL specific patches --- +# -- Downstream only -- +%patch -P1 -p1 -b .disable-elfhack +%patch -P2 -p1 -b .firefox-gcc-build +%patch -P3 -p1 -b .build-big-endian-errors +%if 0%{?rhel} == 7 +%patch -P5 -p1 -b .build-rhel7-lower-node-min-version + %ifarch ppc64 + # abiv2 version not available in RHEL7 ppc + # TODO most likely not needed with system nss +%patch -P6 -p1 -b .ppc64-abiv2 + %endif + %ifarch %{ix86} + # -F dwarf not available in RHEL7's nasm +%patch -P7 -p1 -b .build-rhel7-nasm-dwarf + %endif +%endif +%patch -P8 -p1 -b .build-rnp-openssl +%if !%{?use_openssl_for_librnp} +%patch -P9 -p1 -b .disable-openpgp-in-thunderbird %endif -%patch -P 304 -p1 -b .1245783 +# -- Upstreamed patches -- +%patch -P51 -p1 -b .mozilla-bmo1170092 -#ARM run-time patch +# -- Submitted upstream, not merged -- +%patch -P101 -p1 -b .mozilla-bmo1670333 +%patch -P102 -p1 -b .mozilla-bmo1504834-part1 +%patch -P103 -p1 -b .mozilla-bmo1504834-part3 +%patch -P104 -p1 -b .mozilla-bmo849632 +%patch -P105 -p1 -b .mozilla-bmo998749 +%patch -P106 -p1 -b .mozilla-bmo1716707-swizzle +%patch -P107 -p1 -b .mozilla-bmo1716707-svg +%patch -P108 -p1 -b .mozilla-bmo1789216-disable-av1 + +# ---- Fedora specific patches ---- +%patch -P151 -p1 -b .addons +%patch -P152 -p1 -b .rhbz-1173156 +%patch -P154 -p1 -b .addons-nss-hack +# ARM run-time patch %ifarch aarch64 -#%patch -P 226 -p1 -b .1354671 +%patch -P155 -p1 -b .rhbz-1354671 %endif -%ifarch %{arm} -%patch -P 415 -p1 -b .mozilla-1238661 -%endif -#FIXME %patch -P 416 -p1 -b .SIOCGSTAMP -%patch -P 418 -p1 -b .mozbz-1512162 -%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 422 -p1 -b .0001-GLIBCXX-fix-for-GCC-12 - -%patch -P 501 -p1 -b .expat-CVE-2022-25235 -%patch -P 502 -p1 -b .expat-CVE-2022-25236 -%patch -P 503 -p1 -b .expat-CVE-2022-25315 - -%patch -P 1200 -p1 -b .rustflags-commasplit - -%if %{official_branding} -# Required by Mozilla Corporation - -%else -# Not yet approved by Mozilla Corporation - -%endif +# ---- Security patches ---- +cd media/libvpx/libvpx +%patch -P301 -p1 -b .CVE-2023-44488-libvpx +cd - %{__rm} -f .mozconfig %{__cp} %{SOURCE10} .mozconfig -%if %{official_branding} -%{__cat} %{SOURCE11} >> .mozconfig -%endif +%{__cp} %{SOURCE24} mozilla-api-key +%{__cp} %{SOURCE27} google-api-key +%{__cp} %{SOURCE35} google-loc-api-key echo "ac_add_options --prefix=\"%{_prefix}\"" >> .mozconfig echo "ac_add_options --libdir=\"%{_libdir}\"" >> .mozconfig @@ -317,71 +975,56 @@ echo "ac_add_options --without-system-nspr" >> .mozconfig echo "ac_add_options --without-system-nss" >> .mozconfig %endif -# Second arches fail to start with jemalloc enabled -%ifnarch %{ix86} x86_64 -echo "ac_add_options --disable-jemalloc" >> .mozconfig -%endif - - -%if %{?system_ffi} -echo "ac_add_options --enable-system-ffi" >> .mozconfig -%endif - %if %{?debug_build} - echo "ac_add_options --enable-debug" >> .mozconfig - echo "ac_add_options --disable-optimize" >> .mozconfig +echo "ac_add_options --enable-debug" >> .mozconfig +echo "ac_add_options --disable-optimize" >> .mozconfig %else - %global optimize_flags "none" - %ifarch ppc64le aarch64 - %global optimize_flags "-g -O2" - %endif - %if %{?optimize_flags} != "none" - echo 'ac_add_options --enable-optimize=%{?optimize_flags}' >> .mozconfig - %else - echo 'ac_add_options --enable-optimize' >> .mozconfig - %endif - echo "ac_add_options --disable-debug" >> .mozconfig +%global optimize_flags "none" +%ifarch s390x +%global optimize_flags "-g -O1" +%endif +%ifarch ppc64le aarch64 +%global optimize_flags "-g -O2" +%endif +%if %{optimize_flags} != "none" +echo 'ac_add_options --enable-optimize=%{?optimize_flags}' >> .mozconfig +%else +echo 'ac_add_options --enable-optimize' >> .mozconfig +%endif +echo "ac_add_options --disable-debug" >> .mozconfig %endif -%ifarch aarch64 +%if %{?system_libvpx} +echo "ac_add_options --with-system-libvpx" >> .mozconfig +%else +echo "ac_add_options --without-system-libvpx" >> .mozconfig +%endif + +%ifarch s390x echo "ac_add_options --disable-jit" >> .mozconfig %endif -%ifnarch %{ix86} x86_64 -echo "ac_add_options --disable-webrtc" >> .mozconfig +%if %{?use_openssl_for_librnp} +echo "ac_add_options --with-librnp-backend=openssl" >> .mozconfig %endif -%ifarch armv7hl -echo "ac_add_options --with-arch=armv7-a" >> .mozconfig -echo "ac_add_options --with-float-abi=hard" >> .mozconfig -echo "ac_add_options --with-fpu=vfpv3-d16" >> .mozconfig -%endif -%ifarch armv7hnl -echo "ac_add_options --with-arch=armv7-a" >> .mozconfig -echo "ac_add_options --with-float-abi=hard" >> .mozconfig -echo "ac_add_options --with-fpu=neon" >> .mozconfig -echo "ac_add_options --disable-yarr-jit" >> .mozconfig -%endif -%ifarch armv5tel -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 -%else -echo "ac_add_options --without-system-jpeg" >> .mozconfig +# AV1 requires newer nasm that was rebased in 8.4 +%if 0%{?rhel} == 7 || (0%{?rhel} == 8 && %{rhel_minor_version} < 4) +echo "ac_add_options --disable-av1" >> .mozconfig %endif -%if %{enable_mozilla_crashreporter} -echo "ac_add_options --enable-crashreporter" >> .mozconfig -%else -echo "ac_add_options --disable-crashreporter" >> .mozconfig -%endif +# api keys full path +echo "ac_add_options --with-mozilla-api-keyfile=`pwd`/mozilla-api-key" >> .mozconfig +# It seems that the api key we have is for the safe browsing only +echo "ac_add_options --with-google-location-service-api-keyfile=`pwd`/google-loc-api-key" >> .mozconfig +echo "ac_add_options --with-google-safebrowsing-api-keyfile=`pwd`/google-api-key" >> .mozconfig -# Same as https://bugzilla.redhat.com/show_bug.cgi?id=2239046 for Firefox: +# May result in empty --with-libclang-path= in earlier versions. +# So far this is needed only for c8s/c9s. +%if (0%{?rhel} == 8 && %{rhel_minor_version} >= 10) || (0%{?rhel} == 9 && %{rhel_minor_version} >= 4) # Clang 17 upstream's detection fails, tell it where to look. echo "ac_add_options --with-libclang-path=`llvm-config --libdir`" >> .mozconfig +%endif echo 'export NODEJS="%{_buildrootdir}/bin/node-stdout-nonblocking-wrapper"' >> .mozconfig @@ -391,185 +1034,308 @@ find third_party -type f -iname "*.rs"|xargs chmod a-x #=============================================================================== %build +# TODO: causes SIGSEGV on the webrender compilation, we might remove it with newer rust version # Disable LTO to work around rhbz#1883904 %define _lto_cflags %{nil} -%if 0%{?use_bundled_cbindgen} +export PATH="%{_buildrootdir}/bin:$PATH" +# Cleanup buildroot for existing rpms from bundled nss/nspr and other packages +rm -rf %{_buildrootdir}/* +function install_rpms_to_current_dir() { + PACKAGE_RPM=$(eval echo $1) + PACKAGE_DIR=%{_rpmdir} + + if [ ! -f $PACKAGE_DIR/$PACKAGE_RPM ]; then + # Hack for tps tests + ARCH_STR=%{_arch} + %ifarch %{ix86} + ARCH_STR="i?86" + %endif + PACKAGE_DIR="$PACKAGE_DIR/$ARCH_STR" + fi + + for package in $(ls $PACKAGE_DIR/$PACKAGE_RPM) + do + echo "$package" + rpm2cpio "$package" | cpio -idu + done +} + +%if 0%{?bundle_nss} + rpm -ivh %{SOURCE402} + rpmbuild --nodeps --define '_prefix %{bundled_install_path}' --without=tests -ba %{_specdir}/nspr.spec + pushd %{_buildrootdir} + install_rpms_to_current_dir nspr-4*.rpm + install_rpms_to_current_dir nspr-devel*.rpm + popd + echo "Setting nspr flags" + # nss-setup-flags-env.inc + sed -i 's@%{bundled_install_path}@%{_buildrootdir}%{bundled_install_path}@g' %{_buildrootdir}%{bundled_install_path}/%{_lib}/pkgconfig/nspr*.pc + cat %{_buildrootdir}%{bundled_install_path}/%{_lib}/pkgconfig/nspr*.pc + + export LDFLAGS="-L%{_buildrootdir}%{bundled_install_path}/%{_lib} $LDFLAGS" + export LDFLAGS="-Wl,-rpath,%{bundled_install_path}/%{_lib} $LDFLAGS" + export LDFLAGS="-Wl,-rpath-link,%{_buildrootdir}%{bundled_install_path}/%{_lib} $LDFLAGS" + export PKG_CONFIG_PATH=%{_buildrootdir}%{bundled_install_path}/%{_lib}/pkgconfig + pkg-config --libs-only-L nspr + pkg-config --libs nspr + export PATH="%{_buildrootdir}%{bundled_install_path}/bin:$PATH" + + export PATH=%{_buildrootdir}/%{bundled_install_path}/bin:$PATH + echo $PKG_CONFIG_PATH + +%if 0%{?rhel} == 8 + rpm -ivh %{SOURCE403} +%else + rpm -ivh %{SOURCE404} +%endif + rpmbuild --nodeps --define '_prefix %{bundled_install_path}' --without=tests -ba %{_specdir}/nss.spec + pushd %{_buildrootdir} + #cleanup + install_rpms_to_current_dir nss-3*.rpm + install_rpms_to_current_dir nss-devel*.rpm + install_rpms_to_current_dir nss-pkcs11-devel*.rpm + install_rpms_to_current_dir nss-softokn-3*.rpm + install_rpms_to_current_dir nss-softokn-devel*.rpm + install_rpms_to_current_dir nss-softokn-freebl-3*.rpm + install_rpms_to_current_dir nss-softokn-freebl-devel*.rpm + install_rpms_to_current_dir nss-util-3*.rpm + install_rpms_to_current_dir nss-util-devel*.rpm + popd + %filter_provides_in %{bundled_install_path}/%{_lib} + %filter_requires_in %{bundled_install_path}/%{_lib} + %filter_from_requires /libnss3.so.*/d + %filter_from_requires /libsmime3.so.*/d + %filter_from_requires /libssl3.so.*/d + %filter_from_requires /libnssutil3.so.*/d + %filter_from_requires /libnspr4.so.*/d + find %{_buildrootdir} +%endif + +# Enable toolsets +set +e +%if 0%{?rhel} == 8 && %{rhel_minor_version} < 6 + %ifarch aarch64 +source scl_source enable gcc-toolset-12 + %endif +%endif +%if 0%{?use_dts} +source scl_source enable devtoolset-%{dts_version} +%endif +%if 0%{?use_rust_ts} +source scl_source enable rust-toolset-%{rust_version} +%endif +%if 0%{?use_nodejs_scl} +source scl_source enable rh-nodejs10 +%endif +%if 0%{?use_llvm_ts} +source scl_source enable llvm-toolset-%{llvm_version} +%endif +%if 0%{?use_python3_scl} +source scl_source enable rh-python38 +%endif + +set -e +env +which gcc +which c++ +which g++ +which ld +which nasm +which node +which python3 +# Bundled cbindgen mkdir -p my_rust_vendor cd my_rust_vendor -%{__tar} xf %{SOURCE4} -cd - +%{__tar} xf %{SOURCE2} mkdir -p .cargo cat > .cargo/config < 30 +MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -fpermissive" %endif + +MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -fPIC -Wl,-z,relro -Wl,-z,now" %if %{?debug_build} MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-O2//') %endif -%ifarch s390 -MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-g/-g1/') -# If MOZ_DEBUG_FLAGS is empty, firefox's build will default it to "-g" which -# overrides the -g1 from line above and breaks building on s390 -# (OOM when linking, rhbz#1238225) -export MOZ_DEBUG_FLAGS=" " -%endif -%ifarch %{arm} %{ix86} +%ifarch %{ix86} MOZ_OPT_FLAGS=$(echo "$MOZ_OPT_FLAGS" | %{__sed} -e 's/-g/-g0/') export MOZ_DEBUG_FLAGS=" " %endif -%if "%toolchain" != "clang" -%ifarch s390 ppc aarch64 %{ix86} +%ifarch s390x aarch64 %{ix86} MOZ_LINK_FLAGS="-Wl,--no-keep-memory -Wl,--reduce-memory-overheads" %endif -%ifarch %{arm} -MOZ_LINK_FLAGS="-Wl,--no-keep-memory" -echo "ac_add_options --enable-linker=gold" >> .mozconfig -%endif -%endif + %if 0%{?flatpak} # Make sure the linker can find libraries in /app/lib64 as we don't use # __global_ldflags that normally sets this. MOZ_LINK_FLAGS="$MOZ_LINK_FLAGS -L%{_libdir}" %endif -%ifarch %{arm} %{ix86} %{s390x} +%ifarch %{ix86} %{s390x} export RUSTFLAGS="-Cdebuginfo=0" +echo 'export RUSTFLAGS="-Cdebuginfo=0"' >> .mozconfig %endif + +%if 0%{?bundle_nss} + mkdir -p %{_buildrootdir}%{bundled_install_path}/%{_lib} + MOZ_LINK_FLAGS="-L%{_buildrootdir}%{bundled_install_path}/%{_lib} $MOZ_LINK_FLAGS" + MOZ_LINK_FLAGS="-Wl,-rpath,%{bundled_install_path}/%{_lib} $MOZ_LINK_FLAGS" + MOZ_LINK_FLAGS="-Wl,-rpath-link,%{_buildrootdir}%{bundled_install_path}/%{_lib} $MOZ_LINK_FLAGS" +%endif + # We don't want thunderbird to use CK_GCM_PARAMS_V3 in nss MOZ_OPT_FLAGS="$MOZ_OPT_FLAGS -DNSS_PKCS11_3_0_STRICT" echo "export CFLAGS=\"$MOZ_OPT_FLAGS\"" >> .mozconfig echo "export CXXFLAGS=\"$MOZ_OPT_FLAGS\"" >> .mozconfig echo "export LDFLAGS=\"$MOZ_LINK_FLAGS\"" >> .mozconfig - -%if "%toolchain" == "clang" -echo "export LLVM_PROFDATA=\"llvm-profdata\"" >> .mozconfig -echo "export AR=\"llvm-ar\"" >> .mozconfig -echo "export NM=\"llvm-nm\"" >> .mozconfig -echo "export RANLIB=\"llvm-ranlib\"" >> .mozconfig -echo "ac_add_options --enable-linker=lld" >> .mozconfig -%else echo "export CC=gcc" >> .mozconfig echo "export CXX=g++" >> .mozconfig echo "export AR=\"gcc-ar\"" >> .mozconfig echo "export NM=\"gcc-nm\"" >> .mozconfig echo "export RANLIB=\"gcc-ranlib\"" >> .mozconfig -%endif -%if 0%{?build_with_pgo} -echo "ac_add_options MOZ_PGO=1" >> .mozconfig -# PGO build doesn't work with ccache -export CCACHE_DISABLE=1 -%endif MOZ_SMP_FLAGS=-j1 -# On x86 architectures, Mozilla can build up to 4 jobs at once in parallel, +# On x86_64 architectures, Mozilla can build up to 4 jobs at once in parallel, # however builds tend to fail on other arches when building in parallel. -%ifarch %{ix86} x86_64 ppc %{power64} aarch64 +#%ifarch %{ix86} s390x aarch64 ppc64le +#[ -z "$RPM_BUILD_NCPUS" ] && \ +# RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`" +#[ "$RPM_BUILD_NCPUS" -ge 2 ] && MOZ_SMP_FLAGS=-j2 +#%endif +#%ifarch x86_64 ppc64 ppc64le [ -z "$RPM_BUILD_NCPUS" ] && \ - RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`" + RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`" [ "$RPM_BUILD_NCPUS" -ge 2 ] && MOZ_SMP_FLAGS=-j2 [ "$RPM_BUILD_NCPUS" -ge 4 ] && MOZ_SMP_FLAGS=-j4 [ "$RPM_BUILD_NCPUS" -ge 8 ] && MOZ_SMP_FLAGS=-j8 +[ "$RPM_BUILD_NCPUS" -ge 16 ] && MOZ_SMP_FLAGS=-j16 +#%endif + +echo "mk_add_options MOZ_MAKE_FLAGS=\"$MOZ_SMP_FLAGS\"" >> .mozconfig +echo "mk_add_options MOZ_SERVICES_SYNC=1" >> .mozconfig +echo "export STRIP=/bin/true" >> .mozconfig + +# We could use %%include, but in %%files, %%post and other sections, but in these +# sections it could lead to syntax errors about unclosed %%if. Work around it by +# using the following macro +%define include_file() %{expand:%(cat '%1')} + +%if 0%{?bundle_nss} + echo "Setting nss flags" + # nss-setup-flags-env.inc + %include_file %{SOURCE401} + export PATH=%{_buildrootdir}/%{bundled_install_path}/bin:$PATH + echo $PKG_CONFIG_PATH %endif +./mach build -v 2>&1 || exit 1 -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 -./mach build -v - -# create debuginfo for crash-stats.mozilla.com -%if %{enable_mozilla_crashreporter} -make -C %{objdir} buildsymbols -%endif - -#=============================================================================== - +#--------------------------------------------------------------------- %install -cd %{objdir} +export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=system +function install_rpms_to_current_dir() { + PACKAGE_RPM=$(eval echo $1) + PACKAGE_DIR=%{_rpmdir} -DESTDIR=$RPM_BUILD_ROOT make install + if [ ! -f $PACKAGE_DIR/$PACKAGE_RPM ]; then + # Hack for tps tests + ARCH_STR=%{_arch} + %ifarch %{ix86} + ARCH_STR="i?86" + %endif + PACKAGE_DIR="$PACKAGE_DIR/$ARCH_STR" + fi -cd .. + for package in $(ls $PACKAGE_DIR/$PACKAGE_RPM) + do + echo "$package" + rpm2cpio "$package" | cpio -idu + done +} -# install icons -for s in 16 22 24 32 48 64 128 256; do - %{__mkdir_p} $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/${s}x${s}/apps - %{__cp} -p comm/mail/branding/%{name}/default${s}.png \ - $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/${s}x${s}/apps/thunderbird.png -done +%if 0%{?bundle_nss} + pushd %{buildroot} + install_rpms_to_current_dir nspr-4*.rpm + install_rpms_to_current_dir nss-3*.rpm + install_rpms_to_current_dir nss-softokn-3*.rpm + install_rpms_to_current_dir nss-softokn-freebl-3*.rpm + install_rpms_to_current_dir nss-util-3*.rpm -# Install hight contrast icon -%{__mkdir_p} %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps -%{__cp} -p %{SOURCE25} \ - %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps + # cleanup unecessary nss files + rm -rf %{buildroot}/%{bundled_install_path}/lib/dracut + rm -rf %{buildroot}/%{bundled_install_path}/%{_lib}/nss + rm -rf %{buildroot}/%{bundled_install_path}/%{_lib}/share + rm -rf %{buildroot}/%{bundled_install_path}/share + rm -rf %{buildroot}/etc/pki + rm -rf %{buildroot}/usr/lib/.build-id + rm -rf %{buildroot}/etc/crypto-policies + popd +%endif +DESTDIR=%{buildroot} make -C objdir install -desktop-file-install --vendor mozilla \ - --dir $RPM_BUILD_ROOT%{_datadir}/applications \ - %{SOURCE20} -desktop-file-install --vendor mozilla \ - --dir $RPM_BUILD_ROOT%{_datadir}/applications \ - %{SOURCE29} +%{__mkdir_p} %{buildroot}{%{_libdir},%{_bindir},%{_datadir}/applications} +desktop-file-install --dir %{buildroot}%{_datadir}/applications %{SOURCE20} # set up the thunderbird start script -rm -f $RPM_BUILD_ROOT/%{_bindir}/thunderbird -%{__cat} %{SOURCE21} | %{__sed} -e 's,__PREFIX__,%{_prefix},g' > \ - $RPM_BUILD_ROOT/%{_bindir}/thunderbird -%{__chmod} 755 $RPM_BUILD_ROOT/%{_bindir}/thunderbird -%{__cat} %{SOURCE28} | %{__sed} -e 's,__PREFIX__,%{_prefix},g' > \ - %{buildroot}%{_bindir}/thunderbird-wayland -%{__chmod} 755 %{buildroot}%{_bindir}/thunderbird-wayland +%{__rm} -rf %{buildroot}%{_bindir}/thunderbird +%{__sed} -e 's,__PREFIX__,%{_prefix},g' %{SOURCE21} > %{buildroot}%{_bindir}/thunderbird +%{__chmod} 755 %{buildroot}%{_bindir}/thunderbird + +%if 0%{?flatpak} +sed -i -e 's|%FLATPAK_ENV_VARS%|export TMPDIR="$XDG_CACHE_HOME/tmp"|' %{buildroot}%{_bindir}/thunderbird +%else +sed -i -e 's|%FLATPAK_ENV_VARS%||' %{buildroot}%{_bindir}/thunderbird +%endif + +# Run firefox under wayland only on RHEL9 and newer +%if 0%{?rhel} < 9 +sed -i -e 's|%DISABLE_WAYLAND_PLACEHOLDER%|export MOZ_DISABLE_WAYLAND=1|' %{buildroot}%{_bindir}/thunderbird +%else +sed -i -e 's|%DISABLE_WAYLAND_PLACEHOLDER%||' %{buildroot}%{_bindir}/thunderbird +%endif # set up our default preferences %{__cat} %{SOURCE12} | %{__sed} -e 's,THUNDERBIRD_RPM_VR,%{version}-%{release},g' \ @@ -580,6 +1346,19 @@ rm -f $RPM_BUILD_ROOT/%{_bindir}/thunderbird %{__rm} $RPM_BUILD_ROOT/rh-default-prefs %{__rm} -f $RPM_BUILD_ROOT%{_bindir}/thunderbird-config +%{__rm} -f %{buildroot}/%{mozappdir}/update-settings.ini + +# install icons +for s in 16 22 24 32 48 64 128 256; do + %{__mkdir_p} $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/${s}x${s}/apps + %{__cp} -p comm/mail/branding/%{name}/default${s}.png \ + %{buildroot}%{_datadir}/icons/hicolor/${s}x${s}/apps/thunderbird.png +done + +# Install high contrast icon +%{__mkdir_p} %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps +%{__cp} -p %{SOURCE25} \ + %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps # own mozilla plugin dir (#135050) %{__mkdir_p} $RPM_BUILD_ROOT%{_libdir}/mozilla/plugins @@ -592,10 +1371,8 @@ rm -f $RPM_BUILD_ROOT/%{_bindir}/thunderbird %{__mkdir_p} %{buildroot}%{_sysconfdir}/%{name}/pref # Install langpacks -%{__rm} -f %{name}.lang # Delete for --short-circuit option -touch %{name}.lang - -%if %{build_langpacks} +echo > %{name}.lang +%if %{with langpacks} %{__mkdir_p} %{buildroot}%{langpackdir} %{__tar} xf %{SOURCE1} for langpack in `ls thunderbird-langpacks/*.xpi`; do @@ -632,10 +1409,9 @@ ln -s $(pkg-config --variable prefix hunspell)/share/%{dictionarydir} $RPM_BUILD touch $RPM_BUILD_ROOT%{mozappdir}/components/compreg.dat touch $RPM_BUILD_ROOT%{mozappdir}/components/xpti.dat -# Add debuginfo for crash-stats.mozilla.com -%if %{enable_mozilla_crashreporter} -%{__mkdir_p} $RPM_BUILD_ROOT/%{moz_debug_dir} -%{__cp} %{objdir}/dist/%{symbols_file_name} $RPM_BUILD_ROOT/%{moz_debug_dir} +# Removing librnp.so - we cannot deliver librnp with botan crypto backend RHELs +%if !%{?use_openssl_for_librnp} +%{__rm} -rf %{buildroot}%{mozappdir}/librnp.so %{buildroot}%{mozappdir}/rnp-cli %{buildroot}%{mozappdir}/rnpkeys %endif # Register as an application to be visible in the software center @@ -643,6 +1419,16 @@ mkdir -p $RPM_BUILD_ROOT%{_datadir}/metainfo %{__cp} -p comm/mail/branding/%{name}/net.thunderbird.Thunderbird.appdata.xml $RPM_BUILD_ROOT%{_datadir}/metainfo/thunderbird.appdata.xml sed -i -e 's|thunderbird|' "$RPM_BUILD_ROOT%{_datadir}/metainfo/thunderbird.appdata.xml" +# Clean the created bundled rpms. +rm -rf %{_srcrpmdir}/libffi*.src.rpm +find %{_rpmdir} -name "libffi*.rpm" -delete +rm -rf %{_srcrpmdir}/openssl*.src.rpm +find %{_rpmdir} -name "openssl*.rpm" -delete +rm -rf %{_srcrpmdir}/nss*.src.rpm +find %{_rpmdir} -name "nss*.rpm" -delete +rm -rf %{_srcrpmdir}/nspr*.src.rpm +find %{_rpmdir} -name "nspr*.rpm" -delete + #=============================================================================== %post @@ -654,6 +1440,7 @@ update-desktop-database &> /dev/null || : if [ $1 -eq 0 ] ; then touch --no-create %{_datadir}/icons/hicolor &>/dev/null gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : + %{__rm} -rf %{langpackdir} fi %posttrans @@ -664,7 +1451,7 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %defattr(-,root,root,-) %attr(755,root,root) %{_bindir}/thunderbird %{_datadir}/metainfo/*.appdata.xml -%attr(644,root,root) %{_datadir}/applications/mozilla-thunderbird.desktop +%attr(644,root,root) %{_datadir}/applications/thunderbird.desktop %dir %{_sysconfdir}/%{name} %dir %{_sysconfdir}/%{name}/* %dir %{_datadir}/mozilla/extensions/%{thunderbird_app_id} @@ -679,7 +1466,7 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %{mozappdir}/plugin-container %{mozappdir}/defaults %{mozappdir}/dictionaries -%if %{build_langpacks} +%if %{with langpacks} %dir %{langpackdir} %endif %{mozappdir}/greprefs @@ -687,7 +1474,6 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %{mozappdir}/thunderbird-bin %{mozappdir}/thunderbird %{mozappdir}/*.so -%exclude %{mozappdir}/librnp.so %{mozappdir}/platform.ini %{mozappdir}/application.ini %exclude %{mozappdir}/removed-files @@ -700,1687 +1486,323 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %{_datadir}/icons/hicolor/64x64/apps/thunderbird.png %{_datadir}/icons/hicolor/128x128/apps/thunderbird.png %{_datadir}/icons/hicolor/symbolic/apps/thunderbird-symbolic.svg -%if %{enable_mozilla_crashreporter} -%{mozappdir}/crashreporter -%{mozappdir}/crashreporter.ini -%{mozappdir}/Throbber-small.gif -%endif %if !%{?system_nss} %{mozappdir}/*.chk %endif %{mozappdir}/dependentlibs.list %{mozappdir}/fonts %{mozappdir}/pingsender +%if %{?use_openssl_for_librnp} +%{mozappdir}/librnp.so +%{mozappdir}/rnp-cli +%{mozappdir}/rnpkeys +%endif %{mozappdir}/glxtest %{mozappdir}/vaapitest +%if 0%{?bundle_nss} +%{mozappdir}/bundled/%{_lib}/libfreebl* +%{mozappdir}/bundled/%{_lib}/libnss* +%{mozappdir}/bundled/%{_lib}/libsmime3* +%{mozappdir}/bundled/%{_lib}/libsoftokn* +%{mozappdir}/bundled/%{_lib}/libssl3* +%{mozappdir}/bundled/%{_lib}/libnspr4.so +%{mozappdir}/bundled/%{_lib}/libplc4.so +%{mozappdir}/bundled/%{_lib}/libplds4.so +%endif + #=============================================================================== %changelog -* Wed Jan 10 2024 Eike Rathke - 115.6.1-1 -- Update to 115.6.1 +* Tue Jun 18 2024 Eike Rathke - 115.12.1-1 +- Update to 115.12.1 build1 -* Wed Dec 20 2023 Eike Rathke - 115.6.0-1 -- Update to 115.6.0 +* Tue Jun 11 2024 Eike Rathke - 115.12.0-2 +- Update to 115.12.0 build2 -* Tue Dec 12 2023 Eike Rathke - 115.5.2-1 -- Update to 115.5.2 +* Mon Jun 10 2024 Eike Rathke - 115.12.0-1 +- Update to 115.12.0 build1 -* Tue Nov 28 2023 Eike Rathke - 115.5.1-1 -- Update to 115.5.1 +* Mon May 13 2024 Eike Rathke - 115.11.0-1 +- Update to 115.11.0 build2 -* Fri Nov 24 2023 Eike Rathke - 115.5.0-1 -- Update to 115.5.0 +* Mon Apr 15 2024 Eike Rathke - 115.10.0-2 +- Update to 115.10.0 build2 -* Wed Nov 15 2023 Eike Rathke - 115.4.3-1 -- Update to 115.4.3 +* Fri Apr 12 2024 Eike Rathke - 115.10.0-1 +- Update to 115.10.0 build1 +- Revert expat CVE-2023-52425 fix -* Wed Nov 08 2023 Eike Rathke - 115.4.2-1 -- Update to 115.4.2 +* Mon Mar 18 2024 Eike Rathke - 115.9.0-1 +- Update to 115.9.0 build1 +- Fix expat CVE-2023-52425 + +* Mon Feb 19 2024 Eike Rathke - 115.8.0-1 +- Update to 115.8.0 build1 + +* Mon Jan 22 2024 Eike Rathke - 115.7.0-1 +- Update to 115.7.0 build1 + +* Mon Dec 18 2023 Eike Rathke - 115.6.0-1 +- Update to 115.6.0 build2 + +* Tue Nov 21 2023 Eike Rathke - 115.5.0-1 +- Update to 115.5.0 build1 * Wed Oct 25 2023 Eike Rathke - 115.4.1-1 -- Update to 115.4.1 +- Update to 115.4.1 build1 -* Tue Oct 24 2023 Eike Rathke - 115.4.0-1 -- Update to 115.4.0 +* Tue Oct 24 2023 Anton Bobrov - 115.4.0-3 +- Update to 115.4.0 build3 -* Wed Oct 11 2023 Eike Rathke - 115.3.2-1 -- Update to 115.3.2 +* Sat Oct 21 2023 Eike Rathke - 115.4.0-2 +- Update to 115.4.0 build2 -* Sat Oct 07 2023 Kalev Lember - 115.3.1-2 -- Fix flatpak build +* Fri Oct 20 2023 Eike Rathke - 115.4.0-1 +- Update to 115.4.0 build1 * Fri Sep 29 2023 Eike Rathke - 115.3.1-1 -- Update to 115.3.1 +- Update to 115.3.1 build1 * Wed Sep 27 2023 Eike Rathke - 115.3.0-1 - Update to 115.3.0 -* Tue Sep 19 2023 Eike Rathke - 115.2.2-1 -- Update to 115.2.2 +* Fri Sep 8 2023 Jan Horak - 115.2.1-5 +- Update to 115.2.1 -* Tue Aug 15 2023 Jan Horak - 115.1.1-1 -- Update to 115.1.1 +* Thu May 04 2023 Eike Rathke - 102.11.0-1 +- Update to 102.11.0 build1 -* Mon Jul 24 2023 Jan Horak - 115.0.1-1 -- Update to 115.0.1 +* Tue Apr 11 2023 Eike Rathke - 102.10.0-2 +- Update to 102.10.0 build2 -* Sat Jul 22 2023 Fedora Release Engineering - 102.13.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild +* Thu Apr 06 2023 Eike Rathke - 102.10.0-1 +- Update to 102.10.0 build1 -* Mon Jul 10 2023 Eike Rathke - 102.13.0-1 -- Update to 102.13.0 +* Mon Mar 13 2023 Eike Rathke - 102.9.0-2 +- Update to 102.9.0 build1 -* Wed Jun 07 2023 Eike Rathke - 102.12.0-1 -- Update to 102.12.0 +* Wed Feb 15 2023 Eike Rathke - 102.8.0-2 +- Update to 102.8.0 build2 -* Thu May 25 2023 Eike Rathke - 102.11.1-1 -- Update to 102.11.1 -- Change %%patchN ... to %%patch -P N ... - -* Wed May 10 2023 Eike Rathke - 102.11.0-1 -- Update to 102.11.0 - -* Tue Apr 11 2023 Eike Rathke - 102.10.0-1 -- Update to 102.10.0 - -* Wed Mar 29 2023 Eike Rathke - 102.9.1-1 -- Update to 102.9.1 - -* Wed Mar 15 2023 Eike Rathke - 102.9.0-1 -- Update to 102.9.0 - -* Fri Feb 17 2023 Eike Rathke - 102.8.0-1 -- Update to 102.8.0 - -* Wed Feb 08 2023 Eike Rathke - 102.7.2-1 -- Update to 102.7.2 +* Fri Feb 10 2023 Eike Rathke - 102.8.0-1 +- Update to 102.8.0 build1 * Tue Jan 31 2023 Eike Rathke - 102.7.1-2 - Update to 102.7.1 build2 * Tue Jan 24 2023 Eike Rathke - 102.7.1-1 -- Update to 102.7.1 -- Fix FTBFS gcc13 header dependencies +- Update to 102.7.1 build1 -* Sat Jan 21 2023 Fedora Release Engineering - 102.6.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild +* Mon Jan 16 2023 Eike Rathke - 102.7.0-1 +- Update to 102.7.0 build1 -* Wed Dec 21 2022 Martin Stransky - 102.6.0-2 -- Backported mozbz#1804877 - set XDG_ACTIVATION_TOKEN when launch - external application. +* Tue Dec 13 2022 Eike Rathke - 102.6.0-2 +- Update to 102.6.0 build2 -* Tue Dec 13 2022 Eike Rathke - 102.6.0-1 -- Update to 102.6.0 +* Fri Dec 09 2022 Eike Rathke - 102.6.0-1 +- Update to 102.6.0 build1 -* Thu Dec 01 2022 Eike Rathke - 102.5.1-1 -- Update to 102.5.1 +* Tue Nov 29 2022 Jan Horak - 102.5.0-3 +- Use openssl for the librnp crypto backend to enable the openpgp encryption -* Tue Nov 15 2022 Eike Rathke - 102.5.0-1 -- Update to 102.5.0 -- Use SPDX license IDs in spec +* Tue Nov 15 2022 Eike Rathke - 102.5.0-2 +- Update to 102.5.0 build2 -* Wed Nov 02 2022 Eike Rathke - 102.4.1-1 -- Update to 102.4.1 +* Fri Nov 11 2022 Eike Rathke - 102.5.0-1 +- Update to 102.5.0 build1 -* Wed Oct 19 2022 Eike Rathke - 102.4.0-1 -- Update to 102.4.0 +* Mon Oct 17 2022 Eike Rathke - 102.4.0-1 +- Update to 102.4.0 build1 -* Thu Sep 29 2022 Eike Rathke - 102.3.1-1 -- Update to 102.3.1 +* Wed Oct 12 2022 Jan Horak - 102.3.0-4 +- Fix for expat CVE-2022-40674 -* Wed Sep 21 2022 Eike Rathke - 102.3.0-1 -- Update to 102.3.0 +* Fri Sep 16 2022 Jan Horak - 102.3.0-3 +- Update to 102.3.0 build1 -* Thu Sep 01 2022 Eike Rathke - 102.2.1-1 -- Update to 102.2.1 +* Fri Aug 19 2022 Eike Rathke - 91.13.0-1 +- Update to 91.13.0 build1 -* Tue Aug 23 2022 Eike Rathke - 102.2.0-1 -- Update to 102.2.0 +* Mon Jul 25 2022 Eike Rathke - 91.12.0-1 +- Update to 91.12.0 build1 -* Wed Aug 3 2022 Jan Horak - 102.1.0-1 -- Update to 102.1.0 +* Tue Jun 28 2022 Eike Rathke - 91.11.0-2 +- Update to 91.11.0 build2 -* Thu Jul 28 2022 Eike Rathke - 91.12.0-1 -- Update to 91.12.0 +* Thu Jun 23 2022 Eike Rathke - 91.11.0-1 +- Update to 91.11.0 build1 -* Sat Jul 23 2022 Fedora Release Engineering - 91.11.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild +* Mon May 30 2022 Eike Rathke - 91.10.0-1 +- Update to 91.10.0 build1 -* Mon Jul 11 2022 Eike Rathke - 91.11.0-3 -- Fix f37 FTBFS Python 3.11 API incompatibilities +* Mon May 23 2022 Jan Horak - 91.9.1-1 +- Update to 91.9.1 build1 -* Tue Jul 05 2022 Tom Stellard - 91.11.0-2 -- Clean up macros that allow building with clang +* Tue May 03 2022 Eike Rathke - 91.9.0-3 +- Update to 91.9.0 build3 -* Wed Jun 29 2022 Eike Rathke - 91.11.0-1 -- Update to 91.11.0 +* Mon May 02 2022 Eike Rathke - 91.9.0-2 +- Update to 91.9.0 build2 -* Tue May 31 2022 Eike Rathke - 91.10.0-1 -- Update to 91.10.0 - -* Tue May 24 2022 Eike Rathke - 91.9.1-1 -- Update to 91.9.1 - -* Wed May 04 2022 Eike Rathke - 91.9.0-1 +* Thu Apr 28 2022 Eike Rathke - 91.9.0-1 - Update to 91.9.0 -* Wed Apr 20 2022 Parag Nemade - 91.8.0-2 -- Update hunspell dictionary path - F36 Change https://fedoraproject.org/wiki/Changes/Hunspell_dictionary_dir_change - -* Mon Apr 11 2022 Eike Rathke - 91.8.0-1 +* Tue Apr 05 2022 Eike Rathke - 91.8.0-1 - Update to 91.8.0 -* Tue Mar 15 2022 Eike Rathke - 91.7.0-1 -- Update to 91.7.0 -- plus patches to bundled expat against CVE-2022-25235 CVE-2022-25236 CVE-2022-25315 +* Tue Mar 08 2022 Eike Rathke - 91.7.0-2 +- Update to 91.7.0 build2 -* Mon Mar 7 2022 Jan Horak - 91.6.2-1 -- Update to 91.6.2 - -* Mon Feb 28 2022 Jan Horak - 91.6.1-1 -- Update to 91.6.1 build1 +* Thu Mar 03 2022 Eike Rathke - 91.7.0-1 +- Update to 91.7.0 build1 * Fri Feb 11 2022 Jan Horak - 91.6.0-2 -- Supply stock icon to the appdata file +- Move appdata to metainfo and use stock icon instead of remote -* Wed Feb 09 2022 Jan Horak - 91.6.0-1 +* Mon Feb 07 2022 Eike Rathke - 91.6.0-1 - Update to 91.6.0 build1 -* Wed Feb 09 2022 Jan Horak - 91.5.0-3 -- Put appdata.xml to medainfo location +* Tue Jan 18 2022 Jan Horak - 91.5.0-3 +- Using upstream appdata file -* Sat Jan 22 2022 Fedora Release Engineering - 91.5.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild +* Fri Jan 14 2022 Jan Horak - 91.5.0-2 +- Enabled optimalization for s390x -* Tue Jan 18 2022 Jan Horak - 91.5.0-1 +* Fri Jan 07 2022 Eike Rathke - 91.5.0-1 - Update to 91.5.0 build1 -* Wed Dec 15 2021 Jan Horak - 91.4.0-1 +* Mon Dec 06 2021 Eike Rathke - 91.4.0-2 - Update to 91.4.0 build2 -- Enabled wayland backend for all DE (thanks to Timothée Ravier ) -* Tue Nov 09 2021 Jan Horak - 91.3.0-1 +* Wed Dec 01 2021 Eike Rathke - 91.4.0-1 +- Update to 91.4.0 build1 + +* Tue Nov 02 2021 Eike Rathke - 91.3.0-2 - Update to 91.3.0 build2 -* Fri Oct 15 2021 Jan Horak - 91.2.0-1 -- Update to 91.2.0 build1 +* Mon Nov 01 2021 Eike Rathke - 91.3.0-1 +- Update to 91.3.0 build1 -* Tue Sep 07 2021 Jan Horak - 91.1.0-1 -- Update to 91.1.0 build2 +* Fri Oct 08 2021 Eike Rathke - 91.2.0-1 +- Update to 91.2.0 -* Thu Aug 26 2021 Jan Horak - 91.0.3-2 -- Update to 91.0.3 build1 +* Tue Sep 07 2021 Eike Rathke - 78.14.0-1 +- Update to 78.14.0 -* Mon Aug 23 2021 Jan Horak - 91.0.2-1 -- Update to 91.0.2 build1 +* Thu Aug 19 2021 Carlos O'Donell - 78.13.0-2 +- Rebuilt for libffi 3.4.2 SONAME transition. + Related: rhbz#1891914 -* Mon Aug 16 2021 Jan Horak - 91.0-1 -- Update to 91.0 build1 +* Tue Aug 10 2021 Eike Rathke - 78.13.0-1 +- Update to 78.13.0 -* Fri Jul 23 2021 Fedora Release Engineering - 78.12.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild +* Tue Aug 10 2021 Mohan Boddu - 78.12.0-4 +- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags + Related: rhbz#1991688 -* Wed Jul 21 2021 Jan Horak - 78.12.0-1 +* Fri Jul 30 2021 Tomas Popela - 78.12.0-3 +- Add script to process the official tarball to comply with PELC review +- Fix the build with newer glibc + +* Mon Jul 12 2021 Eike Rathke - 78.12.0-2 - Update to 78.12.0 build2 -* Wed Jun 02 2021 Jan Horak - 78.11.0-1 -- Update to 78.11.0 build1 +* Thu Jul 08 2021 Eike Rathke - 78.12.0-1 +- Update to 78.12.0 build1 -* Sat May 15 2021 Fabio Valentini - 78.10.1-3 -- Split off librnp and make it possible to use a different OpenPGP backend. +* Wed Jun 30 2021 Jan Horak - 78.11.0-2 +- Added bundled libraries, update to 78.11 -* Wed May 05 2021 Jan Horak - 78.10.1-2 -- Fixed source0 +* Tue Jun 22 2021 Mohan Boddu - 78.8.0-5 +- Rebuilt for RHEL 9 BETA for openssl 3.0 + Related: rhbz#1971065 -* Tue May 04 2021 Jan Horak - 78.10.1-1 -- Update to 78.10.1 build1 +* Fri Apr 16 2021 Mohan Boddu - 78.8.0-4 +- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 +- Fixing MOZ_SMP_FLAGS -* Tue Mar 30 2021 Jonathan Wakely - 78.8.1-2 -- Rebuilt for removed libstdc++ symbol (#1937698) +* Mon Mar 01 2021 Jan Horak - 78.8.0-2 +- Removed autoconf213 dependency -* Mon Mar 15 2021 Jan Horak - 78.8.1-1 -- Update to 78.8.1 build1 - -* Thu Feb 18 2021 Jan Horak - 78.8.0-1 +* Mon Feb 22 2021 Jan Horak - 78.8.0-1 - Update to 78.8.0 build1 -* Thu Jan 28 2021 Jan Horak - 78.7.0-2 -- Fixing package requires/provides the same way as provided by kalev for Firefox +* Tue Jan 12 2021 Eike Rathke - 78.6.1-1 +- Update to 78.6.1 -* Wed Jan 27 2021 Jan Horak - 78.7.0-1 -- Update to 78.7.0 build2 +* Tue Dec 15 2020 Eike Rathke - 78.6.0-1 +- Update to 78.6.0 -* Wed Jan 20 2021 Orion Poplawski - 78.6.1-2 -- Own /usr/lib*/thunderbird/gtk2 directory -- Provide /etc/thunderbird/pref (bug #1525709) -- Filter package provides and requires +* Fri Dec 04 2020 Jan Horak - 78.5.1-1 +- Update to 78.5.1 build1 -* Thu Jan 14 2021 Jan Horak - 78.6.1-1 -- Update to 78.6.1 build1 - -* Tue Dec 15 2020 Jan Horak - 78.6.0-1 -- Update to 78.6.0 build1 - -* Mon Dec 14 2020 Martin Stransky - 78.5.0-2 -- Added fix for rhbz#1907267 (Thunderbird on Wayland launcher - does not show up as 'running' in the dash) - -* Wed Nov 25 2020 Jan Horak - 78.5.0-1 +* Wed Nov 18 2020 Eike Rathke - 78.5.0-1 - Update to 78.5.0 build3 -* Thu Nov 12 2020 Jan Horak - 78.4.3-1 -- Update to 78.4.3 build1 +* Thu Nov 12 2020 Eike Rathke - 78.4.3-1 +- Update to 78.4.3 -* Mon Nov 09 2020 Kalev Lember - 78.4.0-3 -- Add release tag to appdata - -* Thu Oct 22 2020 Jan Horak - 78.4.0-2 +* Wed Oct 21 2020 Eike Rathke - 78.4.0-1 - Update to 78.4.0 build1 +- Disabled telemetry -* Wed Oct 07 2020 Jan Horak - 78.3.1-2 -- Reenable s390x - -* Wed Sep 30 2020 Jan Horak - 78.3.1-1 +* Tue Sep 29 2020 Jan Horak - 78.3.1-1 - Update to 78.3.1 build1 -* Tue Sep 08 2020 Jan Horak - 68.12.0-1 +* Sat Sep 19 2020 Jan Horak - 78.3.0-3 +- Update to 78.3.0 build1 +- Remove librdp.so as long as we cannot ship it in RHEL + +* Tue Sep 08 2020 Jan Horak - 78.2.1-1 +- Update to 78.2.1 build1 + +* Wed Sep 02 2020 Jan Horak - 68.12.0-1 - Update to 68.12.0 build1 -* Thu Aug 06 2020 Jan Horak - 68.11.0-1 +* Tue Aug 04 2020 Jan Horak - 68.11.0-1 - Update to 68.11.0 build1 -* Sat Aug 01 2020 Fedora Release Engineering - 68.10.0-3 -- Second attempt - Rebuilt for - https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Wed Jul 29 2020 Fedora Release Engineering - 68.10.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Thu Jul 09 2020 Jan Horak - 68.10.0-1 +* Wed Jul 08 2020 Jan Horak - 68.10.0-1 - Update to 68.10.0 build1 -* Mon Jun 08 2020 Jan Horak - 68.9.0-1 +* Fri Jun 05 2020 Jan Horak - 68.9.0-1 - Update to 68.9.0 build1 -* Fri May 15 2020 Martin Stransky - 68.8.0-2 -- Use D-Bus remote on Wayland (rhbz#1817330). - -* Thu May 14 2020 Jan Horak - 68.8.0-1 +* Tue May 05 2020 Jan Horak - 68.8.0-1 - Update to 68.8.0 build2 -* Wed Apr 15 2020 Jan Horak - 68.7.0-2 -- Removed gconf-2.0 build requirement, added perl-interpreter instead to fulfill - perl dependency - -* Thu Apr 09 2020 Jan Horak - 68.7.0-1 +* Tue Apr 14 2020 Jan Horak - 68.7.0-1 - Update to 68.7.0 build1 * Fri Mar 13 2020 Jan Horak - 68.6.0-1 - Update to 68.6.0 build2 -* Thu Mar 03 2020 David Auer - 68.5.0-2 -- Fix spellcheck (rhbz#1753011) - * Thu Feb 13 2020 Jan Horak - 68.5.0-1 - Update to 68.5.0 build1 -* Fri Jan 31 2020 Fedora Release Engineering - 68.4.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Mon Jan 13 2020 Jan Horak - 68.4.1-1 +* Mon Jan 13 2020 Jan Horak - 68.4.1-2 - Update to 68.4.1 build1 -* Tue Dec 17 2019 Jan Horak - 68.3.1-1 -- Update to 68.3.1 build1 - -* Mon Dec 9 2019 Martin Stransky - 68.3.0-2 -- Added fix for mzbz#1576268 - -* Tue Dec 03 2019 Jan Horak - 68.3.0-1 +* Mon Dec 02 2019 Jan Horak - 68.3.0-2 - Update to 68.3.0 build2 -* Tue Nov 05 2019 Jan Horak - 68.2.2-1 -- Update to 68.2.2 build1 +* Fri Oct 25 2019 Jan Horak - 68.2.0-2 +- Added patch for TLS 1.3 support. -* Fri Nov 01 2019 Jan Horak - 68.2.1-1 -- Update to 68.2.1 build1 - -* Tue Oct 29 2019 Jan Horak - 68.2.0-1 +* Tue Oct 22 2019 Jan Horak - 68.2.0-1 - Update to 68.2.0 -* Wed Oct 23 2019 Jan Horak - 68.1.1-4 -- Added symbolic icon - -* Thu Oct 3 2019 Jan Horak - 68.1.1-3 -- Allow downgrades of the profile because after distro upgrade there is a chance - that the the downgrade refusal dialog is shown. - -* Fri Sep 27 2019 Jan Horak - 68.1.1-1 +* Thu Oct 3 2019 Jan Horak - 68.1.1-2 - Update to 68.1.1 -* Thu Sep 26 2019 Martin Stransky - 68.1.0-2 -- Allow profile downgrade +* Wed Sep 4 2019 Jan Horak - 60.9.0-2 +- Update to 60.9.0 -* Thu Sep 12 2019 Jan Horak - 68.1.0-1 -- Update to 68.1.0 +* Thu Jul 4 2019 Martin Stransky - 60.8.0-1 +- Updated to 60.8.0 -* Thu Aug 29 2019 Jan Horak - 68.0-1 -- Update to 68.0 +* Wed Jul 3 2019 Martin Stransky - 60.7.2-3 +- Rebuild to fix rhbz#1725919 - Thunderbird fails to authenticate + with gmail with ssl/tls and OAuth2. -* Sat Jul 27 2019 Fedora Release Engineering - 60.8.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Wed Jul 10 2019 Martin Stransky - 60.8.0-1 -- Update to 60.8.0 - -* Fri Jun 21 2019 Jan Horak - 60.7.2-2 -- Update to 60.7.2 build 2 - -* Thu Jun 20 2019 Jan Horak - 60.7.2-1 -- Update to 60.7.2 - -* Tue Jun 18 2019 Jan Horak - 60.7.1-1 -- Update to 60.7.1 - -* Mon May 20 2019 Martin Stransky - 60.7.0-1 -- Update to 60.7.0 - -* Wed May 15 2019 Martin Stransky - 60.6.1-5 -- Fixed startup crashes (rhbz#1709373, rhbz#1685276, rhbz#1708611) - -* Fri Apr 12 2019 Martin Stransky - 60.6.1-4 -- Addef fix for mozbz#1508378 - -* Wed Apr 3 2019 Martin Stransky - 60.6.1-3 -- Added fixes for mozbz#1526243, mozbz#1540145, mozbz#526293 - -* Tue Mar 26 2019 Martin Stransky - 60.6.1-2 -- Added rawhide build fix - -* Mon Mar 25 2019 Martin Stransky - 60.6.1-1 -- Update to 60.6.1 - -* Mon Mar 18 2019 Martin Stransky - 60.6.0-1 -- Update to 60.6.0 - -* Wed Mar 6 2019 Martin Stransky - 60.5.3-1 -- Update to 60.5.3 - -* Sat Mar 02 2019 Kalev Lember - 60.5.1-3 -- Fix hunspell dictionary symlink when built for flatpak - -* Thu Feb 21 2019 Kalev Lember - 60.5.1-2 -- Avoid hardcoding /usr in launcher scripts - -* Mon Feb 18 2019 Martin Stransky - 60.5.1-1 -- Update to 60.5.1 - -* Tue Feb 05 2019 Martin Stransky - 60.5.0-4 -- Use MOZ_ENABLE_WAYLAND for Wayland launcher. - -* Tue Feb 05 2019 Martin Stransky - 60.5.0-3 -- Updated Wayland patches - -* Sun Feb 03 2019 Fedora Release Engineering - 60.5.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Wed Jan 30 2019 Martin Stransky - 60.5.0-1 -- Update to 60.5.0 - -* Wed Jan 2 2019 Jan Horak - 60.4.0-1 -- Update to 60.4.0 - -* Wed Dec 5 2018 Jan Horak - 60.3.3-1 -- Update to 60.3.3 - -* Thu Nov 22 2018 Jan Horak - 60.3.1-1 -- Update to 60.3.1 - -* Thu Nov 22 2018 Martin Stransky - 60.3.0-6 -- Enabled DBus remote. - -* Wed Nov 21 2018 Martin Stransky - 60.3.0-5 -- Backported Wayland related code from Firefox 63 -- Added fix for mozbz#1507475 - crash when display changes - -* Tue Nov 20 2018 Martin Stransky - 60.3.0-4 -- Build with Wayland support -- Enabled DBus remote for Wayland - -* Tue Nov 13 2018 Caolán McNamara - 60.3.0-3 -- rebuild for hunspell-1.7.0 - -* Tue Nov 6 2018 Martin Stransky - 60.3.0-2 -- Disabled DBus remote - -* Tue Oct 30 2018 Jan Horak - 60.3.0-1 -- Update to 60.3.0 - -* Wed Oct 3 2018 Jan Horak - 60.2.1-2 -- Update to 60.2.1 -- Added fix for rhbz#1546988 - -* Wed Aug 15 2018 Jan Horak - 60.0-1 -- Update to 60.0 -- Removing gdata-provider extension because it's no longer provided by Thunderbird - -* Sat Jul 14 2018 Fedora Release Engineering - 52.9.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Tue Jul 10 2018 Jan Horak - 52.9.1-1 -- Update to 52.9.1 - -* Tue May 22 2018 Jan Horak - 52.8.0-1 -- Update to 52.8.0 - -* Tue Mar 27 2018 Jan Horak - 52.7.0-1 -- Update to 52.7.0 - -* Fri Feb 09 2018 Fedora Release Engineering - 52.6.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Mon Jan 29 2018 Jan Horak - 52.6.0-1 -- Update to 52.6.0 - -* Tue Jan 2 2018 Jan Horak - 52.5.2-1 -- Update to 52.5.2 - -* Mon Dec 04 2017 Caolán McNamara - 52.5.0-2 -- rebuild for hunspell-1.6.2 - -* Tue Nov 28 2017 Jan Horak - 52.5.0-1 -- Update to 52.5.0 - -* Tue Oct 24 2017 Kai Engert - 52.4.0-3 -- Backport several upstream patches for NSS sql db compatibility, - see rhbz#1496565 - -* Wed Oct 4 2017 Jan Horak - 52.4.0-2 -- Update to 52.4.0 (b2) - -* Mon Aug 21 2017 Jan Horak - 52.3.0-1 -- Update to 52.3.0 - -* Thu Aug 03 2017 Fedora Release Engineering - 52.2.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Thu Jul 27 2017 Fedora Release Engineering - 52.2.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Thu Jun 29 2017 Jan Horak - 52.2.1-1 -- Update to 52.2.1 - -* Thu Jun 15 2017 Jan Horak - 52.2.0-1 -- Update to 52.2.0 - -* Tue Jun 13 2017 Jan Horak - 52.1.1-2 -- Enable aarch64 builds again - -* Fri Jun 2 2017 Jan Horak - 52.1.1-1 -- Update to 52.1.1 - -* Mon May 15 2017 Fedora Release Engineering - 52.1.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild - -* Tue May 2 2017 Jan Horak - 52.1.0-1 -- Update to 52.1.0 -- Added patch for rhbz#1442903 - crash when compacting folder - -* Wed Apr 12 2017 Jan Horak - 52.0-2 -- Added fix for rhbz#1441601 - problems with TLS server certificates - -* Tue Apr 4 2017 Jan Horak - 52.0-1 -- Update to 52.0 - -* Wed Mar 8 2017 Jan Horak - 45.8.0-1 -- Update to 45.8.0 - -* Tue Feb 21 2017 Jan Horak - 45.7.0-3 -- Added patch for gcc7 from icecat package - -* Sat Feb 11 2017 Fedora Release Engineering - 45.7.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Tue Jan 31 2017 Jan Horak - 45.7.0-1 -- Update to 45.7.0 - -* Fri Jan 20 2017 Martin Stransky - 45.6.0-6 -- Rebuilt for new nss 3.28.1 (mozbz#1290037) - -* Fri Jan 6 2017 Jan Horak - 45.6.0-3 -- Fixed calendar locales: rhbz#1410740 - -* Mon Dec 19 2016 Jan Horak - 45.6.0-2 -- Bump gdata subpackage version - -* Fri Dec 16 2016 Martin Stransky - 45.6.0-1 -- New upstream (45.6.0) - -* Tue Dec 13 2016 Caolán McNamara - 45.5.1-2 -- rebuild for hunspell-1.5.4 - -* Thu Dec 1 2016 Jan Horak - 45.5.1-1 -- Update to 45.5.1 - -* Mon Nov 28 2016 Jan Horak - 45.5.0-1 -- Update to 45.5.0 - -* Thu Oct 6 2016 Jan Horak - 45.4.0-1 -- Update to 45.4.0 - -* Thu Sep 22 2016 Jan Horak - 45.3.0-2 -- Removed dependency on cairo (bz#1377910) - -* Thu Sep 1 2016 Jan Horak - 45.3.0-1 -- Update to 45.3.0 - -* Fri Jul 22 2016 Tom Callaway - 45.2.0-2 -- rebuild for libvpx 1.6.0 - -* Mon Jul 11 2016 Jan Horak - 45.2.0-1 -- Update to 45.2.0 - -* Mon Jun 6 2016 Jan Horak - 45.1.1-2 -- Update to 45.1.1 - -* Fri May 20 2016 Jan Horak - 45.1.0-4 -- Enabled JIT again - -* Tue May 17 2016 Jan Horak - 45.1.0-2 -- Update to 45.1.0 - -* Wed Apr 27 2016 Peter Robinson 45.0-4 -- Added fix for rhbz#1315225 - ppc64le/aarch64 build fixes - -* Mon Apr 18 2016 Caolán McNamara - 45.0-3 -- rebuild for hunspell 1.4.0 - -* Tue Apr 12 2016 Jan Horak - 45.0-2 -- Update to 45.0 - -* Thu Mar 24 2016 Jan Horak - 38.7.1-1 -- Update to 38.7.1 - -* Fri Feb 26 2016 Martin Stransky - 38.6.0-6 -- Disabled gcc6 NULL pointer optimization (rhbz#1311886) again - due to unfixed various TB parts - -* Thu Feb 25 2016 Martin Stransky - 38.6.0-5 -- Added upstream gcc6 fix (mozbz#1167145) - -* Thu Feb 25 2016 Martin Stransky - 38.6.0-4 -- Disabled gcc6 NULL pointer optimization (rhbz#1311886) - -* Tue Feb 23 2016 Martin Stransky - 38.6.0-3 -- Disabled system sqlite due to rhbz#1311032 - -* Mon Feb 22 2016 Martin Stransky - 38.6.0-2 -- Added workarounf for mozbz#1245783 - gcc6 JIT crashes - -* Tue Feb 16 2016 Jan Horak - 38.6.0-1 -- Update to 38.6.0 - -* Fri Feb 05 2016 Fedora Release Engineering - 38.5.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Mon Jan 4 2016 Jan Horak - 38.5.0-1 -- Update to 38.5.0 - -* Tue Dec 1 2015 Tom Callaway - 38.4.0-2 -- rebuild for libvpx 1.5.0 - -* Mon Nov 30 2015 Jan Horak - 38.4.0-1 -- Update to 38.4.0 - -* Fri Nov 27 2015 Martin Stransky - 31.3.0-3 -- Enabled hardened builds (rhbz#1283945) - -* Fri Oct 16 2015 Kalev Lember - 38.3.0-2 -- Fix accidentally commented out AppData screenshot - -* Tue Sep 29 2015 Jan Horak - 38.3.0-1 -- Update to 38.3.0 - -* Thu Aug 20 2015 Jan Horak - 38.2.0-2 -- Thunderbird provides thunderbird-lightning now - -* Wed Aug 19 2015 Jan Horak - 38.2.0-1 -- Update to 38.2.0 - -* Thu Jul 9 2015 Jan Horak - 38.1.0-1 -- Update to 38.1.0 - -* Thu Jun 18 2015 Jan Horak - 38.0.1-3 -- Bundling calendar extension - -* Tue Jun 9 2015 Jan Horak - 38.0.1-1 -- Update to 38.0.1 - -* Tue May 12 2015 Martin Stransky - 31.7.0-1 -- Update to 31.7.0 - -* Mon Apr 6 2015 Tom Callaway - 31.6.0-2 -- rebuild for libvpx 1.4.0 -- stop using compat defines, they went away in libvpx 1.4.0 - -* Tue Mar 31 2015 Jan Horak - 31.6.0-1 -- Update to 31.6.0 - -* Thu Mar 26 2015 Richard Hughes - 31.5.0-3 -- Add an AppData file for the software center - -* Thu Mar 19 2015 Jan Horak - 31.5.0-2 -- Fixed build flags for s390(x) - -* Tue Feb 24 2015 Jan Horak - 31.5.0-1 -- Update to 31.5.0 - -* Fri Feb 20 2015 Martin Stransky - 31.4.0-2 -- Fixed rhbz#1187746 - GLib allocation error - when starting thunderbird - -* Wed Jan 14 2015 Jan Horak - 31.4.0-1 -- Update to 31.4.0 - -* Mon Jan 5 2015 Jan Horak - 31.3.0-2 -- Exclude ppc64 arch for epel7 - -* Mon Dec 1 2014 Jan Horak - 31.3.0-1 -- Update to 31.3.0 - -* Tue Oct 14 2014 Jan Horak - 31.2.0-1 -- Update to 31.2.0 - -* Wed Oct 1 2014 Martin Stransky - 31.1.1-2 -- Sync prefs with Firefox - -* Thu Sep 11 2014 Jan Horak - 31.1.1-1 -- Update to 31.1.1 - -* Mon Sep 1 2014 Jan Horak - 31.1.0-1 -- Update to 31.1.0 - -* Tue Aug 26 2014 Karsten Hopp 31.0-5 -- ppc64 patch 304 got removed and isn't required anymore (mozbz#973977) - -* Mon Aug 18 2014 Fedora Release Engineering - 31.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Mon Aug 4 2014 Peter Robinson 31.0-3 -- Build with system FFI as per firefox/xulrunner (fixes aarch64) - -* Wed Jul 30 2014 Martin Stransky - 31.0-2 -- Added patch for mozbz#858919 - -* Tue Jul 29 2014 Martin Stransky - 31.0-1 -- Update to 31.0 - -* Tue Jul 22 2014 Jan Horak - 24.7.0-1 -- Update to 24.7.0 - -* Mon Jun 9 2014 Jan Horak - 24.6.0-1 -- Update to 24.6.0 - -* Sun Jun 08 2014 Fedora Release Engineering - 24.5.0-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Fri May 23 2014 Brent Baude - 24.5.0-5 -- Moving the ppc64 conditional up before the cd so it will -- apply cleanly - -* Fri May 23 2014 Martin Stransky - 24.5.0-4 -- Added a build fix for ppc64 - rhbz#1100495 - -* Mon May 5 2014 Jan Horak - 24.5.0-3 -- Fixed find requires - -* Mon Apr 28 2014 Jan Horak - 24.5.0-1 -- Update to 24.5.0 - -* Tue Apr 22 2014 Jan Horak - 24.4.0-2 -- Added support for ppc64le - -* Tue Mar 18 2014 Jan Horak - 24.4.0-1 -- Update to 24.4.0 - -* Mon Feb 3 2014 Jan Horak - 24.3.0-1 -- Update to 24.3.0 - -* Mon Dec 16 2013 Martin Stransky - 24.2.0-4 -- Fixed rhbz#1024232 - thunderbird: squiggly lines used - for spelling correction disappear randomly - -* Fri Dec 13 2013 Martin Stransky - 24.2.0-3 -- Build with -Werror=format-security (rhbz#1037353) - -* Wed Dec 11 2013 Martin Stransky - 24.2.0-2 -- rhbz#1001998 - added a workaround for system notifications - -* Mon Dec 9 2013 Jan Horak - 24.2.0-1 -- Update to 24.2.0 - -* Sat Nov 02 2013 Dennis Gilmore - 24.1.0-2 -- remove ExcludeArch: armv7hl - -* Wed Oct 30 2013 Jan Horak - 24.1.0-1 -- Update to 24.1.0 - -* Thu Oct 17 2013 Martin Stransky - 24.0-4 -- Fixed rhbz#1005611 - BEAST workaround not enabled in Firefox - -* Wed Sep 25 2013 Jan Horak - 24.0-3 -- Update to 24.0 - -* Mon Sep 23 2013 Jan Horak - 17.0.9-1 -- Update to 17.0.9 ESR - -* Mon Aug 5 2013 Jan Horak - 17.0.8-1 -- Update to 17.0.8 - -* Sun Aug 04 2013 Fedora Release Engineering - 17.0.7-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Tue Jun 25 2013 Jan Horak - 17.0.7-1 -- Update to 17.0.7 - -* Wed Jun 12 2013 Jan Horak - 17.0.6-2 -- Fixed rhbz#973371 - unable to install addons - -* Tue May 14 2013 Jan Horak - 17.0.6-1 -- Update to 17.0.6 - -* Tue Apr 2 2013 Jan Horak - 17.0.5-1 -- Update to 17.0.5 - -* Mon Mar 11 2013 Jan Horak - 17.0.4-1 -- Update to 17.0.4 - -* Tue Feb 19 2013 Jan Horak - 17.0.3-1 -- Update to 17.0.3 - -* Fri Feb 15 2013 Fedora Release Engineering - 17.0.2-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild - -* Tue Jan 15 2013 Martin Stransky - 17.0.2-3 -- Added fix for NM regression (mozbz#791626) - -* Tue Jan 15 2013 Jan Horak - 17.0.2-2 -- Added mozilla-746112 patch to fix crash on ppc(64) - -* Thu Jan 10 2013 Jan Horak - 17.0.2-1 -- Update to 17.0.2 - -* Mon Nov 19 2012 Jan Horak - 17.0-1 -- Update to 17.0 - -* Mon Oct 29 2012 Jan Horak - 16.0.2-1 -- Update to 16.0.2 - -* Tue Oct 16 2012 Jan Horak - 16.0.1-2 -- Fixed nss and nspr versions - -* Thu Oct 11 2012 Jan Horak - 16.0.1-1 -- Update to 16.0.1 - -* Tue Oct 9 2012 Jan Horak - 16.0-1 -- Update to 16.0 - -* Tue Sep 18 2012 Dan Horák - 15.0.1-3 -- Added fix for rhbz#855923 - TB freezes on Fedora 18 for PPC64 - -* Fri Sep 14 2012 Martin Stransky - 15.0.1-2 -- Added build flags for second arches - -* Tue Sep 11 2012 Jan Horak - 15.0.1-1 -- Update to 15.0.1 - -* Fri Sep 7 2012 Jan Horak - 15.0-2 -- Added workaround fix for PPC (rbhz#852698) - -* Mon Aug 27 2012 Jan Horak - 15.0-1 -- Update to 15.0 - -* Wed Aug 1 2012 Martin Stransky - 14.0-4 -- Removed StartupWMClass (rhbz#844863) -- Fixed -g parameter -- Removed thunderbird-devel before packing to avoid debugsymbols duplicities (rhbz#823940) - -* Sat Jul 21 2012 Fedora Release Engineering - 14.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Tue Jul 17 2012 Jan Horak - 14.0-1 -- Update to 14.0 - -* Fri Jun 15 2012 Jan Horak - 13.0.1-1 -- Update to 13.0.1 - -* Tue Jun 5 2012 Jan Horak - 13.0-1 -- Update to 13.0 - -* Mon May 7 2012 Martin Stransky - 12.0.1-2 -- Fixed #717245 - adhere Static Library Packaging Guidelines - -* Mon Apr 30 2012 Jan Horak - 12.0.1-1 -- Update to 12.0.1 - -* Tue Apr 24 2012 Jan Horak - 12.0-1 -- Update to 12.0 - -* Mon Apr 16 2012 Peter Robinson - 11.0.1-2 -- Add upstream patch to fix FTBFS on ARM - -* Thu Mar 29 2012 Jan Horak - 11.0.1-1 -- Update to 11.0.1 - -* Thu Mar 22 2012 Jan Horak - 11.0-6 -- Added translations to thunderbird.desktop file - -* Fri Mar 16 2012 Martin Stransky - 11.0-5 -- gcc 4.7 build fixes - -* Wed Mar 14 2012 Peter Robinson - 11.0-4 -- Add ARM configuration options - -* Wed Mar 14 2012 Martin Stransky - 11.0-3 -- Build with system libvpx - -* Tue Mar 13 2012 Martin Stransky - 11.0-1 -- Update to 11.0 - -* Thu Feb 23 2012 Jan Horak - 10.0.1-3 -- Added fix for proxy settings mozbz#682832 - -* Thu Feb 16 2012 Martin Stransky - 10.0.1-2 -- Added fix for mozbz#727401 - -* Thu Feb 9 2012 Jan Horak - 10.0.1-1 -- Update to 10.0.1 - -* Mon Feb 6 2012 Martin Stransky - 10.0-2 -- gcc 4.7 build fixes - -* Tue Jan 31 2012 Jan Horak - 10.0-1 -- Update to 10.0 - -* Sat Jan 14 2012 Fedora Release Engineering - 9.0-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - -* Thu Jan 05 2012 Dan Horák - 9.0-6 -- disable jemalloc on s390(x) (taken from xulrunner) - -* Wed Jan 04 2012 Dan Horák - 9.0-5 -- fix build on secondary arches (cherry-picked from 13afcd4c097c) - -* Thu Dec 22 2011 Jan Horak - 9.0-4 -- Update to 9.0 - -* Fri Dec 9 2011 Martin Stransky - 8.0-4 -- enabled gio support (#760644) - -* Tue Nov 29 2011 Jan Horak - 8.0-3 -- Fixed s390x issues - -* Thu Nov 10 2011 Jan Horak - 8.0-2 -- Enable Mozilla's crash reporter again for all archs -- Temporary workaround for langpacks -- Disabled addon check UI (#753551) - -* Tue Nov 8 2011 Jan Horak - 8.0-1 -- Update to 8.0 - -* Tue Oct 18 2011 Martin Stransky - 7.0.1-3 -- Added NM patches (mozbz#627672, mozbz#639959) - -* Wed Oct 12 2011 Dan Horák - 7.0.1-2 -- fix build on secondary arches (copied from xulrunner) - -* Fri Sep 30 2011 Jan Horak - 7.0.1-1 -- Update to 7.0.1 - -* Tue Sep 27 2011 Jan Horak - 7.0-1 -- Update to 7.0 - -* Tue Sep 6 2011 Jan Horak - 6.0.2-1 -- Update to 6.0.2 - -* Wed Aug 31 2011 Jan Horak - 6.0-3 -- Distrust a specific Certificate Authority - -* Wed Aug 31 2011 Dan Horák - 6.0-2 -- add secondary-ipc patch from xulrunner - -* Tue Aug 16 2011 Jan Horak - 6.0-1 -- Update to 6.0 - -* Tue Aug 16 2011 Remi Collet 5.0-4 -- Don't unzip the langpacks - -* Mon Aug 15 2011 Jan Horak - 5.0-3 -- Rebuild due to rhbz#728707 - -* Wed Jul 20 2011 Dan Horák - 5.0-2 -- add xulrunner patches for secondary arches - -* Tue Jun 28 2011 Jan Horak - 5.0-1 -- Update to 5.0 - -* Tue Jun 21 2011 Jan Horak - 3.1.11-1 -- Update to 3.1.11 - -* Wed May 25 2011 Caolán McNamara - 3.1.10-2 -- rebuild for new hunspell - -* Thu Apr 28 2011 Jan Horak - 3.1.10-1 -- Update to 3.1.10 - -* Thu Apr 21 2011 Christopher Aillon - 3.1.9-7 -- Make gvfs-open launch a compose window (salimma) -- Spec file cleanups (salimma, caillon) -- Split out mozilla crashreporter symbols to its own debuginfo package (caillon) - -* Sat Apr 2 2011 Christopher Aillon - 3.1.9-6 -- Drop gio support: the code hooks don't exist yet for TB 3.1.x - -* Fri Apr 1 2011 Orion Poplawski - 3.1.9-5 -- Enable startup notification - -* Sun Mar 20 2011 Dan Horák - 3.1.9-4 -- updated the s390 build patch - -* Fri Mar 18 2011 Jan Horak - 3.1.9-3 -- Removed gnome-vfs2, libgnomeui and libgnome from build requires - -* Wed Mar 9 2011 Jan Horak - 3.1.9-2 -- Disabled gnomevfs, enabled gio - -* Mon Mar 7 2011 Jan Horak - 3.1.9-1 -- Update to 3.1.9 - -* Tue Mar 1 2011 Jan Horak - 3.1.8-3 -- Update to 3.1.8 - -* Wed Feb 9 2011 Christopher Aillon - 3.1.7-6 -- Drop the -lightning subpackage, it needs to be in its own SRPM - -* Mon Feb 7 2011 Christopher Aillon - 3.1.7-5 -- Bring back the default mailer check but fix up the directory - -* Wed Dec 15 2010 Jan Horak - 3.1.7-4 -- Mozilla crash reporter enabled - -* Thu Dec 9 2010 Jan Horak - 3.1.7-2 -- Fixed useragent - -* Thu Dec 9 2010 Jan Horak - 3.1.7-1 -- Update to 3.1.7 - -* Sat Nov 27 2010 Remi Collet - 3.1.6-8 -- fix cairo + nspr required version -- lightning: fix thunderbird version required -- lightning: fix release (b3pre) -- lightning: clean install - -* Mon Nov 22 2010 Jan Horak - 3.1.6-7 -- Added x-scheme-handler/mailto to thunderbird.desktop file - -* Mon Nov 8 2010 Jan Horak - 3.1.6-4 -- Added libnotify patch -- Removed dependency on static libraries - -* Fri Oct 29 2010 Jan Horak - 3.1.6-2 -- Move thunderbird-lightning extension from Sunbird package to Thunderbird - -* Wed Oct 27 2010 Jan Horak - 3.1.6-1 -- Update to 3.1.6 - -* Tue Oct 19 2010 Jan Horak - 3.1.5-1 -- Update to 3.1.5 - -* Thu Sep 16 2010 Dan Horák - 3.1.3-2 -- fix build on s390 - -* Tue Sep 7 2010 Jan Horak - 3.1.3-1 -- Update to 3.1.3 - -* Fri Aug 6 2010 Jan Horak - 3.1.2-1 -- Update to 3.1.2 -- Disable updater - -* Tue Jul 20 2010 Jan Horak - 3.1.1-1 -- Update to 3.1.1 - -* Thu Jun 24 2010 Jan Horak - 3.1-1 -- Thunderbird 3.1 - -* Fri Jun 11 2010 Jan Horak - 3.1-0.3.rc2 -- TryExec added to desktop file - -* Wed Jun 9 2010 Christopher Aillon 3.1-0.2.rc2 -- Thunderbird 3.1 RC2 - -* Tue May 25 2010 Christopher Aillon 3.1-0.1.rc1 -- Thunderbird 3.1 RC1 - -* Fri Apr 30 2010 Jan Horak - 3.0.4-3 -- Fix for mozbz#550455 - -* Tue Apr 13 2010 Martin Stransky - 3.0.4-2 -- Fixed langpacks (#580444) - -* Tue Mar 30 2010 Jan Horak - 3.0.4-1 -- Update to 3.0.4 - -* Sat Mar 06 2010 Kalev Lember - 3.0.3-2 -- Own extension directories (#532132) - -* Mon Mar 1 2010 Jan Horak - 3.0.3-1 -- Update to 3.0.3 - -* Thu Feb 25 2010 Jan Horak - 3.0.2-1 -- Update to 3.0.2 - -* Wed Jan 20 2010 Martin Stransky - 3.0.1-1 -- Update to 3.0.1 - -* Mon Jan 18 2010 Martin Stransky - 3.0-5 -- Added fix for #480603 - thunderbird takes - unacceptably long time to start - -* Wed Dec 9 2009 Jan Horak - 3.0-4 -- Update to 3.0 - -* Thu Dec 3 2009 Jan Horak - 3.0-3.13.rc2 -- Update to RC2 - -* Wed Nov 25 2009 Jan Horak - 3.0-3.12.rc1 -- Sync with Mozilla latest RC1 build - -* Thu Nov 19 2009 Jan Horak - 3.0-3.11.rc1 -- Update to RC1 - -* Thu Sep 17 2009 Christopher Aillon - 3.0-3.9.b4 -- Update to 3.0 b4 - -* Thu Aug 6 2009 Martin Stransky - 3.0-3.8.beta3 -- Added fix for #437596 -- Removed unused patches - -* Thu Aug 6 2009 Jan Horak - 3.0-3.7.beta3 -- Removed unused build requirements - -* Mon Aug 3 2009 Jan Horak - 3.0-3.6.beta3 -- Build with system hunspell - -* Sun Jul 26 2009 Fedora Release Engineering - 3.0-3.5.b3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild - -* Fri Jul 24 2009 Jan Horak - 3.0-2.5.beta3 -- Use system hunspell - -* Tue Jul 21 2009 Jan Horak - 3.0-2.4.beta3 -- Update to 3.0 beta3 - -* Mon Mar 30 2009 Jan Horak - 3.0-2.2.beta2 -- Fixed open-browser.sh to use xdg-open instead of gnome-open - -* Mon Mar 23 2009 Christopher Aillon - 3.0-2.1.beta2 -- Disable the default app nag dialog - -* Tue Mar 17 2009 Jan Horak - 3.0-2.beta2 -- Fixed clicked link does not open in browser (#489120) -- Fixed missing help in thunderbird (#488885) - -* Mon Mar 2 2009 Jan Horak - 3.0-1.beta2 -- Update to 3.0 beta2 -- Added Patch2 to build correctly when building with --enable-shared option - -* Wed Feb 25 2009 Fedora Release Engineering - 2.0.0.18-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild - -* Wed Jan 07 2009 Christopher Aillon - 2.0.0.18-2 -- Disable the crash dialog - -* Wed Nov 19 2008 Christopher Aillon 2.0.0.18-1 -- Update to 2.0.0.18 - -* Thu Oct 9 2008 Christopher Aillon 2.0.0.17-1 -- Update to 2.0.0.17 - -* Wed Jul 23 2008 Christopher Aillon 2.0.0.16-1 -- Update to 2.0.0.16 - -* Thu May 1 2008 Christopher Aillon 2.0.0.14-1 -- Update to 2.0.0.14 -- Use the system dictionaries - -* Fri Apr 18 2008 Christopher Aillon 2.0.0.12-6 -- Icon belongs in _datadir/pixmaps - -* Fri Apr 18 2008 Christopher Aillon 2.0.0.12-5 -- rebuilt - -* Mon Apr 7 2008 Christopher Aillon 2.0.0.12-4 -- Add %%lang attributes to langpacks - -* Sat Mar 15 2008 Christopher Aillon 2.0.0.12-3 -- Avoid conflict between gecko debuginfos - -* Mon Mar 03 2008 Martin Stransky 2.0.0.12-2 -- Updated starting script (#426331) - -* Tue Feb 26 2008 Christopher Aillon 2.0.0.12-1 -- Update to 2.0.0.12 -- Fix up icon location and some scriptlets - -* Sun Dec 9 2007 Christopher Aillon 2.0.0.9-2 -- Fix some rpmlint warnings -- Drop some old patches and obsoletes - -* Thu Nov 15 2007 Christopher Aillon 2.0.0.9-1 -- Update to 2.0.0.9 - -* Wed Sep 26 2007 Martin Stransky 2.0.0.6-6 -- Fixed #242657 - firefox -g doesn't work - -* Tue Sep 25 2007 Christopher Aillon 2.0.0.6-5 -- Removed hardcoded MAX_PATH, PATH_MAX and MAXPATHLEN macros - -* Tue Sep 11 2007 Christopher Aillon 2.0.0.6-4 -- Fix crashes when using GTK+ themes containing a gtkrc which specify - GtkOptionMenu::indicator_size and GtkOptionMenu::indicator_spacing - -* Mon Sep 10 2007 Martin Stransky 2.0.0.6-3 -- added fix for #246248 - firefox crashes when searching for word "do" - -* Mon Aug 13 2007 Christopher Aillon 2.0.0.6-2 -- Update the license tag - -* Wed Aug 8 2007 Christopher Aillon 2.0.0.6-1 -- Update to 2.0.0.6 -- Own the application directory (#244901) - -* Tue Jul 31 2007 Martin Stransky 2.0.0.0-3 -- added pango ligature fix - -* Thu Apr 19 2007 Christopher Aillon 2.0.0.0-1 -- Update to 2.0.0.0 Final - -* Fri Apr 13 2007 Christopher Aillon 2.0.0.0-0.5.rc1 -- Fix the desktop file -- Clean up the files list -- Remove the default client stuff from the pref window - -* Thu Apr 12 2007 Christopher Aillon 2.0.0.0-0.4.rc1 -- Rebuild into Fedora - -* Wed Apr 11 2007 Christopher Aillon 2.0.0.0-0.3.rc1 -- Update langpacks - -* Thu Apr 5 2007 Christopher Aillon 2.0.0.0-0.2.rc1 -- Build option tweaks -- Bring the install section to parity with Firefox's - -* Thu Apr 5 2007 Christopher Aillon 2.0.0.0-0.1.rc1 -- Update to 2.0.0.0 RC1 - -* Sun Mar 25 2007 Christopher Aillon 1.5.0.11-1 -- Update to 1.5.0.11 - -* Fri Mar 2 2007 Martin Stransky 1.5.0.10-1 -- Update to 1.5.0.10 - -* Mon Feb 12 2007 Martin Stransky 1.5.0.9-8 -- added fix for #227406: garbage characters on some websites - (when pango is disabled) - -* Tue Jan 30 2007 Christopher Aillon 1.5.0.9-7 -- Updated cursor position patch from tagoh to fix issue with "jumping" - cursor when in a textfield with tabs. - -* Tue Jan 30 2007 Christopher Aillon 1.5.0.9-6 -- Fix the DND implementation to not grab, so it works with new GTK+. - -* Thu Dec 21 2006 Behdad Esfahbod 1.5.0.9-5 -- Added firefox-1.5-pango-underline.patch - -* Wed Dec 20 2006 Behdad Esfahbod 1.5.0.9-4 -- Added firefox-1.5-pango-justified-range.patch - -* Tue Dec 19 2006 Behdad Esfahbod 1.5.0.9-3 -- Added firefox-1.5-pango-cursor-position-more.patch - -* Tue Dec 19 2006 Matthias Clasen 1.5.0.9-2 -- Add a Requires: launchmail (#219884) - -* Tue Dec 19 2006 Christopher Aillon 1.5.0.9-1 -- Update to 1.5.0.9 -- Take firefox's pango fixes -- Don't offer to import...nothing. - -* Tue Nov 7 2006 Christopher Aillon 1.5.0.8-1 -- Update to 1.5.0.8 -- Allow choosing of download directory -- Take the user to the correct directory from the Download Manager. -- Patch to add support for printing via pango from Behdad. - -* Sun Oct 8 2006 Christopher Aillon - 1.5.0.7-4 -- Default to use of system colors - -* Wed Oct 4 2006 Christopher Aillon - 1.5.0.7-3 -- Bring the invisible character to parity with GTK+ - -* Wed Sep 27 2006 Christopher Aillon - 1.5.0.7-2 -- Fix crash when changing gtk key theme -- Prevent UI freezes while changing GNOME theme -- Remove verbiage about pango; no longer required by upstream. - -* Wed Sep 13 2006 Christopher Aillon - 1.5.0.7-1 -- Update to 1.5.0.7 - -* Thu Sep 7 2006 Christopher Aillon - 1.5.0.5-8 -- Shuffle order of the install phase around - -* Thu Sep 7 2006 Christopher Aillon - 1.5.0.5-7 -- Let there be art for Alt+Tab again -- s/tbdir/mozappdir/g - -* Wed Sep 6 2006 Christopher Aillon - 1.5.0.5-6 -- Fix for cursor position in editor widgets by tagoh and behdad (#198759) - -* Tue Sep 5 2006 Christopher Aillon - 1.5.0.5-5 -- Update nopangoxft.patch -- Fix rendering of MathML thanks to Behdad Esfahbod. -- Update start page text to reflect the MathML fixes. -- Enable pango by default on all locales -- Build using -rpath -- Re-enable GCC visibility - -* Thu Aug 3 2006 Kai Engert - 1.5.0.5-4 -- Fix a build failure in mailnews mime code. - -* Tue Aug 1 2006 Matthias Clasen - 1.5.0.5-3 -- Rebuild - -* Thu Jul 27 2006 Christopher Aillon - 1.5.0.5-2 -- Update to 1.5.0.5 - -* Wed Jul 12 2006 Jesse Keating - 1.5.0.4-2.1 -- rebuild - -* Mon Jun 12 2006 Kai Engert - 1.5.0.4-2 -- Update to 1.5.0.4 -- Fix desktop-file-utils requires - -* Wed Apr 19 2006 Christopher Aillon - 1.5.0.2-2 -- Update to 1.5.0.2 - -* Thu Mar 16 2006 Christopher Aillon - 1.5-7 -- Bring the other arches back - -* Mon Mar 13 2006 Christopher Aillon - 1.5.6 -- Temporarily disable other arches that we don't ship FC5 with, for time - -* Mon Mar 13 2006 Christopher Aillon - 1.5-5 -- Add a notice to the mail start page denoting this is a pango enabled build. - -* Fri Feb 10 2006 Christopher Aillon - 1.5-3 -- Add dumpstack.patch -- Improve the langpack install stuff - -* Tue Feb 07 2006 Jesse Keating - 1.5-2.1 -- rebuilt for new gcc4.1 snapshot and glibc changes - -* Fri Jan 27 2006 Christopher Aillon - 1.5-2 -- Add some langpacks back in -- Stop providing MozillaThunderbird - -* Thu Jan 12 2006 Christopher Aillon - 1.5-1 -- Official 1.5 release is out - -* Wed Jan 11 2006 Christopher Aillon - 1.5-0.5.6.rc1 -- Fix crash when deleting highlighted text while composing mail within - plaintext editor with spellcheck enabled. - -* Tue Jan 3 2006 Christopher Aillon - 1.5-0.5.5.rc1 -- Looks like we can build on ppc64 again. - -* Fri Dec 16 2005 Christopher Aillon - 1.5-0.5.4.rc1 -- Rebuild - -* Fri Dec 16 2005 Christopher Aillon - 1.5-0.5.3.rc1 -- Once again, disable ppc64 because of a new issue. - See https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=175944 - -- Use the system NSS libraries -- Build on ppc64 - -* Fri Dec 09 2005 Jesse Keating -- rebuilt - -* Mon Nov 28 2005 Christopher Aillon - 1.5-0.5.1.rc1 -- Fix issue with popup dialogs and other actions causing lockups - -* Sat Nov 5 2005 Christopher Aillon 1.5-0.5.0.rc1 -- Update to 1.5 rc1 - -* Sat Oct 8 2005 Christopher Aillon 1.5-0.5.0.beta2 -- Update to 1.5 beta2 - -* Wed Sep 28 2005 Christopher Aillon 1.5-0.5.0.beta1 -- Update to 1.5 beta1 -- Bring the install phase of the spec file up to speed - -* Sun Aug 14 2005 Christopher Aillon 1.0.6-4 -- Rebuild - -* Sat Aug 6 2005 Christopher Aillon 1.0.6-3 -- Add patch to make file chooser dialog modal - -* Fri Jul 22 2005 Christopher Aillon 1.0.6-2 -- Update to 1.0.6 - -* Mon Jul 18 2005 Christopher Aillon 1.0.6-0.1.fc5 -- 1.0.6 Release Candidate - -* Fri Jul 15 2005 Christopher Aillon 1.0.2-8 -- Use system NSPR -- Fix crash on 64bit platforms (#160330) - -* Thu Jun 23 2005 Kristian Høgsberg 1.0.2-7 -- Add firefox-1.0-pango-cairo.patch to get rid of the last few Xft - references, fixing the "no fonts" problem. - -* Fri May 13 2005 Christopher Aillon 1.0.2-6 -- Change the Exec line in the desktop file to `thunderbird` - -* Fri May 13 2005 Christopher Aillon 1.0.2-5 -- Update pango patche, MOZ_DISABLE_PANGO now works as advertised. - -* Mon May 9 2005 Christopher Aillon 1.0.2-4 -- Add temporary workaround to not create files in the user's $HOME (#149664) - -* Wed May 4 2005 Christopher Aillon 1.0.2-3 -- Don't have downloads "disappear" when downloading to desktop (#139015) -- Fix for some more cursor issues in textareas (149991, 150002, 152089) -- Add upstream patch to fix bidi justification of pango -- Add patch to fix launching of helper applications -- Add patch to properly link against libgfxshared_s.a -- Fix multilib conflicts - -* Wed Apr 27 2005 Warren Togami -- correct confusing PANGO vars in startup script - -* Wed Mar 23 2005 Christopher Aillon 1.0.2-1 -- Thunderbird 1.0.2 - -* Tue Mar 8 2005 Christopher Aillon 1.0-5 -- Add patch to compile against new fortified glibc macros - -* Sat Mar 5 2005 Christopher Aillon 1.0-4 -- Rebuild against GCC 4.0 -- Add execshield patches -- Minor specfile cleanup - -* Mon Dec 20 2004 Christopher Aillon 1.0-3 -- Rebuild - -* Thu Dec 16 2004 Christopher Aillon 1.0-2 -- Add RPM version to useragent - -* Thu Dec 16 2004 Christopher Blizzard -- Port over pango patches from firefox - -* Wed Dec 8 2004 Christopher Aillon 1.0-1 -- Thunderbird 1.0 - -* Mon Dec 6 2004 Christopher Aillon 1.0-0.rc1.1 -- Fix advanced prefs - -* Fri Dec 3 2004 Christopher Aillon -- Make this run on s390(x) now for real - -* Wed Dec 1 2004 Christopher Aillon 1.0-0.rc1.0 -- Update to 1.0 rc1 - -* Fri Nov 19 2004 Christopher Aillon -- Add patches to build and run on s390(x) - -* Thu Nov 11 2004 Christopher Aillon 0.9.0-2 -- Rebuild to fix file chooser - -* Fri Nov 5 2004 Christopher Aillon 0.9.0-1 -- Update to 0.9 - -* Fri Oct 22 2004 Christopher Aillon 0.8.0-10 -- Prevent inlining of stack direction detection (#135255) - -* Tue Oct 19 2004 Christopher Aillon 0.8.0-9 -- More file chooser fixes (same as in firefox) -- Fix for upstream 28327. - -* Mon Oct 18 2004 Christopher Blizzard 0.8.0-8 -- Update the pango patch - -* Mon Oct 18 2004 Christopher Blizzard 0.8.0-8 -- Pull over patches from firefox build: - - disable default application dialog - - don't include software update since it doesn't work - - make external app support work - -* Thu Oct 14 2004 Christopher Blizzard 0.8.0-7 -- Use pango for rendering - -* Tue Oct 12 2004 Christopher Aillon 0.8.0-6 -- Fix for 64 bit crash at startup (b.m.o #256603) - -* Sat Oct 9 2004 Christopher Aillon 0.8.0-5 -- Add patches to fix xremote (#135036) - -* Fri Oct 8 2004 Christopher Aillon 0.8.0-4 -- Add patch to fix button focus issues (#133507) -- Add patch for fix IMAP race issues (bmo #246439) - -* Fri Oct 1 2004 Bill Nottingham 0.8.0-3 -- filter out library Provides: and internal Requires: - -* Tue Sep 28 2004 Christopher Aillon 0.8.0-2 -- Backport the GTK+ File Chooser. -- Add fix for JS math on x86_64 systems -- Add pkgconfig patch - -* Thu Sep 16 2004 Christopher Aillon 0.8.0-1 -- Update to 0.8.0 -- Remove enigmail -- Update BuildRequires -- Remove gcc34 and extension manager patches -- they are upstreamed. -- Fix for gnome-vfs2 error at component registration - -* Fri Sep 03 2004 Christopher Aillon 0.7.3-5 -- Build with --disable-xprint - -* Wed Sep 01 2004 David Hill 0.7.3-4 -- remove all Xvfb-related hacks - -* Wed Sep 01 2004 Warren Togami -- actually apply psfonts -- add mozilla gnome-uriloader patch to prevent build failure - -* Tue Aug 31 2004 Warren Togami 0.7.3-3 -- rawhide import -- apply NetBSD's freetype 2.1.8 patch -- apply psfonts patch -- remove BR on /usr/bin/ex, breaks beehive - -* Tue Aug 31 2004 David Hill 0.7.3-0.fdr.2 -- oops, fix %%install - -* Thu Aug 26 2004 David Hill 0.7.3-0.fdr.1 -- update to Thunderbird 0.7.3 and Enigmail 0.85.0 -- remove XUL.mfasl on startup, add Debian enigmail patches -- add Xvfb hack for -install-global-extension - -* Wed Jul 14 2004 David Hill 0.7.2-0.fdr.0 -- update to 0.7.2, just because it's there -- update gcc-3.4 patch (Kaj Niemi) -- add EM registration patch and remove instdir hack - -* Sun Jul 04 2004 David Hill 0.7.1-0.fdr.1 -- re-add Enigmime 1.0.7, omit Enigmail until the Mozilla EM problems are fixed - -* Wed Jun 30 2004 David Hill 0.7.1-0.fdr.0 -- update to 0.7.1 -- remove Enigmail - -* Mon Jun 28 2004 David Hill 0.7-0.fdr.1 -- re-enable Enigmail 0.84.1 -- add gcc-3.4 patch (Kaj Niemi) -- use official branding (with permission) - -* Fri Jun 18 2004 David Hill 0.7-0.fdr.0 -- update to 0.7 -- temporarily disable Enigmail 0.84.1, make ftp links work (#1634) -- specify libdir, change BR for apt (V. Skyttä, #1617) - -* Tue May 18 2004 Warren Togami 0.6-0.fdr.5 -- temporary workaround for enigmail skin "modern" bug - -* Mon May 10 2004 David Hill 0.6-0.fdr.4 -- update to Enigmail 0.84.0 -- update launch script - -* Mon May 10 2004 David Hill 0.6-0.fdr.3 -- installation directory now versioned -- allow root to run the program (for installing extensions) -- remove unnecessary %%pre and %%post -- remove separators, update mozconfig and launch script (M. Schwendt, #1460) - -* Wed May 05 2004 David Hill 0.6-0.fdr.2 -- include Enigmail, re-add release notes -- delete %%{_libdir}/thunderbird in %%pre - -* Mon May 03 2004 David Hill 0.6-0.fdr.1 -- update to Thunderbird 0.6 - -* Fri Apr 30 2004 David Hill 0.6-0.fdr.0.rc1 -- update to Thunderbird 0.6 RC1 -- add new icon, remove release notes - -* Thu Apr 15 2004 David Hill 0.6-0.fdr.0.20040415 -- update to latest CVS, update mozconfig and %%build accordingly -- update to Enigmail 0.83.6 -- remove x-remote and x86_64 patches -- build with -Os - -* Thu Apr 15 2004 David Hill 0.5-0.fdr.12 -- update x-remote patch -- more startup script fixes - -* Tue Apr 06 2004 David Hill 0:0.5-0.fdr.11 -- startup script fixes, and a minor cleanup - -* Sun Apr 04 2004 Warren Togami 0:0.5-0.fdr.10 -- Minor cleanups - -* Sun Apr 04 2004 David Hill 0:0.5-0.fdr.8 -- minor improvements to open-browser.sh and startup script -- update to latest version of Blizzard's x-remote patch - -* Thu Mar 25 2004 David Hill 0:0.5-0.fdr.7 -- update open-browser.sh, startup script, and BuildRequires - -* Sun Mar 14 2004 David Hill 0:0.5-0.fdr.6 -- update open-browser script, modify BuildRequires (Warren) -- add Blizzard's x-remote patch -- initial attempt at x-remote-enabled startup script - -* Sun Mar 07 2004 David Hill 0:0.5-0.fdr.5 -- refuse to run with excessive privileges - -* Fri Feb 27 2004 David Hill 0:0.5-0.fdr.4 -- add Mozilla x86_64 patch (Oliver Sontag) -- Enigmail source filenames now include the version -- modify BuildRoot - -* Thu Feb 26 2004 David Hill 0:0.5-0.fdr.3 -- use the updated official tarball - -* Wed Feb 18 2004 David Hill 0:0.5-0.fdr.2 -- fix %%prep script - -* Mon Feb 16 2004 David Hill 0:0.5-0.fdr.1 -- update Enigmail to 0.83.3 -- use official source tarball (after removing the CRLFs) -- package renamed to thunderbird - -* Mon Feb 09 2004 David Hill 0:0.5-0.fdr.0 -- update to 0.5 -- check for lockfile before launching - -* Fri Feb 06 2004 David Hill -- update to latest cvs -- update to Enigmail 0.83.2 - -* Thu Jan 29 2004 David Hill 0:0.4-0.fdr.5 -- update to Enigmail 0.83.1 -- removed Mozilla/Firebird script patching - -* Sat Jan 03 2004 David Hill 0:0.4-0.fdr.4 -- add startup notification to .desktop file - -* Thu Dec 25 2003 Warren Togami 0:0.4-0.fdr.3 -- open-browser.sh release 3 -- patch broken /usr/bin/mozilla script during install -- dir ownership -- XXX: Source fails build on x86_64... fix later - -* Tue Dec 23 2003 David Hill 0:0.4-0.fdr.2 -- update to Enigmail 0.82.5 -- add Warren's open-browser.sh (#1113) - -* Tue Dec 09 2003 David Hill 0:0.4-0.fdr.1 -- use Thunderbird's mozilla-xremote-client to launch browser - -* Sun Dec 07 2003 David Hill 0:0.4-0.fdr.0 -- update to 0.4 -- make hyperlinks work (with recent versions of Firebird/Mozilla) - -* Thu Dec 04 2003 David Hill -- update to 0.4rc2 - -* Wed Dec 03 2003 David Hill -- update to 0.4rc1 and Enigmail 0.82.4 - -* Thu Nov 27 2003 David Hill -- update to latest CVS and Enigmail 0.82.3 - -* Sun Nov 16 2003 David Hill -- update to latest CVS (0.4a) -- update Enigmail to 0.82.2 -- alter mozconfig for new build requirements -- add missing BuildReq (#987) - -* Thu Oct 16 2003 David Hill 0:0.3-0.fdr.0 -- update to 0.3 - -* Sun Oct 12 2003 David Hill 0:0.3rc3-0.fdr.0 -- update to 0.3rc3 -- update Enigmail to 0.81.7 - -* Thu Oct 02 2003 David Hill 0:0.3rc2-0.fdr.0 -- update to 0.3rc2 - -* Wed Sep 17 2003 David Hill 0:0.2-0.fdr.2 -- simplify startup script - -* Wed Sep 10 2003 David Hill 0:0.2-0.fdr.1 -- add GPG support (Enigmail 0.81.6) -- specfile fixes (#679) - -* Thu Sep 04 2003 David Hill 0:0.2-0.fdr.0 -- update to 0.2 - -* Mon Sep 01 2003 David Hill -- initial RPM - (based on the fedora MozillaFirebird-0.6.1 specfile)