diff options
author | Joonas Niilola <juippis@gentoo.org> | 2022-11-04 13:07:02 +0200 |
---|---|---|
committer | Joonas Niilola <juippis@gentoo.org> | 2022-11-04 13:07:36 +0200 |
commit | d46c315ad0c7dfee3d6ad9bf77edb241e212bdec (patch) | |
tree | 9464bb076cd3e542e9b22140d8e792cc41eb24b1 /mail-client/thunderbird | |
parent | dev-python/statsmodels: add 0.13.5 (diff) | |
download | gentoo-d46c315ad0c7dfee3d6ad9bf77edb241e212bdec.tar.gz gentoo-d46c315ad0c7dfee3d6ad9bf77edb241e212bdec.tar.bz2 gentoo-d46c315ad0c7dfee3d6ad9bf77edb241e212bdec.zip |
mail-client/thunderbird: add 102.4.2
Signed-off-by: Joonas Niilola <juippis@gentoo.org>
Diffstat (limited to 'mail-client/thunderbird')
-rw-r--r-- | mail-client/thunderbird/Manifest | 66 | ||||
-rw-r--r-- | mail-client/thunderbird/thunderbird-102.4.2.ebuild | 1165 |
2 files changed, 1231 insertions, 0 deletions
diff --git a/mail-client/thunderbird/Manifest b/mail-client/thunderbird/Manifest index 899ed0d33679..e5d8ed3490af 100644 --- a/mail-client/thunderbird/Manifest +++ b/mail-client/thunderbird/Manifest @@ -1,4 +1,5 @@ DIST firefox-102esr-patches-04j.tar.xz 21860 BLAKE2B 1cc1d6493912f85e71cb5a0ec2c3196cda203242f3503bb6ce8c23a93e71a6e8b1138f88498a6a9698066134cc234989b35cb378693fb2cbc9ba4caa8d66761d SHA512 9f7188dd79b9856826ae2a60b0109c2c86c60c10b03cd1828a9f7a7576df5c49ed3e11e4d3319d80e117204d6bc3408e375a62ad16ec8d2e53f999cd298811d8 +DIST firefox-102esr-patches-05j.tar.xz 22180 BLAKE2B ea90ac860b20e6c44ad0abcc0275ffb8d09f29df07b9031b45642163408a0ed88a7ea3c5f2d40020ae1129521f3234c4bc22b2956a4aaf8679fe5f2e85c18fd4 SHA512 93733f8e3cbd19b5cbfb62487369ca7e5fda8f3335539e5af66d3d89c8b0bbcca4251bb56d92a008d47a6790f5cb2874268b2421c307307bbd34e4b3712b403e DIST thunderbird-102.4.0-af.xpi 551915 BLAKE2B 13681d8aac920cc3295760e3ae21717d8fa67c35557216c70044b0e0d53515985e7a1c1508199149d34ea1dc6d0fe209091da3a30e1f0f9654b7c9ee607cd44a SHA512 960d9abcb20ce01ad1156c0851e8911f20de7de6e81968f85eeffadec76a1e322c7072b098f8001f0f9f252ccd5079efbec1d4ca41bcd2c5202982e3d7590b99 DIST thunderbird-102.4.0-ar.xpi 656148 BLAKE2B 9e83046403ddbb6701efa85da7c9492e852bc61bbf67287447c51a57d48934fa7e1111147ddef881b40eecbfb1da30c0d28cc9f215e210defdef583bed515936 SHA512 3ad66f30160bb1ec4d881849e96e511cfd71cda4b1b5d559bcec5e4268085e2c6fad30b7a7ce276b9e01cc70193bdc097e0870538c60ff3c4d86e8e23735b9b4 DIST thunderbird-102.4.0-ast.xpi 564832 BLAKE2B 83e12d4c8de9ef10bd5801ba54e2c37c718303f204bb730f99a3769b0931a62144d17fb699a24baffb3b16ca506638074a3d1f586f6c128f1874d70bf2d50ce2 SHA512 f07d7aa6d5c809506a10ddd79d1542045f4d222eca7ec5889a06ce539e10a291b8fae89cb500476a8945c2d2a093e102e08fe56cb27e9211ddd2780805a429f6 @@ -129,3 +130,68 @@ DIST thunderbird-102.4.1-vi.xpi 724844 BLAKE2B 5e8a9477e941b796fcee5d2c191396290 DIST thunderbird-102.4.1-zh-CN.xpi 722695 BLAKE2B 455c56d5756066913b9e4192f47e1b96d35c6122deacd6e26328dd2437f7f54e874efd27dad0113e286dfe704446ac4bd49c78d6cb71e3580692c5b2c8ef0c31 SHA512 4d9845511c89a5c641e74f524f4daee3c6ee36bb616499393ffcec9b336bcc91d04997dbec1bf2b833bdbd38f96d4e49882aa65a7c03258b08dc435d37c2f6ed DIST thunderbird-102.4.1-zh-TW.xpi 725965 BLAKE2B c4d532dca6fd01e31756fd4865abc4726a662ffe8f9221705ea9936b826d82791a3eb6bdab2128acbf5f6bf6152b16d3b98ca8c53fbf267b511b74d1b6a40345 SHA512 14b190ae8b0886996d9660d1ea32e9f33442d96f7dc61ab26731e119e3236a23c358d1a2385b6ee7facae53c78f1e94000b451a4c36d98ccc80630042af6f2a3 DIST thunderbird-102.4.1.source.tar.xz 501950000 BLAKE2B 3e846245e8208c046ba87f0df984c7f875fe9c03122e71d1af82db42e987007478104a56edf640f75932145dbd7ad9812cad0aff99295be5fd551d0396034fa8 SHA512 8855f7bf1ee2c9f6859189f3aa8afa5d851af2f4edb1a63e3804ec7796f228addf2819028ca6213f7c3f6c452cf4915801df1e706d7c84d8f15e0a627c77b7b6 +DIST thunderbird-102.4.2-af.xpi 551372 BLAKE2B da7fee00ca127cc49f5b94bc5614a48957f254f6c53d08aa61cab69df30cc7d1b2308e2c59f5a66301e46a5aaa011aa54e955b79eed079a21aa7eadf17ca3639 SHA512 14ebd81a8a226b23a2915a1e4082c6cbf0ed86ef47c03c98de8f9146319cceb84699863d1df53fa5b51c08b122ed600758069fe33875808b1cca99cfe8c2ff3c +DIST thunderbird-102.4.2-ar.xpi 656150 BLAKE2B 7a2c705155cc5959cb7b1b06a905d11f695f974b63e1ac6b5b548f8740aa3804712a1bee2f44968550ab1f559b167a5cdc534eb814191ad16aa2ed72a67b866b SHA512 7507d5f7cb851d07e3b52002605e9ee003738dfcf7b67ade69534c603d4fae1312c0383faf517feaaaa8fa1a458afedfe3f1a3ec0eaac99364e718c1703632ce +DIST thunderbird-102.4.2-ast.xpi 564287 BLAKE2B c1faabf71ca9707d35722f750017c67f7fb6955c410002aa530f880b6106b1908111d58f3ac1682800d0d7002e3fa979e3d35de89d1326d088855335ce5c42e1 SHA512 f8db940f7ebde72b73bfed6483c043a4c12ea516f3613f7f699c25c2fdac3f54f5601c9104a154670bf6cdbf95f66b7a24c042c4dd12adbaa2b1ec978d670c5a +DIST thunderbird-102.4.2-be.xpi 686679 BLAKE2B 106a5a32842dc591f47400150efada525f13a7383048d23b33aff761c1d6140b7e70d73f41b610e0cc17ac6fec930bb69e146e7c95ad45d483e71a4019be79a3 SHA512 4f1eac67a367f669fc5e0a59524a7cab5abf1090d3ba7644b69ebc477b92cdc558f968091a63f44e604e10be9226e3c08b607726b55447ac49cdeb718519fd98 +DIST thunderbird-102.4.2-bg.xpi 682268 BLAKE2B feb4e6f7d2958c413c93cc744d7118c7c6237aec5e8ceff27d91e0acf8fed948b420c74ea00ea06fcb1df40ee75263ee0bab803fb3e2f745b73968a83c789189 SHA512 9e441c90994ebda49f6f7c3b19137c3d3845faede3f4f07de2c3a164284d08fd8216b51961126bf9adda62318a84ad3c2b12d0dcf055ab7d3d450a926be4dfb5 +DIST thunderbird-102.4.2-br.xpi 615116 BLAKE2B b491616d53a06267d43afad2f5d1898983ade307235bdbfbf4dd38a9db6586d1087f561110220062f7036809d04d5bd20a73092a626476deaf9a40b846264e6f SHA512 477ff50e728bc3eca193084420dd46088a1181e9f1444977c7d1b4e4c6bb0a6bb501c7526cb1a712fea8b7b159f1e6cfd2ab935bcd0290777c913ec048f0ec44 +DIST thunderbird-102.4.2-ca.xpi 636174 BLAKE2B 48ca049d97beef13ed5bb6bc2bbef9b2c919e25c5c1a8484b698e899ff0baca9f3704f517a72fcb32a5930d65ab234ff06a0bfeb2ca0d87488cc2d79368eb62a SHA512 8eed52dfa8ed94a1ab4aa0696770523b07a9e6c4551b76aa5d87ba699f5c5ddde6745b3f3074ce8786b2b52adc6dea8f8905464649518a38fba9b5d691005311 +DIST thunderbird-102.4.2-cak.xpi 641841 BLAKE2B 78ccc24b6158ff743100b5a99f7f2f7a35d312250e74241e4552ffc65ede54d7fd3014df1a09f9fee620305eac2d65e6df5d74eab63af5f786e1acf266f84a06 SHA512 8c69d3201f011f2db121008f1d2ec81f2369e5f4b918d2092a3264d0f9c36a8f4f66219cd9c3dc4188d3a7a7a05176a9f298333fc5f0b4fd278f5ebe916b36bb +DIST thunderbird-102.4.2-cs.xpi 706338 BLAKE2B 40c1f19439d17966e3ca2730fab8a0a365a8a4556efc5f946b4e7a4ea7a08138e5da82b0410446f868ea38e4ba07617a0dfbb05cfdf3f8524b5215804f85c91f SHA512 8263fa9357fefb2e8ffc21043356c502524ba0e190baa42d6a171be6b11d4e79f00de9058121940e31abc5f4c6a1eb95d4bd7de941d17ac541c64f3d9035347c +DIST thunderbird-102.4.2-cy.xpi 684716 BLAKE2B 34f151510eacf0fd7b25a0c6863b9a7d3a89eb4c0bdf65609501254f7c1a27ddd3e95b2ca0b758b73588a1cefd57be7b5d132f584992b0f94bc1a16aa95bb990 SHA512 11aa51d16ec3807c02a3c32798a94c86ae7b9a5fd086aaabefa4dc174702a12bbc5c2dfb49b6bf3b398fc482b24d480cd1ec1c58ab875b7554f47f029e417e49 +DIST thunderbird-102.4.2-da.xpi 670578 BLAKE2B 05fedaeccbf90577c94651e63bb2890a3b0965f7dc6ea0794a37441bb4773ea5659c55e80c6aa2892eebe7ed372dad180605a45e7613abd23123bcfd3f92a298 SHA512 802e227b30d8b4d1edbc546d973ce05486a8b80eeb98f0e12a02b6496caf2e03e852060525d5c43e990196fa18c50cde80d3a19c2b9293b0798faf71d8581e61 +DIST thunderbird-102.4.2-de.xpi 703559 BLAKE2B 132497fd348b4c3b912538aa4daefde53b61a7b6245fb5518097b53db57a66870dee7e672d3632fa06ee89dcb818f35e77a4fe8ddd01da245604c5393bdd7cd9 SHA512 094e7914fe73ccd4349f0c979d11656b486aa7ee9d35550ef072af38de0925526051c716ab01c06ca220d4e26699cb01b5a203a8dba1e497e38d4ef8d23e3936 +DIST thunderbird-102.4.2-dsb.xpi 718470 BLAKE2B ad4cb896fcda260ede949a8e2e7fc8c014423bba2d4327e72556e77486a8dd2e61e61547110da0233ef01920024fc32fc422bb8b79ba0cc0eaead7dc531086a6 SHA512 39d1dc9b447b606f50e189eddc2543048f07e42fb0c78a709b9acf6c377318142050c278857161592d3268d2040531251eae5201acaae53ccfae632575d4dbc3 +DIST thunderbird-102.4.2-el.xpi 816316 BLAKE2B aa0c5f9bc7d38450d1c8b97badcb3eacfeee7b539c34878f4d6b87f2df9869a10073abcff341882455256e2d48664493e79ab28e793a9711f67ce58f9f6bc5cf SHA512 6d2a4f87d42c340f0d8768e5c45c22dd0b6c134eaaf0756ad1e5b3f97206840d15cf75cc09828dbe813ff3863266103a0dfd10a44174ca9cfc4646b8a6c337c4 +DIST thunderbird-102.4.2-en-CA.xpi 644397 BLAKE2B d2c8a988639948a12c72921d7169a8d97a5a6737ea6eb60ca462fd09b07c85f87981b93df1d5d59de5beed77f68715d827087afec764f9661a7d6cef4e2916d4 SHA512 d329c6cab779a9ecb852fe2be779599b077647a4670cffc04e25ac172dc93565cf68bb6ad4407374b0e856c4922984edd04e4d125f025b8412eb58416d85831a +DIST thunderbird-102.4.2-en-GB.xpi 645398 BLAKE2B 331c0744ee350f1906d359faa688b8c4ca7a3f879dc2067c0d1c16929495a029ee6af3b3d4677227115868c2048e28495517f2b632c088468cec3635b5e45651 SHA512 1b86a5132b403b195749994022f624ad931d413f54f2eeecf02cda4ffb06b15e64e7e03577d44f4b49b1bd11cfe1aaec19ba98ed019e7435316dac39b417944a +DIST thunderbird-102.4.2-es-AR.xpi 695963 BLAKE2B 02cfec82159b023adc586d53ca1164817e32b46a854781386dd52473eacbe5efa6f1927d4bc1b5b3edbad443707ec3c566ad4214dc28452ac7ab50801e3135a0 SHA512 06a475b8e66dbd5ea4c41c728b88237b3f76a3eb13fa8aca882274da73a8b38cfa779717661935a618ce780b190dc473a1542d3167e29a43195956bdba5abbe2 +DIST thunderbird-102.4.2-es-ES.xpi 652045 BLAKE2B 39c1c05abd9872096e3c2c70047ccbc24663ae55e1efcdfc37b3ff5edea2d62491a564ebff878adbe16093a8589cb35a0885ac4ffd0774da440566c4bd286bd4 SHA512 c9d4a6553637abd3d44656a015ed7d17b48b82fe7b3bd2f89da9723d10f9cbef3dff011e41e94b264dfd15182d2d69ff04f8f4650ba6555372da44bb9e1497f7 +DIST thunderbird-102.4.2-es-MX.xpi 698653 BLAKE2B c74050ffe38504ba604592ba9a19bf786bc69cbf3c882410ee483b7ac440c23890e5e326c530db11471d17e2e96c2a2e7c7861ca4e8a3ca5db3c292c9dea8765 SHA512 fcdf3c3bb6fcff7c315761c727a8e57d6debec5b4d47f2da54fb4cdf525a900ad809068a254c68504043e4113260525122d39899427178f658574a595d128255 +DIST thunderbird-102.4.2-et.xpi 666815 BLAKE2B dbf432e9feecf3a934a630fdc5b81e89daeec67c48402da35b62a020d31ad1263167bf32d0095e0019ca8eb47aae67c21b7c32f13a7ab48d74760f8417973b33 SHA512 f0776cac9cc1cd9ac716b47302aa93ba6f65fee469f92b42f4366ba557f289c6d98858a7f9631b9f4c1091abf5446e440e855d860f5c5cdadeb3660fbe847c2a +DIST thunderbird-102.4.2-eu.xpi 680211 BLAKE2B a785bd3a7e519dc42ecf4d928fe8cd66b73a56ea38cfb3cc9dc55d470c0c4b3670f5457dea72e9cf8cea49bd3c207e8ff6b7d4678911d13ad9a97c44ef855e10 SHA512 8504863f40e2016cb69f0444083b3aab74e48d13564ff6ff0f1c512b00b0407622799f1137e05be2396bf4c2af4c96a58b3e95de349eea9405ae1107df1050a8 +DIST thunderbird-102.4.2-fi.xpi 673901 BLAKE2B 250b3badd6d90d51a6f9747239613ea4de9aabddb86830fb2d98865f97e586d67ea6b9878cf2332bd9ff772a44d8658b98e7be50261f6e298a2d47b9e555f871 SHA512 9b407d31315671ffe01ce9f767d89eaf43c083d2f41948a65c6eaadab6e33faf48383c8c1c53a02a7bf113260669d80494f4c6ddeca1eeac51e2f8b780fb8f8b +DIST thunderbird-102.4.2-fr.xpi 708767 BLAKE2B 6bb63590d34ae4e295c0551dde823609ec82eec0a67da7bc443a8ffb5356d1c4cdac4693547c9c314f2811c65a83271a49fa2a331f5b038f89bf2ab28455d9d6 SHA512 dcb0afb46c34581a7d05462d98dd6b6beccdf005d417f76f3997df41313a8d91512febb3ed0611ab16bbfd1b5092c43d0392d3f0f577aa5c147fd6106ce914bc +DIST thunderbird-102.4.2-fy-NL.xpi 690681 BLAKE2B b461c21aee3a06151977ba7e9241c930ee7d90b53125ba9fba2f6fbdf569663ff7c225fa20aa8466882d932671e40ce4c3e5164c87f70e77ca3bfefd9d26da33 SHA512 ef94e5b72b68e2cc3692a29b84aecfd82bc17525de9b7ea6c740d38840378da48907e8cd8c765f71788ec6d6f62e80cc74c049e6fedf7655555e4c18193b15c2 +DIST thunderbird-102.4.2-ga-IE.xpi 603099 BLAKE2B 127061da9377d54f0df2a01c342030cdc47d7927304a1246d732d12b3c0a83f5fc489c2ffb17dec1620304bf91fe282fe9b351a6b4a7b8166632c41bf34744a4 SHA512 e50b27c91b68daa2645e58f0bd56a76da42c35d3a3382abe3664629c86389db5a2fb1d72fd033d4de1b63774d9b63885ba8e23fc92cc5e5190f2bed825e91566 +DIST thunderbird-102.4.2-gd.xpi 632445 BLAKE2B 85732b1ad4b9ae725b7a6b6295598dbd381257cd677a7f8a4a5f084723655c16869da6284fa4f6296102e6321cc5cab432475235f5377f36b8b1a48322258796 SHA512 82675a468fc7cd282c64b0e07b01d37b177f54ba1555824e2e0b589a32172ca4c7fb7cd2b63d7ee51bfdf89fc687a93ccb1ddcd252fefeb875a9093faaffa2ea +DIST thunderbird-102.4.2-gl.xpi 663210 BLAKE2B 2fffee731a09bcc7467c242b35c91d321b2e0414b2f27820b0b0e9d072c67a8b7762b5525220b94c1de6f84b8a67fcc64a6861b6b94566661745c1a0a9ecaa72 SHA512 6100a61507778adfad01f707511c58812d814705ae70fa29600e6375c8de365d5ea9d74811cfc771a4cb3402fdc38a1d937a383541071eb7e950c60a4a19c693 +DIST thunderbird-102.4.2-he.xpi 662890 BLAKE2B cdfe6bbb88507b3098c836c0ac115e25da71a0d1d9461d8f963e6535075b897d08d16bc614c2a59f983521d4eef40bdbe358886f7b7f24eec48fd35cff87b435 SHA512 0904fa5a6cd4c34c2951459086b974811079a930f8cd683975df23d698a798d5c61906b70127fb667009c0deec397a3d2cd6c2810e6fac09d9fc22d2c9972304 +DIST thunderbird-102.4.2-hr.xpi 661114 BLAKE2B 68ad72a93ec96fd3996a5084c34623bdc21098bedec218986bd44a5ec581c150c6faac0456ed893ed4019851b2e32c9b5b237ff29c6ab7d7bcb55e2b0cd32c64 SHA512 e057e55efcf5e7e58d44a5819ef7a082fae408adb31241da0634e234a146425c2febc9934bc279365d33c2a15b2e606e75528bf4d29ea98f743c9def066f4996 +DIST thunderbird-102.4.2-hsb.xpi 715754 BLAKE2B 81b0b581539ee2bd0ab8f9c4ef4288dbd6627a716bd4cd337bb20ea2e88b7c780cfffbce5d6da6a02ca8294f62efa1a99944a9ea674fc2927d628f5a857443fd SHA512 0a4fa6d0689fb027aa2a4194d98e6df0e6e66334df8c6cd42b2254f38215ad314150d474fe40ecfbaa069e5651fa1d16feb19d4d134d7b5a29547b108f69d62b +DIST thunderbird-102.4.2-hu.xpi 718785 BLAKE2B b4d6b3595b7df1c31f3a3caf319df627ee5e9258614ab3f5133afdfe19466f7186f17a5e3047fca907b40f6439a5ab8ebef8f3a439e49312b794c286964f53c4 SHA512 aa71fc3434ddea897b5d9a51e449488b8b706185439898fafeeb3172a973abf5bb707cb1e7069800b506a1345253308c451495fdb12b890b97e2546627c45b4f +DIST thunderbird-102.4.2-id.xpi 639541 BLAKE2B f0256637660d35514c09a8566feaedd953de113b3b37af59296854fb42df21a834ebf806116969907ad9ddd863a19d09d16c296aebd8df48b7e8977b31ead198 SHA512 a8632d326ef57ae058a8fa65b7ff1486fb0d4572057413af16b833e2d9e3450172cb2211f09ebd1997d87dd14232be09420e963622023bb7a7a932f05dc475af +DIST thunderbird-102.4.2-is.xpi 685617 BLAKE2B e1b5163f185195a3f6d1b9aae13f657550b8c74086dee34f5c2d0ff0a3cd4da8e5c04bfbd28b1c30dc602814e55665d7634f746df64070268b5ed0af149b5f4a SHA512 bb6f92c8f3aaf05587a7cee5a8b4d5bd313b66c12194ebfc59db415bc8945310e5af176829aa32586850d222f8efed92de14b7c3d0b1e656b4e0faaee9723009 +DIST thunderbird-102.4.2-it.xpi 617780 BLAKE2B 7c43c26e86cf2263af749b895e3a3ed2d1e18d64ddce0840cfaa56423a8b9d1ff5663807d20e969473cdcd02394d2ce097147bf9de52ba35c2ad2b3cb04a5e2d SHA512 6b69c547efedbb43db8ce46c6c1bda3abc13b16afefaeec81d09903965bc7c0a9b9ece6f9efa59cc70fb8116c787126e4977fcfe5d3e8f08c13073d7f57630a7 +DIST thunderbird-102.4.2-ja.xpi 755143 BLAKE2B 0b81cd80a6078424380fdbd3fd2fc283805f745a9c36c4e76710fc3593b82dea7a8f20506fbbcd477fe920db399e51e5971886b551ce401477c8b2f1af4e0c25 SHA512 09322704f7c8f3b7f362335c6f417c45caef2248ae8136e0d8bcd96df52a9989690b4b8289e37e7b6a00368d779ad5402802925d122e267094e225c4087d9237 +DIST thunderbird-102.4.2-ka.xpi 752976 BLAKE2B a25fdb6634a12470bc2d127b361c00cd9475f0b83fe1c079be786c1b635cccfd90da69ff327941b203907b224e470260c3010130fafb63be6d149d18f7401f38 SHA512 3a31d1d1c4eff9872079b137b78522c4796fed0cf61b85dfc9eaa151373749a9298f53d978255f3a569c3bb8f6fcbba63c294ac574debf0e0a9f4dfa6ef937f1 +DIST thunderbird-102.4.2-kab.xpi 688572 BLAKE2B 71d199df00fb51e839c73f63ad50d8fcfbad61817c0492070a77d3269594a109b5fa35653d51bf4757bcf9394b5d4d451cd28e7af14ef75f91f9caa7a2bf3599 SHA512 74401fdcad0b8e4dcc2b2122da23484e89f00fdd7050bfd8c7d555121f3ef1a686b0f8176c845e8fe5137d4be4a88622ae2d4c279a93eaa690ba62f9ed286f6c +DIST thunderbird-102.4.2-kk.xpi 731942 BLAKE2B 45b351c6cb1b37b3585f44f833667d40fc29f65166092ea74c61474ff8bdbb33ded8d52b655bbd7c6ca746452296e90152db0e87b2278de897477df8d0acaf21 SHA512 3bc6a0e13537fd819480cb01545cd29784d84a7c63593e3bc89528c8a8ed1058da42e5a306e96cc6422c795c023016ba15360cf0d148a30149c0673ffd89d066 +DIST thunderbird-102.4.2-ko.xpi 692941 BLAKE2B eb346b7852f95cb0b45ee08ddf8c87fcfa4c8d1a901e96ac5d54f4b4345f54e0460475180ae7c80efff52e90c60fdc99cb6e4b5d3611c856db786cb5bd3a3fbc SHA512 ab2e3e027a212edd0bc9a238c084d4ccd3d00e8688299b3251d2eecd8aa4a387cf31dc6cb0b5f41877dbeb6c7f0956702b98d50f13bee0cdf2e6e40a435474e1 +DIST thunderbird-102.4.2-lt.xpi 680720 BLAKE2B 389b8610abe8fb16fb3f7300d4e225f29819e0aba8a9a0c2a713fdf39e623b7b242ad7d168ce599678d84d2f6bdad25babf17fbad7d804e2385ab9ad0a54e24f SHA512 7d1948bfdd0ad20754abea33ad1a06848eb2f2eb15e1d0849dad4165e913886d72f6e17f018bdf4350bba2efc9ee102b6ec8c447890ef37cf8f4ea057c3dd7d5 +DIST thunderbird-102.4.2-lv.xpi 608589 BLAKE2B 5cb65df9d6e4b5b249a1ace9de8a11a6077346f5f2b5c1527091d29ad0a1c0dcfbea6c6ae808a44baf5cfe674e501c592e4d91aab228acf0dd3ca545672bc7b4 SHA512 1c36c77f54b230f8e5d87eb89ea5752e2a6bc751a19587cfa02d85e306f4a9eae72725c6109631ab7abbe74d42f5955fa7578cadd4341c7180715b702b96c30f +DIST thunderbird-102.4.2-ms.xpi 568427 BLAKE2B 624be2236bc1e097880500e7e0a7c1a5e7ceb986a58d6bfa7261731b2819f6ed888372e7ab861c3ce4249b76c67832a3c7d41fdba90e822a15865556f9d91189 SHA512 ce5fbdc79c5c41a1be1505a87fc0b32ebf52f0094728299e2c7167dce809f0de1f3429c339ffa97678a90512c8b03b8965981aac297726dce6fb98b17fba7dbd +DIST thunderbird-102.4.2-nb-NO.xpi 648583 BLAKE2B c1b13fee45c49313713919be65b10097863ab7f79351c92a04bff4d2a2ce83dbe0bb5420a4ba1d88a18bf84ea8a8ccc216de1721a76700f1a481b3281991d5a4 SHA512 7144098ac3b113573b40c118d719ad26c963253161e9121dd358373cf2bbd6e928e76aaffb6ea922ce899c4c19f44b1577514a51cadcc589fc5fc211e255975e +DIST thunderbird-102.4.2-nl.xpi 682268 BLAKE2B 731deffa6ecf9ab07a8b9f5ff3a8c9bdde87ee4259f5479a520528c3d04f128ce8d9a013a5b697aaea35929d00426b2f12553f5ecf2ea6fc9f55c25a1cbd3c59 SHA512 05e71cc815208a4177208c52dbf64a732f245f10d0b4f1055a2dda6e40da74639d5e219ad0c9193becd94e3e114d687f8ce1bdcc02bbdcc285e2b97c2d4c952c +DIST thunderbird-102.4.2-nn-NO.xpi 656907 BLAKE2B 4665a02d9a61c2f55cc9ab8905a766b4ef9d10353e14d4e463c6972c93b9cc257b08006178e53dae1737299e0a09f4dd83d1e2b559e6d2f394c77b44a8c7761a SHA512 632dbd2ee6686d7e024e3708fbe19ed201cc345f1e1e9f56da1b517f35e3069b4bd87d3add6e056581547587072ecddddc3b44bd4ad5d23da86c0f90b6a24207 +DIST thunderbird-102.4.2-pa-IN.xpi 653544 BLAKE2B bd891688af878090107fbec2d6cb06a4ecdbc18c0223e5f0c6e4dc8bc96bccd481a28327b7da8b7ed82338e76e61c6e8f1ee50d1fda1055e4e51b6b80eb1daba SHA512 90a144f83c5d6e415a6939778bb537181d5d8922103e8dc3c248fd24df17e8964cbaf5646628d3d39eaab58d53c064f48137f364304574f80a65e080273126a1 +DIST thunderbird-102.4.2-pl.xpi 695418 BLAKE2B ce434b772242fbae1bb6d5d35f9f54f76a2af1855f09ef67eb122a2cf65722c3c11cd1824439e1191cd8907e4e7d3c8a7d9b8fa23079bcee74069387908c8fcc SHA512 10a80d032eed010bc580331f79e4038f1e7debb497d3c948434904c222e7f4bac44b19368ebf3dc2a0cbfd0e0df66786af309f0f4e01ff9922d70673847da68d +DIST thunderbird-102.4.2-pt-BR.xpi 690289 BLAKE2B 751f892906a90eb74b70bef279cbaf067ac30e9fc1db23bf56bed269ba8ac9b1eb45efb9abbcffce255640d6a09f9a81a7d2b5c919b34a2db4376f7ffa593cb8 SHA512 eaee3ad02883d18365c1b0f9a89abe3c0421be74c517c766ae2a5669af1eb4a7c8ef3e5519bc4dc114356cefddf038b7723e1071313fb19d4d5f0b818aae1fc4 +DIST thunderbird-102.4.2-pt-PT.xpi 666880 BLAKE2B 92747d4e996f5e6f8d4ad44c9bd23decca5c78f47f56664625d02f82e2dc6c62f56cf886cf38074963c35ee48e602c033871ca121e320902b73038f9fead919b SHA512 c871d6c94c638039184fab6388c62e79e33a269ac8260b8715c69a4ec0ba0e15c93c0d1db69b3664dc744e23ce2093f2c2f2d0745d61421c6f8f30444e110f02 +DIST thunderbird-102.4.2-rm.xpi 686110 BLAKE2B 94ec8575aa260a6ce9572241a72b610de6827c682e066743bcfe5b84bcfdcc710936478e7ff402f19fe2c4914f60ce4e4c2cf77586731859107d3cda2371cfb0 SHA512 a4419cbba043e611f7a34ea4053ab5285b6aee47c09c1a5456881ba77e5ba229a0ea53b50bcdfcfaa2491e1937cca0b6fecbc651e802042279b3d9c2285d3daf +DIST thunderbird-102.4.2-ro.xpi 651333 BLAKE2B eae00946ca3d23bcbe25b537c0cb40927b142577a5887ca4add8fb85cfde05a10c48b096bcd0de4a10aeda8b4355bdc646c309d59f1e875ddaf5a27560781b1e SHA512 6356404ce6d06751236a0763dfc7396204f7a68f9067b98a1db8268c9a7c5085caa7f5e88a05d4a40f02975805b2ace1ed9e18e7c0b8486e6fac2afce2eaccf3 +DIST thunderbird-102.4.2-ru.xpi 801785 BLAKE2B 397eb691c476e8eeb6f7cb5fa490234c6f40f744f28930fa19cdbcc1e63326559492117910360eab09ee956c162b0e46210fdb588b26affe7b66a367f3be4ea0 SHA512 3fdef703253ac4918e38667f7a7d7b0d16ec20638975fa11cd6293f163d3691365b4cc1c5e86a19357062f8c290e9bf3a2013e4525441d3e9fbf56a89ec6210b +DIST thunderbird-102.4.2-sk.xpi 718356 BLAKE2B c017c8c9db247762f098ff6e870d604d062a2e0e8efef891317e128218547e04f7c00933f7f64bb39ad5e87badf635c89f7be0c8004f1ccb45834bab8f5c2a2d SHA512 6e11f1f4f09d46752d2d91e00024c97b02802c0feaa9552a3636d1e059f3b096de08b3b1b509213c3cc0a75912400a8af83b15ec01e6fd12709aeb4f7160e388 +DIST thunderbird-102.4.2-sl.xpi 683785 BLAKE2B fe19af11b15546b4432acfa31a9a12c90e1db78e5e0bc9fd0b64327c48b2ecc41b87a9381e7f6b188de066ca4f1fbb1d5141c89bd82fc287ea7764f915883a93 SHA512 766603ed11c9d343aa289ff8755980ed53fd5a7366e1e67d12312bd21794bf8e8ab103dc7afadaf8125edeb852bbc11a8183db9332641aa140cb596bae552355 +DIST thunderbird-102.4.2-sq.xpi 690226 BLAKE2B 733ada974e6f1c67996f22aed61d70787ced8e2e887c8ed3fb9cd65d24bcffb86a1e06c8eaf64dd438e30d727e3918723e0790e1dab32c064b557375fa94ee0f SHA512 9404ff61a93efa682b8748abc9cd93010b3be71cebcf288d12c192e217a61169fed172af5502a8a90c819d1847914f854be0569f4ba3176a7aeb1c87b924fefb +DIST thunderbird-102.4.2-sr.xpi 705271 BLAKE2B 2f55b06be7aa8f70160cd7507ef751702e8625cb6c0c8a5af1c9477da4537f738cfe26eb5319405032d271111ef79a0c87f13bd6f3a273f69922b7a5a7b5f3a3 SHA512 736cf17567052007e31dcbfad027edcb7215e9f8b8800c011a9691775c3b18873b0595841e566f0dc381ab01a6cfe40db639cd0d7b07556f85fac6fc68db23ab +DIST thunderbird-102.4.2-sv-SE.xpi 685685 BLAKE2B 02ef5c5f9ed84a4912a2fd7f832e09a2f0f1d4fc1ece8b5fd2d3b5a26abec2e90d42869e7904e5d1cfb64f43d32c24626f4180bb62cea8ed5475d751ba3b5f36 SHA512 750b55322281aabd2a89213eab605e0474aea8a1262d24803e93b16507f844fbd491db861d02fcf64616b0cde9f59a3a3169bcd65feb2edd401124cb0844c295 +DIST thunderbird-102.4.2-th.xpi 734542 BLAKE2B c3e33afa0e78b1a11eea351616de56bcbdb22847f400538740074c24effe224c2e028cd4791ab61728283bb071e18aa01565f59cac47646130aaaaea77f816aa SHA512 19bcd31ebfa4efde7441afad34bd6c2bd3fdf6e6ee4df0c7e61f9ed7f26fa11753e286816be7633861dd837419d047d5b09edad3e8a38dd8440821256cf1b69b +DIST thunderbird-102.4.2-tr.xpi 697057 BLAKE2B c62c330a950ca175c5b549d5d2f5d2c8a6f6d33fb91ab44e3031b7c42be589218659bb81f7f0d20342da5d6be728b41ee1e5b6990ccdecc270f0b32fcf49b9de SHA512 a894edb22d6466cf000f1e8fedd873ab2c3f5045deeda03993a4cdcb1a75a917039deb0a74a8f1101d9ca87b362b4fcf8b749ba20da691184dba8a881aec14d6 +DIST thunderbird-102.4.2-uk.xpi 794405 BLAKE2B 1f6215c1a38bf1edd5d7c6075bd4d280af62f64343da01aed3eee1068dfa61fdbad670209627a84f187a34c3a07e1800a3d934d8771eaee2ff68c7fcd70e4259 SHA512 d0d48b6aea0f42ef223f8c364d594752ce8ecdb9e0d1df3a06543320f56cff625c22ce1ab01ddfd4cf555c33a5c79bd5d764ef4fab5c896c893632ffddca6f8f +DIST thunderbird-102.4.2-uz.xpi 584807 BLAKE2B 03c1513928bc9dd3c0cb34a387100ad0c4bbb6ffe0cb9294470ce768a0ae3249d56a4f7bfab769b02f9fa9d14dc5b2c55aff4b7d4207f705836ab1d1d098c467 SHA512 e272c7ffdc98db06ceea5dc51f8db69c07d3172e010d3ee168703da3ab652c127aa4a6f663fabd87ffeed4d2b9c32a0c42fabf34e2a7c2abac42c2d6c5ba32aa +DIST thunderbird-102.4.2-vi.xpi 724848 BLAKE2B d63dda61aece0d1e229ee0bca54f4cc7c0eb7d03ac99a785f8fdfebbec00a0ca24bbe69aa79dce75737fa53d06706a1f234d970e2d2e3259dc7e86522ca39a9e SHA512 aefe2e1726e20a82192006ae81fd4e45f09362a634a87e4792abdc6fdcab938a228005834df31a0d958533d60caa98e002f7b3c70de54cfe1c805c02fee32fd1 +DIST thunderbird-102.4.2-zh-CN.xpi 722698 BLAKE2B d8a466c7c3cfa4d7a710be4429a5b1d9342b298fcd4848baf6601df1f122085c0ed6c921bd25c352cbd0441e07e8b2bf2a220cc73a0e3cae3b7760ddd65150e7 SHA512 a5ae3a7aa426bfaf44d13230f14589f56d92bc0b75b4fd24b8c746e7f758492ff21f2bdfd426a578434c35dbc7367bd5eada1961a809a3b303453dd99796777b +DIST thunderbird-102.4.2-zh-TW.xpi 725969 BLAKE2B 15b0798c234180778c17cb1363218d5d190f7c63b7d3ddc06a13f77d9fd40a1ce664a17890c849bae502ddd0cf82f7eaaea8f003042310de80f2fadff1617d49 SHA512 6ddc7bd5aa084658253d228388af2cab035d611131ea2e4e84a6fea5f48c5402e463851d15faa979da1fc7b96535a1ee0aff6de4ebfa91f0f6dc4915da695adf +DIST thunderbird-102.4.2.source.tar.xz 500913544 BLAKE2B d20177ac0191ee85d972fd11705a5a1a86fcd8265e3bb9c24c1413a0175a76094d9b775ea97217e2b5f7413ab3e3766ac5d167c8ed2622c786a0d5aa1d13211f SHA512 d74045e3ded718b9dffbf9f076f61f05be63d1914cca672c5145f86e94677df35c0c86958e31aee4f6388052c766b9588b942ab8578bc214addd49edfaa04a4f diff --git a/mail-client/thunderbird/thunderbird-102.4.2.ebuild b/mail-client/thunderbird/thunderbird-102.4.2.ebuild new file mode 100644 index 000000000000..b08367f7693f --- /dev/null +++ b/mail-client/thunderbird/thunderbird-102.4.2.ebuild @@ -0,0 +1,1165 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +FIREFOX_PATCHSET="firefox-102esr-patches-05j.tar.xz" + +LLVM_MAX_SLOT=14 + +PYTHON_COMPAT=( python3_{8..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} + app-arch/unzip + app-arch/zip + >=dev-util/cbindgen-0.24.3 + net-libs/nodejs + virtual/pkgconfig + virtual/rust + || ( + ( + sys-devel/clang:14 + sys-devel/llvm:14 + clang? ( + sys-devel/lld:14 + pgo? ( =sys-libs/compiler-rt-sanitizers-14*[profile] ) + ) + ) + ( + sys-devel/clang:13 + sys-devel/llvm:13 + clang? ( + sys-devel/lld:13 + pgo? ( =sys-libs/compiler-rt-sanitizers-13*[profile] ) + ) + ) + ) + amd64? ( >=dev-lang/nasm-2.14 ) + x86? ( >=dev-lang/nasm-2.14 )" + +COMMON_DEPEND="${TB_ONLY_DEPEND} + dev-libs/atk + dev-libs/expat + dev-libs/glib:2 + dev-libs/libffi:= + >=dev-libs/nss-3.79 + >=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 ) + 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] ) + pulseaudio? ( + || ( + media-sound/pulseaudio + >=media-sound/apulse-0.1.12-r4 + ) + )" + +DEPEND="${COMMON_DEPEND} + x11-libs/libICE + x11-libs/libSM + pulseaudio? ( + || ( + media-sound/pulseaudio + >=media-sound/apulse-0.1.12-r4[sdk] + ) + )" + +S="${WORKDIR}/${PN}-${PV%_*}" + +llvm_check_deps() { + if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then + einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 + return 1 + fi + + if use clang ; then + if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then + einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 + return 1 + fi + + if use pgo ; then + if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then + einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 + return 1 + fi + fi + fi + + einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2 +} + +MOZ_LANGS=( + af ar ast be bg br ca cak cs cy da de dsb + el en-CA en-GB en-US es-AR es-ES 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 + + # 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 && ! tc-is-clang ; then + # Force clang + einfo "Enforcing the use of clang due to USE=clang ..." + have_switched_compiler=yes + AR=llvm-ar + AS=llvm-as + CC=${CHOST}-clang + CXX=${CHOST}-clang++ + NM=llvm-nm + RANLIB=llvm-ranlib + elif ! use clang && ! tc-is-gcc ; then + # Force gcc + have_switched_compiler=yes + einfo "Enforcing the use of gcc due to USE=-clang ..." + AR=gcc-ar + CC=${CHOST}-gcc + CXX=${CHOST}-g++ + NM=gcc-nm + RANLIB=gcc-ranlib + fi + + if [[ -n "${have_switched_compiler}" ]] ; then + # Because we switched active compiler we have to ensure + # that no unsupported flags are set + strip-unsupported-flags + fi + + # Ensure we use correct toolchain + export HOST_CC="$(tc-getBUILD_CC)" + export HOST_CXX="$(tc-getBUILD_CXX)" + tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG + + # Pass the correct toolchain paths through cbindgen + if tc-is-cross-compiler ; then + export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}" + fi + + # Set MOZILLA_FIVE_HOME + export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" + + # python/mach/mach/mixin/process.py fails to detect SHELL + export SHELL="${EPREFIX}/bin/bash" + + # Set state path + export MOZBUILD_STATE_PATH="${BUILD_DIR}" + + # Set MOZCONFIG + export MOZCONFIG="${S}/.mozconfig" + + # Initialize MOZCONFIG + mozconfig_add_options_ac '' --enable-application=comm/mail + + # Set Gentoo defaults + export MOZILLA_OFFICIAL=1 + + mozconfig_add_options_ac 'Gentoo default' \ + --allow-addon-sideload \ + --disable-cargo-incremental \ + --disable-crashreporter \ + --disable-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 + 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-flags '-flto*' + + mozconfig_use_enable debug + if use debug ; then + mozconfig_add_options_ac '+debug' --disable-optimize + else + if is-flag '-g*' ; then + if use clang ; then + mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*') + else + mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols + fi + else + mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols + fi + + if is-flag '-O0' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0 + elif is-flag '-O4' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4 + elif is-flag '-O3' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3 + elif is-flag '-O1' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1 + elif is-flag '-Os' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os + else + mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2 + fi + fi + + # Debug flag was handled via configure + filter-flags '-g*' + + # Optimization flag was handled via configure + filter-flags '-O*' + + # Modifications to better support ARM, bug #553364 + if use cpu_flags_arm_neon ; then + mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon + + if ! tc-is-clang ; then + # thumb options aren't supported when using clang, bug 666966 + mozconfig_add_options_ac '+cpu_flags_arm_neon' \ + --with-thumb=yes \ + --with-thumb-interwork=no + fi + fi + + if [[ ${CHOST} == armv*h* ]] ; then + mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard + + if ! use system-libvpx ; then + sed -i \ + -e "s|softfp|hard|" \ + "${S}"/media/libvpx/moz.build \ + || die + fi + fi + + if use clang ; then + # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204 + # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822 + # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64') + local disable_elf_hack= + if use amd64 ; then + disable_elf_hack=yes + elif use x86 ; then + disable_elf_hack=yes + elif use arm ; then + disable_elf_hack=yes + fi + + if [[ -n ${disable_elf_hack} ]] ; then + mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack + fi + elif tc-is-gcc ; then + if ver_test $(gcc-fullversion) -ge 10 ; then + einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..." + append-cxxflags -fno-tree-loop-vectorize + fi + fi + + # Additional ARCH support + case "${ARCH}" in + arm) + # Reduce the memory requirements for linking + if use clang ; then + # Nothing to do + :; + elif 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 runtime features:" + optfeature "encrypted chat support" net-libs/libotr +} |