commit:     987c3d41696b95624551567ff6ca2faefb6a05d5
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 11 19:42:58 2022 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Tue Jan 11 19:42:58 2022 +0000
URL:        https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=987c3d41

mail-client/thunderbird: bump to v91.5.0

Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 mail-client/thunderbird/Manifest                  |   64 ++
 mail-client/thunderbird/thunderbird-91.5.0.ebuild | 1130 +++++++++++++++++++++
 2 files changed, 1194 insertions(+)

diff --git a/mail-client/thunderbird/Manifest b/mail-client/thunderbird/Manifest
index a525c88d..5a31df04 100644
--- a/mail-client/thunderbird/Manifest
+++ b/mail-client/thunderbird/Manifest
@@ -127,3 +127,67 @@ DIST thunderbird-91.4.1-vi.xpi 706360 BLAKE2B 
9c06b70220402d9c04256528fc62260b77
 DIST thunderbird-91.4.1-zh-CN.xpi 714609 BLAKE2B 
5681115a1b4418d4c82308115b42910401d62ccb718679b3aa5075fb703cc4bf186885ccb83f51240594e576e3037de8afc9ad5ed0f61d01e978960e377b5976
 SHA512 
62dd3f25eadad68192f9e9a2e24580ba19638bca97ad243d2546c0912cd2db1107303678ec68f06bf7205f182582449ab030dac56371987626ef9fdc7d0c6523
 DIST thunderbird-91.4.1-zh-TW.xpi 715956 BLAKE2B 
6f500459be5ac8e610909c4802268f9e142071cb0549864d540a913a17da9125069017660f062eafae737707e5e1bf9e7fabe1a7f0e6055e1ddd05d27a12a25c
 SHA512 
33905cb91ecddcf63240886fd51dba3454edf23fbf09a3ec19d8ea0585b5e54bcc79dd37b3e87d1e571bb5c4c317fb732546d51917b9e41b47339e3819a8fa91
 DIST thunderbird-91.4.1.source.tar.xz 408805472 BLAKE2B 
b12d55ca45579c7a7d230100b9e4af1e6461ba6b6778b23d951ccfb3b497e2cf86e3952e09c57bc3477742f66283e9101f70edf70cf3bd92296982b25ef6c448
 SHA512 
aa442ef886277f5091ebadff907a29451a0ee6542f24adb5c1fb4223193d719c2cb01474d3ccd96067695b19ce3cbf042893b0beaaeb7c65e0660ab5072bf82e
+DIST thunderbird-91.5.0-af.xpi 560262 BLAKE2B 
3f4844b361344f8200b6c40ec1d1509e16fb6ec7bf830e0b83ee14138e7c7bfdda532d584d9cb9839267ee9869425abc352cec9d0ab6869aad20e39e6798cbd6
 SHA512 
1d583ce659d11d249886c02a66be83b4f3a0ee9350520ed77d1195dad61f5ef4ac5112db44ad2b325446e7016be0429b0c9886ecd019831de50619265b69e58a
+DIST thunderbird-91.5.0-ar.xpi 660337 BLAKE2B 
c81e81ea6f504c2e54d1f77b456dd6514f8378feb59d6df4bf699e0a8e84ac3bfa65a30aa0a7f3cbb9f974967c0e139fae7562b2f0ea55fbfb4e034787412077
 SHA512 
c9dcb61473e6633215765c2c1b804fb32774dc837d1ee14700fadb85648ded747f25e0cfeee3b08b5cf2091eb9dcfaef46b5975a995744dcca40f6bb4bbf9a8f
+DIST thunderbird-91.5.0-ast.xpi 577075 BLAKE2B 
b10d1f5bb2ea4d234b89dd682050d5c63a84754d009681ce8f7d8cbbaebc574c275b2b1925564b443a9d19d11b50f249677d5a79b8a4d2a5f091fcbb72b7b265
 SHA512 
049117594201f6f0c7da08bd39f0c130da2ad5a9c0fe17962d39cdf6a169e2b3744328e02b6cbf60627b757aa9d87774fcfe0b817e5a119ebe4f7ad937ed0245
+DIST thunderbird-91.5.0-be.xpi 687231 BLAKE2B 
0c698f208743934fa214dd43d85d836160568ba10f06aaa530519fb6a2f0f576b15cac36fa31a1f8e39f82c770de7ccba62175000e19ff773ba3410bbcc1e4de
 SHA512 
7dbb24bc8b772aaa651957251f411b7c72ebcd2e31bec2dec3dd264461f22c58b26097ebe614af864653161af185507e6145ac9f66d5f7f25d7ee49e4a5cbd78
+DIST thunderbird-91.5.0-bg.xpi 686439 BLAKE2B 
6161959e9b5451d900b7f651f925b4d4264364381dda1473b539fb7b9daaca5eaf86f228102f5fc9b291f578dfe889e61296e08fbaa134bc97dd86239041a0ad
 SHA512 
28b79f72052f9f9dd31feb625dc8fff0030196cbcb0e485614418eb60cee29cd2abd1c77714bbc264a3b4ec0939aae38f5286921727ff6107d8e1b73e9d95a57
+DIST thunderbird-91.5.0-br.xpi 616043 BLAKE2B 
9f411454f13fe868a8d6aa0498e8b3a86c4b9170df5672d31dc32932e1ffcfd8b0156a9b1fe0c979e329f4b02f83443a8416c18328af6c789069eca624e829ef
 SHA512 
baf25da22d05fe0f33c612d9caa8ae5a9e139dbb128b03582a484a3df8e97ca19c3e500f812c4fe0b9a7e6639392c39412353bb2d03a1e6d6f1ea1b4fa1080b2
+DIST thunderbird-91.5.0-ca.xpi 641185 BLAKE2B 
4929e8005140eea93af0e4299d68eececc2ff499b68c8863a14bf54358d85bf24d37562572773bd92200364a9a8f6d19544278e7cd43548db355a316437a0f07
 SHA512 
7303741a8e6714258a3d70b330c9a04c2f4c3424751b3a505297267f9cefee05dc70e06600db739b9248f6330118ffa08062495a9e4fecc661dc1ee7b4a78b04
+DIST thunderbird-91.5.0-cak.xpi 647243 BLAKE2B 
e67a96d46a177a0abf4a9bf754daf219ab69231ac0ba130307a75313eaba22c205694d8cd9d9179a92588609d19e0ea0b5ca969ad968538bc9a8bbd75f03fae9
 SHA512 
fdd5b5c47c54acd0145ca12256c62086b118622833784c71694fb7c538ced673f7f541f87bb79853af98a018eedcd7b1c0629d1faeda789be25ab672cf47c6b1
+DIST thunderbird-91.5.0-cs.xpi 698291 BLAKE2B 
96d8863b6cc524148c7769aa56184e210a97f063847d9bcfb6b13448148cc23a86d0d3ab092662dc6e04b2537edcb629725885fd967c8c82717107f892bc473e
 SHA512 
3ac36037db8fcea253ee11af2898615f31effa0b0eadf39771bd7aa0b307242a234d5d4e893ffedc3d4cc408c21898383be57a434b682d74f87052b0231ce2a9
+DIST thunderbird-91.5.0-cy.xpi 674001 BLAKE2B 
821c964fed50ad424d7e1dc50f7fb8659275d70b5e414502a2d6b707d2ff978dc2d99e2f69cc6b15c8d3e07777676d4efbe5ef3746efd722f416b15d8d88a094
 SHA512 
66ea0dafe747707bd7b9c2c2d3827863b4249da6f0322c32bc0c198e71cda1d49fdcb1068ab03e0af0ddbddd1c39c3e554eeab5fa5a44cab10e31bca0b4f27e1
+DIST thunderbird-91.5.0-da.xpi 655976 BLAKE2B 
52afae037f34a0981e32a852363598a223dfedafd6a158b0761119a790e39f87c9468196d786755074de1cdccd2614a9f72c291a229ce751d6b1d04538147a3e
 SHA512 
61bccca0622aeba1cfd42f4bdb2d0423510f9d80ccbaa283f0cb50cf65ffecb17c3f11b565fae035571b124b7523210706f94652754dc41cf191d080e584d0b9
+DIST thunderbird-91.5.0-de.xpi 687030 BLAKE2B 
e5d7f56c8abfa0c0c55d061e70428ad126a5f873d2de97b57b481a6a85ee7be7cde8bab606adddb44f4422c9f230242633ba2dca67fce3b4294ff540f3f585b1
 SHA512 
