commit:     5be9ae305d80c042482c248ef210d46f587e7a30
Author:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
AuthorDate: Wed Feb 16 13:16:34 2022 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Wed Feb 16 13:25:18 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5be9ae30

mail-client/thunderbird: add 91.6.1

Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 mail-client/thunderbird/Manifest                  |   64 ++
 mail-client/thunderbird/thunderbird-91.6.1.ebuild | 1136 +++++++++++++++++++++
 2 files changed, 1200 insertions(+)

diff --git a/mail-client/thunderbird/Manifest b/mail-client/thunderbird/Manifest
index 48270e12cfef..5df70911978a 100644
--- a/mail-client/thunderbird/Manifest
+++ b/mail-client/thunderbird/Manifest
@@ -192,3 +192,67 @@ DIST thunderbird-91.6.0-vi.xpi 720553 BLAKE2B 
f8df213d321aca19aea857aa9921000a62
 DIST thunderbird-91.6.0-zh-CN.xpi 726136 BLAKE2B 
46b8efa0fe29807716ebe86dc5d16075c7e7c2611a02b854df3dc75a35406cb8963f2792cba12e280de4a3bbbb19f6a72eb295bd519fc3cb57576f5a5e5b8d05
 SHA512 
ce147a27f6536c0daf0c7118e321299a3c5afcfc051742996c4e234d0ed37b032ce28b2fe0fb7a34ce51d01a492c6c7ea9be6ef93361984263caa63a36b70733
 DIST thunderbird-91.6.0-zh-TW.xpi 727310 BLAKE2B 
f92e4a4456c0b8dc32271b2cc14cf018ae1b25d2c3954b08a8bb93b7f36927a3f39e550b21d743a5fe352d9df97f2826c292745fbc49247c2a218f7c0e431371
 SHA512 
21468bd2023afde037d0624b67b04f0ebf553d6ef4c05d680bd757c6176575b25e8d22fa1de44c4dc62b786f9774a08aef9603f518cd0624a14b636184f09057
 DIST thunderbird-91.6.0.source.tar.xz 404738672 BLAKE2B 
fe5b2cdde426e3a7ea35fa2fd6afb5647a63d0251f29dc5f7ceeb87db945595e1ca2c5e8adb01c8666de7269cab6f7e6607cb1e326469dc5d46a0b36a8041950
 SHA512 
a11eafe1390141ee3508eea06ba8ab135d0725513977a3b37b3b35f413a1f825dc14fef530b9ac961840804be59291c7f5cba3c93b12726605d4a7255660f749
+DIST thunderbird-91.6.1-af.xpi 561894 BLAKE2B 
26801920e89e2e61d70ae1307ff5fad911cc2b621bfa276ee58d67fe4677ca6f510e0965da31b79b40be17d7a8e774d4f1beb9bee2b7f976190859aaa75c1c20
 SHA512 
23c1e37b57207ff25207a3655bf3c72b0d179f62698b514c5feee706f6ff050b10b1de68574e59da5978cea9a367e7eb1e1d9591a061cffb2e6ecfd4ab110e0a
+DIST thunderbird-91.6.1-ar.xpi 665244 BLAKE2B 
065d3565aefab7d6bb01a8f84c787d55f5bb25bfb796eb4da9a32b8a52df00fb0f3dbcf4cb08e13e73b660e88759bfb4ea0433cdb6b9a4dd2b8cd888c6acc908
 SHA512 
50400b6e078551beea30e605e6f190837883bb7b80509fe2ba5072076452d3eb5f86c57612fea8e5adec046762d0b5a59ed6b2ea64a9f4ff54234d8f3fb44930
+DIST thunderbird-91.6.1-ast.xpi 580511 BLAKE2B 
0f93eb0122afbd900d6bb0a4774d0bbb1c56384c2a5f5a8b4e3f04c5ec75818bcf2572eccc98ea08e8a08b687509441ee9ea3b593a672aae7f4cdeb0cee1486c
 SHA512 
5579e1da9fdb22337b7e876a72d8c8d773416b135635e6ea7e455eb4f7ba123b47f46509a3743fa787e8985b4fbea13b70e8d423901575a96eefeafe08b5c7d8
+DIST thunderbird-91.6.1-be.xpi 694744 BLAKE2B 
c3162ac60d51519afe4f7c3480a7816fd94add4336b40c61257aec51aecbf7f5702d05145160e68554d9ee64f15f7fc4a993406659027143fd9d2316c2bbca67
 SHA512 
c56f0ccabfe9d4bbf5f3118ab3fb57165eb20e322a022387e30cbbca9265169b612ac5ea0a31218aae0da891a8db4fab363d4dbbfcd7d605a75a2e75f3bf9930
+DIST thunderbird-91.6.1-bg.xpi 690967 BLAKE2B 
a9e78786895311161ea920c87ae66dacd523abc2ec9c6c8bdb933ef08c7be8ec8248b65a044d8e13b1b37cae1b19b29086221cb36cd5f14f29bfe5800b356e23
 SHA512 
