summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoonas Niilola <juippis@gentoo.org>2022-04-06 16:22:58 +0300
committerJoonas Niilola <juippis@gentoo.org>2022-04-06 16:23:16 +0300
commit98219409bbaf0f4207e864014c301aacbfa1beda (patch)
treeda3cc21a29cfe8780fb0bf44a48a8afddcd998ff
parentnet-proxy/haproxy: Revbump: Use Master-Worker Mode by default (diff)
downloadgentoo-98219409bbaf0f4207e864014c301aacbfa1beda.tar.gz
gentoo-98219409bbaf0f4207e864014c301aacbfa1beda.tar.bz2
gentoo-98219409bbaf0f4207e864014c301aacbfa1beda.zip
mail-client/thunderbird: add 91.8.0
Signed-off-by: Joonas Niilola <juippis@gentoo.org>
-rw-r--r--mail-client/thunderbird/Manifest64
-rw-r--r--mail-client/thunderbird/thunderbird-91.8.0.ebuild1137
2 files changed, 1201 insertions, 0 deletions
diff --git a/mail-client/thunderbird/Manifest b/mail-client/thunderbird/Manifest
index d3b036c5793c..48353258f877 100644
--- a/mail-client/thunderbird/Manifest
+++ b/mail-client/thunderbird/Manifest
@@ -63,3 +63,67 @@ DIST thunderbird-91.7.0-vi.xpi 720551 BLAKE2B 894926fa3cbfe5fce7191eb1f34f11e09d
DIST thunderbird-91.7.0-zh-CN.xpi 726136 BLAKE2B 2def8d6a98822e9c886002700417cf1a33db10551419da964fb818c31c7adc0dc47599ab8f4fb00f63373cabb8d20190d28ba7b7c5e6111e7522a96649d0b840 SHA512 5447b0b16597a500e3339d7282bcdd9e6927e719e8c8afa5c71cf608e7a18959be66a4cb3c49eb7400c8fac38ee0ad7d00b41ace819288eb1a9cc2456a32b7ae
DIST thunderbird-91.7.0-zh-TW.xpi 727309 BLAKE2B d6dc9650e74a0df619df07d17f3f694b72018fe2335e315c30a2efe0182cdec222ebc24a5b11de2b434a6ebd7e9c9309ea0410bd4d1f45bcc49eed79726aeed1 SHA512 14e74a10c7f0b213c39c0cb1a13d9951a6129d4b009c94c24ea4e346b6ac20d9250fd6a0541414d87af65267e7f6455fd343a6ffa1a2f51617f52bba2eec90a6
DIST thunderbird-91.7.0.source.tar.xz 409451024 BLAKE2B 0fe4c7a2da979a8061b2cfe0dce43b675f8854549a20ddacccccb52e20ec814e3c13776ece89247c76e82496ecfd886c7d23d0997841a3c999803c917eee5651 SHA512 2afaee16f155edcb0bdb46ebe282a733cf041ec6f562aebd06f8b675e46917f6f500fcc532fc54d74f3f4b0b489a88934a2c6c304f849873de4bc2690b9056a0
+DIST thunderbird-91.8.0-af.xpi 561894 BLAKE2B 91b462c633b65cbf823b8e02b42f00feae17e258950f721e8975ca954324df4f1a734c1791bbe505529f1c54484710777c3512a19dcb89516ef055568020535e SHA512 95bc1cc1b5c57fe0480380dbdb492ef46fc6cb16c7f80c457cb121e5dcac0b573f5d936f57436153402ddc3f7afc70de25c3f36f19ef517497573e150b61f85b
+DIST thunderbird-91.8.0-ar.xpi 665730 BLAKE2B e853ba424a52b3dbe1a7fa402e603d8176fa398850a28516b3bb2d4cfe4faf528d92db5619eba0b00b1ef218c01db8c74eb24e2e3d11e56e19ad615db8b1dcbd SHA512 209e45c161567e53b258dc715f16d8d4e3580ceba1be9d5e99cf5d05190e849884942bf0db91c4bcd1f4e883fcea03a4eb3da3022dd09c88282dd6fc422174a0
+DIST thunderbird-91.8.0-ast.xpi 580509 BLAKE2B 6ff86567fffecf527c5b814c1ad3a42d7a14e6329f624e34d74e199c5e90c44e39f387c24400c6d3b4ff4ee78fa3ebf7bebba101a5a8819046370830209b3fca SHA512 85f67ad13bdfde1a8c1420c877c1ae5626c11f84e3050c3541d516c4c98c74d02dbd318a1f99e6754175565528080c0b8638a87f14e453f952095c97be1a1ae6
+DIST thunderbird-91.8.0-be.xpi 695198 BLAKE2B 6549df276524bfbbadd2d6ac1db55c5c536ce4c9eae4630a95973bb9654c4f6c6f383485438a2d0cdf90bd408621f5abfa8e4ae177db991660aef7bcea1aadcf SHA512 28cc190fb20754aeb15080fb30f942753c96e7d6db3d3202a56dc5be56bcfd144855c8e2a51aa76039b59454ed46608c166a7372267dae818f4c426fd5e9cc6b
+DIST thunderbird-91.8.0-bg.xpi 690996 BLAKE2B bfd70be5de08df5cd94c701e7d228ab593d874857d05a04e2c9fdd6428968c752fee68016a388a6762d3e472ff2ccad70a1616c85d671ea8192883a57030fc61 SHA512 26eea7ad31d509f329696e851e98750deaa6b181d8690af4b496213018af761db52dbeaad107094ba24e876555e93b9b056b97b2594cbfd1b0670cc3c1c5a559
+DIST thunderbird-91.8.0-br.xpi 620588 BLAKE2B 089ed23537dfac44b0ad0f77081ab059254211534a1a7cccc628b28a1edbdcf41bb63d46d15885d4ad55554018dc2de722f7c565af44cdc952e04660d8d12f9e SHA512 3de805556b0a6adeece0a985b333d131f51c6030bdc00dde7857fabdb28ae8796c3248c5f1ec5460b2a4f6240db2496cf716b6595235db894d855ca6aaa9cd00
+DIST thunderbird-91.8.0-ca.xpi 645975 BLAKE2B 9655a0ead07207bbc450b87317731faa946a580914e3d98fbbbb07e02e6c5cd465b0c94ee15dee511a623fefa580ad3b026f3871ac3e5a171e2c32475399ab78 SHA512 fa0cb42e7d9e4638e023de6a48a9e95c94304e6c124ca48503c8c2d5720ca4e3d6e8eb3bc3ad209bf4e3bc720a9fb50ae9c35ffca3de4c02d2578bd593a3bd07
+DIST thunderbird-91.8.0-cak.xpi 652065 BLAKE2B 7b1bb074cc76e4a53de73d2c63c21a01512a12f49cc7f5933a8b35b632cf6b4b9760a44e4fcad5830f0c3ba1e5ec97dc511ef92e6f0b03836d4784c57729f786 SHA512 b7faf048bcaa8230ade82cbb6b92097b727963ed5236b7d9c820639b09c616f214ec7f4eddc0ed58b1b30f1002af073a621f3c30b928324dac2817b30a506ca2
+DIST thunderbird-91.8.0-cs.xpi 711939 BLAKE2B 57117773304313d72cdbd9a6189f48b9c3f8a9328701be8686a2cfd8952a83ff49c60560aeb95565881e14cfe9b07be685e3f4fd6a51caf634638281a60fb1e6 SHA512 43b65f4d4e97c852bb52818df11e58843502a2ec6d5486c9392993ca3f93632b9638dfefc7af0ed701551156e1a569a3869c1e5de33a37c89544a090098cda87
+DIST thunderbird-91.8.0-cy.xpi 688888 BLAKE2B 9f90c4e5b4f595d3ec0622053982a5085c708b2b563c28d412858a07b25bf5648865b5ab8623a1cf6d78ecb3454d47b30e0de0def63241a052437375a318b701 SHA512 83851c82f6688d41abb048e8bb2b478cde284207883983695a5b5f82a87e7c0b871ec1273e8f8f8724954ed14004a521f0b6530684a3cefa94839a609017e6d0
+DIST thunderbird-91.8.0-da.xpi 674444 BLAKE2B c95cbca0e1f983cea1a94026cdaedc82b8f481183e2d6a10e082d280d5d3159bf714473afd7a123305f0d0223aa1b8c7dbb3ae583927b4808bed8daac74f7efa SHA512 726f44000fa27c02dc030bc460f6d54db32ba51c2cb3734d08821db02de53c6a1b3636a42af1e2fdf5da5185aae12f4e403581cbeba1996349d7059adf51f1da
+DIST thunderbird-91.8.0-de.xpi 697527 BLAKE2B ce6894157eb98b0c44b03ed194abe3cc4cb4a7d9a2d8b6327409cef3c06b84872fc8d3e5bba66a4c5e22811ad60fe54c4303e95b388a72d5520d548ffc556e97 SHA512 49250b25927b681caf751335ad83187fb6b951a8bdb2506cc62efed5508b61a9edc0fc0a3f68a1c53c5088f96b3dc161e74877a900221653e1e94e1dfefadc5d
+DIST thunderbird-91.8.0-dsb.xpi 723999 BLAKE2B b43b130e2af3ba412400cc1f464e56bc872f020aa3ac9429b764df0435d78cd26b913f85978799e1a217f7dae057efff5f5fff6eb2fbf92f1932cab0b8bf0a1e SHA512 0980f9c3e3da3441c9e9cf3f752ae2bcf04f17646d62f97a925c956689dc09c1d8d232d00a4624392daa52f4ccaf7c39414c3d04a02fd3908c7d2f33053c0d1f
+DIST thunderbird-91.8.0-el.xpi 821180 BLAKE2B 2fa30afd1385d3e179528b2b171d5e52e223f791986a93dd9fc5981ff0410f68f5ec168db9c6f623da299d4419784647fb3313737b8226e9c9473ef476605198 SHA512 d8dd82504ebf59eb78a0806caee1f41f892e48bb11d809b69a2db4cc11fc2b1aa20e999162ac837296f047ba573d7c534067c79f2d75ad0b26065b7f9745aaae
+DIST thunderbird-91.8.0-en-CA.xpi 647814 BLAKE2B 71c5033b1b26ebcf7a3abcea3dcc4cd9b4fa3df3f23a14d6f87387d05570e9d08eaddf21102b187cac2e770603159441d48487081cb457dd322800af71cf2b4d SHA512 972fb0fe5428b2691cd111d0f64367fb58c7021f18537180146dbd7751642fcaaa8a2174aeb77536c82af5b2dbd9b130051cfda7794a5c7ad0eb3bdff68cfef7
+DIST thunderbird-91.8.0-en-GB.xpi 650553 BLAKE2B 3fa7da4a741c8661857da3f208e8a8ad35cceba226d7a1de057bde45a634671b530f80be6befb83fed96b5143724a0cca126adc8370fb25e6751bfb8ac1eb9f0 SHA512 b58f571a15ad8241e4d2636f72ac069f5977ce3ea566b8f6db03921e1a550691a0583094b9420ad1738831665c4ff832d9f521dbc8fd72bf311c233cfb0440b3
+DIST thunderbird-91.8.0-es-AR.xpi 700496 BLAKE2B 17409c3e5af16b5f547b811468be17ad1e1ef9fbdcef77929112eb71cdd8f78b8d025386f6911bba41d966432384ceee187a30281f5aa467fece59f751abc161 SHA512 15490f30abdf75740b4b571e42a37d83c0ea176ae44752b9a130d7cd4c56eba74d7daa0cb887fd94be6b07fac812fd41e33b56b9ad9b2f430d272d28a360abf9
+DIST thunderbird-91.8.0-es-ES.xpi 630919 BLAKE2B edf81ecc4f5bf4e4239106f483dbb0ff44832e3ce7395b783e5270f82289f34c3e2e9abaeb6b22d952719537d130732dd19bf68ffaa3dd8b2dffe8e7bbdcaf03 SHA512 b0797cd8b1ed968ecc0f56545500bc69acd495b970fa91422b8e2ed1b759d8a92b9ae8de93ae04bb3c457e46beaecd5446ba02554336243ae84dfd45fe0038e0
+DIST thunderbird-91.8.0-et.xpi 672170 BLAKE2B 5bddb0c950b7f13dedc288f1cde32b514138bcd7b68ef271855f150a7bcd7c1b00fe8c646597a0dfb07746290cf0d189359f421b293c8e86389580efd2013b5b SHA512 82ab5f85fe4858b31da052f38b0e5450581e016314da9d144ffa82a50508d549deba7ed18d044ced903190290531dc68bbc892cef02aefa6015ebce7efa6c8db
+DIST thunderbird-91.8.0-eu.xpi 678263 BLAKE2B 405b038f53980384bab4f0b40da87d168aa6b3c126fed787c108a79088cb097edb19fdea4fada37b7dc8f883e8b9069d20d822c3155ea084ab86f4fd33a8c9fc SHA512 e601e51e285f13e042769bd1783ef0ea4bbf4bc98701a5965d1781e9b86e979cc0df3f49930f1239a97004681c39743ee1498a30fc53ce28dd9154bf333bc7fb
+DIST thunderbird-91.8.0-fi.xpi 676629 BLAKE2B 91a0df310c1efa4b47e0490faae286a01e8cb6f0a875bd85a4909c523dc67d3592c39452d88afcd8ed238758a4cc663d859096aa512346db1d642c5e1faa0781 SHA512 af14937b85a34d597ae11b2626280650f75cba26b94dda23e143d94c4e0fa52bc452fa156d6f04963f37ca4459bf6011b5a3b8aa72a1c0dcc204cacc3484fc85
+DIST thunderbird-91.8.0-fr.xpi 711453 BLAKE2B 721b600c9a6c9cfbc493bd17eb7918166a2aed6b2ca1bc09686288c70654d232f2ba6eb720bd38ea47bd4a16e6c300a74355f8304604cd58d26794b833715adf SHA512 057a3bd49bb50eeb86ac14839857029065fcd100ab087b9a247ef8033b895e4193c6a465fd0f8ebac42e5618f083367803e698c10998464a3a2e61059f263257
+DIST thunderbird-91.8.0-fy-NL.xpi 691880 BLAKE2B 4d358eb6264013aec6fb255e6d9677d2734b63d3e13ea56ec9e2a48da3cd1d9b0bad81b882a43466ccfa3e8c9b556332f51baabdb4e02d525344b87ebcae4a65 SHA512 fa3464d240184bff5937c52b230b4af6b9343a281a9a8d43927bbb31c935416ca7b996ad34615987eb89d8c9bfd1342b1cc8623242b73c40c64d3ef8a4c2e4c8
+DIST thunderbird-91.8.0-ga-IE.xpi 613124 BLAKE2B 0f91cdba04f1cd83049f785c5fc0eb3fc4ed5944d99bb02a41ea622c084865c374d9d1cad4e5ff0b6ca64f0e69b74aa081bd5c46cbd44492e77587283279cc54 SHA512 5cf99613fc798b12046c6c1326ed4d67ef1e11ffacdb27f80bee8da7e7ddac034ed6a7c02e387b8fbe7cc5f0755b5081818d50bd69f34fc9adab923bed499066
+DIST thunderbird-91.8.0-gd.xpi 640649 BLAKE2B bc0717c69f557d39688c11839414821f846f94e5752b48c0336eb5f985006350f74e4834eb7fcc5ef4a863d8a884751501e9ccfea980b22c1f5ea392c89ff62e SHA512 298b4441e8d262531763391d857d7de2f6f327b4ac06775783d53019d7512dd16f35655f7f4e565e405fe0e4edd91a9ed60c4126f72b2097584a8ff78504cd5d
+DIST thunderbird-91.8.0-gl.xpi 677789 BLAKE2B de1523aeb7dd9a3f5080e0ba38785883d56c53402119f0faa2684e656c8953c3137c42b47b6cb908e517531ffdd845ae7210df0280d33784d3145100d7df06cd SHA512 2a19b357c916c805a41fe5846551bde08a463a8aafc5669d2f41abbbe9d5c4d3332a0a3b08f7aa1f204217935da1cf24eacca1486531b73c03a838bd14571e3b
+DIST thunderbird-91.8.0-he.xpi 673191 BLAKE2B be07e8279df2d99709b1a0bab1fa481f963e44a539274fdc0cd742d37846ef170e6082521f0ae226809fde7fb61ac8622a76b6778773394f072b703cb804d632 SHA512 d4bfd6b0939ef8e2220cc45983d43b7afa14551a644a6de7f87b4a53b7f20060aff6476949ad4e47842e036eea30ad3118582b66c432752d74edb3ba1badec9c
+DIST thunderbird-91.8.0-hr.xpi 653580 BLAKE2B c4f747c9668fb360dd1b95f73e2bae4b84db0728a5b09aa074c3f1e08f09227a5af4950fc91d6bc74407d3f9bedfbd49f91f2e14dc88e373bfac2f74e4abbe20 SHA512 d516404feeda698def0a70db061e4340622ff2bd5285cdb9ca3bc264e238619b31af50b8767fde8a86fbe74f223b7bd99a50a154094864784f0e57b25d2fbaf4
+DIST thunderbird-91.8.0-hsb.xpi 720812 BLAKE2B 02d24764d07118d7464b2e7c1e3adea97787bafe95f92a8e2570ab5d900d66991cfb5599aea8c593b1f6e1b9e458b7c352478dbec4180f8df2c3d1dbebeb68f4 SHA512 f47dd956d599cff3cca9095b405dd9b8876560b93a90c883fe35dcd840e07f0bfb76ecf28f0451abf694bc06e787e807393357159e912c750cad59178075db8c
+DIST thunderbird-91.8.0-hu.xpi 723400 BLAKE2B cd1bc27ad150e67398054da416f730b5980d18fd610bd4611aaf1d4122d5575ec3c3f9f1c37fef77aef6a265ea0e0edaa15a477ce8a274977515121b29fab317 SHA512 460cbe5bb1617f7d2be22aa10cb7f592691700bec47756461c82f22d3789b3a1ef42a24d5ea391bf9242d6489ca25d1c6515b91f629b758a50e9166c8d4bd54b
+DIST thunderbird-91.8.0-id.xpi 648250 BLAKE2B 5417b6a08c5c3dd1b0ccf7aa5ef5e3c4cbf4d4f6f468b7c1eca0e1444546b8e25ddb10d1601d42911952d5a1a55a5885057904912cdebe795f93672fe6ba529d SHA512 dc69edd053e4d0d8aed61ad6d92c6ab83b3001be5f43ef4a85e9974f3297587ee5c252372c3b08cfd26b70987391037789457906f8715705cc45662ea5f48b1f
+DIST thunderbird-91.8.0-is.xpi 682261 BLAKE2B 8d754c2e43fc7a42b24aee7329e9a91728f41e15ca23206d185facb24aeca9b071ca3aef8fbff8b9b8d8fc718db5275080716bd08b02ca4ac749760eb3f56664 SHA512 c6dfd8ea989212de68c90f27b14e886d9f098f37a552dab2f03a4a5386e2963c545c83c570bfb027fba824f8fc427ca0add063120b05b6e05c45f899ff2af216
+DIST thunderbird-91.8.0-it.xpi 613333 BLAKE2B 28684b199b8267c18d1dc7a06bed6e08f948689ffe47ec63609ab0eb7bca2974ec5c2fb3ea38cd1c9b5543fd2d858576fcd1b014d5b274aab37d28f512616449 SHA512 37d0ee737637fc270b7729eda98324a25b92c3849e61ed33f7ada88ac91b9228942b7b91c7db882193798c1a54b716f9b8da82bc2600be3f755ca677a52f7022
+DIST thunderbird-91.8.0-ja.xpi 756466 BLAKE2B 40abc87f56c3503101244281040c259395ecd9bfd91313578437acd7391af4a76fb23c07f27ef66ef2d6b5d75fdbd7ed9cfad1da9c5f5370e105cf09a38510e3 SHA512 86ed9b15f311b747c0673fa5776486c10ac789da5bdf1a970dd2edc70452b8da5f693b361e87825b77b012fe5286bf2de84fe531f33e6448da9a8db7e455af42
+DIST thunderbird-91.8.0-ka.xpi 762629 BLAKE2B 8b4e63b2b7d1da8179867e19e82d739649b6e6cbe889c8cbe3ff2921d78e61e1d0d2f4612f6bdd9e6128565cd612495ace60f5714160afe43820bb6ef672b876 SHA512 84d6a450267952fe8d17a26365d5539cdc5d7c29a1d7d92fbeb3b063c404fcf15ee529a0514304307c828d29f174a3464013641a4a3d86c6743099215367b7d5
+DIST thunderbird-91.8.0-kab.xpi 677087 BLAKE2B e34b3329159282015859dfd7383f64d53128c3db47b8ec7763b28aee8693f1a965490e8865710f3763a4229dce872c33741cefa34798ad6e283958d76ad45c2b SHA512 33f8c9bc1b32aa2091d522bf7d16f9cb78265716e94b2de696380f07318be381ef74ead362f77dc029e1e48369f68eef8596b29e5a72771a8acc13205338c1f8
+DIST thunderbird-91.8.0-kk.xpi 745524 BLAKE2B 0a9e56371eba9bad979b13f4311ffc9287f19880556058e6a415782e4e25617c3d32246f470e0326c215d9e6e7c09e2830bf0b6150417c45a2cd2153b09bccfd SHA512 7dd5086a4e665423176b94bd246c2d52ab17b5c744d878e629f847ec5e7c13342ceb8ad3328bb4c83d4f1c8ac50c161915b05298b6c9a2057d7c240f2d6ed2ae
+DIST thunderbird-91.8.0-ko.xpi 704769 BLAKE2B 613375caf04131d5ab907b18b0750b8d9eee8670f126b91450a89240d13fe9c19f1e3a7122a0bca6a83916492462f81b0b63f42b54eaf4c6582e67cbc5334e5e SHA512 cc94d9b5d655ea7139b5c6650e4661b5d3423e4e657bbc0858a0e005b232d48b76662faee5898c71dd00152eb7292caaa677f552176010e83cad9f0099fb7e92
+DIST thunderbird-91.8.0-lt.xpi 696044 BLAKE2B 693e3065862bd2c64c7a2873ce6f4958fcbc4fbcb03b47830440961f6f14f62473c73e905c859e2a67847926797656704babd9dfb1799e41bdb4438d6987defb SHA512 d6d843a87b7883ae9d2f9edd10770bba2ecc326c3418925c364654e605a3e22ffe7e3410b6b130cb734b4547ad57a965956e70261c10348aed57bbccfa14852c
+DIST thunderbird-91.8.0-lv.xpi 618525 BLAKE2B 9a658e2fe5c802aa6aa4cc3d8b2a3bb834f3f4873c994c9e1fa035dce0df9ac747eb7ea8a87807e36a84bdcf8bc509302ea423db6a747e1ad63a23c8496209ae SHA512 c9c8d9e34dd1c9a95e36d557db0d4e1e18db0e0080c6e82a786d1061aa46f1d89465de9598fccdf97512c8c023a566a07e801f2c713a5893817a83fd671fd8a6
+DIST thunderbird-91.8.0-ms.xpi 578080 BLAKE2B 55210dc6f2bc929008c972da98b366e59836a16272464fcdfa391b421c056179f4b4ce2a69ac38432b5207f9ee46d902d26002dd047c567a358664ab741a77f2 SHA512 af148af6d77dccc7111cf84093c4d3c876d3ff597cf1e91eaf35ecfb21fd33e7eb7cf2a30b50655a636b15e651ea6d18e6d0eac6e90df15ba4ebb398c807c76d
+DIST thunderbird-91.8.0-nb-NO.xpi 653327 BLAKE2B 1fd577995a7cc28ecbfb3984d3435836c5fb4c9b0e3d5cd7ce32cb68ee23af9e015384df0926fcf9fb54af5efc0bea0ce388cfc13786084985d54c1dad808b22 SHA512 ed1155fd22a92ad1c1f06f13cfe6f853bd18b7b6a1897f100f32d96f91d9463e331cd7dc74af7e2aa57a8139740ecc2c122dae7f221e44a5dd4341d30e5e9364
+DIST thunderbird-91.8.0-nl.xpi 685342 BLAKE2B c6c521084b429f5e79b18790e7c9c9336a672058c8616515871a231e1322e9582f63496c5ccaeca4ce57cc20b004da7e46f4439279c40ebf2f2dc0d0610bbec5 SHA512 b6db1edb5b518985705ecbeeeb6b5720c11780bd9b7ce2b2da4078fc339afe818715f20b1dfa246b29fdb8b129115d1af100feca0ceeb7815b841b042752dfff
+DIST thunderbird-91.8.0-nn-NO.xpi 658572 BLAKE2B 0accb581df38e71e07161789070de7f5b9caafb51b661521f8554aecc090a835be12e268dc3fa7d1793b4717294d378f69948961c126cf95b6a6d3aa73b9b108 SHA512 a2dac86c96469c3a4d675d8017c67364bdc8fa88d94910a90a663eb425a7476db5b89c307400d64d0092dd9fde0ba9900b3948c036ce4be01d9ca90f4bf8aa43
+DIST thunderbird-91.8.0-pa-IN.xpi 652334 BLAKE2B 17140f837ecebc7294d504ab92e60313dd24aeeeae6befa62292aa06a91c654edd51fb23dbb74ddb84b56a79df7e9ef8cb07ad2ebc06c6c60aa69de06e92cc75 SHA512 c57d1de37b7df131a7ca47798f9a152d90bc3a0e940f3d522d4522ec901000ec4016960819d1d77d059ded8057110d9721349cdac30665b99a5a06c5aeca4095
+DIST thunderbird-91.8.0-pl.xpi 694112 BLAKE2B 61bff41eb8e80532349e38df87467508f6a50b219e6cb2414914b1432267902c8f6f72c179afede242e914a7b00c0e3828671d6e5ff78c8f526777af4f743365 SHA512 e485cad56e326c8dd8121366f7cda59e7904ae4c269318ec86973a31e0e111331ab082f42afb8298bf6825215bb7b6fe1a6374601859599a992f3913172ccc94
+DIST thunderbird-91.8.0-pt-BR.xpi 694133 BLAKE2B 9df2655b9a6afc0375d4e8671c3b02127742ff6de37d5bf0235e846cdb14b9cc60fd8e8effbcbfc64f0d63c806b14e901dd8b1c6927c3e8ce8dc56e39ba67aef SHA512 669f1be2d608e899ed0bfd1c8e5764847baeb8c061523de4d2a648d3ae03e8c528bb69ecdb0fa59c527ae64eda266040d5c30637296c234c3378ceb1aaf39662
+DIST thunderbird-91.8.0-pt-PT.xpi 674674 BLAKE2B 95aed11822bd01668063cd345d4e9927bcf312c17c71bbe94228cbcde9dcf396b12b779e329da5ae2710c21f8e046c56402ccfec9c11c8ffa460023b0a61954d SHA512 1f3a3dabbe9937b19ff46e14553829d3605f05d9466156a7e6f26f0813609e534a2b5b80de7529e3bca66a22941d18d5cf6837e95350891f1276727219d07e1d
+DIST thunderbird-91.8.0-rm.xpi 687614 BLAKE2B 8f4eaeeaadf3508484567fa66b9e82b9a8280d554700ade05e7f4d0b22a2c0e6ae0e0c854b1367bf43548790d49a6ccf8630d773fa1debe0926e088925f6b8e4 SHA512 d93db38a8f4a435e609f46743c99b8eff760714e1daff365620be059b8a61fca53479b5e2155690bff7a343d86d2adbe308e1c6e818670b18e00a2f97a79257e
+DIST thunderbird-91.8.0-ro.xpi 661346 BLAKE2B ccf870b835ca8c92f8077172f3e0f8fee832eecf0cd745367d58c8dbf604ed7b06821fac274f3ded7288984224def1624a690c931b684b4983a188cfda756131 SHA512 0b7df068486121555a5f9fd08c229322fdb889390d61138b1050b9d1c4c916683684d82187f8c7b0e5c5d63bcc82cba0b9597b81dd1406d1f19e31aa8876bf7e
+DIST thunderbird-91.8.0-ru.xpi 793374 BLAKE2B 3ff88c83abec94f9a4e21d6a05c9b1870c1eefbaf179c698d7af3bf479e7cfa8a232533a6dbd2607acba8d6553128d04a81ecfa788a062ecddc8919624ecfa3b SHA512 a5f4fd48aae5719a38ae3a715b93146c184a50d7f5dd6a4f44db410c5b0b1464dd2819d5550c3e642950de32f4536b48fd3a2a76a4dfed8c9880be44ce6e2d15
+DIST thunderbird-91.8.0-sk.xpi 721093 BLAKE2B d65a0d2a52f1dcf7f73d2d37e73a86b1a7251b907fc5025c1dc65f33234a39cf809ca878c0a18b99edd1c419c0ddc2570fe0580e0cb2c6e8a1c14a150edab5ca SHA512 077c67f7ab72e8dc01038b14a96361ccf6dae8027f80079b63c9c7b2e146f31873754381106d89fd1b1034aa2a779cafd7e5fea752d603269fc6e14548b4b18f
+DIST thunderbird-91.8.0-sl.xpi 682544 BLAKE2B 39575e474371b497ebb4e737a883cc46b949e2787691884b432fd21287f3c3a916611c7dc4a21bd9b044a4f93aa86631abd07ff57e473540b1d1479d719dc167 SHA512 9afd2a905473e78738814f19e12f3bb565ea8bfc0a4b3ec054b11c6cebf9e0fba996345381e0b0f66ea2a96f1f31dfdf8a5fc2dc6add82bbb03809c0f2e977f2
+DIST thunderbird-91.8.0-sq.xpi 703626 BLAKE2B bac45d0de92981b0f7065838bf1c51a8ce920701accf174620bd397f098835cf0b9b5cfa6207c890c17b56324451b1c574ed51e496aac6988fe3b76aeb48919b SHA512 7dd70b85c4e1c05aaede45b4c9d9e665d9715bd8d48936ca687e4b4b6adb4549fd656e48f0a70a2c0697342c4c235d5488772aa271f032a5e6da75147cde881c
+DIST thunderbird-91.8.0-sr.xpi 710564 BLAKE2B ee9954ec5691acea9af05deda3bb2ef6612e5ed742c279188068d46dbd6912310f63527c1534cca5fb61276760c0657b97313903a8314500f487dcf30302f68a SHA512 96cfc5721c427861e1bacd80b0a3408fe88fe21fe8a3f9411b28e908b4df170faaad52c22fe0588e38c31acf685068a921d569318b2b1d5257dba2c753698e73
+DIST thunderbird-91.8.0-sv-SE.xpi 690968 BLAKE2B 504430e0af0a0dc50aa8dc986ab0e80b787a6fb4f2c1316a224b654e0803414334a0db7e2eac11cd599b5d878e9a7ced9805570dd1d3e31a157a1047e461be7d SHA512 3e5fe7bc5215e5432b9e62c130ff59f87c3ea79a6bcf337448d11bc1b41530d8046badd34e296f8f8531a9676fe642ef521820d1bd88ace0a693bd5e395c956f
+DIST thunderbird-91.8.0-th.xpi 748756 BLAKE2B 059c3296baadcb3e746f0fe0b991aeaa5387701b6798a7bddc7f3dc2df8207d7285170bb23f2454b59e88b8c6e83a3e71ee57bcf61e0201150185de19a4660ff SHA512 02401e05f9a4a63d80f2667325beeb46e6d91fd027665908160baadea5ef1bd057436035d759636e6a420874e8b9a986f1d325ec546d87c92e51cd890c5bc7ad
+DIST thunderbird-91.8.0-tr.xpi 699652 BLAKE2B c3ea88e1656ac821090605a9a8db74fc81cd5f72b0c5ec257980b567e803b28d0e9ba34e51b588ef956231fa0817bc01ff941b35bb5c085a716a187fe28903f7 SHA512 216954b928d041ea1641e596138a2801fbe17ec26cef08b41f54a89915943d722cb24c626aa4ae1dc5a7cb4bac887394c03790a9cc4aa6989a876538a55330bb
+DIST thunderbird-91.8.0-uk.xpi 798482 BLAKE2B 19778ae8cfcb93b83ab540c78db6f2761cbac997d841a15bab931d3c75f67c4753674d13f15b3d0c3caaa2ab36834252e9bff1d6580aa1519d0f8c345a33635c SHA512 f20be53c19b00984d44bb3ae0636706b7f0f00567230a81f51904a8d5bff134a9b4fe92c2a100e93d9e9d36d639a3cba9d168778bb3394db2925844c18ce6950
+DIST thunderbird-91.8.0-uz.xpi 595925 BLAKE2B 6762aa6058ae6faae41e0ce356743b6fee09d42fb7b1ea7daf6c501b3dd9e2f03481885ccd39a26c59aa66bb2ceb396dcad53a34adf97913f0056c7a5753afc1 SHA512 de4107b5f69634b33bc807aba3a9a477580e7b1a19b159fb128b27152d030af342f895e3f88d7e7301e45af51b72bc11933805bce2cb47324f75a45b98447787
+DIST thunderbird-91.8.0-vi.xpi 725527 BLAKE2B 63e83e534406ff29e949211db05e9e4a174835cc81e66b1057834cc0fdabf520d63c06e53408dac6215c4138fedd8f0804b155ea80113a8f2fbb87a4b8f75c1c SHA512 eee86653547672465b561f9f1ce9c6bde733e9db05cebb5230471a0a016a7c5c389adf67f66c6312def5abac0c0551820756f0f49448bee0853aeb21c5dc5f27
+DIST thunderbird-91.8.0-zh-CN.xpi 730902 BLAKE2B f9b38733993da2958ac981c150fcbb0482909cb9930f9c0b00dd5392a66730ccf4ec0e64c384da0cda249a6758626131ee5651fd7113a59b90d12e6ade84908a SHA512 02642d349dd7abd54c6462c32db381777f863077de102e35d7b9a96f33b2447e83237592bff7ab7ddd8486714477fc144532887f0e25bde8a2d81bec5f4b2948
+DIST thunderbird-91.8.0-zh-TW.xpi 731944 BLAKE2B 96af2bc372640dd48408f261f05bb2a751404510606cb939e6142009a3cdeaf87f956120f82956504525d4a3e81a56d1ea3146490ea0a0443fd72c36bffe25e1 SHA512 3c0bbef2af7330e7ee760c22cb2d90f8adb1ba522309ab946745f5ecd734bf094633b943367c5d5235021d6bc000e5569df8e41380f582f7df8500b9eec40fa5
+DIST thunderbird-91.8.0.source.tar.xz 404452336 BLAKE2B d045244b587bec6a35561cfa1de0edfdd898e2f5b03373053fcab7584ecd3f3fbddd618763732ce320920de6f3af4033b19f7970e0a87cdd70c21daba4d0791b SHA512 147c7ad68b0a32cc0fd4405935836af1fa77bbce6a1e367b51ef9871e7fc2a8fe908a1d200be34326f4f339d272e62f619b75680201fe82d301ddd02e23824d5
diff --git a/mail-client/thunderbird/thunderbird-91.8.0.ebuild b/mail-client/thunderbird/thunderbird-91.8.0.ebuild
new file mode 100644
index 000000000000..db68b9f2832b
--- /dev/null
+++ b/mail-client/thunderbird/thunderbird-91.8.0.ebuild
@@ -0,0 +1,1137 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+FIREFOX_PATCHSET="firefox-91esr-patches-06j.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!"
+
+ local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
+ [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
+ [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
+
+ if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
+ eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
+ eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
+ eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
+ eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
+ eerror " - Build ${CATEGORY}/${PN} without USE=lto"
+ 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() {
+ if use lto; then
+ rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch || die
+ fi
+
+ if use system-av1 && has_version "<media-libs/dav1d-1.0.0"; then
+ rm -v "${WORKDIR}"/firefox-patches/0033-bgo-835788-dav1d-1.0.0-support.patch || die
+ elog "<media-libs/dav1d-1.0.0 detected, removing 1.0.0 compat patch."
+ elif ! use system-av1; then
+ rm -v "${WORKDIR}"/firefox-patches/0033-bgo-835788-dav1d-1.0.0-support.patch || die
+ elog "-system-av1 USE flag detected, removing 1.0.0 compat patch."
+ fi
+
+ eapply "${WORKDIR}/firefox-patches"
+
+ # Allow user to apply any additional patches without modifing ebuild
+ eapply_user
+
+ # Make cargo respect MAKEOPTS
+ export CARGO_BUILD_JOBS="$(makeopts_jobs)"
+
+ # 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
+}