4fd746c60a9864dd57bf86d23abac2d1093611595ccc09bcafe00b163487989b8431ac5b25f40ca088e7c28101403e92cf08ea1bb0eb0fe690e04af08448a0ca
+DIST thunderbird-91.5.0-dsb.xpi 707241 BLAKE2B 
df1c76d0aba54ab961dd8ce9d331647ab4320b6eb4014eb7417b9976d153984482bac06be99bf0678e10e838bf7bbc673bea37658660dbe924321664d164ffe6
 SHA512 
0b11b24df7ce17d83597da687f949829d6b2912447c78e301d824fd36c71efe5ee81624471e473ddd3eea3da7611f352a7b1f90799882aa4372a8141e64ead85
+DIST thunderbird-91.5.0-el.xpi 803553 BLAKE2B 
8d383aa1b72f22a5acb1bc79512a70ed5fe58ce5a4d3423e66db06bdcefb1ff1f2005ce1ef0fb723da7a918e2c6614937f52e714d24b06d9f221a71edec891aa
 SHA512 
eba79d9e4bdabc44743d3f58ed89d43cceca9d63779161cc8bbb989d9092952494cb97860823f21913f48b9a2a58783a385a7b61176d225fe1f8153bcf97c5b8
+DIST thunderbird-91.5.0-en-CA.xpi 634148 BLAKE2B 
7eff355460a007a59e90f7968e0b595e8af94b0f4b49362cdb6c3a9407edb920fde6fa01a70c4fdd2697a672a0d3824f68dcf0f957f189ab4c68da6e2ec52ab7
 SHA512 
b292bcd58cdf411082760fee4994fbb0ac3e0d075ae725a8dd90b0b62abfe5f6fe1997deff1995d1af3c6d03ddcd9b5c97115434cea845fa96350bd29ad06487
+DIST thunderbird-91.5.0-en-GB.xpi 636519 BLAKE2B 
100305bdcb6249156f8f6be4e3e1bab47c69a1cda6cbc68fc2b70a08fcf6b1f3000a36a1118bcd0a998aa8e2a282d32a8609d18fd60efbd5c76654d8a9051cd4
 SHA512 
67c003f9e3058bdbeafd72c9e429c23c8d6b1ccd4de24642255ecf9f8e09511e3715d8222edc18c915608df9f9837a623ad6fd580821973389331cfdae2d838f
+DIST thunderbird-91.5.0-es-AR.xpi 685109 BLAKE2B 
75604d9b5f066982ec9d74bbd8f5213992533bce3fbaf16deea0e8e727cee99e3627e18bd7fe676baa70dd7a8d1b6e3af6ef5448faec06051d2ac944f9738588
 SHA512 
a2fc1fabbfcf3760e69417470969c95064678683655a0c3f036b6a9fb4faf94f5a4bd617cef2e21f90a7051fe5682adcc65f215cff9803538c2e73be57565648
+DIST thunderbird-91.5.0-es-ES.xpi 573866 BLAKE2B 
052f02b81dc2c282c409e555e2901f43dcc661621ab593adc7cb06f54b6ab5ee30c0a041b510846ea01811c28f4462d0f8370e98955425966875cc11bb597fe3
 SHA512 
21dacf1de047cd3e87be36948d985377cbd0e47ad101740e8f6be5eab6b26df56699d852ef836b623e0a1cd32e2805020cc7e674e5b9ba38ce48eb1c62a58cd9
+DIST thunderbird-91.5.0-et.xpi 598857 BLAKE2B 
4807f38f420bd2a88eb7d5a0cbb77f8f977cf97e764e9a7ccfc2de4832a63962bebe593a7a69cf139c4abd3bc81e3d11cf452c20c56d3e526ed656ddc8657ac8
 SHA512 
eae960d5cb2afe459105d3fcfc27114381d32353748c6acb8240f632b54cfaea2b9b85722bf378b188deb6cf74c0c838e2cab974906090a45583a7fb6b7d07bb
+DIST thunderbird-91.5.0-eu.xpi 666128 BLAKE2B 
39dd5cce497d5509f2759ca14adfdcfd8e7e6fcc536383e9c0d36a21b9d8f6c29c13f30fee6081f88f1cf8e74200251267c805646d466618b0b1dbeb2c0fa699
 SHA512 
074fd37cc69a527e723384f1a31434e660bc821b233f6b03b3792e16709da8ff3139fe3470e1e47ac69b17f603d1594891c74656044b4b1bfc5d849f49c70170
+DIST thunderbird-91.5.0-fi.xpi 664680 BLAKE2B 
0c0fc207b7f54bccd7ea135670325f5d1f4d0db17c990855092ca1d94d03ab441deb934d4b0d46e340c46234bc9ef4610a39c4cac11688df75060408c3d034a4
 SHA512 
b4b4a09fe1562961ee4515a8c9acbe996a38c9aa09abe4ff7d1017f6a7fca35d360e30a64128b0cdc439228ccfeaef76e320b9a6c8aa575fef5bf701ebce2697
+DIST thunderbird-91.5.0-fr.xpi 697508 BLAKE2B 
edb68cbddc612f69827b8a253c75ad353d32b097565b1db6c45e33db7d4d31152b80df3a9f367039ceab92f7b1133fba17313f2dead753aa128878a576e430cc
 SHA512 
d5f246e9639905b92e6e6e5d2cc90639fd7431b4d93fd78d77aa277e34fbbe3c773577e8bbe953ea49aa96a2afd2fd83a3557e086d0c8bda00dbcc8148f38a7b
+DIST thunderbird-91.5.0-fy-NL.xpi 680176 BLAKE2B 
24fec724137c7313ee892fb8d15c2fc8b806082e3a6b03aea003b71071a45633e4b0ad3ac410a86cb06520036f2b078dc2fcb371f012e142bc5d2948cc1d6b2e
 SHA512 
3187040d7762f0a611f5239740de9da6c6577445afce6c8c3389de024b954e266cabf5b8912de7c88318e2b3297ff56398adf797828a965bbeef7a29b4bf72c0
+DIST thunderbird-91.5.0-ga-IE.xpi 601923 BLAKE2B 
417ab87ecbe2f3ccdf6a79fec1f9a1d1930d11efa964e019fb8d2ee03825ca2660750b4963aaba816cc2f356f776072055dd03c36b7e2d19abbd2574e4b8347b
 SHA512 
5c242fb88d531e75e92d4c3030a0339e1d07db464000fb2e93eda49d186adec0a4664cab490694d15ea6173846b6700cbdc83e4ef6c7677e67c5f736b15e8813
+DIST thunderbird-91.5.0-gd.xpi 635802 BLAKE2B 
af095848a441324f560d80469e82910a408b949cab62822abb0e51ebc9959a2807fa5adf7028fcf96ce8090ef7f75ee3b3844c51b6c598ea172e722805c8ddcf
 SHA512 
2a6742c698d0d248b7c647dfaee828156ff402e8ffc34395e64ebe82d07a5e0c78030c22d2d137b545b871f9b5fde6357fdf2aa4208fedfb62c13b044a10fda9
+DIST thunderbird-91.5.0-gl.xpi 671102 BLAKE2B 
150d054df194f4a5137161b1a6eb316675cb01453ec2dc536cb90f57bb17509b82a510fa715a1951e136a0b347de31b3473e0217ee6d12cf3d94807fe8072dea
 SHA512 
285a7d649b07f72d3fb099de2e3701d7c4ecb5777b28d1e1272f126ca2e1da8d0cd0f215841e8b4e37a253ba896eb9b7d20bcde5c8d663e7cb463084c163efa9
+DIST thunderbird-91.5.0-he.xpi 665959 BLAKE2B 
16e9e81e7aa7a34a266f9b20dc7ca6a18be9110ef6418c6db703f83109d0bb8fdbf9dd5f5c48a7866ee5fc1a9c4fa50e75ccffa244b282ac76da8923de329f13
 SHA512 
7d00e7819ddc7606e34110658c817a6845f14b39ca2e8aa7ed314fef56579d296123f23650487a17887fd384160659787a6aa468bb3dbedac71ca21159a430f8
+DIST thunderbird-91.5.0-hr.xpi 641199 BLAKE2B 
076f53809926f3bd318989a821a2d8c4f7a7268eff398119bcb1308c4a7a9d5a91189b44c4a7743afe658666806299fd7da82f8aa2b3e98845af22a9dff07e6c
 SHA512 