9c1703d8d35c69481fab183d968643292c6159c13e54273c7f1e61c27363ceb52935ff1c2749821df5d46497af3353d2de318c3117afde9bd7af4dd3c2b83b3f
+DIST thunderbird-91.6.1-br.xpi 620587 BLAKE2B 
869e60dae14050d9d0b70369d6a56151fe266b045edd9a33bf1ff302fe43a2a76cd075adf4dcd920b5b172979f0c0739bff0383b638a959490d21ba4537b80c9
 SHA512 
c24f3e6f508a82a3e57645d3a0fea6e4da6427f3ae919398e4f2787136fd540a2531f7cd9ffc7a5cb2101f6ad0ed6ef2ea82a8d85962b36a7dc88b3f2981912b
+DIST thunderbird-91.6.1-ca.xpi 645022 BLAKE2B 
7468b4646ace608d230765b5ed45a8c2dbced24219e6408ffed2e82148204065f9e248533ac3384a182e3ca64574f748ff6afda70324db86abc7a4464eaabd0b
 SHA512 
68aad2b93a37dc5346b52b9cf0a977b179015722bc3195de2b3a5e22ecb6bc920878c2b13ff25f89c9bdc026fbd646cdd6167d523f79457668a1e34da3cb3e69
+DIST thunderbird-91.6.1-cak.xpi 652065 BLAKE2B 
ed42c64b6422dd4102864f306374ce2495a197e1b0435c7d0eea3edc1f81276be795e6e564c433ae2d204777648d9d84a5b4ec0b0f7ef63f4bc466ab450e9203
 SHA512 
c3871fa73b1d16faa046a17028e3234e63fd523bc9fc53be876364d78a95b7ba6ba6b36d3b8fb909f74f7529fd27be62cdeb32a843c2c5128aefb78c835b6d32
+DIST thunderbird-91.6.1-cs.xpi 706862 BLAKE2B 
58ae7b27367b40ac124d0114f87905537dfdff8452ef3189d97ab0a5e4d48101a83c1dd084aed977aea6afb6c08716f30314cb5956889462101ff03a6c79d788
 SHA512 
7d9648afaeed577c9994d7f89a2b2ddf8dd25b85abfcbcfa762c780d88a2381d32e543a4da40d9b9d2b87c658e02540cfdda27ee8dd2beaf4038c79114e676a9
+DIST thunderbird-91.6.1-cy.xpi 683930 BLAKE2B 
9c92bceabcded9602291ff1f5c68fe1212e172156529bc59b6e56e9f7f1ad8b087c1bdbc3097723fe341d1e87fbf537ddc97097536128bbcaf4f0cbfdf4ba837
 SHA512 
c19ca4f792ee045440613d88af313e3176fe151209d810fc81003df30d747ac50254c209c0e1b523691f6706c13fafc33962fa32ebf0892708ffa9ff22430831
+DIST thunderbird-91.6.1-da.xpi 663957 BLAKE2B 
c239fc143479b6fe60ecc067424e4c0cbb181d763817889e61df3251a541ea0faefd20caf4ce1e28ea7ad84550b214a0c5fe35b9d004b2589731277a1421c093
 SHA512 
0611d41955c0ceb8c9009c19cb54faa4ea106722b5c770473db705308472d4af50b6cf73f8e4e7c5b46172ea9e742e909273fde9dc02525edb13927a7a8be475
+DIST thunderbird-91.6.1-de.xpi 694809 BLAKE2B 
a5d07f1f52b82862ccd7a027f17b2e08e7ad3ce9ef3f9b837a9550dee76bbebaa59c85351a0555880192799dea050d04c110cfcd1cbf542b997705761fc7f1ba
 SHA512 
9569985cd0067c2cbf638eded1b92f3796b210828fde3b3ff2f097284ae5126cb02ae2b394b2f5817fe595a458b8359995174807597bdd3308b75116e9d640ff
+DIST thunderbird-91.6.1-dsb.xpi 719350 BLAKE2B 
81f0fee659deaa81ae0ead070634fb55eceadd252be9c9b49bc122beb4788f5fcbfb5f7b6a5440fcf3bc046c8b44005df0b466fd803141474dc102e374f097cc
 SHA512 
8dde2e96de9fa2903010e9acbbcb13edef5792cbb7f3a2eadac75c603448cdae490cba383be0edc380a8cae2c3008ff02689fc33c1e605cfec716ef3ef35eadb
+DIST thunderbird-91.6.1-el.xpi 814590 BLAKE2B 
bd659ab6b991106cd957922e48172e38bf411bc33ba60e6267a9ba057c37f38ce56378c278865007a4df6d8c6c40957824eb1b810514b0366b601a08aa419d80
 SHA512 
