summaryrefslogtreecommitdiff
path: root/mail-client
diff options
context:
space:
mode:
Diffstat (limited to 'mail-client')
-rw-r--r--mail-client/Manifest.gzbin3372 -> 3374 bytes
-rw-r--r--mail-client/thunderbird-bin/Manifest67
-rw-r--r--mail-client/thunderbird-bin/thunderbird-bin-128.4.4.ebuild274
-rw-r--r--mail-client/thunderbird/Manifest66
-rw-r--r--mail-client/thunderbird/thunderbird-128.4.4.ebuild1156
5 files changed, 1563 insertions, 0 deletions
diff --git a/mail-client/Manifest.gz b/mail-client/Manifest.gz
index 7430aa89599d..26926a96516c 100644
--- a/mail-client/Manifest.gz
+++ b/mail-client/Manifest.gz
Binary files differ
diff --git a/mail-client/thunderbird-bin/Manifest b/mail-client/thunderbird-bin/Manifest
index d9c3fccc30ec..a29644ccc98e 100644
--- a/mail-client/thunderbird-bin/Manifest
+++ b/mail-client/thunderbird-bin/Manifest
@@ -66,7 +66,74 @@ DIST thunderbird-128.4.3-uz.xpi 592133 BLAKE2B 6a5ed287aef2322ddcc6af1444c6921fe
DIST thunderbird-128.4.3-vi.xpi 790928 BLAKE2B 9b3e0774be4c6577993edb4600a1acfb8556f4812f6b8b39c08e4b2d7b79531131f41a8d0c40ecf2287888f6bab3b469d64f2c4c53ab9476222983fb013e1b92 SHA512 c67408c32dde91e0aa71a454d271f1bbc06b65dbdf5f0456a2618cac8fa546a917f05b785757550313a8e0ef69a3f907caccc5877fd864a5d72769f9c5be3dd2
DIST thunderbird-128.4.3-zh-CN.xpi 790744 BLAKE2B eec55be6a969b1993ba973ab90a1215772cb6cc9a22272cb70e33a15de847e3ef3c0c76eadd8cdea83732a08078a2c705adaeb819cce0e10b4b3cfca99d339d1 SHA512 4965e4fc8cbf8ec42e940d178c7eedf25ace3104cc33b90b7b1e1cb9b3818334fb3ddf5be058ee18b805e65122ec5c22b4f6045c841485e6940bbf3e6397d47d
DIST thunderbird-128.4.3-zh-TW.xpi 794099 BLAKE2B a5c3218a692bde7d220eb8cfbdab7126347312b911910d57a168fcdf8709f2c2840ba31ce54ff33ead9f0627a450e94106e7b9a91399a4a449d1f1f68925ba62 SHA512 aa789247b4e853e95687072f5f5e93cf835b799b5d037558ad49230ee64b9494fde0328c1a792aac52f36ec050b0efda193f0ad7495f5f7c30c0f3ea9555ae75
+DIST thunderbird-128.4.4-af.xpi 530349 BLAKE2B 68e19704fb7d4019fd29f083790c9b318141e9794e78f826ea0a24eb82033788079ed57dab278158781bc94029d2efe2b0593430ad739bc2366eeb75255686f6 SHA512 0d921a5b3e31df6fcdc71e56d0c436f9061635df5a947b65a380a650263836d29f7cce4d5b7c3bab18a4933b6f996454828744a2725d8836adbda5cf75ae1657
+DIST thunderbird-128.4.4-ar.xpi 686479 BLAKE2B 597760162f95be07802fd970368071a1be9357e0c578fb4dc49b54121df6f72ccc99efe4ee672eace422b0bb7a56e68ee8a1e8c207ccd413c2aa40628451a9b4 SHA512 841649ce1354f7334a7dcedba212cd64636c8b3c8ab1e2118ee14c3ae14decf9cc91690f40b836a2affa04f38cb584490f3a06a3420920fc89b9904996baee40
+DIST thunderbird-128.4.4-ast.xpi 561054 BLAKE2B fe33c10d50dc07300c8e5a4df10289b470ce0b4657b6c509fc97f361e3234e5901c27dc36e2b48fa8b0129dff46080d0c92e2a4dfc261da527ef25c8d29b09cd SHA512 d1bb988fbc33f95394e1b84fa45dab3e2ea8a3768af95c46571a1b5176af0e441743ed7264343f10e9b8b4939266a7867a298ac6c83230a379abc5acfc384d64
+DIST thunderbird-128.4.4-be.xpi 769119 BLAKE2B 4e90e132831e06f487f16ba964c08d597cb777fb34050b5b644906cc0c2c264a2916da6701e7ca27687f6dc300e079557e9ecc5d23e05759bc27e252aef80f40 SHA512 1a580678a17353db1f1df5b2dc5f5dd84e41a5eebe41af32196ff1a06dbf16c73f9429398fd8d52023338d86ae8a9622e9b400ed55e1de6c674680e5fb00990e
+DIST thunderbird-128.4.4-bg.xpi 811600 BLAKE2B 67edadd6e29f23713e829404784d4f1d52139492832611e9c88a8ec7d003a691db93f4b73655416b67bf98a8aa7f5101e7694f70b2eb3b16bcb00ac62bc73779 SHA512 cf1809bda13805ddca66083183de63d1c35f2c66d7576f75fe7926399ed9e067b04eaede707be674b9ecc7a35476266accd4c5ea2f18563dd9ec281db33f9482
+DIST thunderbird-128.4.4-br.xpi 654631 BLAKE2B 88162381c80c81d833d0b8876652e94bf66dc154c7a31494075a5ddfe46057ce2ba82dd60b6ae78fba4845a62032f0dd8c23c9c4e278fb6172f7a75f52a060f7 SHA512 e764bbe29571d276be1b700d74ed4180de2ac02e87f6f025f6153aceffdb69497f7fca16c689a5ed71667f74c12ede948b8933acb1a71d1b78766cefcca067b3
+DIST thunderbird-128.4.4-ca.xpi 709854 BLAKE2B c8ae414f253a863b7beefb807ef0f20126834e31c5882cfbda9fd574c3a04eb3cec37da20cd87733cf55b7d579fc86208c9fab8d15653755e24876730c8d0354 SHA512 4884021301e7eead3d65992282de1a5614e62ca34178d4801ae369a367c80fcf0799ca0532644d70e405059788ba96c07c3c4442f9be843765322727d12914c0
+DIST thunderbird-128.4.4-cak.xpi 671703 BLAKE2B 4b8c716f2bf6f633f9b7d01ba4004eb6c8fc9dc83ea4e759c1448587ca3ab6bc411a14c4cf314f0d02d469a541ca3ba6ca5138591620ec183464b3081c649542 SHA512 476b8ac27f5f3568d49014c23caad54bcd29dda8ae4b8f79be328616c993ac9942a7de4ebf97dda13fe2cb33dd08bbe249872c50a788cd765e48936e6ee2366d
+DIST thunderbird-128.4.4-cs.xpi 788816 BLAKE2B 27ca17bb2d3a631c125fcced58cc8e7e4b7b9571deb777f6d0852717bdbb966bcf41ef734c01a248143643d658255ea1feae15c7f9db8a58ffc116cb72059a4e SHA512 7eaab3dbb9c2e80859c9e7c4ba727117268a62fa2a49e31279718538c6d5e4d2886673c47951718b026012cd5428477e763e4313602d55991a21d87aa11cc82d
+DIST thunderbird-128.4.4-cy.xpi 753452 BLAKE2B 11ef77ceb682661805f6310e61d6d051eaab78dfb8d8edfa2beb09b0a0b87a7d0004ea87e7b611a48833331917477ad7b77fe42fdaae9a57f70763dca9dd84ec SHA512 2f99bec0e89543250d08bb2d5c008dad5c64ce2d0ab4e569179251182f4683ad21ca6e4d79a74ad93a73c8986bfec1585f5dfef42ef8951ca6beb6b5f2756fbf
+DIST thunderbird-128.4.4-da.xpi 737120 BLAKE2B 0ef97bb9c2dccd6bb6c00ab304dd2cb4ebdd6410145d2a397cc4b312c87b2dc750204a526f86773bd5ec5b5623f83ead74afb2b954aba58e12f9cb14b4a23ca0 SHA512 e598d4460aedcf5c853c6c728e00cb710fff791bd918900a383a45dceb08918368da76341d78194719112269eb20ba346513b3edbeacbfc4ae66e0a4cdaf28ee
+DIST thunderbird-128.4.4-de.xpi 771021 BLAKE2B 6aa65be90f3eb5811df850270f89d83a46bc0176a2fa2a2a9c2653f047563189b470ba53498d8baa7ded1c05e1aaec8aa5195146587c89bc36a30017c8040558 SHA512 9a28e6f55d1c98956d55ab3d54f66b51e714b5619cfebdb66849f6c80683ada06c3fbb79b5fa1eb8a40d67d0c205db82858457c64d7898c503d51f22def06715
+DIST thunderbird-128.4.4-dsb.xpi 787772 BLAKE2B 97ee88d787c3cb72f12df184075641db2fccd0d6efe1fdec4d666da4ef88e4ccb55978b8c9b9309d9e318f5eb0850a1b11eb30c45cad0865a5f12de0088d05a1 SHA512 37abd46027d6e355aae158f0f05deb8ebf8c30f8a29b29b49798f0c957c700d49af7bc8641431694d5cce232298ca81a9fd6abe5b70fad556faa69b0f736682b
+DIST thunderbird-128.4.4-el.xpi 894340 BLAKE2B da68f1b41321a72766e4a7b79d062497c8c9175fe762f6eeb83477d6f83770d6ab950bd43542cc0ef14455a5f170b6d20d8dd9829686f8335817ea0fbae6f67e SHA512 ccc3f0941cab1f5012b17e255484285adc3daea6cf717d37b4c0dd8fc2ac3ddeca2043a5c57b54034a1b3899f2717d9ec038c427f56d69207331c8671df426a3
+DIST thunderbird-128.4.4-en-CA.xpi 704736 BLAKE2B 64dcd0121bf0ad6b90e4719ebbb974fa38eab65af52a7ca96feb17f3a8ee07f9b27073fddf3934806a1a54ce16ff4f06072b45d7a7f6f76ac1a0d110a9e412b3 SHA512 3174dbbacf2b7da1fab3a1e9ba8571690103641b5aa57db92eba243c680fcbf7b41bd769a63515f76c181d41738de90a127d637fcaf5e906369ea03a3ad64129
+DIST thunderbird-128.4.4-en-GB.xpi 706803 BLAKE2B c607948911ab83bc883a10d8f084bb508c75fc34fb82381633ed01d47b8d594ef8c70f770b2b592eeb7e4924fdaf3c68502f1193eab8b4119ed7003ae0f34fd9 SHA512 837c18d26cd113ddb576cc04119b2389507a7f85735b2f544b313319d4dc6029f92e64e8c3c71ababf02dc30e597c35453be37600cd2dc89cfceeec986690e2c
+DIST thunderbird-128.4.4-es-AR.xpi 762698 BLAKE2B 91e62f75d0fa124a66c882032a4ebafabaf68c3a505c16d1355e09a1e82999dd1e03e6ff2d6e50f5ed3c7875074e81a7b9bc5477110283de8a77b38962a304a2 SHA512 ca617ae57b0528907cdcaaab370653ff8846b8087cd276d8fa5b5122560e8de9ee7764b19bd0b63a82227bb618394d2ce6c895b59419e9c089f8f607a0e74f91
+DIST thunderbird-128.4.4-es-ES.xpi 729373 BLAKE2B f963e13473971b52e72d9933fc22287606de51c3232d45ca8d510933c45ccff067c1aa8b41bd9c812434e42e6cda09d4cb5c9e20f8836853c4354b089b0ed224 SHA512 a54b3784b8d3d85d8db5c4c5f0a5d30a186cfe614b2101bb181daaf4fff067b24d0b76c1b3529741f69a16e84e187062deb4d04841edb237fdc08be1b1ad38f4
+DIST thunderbird-128.4.4-es-MX.xpi 748409 BLAKE2B 9d9a937fb22acf29972c3e8c51f37ed806a6041a915c39abcb01038437db6295065bdc6813262c66aab31f6d4a773c59b68623ec6e49990b4ce7dc55061e41f7 SHA512 fef07803171194189b325a85acd557a9d33567fd83afae192a46a1e568c2f7656e6b0c2bc7b1e5c03a7285a3601fa2dd79f68a9b5397decd0a684a3621bec3f7
+DIST thunderbird-128.4.4-et.xpi 696281 BLAKE2B 03fc02f993a7e0759e3e19204839cda19f998720f61637749db8b5e073782c5585a070328b1d7805eea2017f48694319b01db7d5b56771a701b51a1b891944d1 SHA512 5af67957a924756a064244d745e24ff7efb33cf8edd1a6059b00a85d9e861519be268eac7162caf5ea9acb92e5705c3bbd87629a01cd5def20d7ad7e05e14fad
+DIST thunderbird-128.4.4-eu.xpi 734389 BLAKE2B fbd27718a01b3a55fb92ae4b83368f62571f69330b92576870952c34fe10e3712e2106d0d3d70d396956d3a74a986a339905abf8d3fab07050d7edd06d4f2287 SHA512 4ef6e401f4ffd29decd05a3bc10e4515a0d65a81ae0831f154fd60361e45a1949df2952f71796527ed4cc6a479b3a4d606091ecb79ab893498c1d9efdeadbb4d
+DIST thunderbird-128.4.4-fi.xpi 738610 BLAKE2B 6dc4b37e8bf8b9fe5f44218c430a6194ec8cab726ec449734eda7e51ff3a75b3392f6231005bc168bf226fc9ff1b1594cd25da4954483a6f5ef853f3d614625e SHA512 17192431de7cf5495963d83eb2b1bd370a3a8f0a8e0b912462a8a56867cbcd84a41f9b2b8bbf7bfc635de66f480e32e1f67bf23f491506b56869405702250b79
+DIST thunderbird-128.4.4-fr.xpi 775788 BLAKE2B 95109a9b332aa350c556e9d7e2024fe587ecf521c40da0228db12b871e563fe0591ce0aed826c37cccc9c56f96fe444acb723ec9353e7dae0f5d7f4e57d6c5a9 SHA512 e91229a65f7f6d8d49c4360c94a6a416aac80cf61b821a3f1973a476a7b3b44140e3322350aaca0eeba381200165eff91b35b3658b7166b6c18ad5ceb7b6d310
+DIST thunderbird-128.4.4-fy-NL.xpi 755944 BLAKE2B 3ad4c74a94499450fed862eff35680895181feed975041088e95ca55d1f28d887a7799015f6a70aeb785d4eb5afeddb8222f4aece5558bea2591cf6ff4c3ab6f SHA512 059504b3f1d2f084fe04462ddf7cbe909f0e2982844fb14d78ddcc34c340af41a17eddf0983fa0f5fdea138bc7903b80f5b618d01a144e8d49ad7c8b82ffa9e9
+DIST thunderbird-128.4.4-ga-IE.xpi 615879 BLAKE2B df319c78feb62944f09fcb901ac7fdd6dce01c82cf1c2efbe00ec415386390c875c2ba75856912fba74d65ac7f9f21a1ca5b4b1a4282e0f0f133632a625a7492 SHA512 423c8964e2dc68ff6eb9224a9ac1f4a93c110df9cabc28d82a73708bca2462654b7552799d376a0ae8c66b2e9a2994913fd18af317f6eb4cc858a8b385d21e68
+DIST thunderbird-128.4.4-gd.xpi 728645 BLAKE2B f44306b1438a451740360bdfce3f516bf6e07c1c5e164ce0372e4ce38fb6b1e6e2ba14dc69d4f6560e7b28459c5a08fd504cfab90495ed296241199bf35c8cb0 SHA512 ff1d218f35c437905adb6844cd6a7a45eacf0bc7d89cf2ee55fe78c7e39d04dbee8d23da48af1bc0f2136f8672ceed5beaaca1003695cefee87d0b3192ec44d4
+DIST thunderbird-128.4.4-gl.xpi 741682 BLAKE2B 23e9a2c453af966f64da7bffaab1c40b78467fc02a0097f27f7a19070dc47d6ee4957de50964a9ab557040650c01e18c7edb1e6f51ce6b27d281ad9b7efd30f7 SHA512 84839f342c3d1eab23aea2ade1172f1a8dc36de07c9f88273dcc6fc7ae1fda3e31514ff0d7bc7b5ca1d677b4562a275c4c9ae34f8c2eceae299d2d99ef04c788
+DIST thunderbird-128.4.4-he.xpi 700947 BLAKE2B 4f3ebc8b6d46a660cc2ff7a384bf33e86fea508ecadc7deeaa9065641e2a7535ad91d8af83e9e606ff8e7911e172c5162df31e72ddf7de66e6cfe4c3eed878dd SHA512 bd648910a7ba14b2831942e8b459b29af5af1859d168843e3be47fd0f541775871327b5b5a94be7a5214a27f0995e7b7ee0037fc46f1993129be2874157e1a04
+DIST thunderbird-128.4.4-hr.xpi 719846 BLAKE2B 2514efd8a5858fcdca3f5c50c6e3fec5a0e86fd414b0ad044ae45b3957664866c2b434bbe7e7380a5c72149eca1314a08492b4f7b9343e232447e4b9eab9a345 SHA512 8e388e6fd548eef5b2b10a0ccbac34e3940002fceb5be595c7e710b4a9e352bb0afad75ed200e40f84ec8001242de5a22531ef80fea5f431e13be80f1e7f4a96
+DIST thunderbird-128.4.4-hsb.xpi 785170 BLAKE2B 7ea2d858b34fdac9f35a6ee3a01215e13d58b13fa27000b40abebd13253d1cb87405259dec8ee8c791374ef1a489aaaf66d658e6da5df17c5cbb58f5a02874a7 SHA512 2b24f598a2fd1fc9360cb4bc51a7cd6412d2a85b09c5ec40606d2c2f4192ea7c0552ddbe4ecfb4514894c6d3c6e5713a1f0ede7e49d60a71bd58587ed0fb3eee
+DIST thunderbird-128.4.4-hu.xpi 787990 BLAKE2B 20a9a6c532126074a34702304fb276655c46c72b41ff741fc1690ed850160a0f9d49d161c3f943877cf43ef7906c741f319b8aff5cd89de3458f27ddcfccdfae SHA512 5ab2fbddc39f9712c3691a159ffec7b6364525dd2a710e1860a7baa53ce5688c0d0f402eb7d45b472feeb2bf9b2ec1fd04675c66d623e4b274ecc5855293920b
+DIST thunderbird-128.4.4-id.xpi 666012 BLAKE2B 0599945f8ff277340409c1f229361f173210ba79db4e46318e6f37ba92c6644fc0433b4b006710f2dae59be41bf931c227eb6a4b3bffe33bb29597c100a86647 SHA512 f7934cf045a94f46e31f58a5c91c087fc411cf72357643ada7e2751a54cf73e3d00bf728264d67edd7603c933f44ccb4d084e6852082f2bce6616e24c4cf6d40
+DIST thunderbird-128.4.4-is.xpi 747036 BLAKE2B b93a96fe0baa4132405ac1dca581125e1a3ad604aefe4df8a7d9aa676876df5694c5157d7bdb825ff98a2328da8df4a9fe1e6a0ee43e4655b18d738ec77317f0 SHA512 26363744fabe2a23cf8f701ad192a5f39ce34c252f20676035b96cc8ec81c504804b9c9c991d92d0b62730171d4dbd0ecd3a9f7d5e8469888778e1d498df7c7f
+DIST thunderbird-128.4.4-it.xpi 694514 BLAKE2B d8dc27dfd7e72fe58b04431dc607df4b06327e55b9ab1944336554c73413a285124d8503b1d54ce6f659ac7c96306fdcaf86a74316d310d0da656fdeb6b5cfe6 SHA512 09fd2653c9fae89ce5270f92ab0b4d86fb89d0983891867396d9a10e2d0b3ae1393766306148bbe2ab3008a9a29bfb5f11e984c2feae14e7379501aff463acee
+DIST thunderbird-128.4.4-ja.xpi 824169 BLAKE2B c82457defbab58ae29655b537f9341dd8f21371a1a45f6c7da1f4b438253410aaf9198045e5643b31b7ca52b6e59fc9b9ef958de1907459485c3809b34421785 SHA512 ab2cf3b8dac98690305c8cea57a69cc06984ffb52d4ef25939a8943e640a1b0b5382453eab376597c1decede7a438aa80156a67c36cb7e816d5941c3a67b451e
+DIST thunderbird-128.4.4-ka.xpi 796222 BLAKE2B 203368a688f5f72fe5991360857dd21f6cd1e720b718da63a202f386cb2597abba4daa8c3d629870fae6d27116f32b0a5c31733f9c83fe113e54f367fb517a7b SHA512 6434dbf300d4db892a9f78ead0845fea4184250a68f45ead47fdc1f300cd473b5d60a4d1d6f73d04df9ee2a7048461ecb054395c28ee1d9536e34092ebfc84f6
+DIST thunderbird-128.4.4-kab.xpi 733902 BLAKE2B 50a9f0abc30933c891bd0236a2d112b19a86445e3751301c172a7d36bb9091ff1c64433826989822c4108c9f145fc1631b89ff8f96d867ae372ace00db919a59 SHA512 0b3c34f653cf5c2a19814549fefa04c572216e65db05bf400a0a52e5a5021c5473ebd30e4a34093d4e693807a9072e93c87a21cbc5add962f371c78f6b817914
+DIST thunderbird-128.4.4-kk.xpi 860676 BLAKE2B 31faa057852dbc6bfb90099b91b21c09769788161d41cbc1c5b35d09434a000125609f25c637fb950c35d311bb0120e7af1f9ad5385d0a9efa9c85bc3ebe17b8 SHA512 b21305f7435d72f47baae49cba7a423e6e3d6692325c953c096fa583e675e4d48c097bd0ea7e4442d83f079de56ccd1fe0790dd01a7cd2f432d1c3b6329d025e
+DIST thunderbird-128.4.4-ko.xpi 756768 BLAKE2B e96f7d4bc1881c90dae99d7e005a0e4985218c61aeffda9eed21c0dba96ab7f272a68250b8c13281283192345f08fddd7152c56f46e7a1ef96a8746351cb57b8 SHA512 88a1bad45000d8998054582d06003efe7bf8faec7bd5fa9ade8f8f35956a6dff94c87e212aeed732998aef78f30395c4a1c46d5649aa2bf45b5471fdaac94b7b
+DIST thunderbird-128.4.4-lt.xpi 700919 BLAKE2B 2c0651f16739191e24806feae83d2ce11d13728bf47116de72fbbff4ad8bd6bc096812d841ed9ec41629bbf863589adb48fddedb393890d4555e06ad2f6406e9 SHA512 218e4c8dcb14db210ff688c549eefdd859bbd0a955386fe3ae1cf7d42f93aa659af471b7bae3df6baa2ab4a5449de0d52451aba57a27f44c73428cf477c71944
+DIST thunderbird-128.4.4-lv.xpi 625981 BLAKE2B a0991a79cf50854349c404e2e24b52fdc3b265e7a702c6d2895034bc8a07f7d5687c7407ab09411f01e410235b75a1cc02b397363098276467984053d38a047e SHA512 c0bc929e169ee882a5409dfe17032fae4f06fd2b26f6108028f42838c8c4c1bc9395d993548e1c571b38505fd76e7a622efdc1eca35d1631310fd4474df32016
+DIST thunderbird-128.4.4-ms.xpi 581084 BLAKE2B 786f1f371362fa870fb48ffcde86fb32b9828c297d4d0bbc9e8adc75edf5d7d55f3b16bb67c7f3c1ca3cc08360164a75c821fd1da485c7c7460859436f44cbb9 SHA512 97866fbda474893c023116f9bafe3429bae8cdb7f2f5b7b3d03a17556876b1442ebcf04f026a038ee8b87beb0da7d6445f9c724bbcd31db55b19d789a55d53a4
+DIST thunderbird-128.4.4-nb-NO.xpi 706104 BLAKE2B 05877b8aebcbf445c584e09fd75a74e52123709bec94771a4da9068be2044eb6672c64a89fb045916f21dda9d7186cae8b82570b048519ed8a1ae7c0661f4038 SHA512 07913b4541f8fbaa0e1d43b17f72fcd43b367cee9a1781d22c3642eb2d1ce76f4666e657fe61cc133d79f7289cdc27315c9390ad13a16af9ba8c312cdf389521
+DIST thunderbird-128.4.4-nl.xpi 748484 BLAKE2B 17dc4e149ffefd2f47bc7e4bb330daa656953feac057dc19f3fd15f0b1673075541376ff94ab7f64063a87ef00ed769f3e7d1c4e101df3d02b70f84b9992104e SHA512 b81b56dee44284503c41635f458dad46391f1ab27faa91769fdf64d42ce4a8174b05abbb33b2ec794a366c7b7967fb25ab1439a4661c3f86f789773b0a378323
+DIST thunderbird-128.4.4-nn-NO.xpi 726987 BLAKE2B d2ccaea17f2a09152ed1c57a58d5b6663ea1b26fda53c71367bf48a77b9ff6759ce0551ce23ef64b14dd97199f3fbedd6ffc86e6283eb521ec64d1bfa7871048 SHA512 fdb2742bf498d3196d4ce30b44b3fc7a282ae1fd12e59de8b6bf4eaa2e31a346918d27e7218278ff5269385e3ca0f0949acac7e5b11ce3223d280f361d278ec3
+DIST thunderbird-128.4.4-pa-IN.xpi 685675 BLAKE2B 126524b39f7c4dd197540be08849c54ff4fc3a7bf33bf13987cad84bda81438a1f81a814245cddf69360d44da6520166bded1cd82434ced9bd2b7e7a7782f7f2 SHA512 7006cb3929b96856ccfba11bc1dc3931188c53f7f108b8a341a6feaf7138bd0e6e32102f6a597c30a89033c32d567bb176c850db020731534cf0934a4263de6d
+DIST thunderbird-128.4.4-pl.xpi 767304 BLAKE2B dbdaf77fcfa5d463e09552727714b0e84c397b8148b3c65ee8db8768a90fd90b453b9b11444957b47a9ef415296b17c22b7ea9e6d06bdd5b06d04a1ece44a4ab SHA512 e19a5a41801081ee2f5f000af0a01b6a2a25bee97881fae4fc5f78a33294c06fe87fee4af7599d5c5eea54c9a27e78c00b63f6dad9b23857a64981161aececb6
+DIST thunderbird-128.4.4-pt-BR.xpi 755727 BLAKE2B 6075976be7b2421cd8e6b98b21e299563f25bf5525a7e108b51218a622208c3294c3b4c0a7b4c0a28759420306a0467c50e96865fc0d839420badada6bcf0262 SHA512 be25a575b60752018845ebe7483d99c9f1ab5ec5b3f50e67d6626182260cd13bafadc59e9120dd080d4bbeb69455f09cf3454789e6ad1248f89e031b34538679
+DIST thunderbird-128.4.4-pt-PT.xpi 750495 BLAKE2B dbb4fe7c7ce7ece69a37eeea11b31ca0e4e29b6960dd154960af7b0447cad3522e4353d6939857f5460020796ed5a04af835ed6e7eff2eec299635a6fe112e73 SHA512 a9c6a39eb60098caa8155b6b387063656161f2838ada540375624aa78bdd82008d57900f3100033742e282264e73cc81a7a00a72a4c6eb97d0046a1e26613913
+DIST thunderbird-128.4.4-rm.xpi 751458 BLAKE2B 967de42110a750d88c9f875eb03c8721bfb70a72cfd0fa425a78c677295af8cf0e1dbace91413377a9d851e1e1660df1770faac4da54272e8e73f027d5f3a285 SHA512 6badc345ab73e4db3c64d5492ce7cf7f8226c6c80b6160f555fa42f00900cb166429da5caa8a828a1a3cea8b7516ba330825a20cafb454a6cf985565957f1602
+DIST thunderbird-128.4.4-ro.xpi 669743 BLAKE2B 99792248f5c00b2faf129f1c1144a627b5f74a2604383479a658dbe63513f3e7b165e9d0a837dd0c8ecc704d69bdc49b3c687d7ee84323580b81c91fe05e2714 SHA512 026fd78dfb4548060b76d589d58a29db18f7751c1dcc2fc7ce19cdd743d492edf8f810e2edf610afbabfefac26b1941356c28c807f2792929c46cd93f6b46338
+DIST thunderbird-128.4.4-ru.xpi 877214 BLAKE2B 8393c8cd0ff01be01418512ab3adbdb51255d79f76cc345c03c7bfcaf691ca6a10586bce34392e9aa2e5ac36ecaca63c31442dfbca992b5f8f4fbb16892dd84e SHA512 9ef501c67f9c5686096ee0f946e5b778928bd2edf027965493cbb3deaa4abe508c93f7ca6450b3ad52bed52ab74f7106fb260b0e73f0824cf3a44e10b0da0910
+DIST thunderbird-128.4.4-sk.xpi 788763 BLAKE2B ccb3fc8ba85f049813b2a3e3b494d5088e58b44684e70a28de1e10f735c26eb63a9187c670a7a66906e35b36685e7182ef31d103bbd1b2341c271cc8c4fe9671 SHA512 411619eced8cbb5a0e7712d1a6ef20bba777491e3c3c8c3d139a9ed21eeac3529445bdacce3e57631dd3d047b6f9d36cd16beb07f83443a688fe4b2ea662f03f
+DIST thunderbird-128.4.4-sl.xpi 749577 BLAKE2B 9b8109eb656558f4b3e8ec3f015098c6f37bafe5ac8b2857c6f0dc978fe500897fab586fb00115b72bde2bb129ff2cb3123784fea5785bd580e199d931457021 SHA512 eb6297918da31118003aee23da2cfca35913e63c4ff10a6763cfcdedf0d3e91ca6bf5aa2bef21c4f2a454236516b82ce9f682815754e38816ab9c0c75b1b860a
+DIST thunderbird-128.4.4-sq.xpi 771528 BLAKE2B 6fc2326408d16f9b5dbad311bbd8096a51c652a7524fa31756d074db70e1fe2784dba91203382a788fca1c002af79acb7817d4ed59a9088030d1d6262921983a SHA512 3d98e394b4e0ea975d6a2ef9108ac8a81752e28fb5dc6f221b54873fcbabaa2cb8d32552f3ee8b6bafa60c59dc18cde28926c5d1a25412d43671da638e2dbda3
+DIST thunderbird-128.4.4-sr.xpi 771225 BLAKE2B ffe274e307dc371b95bb23fe12980ffc1a1fc69c11841642350883f4ecd869cb61a259d8bbb71885ef831cfbabd099eff2ccceff8e3505227ed4a18f99280033 SHA512 b6fa3f1831fedb4e98c496b35991f25cdb8e06c04085c7e8eb2c0d0a6c986bcab6764712527ad31e8fa234356fce8700fc63fdcc0023f71fcadd2b914149bb5b
+DIST thunderbird-128.4.4-sv-SE.xpi 751824 BLAKE2B 3cb200e3cf66247035e7557fa976d6476e09207d68de5123096acb9161579dec1709b5d9f35cc4b28c8ff5f892f5fe24d1d15c201a244114e431d696d368d47f SHA512 a21f01ba0627129bab06c62d80188a0e5caf07bef30491a2a91b2019e50c3cc85c58b0d55688267173854338c0224d78e5e41078d42bf536fb4f7c3313762df7
+DIST thunderbird-128.4.4-th.xpi 815950 BLAKE2B 65d6724441aac7a242998b85aed68ab79944e216d6c0a2d84072db7f2f0f88c43d17af9bd2ddde9966d1419a02755bc1611145b533c983f9c64769f908bd5b3f SHA512 a2ed2042867f31deb437e5c0216e3bc7b793b69ccd2f57642d3d42d5c73b7c062448912d3b486d25be37d8f1b7a3d5f4d0550e492cfa5b31ad630b0221382cd7
+DIST thunderbird-128.4.4-tr.xpi 761635 BLAKE2B d2a50602405c28d910af99949b8b9c9a4da5694387720bde3d87ebcad11645650c35b7e05a4150790f4a722fda05b7a5a353c5b733de6eefc5e97a90188f9497 SHA512 fb96c118e444b0d8588d8155f348ceab941a4940b9b8ca80c4d82ed6149bf027fb9703ce8a0d70f54e9aeddd097248876b0cb814f00767a91b6b308df518d69e
+DIST thunderbird-128.4.4-uk.xpi 867539 BLAKE2B 35ebf051d085e581f8aa013904b5fb629392ebedbbb3f3987bf901fe5e8aba07cd9f6c3fc700ee9f0758f28249a52d9b6b79ae3deb9047831a293d87a081ed5c SHA512 35704c3e0e7697f8bb50e3e8dba94d4124fc663d13d8eed86de4b04b01f1361a6b98065a748b2e7091bcd3f2dc201bf804b0ced471423ec7bbdc2e8f7588b42d
+DIST thunderbird-128.4.4-uz.xpi 592134 BLAKE2B 428385b973c75b047eca627a01f1f0f59200cb53a4f0ff17e4fa22e2992829e9c02145654b5c2b8af2bf49715faf4544f75e3a9c37f3a60193a00dce5e5bc1ec SHA512 b53733ca5361b45d3ae82982634941decdc7f7dc2615708bd758d1cc9fb0254255c4ed3f375df0ecb70cf0cffce0a2c1e8b25cea0530666ae6556a617be95c9c
+DIST thunderbird-128.4.4-vi.xpi 790930 BLAKE2B 4dfe68aec8a41ffb4baa48cbc27aaf379e9946a41324aa85e5e524aa09aaae0c3618b1f20cd10a2434f8745331079effe68c42091848ed13b6dac3560a8f9d06 SHA512 f3de9253eb9c5761cf18e2d1c4247d971e3ab577a1eaeb83b9ec059910970adbcfcfcfb66c61866fb83f4eb978506d638a9601b3acb2e3c4b7cc32be21866cb3
+DIST thunderbird-128.4.4-zh-CN.xpi 790746 BLAKE2B a9190edb5c4be0afbba068791559bb9b1b3699f29dc770120c7e9e7b8672bacd7595c53790af7a7b4c042df01f84ee58996a4c50ae8e434eeb6b152329a8edde SHA512 ccdfc3016201d3bd89f6970e22003ff9253ceda879be068d42bf43322148fabc125ffa1c9368715f0405c9c06a7259fc81029b21551547e6d5e804babcb86a0c
+DIST thunderbird-128.4.4-zh-TW.xpi 794100 BLAKE2B 9266ac41e404554f1268887a00b146c6df1e1d9715913c0f25b1ab4761ed57517871bb71f8a14d4dbf8489844cee01300afbd59af6c0f0326087b41431415aa2 SHA512 310a77fd1ef840fbd995821cb615194bc0776505d5aa53f9a691481a85ef32d6cc4498aab4c1a9b70f0229376a64699bc2f6dec873985156465d64298b0248ea
DIST thunderbird-bin_i686-128.4.3.tar.bz2 89644359 BLAKE2B 6eb09e43e892ca228f054a83678fd74f876ff41bb0bd9ec7cf6f8a90495aa6ecd7e5aaf35c066b0615bf33d872092dd7f0d2c44265ca485918074bf780a2ad53 SHA512 12fc7185b5cf52ac3fa07030a76875d49e9d941d362d13aa53f389cc972fd35599d04fa3b118bb5c05aa51abd89c6faa9d2bc6cbc2369c9517bf7d384674c760
+DIST thunderbird-bin_i686-128.4.4.tar.bz2 89547825 BLAKE2B 0e925185a383e42ab21368b610ede95e08980e044b7f2c612ba92987825f9cc5995cf4a61e6e1bea0672ba53089751230017c2667b270888e4b5dc9932767499 SHA512 a238427d21606e7d22281b661102b8601962b00d3f17281ca986b1a1c010cadf9b235cf7c8b2e79d1bd40bac50388340793e767f5ea52c75a5898960cc3940c5
DIST thunderbird-bin_x86_64-128.4.3.tar.bz2 87179640 BLAKE2B 34dd97bd61803f3d8e66590a144846b9424ede0151467f71f46a5516796285680ee17124ddc5a30163fa86646088bf023ecf0a77ab480db35edb346c2f4d94f8 SHA512 54312f852d57fa80e16a7136eb02bcab6c1d484b313a990c26b44ac9eae4c7707c185956a2792ea47aab83a871b2c3a3107ca69b69faa4c74a2de915632e49eb
+DIST thunderbird-bin_x86_64-128.4.4.tar.bz2 87230032 BLAKE2B f8b3bc3b7c1f9ce5bdc3c3a42adc68f5513df477bd173a15870fef5070d137b32ad9673c685b4e10bb8c3684e206e5091ec747cd9ffb0e6dea34bcac97173607 SHA512 6f5d56c8fa142793348d185d32ea909fb99794c71fb90c9c9b69ace32bf905a394c5b30273df3729ab913b47ae1d5ad1ec3c03f2f1236fcb43bf621a6ca7b233
EBUILD thunderbird-bin-128.4.3.ebuild 7597 BLAKE2B 3e7b1b2fd73df51a809eb000711c3b7d00fccd911dacf000c3cfb36f7a36f85ee1fd3acd43bccbe63acd224936d93203e3607c13005986fef38e1f2d7408bb23 SHA512 9ce453c3dd8f42c7af27955933c08dcfdbb4458e290bc6f2504e55d874e9ae38b6406036a3cead544011dc631886f79583bfa073c70ce23c6b3a53896e2e5799
+EBUILD thunderbird-bin-128.4.4.ebuild 7597 BLAKE2B 3e7b1b2fd73df51a809eb000711c3b7d00fccd911dacf000c3cfb36f7a36f85ee1fd3acd43bccbe63acd224936d93203e3607c13005986fef38e1f2d7408bb23 SHA512 9ce453c3dd8f42c7af27955933c08dcfdbb4458e290bc6f2504e55d874e9ae38b6406036a3cead544011dc631886f79583bfa073c70ce23c6b3a53896e2e5799
MISC metadata.xml 255 BLAKE2B f54493c82293ca95a1ffd16d6199055650b0aaa18234716339235bab3f14a87327cb04fac6b543f973b3fef8047412e54edf72bf0b8a9424f4aa1d2eb0feec30 SHA512 28c0ab3671ed2c65cd9694181f7f9c4a8bea53dee0a0a06f0d9086166317a87611017b105d5150167597c45a7dd8921182fd6bf9d1b3fc7408c0e94f36189e33
diff --git a/mail-client/thunderbird-bin/thunderbird-bin-128.4.4.ebuild b/mail-client/thunderbird-bin/thunderbird-bin-128.4.4.ebuild
new file mode 100644
index 000000000000..b0fb6edef5d2
--- /dev/null
+++ b/mail-client/thunderbird-bin/thunderbird-bin-128.4.4.ebuild
@@ -0,0 +1,274 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+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 desktop optfeature pax-utils xdg
+
+MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}esr"
+
+SRC_URI="amd64? ( ${MOZ_SRC_BASE_URI}/linux-x86_64/en-US/${MOZ_P}esr.tar.bz2 -> ${PN}_x86_64-${PV}.tar.bz2 )
+ x86? ( ${MOZ_SRC_BASE_URI}/linux-i686/en-US/${MOZ_P}esr.tar.bz2 -> ${PN}_i686-${PV}.tar.bz2 )"
+
+DESCRIPTION="Thunderbird Mail Client"
+HOMEPAGE="https://www.thunderbird.net/"
+
+KEYWORDS="-* amd64 ~x86"
+SLOT="0/$(ver_cut 1)"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+IUSE="selinux wayland"
+
+RESTRICT="strip"
+
+BDEPEND="app-arch/unzip"
+RDEPEND="${DEPEND}
+ || (
+ media-libs/libpulse
+ media-sound/apulse
+ )
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ >=dev-libs/glib-2.26:2
+ media-libs/alsa-lib
+ media-libs/fontconfig
+ >=media-libs/freetype-2.4.10
+ sys-apps/dbus
+ virtual/freedesktop-icon-theme
+ >=x11-libs/cairo-1.10[X]
+ x11-libs/gdk-pixbuf:2
+ >=x11-libs/gtk+-3.11:3[X,wayland?]
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXcursor
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libxcb
+ >=x11-libs/pango-1.22.0
+ selinux? ( sec-policy/selinux-thunderbird )
+"
+
+QA_PREBUILT="opt/${MOZ_PN}/*"
+
+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_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
+}
+
+src_unpack() {
+ local _lp_dir="${WORKDIR}/language_packs"
+ local _src_file
+
+ mkdir "${S}" || die
+
+ 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
+ MY_SRC_FILE=${_src_file}
+ fi
+ done
+}
+
+src_install() {
+ # Set MOZILLA_FIVE_HOME
+ local MOZILLA_FIVE_HOME="/opt/${MOZ_PN}"
+
+ dodir /opt
+ pushd "${ED}"/opt &>/dev/null || die
+ unpack "${MY_SRC_FILE}"
+ popd &>/dev/null || die
+
+ pax-mark m \
+ "${ED}${MOZILLA_FIVE_HOME}"/${MOZ_PN} \
+ "${ED}${MOZILLA_FIVE_HOME}"/${MOZ_PN}-bin
+
+ # Install policy (currently only used to disable application updates)
+ insinto "${MOZILLA_FIVE_HOME}/distribution"
+ 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-r1.js gentoo-prefs.js
+
+ local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js"
+
+ # 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="${ED}/${MOZILLA_FIVE_HOME}/chrome/icons/default"
+
+ 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^} (bin)"
+ 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
+
+ # Add apulse support through our wrapper shell launcher, patchelf-method broken since 119.0.
+ # See bgo#916230, bgo#941873
+ local apulselib=
+ if has_version -r media-sound/apulse[-sdk] ; then
+ apulselib="${EPREFIX}/usr/$(get_libdir)/apulse"
+ ewarn "media-sound/apulse with -sdk use flag detected!"
+ ewarn "Thunderbird-bin will be installed with a wrapper, that attempts to load"
+ ewarn "apulse instead of pipewire/pulseadio. This may lead to sound issues."
+ ewarn "Please either enable sdk use flag for apulse, or remove apulse"
+ ewarn "completely and re-install thunderbird-bin to utilize pipewire/pulseaudio instead."
+ fi
+
+ 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@:${EPREFIX}${MOZILLA_FIVE_HOME}:" \
+ -e "s:@APULSELIB_DIR@:${apulselib}:" \
+ -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
+ "${ED}/usr/bin/${PN}" \
+ || die
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ optfeature_header "Optional programs for extra features:"
+ optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas
+ optfeature "ffmpeg-based audio/video codec support, required for HTML5 video rendering" media-video/ffmpeg
+ optfeature "encrypted chat support" net-libs/libotr
+ optfeature "desktop notifications" x11-libs/libnotify
+}
diff --git a/mail-client/thunderbird/Manifest b/mail-client/thunderbird/Manifest
index f9d45d28dfbe..40bf7bf2dc55 100644
--- a/mail-client/thunderbird/Manifest
+++ b/mail-client/thunderbird/Manifest
@@ -136,6 +136,72 @@ DIST thunderbird-128.4.3esr-vi.xpi 790928 BLAKE2B 9b3e0774be4c6577993edb4600a1ac
DIST thunderbird-128.4.3esr-zh-CN.xpi 790744 BLAKE2B eec55be6a969b1993ba973ab90a1215772cb6cc9a22272cb70e33a15de847e3ef3c0c76eadd8cdea83732a08078a2c705adaeb819cce0e10b4b3cfca99d339d1 SHA512 4965e4fc8cbf8ec42e940d178c7eedf25ace3104cc33b90b7b1e1cb9b3818334fb3ddf5be058ee18b805e65122ec5c22b4f6045c841485e6940bbf3e6397d47d
DIST thunderbird-128.4.3esr-zh-TW.xpi 794099 BLAKE2B a5c3218a692bde7d220eb8cfbdab7126347312b911910d57a168fcdf8709f2c2840ba31ce54ff33ead9f0627a450e94106e7b9a91399a4a449d1f1f68925ba62 SHA512 aa789247b4e853e95687072f5f5e93cf835b799b5d037558ad49230ee64b9494fde0328c1a792aac52f36ec050b0efda193f0ad7495f5f7c30c0f3ea9555ae75
DIST thunderbird-128.4.3esr.source.tar.xz 673965268 BLAKE2B 31954caf84b382149a8bef7f2c46dd86e93adeda8eb4553e7dc5831ac8e4108609c55f2c027397de9969dd9e651971a63ef4c719dc55a4987cb1bff0d5e6b8d0 SHA512 18691722f6376f3dc0658c01164fcdbf6008fc31eff8c1bd403d34f188db0e7850883315a96fc07289d207c9977d732628d3945736aa191fefd0a01735e3037d
+DIST thunderbird-128.4.4esr-af.xpi 530349 BLAKE2B 68e19704fb7d4019fd29f083790c9b318141e9794e78f826ea0a24eb82033788079ed57dab278158781bc94029d2efe2b0593430ad739bc2366eeb75255686f6 SHA512 0d921a5b3e31df6fcdc71e56d0c436f9061635df5a947b65a380a650263836d29f7cce4d5b7c3bab18a4933b6f996454828744a2725d8836adbda5cf75ae1657
+DIST thunderbird-128.4.4esr-ar.xpi 686479 BLAKE2B 597760162f95be07802fd970368071a1be9357e0c578fb4dc49b54121df6f72ccc99efe4ee672eace422b0bb7a56e68ee8a1e8c207ccd413c2aa40628451a9b4 SHA512 841649ce1354f7334a7dcedba212cd64636c8b3c8ab1e2118ee14c3ae14decf9cc91690f40b836a2affa04f38cb584490f3a06a3420920fc89b9904996baee40
+DIST thunderbird-128.4.4esr-ast.xpi 561054 BLAKE2B fe33c10d50dc07300c8e5a4df10289b470ce0b4657b6c509fc97f361e3234e5901c27dc36e2b48fa8b0129dff46080d0c92e2a4dfc261da527ef25c8d29b09cd SHA512 d1bb988fbc33f95394e1b84fa45dab3e2ea8a3768af95c46571a1b5176af0e441743ed7264343f10e9b8b4939266a7867a298ac6c83230a379abc5acfc384d64
+DIST thunderbird-128.4.4esr-be.xpi 769119 BLAKE2B 4e90e132831e06f487f16ba964c08d597cb777fb34050b5b644906cc0c2c264a2916da6701e7ca27687f6dc300e079557e9ecc5d23e05759bc27e252aef80f40 SHA512 1a580678a17353db1f1df5b2dc5f5dd84e41a5eebe41af32196ff1a06dbf16c73f9429398fd8d52023338d86ae8a9622e9b400ed55e1de6c674680e5fb00990e
+DIST thunderbird-128.4.4esr-bg.xpi 811600 BLAKE2B 67edadd6e29f23713e829404784d4f1d52139492832611e9c88a8ec7d003a691db93f4b73655416b67bf98a8aa7f5101e7694f70b2eb3b16bcb00ac62bc73779 SHA512 cf1809bda13805ddca66083183de63d1c35f2c66d7576f75fe7926399ed9e067b04eaede707be674b9ecc7a35476266accd4c5ea2f18563dd9ec281db33f9482
+DIST thunderbird-128.4.4esr-br.xpi 654631 BLAKE2B 88162381c80c81d833d0b8876652e94bf66dc154c7a31494075a5ddfe46057ce2ba82dd60b6ae78fba4845a62032f0dd8c23c9c4e278fb6172f7a75f52a060f7 SHA512 e764bbe29571d276be1b700d74ed4180de2ac02e87f6f025f6153aceffdb69497f7fca16c689a5ed71667f74c12ede948b8933acb1a71d1b78766cefcca067b3
+DIST thunderbird-128.4.4esr-ca.xpi 709854 BLAKE2B c8ae414f253a863b7beefb807ef0f20126834e31c5882cfbda9fd574c3a04eb3cec37da20cd87733cf55b7d579fc86208c9fab8d15653755e24876730c8d0354 SHA512 4884021301e7eead3d65992282de1a5614e62ca34178d4801ae369a367c80fcf0799ca0532644d70e405059788ba96c07c3c4442f9be843765322727d12914c0
+DIST thunderbird-128.4.4esr-cak.xpi 671703 BLAKE2B 4b8c716f2bf6f633f9b7d01ba4004eb6c8fc9dc83ea4e759c1448587ca3ab6bc411a14c4cf314f0d02d469a541ca3ba6ca5138591620ec183464b3081c649542 SHA512 476b8ac27f5f3568d49014c23caad54bcd29dda8ae4b8f79be328616c993ac9942a7de4ebf97dda13fe2cb33dd08bbe249872c50a788cd765e48936e6ee2366d
+DIST thunderbird-128.4.4esr-cs.xpi 788816 BLAKE2B 27ca17bb2d3a631c125fcced58cc8e7e4b7b9571deb777f6d0852717bdbb966bcf41ef734c01a248143643d658255ea1feae15c7f9db8a58ffc116cb72059a4e SHA512 7eaab3dbb9c2e80859c9e7c4ba727117268a62fa2a49e31279718538c6d5e4d2886673c47951718b026012cd5428477e763e4313602d55991a21d87aa11cc82d
+DIST thunderbird-128.4.4esr-cy.xpi 753452 BLAKE2B 11ef77ceb682661805f6310e61d6d051eaab78dfb8d8edfa2beb09b0a0b87a7d0004ea87e7b611a48833331917477ad7b77fe42fdaae9a57f70763dca9dd84ec SHA512 2f99bec0e89543250d08bb2d5c008dad5c64ce2d0ab4e569179251182f4683ad21ca6e4d79a74ad93a73c8986bfec1585f5dfef42ef8951ca6beb6b5f2756fbf
+DIST thunderbird-128.4.4esr-da.xpi 737120 BLAKE2B 0ef97bb9c2dccd6bb6c00ab304dd2cb4ebdd6410145d2a397cc4b312c87b2dc750204a526f86773bd5ec5b5623f83ead74afb2b954aba58e12f9cb14b4a23ca0 SHA512 e598d4460aedcf5c853c6c728e00cb710fff791bd918900a383a45dceb08918368da76341d78194719112269eb20ba346513b3edbeacbfc4ae66e0a4cdaf28ee
+DIST thunderbird-128.4.4esr-de.xpi 771021 BLAKE2B 6aa65be90f3eb5811df850270f89d83a46bc0176a2fa2a2a9c2653f047563189b470ba53498d8baa7ded1c05e1aaec8aa5195146587c89bc36a30017c8040558 SHA512 9a28e6f55d1c98956d55ab3d54f66b51e714b5619cfebdb66849f6c80683ada06c3fbb79b5fa1eb8a40d67d0c205db82858457c64d7898c503d51f22def06715
+DIST thunderbird-128.4.4esr-dsb.xpi 787772 BLAKE2B 97ee88d787c3cb72f12df184075641db2fccd0d6efe1fdec4d666da4ef88e4ccb55978b8c9b9309d9e318f5eb0850a1b11eb30c45cad0865a5f12de0088d05a1 SHA512 37abd46027d6e355aae158f0f05deb8ebf8c30f8a29b29b49798f0c957c700d49af7bc8641431694d5cce232298ca81a9fd6abe5b70fad556faa69b0f736682b
+DIST thunderbird-128.4.4esr-el.xpi 894340 BLAKE2B da68f1b41321a72766e4a7b79d062497c8c9175fe762f6eeb83477d6f83770d6ab950bd43542cc0ef14455a5f170b6d20d8dd9829686f8335817ea0fbae6f67e SHA512 ccc3f0941cab1f5012b17e255484285adc3daea6cf717d37b4c0dd8fc2ac3ddeca2043a5c57b54034a1b3899f2717d9ec038c427f56d69207331c8671df426a3
+DIST thunderbird-128.4.4esr-en-CA.xpi 704736 BLAKE2B 64dcd0121bf0ad6b90e4719ebbb974fa38eab65af52a7ca96feb17f3a8ee07f9b27073fddf3934806a1a54ce16ff4f06072b45d7a7f6f76ac1a0d110a9e412b3 SHA512 3174dbbacf2b7da1fab3a1e9ba8571690103641b5aa57db92eba243c680fcbf7b41bd769a63515f76c181d41738de90a127d637fcaf5e906369ea03a3ad64129
+DIST thunderbird-128.4.4esr-en-GB.xpi 706803 BLAKE2B c607948911ab83bc883a10d8f084bb508c75fc34fb82381633ed01d47b8d594ef8c70f770b2b592eeb7e4924fdaf3c68502f1193eab8b4119ed7003ae0f34fd9 SHA512 837c18d26cd113ddb576cc04119b2389507a7f85735b2f544b313319d4dc6029f92e64e8c3c71ababf02dc30e597c35453be37600cd2dc89cfceeec986690e2c
+DIST thunderbird-128.4.4esr-es-AR.xpi 762698 BLAKE2B 91e62f75d0fa124a66c882032a4ebafabaf68c3a505c16d1355e09a1e82999dd1e03e6ff2d6e50f5ed3c7875074e81a7b9bc5477110283de8a77b38962a304a2 SHA512 ca617ae57b0528907cdcaaab370653ff8846b8087cd276d8fa5b5122560e8de9ee7764b19bd0b63a82227bb618394d2ce6c895b59419e9c089f8f607a0e74f91
+DIST thunderbird-128.4.4esr-es-ES.xpi 729373 BLAKE2B f963e13473971b52e72d9933fc22287606de51c3232d45ca8d510933c45ccff067c1aa8b41bd9c812434e42e6cda09d4cb5c9e20f8836853c4354b089b0ed224 SHA512 a54b3784b8d3d85d8db5c4c5f0a5d30a186cfe614b2101bb181daaf4fff067b24d0b76c1b3529741f69a16e84e187062deb4d04841edb237fdc08be1b1ad38f4
+DIST thunderbird-128.4.4esr-es-MX.xpi 748409 BLAKE2B 9d9a937fb22acf29972c3e8c51f37ed806a6041a915c39abcb01038437db6295065bdc6813262c66aab31f6d4a773c59b68623ec6e49990b4ce7dc55061e41f7 SHA512 fef07803171194189b325a85acd557a9d33567fd83afae192a46a1e568c2f7656e6b0c2bc7b1e5c03a7285a3601fa2dd79f68a9b5397decd0a684a3621bec3f7
+DIST thunderbird-128.4.4esr-et.xpi 696281 BLAKE2B 03fc02f993a7e0759e3e19204839cda19f998720f61637749db8b5e073782c5585a070328b1d7805eea2017f48694319b01db7d5b56771a701b51a1b891944d1 SHA512 5af67957a924756a064244d745e24ff7efb33cf8edd1a6059b00a85d9e861519be268eac7162caf5ea9acb92e5705c3bbd87629a01cd5def20d7ad7e05e14fad
+DIST thunderbird-128.4.4esr-eu.xpi 734389 BLAKE2B fbd27718a01b3a55fb92ae4b83368f62571f69330b92576870952c34fe10e3712e2106d0d3d70d396956d3a74a986a339905abf8d3fab07050d7edd06d4f2287 SHA512 4ef6e401f4ffd29decd05a3bc10e4515a0d65a81ae0831f154fd60361e45a1949df2952f71796527ed4cc6a479b3a4d606091ecb79ab893498c1d9efdeadbb4d
+DIST thunderbird-128.4.4esr-fi.xpi 738610 BLAKE2B 6dc4b37e8bf8b9fe5f44218c430a6194ec8cab726ec449734eda7e51ff3a75b3392f6231005bc168bf226fc9ff1b1594cd25da4954483a6f5ef853f3d614625e SHA512 17192431de7cf5495963d83eb2b1bd370a3a8f0a8e0b912462a8a56867cbcd84a41f9b2b8bbf7bfc635de66f480e32e1f67bf23f491506b56869405702250b79
+DIST thunderbird-128.4.4esr-fr.xpi 775788 BLAKE2B 95109a9b332aa350c556e9d7e2024fe587ecf521c40da0228db12b871e563fe0591ce0aed826c37cccc9c56f96fe444acb723ec9353e7dae0f5d7f4e57d6c5a9 SHA512 e91229a65f7f6d8d49c4360c94a6a416aac80cf61b821a3f1973a476a7b3b44140e3322350aaca0eeba381200165eff91b35b3658b7166b6c18ad5ceb7b6d310
+DIST thunderbird-128.4.4esr-fy-NL.xpi 755944 BLAKE2B 3ad4c74a94499450fed862eff35680895181feed975041088e95ca55d1f28d887a7799015f6a70aeb785d4eb5afeddb8222f4aece5558bea2591cf6ff4c3ab6f SHA512 059504b3f1d2f084fe04462ddf7cbe909f0e2982844fb14d78ddcc34c340af41a17eddf0983fa0f5fdea138bc7903b80f5b618d01a144e8d49ad7c8b82ffa9e9
+DIST thunderbird-128.4.4esr-ga-IE.xpi 615879 BLAKE2B df319c78feb62944f09fcb901ac7fdd6dce01c82cf1c2efbe00ec415386390c875c2ba75856912fba74d65ac7f9f21a1ca5b4b1a4282e0f0f133632a625a7492 SHA512 423c8964e2dc68ff6eb9224a9ac1f4a93c110df9cabc28d82a73708bca2462654b7552799d376a0ae8c66b2e9a2994913fd18af317f6eb4cc858a8b385d21e68
+DIST thunderbird-128.4.4esr-gd.xpi 728645 BLAKE2B f44306b1438a451740360bdfce3f516bf6e07c1c5e164ce0372e4ce38fb6b1e6e2ba14dc69d4f6560e7b28459c5a08fd504cfab90495ed296241199bf35c8cb0 SHA512 ff1d218f35c437905adb6844cd6a7a45eacf0bc7d89cf2ee55fe78c7e39d04dbee8d23da48af1bc0f2136f8672ceed5beaaca1003695cefee87d0b3192ec44d4
+DIST thunderbird-128.4.4esr-gl.xpi 741682 BLAKE2B 23e9a2c453af966f64da7bffaab1c40b78467fc02a0097f27f7a19070dc47d6ee4957de50964a9ab557040650c01e18c7edb1e6f51ce6b27d281ad9b7efd30f7 SHA512 84839f342c3d1eab23aea2ade1172f1a8dc36de07c9f88273dcc6fc7ae1fda3e31514ff0d7bc7b5ca1d677b4562a275c4c9ae34f8c2eceae299d2d99ef04c788
+DIST thunderbird-128.4.4esr-he.xpi 700947 BLAKE2B 4f3ebc8b6d46a660cc2ff7a384bf33e86fea508ecadc7deeaa9065641e2a7535ad91d8af83e9e606ff8e7911e172c5162df31e72ddf7de66e6cfe4c3eed878dd SHA512 bd648910a7ba14b2831942e8b459b29af5af1859d168843e3be47fd0f541775871327b5b5a94be7a5214a27f0995e7b7ee0037fc46f1993129be2874157e1a04
+DIST thunderbird-128.4.4esr-hr.xpi 719846 BLAKE2B 2514efd8a5858fcdca3f5c50c6e3fec5a0e86fd414b0ad044ae45b3957664866c2b434bbe7e7380a5c72149eca1314a08492b4f7b9343e232447e4b9eab9a345 SHA512 8e388e6fd548eef5b2b10a0ccbac34e3940002fceb5be595c7e710b4a9e352bb0afad75ed200e40f84ec8001242de5a22531ef80fea5f431e13be80f1e7f4a96
+DIST thunderbird-128.4.4esr-hsb.xpi 785170 BLAKE2B 7ea2d858b34fdac9f35a6ee3a01215e13d58b13fa27000b40abebd13253d1cb87405259dec8ee8c791374ef1a489aaaf66d658e6da5df17c5cbb58f5a02874a7 SHA512 2b24f598a2fd1fc9360cb4bc51a7cd6412d2a85b09c5ec40606d2c2f4192ea7c0552ddbe4ecfb4514894c6d3c6e5713a1f0ede7e49d60a71bd58587ed0fb3eee
+DIST thunderbird-128.4.4esr-hu.xpi 787990 BLAKE2B 20a9a6c532126074a34702304fb276655c46c72b41ff741fc1690ed850160a0f9d49d161c3f943877cf43ef7906c741f319b8aff5cd89de3458f27ddcfccdfae SHA512 5ab2fbddc39f9712c3691a159ffec7b6364525dd2a710e1860a7baa53ce5688c0d0f402eb7d45b472feeb2bf9b2ec1fd04675c66d623e4b274ecc5855293920b
+DIST thunderbird-128.4.4esr-id.xpi 666012 BLAKE2B 0599945f8ff277340409c1f229361f173210ba79db4e46318e6f37ba92c6644fc0433b4b006710f2dae59be41bf931c227eb6a4b3bffe33bb29597c100a86647 SHA512 f7934cf045a94f46e31f58a5c91c087fc411cf72357643ada7e2751a54cf73e3d00bf728264d67edd7603c933f44ccb4d084e6852082f2bce6616e24c4cf6d40
+DIST thunderbird-128.4.4esr-is.xpi 747036 BLAKE2B b93a96fe0baa4132405ac1dca581125e1a3ad604aefe4df8a7d9aa676876df5694c5157d7bdb825ff98a2328da8df4a9fe1e6a0ee43e4655b18d738ec77317f0 SHA512 26363744fabe2a23cf8f701ad192a5f39ce34c252f20676035b96cc8ec81c504804b9c9c991d92d0b62730171d4dbd0ecd3a9f7d5e8469888778e1d498df7c7f
+DIST thunderbird-128.4.4esr-it.xpi 694514 BLAKE2B d8dc27dfd7e72fe58b04431dc607df4b06327e55b9ab1944336554c73413a285124d8503b1d54ce6f659ac7c96306fdcaf86a74316d310d0da656fdeb6b5cfe6 SHA512 09fd2653c9fae89ce5270f92ab0b4d86fb89d0983891867396d9a10e2d0b3ae1393766306148bbe2ab3008a9a29bfb5f11e984c2feae14e7379501aff463acee
+DIST thunderbird-128.4.4esr-ja.xpi 824169 BLAKE2B c82457defbab58ae29655b537f9341dd8f21371a1a45f6c7da1f4b438253410aaf9198045e5643b31b7ca52b6e59fc9b9ef958de1907459485c3809b34421785 SHA512 ab2cf3b8dac98690305c8cea57a69cc06984ffb52d4ef25939a8943e640a1b0b5382453eab376597c1decede7a438aa80156a67c36cb7e816d5941c3a67b451e
+DIST thunderbird-128.4.4esr-ka.xpi 796222 BLAKE2B 203368a688f5f72fe5991360857dd21f6cd1e720b718da63a202f386cb2597abba4daa8c3d629870fae6d27116f32b0a5c31733f9c83fe113e54f367fb517a7b SHA512 6434dbf300d4db892a9f78ead0845fea4184250a68f45ead47fdc1f300cd473b5d60a4d1d6f73d04df9ee2a7048461ecb054395c28ee1d9536e34092ebfc84f6
+DIST thunderbird-128.4.4esr-kab.xpi 733902 BLAKE2B 50a9f0abc30933c891bd0236a2d112b19a86445e3751301c172a7d36bb9091ff1c64433826989822c4108c9f145fc1631b89ff8f96d867ae372ace00db919a59 SHA512 0b3c34f653cf5c2a19814549fefa04c572216e65db05bf400a0a52e5a5021c5473ebd30e4a34093d4e693807a9072e93c87a21cbc5add962f371c78f6b817914
+DIST thunderbird-128.4.4esr-kk.xpi 860676 BLAKE2B 31faa057852dbc6bfb90099b91b21c09769788161d41cbc1c5b35d09434a000125609f25c637fb950c35d311bb0120e7af1f9ad5385d0a9efa9c85bc3ebe17b8 SHA512 b21305f7435d72f47baae49cba7a423e6e3d6692325c953c096fa583e675e4d48c097bd0ea7e4442d83f079de56ccd1fe0790dd01a7cd2f432d1c3b6329d025e
+DIST thunderbird-128.4.4esr-ko.xpi 756768 BLAKE2B e96f7d4bc1881c90dae99d7e005a0e4985218c61aeffda9eed21c0dba96ab7f272a68250b8c13281283192345f08fddd7152c56f46e7a1ef96a8746351cb57b8 SHA512 88a1bad45000d8998054582d06003efe7bf8faec7bd5fa9ade8f8f35956a6dff94c87e212aeed732998aef78f30395c4a1c46d5649aa2bf45b5471fdaac94b7b
+DIST thunderbird-128.4.4esr-lt.xpi 700919 BLAKE2B 2c0651f16739191e24806feae83d2ce11d13728bf47116de72fbbff4ad8bd6bc096812d841ed9ec41629bbf863589adb48fddedb393890d4555e06ad2f6406e9 SHA512 218e4c8dcb14db210ff688c549eefdd859bbd0a955386fe3ae1cf7d42f93aa659af471b7bae3df6baa2ab4a5449de0d52451aba57a27f44c73428cf477c71944
+DIST thunderbird-128.4.4esr-lv.xpi 625981 BLAKE2B a0991a79cf50854349c404e2e24b52fdc3b265e7a702c6d2895034bc8a07f7d5687c7407ab09411f01e410235b75a1cc02b397363098276467984053d38a047e SHA512 c0bc929e169ee882a5409dfe17032fae4f06fd2b26f6108028f42838c8c4c1bc9395d993548e1c571b38505fd76e7a622efdc1eca35d1631310fd4474df32016
+DIST thunderbird-128.4.4esr-ms.xpi 581084 BLAKE2B 786f1f371362fa870fb48ffcde86fb32b9828c297d4d0bbc9e8adc75edf5d7d55f3b16bb67c7f3c1ca3cc08360164a75c821fd1da485c7c7460859436f44cbb9 SHA512 97866fbda474893c023116f9bafe3429bae8cdb7f2f5b7b3d03a17556876b1442ebcf04f026a038ee8b87beb0da7d6445f9c724bbcd31db55b19d789a55d53a4
+DIST thunderbird-128.4.4esr-nb-NO.xpi 706104 BLAKE2B 05877b8aebcbf445c584e09fd75a74e52123709bec94771a4da9068be2044eb6672c64a89fb045916f21dda9d7186cae8b82570b048519ed8a1ae7c0661f4038 SHA512 07913b4541f8fbaa0e1d43b17f72fcd43b367cee9a1781d22c3642eb2d1ce76f4666e657fe61cc133d79f7289cdc27315c9390ad13a16af9ba8c312cdf389521
+DIST thunderbird-128.4.4esr-nl.xpi 748484 BLAKE2B 17dc4e149ffefd2f47bc7e4bb330daa656953feac057dc19f3fd15f0b1673075541376ff94ab7f64063a87ef00ed769f3e7d1c4e101df3d02b70f84b9992104e SHA512 b81b56dee44284503c41635f458dad46391f1ab27faa91769fdf64d42ce4a8174b05abbb33b2ec794a366c7b7967fb25ab1439a4661c3f86f789773b0a378323
+DIST thunderbird-128.4.4esr-nn-NO.xpi 726987 BLAKE2B d2ccaea17f2a09152ed1c57a58d5b6663ea1b26fda53c71367bf48a77b9ff6759ce0551ce23ef64b14dd97199f3fbedd6ffc86e6283eb521ec64d1bfa7871048 SHA512 fdb2742bf498d3196d4ce30b44b3fc7a282ae1fd12e59de8b6bf4eaa2e31a346918d27e7218278ff5269385e3ca0f0949acac7e5b11ce3223d280f361d278ec3
+DIST thunderbird-128.4.4esr-pa-IN.xpi 685675 BLAKE2B 126524b39f7c4dd197540be08849c54ff4fc3a7bf33bf13987cad84bda81438a1f81a814245cddf69360d44da6520166bded1cd82434ced9bd2b7e7a7782f7f2 SHA512 7006cb3929b96856ccfba11bc1dc3931188c53f7f108b8a341a6feaf7138bd0e6e32102f6a597c30a89033c32d567bb176c850db020731534cf0934a4263de6d
+DIST thunderbird-128.4.4esr-pl.xpi 767304 BLAKE2B dbdaf77fcfa5d463e09552727714b0e84c397b8148b3c65ee8db8768a90fd90b453b9b11444957b47a9ef415296b17c22b7ea9e6d06bdd5b06d04a1ece44a4ab SHA512 e19a5a41801081ee2f5f000af0a01b6a2a25bee97881fae4fc5f78a33294c06fe87fee4af7599d5c5eea54c9a27e78c00b63f6dad9b23857a64981161aececb6
+DIST thunderbird-128.4.4esr-pt-BR.xpi 755727 BLAKE2B 6075976be7b2421cd8e6b98b21e299563f25bf5525a7e108b51218a622208c3294c3b4c0a7b4c0a28759420306a0467c50e96865fc0d839420badada6bcf0262 SHA512 be25a575b60752018845ebe7483d99c9f1ab5ec5b3f50e67d6626182260cd13bafadc59e9120dd080d4bbeb69455f09cf3454789e6ad1248f89e031b34538679
+DIST thunderbird-128.4.4esr-pt-PT.xpi 750495 BLAKE2B dbb4fe7c7ce7ece69a37eeea11b31ca0e4e29b6960dd154960af7b0447cad3522e4353d6939857f5460020796ed5a04af835ed6e7eff2eec299635a6fe112e73 SHA512 a9c6a39eb60098caa8155b6b387063656161f2838ada540375624aa78bdd82008d57900f3100033742e282264e73cc81a7a00a72a4c6eb97d0046a1e26613913
+DIST thunderbird-128.4.4esr-rm.xpi 751458 BLAKE2B 967de42110a750d88c9f875eb03c8721bfb70a72cfd0fa425a78c677295af8cf0e1dbace91413377a9d851e1e1660df1770faac4da54272e8e73f027d5f3a285 SHA512 6badc345ab73e4db3c64d5492ce7cf7f8226c6c80b6160f555fa42f00900cb166429da5caa8a828a1a3cea8b7516ba330825a20cafb454a6cf985565957f1602
+DIST thunderbird-128.4.4esr-ro.xpi 669743 BLAKE2B 99792248f5c00b2faf129f1c1144a627b5f74a2604383479a658dbe63513f3e7b165e9d0a837dd0c8ecc704d69bdc49b3c687d7ee84323580b81c91fe05e2714 SHA512 026fd78dfb4548060b76d589d58a29db18f7751c1dcc2fc7ce19cdd743d492edf8f810e2edf610afbabfefac26b1941356c28c807f2792929c46cd93f6b46338
+DIST thunderbird-128.4.4esr-ru.xpi 877214 BLAKE2B 8393c8cd0ff01be01418512ab3adbdb51255d79f76cc345c03c7bfcaf691ca6a10586bce34392e9aa2e5ac36ecaca63c31442dfbca992b5f8f4fbb16892dd84e SHA512 9ef501c67f9c5686096ee0f946e5b778928bd2edf027965493cbb3deaa4abe508c93f7ca6450b3ad52bed52ab74f7106fb260b0e73f0824cf3a44e10b0da0910
+DIST thunderbird-128.4.4esr-sk.xpi 788763 BLAKE2B ccb3fc8ba85f049813b2a3e3b494d5088e58b44684e70a28de1e10f735c26eb63a9187c670a7a66906e35b36685e7182ef31d103bbd1b2341c271cc8c4fe9671 SHA512 411619eced8cbb5a0e7712d1a6ef20bba777491e3c3c8c3d139a9ed21eeac3529445bdacce3e57631dd3d047b6f9d36cd16beb07f83443a688fe4b2ea662f03f
+DIST thunderbird-128.4.4esr-sl.xpi 749577 BLAKE2B 9b8109eb656558f4b3e8ec3f015098c6f37bafe5ac8b2857c6f0dc978fe500897fab586fb00115b72bde2bb129ff2cb3123784fea5785bd580e199d931457021 SHA512 eb6297918da31118003aee23da2cfca35913e63c4ff10a6763cfcdedf0d3e91ca6bf5aa2bef21c4f2a454236516b82ce9f682815754e38816ab9c0c75b1b860a
+DIST thunderbird-128.4.4esr-sq.xpi 771528 BLAKE2B 6fc2326408d16f9b5dbad311bbd8096a51c652a7524fa31756d074db70e1fe2784dba91203382a788fca1c002af79acb7817d4ed59a9088030d1d6262921983a SHA512 3d98e394b4e0ea975d6a2ef9108ac8a81752e28fb5dc6f221b54873fcbabaa2cb8d32552f3ee8b6bafa60c59dc18cde28926c5d1a25412d43671da638e2dbda3
+DIST thunderbird-128.4.4esr-sr.xpi 771225 BLAKE2B ffe274e307dc371b95bb23fe12980ffc1a1fc69c11841642350883f4ecd869cb61a259d8bbb71885ef831cfbabd099eff2ccceff8e3505227ed4a18f99280033 SHA512 b6fa3f1831fedb4e98c496b35991f25cdb8e06c04085c7e8eb2c0d0a6c986bcab6764712527ad31e8fa234356fce8700fc63fdcc0023f71fcadd2b914149bb5b
+DIST thunderbird-128.4.4esr-sv-SE.xpi 751824 BLAKE2B 3cb200e3cf66247035e7557fa976d6476e09207d68de5123096acb9161579dec1709b5d9f35cc4b28c8ff5f892f5fe24d1d15c201a244114e431d696d368d47f SHA512 a21f01ba0627129bab06c62d80188a0e5caf07bef30491a2a91b2019e50c3cc85c58b0d55688267173854338c0224d78e5e41078d42bf536fb4f7c3313762df7
+DIST thunderbird-128.4.4esr-th.xpi 815950 BLAKE2B 65d6724441aac7a242998b85aed68ab79944e216d6c0a2d84072db7f2f0f88c43d17af9bd2ddde9966d1419a02755bc1611145b533c983f9c64769f908bd5b3f SHA512 a2ed2042867f31deb437e5c0216e3bc7b793b69ccd2f57642d3d42d5c73b7c062448912d3b486d25be37d8f1b7a3d5f4d0550e492cfa5b31ad630b0221382cd7
+DIST thunderbird-128.4.4esr-tr.xpi 761635 BLAKE2B d2a50602405c28d910af99949b8b9c9a4da5694387720bde3d87ebcad11645650c35b7e05a4150790f4a722fda05b7a5a353c5b733de6eefc5e97a90188f9497 SHA512 fb96c118e444b0d8588d8155f348ceab941a4940b9b8ca80c4d82ed6149bf027fb9703ce8a0d70f54e9aeddd097248876b0cb814f00767a91b6b308df518d69e
+DIST thunderbird-128.4.4esr-uk.xpi 867539 BLAKE2B 35ebf051d085e581f8aa013904b5fb629392ebedbbb3f3987bf901fe5e8aba07cd9f6c3fc700ee9f0758f28249a52d9b6b79ae3deb9047831a293d87a081ed5c SHA512 35704c3e0e7697f8bb50e3e8dba94d4124fc663d13d8eed86de4b04b01f1361a6b98065a748b2e7091bcd3f2dc201bf804b0ced471423ec7bbdc2e8f7588b42d
+DIST thunderbird-128.4.4esr-uz.xpi 592134 BLAKE2B 428385b973c75b047eca627a01f1f0f59200cb53a4f0ff17e4fa22e2992829e9c02145654b5c2b8af2bf49715faf4544f75e3a9c37f3a60193a00dce5e5bc1ec SHA512 b53733ca5361b45d3ae82982634941decdc7f7dc2615708bd758d1cc9fb0254255c4ed3f375df0ecb70cf0cffce0a2c1e8b25cea0530666ae6556a617be95c9c
+DIST thunderbird-128.4.4esr-vi.xpi 790930 BLAKE2B 4dfe68aec8a41ffb4baa48cbc27aaf379e9946a41324aa85e5e524aa09aaae0c3618b1f20cd10a2434f8745331079effe68c42091848ed13b6dac3560a8f9d06 SHA512 f3de9253eb9c5761cf18e2d1c4247d971e3ab577a1eaeb83b9ec059910970adbcfcfcfb66c61866fb83f4eb978506d638a9601b3acb2e3c4b7cc32be21866cb3
+DIST thunderbird-128.4.4esr-zh-CN.xpi 790746 BLAKE2B a9190edb5c4be0afbba068791559bb9b1b3699f29dc770120c7e9e7b8672bacd7595c53790af7a7b4c042df01f84ee58996a4c50ae8e434eeb6b152329a8edde SHA512 ccdfc3016201d3bd89f6970e22003ff9253ceda879be068d42bf43322148fabc125ffa1c9368715f0405c9c06a7259fc81029b21551547e6d5e804babcb86a0c
+DIST thunderbird-128.4.4esr-zh-TW.xpi 794100 BLAKE2B 9266ac41e404554f1268887a00b146c6df1e1d9715913c0f25b1ab4761ed57517871bb71f8a14d4dbf8489844cee01300afbd59af6c0f0326087b41431415aa2 SHA512 310a77fd1ef840fbd995821cb615194bc0776505d5aa53f9a691481a85ef32d6cc4498aab4c1a9b70f0229376a64699bc2f6dec873985156465d64298b0248ea
+DIST thunderbird-128.4.4esr.source.tar.xz 677533120 BLAKE2B 73a54041068d2e2e824f64a34754345c2c020e63ea2c2767049d119580cdd0c3d587c7e841e2845f4220a7a4721158e51a67cd679d020a10bb2313d5249607fb SHA512 1affd4049fd014116a5a3f5693f38245a21adef498213d72c1d0d98ec9ead152448f5ec089b2a5e91d19c41a90857f8c134ae30a62a44dd68c680a1ddc6b111a
EBUILD thunderbird-128.4.2-r1.ebuild 34579 BLAKE2B e00c530ec48a696bb1d9b6317603d915a07622f03e2ec9c8e75afe89d7bc8e803c6d130db4dc6143964373f53bbef82ac4319b7f057115bd1f536481a78227f6 SHA512 d8f22568ea18a0c30e782731322d95fcb38f404d0fd6603c45eed7ca08ecef3fd72194e801abb6e523dea7fe48bc6f52938ae60b4861c7430d24fc27a89ce0fc
EBUILD thunderbird-128.4.3.ebuild 34579 BLAKE2B e00c530ec48a696bb1d9b6317603d915a07622f03e2ec9c8e75afe89d7bc8e803c6d130db4dc6143964373f53bbef82ac4319b7f057115bd1f536481a78227f6 SHA512 d8f22568ea18a0c30e782731322d95fcb38f404d0fd6603c45eed7ca08ecef3fd72194e801abb6e523dea7fe48bc6f52938ae60b4861c7430d24fc27a89ce0fc
+EBUILD thunderbird-128.4.4.ebuild 34580 BLAKE2B aeb264dd80da0aa91c1fa3fdbdd98f01c7e4799efcc0a2dfbe170fd9a595942e783763067c4bb6f8799d9c674c494897d7bafaaec9eb898a6feb672968b1e92e SHA512 719b8ab1f1478c7e9e47a49ccb20ab3db44cefa53054682dd219579b2cc1d396bacc552e9f9c9c729d8b8eea953a3c8192ea2d10af6846a1bd42e5b01a1912df
MISC metadata.xml 2277 BLAKE2B e4681b61ae7363d0442ad382e5972c7654624c2033e43559d9d751af8abcebf6e1badede00b68d8f28ba0eda4b060acb3f730b79181d0acfc286c1a03c7cc2fe SHA512 517460e6a4ce6232570290b69596bc2e1913c7a95ef4df62216df4d3be7b8c83247004916ed5e74d285951d9e9d96fe80406d128a0764ab41aa26458805a1513
diff --git a/mail-client/thunderbird/thunderbird-128.4.4.ebuild b/mail-client/thunderbird/thunderbird-128.4.4.ebuild
new file mode 100644
index 000000000000..0ec3fb734152
--- /dev/null
+++ b/mail-client/thunderbird/thunderbird-128.4.4.ebuild
@@ -0,0 +1,1156 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+FIREFOX_PATCHSET="firefox-128esr-patches-05.tar.xz"
+
+LLVM_COMPAT=( 17 18 19 )
+
+PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_REQ_USE="ncurses,sqlite,ssl"
+
+RUST_MIN_VER="1.77.1"
+RUST_NEEDS_LLVM=1
+
+WANT_AUTOCONF="2.1"
+
+VIRTUALX_REQUIRED="manual"
+
+# Thunderbird will have separate release and esr channels, matching Firefox's rapid and esr.
+MOZ_ESR=yes
+
+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-r1 multiprocessing \
+ optfeature pax-utils python-any-r1 rust toolchain-funcs virtualx xdg
+
+DESCRIPTION="Thunderbird Mail Client"
+HOMEPAGE="https://www.thunderbird.net/"
+
+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[@]}"
+S="${WORKDIR}/${PN}-${PV%_*}"
+
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+IUSE="clang +dbus debug eme-free hardened hwaccel jack libproxy lto pgo pulseaudio sndio selinux"
+IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx"
+IUSE+=" system-png +system-webp wayland wifi +X"
+
+# Thunderbird-only USE flags.
+IUSE+=" +rust-extensions +system-librnp"
+
+REQUIRED_USE="|| ( X wayland )
+ debug? ( !system-av1 )
+ pgo? ( lto )
+ rust-extensions? ( dbus )
+ wayland? ( dbus )
+ wifi? ( dbus )"
+
+TB_ONLY_DEPEND="selinux? ( sec-policy/selinux-thunderbird )
+ !system-librnp? ( dev-libs/jsoncpp )
+ system-librnp? ( >=dev-util/librnp-0.17.1 )"
+BDEPEND="${PYTHON_DEPS}
+ $(llvm_gen_dep '
+ sys-devel/clang:${LLVM_SLOT}
+ sys-devel/llvm:${LLVM_SLOT}
+ clang? (
+ sys-devel/lld:${LLVM_SLOT}
+ pgo? ( sys-libs/compiler-rt-sanitizers:${LLVM_SLOT}[profile] )
+ )
+ ')
+ app-alternatives/awk
+ app-arch/unzip
+ app-arch/zip
+ >=dev-util/cbindgen-0.26.0
+ net-libs/nodejs
+ virtual/pkgconfig
+ amd64? ( >=dev-lang/nasm-2.14 )
+ x86? ( >=dev-lang/nasm-2.14 )
+ pgo? (
+ X? (
+ sys-devel/gettext
+ x11-base/xorg-server[xvfb]
+ x11-apps/xhost
+ )
+ !X? (
+ || (
+ gui-wm/tinywl
+ <gui-libs/wlroots-0.17.3[tinywl(-)]
+ )
+ x11-misc/xkeyboard-config
+ )
+ )"
+COMMON_DEPEND="${TB_ONLY_DEPEND}
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/libffi:=
+ >=dev-libs/nss-3.101
+ >=dev-libs/nspr-4.35
+ media-libs/alsa-lib
+ media-libs/fontconfig
+ media-libs/freetype
+ media-libs/mesa
+ media-video/ffmpeg
+ sys-libs/zlib
+ virtual/freedesktop-icon-theme
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/pango
+ x11-libs/pixman
+ dbus? ( sys-apps/dbus )
+ jack? ( virtual/jack )
+ pulseaudio? (
+ || (
+ media-libs/libpulse
+ >=media-sound/apulse-0.1.12-r4[sdk]
+ )
+ )
+ libproxy? ( net-libs/libproxy )
+ selinux? ( sec-policy/selinux-mozilla )
+ sndio? ( >=media-sound/sndio-1.8.0-r1 )
+ system-av1? (
+ >=media-libs/dav1d-1.0.0:=
+ >=media-libs/libaom-1.0.0:=
+ )
+ system-harfbuzz? (
+ >=media-gfx/graphite2-1.3.13
+ >=media-libs/harfbuzz-2.8.1:0=
+ )
+ system-icu? ( >=dev-libs/icu-74.1:= )
+ system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1:= )
+ system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] )
+ system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
+ system-png? ( >=media-libs/libpng-1.6.35:0=[apng] )
+ system-webp? ( >=media-libs/libwebp-1.1.0:0= )
+ wayland? (
+ >=media-libs/libepoxy-1.5.10-r1
+ x11-libs/gtk+:3[wayland]
+ )
+ wifi? (
+ kernel_linux? (
+ || (
+ net-misc/networkmanager
+ net-misc/connman[networkmanager]
+ )
+ sys-apps/dbus
+ )
+ )
+ X? (
+ virtual/opengl
+ x11-libs/cairo[X]
+ x11-libs/gtk+:3[X]
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXrandr
+ x11-libs/libxcb:=
+ )"
+RDEPEND="${COMMON_DEPEND}
+ jack? ( virtual/jack )"
+DEPEND="${COMMON_DEPEND}
+ X? (
+ x11-base/xorg-proto
+ x11-libs/libICE
+ x11-libs/libSM
+ )"
+
+llvm_check_deps() {
+ if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
+ einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&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 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!" >&2
+ einfo "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}"
+}
+
+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'
+
+ 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-r1_pkg_setup
+ rust_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
+
+ # Clear tons of conditions, since PGO is hardware-dependant.
+ addpredict /dev
+ 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
+
+ # Workaround for bgo#917599
+ if has_version ">=dev-libs/icu-74.1" && use system-icu ; then
+ eapply "${WORKDIR}"/firefox-patches/*-bmo-1862601-system-icu-74.patch
+ fi
+ rm -v "${WORKDIR}"/firefox-patches/*-bmo-1862601-system-icu-74.patch || die
+
+ # Workaround for bgo#915651 on musl
+ if use elibc_glibc ; then
+ rm -v "${WORKDIR}"/firefox-patches/*bgo-748849-RUST_TARGET_override.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)"
+
+ # Workaround for bgo#915651
+ if ! use elibc_glibc ; then
+ if use amd64 ; then
+ export RUST_TARGET="x86_64-unknown-linux-musl"
+ elif use x86 ; then
+ export RUST_TARGET="i686-unknown-linux-musl"
+ else
+ die "Unknown musl chost, please post your rustc -vV along with emerge --info on Gentoo's bug #915651"
+ fi
+ fi
+
+ # Make LTO respect MAKEOPTS
+ sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/build/moz.configure/lto-pgo.configure || die "Failed sedding multiprocessing.cpu_count"
+
+ # Make ICU respect MAKEOPTS
+ sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/intl/icu_sources_data.py || die "Failed sedding multiprocessing.cpu_count"
+
+ # Respect MAKEOPTS all around (maybe some find+sed is better)
+ sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/python/mozbuild/mozbuild/base.py || die "Failed sedding multiprocessing.cpu_count"
+
+ sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/third_party/libwebrtc/build/toolchain/get_cpu_count.py || die "Failed sedding multiprocessing.cpu_count"
+
+ sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/third_party/libwebrtc/build/toolchain/get_concurrent_links.py ||
+ die "Failed sedding multiprocessing.cpu_count"
+
+ sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/third_party/python/gyp/pylib/gyp/input.py || die "Failed sedding multiprocessing.cpu_count"
+
+ sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/python/mozbuild/mozbuild/code_analysis/mach_commands.py || die "Failed sedding multiprocessing.cpu_count"
+
+ # 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 checksums from cargo crates we've manually patched.
+ # moz_clear_vendor_checksums xyz
+
+ # 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"
+
+ # Configuration tests expect llvm-readelf output, bug 913130
+ READELF="llvm-readelf"
+
+ tc-export CC CXX LD AR AS NM OBJDUMP RANLIB READELF 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-disk-remnant-avoidance \
+ --disable-geckodriver \
+ --disable-gpsd \
+ --disable-install-strip \
+ --disable-legacy-profile-creation \
+ --disable-parental-controls \
+ --disable-strip \
+ --disable-tests \
+ --disable-updater \
+ --disable-valgrind \
+ --disable-wmf \
+ --enable-js-shell \
+ --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 ; 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_enable rust-extensions thunderbird-rust
+
+ 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"
+
+ # Increase the FORTIFY_SOURCE value, #910071.
+ sed -i -e '/-D_FORTIFY_SOURCE=/s:2:3:' "${S}"/build/moz.configure/toolchain.configure || die
+ 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-x11-only
+ fi
+
+ # LTO is handled via configure.
+ # -Werror=lto-type-mismatch -Werror=odr are going to fail with GCC,
+ # bmo#1516758, bgo#942288
+ filter-lto
+ filter-flags -Werror=lto-type-mismatch -Werror=odr
+
+ if use lto ; then
+ if use clang ; then
+ # Upstream only supports lld or mold when using clang.
+ if tc-ld-is-mold ; then
+ # mold expects the -flto line from *FLAGS configuration, bgo#923119
+ append-ldflags "-flto=thin"
+ 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
+
+ mozconfig_use_enable debug
+ if use debug ; then
+ mozconfig_add_options_ac '+debug' --disable-optimize
+ mozconfig_add_options_ac '+debug' --enable-jemalloc
+ 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*'
+
+ # elf-hack
+ # Filter "-z,pack-relative-relocs" and let the build system handle it instead.
+ if use amd64 || use x86 ; then
+ filter-flags "-z,pack-relative-relocs"
+
+ if tc-ld-is-mold ; then
+ # relr-elf-hack is currently broken with mold, bgo#916259
+ mozconfig_add_options_ac 'disable elf-hack with mold linker' --disable-elf-hack
+ else
+ mozconfig_add_options_ac 'relr elf-hack' --enable-elf-hack=relr
+ fi
+ elif use ppc64 || use riscv ; then
+ # '--disable-elf-hack' is not recognized on ppc64/riscv,
+ # see bgo #917049, #930046
+ :;
+ else
+ mozconfig_add_options_ac 'disable elf-hack on non-supported arches' --disable-elf-hack
+ fi
+
+ if ! use elibc_glibc; then
+ mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
+ fi
+
+ # System-av1 fix
+ use system-av1 && append-ldflags "-Wl,--undefined-version"
+
+ # 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
+
+ export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none"
+
+ # 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-r1.js gentoo-prefs.js
+
+ local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js"
+
+ # 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
+
+ # 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 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:@DEFAULT_WAYLAND@:${use_wayland}:" \
+ "${ED}/usr/bin/${PN}" || die
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ 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
+}