81fb6e64b6295d4d1a0d8cab94fad7479017934f72e23b33f3eb95d9e8c77f640c07cbd58a0bdf931c2af9b30b9cf3b6aaeac22b622bfa2262f45602b4a13be0
+DIST thunderbird-91.5.0-hsb.xpi 704709 BLAKE2B 
5db999a430f68b3365855ff29e7ba4de342a5a21133ef81f5207ceb3ad539fd47bcf39fda9e7f5e76f69110619a05489875749da29c26da273d81d1ec111ec7b
 SHA512 
70655592c441057325df9851cf8cc6db7c224fb6632db78d1d5741142868e7bb3b1fc8d80218779f3b5f0fcdedd5304ea249639263aca4665aafd8d23b5e8305
+DIST thunderbird-91.5.0-hu.xpi 707544 BLAKE2B 
3f42410a3f92f8780a0911e9ea0f14eac4693a1a3b879f908901eb2bf107512e612ce067aee25a578ec7ec4bde480c20ebfeaaed9633376d03641175d0fcf1f6
 SHA512 
a127041eb65510eb2e48a113b671547bcbb023b8ac760dad60e8932c97a2273f6ef5bef8b4a73df9e53f12592cd3716eefa2b547b300584b269e9915a800de12
+DIST thunderbird-91.5.0-id.xpi 639060 BLAKE2B 
ca531ac9cdb4add95d5e6134da67a84e4531fedf5ccff70ff0a336f4be41b62396f595d138f6939fe4fb9c96116daaafb963433aabbb810a3d7bb479fe935da3
 SHA512 
99557be72ca2a7cb9ca21250aa308e28eb8e3ba8b418e66c9734990f63b7198a21242086b9018369e1351b5e82efa3ebdefd07468e43f729390dd1305ac9260e
+DIST thunderbird-91.5.0-is.xpi 575021 BLAKE2B 
28ce5d17a89824f8969267550b3de6d95327137ee1ef5c98640f3469b86fc99932b35904e35a7536b7c63afa15b883c1b1f59c5673c0fa8d732922c4a2193fa2
 SHA512 
07bf839cdb55ee2ed79e944e8d3bb1552ef26046a01e2c16737d192a2d0b34312ba52d651c186cf6a276c73967fd1f24e5a9d0886c509456e1a261e0ca75918b
+DIST thunderbird-91.5.0-it.xpi 600165 BLAKE2B 
f598ae5807620139f2941a7d6a57ed288e0f5d2649ddb7a4e34d40200301e768dc61cf628ccb5c6cd3b8f05ea7329f3132230a68016fab0d725e9c73401196cc
 SHA512 
4d4a69ed49aebe64a85227b0a874a5cd0053d5082b45999f58bf89e29bdfda462a41587cd9be2e7f2a8a561998f265fb6e07ca9fdff38b8fa7ad6fdc28d181c1
+DIST thunderbird-91.5.0-ja.xpi 741256 BLAKE2B 
22a4a2e103b13234620f140bde0e05d64fa656e3a84d91c7ecf2216225daaefae4fa31fd64f98d5691befcdfba39a66eda1d867b3a377eaa0b1b1d8b4ed1f2f7
 SHA512 
3733197389060cc9794ab73a60618b8ee37cbc4cde1d758271c7d9e8bd81c3ee02934b454f25eac274c317494c151d228770b99dbcac54f7e2d898940e0b9c03
+DIST thunderbird-91.5.0-ka.xpi 746755 BLAKE2B 
cb83acc85ebacd71539fcd1caaaa2b20a69da00f57895021db95ff8e3d2bd328dbc8dd149825af81ab5abc6264682042b0828936a3f27d003d2317ce95d7eec8
 SHA512 
9fa6a69785a3af9415f634a8252e6adfcd61e99c0bf1810c6ceb7a85c5dd71394af2cd1628c3a580366a3a50a9bb7f7b5f823b943014bb70ff64b0798203c60c
+DIST thunderbird-91.5.0-kab.xpi 672066 BLAKE2B 
ef572a608656f4db856156d2f30809cd4361c57a3a7fd42f22981c92107cc7fa3890ccd85184eec12f3b6e79339ffed85e28d7fb7088f03c14d1ce2ec3522289
 SHA512 
d53fb40f94a3d36fdd8cd6f9d7aa1129cf1257f675744c1b6ea4e2cd94b12ffa7eb2d4b0d06439f7990d9c735e333d681d5233c6ac483f5181d652d61be6372e
+DIST thunderbird-91.5.0-kk.xpi 731376 BLAKE2B 
332f4de0402f0702493958f81bd6d502bc95e276ffa57ea10c648f50b503448fc3a148c83f6b0bd351cbb57143205c207bfad356789a04cd409608fe90782105
 SHA512 
760ede6e8eb998066c8254071f970b95d3998972c3ecd085d36fdb7a21d02080bad982c4b43f8351a4c90a30699c18a03c6d4c5f9ed1143391c2ac52f8431f19
+DIST thunderbird-91.5.0-ko.xpi 695485 BLAKE2B 
07254febc295306bb820032fc15c72afa0c4b38dba9458e4a5e89a707da8832e3c5a8d6438f52c5f394c270cf72d7a20a48cfdc294002d03c20baeb1978eed81
 SHA512 
570b99abbd73fa90a317e782ccea51c3a85f7592aefcd368167ac731315941a139f490e10fa7a87d54674e9930b46cd0997aa4c5406b1ad5cae1230ba293523c
+DIST thunderbird-91.5.0-lt.xpi 688963 BLAKE2B 
617846f26df3b7457c0f1385f29822c24946ec53a6f3e9b9f45e9e1101a772d700a04cb3406a8d7c70a6a46ea227cf3554665a3daf59f37c0e5ce7217bed5d3a
 SHA512 
3e8e668793c10562e16e34aeafe4729598b236b5554a27444ab870bfe83d33729dfd6661b8b18fb9ded4faad64979a07fb777c8a5eff8cbdb61d73ce9617b45c
+DIST thunderbird-91.5.0-lv.xpi 614311 BLAKE2B 
08404143f77c66d0ca4fd2cd0cb0957bce77cb202c09655271e0e28a297baed2b968dc337ec9e7e3bb1ad45ca7a4cfbdcdc802e792472c57914d79480ccff410
 SHA512 
d9bf6ba2613ceeb0200a2d92387ffd6834e3df62686d59e254c7be4b77c1c6c6c82b78e057c9e5d69b4eef0407b87881109444d45829d46dd0cc6ff31dd0d03f
+DIST thunderbird-91.5.0-ms.xpi 574071 BLAKE2B 
0d7056cff6984f664f9f92929bfb766e2345646d5983a1fb1cce7ab675fc700cb683a801cccfac3605bb263113ef90db55a1b4bac7ba18fc004f47ead0f88a63
 SHA512 
0bc7763529ad6c7fe2faf0f23be4c974f3f7f74a193d0600794dd0ace3e0f30879222d1469b325a3d6c463e18ae858b7831fa430779164debd4324c0b8034ab2
+DIST thunderbird-91.5.0-nb-NO.xpi 645845 BLAKE2B 
a0523bdb37a957be78e55ddedac494f65ee7cd5371f40a5665b169d43087258373e2df17465fec6513b0d8e296523feeb4eedab7abca1d05d2ed3eaff2c58bf9
 SHA512 
be3219f44538abcfbe81837e16824a023deb31bd79427c12998918e6e152e4dd1f25802a4fd63c52d2dce81c7c13348a8c64a30708025a0598d47fc630d8e195
+DIST thunderbird-91.5.0-nl.xpi 671294 BLAKE2B 
c2e1950c7a0f1a17d721d0a5ffe5f3d39d162dfe0bc769e51d3e458bde33612099eacd7e4f49899519dde1a5d3f40593faf3d0d8e5dcd96e7615ab35db4ed670
 SHA512 
317256630313832f32bd7ccc8353359474f785f3e155b1c73c361174da456f90b07fdfd0d61c9e6e86333c2f984b5f1d4b3b8423e5ceb220e01dea46670018b7
+DIST thunderbird-91.5.0-nn-NO.xpi 649250 BLAKE2B 
e9f55cdd29c6d17021d12f9333b72a6120b726cc4b47c41ad77fb2388499cc399cde4a4d4c3c16f8ad322b11956919c17418b77118002b4040ddb443727af770
 SHA512 
244e758beaad514059f7a830556d1446c5e0d2fd9e413536ff73cd12f8fbb5bf1f00109874ed3658378fea17ac8969a14cf652e89dbb6dcff5ccb5b9402df4a7
+DIST thunderbird-91.5.0-pa-IN.xpi 647763 BLAKE2B 
fd6e17c07812a36cb07a0b3fd4517cd06b624cdf683359443277eb98d32e437be6738304007177b2715a6e5f7cd3a0a96ff25ab24d2af0b924f3dbb84ecfff87
 SHA512 