cf99fb58a72c2e51aef3c3eb2f21fcd3a36545e0bdd9973595f6974c44607c17c710c1cdd6bdff53f75538ce440ca6a28a2b92ed6e1ce5c7194e4a18008ac736
+DIST thunderbird-91.6.1-en-CA.xpi 640883 BLAKE2B 
20a4779deaf804c08e27b0b9285fc220c089407947cfec20ab40db87a7e82a715bf0609304bfb0877e54d315946f4764f401a01b6581a795410ff856a53d417d
 SHA512 
9c2b6a01808b27e78ac1a105da7ebe52f28e66ff4bb949c7b0b4a1506c7f0d13fc3b83801b1f150a365224d7b099e93189af184717ca7cce9e11274a90ed7147
+DIST thunderbird-91.6.1-en-GB.xpi 646450 BLAKE2B 
ab7d02bc86c0032604044a41db71002a517f2a36030e7acf65be858bc65bc15a7accb02a80e68cb23fa0060edf2f8edc0c0e589f6c58237ba5975da082357229
 SHA512 
58581a6ddc3842dfd04accbf9d246ba175b180135038746ca91ddc6eb08f675fa9162e5989582bf021788e133f6a3deeff5d202d05b414004e6a6eefb3d5616b
+DIST thunderbird-91.6.1-es-AR.xpi 696016 BLAKE2B 
d20f74b7be9bc5d1705f9529e31f49c184f33c6c47e79965420b4d1b6e64cbd3e7e1945396aafd855f277cc9b65571d37b6bcbefdd701b480afae79bca62c3a2
 SHA512 
48b700c6af8ac1a42c45223f3275dbab3ce6aa4e1e465a4e05da326c2cac2ce1e432e3a16cac70e2655daddeff7e516a6eea47f7a7f23117f01a089b26a4ef64
+DIST thunderbird-91.6.1-es-ES.xpi 592152 BLAKE2B 
b38ee28a91c92b072428329e920663642f56ca42a0c65ba561486eb36c6dca4b592cb037ca4e43e436d7ae99b41d87f7413a060efde3ffe24dfd40dba1d9430e
 SHA512 
49a64c8ff495238243719fe1064e47a31a6b31396128469c44ea13b6c1850a7f466cda3979056a1d984baa7bd3f536845b94fb4e3ea42ba7aebf08d61f5b851e
+DIST thunderbird-91.6.1-et.xpi 649367 BLAKE2B 
0a7646f969c8a3deca73f4cc33a7b210deb5fe9ea18ca2ab25846ff8c455b5d9c1ac806fc90ba46238ac0bb36c6757359292ef992b2a80e58e04943dd992b625
 SHA512 
794d1deda2a83290cd5839409661f02f77c9fc9d9942b686d539e7fd57ee67b3ae42f12be51359f2f9f1ec948561d314411d2b9e396f798ce59d7ca41e368c5d
+DIST thunderbird-91.6.1-eu.xpi 673427 BLAKE2B 
94c65ca1614de9113aa8ee70adb26f74bab57bca2b7e3873afa5612886f1cedb03b4c5cc42ac1939fb45857a85b24d8cafb25e8363d94506fc3d5531808d0d98
 SHA512 
514ae8af7d6c6c337341a995c7f6e0cb46a4895debc6915888e4292a74b6cce409d07729c0e81bb8c15be0c4d212483d428c3b331c76c7c80aa11e00ed9532e5
+DIST thunderbird-91.6.1-fi.xpi 674034 BLAKE2B 
b55f576e6cb571b062d2ad4aa108ade6f6dcb0b3811c096966416efe62f5cd65244cb3fe4c800203d34c6c8d27f0747155d1eaa9c9589b4c78bcd826fee43771
 SHA512 
994f6871d91a7b3f8de52a7773ea9e51dfbb3359f608f8c243f492983d09603feb44fcaa0c0d2342d1eecf4fd8cb39c20577bf02103ddaa3d7f3b31df1eef74b
+DIST thunderbird-91.6.1-fr.xpi 708188 BLAKE2B 
e455f1cce1121ec738c85a66337198e3ec1baef48dd4925b020ea62b8425c5a76987a4b3c91cea441e5be89b19c6dc932f030d9b0ac83430fcc85d082f270e01
 SHA512 
75870414b8c3affba18d7a210ff7e8c14357da9eb8316734e84bbb7da3e9e2158eb97c2042a597a70b043d21acf8834582f9f3299f683579cf425b308c45ecbe
+DIST thunderbird-91.6.1-fy-NL.xpi 689193 BLAKE2B 
d4cb48c52ee907cf4221484b4d123c3da148cc38f9056df7d1ef40668189186965ebce4cf841313ea14f43f2da6474b8e9c08dd26d6980c1a64660f4cf9fec39
 SHA512 
