summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoonas Niilola <juippis@gentoo.org>2022-02-16 15:16:34 +0200
committerJoonas Niilola <juippis@gentoo.org>2022-02-16 15:25:18 +0200
commit5be9ae305d80c042482c248ef210d46f587e7a30 (patch)
tree379617c8450b779e0fb6edd35c3bdf2689741a77 /mail-client
parentdev-perl/PerlMol: Add new module (diff)
downloadgentoo-5be9ae305d80c042482c248ef210d46f587e7a30.tar.gz
gentoo-5be9ae305d80c042482c248ef210d46f587e7a30.tar.bz2
gentoo-5be9ae305d80c042482c248ef210d46f587e7a30.zip
mail-client/thunderbird: add 91.6.1
Signed-off-by: Joonas Niilola <juippis@gentoo.org>
Diffstat (limited to 'mail-client')
-rw-r--r--mail-client/thunderbird/Manifest64
-rw-r--r--mail-client/thunderbird/thunderbird-91.6.1.ebuild1136
2 files changed, 1200 insertions, 0 deletions
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
+}