e3a4748e9dbd90b9beb16b25d80f0a4d3d145def85b7fc4cf6781ce6f4ce2c8c397514bdc902f13068f3f8467ceab6addd67af345d3af7aa95c7e1ce7a73d837
+DIST thunderbird-91.5.0-pl.xpi 680331 BLAKE2B 
33153c0e9e8c3d8ec338d251efbaec0293ca272a1a4834f6c035c7513a1102be19e4210c854921124263514ddb5a6f9549f1c9e9e4176cae3ef59954593c0464
 SHA512 
6204424d15f7054624eed94e17da2e4b07afc78fbc082fc2ec60c9377cb3a66facc6ceec602bef0c974a9f14519b63e59bef81a8e144712e2c27ee1b4fc08ae8
+DIST thunderbird-91.5.0-pt-BR.xpi 678984 BLAKE2B 
ec92e7fad45f6fe8c6b0b2a19d072718e7d2a4697de9cc0ada283cf946449f9b25ccf28592fbc7f56f1cde0bd0615589eca5c6d73eb2881781a42a18fce28150
 SHA512 
9bb36eb694ee4db446849f503304edd5d8a59b03ef77903c6050440c664c1479eac4516943e36021c4fe1e066d8a32810bd1d78681d39c4148108b8dd745e3b3
+DIST thunderbird-91.5.0-pt-PT.xpi 665735 BLAKE2B 
9800c7ecabba84af448a0095a5f37331b2441f87083e8a1ad50e09314ac710d01ccfa84f8a3c07863b2a8d3205d966bf2d2caa4ea520fb26cae1779ba05686b1
 SHA512 
7473dca967ce1dda1c27175d302144a8ca5606d8930f68337740f9135c81fb7c338c152de6e6443c7d6d67b41c390fe046f59d0cfdc869364fba6d8799f2c664
+DIST thunderbird-91.5.0-rm.xpi 671680 BLAKE2B 
d7b60bd570ef0bde28aefc711765673f1683049d076de275c54561dc592c7803db0846a8dd67c5a57cf82e5f56b81a24321f11151d48b91181a6e795c8568343
 SHA512 
415cce75a32b1e751a4fa890b91b86562ac794876c94d65bfb76841807cbdcd8252db484945699080cf84a143e3fb9a675eb2aa148f374d71a78f69ba03eeff2
+DIST thunderbird-91.5.0-ro.xpi 656488 BLAKE2B 
d1f3e31303b706f96eb9af19783da54fbf2027023645f6a311f667836ae185c167abef016a278d377afe39232bb42b84246558a4a065f98502adcd8aec578d5f
 SHA512 
a9d82ea460a1f3e4e20694c805a01379821689923412bc4d03bac2a14c2cbbf40371f472bd9f25b112b38b2e910c755f749fe2bef11b55581463b56aa0b7de18
+DIST thunderbird-91.5.0-ru.xpi 783362 BLAKE2B 
9bce494bc861aa7fbb427678c2abfcf071724fcab8ffe884191d5f25046c1eebf59d5eccaaf6541667039702820a21249dc206710736c1033d3fd61b0030fa04
 SHA512 
1367f072ff25d2c1f23fb6f17fb9a17ec839d9a5405f338955af00b0c4eaf1469c16acf01aa7554764003d3ecc2106d229c0c24321ba32d67fa5b550bd855dcc
+DIST thunderbird-91.5.0-sk.xpi 707735 BLAKE2B 
d30decc01d625735d7710abccd1760e443aee22850a2fe854c3a8935fc3119ee39dd956b3d2fdd4299af990e9fa9a78bf34c2c0b59d77f73e19ed09078e0734a
 SHA512 
9f0511479ca33a73b582c822a5292e852d94d96696a7c78c54bab7819be08577d01eb60d24b17a154b9073a8b543b493ed1034bd3492f919b35b8b46349b1601
+DIST thunderbird-91.5.0-sl.xpi 660449 BLAKE2B 
5f0db88df501db74fcd5202b5483f187968f2ea910b578d91e3926b541ccdef43bb94cbcf77e377e7cfc95965e1ac399a9d138b877c9925c63f9625aec7cc045
 SHA512 
427e3e6bc3882d8384efb30ef8529377d0b855869fbc21d6ea0d4ef027c1b357dad15e2cf3e03702ca46c3cf9d4b8f5d523d87fe956dc7d56e848ac0e21c1ee0
+DIST thunderbird-91.5.0-sq.xpi 693391 BLAKE2B 
962ab0b60f594291d6d8377d3c80b4170f88b9c7414f86b5fa89c45d3d5be5da6ca37195e47d5579de6b0acca4a6603cb21d37670694eb7ec7747f7bcef76bd1
 SHA512 
58129828e3cf1c3cf7c324a631cbd92efbe10ac7071f012adce9ff761461e6936574f54f8010d664f39befefaab7f69455e37f9dd96f6fd928d65b496da3f85f
+DIST thunderbird-91.5.0-sr.xpi 703354 BLAKE2B 
8ca850543ca0d9c8f9a3b57b0eade1db85a7effe879b6dbe6b213d1c0917c1135a81aa7a85720c4d8cf32a05e86b14143132285df7ea204cc9dabcb74a2ae169
 SHA512 
4167605cf5ce389dc39a525dd8fe26b4a6109ed20e3e14df4170ba4f6e83dd1c4b0dfc28028cf49976a0a74c38416e9287b46dbd5d65c973d9bba6f118595c7c
+DIST thunderbird-91.5.0-sv-SE.xpi 675815 BLAKE2B 
ee26a1e8c765497230db196900532260310261dd21b7152485ff07c4c0fb201cf3974c3d7f5ba42dd496bac992ccfed093c4113c0fabe8bf178ff981631a8978
 SHA512 
e9976b54b4b423f175e4fefb42188d2ac1d22f94277476b46800feca64797b15de89140df04a290de1e8b8fea88de56cf79aa8360da335c4a6b94e92df6f7b54
+DIST thunderbird-91.5.0-th.xpi 741246 BLAKE2B 
8499687e27454534c69c64d64a62356487955d7e457abb192706ca48b2f072bdf8a4e1b4aa223b05b8832687b4974ee00b1e45b77589c8b663c1b69abe045704
 SHA512 
11e944bb36a830b5bdd9f2cdf7e601694230be32ae5c2cb2ba8ff58027b8512cf4a5b17b91a053c92d5eb97b992a121f2479f3835e05b11fa77fae6d011854de
+DIST thunderbird-91.5.0-tr.xpi 685075 BLAKE2B 
de2ac3042449626365f5b541bcb67421a871f98dd33a7bb4b08969002c7a5233144231bf47047fdf0ed5498c2c301d4c679a06f6b79532015f7d6b68c5f05820
 SHA512 
afb13c3c14d1b7185d7b80fa2c870832036f4ae9b2f6064d06d7aba28745e110d8126973ceea6bdfa97480f73a313241ad5a74470e859ab4e1d0eb47acd3b771
+DIST thunderbird-91.5.0-uk.xpi 780974 BLAKE2B 
ec2cd789da897b1366b89fcf4b84814da2e703b204b99df5c177d6caf55e1b93c0301d020b11ad06e22370ba6dfff00ea47d1788825ebb9d4ffd58628f4ecfc6
 SHA512 
7448dd0f609839d3447c92bef10967b183e8ecc40b20e924603cae4e87bb8371f77ce520ded157603ed746328eca1e86a61e1edf7842de4cf811c51723137f8b
+DIST thunderbird-91.5.0-uz.xpi 588128 BLAKE2B 
1653a97a765774808664f8e5eb4974454e0eec401ce58e81847fb529a8ad5285e466d710ba7afc8ddbb588d2880626d4f50cc9ffe4363b682dec491e3f112746
 SHA512 
3bdac984a2cb152ce2ceb0ccd6fdf5916b4a78ad5806ab1181e2551a1d45759e69bc1f1b29cf24f546715a7adf18ed43351dfea13bc4b04dc7dfd9870a1a2cf5
+DIST thunderbird-91.5.0-vi.xpi 706363 BLAKE2B 
0f82ec5c419472ce0af3177d6cfb10f3efbcba831332fb79e6df400866406dcdbb9fb5a9e0f9d99ef1a387a0b0d105c63b9f62feeeac36183be3e9efa2f49ffd
 SHA512 