4180f39ecc812a7f5fd421302d906499fecfc5a09ab697d002b026992fc5d818d6fba360e3ba33de24c1d8366f9f794c2fa375601468c89736b192d50275f8dd
+DIST thunderbird-91.6.1-ga-IE.xpi 613122 BLAKE2B 
7a284c29d3cb91e554a7b8fb0df3c6903a2753938e01a1a20ed4c72f1d340850a315820add81d9c8ff04a8b75d4552c19addb238077b2a753cdd121d16828f99
 SHA512 
adc1d2587b3d7b73c6eeaaad735c11b1a14d3f9c04e813fa4baecadf475bb5e8bf26d2cd3bab0ed7c13376c7f575e4b63fe5a5ecdd84e8598199aed641a4f741
+DIST thunderbird-91.6.1-gd.xpi 640647 BLAKE2B 
6a4f5e87755f07d23afbe332f2e3c7f15a9366c6753b37ecf702831bebc435f903ada320b449f0bd20815857ddf97a92419ad0e449ef958f91643cd203f8466d
 SHA512 
3351867f874763d791a0d8e590abb0c43592746f474793f2e978060517a6089e8ac66a403edfbe4cf2c6c66a822ad258d1fff16c0435f592056ee27e610fe7a4
+DIST thunderbird-91.6.1-gl.xpi 677615 BLAKE2B 
64426905648e5c29455b20fa02ee461e9f2a9b33ce47507d28ba1a8065194ce11a8a1f29169563b5749075f42fa27d3982a7476eb031ca2fc46ccfd9cdb77956
 SHA512 
06d95de59a37fb6230c54945467c5cc3aeedbd4514d7b391c7360cfc6e32ae11d73ed4ca3cf2ad67e5a33358f3e5336fa39018ae98de94628b2d7860e646d42e
+DIST thunderbird-91.6.1-he.xpi 671909 BLAKE2B 
b4d9e121ed3ebea9e64fe6dd94365fafbdf6d7e3d248d93a51494d318623fa6818c58b494890d7212b0dbb3ff1e2b9b79010afca3b3425c780dce41b9bebbe0c
 SHA512 
9d2dc538c4e1ee4c94ca4d85a0b6b76551f70fb361baada2ae5a898a5451f87303b453c463e8c75dae81e58c948fb04b39fa097e32151f4625b6466abc8c3826
+DIST thunderbird-91.6.1-hr.xpi 646310 BLAKE2B 
de209e7c22544ad268703879da2d4e1c1d1a9ba4d0f9f1a63b95a002bf186b44f33943e25cdb7eb2e7a06387d708edf9f2927ea51f983056472ded4ee1cb6caa
 SHA512 
d41b186dc1ebf7c4d1ba1aa62ca7f3f8fcfaf1c6a7e7c83cd438edb2cc6fbb457ea5874acb5f73fb6bae46bc763a0880240fe28310ee88aeb48d6880dff3c129
+DIST thunderbird-91.6.1-hsb.xpi 716149 BLAKE2B 
853b210a1868fc944916d72c0f36a58480f1308f4d0bcbf4cabe7ec6516163b4309417d95483ae29436d11459a5bdd337190aea7320182f9a36731085ebb0024
 SHA512 
1295d40aad073cb54323a7a9baaa9ac5507014c488fa48fda46beef7ddb845955e53d2df4b55fedef71fe1e7a7b8f0a058a34b057d56bcea4ed7dc13fd527574
+DIST thunderbird-91.6.1-hu.xpi 718773 BLAKE2B 
a557a3abe778e6196e2519b687887ea6eb3c34a2c05d00aa6fbf9f25dd33a6cb5d45ab86e04c280462cebd895b096f2c5edebcedca9c251ee283b20aa761f1f0
 SHA512 
b08788ca593d78ff6395d643d5496f272898394cdb03e1c3e66c0e3321b99c70b8d0ba3278996b6f30ecb4a3bc2efec08525c04c87c76951e0c475d991747232
+DIST thunderbird-91.6.1-id.xpi 644512 BLAKE2B 
62c2ad6ce41b6fa91e8543e8f0d99ef011b03262791614da2c2b230422718c6388cdded6ca39387160760709c9e107350a094ed128ff82bc9ff6e4f1bff49708
 SHA512 
23cbec15d6772a07bbd30e5cbabc2e3ba9df58998edc8d1c7685b601f12d48d55e246f808cf1a51303a440705b16411e64c4bffcbbfe8076955d0497dbed397e
+DIST thunderbird-91.6.1-is.xpi 678580 BLAKE2B 
df8ad847495b8a1cbfe84726dd0cbe75a92b5b792898f6fafc46d7fbb792677be676f7c4b68763b311f04ff5529b24e9c48f6b50099add322b219699e206583c
 SHA512 
