diff options
Diffstat (limited to 'mail-client')
-rw-r--r-- | mail-client/thunderbird/Manifest | 65 | ||||
-rw-r--r-- | mail-client/thunderbird/thunderbird-78.4.2.ebuild | 1038 |
2 files changed, 1103 insertions, 0 deletions
diff --git a/mail-client/thunderbird/Manifest b/mail-client/thunderbird/Manifest index b159b9e87ebb..e239f6cd22dd 100644 --- a/mail-client/thunderbird/Manifest +++ b/mail-client/thunderbird/Manifest @@ -129,3 +129,68 @@ DIST thunderbird-78.4.1-vi.xpi 674607 BLAKE2B bbd36271879a5d23675dd3a5edfd5eef59 DIST thunderbird-78.4.1-zh-CN.xpi 687176 BLAKE2B d5ac299e83772b16f4900e081bd5ac937adde9fef0a2f377f9765ecef83d91efa33283be01397b403349202a734cea2bb0b21e3e2f9e3828fe6322c99fe6bf05 SHA512 5759a06a09f3f1ea5afbe59ca835345570a44bdc77c0784cec7f35c5086f5868121b877bc0de2faf77f9a2d13027160e27970914fbec414d76e378b4462bf6fd DIST thunderbird-78.4.1-zh-TW.xpi 687618 BLAKE2B 5045bc8549003bcbb4dacfca888c09d47be3db50724b2e87719f28bda6b06380432a2d10b72bf8a7daf9fe9b2d5b53d877d94ea8d02e6feacf477c7c450e6dd1 SHA512 ee4d380d4b4f4c77c938f679b31c01bd0203aea3fb8a474d6e6d40f9221ce3dcf8f51916a73c4a9b8879d6a06ad89701cdbcbb3f23283ec4c102dc305e369086 DIST thunderbird-78.4.1.source.tar.xz 352778636 BLAKE2B 4cc5781920ce02fc3c2844ef33389cf9cbacf86aa0dd85471c181dd98e698bf582c744e4aeb43d960647960cc343e38a38385bcbd692da6a8a218c5438c24c74 SHA512 dd2aea61d172e5e6b6bebf1aeaa9fbafe38749bc435b791472d13e430446286fcd20e03c12e8f9acd6c74d4af0e7db1e50e08b2ff5cfdbdbae6462eb6984b5aa +DIST thunderbird-78.4.2-af.xpi 548308 BLAKE2B 80ec8a02d84141f167ad049ae84c8524092dc28e9f9cc7b9d9d30a635d33acc2e976356c7ca870b2d388a4e7970c69fd8037c99f47a4777024b9d12bcb45aff2 SHA512 c20d205ad3609dc2debb2a9fb473468b3734dca7dc06feac97b3b54775ff61e8269c1599ac88f30d300b220ee7d2c868edae96c3d5773ede75bb69ecc6e86dc9 +DIST thunderbird-78.4.2-ar.xpi 648570 BLAKE2B 2debfb451e74022f316668ff5a8da11266ed2f4151dd743fe951e165d4f380a382e9280015edb2e82d7b45897ad44dd7f129407e344a629838b9254232791551 SHA512 45e8302db47fe0fecf522c09a407ec8e5a31474331a6035f0a6e56fd1c792ac00e50d26d4c13c58ba9704a7a39b8a9c9396cc4ed4f4af3c41a9bb4076a6eaeff +DIST thunderbird-78.4.2-ast.xpi 561221 BLAKE2B b1d78ac212cf5935867d2b0b26e390059235a380d1abe781733ffcdd261fe29ff4f2fa80b212959fee6d30225f706d82dd9d53e070765cc3f584b42686ae7dc1 SHA512 31d9ff5a9f7f04ccbab68e1d0ebd72a16acba482642ac583952a3f52b4de33cebbda7ede1da3ea6cb9fdaca69a9beb98b37a8baa88d62dc24ce1409686365d03 +DIST thunderbird-78.4.2-be.xpi 666626 BLAKE2B a5bbe619834017d2c0f9fc9f0ae4dce4f8d96e28b9578f3881cdc828d68aa6cd6ca4fb1264f0762a08023601b4ec34d46e1d3796be4b1cb4ca5ab26657c734e2 SHA512 2003c5c8107b01dbcf61b941d7405c2c54e449236d9ae6c49e6fa90cf9fa4486d3f146da6b2afda82b9956517c50f97f850964774bad40a7a68ac097a5e75352 +DIST thunderbird-78.4.2-bg.xpi 672379 BLAKE2B 068dc5d901af1612dcee970d89079e93076f4f9e049230412d4745f40afbcf3dc73c18442de69e6177c3707b7e499e1dfe942fc6099804c04baf955614847908 SHA512 52b2cf5b27435040fc95ce98b2e3e7f89ce50e280d8df5329fee4db0e71711f5302ee16376190b21110f209e1c1fe5943463bd3de6db01485ff86bf76a733fea +DIST thunderbird-78.4.2-br.xpi 604486 BLAKE2B 3ad2c12a3493b0cc7d095b70ba2df00ca0b148be6332b296b740de2350ccd84e9201eb6aaf660831a1185dde1b4b41e542f3733959484048256a923aebea0c35 SHA512 f675d639a21130aaebe7bebf19c4f4c9d537aea4969ef2110b7c7884270cda3422af63d0f8ec4467bad68dfcf2b88369044537535051f542a51f4cdb97bd1e0a +DIST thunderbird-78.4.2-ca.xpi 620410 BLAKE2B 441c4f241c8061e5aa4db5bdbc993be3a543ee79a5da66f3a75e3df0a41b870cfda2633bb868acd7a16863b379ba00cbf440f4766fb0c2da85e34a4d56acea76 SHA512 40f461338bc298bdc6536afb9a5016f599597fd850095ff2d53b3065818763fc47ee1a29960eb512876fbcd83691975a10a2995c6b271485f9dca8cb416b0165 +DIST thunderbird-78.4.2-cak.xpi 635645 BLAKE2B 44bf77139ba965a5b3aa658d588bd739f24a5f039a0a7afd57cdb75d684f9d0d2cf896433995179a2075d48de6e0b6ad62afa529e0dfe33fcd12b1d0c004218f SHA512 3f29294829e6f5fc774e96583b9558d0bd6b717cb2243e478d67847da73817f6cb274721dfcb9fff1842cdcef9b16ca59825e5aaaf4ba72ab48f81edd465fff0 +DIST thunderbird-78.4.2-cs.xpi 635315 BLAKE2B 51885053d7c71f7a58e3410aa6795d70c88689d36ff4a7c4bc4d3fc1681fe1462d8a2915e4b75e1ec4d978c31b29e397647a1f08ae9dea41eb3a7403fd4d62d6 SHA512 29257051742e05a95a1807b3fd7912486236a1e32008c2a8c24cfab85f6b9563b3d4d179b1bee130b2e22a068968e753a0b20985bfe9f92382fb123f420749bd +DIST thunderbird-78.4.2-cy.xpi 646236 BLAKE2B 07da3169b04b2e5b6d0e3236283d460e64fd0d1d85313e7f2f9d77cd9868860d8d71beb8afe14f25a4f3981e2fe064c77f9d021e7eed357e60d6dce794b6e2f0 SHA512 facd7b2bfa3be516d7223c621fbb29c68e2b6581f5d0eb480d3408a75c8b9dd51f14fb1f6817c654d549cfcf26243aeb89a2cec24bc616332425a2f6904aafbf +DIST thunderbird-78.4.2-da.xpi 620987 BLAKE2B c49c2ad82419f5b7af616649238cd8db9b66a192a347616ced77a57b1d18acfff0c3588e0d87113a4f148dfa44e07d0503297cf91af3c0b4c02e9bafc470118d SHA512 266c68b9d12034e9b1c21d7e931de81dfa4f7249fbbf8148eb7d4b9bc4de4360f32155be9093e1baff1f15a62c018415acdacc49cb39c68f9abf20437d459fdf +DIST thunderbird-78.4.2-de.xpi 665192 BLAKE2B 1fb5e7cc6ebe31b6cac3790e2425caf47ee1f42de38f117ed129cf96a18e7445400007088a30ffbff0d59045881fde20b9796895a2fd7cd4983eab9c37bb1447 SHA512 433b72382575e53a4871e99498a076f60830c2c432a23c457e5c2631084dd1eaa59a62c9bd2b742fb13c101c2143ce1775aa54b4b05e9efe46e3bd911e825453 +DIST thunderbird-78.4.2-dsb.xpi 666769 BLAKE2B c201a11a5b358034ddb1133f1136d03e285c6a99ab5c4c0d96334c4eb96b2ead589147d0be958a24f327256c231a3017f971dadb809aab5ef20784459a7ac881 SHA512 ee98f0343a51f4460a208a5dab8f37b5bbb47ed6b8a434857626cb96bfa063e484132f6ae0cabb8c474a5841d0a414515ae950aa8c9528bb208e0b929fca8d93 +DIST thunderbird-78.4.2-el.xpi 774454 BLAKE2B e85833a390027c4af5e32a23e26e5914bbf4e3a075492c94d064a2f91b8bb1c8e03d631a3f4358371b39990287df2393ad8aaa8fd1c632413032f1ae160bbf08 SHA512 1e3804b62345ffe5f058b9d02112a383e72e2ddb263b94c3442bd4facb4c8982587180f83710f99fb64d45883ad737e9c2f7561f3d67b81326d773085482a7f1 +DIST thunderbird-78.4.2-en-CA.xpi 611769 BLAKE2B 76f7e450358cc5f5c5bf2660c6126ee1c11567c332f3b89333ade0d80eeca9c89132200c1f8c2c65219259a7ea9afd712cbe46c9dd5793be8cb8ea2cb78597e0 SHA512 ed76fa1b25c4b6253cc172321c2d4688860e03a84b5457299f62c34b875f2276d27ad15ffdaa7df9e988e649c518c9c3deec5ca5a3a399a7bfa7e18441973d95 +DIST thunderbird-78.4.2-en-GB.xpi 611186 BLAKE2B 0c7aae41a7af576d07a5097b9b881962a6e0c5c66d610bc5e6a55e03a0bfb1a53c47a3ff85d3480ffd8df45059e607b19cd8b262a7f6650b40852554675e0af4 SHA512 088c059cd17284a8ea74af3ff753dc2f3cc3d26b2c9c68e8ddb83c20ea1d88cf9e83023e7b65a9a31ba8468c183429956c5b1ffd98400c7e18e13bdf414ebae8 +DIST thunderbird-78.4.2-es-AR.xpi 657794 BLAKE2B d1e00efe6c0b2f7add64e0d6d1732f4be3d17a37ec21b2a376ca8b82ef49de875d1962704c239b371db49416f18242b294d1792746f42846438246f43a94660a SHA512 f7f5febfcf2ae6d391ed94592837c339b872e799c4c39daa79b913914d22e5e20f6ef9818a26e8c6b56fec46905a82bef1f94227afbc6863de7c411cf5724a99 +DIST thunderbird-78.4.2-es-ES.xpi 569804 BLAKE2B bb06c285c7ae83ef5a3a0d9196c01ec9120dd9d85ef22424f0844d5f8a40379f93e43da7f35fd08ff8ab79708f9b91ee86bc9ff1dc448c30e85079c217493675 SHA512 27456dd2d5eef39e4510e0f18bbd8cfbb600952d8657563400b731e400ccaca85a7a89f66777ec5a0a01ac444428a931d3df87aa735dbc14ce86470384777b7e +DIST thunderbird-78.4.2-et.xpi 597690 BLAKE2B 44f7da2bed024b77d69a5ac7e66c0d8c244623ecc8366e841ddd431a6f0c2057d77ae677bd4d3fd9bf7f2add147173c7ee435478c6e9023e4064c05d19cdccd9 SHA512 2fe079113e08b13f6b37b4d7f3eaa73bffc59be3330d72b01cc514f4114533cba8a87c02c1a0946720c406c94b7a8a865866e5721f0ec817536af14399967907 +DIST thunderbird-78.4.2-eu.xpi 632927 BLAKE2B 0839409696182e4338f488a2d8a9f1f9b4fdc1aa4a1d774e0c07c09390678afdb019cb34bcb2dff034c88af2b4853368ed0479040103c52a221ee384df7806d5 SHA512 485c4b3c98e51ebd92f7a0655249d0a1ffef17094a1f8eb9f117d4f789072054b00202fd8943b4281196e690da4efa803e904d471dae449835fb77078248ab4f +DIST thunderbird-78.4.2-fa.xpi 639718 BLAKE2B 086071c189812c43eef27bcd8e08e5da4db59f6501d5ea8bda7caf226ccf960d57b35a246a130961be4ecfeb6256a33a422d3f6c19013e3d77c9bedd2efd90b3 SHA512 6cfd989d27a9659bdd84ecb02695d6468bb974a507895adc472a1be5a947884d4718ade666834e2bae961c728f17614cc41fd1a5506ec1b5309c3c9bb15cdbbc +DIST thunderbird-78.4.2-fi.xpi 642444 BLAKE2B c016b0a593796b7e3e5734553fe24e52468fa6c858723ed8a20df030abe80e41c8c1aea9f2a6d6c641be7c8af90cae0df6ce633160f899e662bafb68be8aa4d6 SHA512 ac814fd0918cdeb5ac5fa80a371bea10d270c3131eaa92b42b870a91677875f6a5724716f0031865f8984224f035aff6361a4e34900212ba8e25b57ed8faac94 +DIST thunderbird-78.4.2-fr.xpi 669488 BLAKE2B 225dec0784b57d1766b04384d01abf35ca661cb65c89e3337ece11eea006abf7b55eb13cfc6090d50b5b384e15eb67a60bfb73d5507a059a733be36e4e8aa4a1 SHA512 c864405f4b5ec9e89878a87ecd0a29d5ae1d2f5122869afb924700ec6def8720a7037c767774fa84d99c41f23c7d44d993d5ea11d517519da8c65622b1449859 +DIST thunderbird-78.4.2-fy-NL.xpi 653086 BLAKE2B 35eb80d139774d9ab7d6e7c1dc286423c7feaf53f0b919127e983c8dedf64b9fafcf123d74bc6e80a935e9cf17a963af3c13b41c8b67dd6271c5ae91dc52d2de SHA512 f921f9712bc8549e06e176c4b552a8ed1702da52086bb6302cb976ac59b7055ca7f460cebe84ce22d176ea201d116ac47fc577bdedb787f1eadb4741af118bfd +DIST thunderbird-78.4.2-ga-IE.xpi 600674 BLAKE2B 9e44c897b46db9c933da1d5b5963c4c4a4e6951bbb2a72b4b5ec903687a06b928839a118bf649987a40321642154a9badb67c1f46a27eba506c05e812bcf66d5 SHA512 be5d751588d5b127a4731871b5eede297168f4386e39d1f0516f6a9c91efb68f98c0e81a0f1be10f5c48c1c94ac3a7903d1ae038fae125a13ca4e023bb8d5379 +DIST thunderbird-78.4.2-gd.xpi 609348 BLAKE2B 4ff2146468686c532c47d52c6fdd4a2982bd9bd4eb29bc65d5a78f8cbb38338f3afd57d5db14980c3a90715cdbd1be98132579573b5afeecc3345eba57d2af4d SHA512 c7e1ee300e3e61101627e32c99c87a51ecfe1121abacefc9571b1c69380ca597251aa9eb6898ca03a08aa5f2db8a56384d0a359a441bf51c3f5bd9b089397f49 +DIST thunderbird-78.4.2-gl.xpi 615724 BLAKE2B 07e1d7c5d5b2e4e099cae854b8addbd91d9798571964991d8f9255707a2186ee315e37e36d68081b3e5451d2f32301f15ace66877cb11ba267ff444db3d94e31 SHA512 e900bba65c93a0f9bc495cba47ba39fa5ac6044fc94b308df569750487f34199e96f119558dccac732095a9e951a04be473b62805596e1461b3e804c7584afaa +DIST thunderbird-78.4.2-he.xpi 640497 BLAKE2B ab3abaf26e45d2111a47b2c09bf1ad7f52d834c128893481c45878fa00f1c8c6ebb7523a935f4cd32f8d7f8fa0c8c91c0d5e065674e0c7703ad0a86e8d838f25 SHA512 796034f7a9bd5b3c56dc2534e4676c3f61e77434ad87d40a9f8b9de59a3e7ff1da265b4436f15dd8120cf7b2e6fa4ea56a1b20f27b095b2528d072b754b80998 +DIST thunderbird-78.4.2-hr.xpi 628994 BLAKE2B 56f8276fb832e7fdf0b5574f69a6d80179c9024d5a16c15047ab1c894e4c886eb9249011befe6f5ae77458e3228aa168befc4fb8621c9c01d2c986696f148dce SHA512 986cdc5465ac8e0251da9cc2367a804dada65f39988ef713338ae558295f2b013bf079c748035485820eaca75cd8cd235359bcc6a3fefeaa1fa64c8492217fdc +DIST thunderbird-78.4.2-hsb.xpi 668603 BLAKE2B 8ea9c086bed0144e0296b4c68250370a503befaf935071837c1828e9ef7b64d55ca7d3f6161e49d18a2851c81e3cc05c96840b84a544727881bfa0c1c67ca45f SHA512 da20f8d339927316abff3cdc01e4d769955c68674658f685a60062c89fb7cb21da543c314d8a82c4f83d5c94992622bbf804fe65a2fb0a61acc9db22a1634a01 +DIST thunderbird-78.4.2-hu.xpi 679834 BLAKE2B 5e3b2e8cdb7f679914ee6f26065584344a5ff46755ec5613e77984a7af3345e97cf3d98f2dd90a6e20766b4847ea18f10deb25b241dfefda089e8b794a2db70f SHA512 f2a7b03c6c79f74aed0681d4d1195c34ba1e302ea705faee2fdc80b6dab8dd3fcfcfe1a1d973876896a80cdc2c244e2ec9c4d310be2b9422b4a42d9558f2fb6f +DIST thunderbird-78.4.2-hy-AM.xpi 713291 BLAKE2B 1ab3440171380a9551fbf3361af853a7e02132fbd1cd1eec629a109f91de307db7d5f90e125ee1c039c3aa0e06ab319710ee914d0f649725db8964f2d832646e SHA512 16fa5c100c5d8c63b9a3a48b304511156745cd886af96ca770a7d40909c42dd7c9d8ab67ea704b30c4e9979b5c228efbb174233b652212ee2a53e9be8f2186ea +DIST thunderbird-78.4.2-id.xpi 620642 BLAKE2B d2bf2293326b038e8cc97cf8f149981015525f1358b5e86b9f09a75a14791186b2329da0dc9a03254e09e95fcf35c2136ab530fb0b6d0fe57f34c74afa92bfc8 SHA512 945c77625b517912236654edb0669fa53c570a5c3c1eed59324a48406d27084a0c138b8b42c18ffe5739972d2a93ed11f2ef92c93dfdece8d161e298e685ed87 +DIST thunderbird-78.4.2-is.xpi 581606 BLAKE2B 3713f7dc7a2ad3a8b778dccd2239abb214a6afd9ac4ef85debb6d7f4e19cf8635bfd6242567c1ba01031ae08405496353bacf26aefdff9f7d261e0c3f87aee58 SHA512 1b0f92dd510868553fa4252a072103a2dcd2578cb6b0717c9a1bed9533a24b30f49d34e2b1c363fb0a33d19bef91de26a22a5fdf78413aa6f45086d8edf04f07 +DIST thunderbird-78.4.2-it.xpi 572950 BLAKE2B f76cd6f6728edc94b84b705723bd9439ff53f4563d400a8b7f7da0b0dc2acbbd864080476bdc2665d676962e4de65e76ddd0e1000708b6d7bf02c57e41f3fa0f SHA512 7c9ef7f9ce33c7827db7bd24f5aaa6e22a81f15a5e6538773e19ffca556163417de83e1ba8743b0379d2a400e87ee0db9f7042415f601aab732ca81c7bab1639 +DIST thunderbird-78.4.2-ja.xpi 722455 BLAKE2B 87a7da7526c7db6747675c6cdcec912a82771c0844b0731433dad29ecf559687249719c842622fd9787fc5c7a7c723eb6b948d56852356dbe5057ef2bb8a16ee SHA512 02daccb7bb8b50549e159ca750fbcffd4163bf952cba8203df1248b426c5d6086ff00e38b28a1741ae9979ba6497bb00a21f8e968920a046897f2f83fc8e8ee4 +DIST thunderbird-78.4.2-ka.xpi 717011 BLAKE2B 3caeac2acda81160a96146f389a4f481a4df370010071bf7d33598efc2989784fc303454d80854e929ce7b6a36a88dd73c83039386f71eebe00b97438cc9e438 SHA512 f0b234c5971dcada3bfafc02d8be7ec2985fe1961474b7e65b96de7fd3c2f96e5546135f5c854fdd1fa71f57d4075eba35a28254731c06dbebff5574ef50fe94 +DIST thunderbird-78.4.2-kab.xpi 651920 BLAKE2B 8e1573c65601d0ed37aec53db5fbce416e3c382e0a160186f30cee92ef4e5b1bf93aed1cbc3ec5c31ad1ed065a3d86421fd30c1ce7fe507d22688a354250c946 SHA512 1be62203a99aded1043ae53e36e366e4423fa58c76ecd7f200c7ef92a70b85499dd462586ee23f7ccd8efd052a754a54fce90c117fdd044984d2dba23f3ee739 +DIST thunderbird-78.4.2-kk.xpi 720432 BLAKE2B c08ec03d9d17152c4937fbc8f861ddd92a025a2ac945e1785d968fc6221e774672ad382b9230ec86bafc9977947a26ed2943764b4aeecfb8f0ecfd163287cd4e SHA512 2043ab0e61fb552d5d80fd131b64bdd0ba1d34cbeed72586484a31c872684af077add9f1dad13248665df7d4487797bd542b0366975bdd133dec5a4c90710c59 +DIST thunderbird-78.4.2-ko.xpi 688202 BLAKE2B 3822822987ac9492239368ae172a863a1d5dcbd97e5edbf4f9fca8b489519f1c0fa84baf2aeb0e4207b7f7e3f6ca4a7480d99603483444171a1c58c0a1cf827a SHA512 7b13865b80ef72cc543ab230e73c3d12935140537e9f21a2a84b3b419685be45a7d93f8f8b00435d01567a8697787f5b4980fc317ffc05f85d42d0088694ddac +DIST thunderbird-78.4.2-lt.xpi 660288 BLAKE2B 1b6d36df5d0d37c2d18d18043fb7e959566b1a9c892eff0282e5a629ea443c7908a630c8cd7f3bade8d9e5494f1ee1f897c6972cb4db56c13ddc29b0f400528b SHA512 3197a78687d8012fee261decddc805d604024540e89b54029b867117d3951c5a24d4694877da5e4a91d01df0c634f665ce6072b76a1139c11337d08fa83d28c0 +DIST thunderbird-78.4.2-ms.xpi 572135 BLAKE2B 51db23a8d713d44bd460b5e9ed2348a3c350aac9a2f14775f070c2b1c06572978a9cb0c40bb09368e531ab719c10fb099af41248d205bab5fc77b642c31b8021 SHA512 7e499e3ff035325966a153f8db839b719b0f0bf091ea2fea010695903744196495e113f63ae19ece4a542a20af4a8c5716a07c48cefdd578c54439f7e0bfa211 +DIST thunderbird-78.4.2-nb-NO.xpi 637243 BLAKE2B 3a9d01663c2b9e41526f06fce1321acd5142e73bdb4eca7915af803c4b8315297b49161c34e5ee1609da5c55ba50c1f61ded47e66a2eb833f8f04d294cd16f87 SHA512 56df0bf2eb5f8dd1148d4ab5ce17c9aab0220e5d5b31b9d4b10aeded681138f68c5e6b2d44a2f34c46907891cb1912a26dd04df5a8aae85b7a213ab7bbc2486d +DIST thunderbird-78.4.2-nl.xpi 644355 BLAKE2B 53305143715d56547a4a212f09c7f85fbf62ce5bb720c9f99ac1e1beb38a698275d5a7016b95a4dfcb691ca3d09f74e4a0b89aca64bc09cedaf755c64735ce70 SHA512 e9c40a6b72ae39dbf4b0a90d22d346a6d8026e526c6d6476a9bfc5f41fdae0ac854be3615a2b671ef12c572b7799d50a92cb1b3d039ea354725b6a1dcfca5f07 +DIST thunderbird-78.4.2-nn-NO.xpi 640702 BLAKE2B 7de34ad813afe2e90a95fbe351e90d5746ca4e94a3a873188d0783cacbd407258bde93f25609c7701891d242e0618bb28a90855e2ee86c2143457433cbfe9c52 SHA512 0477b522a28b862aabb96ffb88432bb258eea3dbc7a6c4e168f1364ddaf617d95a58073dd1c0105f7fd4ac44b744506ce014902dfef9c0210d29f41d31c1545b +DIST thunderbird-78.4.2-pa-IN.xpi 633186 BLAKE2B 655d758d9f528b66ce36b731179f5f932ca7b11b07d2e081e390fff4d50a659ea4f9bc7eacb363b5ae9d11b257d59374db7a44c39c8d955d8c7f342fce3c23b5 SHA512 f72f33a84452de92a1c3be12453c0d67a37a1c72a34446faee22b1bc443c41fa7f0fb9154133f98ade96ac98961cc418b4de49d01cd62f8aef32494e233739f2 +DIST thunderbird-78.4.2-pl.xpi 637123 BLAKE2B 3856f4e17471069f59f107e5c305427f2fc9a6872c3a6e1b4303ed1f7238af5a21c61ab15c910a4a97a026da317c5e61364176ba1a98b9b1208c099d4b173f1e SHA512 1ef1b0f797ad42e23089832b42b74e9e8a4f0da6db64d3f259b44d7195f4bfb6ab3a433b4f1f580da57ae962098dd4d844f34b18e5b678019db3eeb5f0a867ee +DIST thunderbird-78.4.2-pt-BR.xpi 649418 BLAKE2B 1206053ac67bdf02fa4fa3c879d3e1f5864f714503ff3f416389d2546dfc891b2c57307fc57385cad4b3a9fd921e7e8375dcb51573fd877f1b0f1e93033bc576 SHA512 6397869a875712e50a19e5b7e507a91addea2c9e7fdd10050e79d6f853e6dd26ece85c07444c4f96a520f7327c03a5a958c929444c26017ca035d03dafc0531f +DIST thunderbird-78.4.2-pt-PT.xpi 655483 BLAKE2B cc8a8623da550d720a47bf8195e4912e1bef0a8d3ceca3d2d610a6b623e7f71b407b8b2427a76c35cbea51de0b260173517af29e38f5e0777b5b0593d7c51863 SHA512 e30232e619eff701b51d009c709555f4c50f1dd16b53fde91d5bcb42712b3ecfe8273589fe3980064c9459e84358655aba6fd24654a203a287cbd51d4f8e3fb9 +DIST thunderbird-78.4.2-rm.xpi 646534 BLAKE2B a3cbf23cc8b1c27962e0b037421e98aa882aab1c3407af6787bb45b4f00f2ddd084b09bb43b8e6a89317f6bbd792d3423b98d74fa9191efa4ca847742c615e83 SHA512 023c50d252ec67d5b1603e780547fb50ae0b06a44b4681dacccfe04d46a0e20815c57b405ba30ad9da044cd6e76d1fd56a79ed8ece5cd2754594d06d2c6ec6d1 +DIST thunderbird-78.4.2-ro.xpi 662635 BLAKE2B 255cefa975871856c1aa7ef6b769033227a26b4252c36e6ce513deca4cfc73530ce38a7a21e07044d78b283e4e98cb3d610871ace7e51cfdf8da2dedbdbb3506 SHA512 da32f89190a7b65f450325557b1ec182d2554e21e0835f44569a538f7a3f7f575b3bd017e581c9eac4b8d298212d4df5cd9589b219cc290c0e46c045267fb9ca +DIST thunderbird-78.4.2-ru.xpi 756199 BLAKE2B 437915da8d0ed83fdcb508872dc4671fb65ed9f5bcc8a7a5c212bc00e79e784688e81f4d4836d016a1fc57ab84209732cb7b6dc4f314ee25376941f2b7c58a0f SHA512 71610d678b37ca8dd808af122c3c4017fb0ac358ce64e9d44e5ff40d4c844b12ea36cc93b644390b61602008fb6754cd635b03ae5a906aabb35c36d45a8070df +DIST thunderbird-78.4.2-si.xpi 651081 BLAKE2B f46ab1548759033238a4a3dc8da370b0cced5f69cc62806e9463179aa16621d974d93af74aa196eca2326b74a37ff6122b320f5988aa1312b52126b0b716eec2 SHA512 dfd13805728b2b2457beb1f5284d26aa07dd91470ab4e12304f61f65a039d0d716fdee09712b4d2f7c27a81969944fc6ab747aae45f83a20ba4934587697172f +DIST thunderbird-78.4.2-sk.xpi 643197 BLAKE2B c58b94f2268451fb2786ba275d4ed5bba8ab052cc1568dd0d88bc78e7bbba0311d333db512810bff659a9ea3b9a3cf83f52945b98f117d2c1744f9bfe5ad3e44 SHA512 ccee4494b0ff0b392289e32cb5fdc0f69ea2a21505321f57a317bbf2ca64c03ff689fc0fe6349e9f29f6cf3b27c8e6b987bbffe5330d20952978b0ea5b20599f +DIST thunderbird-78.4.2-sl.xpi 632356 BLAKE2B fca271100651343ac59a378444daf061b28345c1840136dd3c3dfd6a1f8de5c00698d9616e947b9763f877e4b9cd5522ad90ddc65ae02d0fcf9f35c0079e845d SHA512 4f82f8af1a061dfa502320e9fe13016913c4db5ffad08a1a80ade875e658201df05b9b4d14f49298ca717ee25e5e02b0a98e670d0b41a016dc4c2110a9f38a1d +DIST thunderbird-78.4.2-sq.xpi 657824 BLAKE2B 5d96c8173d50c6aa6ea4771ec9e49915dc7fdae0da2199a420f9417863b09f7b95d901975c6f8ce032bfee06f49013bfe746cfb3e71940e1088360e208ed4763 SHA512 a9c7c617893f151a5ef889b5063a31797f76637e48b684d59aa47ed95deb1adb3107677111fd96eb17930c6c59474612877435ba515f891c2ce375bb404f82c3 +DIST thunderbird-78.4.2-sr.xpi 683079 BLAKE2B 220732fadaf475ccbec0a5a8f47ec4e1fbddc40c4b2816aeb2027d6f61ec81b3b7034c3e273356388ef761d1c8319ae9735a62489993dcebc367f8517007fd16 SHA512 d77a483f8f8688e8f94a2c75dffbf697d80e1e451cc2b75c3f875fb17ec21a532abd536661c078c3e026ecec1ec9954ffa86d7a02b1ce4042ce6d13d4f9078ce +DIST thunderbird-78.4.2-sv-SE.xpi 648863 BLAKE2B 2bc14e02ff38e6ff409b4ac6c2bbf92060a1f0de804b238de6a97ebb877bf2936b3011f359fe9e9e48a43f103e459d60b9fa58d8b13efdb9b98b5801bb40d293 SHA512 e080e1bba7c01df6aa55d919b3e7b077c861b36bf389b20cd6806bb57ee93c2c6f8573b9f3dae3ba2034ade5a767dbce7da7c8061efdf158288c099a2b3c7cbd +DIST thunderbird-78.4.2-th.xpi 712035 BLAKE2B d42f108ffe66c9e4791d46c669c52992522c36c9d7e1ecd9d453dddf2044051d2b9d2b1a61e1cc7fffc0e7e3f6db25645d27e8a47ab6f25c36b46383021eef11 SHA512 e55429452ca8345c655d5914336fe8cabb48ae0f29617f0a207b6735b783f16a2fa0e05dd935a5e5027172074ea92a5dec46c81e4265ca557d5e0f28023f69f6 +DIST thunderbird-78.4.2-tr.xpi 649072 BLAKE2B 98fc6b5a2a817b02a56c2a6bb306eb19b53579191eb1d7de81063f87315c4fe63ee698d671976960ffc2e866568979a1b125ad7c7538363b4e14ff81e26d0caf SHA512 5829b55cf630af12cc8d82b840a985697bc221316ec56e311ddb8d7711f6903aa8c1f440cb3c2bdb22b1fa301d9eaa266b2f3c979c5e0e43710b674929c5deb7 +DIST thunderbird-78.4.2-uz.xpi 586574 BLAKE2B 42b42fa115339649f8ca557c0a114eaceedc039f53f85df905098cfcf99ca7a4d4133b7b085c659ff38c04666d808e9f220c91f842cbe582d0148e4712eaab78 SHA512 73e3b330d19a9a26b14501cad9babf70080c6e021d1921a4e389990e2fb8dea29abe4783041f54d429c976336b09d2bc63e2d32c69185fb2fb32123f193bdf6c +DIST thunderbird-78.4.2-vi.xpi 674611 BLAKE2B c6e8054e03b6196067315af6bb800febc66c152daa0e9bd04a6196ab12e48a8ef4f2293ae7bcd94723f2089955c1b003c7901d3b428e07b54b28093a39cb4700 SHA512 476e531817cca8365859638f2139fd5bf8077e505d83f8c3adc905ff5a79e57e4e5183fb9d7c26dfec1405c648a3a97cdd0ccfbbb8796d4423dcc6bb7b6ed211 +DIST thunderbird-78.4.2-zh-CN.xpi 687180 BLAKE2B 83e41c6109deb204aa5d2f12b7b8b0eeac578881de4ef5f393efa89f9b0e87ad1ed9e62cd5a94e3b25afa102fe5d08e0cce8a1d54394f753fe8011de8ef025f9 SHA512 0fa70df0a14d600008fb94186e3c384128130071324f5baf96ba677435a5c90fc3ad8fd344aac03f993c56e1f046eb334f580e446a628e9886a3f36a837b19d4 +DIST thunderbird-78.4.2-zh-TW.xpi 687614 BLAKE2B e6cf4c29878bf8d1269e40e38a4e69d836f101a3ec220462a050a5d8616ec45b36f643bce2798c87fb6546ba07aaf27a4e20b7af7cfcdfa9fccd506ccc190c0a SHA512 cac2f2890d920def6731c0ead80b515970a87de18d5640b1351ae887f5933a2f35be2b3b3a9cf6d0c70e745af4bb76ff85f1a8828294ba5537b531df448c95b1 +DIST thunderbird-78.4.2.source.tar.xz 353466336 BLAKE2B cc102a81b3376cefb1a551e1bfcb8a9625b0ec5d9b6775dc9da270065d13049139e290e8397e6b9d5dac6c9be9ce0ac9ab0b8cbe58abec9b3bfe9c4c2230bdb8 SHA512 9eccb442715937ac083e607a1180aea6c9e64726a151cfb94df1d3f72d516e0130376eca3f52ff6fe51adba689e7bcb38f622d415958c7e3123fada8ce7cd456 diff --git a/mail-client/thunderbird/thunderbird-78.4.2.ebuild b/mail-client/thunderbird/thunderbird-78.4.2.ebuild new file mode 100644 index 000000000000..9d1d11a1429a --- /dev/null +++ b/mail-client/thunderbird/thunderbird-78.4.2.ebuild @@ -0,0 +1,1038 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +FIREFOX_PATCHSET="firefox-78esr-patches-04.tar.xz" + +LLVM_MAX_SLOT=11 + +PYTHON_COMPAT=( python3_{7..9} ) +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 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/~{axs,polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET} +) + +SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz + ${PATCH_URIS[@]}" + +DESCRIPTION="Thunderbird Mail Client" +HOMEPAGE="https://www.mozilla.org/thunderbird" + +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" + +SLOT="0/$(ver_cut 1)" +LICENSE="MPL-2.0 GPL-2 LGPL-2.1" +IUSE="clang cpu_flags_arm_neon dbus debug eme-free + hardened jack lto +openh264 pgo pulseaudio selinux + +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent + +system-libvpx +system-webp wayland wifi" + +BDEPEND="${PYTHON_DEPS} + app-arch/unzip + app-arch/zip + >=dev-util/cbindgen-0.14.3 + >=net-libs/nodejs-10.19.0 + virtual/pkgconfig + >=virtual/rust-1.41.0 + || ( + ( + sys-devel/clang:11 + sys-devel/llvm:11 + clang? ( + =sys-devel/lld-11* + pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] ) + ) + ) + ( + sys-devel/clang:10 + sys-devel/llvm:10 + clang? ( + =sys-devel/lld-10* + pgo? ( =sys-libs/compiler-rt-sanitizers-10*[profile] ) + ) + ) + ( + sys-devel/clang:9 + sys-devel/llvm:9 + clang? ( + =sys-devel/lld-9* + pgo? ( =sys-libs/compiler-rt-sanitizers-9*[profile] ) + ) + ) + ) + lto? ( + !clang? ( sys-devel/binutils[gold] ) + ) + amd64? ( >=dev-lang/yasm-1.1 ) + x86? ( >=dev-lang/yasm-1.1 ) + !system-av1? ( + amd64? ( >=dev-lang/nasm-2.13 ) + x86? ( >=dev-lang/nasm-2.13 ) + )" + +CDEPEND=" + >=dev-libs/nss-3.53.1 + >=dev-libs/nspr-4.25 + dev-libs/atk + dev-libs/expat + >=x11-libs/cairo-1.10[X] + >=x11-libs/gtk+-2.18:2 + >=x11-libs/gtk+-3.4.0:3[X] + x11-libs/gdk-pixbuf + >=x11-libs/pango-1.22.0 + >=media-libs/libpng-1.6.35:0=[apng] + >=media-libs/mesa-10.2:* + media-libs/fontconfig + >=media-libs/freetype-2.4.10 + kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) ) + virtual/freedesktop-icon-theme + >=x11-libs/pixman-0.19.2 + >=dev-libs/glib-2.26:2 + >=sys-libs/zlib-1.2.3 + >=dev-libs/libffi-3.0.10:= + media-video/ffmpeg + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXrender + x11-libs/libXt + dbus? ( + sys-apps/dbus + dev-libs/dbus-glib + ) + system-av1? ( + >=media-libs/dav1d-0.3.0:= + >=media-libs/libaom-1.0.0:= + ) + system-harfbuzz? ( + >=media-libs/harfbuzz-2.6.8:0= + >=media-gfx/graphite2-1.3.13 + ) + system-icu? ( >=dev-libs/icu-67.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-webp? ( >=media-libs/libwebp-1.1.0:0= ) + wifi? ( + kernel_linux? ( + sys-apps/dbus + dev-libs/dbus-glib + net-misc/networkmanager + ) + ) + jack? ( virtual/jack ) + selinux? ( sec-policy/selinux-mozilla )" + +RDEPEND="${CDEPEND} + jack? ( virtual/jack ) + openh264? ( media-libs/openh264:*[plugin] ) + pulseaudio? ( + || ( + media-sound/pulseaudio + >=media-sound/apulse-0.1.12-r4 + ) + ) + selinux? ( sec-policy/selinux-mozilla ) + !<x11-plugins/enigmail-2.2" + +DEPEND="${CDEPEND} + pulseaudio? ( + || ( + media-sound/pulseaudio + >=media-sound/apulse-0.1.12-r4[sdk] + ) + ) + wayland? ( >=x11-libs/gtk+-3.11:3[wayland] ) + amd64? ( virtual/opengl ) + x86? ( virtual/opengl )" + +S="${WORKDIR}/${PN}-${PV%_*}" + +llvm_check_deps() { + if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then + ewarn "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 + ewarn "=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 + ewarn "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 + return 1 + fi + fi + fi + + einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2 +} + +MOZ_LANGS=( + af ar ast be bg br ca cak cs cy da de dsb el en-CA en-GB en-US + es-AR es-ES et eu fa fi fr fy-NL ga-IE gd gl he hr hsb hu hy-AM + id is it ja ka kab kk ko lt ms nb-NO nl nn-NO pa-IN pl pt-BR + pt-PT rm ro ru si sk sl sq sr sv-SE th tr 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="13G" + else + CHECKREQS_DISK_BUILD="5800M" + 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="13G" + else + CHECKREQS_DISK_BUILD="5800M" + fi + + check-reqs_pkg_setup + + llvm_pkg_setup + + if use clang && use lto ; then + local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }') + [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}") + [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!" + + local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }') + [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}") + [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!" + + if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then + eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}." + eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:" + eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version" + eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version" + eerror " - Build ${CATEGORY}/${PN} without USE=lto" + die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!" + fi + fi + + 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 ! 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 + + # Ensure we use C locale when building, bug #746215 + export LC_ALL=C + fi +} + +src_unpack() { + local _lp_dir="${WORKDIR}/language_packs" + local _src_file + + if [[ ! -d "${_lp_dir}" ]] ; then + mkdir "${_lp_dir}" || die + fi + + for _src_file in ${A} ; do + if [[ ${_src_file} == *.xpi ]]; then + cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!" + else + unpack ${_src_file} + fi + done +} + +src_prepare() { + use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch + eapply "${WORKDIR}/firefox-patches" + + # Allow user to apply any additional patches without modifing ebuild + eapply_user + + # Make LTO respect MAKEOPTS + sed -i \ + -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/build/moz.configure/lto-pgo.configure \ + || die "sed failed to set num_cores" + + # Make ICU respect MAKEOPTS + sed -i \ + -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ + "${S}"/intl/icu_sources_data.py \ + || die "sed failed to set num_cores" + + # sed-in toolchain prefix + sed -i \ + -e "s/objdump/${CHOST}-objdump/" \ + "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \ + || die "sed failed to set toolchain prefix" + + sed -i \ + -e 's/ccache_stats = None/return None/' \ + "${S}"/python/mozbuild/mozbuild/controller/building.py \ + || die "sed failed to disable ccache stats call" + + einfo "Removing pre-built binaries ..." + find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die + + # Clearing checksums where we have applied patches + moz_clear_vendor_checksums target-lexicon-0.9.0 + + # Create build dir + BUILD_DIR="${WORKDIR}/${PN}_build" + mkdir -p "${BUILD_DIR}" || die + + # Write API keys to disk + echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die + + xdg_src_prepare +} + +src_configure() { + # Show flags set at the beginning + einfo "Current CFLAGS: ${CFLAGS}" + einfo "Current LDFLAGS: ${LDFLAGS}" + einfo "Current RUSTFLAGS: ${RUSTFLAGS}" + + local have_switched_compiler= + if use clang && ! tc-is-clang ; then + # Force clang + einfo "Enforcing the use of clang due to USE=clang ..." + have_switched_compiler=yes + AR=llvm-ar + CC=${CHOST}-clang + CXX=${CHOST}-clang++ + NM=llvm-nm + RANLIB=llvm-ranlib + elif ! use clang && ! tc-is-gcc ; then + # Force gcc + have_switched_compiler=yes + einfo "Enforcing the use of gcc due to USE=-clang ..." + AR=gcc-ar + CC=${CHOST}-gcc + CXX=${CHOST}-g++ + NM=gcc-nm + RANLIB=gcc-ranlib + fi + + if [[ -n "${have_switched_compiler}" ]] ; then + # Because we switched active compiler we have to ensure + # that no unsupported flags are set + strip-unsupported-flags + fi + + # Ensure we use correct toolchain + export HOST_CC="$(tc-getBUILD_CC)" + export HOST_CXX="$(tc-getBUILD_CXX)" + tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG + + # 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 MOZCONFIG + export MOZCONFIG="${S}/.mozconfig" + + # Initialize MOZCONFIG + mozconfig_add_options_ac '' --enable-application=comm/mail + mozconfig_add_options_ac '' --enable-calendar + + # Set Gentoo defaults + export MOZILLA_OFFICIAL=1 + + mozconfig_add_options_ac 'Gentoo default' \ + --allow-addon-sideload \ + --disable-cargo-incremental \ + --disable-crashreporter \ + --disable-install-strip \ + --disable-strip \ + --disable-updater \ + --enable-official-branding \ + --enable-release \ + --enable-system-ffi \ + --enable-system-pixman \ + --host="${CBUILD:-${CHOST}}" \ + --libdir="${EPREFIX}/usr/$(get_libdir)" \ + --prefix="${EPREFIX}/usr" \ + --target="${CHOST}" \ + --without-ccache \ + --with-intl-api \ + --with-libclang-path="$(llvm-config --libdir)" \ + --with-system-nspr \ + --with-system-nss \ + --with-system-png \ + --with-system-zlib \ + --with-toolchain-prefix="${CHOST}-" \ + --with-unsigned-addon-scopes=app,system \ + --x-includes="${SYSROOT}${EPREFIX}/usr/include" \ + --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)" + + # Set update channel + local update_channel=release + [[ -n ${MOZ_ESR} ]] && update_channel=esr + mozconfig_add_options_ac '' --update-channel=${update_channel} + + if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then + mozconfig_add_options_ac '' --enable-rust-simd + fi + + if [[ -s "${S}/api-google.key" ]] ; then + local key_origin="Gentoo default" + if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then + key_origin="User value" + fi + + mozconfig_add_options_ac "${key_origin}" \ + --with-google-location-service-api-keyfile="${S}/api-google.key" \ + --with-google-safebrowsing-api-keyfile="${S}/api-google.key" + else + einfo "Building without Google API key ..." + fi + + mozconfig_use_with system-av1 + mozconfig_use_with system-harfbuzz + mozconfig_use_with system-harfbuzz system-graphite2 + mozconfig_use_with system-icu + mozconfig_use_with system-jpeg + mozconfig_use_with system-libevent system-libevent "${SYSROOT}${EPREFIX}/usr" + mozconfig_use_with system-libvpx + mozconfig_use_with system-webp + + mozconfig_use_enable dbus + + use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme + + if use hardened ; then + mozconfig_add_options_ac "+hardened" --enable-hardening + append-ldflags "-Wl,-z,relro -Wl,-z,now" + fi + + mozconfig_use_enable jack + + mozconfig_use_enable pulseaudio + # force the deprecated alsa sound code if pulseaudio is disabled + if use kernel_linux && ! use pulseaudio ; then + mozconfig_add_options_ac '-pulseaudio' --enable-alsa + fi + + mozconfig_use_enable wifi necko-wifi + + if use wayland ; then + mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland + else + mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3 + fi + + if use lto ; then + if use clang ; then + # Upstream only supports lld when using clang + mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld + + mozconfig_add_options_ac '+lto' --enable-lto=cross + else + # Linking only works when using ld.gold when LTO is enabled + mozconfig_add_options_ac "forcing ld=gold due to USE=lto" --enable-linker=gold + + # ThinLTO is currently broken, see bmo#1644409 + mozconfig_add_options_ac '+lto' --enable-lto=full + 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 + elif tc-ld-is-gold ; then + mozconfig_add_options_ac "linker is set to gold" --enable-linker=gold + 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 + fi + + # Additional ARCH support + case "${ARCH}" in + arm) + # Reduce the memory requirements for linking + if use clang ; then + # Nothing to do + :; + elif tc-ld-is-gold || use lto ; then + append-ldflags -Wl,--no-keep-memory + else + append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads + fi + ;; + esac + + if ! use elibc_glibc ; then + mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc + fi + + # Allow elfhack to work in combination with unstripped binaries + # when they would normally be larger than 2GiB. + append-ldflags "-Wl,--compress-debug-sections=zlib" + + # Make revdep-rebuild.sh happy; Also required for musl + append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags + + # Pass $MAKEOPTS to build system + export MOZ_MAKE_FLAGS="${MAKEOPTS}" + + # Use system's Python environment + export MACH_USE_SYSTEM_PYTHON=1 + + # Disable notification when build system has finished + export MOZ_NOSPAM=1 + + # Build system requires xargs but is unable to find it + mozconfig_add_options_mk '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 CFLAGS: ${CFLAGS}" + einfo "Build LDFLAGS: ${LDFLAGS}" + einfo "Build RUSTFLAGS: ${RUSTFLAGS}" + + # 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/firefox \ + "${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}"/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 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 menus + local wrapper_wayland="${PN}-wayland.sh" + local wrapper_x11="${PN}-x11.sh" + local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop" + local display_protocols="auto X11" + local icon="${PN}" + local name="Mozilla ${MOZ_PN^}" + local use_wayland="false" + + if use wayland ; then + display_protocols+=" Wayland" + use_wayland="true" + fi + + local app_name desktop_filename display_protocol exec_command + for display_protocol in ${display_protocols} ; do + app_name="${name} on ${display_protocol}" + desktop_filename="${PN}-${display_protocol,,}.desktop" + + case ${display_protocol} in + Wayland) + exec_command="${PN}-wayland --name ${PN}-wayland" + newbin "${FILESDIR}/${wrapper_wayland}" ${PN}-wayland + ;; + X11) + if ! use wayland ; then + # Exit loop here because there's no choice so + # we don't need wrapper/.desktop file for X11. + continue + fi + + exec_command="${PN}-x11 --name ${PN}-x11" + newbin "${FILESDIR}/${wrapper_x11}" ${PN}-x11 + ;; + *) + app_name="${name}" + desktop_filename="${PN}.desktop" + exec_command="${PN}" + ;; + esac + + 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 + done + + # Install generic wrapper script + [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}" + newbin "${FILESDIR}/${PN}.sh" ${PN} + + # Update wrapper + local wrapper + for wrapper in \ + "${ED}/usr/bin/${PN}" \ + "${ED}/usr/bin/${PN}-x11" \ + "${ED}/usr/bin/${PN}-wayland" \ + ; do + [[ ! -f "${wrapper}" ]] && continue + + 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}:" \ + "${wrapper}" \ + || die + done +} + +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 + + if [[ -z "${REPLACING_VERSIONS}" ]] ; then + # New install; Tell user that DoH is disabled by default + show_doh_information=yes + 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 +} |