21157fb61760e21485ff1a375f10949357163545bf9f3a1b0f30ba340103c37584d2e3fe9239bf8cc8010d910fed7030052421bfa4018fecb5576be24d73f04f
+DIST thunderbird-91.5.0-zh-CN.xpi 714610 BLAKE2B 
ee021e530c5fc109ccf6fc006fac56cff382df48548087085113d3358705ba329f1870c37ceac1c0c627614432d00a4efad49800afee9f3deea5ea91743f8e87
 SHA512 
30670fd9ded9c5fc8cb42555742b9f72b28bb3ab79fcd13e570a57df931cbb8160236387acecf90cc00c77f248e2b713aa5cf3bafaeffcada7b874ef44a9a9af
+DIST thunderbird-91.5.0-zh-TW.xpi 715959 BLAKE2B 
291c6fec067909ef19c7134ad1b7d10107ba382f8187f3ff2701a1acc7073d224ba8bc6de889ec66efd3228d60faf5e43b5b5c1d514bf3a02d41be6974a704ea
 SHA512 
bdd0a4d3c2139d951075237503d104e7ed371f6e3aab6ef670304d500394917bc278b2ce46bdd69b4c9e77f975c0985094c529cd2e4dd067d440c243f594f301
+DIST thunderbird-91.5.0.source.tar.xz 405937856 BLAKE2B 
f8bde92181e87608902595001fbf93b583836c5500358230a132e43c98c1bce0533c8fb81746970157049d84cb916d44e6573a4f39dddc4c4c76ee32d3ccef7f
 SHA512 
e1cafbd99e67e8fef346e936890a22aeadded4aa8be604607535ae933251bc1b2a3b56c2b62045b3d37ecb09999adb746157df188d1a32dfe75685f3af959b7d