6d4645c9c46bdb9e5428c7d61069f7557e8311f4ef3b9c3d79e2957a5354e4d39fa21f4a5fdacc5dc78ee2bb48021c9c20efd1ee6f919b30f84ad1c413c10995
+DIST thunderbird-91.6.1-it.xpi 609978 BLAKE2B 
c6e3923d149b0cea25037eaf732f0db273ec8c77e142166f1dd532c90d73906b32485b9e355aba68eb7df15f6156a99df9db4a94d1e663768b657d0cd757f5ea
 SHA512 
6de68a7a0f799a5cc94efd150677efb4cb38ed1fc91dff6493891d8841aff5479503f81da7c770f9b89ef0c8c354cc7477065799e700be45ec3b69cd781f52fe
+DIST thunderbird-91.6.1-ja.xpi 754199 BLAKE2B 
76c4d7fda9b363ad38fe1aae815b2ee2147cc0ca3d8d7aa7afda7cf1675e439d46c8542fd45843e0c18b924386a5a88532665e98cbeb6e8c9e932ecfe394ab6a
 SHA512 
0009c7e436ed26db2859463f245cc5ec1ff1e327aecbeb50961896f9f284bbc79ea93f08d26357a41c5a1ecf1c15c27db00a9dd0813a3bbea8930f046e535eb7
+DIST thunderbird-91.6.1-ka.xpi 755748 BLAKE2B 
d8599eb15b7575798f78026f1da31df2aea74807ce45870f20d5f77a338cf31f9aea242274359f04dd91eefc6e8260575874309da12b7c315d48f6700541a901
 SHA512 
e6f02769e36d1ce65227ba9e87e2b536247d5cc752a3c35d76797f56e8c4b8a24e3e0a1a9cab3a447f678fd843a7c97397f383bb5c3640b5efd92da69aebb1a1
+DIST thunderbird-91.6.1-kab.xpi 677012 BLAKE2B 
dce4d0cd67b403b9112396934afee9fd2632e6b4eaf62b54edd76073ec066458363a86f09ca79494512ddeabf4cf886e22019ee6d00f38dddaac21362619be6a
 SHA512 
9c538a370566c3df371d50b3cb90c99cbcaba7094c8e71f74a71818ef55530e29904e84aad2e32c90acb594efe94c78bcc5e691e07d12f0532b6499010445704
+DIST thunderbird-91.6.1-kk.xpi 745027 BLAKE2B 
044d454698c6cc9ca57f18b958f314b7e11f7851b4fdde432c79efd04b8786338bd7e9ee2af674f5e42e3152cc41fc3e3e387349ee537ed03d599d4d80f441ea
 SHA512 
21403bdd401421c1a22bbcfd6c79215899987dfe587a262753b0e2f3aa64509ac0fa265f7935a71663d6f58f0934394e3b7d23238d5aebb6f2a85cda4ddfd926
+DIST thunderbird-91.6.1-ko.xpi 703524 BLAKE2B 
263fe13df94b8ead2e84dbb52396578451b3897bf198c9e89a35f3da67433b7167d7f38e9dbfdee8a8499ef04c4462aef80899ffa20f4f59cf7d1a8cb82b9d09
 SHA512 
ed27508649f944634d41fa59a4e69c821796e450d0c528255ea7d2ff6ff46b160fe9b9976b130af9a64f2a3ee8500a6c6721b9258640d095358ae49da87ba6f5
+DIST thunderbird-91.6.1-lt.xpi 695677 BLAKE2B 
d245036379daa2054c80b8006c4f8a6e37ac4e8c56cabf4c3b422955b3693a8b424648b8c91a84df4764f7baeb0bb6042f2d6e4f0d9360acbad1158f8f955963
 SHA512 
75fdad8f9dae9161bee35220a3edc2dee3ba8057e27d01ab9d4d126a78b39706ce5538e69b681c48c224adc99b9d373be555c79c592fa3af02c81a419e508708
+DIST thunderbird-91.6.1-lv.xpi 618454 BLAKE2B 
80c5f896961f545aa3815775cba78c8045d645dd29d9187e6597ec8329a073b0e850aa93fc4d8b17027fec79b2d7076e53fc7905f019c7c017530514ad1a8ea3
 SHA512 
b146120f46c4f40695f0480562031110143c941616d8c3daf49f83037005026b993beabe08bffad0f84013e6b571a674aa4f41f440c4a36a744eab9a5de2b75c
+DIST thunderbird-91.6.1-ms.xpi 578079 BLAKE2B 
d73663cbed78b4d8627d53320cb1bbde52de9eb4f70ca6fafce86afc30eead4e1b25a991291a8942f11e5d1619a2a89ff7ec88db58bffcea5fdac1ed19b81ea1
 SHA512 
