summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoonas Niilola <juippis@gentoo.org>2023-10-06 15:15:42 +0300
committerJoonas Niilola <juippis@gentoo.org>2023-10-06 15:16:03 +0300
commitc1b410e8cdd80e6605828bb626eb365010577a7a (patch)
tree979a1d8dc9d0650a8ef8ff5331b62ab66bbe90d2 /mail-client
parentwww-client/firefox: drop 102.15.1, 115.3.0, 117.0.1, 118.0 (diff)
downloadgentoo-c1b410e8cdd80e6605828bb626eb365010577a7a.tar.gz
gentoo-c1b410e8cdd80e6605828bb626eb365010577a7a.tar.bz2
gentoo-c1b410e8cdd80e6605828bb626eb365010577a7a.zip
mail-client/thunderbird: drop 102.15.1, 115.3.0
Signed-off-by: Joonas Niilola <juippis@gentoo.org>
Diffstat (limited to 'mail-client')
-rw-r--r--mail-client/thunderbird/Manifest131
-rw-r--r--mail-client/thunderbird/thunderbird-102.15.1.ebuild1190
-rw-r--r--mail-client/thunderbird/thunderbird-115.3.0.ebuild1313
3 files changed, 0 insertions, 2634 deletions
diff --git a/mail-client/thunderbird/Manifest b/mail-client/thunderbird/Manifest
index f8f52e0717a4..6162653c8cd5 100644
--- a/mail-client/thunderbird/Manifest
+++ b/mail-client/thunderbird/Manifest
@@ -1,135 +1,4 @@
-DIST firefox-102esr-patches-13.tar.xz 22212 BLAKE2B 02e9edd071a99abbac02faa11ffce061d5d12d8baa9ce54b51d6bfdbf8160022a1565902d65ca30fe51b5670e509fa921b11a460989933cbb797fcd59d635125 SHA512 8b8b0f3789978447a1293fd9acb5c2db3d7e9f724357a0d762b54f7e34d28f11655997ffeafccfe8001a01dd595848d257f90cb983462c405d434cc794216520
DIST firefox-115esr-patches-05.tar.xz 15000 BLAKE2B e6e6918d182100616095119f1da7fd6ddc8fa3dae236d075292451f2b2ab1be7b16620eb17f01e5c10fc81324c81b25c596b9e99e7d7745a7ac0b22a27ae3e97 SHA512 ccda6860d885837c59e7ee4612bdd72dedcbc0dc5d6cf7d40dc6524591b67a2d165a251a13662bf1dd3995ffe392861a73bc08bc606a2320de5a5d8880086314
-DIST thunderbird-102.15.1-af.xpi 556867 BLAKE2B 4a084cba1c414d788252fbbec52dd88982910c4af82ce418f10f3f8527e63ffa74a607ea06e2fed32f5973bc520d4a4f3eb89e1d6d24e7aa71cc81c9a82eddb9 SHA512 5a62dfb70174ce595b66d3e68e2fe0426a6c66d2b77964cbe5d1e73739278b4f3660c7ea7354e98a6cb0f4cdc5ea578b35d97ea1c2ae2fb98579e77f85b51a96
-DIST thunderbird-102.15.1-ar.xpi 666808 BLAKE2B a35bd1979b6f4ed374aaf5373badcec33dddd1a30c35f50b9589903a3023ec2f41eb8d3ffb40754fb0f04f43b5bbde14bce193bc77369ccaa5d9efabc0e657fb SHA512 fed83e1325c56a3f067810ff531af999e05d22bf1b2c8bcc9442ea1fe1841ebd4588aab1159237a9c29ec144bc278fd85a29315db26b0a20808c7a1e4a4c25fe
-DIST thunderbird-102.15.1-ast.xpi 572285 BLAKE2B 9bbbc9b64902c4c373be79e80e325afa12b3ceeefa34376d8e9edd6fe7e23e5d74e652e1b03e43dfd55e13b01699c61ff3889f8251f3d2d5b692238ec834ab2e SHA512 ae34b0826ce74280685b93bf940a377942167bfab223e745ed5232821f911e8c4ec032df06aec3ecc05dafb0099ca1d0b8bb5654d8ecf2e6d95be4f42ec41a3b
-DIST thunderbird-102.15.1-be.xpi 701911 BLAKE2B 036f9e9623036874ccbb47a1c9e12854ba636c24570a2830d243f5533e42469d773989bb335a2b2afd57c8ff576a9dc3cade21119ed5740bba3bf927ae20b5ff SHA512 d490773f0ef246b86bfb3bd6d7ee4c0173fc7bca4aa2293fb6fef0930e4e8a3bee7d96b72aead6af2b6d4137ef8d28f1981c0eee9591a3228a5fde0e281afcfe
-DIST thunderbird-102.15.1-bg.xpi 693376 BLAKE2B 31c98795a387dcf51fbdfec64e9403736190e8c9b6d9854dd8eba2e7a10168396b6f3ceee58cdb444839d880102190bc2eaef6d73f7dc2e4102c15b5d6ee2d7b SHA512 3a47cbea8831c6ad30c4194f7f13aef7f226d5a1eac0e520f0fe83e8fbf67bc263181756fe3fa72c4e6bf7848b708c608f56c9b45dd988553e8f92f10165468e
-DIST thunderbird-102.15.1-br.xpi 626469 BLAKE2B 74b29055aec6aacce016c207c934d1528dd5b4085cf559c583ecc9247cb0c93f120eeaec91782313b968c79c7f6918132235d9b36917d7afd4b446193fa74e23 SHA512 af9a45cba4bf51d1892ba35e5f34dc0389e14ac6e48aa302fa85f3c46bc4d628c59968a5bf0cbf7a746af82ce653a941895cb2a6b3130428f00e590423f1bbcd
-DIST thunderbird-102.15.1-ca.xpi 651364 BLAKE2B fd5cc9068ff4f2c78b9ca85e8bdc2c8a8781ed8c8702566745a64321c62f68966835d4f488a5bbf9b82740b58b0e4c0de374aeba689a1c491560997d60cdd52e SHA512 d4659aea9e55ae7fae8d95d87f34678914238248e5d639cc6ed50552e7051b0631ebafc8ed951fc915eec3a242059118686e08eeb5ab194eb143f599f1625f2b
-DIST thunderbird-102.15.1-cak.xpi 651778 BLAKE2B 6a0b52611748664dc5e76fce295078608ebf48e445fdab34233884e1f5119112cdde9f76eeba2859d8550e81db98afe3be37803f2474f05f4c68c5b3f2f0e401 SHA512 94b07990a48f0d56a3ff7d0c908f89b5298627082e48f1f8797ee427a5b1df17206a75aa08d8cf7e7066f481ec15e0529416319413648507bf5e41daebad592b
-DIST thunderbird-102.15.1-cs.xpi 728623 BLAKE2B 0a1d3f14dd07199076aa30997744c8c437bb302d60969933b4dad860f14beda909c68c9a9bb95ad35ea710ced8962ad1ffddbec26e8aab4966a69595fe3f98c7 SHA512 a0ed8751da41f727f01396cce0bf89939a02a3f0884342ceac019f365f8d789b882414a21bf5707b1a76d4b3577fc2f81bbc26679407bcef2edaf0e74b536eeb
-DIST thunderbird-102.15.1-cy.xpi 705574 BLAKE2B 1abc8453de2ae18d3e06070e7e338c6665dbc16e946479ea2c1677c2270cd47c9dae7c088beced54b799fce6ea63e9913c9365f265b743cd88955ab50c8fe0e1 SHA512 1016a71112f02699871259bd1e805e93233419c3695e6d29d0ef683de317dfb00523260330f4c20a6f10ab8503e1ce53f8bb67cb12045381f5190a2374774470
-DIST thunderbird-102.15.1-da.xpi 685254 BLAKE2B c26401930387a314d1de1a912b062a92e06c053538eb9f19e04e8a1f21ec684f068b0f0c1c8670ab583731309a853bbc2ab559408bfbb08251dbf97971ce5743 SHA512 6eefa771ba941bd2867f4e97f18e3a23bf2eac5d65a3f470a128b0520345d8ec0fe95fa28c804bd1c7dd526b2bd7acf9dc74bd9c7c4b3bbfc7acbc8560697392
-DIST thunderbird-102.15.1-de.xpi 717943 BLAKE2B 4912dfd1b4029d846e7b89d873cbfde045017274dd11617906d5ecf54b9fe62099f1fe50b1a4f9a8f857c2cdfea7855b4207eeed7ff6f43a754f2011dc66add5 SHA512 c6c1c5e3b86f2ee8c4df0da0f6e614ae0ae0a41024b9fee700a18f78b54f3307a0898887fd31f03e0710f0a85f68d264323f89c6931bb418b2d1dd6c26e63fe5
-DIST thunderbird-102.15.1-dsb.xpi 737082 BLAKE2B a155e313088013e9019a1028696a40cb3fbbe7b772241d2acbe1ebcc6e0e8c7a7e15d8f6360c12ebb548f6cc65dc05fb0c449ac835b7b4748aecb5b27df930ce SHA512 0724f6c0675b62e1966c968aa42a74962ff8f719b853107485ad228e9d2360f9d169984c1f620c3a7ac87e83c5bff34d03072ed56445cc214546969bd08300e3
-DIST thunderbird-102.15.1-el.xpi 840811 BLAKE2B d835412a2612683676b468f31051bc5308f3431d8c800fb15b9100b68a54d6fa97f2b02b2506877a560c85ae108d098676d49c3fba3fac7c2dd2cd1448e8a567 SHA512 8ac0897fab426746bb920d4b1b096fda6e8ebde3102a1dbba48e6aebc832a1dce089e1047e0b9158d7b5608ba21bcb88768c9eee357e175886cd2fefbc1d41ec
-DIST thunderbird-102.15.1-en-CA.xpi 659093 BLAKE2B f531b11f7760e65c6b596a5df311bd6b31ad753a8fa9bb14c0394146a93ba0e181d0c7c2e7f2c19d4fb90aab03871fd54953d8afbbc56ad839180835ef255c45 SHA512 89c4a4d7046e095623d93da4afd5616598e5f8a6b0c2fecab66c3d6b3478997392ac28a590236cfb82e21be1168f8eea93739d9652986a55d5509a7431a61137
-DIST thunderbird-102.15.1-en-GB.xpi 665007 BLAKE2B f61c8e68a039b680b46c575912d61db9f32875f22e01e926c0b013ad371f2b0fe475ace75a6203c73e6a60626640b3ee75924f78a31f7979dc4e23d06b51318b SHA512 e200bdd90b58bcd79830dacf920adba1e5a2827b42b7ef9a47f5dd73544556e730f26bd295be2834659a9535f4845f4069eef4d3914dc49223dc6990ea5a3546
-DIST thunderbird-102.15.1-es-AR.xpi 717272 BLAKE2B 6640d6c9cc9e6128de266866a03fe362b62f4f56b60c59c6f097e89d54d2973b834a68370eaad4ecb53e1e74215d9fe31a523c5ef32dac93cee3f0dfcd2dec8c SHA512 14b68bb72d5537682e75a4b023f7b5357edb945f313ff4b0533ff5fcabca707a905a32a4c6ec641f141afe6cd62d51543cc5139ae07ad82b7b764a14f81c03fc
-DIST thunderbird-102.15.1-es-ES.xpi 677479 BLAKE2B c5ad2697de8de20f9f2130fde852ee6894c69c14e7e640c62e855217c21132365c06b4f04773c9e923e182a140c26e5a6f68ac01c57f2cf32e0c09bf8b9a0971 SHA512 fa4618e7024861292749e51de3f93a42f1ed6aebb5b67a21ae9c060f604c196b566b7c0a01056ebc622f1eeb629491cf3f6e22fd307db2196873ced525f73a19
-DIST thunderbird-102.15.1-es-MX.xpi 719706 BLAKE2B 1f09522dc3e920698c31c23ffc54ae1797e144546d023c0d0da925170b458faf62a4ef0407ad428e55108d381eaa6904548f32996b8f7680f3403e386a605917 SHA512 25a898a51e4911621bbe7af5399db087e4dc5d0e5903eb903e5b84c7b96c3408463dd9bc250ff8ba11dd6ae2027c61f270d98b14a4966f5da7b653ea69ec69b8
-DIST thunderbird-102.15.1-et.xpi 676673 BLAKE2B e0e2516c326bd6c40a6edffea74805221dc40faedf18615d24e61293f8aae47bba7554dcccc8e21cf32325c30258cc1164d84eeba04830d85982b63e18ecdeb3 SHA512 aaaf778ce76a62a4dd5f0efbe22d00be32993f5a0928ea587a6ec0abbcd51e922cfae76b3dd368a76a3be086a2c2f1ee3f379308d3deee0bc1452f6731ae2602
-DIST thunderbird-102.15.1-eu.xpi 701827 BLAKE2B c4a2c96f2b93ee9b01e843d190064e1c4cd891408e9b9e145b0a24ab95622fd16e2a50dbb766e2ef360501f9cd15ec07aba275bbe341114263551050cc9a7213 SHA512 0a963e08253884e8db2db12eb877b9b207e0399379b4ff6e553374abc5acf0e5f5f5e87eb2af564e181715b11d0ddfbd96b9acc03f28889e77033bc8bdc6bd73
-DIST thunderbird-102.15.1-fi.xpi 693484 BLAKE2B 3d469fb18155f453fb66ed02018224f03d5dacf2c637d6036c280981a6bad0fc75c494e1bd64cf9e349e87a5a60ce3c1934dc30ffe22cd8147bdb91911e06a36 SHA512 a3a60da468539fcde731e0dedf92c8f7b364b7af8889f29674cd379c6918852aad171ad1d9337a746bc00393d165fdb76ceca9d44e56434f759714808f17c095
-DIST thunderbird-102.15.1-fr.xpi 730314 BLAKE2B f6f0c4031d8e47aa2ce32cdda94ab897fcb3ba664ed06f61126474313af69b15f58a7a6daf3427dddb62721629479a9cd61b7c5f1c86e49cb27fd737b8db93b6 SHA512 efa266b25259d69bbaae5ab5220379472d7edc80e56a5c08492239a0965d15ccf6fb30e7d49ebbe84368ebc5771f43d98a1b7d10c701a53c6839850dcdb6cc7a
-DIST thunderbird-102.15.1-fy-NL.xpi 711990 BLAKE2B 3ab27fa0a7c0260a458c23acfb72de41378f275d09347fdd360c780dd5a19ab5bc320b9cb2c3fdb39c8d4884b14f8b45be27958334becce3c9c6676e19187231 SHA512 f24caab4df202cdd054199354b3c85b808be12108614367d0bce6f1fe2785944f4c6d6e79345eab37e7448f7de1f41597b648744fe1a1ba5fe19ae65ca03b3ab
-DIST thunderbird-102.15.1-ga-IE.xpi 614535 BLAKE2B 5b4118bbea2519082eecf1d7460ec6e970e973a53ea008972634713d6a4a88e9e0819f46afc54e7e0db239d1101dc48d02221c3a51a85638cef1439b432b3079 SHA512 2066b0d3a2c89d467bcdf142e467c7a19051655e84f2d255d2b507a0953f4922e821ea943b4c02f1f872c4b2e43d455b06fbf8f97e81b81187a9339a695c335c
-DIST thunderbird-102.15.1-gd.xpi 643572 BLAKE2B 2ae836bfaa35c22c5fda145c9e396c2d50c83f82090e0884b64b05987d147294d12e0f35d9a54d3e18ecd347ade7ccfa2c2dd9ced6e9d1ce52de7f4eb1dd503d SHA512 5d504b7dd7a2bf1cc4ae9ec6aefb2fcd495f4f2befba36d3b03531f33645b063e528000fb7ceff0eb20224f44c670a756bb1c43bed761d498f0502f5cdafe690
-DIST thunderbird-102.15.1-gl.xpi 672999 BLAKE2B da34bc56ba8166f27383607ed5f0c32e1738a18bbe460ce27d98439f980e0599f39544038a20beb8b3a79a6d642e8ef7406abc64ef1ed7325d5798cc144aadde SHA512 89c2a5631d87694c61f7697244e63c2815defeca38074edd9d345c1b979ef1c5372f81ab3c48c0348275a5201b222428fd2f7e1e061d5d5a505eb2e2221b2bc7
-DIST thunderbird-102.15.1-he.xpi 676367 BLAKE2B 01880923abf8720ed907a85618c166dc22b43c6af02865feba711eea01dbd497ffbc375d61909e3fe4f75cb6aa0d695d47deede8463394ac1af615235e78e161 SHA512 b5f7019bbadba185ab5494f6340397d674eeaadb0c7a8e3187cc8ca8078707b6ccf032b0b8050eb710c60634c434819a81118a9fdf24b9284837959864e09b4b
-DIST thunderbird-102.15.1-hr.xpi 677717 BLAKE2B a47008b76ccae630724fdba63023b5a97ea6e4d9d2cbaf01268dfb0d3861e97174755db21dc44e49d88a78140d026ec58855748fd70342489e5452d163dc77f6 SHA512 7c4c747b1c035ce1b81ee7aa68ad33c02f77ec7d75f404113c7b1fad8617a26a0098858fefdeb68dcf102f61fcf312b388ec595f40bad85fcd9a51c773f73c6e
-DIST thunderbird-102.15.1-hsb.xpi 736538 BLAKE2B 03da7718115841e84b7bae4175670565c99dfdaba953297b464cbb6f9c12c9c71c0e7ae6115c1ae719d66340c86dc357502c34939fc89eaaf3d001dd1a227bae SHA512 f33150d20f87bc812cd63ac9c84c1938cd0e81061a3c9dce005ce3fc7e19b83d536bf8b86d0018e1550bcaa231f262a54d00555926bff815a67afab3576e3d2c
-DIST thunderbird-102.15.1-hu.xpi 741199 BLAKE2B 575814969143a0af0d388eb379845cff32e61a8e21692b71fd82a59b4c117f90d503320947705ae1a98d95b6c19fae312f910be3cc3b0ccd403d934f049a0c58 SHA512 6b6a786f15d3462e90620f66bb23a4e70a74fc56cd66ea4cf54d3085277bea9c5b502c9c72ec7848ceff7d5599ba9c06626b242b23c8eeb3c63a5cbc3a22ab28
-DIST thunderbird-102.15.1-id.xpi 653190 BLAKE2B f28f3b64dbb22d0eb9684bcc54596bf089fa0db7d7989f7895a79d4280bff2b72db9d44d88af11170fd7fdf29af741efa9b071a94095f665edeffdf5462501ff SHA512 04dc8f6f32f07783a50924aa26b3bd6ea7c157b08ce78c3b1fb83a58618bace56cdd9f385addb0922b1739fe7bbd2bb9260303526e8e33b57636d02a9bb4555d
-DIST thunderbird-102.15.1-is.xpi 706391 BLAKE2B 1e6752cf0e11aee1461252cda0087d130d6a192e6b8cf27add604e01a09548c6962d1ecc254ad05a63508658fcde3b47ca331168bf989ae7db9df28c8c65f5b5 SHA512 9a0e5d8c3cc4aacfe8046167ed896e83d3a39e9bde3a2409e714e48c879ce8db11207dcfc9404cb95d2aca8d3d2245b211fbba6e45ca3f4f2b0c1dbc8e8f2337
-DIST thunderbird-102.15.1-it.xpi 639986 BLAKE2B beaddfbb045bd7af0820d49d6f31811ad5ef733804fdcc3fcec984260639da4770f74c9a43bad0f4ae03e51d2e0b2c7891600de4927bdbd81388d0b0c5879e02 SHA512 6bf50cbb9485fe318b34e8edf9e7d34b5b0d3f5b55e6fdbc245a68c393a7060f0d6e0d350fe17ff8bd402b4e3256be024dc75f845a22158a211260353165ec2a
-DIST thunderbird-102.15.1-ja.xpi 781906 BLAKE2B 785a3e2d23b5c3d4514cee520e66e6f18148bda015af58a117d494b27a5ffa38ab382a6a02375c03324ce00faa68e6c5aa5f6e65a74e8b1ef8e696afd6085f6c SHA512 b187be58c8388fb18b7c728c9460585dea16d1c67449d5af49a64e63e3d9594f37c5de5c64824a015fa90510070ebaaba45bb4437ef63483dde742ce32261152
-DIST thunderbird-102.15.1-ka.xpi 769800 BLAKE2B cc96ecde197054094643f3e276f52b44cbda5ebe571e17ecb5e5a580d02ef039c06a39ad784ed6f80703e9515b38753a4c972167edc9f9ea469077383afa265d SHA512 746b18753979ae39f7bf14fcce3357393a0219f980bf703c48cb8a1d95ff185ed73580b6080ca9b7d923b1d53b18f0f409da8e4e39c3db381c15a8a20e204b38
-DIST thunderbird-102.15.1-kab.xpi 702701 BLAKE2B 249868f0187f5176bc92fc8f0cc65034f669365fb94b2ae4b9e192887e63fa5ad56b805be78aa6356632e542f1e6d78673fe610d09cd293c394f3a277aa3b705 SHA512 8362fefad1900254010f02714bc4cd0eb475b15494065bb6f27e30e1adf243cfa8f5f43514f1d975446f4de1327f0d3d46728a7bdaa30ad803e004374af6a833
-DIST thunderbird-102.15.1-kk.xpi 810964 BLAKE2B 47ea299ba8773971c860abb87d8f1a7de0099a4f60f85ab9938473df04c8d60749e610762e2cdc7ffaba0af5726f18ca6f8cfdda26c5004fc0e9962bb042fd51 SHA512 07203b2184d59d78ba3b9c4ccaa021882ddea70de5bd551fb68fab5b44fa6e386803fd3aa62aae5f4b5fbf10ef836ce63e1de44a981d6da42dcbb3c738f86e4a
-DIST thunderbird-102.15.1-ko.xpi 716819 BLAKE2B c4de13706da0c97d12afc71005faf411dcf5fe816a3ea605a869547031592bbeb319d0df516dc1e5146c7023d04ccb3ad6a28b382cb8c35201fdfdd5de25ff6d SHA512 7ab6de78bef723ae99a057e22776a4a5accc4fb228d34e99bfbc01d8b3ed9e6f61bae0e4263c36ace98859d30f68c0642db41118ed85edbc4a04634d03fea305
-DIST thunderbird-102.15.1-lt.xpi 690853 BLAKE2B 9896ec2467806923e08892538d94b2491d1930402ef8ee5f9a27d669c1710a52d912934e53d6db1d12c266ebb7464a0514842c78edb551a8ae5ec5e47b6bb0dd SHA512 f124f3fe430d4fbaa2444a9d84769e71e75d7a56fb64f6dc84ee843b6469f5f21de2b3fc9e447e290686224d1f0fe4b09e16d095daa79848aa60b8a12187479f
-DIST thunderbird-102.15.1-lv.xpi 617765 BLAKE2B d3d594bfe7f0fc5f29b307217b4bea238f3e1cbe2e7509fdf1b977a75f50b9ca30cccff06bbb51ff4688cfb010fd13928e78e96476aab53eab00f5fd75d725b3 SHA512 69dc32327888e54998d8b1bc54c5d26fe5290b92da32dc887da92a9c7e40986ecbf08eee1ce93eb4add61f6538b0bf4fd7c9c3e6faeb834c25d9587faa5c8e71
-DIST thunderbird-102.15.1-ms.xpi 577756 BLAKE2B 8a6d3df6fd6a55cec005b8acf504383bc2b28f91b8314a2350889a8618614bd1fa7bb8abc49be8f2f595f771d603fc016d84e3a777114f54872ff1be018cbd4b SHA512 568c2f3a77f37f20abd4f48ebd1d92aec6e18d26659f48f3ab2e27379472a2ba173543b2dd575add58e9854904303ea9bbba483221815988ea6e23b098254f1a
-DIST thunderbird-102.15.1-nb-NO.xpi 662681 BLAKE2B c4c3a070438959a0bb74d80ff53468b8332657293af215cba5614ad37db5096ae73f151d1abf6a3d42e9b014abb0c06ed361582f2454fd1d8d0b68e11ad21932 SHA512 e6496610d2c15b23a1ac13505ff1a25645f2c1ea0b684e0d1617752a12763b6ff602064059baf3697fde94002222d39d3b380768c7d5b9b13872e6d50bc86ad9
-DIST thunderbird-102.15.1-nl.xpi 703274 BLAKE2B d235f7a8bfbf4301d71a87057a555ef68b4d0f858438f23aa3ca38d13f93eddec121914c9c974b81e06ca310148974ce2227b19f461594fb66c0ca34c94688e4 SHA512 b1b71731274e71104046b61ab182b3bd1ea70c95c2dd3ef421af4defdf1eed4053f6d9089182fb15b382d2d4c1d8dc60470e3361395bded9919777d34f332083
-DIST thunderbird-102.15.1-nn-NO.xpi 672831 BLAKE2B c8b260ab0e221c15f389299b0987ad664f72e401a0c9d0791a6a2aaa427ab2edb2afd8dd695658f0444ccfc01a8b6c85326bfc04e14a28f4f4c08faff2c83a14 SHA512 992691d46138431e1ebae809b65eda62f2258c6ab6ddc0268fb87126f9fb98f7c9cdb727867b3e9f67a427e213cb6a05a4da148f42e0fa20879d24109722ea0a
-DIST thunderbird-102.15.1-pa-IN.xpi 668030 BLAKE2B edd425371e2b331057fdbc0f93c268aecc7fbbe541764d3b1f324b79efd51839704bcb7ee87c14911a15912365f1ff280205a46cffc767416ed621a0932c7ae1 SHA512 6ee25091e96ba2fcabdc7a2f39a2ed6036bb603d2e5a09dff3e2ed18b76e825fa2df5d0fa0979bab9bf701320a61f0ea4e9dbb29d6003511b85a4e09f7b3273d
-DIST thunderbird-102.15.1-pl.xpi 716228 BLAKE2B 50658910592a1efec6c32769b896277b8272729b09f44e69bc1c9492acd715dc6662fa3c7778b70f59099c024a56bade96106eede9530647dda5beed4275e1fa SHA512 db87ee0f7b6f717ad59e77475a66c16d90841a3fd0aa0bec44d531ddc5f1dc5659a8c817a3f7b98bf0b632d299b60334cb32c5974f6f20549130828ff168c1e4
-DIST thunderbird-102.15.1-pt-BR.xpi 711150 BLAKE2B 9cf8f74ad72f7c24689faa8d0be9dfd052ff7c8232f85cfe1b27713fc836eaedfb7cab07dccea686c0960e89f97e15616f37e21ae0a56490f8c434e4664ff728 SHA512 1611bcc3dcf6e6ef9fa7386ff2e2872d92b4e0729c6e818b9500301dba6b392bf7e363b6971872f7eb2af2753360836ac9766eaea5ae87772e13be2afd5cb47f
-DIST thunderbird-102.15.1-pt-PT.xpi 686909 BLAKE2B 1e6aa88ade8b5cf6ec79fa066052e57349541798679742097708570750f58802e7afc201117280cbca3f52ec88f5145e39ab926c053cd1290a06023aaa890fc2 SHA512 181b325075fe6a4db8b4e90873a58fefd4865784b951924ec9441d651b332e696d9c8072a1f58dc73574977f33911322ec46f32fc758a6b86f1b5ecb729dc75a
-DIST thunderbird-102.15.1-rm.xpi 701680 BLAKE2B d218f082e22c678208039d99533b93f28d296f2ec197760f8793ef0c8b46290f42f61b3a0630a0b918637a12d7f21f236ddf57c03ee0d853e0c1dcd3541d82cd SHA512 3aea6ebabb22ebeaacbcf88f8ac1b53d2eda9f8db87585053132539bead2f51eb44b0b3b013d33c5b7159af36ed6962890ead4dc7f0168688d6576356d82641a
-DIST thunderbird-102.15.1-ro.xpi 661281 BLAKE2B 99c1342f9f88df433a9051e74bd80697da4b946385ed5f04b239fa626e5befd5c9ce4f5f1e627ddeb69946d2292c0022964dbbf68b170941a162603d68918022 SHA512 5bb737ae504ecfc32e3ad4698a6edecb7f79b875e062d920cef9f7a16aa05a0a71e793c7b9d73ac6b743f1cacc109e106d9fe834ded8ee913b12417281b34a88
-DIST thunderbird-102.15.1-ru.xpi 827219 BLAKE2B a13e621caecd51e3730d70cc148494d580379f44532d47aa94b0bf315d8ec2c4039d95a5ec3fb60c2ce1da65f4fb433231fee5b53fee4b6bbeb7529c35b8241d SHA512 f3020601f570c8701e353927a2be59d40bf50d71fe9b426fd110952031b8616b5bf87619414e03cface953c29e2025c01d7efe0f494224d4b55221d97f730371
-DIST thunderbird-102.15.1-sk.xpi 740979 BLAKE2B 46a9b560a9bc43a34874dbc4b5bc3bcfcb91e805b5530c1a136d63feb4f83cc1ee00f72e5e02837d1e1d7a0e880427f4d26f6d135fd400be5353d27120c06c05 SHA512 74bde4af466c79e3e38d83de25ce2d075a65e5fd6978f1c665397149ba976c6dce9706a713c4ec222e98881d05335655a6ae23460b3104cc58d3a8a2b6b7704d
-DIST thunderbird-102.15.1-sl.xpi 704056 BLAKE2B fdfaba4b70c990b1560429c5b194fbd71baa5ec711e87dec35d56801c1b75a79b2887c22d5c7f07d2372c77344ce565843856503c613ffc920d2cb8914f261f0 SHA512 41172887970bc116fd6138f0618eaac235ebd418af479a5c82e8712b5926106e666f003ccb492c99bff289361749e691d85ebf461cac91a99601bbfe9c1e6a6e
-DIST thunderbird-102.15.1-sq.xpi 726033 BLAKE2B b05a720a6bef04dea2dfd53bb29584a3e8c844c857b14a50458efa9c53a58d0e99b9e11141aa5ad968b289592ce61696d071c993470cf52761d7ad32231dc010 SHA512 f3dffbc82d01603523aa6b6b91f3b29bf81579a12d2a418cb53f5cd4efdb3b509338dceb2b23b298d73aeb8f3b405c8518e15889102c2f716776fa62134d416b
-DIST thunderbird-102.15.1-sr.xpi 720554 BLAKE2B d529ff1c639af2987e2549ace727912879affecee0a8a812e172a0f33c2dab9dbbe3d2c3d6e9f68921ae6cf111dfd6379caee01779ba1c9a5aa891bc0d059b43 SHA512 634383b60937fb98e8cd5c6fbcd3319e34c3ee14ef448b934fb0338ea4c974e9382990ff55040c1e52a8198f8c579b950ecf1c7d9b32b8b2675ce9d6a5f2570b
-DIST thunderbird-102.15.1-sv-SE.xpi 706951 BLAKE2B 01d25ca940b46eb8a6deb845b750986e6ade89abfb6ae0589a4aa2914fc69a109441fa050b93a7d2b3bdbe7757d6cc9a1fa8739e1d455e6c9f8386e6b04b2b31 SHA512 8df9fd9112b964b36098e74dd82128aacdf80eaf4935dbd63ec68a84ec413ab90314fa9b83b357641e6bfaecd64f1e48b15c8f57ea4ecb630848024a0e44a952
-DIST thunderbird-102.15.1-th.xpi 758235 BLAKE2B bc417c8626c70cd09ac841d21f4843f4a841f3d1a6677389abc5dbbb357965590eea362c0931f78a09474db7024272f77fd37b68c8217aee93c8acbf9bc25cf3 SHA512 70349b7356dff8737e0d8158aa09ee9bbfe569738319603740c260fb1367fc352bc5924b90ab44b8eb6898328fe914d7a0ee8d74b4b1836699c85b58c195f7f7
-DIST thunderbird-102.15.1-tr.xpi 720174 BLAKE2B 04e9ecfe72639f91920e018bd0b9d3c6d28822479284e9fca6a107bb233bdcf6a65c02eecf33c0468d12ddc633cecf74e840e4ea11f565eb8aa36b32d1582946 SHA512 7e890b6e764571eaeefb91aa5d986758fe106bda640369a13bb408ceb4035e0f02ddc1aa2cc6caea04a8eefb400c138939e6c192ea78510f681081625495601c
-DIST thunderbird-102.15.1-uk.xpi 818661 BLAKE2B 0a802e198a906a65e8b07332860901826ab726af4465cd650820516abf209989cbe07ed879f4cb2027800a56b8f8298d7ad4d167de17bd2cdd6a6293832e67d8 SHA512 516d905ebe38d4e065cd627f78e3bff6424d933023cb42cf44550c0c13f56b549eabc84d62f1239a67a4db53eada15341e6aa2ecc454a898045b441549bdc025
-DIST thunderbird-102.15.1-uz.xpi 593010 BLAKE2B f292a57be02dd6123a76e6f40cdd2c27f3f6dc814cfbfd420f649c3ffb6dfc5f21042b272f91b043b5ebac42669a56f8a9d1d21647f38186a666fb220618b023 SHA512 8e51e998595076771fa39a5f6ebd0f4438c6ebab974ea498820c40694f56fe1752fd5e4016f2d25db307b380935ec32534d5775757f4dc5211539e6319220fb1
-DIST thunderbird-102.15.1-vi.xpi 745660 BLAKE2B fd33ea64dc4d08530ce19e440dd5bac20c395d1ba9491b0bdc4c0d704fff53252ba7cfba12236bb41dbb6a372bfb3f1965e213f9cc069f964e4e3ea936e613cd SHA512 3f521beeb920cff979287022ace2320f331b7c6a1a8f8d22c7c15418884e9dcd2f9a73ee4444c5aac85b90339c6b340362f83d7f5d26ef9b48d97d5b04913aca
-DIST thunderbird-102.15.1-zh-CN.xpi 739885 BLAKE2B 9bcb263aca4a53dd19ae030f8dd8174377154348c0de7e3ba221e6b88acaeaea23aee5c2712e3accc2b15601844192403b1c5d4c61d8ea38d4e9cb3d50f8e32b SHA512 56554b81fc3be72db18ebdd91f3ece0eade91b939ca290390db15ae5ee217ceb9e4300f42dc33e53702ac6243dd66c9564a26580aae88f14e371fe4158a75d05
-DIST thunderbird-102.15.1-zh-TW.xpi 748346 BLAKE2B 6924d29f27ecdb829b527a57bbbf03c17961a3de259fcc5338a50c8fb1935b6a8650d337ba2eddea733ec1e7e08a22ded153768e685edcd901cbc6a21020fac1 SHA512 cdacf57bc383cffa7b8f0c663427ceb68ec4d155bb2857ef12143e8ea5bb123d7783b12bf772e84880862bd61da46022053c900206fcbff010bb03da110ab712
-DIST thunderbird-102.15.1.source.tar.xz 504786376 BLAKE2B ca3689e3884aedca7287616e7af0b24c2e340c87b8e00242a5a3f7c2585e1a622fda9b42423491909f9b15a4b29232d3edcb141e6b0ca69fd13a92fae1a48751 SHA512 2c96b9cae7acbf354a6aaf7a7987f40ffddbcb8d05a579e6782afbf9c685392e29b274460e7a82426f41f604cec06cb96139be45f099121603ffe434ec8fac06
-DIST thunderbird-115.3.0-af.xpi 542154 BLAKE2B fec7ec5f4bd61b2e9f646f87d7d33e0f67d3de40e38440c054e6dc469199801d9a52dd5f6538e84994b41864c99fcead67c8a1e061e818482bd4e68d1990b244 SHA512 4a8482b33c476594fd50818c95db3f2fc0b0cd90ac9902104e2ff02c82b2ba48a2847a633ffb0ede479be15b8ad3f2eedb64c82241ae6cd9915e6d1d9c99619d
-DIST thunderbird-115.3.0-ar.xpi 654726 BLAKE2B e55b3cfc46eef2fb7d11c0b3427ca03931fe630945a71261e3950d2273e7135f8353e93dcb3a51ec4ad74f4df5084defe5d79a7da854f06750010f7ee329316b SHA512 6f4d4699203c0a6ce03c776b16956b3f7a568db1230267e83d233b456f96cd592567b016ac206050a5221c102f1f9fd679282c05c3878ea7d50370cb9d6ed9f2
-DIST thunderbird-115.3.0-ast.xpi 561120 BLAKE2B 393f7cebfddc3bfa42ac8cde4ab518f792533bbcd7b98b23edc2cc5e2428ef3f1f562ba6d7671b97c8db082bd83b78337614d5af752001910c6bd6b827bb7969 SHA512 a0de2959c56f0f26d25240bfa399561b4494edd90fc2ad4238e5e19bfd0ba4dbe1d979ca7c59219646572cd340ec8b7c51d061feb846f1cb5bd3ca842eb0b8bd
-DIST thunderbird-115.3.0-be.xpi 694083 BLAKE2B b5d4ec3ab8a10c6d6848d9aa97e7fa7399e3e9ac870c103a85a36809e3cd875e8302f9611d67683cdfba3ddd2b37748253bfa817ff13afee767cca98342df52f SHA512 f0e4a45f6e3435439ac596b3c2d7a831eecfda8fe91830a55f7901abaab2cdc7bc49e36aa7045a2aed6a86f2ac84dadaea54b22ff0badf72b76b5f5a24d76fd0
-DIST thunderbird-115.3.0-bg.xpi 681249 BLAKE2B 66d4846257d4205a70b057f8e5fa652f3d9adeefd0249f61c4d94da8e6ac74b5c4f80fbe77de396ca60a6421e511da77b27f0cc5a56037b522625abba1e0760e SHA512 54a7bd74e98a0100c846288fa109f73a5c4a10de2b8daf09facf397118e8bd30b81a4a0f4de020ae894a79f391b4036d5c640ea4422547bc3f4a8ded5cf4d81a
-DIST thunderbird-115.3.0-br.xpi 626489 BLAKE2B 945d4cd6d16ffb9185f65019ed5f3b8c4fccff989fcc41ce3401ef2da47c74b62d0817ab496fc9af728f3643697bdd5b469a898b44d3100e3b5bbff5259851fa SHA512 8a89b9537ea315d4f795e8cf97bcc32532c22ceba5497642767d9bb3af4906e8101a103d3cecb460eb310d2e19f326150c337325ee82178e5a5e7c23f6cf1615
-DIST thunderbird-115.3.0-ca.xpi 664393 BLAKE2B d11560514fb8885ef03e30dbdd77eca9fe3b2af276755f57878811e8140296b2eefeaf77c647622d43c7c2f0c16d7d0e08f30e69aa67e282d98715cdfc7cb339 SHA512 52819f3b8e35c4d190140cd35cc650e03f59c013628542a80561c8ca68fc9808affea8cdae027a812f5cf533bf472801923dcf18fd13018d480e23af18c181e0
-DIST thunderbird-115.3.0-cak.xpi 657815 BLAKE2B c8157f9d1392995acbd36d4fe87fce425d491a1c5ee07febcd2fa5c328052d8e1b4fd06d6a3e8a71abb3ddef09331c272c8db0b7aa3fca19cfa2a55ce4789bea SHA512 dba0795e6de3ec685cff08f7c0b3830b2da2d4c217b1b454948674e89793d22bcec0e6256b8c3c09a866687776b532055606e1d48e9f46a8ee6ea1e939690488
-DIST thunderbird-115.3.0-cs.xpi 733925 BLAKE2B 4892f664be32ac172c2a76bce0794e4e5a666c5f944073edfee8e14ecf104f298d63dbab7939f435927f5de4516313a5839890f328097674b9fc257dc66f4891 SHA512 740b05aeede740d35d27e0f497ba0c69f500e4f1d430a4e7a15052b7dad26f0fe9c1d253eb7ff72082c5f12f5eaed6e6888c758452bb45eeeedafe4a2c6d0d17
-DIST thunderbird-115.3.0-cy.xpi 703325 BLAKE2B e4c4cb465d44bf8d493512d099b279d89e3d916813c4eb0267fb7852a437972a517af16b27a06debf67eae128d40d174e190289555615acb6881fe8191e4fa54 SHA512 777b8b2a16c26ef480f035f18f497f6882024c3bb63ff3a562707e7e0875e82f878c59665fc73a491e5063c05b84bd47c0a131aa29f131152ec9fd4654492cf2
-DIST thunderbird-115.3.0-da.xpi 690779 BLAKE2B b6f9b0640c36fca31eff734b94fb0d5fd79fc0e194c6dd86dd9a3a5bb42793e56f864fd2d59409c6df6910f636d1168bc6563b69ad7341eea766629bcf80acbe SHA512 4f3bc6be50b68dc683cfda2c356461536a0d6844d7236d67dffa9a28d737c51dc383ed60c4922a5c94b72c524342941ed1d78985fee20c44382f78938f12f971
-DIST thunderbird-115.3.0-de.xpi 720271 BLAKE2B 4b5a82781b67ef9c414c62f3ba299bd33af552480fa5a141f1a27d0b7ada20422f3f6945bf89997a7b5d249d2a6a9d8da5ffb5934e42ac00342463e4b56ecd96 SHA512 b41fbf8add9c12c661fbd870fc4de394f0bf140496b4159e20c682dabcab5a7f58393d741b7640422915b039416edcde6a3962b98c7449f257b6a1bf98e96d97
-DIST thunderbird-115.3.0-dsb.xpi 738024 BLAKE2B 89d7ec0336b0196c8e43c61ea6e344a4048d6ceb165c23f716c9c46eb9e386758e188e9c65322d4cd27d9a64e454b806e4d9282b3d9f0132106241b4d3b8e4c7 SHA512 4c113fa4f00f73a9383d6c8efca1b650db11a67f7ae2b94369d7ae379659f55f33ec60d12c60701eeb9946dff11c87d3d70934606c40c54f7f6e180cb8966249
-DIST thunderbird-115.3.0-el.xpi 837360 BLAKE2B 4703510d7c90398f5d3c5854edcfe9d58db6402cfe0fa1f93b855eb91f95a77d36103af428bca4ac5d8286c4a8ba23c468a467e05a6e305740c795f15855ea5d SHA512 0dd0ab7ef9ffa2e2c87fcc475ec6221b8c5d5fdfd347fb142ce9caa2ac349aefaeb27915dc4fa3fd89f2ea46ead7c108052c961d86d6322f0cd62618ed026b1d
-DIST thunderbird-115.3.0-en-CA.xpi 648449 BLAKE2B 5a1500fffdcc393cb418af95f6b0c27f6bcbe48219ed3b15738185c99d5b3754215511953b8884743063ad597a61824203d087a0824998da31c95fe4d8fe87c4 SHA512 08fc04ec6d2312a98b22c467f879d29995c6ad5c88e737827dbbca092cf53691c5f1bea6685c31f6c73ab6eb964a904351cf8cfbd367869390e8586fd5dbfa0d
-DIST thunderbird-115.3.0-en-GB.xpi 661514 BLAKE2B 6399775de7b16047ef400d2b7251898ead7081bf8bb8042eee3457b962dcb4ff50f907758f1cd9c4f10bc00820df97bcad9b20ad6237e4f5cce1dd2eb8110cba SHA512 65d0cea8ab73fae8c2ae956e3552c97b97985b94950ae301b8ac61dcee9a030ccb58b9871025adae8da33a069d0fd24df008cfc47d82b6c394a52eecdbf5bd77
-DIST thunderbird-115.3.0-es-AR.xpi 713107 BLAKE2B 003b1f543461acbe92ff07be04abd9ec61952533176d4734111e32ac1ebb6ade8eb87495e06580c6a8a2064c9cd024f07de97cc668ec6bd3a31c03f9fb915f42 SHA512 34afdc976ef37607484ea6d8b36ab9f181c65d0583c3069910b2d83d1dc2685e67b59d3732a090384d4813f1a93dc46a2f9b198ca6bcf94a6929163819a695bb
-DIST thunderbird-115.3.0-es-ES.xpi 675704 BLAKE2B a3d13c9f2cf8400a7d47fa9cc49fa0c416a328fa46fc304afcad81cf0e13240c98fc134cfee5b16385ec58e13a4c5ddc603ae5a9e9843dec9f11653c3db264a9 SHA512 a40b2cf3801a5ca9ead95d8c65e6fd25f8a75fedaf4c68b01363bbfbd8e64b7595dd178e02745d4ce304c4a0e696f6c4533a3c8b7470cefcd22337a5610ac392
-DIST thunderbird-115.3.0-es-MX.xpi 710140 BLAKE2B d6b6d68f2000bad29c7e39ba3c1530097f2eb4ab90f0710bc9106338df8712e9861417a8981a46940b220314bd2128df0724a4e432667c49f09ff3f62ec8ca5b SHA512 d2775aab8d5f613d462e7e2cf695a8d28fe3830f1f5b2f1663f847cb8afdd25543ac3711caeb379e728f5bed1e97f237c26610f86518579dc49cdcb13565cba6
-DIST thunderbird-115.3.0-et.xpi 671819 BLAKE2B 9a7bc6a110c6e903794032718792aaacb07fc63b375d329254a5a64a4e5140c88a00905d8b10bccd135779954e506be7490b86e108b72b81ecd31d63605e7c63 SHA512 a37287f1a53ea64ca2eb17246b05727f3310481df75ee19c7ea7dd6b0407d37a2cc13984797d7bad29a8ed0c88dbd0528134cbfc17630ca2ac18c4529859959c
-DIST thunderbird-115.3.0-eu.xpi 692540 BLAKE2B acf82c80cfcaf9d8a3ae4b9b2fff93582eef03070ce551c3efd1d67250f43b94b58b6c26f8e0d567c5154c604413faf257c4d857491b97e706832ee06bfcf846 SHA512 e453b9c5f75733255a427cdb18f349a99de581abcb75a13911ce5bcad2daa700284a76c38cc7b10b6e90ab278487a27a281e7f4552a8a2308ea938880d0f8359
-DIST thunderbird-115.3.0-fi.xpi 689877 BLAKE2B 0b9b8ec3049e8b62f192820204bc9457b1264921b58a1054690f5280bd43d379b5c4d9a6d12649c41e4df9d0780784598076a0330ad4243828284596a822158b SHA512 1b7cd13177e408da94e5657b3d1c1e120d3164434f04dbfbb77c630c6ce71fb6059fc3904689cf49901253e0da964bc3a883bce6b472db49b8f4735a0e926e98
-DIST thunderbird-115.3.0-fr.xpi 725335 BLAKE2B ce1cc57fd6b3556cc85ef7e38370e3341046110a423928bd0ce1e65a7ab050db46450c26a67fed54b13b8df6c2f669dc0c4d327634d2a42cd3c3ae573c40ce34 SHA512 9e503d72fdb54ed53424d815d9793d46a3973f8c644e9b863b803ba6c844c2023670aea304c9279b01f909e55830c6bbba75495c4b2bd2b3d08c8af0414a37ef
-DIST thunderbird-115.3.0-fy-NL.xpi 707904 BLAKE2B 9b87f6ebf6d019ea82b2ee5b1a07adaa6386a3f0179559cfded3219be120eba848dbaad8ddd04e8fa4243f9075e22ed06a793a1428e22a1393c325ce3c5cbdda SHA512 1a3df7812a6162319ea8d11343ba4efba81ee6bb94caae7d6c2f470860168735ba864db25be12a6c5951ab2371e0d48c61ffae2a2af9ccb643748da3f04f2747
-DIST thunderbird-115.3.0-ga-IE.xpi 601816 BLAKE2B a669c814c8a01f3678a3d6f2d549e1043299e6b440af5a859728973953304808a2dbb5908c1022238e9870abde99d4b67f355320b4eb9e36d8822aa481f1fbbe SHA512 50bfaf4a537ead804982523529cc85a88eb5061df72dc06e348d013e2dfd7a03d2a52a7db84698319b014f8a53c63fb4ba550690e027e03b4fdc81e59dbc091a
-DIST thunderbird-115.3.0-gd.xpi 702991 BLAKE2B 149081aefca264ebc8fa64b018e846a204160e210db948ef279365ab90caa9d1fb0354a44283abf43cac8e87933fb586cf4329122b2c191e52b77edc67af1809 SHA512 3fc8318ff3edcc4fc2cf7214446a6b59be3bf6e69680c15d11646ba3868e58c4a4b347892e965cca16d09cf688a32c98fc846b5cf3ac5ad3a290d3e1a112fd82
-DIST thunderbird-115.3.0-gl.xpi 705420 BLAKE2B 5340db082d4b5f037c0dd515a96baeac4cd1cec3bc552cd23369a927c8e9a2bcc1f5fb7cd2da32dc8f4e321babf55a7297c3818fd1318cea8cd60d5e957b7bc5 SHA512 153b544ddeac7db415f54de40c87dcd83dbf85bbe6ae1fd78b97946e55c875a307dd7fa8d67ffb6f2c24cb1e669fd1b650d0f1913c1d3e4c1dc80caec9e4e82a
-DIST thunderbird-115.3.0-he.xpi 667476 BLAKE2B c20905b1e25887ef12c991ebb2a9505ddc54c949bd3f6b137b097408d1a1ccb9fba8ffbcec39f13a76f48d775b7da8bd6d7dc7c70274247d8002bc08b66aa73d SHA512 ba9925f6aba832a271e336f0d56f24ed008ddc10e18ef51c18fa6e1d292d42c211d24204c29f17dfa9c325391e05e45b7e341bad516f5fa75eea872f81c8d365
-DIST thunderbird-115.3.0-hr.xpi 674901 BLAKE2B e218ec3271f64c0b970302152412810c9f23f63e26ae3e6b9f0bdeb68fa0db973cf8e4b5632d127935c4d76d2e972587ca218504874a2f356e0c66bacd6a8f6d SHA512 85e1359ee081d27771665040152d849714905cb4bbe6471791d032b0c74089d068beb9ec24a68720d2fb5e3025122c0c96eb55b5dec682aaae1e1d31f0a548a8
-DIST thunderbird-115.3.0-hsb.xpi 734546 BLAKE2B fba58099daf793a2e662599490aaf4cf054df7a23760b592c3e7eea50aba6e8081280f085f7e197693ed22dec685734d930d337632d3c7c236946fc0c755d3cc SHA512 3c1dfab10219c1a0963645744eeb8ce51097e0de7009ba6f055419c2a91f06b8831e57b0259419fe05c6401564d959450d048a2e3f3c52edc4f32b519fe9641f
-DIST thunderbird-115.3.0-hu.xpi 737467 BLAKE2B 137aeef8244485605129265b413f3e4c2f05590eeb2d180456ed2d67573bafe5e58220ec82e3e0439dab6e2c7fec5fefe1db1366c44ea61eb18a9aef9282dd9c SHA512 08cf70acd86d7a26d152c1247a114642c2adeab9b39ed7b4c6c2671df028f61394e7e04214cceb3442b4328657a6936791ad9192938017b6a91ee00933e6440a
-DIST thunderbird-115.3.0-id.xpi 642538 BLAKE2B 12effba284bf090d2f29f48ddbbf3657f03f85fd8551223491580e3376549afe64878a3c34ad1637a96d7c4467d200c41967468217135654471343e07732eb87 SHA512 8e8e4cc38f6a4e4ab8f550bd99a5392a751fd6188dd26cdca3162548750e19f4d0819588ae425f2993424ace0c7a767bde7d58d4c3cddd5eb945da51f80f3981
-DIST thunderbird-115.3.0-is.xpi 702209 BLAKE2B 82c1b7b1ef28d701b2bf750db9bc7540bf9fe839fcc2ceea83fb2e2a6912a494a92e8dc5747319e811b0d59477628a46ac42ebf3db5f12da457eb3b2f1062376 SHA512 7aafd936603c93fcdfbb20526accb62b091370b96840eda6d6966f93cccac337de1e1d66ba6cbadd369c5283d1133f6166b1f244622862b164c1deacd964d2e0
-DIST thunderbird-115.3.0-it.xpi 643537 BLAKE2B ea9c106975738251467fac26f892bee3bdbea3f42594c97f9f29ff11e3bff10f9afedfe353cc3da7aa2abe7e3d75c87737e4d72a575a78f1b4a43eaf10fad16c SHA512 8becc7e7a05e4078d4b7720e22e4b65813202b6766296cf73ca6072d5bf1be409363735e8922d7e9ca3fb98e0281ab07d127af68a74829baa19859650abaee73
-DIST thunderbird-115.3.0-ja.xpi 781687 BLAKE2B 7e21d132ac7de16f30e1ea246853cd9c0ae6687b73508547304adfc7cbef5d4c4731023abe72c3bb2d2d13a2b64ebd9466bd777ca7d247fa0c922f74bbc3c221 SHA512 20ac111957c53dbf23eda1023ac893539790cf50fe2282b042ed55717dd9e83b038c818390b53e9159600b46e65bc75dec5c89c6860f95a63ddea418c7f9ad7b
-DIST thunderbird-115.3.0-ka.xpi 764449 BLAKE2B 6f7cb6d13b0509ca35c85f56a054b62c983d51dae2fe1db057f3d73cdd62c5ba3fbd9656bd43ae12db6d8401acec8776f13efb69b2836fc72e4c6b5d72e2412b SHA512 c0ca640dac6323c220007f80635e8b848b14732e6c9a2e260f59cee5a03521774845cb596be610ac657f6c7eb7f63d59c6965418ad956ce1fed377ef0b367d13
-DIST thunderbird-115.3.0-kab.xpi 698918 BLAKE2B f8623c63a0a8454241d6399c80ac49d4aa633df54a9d4d648e17304c6b8fcfbf8d5f4b447c0c2d22d569e83bb48fb48795685a24930c738ef0c44bd61f9fbc8b SHA512 e1136b2d5f1c4cce31995e78dc7d5b9db98ade7dece1207db18e2e69e95d2b5834e5067109dfdf3c488c0075ae6cf6f59818a5d59ff4569aa6e57b609bb4eda8
-DIST thunderbird-115.3.0-kk.xpi 805071 BLAKE2B 2bc85cc2f21695f05e47d663ce06cb860038b4088cc7941cb440e4a37baf9cdad795483f015c20efbf07068f94e224253a7ede1ba2608306812f2b80da9ab6b4 SHA512 2c2e32aa2ebcb0bf50577bea113d4f23e2b66c237fd5ed68dcf244777bae458ebada4820e182277f2abe1a19e3677c20c80ed3672f110890a422555fa8277349
-DIST thunderbird-115.3.0-ko.xpi 712207 BLAKE2B bf06fefb12cc9b6e931b263fa578f9bbff7867c9c8871f6c9b7186d3995f2508d0bef140ef3653728e8da984201e3c6be8b057c75bc4cea13bc34ae9ffca7ec5 SHA512 49ec61dc48af4b6793d16b913d342a198e958725bd621b535bc259f465aba3e3263a0e0af69a8bf8f21a6bccc554415d506d9ce4d4fb65c526ac8f1e5bacde2e
-DIST thunderbird-115.3.0-lt.xpi 680094 BLAKE2B 0f01c42e80589823e117fddf828e02eda3345e530e24da5f002e63ced18954842cd68544c6abc8e2a006c582d5191c2436232c5b89badd1fd09e619d51a14e7f SHA512 9cfd0e928041e871798da4a1f9b99a98310238e88628f5cf9393757c3daa61b49a1692343ce0fe312171bde3f5908e5bb9aa6e73bfc84c91fc6abc6425e45c0b
-DIST thunderbird-115.3.0-lv.xpi 604647 BLAKE2B 660ca350375888cce6b5ae0c86e359c6fef77b4c785f5c79f8008c62340b054fd176fe12dce713cdf6ffd2380918ec9c287fa743a55487d69c95425615a09d5c SHA512 1e2063ae49bda4055579ca1ec8869e6325712f5ee2fc0a19c5d02be9b24390b050acd896a9b3190a6d0e6a7877e789f74ca8f7f6ed221fbec3a4ba3b1a3a6e92
-DIST thunderbird-115.3.0-ms.xpi 565732 BLAKE2B a43efbcfd9bf2b83d56642658fb9718a8a3bbca3d3b950964a96e617c7b05f820fee8bbf4dc1dbb0d8dd8e29c755b0285956a9d2415c3950ca2a500b59cae621 SHA512 6438bcf04382b54e3be5c4ddaf9c2555f3d65829e8ec347aa7adf3e4edfaf9ac9e7c58f0ad0a4c3c167cd9d7e0b3a5626a4413ba060a2bb0b3b10781d13108ef
-DIST thunderbird-115.3.0-nb-NO.xpi 653865 BLAKE2B 108deacf3b35b4007a0294a853bf13db31525a9b8efe59ef9623b206d4cf8447622913b515dbd0ad63a9ace78776fac89bc6683c61d79f1366f3ee4dfa706f7c SHA512 880383e3e9b5e9c4288b2a43e8cc8068878501c09a56164552f6a6203cb340f2fa4fc8f1fa1b6cdf7d5be58c4974e0c75459747b62712197460555436b0f319c
-DIST thunderbird-115.3.0-nl.xpi 699497 BLAKE2B 533d86cf366f63b667b85a412961be57f128fe58eb8ecb87be13cf705f8d72fb43a7256da03569d5f4473d0efdc5ead6f6e8373468cb5526024f94b3a4751f4d SHA512 4ea9c06d4ce0b0f9f3424013980ed56b057beed552cca12a1075250b900bd25108d92cdb58a8428e7493973151b0f4846e153e82da3fb4e2b4ac6a768bf6ce1b
-DIST thunderbird-115.3.0-nn-NO.xpi 673377 BLAKE2B 1a9f47580b81d44d579fa23c7f6745dcf507efa5e234cd2b173c32cabac5993f35c7579204b1e83e1b2c95aa37288018292fbf97d703e9c4bd69ae3c50ea0960 SHA512 81a92888ad777a5f263e97c1a6ff063adae1544645c13d429eac68bf0d829872964abaa2af36c812696a9488829febd90816d2ce7d5e7589f90b236369d21d2d
-DIST thunderbird-115.3.0-pa-IN.xpi 655776 BLAKE2B 74372dc9c9b0110d4e3c4e6e7c61d2f18d339e7392083bb28b621857c53f8eda5423e70c4033c3be52d731f342d12251b25cb8a29dcf6d9f74e88bce0c0d2b78 SHA512 3db143d77962d46e31b397b7072e3e759f01fda099812ccd383364a8ffd120c0104aff1999ad0658bfc9e75823e218e76dda7f3beb292089eaf5e9038948cd62
-DIST thunderbird-115.3.0-pl.xpi 716599 BLAKE2B 519b36822928c90864e49cf8d43b78ed830372dd6cbac057cfa6fe0a26634d6af8375b787bf754925a45f0461cedd9722534adf37baf5b1c4ed53296ef6b4477 SHA512 b991caae146ea2e607325c2dcc734e08c421c2fc67ac0e59c7672ea884b7570a862dd34685431bbddafcabf819ded95d30152de967da818d05509d7a136d57bc
-DIST thunderbird-115.3.0-pt-BR.xpi 707262 BLAKE2B 83991dbf5797f1d8adfce65e368c72abecf93b58fabc3fa38f41bd945815ceb0e34c925fe968e3925efe6796fc4f6b6c2f95a3bce5609418128d45562e7fbe3d SHA512 5b23685772fe14c1c774e1f992397f9f7d6ae34166521562657f4ebcb52e80e43ca3ca8f72e00088fd6537829354c6ecc17351f83fafe0b693c39ccaf3f5d6f2
-DIST thunderbird-115.3.0-pt-PT.xpi 687833 BLAKE2B ac1894ccffeae396e09da424999492cb5313e81e677ea13d6ee01cf560315735c17eb53cc744f6e02b1560c7aa0118c7d04dcc8eac7688f63e17c700f888a9a0 SHA512 e999edc39ca76350961a95af246eaa3123206c6731b44f4f06d87d7b6de55c858e2e6915b227de99110a3f560b77489a62be43c78dd2a4c86fe1faad46610df0
-DIST thunderbird-115.3.0-rm.xpi 704043 BLAKE2B 8c02dfeffd6f8dbfb4da227c02e711f49e25069e09fff3b1a7e3122cc73909c8607b3b5f0be818e1e33e61bd82b39e74b833d066227f1b36ae465d85aefae0fa SHA512 17f68fcb56337cf4bdaf3cf27c14812bd6c29cc2f8cbe307a0cd50d80b392c980f02c72c878fb14eb938f29dbf562ad52a4d5ace7cb1626a8c7ecb63772dfb97
-DIST thunderbird-115.3.0-ro.xpi 651297 BLAKE2B 4d1ed4c153daf634f080cfffd1a287102108b8f5a06992580d18f2061a9204d96f94cc497ade5af6cf7b95ff7bc2e5da62c957ac7d55d0994ae9e82d2ec67d64 SHA512 fb63879f90e4504165fdcc2f54bf657979ee3e57fb9fa4b6994cfebd5f4bc4e6884fee7704e98815b9d01ab6101d3ff242f37d8bc66e0c2de8c407078dcf9f04
-DIST thunderbird-115.3.0-ru.xpi 820865 BLAKE2B fe25b2d2c283e2fbc334a19c3dc381ad54a621f6ee8e2e1e7eaca34b9ba33261c298c9dbd7591031f069927503db9556c114cbcfa7c55b5a87dfe17db7256301 SHA512 cf6dcecbcb87d851608c396623c866bd127938d553459981103b9f82c485317b17f198cc270602a8cad204726a93d9da33ae716b34576887a697a3461919c6f1
-DIST thunderbird-115.3.0-sk.xpi 736657 BLAKE2B 71d09c05a79ac460959b5829cbdb47374cf446f3489afa421a9fd8a45e87ab2a23764f141a1b11c7dbf1dba39295964054da8fd985e1abfc7f70c064f8b695bc SHA512 08a0a67efa3d01fd4bbcb7112221cc1ec77bb149f5aced91b2021bc1c34b46763a209213f9b3a6aa7b7ed5f69c8c12c6ad0d249ea730387ecdf4f4b80d19aed5
-DIST thunderbird-115.3.0-sl.xpi 701216 BLAKE2B c05697f9c42516b97d5c75d21692196f12ac47381461477cb65079a09cde105070ea017e78498ee097c2c46564a793f1081ce86e700f5b079a9befa8cb845be1 SHA512 2960ca7a6131ec978da299732e2e1865a04ad87a18e167d31459b1ebacd10bea0105b7fbf014cecf7d8cea5032cb108fad265f120717675fb4534a10d9eda65d
-DIST thunderbird-115.3.0-sq.xpi 717450 BLAKE2B 3b053b5a6f3bb30ce37c72d5c3e7caafbb50c58304e462ed29f7ed1ef872f67e6127d8ae146f6e69d1ce502628c54ac76988d532ecd36c6d17379f5582ee0154 SHA512 166230b60fdea71c1ecf4a8bc708e2a099d1da2969350d2ea406793c347233d7401ae71cfd83f197073a8aa8e828c9df4bebaffb7bd14750009ada8c25358227
-DIST thunderbird-115.3.0-sr.xpi 740171 BLAKE2B 12ecde70b24026543a9a0068c491c10dad3e5a8ecd3c9cc9ebe0f8c42013e05840cfd9637499faa3933ce339e1c5bc54081a429fa443cae154fc3692e56c7ce7 SHA512 1cb2312a0fe790b7af3fc8cfd2ff37007823cd7a01bb99cbbe0aec32edc5b43786ad6c170c404eb6f0191868289c7694b2e1b1553694e34dca6e31496673396a
-DIST thunderbird-115.3.0-sv-SE.xpi 702346 BLAKE2B 91bf87b0d443483f5376994ec3b992e60f7b87bea271cb95ec4198447e2e8fa82e3c08aa7efce54787286e54b384ae7032615029aeddab5bd8aafe1f67b9f2c4 SHA512 8a170d105a87ddcc8fa4b1d495793b620f8f5db0e084c16b9d79a1f51934fe0a69c9d26a5ed8b7db4bca997d307638530799e92920bae11304dbcb0601526db2
-DIST thunderbird-115.3.0-th.xpi 761856 BLAKE2B 2c693eaeec019f5a313502ce5964dbb71f2f85e0c17eebb4f96ee7d3a6d0bea0222849aa138080c70791cfe95f494d8a2a79d4ce865638d9901e28a19b9e7f37 SHA512 afe769838ad45721c9925fdcf7259c17854690ee57c3252aebf646d302a01aebb6199b1e2fddc75f229843b40d101685de72148751a1380df75419c0d56cf7a4
-DIST thunderbird-115.3.0-tr.xpi 715002 BLAKE2B 5c6dc9696f6aa3f7540261e8f94ab05645441144fa771472fb31ba68c22a71d51b78a368aa617a8a57171b28272c628e9f1398f856db27910f682693e1c60146 SHA512 0c018f7af36ae237b08c309e3f62b4b934ade877ce2623ba7950facda03e3fa2137d0ab273351edb54451ccc64cf52e5a0ff8ffb4e43e4c065395c6f301fc902
-DIST thunderbird-115.3.0-uk.xpi 813757 BLAKE2B ff50e7b0618a30e8e817a25adeb46976da1184357b543281d21f5404233eea8f524755aab1f7e333fa370902645bd187cfe4ecc6af75e173045e358676bd64a5 SHA512 744ce2a074f956bf2287bc286ad7e501b1ffa431a527ea7f6d36dd68f8776072df9365cf1aac9fb44acec99b45ff08848f3f8e5dfcee7ba0e7f7d0fe1ff3e80d
-DIST thunderbird-115.3.0-uz.xpi 579985 BLAKE2B 2310a774180e08b2ab02fc73b08c087fb75f6ba53cbb62dc63ff244851663bfc76194a24a1da9747ca62ff067b2fa2aafb0cb333c492a19508e0e43be372e733 SHA512 5137990eb0b1ce7edb0ed7a7bb09ddd676933c05517a20359e319d88175e2dbe991be877f73618e9e7f64966f1f53f9eb2f62edebe02ea29170fab5dd027a160
-DIST thunderbird-115.3.0-vi.xpi 742715 BLAKE2B e298c99cd96165f9acc0732dc45028aceb4b8028d31d58a4381aa040c6a38a2809fcb22689f5e423ffe828402fb2c192609039a0072aac29a088798bf8d51f35 SHA512 a5c677015cddbd4799c0fe11b972f909760c4b1f3973f52e6fc04c5a170b3cf4483abe71454f7f209535d98f6f8685a14741df6462410306de87e73fa255030d
-DIST thunderbird-115.3.0-zh-CN.xpi 740787 BLAKE2B f548142441c4c70d55d131cb61e756d8544cd22f1599f8944c517a7184a1a2582bd6a98489b9dd30db22768163e015bb5d3e862af32733bffc8622a01ceeb3be SHA512 c9ab7f78e471d48ca287721bc96da4ccc2709473e4bcee0000cc3a5236e59bd0687540d3a2e1e13b78df61c0db5ecb6aa8d12032c3fcc625f85ad818aab2ab5f
-DIST thunderbird-115.3.0-zh-TW.xpi 744414 BLAKE2B 6abc1552410f0497462319161b67cabc88a41c01ae9db6f12d7563715a264477eb7eef8d1a89d7bd84546eaae879440dec0faa6824e0e1053415e331f9b0e466 SHA512 372475654794c3d8835482213fc8d76d7989c2e12474351ed988397cc555249c8e2f607e1036ec5520fe4e32dbe8f40cee57b6fc6cfed16c8ef65ed7b66d6e7a
-DIST thunderbird-115.3.0.source.tar.xz 533553340 BLAKE2B 120d809f90fac55f4a96b0ecc9027ec9dcb5177d980f93456a294c9ac514285bb6bbcb2a26553112bab8f5bd8464c0697a5a48d9487a701a5065c0fed6e74161 SHA512 a6fd99f9eccea5cfc8a6236a1651444fae9db99efd0ae667366638f664513e70529c63e2947b53433c1013517b23f3561cffada81d1181bd9359a02d3e059503
DIST thunderbird-115.3.1-af.xpi 542155 BLAKE2B ac2276dc78095475fcd6bbde7b762d9c5926ceeaff6f30f29e0d384a2aa96302e785aa40c279861db2ae9e4f4518214e5d8c4b95b2f050d2aad3334619982fc0 SHA512 d44bc133e333f1c85e2928196b65de3491ab9fa23a44a783ec2192a49c778cfdec71cad0c1c08e5339528a53da4f60f585cdc6c8fa920d1957dbd98d1aa681d4
DIST thunderbird-115.3.1-ar.xpi 654727 BLAKE2B 417c2d1ca3e109235588fe241a01dc19208b00b436032a21eca4541548d144cbce9c04882f4a2471a7748287044d62b94e390fff422d529f8e2174ae2e11722e SHA512 f9790ff5ae7a27b9d0a83ca9d2f1c1d204670a724c35fcdfb8df480a753794831278956822b4604f72358f66dbb8cecb71e0bc7fcb36021994f2ea6a477fffad
DIST thunderbird-115.3.1-ast.xpi 561119 BLAKE2B cdfe76d451621fe2e508b80b01045b8bf8147fd6cf96a4c74950eb3d8eee368353683b11a9e9bf6421215ef09fcf7093cb748f51f58b2ca046db8d7f85213f3b SHA512 663c4cba6f27649c91b42e0fae44e98be4d515a218194f8e8edcb794386457f64002af1266b687213842139ab5c54d1d6fc2a7e2a6fb98eba9d4cef646e622ab
diff --git a/mail-client/thunderbird/thunderbird-102.15.1.ebuild b/mail-client/thunderbird/thunderbird-102.15.1.ebuild
deleted file mode 100644
index 1d625e370530..000000000000
--- a/mail-client/thunderbird/thunderbird-102.15.1.ebuild
+++ /dev/null
@@ -1,1190 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-FIREFOX_PATCHSET="firefox-102esr-patches-13.tar.xz"
-
-LLVM_MAX_SLOT=16
-
-PYTHON_COMPAT=( python3_{10..11} )
-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,whissi,slashbeast}/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 libproxy lto +openh264 pgo pulseaudio sndio selinux"
-IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx system-png system-python-libs +system-webp"
-IUSE+=" wayland wifi"
-
-# Thunderbird-only USE flags.
-IUSE+=" +system-librnp"
-
-REQUIRED_USE="debug? ( !system-av1 )
- pgo? ( lto )
- wayland? ( dbus )
- wifi? ( dbus )"
-
-# Thunderbird-only dependencies.
-TB_ONLY_DEPEND="!<x11-plugins/enigmail-2.2
- selinux? ( sec-policy/selinux-thunderbird )
- !system-librnp? ( dev-libs/jsoncpp )
- system-librnp? ( dev-util/librnp )"
-BDEPEND="${PYTHON_DEPS}
- || (
- (
- sys-devel/clang:16
- sys-devel/llvm:16
- clang? (
- || (
- sys-devel/lld:16
- sys-devel/mold
- )
- virtual/rust:0/llvm-16
- pgo? ( =sys-libs/compiler-rt-sanitizers-16*[profile] )
- )
- )
- (
- sys-devel/clang:15
- sys-devel/llvm:15
- clang? (
- sys-devel/lld:15
- virtual/rust:0/llvm-15
- pgo? ( =sys-libs/compiler-rt-sanitizers-15*[profile] )
- )
- )
- (
- sys-devel/clang:14
- sys-devel/llvm:14
- clang? (
- sys-devel/lld:14
- virtual/rust:0/llvm-14
- pgo? ( =sys-libs/compiler-rt-sanitizers-14*[profile] )
- )
- )
- )
- !clang? ( virtual/rust )
- app-arch/unzip
- app-arch/zip
- >=dev-util/cbindgen-0.24.3
- net-libs/nodejs
- virtual/pkgconfig
- amd64? ( >=dev-lang/nasm-2.14 )
- x86? ( >=dev-lang/nasm-2.14 )"
-
-COMMON_DEPEND="${TB_ONLY_DEPEND}
- >=app-accessibility/at-spi2-core-2.46.0:2
- dev-libs/expat
- dev-libs/glib:2
- dev-libs/libffi:=
- >=dev-libs/nss-3.79.2
- >=dev-libs/nspr-4.34
- media-libs/alsa-lib
- media-libs/fontconfig
- media-libs/freetype
- media-libs/mesa
- media-video/ffmpeg
- sys-libs/zlib
- virtual/freedesktop-icon-theme
- virtual/opengl
- x11-libs/cairo[X]
- x11-libs/gdk-pixbuf
- x11-libs/gtk+:3[X]
- x11-libs/libX11
- x11-libs/libXcomposite
- x11-libs/libXdamage
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libXrandr
- x11-libs/libXtst
- x11-libs/libxcb:=
- x11-libs/libxkbcommon[X]
- x11-libs/pango
- x11-libs/pixman
- dbus? (
- dev-libs/dbus-glib
- sys-apps/dbus
- )
- jack? ( virtual/jack )
- libproxy? ( net-libs/libproxy )
- pulseaudio? (
- || (
- media-libs/libpulse
- >=media-sound/apulse-0.1.12-r4[sdk]
- )
- )
- sndio? ( >=media-sound/sndio-1.8.0-r1 )
- system-av1? (
- >=media-libs/dav1d-1.0.0:=
- >=media-libs/libaom-1.0.0:=
- )
- system-harfbuzz? (
- >=media-gfx/graphite2-1.3.13
- >=media-libs/harfbuzz-2.8.1:0=
- )
- system-icu? ( >=dev-libs/icu-71.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= )
- wayland? (
- x11-libs/gtk+:3[wayland]
- x11-libs/libdrm
- x11-libs/libxkbcommon[wayland]
- )
- wifi? (
- kernel_linux? (
- dev-libs/dbus-glib
- net-misc/networkmanager
- sys-apps/dbus
- )
- )"
-
-RDEPEND="${COMMON_DEPEND}
- jack? ( virtual/jack )
- openh264? ( media-libs/openh264:*[plugin] )"
-
-DEPEND="${COMMON_DEPEND}
- x11-base/xorg-proto
- x11-libs/libICE
- x11-libs/libSM"
-
-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 ! has_version -b "virtual/rust:0/llvm-${LLVM_SLOT}" ; then
- einfo "virtual/rust:0/llvm-${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}*[profile]" ; then
- einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] 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 es-MX et eu
- fi fr fy-NL ga-IE gd gl he hr hsb hu
- id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO
- pa-IN pl pt-BR pt-PT rm ro ru
- sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW
-)
-
-mozilla_set_globals() {
- # https://bugs.gentoo.org/587334
- local MOZ_TOO_REGIONALIZED_FOR_L10N=(
- fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
- )
-
- local lang xflag
- for lang in "${MOZ_LANGS[@]}" ; do
- # en and en_US are handled internally
- if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
- continue
- fi
-
- # strip region subtag if $lang is in the list
- if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
- xflag=${lang%%-*}
- else
- xflag=${lang}
- fi
-
- SRC_URI+=" l10n_${xflag/[_@]/-}? ("
- SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
- SRC_URI+=" )"
- IUSE+=" l10n_${xflag/[_@]/-}"
- done
-}
-mozilla_set_globals
-
-moz_clear_vendor_checksums() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -ne 1 ]] ; then
- die "${FUNCNAME} requires exact one argument"
- fi
-
- einfo "Clearing cargo checksums for ${1} ..."
-
- sed -i \
- -e 's/\("files":{\)[^}]*/\1/' \
- "${S}"/third_party/rust/${1}/.cargo-checksum.json \
- || die
-}
-
-moz_install_xpi() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -lt 2 ]] ; then
- die "${FUNCNAME} requires at least two arguments"
- fi
-
- local DESTDIR=${1}
- shift
-
- insinto "${DESTDIR}"
-
- local emid xpi_file xpi_tmp_dir
- for xpi_file in "${@}" ; do
- emid=
- xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
-
- # Unpack XPI
- unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
-
- # Determine extension ID
- if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
- emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
- [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
- elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
- emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
- [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
- else
- die "failed to determine extension id"
- fi
-
- einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
- newins "${xpi_file}" "${emid}.xpi"
- done
-}
-
-mozconfig_add_options_ac() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -lt 2 ]] ; then
- die "${FUNCNAME} requires at least two arguments"
- fi
-
- local reason=${1}
- shift
-
- local option
- for option in ${@} ; do
- echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
- done
-}
-
-mozconfig_add_options_mk() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -lt 2 ]] ; then
- die "${FUNCNAME} requires at least two arguments"
- fi
-
- local reason=${1}
- shift
-
- local option
- for option in ${@} ; do
- echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
- done
-}
-
-mozconfig_use_enable() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -lt 1 ]] ; then
- die "${FUNCNAME} requires at least one arguments"
- fi
-
- local flag=$(use_enable "${@}")
- mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
-}
-
-mozconfig_use_with() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -lt 1 ]] ; then
- die "${FUNCNAME} requires at least one arguments"
- fi
-
- local flag=$(use_with "${@}")
- mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
-}
-
-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="6600M"
- 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"
- eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole "
- eerror " llvm/clang/lld/rust chain depending on your @world updates)"
- die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
- fi
- 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
-
- 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 crate checksums where we have applied patches
- moz_clear_vendor_checksums bindgen
-
- # Create build dir
- BUILD_DIR="${WORKDIR}/${PN}_build"
- mkdir -p "${BUILD_DIR}" || die
-
- # Write API keys to disk
- echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
- echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
- echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
-
- xdg_environment_reset
-}
-
-src_configure() {
- # Show flags set at the beginning
- einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
- einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
- einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
- einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
- einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
-
- local have_switched_compiler=
- if use clang; then
- # Force clang
- einfo "Enforcing the use of clang due to USE=clang ..."
- if tc-is-gcc; then
- have_switched_compiler=yes
- fi
- 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)"
- export AS="$(tc-getCC) -c"
- tc-export CC CXX LD AR AS 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-gpsd \
- --disable-install-strip \
- --disable-parental-controls \
- --disable-strip \
- --disable-updater \
- --enable-js-shell \
- --enable-negotiateauth \
- --enable-new-pass-manager \
- --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 \
- --without-wasm-sandboxed-libraries \
- --with-intl-api \
- --with-libclang-path="$(llvm-config --libdir)" \
- --with-system-nspr \
- --with-system-nss \
- --with-system-zlib \
- --with-toolchain-prefix="${CHOST}-" \
- --with-unsigned-addon-scopes=app,system \
- --x-includes="${ESYSROOT}/usr/include" \
- --x-libraries="${ESYSROOT}/usr/$(get_libdir)"
-
- # Set update channel
- local update_channel=release
- [[ -n ${MOZ_ESR} ]] && update_channel=esr
- mozconfig_add_options_ac '' --update-channel=${update_channel}
-
- if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
- mozconfig_add_options_ac '' --enable-rust-simd
- fi
-
- # For future keywording: This is currently (97.0) only supported on:
- # amd64, arm, arm64 & x86.
- # Might want to flip the logic around if Firefox is to support more arches.
- if use ppc64; then
- mozconfig_add_options_ac '' --disable-sandbox
- else
- mozconfig_add_options_ac '' --enable-sandbox
- 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
- mozconfig_use_with system-libvpx
- mozconfig_use_with system-png
- mozconfig_use_with system-webp
-
- if use system-librnp; then
- mozconfig_add_options_ac "+system-librnp" --enable-compile-environment
- mozconfig_use_with system-librnp
- else
- # This controls the backend of the bundled librnp. Choices are "botan" and "openssl".
- # RNP Upstream recommends to use botan. In Gentoo it's preferred to use system-librnp.
- mozconfig_add_options_ac "+bundled librnp backend = botan" --with-librnp-backend="botan"
- fi
-
- mozconfig_use_enable dbus
- mozconfig_use_enable libproxy
-
- use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
-
- if use hardened ; then
- mozconfig_add_options_ac "+hardened" --enable-hardening
- append-ldflags "-Wl,-z,relro -Wl,-z,now"
- fi
-
- local myaudiobackends=""
- use jack && myaudiobackends+="jack,"
- use sndio && myaudiobackends+="sndio,"
- use pulseaudio && myaudiobackends+="pulseaudio,"
- ! use pulseaudio && myaudiobackends+="alsa,"
-
- mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}"
-
- mozconfig_use_enable wifi necko-wifi
-
- if use wayland ; then
- mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland
- else
- mozconfig_add_options_ac '+x11' --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
- # 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-lto
-
- 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 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 PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach
-
- if use system-python-libs; then
- export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="system"
- else
- export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none"
- fi
-
- # 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"
-
- if use wayland; then
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel wayland prefs"
- pref("gfx.x11-egl.force-enabled", false);
- EOF
- else
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel x11 prefs"
- pref("gfx.x11-egl.force-enabled", true);
- EOF
- fi
- fi
-
- # 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
-
- # bug 835078
- if use hwaccel && has_version "x11-drivers/xf86-video-nouveau"; then
- ewarn "You have nouveau drivers installed in your system and 'hwaccel' "
- ewarn "enabled for Firefox. Nouveau / your GPU might not support the "
- ewarn "required EGL, so either disable 'hwaccel' or try the workaround "
- ewarn "explained in https://bugs.gentoo.org/835078#c5 if Firefox crashes."
- fi
-
- optfeature_header "Optional programs for extra features:"
- optfeature "desktop notifications" x11-libs/libnotify
- optfeature "encrypted chat support" net-libs/libotr
- optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas
-}
diff --git a/mail-client/thunderbird/thunderbird-115.3.0.ebuild b/mail-client/thunderbird/thunderbird-115.3.0.ebuild
deleted file mode 100644
index 8a70d85db28e..000000000000
--- a/mail-client/thunderbird/thunderbird-115.3.0.ebuild
+++ /dev/null
@@ -1,1313 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-FIREFOX_PATCHSET="firefox-115esr-patches-05.tar.xz"
-
-LLVM_MAX_SLOT=16
-
-PYTHON_COMPAT=( python3_{10..11} )
-PYTHON_REQ_USE="ncurses,sqlite,ssl"
-
-WANT_AUTOCONF="2.1"
-
-VIRTUALX_REQUIRED="manual"
-
-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 linux-info \
- 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/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 libproxy lto +openh264 pgo pulseaudio sndio selinux"
-IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx system-png system-python-libs +system-webp"
-IUSE+=" wayland wifi +X"
-
-# Thunderbird-only USE flags.
-IUSE+=" +system-librnp"
-
-REQUIRED_USE="|| ( X wayland )
- debug? ( !system-av1 )
- pgo? ( lto )
- wifi? ( dbus )"
-
-TB_ONLY_DEPEND="!<x11-plugins/enigmail-2.2
- selinux? ( sec-policy/selinux-thunderbird )
- !system-librnp? ( dev-libs/jsoncpp )
- system-librnp? ( dev-util/librnp )"
-BDEPEND="${PYTHON_DEPS}
- || (
- (
- sys-devel/clang:16
- sys-devel/llvm:16
- clang? (
- sys-devel/lld:16
- virtual/rust:0/llvm-16
- pgo? ( =sys-libs/compiler-rt-sanitizers-16*[profile] )
- )
- )
- (
- sys-devel/clang:15
- sys-devel/llvm:15
- clang? (
- sys-devel/lld:15
- virtual/rust:0/llvm-15
- pgo? ( =sys-libs/compiler-rt-sanitizers-15*[profile] )
- )
- )
- )
- app-alternatives/awk
- app-arch/unzip
- app-arch/zip
- >=dev-util/cbindgen-0.24.3
- net-libs/nodejs
- virtual/pkgconfig
- !clang? ( >=virtual/rust-1.65 )
- amd64? ( >=dev-lang/nasm-2.14 )
- x86? ( >=dev-lang/nasm-2.14 )
- pgo? (
- X? (
- sys-devel/gettext
- x11-base/xorg-server[xvfb]
- x11-apps/xhost
- )
- wayland? (
- >=gui-libs/wlroots-0.15.1-r1[tinywl]
- x11-misc/xkeyboard-config
- )
- )"
-COMMON_DEPEND="${TB_ONLY_DEPEND}
- >=app-accessibility/at-spi2-core-2.46.0:2
- dev-libs/expat
- dev-libs/glib:2
- dev-libs/libffi:=
- >=dev-libs/nss-3.90
- >=dev-libs/nspr-4.35
- media-libs/alsa-lib
- media-libs/fontconfig
- media-libs/freetype
- media-libs/mesa
- media-video/ffmpeg
- sys-libs/zlib
- virtual/freedesktop-icon-theme
- x11-libs/cairo
- x11-libs/gdk-pixbuf
- x11-libs/pango
- x11-libs/pixman
- dbus? (
- dev-libs/dbus-glib
- sys-apps/dbus
- )
- jack? ( virtual/jack )
- pulseaudio? (
- || (
- media-libs/libpulse
- >=media-sound/apulse-0.1.12-r4[sdk]
- )
- )
- libproxy? ( net-libs/libproxy )
- selinux? ( sec-policy/selinux-mozilla )
- sndio? ( >=media-sound/sndio-1.8.0-r1 )
- system-av1? (
- >=media-libs/dav1d-1.0.0:=
- >=media-libs/libaom-1.0.0:=
- )
- system-harfbuzz? (
- >=media-gfx/graphite2-1.3.13
- >=media-libs/harfbuzz-2.8.1:0=
- )
- system-icu? ( >=dev-libs/icu-73.1:= )
- system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
- system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] )
- system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
- system-png? ( >=media-libs/libpng-1.6.35:0=[apng] )
- system-webp? ( >=media-libs/libwebp-1.1.0:0= )
- wayland? (
- >=media-libs/libepoxy-1.5.10-r1
- x11-libs/gtk+:3[wayland]
- x11-libs/libxkbcommon[wayland]
- )
- wifi? (
- kernel_linux? (
- dev-libs/dbus-glib
- net-misc/networkmanager
- sys-apps/dbus
- )
- )
- X? (
- virtual/opengl
- x11-libs/cairo[X]
- x11-libs/gtk+:3[X]
- x11-libs/libX11
- x11-libs/libXcomposite
- x11-libs/libXdamage
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libxkbcommon[X]
- x11-libs/libXrandr
- x11-libs/libXtst
- x11-libs/libxcb:=
- )"
-RDEPEND="${COMMON_DEPEND}
- jack? ( virtual/jack )
- openh264? ( media-libs/openh264:*[plugin] )"
-DEPEND="${COMMON_DEPEND}
- X? (
- x11-base/xorg-proto
- x11-libs/libICE
- x11-libs/libSM
- )"
-
-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 && ! tc-ld-is-mold ; 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 ! has_version -b "virtual/rust:0/llvm-${LLVM_SLOT}" ; then
- einfo "virtual/rust:0/llvm-${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}*[profile]" ; then
- einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] 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 es-MX et eu
- fi fr fy-NL ga-IE gd gl he hr hsb hu
- id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO
- pa-IN pl pt-BR pt-PT rm ro ru
- sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW
-)
-
-mozilla_set_globals() {
- # https://bugs.gentoo.org/587334
- local MOZ_TOO_REGIONALIZED_FOR_L10N=(
- fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
- )
-
- local lang xflag
- for lang in "${MOZ_LANGS[@]}" ; do
- # en and en_US are handled internally
- if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
- continue
- fi
-
- # strip region subtag if $lang is in the list
- if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
- xflag=${lang%%-*}
- else
- xflag=${lang}
- fi
-
- SRC_URI+=" l10n_${xflag/[_@]/-}? ("
- SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
- SRC_URI+=" )"
- IUSE+=" l10n_${xflag/[_@]/-}"
- done
-}
-mozilla_set_globals
-
-moz_clear_vendor_checksums() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -ne 1 ]] ; then
- die "${FUNCNAME} requires exact one argument"
- fi
-
- einfo "Clearing cargo checksums for ${1} ..."
-
- sed -i \
- -e 's/\("files":{\)[^}]*/\1/' \
- "${S}"/third_party/rust/${1}/.cargo-checksum.json \
- || die
-}
-
-moz_install_xpi() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -lt 2 ]] ; then
- die "${FUNCNAME} requires at least two arguments"
- fi
-
- local DESTDIR=${1}
- shift
-
- insinto "${DESTDIR}"
-
- local emid xpi_file xpi_tmp_dir
- for xpi_file in "${@}" ; do
- emid=
- xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
-
- # Unpack XPI
- unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
-
- # Determine extension ID
- if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
- emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
- [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
- elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
- emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
- [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
- else
- die "failed to determine extension id"
- fi
-
- einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
- newins "${xpi_file}" "${emid}.xpi"
- done
-}
-
-mozconfig_add_options_ac() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -lt 2 ]] ; then
- die "${FUNCNAME} requires at least two arguments"
- fi
-
- local reason=${1}
- shift
-
- local option
- for option in ${@} ; do
- echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
- done
-}
-
-mozconfig_add_options_mk() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -lt 2 ]] ; then
- die "${FUNCNAME} requires at least two arguments"
- fi
-
- local reason=${1}
- shift
-
- local option
- for option in ${@} ; do
- echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
- done
-}
-
-mozconfig_use_enable() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -lt 1 ]] ; then
- die "${FUNCNAME} requires at least one arguments"
- fi
-
- local flag=$(use_enable "${@}")
- mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
-}
-
-mozconfig_use_with() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -lt 1 ]] ; then
- die "${FUNCNAME} requires at least one arguments"
- fi
-
- local flag=$(use_with "${@}")
- mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
-}
-
-# This is a straight copypaste from toolchain-funcs.eclass's 'tc-ld-is-lld', and is temporarily
-# placed here until toolchain-funcs.eclass gets an official support for mold linker.
-# Please see:
-# https://github.com/gentoo/gentoo/pull/28366 ||
-# https://github.com/gentoo/gentoo/pull/28355
-tc-ld-is-mold() {
- local out
-
- # Ensure ld output is in English.
- local -x LC_ALL=C
-
- # First check the linker directly.
- out=$($(tc-getLD "$@") --version 2>&1)
- if [[ ${out} == *"mold"* ]] ; then
- return 0
- fi
-
- # Then see if they're selecting mold via compiler flags.
- # Note: We're assuming they're using LDFLAGS to hold the
- # options and not CFLAGS/CXXFLAGS.
- local base="${T}/test-tc-linker"
- cat <<-EOF > "${base}.c"
- int main() { return 0; }
- EOF
- out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1)
- rm -f "${base}"*
- if [[ ${out} == *"mold"* ]] ; then
- return 0
- fi
-
- # No mold here!
- return 1
-}
-
-virtwl() {
- debug-print-function ${FUNCNAME} "$@"
-
- [[ $# -lt 1 ]] && die "${FUNCNAME} needs at least one argument"
- [[ -n $XDG_RUNTIME_DIR ]] || die "${FUNCNAME} needs XDG_RUNTIME_DIR to be set; try xdg_environment_reset"
- tinywl -h >/dev/null || die 'tinywl -h failed'
-
- # TODO: don't run addpredict in utility function. WLR_RENDERER=pixman doesn't work
- addpredict /dev/dri
- local VIRTWL VIRTWL_PID
- coproc VIRTWL { WLR_BACKENDS=headless exec tinywl -s 'echo $WAYLAND_DISPLAY; read _; kill $PPID'; }
- local -x WAYLAND_DISPLAY
- read WAYLAND_DISPLAY <&${VIRTWL[0]}
-
- debug-print "${FUNCNAME}: $@"
- "$@"
- local r=$?
-
- [[ -n $VIRTWL_PID ]] || die "tinywl exited unexpectedly"
- exec {VIRTWL[0]}<&- {VIRTWL[1]}>&-
- return $r
-}
-
-pkg_pretend() {
- if [[ ${MERGE_TYPE} != binary ]] ; then
- if use pgo ; then
- if ! has usersandbox $FEATURES ; then
- die "You must enable usersandbox as X server can not run as root!"
- fi
- fi
-
- # Ensure we have enough disk space to compile
- if use pgo || use lto || use debug ; then
- CHECKREQS_DISK_BUILD="13500M"
- else
- CHECKREQS_DISK_BUILD="6600M"
- 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 && tc-ld-is-lld ; 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"
- eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole "
- eerror " llvm/clang/lld/rust chain depending on your @world updates)"
- die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
- fi
- 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
- # Update 105.0: "/proc/self/oom_score_adj" isn't enough anymore with pgo, but not sure
- # whether that's due to better OOM handling by Firefox (bmo#1771712), or portage
- # (PORTAGE_SCHEDULING_POLICY) update...
- addpredict /proc
-
- # May need a wider addpredict when using wayland+pgo.
- addpredict /dev/dri
-
- # 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 ppc64; then
- rm -v "${WORKDIR}"/firefox-patches/*ppc64*.patch || die
- fi
-
- eapply "${WORKDIR}/firefox-patches"
-
- # Allow user to apply any additional patches without modifing ebuild
- eapply_user
-
- # Make cargo respect MAKEOPTS
- export CARGO_BUILD_JOBS="$(makeopts_jobs)"
-
- # 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
-
- # Create build dir
- BUILD_DIR="${WORKDIR}/${PN}_build"
- mkdir -p "${BUILD_DIR}" || die
-
- # Write API keys to disk
- echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
- echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
- echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
-
- xdg_environment_reset
-}
-
-src_configure() {
- # Show flags set at the beginning
- einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
- einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
- einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
- einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
- einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
-
- local have_switched_compiler=
- if use clang; then
- # Force clang
- einfo "Enforcing the use of clang due to USE=clang ..."
-
- local version_clang=$(clang --version 2>/dev/null | grep -F -- 'clang version' | awk '{ print $3 }')
- [[ -n ${version_clang} ]] && version_clang=$(ver_cut 1 "${version_clang}")
- [[ -z ${version_clang} ]] && die "Failed to read clang version!"
-
- if tc-is-gcc; then
- have_switched_compiler=yes
- fi
- AR=llvm-ar
- CC=${CHOST}-clang-${version_clang}
- CXX=${CHOST}-clang++-${version_clang}
- NM=llvm-nm
- RANLIB=llvm-ranlib
- elif ! use clang && ! tc-is-gcc ; then
- # Force gcc
- have_switched_compiler=yes
- einfo "Enforcing the use of gcc due to USE=-clang ..."
- AR=gcc-ar
- CC=${CHOST}-gcc
- CXX=${CHOST}-g++
- NM=gcc-nm
- RANLIB=gcc-ranlib
- fi
-
- if [[ -n "${have_switched_compiler}" ]] ; then
- # Because we switched active compiler we have to ensure
- # that no unsupported flags are set
- strip-unsupported-flags
- fi
-
- # Ensure we use correct toolchain,
- # AS is used in a non-standard way by upstream, #bmo1654031
- export HOST_CC="$(tc-getBUILD_CC)"
- export HOST_CXX="$(tc-getBUILD_CXX)"
- export AS="$(tc-getCC) -c"
- tc-export CC CXX LD AR AS 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
- mozconfig_add_options_ac '' --enable-project=comm/mail
-
- # Set Gentoo defaults
- mozconfig_add_options_ac 'Gentoo default' \
- --allow-addon-sideload \
- --disable-cargo-incremental \
- --disable-crashreporter \
- --disable-gpsd \
- --disable-install-strip \
- --disable-parental-controls \
- --disable-strip \
- --disable-tests \
- --disable-updater \
- --disable-wmf \
- --enable-js-shell \
- --enable-legacy-profile-creation \
- --enable-negotiateauth \
- --enable-new-pass-manager \
- --enable-official-branding \
- --enable-release \
- --enable-system-ffi \
- --enable-system-pixman \
- --enable-system-policies \
- --host="${CBUILD:-${CHOST}}" \
- --libdir="${EPREFIX}/usr/$(get_libdir)" \
- --prefix="${EPREFIX}/usr" \
- --target="${CHOST}" \
- --without-ccache \
- --without-wasm-sandboxed-libraries \
- --with-intl-api \
- --with-libclang-path="$(llvm-config --libdir)" \
- --with-system-nspr \
- --with-system-nss \
- --with-system-zlib \
- --with-toolchain-prefix="${CHOST}-" \
- --with-unsigned-addon-scopes=app,system \
- --x-includes="${ESYSROOT}/usr/include" \
- --x-libraries="${ESYSROOT}/usr/$(get_libdir)"
-
- # Set update channel
- local update_channel=release
- [[ -n ${MOZ_ESR} ]] && update_channel=esr
- mozconfig_add_options_ac '' --update-channel=${update_channel}
-
- if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
- mozconfig_add_options_ac '' --enable-rust-simd
- fi
-
- # For future keywording: This is currently (97.0) only supported on:
- # amd64, arm, arm64 & x86.
- # Might want to flip the logic around if Firefox is to support more arches.
- # bug 833001, bug 903411#c8
- if use ppc64 || use riscv; then
- mozconfig_add_options_ac '' --disable-sandbox
- else
- mozconfig_add_options_ac '' --enable-sandbox
- fi
-
- # Enable JIT on riscv64 explicitly
- # Can be removed once upstream enable it by default in the future.
- use riscv && mozconfig_add_options_ac 'Enable JIT for RISC-V 64' --enable-jit
-
- if [[ -s "${S}/api-google.key" ]] ; then
- local key_origin="Gentoo default"
- if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
- key_origin="User value"
- fi
-
- mozconfig_add_options_ac "${key_origin}" \
- --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
- else
- einfo "Building without Google API key ..."
- fi
-
- if [[ -s "${S}/api-location.key" ]] ; then
- local key_origin="Gentoo default"
- if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
- key_origin="User value"
- fi
-
- mozconfig_add_options_ac "${key_origin}" \
- --with-google-location-service-api-keyfile="${S}/api-location.key"
- else
- einfo "Building without Location API key ..."
- fi
-
- if [[ -s "${S}/api-mozilla.key" ]] ; then
- local key_origin="Gentoo default"
- if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
- key_origin="User value"
- fi
-
- mozconfig_add_options_ac "${key_origin}" \
- --with-mozilla-api-keyfile="${S}/api-mozilla.key"
- else
- einfo "Building without Mozilla API key ..."
- fi
-
- mozconfig_use_with system-av1
- mozconfig_use_with system-harfbuzz
- mozconfig_use_with system-harfbuzz system-graphite2
- mozconfig_use_with system-icu
- mozconfig_use_with system-jpeg
- mozconfig_use_with system-libevent
- mozconfig_use_with system-libvpx
- mozconfig_use_with system-png
- mozconfig_use_with system-webp
-
- if use system-librnp; then
- mozconfig_add_options_ac "+system-librnp" --enable-compile-environment
- mozconfig_use_with system-librnp
- else
- # This controls the backend of the bundled librnp. Choices are "botan" and "openssl".
- # RNP Upstream recommends to use botan. In Gentoo it's preferred to use system-librnp.
- mozconfig_add_options_ac "+bundled librnp backend = botan" --with-librnp-backend="botan"
- fi
-
- mozconfig_use_enable dbus
- mozconfig_use_enable libproxy
-
- use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
-
- if use hardened ; then
- mozconfig_add_options_ac "+hardened" --enable-hardening
- append-ldflags "-Wl,-z,relro -Wl,-z,now"
- fi
-
- local myaudiobackends=""
- use jack && myaudiobackends+="jack,"
- use sndio && myaudiobackends+="sndio,"
- use pulseaudio && myaudiobackends+="pulseaudio,"
- ! use pulseaudio && myaudiobackends+="alsa,"
-
- mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}"
-
- mozconfig_use_enable wifi necko-wifi
-
- if use X && use wayland ; then
- mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland
- elif ! use X && use wayland ; then
- mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only
- else
- mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3
- fi
-
- if use lto ; then
- if use clang ; then
- # Upstream only supports lld or mold when using clang.
- if tc-ld-is-mold ; then
- mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
- else
- mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
- fi
-
- mozconfig_add_options_ac '+lto' --enable-lto=cross
-
- else
- # ThinLTO is currently broken, see bmo#1644409.
- # mold does not support gcc+lto combination.
- mozconfig_add_options_ac '+lto' --enable-lto=full
- mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
- fi
-
- 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
- # lld is upstream's default
- if tc-ld-is-mold ; then
- mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
- else
- mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
- fi
-
- else
- if tc-ld-is-mold ; then
- mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
- else
- mozconfig_add_options_ac "linker is set to bfd due to USE=-clang" --enable-linker=bfd
- fi
- fi
- fi
-
- # LTO flag was handled via configure
- filter-lto
-
- mozconfig_use_enable debug
- if use debug ; then
- mozconfig_add_options_ac '+debug' --disable-optimize
- mozconfig_add_options_ac '+debug' --enable-real-time-tracing
- else
- mozconfig_add_options_ac 'Gentoo defaults' --disable-real-time-tracing
-
- if is-flag '-g*' ; then
- if use clang ; then
- mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
- else
- mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
- fi
- else
- mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
- fi
-
- if is-flag '-O0' ; then
- mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
- elif is-flag '-O4' ; then
- mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
- elif is-flag '-O3' ; then
- mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
- elif is-flag '-O1' ; then
- mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
- elif is-flag '-Os' ; then
- mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
- else
- mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
- fi
- fi
-
- # Debug flag was handled via configure
- filter-flags '-g*'
-
- # Optimization flag was handled via configure
- filter-flags '-O*'
-
- # 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
-
- if use elibc_musl && use arm64 ; then
- mozconfig_add_options_ac 'elf-hack is broken when using musl/arm64' --disable-elf-hack
- fi
-
- # Additional ARCH support
- case "${ARCH}" in
- arm)
- # Reduce the memory requirements for linking
- if use clang ; then
- # Nothing to do
- :;
- elif 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 PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach
-
- if use system-python-libs; then
- export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="system"
- else
- export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none"
- fi
-
- # 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 tc-ld-is-mold && use lto; then
- # increase ulimit with mold+lto, bugs #892641, #907485
- if ! ulimit -n 16384 1>/dev/null 2>&1 ; then
- ewarn "Unable to modify ulimits - building with mold+lto might fail due to low ulimit -n resources."
- ewarn "Please see bugs #892641 & #907485."
- else
- ulimit -n 16384
- fi
- fi
-
- if use pgo; then
- # Reset and cleanup environment variables used by GNOME/XDG
- gnome2_environment_reset
-
- addpredict /root
-
- if ! use X; then
- virtx_cmd=virtwl
- else
- virtx_cmd=virtx
- fi
- fi
-
- if ! use X; then
- local -x GDK_BACKEND=wayland
- else
- local -x GDK_BACKEND=x11
- fi
-
- ${virtx_cmd} ./mach build --verbose || die
-}
-
-src_install() {
- # xpcshell is getting called during install
- pax-mark m \
- "${BUILD_DIR}"/dist/bin/xpcshell \
- "${BUILD_DIR}"/dist/bin/${PN} \
- "${BUILD_DIR}"/dist/bin/plugin-container
-
- DESTDIR="${D}" ./mach install || die
-
- # Upstream cannot ship symlink but we can (bmo#658850)
- rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
- dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
-
- # Don't install llvm-symbolizer from 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"
-
- if use wayland; then
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel wayland prefs"
- pref("gfx.x11-egl.force-enabled", false);
- EOF
- else
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel x11 prefs"
- pref("gfx.x11-egl.force-enabled", true);
- EOF
- fi
- fi
-
- # 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
-
- # bug 835078
- if use hwaccel && has_version "x11-drivers/xf86-video-nouveau"; then
- ewarn "You have nouveau drivers installed in your system and 'hwaccel' "
- ewarn "enabled for Firefox. Nouveau / your GPU might not support the "
- ewarn "required EGL, so either disable 'hwaccel' or try the workaround "
- ewarn "explained in https://bugs.gentoo.org/835078#c5 if Firefox crashes."
- fi
-
- optfeature_header "Optional programs for extra features:"
- optfeature "desktop notifications" x11-libs/libnotify
- optfeature "encrypted chat support" net-libs/libotr
- optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas
-}