diff --git a/mail-client/thunderbird/thunderbird-91.5.0.ebuild 
b/mail-client/thunderbird/thunderbird-91.5.0.ebuild
new file mode 100644
index 00000000..833c6021
--- /dev/null
+++ b/mail-client/thunderbird/thunderbird-91.5.0.ebuild
@@ -0,0 +1,1130 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+FIREFOX_PATCHSET="firefox-91esr-patches-03.tar.xz"
+
+LLVM_MAX_SLOT=13
+
+PYTHON_COMPAT=( python3_{7..10} )
+PYTHON_REQ_USE="ncurses,sqlite,ssl"
+
+WANT_AUTOCONF="2.1"
+
+VIRTUALX_REQUIRED="pgo"
+
+MOZ_ESR=
+
+MOZ_PV=${PV}
+MOZ_PV_SUFFIX=
+if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
+       MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
+
+       # Convert the ebuild version to the upstream Mozilla version
+       MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
+       MOZ_PV="${MOZ_PV/_beta/b}"  # Handle beta for SRC_URI
+       MOZ_PV="${MOZ_PV%%_rc*}"    # Handle rc for SRC_URI
+fi
+
+if [[ -n ${MOZ_ESR} ]] ; then
+       # ESR releases have slightly different version numbers
+       MOZ_PV="${MOZ_PV}esr"
+fi
+
+MOZ_PN="${PN%-bin}"
+MOZ_P="${MOZ_PN}-${MOZ_PV}"
+MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
+MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
+
+inherit autotools check-reqs desktop flag-o-matic gnome2-utils \
+       llvm multiprocessing pax-utils python-any-r1 toolchain-funcs \
+       virtualx xdg
+
+MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}";
+
+if [[ ${PV} == *_rc* ]] ; then
+       
MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}";
+fi
+
+PATCH_URIS=(
+       
https://dev.gentoo.org/~{polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET}
+)
+
+SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> 
${MOZ_P_DISTFILES}.source.tar.xz
+       ${PATCH_URIS[@]}"
+
+DESCRIPTION="Thunderbird Mail Client"
+HOMEPAGE="https://www.thunderbird.net/";
+
+KEYWORDS="amd64 ~arm64 ~ppc64 x86"
+
+SLOT="0/$(ver_cut 1)"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+
+IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel"
+IUSE+=" jack lto +openh264 pgo pulseaudio sndio selinux"
+IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent 
+system-libvpx +system-webp"
+IUSE+=" wayland wifi"
+
+REQUIRED_USE="debug? ( !system-av1 )
+       pgo? ( lto )
+       wifi? ( dbus )"
+
+BDEPEND="${PYTHON_DEPS}
+       app-arch/unzip
+       app-arch/zip
+       >=dev-util/cbindgen-0.19.0
+       >=net-libs/nodejs-10.23.1
+       virtual/pkgconfig
+       >=virtual/rust-1.51.0
+       || (
+               (
+                       sys-devel/clang:13
+                       sys-devel/llvm:13
+                       clang? (
+                               =sys-devel/lld-13*
+                               pgo? ( 
=sys-libs/compiler-rt-sanitizers-13*[profile] )
+                       )
+               )
+               (
+                       sys-devel/clang:12
+                       sys-devel/llvm:12
+                       clang? (
+                               =sys-devel/lld-12*
+                               pgo? ( 
=sys-libs/compiler-rt-sanitizers-12*[profile] )
+                       )
+               )
+               (
+                       sys-devel/clang:11
+                       sys-devel/llvm:11
+                       clang? (
+                               =sys-devel/lld-11*
+                               pgo? ( 
=sys-libs/compiler-rt-sanitizers-11*[profile] )
+                       )
+               )
+       )
+       amd64? ( >=dev-lang/nasm-2.13 )
+       x86? ( >=dev-lang/nasm-2.13 )"
+
+CDEPEND="
+       >=dev-libs/nss-3.68
+       >=dev-libs/nspr-4.32
+       dev-libs/atk
+       dev-libs/expat
+       >=x11-libs/cairo-1.10[X]
+       >=x11-libs/gtk+-3.4.0:3[X]
+       x11-libs/gdk-pixbuf
+       >=x11-libs/pango-1.22.0
+       >=media-libs/mesa-10.2:*
+       media-libs/fontconfig
+       >=media-libs/freetype-2.4.10
+       >=media-libs/libpng-1.6.35:0=[apng(+)]
+       kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) )
+       virtual/freedesktop-icon-theme
+       >=x11-libs/pixman-0.19.2
+       >=dev-libs/glib-2.26:2
+       >=sys-libs/zlib-1.2.3
+       >=dev-libs/libffi-3.0.10:=
+       media-video/ffmpeg
+       x11-libs/libX11
+       x11-libs/libxcb
+       x11-libs/libXcomposite
+       x11-libs/libXdamage
+       x11-libs/libXext
+       x11-libs/libXfixes
+       x11-libs/libXrender
+       x11-libs/libXt
+       dbus? (
+               sys-apps/dbus
+               dev-libs/dbus-glib
+       )
+       system-av1? (
+               >=media-libs/dav1d-0.8.1:=
+               >=media-libs/libaom-1.0.0:=
+       )
+       system-harfbuzz? (
+               >=media-libs/harfbuzz-2.8.1:0=
+               >=media-gfx/graphite2-1.3.13
+       )
+       system-icu? ( >=dev-libs/icu-69.1:= )
+       system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
+       system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
+       system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
+       system-webp? ( >=media-libs/libwebp-1.1.0:0= )
+       wifi? (
+               kernel_linux? (
+                       sys-apps/dbus
+                       dev-libs/dbus-glib
+                       net-misc/networkmanager
+               )
+       )
+       jack? ( virtual/jack )
+       selinux? ( sec-policy/selinux-mozilla )
+       sndio? ( media-sound/sndio )"
+
+RDEPEND="${CDEPEND}
+       jack? ( virtual/jack )
+       openh264? ( media-libs/openh264:*[plugin] )
+       pulseaudio? (
+               || (
+                       media-sound/pulseaudio
+                       >=media-sound/apulse-0.1.12-r4
+               )
+       )
+       selinux? ( sec-policy/selinux-mozilla )
+       !<x11-plugins/enigmail-2.2"
+
+DEPEND="${CDEPEND}
+       x11-libs/libICE
+       x11-libs/libSM
+       pulseaudio? (
+               || (
+                       media-sound/pulseaudio
+                       >=media-sound/apulse-0.1.12-r4[sdk]
+               )
+       )
+       wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
+       amd64? ( virtual/opengl )
+       x86? ( virtual/opengl )"
+
+S="${WORKDIR}/${PN}-${PV%_*}"
+
+llvm_check_deps() {
+       if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
+               einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM 
slot ${LLVM_SLOT} ..." >&2
+               return 1
+       fi
+
+       if use clang ; then
+               if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
+                       einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot 
use LLVM slot ${LLVM_SLOT} ..." >&2
+                       return 1
+               fi
+
+               if use pgo ; then
+                       if ! has_version -b 
"=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
+                               einfo 
"=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM 
slot ${LLVM_SLOT} ..." >&2
+                               return 1
+                       fi
+               fi
+       fi
+
+       einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
+}
+
+MOZ_LANGS=(
+       af ar ast be bg br ca cak cs cy da de dsb
+       el en-CA en-GB en-US es-AR es-ES 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}"
+}
+
+pkg_pretend() {
+       if [[ ${MERGE_TYPE} != binary ]] ; then
+               if use pgo ; then
+                       if ! has usersandbox $FEATURES ; then
+                               die "You must enable usersandbox as X server 
can not run as root!"
+                       fi
+               fi
+
+               # Ensure we have enough disk space to compile
+               if use pgo || use lto || use debug ; then
+                       CHECKREQS_DISK_BUILD="13500M"
+               else
+                       CHECKREQS_DISK_BUILD="6400M"
+               fi
+
+               check-reqs_pkg_pretend
+       fi
+}
+
+pkg_setup() {
+       if [[ ${MERGE_TYPE} != binary ]] ; then
+               if use pgo ; then
+                       if ! has userpriv ${FEATURES} ; then
+                               eerror "Building ${PN} with USE=pgo and 
FEATURES=-userpriv is not supported!"
+                       fi
+               fi
+
+               # Ensure we have enough disk space to compile
+               if use pgo || use lto || use debug ; then
+                       CHECKREQS_DISK_BUILD="13500M"
+               else
+                       CHECKREQS_DISK_BUILD="6400M"
+               fi
+
+               check-reqs_pkg_setup
+
+               llvm_pkg_setup
+
+               if use clang && use lto ; then
+                       local version_lld=$(ld.lld --version 2>/dev/null | awk 
'{ print $2 }')
+                       [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 
"${version_lld}")
+                       [[ -z ${version_lld} ]] && die "Failed to read ld.lld 
version!"
+
+                       # temp fix for https://bugs.gentoo.org/768543
+                       # we can assume that rust 1.{49,50}.0 always uses llvm 
11
+                       local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 
'release:' | awk '{ print $2 }')
+                       [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 
"${version_rust}")
+                       [[ -z ${version_rust} ]] && die "Failed to read version 
from rustc!"
+
+                       if ver_test "${version_rust}" -ge "1.49" && ver_test 
"${version_rust}" -le "1.50" ; then
+                               local version_llvm_rust="11"
+                       else
+                               local version_llvm_rust=$(rustc -Vv 2>/dev/null 
| grep -F -- 'LLVM version:' | awk '{ print $3 }')
+                               [[ -n ${version_llvm_rust} ]] && 
version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
+                               [[ -z ${version_llvm_rust} ]] && die "Failed to 
read used LLVM version from rustc!"
+                       fi
+
+                       if ver_test "${version_lld}" -ne "${version_llvm_rust}" 
; then
+                               eerror "Rust is using LLVM version 
${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
+                               eerror "You will be unable to link 
${CATEGORY}/${PN}. To proceed you have the following options:"
+                               eerror "  - Manually switch rust version using 
'eselect rust' to match used LLVM version"
+                               eerror "  - Switch to 
dev-lang/rust[system-llvm] which will guarantee matching version"
+                               eerror "  - Build ${CATEGORY}/${PN} without 
USE=lto"
+                               die "LLVM version used by Rust 
(${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
+                       fi
+               fi
+
+               if ! use clang && [[ $(gcc-major-version) -eq 11 ]] \
+                       && ! has_version -b ">sys-devel/gcc-11.1.0:11" ; then
+                       # bug 792705
+                       eerror "Using GCC 11 to compile firefox is currently 
known to be broken (see bug #792705)."
+                       die "Set USE=clang or select <gcc-11 to build 
${CATEGORY}/${P}."
+               fi
+
+               python-any-r1_pkg_setup
+
+               # Avoid PGO profiling problems due to enviroment leakage
+               # These should *always* be cleaned up anyway
+               unset \
+                       DBUS_SESSION_BUS_ADDRESS \
+                       DISPLAY \
+                       ORBIT_SOCKETDIR \
+                       SESSION_MANAGER \
+                       XAUTHORITY \
+                       XDG_CACHE_HOME \
+                       XDG_SESSION_COOKIE
+
+               # Build system is using /proc/self/oom_score_adj, bug #604394
+               addpredict /proc/self/oom_score_adj
+
+               if use pgo ; then
+                       # Allow access to GPU during PGO run
+                       local ati_cards mesa_cards nvidia_cards render_cards
+                       shopt -s nullglob
+
+                       ati_cards=$(echo -n /dev/ati/card* | sed 's/ /:/g')
+                       if [[ -n "${ati_cards}" ]] ; then
+                               addpredict "${ati_cards}"
+                       fi
+
+                       mesa_cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
+                       if [[ -n "${mesa_cards}" ]] ; then
+                               addpredict "${mesa_cards}"
+                       fi
+
+                       nvidia_cards=$(echo -n /dev/nvidia* | sed 's/ /:/g')
+                       if [[ -n "${nvidia_cards}" ]] ; then
+                               addpredict "${nvidia_cards}"
+                       fi
+
+                       render_cards=$(echo -n /dev/dri/renderD128* | sed 's/ 
/:/g')
+                       if [[ -n "${render_cards}" ]] ; then
+                               addpredict "${render_cards}"
+                       fi
+
+                       shopt -u nullglob
+               fi
+
+               if ! mountpoint -q /dev/shm ; then
+                       # If /dev/shm is not available, configure is known to 
fail with
+                       # a traceback report referencing 
/usr/lib/pythonN.N/multiprocessing/synchronize.py
+                       ewarn "/dev/shm is not mounted -- expect build 
failures!"
+               fi
+
+               # Google API keys (see 
http://www.chromium.org/developers/how-tos/api-keys)
+               # Note: These are for Gentoo Linux use ONLY. For your own 
distribution, please
+               # get your own set of keys.
+               if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
+                       
MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
+               fi
+
+               if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
+                       
MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
+               fi
+
+               # Mozilla API keys (see 
https://location.services.mozilla.com/api)
+               # Note: These are for Gentoo Linux use ONLY. For your own 
distribution, please
+               # get your own set of keys.
+               if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
+                       
MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
+               fi
+
+               # Ensure we use C locale when building, bug #746215
+               export LC_ALL=C
+       fi
+}
+
+src_unpack() {
+       local _lp_dir="${WORKDIR}/language_packs"
+       local _src_file
+
+       if [[ ! -d "${_lp_dir}" ]] ; then
+               mkdir "${_lp_dir}" || die
+       fi
+
+       for _src_file in ${A} ; do
+               if [[ ${_src_file} == *.xpi ]]; then
+                       cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die 
"Failed to copy '${_src_file}' to '${_lp_dir}'!"
+               else
+                       unpack ${_src_file}
+               fi
+       done
+}
+
+src_prepare() {
+       use lto && rm -v 
"${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
+       eapply "${WORKDIR}/firefox-patches"
+
+       # Allow user to apply any additional patches without modifing ebuild
+       eapply_user
+
+       # Make LTO respect MAKEOPTS
+       sed -i \
+               -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+               "${S}"/build/moz.configure/lto-pgo.configure \
+               || die "sed failed to set num_cores"
+
+       # Make ICU respect MAKEOPTS
+       sed -i \
+               -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+               "${S}"/intl/icu_sources_data.py \
+               || die "sed failed to set num_cores"
+
+       # sed-in toolchain prefix
+       sed -i \
+               -e "s/objdump/${CHOST}-objdump/" \
+               "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py 
\
+               || die "sed failed to set toolchain prefix"
+
+       sed -i \
+               -e 's/ccache_stats = None/return None/' \
+               "${S}"/python/mozbuild/mozbuild/controller/building.py \
+               || die "sed failed to disable ccache stats call"
+
+       einfo "Removing pre-built binaries ..."
+       find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) 
-print -delete || die
+
+       # Clearing checksums where we have applied patches
+       moz_clear_vendor_checksums target-lexicon-0.9.0
+
+       # 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_src_prepare
+}
+
+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 && ! tc-is-clang ; then
+               # Force clang
+               einfo "Enforcing the use of clang due to USE=clang ..."
+               have_switched_compiler=yes
+               AR=llvm-ar
+               CC=${CHOST}-clang
+               CXX=${CHOST}-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
+       export HOST_CC="$(tc-getBUILD_CC)"
+       export HOST_CXX="$(tc-getBUILD_CXX)"
+       tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
+
+       # Pass the correct toolchain paths through cbindgen
+       if tc-is-cross-compiler ; then
+               export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} 
--target=${CHOST} ${BINDGEN_CFLAGS-}"
+       fi
+
+       # Set MOZILLA_FIVE_HOME
+       export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
+
+       # python/mach/mach/mixin/process.py fails to detect SHELL
+       export SHELL="${EPREFIX}/bin/bash"
+
+       # Set state path
+       export MOZBUILD_STATE_PATH="${BUILD_DIR}"
+
+       # Set MOZCONFIG
+       export MOZCONFIG="${S}/.mozconfig"
+
+       # Initialize MOZCONFIG
+       mozconfig_add_options_ac '' --enable-application=comm/mail
+
+       # Set Gentoo defaults
+       export MOZILLA_OFFICIAL=1
+
+       mozconfig_add_options_ac 'Gentoo default' \
+               --allow-addon-sideload \
+               --disable-cargo-incremental \
+               --disable-crashreporter \
+               --disable-install-strip \
+               --disable-strip \
+               --disable-updater \
+               --enable-js-shell \
+               --enable-official-branding \
+               --enable-release \
+               --enable-system-ffi \
+               --enable-system-pixman \
+               --host="${CBUILD:-${CHOST}}" \
+               --libdir="${EPREFIX}/usr/$(get_libdir)" \
+               --prefix="${EPREFIX}/usr" \
+               --target="${CHOST}" \
+               --without-ccache \
+               --with-intl-api \
+               --with-libclang-path="$(llvm-config --libdir)" \
+               --with-system-nspr \
+               --with-system-nss \
+               --with-system-png \
+               --with-system-zlib \
+               --with-toolchain-prefix="${CHOST}-" \
+               --with-unsigned-addon-scopes=app,system \
+               --x-includes="${SYSROOT}${EPREFIX}/usr/include" \
+               --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)"
+
+       # Set update channel
+       local update_channel=release
+       [[ -n ${MOZ_ESR} ]] && update_channel=esr
+       mozconfig_add_options_ac '' --update-channel=${update_channel}
+
+       if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
+               mozconfig_add_options_ac '' --enable-rust-simd
+       fi
+
+       if [[ -s "${S}/api-google.key" ]] ; then
+               local key_origin="Gentoo default"
+               if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 
}') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
+                       key_origin="User value"
+               fi
+
+               mozconfig_add_options_ac "${key_origin}" \
+                       
--with-google-safebrowsing-api-keyfile="${S}/api-google.key"
+       else
+               einfo "Building without Google API key ..."
+       fi
+
+       if [[ -s "${S}/api-location.key" ]] ; then
+               local key_origin="Gentoo default"
+               if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 
}') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
+                       key_origin="User value"
+               fi
+
+               mozconfig_add_options_ac "${key_origin}" \
+                       
--with-google-location-service-api-keyfile="${S}/api-location.key"
+       else
+               einfo "Building without Location API key ..."
+       fi
+
+       if [[ -s "${S}/api-mozilla.key" ]] ; then
+               local key_origin="Gentoo default"
+               if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 
}') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
+                       key_origin="User value"
+               fi
+
+               mozconfig_add_options_ac "${key_origin}" \
+                       --with-mozilla-api-keyfile="${S}/api-mozilla.key"
+       else
+               einfo "Building without Mozilla API key ..."
+       fi
+
+       mozconfig_use_with system-av1
+       mozconfig_use_with system-harfbuzz
+       mozconfig_use_with system-harfbuzz system-graphite2
+       mozconfig_use_with system-icu
+       mozconfig_use_with system-jpeg
+       mozconfig_use_with system-libevent system-libevent 
"${SYSROOT}${EPREFIX}/usr"
+       mozconfig_use_with system-libvpx
+       mozconfig_use_with system-webp
+
+       mozconfig_use_enable dbus
+
+       use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
+
+       if use hardened ; then
+               mozconfig_add_options_ac "+hardened" --enable-hardening
+               append-ldflags "-Wl,-z,relro -Wl,-z,now"
+       fi
+
+       mozconfig_use_enable jack
+
+       mozconfig_use_enable pulseaudio
+       # force the deprecated alsa sound code if pulseaudio is disabled
+       if use kernel_linux && ! use pulseaudio ; then
+               mozconfig_add_options_ac '-pulseaudio' --enable-alsa
+       fi
+
+       mozconfig_use_enable sndio
+
+       mozconfig_use_enable wifi necko-wifi
+
+       if use wayland ; then
+               mozconfig_add_options_ac '+wayland' 
--enable-default-toolkit=cairo-gtk3-wayland
+       else
+               mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3
+       fi
+
+       if use lto ; then
+               if use clang ; then
+                       # Upstream only supports lld when using clang
+                       mozconfig_add_options_ac "forcing ld=lld due to 
USE=clang and USE=lto" --enable-linker=lld
+
+                       mozconfig_add_options_ac '+lto' --enable-lto=cross
+               else
+                       # ld.gold is known to fail:
+                       # 
/usr/lib/gcc/x86_64-pc-linux-gnu/11.2.1/../../../../x86_64-pc-linux-gnu/bin/ld.gold:
 internal error in set_xindex, at 