f484ba6d6e616468734174c131b68baa0f9da0b943c134c22ac50c607e2820551ba8c5131c1da0b9e6fb353b52288c0eef7c37a9c1ef67ca96e4763c75733d8a
+DIST thunderbird-91.6.1-nb-NO.xpi 652517 BLAKE2B 
a2649e5cc818d08e3e89e861b3ea54837cc4c79f1d0d323511337bc0e1dd161e9ced45b88c6288154a6d70a1bc64821f8b645cc15efa264f715ab7755ea44893
 SHA512 
cd0f475ab2e2d6d1bcdb1b13a6007cf3a5cc527f44a9f8944dc624833ed6a2d9299680d378fac902b95e4d793595be375d3d354b3f65737f8c24035820d3f956
+DIST thunderbird-91.6.1-nl.xpi 682119 BLAKE2B 
a514ff699019e43e4e23d5cf845f0fd9f109a496a2d0a478328da46789edb7bf5d614da8ed8a34f6ba9d7d9b42182583e6019ae6102c66e8adb27acd31e161bc
 SHA512 
8a46bb6546209cb9460cca721d7073e12c62f84db7a750b1b6bbe952dd36c450e582c393d0690e0cbc469d3477cc8250b5248dc28c8b08831c62d83bc532920f
+DIST thunderbird-91.6.1-nn-NO.xpi 656077 BLAKE2B 
b90bd835f8ad3a206619e41b4bbc5c4c5ae3e67761f45300fc47758d3c70eb2164eb40325ee38e4e0524b246ec0c062da6f21d759d0a9e4d4c6779bcdda56f63
 SHA512 
30f0b58e61a0e079293f96bb37316b1fa33ef01e417511884b9144237c8b46e850f9e9832656c538e392e38b5d4459c4b1b05f71d712affa2c4dbded31f40594
+DIST thunderbird-91.6.1-pa-IN.xpi 652274 BLAKE2B 
aebc718f4ced786eb9ee46294bbb16ecf0ffe54bbd5d24f66daf90a3439475ec7b1648339f02598adc6a38c0628d70592205e9c961de80bc9485b74fab5dd35a
 SHA512 
5de39eb441f18bbf942de862946bb25ca5a09d437efb525dc249588d70ca64984fe9bc8eed7612fd1b0bd2b7e67e347a450914aa5a5a0696e12ae27f2ebee291
+DIST thunderbird-91.6.1-pl.xpi 692825 BLAKE2B 
6e5a9ea8c3cf0a8225945032b37ae45d71ab1e591a09eb02364c43fdffa744028f58357c26c4882517fb8a5c7cf88f73944a8f19748402722b385bbdd32d1daa
 SHA512 
d02ec35b7b5dbca10acec8558144a050f892d1db20595b8c036e53256887f6a2bccaf663083e5050cd59a48ca579fdd7ee601b76c2b7abe97ddce0577873cd57
+DIST thunderbird-91.6.1-pt-BR.xpi 689677 BLAKE2B 
bd32848a3d4e79d01c8d6d05f0a8df18aca54973ef44e99f7f349af8819499ff775c93423c4eaa0e4dcb14af911469a7cdd5ae3cbae3b26038ef1c6719b4c53d
 SHA512 
f489065f7079c4cde89230d8e260d166c1b244c26f44f1fe4742206fa80f687584b865a98c3b724de5c4fa8079c588f32d8de47b4e35a8afda8baaeb9b406013
+DIST thunderbird-91.6.1-pt-PT.xpi 673204 BLAKE2B 
a5ea64086d30653f8d7bc8746eee05ba0c81d7fb27d08ef83c4b19bbe3f3dd2a3dd376b23934f0822c9dfca0f909c7e1f5d8c71848568c7958b3ddfa9a499e2f
 SHA512 
e018d0830610b04eb981fc1aa01832a17ab506b7e7c946c038e628934edf177326249aa7a6691d1e5c7087d56acb7827d64e4222f60e2d069792c4822b219708
+DIST thunderbird-91.6.1-rm.xpi 684946 BLAKE2B 
3fcc4809ad514e34ef0239085f0fc1a6494379c1918c807cfc46bcf962b9c75acb36eaa640f78d7fe1a1ac41689577a48df9bbba5cf2e7f58c7b128c0d4153bc
 SHA512 
f8fe6c5f957d6b999b6e358fd9e978a31f0b9afe9858125473f43685e9dc159823645a403101f7ed3badc2b3b4e0d51d75211f74bd71c6aad30f4ece1a88b3a0
+DIST thunderbird-91.6.1-ro.xpi 661277 BLAKE2B 
3fcce4d002defb114226e9d2d97b27f78a578c1be3d6c0f28268e8cd720ca8e3365dfaf33db78b7f3b0a4a76a05665c8881f97c762559b4fe45645f08cbfcb84
 SHA512 
