From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 5E06815814C for ; Wed, 1 Nov 2023 13:17:06 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 780782BC056; Wed, 1 Nov 2023 13:17:05 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 0A8722BC056 for ; Wed, 1 Nov 2023 13:17:05 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 7161A335CCD for ; Wed, 1 Nov 2023 13:17:03 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 70DB41323 for ; Wed, 1 Nov 2023 13:17:00 +0000 (UTC) From: "Joonas Niilola" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Joonas Niilola" Message-ID: <1698844507.8c14f1bf8591160fa1966ff82001637760e62e47.juippis@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: mail-client/thunderbird/ X-VCS-Repository: repo/gentoo X-VCS-Files: mail-client/thunderbird/Manifest mail-client/thunderbird/thunderbird-115.3.1.ebuild mail-client/thunderbird/thunderbird-115.3.2.ebuild mail-client/thunderbird/thunderbird-115.3.3.ebuild mail-client/thunderbird/thunderbird-115.4.0.ebuild X-VCS-Directories: mail-client/thunderbird/ X-VCS-Committer: juippis X-VCS-Committer-Name: Joonas Niilola X-VCS-Revision: 8c14f1bf8591160fa1966ff82001637760e62e47 X-VCS-Branch: master Date: Wed, 1 Nov 2023 13:17:00 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: abdaa29e-cfec-478d-884a-1ccd132e51aa X-Archives-Hash: 025e742ca3c7e529e594897ab11b5a90 commit: 8c14f1bf8591160fa1966ff82001637760e62e47 Author: Joonas Niilola gentoo org> AuthorDate: Wed Nov 1 13:15:07 2023 +0000 Commit: Joonas Niilola gentoo org> CommitDate: Wed Nov 1 13:15:07 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8c14f1bf mail-client/thunderbird: drop 115.3.1, 115.3.2, 115.3.3, 115.4.0 Signed-off-by: Joonas Niilola gentoo.org> mail-client/thunderbird/Manifest | 262 ---- mail-client/thunderbird/thunderbird-115.3.1.ebuild | 1313 ------------------- mail-client/thunderbird/thunderbird-115.3.2.ebuild | 1322 -------------------- mail-client/thunderbird/thunderbird-115.3.3.ebuild | 1322 -------------------- mail-client/thunderbird/thunderbird-115.4.0.ebuild | 1321 ------------------- 5 files changed, 5540 deletions(-) diff --git a/mail-client/thunderbird/Manifest b/mail-client/thunderbird/Manifest index defd6e2b3555..343f17dad390 100644 --- a/mail-client/thunderbird/Manifest +++ b/mail-client/thunderbird/Manifest @@ -1,266 +1,4 @@ -DIST firefox-115esr-patches-05.tar.xz 15000 BLAKE2B e6e6918d182100616095119f1da7fd6ddc8fa3dae236d075292451f2b2ab1be7b16620eb17f01e5c10fc81324c81b25c596b9e99e7d7745a7ac0b22a27ae3e97 SHA512 ccda6860d885837c59e7ee4612bdd72dedcbc0dc5d6cf7d40dc6524591b67a2d165a251a13662bf1dd3995ffe392861a73bc08bc606a2320de5a5d8880086314 -DIST firefox-115esr-patches-06.tar.xz 14944 BLAKE2B e60a8a32f8c5e6d897e8c3e13d291ffab651937505ce258f031e7e75560c9eb89fce4a22c61872d639e6e1d40244e94761baa1660c2d3d02584ad4cc4778946f SHA512 d9ea1a063df287fa651042c90529b1a1b5ebd5a28735c44b5527cc7dd29678c2f8a9204f007db328371ed6af9613ca7215464c00df5e685c3af4296a22139257 DIST firefox-115esr-patches-07.tar.xz 15204 BLAKE2B d5c33ab66a3cab0f1d7b520b5cedd17a8d41260f560eb7624f19f9e7126810e5888e5e1af584661561e82c2dfb818d2c6c7906062f9ac7ad117cb09052163594 SHA512 c948c32766daed22c77d20e0ef3f499163e03adf2a6329b04a60ae9f0b377ad6c85fde3d3bee8c5b11ce7cb19b9e03836a60699af3ed074c4ee8530b63c390f2 -DIST thunderbird-115.3.1-af.xpi 542155 BLAKE2B ac2276dc78095475fcd6bbde7b762d9c5926ceeaff6f30f29e0d384a2aa96302e785aa40c279861db2ae9e4f4518214e5d8c4b95b2f050d2aad3334619982fc0 SHA512 d44bc133e333f1c85e2928196b65de3491ab9fa23a44a783ec2192a49c778cfdec71cad0c1c08e5339528a53da4f60f585cdc6c8fa920d1957dbd98d1aa681d4 -DIST thunderbird-115.3.1-ar.xpi 654727 BLAKE2B 417c2d1ca3e109235588fe241a01dc19208b00b436032a21eca4541548d144cbce9c04882f4a2471a7748287044d62b94e390fff422d529f8e2174ae2e11722e SHA512 f9790ff5ae7a27b9d0a83ca9d2f1c1d204670a724c35fcdfb8df480a753794831278956822b4604f72358f66dbb8cecb71e0bc7fcb36021994f2ea6a477fffad -DIST thunderbird-115.3.1-ast.xpi 561119 BLAKE2B cdfe76d451621fe2e508b80b01045b8bf8147fd6cf96a4c74950eb3d8eee368353683b11a9e9bf6421215ef09fcf7093cb748f51f58b2ca046db8d7f85213f3b SHA512 663c4cba6f27649c91b42e0fae44e98be4d515a218194f8e8edcb794386457f64002af1266b687213842139ab5c54d1d6fc2a7e2a6fb98eba9d4cef646e622ab -DIST thunderbird-115.3.1-be.xpi 694084 BLAKE2B 1d2d1e1b9b3a881c24241457d06f44bd57ea9cb5e8aa146a8713a1230e59190f53a9d9c53982b4286d705da14475a5295e4dc1b967a23443ee5d4d3c4477d84d SHA512 cbf09dfcd51e6f5ee1713903e39c16e98a10ed7891a4b3197dae31a6ed7eddd3c8b672e0fb59a80e8a9ffb132f8cfd7071a34d944d8896881974d552ffbf9d74 -DIST thunderbird-115.3.1-bg.xpi 681253 BLAKE2B 08b584cf050e1ff44e2cd9722de420742257a8147c6718236b9d9fbbfb7e6bb0c3692473efa05331b3e5a8b011fb24318a64e6b3e83ed62898c5823ab44fd36c SHA512 4631d8343df7844b9f6bd29253e16dbff031fad5a05d1c983c1231c0e1875cbe739ffa65005e81861d3ffddc22df64f34c0fb1f4d72d8ecc4f5b0dbcd1dff171 -DIST thunderbird-115.3.1-br.xpi 626489 BLAKE2B 19d4a2abd688324076dd87c50e1bc4db2f0a5d72b173652a5e82dca2ea9634d5da616692bf8e7fcc912f42eceef3846d394703c1c4a0ef9a29bc53fbcd8df100 SHA512 9365c76b160cebe60135f5dd7b830aed4b081ba51bc925b89440a5faa570b08a1b241ec7e2329cb372b7a7decffdfeef34ba7b9d9cf9609dcf094a64f99d01ec -DIST thunderbird-115.3.1-ca.xpi 664391 BLAKE2B 5d739d814f282759eca25d7828d3c1c3d2ace06dfcefa7574e0cc3496e22b3a8bdb61847558f1abcf72a7b159e51ac84a9c658320528937ed2e5f8a4d6265cea SHA512 dc92fd361aeb6897e1023bc0deb7e1e8d493f6463a760a22d0a391505019d9396974b886c976322eca7df8a80769fddc048459292f721f3ee1cd0587441a16a9 -DIST thunderbird-115.3.1-cak.xpi 657815 BLAKE2B 2181ec38f970c4168669575a6d954e6637aaa7fe50c7692c4b04d0553fdb4f5d5df0e15004885cb19d2c5e65029143611114fb4d342ac576b9cda1057e64b72f SHA512 f0405e88f9ee14ab251b7daa7d510865ba18bf5d10e47d102ea9bfbcfcb75577781474a791390229c5f1430aa5c000d41a2a925b29ead3649dc752212fabd794 -DIST thunderbird-115.3.1-cs.xpi 733926 BLAKE2B b6420fa0792908573401e2ef4f10e31e474150c8be150a41f47f727e3925889c6f1b085d52fc8b8b5385eeac392f147ad094b18708859fec9b80fa2510bd521f SHA512 15a8283a3cf77b0207a080b2a6d01c9e421896cbe1e213e86d4134e4b84d6bcc822fa25a8bc0b30d7c4d08063709602f5b7e17251fdb9a60e4448507645ce3ea -DIST thunderbird-115.3.1-cy.xpi 703327 BLAKE2B 70c5aa82dce73d6fdbce6bc2c12cc2598a01117b8218530686365f533337d0c392581ac62a87b3560c3c9abd0d67bb911850bff91f685a7e4a35d82543464a4d SHA512 2a5141db90780b967fc89041af3d0c6c5dafcd022fd6b07d0dddeb9b4689edf8047a1f86acce743008ea842d65a4749f5a5f946fa2557d884655134e4a8c9305 -DIST thunderbird-115.3.1-da.xpi 690779 BLAKE2B a2386a476e36ecc226f23e246ec302600b05834a2ad0d3c57d653709775b2b3590cd8fc7a0a3ea546c6263e814d9bbfd13d77f869472d78937ff5c38d2385f05 SHA512 815e81e8aab1ef9ca62a240fe08435f1dd66105a572e8ec81f538c25d4877586c08959d8400305bd43a85ae3bbbcdaf37f15b06886f629a3474449290e16dc6c -DIST thunderbird-115.3.1-de.xpi 720272 BLAKE2B 59ba0e27ae0e544fa22cc30dccf866cfbbc8353ed90875006e3864b6cb8d41ea078867005ffec88fef74474bb6977cbf725a33ef545e197d1d83b5e9371c41e9 SHA512 eb1f2b8952749afbafe278272f48bc4c33789028802e9c30b4d9da5ba39c199599158a0091bae744a437eef02b25b641b170189de26177848c5ec0d1afaa15a6 -DIST thunderbird-115.3.1-dsb.xpi 738025 BLAKE2B 8db57ace0afcadf4db6fd6d49a05434c8a4be4f1fd6c94654ac7418202105722ca3510727ac116058c7df49e4ec18838dcaba7a13875c57f01ca10e2000ad3b6 SHA512 f7e37818437b5f711040d0317b4af96f1a7f16095ab1a6d062065e22696bf3a35499ffea49997cc24e7f3b7c7aaeba232197b62c8764b8b47779278cbdf8f454 -DIST thunderbird-115.3.1-el.xpi 837360 BLAKE2B cc7f5271f9739ed778ae1f70b590d7c3810f5be6da4eb80922c1f59b22937e15563816f2721bcdff738a36ab8be7e8c0d6487f831694575ddd5309ffe3dd10da SHA512 a91cdc035ea6e5a57eb1440a850279dcebb4eb19e72bb86d359a48cd8ee6077fc38ac71f82415d19959efeae89679d240478113efdb8de8d9f5c5d96302247b3 -DIST thunderbird-115.3.1-en-CA.xpi 648451 BLAKE2B 2cdc52443a3f881c84e881f2b20a903060b3900f62f2835981630f9fde9d99f3ede4928d33751f3e825052c1f0d76a99757f0295b65eb5907951216f7c78baef SHA512 d352127c3dde87ef82d67496b978c88d3fdadd1dcf0fd875ebb7a0629285b405c38bbdea709e98da246f9ed02b865926967e417bc2ebb3895307fd5726fe7f6c -DIST thunderbird-115.3.1-en-GB.xpi 661514 BLAKE2B ad81dfff1d9c1189697b3e325376ed6adb61de1594c787196b95f6b975248125d556cfe69dd8c3251195f046ae8a73f1445706e6de42982d3a528a368d4628ce SHA512 f38e08e630d61d11ec07bd4bcb27b662a5766f244ba2d29dea252e25458a8de5d0187d25656e78025fe67e1ef37d1925d8e16da1d249ad451b10b9ccedfe35c1 -DIST thunderbird-115.3.1-es-AR.xpi 713109 BLAKE2B be6b849ba9f60052fbf19ec23f9ad8e1174d92c444443cbd2936e2b8d6081cdf27e2eb5514ef401ab8d61ab30576173eb7c62be108100ede5965c678ba7f152f SHA512 dc4af1f8606a2d48648d9b0c8830f8c7c5667cf3e0f4fb13fe9a51a94f43e9299fa42e097136c77355a6a6e810e2ff78ae504673802aa8ab9cb70604e5e2bf47 -DIST thunderbird-115.3.1-es-ES.xpi 675706 BLAKE2B 7905988fe9f0adac4cb67642eab5d88404cda047dbbfbb7d5d555dc7cdab68d0d9b928636d7ba007621cba0e54fea8023763784fcb3252458d5f76c69e7969cb SHA512 2046a5d991e264f7cc6b237092a70ba721e7524fca34ea63a35218d5e26c430bfaf6bd1d98b5b7624254252f924096d5289943dae589f1f0f21dfb28eafaa507 -DIST thunderbird-115.3.1-es-MX.xpi 710140 BLAKE2B 0ddfae8017c2cc69ec21586df9a53f6cf93fc8ff15eea4ad01340900405f18d3b6a4c2ce4cedb480474e20005c5f4cbf91909f83053ef27a8db29eb75abd1369 SHA512 6722d8bd93d93947942bde51884dac4b481d04398cdc0145b00f25e86eff958946c511029edfa1bc2e2026a92ebf4654dbf6776b2b03abc711120a1027a47725 -DIST thunderbird-115.3.1-et.xpi 671820 BLAKE2B fc05de5a332ab34be18bd0a9f5429378909eba21345dd72ecd397595abeeb584d1b0f2e8d7da2975d39e24a7de7ae0a17471f419499c35e4cd6130ba5ac0f3b7 SHA512 8d991b4a4fac06080ba02b3b09c3d25af1d33cd328af98ae60ebe33df847d3a178c0db5939252b423be682fdf63db155643a066b403ec9902705e08a9c322789 -DIST thunderbird-115.3.1-eu.xpi 692541 BLAKE2B 80d1638c8c25c3f914dae98ee6ae35e92c76c154d9f30930eae4e7fab37382490283104a05e80806425af22c19f65c14da3a6671aeedf891290765992859d6c2 SHA512 4da2247b6ae0d7a361d7b6edc21ce2d5f84a03ce502ae49e37980378d29276b14e2d82064804412c4286e4326717ed42c877561c02974cc6045451cb42b4cb58 -DIST thunderbird-115.3.1-fi.xpi 689879 BLAKE2B fff85efac7800cd07ad23708614957eb06c8c44dcc74f83b37347d108d89731ded64329d94b95c8c2f3352368bd3f349b1a55c6ae252eeef0796f72540dd1086 SHA512 30c241e872118c68f894d1c206fde0ee6277b76625bfeb37a583549e4443723d639f68c736cf6809ed6210ca325324c3a520d8d02c5d11e83cbd8cc216deeda3 -DIST thunderbird-115.3.1-fr.xpi 725336 BLAKE2B 6354785355d43d51c86da12a1475a8a64db3258044632738d8b9ec8c2d6bd30ac52af5112585b9482969350e848b902862055fbed707c7987e7f38f43bd92403 SHA512 f95302bc1f5820e44181686116c9a34edfd74ef812f6fc15e5dc7e1c6ba7cf69744329196db3775b0640dfb49ab733817be802e17184bf50211e2b72a301a819 -DIST thunderbird-115.3.1-fy-NL.xpi 707905 BLAKE2B 16127c89b0ec0db2cdedaeb9978f97b8a09c6be6d6c3e90dbc2c7ebe458864a6590a608e442cfd9f4a8eed6ed92e88b63e536407f359b85e918dc3dc6abdccce SHA512 2165dd00b9b28d78e80f88023fd34c3a4998ef347e318796f0ade38658dfcb655d0416463e751720971eae6a75b3f9cc3e30c842b38a7e422f435bdd414a1a62 -DIST thunderbird-115.3.1-ga-IE.xpi 601818 BLAKE2B 251011bdee7bb9d8a73f1ffcd048822d950f8a369074d200b97bef8ccb99ea69b683741dfdd06771af34cc90b028fd69d9093ebdf1b4f4d65043eb5319ea22b8 SHA512 567ac6ee49191bb2365b473ce0bc27d79f84880f95abe4d56dcf7dfa3ca3d481653a1b6b78f3a0dd4cdc8c65d604582ba86d4136cfbbc78df863fad810ba003e -DIST thunderbird-115.3.1-gd.xpi 702994 BLAKE2B 56caeaa08a0eb0735ca7f8af40b95fb1d3286849abb997d7ce19a0e6d523d3508aa3c4ab2787c2b5274ea591f191df97e05a4b8005709ac700c33832480cfaa4 SHA512 a35ebfc7aba9eea3ddc1bf81a0a518d5d932f051e9b6464e9471785f411ccb7f229745f853ccff756199342a90cc48cbd73588b979504a4b3b55ddf71fbfa83a -DIST thunderbird-115.3.1-gl.xpi 705423 BLAKE2B 774c66a6b0afafa900cf73e9040e1d8e4d46ed92c34671e861706a69c87b20687a7e3be32f668ae28ec7a38315bf2dff69bc6af8027c6f4c2586989a8c071be8 SHA512 ef05b62c881b200a6fc5a8348662b0e9c483520f986cc16a5fa5fc5f459157884af88b40f0bf589cbd5b07fd48271025fe09cf66e1864a7c48e95da72c240a3c -DIST thunderbird-115.3.1-he.xpi 667479 BLAKE2B 42a72ced4e50e26ffe2d0a3f0da58142bc1b9b263d0fcd427d3cb1399ea41a6844c1d28fa67b9aae5ac620e05f717a997b0ca0f75de5d96d46e5ca24d2146a06 SHA512 f4fcf553edcea0f6526e879b88c4ba5720ce1d1fb077f53424c112fa1ef02cf5c787afb9ce26818e8d8bb914f863ebd248cf66cc3aec47e38855b10eca77a72a -DIST thunderbird-115.3.1-hr.xpi 674903 BLAKE2B c454f90cc416eaf05ceaef8ff1af03a9c2a56a3d81fe0c2fcdb3a361c6973f50c21183b5eb6ba2cbfceb678ad653488f9e2de3b62989be4c2f9625e70e417870 SHA512 927d28ce5b5acfd93fa054a0951c2c3f2c7a4e69d4389c6a5b2ea167ca646456a0d7406b73fa302a0a43d738cc6e41f3fc6886870fd8b94234d0a848f72c0c50 -DIST thunderbird-115.3.1-hsb.xpi 734549 BLAKE2B c69887521a3459b502365063bc879624cd3b8219c364b2cdf31a7591f1869dac45327b3f86d5091b40ed01828b4663156aba47380bf3d44c74285fac33119142 SHA512 31d01ada6a699cf8bc1d3dd1e730c358edb68bb54779b5936482e61ce477baf7b365dc905b6d5d8113c1bc5aa36f9c103e1647bd6d5314b0793b1cbd77e33449 -DIST thunderbird-115.3.1-hu.xpi 737466 BLAKE2B d81d784518715ed70f546530f7fe9d6d3c61a97b9110e0c1f2cbea3caf506e8a82a9c1442e462956d5358051188f7e1fff3fcfdc8fddab5079711d379548552b SHA512 6f3504fba2391b7289eee3485206de389ca7279f9c4a7e988b629c3551b4bb8f5e8e983a255747ae8112d2071fc465beeab198e1762a0f06b8b6dbb37292fb3d -DIST thunderbird-115.3.1-id.xpi 642540 BLAKE2B a6310c92ea1288e50b67405191b023b971388b4b156c908f6579811b4029de733f4f287b762de4670493c3d42a7e8ec981259154109a677f2a242377cd07843f SHA512 5fb05dda624f391d2f09d683725630da1d0bbeacae87a10e12b85365c3e7ddd4f0b39a0cac34564c5479bdbd608778d84db65ebe7b6ac6ed333ea048291a1234 -DIST thunderbird-115.3.1-is.xpi 702211 BLAKE2B d55a1abbb53ad6be1cea6cd454f8065c615601ebacc6deb1d75cb417c913e975f043cb34c01612c1d0330fa78fdcacf8799099329a41534ca05c8dab36cd22a5 SHA512 c0a1501fd9f6e63e85e90c6e4ea0176496d43f8df4ea65d523a433f1f8140fc1c9956d3bb5b8b64ca19834ea8c14a2bad1bf5deca94d2aaffabddb7669485515 -DIST thunderbird-115.3.1-it.xpi 643538 BLAKE2B 18b5942a78573c9ecd37d09a3775709aadee976ffbf09f949a7aa0ed5316479e50b99089e8be880550baa16b0086cf730ac22de0f1b744b753d7539d73f89ae7 SHA512 759257c58255934165a2f78391ff7f84896cfc4db14cde3c3314cbbcbddcd29e2b3a8faf00bc08f74ddd1e3fb025c48d42edb18009122d711afe99f5097fd3a1 -DIST thunderbird-115.3.1-ja.xpi 781689 BLAKE2B f6ecf769e763b97adce56c22f861ff11d0d021149be4057267ee8800007420cb445efe62994f0401d22af8a281cb182dcd26ad79a9328db3f34a3beb1875fc7a SHA512 b04aeb6ae7d63bbbc45bfa08601338066ba0c0d9a4188a774f46b200a134846d74275f69fd84311970902081136352f661825ac6cbb7aa3c0dd014463da165c7 -DIST thunderbird-115.3.1-ka.xpi 764449 BLAKE2B 3a1cfcc15af39b71300f6f55173cd4e0614c24d6efbe4d280081e4e92ddfb28b951d64967b37db01ad781b958313242e661cd3f2fcf3a645624e93f3ce7c4588 SHA512 46cd2a6448f242dc8be8deb2407955ca63dc7834ecab362775d58fc05815e556564246ce60c9b19ad10842a9dfd58ddff69ec2d9943be257cd32c1f9eb076cad -DIST thunderbird-115.3.1-kab.xpi 698916 BLAKE2B bbd168642215ea9ca6eb9ba7cd19b9249509a66c6ddf80bf149cc9c3df0e25d2474868b417abff97a15e23e873ecfb633f6795ab19ec125485ad05db041b2964 SHA512 0673c1b71ab8dac116b5e7185bf80d46e4e531b10bb894b1c2d86212e0735b778c98f65195515e900c2715c7516b329f744a76426c25fefc2e1eb7fb6c1ffdbd -DIST thunderbird-115.3.1-kk.xpi 805074 BLAKE2B f26693f1c06fe0a4bafba0b00c85d405d0b7546ec25ac811d967db85c1aff2c2ef9f53d5897c80b52a0062b0b5e55d1b7fcb467905291d3f85d07f7fc4b31b01 SHA512 78fb106e3e730ef3e656bdc7ec308f196579d78dd872db060dcdf45372db0dc3fb223589828f5ab3a7a1a9db7217d0174b95d1985ed5b8598e4e7e10b7c6e6fd -DIST thunderbird-115.3.1-ko.xpi 712208 BLAKE2B b4e0814a57658fc06d15507af5c02bfe22a19db76049cef2b8aae1f189596358d2782362e359909eaefdabc2a32fe6ffbff434e661e34059931f663e8791840f SHA512 ae6b9b717bbf87abbbe0abe3f37c6269a910908411b4841d49b1fe9f6fb7cfe20193c712cfbec0eea7078400d9505cf33d0ece4c7f3d2389eb9912d04bf09177 -DIST thunderbird-115.3.1-lt.xpi 680094 BLAKE2B bf807a44d855227da1f681f41678a570fa11b962d78e6a6192a9072ce7a1702b184acabb0b3e241bbff4f7ecd185f218caf517008d60778cd373bc8470545c6a SHA512 d26dc39626b97e03d4f24388ab310a9c6f0195eb59e19c27e481668ac9c0e1a309b41429caf28e54623b1d8f23dca5fb7a2edab8b739280786b6c5c2d19c52ea -DIST thunderbird-115.3.1-lv.xpi 604646 BLAKE2B 2e21701a84c454ddaee13b9a84a20de589f9db3ea02c3224fcc47ee8adda8385760ec153476aed81a9f87bad670a8c7c5214e72badb527d169766136be791c35 SHA512 d7cf6af4d88b428160d31f4cb65118985a4a26aab00a5a613e0e8e25a89db2d7a9a42b20c63ef93220c094944a2ed54f199edb877fabf58df15099a07602e6ba -DIST thunderbird-115.3.1-ms.xpi 565733 BLAKE2B 2c581fce0c75bb4fa7efa008a0d7eec6a83d7f1afd8fce5ed5727b7a1e9f76e18df2b85f5c2aacc1458ae65e8c33713ccef5331b3e166181d7c09621ceb580ef SHA512 f74df7cdc3d55b80bf48e6f0e2fbc7d545b7cfb533a45571af2666eaf2d3ae38ebcc51fb3e3c3cfbe0ee61bfbe8860793e2616564b05543a975f0312ab0eab1f -DIST thunderbird-115.3.1-nb-NO.xpi 653868 BLAKE2B b4988dcb9ea90dd526634ac8ab59f3c3c25533fa53f4b939909aaf92780ead5da16dbdb005ecb29dc8e919921c407773247529f5641d234eebd15a7d346b938c SHA512 0cecf303b9b2ea3ce36afcd8d0e8d3b2f3e3474cfdce1e0d254a65616e075703b5f2754a5254da27f2e95f77f204eb63c78c74b489ba7afe848a96a0d2475c5c -DIST thunderbird-115.3.1-nl.xpi 699498 BLAKE2B ccebe216706382493f2079d1e2c0620d6ae729a42d928a2650fe69447fd3c7965d1220c2a406c2ddc2771f8a523882e8234b0102055405494d6c938cdf3965e1 SHA512 d26d528a670544574f404d074617ad7b6791a15c943878200df1c3d5dafdedf4a9a3208636784f5c92416266471560df665deb53914db9fb74925d33a3f3725f -DIST thunderbird-115.3.1-nn-NO.xpi 673377 BLAKE2B 3a28359032e8cef83b1c90208444194f27dc8afbfc1b274ba16a80cea207f72b7e51f1ab3aa0010d2aabd7c8d37e5678544417e4fb4228685cba61e19b721958 SHA512 77cdb9fa36b9cd20b1bee1a9ca21efd93dc5b2f036186c2bbb011980316c6f563f9cbf59d762138d7da4456bcba36eaa1e8d18a0ee53805e1ecbd7a890411e0c -DIST thunderbird-115.3.1-pa-IN.xpi 655777 BLAKE2B 4c6e057d70bc5954f684bc1b4b492a7d091428d298f29af244a31905265a7c75dacd9c4f7224fe9e23b27164fdb12c053e23c6e36f35a07749b715da620325bf SHA512 885707c026d7a7c5a20411545481816b8d9209e6ccccf1776d6b9148591278528d38c3bd33dc7dc04c790e87ce7510f2a5092362e6d9b1065434e928034c97d3 -DIST thunderbird-115.3.1-pl.xpi 716599 BLAKE2B 880203119237fbe3ce39f2b88149694d0033c4d1489a8bb1587a777afbecf8e95d7f2765104f96d8d451c3c9d708a55eeaa13075a99d140620b91beeb5c9a617 SHA512 84054704802b6b0f010ed2c32e5fe2712b3fc7a328d48aa49ead1f2ce1bdb38c11194cf2e72312bc263e0f9afb16476f6ed795debcd39c34924cf61878ba7601 -DIST thunderbird-115.3.1-pt-BR.xpi 707264 BLAKE2B ebd87eec6e6448aecbc2a8d8db2bab725d37d350039570039657275f4fba7d563b906a1d935409634437b99ef91f8b20214afd337820c26fdb2c17282cf0c883 SHA512 31e95229a0349a3938d4fc3057935c5306fe91e26021a379926953da80adcaeb13bac954d3d40f746a80011e5bda65d625d1ca276a55b9bf43a6ff67cca400aa -DIST thunderbird-115.3.1-pt-PT.xpi 687834 BLAKE2B 4202b146ab85d410bf00006ec135b9474d91c45410550066846802e098b4ea6eec414875452c55fd46f28b87e18bc0333aeff077eb8c818811f25b5188e2913e SHA512 8f7fc65f7749147a8787a4f282e36540339c0b65d08940d99b3c2afbde8484acb9f3b0e80900566266fa2d6d5748027e90d727a908f3a21b25d0749bf4418e66 -DIST thunderbird-115.3.1-rm.xpi 704044 BLAKE2B f84f7aa35219131a550f381d1e4b6aedcdd909980db7bb945c6e579abb00ca7943cc9a1a3a436e9b28d206790d9050c082e07d52632ec1afc64db39d94877a50 SHA512 d9be860f3cb4b3a152ed3c08a3d212bc907cb74a99dc102c3ba564dfcb9ec46625698c04f88859d82aa11b65d135dd921fd97d4f31e00d2ec655f1c036731a33 -DIST thunderbird-115.3.1-ro.xpi 651298 BLAKE2B e0721753ca219c8bf580b477a9088efbc9edb36ab12b9b5f73a0cc17d169170c404a259cf538ce084557f92e3df07fb161e90c8ea0a964ad17a976cd4f51a440 SHA512 b361d8e4a952a8d6526169116346ea9735da24ea3fd793da51a3ae9fbd507ec718101e6f6dcace3099155e4ab5069783b6c6d587f3119dca1826be17235421a0 -DIST thunderbird-115.3.1-ru.xpi 820867 BLAKE2B 3069cde81a68ca873eb7d9b346852e9abd406248346c9b4aec58b53521842611936dc5aa359e305d52f959d7f1c8f8eb9f9619ec324cad473de7523d2c1dfc5d SHA512 da7777429fd77b432ab2378faa16f9fb8df5595dfce3c153c5c418ad2bc578b6f359d7519547ecc4b8758a3ca2ecaea1e2095e2406c1aa74f9d1c98873511d15 -DIST thunderbird-115.3.1-sk.xpi 736658 BLAKE2B c1af2629cc81e7a83c7e326a9b2397bf156db4716b5f40adda48fa501eee366d89d732d85111e5fc4c6e305db6f263edcceb13cc88a0ed0571637ef792520d99 SHA512 fc7094830832190f822b8a51244c2c7ce941d7e7d0284f27abc28b68bc53e21bc6aeba15e67b5e52cf911f263ace62e6b3d40b3464ebded6e70288bdd4128a83 -DIST thunderbird-115.3.1-sl.xpi 701217 BLAKE2B 68d70e0464d3f2d9df582d476a17da073a731f5f6f4b85e1adfd8f3ebc3bd1be407a95f26c3500177fd1b690ccfd124421fdd3267c4747c0997467e13ee3b200 SHA512 754d842cbd040eeab4dd678a5af825b7fb8e57c2ea03586af6a41f38b3f5edfa13b55db73c334a54bf0f926047f1d18b6a0bee8b0b4c86248ec9f2cd10f9ef44 -DIST thunderbird-115.3.1-sq.xpi 717451 BLAKE2B 539359bd42ffcbe0cbfbbbd4b892eaad8858845d16ef92a6dc5b8320258447eb9e9c88ea35cd37400c980ecd0ae75b09554af52b0e1bd42806646bd5ba3ec984 SHA512 ef9dc35d40851e8401cead8d0f176a76a732c563074d6c9884abbb0b1c1dc61aaacf264cc48880f98e3a32beb8cb7a4acb19f00a8b8e49177c35a83e43ac445a -DIST thunderbird-115.3.1-sr.xpi 740171 BLAKE2B fb203030b5497ac81c90bbb5de40db440073f323307562b82ce7534ccbb5ef658c0a5b3b6b639cebbf78211f2cbb9e06318d1d6e0fdc6510c992fe8e56706896 SHA512 af49df2f11873f277cb73a7dd921531a0cfd4ac69cfde30fb8a523e26b9da1a555b88d0c49fee83132dd2963c6d2de16685bf8976c3f68915558e33ab5a3524f -DIST thunderbird-115.3.1-sv-SE.xpi 702347 BLAKE2B 2255af09bf24cc7454a4d613d2a873ec24be6ab97bf042194aa08992a8036cf0864d0ce19b9e61d495a94a12800443392a83f72b795ae84886362ab921fe906e SHA512 23575f82a0d48fb83fd18c01c903c3d60ae46afcab1a79d97b7eee424354a4cdf780bdd8ef8c4c3ceb9b27f1709cba4d7fff9f982605037e9ea4fd2695138cc0 -DIST thunderbird-115.3.1-th.xpi 761857 BLAKE2B 6c2979e19d46952f73c39077aba1a618de04732e6be735602010f36b3fd0f4920bffdabb085c99351bd8e462681cc2ec75590e82a9c938256e17203321ac68be SHA512 cf126b885daf718dd2e8110b0b3ac06bcacc2d98fa9dc864593429640b3ba964312f8b5d02e91c350b6af5f6e841b784efe6c3adb44e548ea488da79abdf5daf -DIST thunderbird-115.3.1-tr.xpi 715004 BLAKE2B bc26ea5f7b6f8bc84440ecdab32955eaeab6f6031d3d5f56ff798932fda3b772f2cea242f6f716657a63126defb4a71c75953470438b02df96a09ea33dc620a0 SHA512 14de6ccb33e795a01f6a37752df61431bfbf91d4545fb8ea82cb1b743dd1bdbc4889965607a920a28924b035050affeff38da44953899e40601878b0a2c07317 -DIST thunderbird-115.3.1-uk.xpi 813757 BLAKE2B 8799ea7fac535e962a13116edf9af2008a6dfd8135ff37ad454392b6b53cafabb4646f6b075385eb3980d19e4363d2e8b1461b6554c9aa9fea679591bf842db5 SHA512 71372b52f2933a94752cf88ccc8a5c9f57b1d6ae0eeb95beba531e18265780bb2ab05c2c6ce823cb565be61d67e70d83fa16955a9968a72277997742393b6c30 -DIST thunderbird-115.3.1-uz.xpi 579986 BLAKE2B 261de874df88833621156b52d8e3aab9c017deb3606ff7d86afcc5350b6d549863cb4f07c9de1ef41b2413b3a1defd861fdfff5148c2773311896f5960866bac SHA512 b3719b79a10ec3749ef2d80aa4438a52d5e19aa2628f9e6e1b748c98948223f1eb497504c1dd2a0c97fe28bfef4a333e5b5c739d03d61ec3361419490a106c7a -DIST thunderbird-115.3.1-vi.xpi 742718 BLAKE2B 67e79ecfd4f3f272c6d446144ef977a076436612ba1f322eb14389b368892e8ea30ff7f1406702022af36a15fdf7e1ea5fd72b1abed25b2f1de66ef0386f0d31 SHA512 32f04bd22d8b6c3279c16e590d05818c70d2b83473c6807b6ddb2266579c433ae78289196e447de85a4908dbc9523c74d6c8cfe3b8d8fcaa72af98539f67bc75 -DIST thunderbird-115.3.1-zh-CN.xpi 740788 BLAKE2B 669031d165a986add4bd11ca7abac883a8828ca82f11da13f8baf195db89d31bfb598dbcf7edf54a33cb7a806de8f65d5aa12ad71b2dc8e22e503b03b2fc5af7 SHA512 e97c69c2efd501c437fbca65159e6bf3d2602f57ac83a0949bc78b99aa2bc97220965383efbb61262a85e4fce6508af6c9ce8108644bd2e36a62de26242ea1cb -DIST thunderbird-115.3.1-zh-TW.xpi 744415 BLAKE2B 3be9715c63fd98daf03c7fea36bf254e1e9b3dfcc43d18d5a7a4b480a7afe716ca26be8617785d7185f34fa47376ef9c5f0994381d56d1362792eb34a4a25241 SHA512 51b204f793d25f946be11cb23bcec6d85224885dc628674c2282b1ec7cefb23f9088bbaae78b5642d1f32b329c5203271a5129ce491881e0efa748a5e68aa431 -DIST thunderbird-115.3.1.source.tar.xz 530392392 BLAKE2B ee1f209e6046493716efd49acfce8d30e0fe29a1d6ffc0bf435ed97a173f470420a9c42963eb396da042b65dfa72a94a4df8d775bb6790d79fabf139779a177d SHA512 e3b643cfee07d3fdd7bcc686db6dd3e81b09ecabfa9df4d34dd32acf3799b4b0b4a88e169f957d420e06aabba55c4452f3a9761db37828b025048ad5d8ef2db9 -DIST thunderbird-115.3.2-af.xpi 542157 BLAKE2B 6a19d5768223354e0a82694296d7e90cc2e8047dadc668d1edd8b025fc85371d9c4c4800d40b1d874613b08fd242e6bcef18c0e050d96a0444628db7230ac7c8 SHA512 87703239b301352b71fabe48a6774c1afe99f7cf606ee747fda31261780ed6f2f84b9e8a0503ed1d0f3dd5223127eb6f5471f3ee83fdfa5d29cd05920cd29141 -DIST thunderbird-115.3.2-ar.xpi 654728 BLAKE2B 1732a7253316459b98b74c8acd22746fdf313202d4738d7904fa3bbffe991fa1e3fadbedbd4cea0975cdd575a3c5fcf46a55eb06c24b848b485f470168e5fb1f SHA512 fe0a40b58436a3e56d29e902d9d1f53a4b96d0061cdeee7636f10305f99d6ec8cf5f09eeefd333f8eea4a95a67af4e65580c692e4b675e033e1b48986a179224 -DIST thunderbird-115.3.2-ast.xpi 561121 BLAKE2B e1917ca2081c6e849788007d16d59c7a3089de3a75f85fc82db36d02de9c262b142982936b70040fa71a0dfa93c7cc046ca0f6aa50195a89e967b455a065c389 SHA512 eb21430708eff7c9b0fcc0bfaa9ea1ff5e1f103a79db4e76237d0ccab60d05e7e02f15fa3d6d2b15d6d7b6cff2a112fa6759e00d082b8e5bc46c45aac82fc7eb -DIST thunderbird-115.3.2-be.xpi 694085 BLAKE2B 25494fc772573e1e5fddf0131e57a88fbcca71d39a248a80ec29a3ab62155bcbb558a963d6c20e6e04b12b560800c5361e47cb524467dd43b51b6e05629947a1 SHA512 d8089ee6cf3691ec576e4e48a04cac8563cb21b189fd037aaaecf64896802056264e781be549e9c2b3d287918a86e4fd885c1148cd334e403b66639c10d15e0a -DIST thunderbird-115.3.2-bg.xpi 681251 BLAKE2B 03e1fd49d927772d28373a9bbcddde89bee04f56852decd88f9f9385e738b566ba5c0454764bb1bf619df9ca4c15ade7c981ee4d8dd95f179b92a0f48c32629b SHA512 a6ea6907567d86bd55cdfbd5a7a8ece2e16e46db2d615d3e8dcf49bb0146856c593e5b8ae11784baed32524891a839306c106fdee0e9d1c03d99e6cba042ae1c -DIST thunderbird-115.3.2-br.xpi 626936 BLAKE2B 810363c5d282d9aa3fd3838486557594ebd5ad2cb7c1bcdcee46f35bbf835971d0ff108bd9e516d36988bf7c96962aff757e143b30106dd99fe4b4a3699b8a6b SHA512 52a7d864630708bda19fd8ffd3316e9f1c23d4f6ab942576be64904d0850bf0cbe1c47c0f1b20162dc0b64b314ad5c9eb701472c3dcc0190c19e1363eafd7480 -DIST thunderbird-115.3.2-ca.xpi 670651 BLAKE2B 18d1f75ac9c50cb4317cf86f0adc18bbb1a7e4c02abafc3cecb99de580ea4350112102aa68bec3a54bd2effcc23434c61264c0e06da97613ae32550dc05700ae SHA512 86909013795eba1889fb079460209f7bfeb7429579e31d245adbca80c21d9cb72c0ed277c9a5e5f5640e3d113e3ed318194ffef977d79d3e48b9e3ee12ca5c2e -DIST thunderbird-115.3.2-cak.xpi 657817 BLAKE2B a89a206566a9f3a24db875c591ff58014584cec6a38eb45b66134ff1766139547689f2213c31d89c540ebc7f462864ff4901bb9594ac72ba171dd5826c754f7d SHA512 4d0fd1601b32067a74190a2de166c3e40af0e9ae1679dc9984eca489408a28880e698f8f6ad3662b1350907fe24ff3684e86b191c1a32e6800e6522c2ef1de7d -DIST thunderbird-115.3.2-cs.xpi 733801 BLAKE2B 1f6e853206433136bc98682c9594029dfb4a0c33fa73d019ff3c3ee227fca81bf12ed0b202a990c3073f038d356ba7ca81d80f8fd610c8a2dafd9e025b7e471c SHA512 1ad24a2ff99a8c472b1af38e536804a9894317d4206d105d07fff6700a6de0593feb0241a835af4ced6922f0ebdc48e70f5c2fa444b460e1e2a68c1f6145ea6f -DIST thunderbird-115.3.2-cy.xpi 703267 BLAKE2B bbfb0d075a32271f5a50a14b8a96bcc273726eb1928c743c03f83697cc4cd483c22d1fd991661d696fd19047a29a49d98f453c1268330692b4fc425336c4ab75 SHA512 cb6d6d75f363e468cf3ebd0d11bb29434ef97fc8d03a66a9a6bb0f39cb729911841255204f73f1d1c6d0f8964b563ac90148e40bc1e17c584cde883e62fc6682 -DIST thunderbird-115.3.2-da.xpi 690755 BLAKE2B a77be1b4ca0c45ed3a85e67e7f6e282004a59f0efbdc2f9352f6a73f64a49687ce3e199f8f9c7e426fc8723c63315e0430e9b30befdf318de8e87625489d834d SHA512 88e750dc1046fda5b1f5e3035dbdff0164d9935189a935abc55ec38660e246ba65af928545e4c5c1446c0f21bea8a84fedc02576b802c3ec2ff96df948e565af -DIST thunderbird-115.3.2-de.xpi 720204 BLAKE2B 628ae15cc25c0a5b305402616c98072818e5679d1162b0903e97ad7b9721815c51fb01c259f98431767284443058beb51c4c3d28e1e8b08ac5b0cb610b1dbaa2 SHA512 c03259f3dd32a572ae9abd239c66263d288727e9d0d536e3d9932b91308cfc4c8dc848d5146a3ea5c49a5ef59a044f35e656ec510fc6c908bbfb1615e248464e -DIST thunderbird-115.3.2-dsb.xpi 737299 BLAKE2B c55a5774e5d2d06e5692280846126ad9106e7e4d14902616785cb73a25a0f6372319fca47231b07be71df8c65cebbcb71a94eae23cc07f745a28ff62fbddac41 SHA512 68d4b83823ee10a4e99134fc770501f6ede2408a19f77d464d2a547c945e9f5311f554eae80f9ce59919f0427a509ba275812644b336ebf1e2aa91f4d87ff36a -DIST thunderbird-115.3.2-el.xpi 836693 BLAKE2B dadb356cf8d20028492f6980ea13200696ec6b496d0b5f97faf6063895e14b3f1d7b5d6b05aed4f754f910db9523e9c759c358c3cad832ba9a49ecd62e8315ed SHA512 00c714e9ac248086802b1c898802652d2dff10788cafd8198fe5ab8da2595860dc3e7bc97b622b15f73d7ba4448fa21fb145e984683ad43a6ec829e165b23cc1 -DIST thunderbird-115.3.2-en-CA.xpi 656173 BLAKE2B 9d42742dd861d4b73077d5b55d6c0ca6966c00e363b1eadf8ff9f352886776acb810eb8785c99a73ade519883bde8cc4fd105e3d9a815ef383736e5d5a48cb3a SHA512 d46eea27a36bad898f95716190455a5387996d56affba0aef2f8f279e82f54376df46b4e886cbd5cfd129e501abb72b3b49700ec0a1935368ed877b867b4a871 -DIST thunderbird-115.3.2-en-GB.xpi 661453 BLAKE2B cc9d78368c463f3589f2e86946888bfd6dab6fc2410b12dcefb0f3886eacb3a2b4d9d9a74d1ad49d006bfe7a76068341b439ecd59c0d7b401b75e12dbfd0d929 SHA512 140f4c382059d62063bab4c869a33645a87419f23b6821913b07d6d7e25a320b35cb00c2ef96f3074e4ea9a717a611d2b428b222b57cc53b080485206a8fe6bc -DIST thunderbird-115.3.2-es-AR.xpi 713036 BLAKE2B b4b95837fe9205599a11ac95bbabd2c5c234e067acdf5da5810ede5a2bae32326872e371dac5489591c51c5df714e1247c39e4b1eb609d1b06c13abbef28879f SHA512 cb9ab37e921954e18e8f0ab8de5e94b5b2045ad06de725ae00e9d906ba5f3ba93f27867c0a8bbe7a4f2a8078283df684f70e991dab7d57b5f035773e2a1159d5 -DIST thunderbird-115.3.2-es-ES.xpi 675617 BLAKE2B 954fda314eedcd226def13f8beb3eb77dfd37e5d1377344bf51450d5327235f336e40ee2bbdbab28ce792331aa2090bf850a08e67eea2ab0584a3f3d5c18cfe0 SHA512 6094096539623f8fd769200240df848cdb0678744ed14f747a3fe2d5391b85bf4bbf56fae70b401445875e199f16f72d121093c9ac2e5f49915257be81fcd4d4 -DIST thunderbird-115.3.2-es-MX.xpi 710142 BLAKE2B 38a0d8c7596dc63dbb3b8426e5cee43263e3b48d75a2b0f69abd004bbc2d4377f5b0b9d1b97cb23a369ee6a2bdea04db8cbd6540ecce65859c5a5b2ecc22058c SHA512 f62d9b5a44d5532c8f7e9e9d7678303ac3ad5a0cc663f8992d86167dab26865bac55e90bab3693bb155ecd0bfea207f3cb3f1b1ecdda9ba4c4f869270cc68866 -DIST thunderbird-115.3.2-et.xpi 671822 BLAKE2B f22ce42cc32eea9ad2b969e791e66144631dc7bd92fcc1148a917915d2412987a33af67a77de56972797d15ecc1f931012c67fc5e028944aa3831af504988dca SHA512 1f5d6ff840b8ab3c7847caf34c5c3f09c62d821c25d57fe0b952c9aa796813062d7d5a56a9d2fca34178b612a67f7a26ff5c5914b25772c46da3c56273628c29 -DIST thunderbird-115.3.2-eu.xpi 692552 BLAKE2B fdbfb0021d756185e0e79bc57e36ecbd4f4608f7395dc15145382ed6db77df8fdcada850ab31f094e153c50bf410c2f8baf63c9417415afae7a63aafda4d4b2f SHA512 98222a2b3da07047771d29a5c1d42c157a3ddef1d4b70c84c389a374baa1dccb03a6b537fe20165f0d83d83cb1b0b175fb355573cf3318cdb43d2879dc73db4a -DIST thunderbird-115.3.2-fi.xpi 690417 BLAKE2B a4bee278ea4d536f555f47fb9be18f6db1fd8fe0793008792690d8a607cb839eabb553dd135ad121329c36562843fb231bc91861cf41b554c6fc19fc475c9bdf SHA512 b40530daba74eef5ef9d2b076214cb45af1d346ae9189dcd4c56bd394c2a5626534ec683934997732112a4451412cfb941b4844714e9d4077b5dec6ed1951894 -DIST thunderbird-115.3.2-fr.xpi 725271 BLAKE2B 4ffa8085918e7895c1b4446c72ce3385032adba3c426c1270131fb32492f753025456cbb1c1167da286a45a766c77f88cd11f0a290d62dc0f357e47edd146da4 SHA512 c1de10f414a807d4ced5fb15f8228ac91034cb049e10cd5dad4398cee1a8052988b7d54a0e44f167a015b96fae38e0d951aedc91729670a1e637a01380949fd2 -DIST thunderbird-115.3.2-fy-NL.xpi 707839 BLAKE2B a2814dca1ba8c583aebf28b567b5c1ff509bedcf0c7fcd871cd2b7de6eefec84aa26ff5a91d96b45d78d372992c5d17716d252b9ffcf5a03f526ef41fc112d82 SHA512 9e38e13caf7c2600f96ca6d64ee0e908d75ddd34aac1d4ceb219d6c970ddd23fb18203109eadeeb0fb4ba6495f6683d9c0589679b5101bd77018b4fbb76fc8cb -DIST thunderbird-115.3.2-ga-IE.xpi 602151 BLAKE2B 36ac1be4a36595e739862b9a1a6f71d0f7a5f3c523595273aef420472a4f4efc47352e2d6d26f34d9363e373a66820f3642db026b4fe0db9834afabeb97d1e16 SHA512 f3815a83fcece641d78a1ce9a1e09796558947a59cae16e64547c33e233e8035ab3c36a6917c67855b87a0d19099a2ebc2ec2cc5d3eb65b5d58d251826eaf060 -DIST thunderbird-115.3.2-gd.xpi 702994 BLAKE2B e904475a61cb720fa79cfba4419c7f4d3cca103751a04d46cbb54323a66ea24bca950139ff462adf3b45fe9e21814a47b2f8d5285b5a2c878831d4bcbe8da128 SHA512 74771989104ae70dc5a6f1cef24f9af5ad63575cdb9f02cba97160e0c5ffa06cbd53d2c1ab9428d8aa39985e6c5f014852926bcf90728696ee9821b9d1c4d9ff -DIST thunderbird-115.3.2-gl.xpi 705372 BLAKE2B 88d23a267f8d8ad6877807ee5d54a2e81e4ea0b035bbad7358f3c0e47ddb71ee9fccf519959cf4c4acd4c77a832807ad9e5bb7dff75a3f93f53f4b66c121b30c SHA512 626aa8d833e6c4f1bfac8bb48d0ff0eb02a59a56371d35a6b06d677cb0d152f19df27fe6da7fa79da6807db7703310954e104288fb090380ca85e01e7d1acda4 -DIST thunderbird-115.3.2-he.xpi 667477 BLAKE2B 93d4ace4c7e2e3a1581ad6d39dbdf4ea5f9b577498d7f0b259b404865c4793a9ed798e937908e7d996d682ab6ecb9ca3b08d478616852cb6ddab8b5f13486992 SHA512 54d2c25eb0f0a24c0792f5cac5d6975ea93074accb4f7baf9fc0c8cdf59539b4c0410fc14ebb2b811489c46aa7e1d45001d00178ef2f8a5237e8abf954297ccc -DIST thunderbird-115.3.2-hr.xpi 674806 BLAKE2B d7f4b404b8a7c672bd1b87ce18499e3ea3cb113b75e8500e18103532021a04d31dc1c4a821ea4574a5699f87d287f85ed81c46930797e80b7d60f88a6bf6658c SHA512 3277022ff7c9b514017ff2807a293b7c3cce592064c9df761231f05a062c61324bff4045f842425c4924fa7ceab86cee0e388758faee9cb05023a8a216400a43 -DIST thunderbird-115.3.2-hsb.xpi 733833 BLAKE2B 4ed1fd47084745ed1ebeedec850a9e05c6e928481dd9858978150be2ec0ac2edb9175003bd49ef7fda1d9588107d7a087a1abd0fe1f261b75c3f20443ccf8126 SHA512 34d6e168d9c071dc44a64edf1578cd42651162027945de4dd2b754f2d09c3beeba5a4fb06c93e7d341f5ad633af96c74266700b549561724fbedaa5c75705ada -DIST thunderbird-115.3.2-hu.xpi 736576 BLAKE2B b0e3aad1c1706adbdf84aca1bf3fbcd225d6353c3b128df94d7843fc98418de92b4ac8bda9b14248660cba883fca3c756e5fcff6350869ee91640565aba136c9 SHA512 d10eb1edf5c71fc68ff68527bc8ecf0639d9d544ad2248daeb62713e8fe88b85b4af4b0b6a8ee5827495cc58f0d7ecf3f172b771418497a3cd1c280fceb7d5b5 -DIST thunderbird-115.3.2-id.xpi 642542 BLAKE2B 3505d04b4ed0fe40a846d192b5095f7dce091848338d848be3066fe332b1d7449abea661a9d2e281626333950b914aed2a4a725fd298795fa8fd8532076df2f7 SHA512 638c82c4d73580b861de5db84286e1a222eca02df4b2839cdd0c898c32da476e98bdfc68c407c356ef9e213dfcdfef120c484080168a3c052f06999aa1f8cb2b -DIST thunderbird-115.3.2-is.xpi 701960 BLAKE2B b45cea7d8bbc1a57b1287df6814f74bde2e1697825620643ef866ae2d27957785f3c45ecd2881b956fb21362a75f916f0ff9b539a27b6649acfa0c15ebdf4c2e SHA512 fab7a6eced1f57439158e3475e5c84269e2cb0140abd4650826e91bc874eb6d73d376dd43469edd7e9a7959f29f07e7c61f3a0422b823cc964c938dc3e73ca96 -DIST thunderbird-115.3.2-it.xpi 643461 BLAKE2B 502d6d48a1338b31be3aa54dae8d4eeb344478423564dc0b00809b2975361ad34161934ef81f0878a014204b0490087ac84ee03111a48a47dc3a191c6ead420f SHA512 f8906d1a55ec8a31eed73097d38c1fe3a471bc098968cce2abe6cc0a14a945dc83f0f1b4958bcdf991e57a623e2691c28832851aee6baf0aedbeffbe93c1631f -DIST thunderbird-115.3.2-ja.xpi 777476 BLAKE2B 33d45f50e8a94ed4728adafb6fff7107d460db20d655081d7bdbb17318a499b963a958859b6e041e76ff8db7654bb5e38dfa5d611d6e83d6737039850726c320 SHA512 34f094a94628c603af4fb2438888686cc98d0b522ef6928831fcde0295533d91b68cda844e922af46b45f5674e5c3f7856d875241e64c4efb2024ba6bca1d466 -DIST thunderbird-115.3.2-ka.xpi 764457 BLAKE2B 759cedefc253adbebf23c26df81f418e77ebe27095bfacd00c21ded2f1974df629c42041089d03076c0939f69f8dfcd49003309de1857b7b782adfb9c1082751 SHA512 6d6ae6cdaa5d72d17bacfad359cac1f543ea4ea913e3daf20b6c766e0bc82875b6cda21b055a6dcbee35b6d20325de74f9d8563e8516597bd75df48dc02da274 -DIST thunderbird-115.3.2-kab.xpi 698918 BLAKE2B 7582e5856cb7f9d6677c4ca454151634242f0b4b35be46dde915630d590d1611194e1c0858fcf762ef0756650b2386b0318dca2d9b3f01148ccc63a4d13fab76 SHA512 693f6ff1a9dc21ecf61646f400898ff46040d337d330d1d8cd89c4a2e5538b50e1fbd8426a1581d37e131a357b876153e6fe7cc8f18337c159ac5a1f197bf536 -DIST thunderbird-115.3.2-kk.xpi 804988 BLAKE2B f7cc20f2c5ea2638590b93993f71319b8d567b0169b468bc5ccc92ab63afd896b74fefd896a046f879c3cc12b59af80447667dfcf0a1da7e7c6842bafb66a183 SHA512 24e3a820203c64559e2a9b314eda53143a35df4e22b238ba41fd70f9e75202171342a2f21b395d5f0593afb1f3c7383ff837e6747cdab71f84105110b8da503c -DIST thunderbird-115.3.2-ko.xpi 712589 BLAKE2B 3a54ec5db0ac9576d87617a03c197eedf23645c7a7733d6e94b3e6e70ddf69ee11ef993d90c784c27f72c5198130c47c6f5a092d51c67f6088ec051d26c3c06f SHA512 db70e351b5eb950d8a1be27fcb113ab37af17ab0e79ad48c4440b70dfe61bfa85dd8d36f850e64bcf5dd4b3f8b9cd8893ed3b1c0b1567b0aaa98118e9e4606e6 -DIST thunderbird-115.3.2-lt.xpi 680096 BLAKE2B 3ef0dbf0da9b537fe01d9c17e663abc547e2d622ede1df913132342d3bb328e202927392cd750eb6331affc03f491d67e111ffde72b17bcad4f66f2616f2569b SHA512 690c6450b23f809061139d2f99f8fcbed1e4397ddb856d97d68818164df9a80ce747e6632477bbce1e69f6a7515241586c4e3f2520f76bd4f558ab95cc0c21eb -DIST thunderbird-115.3.2-lv.xpi 604649 BLAKE2B 0f9e2537b6b1ae1b6694d8207fe868e0a1428964357498e926cc138a3f4dd486e00549acf392a10fb76fdfcf6bd9738aaeb8f5da0396fd9a38e1364fece999a4 SHA512 a0c22ed4b7158593e2a648c1583e695f496187587e1495ade46f0e8254933a75161209f9f850b6c2a6143c3fa786f1c4f53392cc726ee1a997a9dd61ac86247b -DIST thunderbird-115.3.2-ms.xpi 565734 BLAKE2B baa3ce1be40080b82230dc90dcee6d751fb8423983befac675565b0a451ee51e56be1a142928e70c17e3958d0293adda0615e5f1afde96caefda09ddf7e7be79 SHA512 f6d2476ca8c15a18ea1df7a4dc79afaa71e05c054d4c509bcf1b06ad9a49321918455a1eae366f7d271bfdd0028812235f61b0bd08f41fd744530fdb0f1fc0ac -DIST thunderbird-115.3.2-nb-NO.xpi 653834 BLAKE2B 9995540a9a941e81ea03202c192798def5db96cce80b60c55a10414be0064116f9d39fb9b9304df138542e7d15a3e0df5232ff1d8ea966a8ddaebe55d7a48168 SHA512 7c9277b76fb205b28144fc6d0fe7d3b04f62bb38d3220d334a4f5614bd9faa8a2e1326c01e0a24bb1af8249f5cb1ab40f9c19d3ac42feb8594ea562255fff5e6 -DIST thunderbird-115.3.2-nl.xpi 699388 BLAKE2B 591d5b5e2abf55f8e8c9d941b981fd80fdc43e87ac37c961645373bbebf1ea817479ba1e73986046181c2703faf31cfb05c188e5e870313613e853dffe4d9368 SHA512 fe8c509fae6222611d149db428e8b030642faf4a573ca123cb8752e36d27bd6d1c70184cb75da04fea1fc532b72aef3c982f16e36374e07ad1061d6ae6777769 -DIST thunderbird-115.3.2-nn-NO.xpi 672836 BLAKE2B 791e688294e6bb3298bcf464b77f7bcb185bb2db4b0a0225bcb102e5b03abb7bfeb6f28e5d42cd90ca6bf5bab8a924d11a08f87d127a431a470ce3c181d61946 SHA512 b387961ce1cff641c18d343f11bbd2d275585519575adeaa269d83b4c900032b0a30c12d09b920d195c01cfcc58c5f87d5efea48dd29e6a80f26d51ad12eed55 -DIST thunderbird-115.3.2-pa-IN.xpi 655776 BLAKE2B bfcbb249ff4de14f00d84aadd05572148cfddfc040ad629d44c17823019d158e3082c6c01c134cfea7137c3319393aea91449518d38ef63084f65b7f8fb9ca41 SHA512 46fbd44aa4e58d091e1ca9075baa26fded70a20ba7747b38f4729ec75f710af4af087cda41ce4cf799cda5b989a15f8f931998230db1bc940df52dadedc9972f -DIST thunderbird-115.3.2-pl.xpi 716521 BLAKE2B fffe94bd18b0892b5e3ea16cef0dfe983b1f54bd30d21f841360d419d4e35838bae3cc6dcc29fae9f09ae4294041f92862e9d30addd3791eeb7f993344f07c4a SHA512 e73307ecc0892babdde468b252eaa86d12d0f6fdf7d464f436e95a5d9c36f3f22eb8ca5a5b3c18054f4474ac5fc370c38605082141d21ddf0c190dfd963d7c2b -DIST thunderbird-115.3.2-pt-BR.xpi 707196 BLAKE2B 6cc0f1bc610b9fa842b1037760971fcd673e5818264cd4c64b8b41c326de53070e0d4d56c4c993c8b61bd443a5ee5b42342dc762d41af8f57e3aa2aa9d81b270 SHA512 e7cb99bd503bed1865d77ec9a02751f745282f7b7eb6dc116a000e556b5d2a06593ee211103f021a0326ee8ccd17a38c2dc3974c1d3b35ea1b01c9f43bf95e77 -DIST thunderbird-115.3.2-pt-PT.xpi 688988 BLAKE2B 8e3e276545a8ca58c9e507818f54ec43cf38cc66cdd15ca4f28f4efd21b66ff9b9cd7e8b6782f1f35bdf6b196302715bb7181d911d6dc398f23d1c12b3807358 SHA512 1e23350f260965fdf631b9b80808ed95440b62b30fa4ea2b9497c31837c27cbc71105c0ed16b24b63854eb7fdf1c0f00eee451bbf5c311e431f43d994ccab38c -DIST thunderbird-115.3.2-rm.xpi 703912 BLAKE2B c9848fe0a4b3da30009834e8baffdea8c960c1c10704724e5e884128ff203744f44adbfa1a89fbb32b13fcb0d048a3179eb4babeff75f7a7b22f824dc2d3380c SHA512 108fe59a4349e0a9e50db068fa77842dd57143b263b6979b3a5aca8c89393937af75906d1116207d4693b271d211204ba90b4ca817552433f7dce7b5c45683f9 -DIST thunderbird-115.3.2-ro.xpi 651298 BLAKE2B 576afd92a122f6a7f700689adfa275460fe3c8aa792ac9563825ffeea23d4e5e308f1c47193b12abea454e5a4c40be8c48351f69172a842f77a5c9925db8b491 SHA512 db90d01f0c666596c3aba2d6deba5ad78225a3a8ba9a8b2d5c2db7197e8c6df4bec31283ec7b5154aab10fbfe5bdb7128ea0cc8bad941f7da63c62b9da279099 -DIST thunderbird-115.3.2-ru.xpi 820781 BLAKE2B 2370bc3f95394cc722227217d6f167decf37db24886240cfcb4d405c333f1e75c4ec4c1dfba441ae8442c8654aeba4d130de56b5cb64b0a0241389faefcf77a8 SHA512 7855c576620b2f717f7d1fd84f855398a249e8227edd979a65610810cd61dbcf984305913406dda5ae3489745a4a9aa4192bfcdc6c63a983cb8ca674d63ccb24 -DIST thunderbird-115.3.2-sk.xpi 736589 BLAKE2B fcfa3f438062a95e79b906471d9be1989802ff38d5ced9b61b912812ae0622cbf9ee3615381de724ec848f0836286034fdfed9c29aff38ef2f89783293026c29 SHA512 cef5ddc78508f47f79432d1b45e3580e56adfbf9bbb49f2944d869e52536dc54fc75685d77ac7020db400cd2cfa966fdc44027b133ea3a708de400468310200d -DIST thunderbird-115.3.2-sl.xpi 701672 BLAKE2B 155d632f163f456d7f2bc32139e8a8139a395075fe9a7aeaa01324b104340a9aef7d66a8d8ac71847483af62820beaac6e9e22b2276f04ccddd40ba2343ea701 SHA512 4dc0c67e379a6f620005a7cc51ea904c007b0429a002391b11a065414830fdb06309eb60914b17c93e06d7cd201fbe6617a5b74c7c229850255001905bd25b81 -DIST thunderbird-115.3.2-sq.xpi 717452 BLAKE2B 27253da24ac37c8ca1fd588d12c1fd21927de44c5b49007cd3ad977eba72cdf658b857cf3884e9e4c7553a5f08b85bbc6c459d0eef699a9925462c61e7e06a14 SHA512 d85d41f44aa7494f111ffbaeaa220de81c39690172af2ce421bb19ed9cfaaec65530f349cce859ee3aa24b81a293e6110b91fd7820f06ec6dceb0a827cb6e0b3 -DIST thunderbird-115.3.2-sr.xpi 740173 BLAKE2B 6fb67404313ac56302e926bd4537202d3c9362fb3895f4a24ac85f1e23aa5f554919d7dcc61b8e1cba870fee7f36a87dc2920f9e42b052eb038998607be09fe1 SHA512 51a5910c1638171734aa0c5270e9c294ac38973cae021b2a4abfe1b133de08e00b5ba257c29d786f183c69bf0c12e5cbcb94491f48b3db8b89d7df409be8afb8 -DIST thunderbird-115.3.2-sv-SE.xpi 702287 BLAKE2B 0c1b5ada78d719cf44fdadd1a393112ed5642a9b1d758f26899f8fce7b4b44e1590bcb31314a83902d510297b097866777cadd4f87ad99a00ac065aa852ac671 SHA512 27f1de38f31e917907435af8c93f436486b37767dc4c4c52f8a7fe306be86df8dae512273f044f3e9ac1b35ddc90174c74f4c0e04e06382bc529654735387794 -DIST thunderbird-115.3.2-th.xpi 761857 BLAKE2B 4694ea97253ddc13765e94425772f4ca671463e27d019feb81879de6027defde03bb3445b4a91bb26f05e1520ba1317bed1ee80d2832460d2e224289f188b838 SHA512 2b72ff288a186267dd4c896e185215822aad89c45e7de3f4de134ab6959f24212271a936d17d8cb45b819477c82d3c35305c0fea602807e6bd8070fbfdfdb618 -DIST thunderbird-115.3.2-tr.xpi 714660 BLAKE2B f85407420d7953501291f89e0efb98e75b029181dfadc520443557173b6e28ce468e3219b421277cb739872ecb96f13d797dedfd6f1e0ead5887aa89f4a46af6 SHA512 6ffa2f2f0fb451565f2ed9ce32b0fbb888ec05ef0e34fdce4c3c2b40b2429af4a596bd4053f6b20be7741012927790f61a4e49f86af2d69488674abcb92c580a -DIST thunderbird-115.3.2-uk.xpi 813301 BLAKE2B ce6aaf83738d3038804e8bf9a246df994829dceb4d93865cad224bf66d75c429b415e067e634866c7169dc28aa5c372b1420c613d5125f8821f279ff0e0f6055 SHA512 1f82e940971452f97a0f10b4b4fdad4d98366dad1cecd63abc7971df5737f63cb2a5dd2b40db039268466996d6d44ae4f2e0b28a56bed90042e6ff230f18b093 -DIST thunderbird-115.3.2-uz.xpi 579989 BLAKE2B 1c8090c67116df5eae650357f5add0e1098b255d54420854ce84f7dc5db93c4c658476e98e9635a932cd7da20dc191e6fca1ce64bdb60b34ff42e3c1719ebdb1 SHA512 7e1e74951890db1d57a37b6ef597d753b731bf4e5745f24368d0aaebdd74a283db840cf421b5d2fb352c971178916c3d79680b201f0d7e7defb17ca28fb50578 -DIST thunderbird-115.3.2-vi.xpi 742632 BLAKE2B b96d81e14bb8ab75f92fd0c44e84811db39b90d32e8f723370454194cafd416172d99c4fbf8bf9a268d3c6dad65940560b057e1d414767dfe0a2c4e22d01a831 SHA512 7f23eac3254c6b037d6a7430afebc12a0985581a74989d5265f5e19996f19d4834a1551221964004b5207dc3a4feb55b96f351bb9924e20c08d8328ef8dae0b4 -DIST thunderbird-115.3.2-zh-CN.xpi 740611 BLAKE2B 1a84b639a2873efb16db470101cb817ee2f881373369c2d88a3681fe0a618f6c5d80b3e6566379412bcccefa897f6e2a8f2b53f3ff89efaddfe35f10a8a185a4 SHA512 b4a078bf3dfc2bf862cded64adca39cd664e6942dcabb575d7f8ff369049aba513e45253c8a6749d4538ac42ec5fb67eefcc1f95c8e8548f6f2452f64b4c7577 -DIST thunderbird-115.3.2-zh-TW.xpi 743527 BLAKE2B 1b56bec877791713d00d2a285c8bdcdef572b6f6da1c21abdfbebbf80bb04994cb056a136081bf5c1f3275b7f60cfa0da2cd4ce5f5808dd1c836586b6b45af9b SHA512 6f4df2f3fd9ff7dc543432c4b8929c358c0e2b9bc5bd22bd7093f52315b9af5655a5fb030e87dbf642a0f5dd63ebbbba06772b41ace9ed8ba566c394149e3f0c -DIST thunderbird-115.3.2.source.tar.xz 533609600 BLAKE2B 94b149707dcf792fc17ac206a38f5c1cdde48c3813f5a0cb200d1033301b28ba852133ff6f381eb179cb918146e80a89bf0813c06db9ad449945d09f93f70607 SHA512 e94bdb940327296754324d8fcb055813247a79d377399b84184e0ff80123240d923aa3745c3076d37f06296c8cc49373db2d8e8a6ac4edeaf63cd56ca4652e35 -DIST thunderbird-115.3.3-af.xpi 542153 BLAKE2B e3f82bdd75ab153f7f04925f8ab6756e4ecaefaf2f2b7bdd0b7426605847fbca38152ad9624e9c22dc759cf73094bdad79cac9328cbdbe116d2afe4ff40957c8 SHA512 6e03e3cc7afdccb1c7e9f5b6c3cd45db216c5402aa8f7313758a3bafa4000db67b39f23c71b5b7c1aa81aa9b4ee4fbc195d37d178049033e71b2bab9c9dff608 -DIST thunderbird-115.3.3-ar.xpi 654724 BLAKE2B 1bbe8993309f7557ef8488d866049d4378bc81385240ae2ec031b66901fe9c6ef03ccb1fa2a3297c7e957e8aa5efce5d087cca1ba54d7dd9d7f755f655fdc737 SHA512 9515a13ca7e1e47ef01d41e16c7c4fc98c0191d9b68e5ade077280367728dc14b136ad1d3c4ab053eb757fda558b4679352aefd31667caab75486d125fa855da -DIST thunderbird-115.3.3-ast.xpi 561119 BLAKE2B fd97cf58a0d3c817e6f0cb2305fff9af1a758b2c3ed344d883e7716ead7dd085b6abb322e3c9f9dbb944be7617d2663244e7f8d5f9f8dc550e4bb0edcf61b07b SHA512 4bd1fc1b9d79f2c9a7dbba2d6d4403f539fd4ec6681f7b582b5918254dab0a46fc6df314e96da85736e82c6010f9613adae98f881feec904a5384ace4e82d6a9 -DIST thunderbird-115.3.3-be.xpi 694083 BLAKE2B 175dea85faf801c4c1ea2a657d6106a6a5cdb76a5de718541f63c870ce549261ea4eaeba6811a233122f66b9e374a91fcae1bad85b7b97f384199e2b7c8b919a SHA512 0f3c9a62712c858f6c463b6c927bcad92388d47937ad0a0ba347ad937683b6e325630d81de6586f0238e5a1b5ff026de96eb2855cbebae53be6fba89081c5fd0 -DIST thunderbird-115.3.3-bg.xpi 681252 BLAKE2B 0334df6d0ed6b796b4023369ee9843dcc3ce946dcb1c701e875e344d54fd7e4004283b67c0ffba042d1595cb4c7887072fc001da8ef728a5d277b1e950377034 SHA512 c96ae9fb4293df6da22bed44ce34ba1a65c13d1675fb3321529efb5f93394ddc4de8db5b82020193d5d8e46882306ca06fdc42e2b423bab3dbab9f88587cd3ee -DIST thunderbird-115.3.3-br.xpi 626934 BLAKE2B b13b6b744e18a9eeb11433a841af8892a6083b0dd7f0be8c771f954a8b7879b4f643ec34c7f59547837d5d1ffec91195ab85751e0bacfe9c3ef6617f261ff152 SHA512 2658d635802807b24443184f7832edafb730cf242ca1c90bdd519fe2a70fb9eec90ff6b51d29d6f641df284ad8608795cb34f0a3f14fb2bd38a6633852a22aea -DIST thunderbird-115.3.3-ca.xpi 670651 BLAKE2B 7bb09dd35f6bb433ff4848c58563c163df156912206b51a1be646c23dd0b63878d3e745ad6cfedd96915078553c5d2b4e1d743fd19559cc1f8f54e6febb2e430 SHA512 d803ff8003f41482ec561ae0da1ed61e24ee1faa7516d25bf629d33795a4ded7292ce84078d01313d7764df8c01f868ee7bbc86fbbc90999ca487c4dcf9d1c14 -DIST thunderbird-115.3.3-cak.xpi 657816 BLAKE2B a654d9bd3191e09378d25459f15d9b0277984477afe150df40a3175465e5f86559601c81464994f8ca3090038aed055dc3f51989c3ad8c444cfc635eb0a229fa SHA512 62f0f97c5900ffed2cc3d50b187918f430e4d1f5e4e7659e56b642c936619304f875ad2a04937792bdc6f94acb5e516c01aa79ec70df791910fcb06d4c8e7dfe -DIST thunderbird-115.3.3-cs.xpi 733801 BLAKE2B a72e4f87ae2597c11e4adcc3f47c3acb32b91d11bcb124298732a88f17f60f4712cb412960c2aa76331428c41e2e0ffe3f5cd28d2d73858ba27c8667a1a7044a SHA512 b30eba64403bbfa0531e2617a8816b550d5822f2cd00855169b17fcb4a1c0f3e948ebc8d69bcaa8ae81310df93bea1f6a0c8ed52244ababac17e665000f9e922 -DIST thunderbird-115.3.3-cy.xpi 703266 BLAKE2B e106955358ee4576ca183d71e1d4d8fd9957c182e3b22abe9cbb2a669ce141f4027435dd5957c3f2ab33b116a61580bd648769eddcac23cfedfbc65f99fea98d SHA512 d133e337859ecef1428e51516374b3e147edbd2f8e0492e14698820b92912590ee8263a44665a1d1f402986c85d69d758de3896f9897f9b82a997c412b46b687 -DIST thunderbird-115.3.3-da.xpi 690752 BLAKE2B 0e9762ab3a1da479fed1dd6054941c93a97a30ec363eafd146c49d9f869caf970f7550442542dedcb68c4564e9264d5ac2906d2906f86a2e575154ec0f24b4f9 SHA512 824f28ed212d43551f870a94348a362ff89a70572399be39a4f81791465fd43ae962e99d6d95919ebf1e11664ff07e994fa1c1a2b824abb0ba89c6684b825400 -DIST thunderbird-115.3.3-de.xpi 720201 BLAKE2B 2adbf52090902e76b61ec452342ba97a7c31bdc4c55146e191619b960f8df61167d1edf4795e9699305bb257727cf94932bf14f623154d055b77740454ddc919 SHA512 1295785d1b1aee4769f8265171c6f4812869efc12b404bac975d59e203801d3378e39a4c381fa8ee325bbc0152d1ec27c6ab33c636395c1a918d7801edce258f -DIST thunderbird-115.3.3-dsb.xpi 737297 BLAKE2B 769a849129e76db170a2a8d732b5a232ed6d7792dcbee16b60be0fbd80a654c834b1af76c51805f237cf09404b19446b0657927825955e6acb17fb54109dbf15 SHA512 17ffed68293728ab09130911476f5a034288285a9c23cf01dbf19f18e556359e8825e6a0311c4cd35d10827e06cdc09115bb11b7c0f9e490738721ebc1e43402 -DIST thunderbird-115.3.3-el.xpi 836691 BLAKE2B 377b976324a5f6ccb8d636017e8107f94ae99124d55c0218dca4826c7454761068d106c208e7879ce2a999ae1908e4241864718d5ff6a3d516080bea110f3dfa SHA512 c8cbbfece77bc6c64e285180e86d0be4160855e04b78df90e48f84cd8fc4036a06e42e516beae9cbf24acb598c7f820e5a1b2b90285a80bff00cf645fed5ba38 -DIST thunderbird-115.3.3-en-CA.xpi 656172 BLAKE2B 1e22213a69926c87d8522bf68ac033cd27328d5c4d8ed9f383807ae4ec7ee074105b86dc8c5dc8abbca41ced184920e7583453f65cf555b100a52787727b281d SHA512 d5dc92e2468869e4f84e695bcd7ee85339c495484b115a72daa2bf3bd54d8048ab2e6751ae933fe1c66d80b4932ab966aa3f9b5b61c82366c962c03cb3f36a8c -DIST thunderbird-115.3.3-en-GB.xpi 661451 BLAKE2B a1d2c18c30aa30ccbfb657756d249377139190dc3a2ea5c2c425c9d56ee202ecabf633242f70542d23793eea3d87dd10c25b9c36257f0b385699ad1e3f81e227 SHA512 22745e5d2a01d37e2e20b6a7fca672789d4052ea78d3ea4e5ffae36ecba583d47738ca507dbdda5e7148b557906c6459dbabf9dccac53357a9097694bd08088a -DIST thunderbird-115.3.3-es-AR.xpi 713034 BLAKE2B 89d319a984412cd4f46d457bbc89e5c56df31253cfbe46cb98bb71f8e5a25f917cf0397bf4ff6f8f8d80e8be18a87b16b992e7ad96f5afbe01a9142d21c67b7c SHA512 7a3e735da66e17e073073cdaef636c9f57242a963074929141830b7b6497d0ba6efe9908d213714eac72254031aa631f1e92e14069b2ad281fb7c326f7878c43 -DIST thunderbird-115.3.3-es-ES.xpi 675615 BLAKE2B 40158900b8d19f880f01e798aa4fdd8b011994e6625f5a59e38da0453064b7803020da72123c3c93714973a41dcd6ab2382a0e918910c63e0c284457205a2f94 SHA512 b972cf06690fb815ef299caffbeaccc1612446aeb314edcb42291b602ddde2b330c4e48dd21ada08e073e201b7ddca577ab8610db87e5962f2316cdfeb145f2a -DIST thunderbird-115.3.3-es-MX.xpi 710140 BLAKE2B 3e8cd374d68e4cc95768f8ec13afef633ba503f5ef01317fbc462850b738416f6976099b968d98d47e307afc3cd464b97df2a850e57736a80195a3316484edd0 SHA512 c61ad317f122a06899f83ef8d1ea2206a5e6941dc1872bbbe74f29c2ca3598c5f2d28773ea4406094e804e28ec757c476c504a63aaa6b72142759466366794ab -DIST thunderbird-115.3.3-et.xpi 671818 BLAKE2B 14095d082ece68ddb377a6bae51c24625ff453079a70ad35d409de429e12e0acf29c2751027b1fc3f3ecfc1d2d61271ca02d71e2098f1196e7bb94c487cfa341 SHA512 37d8ca601b5b694b230d692260ee8f7f2bb7d497bcee19fbbd230166d8a2182ad81618eff93722f5286be426f80e200c5edde694ee2e505f63cbfd59f9c288b2 -DIST thunderbird-115.3.3-eu.xpi 692550 BLAKE2B c59a6e6fc966ac39ab169dd6a694a754b01cef80cd2f26e964dc4a41496c04ce677e018fd1654222fcd094bea0b5473549bb328d169696c7949d473fdcfd740b SHA512 7c50a528a6b958a00a5df308c597b715aad1b58568b6079c5c49ac05e0b52cbf489c07a3ba9bf4fd58976a69ceb9e7b1c9efc56fd5f9ac86025ce813671f2625 -DIST thunderbird-115.3.3-fi.xpi 690414 BLAKE2B 6276358b93309cd5a770d5739c6d09b8a5187f308f9109703802f3b5d7155e28b71e7a1e26d3c691759c9eb16d4e38be0ef8b89f766ef50ca2331293386b5505 SHA512 fb56d6661e5ce497db7d6f33b4fb233970737dcd60b927fb2d0c000031e53945a07654b7c415ef6c81f0035bda5743bca4c3630f2ef49119270784fd1a697a53 -DIST thunderbird-115.3.3-fr.xpi 725269 BLAKE2B 221dbae0ed0d2c81eb4b278a44abcb8bd9ad2efe3dfba4fbfaac42230c0311bc38c2ade492c2766a36958947e0b737bc31c5ecac3b1268b60057b1dba51d7b50 SHA512 c2c1bdfcc0481d051e0617d41ffae3ceb1533bdbe50a16c650e47172da253745b5c4ee85bba8e5e292c6e217b502f43411b239c5f2b4d14a801d5e9b7f6d4a70 -DIST thunderbird-115.3.3-fy-NL.xpi 707839 BLAKE2B d0c81707d9f94a27c9e6237fcae2b3b8797fc0441be1e638fbf5de0efebf44c07c5bb7474b4fe6cc5e3f92d22eb1c7e05f3e50c0755e2d93133a3e6476833778 SHA512 91c83e07a65960e6cca325603c7ea88a47a0eaddce85caefb6deb805c772487527f3e4102b35af376b23c3f0ebcea7abfe9c48dbaf5e9b40165ce087aedbcdc6 -DIST thunderbird-115.3.3-ga-IE.xpi 602152 BLAKE2B 493e7af03347da3b9854ba0b843f1fd7c17ef8e71b7a07189ce123cf8fd1a2e0a8a2255c2c77561074a356da15a4c8fbff321e200359d439c53059b5c9f063bf SHA512 39e54ba82f4ea9d2224afc0c8fa31bd491a16f4aaa2d80f13bf7980165d9d0e19050495f01a5bc9175a91cc501b2f9aa41a576700c26e23b5df1883b71e6c939 -DIST thunderbird-115.3.3-gd.xpi 702992 BLAKE2B 2481d0e7e41fa36207db53be028b8d1cdf132a7417fa47e09ce69c48f591b06e1e2d660f71fde733fdfaf351e7d5ae4a3175d041ceb07795c11956563be618f7 SHA512 94afc5372183a3c7f4867a92412e8f776f331d0d4555eaa2f8be58612804f4aead50b821ae19bfe0eb03e1fea7719db12ebe879235872cb17b475a4aabac58e4 -DIST thunderbird-115.3.3-gl.xpi 705373 BLAKE2B 0507f26d16c671fb846df8b156577ebd412716c582447b9873c5ee41be80868b4289c4b6399a02e664f4cabe762fc4c279da0fa20dec510fc3266141d09a1b3d SHA512 d6c6229b3ae221034c7ff4cbc72c1ae5ed67bc9d04e58fe25dffdd233b91c2888ad46816a9851862854568665f08501e613fd47b8cab2d8b1c65dee566d42a77 -DIST thunderbird-115.3.3-he.xpi 667477 BLAKE2B aeb553be188d5401e932d2e08c1f33e720ed648395c5dfd28a7a5d11d251fd24e841a2180a8c9d860ccbc2aa9441a0a11f75125b01f0a9ef10fe17c284ef78dc SHA512 d522d930e4bb2da9b7361817bba91bab7b1cdb3c2b03d9d60765c87c4192704ded20b6d467a62d2dc5b8e83f8517f4fe82954874e14603341c78d81654d747f4 -DIST thunderbird-115.3.3-hr.xpi 674805 BLAKE2B a4b19a2be0faf4409968a62e4bb5db323d25e6b8f46e5f81659131700447b0a11c26ce362ecbdbc1e6044dcde1f67328aacbd1a0ddb5fb0367daab969fb48b00 SHA512 c488fd450eb4ed67c063be5ca50cb37d1ae98296bc7a22744cbc4878272ef83c7f176b9fcca7b0bbd9d86b9758ae81d4289e6357438d0615efb9a07db8c7a5d2 -DIST thunderbird-115.3.3-hsb.xpi 733833 BLAKE2B 7ab3b158558571160913f15624e1f1610af8911af2d5b75c8a0b148959dff99db6a7ef8de891a34809500562be5a5237aa492fb22b3e8ca53d4355e082a76b09 SHA512 29e80be348b7779671d253bbba47d98b7f53ba9120af17b5e461ec9e10a9ca38ddcd098616977f064541882d2f0b91b3f3342bf1f9f099468f17c1e87d7be4e0 -DIST thunderbird-115.3.3-hu.xpi 736574 BLAKE2B ba9dbf8d04c34395c0a8e06a5e5fbe52c50cf65fa3f9683c95fa8cccd2b9b3ec69cb89df17d58c5c97cec7a686d057eb32d79157e817eadcd978ec3ec8acd76e SHA512 9e714bf8719af828a7e4d8ca53794fd7bf813caabcb3785d1a4466fd40e1848ef4258dddb1b948d4a8e5c568a354f53d2e10fb8770ee9ed5466bccb15a032f88 -DIST thunderbird-115.3.3-id.xpi 642540 BLAKE2B c60a1ec1e58e108a13e4f667965933d558fd64a1af85db2728194d63530ed43c188c4e811f1e34803ed51f4c6db7985eb6d47b600e397e02e44618e236ea2925 SHA512 995d9166c1f1801e4d0f4df4572ec64080b7d29709e53a19a843391b6a872b60714a40c128c525a003efbef7300e0ad109da44a5b098bdaedff972fc5727b04d -DIST thunderbird-115.3.3-is.xpi 701959 BLAKE2B c3c96fb17974a845c69b0edc0353cfc48994dfa91689179b46b80026a51c79a785ae9bd5a5885aaf29a5ca49b6612f673224dd8dd6d5ba1a4d4291ba944cade2 SHA512 8288e6afecef5dc2e883f3becabc637f20a591da5000c53a9b1dcd311882e3ed13e96b2fbaf692a5dd0132be93c45990a0e00f347107905dedb6a0cae0cb033c -DIST thunderbird-115.3.3-it.xpi 643458 BLAKE2B 59bc08519ecf0d480001ac3dc7a348b28363bfff4a810b714b2e6a8e870ae38145940a8436623603b05aaf9c34d0395fc755f3c1ecf139236ceb7223d79402fe SHA512 54cabac8f6227405b5f25c8c73a8e4b438d386cb145aa7c6a9ed1c7e07e179ae009c716e1b8d686fcf45e4b7172bb2f568f7c770904be4a15746b5e67e4c22e3 -DIST thunderbird-115.3.3-ja.xpi 777476 BLAKE2B 4f2c23f4750187adad9d6cb9fba2c657678b46ca62a1abdbd87d27195dab01a0fd16b10ff96997c66a2975d892e411f0891529e15000659493b1c4bc5a20fd5b SHA512 8c55bc4ec1527f805a01037605d7802ed79e337a9fad3bce82c19d63094942f63a95e240d7c50930c81969db8fda1b74d7e98817cb7e195f7353dc3ca02ae0f3 -DIST thunderbird-115.3.3-ka.xpi 764455 BLAKE2B ba1a5adeaf4ced9706b922b27daa7ea77f5b3592be338b81ebb8759cb1339a2dc556b1e79ad881dfb9d5781e2bab07eb42608d868cfaa5ccfff6d743d102e615 SHA512 ec66723547e575f5e3a3f3a9f40fe8b86dff94c630ba61e739e3aa3cfe6c5db9ba779c2b33658ba8f0bc449a684d9ef0a317963c02058d30562bbb073d994f10 -DIST thunderbird-115.3.3-kab.xpi 698918 BLAKE2B 1eb54072eaca5765a860d6df6524c88f9a74bd79df6ddf82413fbfff6345f85286a6314f4b73e9e4a68b9f67d72ce178b8385fa512373c802f1aa147d11ce5dc SHA512 1850fa688131a1624e1008bc08129af5091a0c6ac7c3d7ec4c14f265cd4fc0edf08e31e41a29ada820ede6d0125d7224182464641d57bd69fb24d6d5666bed70 -DIST thunderbird-115.3.3-kk.xpi 804989 BLAKE2B 91b8833edbc6c69ecc26d1cfb9d3f105b43a5988b12143f0736d7b35bfcb59f095d64cb34a56c71d7ca664bab5fe06bc1d682b928bd37a94b1c8ad596629781c SHA512 8ca52879b649b71e5fac18653f4994dc545be86ed0cff276c225a01d79c55b802790d2904a746b51036ca1fce09212238f2b34f9e72654fa30662faa291e790d -DIST thunderbird-115.3.3-ko.xpi 712588 BLAKE2B dc050ba9f6af88005ec11965ba107ab7d29337898e496ff66e85959fef2a37ac574006bb0aa69a6ea62b4d5c0747bfc3e49221b382bead28c1f3b778461982e2 SHA512 1b2385a400f43d9225eb1047ae0e9c6fcb2bbd9b3eb79805c38b5169c6defb664426eef87dcc7ed3512bcd8aa2ecc7769e0b1ba29b0a3274733119cf0e13cf1c -DIST thunderbird-115.3.3-lt.xpi 680094 BLAKE2B 093dc209943401e713a42391ea683bcb1400649d4a9b95b633b1e5acf9c74194abf34ea364ee58c199c8df75d33a51e703dbecf287c5f0cbef30ca980c877735 SHA512 ff780cc489710b542776ad11a6902202416a13ff458317a7be9e4c2b0516191f2c4b5e62c733cb382bae80d2c3aa89dfb4f9a2a0ad6e12d4105d11054a3a8ab8 -DIST thunderbird-115.3.3-lv.xpi 604647 BLAKE2B 4b48583a8124a3ab9a8c8086e542f936c1a09866361b1d9de93c8a61595b42400a9f44e64d634c7dc64c5bb90501a6a285b906113906bd4ad80e5de9a401d491 SHA512 af3788cb7c19051c1e154727bfcdf4cfb83e4679c029123c111cb7fbd71ac6a221f77a19affa32da2133fffa3e2f3596472b9abc63db1a1a855cdb4112dfb3e2 -DIST thunderbird-115.3.3-ms.xpi 565732 BLAKE2B f65dba33130d9ca921b2b89ad9fb0a10117bc44a320dc291e137fbdd79638ce0804bc34796cc3a5f557de5f059b63922114498b3ceece2ac3390a374900345b9 SHA512 0d7502fc427bb1e5eb67054e8807472e5124a562bb9fb40b72e59097b4586fc332bd712851a00ec4a303586b5e6a4c24995caa50f1945173f920f093ef5661f0 -DIST thunderbird-115.3.3-nb-NO.xpi 653834 BLAKE2B 392cf076bec0f110040c5e26f763b43c73fa9f3fb6b19fde2fc47886705fb63f54f94d9aa6e2e9658ca3573728c4f55b47394c7ba389dc65f26d0d6e4a98b643 SHA512 09d9aa5cd0745594cabcd7386182d3c92d458d61106847c86338b636e48e477221df34573e0906bd37f67baf466fec1edad24cc4fae1e4770e7190d59b367f29 -DIST thunderbird-115.3.3-nl.xpi 699385 BLAKE2B 43f1dc8b50c58a584cb53e90765e7b7f5e83f60e90430a95a50c2a7d5c4b5e7bbf169f8184139a3a368df8879a3165e906a836cf6bc8d072175a698c6f0b9d9d SHA512 2b3d49f107906e381caf03b135e54fa6087897429ab0c865f27094f2d668b495cf6fea010895a1ad369854ef63e76009ff538c541a8bb25274d4103cf12fa571 -DIST thunderbird-115.3.3-nn-NO.xpi 672836 BLAKE2B 67d7e6723b6760c89e76b0b1fea024dd7b29660efa3516a47c92309d1462a30fbe8e1bb319209d149e20f21a9b0d794681666379b741e56f0179511b3a389dac SHA512 119c85ccbf2685a8575e6e57e314ee1ce287fce9bd31b29525baa87ed2da33cb1392d1d3ac87d264e25ab3f4bdfd2b8dae9aeb1053e5e0ce6aa4e5f20d26aa87 -DIST thunderbird-115.3.3-pa-IN.xpi 655777 BLAKE2B 4b750ff8c2cf5cc8be935b8899989161cca00784b86c5da0b946f267b500c753563daaeb0a3e630383fa3352b21cc8d8c10c956ef8afb4743a26d6ad5d4b2238 SHA512 a9bbd4cbc7c29ab42583d6961ea25568d3ae6d9bb938c3e2eb907da20881ae05ed952bf1b314621e7bac8287062053f5d67171959d7f1a76091d7e4a74be8095 -DIST thunderbird-115.3.3-pl.xpi 716519 BLAKE2B 899d2db86d14bbbc00dba81b0b8698d57661d8ad5d593b309f6cb9846bbf1c61fcbb08a79bed2d7865abb95499f793361a456c1d2c0d570769c77038772576d2 SHA512 a689bebfcc06e03860e6a8e378b467c13c97778e7b72cdcbe015f549b7438b172779ced7285940998387626e9ef465852901f3acf3947ee022b2886d813befdb -DIST thunderbird-115.3.3-pt-BR.xpi 707196 BLAKE2B 1d2cdc3b69075e57081edc5ed34cfa9ecd29107d8cb54e57ca341151ef32ad6d418acf356edb9c53267f6cd7f6fe58f9be50e1828c8e19a00aa6cab5fd0ea4f1 SHA512 ee23e819df684d62e7854ad1f581a24a7ecc7fdd72371a925ff05900895de16365c86db871f4b05229018f793b6304dd7a2bb21ddb266f9eb54c13e31429279d -DIST thunderbird-115.3.3-pt-PT.xpi 688985 BLAKE2B 2d0c5d81d6112e19dc5f2775d84b5b0e32e707398b2f986667f5a40696c9f98cb464cc76888041c501d69130c6c1223214cb10404ce6540b0baaf1ab06216df2 SHA512 dd0084327e690f607861b09209db51b7e1efda6d0e6377cd97512611d2501b0a51919c4c66f1b972e6ad5c8aeea4d9894cca3849a6869fc80116b51f0203e2a8 -DIST thunderbird-115.3.3-rm.xpi 703911 BLAKE2B 8893be9f928cb6cc3f40d25a17da49f99b2380a7c59b64ae236b0d01bf9561772d19e8cc3eeaaeb0a350cba81df852d9c2f0a1530d9afe1f547e709bd62beba6 SHA512 209b81e0d90458fe967487c7da9604e9759aaa9d33de4c348510ba06d4c6a4519df1d4f352ce036d2fc510552ef5154d5f532cb6c677eefc1267335b718c8ab2 -DIST thunderbird-115.3.3-ro.xpi 651297 BLAKE2B ef40a7f1a78948dca62379652005589c22366167ef832a57e0bbe5b53d0f1f4a7d0fdbfc42562566f8fad6583e32828d63a59c9eebca77169d4601c8d3ef42ad SHA512 441e67b1c33085fea2bae5eda9e8718c25e3aa57d09cd28b5f07eaf5c50df8dda48fd31585753a600ee591071c2c277eb5f2b43f8c513695f33ced280c6df2bc -DIST thunderbird-115.3.3-ru.xpi 820779 BLAKE2B 8dc0920d997bcaa12a141e6c051713ccd2c3ddb9f0b63d176499266364ce8172b2854d90b865aab228bb7218d61b9fe6c05f396d00e887fca516f6b8754451a8 SHA512 d757e3d843e880d10c77acde184957f2cce85ce7847eb7894d3080a4f1d793c3cc4a9453492bf330b4bf28d58df6a66aabf10dad4ca0f60e2f10ce503145dee4 -DIST thunderbird-115.3.3-sk.xpi 736586 BLAKE2B 5e579cda5c644be53c0e9aa8558f0da79103c1801ad05e786e2888603f91e8352b7abe0301f1a6f8407495f50d8b3d3fa26d60847bf3cafa6485acc8ef433d78 SHA512 bd7c4c1a28fa8f3f8cb640790e80b3dff8728121b2e9ad93020e54b7cb55450d46bf916deebfa84a3c01e647c5c8eccd23ea5e335e4ad33dc4f21ebdc7c63a9d -DIST thunderbird-115.3.3-sl.xpi 701670 BLAKE2B 70235ea0d0ede3a50bcfaa2046408e1e6f32094f5b48cbd4f288fefd80edc4af88f4db4691b76b8f1e41549b79ff18857750c67b8f354775759c0bddcd5de31d SHA512 981cee73acfbc0b6188653f961543348e6927c39076b83246ee6d570b87b9971ebe795b911daa0e2580ea2e6cb7160b0367c557a8a6407c740599a18e15c8c98 -DIST thunderbird-115.3.3-sq.xpi 717450 BLAKE2B 4ed33ae50b98438a73bb7c1fd734b4e01efead529e40ac6c8d21298fdad45052f4bfc8b12d909b9c8e4409f28f424d9dd7f6cbdc5f6aa6dcacebbc70a9a4c97b SHA512 61c0f288d79001196862aed2705e026edbd946da8cabb28aee434c7935d4a35b082efa9f7b161acfe7e2230b8707d640de8b4b4f611c26818198a6addbbd0055 -DIST thunderbird-115.3.3-sr.xpi 740170 BLAKE2B f990ee30c7b097dc58238d96977bd6291ab38aa4c224dad3cb84e6e5ac74d7a60e6a8211e6cd3301156f19600367584f9b27c97c264f9fb042c34e09eb645f6a SHA512 4af3172e8ac1850a80d58bafc23ac2fe71340236e69c6ff68debdb4e6e488e6fb36a88ed942f927817b9b960dd3ad676cec7f3a0e487234197fb0b026dfc81ba -DIST thunderbird-115.3.3-sv-SE.xpi 702285 BLAKE2B 9635456b63e154328c947d07553260cc7b1c670f20fb36887d68721424955b0306eb6c3af96a78b084fee0af39a76141c6677fa196a2d8254103b24bc19696f0 SHA512 82567083ead335e684c68600199bdcb9e5c27c87d0a8cb3188ec3913443a047194758277eb8c4aff583c70c482305568052ff34a21e8922d34cb79b950d9bdcb -DIST thunderbird-115.3.3-th.xpi 761858 BLAKE2B c341002de28eb3b1f45eef08919910890b9b027c186a4e26938903a73d0deb11845deafd5890f6de90825a48acb787ec1167c39a002c854ae0296d2d7b4848c9 SHA512 7a90d2024da2f6c4708dff726acf5bae6fb292e04554fe36526100271d1323723689c775343922321916ac5731d34472405148d2a966c6c9566c8c5fac78bdfe -DIST thunderbird-115.3.3-tr.xpi 714656 BLAKE2B 8dc0c3cedfcb9537579cff3da7c5eca2f8129bd131801f29903768f161ae4043c2c23c2ecf1189de14eb7b0470a278d0f0f360736099069353ae1f01db7af4ef SHA512 4771de69044f4b31096f23a53f4cf48375f247e9de578244d2ed130f80a80cca6073d488b6079f482a15ea06a942c3222178328cb9d5237c7bc6acd4b3627d5d -DIST thunderbird-115.3.3-uk.xpi 813299 BLAKE2B b652be161c46c292f960a71f94d33ebd90917a375e44a22ede00ab490b0d714649cc3341ee2e527e7c76e4f375d623d44d4cf33aa5e84b40804d38629dd65104 SHA512 b90f174f251b4694f50569a0e4f19d06106ac29b791199db2d06d8e7ffee052c0b9cd8e9a375a4acaf25df24ae3065c9a81db8806535deb37d0f6f6f39ac054a -DIST thunderbird-115.3.3-uz.xpi 579986 BLAKE2B 9c6a8b7f0bcd2847bc11e24e01b1eac8ceeae14338c26fe5ce65a5626b81a6cbe864a367edd168cc07e67b6e89afc616cd389dc6bf7018bff09f976d4da4f4aa SHA512 167d6e72eb97c91b98a8f378d27258fdfe69867f8b03a1f4087d51457fcbf49625b8ada57f8a49b3f7029c90dcd99dc41cec81fdf572e1bf4236b735248a4c5b -DIST thunderbird-115.3.3-vi.xpi 742633 BLAKE2B 85374540864f79e06f5822ae3299ee0ac9b476a85aa9c065ade87356841a16a6d87ddf7280a93f111ada29b27d4091f35d72355be5dc7d19607e961baa86cc00 SHA512 1a807f1954eac7370d1ae446a13fdb44a1aabfdfb01b5d6e553780b8bc5f77a19217cd7aab51870935d281f85059c829421b53f99b9a43c619712822dce53b84 -DIST thunderbird-115.3.3-zh-CN.xpi 740610 BLAKE2B 698aa0a22bf859f84467f3430481400a46c4bf6d6ff1418d3a07e3bc2e6bb10181c07121a2380bf7a4dbff37f5961ecfa286ab2f2b32a839fb428c58880bfdda SHA512 dd28bdbc8d68abd8d8007e1f3f74e3724b710e372e8f28d4cfe3029e45c4cb42dd4d8aa3a10465a8f7c8e25d66f1256402e49c5ba2ba7fc82cceee51fd639de1 -DIST thunderbird-115.3.3-zh-TW.xpi 743525 BLAKE2B 55a96f38f35ae017018f7af0e83b963b5909310cb89566cb8a917b0cf365411df62f36fc370bda2c378df08c31b4120d1ea03ca0c1f625ffdc6358c38694bc24 SHA512 8ecc806bdd8e8fdaf5fc35050401066f27946a9af47cff17b960eaa55b27a7736cfeeeac48fb65db7c83782d65effecc7b6a3592cffd10c75b4f4bcf40d1390e -DIST thunderbird-115.3.3.source.tar.xz 540032900 BLAKE2B 873eaa28daf89b12c5f1112042a19c33e40e6f2c72707ce21874371cb5ace1b48deb5679a625bb370c0bfe233cb9d730998539442df335c4693d3071e7ee59b5 SHA512 631042a3cdbcbae91d93eb71c0d4f6a1122e8bc7000d75fcc7d3cbdd0e82a4b31abac590c75771e77ab08d5700582b6dedacf62ce8e21a91e9ea81aedf1bbeaa -DIST thunderbird-115.4.0-af.xpi 542153 BLAKE2B cc0e645471cae5d61f644c708003e9fd6c5882faa4ca98567184cbc3d0187ad5562a2a6c1e4b2e752558757cf35e3bb1aaeb136a14c3ae6130803e36d514619f SHA512 0caf8829a240d94daf1cd80c9efdbf252a65b64d14a6edc2161297fab7ad9ac7c296dd30d3321d8ed34a491db0992f3dca89f7bc629732b2827db503f941d3e1 -DIST thunderbird-115.4.0-ar.xpi 654726 BLAKE2B 0b5fcaf5ee58e30a44122afaabdd54597b03d989a4418361fb879cd4b59d756ffe9718a4924f05bf50d808a6971045b8a64443c8182f4f7dad4a1fe859d9fbc9 SHA512 27647710d1d9fe049d539cb8151bda39bb63fe598b34eaa85d93c89e39cc192ce3ea7675a39311eb6b0828fac4edbc24b3d21197be779c42fdc6a7959b6ed3b7 -DIST thunderbird-115.4.0-ast.xpi 561116 BLAKE2B 0336738be472097d279fee169daefafdd83be79694e75928132fc4b5d7edbf642f605e78c508be351b79c21226fb7502426b7141b633fd7fb29c134fa99ab339 SHA512 f41568f8a2a1a8e88e15464e799f690a35b604edd68df8eac2d2a8a280107cfbbd6cc1ba0c46c75f00c3b508cb57b1bc649340f87cd4ffad602a839e014b3123 -DIST thunderbird-115.4.0-be.xpi 694083 BLAKE2B 54b2dc1ccdd33ae4a99c9642c08bf321920c2f74f0ede24d88b8402faf5968443559d0cbba65401cc8bdc78cd6697152395c94daede0924922f6772178116f44 SHA512 6cfdfa256cf0e18b638b1726d133eb9f3558d38db20d59742dc78d3ced00a5bde15c67c6668048efaa86e1642acf48f1ef357c121eaf26be5b0ba0a1564c0b91 -DIST thunderbird-115.4.0-bg.xpi 681248 BLAKE2B 26a7fb80500dd94bd0fe09a8a761ec81327b771bfa6c1fe7ba2faf05a878cdeb8e544844d8ce06027cc4cf08bd76614a998fb9f15d2f51d91a3fc91d3ed35274 SHA512 89e3e47d8d5356f9a0b9d077441fb7981f583ddddccf8f0df3c60a4543874109830222f703c2a38d0127b1b3286fd643e7e4434cef2da7045a34f8afaf73934d -DIST thunderbird-115.4.0-br.xpi 626934 BLAKE2B e7fe524e4f25adc1535a7f4f5b3395583643630cbc9566b64f0442e768d245fd9c657bc0ecd1970b321dcfcbe4d6a615f5d3508b6cc630b1955ce7ab092eea8c SHA512 c1b441a94ff5293f9e9fcc0e9bccf86978776c85d09d974550814705785c3b83901415155efa9b0fc7c96afca9e5f346784d472e3604813b9efbd78d4872ba09 -DIST thunderbird-115.4.0-ca.xpi 670649 BLAKE2B 93a1fb79f3946a0b388dac6b8efac6adeda3acc631d04f3f82c9954925b20fe9852dd391a895063dc91c948aa57a82f732b169372767697ed78b84b64e072d33 SHA512 1055b820a688af45f01faf2abe66bbad91db56a5445b10880442fa4bf7115cdd4100770b6f6221bc2097f12ad67cc7f091ef2d2bf7de0d63def0378bc9d70797 -DIST thunderbird-115.4.0-cak.xpi 657814 BLAKE2B 0842bdd95813124d9e96cfcf4d68e80590b808c44333fd20abb6a72c4752de76e275c5521ff1a6adf9346112b8cd64af3f86a83d8bccd456326fd97dee090451 SHA512 0c2ae541e37b60f1d69b120dd3dc4c8731b7a31198a7ed5fab0ca0d7ed93aa4cb4ff965f9d8ceeccd0a94943a6d9d202ba8fde9541c2a2e4dfbd8f81e24832bf -DIST thunderbird-115.4.0-cs.xpi 733799 BLAKE2B 5959d53dcd680bc427aea3d844568a8967ff79fd4830abe17edb9d08aa76bfb593064b3c05a464a45e61f78df2cd187ef93b9971d94d6c2b79daf0787451eb6b SHA512 5db8f334ce06bd6f1991b44354173d10885c29f3b72c5532f80b8da78c62227a5e15c39d8433329f2c2fd8056017e8e18cda69b7cf768cbf1408ddf35694e019 -DIST thunderbird-115.4.0-cy.xpi 703265 BLAKE2B 296065285233abf713fa3897f73dff85af9b93ecdad7888214dc3f78adb91f840901afa20d4bd9bf9b67d507f3241d962d6387fc85a8c26528922e1f66768892 SHA512 9a62e99f03a65adac36a669ed68a4cbdca4cb04147000c8c6042d2880a357ddd33750c5b444bfeaf3fc8ed23c49057e6a6e45603cc6aed64de1489afd090567d -DIST thunderbird-115.4.0-da.xpi 690751 BLAKE2B 2873f67e6d2ef207a439883732a859c5b8ed8e05235fe9560ee81b950db8e59e57192f073c20d1f065da72abfc65ea51ff275256c51fa5682772435db5fc6ce9 SHA512 3c2c7d8f3c95cff2a6c2947550c0256fdbae48ffcca47a1526dce85eae68cd6733bc3e30198699190d10fc94af1d957a0925f48e60814ec5a39f93badb3a2483 -DIST thunderbird-115.4.0-de.xpi 720202 BLAKE2B 40c74a5ba200d1c81bc437fe97346fe2fd866154b696baaf20d46cd2031f7bc33f92d7562d161935a3072b83228c6b7944dfa7c22d520408abeb615651fba157 SHA512 6e3b1540bd362d8c509544512426236e6726686ea313b764ace4c7d181c67e1f2b9e112bc6b3fa4a243e49a120f8a38964b3c0aab2516e25dcd1a0edec268a59 -DIST thunderbird-115.4.0-dsb.xpi 737295 BLAKE2B be5a2000a45966d9410d8e0ecba34271c6904c541d264a81fa7e82c8d78a0801300470eaf127c76268b39b1ee625bc21af1db58eb7aa668005bde989a7d321bc SHA512 478bfb50ccafa296732278da7891a90709a0888bfab7d67dc559458075f4ff6cdf7af3617ab989e421d125578dc18285b99ee4dd255ada16aa89c429532a4482 -DIST thunderbird-115.4.0-el.xpi 836690 BLAKE2B 57c9b29ce54bd53d1aa6b9ae36dc9a303a2cc9e4522434c10011484d011e53ce16bda4308d13bc8cb60162650c72b49b6281d85e7b6f01c154a0f06176d761e5 SHA512 00908aab56afa44ffefe436bec3b7f27bf9069c2ce2d5b0c8bc9caa7e037ac7baef0f5756740d6e6422abfe68a8e8f51e948e76c91f1c6a1bcd811438a9d8fe7 -DIST thunderbird-115.4.0-en-CA.xpi 656171 BLAKE2B 1f34fac269dceb9c50a93fa8be0d022742df9c9ca37a128f06ba0783f366c9f9eb94def8fadcc33e27d5f8878bb7c7e07c7ae60235f06418498a83a19bea6af0 SHA512 31050dd68876c741c7d420f420369e0a43efa26768f01af51d3af88958bfb7249dc48aa1937165e337ac5a0e0383b0c4edab6aa3b15385ddcc6295fa443489c2 -DIST thunderbird-115.4.0-en-GB.xpi 661449 BLAKE2B 3e871800082d361a146b48ad15ef30fd205466530047577f5f7d519fc78b3f844c69d64f59bb4f822536a6ed96e7be9064f37717c8d8c4b3b9f1e893f63d1684 SHA512 ccdf8d1575117664bf6296e6c77ea197cead665cfca39f698637bd9a3ae58f8ef02c80491faeaf05e184ed5d261773262a51708ea364e509de5b90bf0c16a398 -DIST thunderbird-115.4.0-es-AR.xpi 713033 BLAKE2B 1c9dc6ed7ae9b4e7983d0289224ba88a07f5545f31f49d0972f398f999f7c94943072a16be4280c40ece54f18b199dfbc0f8d1b0466942dfb0a3662eff65f991 SHA512 06784db904d9e132214df47816f5e5b81d98d16636cfad303836d93b79908f61ebb4750d3f8e4c1d9a1a62dd1243366d1e04487d7bc308241241ad0da0ca29a8 -DIST thunderbird-115.4.0-es-ES.xpi 675615 BLAKE2B 62a8b40957aa8b18faee4304b0fda11b5d2e6f9f663cc3b5ff06bd58ef15a77b2e243584c74c0220a945ac15806bd589893fcba03d1ea143a1cdbadfae81676a SHA512 c329bff47950b057abc3ba2c0041c96b3375f73ac1054c42d270a8f215cbfbcf3992f362fcfbc292e29ca4efc8b4671015934280df131588c9cd51841b102285 -DIST thunderbird-115.4.0-es-MX.xpi 710139 BLAKE2B fbfc777a6a54751fe03b7cc95b0ce907cd634cc82e86fc3bb2e658f6f21db6c8bb329d49baf87fe520e7f79dae3a42b3a3f297fb84e608e1d4c619e33da22053 SHA512 81366b602475022964e41651fbfbc4efb9423c225fa7aec71244f823f0c66f14be13231dc59283262fd44cc96336fc3730cbbea7c2cded1cc62c7b7d8fca7920 -DIST thunderbird-115.4.0-et.xpi 671819 BLAKE2B dbe75858b5c91c7564aaffc5546438b0ac1d73d6ea383c000bd275d82b38994e51449c15a94b78896a7711fb77ab04c19408db709888d7147338e8200ef0c7ec SHA512 b2bc6835751e2b5efcb168d32ba5bc8a15a13217de8ce5bc19b9b959096fba4109f295b6cdac6d3a1e785e12dfc7e0f2fb07923e138fe53be521e37f26ae92c5 -DIST thunderbird-115.4.0-eu.xpi 692548 BLAKE2B 6275bddab49afe9c1171a41e43650a1b889c5cbca53b7825be3fdf8bd8eabbc417f9194acb53408f71189fc28d131ba6c31943823eb7952fab8211903ea8154a SHA512 507d70dd24365aff0a92c28e7508593cdabca019748ae81cd08573d12dde295b6ae85387398ce92da00a78997208308516d6593fcb3745101ae0f194f896d77d -DIST thunderbird-115.4.0-fi.xpi 690414 BLAKE2B 1ac2bed35c396af4ebf55545d7da16cf4842e34ef573ff00f8c7277adc55aecdb14613af839016fde46efe1020102fc0a6971457389b6a4a566493efd8ec2cc5 SHA512 c618431111b6244e12be042b72955512580fb23f63c89c99ef82c998d74afe40b4822df60821c5263a1ec7b94934d42f3be8855d1eb1d038f579532a3c426ab0 -DIST thunderbird-115.4.0-fr.xpi 725266 BLAKE2B 506b9d24636278cba3a59caae945b73b97beabc5cbe08c12e7e8cb059661c522be5bf0658e5965377e9bfc0b6e2e9706d492aadb363f62a4536e738fb94c4d22 SHA512 a1db0ecc6bb609101e96aa2add48409a5f8adc8b20f7d3c09e678f7333dfc9ceb24f4e8c49ebb3aa4e763dc52f709cc61a7e7d28991b9b3cb3767c4ec80667ac -DIST thunderbird-115.4.0-fy-NL.xpi 707838 BLAKE2B b2c6bf8ba4cae9aac3f64e83c44c4633cc30606b9726622798c94a05e0736d55d2c3e43d2d912f705060b7f1766ef7c296053e6c6b770d596bbb83958f281839 SHA512 7739110d6691bc0315e7c17ddc6023f92e0cbe2c4b2b55aaf63ea124a85d2b8a0b426e8b722dc31279504c6c85d681cb8ae8e579fd722159b9da945c03d18e66 -DIST thunderbird-115.4.0-ga-IE.xpi 602152 BLAKE2B 57c46490a1e38ddceb10a5492383d33f5c466274119436069c97799e43a828d65df881f27252e7e2245c1da24d173c5920d4d300ba631cfdcea680aa6fd7e3b9 SHA512 15b2db1ac95390e217442fb2d91eae1f1ed30c552872c8d29b9607a08e5cad7f0fd4b97ba54f9e5dbb53872a807b8f5eb4f4a3065735ad69641cb5e185edb320 -DIST thunderbird-115.4.0-gd.xpi 702992 BLAKE2B 4718e3798009b4dc7e4f54835065a8da34c67fdadfc453235cd9679827033da28cf4c75d1245d161e80998131466b97b4180a5ea6dc1a9e197680d8314a8d3bb SHA512 5689206f5757ae641d71d5438b27ed7646f34b7359e4b98c76e1ec9215f4f420d816eae59224c8d406de6287d4c162f89219f92760a3482b627147b395f58d63 -DIST thunderbird-115.4.0-gl.xpi 705370 BLAKE2B cfb331409c01ca22fb69e270b4b61b1f6de37077fd6c8dded6c09aeb48fc567547ea457735d61ca5b6a0bc0bb96b1e40773aa213fcc1729c43396c50eabcf8bd SHA512 f2afcb8f522f644e10a6ebd2cceb30da199918ffe4d0962c32a8c697256f86072e15226c003adb090d6d835e0f767945884a1043973e8e3d9256a104c5ebe880 -DIST thunderbird-115.4.0-he.xpi 667476 BLAKE2B 7000d8308d18f1107d7dde39076b25b0aa47ebafe6e38a6057079175702864b4ba59be514963b56860e6ba51f92a74045ee0ae3c6b0be0fc22105d4fd51f2270 SHA512 46105486cbdf13a0ae7f08841f4565450e912a453cd2ac388d6ada7751f5308bfd8948684776653df0391b854273767844524205d6773df08bde09113550ec49 -DIST thunderbird-115.4.0-hr.xpi 674802 BLAKE2B 69ac7906ade258556ab5724d98743726399d858bbddb77654cec02919793044296ab074089276c1f8a79d84e9c2d3671cb402bb8f26340b40d6cb25f75edccbc SHA512 83e1543b0df9a4f75ffbdb032c19d337bf621ae90d842fd6bb762d95d6884a91472b563b57cf08275eaaeca41a4484d17dbf98994eec769915359ed11e099170 -DIST thunderbird-115.4.0-hsb.xpi 733830 BLAKE2B 8599d7e42ab9cdf0b20f455e14219310167cfb9fc40c0ec5adccd2530a3bccd909bcdc348d77465bf7552b321d6c532bd198cd1ccba12a6393ffd128b66f1f2b SHA512 4b914cd7b07d250673681ea467f17ae02bda783626e4600797372652380681c9a4012377c7bfc8b72c6d22a7878752fa07d98525364eff1b38442ae1c216ac63 -DIST thunderbird-115.4.0-hu.xpi 736573 BLAKE2B 2741baff48d4b01500ed6a4554453f5d9e22e10c84296c19fc6c0e0ad46d39ec62fb81e90dbab323f7156c8faaed9f153f8fd175d23614b8866b1a401ff97a97 SHA512 2f5cd28bf6adc4e43d0d640cea8de01e0b8b4cc84f03ec64e84c99c19bfb756b0a026f577e066c9c1efd475142e839d974ef5808c5f012dcfebcf3ed0378d0ba -DIST thunderbird-115.4.0-id.xpi 642536 BLAKE2B 522076aec747c85604871af38c02860aa14ca21738a0ff35a7e822bfe0dffae18d6570552d2bda6f4a63d418f53819bc5c41c1040a4135c330ce295168053d02 SHA512 84be514f2b315849d59870059df4e134ff228219307c483b946345dbc09e4cc8c994e637018622a27212d3c72f04fd45b560df3022601897efc21ac280736aa8 -DIST thunderbird-115.4.0-is.xpi 701957 BLAKE2B 50d72b860a00ea68a102c42cfb88608b2b42166d0a06a639006e7be0cbc53f20c41828cdf7b45de45e68eab1ce9a25b2b7e6a8af018fbab705fdc1e0ac533259 SHA512 a0fc4cca53628c196cd6d13498fab8fc04d6b9f283004a1486ac9ba00f8b7c3ee10060ee2b0099185534a08fe6857f8ad546920bae99f3b2cea4e04311b1d348 -DIST thunderbird-115.4.0-it.xpi 643458 BLAKE2B 82294726d1382a8262fc3ef7ab95278267fb7615f07523d8a62dd8221f64b4615fecb6ce28a940c96d4de8ce3c02b5aeddf55ee7c5cf448029da4354aeed7fc4 SHA512 bbdd3a7cd8a0fdeec5a32a9ad92833cd05b0b69e8c52552609a28e9075aa34a3ebea7f83ec75d8356d991e059c46abccad36e7acaf8e9ee6d1d2bf9ab5012fe0 -DIST thunderbird-115.4.0-ja.xpi 777476 BLAKE2B b2a65678aa20277b0d7e9a1a5d526f1033251536cc092ca435d1340f7970ac75ca64fd17ab87e616612260d75d34fd7f6b9b69042b32eb82f360e63801becba5 SHA512 60ea207d220d8abf508d3aa7ea9bcec38aefc35a8daf6591d6d1a4c0f3033bd6f9a0d95de39415612b69153bd807dc978a1ed45f0ac9fb7f43733a3d6cdeb708 -DIST thunderbird-115.4.0-ka.xpi 764454 BLAKE2B 4974876175beee4bbe9d2d5fd933b29c2ffcb1d5a384d7675e12fc5069f64f6339a7f43ee494ea246072c1c5c39fda8b1268b158f8fc6e6f5ab85fc3d2227e21 SHA512 ff6298414a7e9e5b5b1d1f1b57b8d9ebdda5374de05567d4fa1388ceed78153350ae80340435c379487f775a5b819e8950677476e16538bc33d90f7ecdcaba4b -DIST thunderbird-115.4.0-kab.xpi 698917 BLAKE2B 1ddf9c3f4ce03d5169b6e7d0b87701e09e3dc01095d6fecfa7690a7f38c7707e5de0409500dc541cc28fdbeee3d88348042158e342bf1f9ef585a270f2edafef SHA512 a73b6d6331002f1a4f1fe0592bdbefc3be704e960afa1fe99edc3b485ac79a4a2cc40f159c9e0c0ec7286694d3c8e6e844fee570caf3f09f2b55ae923b05ab4f -DIST thunderbird-115.4.0-kk.xpi 804986 BLAKE2B 7f5ed3b773ccbbb42326966903738e02a33787606d93e02d8267dce46c18ce07599f843f3de108577e1b9440c4f62c57b19bf5c65a01dc935759ebbf3dccdb02 SHA512 2f024835e566e134fb383d0ad5dfdcd7eb8aa3c369367d2811ec6b00a9fadfb82d4a7ec9c2cc0ed23070a22afb4ac3b8cbec7ef7aaa538e76faa09462aeb42ef -DIST thunderbird-115.4.0-ko.xpi 712587 BLAKE2B 5920904126bd80eea7f7ad949d6662fbba9a2dd401d42d08b2159758a33f2f6227a25efd923b1710cd0b2ef6da186b6f8a595e3812bdf51fab6fa349dd7ae870 SHA512 530597c742289c2c2e7030e39fe445938372f6c21700e9c55f2a7a34395a5ee4d8c1033f7d1ddeb7fce426111b299314f9522b155aa5df56dd6eda5ea5b4c279 -DIST thunderbird-115.4.0-lt.xpi 680094 BLAKE2B 1ad701592ef8fc1f30b9526e938a3c944071f948821e57778f45559a2ca21e52f56b313f683b3f364bde80ce5f48e858f6bad4089e2f3e03369aafbd01e8ec7a SHA512 d647fc9463e4e8da7b39f3dd44aee2c5c20ed3997ad1d3da61c7a938443cf18767af0ca21dddefa887a0f4d5442f6a7608abb40d56a0768d704368c1e527aa32 -DIST thunderbird-115.4.0-lv.xpi 604646 BLAKE2B d6c740d7a478749fa4b0e87db35ef7ada7e82f430f807e7245014b33f9ca80ce2a35fb9a0029593ea68baedb67dce150ac24a17faafc241547b04df6f1f97bb0 SHA512 53918fc69a7a3512b8bd2caa5012472e736054125171fe00d5a44225a7d628bfe62894b86d87e3fe7cb2fa2ee5be1f803800969133a86f91797d5d13b8b73677 -DIST thunderbird-115.4.0-ms.xpi 565732 BLAKE2B 6c66b1ce1f5abe5a40060a0d8008552c106e158235d2b8ca4fa457f88b1092e94b5581658fffbd141fe66a9840df7a1cf85a97fe1cb119d426472590283dc2bf SHA512 6b2f330d0596d9bebb3f3b83ed3ddbc728a6e77e06ff1033ffbc0f898db95e14c34a9ee61d67e0b25eb2b9455e6f5c098924ac9c56e63bdad1f890a4b8f3a0e9 -DIST thunderbird-115.4.0-nb-NO.xpi 653833 BLAKE2B d4b9443ef529ca806e38bfc910bf29f36e5ca896870f281c08eb2c4c25a0b5551625208dbdb8408524ed2490ca07da45a1105212ac2d73201f1b47b37c540c0b SHA512 ab45f279041c6619724797f6150ddc46930afc8d9251989da9dc825f7d09b322365909a12ef142ae419e1c352025d9045e09dafd4ad44cbab87de8e757e224ad -DIST thunderbird-115.4.0-nl.xpi 699386 BLAKE2B 837581e3706f6ed3aeb34235d2e3ad4b76cb3e3ec804dc9b04af89c2dd57683aae9e90c1b7f881f03c920129aab68d06e16debdffa999a697285250e057d2776 SHA512 7684da5c1c32e9b09a6541239fd045a944a24ce2befe40579b1bf1b49f57448c8ad9f4d176956d6b06ee61128af34106d6b29f16828af025e796227af5c3a3b6 -DIST thunderbird-115.4.0-nn-NO.xpi 672836 BLAKE2B 7b8fc7b4b33ad71fc447cdc81031ae2dcd318ea8071ede82c3f9852d450f9fd4536c78ae058b34db4575d53f90e7659b219cab70dd16d899b3657459e08855cd SHA512 e77d27d445f9bec6ea4ff95bca779c42b58322a86535b059a93d793c3152d249708e01be55a462d3ef6ab05cee87ec7852c7e831a4b41e90ebd13675300492c5 -DIST thunderbird-115.4.0-pa-IN.xpi 655776 BLAKE2B dbaf5fa5aa5a64f7c80d14ce5fe8a68915f9920ebc0e55f77451aacedbd9e32d68b7c9e56ce23c1bbba9b91a2668f51c189c2c07e1df6c83a72fd1307b83cf91 SHA512 1911d23c8b7d9217864dd94b296eac5ed4a869065ee0a8e5f34dc1e4ec30384bfe42d9b884f877a1690f45f19f05d9d3dfe2ab4bc7589ffa114a4eddbb06b804 -DIST thunderbird-115.4.0-pl.xpi 716520 BLAKE2B 821b1076b1c6b7c14718b4e9c67e6ab228dbe94c1b1a021f1d6ec15f6258811d77b0f23ec4e6e124b0419d80133191be3715c7eb32466b81517a3a8454af972d SHA512 59005204677fffb04001eb4624ffd1af465b7b5269558fe74256563fc47ee3c2762e51b88609cea9057cc9973b4db03281fa9afcce56fef1ccf4d462d0b757e7 -DIST thunderbird-115.4.0-pt-BR.xpi 707195 BLAKE2B 26745be8b361492cc68812f52a3a6c6c043c19e134300a669c5a3e6706d5ca83b8b07623b12b4aec7cb9f5225d4a1fc27ff8b0a18b1f715d6c8ae82e9de568fc SHA512 2a334ee4e5c93a9a1da134ca0dbc8316bc02a0df477a4fee1a95596d50ac548fee7a619630733d23e2197dbe1c7ecc515fa2ed873695886b80fb1e4b20c6204f -DIST thunderbird-115.4.0-pt-PT.xpi 688985 BLAKE2B d71d632829e4cf1b9617d40adb7fd54d4ec7de16affaf825befd49314e4f4cb587445cc27bb9b79e8b3b0229c5051b70175156b8a4542cb1926901697e86460e SHA512 0baa1b9d9ae5f7c4b9e1b0ff723c81bb940f41aa9de9d26aefec4f622e432f20bd0d1cf36836637b6bd45c392b6d0e4aa12e345119e9c07f189e5d68b7c1421a -DIST thunderbird-115.4.0-rm.xpi 703910 BLAKE2B 0987414d2470ab9d35b8e390a1dd2355f7fcdb2e2001180d2fa5f48f215a8289c0d1961d145be6e820b341f70bba972cabed3c48d582b0b1453ef2087d170d7f SHA512 1e8e006383b50a6006898a6575614d662ecce2d2722f5776c61909b73ec2d96d459d99ce47c1e832deb12f14ba8a666f51aa4bac4192147fa4fc3de8176805cc -DIST thunderbird-115.4.0-ro.xpi 651296 BLAKE2B 2f95686d5ef2635d15388c9aa1cf9206bd08080107f24c9622eff513570c5f1fe293e9e61022666c3ecdbe1ba86478f0ba0d63c397499fad4ca81f1834d0a597 SHA512 34302db7d276200dc3bb5020aaca57e5473ae783bbfdcc5ab584ebaa2a9c4df526a79936a2e5e47f488400f7cf9a5643b0200a71980aa55da13d7ccaa252b900 -DIST thunderbird-115.4.0-ru.xpi 820779 BLAKE2B 3ad78ce456889f09ad9e6306fbf9b964325d7b605d622f676c12080127d8a84a8b95ca2aad69d1adc73dbf03d549661e58a9db478f8d17e21f5d28b91d57e256 SHA512 3113c5f9b42ed7380b7c7a1893d6ec5d18af701f1b97b922949cb91547d5ad7b9341c788588d9dfc084fc19bc7f4e04bbb2add768751ab661e8601ca93174b3a -DIST thunderbird-115.4.0-sk.xpi 736586 BLAKE2B 54efdad71f0cb8f6842e3d33eec8fc2990ac237a08589134bf22142ec43993f133b3ea60e520897e63e2ce73c4364551c7bb77a8d0ed6c5fd6122816bb3acfa1 SHA512 95faf2b748175f8fed484bf9d358a7d2ec038a6a990ce251c5ac1d78635f1149d3f88dbe1d458bfc8a36b26bba2fd615d4273403aa893c10d810c9e0a702c7dc -DIST thunderbird-115.4.0-sl.xpi 701666 BLAKE2B 3b459bc1a160bb8e4e10903637d5b82d98c9b8624ab496c64aca983f2ba80a0e4f9ff0d6caa191009644db54ac76cfb4d3eb6ba5af7fd8e4bcbc9bb6f19d9f99 SHA512 ab46788dff7aace8ca11be8f217fc26ff3f32d59004566a4a269bd0c398c909911e5e4a7bfb1f47c4c41cf0ee35b3feb59b331b41cf1e3895af762fafb04aee3 -DIST thunderbird-115.4.0-sq.xpi 717450 BLAKE2B 0510839dd8eec89fef727de5092a2ac0e8c747c938fd8accf9d7a1ede37f8dc6ad9227aebef9b823f2ffe58ba0c41339a73cbe8ce60a5220dc1e34de1eefda96 SHA512 eb6108974e0986bb21a55e8d12b3c0a3c2840ca7a13c5f776032ba44e4c663307952558cbdef90d1acb454995c75893bd1b50f5a226af396d44e9d50b37eb067 -DIST thunderbird-115.4.0-sr.xpi 740172 BLAKE2B c38ff4941eb656318a1839034d3b92bcb27d7e276536c71276d4f7b5158bd2eccc399f5e77f131f0d009aaeb072d8cc2c691cd192ffd375f3d65f613af2110e6 SHA512 2e8e79debf2a512eb722bc46da7aa728d23ecaf358600d38cb6ddeca7071fccbd7a00b2af278e171f4f2698d9c009ad47d6fe8ba6209ccfc03ddb496aec83212 -DIST thunderbird-115.4.0-sv-SE.xpi 702284 BLAKE2B d64b2591a37269475e0f5a29a169770a3e26774a07f80824318da69c3f4a6f7bfee8f87020bed7505a9ea43e2e730353a84c26a212bddc51b18a8bb606abe7ac SHA512 5d2cfd9ee5396f577acab14f45db88c769126f388f4f25951a35834f4a8b293bfae56072b6f5c71818b10cf422a1f6865fb1bd6c3ec95e6aee70f34734506c60 -DIST thunderbird-115.4.0-th.xpi 761857 BLAKE2B 58dc2c41c69563694820a8fa15f06d9c39846c535ae3030d74327e81cb1e9f348e18b3ddba2181da501a4353fc23ca20fe010c2a101f0f246e3d4737c84aa524 SHA512 fa2443f29a3d816048df83d972ded3b1f08c16993bc1eb44bb38076d20b7e6d45e7e12e2618b8debcf103a85e2cf255afea96e8947d7ef4295984d53c5ee14df -DIST thunderbird-115.4.0-tr.xpi 714657 BLAKE2B f5d70a30b214a8b68904148fa098c3a02c2b47b806344cd62d88020237abc19ed46ed24e9ad46d9565e4d12aa943a7dade9b85551fd39ec75ce765167cac4e28 SHA512 04f0235b8a868d3a527033055625dc44db1729b26f25b9693cf95ed5e025d53ac65c852722fd1e190392ab6dc06c68d0ccbbcfad7b4ac359012a285e68eebb54 -DIST thunderbird-115.4.0-uk.xpi 813296 BLAKE2B 287556e4826f94de232a6569073af0a9e13ec73fc1317046aa50f2c80985345f8be5356e7b795f5685fe0845a5eb8a4ac40b31c14cf03e3922519166c879ffad SHA512 80dbef08b4aee438049a006b544e9bf779f2164518dec097d9fe6672849b2f8b521132863119929645d87f17f5d93c24de36086e416e6238fd637e6f57bf2321 -DIST thunderbird-115.4.0-uz.xpi 579985 BLAKE2B 401fb2bcb3f24e989d251cac766439e22b02aa06eefa182c0a0ee7d5c128789bf10e3f45b9f766c097cc038159171965a55f403bc5d72d68958bdfa5d1cf4c63 SHA512 101dd21c59acfadf058c28db8653a9e3bb4151ccac34df9001c522ec525042e6d4db9df75773acd54cc2ad5179bb9f67fef04dd0d7d37fb2982816ae7aceffa4 -DIST thunderbird-115.4.0-vi.xpi 742628 BLAKE2B f6960d87e637f9106830cb91e2ae0cb25c7ba60828e3614dd873d739c02bc02437a08843e9daa96e6224f991d825e21e07a3b3b8c052a894ceefe15eaf862403 SHA512 807bf457437af9c6f89f686c65b4618fb6dce553f5a400e660cfb5f881fab36941434da74e50748df5e13d63b48231313bee7337712c45fb4f0313746b2eaf75 -DIST thunderbird-115.4.0-zh-CN.xpi 740608 BLAKE2B a03975cd8b2c2965871c45d83eccf3cce64bc260fd130e264da482829ad80ed00f221e531ce70e4ac95bd5c5cfbf238012b71ba38ed4040c7813cb3284bac9ae SHA512 347a2b689a13c24dbb82957bfcb49f4a9dfde0ee0ab6eed30de4c010c2b0a887f736b4b66feefba7794659ff026466222ba74c00b8e4d39b97b03a32e5849c05 -DIST thunderbird-115.4.0-zh-TW.xpi 743524 BLAKE2B b8d3ae08c618426ecd5cefe82e60469449ee0adb3f58279bdde98ecb90a9d6440000e9762dc20bd10ba1c6d13762aae8c16b41195641a19162e5696bdabece98 SHA512 653692eb97cc91c4b5e2f6f875b41046e44dc4b14fa51c97563a3e6d820b037d08ed2843050adc5753e51aca3fecc640bf29aba9bde0cdb2ea8447e38785521e -DIST thunderbird-115.4.0.source.tar.xz 531269876 BLAKE2B c4a033cd04434907479e25f849ae586a2e7de71094b51d3347859fa9734d3eeeb209d8c9e8411fc28d7149f19513357bd9db7faf0398906bd42c9b658bfa2846 SHA512 d4ee356943fd580b3c3f70e6977b4418a93f41abcea65b9255cbfb6689eb2b4dd71f7723b6873c03f43a857925218ebf32ef1ff54437964c4f4e4d0db911663f DIST thunderbird-115.4.1-af.xpi 542156 BLAKE2B 0f2ff8d1c0aa03b8b9b421b0a25f6aea60eb3c3eccee1690c2b0204082787ec01a1fda63636af21abe3d6acb3fa6c7db1abc3f557a3813b3c6e9f07b5ec69d55 SHA512 d13a7ccf00ed0ee1f0867742d447b44aef949077017801a70b60dd995b5a480ecf9d4242e2c67e268755f8cfbc3cd3cb4f6d429ba2619b342866a0f65bb00154 DIST thunderbird-115.4.1-ar.xpi 654728 BLAKE2B 61894efd03db5af4dd249f8134fec4535d53a84eec6f73666044ad00ec803e61aeb212df9918114e3e980f5ca05bd7970d06d4d6dc76a6a12c5e6c04651fd161 SHA512 825cafae787a60e0e50dff510711b09d7774d7f5bba793ac6a1b47636c94dca6339fde287ba965ddae8c811a2746b3d80fc9ccea7721bc5e63b31c9d2b491dc1 DIST thunderbird-115.4.1-ast.xpi 561119 BLAKE2B ef99916417ccf014d249525070ce8c009a4666b933c7f717278abeb3237b4ed8e0fd527f3b7679f6cf334ef9331ce115710ae2d7b806a37df74cfbb9de790aff SHA512 aceb215aa999a9a0d6e679f2bd81654f7fc556c5277865d3fb3d9e91de3a22dd28f73abfa4ed4914c7e766b5c9b21e1160557dccdaaec371f189f941a24d5e93 diff --git a/mail-client/thunderbird/thunderbird-115.3.1.ebuild b/mail-client/thunderbird/thunderbird-115.3.1.ebuild deleted file mode 100644 index 8a70d85db28e..000000000000 --- a/mail-client/thunderbird/thunderbird-115.3.1.ebuild +++ /dev/null @@ -1,1313 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -FIREFOX_PATCHSET="firefox-115esr-patches-05.tar.xz" - -LLVM_MAX_SLOT=16 - -PYTHON_COMPAT=( python3_{10..11} ) -PYTHON_REQ_USE="ncurses,sqlite,ssl" - -WANT_AUTOCONF="2.1" - -VIRTUALX_REQUIRED="manual" - -MOZ_ESR= - -MOZ_PV=${PV} -MOZ_PV_SUFFIX= -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then - MOZ_PV_SUFFIX=${BASH_REMATCH[1]} - - # Convert the ebuild version to the upstream Mozilla version - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI -fi - -if [[ -n ${MOZ_ESR} ]] ; then - # ESR releases have slightly different version numbers - MOZ_PV="${MOZ_PV}esr" -fi - -MOZ_PN="${PN%-bin}" -MOZ_P="${MOZ_PN}-${MOZ_PV}" -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}" -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}" - -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \ - llvm multiprocessing optfeature pax-utils python-any-r1 toolchain-funcs \ - virtualx xdg - -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}" - -if [[ ${PV} == *_rc* ]] ; then - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}" -fi - -PATCH_URIS=( - https://dev.gentoo.org/~juippis/mozilla/patchsets/${FIREFOX_PATCHSET} -) - -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz - ${PATCH_URIS[@]}" - -DESCRIPTION="Thunderbird Mail Client" -HOMEPAGE="https://www.thunderbird.net/" - -KEYWORDS="amd64 ~arm64 ~ppc64 x86" - -SLOT="0" -LICENSE="MPL-2.0 GPL-2 LGPL-2.1" - -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel" -IUSE+=" jack libproxy lto +openh264 pgo pulseaudio sndio selinux" -IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx system-png system-python-libs +system-webp" -IUSE+=" wayland wifi +X" - -# Thunderbird-only USE flags. -IUSE+=" +system-librnp" - -REQUIRED_USE="|| ( X wayland ) - debug? ( !system-av1 ) - pgo? ( lto ) - wifi? ( dbus )" - -TB_ONLY_DEPEND="!&2 - return 1 - fi - - if use clang && ! tc-ld-is-mold ; then - if ! has_version -b "sys-devel/lld:${LLVM_SLOT}" ; then - einfo "sys-devel/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if ! has_version -b "virtual/rust:0/llvm-${LLVM_SLOT}" ; then - einfo "virtual/rust:0/llvm-${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if use pgo ; then - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - fi - fi - - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2 -} - -MOZ_LANGS=( - af ar ast be bg br ca cak cs cy da de dsb - el en-CA en-GB en-US es-AR es-ES es-MX et eu - fi fr fy-NL ga-IE gd gl he hr hsb hu - id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO - pa-IN pl pt-BR pt-PT rm ro ru - sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW -) - -mozilla_set_globals() { - # https://bugs.gentoo.org/587334 - local MOZ_TOO_REGIONALIZED_FOR_L10N=( - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE - ) - - local lang xflag - for lang in "${MOZ_LANGS[@]}" ; do - # en and en_US are handled internally - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then - continue - fi - - # strip region subtag if $lang is in the list - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then - xflag=${lang%%-*} - else - xflag=${lang} - fi - - SRC_URI+=" l10n_${xflag/[_@]/-}? (" - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi" - SRC_URI+=" )" - IUSE+=" l10n_${xflag/[_@]/-}" - done -} -mozilla_set_globals - -moz_clear_vendor_checksums() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -ne 1 ]] ; then - die "${FUNCNAME} requires exact one argument" - fi - - einfo "Clearing cargo checksums for ${1} ..." - - sed -i \ - -e 's/\("files":{\)[^}]*/\1/' \ - "${S}"/third_party/rust/${1}/.cargo-checksum.json \ - || die -} - -moz_install_xpi() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local DESTDIR=${1} - shift - - insinto "${DESTDIR}" - - local emid xpi_file xpi_tmp_dir - for xpi_file in "${@}" ; do - emid= - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}") - - # Unpack XPI - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die - - # Determine extension ID - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf") - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf" - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json") - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json" - else - die "failed to determine extension id" - fi - - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..." - newins "${xpi_file}" "${emid}.xpi" - done -} - -mozconfig_add_options_ac() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_add_options_mk() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_use_enable() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_enable "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -mozconfig_use_with() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_with "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -# This is a straight copypaste from toolchain-funcs.eclass's 'tc-ld-is-lld', and is temporarily -# placed here until toolchain-funcs.eclass gets an official support for mold linker. -# Please see: -# https://github.com/gentoo/gentoo/pull/28366 || -# https://github.com/gentoo/gentoo/pull/28355 -tc-ld-is-mold() { - local out - - # Ensure ld output is in English. - local -x LC_ALL=C - - # First check the linker directly. - out=$($(tc-getLD "$@") --version 2>&1) - if [[ ${out} == *"mold"* ]] ; then - return 0 - fi - - # Then see if they're selecting mold via compiler flags. - # Note: We're assuming they're using LDFLAGS to hold the - # options and not CFLAGS/CXXFLAGS. - local base="${T}/test-tc-linker" - cat <<-EOF > "${base}.c" - int main() { return 0; } - EOF - out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1) - rm -f "${base}"* - if [[ ${out} == *"mold"* ]] ; then - return 0 - fi - - # No mold here! - return 1 -} - -virtwl() { - debug-print-function ${FUNCNAME} "$@" - - [[ $# -lt 1 ]] && die "${FUNCNAME} needs at least one argument" - [[ -n $XDG_RUNTIME_DIR ]] || die "${FUNCNAME} needs XDG_RUNTIME_DIR to be set; try xdg_environment_reset" - tinywl -h >/dev/null || die 'tinywl -h failed' - - # TODO: don't run addpredict in utility function. WLR_RENDERER=pixman doesn't work - addpredict /dev/dri - local VIRTWL VIRTWL_PID - coproc VIRTWL { WLR_BACKENDS=headless exec tinywl -s 'echo $WAYLAND_DISPLAY; read _; kill $PPID'; } - local -x WAYLAND_DISPLAY - read WAYLAND_DISPLAY <&${VIRTWL[0]} - - debug-print "${FUNCNAME}: $@" - "$@" - local r=$? - - [[ -n $VIRTWL_PID ]] || die "tinywl exited unexpectedly" - exec {VIRTWL[0]}<&- {VIRTWL[1]}>&- - return $r -} - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has usersandbox $FEATURES ; then - die "You must enable usersandbox as X server can not run as root!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6600M" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has userpriv ${FEATURES} ; then - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6400M" - fi - - check-reqs_pkg_setup - - llvm_pkg_setup - - if use clang && use lto && tc-ld-is-lld ; then - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }') - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}") - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!" - - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }') - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}") - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!" - - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}." - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:" - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version" - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version" - eerror " - Build ${CATEGORY}/${PN} without USE=lto" - eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole " - eerror " llvm/clang/lld/rust chain depending on your @world updates)" - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!" - fi - fi - - python-any-r1_pkg_setup - - # Avoid PGO profiling problems due to enviroment leakage - # These should *always* be cleaned up anyway - unset \ - DBUS_SESSION_BUS_ADDRESS \ - DISPLAY \ - ORBIT_SOCKETDIR \ - SESSION_MANAGER \ - XAUTHORITY \ - XDG_CACHE_HOME \ - XDG_SESSION_COOKIE - - # Build system is using /proc/self/oom_score_adj, bug #604394 - addpredict /proc/self/oom_score_adj - - if use pgo ; then - # Update 105.0: "/proc/self/oom_score_adj" isn't enough anymore with pgo, but not sure - # whether that's due to better OOM handling by Firefox (bmo#1771712), or portage - # (PORTAGE_SCHEDULING_POLICY) update... - addpredict /proc - - # May need a wider addpredict when using wayland+pgo. - addpredict /dev/dri - - # Allow access to GPU during PGO run - local ati_cards mesa_cards nvidia_cards render_cards - shopt -s nullglob - - ati_cards=$(echo -n /dev/ati/card* | sed 's/ /:/g') - if [[ -n "${ati_cards}" ]] ; then - addpredict "${ati_cards}" - fi - - mesa_cards=$(echo -n /dev/dri/card* | sed 's/ /:/g') - if [[ -n "${mesa_cards}" ]] ; then - addpredict "${mesa_cards}" - fi - - nvidia_cards=$(echo -n /dev/nvidia* | sed 's/ /:/g') - if [[ -n "${nvidia_cards}" ]] ; then - addpredict "${nvidia_cards}" - fi - - render_cards=$(echo -n /dev/dri/renderD128* | sed 's/ /:/g') - if [[ -n "${render_cards}" ]] ; then - addpredict "${render_cards}" - fi - - shopt -u nullglob - fi - - if ! mountpoint -q /dev/shm ; then - # If /dev/shm is not available, configure is known to fail with - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py - ewarn "/dev/shm is not mounted -- expect build failures!" - fi - - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please - # get your own set of keys. - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc" - fi - - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ" - fi - - # Mozilla API keys (see https://location.services.mozilla.com/api) - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please - # get your own set of keys. - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005" - fi - - # Ensure we use C locale when building, bug #746215 - export LC_ALL=C - fi -} - -src_unpack() { - local _lp_dir="${WORKDIR}/language_packs" - local _src_file - - if [[ ! -d "${_lp_dir}" ]] ; then - mkdir "${_lp_dir}" || die - fi - - for _src_file in ${A} ; do - if [[ ${_src_file} == *.xpi ]]; then - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!" - else - unpack ${_src_file} - fi - done -} - -src_prepare() { - if use lto; then - rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch || die - fi - - if ! use ppc64; then - rm -v "${WORKDIR}"/firefox-patches/*ppc64*.patch || die - fi - - eapply "${WORKDIR}/firefox-patches" - - # Allow user to apply any additional patches without modifing ebuild - eapply_user - - # Make cargo respect MAKEOPTS - export CARGO_BUILD_JOBS="$(makeopts_jobs)" - - # Make LTO respect MAKEOPTS - sed -i \ - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/build/moz.configure/lto-pgo.configure \ - || die "sed failed to set num_cores" - - # Make ICU respect MAKEOPTS - sed -i \ - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/intl/icu_sources_data.py \ - || die "sed failed to set num_cores" - - # sed-in toolchain prefix - sed -i \ - -e "s/objdump/${CHOST}-objdump/" \ - "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \ - || die "sed failed to set toolchain prefix" - - sed -i \ - -e 's/ccache_stats = None/return None/' \ - "${S}"/python/mozbuild/mozbuild/controller/building.py \ - || die "sed failed to disable ccache stats call" - - einfo "Removing pre-built binaries ..." - - find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die - - # Create build dir - BUILD_DIR="${WORKDIR}/${PN}_build" - mkdir -p "${BUILD_DIR}" || die - - # Write API keys to disk - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die - - xdg_environment_reset -} - -src_configure() { - # Show flags set at the beginning - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - local have_switched_compiler= - if use clang; then - # Force clang - einfo "Enforcing the use of clang due to USE=clang ..." - - local version_clang=$(clang --version 2>/dev/null | grep -F -- 'clang version' | awk '{ print $3 }') - [[ -n ${version_clang} ]] && version_clang=$(ver_cut 1 "${version_clang}") - [[ -z ${version_clang} ]] && die "Failed to read clang version!" - - if tc-is-gcc; then - have_switched_compiler=yes - fi - AR=llvm-ar - CC=${CHOST}-clang-${version_clang} - CXX=${CHOST}-clang++-${version_clang} - NM=llvm-nm - RANLIB=llvm-ranlib - elif ! use clang && ! tc-is-gcc ; then - # Force gcc - have_switched_compiler=yes - einfo "Enforcing the use of gcc due to USE=-clang ..." - AR=gcc-ar - CC=${CHOST}-gcc - CXX=${CHOST}-g++ - NM=gcc-nm - RANLIB=gcc-ranlib - fi - - if [[ -n "${have_switched_compiler}" ]] ; then - # Because we switched active compiler we have to ensure - # that no unsupported flags are set - strip-unsupported-flags - fi - - # Ensure we use correct toolchain, - # AS is used in a non-standard way by upstream, #bmo1654031 - export HOST_CC="$(tc-getBUILD_CC)" - export HOST_CXX="$(tc-getBUILD_CXX)" - export AS="$(tc-getCC) -c" - tc-export CC CXX LD AR AS NM OBJDUMP RANLIB PKG_CONFIG - - # Pass the correct toolchain paths through cbindgen - if tc-is-cross-compiler ; then - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}" - fi - - # Set MOZILLA_FIVE_HOME - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - - # python/mach/mach/mixin/process.py fails to detect SHELL - export SHELL="${EPREFIX}/bin/bash" - - # Set state path - export MOZBUILD_STATE_PATH="${BUILD_DIR}" - - # Set MOZCONFIG - export MOZCONFIG="${S}/.mozconfig" - - # Initialize MOZCONFIG - mozconfig_add_options_ac '' --enable-application=comm/mail - mozconfig_add_options_ac '' --enable-project=comm/mail - - # Set Gentoo defaults - mozconfig_add_options_ac 'Gentoo default' \ - --allow-addon-sideload \ - --disable-cargo-incremental \ - --disable-crashreporter \ - --disable-gpsd \ - --disable-install-strip \ - --disable-parental-controls \ - --disable-strip \ - --disable-tests \ - --disable-updater \ - --disable-wmf \ - --enable-js-shell \ - --enable-legacy-profile-creation \ - --enable-negotiateauth \ - --enable-new-pass-manager \ - --enable-official-branding \ - --enable-release \ - --enable-system-ffi \ - --enable-system-pixman \ - --enable-system-policies \ - --host="${CBUILD:-${CHOST}}" \ - --libdir="${EPREFIX}/usr/$(get_libdir)" \ - --prefix="${EPREFIX}/usr" \ - --target="${CHOST}" \ - --without-ccache \ - --without-wasm-sandboxed-libraries \ - --with-intl-api \ - --with-libclang-path="$(llvm-config --libdir)" \ - --with-system-nspr \ - --with-system-nss \ - --with-system-zlib \ - --with-toolchain-prefix="${CHOST}-" \ - --with-unsigned-addon-scopes=app,system \ - --x-includes="${ESYSROOT}/usr/include" \ - --x-libraries="${ESYSROOT}/usr/$(get_libdir)" - - # Set update channel - local update_channel=release - [[ -n ${MOZ_ESR} ]] && update_channel=esr - mozconfig_add_options_ac '' --update-channel=${update_channel} - - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then - mozconfig_add_options_ac '' --enable-rust-simd - fi - - # For future keywording: This is currently (97.0) only supported on: - # amd64, arm, arm64 & x86. - # Might want to flip the logic around if Firefox is to support more arches. - # bug 833001, bug 903411#c8 - if use ppc64 || use riscv; then - mozconfig_add_options_ac '' --disable-sandbox - else - mozconfig_add_options_ac '' --enable-sandbox - fi - - # Enable JIT on riscv64 explicitly - # Can be removed once upstream enable it by default in the future. - use riscv && mozconfig_add_options_ac 'Enable JIT for RISC-V 64' --enable-jit - - if [[ -s "${S}/api-google.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-safebrowsing-api-keyfile="${S}/api-google.key" - else - einfo "Building without Google API key ..." - fi - - if [[ -s "${S}/api-location.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-location-service-api-keyfile="${S}/api-location.key" - else - einfo "Building without Location API key ..." - fi - - if [[ -s "${S}/api-mozilla.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-mozilla-api-keyfile="${S}/api-mozilla.key" - else - einfo "Building without Mozilla API key ..." - fi - - mozconfig_use_with system-av1 - mozconfig_use_with system-harfbuzz - mozconfig_use_with system-harfbuzz system-graphite2 - mozconfig_use_with system-icu - mozconfig_use_with system-jpeg - mozconfig_use_with system-libevent - mozconfig_use_with system-libvpx - mozconfig_use_with system-png - mozconfig_use_with system-webp - - if use system-librnp; then - mozconfig_add_options_ac "+system-librnp" --enable-compile-environment - mozconfig_use_with system-librnp - else - # This controls the backend of the bundled librnp. Choices are "botan" and "openssl". - # RNP Upstream recommends to use botan. In Gentoo it's preferred to use system-librnp. - mozconfig_add_options_ac "+bundled librnp backend = botan" --with-librnp-backend="botan" - fi - - mozconfig_use_enable dbus - mozconfig_use_enable libproxy - - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme - - if use hardened ; then - mozconfig_add_options_ac "+hardened" --enable-hardening - append-ldflags "-Wl,-z,relro -Wl,-z,now" - fi - - local myaudiobackends="" - use jack && myaudiobackends+="jack," - use sndio && myaudiobackends+="sndio," - use pulseaudio && myaudiobackends+="pulseaudio," - ! use pulseaudio && myaudiobackends+="alsa," - - mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}" - - mozconfig_use_enable wifi necko-wifi - - if use X && use wayland ; then - mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland - elif ! use X && use wayland ; then - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only - else - mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3 - fi - - if use lto ; then - if use clang ; then - # Upstream only supports lld or mold when using clang. - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld - fi - - mozconfig_add_options_ac '+lto' --enable-lto=cross - - else - # ThinLTO is currently broken, see bmo#1644409. - # mold does not support gcc+lto combination. - mozconfig_add_options_ac '+lto' --enable-lto=full - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd - fi - - if use pgo ; then - mozconfig_add_options_ac '+pgo' MOZ_PGO=1 - - if use clang ; then - # Used in build/pgo/profileserver.py - export LLVM_PROFDATA="llvm-profdata" - fi - fi - else - # Avoid auto-magic on linker - if use clang ; then - # lld is upstream's default - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld - fi - - else - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "linker is set to bfd due to USE=-clang" --enable-linker=bfd - fi - fi - fi - - # LTO flag was handled via configure - filter-lto - - mozconfig_use_enable debug - if use debug ; then - mozconfig_add_options_ac '+debug' --disable-optimize - mozconfig_add_options_ac '+debug' --enable-real-time-tracing - else - mozconfig_add_options_ac 'Gentoo defaults' --disable-real-time-tracing - - if is-flag '-g*' ; then - if use clang ; then - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*') - else - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols - fi - else - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols - fi - - if is-flag '-O0' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0 - elif is-flag '-O4' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4 - elif is-flag '-O3' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3 - elif is-flag '-O1' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1 - elif is-flag '-Os' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os - else - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2 - fi - fi - - # Debug flag was handled via configure - filter-flags '-g*' - - # Optimization flag was handled via configure - filter-flags '-O*' - - # Modifications to better support ARM, bug #553364 - if use cpu_flags_arm_neon ; then - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon - - if ! tc-is-clang ; then - # thumb options aren't supported when using clang, bug 666966 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \ - --with-thumb=yes \ - --with-thumb-interwork=no - fi - fi - - if [[ ${CHOST} == armv*h* ]] ; then - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard - - if ! use system-libvpx ; then - sed -i \ - -e "s|softfp|hard|" \ - "${S}"/media/libvpx/moz.build \ - || die - fi - fi - - if use clang ; then - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64') - local disable_elf_hack= - if use amd64 ; then - disable_elf_hack=yes - elif use x86 ; then - disable_elf_hack=yes - elif use arm ; then - disable_elf_hack=yes - fi - - if [[ -n ${disable_elf_hack} ]] ; then - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack - fi - elif tc-is-gcc ; then - if ver_test $(gcc-fullversion) -ge 10 ; then - einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..." - append-cxxflags -fno-tree-loop-vectorize - fi - fi - - if use elibc_musl && use arm64 ; then - mozconfig_add_options_ac 'elf-hack is broken when using musl/arm64' --disable-elf-hack - fi - - # Additional ARCH support - case "${ARCH}" in - arm) - # Reduce the memory requirements for linking - if use clang ; then - # Nothing to do - :; - elif use lto ; then - append-ldflags -Wl,--no-keep-memory - else - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads - fi - ;; - esac - - if ! use elibc_glibc; then - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc - fi - - # Allow elfhack to work in combination with unstripped binaries - # when they would normally be larger than 2GiB. - append-ldflags "-Wl,--compress-debug-sections=zlib" - - # Make revdep-rebuild.sh happy; Also required for musl - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags - - # Pass $MAKEOPTS to build system - export MOZ_MAKE_FLAGS="${MAKEOPTS}" - - # Use system's Python environment - export PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach - - if use system-python-libs; then - export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="system" - else - export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none" - fi - - # Disable notification when build system has finished - export MOZ_NOSPAM=1 - - # Portage sets XARGS environment variable to "xargs -r" by default which - # breaks build system's check_prog() function which doesn't support arguments - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs" - - # Set build dir - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}" - - # Show flags we will use - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - # Handle EXTRA_CONF and show summary - local ac opt hash reason - - # Apply EXTRA_ECONF entries to $MOZCONFIG - if [[ -n ${EXTRA_ECONF} ]] ; then - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!} - for opt in "${ac[@]}"; do - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--} - done - fi - - echo - echo "==========================================================" - echo "Building ${PF} with the following configuration" - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do - [[ -z ${hash} || ${hash} == \# ]] \ - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}" - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}" - done - echo "==========================================================" - echo - - ./mach configure || die -} - -src_compile() { - local virtx_cmd= - - if tc-ld-is-mold && use lto; then - # increase ulimit with mold+lto, bugs #892641, #907485 - if ! ulimit -n 16384 1>/dev/null 2>&1 ; then - ewarn "Unable to modify ulimits - building with mold+lto might fail due to low ulimit -n resources." - ewarn "Please see bugs #892641 & #907485." - else - ulimit -n 16384 - fi - fi - - if use pgo; then - # Reset and cleanup environment variables used by GNOME/XDG - gnome2_environment_reset - - addpredict /root - - if ! use X; then - virtx_cmd=virtwl - else - virtx_cmd=virtx - fi - fi - - if ! use X; then - local -x GDK_BACKEND=wayland - else - local -x GDK_BACKEND=x11 - fi - - ${virtx_cmd} ./mach build --verbose || die -} - -src_install() { - # xpcshell is getting called during install - pax-mark m \ - "${BUILD_DIR}"/dist/bin/xpcshell \ - "${BUILD_DIR}"/dist/bin/${PN} \ - "${BUILD_DIR}"/dist/bin/plugin-container - - DESTDIR="${D}" ./mach install || die - - # Upstream cannot ship symlink but we can (bmo#658850) - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin - - # Don't install llvm-symbolizer from sys-devel/llvm package - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die - fi - - # Install policy (currently only used to disable application updates) - insinto "${MOZILLA_FIVE_HOME}/distribution" - newins "${FILESDIR}"/distribution.ini distribution.ini - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json - - # Install system-wide preferences - local PREFS_DIR="${MOZILLA_FIVE_HOME}/defaults/pref" - insinto "${PREFS_DIR}" - newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js - - local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js" - - # Set dictionary path to use system hunspell - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref" - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell"); - EOF - - # Force hwaccel prefs if USE=hwaccel is enabled - if use hwaccel ; then - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \ - >>"${GENTOO_PREFS}" \ - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js" - - if use wayland; then - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel wayland prefs" - pref("gfx.x11-egl.force-enabled", false); - EOF - else - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel x11 prefs" - pref("gfx.x11-egl.force-enabled", true); - EOF - fi - fi - - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it - if use system-harfbuzz ; then - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref" - sticky_pref("gfx.font_rendering.graphite.enabled", true); - EOF - fi - - # Install language packs - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') ) - if [[ -n "${langpacks}" ]] ; then - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}" - fi - - # Install icons - local icon_srcdir="${S}/comm/mail/branding/thunderbird" - local icon_symbolic_file="${icon_srcdir}/TB-symbolic.svg" - - insinto /usr/share/icons/hicolor/symbolic/apps - newins "${icon_symbolic_file}" ${PN}-symbolic.svg - - local icon size - for icon in "${icon_srcdir}"/default*.png ; do - size=${icon%.png} - size=${size##*/default} - - if [[ ${size} -eq 48 ]] ; then - newicon "${icon}" ${PN}.png - fi - - newicon -s ${size} "${icon}" ${PN}.png - done - - # Install menu - local app_name="Mozilla ${MOZ_PN^}" - local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop" - local desktop_filename="${PN}.desktop" - local exec_command="${PN}" - local icon="${PN}" - local use_wayland="false" - - if use wayland ; then - use_wayland="true" - fi - - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die - - sed -i \ - -e "s:@NAME@:${app_name}:" \ - -e "s:@EXEC@:${exec_command}:" \ - -e "s:@ICON@:${icon}:" \ - "${WORKDIR}/${PN}.desktop-template" \ - || die - - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}" - - rm "${WORKDIR}/${PN}.desktop-template" || die - - # Install wrapper script - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}" - newbin "${FILESDIR}/${PN}-r1.sh" ${PN} - - # Update wrapper - sed -i \ - -e "s:@PREFIX@:${EPREFIX}/usr:" \ - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \ - -e "s:@APULSELIB_DIR@:${apulselib}:" \ - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \ - "${ED}/usr/bin/${PN}" \ - || die -} - -pkg_preinst() { - xdg_pkg_preinst - - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse - # does not need to be forced into the LD_LIBRARY_PATH - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then - einfo "APULSE found; Generating library symlinks for sound support ..." - local lib - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do - # A quickpkg rolled by hand will grab symlinks as part of the package, - # so we need to avoid creating them if they already exist. - if [[ ! -L ${lib##*/} ]] ; then - ln -s "${lib}" ${lib##*/} || die - fi - done - popd &>/dev/null || die - fi -} - -pkg_postinst() { - xdg_pkg_postinst - - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then - elog "Apulse was detected at merge time on this system and so it will always be" - elog "used for sound. If you wish to use pulseaudio instead please unmerge" - elog "media-sound/apulse." - elog - fi - - local show_doh_information - local show_shortcut_information - - if [[ -z "${REPLACING_VERSIONS}" ]] ; then - # New install; Tell user that DoH is disabled by default - show_doh_information=yes - show_shortcut_information=no - else - local replacing_version - for replacing_version in ${REPLACING_VERSIONS} ; do - if ver_test "${replacing_version}" -lt 91.0 ; then - # Tell user that we no longer install a shortcut - # per supported display protocol - show_shortcut_information=yes - fi - done - fi - - if [[ -n "${show_doh_information}" ]] ; then - elog - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):" - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all" - elog "DNS traffic to Cloudflare by default is not a good idea and applications" - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5" - elog "(\"Off by choice\") by default." - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences." - fi - - if [[ -n "${show_shortcut_information}" ]] ; then - elog - elog "Since ${PN}-91.0 we no longer install multiple shortcuts for" - elog "each supported display protocol. Instead we will only install" - elog "one generic Mozilla ${PN^} shortcut." - elog "If you still want to be able to select between running Mozilla ${PN^}" - elog "on X11 or Wayland, you have to re-create these shortcuts on your own." - fi - - # bug 835078 - if use hwaccel && has_version "x11-drivers/xf86-video-nouveau"; then - ewarn "You have nouveau drivers installed in your system and 'hwaccel' " - ewarn "enabled for Firefox. Nouveau / your GPU might not support the " - ewarn "required EGL, so either disable 'hwaccel' or try the workaround " - ewarn "explained in https://bugs.gentoo.org/835078#c5 if Firefox crashes." - fi - - optfeature_header "Optional programs for extra features:" - optfeature "desktop notifications" x11-libs/libnotify - optfeature "encrypted chat support" net-libs/libotr - optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas -} diff --git a/mail-client/thunderbird/thunderbird-115.3.2.ebuild b/mail-client/thunderbird/thunderbird-115.3.2.ebuild deleted file mode 100644 index b55a6da424d8..000000000000 --- a/mail-client/thunderbird/thunderbird-115.3.2.ebuild +++ /dev/null @@ -1,1322 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -FIREFOX_PATCHSET="firefox-115esr-patches-06.tar.xz" - -LLVM_MAX_SLOT=17 - -PYTHON_COMPAT=( python3_{10..11} ) -PYTHON_REQ_USE="ncurses,sqlite,ssl" - -WANT_AUTOCONF="2.1" - -VIRTUALX_REQUIRED="manual" - -MOZ_ESR= - -MOZ_PV=${PV} -MOZ_PV_SUFFIX= -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then - MOZ_PV_SUFFIX=${BASH_REMATCH[1]} - - # Convert the ebuild version to the upstream Mozilla version - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI -fi - -if [[ -n ${MOZ_ESR} ]] ; then - # ESR releases have slightly different version numbers - MOZ_PV="${MOZ_PV}esr" -fi - -MOZ_PN="${PN%-bin}" -MOZ_P="${MOZ_PN}-${MOZ_PV}" -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}" -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}" - -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \ - llvm multiprocessing optfeature pax-utils python-any-r1 toolchain-funcs \ - virtualx xdg - -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}" - -if [[ ${PV} == *_rc* ]] ; then - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}" -fi - -PATCH_URIS=( - https://dev.gentoo.org/~juippis/mozilla/patchsets/${FIREFOX_PATCHSET} -) - -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz - ${PATCH_URIS[@]}" - -DESCRIPTION="Thunderbird Mail Client" -HOMEPAGE="https://www.thunderbird.net/" - -KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" - -SLOT="0" -LICENSE="MPL-2.0 GPL-2 LGPL-2.1" - -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel" -IUSE+=" jack libproxy lto +openh264 pgo pulseaudio sndio selinux" -IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx system-png system-python-libs +system-webp" -IUSE+=" wayland wifi +X" - -# Thunderbird-only USE flags. -IUSE+=" +system-librnp" - -REQUIRED_USE="|| ( X wayland ) - debug? ( !system-av1 ) - pgo? ( lto ) - wifi? ( dbus )" - -TB_ONLY_DEPEND="!&2 - return 1 - fi - - if use clang && ! tc-ld-is-mold ; then - if ! has_version -b "sys-devel/lld:${LLVM_SLOT}" ; then - einfo "sys-devel/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if ! has_version -b "virtual/rust:0/llvm-${LLVM_SLOT}" ; then - einfo "virtual/rust:0/llvm-${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if use pgo ; then - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - fi - fi - - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2 -} - -MOZ_LANGS=( - af ar ast be bg br ca cak cs cy da de dsb - el en-CA en-GB en-US es-AR es-ES es-MX et eu - fi fr fy-NL ga-IE gd gl he hr hsb hu - id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO - pa-IN pl pt-BR pt-PT rm ro ru - sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW -) - -mozilla_set_globals() { - # https://bugs.gentoo.org/587334 - local MOZ_TOO_REGIONALIZED_FOR_L10N=( - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE - ) - - local lang xflag - for lang in "${MOZ_LANGS[@]}" ; do - # en and en_US are handled internally - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then - continue - fi - - # strip region subtag if $lang is in the list - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then - xflag=${lang%%-*} - else - xflag=${lang} - fi - - SRC_URI+=" l10n_${xflag/[_@]/-}? (" - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi" - SRC_URI+=" )" - IUSE+=" l10n_${xflag/[_@]/-}" - done -} -mozilla_set_globals - -moz_clear_vendor_checksums() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -ne 1 ]] ; then - die "${FUNCNAME} requires exact one argument" - fi - - einfo "Clearing cargo checksums for ${1} ..." - - sed -i \ - -e 's/\("files":{\)[^}]*/\1/' \ - "${S}"/third_party/rust/${1}/.cargo-checksum.json \ - || die -} - -moz_install_xpi() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local DESTDIR=${1} - shift - - insinto "${DESTDIR}" - - local emid xpi_file xpi_tmp_dir - for xpi_file in "${@}" ; do - emid= - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}") - - # Unpack XPI - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die - - # Determine extension ID - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf") - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf" - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json") - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json" - else - die "failed to determine extension id" - fi - - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..." - newins "${xpi_file}" "${emid}.xpi" - done -} - -mozconfig_add_options_ac() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_add_options_mk() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_use_enable() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_enable "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -mozconfig_use_with() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_with "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -# This is a straight copypaste from toolchain-funcs.eclass's 'tc-ld-is-lld', and is temporarily -# placed here until toolchain-funcs.eclass gets an official support for mold linker. -# Please see: -# https://github.com/gentoo/gentoo/pull/28366 || -# https://github.com/gentoo/gentoo/pull/28355 -tc-ld-is-mold() { - local out - - # Ensure ld output is in English. - local -x LC_ALL=C - - # First check the linker directly. - out=$($(tc-getLD "$@") --version 2>&1) - if [[ ${out} == *"mold"* ]] ; then - return 0 - fi - - # Then see if they're selecting mold via compiler flags. - # Note: We're assuming they're using LDFLAGS to hold the - # options and not CFLAGS/CXXFLAGS. - local base="${T}/test-tc-linker" - cat <<-EOF > "${base}.c" - int main() { return 0; } - EOF - out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1) - rm -f "${base}"* - if [[ ${out} == *"mold"* ]] ; then - return 0 - fi - - # No mold here! - return 1 -} - -virtwl() { - debug-print-function ${FUNCNAME} "$@" - - [[ $# -lt 1 ]] && die "${FUNCNAME} needs at least one argument" - [[ -n $XDG_RUNTIME_DIR ]] || die "${FUNCNAME} needs XDG_RUNTIME_DIR to be set; try xdg_environment_reset" - tinywl -h >/dev/null || die 'tinywl -h failed' - - # TODO: don't run addpredict in utility function. WLR_RENDERER=pixman doesn't work - addpredict /dev/dri - local VIRTWL VIRTWL_PID - coproc VIRTWL { WLR_BACKENDS=headless exec tinywl -s 'echo $WAYLAND_DISPLAY; read _; kill $PPID'; } - local -x WAYLAND_DISPLAY - read WAYLAND_DISPLAY <&${VIRTWL[0]} - - debug-print "${FUNCNAME}: $@" - "$@" - local r=$? - - [[ -n $VIRTWL_PID ]] || die "tinywl exited unexpectedly" - exec {VIRTWL[0]}<&- {VIRTWL[1]}>&- - return $r -} - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has usersandbox $FEATURES ; then - die "You must enable usersandbox as X server can not run as root!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6600M" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has userpriv ${FEATURES} ; then - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6400M" - fi - - check-reqs_pkg_setup - - llvm_pkg_setup - - if use clang && use lto && tc-ld-is-lld ; then - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }') - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}") - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!" - - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }') - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}") - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!" - - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}." - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:" - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version" - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version" - eerror " - Build ${CATEGORY}/${PN} without USE=lto" - eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole " - eerror " llvm/clang/lld/rust chain depending on your @world updates)" - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!" - fi - fi - - python-any-r1_pkg_setup - - # Avoid PGO profiling problems due to enviroment leakage - # These should *always* be cleaned up anyway - unset \ - DBUS_SESSION_BUS_ADDRESS \ - DISPLAY \ - ORBIT_SOCKETDIR \ - SESSION_MANAGER \ - XAUTHORITY \ - XDG_CACHE_HOME \ - XDG_SESSION_COOKIE - - # Build system is using /proc/self/oom_score_adj, bug #604394 - addpredict /proc/self/oom_score_adj - - if use pgo ; then - # Update 105.0: "/proc/self/oom_score_adj" isn't enough anymore with pgo, but not sure - # whether that's due to better OOM handling by Firefox (bmo#1771712), or portage - # (PORTAGE_SCHEDULING_POLICY) update... - addpredict /proc - - # May need a wider addpredict when using wayland+pgo. - addpredict /dev/dri - - # Allow access to GPU during PGO run - local ati_cards mesa_cards nvidia_cards render_cards - shopt -s nullglob - - ati_cards=$(echo -n /dev/ati/card* | sed 's/ /:/g') - if [[ -n "${ati_cards}" ]] ; then - addpredict "${ati_cards}" - fi - - mesa_cards=$(echo -n /dev/dri/card* | sed 's/ /:/g') - if [[ -n "${mesa_cards}" ]] ; then - addpredict "${mesa_cards}" - fi - - nvidia_cards=$(echo -n /dev/nvidia* | sed 's/ /:/g') - if [[ -n "${nvidia_cards}" ]] ; then - addpredict "${nvidia_cards}" - fi - - render_cards=$(echo -n /dev/dri/renderD128* | sed 's/ /:/g') - if [[ -n "${render_cards}" ]] ; then - addpredict "${render_cards}" - fi - - shopt -u nullglob - fi - - if ! mountpoint -q /dev/shm ; then - # If /dev/shm is not available, configure is known to fail with - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py - ewarn "/dev/shm is not mounted -- expect build failures!" - fi - - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please - # get your own set of keys. - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc" - fi - - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ" - fi - - # Mozilla API keys (see https://location.services.mozilla.com/api) - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please - # get your own set of keys. - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005" - fi - - # Ensure we use C locale when building, bug #746215 - export LC_ALL=C - fi -} - -src_unpack() { - local _lp_dir="${WORKDIR}/language_packs" - local _src_file - - if [[ ! -d "${_lp_dir}" ]] ; then - mkdir "${_lp_dir}" || die - fi - - for _src_file in ${A} ; do - if [[ ${_src_file} == *.xpi ]]; then - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!" - else - unpack ${_src_file} - fi - done -} - -src_prepare() { - if use lto; then - rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch || die - fi - - if ! use ppc64; then - rm -v "${WORKDIR}"/firefox-patches/*ppc64*.patch || die - fi - - eapply "${WORKDIR}/firefox-patches" - - # Allow user to apply any additional patches without modifing ebuild - eapply_user - - # Make cargo respect MAKEOPTS - export CARGO_BUILD_JOBS="$(makeopts_jobs)" - - # Make LTO respect MAKEOPTS - sed -i \ - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/build/moz.configure/lto-pgo.configure \ - || die "sed failed to set num_cores" - - # Make ICU respect MAKEOPTS - sed -i \ - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/intl/icu_sources_data.py \ - || die "sed failed to set num_cores" - - # sed-in toolchain prefix - sed -i \ - -e "s/objdump/${CHOST}-objdump/" \ - "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \ - || die "sed failed to set toolchain prefix" - - sed -i \ - -e 's/ccache_stats = None/return None/' \ - "${S}"/python/mozbuild/mozbuild/controller/building.py \ - || die "sed failed to disable ccache stats call" - - einfo "Removing pre-built binaries ..." - - find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die - - # Create build dir - BUILD_DIR="${WORKDIR}/${PN}_build" - mkdir -p "${BUILD_DIR}" || die - - # Write API keys to disk - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die - - xdg_environment_reset -} - -src_configure() { - # Show flags set at the beginning - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - local have_switched_compiler= - if use clang; then - # Force clang - einfo "Enforcing the use of clang due to USE=clang ..." - - local version_clang=$(clang --version 2>/dev/null | grep -F -- 'clang version' | awk '{ print $3 }') - [[ -n ${version_clang} ]] && version_clang=$(ver_cut 1 "${version_clang}") - [[ -z ${version_clang} ]] && die "Failed to read clang version!" - - if tc-is-gcc; then - have_switched_compiler=yes - fi - AR=llvm-ar - CC=${CHOST}-clang-${version_clang} - CXX=${CHOST}-clang++-${version_clang} - NM=llvm-nm - RANLIB=llvm-ranlib - elif ! use clang && ! tc-is-gcc ; then - # Force gcc - have_switched_compiler=yes - einfo "Enforcing the use of gcc due to USE=-clang ..." - AR=gcc-ar - CC=${CHOST}-gcc - CXX=${CHOST}-g++ - NM=gcc-nm - RANLIB=gcc-ranlib - fi - - if [[ -n "${have_switched_compiler}" ]] ; then - # Because we switched active compiler we have to ensure - # that no unsupported flags are set - strip-unsupported-flags - fi - - # Ensure we use correct toolchain, - # AS is used in a non-standard way by upstream, #bmo1654031 - export HOST_CC="$(tc-getBUILD_CC)" - export HOST_CXX="$(tc-getBUILD_CXX)" - export AS="$(tc-getCC) -c" - tc-export CC CXX LD AR AS NM OBJDUMP RANLIB PKG_CONFIG - - # Pass the correct toolchain paths through cbindgen - if tc-is-cross-compiler ; then - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}" - fi - - # Set MOZILLA_FIVE_HOME - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - - # python/mach/mach/mixin/process.py fails to detect SHELL - export SHELL="${EPREFIX}/bin/bash" - - # Set state path - export MOZBUILD_STATE_PATH="${BUILD_DIR}" - - # Set MOZCONFIG - export MOZCONFIG="${S}/.mozconfig" - - # Initialize MOZCONFIG - mozconfig_add_options_ac '' --enable-application=comm/mail - mozconfig_add_options_ac '' --enable-project=comm/mail - - # Set Gentoo defaults - mozconfig_add_options_ac 'Gentoo default' \ - --allow-addon-sideload \ - --disable-cargo-incremental \ - --disable-crashreporter \ - --disable-gpsd \ - --disable-install-strip \ - --disable-parental-controls \ - --disable-strip \ - --disable-tests \ - --disable-updater \ - --disable-wmf \ - --enable-js-shell \ - --enable-legacy-profile-creation \ - --enable-negotiateauth \ - --enable-new-pass-manager \ - --enable-official-branding \ - --enable-release \ - --enable-system-ffi \ - --enable-system-pixman \ - --enable-system-policies \ - --host="${CBUILD:-${CHOST}}" \ - --libdir="${EPREFIX}/usr/$(get_libdir)" \ - --prefix="${EPREFIX}/usr" \ - --target="${CHOST}" \ - --without-ccache \ - --without-wasm-sandboxed-libraries \ - --with-intl-api \ - --with-libclang-path="$(llvm-config --libdir)" \ - --with-system-nspr \ - --with-system-nss \ - --with-system-zlib \ - --with-toolchain-prefix="${CHOST}-" \ - --with-unsigned-addon-scopes=app,system \ - --x-includes="${ESYSROOT}/usr/include" \ - --x-libraries="${ESYSROOT}/usr/$(get_libdir)" - - # Set update channel - local update_channel=release - [[ -n ${MOZ_ESR} ]] && update_channel=esr - mozconfig_add_options_ac '' --update-channel=${update_channel} - - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then - mozconfig_add_options_ac '' --enable-rust-simd - fi - - # For future keywording: This is currently (97.0) only supported on: - # amd64, arm, arm64 & x86. - # Might want to flip the logic around if Firefox is to support more arches. - # bug 833001, bug 903411#c8 - if use ppc64 || use riscv; then - mozconfig_add_options_ac '' --disable-sandbox - else - mozconfig_add_options_ac '' --enable-sandbox - fi - - # Enable JIT on riscv64 explicitly - # Can be removed once upstream enable it by default in the future. - use riscv && mozconfig_add_options_ac 'Enable JIT for RISC-V 64' --enable-jit - - if [[ -s "${S}/api-google.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-safebrowsing-api-keyfile="${S}/api-google.key" - else - einfo "Building without Google API key ..." - fi - - if [[ -s "${S}/api-location.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-location-service-api-keyfile="${S}/api-location.key" - else - einfo "Building without Location API key ..." - fi - - if [[ -s "${S}/api-mozilla.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-mozilla-api-keyfile="${S}/api-mozilla.key" - else - einfo "Building without Mozilla API key ..." - fi - - mozconfig_use_with system-av1 - mozconfig_use_with system-harfbuzz - mozconfig_use_with system-harfbuzz system-graphite2 - mozconfig_use_with system-icu - mozconfig_use_with system-jpeg - mozconfig_use_with system-libevent - mozconfig_use_with system-libvpx - mozconfig_use_with system-png - mozconfig_use_with system-webp - - if use system-librnp; then - mozconfig_add_options_ac "+system-librnp" --enable-compile-environment - mozconfig_use_with system-librnp - else - # This controls the backend of the bundled librnp. Choices are "botan" and "openssl". - # RNP Upstream recommends to use botan. In Gentoo it's preferred to use system-librnp. - mozconfig_add_options_ac "+bundled librnp backend = botan" --with-librnp-backend="botan" - fi - - mozconfig_use_enable dbus - mozconfig_use_enable libproxy - - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme - - if use hardened ; then - mozconfig_add_options_ac "+hardened" --enable-hardening - append-ldflags "-Wl,-z,relro -Wl,-z,now" - fi - - local myaudiobackends="" - use jack && myaudiobackends+="jack," - use sndio && myaudiobackends+="sndio," - use pulseaudio && myaudiobackends+="pulseaudio," - ! use pulseaudio && myaudiobackends+="alsa," - - mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}" - - mozconfig_use_enable wifi necko-wifi - - if use X && use wayland ; then - mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland - elif ! use X && use wayland ; then - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only - else - mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3 - fi - - if use lto ; then - if use clang ; then - # Upstream only supports lld or mold when using clang. - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld - fi - - mozconfig_add_options_ac '+lto' --enable-lto=cross - - else - # ThinLTO is currently broken, see bmo#1644409. - # mold does not support gcc+lto combination. - mozconfig_add_options_ac '+lto' --enable-lto=full - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd - fi - - if use pgo ; then - mozconfig_add_options_ac '+pgo' MOZ_PGO=1 - - if use clang ; then - # Used in build/pgo/profileserver.py - export LLVM_PROFDATA="llvm-profdata" - fi - fi - else - # Avoid auto-magic on linker - if use clang ; then - # lld is upstream's default - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld - fi - - else - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "linker is set to bfd due to USE=-clang" --enable-linker=bfd - fi - fi - fi - - # LTO flag was handled via configure - filter-lto - - mozconfig_use_enable debug - if use debug ; then - mozconfig_add_options_ac '+debug' --disable-optimize - mozconfig_add_options_ac '+debug' --enable-real-time-tracing - else - mozconfig_add_options_ac 'Gentoo defaults' --disable-real-time-tracing - - if is-flag '-g*' ; then - if use clang ; then - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*') - else - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols - fi - else - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols - fi - - if is-flag '-O0' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0 - elif is-flag '-O4' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4 - elif is-flag '-O3' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3 - elif is-flag '-O1' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1 - elif is-flag '-Os' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os - else - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2 - fi - fi - - # Debug flag was handled via configure - filter-flags '-g*' - - # Optimization flag was handled via configure - filter-flags '-O*' - - # Modifications to better support ARM, bug #553364 - if use cpu_flags_arm_neon ; then - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon - - if ! tc-is-clang ; then - # thumb options aren't supported when using clang, bug 666966 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \ - --with-thumb=yes \ - --with-thumb-interwork=no - fi - fi - - if [[ ${CHOST} == armv*h* ]] ; then - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard - - if ! use system-libvpx ; then - sed -i \ - -e "s|softfp|hard|" \ - "${S}"/media/libvpx/moz.build \ - || die - fi - fi - - if use clang ; then - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64') - local disable_elf_hack= - if use amd64 ; then - disable_elf_hack=yes - elif use x86 ; then - disable_elf_hack=yes - elif use arm ; then - disable_elf_hack=yes - fi - - if [[ -n ${disable_elf_hack} ]] ; then - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack - fi - elif tc-is-gcc ; then - if ver_test $(gcc-fullversion) -ge 10 ; then - einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..." - append-cxxflags -fno-tree-loop-vectorize - fi - fi - - if use elibc_musl && use arm64 ; then - mozconfig_add_options_ac 'elf-hack is broken when using musl/arm64' --disable-elf-hack - fi - - # Additional ARCH support - case "${ARCH}" in - arm) - # Reduce the memory requirements for linking - if use clang ; then - # Nothing to do - :; - elif use lto ; then - append-ldflags -Wl,--no-keep-memory - else - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads - fi - ;; - esac - - if ! use elibc_glibc; then - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc - fi - - # Allow elfhack to work in combination with unstripped binaries - # when they would normally be larger than 2GiB. - append-ldflags "-Wl,--compress-debug-sections=zlib" - - # Make revdep-rebuild.sh happy; Also required for musl - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags - - # Pass $MAKEOPTS to build system - export MOZ_MAKE_FLAGS="${MAKEOPTS}" - - # Use system's Python environment - export PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach - - if use system-python-libs; then - export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="system" - else - export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none" - fi - - # Disable notification when build system has finished - export MOZ_NOSPAM=1 - - # Portage sets XARGS environment variable to "xargs -r" by default which - # breaks build system's check_prog() function which doesn't support arguments - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs" - - # Set build dir - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}" - - # Show flags we will use - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - # Handle EXTRA_CONF and show summary - local ac opt hash reason - - # Apply EXTRA_ECONF entries to $MOZCONFIG - if [[ -n ${EXTRA_ECONF} ]] ; then - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!} - for opt in "${ac[@]}"; do - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--} - done - fi - - echo - echo "==========================================================" - echo "Building ${PF} with the following configuration" - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do - [[ -z ${hash} || ${hash} == \# ]] \ - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}" - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}" - done - echo "==========================================================" - echo - - ./mach configure || die -} - -src_compile() { - local virtx_cmd= - - if tc-ld-is-mold && use lto; then - # increase ulimit with mold+lto, bugs #892641, #907485 - if ! ulimit -n 16384 1>/dev/null 2>&1 ; then - ewarn "Unable to modify ulimits - building with mold+lto might fail due to low ulimit -n resources." - ewarn "Please see bugs #892641 & #907485." - else - ulimit -n 16384 - fi - fi - - if use pgo; then - # Reset and cleanup environment variables used by GNOME/XDG - gnome2_environment_reset - - addpredict /root - - if ! use X; then - virtx_cmd=virtwl - else - virtx_cmd=virtx - fi - fi - - if ! use X; then - local -x GDK_BACKEND=wayland - else - local -x GDK_BACKEND=x11 - fi - - ${virtx_cmd} ./mach build --verbose || die -} - -src_install() { - # xpcshell is getting called during install - pax-mark m \ - "${BUILD_DIR}"/dist/bin/xpcshell \ - "${BUILD_DIR}"/dist/bin/${PN} \ - "${BUILD_DIR}"/dist/bin/plugin-container - - DESTDIR="${D}" ./mach install || die - - # Upstream cannot ship symlink but we can (bmo#658850) - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin - - # Don't install llvm-symbolizer from sys-devel/llvm package - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die - fi - - # Install policy (currently only used to disable application updates) - insinto "${MOZILLA_FIVE_HOME}/distribution" - newins "${FILESDIR}"/distribution.ini distribution.ini - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json - - # Install system-wide preferences - local PREFS_DIR="${MOZILLA_FIVE_HOME}/defaults/pref" - insinto "${PREFS_DIR}" - newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js - - local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js" - - # Set dictionary path to use system hunspell - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref" - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell"); - EOF - - # Force hwaccel prefs if USE=hwaccel is enabled - if use hwaccel ; then - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \ - >>"${GENTOO_PREFS}" \ - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js" - - if use wayland; then - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel wayland prefs" - pref("gfx.x11-egl.force-enabled", false); - EOF - else - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel x11 prefs" - pref("gfx.x11-egl.force-enabled", true); - EOF - fi - fi - - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it - if use system-harfbuzz ; then - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref" - sticky_pref("gfx.font_rendering.graphite.enabled", true); - EOF - fi - - # Install language packs - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') ) - if [[ -n "${langpacks}" ]] ; then - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}" - fi - - # Install icons - local icon_srcdir="${S}/comm/mail/branding/thunderbird" - local icon_symbolic_file="${icon_srcdir}/TB-symbolic.svg" - - insinto /usr/share/icons/hicolor/symbolic/apps - newins "${icon_symbolic_file}" ${PN}-symbolic.svg - - local icon size - for icon in "${icon_srcdir}"/default*.png ; do - size=${icon%.png} - size=${size##*/default} - - if [[ ${size} -eq 48 ]] ; then - newicon "${icon}" ${PN}.png - fi - - newicon -s ${size} "${icon}" ${PN}.png - done - - # Install menu - local app_name="Mozilla ${MOZ_PN^}" - local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop" - local desktop_filename="${PN}.desktop" - local exec_command="${PN}" - local icon="${PN}" - local use_wayland="false" - - if use wayland ; then - use_wayland="true" - fi - - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die - - sed -i \ - -e "s:@NAME@:${app_name}:" \ - -e "s:@EXEC@:${exec_command}:" \ - -e "s:@ICON@:${icon}:" \ - "${WORKDIR}/${PN}.desktop-template" \ - || die - - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}" - - rm "${WORKDIR}/${PN}.desktop-template" || die - - # Install wrapper script - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}" - newbin "${FILESDIR}/${PN}-r1.sh" ${PN} - - # Update wrapper - sed -i \ - -e "s:@PREFIX@:${EPREFIX}/usr:" \ - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \ - -e "s:@APULSELIB_DIR@:${apulselib}:" \ - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \ - "${ED}/usr/bin/${PN}" \ - || die -} - -pkg_preinst() { - xdg_pkg_preinst - - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse - # does not need to be forced into the LD_LIBRARY_PATH - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then - einfo "APULSE found; Generating library symlinks for sound support ..." - local lib - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do - # A quickpkg rolled by hand will grab symlinks as part of the package, - # so we need to avoid creating them if they already exist. - if [[ ! -L ${lib##*/} ]] ; then - ln -s "${lib}" ${lib##*/} || die - fi - done - popd &>/dev/null || die - fi -} - -pkg_postinst() { - xdg_pkg_postinst - - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then - elog "Apulse was detected at merge time on this system and so it will always be" - elog "used for sound. If you wish to use pulseaudio instead please unmerge" - elog "media-sound/apulse." - elog - fi - - local show_doh_information - local show_shortcut_information - - if [[ -z "${REPLACING_VERSIONS}" ]] ; then - # New install; Tell user that DoH is disabled by default - show_doh_information=yes - show_shortcut_information=no - else - local replacing_version - for replacing_version in ${REPLACING_VERSIONS} ; do - if ver_test "${replacing_version}" -lt 91.0 ; then - # Tell user that we no longer install a shortcut - # per supported display protocol - show_shortcut_information=yes - fi - done - fi - - if [[ -n "${show_doh_information}" ]] ; then - elog - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):" - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all" - elog "DNS traffic to Cloudflare by default is not a good idea and applications" - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5" - elog "(\"Off by choice\") by default." - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences." - fi - - if [[ -n "${show_shortcut_information}" ]] ; then - elog - elog "Since ${PN}-91.0 we no longer install multiple shortcuts for" - elog "each supported display protocol. Instead we will only install" - elog "one generic Mozilla ${PN^} shortcut." - elog "If you still want to be able to select between running Mozilla ${PN^}" - elog "on X11 or Wayland, you have to re-create these shortcuts on your own." - fi - - # bug 835078 - if use hwaccel && has_version "x11-drivers/xf86-video-nouveau"; then - ewarn "You have nouveau drivers installed in your system and 'hwaccel' " - ewarn "enabled for Firefox. Nouveau / your GPU might not support the " - ewarn "required EGL, so either disable 'hwaccel' or try the workaround " - ewarn "explained in https://bugs.gentoo.org/835078#c5 if Firefox crashes." - fi - - optfeature_header "Optional programs for extra features:" - optfeature "desktop notifications" x11-libs/libnotify - optfeature "encrypted chat support" net-libs/libotr - optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas -} diff --git a/mail-client/thunderbird/thunderbird-115.3.3.ebuild b/mail-client/thunderbird/thunderbird-115.3.3.ebuild deleted file mode 100644 index b55a6da424d8..000000000000 --- a/mail-client/thunderbird/thunderbird-115.3.3.ebuild +++ /dev/null @@ -1,1322 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -FIREFOX_PATCHSET="firefox-115esr-patches-06.tar.xz" - -LLVM_MAX_SLOT=17 - -PYTHON_COMPAT=( python3_{10..11} ) -PYTHON_REQ_USE="ncurses,sqlite,ssl" - -WANT_AUTOCONF="2.1" - -VIRTUALX_REQUIRED="manual" - -MOZ_ESR= - -MOZ_PV=${PV} -MOZ_PV_SUFFIX= -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then - MOZ_PV_SUFFIX=${BASH_REMATCH[1]} - - # Convert the ebuild version to the upstream Mozilla version - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI -fi - -if [[ -n ${MOZ_ESR} ]] ; then - # ESR releases have slightly different version numbers - MOZ_PV="${MOZ_PV}esr" -fi - -MOZ_PN="${PN%-bin}" -MOZ_P="${MOZ_PN}-${MOZ_PV}" -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}" -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}" - -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \ - llvm multiprocessing optfeature pax-utils python-any-r1 toolchain-funcs \ - virtualx xdg - -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}" - -if [[ ${PV} == *_rc* ]] ; then - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}" -fi - -PATCH_URIS=( - https://dev.gentoo.org/~juippis/mozilla/patchsets/${FIREFOX_PATCHSET} -) - -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz - ${PATCH_URIS[@]}" - -DESCRIPTION="Thunderbird Mail Client" -HOMEPAGE="https://www.thunderbird.net/" - -KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" - -SLOT="0" -LICENSE="MPL-2.0 GPL-2 LGPL-2.1" - -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel" -IUSE+=" jack libproxy lto +openh264 pgo pulseaudio sndio selinux" -IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx system-png system-python-libs +system-webp" -IUSE+=" wayland wifi +X" - -# Thunderbird-only USE flags. -IUSE+=" +system-librnp" - -REQUIRED_USE="|| ( X wayland ) - debug? ( !system-av1 ) - pgo? ( lto ) - wifi? ( dbus )" - -TB_ONLY_DEPEND="!&2 - return 1 - fi - - if use clang && ! tc-ld-is-mold ; then - if ! has_version -b "sys-devel/lld:${LLVM_SLOT}" ; then - einfo "sys-devel/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if ! has_version -b "virtual/rust:0/llvm-${LLVM_SLOT}" ; then - einfo "virtual/rust:0/llvm-${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if use pgo ; then - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - fi - fi - - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2 -} - -MOZ_LANGS=( - af ar ast be bg br ca cak cs cy da de dsb - el en-CA en-GB en-US es-AR es-ES es-MX et eu - fi fr fy-NL ga-IE gd gl he hr hsb hu - id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO - pa-IN pl pt-BR pt-PT rm ro ru - sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW -) - -mozilla_set_globals() { - # https://bugs.gentoo.org/587334 - local MOZ_TOO_REGIONALIZED_FOR_L10N=( - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE - ) - - local lang xflag - for lang in "${MOZ_LANGS[@]}" ; do - # en and en_US are handled internally - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then - continue - fi - - # strip region subtag if $lang is in the list - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then - xflag=${lang%%-*} - else - xflag=${lang} - fi - - SRC_URI+=" l10n_${xflag/[_@]/-}? (" - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi" - SRC_URI+=" )" - IUSE+=" l10n_${xflag/[_@]/-}" - done -} -mozilla_set_globals - -moz_clear_vendor_checksums() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -ne 1 ]] ; then - die "${FUNCNAME} requires exact one argument" - fi - - einfo "Clearing cargo checksums for ${1} ..." - - sed -i \ - -e 's/\("files":{\)[^}]*/\1/' \ - "${S}"/third_party/rust/${1}/.cargo-checksum.json \ - || die -} - -moz_install_xpi() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local DESTDIR=${1} - shift - - insinto "${DESTDIR}" - - local emid xpi_file xpi_tmp_dir - for xpi_file in "${@}" ; do - emid= - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}") - - # Unpack XPI - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die - - # Determine extension ID - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf") - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf" - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json") - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json" - else - die "failed to determine extension id" - fi - - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..." - newins "${xpi_file}" "${emid}.xpi" - done -} - -mozconfig_add_options_ac() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_add_options_mk() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_use_enable() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_enable "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -mozconfig_use_with() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_with "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -# This is a straight copypaste from toolchain-funcs.eclass's 'tc-ld-is-lld', and is temporarily -# placed here until toolchain-funcs.eclass gets an official support for mold linker. -# Please see: -# https://github.com/gentoo/gentoo/pull/28366 || -# https://github.com/gentoo/gentoo/pull/28355 -tc-ld-is-mold() { - local out - - # Ensure ld output is in English. - local -x LC_ALL=C - - # First check the linker directly. - out=$($(tc-getLD "$@") --version 2>&1) - if [[ ${out} == *"mold"* ]] ; then - return 0 - fi - - # Then see if they're selecting mold via compiler flags. - # Note: We're assuming they're using LDFLAGS to hold the - # options and not CFLAGS/CXXFLAGS. - local base="${T}/test-tc-linker" - cat <<-EOF > "${base}.c" - int main() { return 0; } - EOF - out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1) - rm -f "${base}"* - if [[ ${out} == *"mold"* ]] ; then - return 0 - fi - - # No mold here! - return 1 -} - -virtwl() { - debug-print-function ${FUNCNAME} "$@" - - [[ $# -lt 1 ]] && die "${FUNCNAME} needs at least one argument" - [[ -n $XDG_RUNTIME_DIR ]] || die "${FUNCNAME} needs XDG_RUNTIME_DIR to be set; try xdg_environment_reset" - tinywl -h >/dev/null || die 'tinywl -h failed' - - # TODO: don't run addpredict in utility function. WLR_RENDERER=pixman doesn't work - addpredict /dev/dri - local VIRTWL VIRTWL_PID - coproc VIRTWL { WLR_BACKENDS=headless exec tinywl -s 'echo $WAYLAND_DISPLAY; read _; kill $PPID'; } - local -x WAYLAND_DISPLAY - read WAYLAND_DISPLAY <&${VIRTWL[0]} - - debug-print "${FUNCNAME}: $@" - "$@" - local r=$? - - [[ -n $VIRTWL_PID ]] || die "tinywl exited unexpectedly" - exec {VIRTWL[0]}<&- {VIRTWL[1]}>&- - return $r -} - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has usersandbox $FEATURES ; then - die "You must enable usersandbox as X server can not run as root!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6600M" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has userpriv ${FEATURES} ; then - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6400M" - fi - - check-reqs_pkg_setup - - llvm_pkg_setup - - if use clang && use lto && tc-ld-is-lld ; then - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }') - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}") - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!" - - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }') - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}") - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!" - - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}." - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:" - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version" - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version" - eerror " - Build ${CATEGORY}/${PN} without USE=lto" - eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole " - eerror " llvm/clang/lld/rust chain depending on your @world updates)" - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!" - fi - fi - - python-any-r1_pkg_setup - - # Avoid PGO profiling problems due to enviroment leakage - # These should *always* be cleaned up anyway - unset \ - DBUS_SESSION_BUS_ADDRESS \ - DISPLAY \ - ORBIT_SOCKETDIR \ - SESSION_MANAGER \ - XAUTHORITY \ - XDG_CACHE_HOME \ - XDG_SESSION_COOKIE - - # Build system is using /proc/self/oom_score_adj, bug #604394 - addpredict /proc/self/oom_score_adj - - if use pgo ; then - # Update 105.0: "/proc/self/oom_score_adj" isn't enough anymore with pgo, but not sure - # whether that's due to better OOM handling by Firefox (bmo#1771712), or portage - # (PORTAGE_SCHEDULING_POLICY) update... - addpredict /proc - - # May need a wider addpredict when using wayland+pgo. - addpredict /dev/dri - - # Allow access to GPU during PGO run - local ati_cards mesa_cards nvidia_cards render_cards - shopt -s nullglob - - ati_cards=$(echo -n /dev/ati/card* | sed 's/ /:/g') - if [[ -n "${ati_cards}" ]] ; then - addpredict "${ati_cards}" - fi - - mesa_cards=$(echo -n /dev/dri/card* | sed 's/ /:/g') - if [[ -n "${mesa_cards}" ]] ; then - addpredict "${mesa_cards}" - fi - - nvidia_cards=$(echo -n /dev/nvidia* | sed 's/ /:/g') - if [[ -n "${nvidia_cards}" ]] ; then - addpredict "${nvidia_cards}" - fi - - render_cards=$(echo -n /dev/dri/renderD128* | sed 's/ /:/g') - if [[ -n "${render_cards}" ]] ; then - addpredict "${render_cards}" - fi - - shopt -u nullglob - fi - - if ! mountpoint -q /dev/shm ; then - # If /dev/shm is not available, configure is known to fail with - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py - ewarn "/dev/shm is not mounted -- expect build failures!" - fi - - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please - # get your own set of keys. - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc" - fi - - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ" - fi - - # Mozilla API keys (see https://location.services.mozilla.com/api) - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please - # get your own set of keys. - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005" - fi - - # Ensure we use C locale when building, bug #746215 - export LC_ALL=C - fi -} - -src_unpack() { - local _lp_dir="${WORKDIR}/language_packs" - local _src_file - - if [[ ! -d "${_lp_dir}" ]] ; then - mkdir "${_lp_dir}" || die - fi - - for _src_file in ${A} ; do - if [[ ${_src_file} == *.xpi ]]; then - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!" - else - unpack ${_src_file} - fi - done -} - -src_prepare() { - if use lto; then - rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch || die - fi - - if ! use ppc64; then - rm -v "${WORKDIR}"/firefox-patches/*ppc64*.patch || die - fi - - eapply "${WORKDIR}/firefox-patches" - - # Allow user to apply any additional patches without modifing ebuild - eapply_user - - # Make cargo respect MAKEOPTS - export CARGO_BUILD_JOBS="$(makeopts_jobs)" - - # Make LTO respect MAKEOPTS - sed -i \ - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/build/moz.configure/lto-pgo.configure \ - || die "sed failed to set num_cores" - - # Make ICU respect MAKEOPTS - sed -i \ - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/intl/icu_sources_data.py \ - || die "sed failed to set num_cores" - - # sed-in toolchain prefix - sed -i \ - -e "s/objdump/${CHOST}-objdump/" \ - "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \ - || die "sed failed to set toolchain prefix" - - sed -i \ - -e 's/ccache_stats = None/return None/' \ - "${S}"/python/mozbuild/mozbuild/controller/building.py \ - || die "sed failed to disable ccache stats call" - - einfo "Removing pre-built binaries ..." - - find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die - - # Create build dir - BUILD_DIR="${WORKDIR}/${PN}_build" - mkdir -p "${BUILD_DIR}" || die - - # Write API keys to disk - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die - - xdg_environment_reset -} - -src_configure() { - # Show flags set at the beginning - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - local have_switched_compiler= - if use clang; then - # Force clang - einfo "Enforcing the use of clang due to USE=clang ..." - - local version_clang=$(clang --version 2>/dev/null | grep -F -- 'clang version' | awk '{ print $3 }') - [[ -n ${version_clang} ]] && version_clang=$(ver_cut 1 "${version_clang}") - [[ -z ${version_clang} ]] && die "Failed to read clang version!" - - if tc-is-gcc; then - have_switched_compiler=yes - fi - AR=llvm-ar - CC=${CHOST}-clang-${version_clang} - CXX=${CHOST}-clang++-${version_clang} - NM=llvm-nm - RANLIB=llvm-ranlib - elif ! use clang && ! tc-is-gcc ; then - # Force gcc - have_switched_compiler=yes - einfo "Enforcing the use of gcc due to USE=-clang ..." - AR=gcc-ar - CC=${CHOST}-gcc - CXX=${CHOST}-g++ - NM=gcc-nm - RANLIB=gcc-ranlib - fi - - if [[ -n "${have_switched_compiler}" ]] ; then - # Because we switched active compiler we have to ensure - # that no unsupported flags are set - strip-unsupported-flags - fi - - # Ensure we use correct toolchain, - # AS is used in a non-standard way by upstream, #bmo1654031 - export HOST_CC="$(tc-getBUILD_CC)" - export HOST_CXX="$(tc-getBUILD_CXX)" - export AS="$(tc-getCC) -c" - tc-export CC CXX LD AR AS NM OBJDUMP RANLIB PKG_CONFIG - - # Pass the correct toolchain paths through cbindgen - if tc-is-cross-compiler ; then - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}" - fi - - # Set MOZILLA_FIVE_HOME - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - - # python/mach/mach/mixin/process.py fails to detect SHELL - export SHELL="${EPREFIX}/bin/bash" - - # Set state path - export MOZBUILD_STATE_PATH="${BUILD_DIR}" - - # Set MOZCONFIG - export MOZCONFIG="${S}/.mozconfig" - - # Initialize MOZCONFIG - mozconfig_add_options_ac '' --enable-application=comm/mail - mozconfig_add_options_ac '' --enable-project=comm/mail - - # Set Gentoo defaults - mozconfig_add_options_ac 'Gentoo default' \ - --allow-addon-sideload \ - --disable-cargo-incremental \ - --disable-crashreporter \ - --disable-gpsd \ - --disable-install-strip \ - --disable-parental-controls \ - --disable-strip \ - --disable-tests \ - --disable-updater \ - --disable-wmf \ - --enable-js-shell \ - --enable-legacy-profile-creation \ - --enable-negotiateauth \ - --enable-new-pass-manager \ - --enable-official-branding \ - --enable-release \ - --enable-system-ffi \ - --enable-system-pixman \ - --enable-system-policies \ - --host="${CBUILD:-${CHOST}}" \ - --libdir="${EPREFIX}/usr/$(get_libdir)" \ - --prefix="${EPREFIX}/usr" \ - --target="${CHOST}" \ - --without-ccache \ - --without-wasm-sandboxed-libraries \ - --with-intl-api \ - --with-libclang-path="$(llvm-config --libdir)" \ - --with-system-nspr \ - --with-system-nss \ - --with-system-zlib \ - --with-toolchain-prefix="${CHOST}-" \ - --with-unsigned-addon-scopes=app,system \ - --x-includes="${ESYSROOT}/usr/include" \ - --x-libraries="${ESYSROOT}/usr/$(get_libdir)" - - # Set update channel - local update_channel=release - [[ -n ${MOZ_ESR} ]] && update_channel=esr - mozconfig_add_options_ac '' --update-channel=${update_channel} - - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then - mozconfig_add_options_ac '' --enable-rust-simd - fi - - # For future keywording: This is currently (97.0) only supported on: - # amd64, arm, arm64 & x86. - # Might want to flip the logic around if Firefox is to support more arches. - # bug 833001, bug 903411#c8 - if use ppc64 || use riscv; then - mozconfig_add_options_ac '' --disable-sandbox - else - mozconfig_add_options_ac '' --enable-sandbox - fi - - # Enable JIT on riscv64 explicitly - # Can be removed once upstream enable it by default in the future. - use riscv && mozconfig_add_options_ac 'Enable JIT for RISC-V 64' --enable-jit - - if [[ -s "${S}/api-google.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-safebrowsing-api-keyfile="${S}/api-google.key" - else - einfo "Building without Google API key ..." - fi - - if [[ -s "${S}/api-location.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-location-service-api-keyfile="${S}/api-location.key" - else - einfo "Building without Location API key ..." - fi - - if [[ -s "${S}/api-mozilla.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-mozilla-api-keyfile="${S}/api-mozilla.key" - else - einfo "Building without Mozilla API key ..." - fi - - mozconfig_use_with system-av1 - mozconfig_use_with system-harfbuzz - mozconfig_use_with system-harfbuzz system-graphite2 - mozconfig_use_with system-icu - mozconfig_use_with system-jpeg - mozconfig_use_with system-libevent - mozconfig_use_with system-libvpx - mozconfig_use_with system-png - mozconfig_use_with system-webp - - if use system-librnp; then - mozconfig_add_options_ac "+system-librnp" --enable-compile-environment - mozconfig_use_with system-librnp - else - # This controls the backend of the bundled librnp. Choices are "botan" and "openssl". - # RNP Upstream recommends to use botan. In Gentoo it's preferred to use system-librnp. - mozconfig_add_options_ac "+bundled librnp backend = botan" --with-librnp-backend="botan" - fi - - mozconfig_use_enable dbus - mozconfig_use_enable libproxy - - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme - - if use hardened ; then - mozconfig_add_options_ac "+hardened" --enable-hardening - append-ldflags "-Wl,-z,relro -Wl,-z,now" - fi - - local myaudiobackends="" - use jack && myaudiobackends+="jack," - use sndio && myaudiobackends+="sndio," - use pulseaudio && myaudiobackends+="pulseaudio," - ! use pulseaudio && myaudiobackends+="alsa," - - mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}" - - mozconfig_use_enable wifi necko-wifi - - if use X && use wayland ; then - mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland - elif ! use X && use wayland ; then - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only - else - mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3 - fi - - if use lto ; then - if use clang ; then - # Upstream only supports lld or mold when using clang. - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld - fi - - mozconfig_add_options_ac '+lto' --enable-lto=cross - - else - # ThinLTO is currently broken, see bmo#1644409. - # mold does not support gcc+lto combination. - mozconfig_add_options_ac '+lto' --enable-lto=full - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd - fi - - if use pgo ; then - mozconfig_add_options_ac '+pgo' MOZ_PGO=1 - - if use clang ; then - # Used in build/pgo/profileserver.py - export LLVM_PROFDATA="llvm-profdata" - fi - fi - else - # Avoid auto-magic on linker - if use clang ; then - # lld is upstream's default - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld - fi - - else - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "linker is set to bfd due to USE=-clang" --enable-linker=bfd - fi - fi - fi - - # LTO flag was handled via configure - filter-lto - - mozconfig_use_enable debug - if use debug ; then - mozconfig_add_options_ac '+debug' --disable-optimize - mozconfig_add_options_ac '+debug' --enable-real-time-tracing - else - mozconfig_add_options_ac 'Gentoo defaults' --disable-real-time-tracing - - if is-flag '-g*' ; then - if use clang ; then - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*') - else - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols - fi - else - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols - fi - - if is-flag '-O0' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0 - elif is-flag '-O4' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4 - elif is-flag '-O3' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3 - elif is-flag '-O1' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1 - elif is-flag '-Os' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os - else - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2 - fi - fi - - # Debug flag was handled via configure - filter-flags '-g*' - - # Optimization flag was handled via configure - filter-flags '-O*' - - # Modifications to better support ARM, bug #553364 - if use cpu_flags_arm_neon ; then - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon - - if ! tc-is-clang ; then - # thumb options aren't supported when using clang, bug 666966 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \ - --with-thumb=yes \ - --with-thumb-interwork=no - fi - fi - - if [[ ${CHOST} == armv*h* ]] ; then - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard - - if ! use system-libvpx ; then - sed -i \ - -e "s|softfp|hard|" \ - "${S}"/media/libvpx/moz.build \ - || die - fi - fi - - if use clang ; then - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64') - local disable_elf_hack= - if use amd64 ; then - disable_elf_hack=yes - elif use x86 ; then - disable_elf_hack=yes - elif use arm ; then - disable_elf_hack=yes - fi - - if [[ -n ${disable_elf_hack} ]] ; then - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack - fi - elif tc-is-gcc ; then - if ver_test $(gcc-fullversion) -ge 10 ; then - einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..." - append-cxxflags -fno-tree-loop-vectorize - fi - fi - - if use elibc_musl && use arm64 ; then - mozconfig_add_options_ac 'elf-hack is broken when using musl/arm64' --disable-elf-hack - fi - - # Additional ARCH support - case "${ARCH}" in - arm) - # Reduce the memory requirements for linking - if use clang ; then - # Nothing to do - :; - elif use lto ; then - append-ldflags -Wl,--no-keep-memory - else - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads - fi - ;; - esac - - if ! use elibc_glibc; then - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc - fi - - # Allow elfhack to work in combination with unstripped binaries - # when they would normally be larger than 2GiB. - append-ldflags "-Wl,--compress-debug-sections=zlib" - - # Make revdep-rebuild.sh happy; Also required for musl - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags - - # Pass $MAKEOPTS to build system - export MOZ_MAKE_FLAGS="${MAKEOPTS}" - - # Use system's Python environment - export PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach - - if use system-python-libs; then - export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="system" - else - export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none" - fi - - # Disable notification when build system has finished - export MOZ_NOSPAM=1 - - # Portage sets XARGS environment variable to "xargs -r" by default which - # breaks build system's check_prog() function which doesn't support arguments - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs" - - # Set build dir - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}" - - # Show flags we will use - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - # Handle EXTRA_CONF and show summary - local ac opt hash reason - - # Apply EXTRA_ECONF entries to $MOZCONFIG - if [[ -n ${EXTRA_ECONF} ]] ; then - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!} - for opt in "${ac[@]}"; do - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--} - done - fi - - echo - echo "==========================================================" - echo "Building ${PF} with the following configuration" - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do - [[ -z ${hash} || ${hash} == \# ]] \ - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}" - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}" - done - echo "==========================================================" - echo - - ./mach configure || die -} - -src_compile() { - local virtx_cmd= - - if tc-ld-is-mold && use lto; then - # increase ulimit with mold+lto, bugs #892641, #907485 - if ! ulimit -n 16384 1>/dev/null 2>&1 ; then - ewarn "Unable to modify ulimits - building with mold+lto might fail due to low ulimit -n resources." - ewarn "Please see bugs #892641 & #907485." - else - ulimit -n 16384 - fi - fi - - if use pgo; then - # Reset and cleanup environment variables used by GNOME/XDG - gnome2_environment_reset - - addpredict /root - - if ! use X; then - virtx_cmd=virtwl - else - virtx_cmd=virtx - fi - fi - - if ! use X; then - local -x GDK_BACKEND=wayland - else - local -x GDK_BACKEND=x11 - fi - - ${virtx_cmd} ./mach build --verbose || die -} - -src_install() { - # xpcshell is getting called during install - pax-mark m \ - "${BUILD_DIR}"/dist/bin/xpcshell \ - "${BUILD_DIR}"/dist/bin/${PN} \ - "${BUILD_DIR}"/dist/bin/plugin-container - - DESTDIR="${D}" ./mach install || die - - # Upstream cannot ship symlink but we can (bmo#658850) - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin - - # Don't install llvm-symbolizer from sys-devel/llvm package - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die - fi - - # Install policy (currently only used to disable application updates) - insinto "${MOZILLA_FIVE_HOME}/distribution" - newins "${FILESDIR}"/distribution.ini distribution.ini - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json - - # Install system-wide preferences - local PREFS_DIR="${MOZILLA_FIVE_HOME}/defaults/pref" - insinto "${PREFS_DIR}" - newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js - - local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js" - - # Set dictionary path to use system hunspell - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref" - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell"); - EOF - - # Force hwaccel prefs if USE=hwaccel is enabled - if use hwaccel ; then - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \ - >>"${GENTOO_PREFS}" \ - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js" - - if use wayland; then - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel wayland prefs" - pref("gfx.x11-egl.force-enabled", false); - EOF - else - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel x11 prefs" - pref("gfx.x11-egl.force-enabled", true); - EOF - fi - fi - - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it - if use system-harfbuzz ; then - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref" - sticky_pref("gfx.font_rendering.graphite.enabled", true); - EOF - fi - - # Install language packs - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') ) - if [[ -n "${langpacks}" ]] ; then - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}" - fi - - # Install icons - local icon_srcdir="${S}/comm/mail/branding/thunderbird" - local icon_symbolic_file="${icon_srcdir}/TB-symbolic.svg" - - insinto /usr/share/icons/hicolor/symbolic/apps - newins "${icon_symbolic_file}" ${PN}-symbolic.svg - - local icon size - for icon in "${icon_srcdir}"/default*.png ; do - size=${icon%.png} - size=${size##*/default} - - if [[ ${size} -eq 48 ]] ; then - newicon "${icon}" ${PN}.png - fi - - newicon -s ${size} "${icon}" ${PN}.png - done - - # Install menu - local app_name="Mozilla ${MOZ_PN^}" - local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop" - local desktop_filename="${PN}.desktop" - local exec_command="${PN}" - local icon="${PN}" - local use_wayland="false" - - if use wayland ; then - use_wayland="true" - fi - - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die - - sed -i \ - -e "s:@NAME@:${app_name}:" \ - -e "s:@EXEC@:${exec_command}:" \ - -e "s:@ICON@:${icon}:" \ - "${WORKDIR}/${PN}.desktop-template" \ - || die - - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}" - - rm "${WORKDIR}/${PN}.desktop-template" || die - - # Install wrapper script - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}" - newbin "${FILESDIR}/${PN}-r1.sh" ${PN} - - # Update wrapper - sed -i \ - -e "s:@PREFIX@:${EPREFIX}/usr:" \ - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \ - -e "s:@APULSELIB_DIR@:${apulselib}:" \ - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \ - "${ED}/usr/bin/${PN}" \ - || die -} - -pkg_preinst() { - xdg_pkg_preinst - - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse - # does not need to be forced into the LD_LIBRARY_PATH - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then - einfo "APULSE found; Generating library symlinks for sound support ..." - local lib - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do - # A quickpkg rolled by hand will grab symlinks as part of the package, - # so we need to avoid creating them if they already exist. - if [[ ! -L ${lib##*/} ]] ; then - ln -s "${lib}" ${lib##*/} || die - fi - done - popd &>/dev/null || die - fi -} - -pkg_postinst() { - xdg_pkg_postinst - - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then - elog "Apulse was detected at merge time on this system and so it will always be" - elog "used for sound. If you wish to use pulseaudio instead please unmerge" - elog "media-sound/apulse." - elog - fi - - local show_doh_information - local show_shortcut_information - - if [[ -z "${REPLACING_VERSIONS}" ]] ; then - # New install; Tell user that DoH is disabled by default - show_doh_information=yes - show_shortcut_information=no - else - local replacing_version - for replacing_version in ${REPLACING_VERSIONS} ; do - if ver_test "${replacing_version}" -lt 91.0 ; then - # Tell user that we no longer install a shortcut - # per supported display protocol - show_shortcut_information=yes - fi - done - fi - - if [[ -n "${show_doh_information}" ]] ; then - elog - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):" - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all" - elog "DNS traffic to Cloudflare by default is not a good idea and applications" - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5" - elog "(\"Off by choice\") by default." - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences." - fi - - if [[ -n "${show_shortcut_information}" ]] ; then - elog - elog "Since ${PN}-91.0 we no longer install multiple shortcuts for" - elog "each supported display protocol. Instead we will only install" - elog "one generic Mozilla ${PN^} shortcut." - elog "If you still want to be able to select between running Mozilla ${PN^}" - elog "on X11 or Wayland, you have to re-create these shortcuts on your own." - fi - - # bug 835078 - if use hwaccel && has_version "x11-drivers/xf86-video-nouveau"; then - ewarn "You have nouveau drivers installed in your system and 'hwaccel' " - ewarn "enabled for Firefox. Nouveau / your GPU might not support the " - ewarn "required EGL, so either disable 'hwaccel' or try the workaround " - ewarn "explained in https://bugs.gentoo.org/835078#c5 if Firefox crashes." - fi - - optfeature_header "Optional programs for extra features:" - optfeature "desktop notifications" x11-libs/libnotify - optfeature "encrypted chat support" net-libs/libotr - optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas -} diff --git a/mail-client/thunderbird/thunderbird-115.4.0.ebuild b/mail-client/thunderbird/thunderbird-115.4.0.ebuild deleted file mode 100644 index e4f3e9cdd119..000000000000 --- a/mail-client/thunderbird/thunderbird-115.4.0.ebuild +++ /dev/null @@ -1,1321 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -FIREFOX_PATCHSET="firefox-115esr-patches-07.tar.xz" - -LLVM_MAX_SLOT=17 - -PYTHON_COMPAT=( python3_{10..11} ) -PYTHON_REQ_USE="ncurses,sqlite,ssl" - -WANT_AUTOCONF="2.1" - -VIRTUALX_REQUIRED="manual" - -MOZ_ESR= - -MOZ_PV=${PV} -MOZ_PV_SUFFIX= -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then - MOZ_PV_SUFFIX=${BASH_REMATCH[1]} - - # Convert the ebuild version to the upstream Mozilla version - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI -fi - -if [[ -n ${MOZ_ESR} ]] ; then - # ESR releases have slightly different version numbers - MOZ_PV="${MOZ_PV}esr" -fi - -MOZ_PN="${PN%-bin}" -MOZ_P="${MOZ_PN}-${MOZ_PV}" -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}" -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}" - -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \ - llvm multiprocessing optfeature pax-utils python-any-r1 toolchain-funcs \ - virtualx xdg - -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}" - -if [[ ${PV} == *_rc* ]] ; then - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}" -fi - -PATCH_URIS=( - https://dev.gentoo.org/~juippis/mozilla/patchsets/${FIREFOX_PATCHSET} -) - -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz - ${PATCH_URIS[@]}" - -DESCRIPTION="Thunderbird Mail Client" -HOMEPAGE="https://www.thunderbird.net/" - -KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" - -SLOT="0" -LICENSE="MPL-2.0 GPL-2 LGPL-2.1" - -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel" -IUSE+=" jack libproxy lto +openh264 pgo pulseaudio sndio selinux" -IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx system-png system-python-libs +system-webp" -IUSE+=" wayland wifi +X" - -# Thunderbird-only USE flags. -IUSE+=" +system-librnp" - -REQUIRED_USE="|| ( X wayland ) - debug? ( !system-av1 ) - pgo? ( lto ) - wifi? ( dbus )" - -TB_ONLY_DEPEND="!&2 - return 1 - fi - - if use clang && ! tc-ld-is-mold ; then - if ! has_version -b "sys-devel/lld:${LLVM_SLOT}" ; then - einfo "sys-devel/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if ! has_version -b "virtual/rust:0/llvm-${LLVM_SLOT}" ; then - einfo "virtual/rust:0/llvm-${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if use pgo ; then - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - fi - fi - - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2 -} - -MOZ_LANGS=( - af ar ast be bg br ca cak cs cy da de dsb - el en-CA en-GB en-US es-AR es-ES es-MX et eu - fi fr fy-NL ga-IE gd gl he hr hsb hu - id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO - pa-IN pl pt-BR pt-PT rm ro ru - sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW -) - -mozilla_set_globals() { - # https://bugs.gentoo.org/587334 - local MOZ_TOO_REGIONALIZED_FOR_L10N=( - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE - ) - - local lang xflag - for lang in "${MOZ_LANGS[@]}" ; do - # en and en_US are handled internally - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then - continue - fi - - # strip region subtag if $lang is in the list - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then - xflag=${lang%%-*} - else - xflag=${lang} - fi - - SRC_URI+=" l10n_${xflag/[_@]/-}? (" - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi" - SRC_URI+=" )" - IUSE+=" l10n_${xflag/[_@]/-}" - done -} -mozilla_set_globals - -moz_clear_vendor_checksums() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -ne 1 ]] ; then - die "${FUNCNAME} requires exact one argument" - fi - - einfo "Clearing cargo checksums for ${1} ..." - - sed -i \ - -e 's/\("files":{\)[^}]*/\1/' \ - "${S}"/third_party/rust/${1}/.cargo-checksum.json \ - || die -} - -moz_install_xpi() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local DESTDIR=${1} - shift - - insinto "${DESTDIR}" - - local emid xpi_file xpi_tmp_dir - for xpi_file in "${@}" ; do - emid= - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}") - - # Unpack XPI - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die - - # Determine extension ID - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf") - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf" - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json") - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json" - else - die "failed to determine extension id" - fi - - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..." - newins "${xpi_file}" "${emid}.xpi" - done -} - -mozconfig_add_options_ac() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_add_options_mk() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_use_enable() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_enable "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -mozconfig_use_with() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_with "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -# This is a straight copypaste from toolchain-funcs.eclass's 'tc-ld-is-lld', and is temporarily -# placed here until toolchain-funcs.eclass gets an official support for mold linker. -# Please see: -# https://github.com/gentoo/gentoo/pull/28366 || -# https://github.com/gentoo/gentoo/pull/28355 -tc-ld-is-mold() { - local out - - # Ensure ld output is in English. - local -x LC_ALL=C - - # First check the linker directly. - out=$($(tc-getLD "$@") --version 2>&1) - if [[ ${out} == *"mold"* ]] ; then - return 0 - fi - - # Then see if they're selecting mold via compiler flags. - # Note: We're assuming they're using LDFLAGS to hold the - # options and not CFLAGS/CXXFLAGS. - local base="${T}/test-tc-linker" - cat <<-EOF > "${base}.c" - int main() { return 0; } - EOF - out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1) - rm -f "${base}"* - if [[ ${out} == *"mold"* ]] ; then - return 0 - fi - - # No mold here! - return 1 -} - -virtwl() { - debug-print-function ${FUNCNAME} "$@" - - [[ $# -lt 1 ]] && die "${FUNCNAME} needs at least one argument" - [[ -n $XDG_RUNTIME_DIR ]] || die "${FUNCNAME} needs XDG_RUNTIME_DIR to be set; try xdg_environment_reset" - tinywl -h >/dev/null || die 'tinywl -h failed' - - # TODO: don't run addpredict in utility function. WLR_RENDERER=pixman doesn't work - addpredict /dev/dri - local VIRTWL VIRTWL_PID - coproc VIRTWL { WLR_BACKENDS=headless exec tinywl -s 'echo $WAYLAND_DISPLAY; read _; kill $PPID'; } - local -x WAYLAND_DISPLAY - read WAYLAND_DISPLAY <&${VIRTWL[0]} - - debug-print "${FUNCNAME}: $@" - "$@" - local r=$? - - [[ -n $VIRTWL_PID ]] || die "tinywl exited unexpectedly" - exec {VIRTWL[0]}<&- {VIRTWL[1]}>&- - return $r -} - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has usersandbox $FEATURES ; then - die "You must enable usersandbox as X server can not run as root!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6600M" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has userpriv ${FEATURES} ; then - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6400M" - fi - - check-reqs_pkg_setup - - llvm_pkg_setup - - if use clang && use lto && tc-ld-is-lld ; then - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }') - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}") - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!" - - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }') - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}") - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!" - - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}." - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:" - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version" - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version" - eerror " - Build ${CATEGORY}/${PN} without USE=lto" - eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole " - eerror " llvm/clang/lld/rust chain depending on your @world updates)" - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!" - fi - fi - - python-any-r1_pkg_setup - - # Avoid PGO profiling problems due to enviroment leakage - # These should *always* be cleaned up anyway - unset \ - DBUS_SESSION_BUS_ADDRESS \ - DISPLAY \ - ORBIT_SOCKETDIR \ - SESSION_MANAGER \ - XAUTHORITY \ - XDG_CACHE_HOME \ - XDG_SESSION_COOKIE - - # Build system is using /proc/self/oom_score_adj, bug #604394 - addpredict /proc/self/oom_score_adj - - if use pgo ; then - # Update 105.0: "/proc/self/oom_score_adj" isn't enough anymore with pgo, but not sure - # whether that's due to better OOM handling by Firefox (bmo#1771712), or portage - # (PORTAGE_SCHEDULING_POLICY) update... - addpredict /proc - - # May need a wider addpredict when using wayland+pgo. - addpredict /dev/dri - - # Allow access to GPU during PGO run - local ati_cards mesa_cards nvidia_cards render_cards - shopt -s nullglob - - ati_cards=$(echo -n /dev/ati/card* | sed 's/ /:/g') - if [[ -n "${ati_cards}" ]] ; then - addpredict "${ati_cards}" - fi - - mesa_cards=$(echo -n /dev/dri/card* | sed 's/ /:/g') - if [[ -n "${mesa_cards}" ]] ; then - addpredict "${mesa_cards}" - fi - - nvidia_cards=$(echo -n /dev/nvidia* | sed 's/ /:/g') - if [[ -n "${nvidia_cards}" ]] ; then - addpredict "${nvidia_cards}" - fi - - render_cards=$(echo -n /dev/dri/renderD128* | sed 's/ /:/g') - if [[ -n "${render_cards}" ]] ; then - addpredict "${render_cards}" - fi - - shopt -u nullglob - fi - - if ! mountpoint -q /dev/shm ; then - # If /dev/shm is not available, configure is known to fail with - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py - ewarn "/dev/shm is not mounted -- expect build failures!" - fi - - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please - # get your own set of keys. - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc" - fi - - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ" - fi - - # Mozilla API keys (see https://location.services.mozilla.com/api) - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please - # get your own set of keys. - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005" - fi - - # Ensure we use C locale when building, bug #746215 - export LC_ALL=C - fi -} - -src_unpack() { - local _lp_dir="${WORKDIR}/language_packs" - local _src_file - - if [[ ! -d "${_lp_dir}" ]] ; then - mkdir "${_lp_dir}" || die - fi - - for _src_file in ${A} ; do - if [[ ${_src_file} == *.xpi ]]; then - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!" - else - unpack ${_src_file} - fi - done -} - -src_prepare() { - if use lto; then - rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch || die - fi - - if ! use ppc64; then - rm -v "${WORKDIR}"/firefox-patches/*ppc64*.patch || die - fi - - eapply "${WORKDIR}/firefox-patches" - - # Allow user to apply any additional patches without modifing ebuild - eapply_user - - # Make cargo respect MAKEOPTS - export CARGO_BUILD_JOBS="$(makeopts_jobs)" - - # Make LTO respect MAKEOPTS - sed -i \ - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/build/moz.configure/lto-pgo.configure \ - || die "sed failed to set num_cores" - - # Make ICU respect MAKEOPTS - sed -i \ - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/intl/icu_sources_data.py \ - || die "sed failed to set num_cores" - - # sed-in toolchain prefix - sed -i \ - -e "s/objdump/${CHOST}-objdump/" \ - "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \ - || die "sed failed to set toolchain prefix" - - sed -i \ - -e 's/ccache_stats = None/return None/' \ - "${S}"/python/mozbuild/mozbuild/controller/building.py \ - || die "sed failed to disable ccache stats call" - - einfo "Removing pre-built binaries ..." - - find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die - - # Clear cargo checksums from crates we have patched - # moz_clear_vendor_checksums crate - moz_clear_vendor_checksums audio_thread_priority - - # Create build dir - BUILD_DIR="${WORKDIR}/${PN}_build" - mkdir -p "${BUILD_DIR}" || die - - # Write API keys to disk - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die - - xdg_environment_reset -} - -src_configure() { - # Show flags set at the beginning - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - local have_switched_compiler= - if use clang; then - # Force clang - einfo "Enforcing the use of clang due to USE=clang ..." - - local version_clang=$(clang --version 2>/dev/null | grep -F -- 'clang version' | awk '{ print $3 }') - [[ -n ${version_clang} ]] && version_clang=$(ver_cut 1 "${version_clang}") - [[ -z ${version_clang} ]] && die "Failed to read clang version!" - - if tc-is-gcc; then - have_switched_compiler=yes - fi - AR=llvm-ar - CC=${CHOST}-clang-${version_clang} - CXX=${CHOST}-clang++-${version_clang} - NM=llvm-nm - RANLIB=llvm-ranlib - elif ! use clang && ! tc-is-gcc ; then - # Force gcc - have_switched_compiler=yes - einfo "Enforcing the use of gcc due to USE=-clang ..." - AR=gcc-ar - CC=${CHOST}-gcc - CXX=${CHOST}-g++ - NM=gcc-nm - RANLIB=gcc-ranlib - fi - - if [[ -n "${have_switched_compiler}" ]] ; then - # Because we switched active compiler we have to ensure - # that no unsupported flags are set - strip-unsupported-flags - fi - - # Ensure we use correct toolchain, - # AS is used in a non-standard way by upstream, #bmo1654031 - export HOST_CC="$(tc-getBUILD_CC)" - export HOST_CXX="$(tc-getBUILD_CXX)" - export AS="$(tc-getCC) -c" - tc-export CC CXX LD AR AS NM OBJDUMP RANLIB PKG_CONFIG - - # Pass the correct toolchain paths through cbindgen - if tc-is-cross-compiler ; then - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}" - fi - - # Set MOZILLA_FIVE_HOME - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - - # python/mach/mach/mixin/process.py fails to detect SHELL - export SHELL="${EPREFIX}/bin/bash" - - # Set state path - export MOZBUILD_STATE_PATH="${BUILD_DIR}" - - # Set MOZCONFIG - export MOZCONFIG="${S}/.mozconfig" - - # Initialize MOZCONFIG - mozconfig_add_options_ac '' --enable-application=comm/mail - mozconfig_add_options_ac '' --enable-project=comm/mail - - # Set Gentoo defaults - mozconfig_add_options_ac 'Gentoo default' \ - --allow-addon-sideload \ - --disable-cargo-incremental \ - --disable-crashreporter \ - --disable-gpsd \ - --disable-install-strip \ - --disable-parental-controls \ - --disable-strip \ - --disable-tests \ - --disable-updater \ - --disable-wmf \ - --enable-js-shell \ - --enable-legacy-profile-creation \ - --enable-negotiateauth \ - --enable-new-pass-manager \ - --enable-official-branding \ - --enable-release \ - --enable-system-ffi \ - --enable-system-pixman \ - --enable-system-policies \ - --host="${CBUILD:-${CHOST}}" \ - --libdir="${EPREFIX}/usr/$(get_libdir)" \ - --prefix="${EPREFIX}/usr" \ - --target="${CHOST}" \ - --without-ccache \ - --without-wasm-sandboxed-libraries \ - --with-intl-api \ - --with-libclang-path="$(llvm-config --libdir)" \ - --with-system-nspr \ - --with-system-nss \ - --with-system-zlib \ - --with-toolchain-prefix="${CHOST}-" \ - --with-unsigned-addon-scopes=app,system \ - --x-includes="${ESYSROOT}/usr/include" \ - --x-libraries="${ESYSROOT}/usr/$(get_libdir)" - - # Set update channel - local update_channel=release - [[ -n ${MOZ_ESR} ]] && update_channel=esr - mozconfig_add_options_ac '' --update-channel=${update_channel} - - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then - mozconfig_add_options_ac '' --enable-rust-simd - fi - - # For future keywording: This is currently (97.0) only supported on: - # amd64, arm, arm64 & x86. - # Might want to flip the logic around if Firefox is to support more arches. - # bug 833001, bug 903411#c8 - if use ppc64 || use riscv; then - mozconfig_add_options_ac '' --disable-sandbox - else - mozconfig_add_options_ac '' --enable-sandbox - fi - - # Enable JIT on riscv64 explicitly - # Can be removed once upstream enable it by default in the future. - use riscv && mozconfig_add_options_ac 'Enable JIT for RISC-V 64' --enable-jit - - if [[ -s "${S}/api-google.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-safebrowsing-api-keyfile="${S}/api-google.key" - else - einfo "Building without Google API key ..." - fi - - if [[ -s "${S}/api-location.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-location-service-api-keyfile="${S}/api-location.key" - else - einfo "Building without Location API key ..." - fi - - if [[ -s "${S}/api-mozilla.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-mozilla-api-keyfile="${S}/api-mozilla.key" - else - einfo "Building without Mozilla API key ..." - fi - - mozconfig_use_with system-av1 - mozconfig_use_with system-harfbuzz - mozconfig_use_with system-harfbuzz system-graphite2 - mozconfig_use_with system-icu - mozconfig_use_with system-jpeg - mozconfig_use_with system-libevent - mozconfig_use_with system-libvpx - mozconfig_use_with system-png - mozconfig_use_with system-webp - - if use system-librnp; then - mozconfig_add_options_ac "+system-librnp" --enable-compile-environment - mozconfig_use_with system-librnp - else - # This controls the backend of the bundled librnp. Choices are "botan" and "openssl". - # RNP Upstream recommends to use botan. In Gentoo it's preferred to use system-librnp. - mozconfig_add_options_ac "+bundled librnp backend = botan" --with-librnp-backend="botan" - fi - - mozconfig_use_enable dbus - mozconfig_use_enable libproxy - - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme - - if use hardened ; then - mozconfig_add_options_ac "+hardened" --enable-hardening - append-ldflags "-Wl,-z,relro -Wl,-z,now" - fi - - local myaudiobackends="" - use jack && myaudiobackends+="jack," - use sndio && myaudiobackends+="sndio," - use pulseaudio && myaudiobackends+="pulseaudio," - ! use pulseaudio && myaudiobackends+="alsa," - - mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}" - - mozconfig_use_enable wifi necko-wifi - - if use X && use wayland ; then - mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland - elif ! use X && use wayland ; then - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only - else - mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3 - fi - - if use lto ; then - if use clang ; then - # Upstream only supports lld or mold when using clang. - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld - fi - - mozconfig_add_options_ac '+lto' --enable-lto=cross - - else - # ThinLTO is currently broken, see bmo#1644409. - # mold does not support gcc+lto combination. - mozconfig_add_options_ac '+lto' --enable-lto=full - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd - fi - - if use pgo ; then - mozconfig_add_options_ac '+pgo' MOZ_PGO=1 - - if use clang ; then - # Used in build/pgo/profileserver.py - export LLVM_PROFDATA="llvm-profdata" - fi - fi - else - # Avoid auto-magic on linker - if use clang ; then - # lld is upstream's default - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld - fi - - else - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "linker is set to bfd due to USE=-clang" --enable-linker=bfd - fi - fi - fi - - # LTO flag was handled via configure - filter-lto - - mozconfig_use_enable debug - if use debug ; then - mozconfig_add_options_ac '+debug' --disable-optimize - mozconfig_add_options_ac '+debug' --enable-real-time-tracing - else - mozconfig_add_options_ac 'Gentoo defaults' --disable-real-time-tracing - - if is-flag '-g*' ; then - if use clang ; then - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*') - else - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols - fi - else - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols - fi - - if is-flag '-O0' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0 - elif is-flag '-O4' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4 - elif is-flag '-O3' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3 - elif is-flag '-O1' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1 - elif is-flag '-Os' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os - else - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2 - fi - fi - - # Debug flag was handled via configure - filter-flags '-g*' - - # Optimization flag was handled via configure - filter-flags '-O*' - - # Modifications to better support ARM, bug #553364 - if use cpu_flags_arm_neon ; then - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon - - if ! tc-is-clang ; then - # thumb options aren't supported when using clang, bug 666966 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \ - --with-thumb=yes \ - --with-thumb-interwork=no - fi - fi - - if [[ ${CHOST} == armv*h* ]] ; then - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard - - if ! use system-libvpx ; then - sed -i \ - -e "s|softfp|hard|" \ - "${S}"/media/libvpx/moz.build \ - || die - fi - fi - - if use clang ; then - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64') - local disable_elf_hack= - if use amd64 ; then - disable_elf_hack=yes - elif use x86 ; then - disable_elf_hack=yes - elif use arm ; then - disable_elf_hack=yes - fi - - if [[ -n ${disable_elf_hack} ]] ; then - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack - fi - fi - - if use elibc_musl && use arm64 ; then - mozconfig_add_options_ac 'elf-hack is broken when using musl/arm64' --disable-elf-hack - fi - - # Additional ARCH support - case "${ARCH}" in - arm) - # Reduce the memory requirements for linking - if use clang ; then - # Nothing to do - :; - elif use lto ; then - append-ldflags -Wl,--no-keep-memory - else - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads - fi - ;; - esac - - if ! use elibc_glibc; then - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc - fi - - # Allow elfhack to work in combination with unstripped binaries - # when they would normally be larger than 2GiB. - append-ldflags "-Wl,--compress-debug-sections=zlib" - - # Make revdep-rebuild.sh happy; Also required for musl - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags - - # Pass $MAKEOPTS to build system - export MOZ_MAKE_FLAGS="${MAKEOPTS}" - - # Use system's Python environment - export PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach - - if use system-python-libs; then - export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="system" - else - export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none" - fi - - # Disable notification when build system has finished - export MOZ_NOSPAM=1 - - # Portage sets XARGS environment variable to "xargs -r" by default which - # breaks build system's check_prog() function which doesn't support arguments - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs" - - # Set build dir - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}" - - # Show flags we will use - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - # Handle EXTRA_CONF and show summary - local ac opt hash reason - - # Apply EXTRA_ECONF entries to $MOZCONFIG - if [[ -n ${EXTRA_ECONF} ]] ; then - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!} - for opt in "${ac[@]}"; do - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--} - done - fi - - echo - echo "==========================================================" - echo "Building ${PF} with the following configuration" - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do - [[ -z ${hash} || ${hash} == \# ]] \ - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}" - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}" - done - echo "==========================================================" - echo - - ./mach configure || die -} - -src_compile() { - local virtx_cmd= - - if tc-ld-is-mold && use lto; then - # increase ulimit with mold+lto, bugs #892641, #907485 - if ! ulimit -n 16384 1>/dev/null 2>&1 ; then - ewarn "Unable to modify ulimits - building with mold+lto might fail due to low ulimit -n resources." - ewarn "Please see bugs #892641 & #907485." - else - ulimit -n 16384 - fi - fi - - if use pgo; then - # Reset and cleanup environment variables used by GNOME/XDG - gnome2_environment_reset - - addpredict /root - - if ! use X; then - virtx_cmd=virtwl - else - virtx_cmd=virtx - fi - fi - - if ! use X; then - local -x GDK_BACKEND=wayland - else - local -x GDK_BACKEND=x11 - fi - - ${virtx_cmd} ./mach build --verbose || die -} - -src_install() { - # xpcshell is getting called during install - pax-mark m \ - "${BUILD_DIR}"/dist/bin/xpcshell \ - "${BUILD_DIR}"/dist/bin/${PN} \ - "${BUILD_DIR}"/dist/bin/plugin-container - - DESTDIR="${D}" ./mach install || die - - # Upstream cannot ship symlink but we can (bmo#658850) - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin - - # Don't install llvm-symbolizer from sys-devel/llvm package - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die - fi - - # Install policy (currently only used to disable application updates) - insinto "${MOZILLA_FIVE_HOME}/distribution" - newins "${FILESDIR}"/distribution.ini distribution.ini - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json - - # Install system-wide preferences - local PREFS_DIR="${MOZILLA_FIVE_HOME}/defaults/pref" - insinto "${PREFS_DIR}" - newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js - - local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js" - - # Set dictionary path to use system hunspell - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref" - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell"); - EOF - - # Force hwaccel prefs if USE=hwaccel is enabled - if use hwaccel ; then - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \ - >>"${GENTOO_PREFS}" \ - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js" - - if use wayland; then - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel wayland prefs" - pref("gfx.x11-egl.force-enabled", false); - EOF - else - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel x11 prefs" - pref("gfx.x11-egl.force-enabled", true); - EOF - fi - fi - - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it - if use system-harfbuzz ; then - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref" - sticky_pref("gfx.font_rendering.graphite.enabled", true); - EOF - fi - - # Install language packs - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') ) - if [[ -n "${langpacks}" ]] ; then - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}" - fi - - # Install icons - local icon_srcdir="${S}/comm/mail/branding/thunderbird" - local icon_symbolic_file="${icon_srcdir}/TB-symbolic.svg" - - insinto /usr/share/icons/hicolor/symbolic/apps - newins "${icon_symbolic_file}" ${PN}-symbolic.svg - - local icon size - for icon in "${icon_srcdir}"/default*.png ; do - size=${icon%.png} - size=${size##*/default} - - if [[ ${size} -eq 48 ]] ; then - newicon "${icon}" ${PN}.png - fi - - newicon -s ${size} "${icon}" ${PN}.png - done - - # Install menu - local app_name="Mozilla ${MOZ_PN^}" - local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop" - local desktop_filename="${PN}.desktop" - local exec_command="${PN}" - local icon="${PN}" - local use_wayland="false" - - if use wayland ; then - use_wayland="true" - fi - - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die - - sed -i \ - -e "s:@NAME@:${app_name}:" \ - -e "s:@EXEC@:${exec_command}:" \ - -e "s:@ICON@:${icon}:" \ - "${WORKDIR}/${PN}.desktop-template" \ - || die - - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}" - - rm "${WORKDIR}/${PN}.desktop-template" || die - - # Install wrapper script - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}" - newbin "${FILESDIR}/${PN}-r1.sh" ${PN} - - # Update wrapper - sed -i \ - -e "s:@PREFIX@:${EPREFIX}/usr:" \ - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \ - -e "s:@APULSELIB_DIR@:${apulselib}:" \ - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \ - "${ED}/usr/bin/${PN}" \ - || die -} - -pkg_preinst() { - xdg_pkg_preinst - - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse - # does not need to be forced into the LD_LIBRARY_PATH - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then - einfo "APULSE found; Generating library symlinks for sound support ..." - local lib - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do - # A quickpkg rolled by hand will grab symlinks as part of the package, - # so we need to avoid creating them if they already exist. - if [[ ! -L ${lib##*/} ]] ; then - ln -s "${lib}" ${lib##*/} || die - fi - done - popd &>/dev/null || die - fi -} - -pkg_postinst() { - xdg_pkg_postinst - - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then - elog "Apulse was detected at merge time on this system and so it will always be" - elog "used for sound. If you wish to use pulseaudio instead please unmerge" - elog "media-sound/apulse." - elog - fi - - local show_doh_information - local show_shortcut_information - - if [[ -z "${REPLACING_VERSIONS}" ]] ; then - # New install; Tell user that DoH is disabled by default - show_doh_information=yes - show_shortcut_information=no - else - local replacing_version - for replacing_version in ${REPLACING_VERSIONS} ; do - if ver_test "${replacing_version}" -lt 91.0 ; then - # Tell user that we no longer install a shortcut - # per supported display protocol - show_shortcut_information=yes - fi - done - fi - - if [[ -n "${show_doh_information}" ]] ; then - elog - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):" - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all" - elog "DNS traffic to Cloudflare by default is not a good idea and applications" - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5" - elog "(\"Off by choice\") by default." - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences." - fi - - if [[ -n "${show_shortcut_information}" ]] ; then - elog - elog "Since ${PN}-91.0 we no longer install multiple shortcuts for" - elog "each supported display protocol. Instead we will only install" - elog "one generic Mozilla ${PN^} shortcut." - elog "If you still want to be able to select between running Mozilla ${PN^}" - elog "on X11 or Wayland, you have to re-create these shortcuts on your own." - fi - - # bug 835078 - if use hwaccel && has_version "x11-drivers/xf86-video-nouveau"; then - ewarn "You have nouveau drivers installed in your system and 'hwaccel' " - ewarn "enabled for Firefox. Nouveau / your GPU might not support the " - ewarn "required EGL, so either disable 'hwaccel' or try the workaround " - ewarn "explained in https://bugs.gentoo.org/835078#c5 if Firefox crashes." - fi - - optfeature_header "Optional programs for extra features:" - optfeature "desktop notifications" x11-libs/libnotify - optfeature "encrypted chat support" net-libs/libotr - optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas -}