summaryrefslogtreecommitdiff
path: root/mail-client
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-12-13 02:01:50 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-12-13 02:01:50 +0000
commit2a3e0d61b3d88306b6fae46756f9ba7d230222ae (patch)
treea0d3259dd259861a49a2d3e6e9220beaa8ec39c2 /mail-client
parent39c32f4d5dca9f6293fccb69e9d50baf494c8de4 (diff)
gentoo auto-resync : 13:12:2024 - 02:01:50
Diffstat (limited to 'mail-client')
-rw-r--r--mail-client/Manifest.gzbin3375 -> 3379 bytes
-rw-r--r--mail-client/thunderbird-bin/Manifest67
-rw-r--r--mail-client/thunderbird-bin/thunderbird-bin-128.5.2.ebuild274
-rw-r--r--mail-client/thunderbird/Manifest66
-rw-r--r--mail-client/thunderbird/thunderbird-128.5.2.ebuild1163
5 files changed, 1570 insertions, 0 deletions
diff --git a/mail-client/Manifest.gz b/mail-client/Manifest.gz
index 065625320ab7..5682e131af09 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 0b611fd333f5..d449cfa02ae4 100644
--- a/mail-client/thunderbird-bin/Manifest
+++ b/mail-client/thunderbird-bin/Manifest
@@ -258,16 +258,83 @@ DIST thunderbird-128.5.1-uz.xpi 592618 BLAKE2B baf82bc6ba47555338be08475adb0588c
DIST thunderbird-128.5.1-vi.xpi 794032 BLAKE2B 0ebbf0c3d3b55881d89d1b7caa5fada14833a90f88ccef71625b80d7aab368fb7b2a5b136ffe048ce9c8c969bd3948e05749fc8cdda70dce9f3a45f3d9fabde7 SHA512 3024bc7f56b5cfe26cb8297c1163165a7827e227a5ed5a72cb2de61e5cae868dce6f2674fc8c4c2128ecbade6f3aa513936b4ccbae4135c66934d0f46786e753
DIST thunderbird-128.5.1-zh-CN.xpi 794060 BLAKE2B fa0f838e68ea27a51371ccdaab279bff130759e34e83581881f22d569139c02e1e8b36c18b809b93d4de827fe8f09648370642b53f734030a326ca6f0355d44c SHA512 75cec7ad9ee4ea5752cd19111a23957e76052fb4cc97078557e495718afe64c98ad1de37dd83e77b523c66e780de85d3318130e62110171467167a754439c303
DIST thunderbird-128.5.1-zh-TW.xpi 797334 BLAKE2B eb72fecbf3bff04d5c9daaead2a539fd540f6008e24f52b4c0b0ae0eb1115d4ed15bde3d801d5e40b1f92812780f6516015369814a9e4adbf93bc60a402dd018 SHA512 860d5328279195bd70dd91ee8f4bcd6ac8fdba413fbb2a4fcf6020955a53fe9452cbf6105e2b2583174d49b519bc9f3663e1400d77ed7e365f0ff6411486da2d
+DIST thunderbird-128.5.2esr-af.xpi 530350 BLAKE2B 78c79e8b168f137426bc12938c4e8f669538635e369d86c745098d07d958699a120073c2736341f4842fc827ee11667b8893831b19088c09a9c4161af08e4afe SHA512 26898351b3b7d27cd3c990a6d17b6f28eaf70aa2736166705ad5034f233cca4701d9e4f27389e698db29d7ba461e9fb7d976ced5fbbfc2d354502e2cb61bc5d5
+DIST thunderbird-128.5.2esr-ar.xpi 686985 BLAKE2B 27a7872965258cc920e9c30ccd79cd2ea219c32b48480798c7392523ad5072c1b40f896e7f43a21c51d9a84fc6128676b42b0204b085e4529608598f82432cdd SHA512 43a8eb7122432805cf16a636a4ff390ec04ca14fd4cce9dcd76f853e65caf955d36fcdd3577370a2b8ecbffad29aa0a41c0ad92fa1ff3aefc6a4cddb3ba1e69a
+DIST thunderbird-128.5.2esr-ast.xpi 561055 BLAKE2B e66c6c16c1508f24202f061843aa2d82bd9d5b2edef0adb208b9afdd292daa2f928557d34750693f28b459275095fdf6bbb7d4c181429cbf870ed6cd0d0e7688 SHA512 2fbb37d6611a4abcd4a84648683896c8f1de015c12afc33e04b17e2339a29dac6317033f31175694869ceec65bee8fa07090d756fc5851da477d5141f501572a
+DIST thunderbird-128.5.2esr-be.xpi 772990 BLAKE2B 348ba443f2d1820481f6e5bf438544ed2dc9ebc02d1dddad180f40146a433bc0df300b6b580f879b0b1defbeca536c2764b85a39486a78c2f7156a16bfa46471 SHA512 b967ec35e454b0581da25088c1db7267533461a09e824d533a0df214e43cad412eb6d413ffe7cff6bbf6840269a3fd9758bd8d2c8072c14372a1381a6739b9c5
+DIST thunderbird-128.5.2esr-bg.xpi 812323 BLAKE2B 420ea917ac83c53e0fd8d4395f4af376aaa5f84836b0aa63cfedb882872f306eca4c29cf1656b0cc535a907743ff1597f7b6b9c5eb00074912176a1ac403aff5 SHA512 4c635e21ffef0f81b8446aec87f583c419128be400846143ed2e142f9233ee56f50ac87e1e41096c6409c9be08f712963fa9e9d87db326badd3da3908ed71335
+DIST thunderbird-128.5.2esr-br.xpi 655127 BLAKE2B 35780a67972c8393625e43759c4986635e08e3fde1816bf56566690d20aceefa0519b960634e861d591189e61a236c2d1d53cd615bf8aec338e7b8d31a0a8714 SHA512 601ae7ca98b76ae4cf5d12d5ef8519741ca1d6788b9231b421a21ec87017c5ca91772dcca127e30ef9222ca49d831209f4dd03b3fc0d17805a588d921f97016b
+DIST thunderbird-128.5.2esr-ca.xpi 711078 BLAKE2B 82b9d5d7031a66e658992434e9522534437d6e72d9e509c3e23bfdfc2952162738ef6738c6610a16a660a726fec2d4828c5a9daffcb08c7d9ef58f634c411798 SHA512 2f0e00a4f4fc9d2d38a099a30b2d6cfbe3f2301075de481604b482e73e5f23b5c81eb36f600e2b0caf6b3c1a3388adaf963040677d6dcf4b175b7272780f66e1
+DIST thunderbird-128.5.2esr-cak.xpi 672196 BLAKE2B c989a4d4f49258da61b8824ac17c3b2ef460ab726346799254aa88417a17909279b26216812e756f8b1512919b84288e968e40403dcae8853bea04ad46aef370 SHA512 a81e9d2037aa6f1c6679f9f956000c5b539185dcf6723db5f63622cbcd47e7db1dec2d60120bf83207d5c1c789cf8cb40b43fba2aee794dcde7a57ef4bbb781b
+DIST thunderbird-128.5.2esr-cs.xpi 791609 BLAKE2B 8dfdb3530778018d924015d59bfda12edcc88c0416e6cbc0f502b22e1ab7ef3687b70345e867083b11fb70d7fb97e9d769efae73bced78a3ba02e3fd11c16be8 SHA512 f7774873e38c2f1a18d7af07f368227d4f9c1b4814d14d310157f7298a737bba9c5cc676ae9c768c1d62019870d813e11dd292955e4436c804840f99df24a4e9
+DIST thunderbird-128.5.2esr-cy.xpi 756816 BLAKE2B 11ff55ce797925ecc589858a2f686f6600ca9968ac77aaa9b3de36d683ad11ed5620c34b81063128afdd959f767ebf8c043c2b8ac263edcd234036b1c5977305 SHA512 f784a7821fc9a03a151062bec2b51c8d8c4bcbba4145895df8fe8f2c5988eb3eb026d1d4a355cc51b3457628097bdfd578aef5f1a8720ab6cb4a4a5ad05af628
+DIST thunderbird-128.5.2esr-da.xpi 740057 BLAKE2B 2f8fc6939499959ce780bfaa0261fc3885784f0d4bea34830d67bf1d95e2ef8c805a1013bc72b6fceb44aa980ed9454834dc10d7a5722df1380b3a94df9a927e SHA512 4bd3aaaebc23628afaa23052a83a63d36f38990ed6285c450c0009434a4a8ef066bb7f1f4a31f9ab2d5f106720ca9137903df0d1e6e6c52310d6a8e0e22dff46
+DIST thunderbird-128.5.2esr-de.xpi 772204 BLAKE2B fbd8149adc5867b2f7290973358714be2591fc5afb35e509d9a876db295cf8fa59550d0691f0f4ba33c36c408940dbd7ca19c5624d601fe8044973564ea85ec4 SHA512 6f80c58ca097e0f1e77fb6f362d7954abfe6d8e46b0021d4003e3cb4888c7dd96df1ed29a5bec806062669552b4877c33a4831d37868d9f1c51fc2c0a8899fdc
+DIST thunderbird-128.5.2esr-dsb.xpi 790369 BLAKE2B 1be4aad6ea99cc6bb9c7a67e0f17a5809a21e026f9014a78740cc516cae5aa30d04f379d7f999b1ffb10fd3c3e79e147e3bea1ac9a47e8c54dfaec6686e21f05 SHA512 fa7d27f609213520532abd299e6d498563ef177c3aa6a3737920f69de614e7861f6894d63cfff49288489017bafa1fe1ef2d8695fac182e881526141a7c5419b
+DIST thunderbird-128.5.2esr-el.xpi 895923 BLAKE2B 36aebb0891eb53199aacc1e1bcf436fe36aae5ab0022b9a3ea35f36830c84a68623f6774a217872429b2a07bb0a3eec4cb1a77f1474397ff4d476f56d3ceacb6 SHA512 6028fd57f8d2017b4d170dee5b0c715cb6522a93cb939dbdb239952f2d43cbede762d94e013d1ca9721598c7d6c04c677a78a296cd394d508bae2eeda0e36d80
+DIST thunderbird-128.5.2esr-en-CA.xpi 705213 BLAKE2B 228fece39282a4f6e1016c13c537a761ab00110c1244b172b6f976abceb8f591c9eac755f1352ee5a8923452f7bec359f8c803512214ef7760a34aa205d6ed68 SHA512 470f4422cc6d9ea4baf4b402a56b7386bc29295d378ffcfd501f946ef3c6bd595a1b44ed67a1cab0ae64e31185e577fdb21e98b8cbb403684f757160c36a6e49
+DIST thunderbird-128.5.2esr-en-GB.xpi 709687 BLAKE2B 1f41941eca01c2413eae7f830b0894f06ece348d2e02629808bfc06d9ba66a1547009b1fdff372b121ad356405cc4fbac7282982c32983a5a2885d6f3f4256d5 SHA512 f3b04ae32c4881fa7e6d2fb6924a4417f7e0ec49699e42c630300ff7be246814d8dfb6031bca1ff9841dce1fa99628935453d5b59fb2605b00e98ec19e7ab1ed
+DIST thunderbird-128.5.2esr-es-AR.xpi 765754 BLAKE2B 84b62cfe9305698553ca423523eb3e1ecd7c06585a04ee938fb371ec4d15ac5743c2c97ada0bed48815b4b94426e7428c2b5c3ecf7ec8dfbf6f3ef21f376607b SHA512 abd71dc6f85430dd67b01839aac3355a529b738b7adf94a58440eec147f948f629e639fb0484d47add2817425e821ab566a2481ab5314b8af0b570de3da64b39
+DIST thunderbird-128.5.2esr-es-ES.xpi 733784 BLAKE2B 21d72b0bbecc3e9f7d12588675093a8bdbb3a789c92ed457541cdab3584be6b3c5c5e01caa9d368712f323f0221266f1fca63fd83cfcbe83cffb56147ad849c6 SHA512 dd5c861b3a44d3a4f64c90c1e0c9f8b8242df62d22525decaa74518d2fadf228668a1ae742d3fa55d18062b3558cb3db51bd4f8d4d9bbbd1e9b93dda8603bd5a
+DIST thunderbird-128.5.2esr-es-MX.xpi 749782 BLAKE2B f5d06f932d76af75c088c4f36c31d8350281825c33cf0de608a1a0ad5e0b12d61b7de38b7cd5e5626bdc7cdf21df87c9ac9c1ef225eee4a55f66bcb31f97ca00 SHA512 7db2c88e575c15182039a7b664b11f51903223024b0b356cf5f46fd9f0808be007cefed489b757f9ee949709e19995d0b9fb2075d730103b6a99850beeb43e4f
+DIST thunderbird-128.5.2esr-et.xpi 696774 BLAKE2B 7e1c7e8d063e8cc8b7e9ff7c1db086836bdac420362bf89bbfee58a57bb9c9144fa31da57e59d1b1020eb7e51bf9691a52e8a9bda27584740d68644ebce20a30 SHA512 2660b238fb4c7203b2502f7a511877eb73d10531c286363d0831fa3290797723137cd93ad013a781698455779728caed082469fb9d5c55073f2c6c5715fca150
+DIST thunderbird-128.5.2esr-eu.xpi 740305 BLAKE2B e45902eb59c9d43ff4b7d29d111cb2edb471ff57e04a3c02a0d75ecf8bd35c855ece88b08c7873678f3e8e8b384f754eaa6c54b6e56a464319c44e47d4b8a067 SHA512 18e41f83f4a0c1daa284d6d637e57ce2f282ee85817306c79473cdc6aa8c10c87a88fbb4470cf59f116057790323cf96114880d77b8ce0604db77b878949141a
+DIST thunderbird-128.5.2esr-fi.xpi 738931 BLAKE2B 9f98ab9b4d6526d4081f46ead47f396a3750582e22828f3d32ba2f9844067c3e4f77a272de7e944e0053c1561f9a89331290b8acbc5eb3f399401778767cf0dd SHA512 bec2372a6131d8c753176216184ea00a3b7cf6cb9d09e8c0b56d0cbe58f1fedd8bb948bb672b0c68e89dbe19bb7191ee6069ca2697cbd5c4877dc10614a3887f
+DIST thunderbird-128.5.2esr-fr.xpi 777365 BLAKE2B 4ce55cea3413a228c67a96adb702221c8f312dcfc986215fbb100ba00f63057e2c7ab9bcade5fc7c48b5676cffe7666fc161e61794b6af738ef32539d35221fa SHA512 b12c687198d92033be620360d4aaea6f3d6861764470215c36b9e2e574972829959cfab9783b388dbae0004ee02884c30abbacf91cbdc88a52fdc9b36570be1f
+DIST thunderbird-128.5.2esr-fy-NL.xpi 759928 BLAKE2B d0b72042e58f66eef030028b4bf227995eb77b93412b5c895fa1c50c4805888698b50982d6f729a626c1b087cf7ad9f9dd64eea4d71374e24fe7368e5a48b996 SHA512 3915302d69e08569d8142a05b0bceedfba779fe3c3ec1d37be0897f63f794d14f5d8764dc3b3addaae58ccc44e3e056e97703f7707f98c383b8a4b032b58f43b
+DIST thunderbird-128.5.2esr-ga-IE.xpi 616368 BLAKE2B 58e42a03ad3bba2fd60d69694cb2f59b0639581797c96c32ab042317b2e873557b221fb9a8fdbc4e190c9ddfe48dbd912f385d058fc9e5e9463e86738446cbc0 SHA512 dadc86451a95e751f3da901a34ae5bfc12f23d64799389c998f39744849ee55960271a9a1a96e8a6bbc9fb5bc29441d1ced84d25629ee3963cb25136773fce83
+DIST thunderbird-128.5.2esr-gd.xpi 729139 BLAKE2B 12fc76df9bc58f5744f99f6d06588feaacc7a94f03f73dc8535e06926739378b877188878ddca8c21fdaf5fd72150d99b9b73897c84276a29e8070b65749cc45 SHA512 45f409d86ad4cd3dc6293e09e9729ef951f50643d1a7654c02bc5cc34a799f22f45bf835d7234fedd1e6cd0c4b02126b591f315a684b479a4caddbcd18e87731
+DIST thunderbird-128.5.2esr-gl.xpi 742175 BLAKE2B a09a56f3224cb0f3137e6fb10dd0a34e04a54051fb9fc0717d6c4661eee3d72fae8c69d44822c1d20f6349fd1eae32c478f132d52933a3bafcf29ae23eb784ee SHA512 e7291b71fb9e7661aa0e9ecbaec656858ae153e28aecf542530a06694bc823e899a333b344042abbd561655a9858c958c2cec32fb2fd3e8ec2654b3508824b2a
+DIST thunderbird-128.5.2esr-he.xpi 703448 BLAKE2B f8ad589bc90131224c725058bf743d1503993ae3dd6c921c9067bb0fb1e18933e9f5cd81eb11831314636888ca651460e40727a77972781d4d7f47823aec3326 SHA512 983fd05e82f235d5559b321d3a9365d4d9d7aac57203bf2d1291915961dc489510aa3cba3adf43fe503ba3952a88eedfa71f8ce93e53cf5a5e20da71e19b457d
+DIST thunderbird-128.5.2esr-hr.xpi 720119 BLAKE2B 70a5cc2ab288197b297583bea9d749edb263cea563ce09414e7640b56e1947474225e1b771dd3199c2a304d74ba9dd35155bd456d09a32937f07ce65581f18fb SHA512 51f3b757bc7c64e68733b4f88507fa80396c02324017bda7b86bd33136a274c21710a4b9274f1fbb64812eda52e471de1a53d80fb854c63781852389602ccb1d
+DIST thunderbird-128.5.2esr-hsb.xpi 787748 BLAKE2B 8bb48f541ac3ef3439d137701e789c673caeb4f09cc67c73eaeb08de475fed9769804832ad6597f1817691f26fec86a7ac5928b6c5a51efb6a0d06beae3aa34e SHA512 7f01d3abb1127cfc3abb863f2fa67fe6606d5b55af4d8adad739614c5eaad7f48a808941a5fc4702cc2032ff2d06b9e062d5ff192310c528a9dc3972e17e40de
+DIST thunderbird-128.5.2esr-hu.xpi 790231 BLAKE2B b38f36fa3792d70c7951d9d9ace4db86be9417897e83758ec86c4cb36216e6c6d7e825f06542697f766f75b5f9e33ebb33fe998c6a38baec94541bcdbcd924af SHA512 4b09c324d68407ec195a64d033b4ae7e51b3761f4904cb5f8767599815b2802a5056c150193316bf8e0a6eae21c8eb46a074d1012bce129af33507dddf29882f
+DIST thunderbird-128.5.2esr-id.xpi 710327 BLAKE2B d50b871c78f99b202d28c99275e03c1aace4468af05f6577d87e40de22e5ecc80d15c88129a3236e0b926a5b85a396ece8c2a3c5bd476f7fbfdccd6eef11b9b9 SHA512 1f2a39ef486807a9de859f65cedff5ee9abf8713abd5438ac6da58589783e10c5ef3f32ab1a374c53b79163b4238f01568c00bfe92d8de7e590f7eac0f470afa
+DIST thunderbird-128.5.2esr-is.xpi 751187 BLAKE2B 9d6f5a27ceb539f7b6411dbc2d651280435a717cbb81838ad0b1cce636a83649a3160acd832559bca0ce9d475849a8d3208e7574e23ecc6df8c5732889c31bd4 SHA512 c12135ea63903579d6521e2b140cbf92c1449baa1e56d67c51b29d2843d7ddefcbab686d25cd71df5df7f52d72366c7a194b65b4bafcf9f7c0814feb0d0b71a9
+DIST thunderbird-128.5.2esr-it.xpi 697097 BLAKE2B 1992fa23f6b91c2a784777e61c7e67bbfd35a84e997fa7b1c7465b136e5197c4f89a98a8ccef871a74c91e7505a521dae7f51a79238ff4a78316035159eb10fa SHA512 c7800713e93a14463dd3383166a908fcd0891b7daf49097f4987d0848da9dbe75c0d3e33caa9bc5b187ea9e0cae7725daaa80d763caddd9cb9f2140fdb4ba4c6
+DIST thunderbird-128.5.2esr-ja.xpi 817723 BLAKE2B 6ec76ac7a42e00e6d3ac042d14f9262d2c45abc84ace74478a08fc4afda31d537b0e3625915537b87f652ed68277ac4af824db7b934c34a1d79825cdb73ea250 SHA512 9ba860573a1ea14921be07728f1f9ab225baf58cb90fd7d5a576649e0b305ad84e4572de84ab8e556864581822bef8eeb7a25331656bfb788be193bf15af7495
+DIST thunderbird-128.5.2esr-ka.xpi 796714 BLAKE2B 197193ce27d734b0145a13adb02c895084f1f0c7e81633b8fcf890e6a12cc10cc25d8a5f908acca59c381f4cfed7dc777c0de7f04cf4b442f1102cba67dfb1aa SHA512 7cdeb1073af116acb22745dbe2b6c0924212a33f403bfd326971fc430a2cbd460201a673afdf3b80d18381ca83ec0db6375533fd14d59eab6557a7f6a40b4892
+DIST thunderbird-128.5.2esr-kab.xpi 735474 BLAKE2B f13e11e823db622934941d0943bd8cab779139d7bcba50429222c7a42935947240345b83d40b7ee0a7f4f224a1471955689c71517afee24400d21b8283cf2434 SHA512 22a45f54271f74b3ad6f27412f0f76c226698a93027bf438fceff28015591eda6574c3b92f4fd62225015089e8e90134cafa0953a1e93d9b058974db57ef10fe
+DIST thunderbird-128.5.2esr-kk.xpi 865512 BLAKE2B 64c54248c410684a7fea2e1349f858fe4f59da5aeac8c2eca5c7734c0f83f600298bb5521835e5e1c3234e26b03c098bb6c60a195ad9aabe3f3cd6ea6382ed0a SHA512 7e86a9e8e809fe4163743971945bd9c8c5930383261003094241eeede42f834125fb281fe6c3a556c37486f0f8c69128820abb8f22752b9827a47b9f1617fb9a
+DIST thunderbird-128.5.2esr-ko.xpi 762642 BLAKE2B f3a38ff807d1c948e0300c1ef659f12b2d1e7843ac1e45949603bf8e2ebca88c6313dcaed128ce059a2e5fa90e3571146736279f1ed9c6d9cca5616eef0a56c3 SHA512 7f84df22490bfced0999478c3944ed199e223eaf11ded342a0193ee8d112fb54c82a9596ed8d3d693a98e310a440d6b6725cbe4af8f36b005e4222d0f3420617
+DIST thunderbird-128.5.2esr-lt.xpi 701411 BLAKE2B ee51a6bcd3d1ffcf25d3bff7d311171ecfcb2afb4eda11a97a53bd72f83a4fb0a41be657c0498eb0b96aa28fc8e4334e3b62b3174331025e68821663e5e7dcf4 SHA512 7981a0b240cd8fe42aced4587563a0da30ec35c8ed737d3f424a5f3634266505d345a100be547ff563fb78ed4a517765bbd049e6338de470dfd6f1a9db0bea33
+DIST thunderbird-128.5.2esr-lv.xpi 625981 BLAKE2B 6fad1fad86dfc661394e8734d5c3c93d668cce50358849c1500e1c063de83f7d34e364f9a0a7e9e7596352780faae9947f3288c6a0930f8b8de147cfd7949165 SHA512 99c88ba45f6ec3a69514671df362f4e8f3a0dab9676f0484ea68fcfe0ebace02e971ad88279087a7fce7627fc3f4460d3c8de5f98923da9ea554a3e059cf9957
+DIST thunderbird-128.5.2esr-ms.xpi 581575 BLAKE2B 80cc5b7acdd1376c033a806db9b95349fd980d7cdb418c15d34099ed87c79a49c035af3b4cafb081a9661b28d24d4bb9a74e82dd8eadadaff9be524e00428cd4 SHA512 cd338556365ce583beec84e982b5b9222a8ec26e36ddc619e2a7a3f3ed0e7f187880c91cd576aeeac1b368badcd4856a507c1ae69445f4b3a3aa822c69082799
+DIST thunderbird-128.5.2esr-nb-NO.xpi 708561 BLAKE2B 5502ca4daf1b4fd74e98ed666157d42bc9ac53e5962de012cac14ebd879063c7642138a92905c5b513a0041b79162e3f09f1703cf91d1a80426ca94831233244 SHA512 14501fc7c3a95ea975f96f970b0cd17b0d9c6a00d7d6f58718848922d01aa363b20026e1f48c22ce14458671d8c070a91aa8adbe79971bfcc50bce98671ec3c5
+DIST thunderbird-128.5.2esr-nl.xpi 751614 BLAKE2B 6d85397f712e8b028de0cdae60886c3060058148656c1518e092e3f227bd9642ceef8ee6c849a33a7a9a5692b8b39dd1d69fd2575cf63478304ff8105563ac5d SHA512 4f8766aca5b9c36028bf3fa156961ef8d93edc040717c29b2d1889b680eccc201ba21010bfdb9c83d6cbcc017213f1062b6720c2e8e225feea88cea6029ec651
+DIST thunderbird-128.5.2esr-nn-NO.xpi 729659 BLAKE2B bd52a29dcc102e2caba6344ae93ed4686f210209b5cc30ff7caaa95d99ea23991de60065ccec7af84056955bab80a52a11a487bfa4486badc1863d0eae2d3cf0 SHA512 17bed73d6abd99d6f642ba1a2fb9319ee6828011c60ef185f9d711299e030ba6840cc8cf6cf5655bf4f2d74ab3bd35b8c3f3a699de162671183b8cdde6b872e3
+DIST thunderbird-128.5.2esr-pa-IN.xpi 688138 BLAKE2B bea45460600966456bd158a4901ee7896e67995c4d15485bea0495024571aea6d668675a5904b6a5605b4be7d8139f35d6657836048ef27abda0e8e5c7d8d032 SHA512 921b84e30b9183a718540fdeec7edc05512e26724b4b90e61ac559a7b8baf48381015bad1978d60c9ea8bb2d50f91b87d255d9cfe9ccbf90aa0311420d74ddd5
+DIST thunderbird-128.5.2esr-pl.xpi 770780 BLAKE2B 82c89bfd9f66168a0ec9e5d050078e377c4d11870dfdbe3c61f21b11b921a1c551e785b9d784be081ea7df7233a34c8edd5bfbd4aa5b00eba3a009c3a4b0c7c5 SHA512 6e7528e84881267402a865db2e426d3fc8f07038704f46b05bcf834776c5947ccebdb1f2de9470b0def40cf8eea9ba1b91d3e74471ea087c8dc4cb297f9dd159
+DIST thunderbird-128.5.2esr-pt-BR.xpi 758845 BLAKE2B 1fc493a31795ace3923369a29df0d74544a10b90db117188b8d69022a715297edb871742bae1ca03c0f975cf87b3a73854d880426620c8107e2c6e56d73dc117 SHA512 c21b75fe6a20a8ffd029d578f251a9aab924ccd4ae85d2b1e352b378f7d0d3c8a7542408197547cf4e9b9fbd6218bf5e2930ac1206522445d7ea4cfc29212cc5
+DIST thunderbird-128.5.2esr-pt-PT.xpi 752024 BLAKE2B 50e2d1781eb74c06f8e9d62a22ad1e3e7d519788da0dae089936579966014488a516db87bafe21037005d9ab846ec6a30e4bd2791f4e90ac23eed38117d641f3 SHA512 a8269fce1289fed61bde66f0c4c6d125fea031c881e8a6e6f2fdd2a4a5a4b71130d14fa52f0b8ab8b3e19935de7adffdf04c7516efacc9e67b7d5661863abd52
+DIST thunderbird-128.5.2esr-rm.xpi 754446 BLAKE2B 27ebb2ef921f3022c1804ec3b1409aa5e1abf8459112f066d86dad1a3c68e48566639d28d11a134d5b95f5e4fce91056d03577cf7120434e1557720a9cc3fdaa SHA512 4141051a0309d9a31c37ae660e2da0460701098093af1293285c774fa2c5908a24f16dce85fd3dfdf32394072ac112b98e6c8717a140b4e0630f258eefb2e728
+DIST thunderbird-128.5.2esr-ro.xpi 670227 BLAKE2B b1e176b863a448bdee5495e43b3f19f2b2fb214b0b39b4b8ed023382e1f91f61656a116b4feb927d31b51933e0d26da4738699629aae3ff1b1e77d4817886e11 SHA512 7c30e12fbba1d50c95cd1be2efdaeb8befec5086df31a6b8152e26f3671bbc6a2f810e765dd49b0b3213633cc3da16a045bbafa48302eb1ec22fae683f377201
+DIST thunderbird-128.5.2esr-ru.xpi 880797 BLAKE2B c304ce15e1cbc29169617c15cc4a7c077e0cf6687e6d5431826c3babb675899d4bcdea1adf6adca21cb7fbf87ede39ab44473327828c8d4a3c9a4db50c133ea9 SHA512 533191408dddc5647d4fcc679fd9a6c35d85ee8cb783ba27bc70c82e9ce86b1779f39411665c528449c2a87a47e01759ee30aa8dedd01ba75674eb954d53f59f
+DIST thunderbird-128.5.2esr-sk.xpi 792220 BLAKE2B c32364e73b5afe15c7f221e383f51105408aa63cfa97d40bb9d7ce15d23132530ea92acaf5de4eebb32dec5694fadc07d1720c84eedd9eee361f73a6ccb36018 SHA512 209510e7c2a81e9f4e0a8108c4183814495693d685daab38e43c4c1aea0d8da6aa0d7f82cc59052f2b214e9021d15cdf32a00f4953eb3550204ccd9a0b992c89
+DIST thunderbird-128.5.2esr-sl.xpi 751649 BLAKE2B 00b911a8a80004915978e128a3357c1278558913b71c88f836281cc9e6911b3bc7e27854256a72518acf19681b516c283c57be435a1fa4da7b04aa676e9e4344 SHA512 958086f57266e0ef3b23e87ba00e4abf0439490f36f20909bbeafc52aa09240e8a2c92e100d9f6682ab0607b2338d97c4efac3e30de7713ba0f78d80a476c633
+DIST thunderbird-128.5.2esr-sq.xpi 774998 BLAKE2B e7506409ef7749023393ece0ae2ad39b8743e46caf0a37b1b96f91a795fdab1b42019ccf3597dcf15d877bd56b23a9f4249abd102d9882bdbb0433ea82030fdb SHA512 1c24d524d5d24522625dbf188e1ddce210e010782aeff9e5307a29ec5f3c37884716f71e23c995120b2972f1a916e090b8eba870753556ece71e56a9bdc2d9c8
+DIST thunderbird-128.5.2esr-sr.xpi 771751 BLAKE2B 7df3e2c7e93a625eb3da198119fc00129705dd87d5baecc6352df46d9d8ee857db1099a936ab0bc9a38bd90504b230a9d36fbbf88816274a9a503e3a4ed585d4 SHA512 5ece48a1d570ca786491fdd5ce66b6705212f3003d762a554df2679fcb3b1e0b80bad3542bd89048dd172a7c04136a633a3224e259de3dc000ba6b163574f623
+DIST thunderbird-128.5.2esr-sv-SE.xpi 754939 BLAKE2B cac67a27b2e9db5cd3311cd6c5b35054bb77b4f0ec0cda5b355c1fd30c8184eff2140873da3d4338af56a841bc59a98bfc127752dded3b36da7f0faf7a158a14 SHA512 d5d2d828e53d2c6f23029ffef9a7bb55a44c30a9e71309bbbbd95d8dab43cb863cdcab6bfb3bcd804ad71ac3cd716b1bfa691677f895305acd0421508d02428a
+DIST thunderbird-128.5.2esr-th.xpi 819692 BLAKE2B 7b8dc11120387c6eb0796692aab196e6aaebf052c60a19e2c33b59a8a9546b62d80de285539e9a586bf37c256a1d38c83d65b6717b35dbd184db47fba78e6d52 SHA512 220fd2d22028e83a216b7d24c4a9b4e97b0d49eb73f4ad89185dc9afc4a0a2361af7ec2d7054100ce37c8bc121815a0d164c65bc7a0a2dac88ebf6036afeae5b
+DIST thunderbird-128.5.2esr-tr.xpi 765549 BLAKE2B 1c2a07acf012eb8e499cfdf9fad9a9e7d1dfe7190337a4caa7f49a2671b66726119b9a4621cbc7f6bcf5741f18c3e4644eb4af84097c37cac3793af13b4d765d SHA512 dc070219867392f7ada37765743a8fe2353738604a7af0a12e17169103b7afa9bbebeb8a18545b36a332f637025c6d966acd70b4ccee87cc7834491592b146c2
+DIST thunderbird-128.5.2esr-uk.xpi 871378 BLAKE2B 6c736615a368a72874d4db2575aa18716f2822c0e26022f4380170b140edd36da6cfb7a8c198e38fcbc9468cc04a94908415247544ea99e29c74c0b9c983f57a SHA512 10df2ace0e3f58e40013598e7e9330faf072570c7fc357188ad95280fdac9049e612d5ee13d99e4103304831d6b220e401f99a1b520e88682d69d64a5720dd85
+DIST thunderbird-128.5.2esr-uz.xpi 592621 BLAKE2B a85e1630a03d1ce8f0c6f54eec9bef24c49849363f418817ead14a658448de8709f2438077390678d129a8dc4218cffcd9d1e2d0daf2cdcfbccc3e090709ab66 SHA512 62827e1cc174e23322670eb4cc6b48b40753a183c17ac801b36613a5c0db0c7f15870fc2cee9917855781349fd627d8a0050a38ed0e2241a12bd85b73120b4b9
+DIST thunderbird-128.5.2esr-vi.xpi 794034 BLAKE2B ae0d1b8b7c780e421bc567d8ad35972c1083c959dcdc33c41fd39e836e42b9709e95ca408a6e4220248975fc898f68f8143e260462b339acf77a776c797ecc39 SHA512 fd924b279e85096c35707d53519a4aaba150944242f0ab86f313703a2c8a7a07040a466c93bff82793023ccb8b2a39a51277f197d8da42e9a430495000549dca
+DIST thunderbird-128.5.2esr-zh-CN.xpi 794062 BLAKE2B 7690a4514b2ffb7fcf2fc1d26b149ffc7f82d9b7ebe97c6e144f6ac684b2a3e08f00044a3237233e0d17db44dfd58d4859efcd93101f16954bc0027c9700f175 SHA512 fa77d6463508e0da35852625072326ee95d2bb66cc8a184c99187c7facc05a642b3097c6a03ba19e10a793c5f4bad51c6fd7adb3c44ccb96cbb06adbcc625f4a
+DIST thunderbird-128.5.2esr-zh-TW.xpi 797336 BLAKE2B 78b896488e71b1db7990409fe178ec2309d050a7c1b20c9b1e8276fcfd893c59ea4cb77b9241198e54e0d3f34aee8de53c540f2ec9a75cc1112d0f24a203ff3d SHA512 fb6e0c3cfe49494d678252b7d0eb8ef6d19a85502979c3c6965da76cae2c1f8dc1aafa0df1a15c39c9a26f0ecb4a335acdf4d6539a2ed0b35a625eda84994f62
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_i686-128.5.0.tar.bz2 89736855 BLAKE2B 263071429e6645429a580521b8add482103961d5bd0abcaceed34939d08a25e5ecd5933d151c378514b7d6d0d6e66466a1abc21badcffcd90518d5505272cd8e SHA512 7ee42f0406b6840ef66595288cf0915349943ece43efc5e4f6770accee050753dffadf0e814416218082b54d33f508188fc1cf2f2f9d3d3a282709587fb302e6
DIST thunderbird-bin_i686-128.5.1.tar.bz2 89488401 BLAKE2B 7f0c1f927f0cc888a5a8b8505c1490cdc599083971ac673cba5b25d649803db8c0f717afea7d36b8d2b5c177c99ca4b955023abc0479327309f4b607775657fe SHA512 7982493c260c87daf6d0ae00b37f589caa84acfb29c1282477c5bf45b76a9878ce3183de71842639afe20b820c59feb5c557c0517f29f742b8037bc638a388c4
+DIST thunderbird-bin_i686-128.5.2.tar.bz2 89649213 BLAKE2B 066c00f9936563d242cf712ae2f65c4998c585c7cb22f790333d26b460711cae71c9810315eb06703b6246061febf43c583ddf6184537b53b7efbd4582e12b7f SHA512 d7c7cab01b910b221faba14d14fe21302f5bac637149996e18407fc8901b6f84ba71778d3f60f8aa0bcba7f85c226cb1a979aabe092c4cb097a4f883087906f6
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
DIST thunderbird-bin_x86_64-128.5.0.tar.bz2 87344586 BLAKE2B 7441470f12f7d3f2a2d09c108d0e745f76dcf159dc71f8147eeeca6a3f08688beb98fe9cce9fd21ed2dd1b8d801303200fcf2aa2611e9ed289eb388a8a13a92c SHA512 bd870458405b55ee97284ae8173df0ac3521a7c3476bb52af93bcbafd325959d77dad4b283b54c5df14d53799d4e59896cd7327ffc6b15cd2e2ea57c6677d697
DIST thunderbird-bin_x86_64-128.5.1.tar.bz2 87203369 BLAKE2B 5fc414c318d03a3804102efcd758ea81ce8e32a1bb8a671a1d02398f619bd7c90d7721a00756b7c5f82ca934a5518f0de07f6e0e338989c0f6feb75fbc73a26d SHA512 388fdafeb250058874fdada2bdde3135938a8515c86228432dd8b1528acb4643115465044bda0cdf873ed921bb9224ea28145deee7d1a064a95420a4c73ab3b9
+DIST thunderbird-bin_x86_64-128.5.2.tar.bz2 87290964 BLAKE2B 8581600ed080dc3265d17a83ef12ee409d94156d0623c3208d5b81152b825931e053f9dd00b12fbec117d74345264ace2f01779c03fb8ca171b0caf8c81eec01 SHA512 41ad745beef03d804d5049243768b20a555380117016d3c88a2779a41f383958c0aca4ca1898a5e5ee324ae860ac2c77956e226be0ba76b5e11c33f82ad16dfd
EBUILD thunderbird-bin-128.4.3.ebuild 7597 BLAKE2B 3e7b1b2fd73df51a809eb000711c3b7d00fccd911dacf000c3cfb36f7a36f85ee1fd3acd43bccbe63acd224936d93203e3607c13005986fef38e1f2d7408bb23 SHA512 9ce453c3dd8f42c7af27955933c08dcfdbb4458e290bc6f2504e55d874e9ae38b6406036a3cead544011dc631886f79583bfa073c70ce23c6b3a53896e2e5799
EBUILD thunderbird-bin-128.4.4.ebuild 7597 BLAKE2B 3e7b1b2fd73df51a809eb000711c3b7d00fccd911dacf000c3cfb36f7a36f85ee1fd3acd43bccbe63acd224936d93203e3607c13005986fef38e1f2d7408bb23 SHA512 9ce453c3dd8f42c7af27955933c08dcfdbb4458e290bc6f2504e55d874e9ae38b6406036a3cead544011dc631886f79583bfa073c70ce23c6b3a53896e2e5799
EBUILD thunderbird-bin-128.5.0.ebuild 7597 BLAKE2B 3e7b1b2fd73df51a809eb000711c3b7d00fccd911dacf000c3cfb36f7a36f85ee1fd3acd43bccbe63acd224936d93203e3607c13005986fef38e1f2d7408bb23 SHA512 9ce453c3dd8f42c7af27955933c08dcfdbb4458e290bc6f2504e55d874e9ae38b6406036a3cead544011dc631886f79583bfa073c70ce23c6b3a53896e2e5799
EBUILD thunderbird-bin-128.5.1.ebuild 7597 BLAKE2B 3e7b1b2fd73df51a809eb000711c3b7d00fccd911dacf000c3cfb36f7a36f85ee1fd3acd43bccbe63acd224936d93203e3607c13005986fef38e1f2d7408bb23 SHA512 9ce453c3dd8f42c7af27955933c08dcfdbb4458e290bc6f2504e55d874e9ae38b6406036a3cead544011dc631886f79583bfa073c70ce23c6b3a53896e2e5799
+EBUILD thunderbird-bin-128.5.2.ebuild 7600 BLAKE2B d4dc55a307b1bc27ef440c5385bdbce05e0b88169399743f561f8ea0528c92dd303380498ef107fb129084e9ac7f68544c559a7d3089223368ff03331f869f3a SHA512 3aa1d106086d54a7619887bd2a7adadca81992e6a6ee1c3ccd229d444c93bc580ae43aa58d19a04367427f89b65d04327a62c21bac7c03f1fe7d71152c9f47ea
MISC metadata.xml 255 BLAKE2B f54493c82293ca95a1ffd16d6199055650b0aaa18234716339235bab3f14a87327cb04fac6b543f973b3fef8047412e54edf72bf0b8a9424f4aa1d2eb0feec30 SHA512 28c0ab3671ed2c65cd9694181f7f9c4a8bea53dee0a0a06f0d9086166317a87611017b105d5150167597c45a7dd8921182fd6bf9d1b3fc7408c0e94f36189e33
diff --git a/mail-client/thunderbird-bin/thunderbird-bin-128.5.2.ebuild b/mail-client/thunderbird-bin/thunderbird-bin-128.5.2.ebuild
new file mode 100644
index 000000000000..fc2ca95c5e93
--- /dev/null
+++ b/mail-client/thunderbird-bin/thunderbird-bin-128.5.2.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}esr-${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 38a55e07f87e..32afbe408018 100644
--- a/mail-client/thunderbird/Manifest
+++ b/mail-client/thunderbird/Manifest
@@ -135,6 +135,72 @@ DIST thunderbird-128.5.1esr-vi.xpi 794032 BLAKE2B 0ebbf0c3d3b55881d89d1b7caa5fad
DIST thunderbird-128.5.1esr-zh-CN.xpi 794060 BLAKE2B fa0f838e68ea27a51371ccdaab279bff130759e34e83581881f22d569139c02e1e8b36c18b809b93d4de827fe8f09648370642b53f734030a326ca6f0355d44c SHA512 75cec7ad9ee4ea5752cd19111a23957e76052fb4cc97078557e495718afe64c98ad1de37dd83e77b523c66e780de85d3318130e62110171467167a754439c303
DIST thunderbird-128.5.1esr-zh-TW.xpi 797334 BLAKE2B eb72fecbf3bff04d5c9daaead2a539fd540f6008e24f52b4c0b0ae0eb1115d4ed15bde3d801d5e40b1f92812780f6516015369814a9e4adbf93bc60a402dd018 SHA512 860d5328279195bd70dd91ee8f4bcd6ac8fdba413fbb2a4fcf6020955a53fe9452cbf6105e2b2583174d49b519bc9f3663e1400d77ed7e365f0ff6411486da2d
DIST thunderbird-128.5.1esr.source.tar.xz 678670780 BLAKE2B 8f91be4b015f1258709c04deba847e958716888d0d6cbb7b57ffc4528076cb2c9553e3efd3b4423046a433a486daa96b00768390ea0fa2547ff47ed4898da919 SHA512 1dfa0752a1dbfc4d7516beab13e188aa40c145f2eb0554441ecc4dff739cc862c15fdfdd8c0cc026d010ba3caa57d6168da35e484c04989fb6c81f5c09215831
+DIST thunderbird-128.5.2esr-af.xpi 530350 BLAKE2B 78c79e8b168f137426bc12938c4e8f669538635e369d86c745098d07d958699a120073c2736341f4842fc827ee11667b8893831b19088c09a9c4161af08e4afe SHA512 26898351b3b7d27cd3c990a6d17b6f28eaf70aa2736166705ad5034f233cca4701d9e4f27389e698db29d7ba461e9fb7d976ced5fbbfc2d354502e2cb61bc5d5
+DIST thunderbird-128.5.2esr-ar.xpi 686985 BLAKE2B 27a7872965258cc920e9c30ccd79cd2ea219c32b48480798c7392523ad5072c1b40f896e7f43a21c51d9a84fc6128676b42b0204b085e4529608598f82432cdd SHA512 43a8eb7122432805cf16a636a4ff390ec04ca14fd4cce9dcd76f853e65caf955d36fcdd3577370a2b8ecbffad29aa0a41c0ad92fa1ff3aefc6a4cddb3ba1e69a
+DIST thunderbird-128.5.2esr-ast.xpi 561055 BLAKE2B e66c6c16c1508f24202f061843aa2d82bd9d5b2edef0adb208b9afdd292daa2f928557d34750693f28b459275095fdf6bbb7d4c181429cbf870ed6cd0d0e7688 SHA512 2fbb37d6611a4abcd4a84648683896c8f1de015c12afc33e04b17e2339a29dac6317033f31175694869ceec65bee8fa07090d756fc5851da477d5141f501572a
+DIST thunderbird-128.5.2esr-be.xpi 772990 BLAKE2B 348ba443f2d1820481f6e5bf438544ed2dc9ebc02d1dddad180f40146a433bc0df300b6b580f879b0b1defbeca536c2764b85a39486a78c2f7156a16bfa46471 SHA512 b967ec35e454b0581da25088c1db7267533461a09e824d533a0df214e43cad412eb6d413ffe7cff6bbf6840269a3fd9758bd8d2c8072c14372a1381a6739b9c5
+DIST thunderbird-128.5.2esr-bg.xpi 812323 BLAKE2B 420ea917ac83c53e0fd8d4395f4af376aaa5f84836b0aa63cfedb882872f306eca4c29cf1656b0cc535a907743ff1597f7b6b9c5eb00074912176a1ac403aff5 SHA512 4c635e21ffef0f81b8446aec87f583c419128be400846143ed2e142f9233ee56f50ac87e1e41096c6409c9be08f712963fa9e9d87db326badd3da3908ed71335
+DIST thunderbird-128.5.2esr-br.xpi 655127 BLAKE2B 35780a67972c8393625e43759c4986635e08e3fde1816bf56566690d20aceefa0519b960634e861d591189e61a236c2d1d53cd615bf8aec338e7b8d31a0a8714 SHA512 601ae7ca98b76ae4cf5d12d5ef8519741ca1d6788b9231b421a21ec87017c5ca91772dcca127e30ef9222ca49d831209f4dd03b3fc0d17805a588d921f97016b
+DIST thunderbird-128.5.2esr-ca.xpi 711078 BLAKE2B 82b9d5d7031a66e658992434e9522534437d6e72d9e509c3e23bfdfc2952162738ef6738c6610a16a660a726fec2d4828c5a9daffcb08c7d9ef58f634c411798 SHA512 2f0e00a4f4fc9d2d38a099a30b2d6cfbe3f2301075de481604b482e73e5f23b5c81eb36f600e2b0caf6b3c1a3388adaf963040677d6dcf4b175b7272780f66e1
+DIST thunderbird-128.5.2esr-cak.xpi 672196 BLAKE2B c989a4d4f49258da61b8824ac17c3b2ef460ab726346799254aa88417a17909279b26216812e756f8b1512919b84288e968e40403dcae8853bea04ad46aef370 SHA512 a81e9d2037aa6f1c6679f9f956000c5b539185dcf6723db5f63622cbcd47e7db1dec2d60120bf83207d5c1c789cf8cb40b43fba2aee794dcde7a57ef4bbb781b
+DIST thunderbird-128.5.2esr-cs.xpi 791609 BLAKE2B 8dfdb3530778018d924015d59bfda12edcc88c0416e6cbc0f502b22e1ab7ef3687b70345e867083b11fb70d7fb97e9d769efae73bced78a3ba02e3fd11c16be8 SHA512 f7774873e38c2f1a18d7af07f368227d4f9c1b4814d14d310157f7298a737bba9c5cc676ae9c768c1d62019870d813e11dd292955e4436c804840f99df24a4e9
+DIST thunderbird-128.5.2esr-cy.xpi 756816 BLAKE2B 11ff55ce797925ecc589858a2f686f6600ca9968ac77aaa9b3de36d683ad11ed5620c34b81063128afdd959f767ebf8c043c2b8ac263edcd234036b1c5977305 SHA512 f784a7821fc9a03a151062bec2b51c8d8c4bcbba4145895df8fe8f2c5988eb3eb026d1d4a355cc51b3457628097bdfd578aef5f1a8720ab6cb4a4a5ad05af628
+DIST thunderbird-128.5.2esr-da.xpi 740057 BLAKE2B 2f8fc6939499959ce780bfaa0261fc3885784f0d4bea34830d67bf1d95e2ef8c805a1013bc72b6fceb44aa980ed9454834dc10d7a5722df1380b3a94df9a927e SHA512 4bd3aaaebc23628afaa23052a83a63d36f38990ed6285c450c0009434a4a8ef066bb7f1f4a31f9ab2d5f106720ca9137903df0d1e6e6c52310d6a8e0e22dff46
+DIST thunderbird-128.5.2esr-de.xpi 772204 BLAKE2B fbd8149adc5867b2f7290973358714be2591fc5afb35e509d9a876db295cf8fa59550d0691f0f4ba33c36c408940dbd7ca19c5624d601fe8044973564ea85ec4 SHA512 6f80c58ca097e0f1e77fb6f362d7954abfe6d8e46b0021d4003e3cb4888c7dd96df1ed29a5bec806062669552b4877c33a4831d37868d9f1c51fc2c0a8899fdc
+DIST thunderbird-128.5.2esr-dsb.xpi 790369 BLAKE2B 1be4aad6ea99cc6bb9c7a67e0f17a5809a21e026f9014a78740cc516cae5aa30d04f379d7f999b1ffb10fd3c3e79e147e3bea1ac9a47e8c54dfaec6686e21f05 SHA512 fa7d27f609213520532abd299e6d498563ef177c3aa6a3737920f69de614e7861f6894d63cfff49288489017bafa1fe1ef2d8695fac182e881526141a7c5419b
+DIST thunderbird-128.5.2esr-el.xpi 895923 BLAKE2B 36aebb0891eb53199aacc1e1bcf436fe36aae5ab0022b9a3ea35f36830c84a68623f6774a217872429b2a07bb0a3eec4cb1a77f1474397ff4d476f56d3ceacb6 SHA512 6028fd57f8d2017b4d170dee5b0c715cb6522a93cb939dbdb239952f2d43cbede762d94e013d1ca9721598c7d6c04c677a78a296cd394d508bae2eeda0e36d80
+DIST thunderbird-128.5.2esr-en-CA.xpi 705213 BLAKE2B 228fece39282a4f6e1016c13c537a761ab00110c1244b172b6f976abceb8f591c9eac755f1352ee5a8923452f7bec359f8c803512214ef7760a34aa205d6ed68 SHA512 470f4422cc6d9ea4baf4b402a56b7386bc29295d378ffcfd501f946ef3c6bd595a1b44ed67a1cab0ae64e31185e577fdb21e98b8cbb403684f757160c36a6e49
+DIST thunderbird-128.5.2esr-en-GB.xpi 709687 BLAKE2B 1f41941eca01c2413eae7f830b0894f06ece348d2e02629808bfc06d9ba66a1547009b1fdff372b121ad356405cc4fbac7282982c32983a5a2885d6f3f4256d5 SHA512 f3b04ae32c4881fa7e6d2fb6924a4417f7e0ec49699e42c630300ff7be246814d8dfb6031bca1ff9841dce1fa99628935453d5b59fb2605b00e98ec19e7ab1ed
+DIST thunderbird-128.5.2esr-es-AR.xpi 765754 BLAKE2B 84b62cfe9305698553ca423523eb3e1ecd7c06585a04ee938fb371ec4d15ac5743c2c97ada0bed48815b4b94426e7428c2b5c3ecf7ec8dfbf6f3ef21f376607b SHA512 abd71dc6f85430dd67b01839aac3355a529b738b7adf94a58440eec147f948f629e639fb0484d47add2817425e821ab566a2481ab5314b8af0b570de3da64b39
+DIST thunderbird-128.5.2esr-es-ES.xpi 733784 BLAKE2B 21d72b0bbecc3e9f7d12588675093a8bdbb3a789c92ed457541cdab3584be6b3c5c5e01caa9d368712f323f0221266f1fca63fd83cfcbe83cffb56147ad849c6 SHA512 dd5c861b3a44d3a4f64c90c1e0c9f8b8242df62d22525decaa74518d2fadf228668a1ae742d3fa55d18062b3558cb3db51bd4f8d4d9bbbd1e9b93dda8603bd5a
+DIST thunderbird-128.5.2esr-es-MX.xpi 749782 BLAKE2B f5d06f932d76af75c088c4f36c31d8350281825c33cf0de608a1a0ad5e0b12d61b7de38b7cd5e5626bdc7cdf21df87c9ac9c1ef225eee4a55f66bcb31f97ca00 SHA512 7db2c88e575c15182039a7b664b11f51903223024b0b356cf5f46fd9f0808be007cefed489b757f9ee949709e19995d0b9fb2075d730103b6a99850beeb43e4f
+DIST thunderbird-128.5.2esr-et.xpi 696774 BLAKE2B 7e1c7e8d063e8cc8b7e9ff7c1db086836bdac420362bf89bbfee58a57bb9c9144fa31da57e59d1b1020eb7e51bf9691a52e8a9bda27584740d68644ebce20a30 SHA512 2660b238fb4c7203b2502f7a511877eb73d10531c286363d0831fa3290797723137cd93ad013a781698455779728caed082469fb9d5c55073f2c6c5715fca150
+DIST thunderbird-128.5.2esr-eu.xpi 740305 BLAKE2B e45902eb59c9d43ff4b7d29d111cb2edb471ff57e04a3c02a0d75ecf8bd35c855ece88b08c7873678f3e8e8b384f754eaa6c54b6e56a464319c44e47d4b8a067 SHA512 18e41f83f4a0c1daa284d6d637e57ce2f282ee85817306c79473cdc6aa8c10c87a88fbb4470cf59f116057790323cf96114880d77b8ce0604db77b878949141a
+DIST thunderbird-128.5.2esr-fi.xpi 738931 BLAKE2B 9f98ab9b4d6526d4081f46ead47f396a3750582e22828f3d32ba2f9844067c3e4f77a272de7e944e0053c1561f9a89331290b8acbc5eb3f399401778767cf0dd SHA512 bec2372a6131d8c753176216184ea00a3b7cf6cb9d09e8c0b56d0cbe58f1fedd8bb948bb672b0c68e89dbe19bb7191ee6069ca2697cbd5c4877dc10614a3887f
+DIST thunderbird-128.5.2esr-fr.xpi 777365 BLAKE2B 4ce55cea3413a228c67a96adb702221c8f312dcfc986215fbb100ba00f63057e2c7ab9bcade5fc7c48b5676cffe7666fc161e61794b6af738ef32539d35221fa SHA512 b12c687198d92033be620360d4aaea6f3d6861764470215c36b9e2e574972829959cfab9783b388dbae0004ee02884c30abbacf91cbdc88a52fdc9b36570be1f
+DIST thunderbird-128.5.2esr-fy-NL.xpi 759928 BLAKE2B d0b72042e58f66eef030028b4bf227995eb77b93412b5c895fa1c50c4805888698b50982d6f729a626c1b087cf7ad9f9dd64eea4d71374e24fe7368e5a48b996 SHA512 3915302d69e08569d8142a05b0bceedfba779fe3c3ec1d37be0897f63f794d14f5d8764dc3b3addaae58ccc44e3e056e97703f7707f98c383b8a4b032b58f43b
+DIST thunderbird-128.5.2esr-ga-IE.xpi 616368 BLAKE2B 58e42a03ad3bba2fd60d69694cb2f59b0639581797c96c32ab042317b2e873557b221fb9a8fdbc4e190c9ddfe48dbd912f385d058fc9e5e9463e86738446cbc0 SHA512 dadc86451a95e751f3da901a34ae5bfc12f23d64799389c998f39744849ee55960271a9a1a96e8a6bbc9fb5bc29441d1ced84d25629ee3963cb25136773fce83
+DIST thunderbird-128.5.2esr-gd.xpi 729139 BLAKE2B 12fc76df9bc58f5744f99f6d06588feaacc7a94f03f73dc8535e06926739378b877188878ddca8c21fdaf5fd72150d99b9b73897c84276a29e8070b65749cc45 SHA512 45f409d86ad4cd3dc6293e09e9729ef951f50643d1a7654c02bc5cc34a799f22f45bf835d7234fedd1e6cd0c4b02126b591f315a684b479a4caddbcd18e87731
+DIST thunderbird-128.5.2esr-gl.xpi 742175 BLAKE2B a09a56f3224cb0f3137e6fb10dd0a34e04a54051fb9fc0717d6c4661eee3d72fae8c69d44822c1d20f6349fd1eae32c478f132d52933a3bafcf29ae23eb784ee SHA512 e7291b71fb9e7661aa0e9ecbaec656858ae153e28aecf542530a06694bc823e899a333b344042abbd561655a9858c958c2cec32fb2fd3e8ec2654b3508824b2a
+DIST thunderbird-128.5.2esr-he.xpi 703448 BLAKE2B f8ad589bc90131224c725058bf743d1503993ae3dd6c921c9067bb0fb1e18933e9f5cd81eb11831314636888ca651460e40727a77972781d4d7f47823aec3326 SHA512 983fd05e82f235d5559b321d3a9365d4d9d7aac57203bf2d1291915961dc489510aa3cba3adf43fe503ba3952a88eedfa71f8ce93e53cf5a5e20da71e19b457d
+DIST thunderbird-128.5.2esr-hr.xpi 720119 BLAKE2B 70a5cc2ab288197b297583bea9d749edb263cea563ce09414e7640b56e1947474225e1b771dd3199c2a304d74ba9dd35155bd456d09a32937f07ce65581f18fb SHA512 51f3b757bc7c64e68733b4f88507fa80396c02324017bda7b86bd33136a274c21710a4b9274f1fbb64812eda52e471de1a53d80fb854c63781852389602ccb1d
+DIST thunderbird-128.5.2esr-hsb.xpi 787748 BLAKE2B 8bb48f541ac3ef3439d137701e789c673caeb4f09cc67c73eaeb08de475fed9769804832ad6597f1817691f26fec86a7ac5928b6c5a51efb6a0d06beae3aa34e SHA512 7f01d3abb1127cfc3abb863f2fa67fe6606d5b55af4d8adad739614c5eaad7f48a808941a5fc4702cc2032ff2d06b9e062d5ff192310c528a9dc3972e17e40de
+DIST thunderbird-128.5.2esr-hu.xpi 790231 BLAKE2B b38f36fa3792d70c7951d9d9ace4db86be9417897e83758ec86c4cb36216e6c6d7e825f06542697f766f75b5f9e33ebb33fe998c6a38baec94541bcdbcd924af SHA512 4b09c324d68407ec195a64d033b4ae7e51b3761f4904cb5f8767599815b2802a5056c150193316bf8e0a6eae21c8eb46a074d1012bce129af33507dddf29882f
+DIST thunderbird-128.5.2esr-id.xpi 710327 BLAKE2B d50b871c78f99b202d28c99275e03c1aace4468af05f6577d87e40de22e5ecc80d15c88129a3236e0b926a5b85a396ece8c2a3c5bd476f7fbfdccd6eef11b9b9 SHA512 1f2a39ef486807a9de859f65cedff5ee9abf8713abd5438ac6da58589783e10c5ef3f32ab1a374c53b79163b4238f01568c00bfe92d8de7e590f7eac0f470afa
+DIST thunderbird-128.5.2esr-is.xpi 751187 BLAKE2B 9d6f5a27ceb539f7b6411dbc2d651280435a717cbb81838ad0b1cce636a83649a3160acd832559bca0ce9d475849a8d3208e7574e23ecc6df8c5732889c31bd4 SHA512 c12135ea63903579d6521e2b140cbf92c1449baa1e56d67c51b29d2843d7ddefcbab686d25cd71df5df7f52d72366c7a194b65b4bafcf9f7c0814feb0d0b71a9
+DIST thunderbird-128.5.2esr-it.xpi 697097 BLAKE2B 1992fa23f6b91c2a784777e61c7e67bbfd35a84e997fa7b1c7465b136e5197c4f89a98a8ccef871a74c91e7505a521dae7f51a79238ff4a78316035159eb10fa SHA512 c7800713e93a14463dd3383166a908fcd0891b7daf49097f4987d0848da9dbe75c0d3e33caa9bc5b187ea9e0cae7725daaa80d763caddd9cb9f2140fdb4ba4c6
+DIST thunderbird-128.5.2esr-ja.xpi 817723 BLAKE2B 6ec76ac7a42e00e6d3ac042d14f9262d2c45abc84ace74478a08fc4afda31d537b0e3625915537b87f652ed68277ac4af824db7b934c34a1d79825cdb73ea250 SHA512 9ba860573a1ea14921be07728f1f9ab225baf58cb90fd7d5a576649e0b305ad84e4572de84ab8e556864581822bef8eeb7a25331656bfb788be193bf15af7495
+DIST thunderbird-128.5.2esr-ka.xpi 796714 BLAKE2B 197193ce27d734b0145a13adb02c895084f1f0c7e81633b8fcf890e6a12cc10cc25d8a5f908acca59c381f4cfed7dc777c0de7f04cf4b442f1102cba67dfb1aa SHA512 7cdeb1073af116acb22745dbe2b6c0924212a33f403bfd326971fc430a2cbd460201a673afdf3b80d18381ca83ec0db6375533fd14d59eab6557a7f6a40b4892
+DIST thunderbird-128.5.2esr-kab.xpi 735474 BLAKE2B f13e11e823db622934941d0943bd8cab779139d7bcba50429222c7a42935947240345b83d40b7ee0a7f4f224a1471955689c71517afee24400d21b8283cf2434 SHA512 22a45f54271f74b3ad6f27412f0f76c226698a93027bf438fceff28015591eda6574c3b92f4fd62225015089e8e90134cafa0953a1e93d9b058974db57ef10fe
+DIST thunderbird-128.5.2esr-kk.xpi 865512 BLAKE2B 64c54248c410684a7fea2e1349f858fe4f59da5aeac8c2eca5c7734c0f83f600298bb5521835e5e1c3234e26b03c098bb6c60a195ad9aabe3f3cd6ea6382ed0a SHA512 7e86a9e8e809fe4163743971945bd9c8c5930383261003094241eeede42f834125fb281fe6c3a556c37486f0f8c69128820abb8f22752b9827a47b9f1617fb9a
+DIST thunderbird-128.5.2esr-ko.xpi 762642 BLAKE2B f3a38ff807d1c948e0300c1ef659f12b2d1e7843ac1e45949603bf8e2ebca88c6313dcaed128ce059a2e5fa90e3571146736279f1ed9c6d9cca5616eef0a56c3 SHA512 7f84df22490bfced0999478c3944ed199e223eaf11ded342a0193ee8d112fb54c82a9596ed8d3d693a98e310a440d6b6725cbe4af8f36b005e4222d0f3420617
+DIST thunderbird-128.5.2esr-lt.xpi 701411 BLAKE2B ee51a6bcd3d1ffcf25d3bff7d311171ecfcb2afb4eda11a97a53bd72f83a4fb0a41be657c0498eb0b96aa28fc8e4334e3b62b3174331025e68821663e5e7dcf4 SHA512 7981a0b240cd8fe42aced4587563a0da30ec35c8ed737d3f424a5f3634266505d345a100be547ff563fb78ed4a517765bbd049e6338de470dfd6f1a9db0bea33
+DIST thunderbird-128.5.2esr-lv.xpi 625981 BLAKE2B 6fad1fad86dfc661394e8734d5c3c93d668cce50358849c1500e1c063de83f7d34e364f9a0a7e9e7596352780faae9947f3288c6a0930f8b8de147cfd7949165 SHA512 99c88ba45f6ec3a69514671df362f4e8f3a0dab9676f0484ea68fcfe0ebace02e971ad88279087a7fce7627fc3f4460d3c8de5f98923da9ea554a3e059cf9957
+DIST thunderbird-128.5.2esr-ms.xpi 581575 BLAKE2B 80cc5b7acdd1376c033a806db9b95349fd980d7cdb418c15d34099ed87c79a49c035af3b4cafb081a9661b28d24d4bb9a74e82dd8eadadaff9be524e00428cd4 SHA512 cd338556365ce583beec84e982b5b9222a8ec26e36ddc619e2a7a3f3ed0e7f187880c91cd576aeeac1b368badcd4856a507c1ae69445f4b3a3aa822c69082799
+DIST thunderbird-128.5.2esr-nb-NO.xpi 708561 BLAKE2B 5502ca4daf1b4fd74e98ed666157d42bc9ac53e5962de012cac14ebd879063c7642138a92905c5b513a0041b79162e3f09f1703cf91d1a80426ca94831233244 SHA512 14501fc7c3a95ea975f96f970b0cd17b0d9c6a00d7d6f58718848922d01aa363b20026e1f48c22ce14458671d8c070a91aa8adbe79971bfcc50bce98671ec3c5
+DIST thunderbird-128.5.2esr-nl.xpi 751614 BLAKE2B 6d85397f712e8b028de0cdae60886c3060058148656c1518e092e3f227bd9642ceef8ee6c849a33a7a9a5692b8b39dd1d69fd2575cf63478304ff8105563ac5d SHA512 4f8766aca5b9c36028bf3fa156961ef8d93edc040717c29b2d1889b680eccc201ba21010bfdb9c83d6cbcc017213f1062b6720c2e8e225feea88cea6029ec651
+DIST thunderbird-128.5.2esr-nn-NO.xpi 729659 BLAKE2B bd52a29dcc102e2caba6344ae93ed4686f210209b5cc30ff7caaa95d99ea23991de60065ccec7af84056955bab80a52a11a487bfa4486badc1863d0eae2d3cf0 SHA512 17bed73d6abd99d6f642ba1a2fb9319ee6828011c60ef185f9d711299e030ba6840cc8cf6cf5655bf4f2d74ab3bd35b8c3f3a699de162671183b8cdde6b872e3
+DIST thunderbird-128.5.2esr-pa-IN.xpi 688138 BLAKE2B bea45460600966456bd158a4901ee7896e67995c4d15485bea0495024571aea6d668675a5904b6a5605b4be7d8139f35d6657836048ef27abda0e8e5c7d8d032 SHA512 921b84e30b9183a718540fdeec7edc05512e26724b4b90e61ac559a7b8baf48381015bad1978d60c9ea8bb2d50f91b87d255d9cfe9ccbf90aa0311420d74ddd5
+DIST thunderbird-128.5.2esr-pl.xpi 770780 BLAKE2B 82c89bfd9f66168a0ec9e5d050078e377c4d11870dfdbe3c61f21b11b921a1c551e785b9d784be081ea7df7233a34c8edd5bfbd4aa5b00eba3a009c3a4b0c7c5 SHA512 6e7528e84881267402a865db2e426d3fc8f07038704f46b05bcf834776c5947ccebdb1f2de9470b0def40cf8eea9ba1b91d3e74471ea087c8dc4cb297f9dd159
+DIST thunderbird-128.5.2esr-pt-BR.xpi 758845 BLAKE2B 1fc493a31795ace3923369a29df0d74544a10b90db117188b8d69022a715297edb871742bae1ca03c0f975cf87b3a73854d880426620c8107e2c6e56d73dc117 SHA512 c21b75fe6a20a8ffd029d578f251a9aab924ccd4ae85d2b1e352b378f7d0d3c8a7542408197547cf4e9b9fbd6218bf5e2930ac1206522445d7ea4cfc29212cc5
+DIST thunderbird-128.5.2esr-pt-PT.xpi 752024 BLAKE2B 50e2d1781eb74c06f8e9d62a22ad1e3e7d519788da0dae089936579966014488a516db87bafe21037005d9ab846ec6a30e4bd2791f4e90ac23eed38117d641f3 SHA512 a8269fce1289fed61bde66f0c4c6d125fea031c881e8a6e6f2fdd2a4a5a4b71130d14fa52f0b8ab8b3e19935de7adffdf04c7516efacc9e67b7d5661863abd52
+DIST thunderbird-128.5.2esr-rm.xpi 754446 BLAKE2B 27ebb2ef921f3022c1804ec3b1409aa5e1abf8459112f066d86dad1a3c68e48566639d28d11a134d5b95f5e4fce91056d03577cf7120434e1557720a9cc3fdaa SHA512 4141051a0309d9a31c37ae660e2da0460701098093af1293285c774fa2c5908a24f16dce85fd3dfdf32394072ac112b98e6c8717a140b4e0630f258eefb2e728
+DIST thunderbird-128.5.2esr-ro.xpi 670227 BLAKE2B b1e176b863a448bdee5495e43b3f19f2b2fb214b0b39b4b8ed023382e1f91f61656a116b4feb927d31b51933e0d26da4738699629aae3ff1b1e77d4817886e11 SHA512 7c30e12fbba1d50c95cd1be2efdaeb8befec5086df31a6b8152e26f3671bbc6a2f810e765dd49b0b3213633cc3da16a045bbafa48302eb1ec22fae683f377201
+DIST thunderbird-128.5.2esr-ru.xpi 880797 BLAKE2B c304ce15e1cbc29169617c15cc4a7c077e0cf6687e6d5431826c3babb675899d4bcdea1adf6adca21cb7fbf87ede39ab44473327828c8d4a3c9a4db50c133ea9 SHA512 533191408dddc5647d4fcc679fd9a6c35d85ee8cb783ba27bc70c82e9ce86b1779f39411665c528449c2a87a47e01759ee30aa8dedd01ba75674eb954d53f59f
+DIST thunderbird-128.5.2esr-sk.xpi 792220 BLAKE2B c32364e73b5afe15c7f221e383f51105408aa63cfa97d40bb9d7ce15d23132530ea92acaf5de4eebb32dec5694fadc07d1720c84eedd9eee361f73a6ccb36018 SHA512 209510e7c2a81e9f4e0a8108c4183814495693d685daab38e43c4c1aea0d8da6aa0d7f82cc59052f2b214e9021d15cdf32a00f4953eb3550204ccd9a0b992c89
+DIST thunderbird-128.5.2esr-sl.xpi 751649 BLAKE2B 00b911a8a80004915978e128a3357c1278558913b71c88f836281cc9e6911b3bc7e27854256a72518acf19681b516c283c57be435a1fa4da7b04aa676e9e4344 SHA512 958086f57266e0ef3b23e87ba00e4abf0439490f36f20909bbeafc52aa09240e8a2c92e100d9f6682ab0607b2338d97c4efac3e30de7713ba0f78d80a476c633
+DIST thunderbird-128.5.2esr-sq.xpi 774998 BLAKE2B e7506409ef7749023393ece0ae2ad39b8743e46caf0a37b1b96f91a795fdab1b42019ccf3597dcf15d877bd56b23a9f4249abd102d9882bdbb0433ea82030fdb SHA512 1c24d524d5d24522625dbf188e1ddce210e010782aeff9e5307a29ec5f3c37884716f71e23c995120b2972f1a916e090b8eba870753556ece71e56a9bdc2d9c8
+DIST thunderbird-128.5.2esr-sr.xpi 771751 BLAKE2B 7df3e2c7e93a625eb3da198119fc00129705dd87d5baecc6352df46d9d8ee857db1099a936ab0bc9a38bd90504b230a9d36fbbf88816274a9a503e3a4ed585d4 SHA512 5ece48a1d570ca786491fdd5ce66b6705212f3003d762a554df2679fcb3b1e0b80bad3542bd89048dd172a7c04136a633a3224e259de3dc000ba6b163574f623
+DIST thunderbird-128.5.2esr-sv-SE.xpi 754939 BLAKE2B cac67a27b2e9db5cd3311cd6c5b35054bb77b4f0ec0cda5b355c1fd30c8184eff2140873da3d4338af56a841bc59a98bfc127752dded3b36da7f0faf7a158a14 SHA512 d5d2d828e53d2c6f23029ffef9a7bb55a44c30a9e71309bbbbd95d8dab43cb863cdcab6bfb3bcd804ad71ac3cd716b1bfa691677f895305acd0421508d02428a
+DIST thunderbird-128.5.2esr-th.xpi 819692 BLAKE2B 7b8dc11120387c6eb0796692aab196e6aaebf052c60a19e2c33b59a8a9546b62d80de285539e9a586bf37c256a1d38c83d65b6717b35dbd184db47fba78e6d52 SHA512 220fd2d22028e83a216b7d24c4a9b4e97b0d49eb73f4ad89185dc9afc4a0a2361af7ec2d7054100ce37c8bc121815a0d164c65bc7a0a2dac88ebf6036afeae5b
+DIST thunderbird-128.5.2esr-tr.xpi 765549 BLAKE2B 1c2a07acf012eb8e499cfdf9fad9a9e7d1dfe7190337a4caa7f49a2671b66726119b9a4621cbc7f6bcf5741f18c3e4644eb4af84097c37cac3793af13b4d765d SHA512 dc070219867392f7ada37765743a8fe2353738604a7af0a12e17169103b7afa9bbebeb8a18545b36a332f637025c6d966acd70b4ccee87cc7834491592b146c2
+DIST thunderbird-128.5.2esr-uk.xpi 871378 BLAKE2B 6c736615a368a72874d4db2575aa18716f2822c0e26022f4380170b140edd36da6cfb7a8c198e38fcbc9468cc04a94908415247544ea99e29c74c0b9c983f57a SHA512 10df2ace0e3f58e40013598e7e9330faf072570c7fc357188ad95280fdac9049e612d5ee13d99e4103304831d6b220e401f99a1b520e88682d69d64a5720dd85
+DIST thunderbird-128.5.2esr-uz.xpi 592621 BLAKE2B a85e1630a03d1ce8f0c6f54eec9bef24c49849363f418817ead14a658448de8709f2438077390678d129a8dc4218cffcd9d1e2d0daf2cdcfbccc3e090709ab66 SHA512 62827e1cc174e23322670eb4cc6b48b40753a183c17ac801b36613a5c0db0c7f15870fc2cee9917855781349fd627d8a0050a38ed0e2241a12bd85b73120b4b9
+DIST thunderbird-128.5.2esr-vi.xpi 794034 BLAKE2B ae0d1b8b7c780e421bc567d8ad35972c1083c959dcdc33c41fd39e836e42b9709e95ca408a6e4220248975fc898f68f8143e260462b339acf77a776c797ecc39 SHA512 fd924b279e85096c35707d53519a4aaba150944242f0ab86f313703a2c8a7a07040a466c93bff82793023ccb8b2a39a51277f197d8da42e9a430495000549dca
+DIST thunderbird-128.5.2esr-zh-CN.xpi 794062 BLAKE2B 7690a4514b2ffb7fcf2fc1d26b149ffc7f82d9b7ebe97c6e144f6ac684b2a3e08f00044a3237233e0d17db44dfd58d4859efcd93101f16954bc0027c9700f175 SHA512 fa77d6463508e0da35852625072326ee95d2bb66cc8a184c99187c7facc05a642b3097c6a03ba19e10a793c5f4bad51c6fd7adb3c44ccb96cbb06adbcc625f4a
+DIST thunderbird-128.5.2esr-zh-TW.xpi 797336 BLAKE2B 78b896488e71b1db7990409fe178ec2309d050a7c1b20c9b1e8276fcfd893c59ea4cb77b9241198e54e0d3f34aee8de53c540f2ec9a75cc1112d0f24a203ff3d SHA512 fb6e0c3cfe49494d678252b7d0eb8ef6d19a85502979c3c6965da76cae2c1f8dc1aafa0df1a15c39c9a26f0ecb4a335acdf4d6539a2ed0b35a625eda84994f62
+DIST thunderbird-128.5.2esr.source.tar.xz 674696420 BLAKE2B 3dea8ca8a7eb1e155e50a3a476d8b448c2e810eb347731efd078e15227073fb31c43eb8456678df21d834702085f3470248c51929fe01ed8c02735aa64364739 SHA512 cbfd4b1a7245c2a2f6ef9b2cf69d95a8095eba855755d00fd397351b21ad504733084d6f41801f4114be7015332b8db65e5290bec45f5321efc753412b9acecc
EBUILD thunderbird-128.5.0.ebuild 34115 BLAKE2B 767d96ad146357bfc9bd7507d5f46349056eeb7ef8ee75277cc8310bba9690a662cead451788d33d71c971119121a645b6aea2e8368cb79ab06f9e01fe1fb255 SHA512 03edba5771b90cb823693f60968c7e5a125221c4a11585ea631bf2cadb6570d832414289050f8338a473d19a518dd4f4f72b67a157712a4ca1c0f58ecc0728af
EBUILD thunderbird-128.5.1.ebuild 34116 BLAKE2B 9f8cbd07cfa3db2b6a506edd79197a050ee8006eb2c2ce7be79c2a9ff3626fa186eacdafadec26a9594609d1842ad846eda81c94ef3da3907094098c57065919 SHA512 b7e28e21debdaad028c4b104e2ba7dd224a2451d138a6744e7774c6ec5214ae32b7dbfd3cce3bfba89c46e39ffecef01adb93e1bd7909a8002b9d023e877bc4a
+EBUILD thunderbird-128.5.2.ebuild 34114 BLAKE2B 78e7040558a09322b2768aea5239c3768a34a01b647c96833544f3f888178666e8d667a0ad81eef4f73c02cf21fab24971bf3ee5e9fbe1439f59d040e9a95d05 SHA512 0c11b6b8593da023b466ffe67edffbef703efd32b1635426f17a071bfc0a03662bb93b8f1642e983bbeb4a8515e944e15c66ea80b7745d2f41b2d9b98ffa5e81
MISC metadata.xml 2277 BLAKE2B e4681b61ae7363d0442ad382e5972c7654624c2033e43559d9d751af8abcebf6e1badede00b68d8f28ba0eda4b060acb3f730b79181d0acfc286c1a03c7cc2fe SHA512 517460e6a4ce6232570290b69596bc2e1913c7a95ef4df62216df4d3be7b8c83247004916ed5e74d285951d9e9d96fe80406d128a0764ab41aa26458805a1513
diff --git a/mail-client/thunderbird/thunderbird-128.5.2.ebuild b/mail-client/thunderbird/thunderbird-128.5.2.ebuild
new file mode 100644
index 000000000000..59815787cf73
--- /dev/null
+++ b/mail-client/thunderbird/thunderbird-128.5.2.ebuild
@@ -0,0 +1,1163 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+FIREFOX_PATCHSET="firefox-128esr-patches-07.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 '
+ llvm-core/clang:${LLVM_SLOT}
+ llvm-core/llvm:${LLVM_SLOT}
+ clang? (
+ llvm-core/lld:${LLVM_SLOT}
+ pgo? ( llvm-runtimes/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 "llvm-core/clang:${LLVM_SLOT}" ; then
+ einfo "llvm-core/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 "llvm-core/lld:${LLVM_SLOT}" ; then
+ einfo "llvm-core/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+ fi
+
+ if use pgo ; then
+ if ! has_version -b "=llvm-runtimes/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then
+ einfo "=llvm-runtimes/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing!" >&2
+ einfo "Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ 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 debug ; then
+ CHECKREQS_DISK_BUILD="14300M"
+ elif tc-is-lto ; then
+ CHECKREQS_DISK_BUILD="10600M"
+ else
+ CHECKREQS_DISK_BUILD="6800M"
+ fi
+
+ check-reqs_pkg_pretend
+ fi
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != binary ]] ; then
+
+ if tc-is-lto; then
+ use_lto=yes
+ # LTO is handled via configure
+ filter-lto
+ fi
+
+ if use pgo ; then
+ if ! has userpriv ${FEATURES} ; then
+ eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
+ fi
+ fi
+
+ if [[ ${use_lto} = yes ]] ; then
+ # -Werror=lto-type-mismatch -Werror=odr are going to fail with GCC,
+ # bmo#1516758, bgo#942288
+ filter-flags -Werror=lto-type-mismatch -Werror=odr
+ fi
+
+ if use pgo || use debug ; then
+ CHECKREQS_DISK_BUILD="14300M"
+ elif [[ ${use_lto} == "yes" ]] ; then
+ CHECKREQS_DISK_BUILD="10600M"
+ else
+ CHECKREQS_DISK_BUILD="6800M"
+ fi
+
+ check-reqs_pkg_setup
+ llvm-r1_pkg_setup
+ rust_pkg_setup
+ 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
+
+ export use_lto
+}
+
+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} == "yes" ]]; 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"
+ elif use arm64 ; then
+ export RUST_TARGET="aarch64-unknown-linux-musl"
+ elif use ppc64 ; then
+ export RUST_TARGET="powerpc64le-unknown-linux-musl"
+ elif use riscv ; then
+ # We can pretty safely rule out any 32-bit riscvs, but 64-bit riscvs also have tons of
+ # different ABIs available. riscv64gc-unknown-linux-musl seems to be the best working
+ # guess right now though.
+ elog "riscv detected, forcing a riscv64 target for now."
+ export RUST_TARGET="riscv64gc-unknown-linux-musl"
+ else
+ die "Unknown musl chost, please post a new bug with your rustc -vV along with emerge --info"
+ 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, since it's not activated automatically via "known arches" list.
+ # Update 128.1.0: Disable jit on riscv (this line can be blanked to disable by default),
+ # bgo#937867.
+ use riscv && mozconfig_add_options_ac 'Disable JIT for RISC-V 64' --disable-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
+
+ if [[ ${use_lto} == "yes" ]] ; 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
+
+ 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
+
+ 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
+
+ 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 [[ ${use_lto} == "yes" ]] && tc-ld-is-mold ; 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 llvm-core/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 exec_command="${PN}"
+ local icon="${PN}"
+ local use_wayland="false"
+
+ if [[ -n ${MOZ_ESR} ]] ; then
+ local desktop_filename="${PN}-esr.desktop"
+ else
+ local desktop_filename="${PN}.desktop"
+ fi
+
+ 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
+}