377d8ef76e8da40ccac111c0b6948968d2970d0b2ed20e07f5be21061f8ca9a764e6c32a0451bf327cf22d2edcaebc95f82e164d52ac22f9a9cedea95dc11285
+DIST thunderbird-91.6.1-ru.xpi 791768 BLAKE2B 
15da30f61cbed89523ab44df5269bf8420932dfbeac97a24088e96c8daba75138e2401a7986af65490a584f8d8ac71cfcbd715674f9200513b8b547da0c6e2d7
 SHA512 
780c04f9f47988f922a84c0860486c8484ced79420947e4b2faf72077368613d4f1b57686c9fdb3752f56625477cd275d093d59f470e85cb332f1279ea44615c
+DIST thunderbird-91.6.1-sk.xpi 718685 BLAKE2B 
cb3d881c56c062fab49f151679db0de2f498e13f6a382c7c20b95f11817956392c105e5f787e1335de5f7668b1cb8da042d50ff69006682d6a6333b9edab9b70
 SHA512 
2f0d4611824272ef4d1bb37619493307ad53dab4a57426c8456bca2c4d6403a7502dc7a85de23091ab35f65b5e54636bdd7a46a998ad5e2b56fb81557b26f708
+DIST thunderbird-91.6.1-sl.xpi 677317 BLAKE2B 
b4448b2b6efd1936b36512510736baeb8188a243deb0555f512e5445bb4870312a234b4fb8eb2d75b927e294e2fb19ac6423e363712f48cff780138541c9693d
 SHA512 
44ec2b47f7baa6d4af284f0275ab7b9e16982d1a2dcdd1b2ae08c0da9a56a23948508df7a9738e28c9c48a6af9d3f163285a1d05d9f525b2738756596738dc98
+DIST thunderbird-91.6.1-sq.xpi 700483 BLAKE2B 
8eb7304782e047839cb19365ac5d3a9de65a7f2ba029a700b22e28fb96839fadb84bb62ac5ce9cb5ff1912e6e21e52cea56395b5b691b96379126deb14674a8b
 SHA512 
699e6792f5175c9dafd8e858800131dba4c9f71719dc34c0f58bc84bc25978130a3cab7d2c5caaec0186765f46348f36de7c2b570862429ef1c9b510fd496d05
+DIST thunderbird-91.6.1-sr.xpi 708978 BLAKE2B 
bafc646363f83f00b89e7305131fa9b0b090bb80d89450edbe03766ab72000d7decd867c1bbf51ed4defaa2a1f5783cd550e34745732986aa5ed586780f8c9c3
 SHA512 
d076159eceadc8c5cad9527d2914dbcd60b12f0d1e2178e4ba1b59827280ed47b93cd2fb0dd903afba9ee0fb4a4cfd1e6175670aa292550145215106d4d1e0e5
+DIST thunderbird-91.6.1-sv-SE.xpi 686484 BLAKE2B 
69d57b484626932fd0ec8d2ecf29be833279ac57017333f4e098c48f7680d0a883652227c32ed49942192dc503ba5b892b3de44d6317b4ce6b718f9e4a3caa1f
 SHA512 
4da1163d9cb1653d01366761e5b3671fec4cde38a125ccd409c63b4e4b89382745a3e74a9ef8196edee934dbf72f7c65014a6e131c6ccc4ad1a5df4f10b2bc21
+DIST thunderbird-91.6.1-th.xpi 746639 BLAKE2B 
92ef22deb74f12f97dedffd16a68ab9b755ec8172021f1c912224d8e0bb1cbc0e8f6eaf844b606847ee927c61cf6fd7028917385902055aad4e962ef2dd226e4
 SHA512 
5cc78867e17534a4d6cd7d6290665b2ca90fefc3e405f4757b5cbaeb8bcae129e0236d471a000dee3773aabc55b1ac64235b4f1e2d7e31c61b2f3f4f040ecf9d
+DIST thunderbird-91.6.1-tr.xpi 695167 BLAKE2B 
8a2e48a1d89c09ad32afe836e24bdf1edea47188ac24ab2a2d9045a157c3ff41acf4d3bf168b177776b397d66c7f498a4f4e7e5352d8eed375062ad2e1d4ecc2
 SHA512 
f919faa5716d2d306f118605b80110fcd4a1698d68fc357e8eafc74ec688dd867c110b828ee8514f7e85451d0d56febe1f2e3c68b5cf678543e524d61c26662e
+DIST thunderbird-91.6.1-uk.xpi 793450 BLAKE2B 
1fbaa49e219ce2f9682954ca0c441e53507b8e7ba5c89009ad25f6775932adaccc2594ce6aed607474140d2a646995e9e5b1641e10447b562013e89473243a91
 SHA512 
30cfc17a871ebeb62d6674b00fbb836c80688e224d64404603edb653fe9106e9a2ef90be4f010cfb81e4dff3784fb8404d81140de6d63b74eb62702b6cf4660d
+DIST thunderbird-91.6.1-uz.xpi 591029 BLAKE2B 
7c74a657e04c1ff44c4ab387c19313df2f565058be010ff8065131f1b3bafaa64876da9806930e9e7fb94f530c63ea92b9036dded3575f45f6bc3fc3b5f149e1
 SHA512 