/var/tmp/portage/sys-devel/binutils-2.37_p1-r1/work/binutils-2.37/gold/object.h:1050
+
+                       # ThinLTO is currently broken, see bmo#1644409
+                       mozconfig_add_options_ac '+lto' --enable-lto=full
+                       mozconfig_add_options_ac "linker is set to bfd" 
--enable-linker=bfd
+               fi
+
+               if use pgo ; then
+                       mozconfig_add_options_ac '+pgo' MOZ_PGO=1
+
+                       if use clang ; then
+                               # Used in build/pgo/profileserver.py
+                               export LLVM_PROFDATA="llvm-profdata"
+                       fi
+               fi
+       else
+               # Avoid auto-magic on linker
+               if use clang ; then
+                       # This is upstream's default
+                       mozconfig_add_options_ac "forcing ld=lld due to 
USE=clang" --enable-linker=lld
+               else
+                       mozconfig_add_options_ac "linker is set to bfd" 
--enable-linker=bfd
+               fi
+       fi
+
+       # LTO flag was handled via configure
+       filter-flags '-flto*'
+
+       mozconfig_use_enable debug
+       if use debug ; then
+               mozconfig_add_options_ac '+debug' --disable-optimize
+       else
+               if is-flag '-g*' ; then
+                       if use clang ; then
+                               mozconfig_add_options_ac 'from CFLAGS' 
--enable-debug-symbols=$(get-flag '-g*')
+                       else
+                               mozconfig_add_options_ac 'from CFLAGS' 
--enable-debug-symbols
+                       fi
+               else
+                       mozconfig_add_options_ac 'Gentoo default' 
--disable-debug-symbols
+               fi
+
+               if is-flag '-O0' ; then
+                       mozconfig_add_options_ac "from CFLAGS" 
--enable-optimize=-O0
+               elif is-flag '-O4' ; then
+                       mozconfig_add_options_ac "from CFLAGS" 
--enable-optimize=-O4
+               elif is-flag '-O3' ; then
+                       mozconfig_add_options_ac "from CFLAGS" 
--enable-optimize=-O3
+               elif is-flag '-O1' ; then
+                       mozconfig_add_options_ac "from CFLAGS" 
--enable-optimize=-O1
+               elif is-flag '-Os' ; then
+                       mozconfig_add_options_ac "from CFLAGS" 
--enable-optimize=-Os
+               else
+                       mozconfig_add_options_ac "Gentoo default" 
--enable-optimize=-O2
+               fi
+       fi
+
+       # Debug flag was handled via configure
+       filter-flags '-g*'
+
+       # Optimization flag was handled via configure
+       filter-flags '-O*'
+
+       # Modifications to better support ARM, bug #553364
+       if use cpu_flags_arm_neon ; then
+               mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
+
+               if ! tc-is-clang ; then
+                       # thumb options aren't supported when using clang, bug 
666966
+                       mozconfig_add_options_ac '+cpu_flags_arm_neon' \
+                               --with-thumb=yes \
+                               --with-thumb-interwork=no
+               fi
+       fi
+
+       if [[ ${CHOST} == armv*h* ]] ; then
+               mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
+
+               if ! use system-libvpx ; then
+                       sed -i \
+                               -e "s|softfp|hard|" \
+                               "${S}"/media/libvpx/moz.build \
+                               || die
+               fi
+       fi
+
+       if use clang ; then
+               # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
+               # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
+               # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 
'x86', 'x86_64')
+               local disable_elf_hack=
+               if use amd64 ; then
+                       disable_elf_hack=yes
+               elif use x86 ; then
+                       disable_elf_hack=yes
+               elif use arm ; then
+                       disable_elf_hack=yes
+               fi
+
+               if [[ -n ${disable_elf_hack} ]] ; then
+                       mozconfig_add_options_ac 'elf-hack is broken when using 
Clang' --disable-elf-hack
+               fi
+       elif tc-is-gcc ; then
+               if ver_test $(gcc-fullversion) -ge 10 ; then
+                       einfo "Forcing -fno-tree-loop-vectorize to workaround 
GCC bug, see bug 758446 ..."
+                       append-cxxflags -fno-tree-loop-vectorize
+               fi
+       fi
+
+       # Additional ARCH support
+       case "${ARCH}" in
+               arm)
+                       # Reduce the memory requirements for linking
+                       if use clang ; then
+                               # Nothing to do
+                               :;
+                       elif tc-ld-is-gold || use lto ; then
+                               append-ldflags -Wl,--no-keep-memory
+                       else
+                               append-ldflags -Wl,--no-keep-memory 
-Wl,--reduce-memory-overheads
+                       fi
+                       ;;
+       esac
+
+       if ! use elibc_glibc ; then
+               mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
+       fi
+
+       # Allow elfhack to work in combination with unstripped binaries
+       # when they would normally be larger than 2GiB.
+       append-ldflags "-Wl,--compress-debug-sections=zlib"
+
+       # Make revdep-rebuild.sh happy; Also required for musl
+       append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
+
+       # Pass $MAKEOPTS to build system
+       export MOZ_MAKE_FLAGS="${MAKEOPTS}"
+
+       # Use system's Python environment
+       export MACH_USE_SYSTEM_PYTHON=1
+
+       # 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 pgo ; then
+               virtx_cmd=virtx
+
+               # Reset and cleanup environment variables used by GNOME/XDG
+               gnome2_environment_reset
+
+               addpredict /root
+       fi
+
+       local -x GDK_BACKEND=x11
+
+       ${virtx_cmd} ./mach build --verbose \
+               || die
+}
+
+src_install() {
+       # xpcshell is getting called during install
+       pax-mark m \
+               "${BUILD_DIR}"/dist/bin/xpcshell \
+               "${BUILD_DIR}"/dist/bin/${PN} \
+               "${BUILD_DIR}"/dist/bin/plugin-container
+
+       DESTDIR="${D}" ./mach install || die
+
+       # Upstream cannot ship symlink but we can (bmo#658850)
+       rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
+       dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
+
+       # Don't install llvm-symbolizer from sys-devel/llvm package
+       if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
+               rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
+       fi
+
+       # Install policy (currently only used to disable application updates)
+       insinto "${MOZILLA_FIVE_HOME}/distribution"
+       newins "${FILESDIR}"/distribution.ini distribution.ini
+       newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
+
+       # Install system-wide preferences
+       local PREFS_DIR="${MOZILLA_FIVE_HOME}/defaults/pref"
+       insinto "${PREFS_DIR}"
+       newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js
+
+       local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js"
+
+       # Set dictionary path to use system hunspell
+       cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set 
spellchecker.dictionary_path pref"
+       pref("spellchecker.dictionary_path",       
"${EPREFIX}/usr/share/myspell");
+       EOF
+
+       # Force hwaccel prefs if USE=hwaccel is enabled
+       if use hwaccel ; then
+               cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \
+               >>"${GENTOO_PREFS}" \
+               || die "failed to add prefs to force hardware-accelerated 
rendering to all-gentoo.js"
+       fi
+
+       # Force the graphite pref if USE=system-harfbuzz is enabled, since the 
pref cannot disable it
+       if use system-harfbuzz ; then
+               cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set 
gfx.font_rendering.graphite.enabled pref"
+               sticky_pref("gfx.font_rendering.graphite.enabled", true);
+               EOF
+       fi
+
+       # Install language packs
+       local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name 
'*.xpi') )
+       if [[ -n "${langpacks}" ]] ; then
+               moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" 
"${langpacks[@]}"
+       fi
+
+       # Install icons
+       local icon_srcdir="${S}/comm/mail/branding/thunderbird"
+       local icon_symbolic_file="${icon_srcdir}/TB-symbolic.svg"
+
+       insinto /usr/share/icons/hicolor/symbolic/apps
+       newins "${icon_symbolic_file}" ${PN}-symbolic.svg
+
+       local icon size
+       for icon in "${icon_srcdir}"/default*.png ; do
+               size=${icon%.png}
+               size=${size##*/default}
+
+               if [[ ${size} -eq 48 ]] ; then
+                       newicon "${icon}" ${PN}.png
+               fi
+
+               newicon -s ${size} "${icon}" ${PN}.png
+       done
+
+       # Install menu
+       local app_name="Mozilla ${MOZ_PN^}"
+       local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop"
+       local desktop_filename="${PN}.desktop"
+       local exec_command="${PN}"
+       local icon="${PN}"
+       local use_wayland="false"
+
+       if use wayland ; then
+               use_wayland="true"
+       fi
+
+       cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
+
+       sed -i \
+               -e "s:@NAME@:${app_name}:" \
+               -e "s:@EXEC@:${exec_command}:" \
+               -e "s:@ICON@:${icon}:" \
+               "${WORKDIR}/${PN}.desktop-template" \
+               || die
+
+       newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
+
+       rm "${WORKDIR}/${PN}.desktop-template" || die
+
+       # Install wrapper script
+       [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
+       newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
+
+       # Update wrapper
+       sed -i \
+               -e "s:@PREFIX@:${EPREFIX}/usr:" \
+               -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
+               -e "s:@APULSELIB_DIR@:${apulselib}:" \
+               -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
+               "${ED}/usr/bin/${PN}" \
+               || die
+}
+
+pkg_preinst() {
+       xdg_pkg_preinst
+
+       # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
+       # does not need to be forced into the LD_LIBRARY_PATH
+       if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
+               einfo "APULSE found; Generating library symlinks for sound 
support ..."
+               local lib
+               pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die
+               for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
+                       # A quickpkg rolled by hand will grab symlinks as part 
of the package,
+                       # so we need to avoid creating them if they already 
exist.
+                       if [[ ! -L ${lib##*/} ]] ; then
+                               ln -s "${lib}" ${lib##*/} || die
+                       fi
+               done
+               popd &>/dev/null || die
+       fi
+}
+
+pkg_postinst() {
+       xdg_pkg_postinst
+
+       if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
+               elog "Apulse was detected at merge time on this system and so 
it will always be"
+               elog "used for sound.  If you wish to use pulseaudio instead 
please unmerge"
+               elog "media-sound/apulse."
+               elog
+       fi
+
+       local show_doh_information
+       local show_shortcut_information
+
+       if [[ -z "${REPLACING_VERSIONS}" ]] ; then
+               # New install; Tell user that DoH is disabled by default
+               show_doh_information=yes
+               show_shortcut_information=no
+       else
+               local replacing_version
+               for replacing_version in ${REPLACING_VERSIONS} ; do
+                       if ver_test "${replacing_version}" -lt 91.0 ; then
+                               # Tell user that we no longer install a shortcut
+                               # per supported display protocol
+                               show_shortcut_information=yes
+                       fi
+               done
+       fi
+
+       if [[ -n "${show_doh_information}" ]] ; then
+               elog
+               elog "Note regarding Trusted Recursive Resolver aka 
DNS-over-HTTPS (DoH):"
+               elog "Due to privacy concerns (encrypting DNS might be a good 
thing, sending all"
+               elog "DNS traffic to Cloudflare by default is not a good idea 
and applications"
+               elog "should respect OS configured settings), 
\"network.trr.mode\" was set to 5"
+               elog "(\"Off by choice\") by default."
+               elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
+       fi
+
+       if [[ -n "${show_shortcut_information}" ]] ; then
+               elog
+               elog "Since ${PN}-91.0 we no longer install multiple shortcuts 
for"
+               elog "each supported display protocol.  Instead we will only 
install"
+               elog "one generic Mozilla ${PN^} shortcut."
+               elog "If you still want to be able to select between running 
Mozilla ${PN^}"
+               elog "on X11 or Wayland, you have to re-create these shortcuts 
on your own."
+       fi
+}

Reply via email to