4712d2ce08e1326bfc1feb4b1da8afd58e950065e1a94941d3b2c6c9b45cd152b58fc42f799dc20c1a650159ce8968ecfa858fc41bd60ddf9607fd6d8d26568d
+DIST thunderbird-91.6.1-vi.xpi 720552 BLAKE2B 
01e0b77f2aa51cd677950a40a536365d55ef80b26f00c9bb9b9e3734677c12d1f6456b1f3a8b9c944f004dbc883ed68aa09779ea761372a2816ddb0792abe81b
 SHA512 
3aca00d1cea6c528998070c77288c28230b78ac4a95f82a3841e5a3b30605dc4cd27dbc90efd3bcfc696f188c5d33f5cedb6586adc45dbb3162ca675414e7b09
+DIST thunderbird-91.6.1-zh-CN.xpi 726135 BLAKE2B 
fbbd3f81716794dd309fc57002f8d9c455927be6a8674c4b3d5ae43b527666d3a5115c62036547ba6745e23a1b288ec147725bd54071af38f00434450bbd9e48
 SHA512 
67898115b1893667eca0a0cbb1d34f031c0112581848151168394aab3cf6adb6b3ab78324955c65c56a90d1ae545a9e1f074201999baf579dba28cdc30691dbc
+DIST thunderbird-91.6.1-zh-TW.xpi 727309 BLAKE2B 
15e6f0ee70ae483ce38b8e76856c8b4f0a6174da64d8a309bf55373dcf5705d3ca0fd84b4bb36ceb96238b3d041e6cc9b6eccb6067a32efb293c77af68ae1f1b
 SHA512 
d2ef4ea6ce7f45b0e5da11d6dafcaf74d8b374c8261fdb7f1aff6b88f68ed1f35c245dabc3ae6fd792304a211b72cf189849ea85c40888fb53f3c577e8071346
+DIST thunderbird-91.6.1.source.tar.xz 401419556 BLAKE2B 
e0a5bded350944787678f363234cbd2543b084da840f75e55fb6a6275a31bc34510dc2a61bc748992190730f90e18d23d3526de8374eaaae7c0f13ff959d8799
 SHA512 
a74d9489bbd2d62916eac8214c6c3a54dfa0c03b56ad471750724315f8bdd96b6ee1079687ac973264ba0f70bdfbf2f183f359c33f7fcda9a9e48914636b1ab2

diff --git a/mail-client/thunderbird/thunderbird-91.6.1.ebuild 
b/mail-client/thunderbird/thunderbird-91.6.1.ebuild
new file mode 100644
index 000000000000..cdfb04a96132
--- /dev/null
+++ b/mail-client/thunderbird/thunderbird-91.6.1.ebuild
@@ -0,0 +1,1136 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+FIREFOX_PATCHSET="firefox-91esr-patches-05j.tar.xz"
+
+LLVM_MAX_SLOT=13
+
+PYTHON_COMPAT=( python3_{8..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 optfeature pax-utils python-any-r1 toolchain-funcs 
\
+       virtualx xdg
+
+MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}";
+
+if [[ ${PV} == *_rc* ]] ; then
+       
MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}";
+fi
+
+PATCH_URIS=(
+       
https://dev.gentoo.org/~{juippis,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"
+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-png +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 )"
+
+COMMON_DEPEND="
+       >=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
+       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-png? ( >=media-libs/libpng-1.6.35:0=[apng] )
+       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="${COMMON_DEPEND}
+       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="${COMMON_DEPEND}
+       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 cargo respect MAKEOPTS
+       export CARGO_BUILD_JOBS="$(makeopts_jobs)"
+
+       # Make LTO respect MAKEOPTS
+       sed -i \
+               -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+               "${S}"/build/moz.configure/lto-pgo.configure \
+               || die "sed failed to set num_cores"
+
+       # Make ICU respect MAKEOPTS
+       sed -i \
+               -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+               "${S}"/intl/icu_sources_data.py \
+               || die "sed failed to set num_cores"
+
+       # sed-in toolchain prefix
+       sed -i \
+               -e "s/objdump/${CHOST}-objdump/" \
+               "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py 
\
+               || die "sed failed to set toolchain prefix"
+
+       sed -i \
+               -e 's/ccache_stats = None/return None/' \
+               "${S}"/python/mozbuild/mozbuild/controller/building.py \
+               || die "sed failed to disable ccache stats call"
+
+       einfo "Removing pre-built binaries ..."
+       find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) 
-print -delete || die
+
+       # 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-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-png
+       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
+
+       optfeature_header "Optional runtime features:"
+       optfeature "encrypted chat support" net-libs/libotr
+}

Reply via email to