diff options
author | Joonas Niilola <juippis@gentoo.org> | 2024-09-17 10:12:12 +0300 |
---|---|---|
committer | Joonas Niilola <juippis@gentoo.org> | 2024-09-17 10:17:47 +0300 |
commit | 5d09570548afd895d0dd6b6102e9096fda9356e2 (patch) | |
tree | cba9409d684018ca1c0717c28168306c9c583d49 /mail-client | |
parent | mail-client/thunderbird: add 128.2.1 (diff) | |
download | gentoo-5d09570548afd895d0dd6b6102e9096fda9356e2.tar.gz gentoo-5d09570548afd895d0dd6b6102e9096fda9356e2.tar.bz2 gentoo-5d09570548afd895d0dd6b6102e9096fda9356e2.zip |
mail-client/thunderbird: drop 115.14.0, 128.1.0, 128.1.1, 128.2.0
Signed-off-by: Joonas Niilola <juippis@gentoo.org>
Diffstat (limited to 'mail-client')
-rw-r--r-- | mail-client/thunderbird/Manifest | 261 | ||||
-rw-r--r-- | mail-client/thunderbird/thunderbird-115.14.0.ebuild | 1363 | ||||
-rw-r--r-- | mail-client/thunderbird/thunderbird-128.1.0.ebuild | 1226 | ||||
-rw-r--r-- | mail-client/thunderbird/thunderbird-128.1.1.ebuild | 1226 | ||||
-rw-r--r-- | mail-client/thunderbird/thunderbird-128.2.0.ebuild | 1190 |
5 files changed, 0 insertions, 5266 deletions
diff --git a/mail-client/thunderbird/Manifest b/mail-client/thunderbird/Manifest index 94e789805544..8bae87e7b3c0 100644 --- a/mail-client/thunderbird/Manifest +++ b/mail-client/thunderbird/Manifest @@ -1,71 +1,5 @@ DIST firefox-115esr-patches-13.tar.xz 51360 BLAKE2B a048bfadba989ebbd4c6e3df97d303d6853844e66ed92f5f5f322acf18866218b91d52dbbece63827de283eef855c932d67e329c8d93200aa83f11268a5d1b2f SHA512 186ec72323e621362dcef1bc67c476716aff97dfad701faa9220a7302e798d3cb4ed90d5ea59e3e92f016be29875bb5219787635db99a8848b7c76e4e2e09e90 -DIST firefox-128esr-patches-02.tar.xz 20052 BLAKE2B 1c5646e6111d400c4f85910380c407c0000efddd9f9dfc228b042bbbb38755d4a2003f5fe9717a13ec53693cd6fdb1cbf9822649e8726f165a9e3d101a8b213f SHA512 ab0e7ad443d0b5d0a44867c9a732681df3bf28b30a2e14dc7d2eb43859483f452723b614ff6e8f52666be3840d88104aa2c82616628210215e1765b60beb3ea2 DIST firefox-128esr-patches-03.tar.xz 14156 BLAKE2B 9a618f0ddb8596b740893dc9113f374d193a00e4e8e76dbb2794928ceaafc7b5309cb6f69f6287ae1e423f0be0a060580b0d9d59307c9889362dd17fb7d31d3d SHA512 c6ec7233b368fac623ec0cce6f5c37d358a0fa5bb2154dc67eebb50968376ca9d46f3a734f5d79a4aa4edde9e300a9c65315d0e499aa6a1325b6c76a6c164258 -DIST thunderbird-115.14.0-af.xpi 551075 BLAKE2B c059761dace91e4f5e98f1bdde879312f2eea951ade269c7b4239974aa4609cbc8f3090a0646e87fad840bfc166ce2421403e7c210c8ae965ae6385404d06c4d SHA512 584013d7b6eea794448f4764c17de7b989155ca782f602948a2d0f745c4344954daacd35327bcb85f9e9cad99d5b917f748d47a4805cef171d806bd8211aa591 -DIST thunderbird-115.14.0-ar.xpi 673775 BLAKE2B ea5e62105a53306ee18dd332775eb4917c68d041f50b14fda1baaa9ad09df42e6dafb47a03023c3a46cbf5092009ac84ae97cfe82b6771a99dcc7e86c6844b32 SHA512 2767eef517e451aedfca4b9a8e254f4388afc1c6021cdc301bd56513073688a63ceb7891aa5bb9dd6c83ae2d5f9078e9b832bdf3e761c88e2379076d15baf519 -DIST thunderbird-115.14.0-ast.xpi 570025 BLAKE2B 3477dcd1ca19880feeef3dba4fa07396e84acbb80345c1402fbfc1012451b2abdedb05b60f4907ff2873da174216e1275a61a281f4ccffd0030403b4813062c0 SHA512 a01c2d85389e7ca86af4bcc73565bca9faea308a77c16457dcb981492433a177761dd20daf3224ee64c7a527408265ae53fdfb2c2a5b4cfa0df8d2325240ca3a -DIST thunderbird-115.14.0-be.xpi 737420 BLAKE2B f8f0a2b9a6b2a2541eae336e11fe876171636c59135a58264484adb1dd01a22d2e015e4203cc736d9cc44dae6530490b1f56dbcfb17aab41e6e897a702edc51f SHA512 58f519048e3a5f19e227ace477df49b64ddd622c9ea31e5e819d4efd6bc9667d74414abd1178d356ebb021d11de14cfcda125a1a5ecfc080073c5bded074cef9 -DIST thunderbird-115.14.0-bg.xpi 784506 BLAKE2B d34e1b3e6bb62cf433b82787aec4265c5194638ec85ea37d05f7c7f41cf0cc440865acaa07d9d919dc48e9a8504e7cb0fbdd11eedba2bfa57e5cee2db37b7a39 SHA512 09b931dc2469bb3df21cc85db53c00407d10c067b957ea63cfb921b89bbd4157f075b72abf8abec923c7c553f8e0c64c42b6d98d96b1c9bb8b27b53688dc99d3 -DIST thunderbird-115.14.0-br.xpi 648245 BLAKE2B d974ac0eb0abf6f822914db5a6f99592530c77c6e832a11f1a005d464eadc2b1bf66807b1008e323f602b3b8bf6fc6578d4b6c51d541be30b7a83308dad8472b SHA512 992cf5337f6d6b5761ad7332f11b0bba14eb962bff0c5683ca3f01a064ff13d76361adf177953a9091d48277d59f2263aa4aebedd450ca2b158a692a06e08ab6 -DIST thunderbird-115.14.0-ca.xpi 690611 BLAKE2B 28c74ba55689ef90b2a936403301b28f30add0ba9bd78507f37f87b420ca47ef86976b7a73cd3fa7396f06c22f96605d1497250a89440be9e9f9bb5518bfb448 SHA512 ca23e0a7f5df0e167c2cb293e1d5f3e8bf7af55de3233107b73c297c79121c2945da0fe470ea69bc2512de5dd9a967f674cd75945ff603769cc356d3cf3569b7 -DIST thunderbird-115.14.0-cak.xpi 669913 BLAKE2B a5de3694f2915b92889df15f147a2eeecb3d966580c669f54c3b34fed704c0c0959d65c9fc7f336540b18392ad79ab57374b4e4fd346a1f7fb493ec7447b14f7 SHA512 0c15a5a730f9ad8044004b9caa519da63af0312ef34edd818d691f9310c83ee338ead82ced902f340925c21dd29cf47dd19e766bbb9282dc76dc0944f3f707e7 -DIST thunderbird-115.14.0-cs.xpi 773205 BLAKE2B 954e169ef8b322529b79e26cc290baaaaaf7d113fd0f44cc798b83f23f90699d7763da1057ec438330df826e4b0386abeab28984c582712039062c86df6fac59 SHA512 c5fafb40529893b7a84f044fd69b548ef627ff861f63ba3c14411b860471bbdb308b659e033705afde937e99c28e0d80f7a2e456d305a5621662b872e0dc17bd -DIST thunderbird-115.14.0-cy.xpi 736728 BLAKE2B 69a46412ae8bd4d2bd307f3633860a3dc5eadc94cb1cdc819a7f9af5fbe469aaf68e5eb97887fecf032051daf1748100d7be5d049284b3b13bb4e4e4ff643943 SHA512 4dc1c483f79e0b0986dbf7b6ef9dfc3e939b7621b0418b9f704d99cbcea18f97dfe3843b4d204f673e62050bbfed2fca84c7545f6baaa6c25d532f21d0c0b0ba -DIST thunderbird-115.14.0-da.xpi 724375 BLAKE2B 81bce77270c0b3586af2914d2c3e5cc75a9555e87d306101fd74dd347bc540a141736fc259d5e4b41ccc8a982ee9386896ae582e5e8f2155cca89e656be50e8e SHA512 fded4ba16f3275e0063daf590696590dd7bfa2f9e687666df4e351a864808aa890219f7883e8aee53a299ee6231173ec19e834fdb256a45f0871a329f6bbe360 -DIST thunderbird-115.14.0-de.xpi 753549 BLAKE2B 2ddd5994da49b93ed9f9cf3911d121cb2598a2ce7afa0f714377d8f25c17b8af2f97ad3fffe7850757964441180c8a65d228ffe623b8fd7011235a8d65931fd9 SHA512 63efe71b9ae267b0afdbc8be55e2f66f4b0b86a1eec31df760dcc57ee8e6f11865712bfb5784d4760ec6d75314ac3acae805d105b08c54d0ea619b898da6428a -DIST thunderbird-115.14.0-dsb.xpi 773555 BLAKE2B 3057c8580bacdbb2f306bb76f182b8c5bd60550224878c26aa168d341a5da20a5a94eb1f17fe5d08502c61a6d7202ed3f32d330a5533ee517a4bc9e27ff4d687 SHA512 d6c341b1e7283c756b98e9040dafc4c71743d4d4254b6a6e13664a14b4897058334554975e06905f99d0cb9457fb36234413733eee5059b370ab4652d27e25c4 -DIST thunderbird-115.14.0-el.xpi 877605 BLAKE2B f06810625dfb37f8090c653056197f43d860be38345673865cda9f0bc82ef2e1f8f27bc3acbc53a7a0372575f9fded8f28a042c4c3d85afdb0849dda5ebf8bf2 SHA512 ecd1d5896a145b925af0d80255172866e163568822bf306864eabd1c577f002fec022ddacf2cc8212f29287aa56a81448557d4e4c619085db5c41b5a87b2b1d4 -DIST thunderbird-115.14.0-en-CA.xpi 691843 BLAKE2B a05d1fc63b602efa96583bb1cab42f5d4507c088be1701bf45382f051ae39a7d98e8b1030a0252d098503da159001845e9281e61ced53cb142ec09d5fcbc1c92 SHA512 5c4e29534050dd9888a69e934e6ceeb22c2bc4f0f8182ef9c7a019da7ba351158f6d83f0f4a0548d06e37fd3ebbfc828eeaedd31addc3ad5ea3fd89cfc43bb65 -DIST thunderbird-115.14.0-en-GB.xpi 693140 BLAKE2B 56479aead322b98d12b6fc16456dca6365fee2257a59e549f11bb1d67f40d13bb5029c3aa04d27cf1b4c5919c95498545216bc17b2188df47541532117e58bd1 SHA512 a64e83decc87c5050e9b3557eda80b33cd076d86f9180d6d33e4068e3aa30c7093f0304a92e4e9c7728809ce62faef1a964053784953f249304483f0df9b7ff2 -DIST thunderbird-115.14.0-es-AR.xpi 747974 BLAKE2B 6e19a75a3ce8a744a6350514efa86e7b288cc311024fecc3f319027bcf35a2f9bd0a86f8fd66fa9890b225fb8f5c820bcee13e672ca4c34df9622a0fdcb15e68 SHA512 ac84f6a4a4e6a7d026b888da9a23660c048da5993b09059c41542bd699ab8e3fc4dd0d5f3e0b2a49013ce965340b00789bbd8883a4c95e792af7ec1a9b53252e -DIST thunderbird-115.14.0-es-ES.xpi 710345 BLAKE2B 56235f2f3a53f05e9a2f9cd1ea4492dacd841a50592b81da7787e09e6fcd72d8fc85aa61ec864ab455ab8f4a01032bd787a267a88bb1392ec924f8ebaf18291f SHA512 c7dd7d7f92d5e7146f87925e11e61222acf564466ba5fbf9b56761db7f4f5f5d5e91aa40a860d6095f9e484f5e681188a41227559516fdb97ac39966dab0d491 -DIST thunderbird-115.14.0-es-MX.xpi 721705 BLAKE2B c5ea8cb8a7a5fc0264bd2c6edd4c98f93bdda55fe5d0c4af69aee9d1bdf66fce766cf5d13db3d16f3ab98ce8b8e6204699f20885b67f083d289e4ecdc78a587d SHA512 ed8416b441233203f5e2c1d95559e9e66c7a4413573f7f8c6157ae0708df3a265580599eabf8dd22b88630f642435cd33be62d16c7b3c5033a5f6f1989b378a2 -DIST thunderbird-115.14.0-et.xpi 681845 BLAKE2B f8c43bf64c09f938a3f9f901ab5909e5fb68cdd8c9ce7d0dd3636b656e78b9e45988788fdbd4546239ae4c5e947bf72f2f43aeb801f7e614254486e063a0fcf9 SHA512 b150c1fbb52ad4f2cbbe0ef5a17898324a8c111a6db7bbaa621af478b7dc8ec9a2dcc0abee50c4e38d377964e8f49e2943b9617e81126ce7a3ae73f4dcd794d2 -DIST thunderbird-115.14.0-eu.xpi 715703 BLAKE2B cc0c64a4cd10d0916366a10ddc820b0af1ef45daf30a90e6e5118ab34d977335b45905188762005980593950429f377a4bf88fb17ab5c5ababdb581d3781dcbb SHA512 89a656d9adcd98025c846db4e744f1c44e8f055afe30ae19af32d515133a00e6986b1718eedf0e58cf2c8e116ebb615bd11c9773eaf0e9cc0ad71da54df7aff9 -DIST thunderbird-115.14.0-fi.xpi 721458 BLAKE2B 51e8846f9fa3b193d1af1ac247e757720834c9fdab9ad1e6be99c5388f08bb4153c4e4d57b5d7fda5ce52a00b6404539c5a23fd18cd0e33af803f60217cc9d1b SHA512 5c2658f35998147d1e059cee9dde2b239be116ee9805621ad01056c13e39c57c8f23f30e02406d071857c34e19df2e3a313be609bf69c616c1d4a935987cf9af -DIST thunderbird-115.14.0-fr.xpi 760363 BLAKE2B 90be2ee85bfdc05ff6bd569f68e3cb77de402267865df7ca4907704bf6b72a53b38b4a18a6067dc2ca2134b3c059c00df6c88f20061154708b357b0983d9e3b3 SHA512 6e8d1384030b8c45ae6222faef3949b0502d660c2a61bb1951af8dc800fadd663ad588f789836587240947a909d4abe331b059f9b680307e76520237543ae3c0 -DIST thunderbird-115.14.0-fy-NL.xpi 742643 BLAKE2B e65e5777232f7bfdd3f30c9d6f05f40f1c6123accc55653c53931933ecd8baa2ec96098d20ddbc16f3a94fd62915ed98e94bf36e84d516996cddeb18ca46b7b0 SHA512 269ace04c16c40d65c44dabe11192756574efd4989f854496d7b0bfabadcfddd14e5fbd051303a63c54eca6622dceaa63df7418bd1b3ee37e06553a7ed1ba942 -DIST thunderbird-115.14.0-ga-IE.xpi 611260 BLAKE2B ed1c147a2e4f14072c277690fa4fe63e67949c692f083cc7edb120566b39b0e9aefd07af0948d683dce248432d034f872f13aa5780c286479b993083ed73b927 SHA512 5db9010df40ead2755786f35fef01c710827733523135fa131bb6982aec65fec6d33ccb1ec3bb02ad2e8f6d408a4f690442fb80a4dd3b9630c8efee0cb32335d -DIST thunderbird-115.14.0-gd.xpi 714361 BLAKE2B b6a66e5d188620339236dd1ef36136ab6fcde33e43c45a932ee785f48736dbbbef81e49f0ab562e697cf0af079b75040b5a79e2ac723734159a2c14778e37203 SHA512 0d3075c4c90bc9c0473f79aea4a83b6e2b58fba18b5d5821c459803020955a3ea44114b96f897410ea51cbc5d9cf5fa006a7c8c34c29ad0caaf0aa0a0316f3f9 -DIST thunderbird-115.14.0-gl.xpi 726304 BLAKE2B 78963f8dbf79150d00ae9a32acc2404e59e1b1d4c9dbc17d3a9a8386402142f11ec4bd334afc0fbd6d6d367d18e2f87980833d83b96ee606c1cd92987969e9ad SHA512 1386e78162fba0e7476619038a2b729142967faef8c8767d53fe2c94446719e90db49416f2ec56fa6d9053d52a89a9493d15a9298bb1acc29b3bf4a36731632d -DIST thunderbird-115.14.0-he.xpi 693498 BLAKE2B bea57cd737f313866516b2ff2908e1d0e5b9f99970ecd5740b58a4068dd778b0db9bc1a657327f2864475142d04475ac86ecdef75d217378ce616a3574b273a7 SHA512 71892ecde40003ebca1974336a08c63965083c98d18012effc1bc8912cca855c7b02c57f86a1f947e01e6d1f1a993d9586f71244625b8fe40b09fb4135569789 -DIST thunderbird-115.14.0-hr.xpi 691433 BLAKE2B 08086582deb11088535f6f3b4f782a8d17fe676d44ef494d2d15c4779ded5bf3ab7baf31610c557d5cdae338e58c01fea3e56240ba1723a00c32ac36a7d4355b SHA512 fd7b9f632768f05a4e48c5996542191382d6530cff1fae1785cd6a8e6d48425a029b0cbf6a3b345f8b356fab3605bb00a64a88b6fae58949f2811b22735f534c -DIST thunderbird-115.14.0-hsb.xpi 769641 BLAKE2B 5771a3079536f3497d5d1fe961d1b06d90f67db8981a8101829d20404a9c5c7c3554a9a656eebb84e27463759e08ec3f1e1e89b0937118369902e9ac67b9637f SHA512 9fe042c385bc89a3b2f75f8f0fc4b95823136e6c0c64e763d783218498caadea36e5c23b2898390ea14ff47743cb61528854f7e7171ac815557ea9cfad15e9b5 -DIST thunderbird-115.14.0-hu.xpi 771526 BLAKE2B 6ded963a558a8c0b5fd451ecdbdcc20771c1b3274271bcf049767f98605cd7ae925e13171c71763041927be372bcd7165fe71880414ccbf40d57adde319d1db8 SHA512 72e50ba136d89eda9f97990fc9ba193f81cf7a84c00b40116a5fe6c668823a95e38d47a0ab452f00dbb03855eea17882f88d8ff25676fe0ba720c90202316a78 -DIST thunderbird-115.14.0-id.xpi 655009 BLAKE2B ada437033f48a3131472eddb33547a0c60d2d0bee013b02bf86c5ab412d5755254536a071b72ed05c61361d04dd8e54e9c65b47eca50596f90042a2320bf41b9 SHA512 808832a2d44e9ef4744222357bcf07f019f278eb69a0c77cfd420f924ad23749414e99ed48ec0af89ac5e2df202e522ed68de51e8bf97b492f6f499a3be7c5be -DIST thunderbird-115.14.0-is.xpi 727511 BLAKE2B 381790fba10c470a6c4b6099dbd3dc72289f541f916d7a5dba9ccc0522a68cea4d18c0e4cc17962c6576ce82ad50af2b7c3c91636c1acc100587afad784e752c SHA512 15d3e85812b78f120b1cb13feadd1a465b5cc91db2888a602bd68b3180d5631018114ecb99c6819df2a6626cf736add59eaf01dde585fede8f55fb173e39db40 -DIST thunderbird-115.14.0-it.xpi 678891 BLAKE2B 79c66d8d2465627a4ed2343d2673edd0db6f783a596df392a240a099f3ca2eb339e6f8be741ac0afaed2761b9427c22d5358962604e3fff8c3061c36e5a7a7b9 SHA512 359fabee10e9e5bb2130d918782c14007a70f2f912a1e683274ddb723cf10ce9fb256e6155ef299fa7bef5d85608a4c56faf91f951d269179c755068cb3d6583 -DIST thunderbird-115.14.0-ja.xpi 806835 BLAKE2B bd47fae4a1492e1f5d523ef40a234ef4181526014cb22c2a13b05683f33077eb01fd858b9d330b7acb12da1ab74b85d756baae1fd02230ed3fabcc338147c670 SHA512 e5c161f7b3814c7d9a3ccd0f858406e9d625e950fd812482955f74eec291d50cb7a4cf06577fb286d2f4742f5c6d8afe7663024b3f4ffbba0d813e269bdf0e6f -DIST thunderbird-115.14.0-ka.xpi 786208 BLAKE2B 4e4f7156d3c515b1cf4fa509b10eac4be5a35f34efb04296da88d021d5a7ad7575e775f6f290fef4f6d60a28a08fb9ab787eacc748b41101c503785d6917cd1b SHA512 e1f2621207d7e4e2656c568de5953ffe6042d1490dc66fa96438ed2b5cb8cd946ffcd152f903a33f29b567a548f71b3c2426dc5b49d1dd4d227ddb3d18e6a9bd -DIST thunderbird-115.14.0-kab.xpi 716194 BLAKE2B 1a15da10d72355b628c73146f561f89505097df9fa1dc09c27092c8215eb2d03bb6ff72619f3da875d54e7365ef11e54216568247cec1d8a644e762b9d217e92 SHA512 d0c0b6f17466d935170e873cbf8f28c9b685f7e1c79ba17d19b32cd03d8d727763b472038a8cafbfac7326f2d535b1707baa256c6f4ed86b99c58fcc653b5a80 -DIST thunderbird-115.14.0-kk.xpi 846249 BLAKE2B 7c5ab66f18305813529c82f1b1f8ceebf8f70966b48b0ccd4dd861fb885a40b003d4fe4e18871f4e11c22e18519fe003a80579e03dae17934690afeb331264db SHA512 a6d0b22d607d4f9688336e9fa983d9d6664208645948c38d7565542d7e7003a0e8208d12bb768d84848721ef26cca6529bdac828d2713ec3c058fbf24bf9afde -DIST thunderbird-115.14.0-ko.xpi 749368 BLAKE2B 1aa65065f243e5bc6481e9005dd1cc56da0bf7c377fe5ed0cedf90732940ac4d8730aeaa0b1fd6ec169edab81c910653104e45d8af0bc16c3b7751ab61ec1695 SHA512 cb89874847428199071c9f1fc93cc7dbba2d061c427987ca5b7eb06d404fc149653feb2e2699e7a5fd9c32840a8d6a86470e4bdce103aa54e36bca4c66bc8c89 -DIST thunderbird-115.14.0-lt.xpi 690687 BLAKE2B ef23d07c4b30288e4aadb6323a33e6eb93ca56f639005ba492806b9a107da3ea1bd39444e7a9eb70e814f75838a2b969465b161f66679dc46fda8a7b9eb16a5e SHA512 46f86a6b7e0f765cf62e4fcc1f79a55afe005a6b0fe532a1ac58099f550b6e726ff271c9e0833d1dc3880aa5e9cf86c78a759d3d83a2a2d022d1147c948de157 -DIST thunderbird-115.14.0-lv.xpi 627247 BLAKE2B dab156cf1503af5f78acf7dc81549d79366894e52728e87308cb26f62ef1bb2ee94d811a8ec749f9e8d3ee08adcd89ebc53db7dda60e9094f5ff6812332cb591 SHA512 c38cf01e129aaf0efda94bcb8edde556b6555367991595df10f913e6cf8a2cf7e4e5afe542d54b416daa8fdcd0ac253ce440ec7ba3b60fabab6083e2af35f53c -DIST thunderbird-115.14.0-ms.xpi 575568 BLAKE2B 5a2f7e6b25d4bef3291ccd55280d3faf9df28c9e581bf42adb752009c04e8fe852e07343c5ee972a771ad87779ef238c40457a5dad48e3657b3f5da261d84175 SHA512 6577ee7d014b809a3a1d41edd57ade0fbac8743c545fc7fcbdd7641f8f8773a060d9f03e9e0472d32a2031d15cb8c00a4594992b0006e9e76d2e1f4133f4354f -DIST thunderbird-115.14.0-nb-NO.xpi 697703 BLAKE2B e94b90eb20d4e70bb1323c9c1e101ea905dba2524deb3b40b091b9f6e84a595079ca8843ae47f8da6f3dbac35b65a72edd9cf562627553cf9532b9b88f23b295 SHA512 7aa9ac637b3b8e087baae7046e437842f871324f883a94fce17f8efc2ce688cbc648687ba77c877c4beecf4dcff3147a849c11b434dae15a313974b53e845b45 -DIST thunderbird-115.14.0-nl.xpi 733820 BLAKE2B 7d967a15486da6494dd90a2a6afa94256d095d97da9569c7431b006d7b8b308f8e9207cacf788c4fd13c48021757f862e8c45ed0a7a95944abdb099db4d77648 SHA512 135f129f2b72d99599ceb5c92f03d96dcef28465717eaaefd1a12a4f8617ede060150cb18caf7ae6ed6053210c32bba0bb5e742b5f99a20f9a1eaf1d86eca37b -DIST thunderbird-115.14.0-nn-NO.xpi 706209 BLAKE2B cdff6e4ed09b39f968ef53305bacc4209aa1cde5cf186fb55dc0ecc51a3ce586104a8e1e53ab254eca8edceaf95d2cd0bb979eebfca58187511e35b3968f3c80 SHA512 4a54b2254d57c1947fb27728a173270a9f9504c4bca25e2e700c602e6b5b8b9d7538bbd4303c062a55b23cbfc8204975d9699dc82515a80e192295e75898acb5 -DIST thunderbird-115.14.0-pa-IN.xpi 685637 BLAKE2B 518d15e64b5f9d246e1589f860d9b4f85a373876200f8f49964c304dd7d5a5ca19344f37cb190cfb7a8c9529d2741a7b7a8f55b3bf292f4071485dfa091ae598 SHA512 728d23c27bb03fcda6c60f83623ac7e66b4e7788767d657def85e976b5eb578a0b0a03df5baa4688e39db4c9d7fe0c57dd7bb1a4baff44c8c5776071d393125b -DIST thunderbird-115.14.0-pl.xpi 752372 BLAKE2B cb38798a81dc8dde89078d83da3414c8da71c3e873501f5e82165b6960d0bf6c8b22efa2a99c3403e009e233bc1fdc1cf5263c2b26ea86c2f2e05025d8ee28c5 SHA512 623643cb84760e98a8265b617ac709d03c8e301f34837256b8c4a06e1a918656b1a90052d97b67e2a3ba23e0e499e8fc3285cdd558edb4b3e0ad0429f699cde3 -DIST thunderbird-115.14.0-pt-BR.xpi 741445 BLAKE2B a32a05e2acb157fdb9ece51b54d897b0fa052f1c40466f7e3e011b84091b069685ac5e636b55d770eb96837f0893f1326bbc111a758084079c0d80e9469d42d3 SHA512 7419835e5a02afa24780de1300f606fc2cb4c4872423f5a91ddbdfe6c2731f962adb769869f4e02381d5593bbf3683168eff562b6a2ab781a41a90ac535d6d23 -DIST thunderbird-115.14.0-pt-PT.xpi 731564 BLAKE2B 48d012e05d6da33fc52f961b3475edc1e740f356dc1f8aa4bd03436be18bb38ef285076ea1aa859b7e02d091ec0fbb54f76ae1ecbd8f18cb8d755d3314261168 SHA512 18aeb54f46a35e9644bccf6035cfdad6e0448674f38c934857c9184f75ede1e74130e3bab3017b22d286d129680849622cc11a049859a1d14d7df8bf3e62ac8d -DIST thunderbird-115.14.0-rm.xpi 736852 BLAKE2B 54fa4c46b9d4c5874a964d9bc2a3d306320da797f202dc7ac33301936944c4457e9a82e479a15a246f3d665ab308ae5d5908f4010e6c30716560e7e68900ef31 SHA512 8b72e0772f1c7c4aa00fcd760bc04a3dae69335769d54e9368262fbded96ebf7308a671e46cbb6e921a043d6e297aa77a4510553fd5844f9ad742808b964a476 -DIST thunderbird-115.14.0-ro.xpi 661932 BLAKE2B bcaf398fe58aa77b26486c5a7ac62ec1c16d7edd35c0a173c47e0bccb189e7fff5cc1713862974181cd0acc722d6d24cdf48321db012e2df677aee1470690198 SHA512 f02addfac0f7e11c43b2f43e15d20f5e877c5300be6a5c23ae9d450096f064ebf597319228f81c7d5c6f598805050aff0431025600874e07a8b512e88fd3d083 -DIST thunderbird-115.14.0-ru.xpi 860677 BLAKE2B 279f64a91f2dcc2e793e05a2b493538ce7f549d4f64fa151af7b8c8eeb48ddcda7bf4b50bcb856c3d45622c1fcc34745ab9e2ecf5054f63bb3bc26951efabf4f SHA512 f94a708b8c08c416ee1e39207c32fff7c27749bd9025faa576a72493025786495851557251feccfa67fffbfd4a8cfeefaf25fc8a87c295af7be68b1d37d1e272 -DIST thunderbird-115.14.0-sk.xpi 772207 BLAKE2B 543a90f8dac0de1927764e3cf928b20d673c29c9669e39fbdd08b48c9586a211031891b7399fdf898d82624842f0c97364d1cf56d3420bb3ab71ea642a504a73 SHA512 f109e8d65417dbd3b0d8f5f37d1c5938d37a09f0387ecd75a690b88d365c56e231ff045010e0d6bfa1ec2c26898fd63a0577d207f837475df558746c46031646 -DIST thunderbird-115.14.0-sl.xpi 732187 BLAKE2B f7e8b441450acefd3fdcda9af3ca3dac97b98e5fa254c5a12c60c4ad61eca060007538f0046ae473d772de2f4bc5a0a53594522ea8bbf2b41d60997d6fd6027e SHA512 c9acc7a1ad4cb54868b0a66c0cf2cd6a3460acd6caee3c33331d0cd1894fe9142f1d5c3238c2b481bd80a390dc95d2c8feb513a2457ac86e28910d8ac968a4db -DIST thunderbird-115.14.0-sq.xpi 754807 BLAKE2B d4cfd7bf239eda2bfd0d6bf408c7079d088ad0b948e2462f44d9427956d41da7931bfd03ca3757958cfca1c8d77a6aa425ec191751b05989f4f6f855c98f3805 SHA512 15bff4ec3b1bf8045a77cb7c5df6b07c8f0a4cf559490db126218b591e691fcc7cb26b3407ef16518d05609728bfa88f129f6df151133fb9e56fcb14d616bc4f -DIST thunderbird-115.14.0-sr.xpi 757576 BLAKE2B 85c9e5e487b441f2a5fa04b4f8a1989fb3f984dce1e5333cf4d092329f6698a43946abd1d51d34727f51c87922ce8d34d01d1a2cafb3f316c6df7285b7c76a18 SHA512 10166e70d170ca698d4354b2a60d3ce962281e6e41f12e713d18da269562571ce069b8464fc91777ff8c9c2674b1581d58edc36e80b6bc242d455e177f43207e -DIST thunderbird-115.14.0-sv-SE.xpi 736927 BLAKE2B bbf5e98eb26428721e86083f30929530fbbdbc1aeb05c73f7f0663ad3f6348993bf1294876769a321a4c27ed23a1fe5f9a3ddf381d45baf7ced0487e2c73981e SHA512 0c3c68ff09a02c01fe05d5e03598b551a91f025ba1366cecd443d6c54995a0334a89d746844698e6e1155a5acc1a857e6b5b3068c23f127047a72b29110955f1 -DIST thunderbird-115.14.0-th.xpi 806119 BLAKE2B 894e81d18f2094c8fcda79661e26d776e2de90ccdf73b739b8a0258f82400d4c487453904fe41fe94963181298b2b1c81d08dd7fdfe1e393163ab619d15256ea SHA512 911034e20151a17e787bc582668bc80323ff72503c0b905e4817a369f05dddf3f0c008e17193f415ae3625339265011f944a9002a1119a89205460a74834c0a4 -DIST thunderbird-115.14.0-tr.xpi 746840 BLAKE2B 95f03bebe20160e15d0a1abac5479ec464756f44063356a5ad9e9f58a3c0c43822b9afcccc245cbfdc4b7ad2232a71b936ea03ff15834c33f80588625c062528 SHA512 e5e656302cff207b53de54d7d090917193286c08ab584755ae3a7942a21beaddd24c02fa449640bf70f3fa2d5a0aeb3e2e8bbecf0d636c1355b4b38d0ab8f826 -DIST thunderbird-115.14.0-uk.xpi 847221 BLAKE2B 5f9578bf44a4788f2081057c2544e618a7924d3b659edfecb03e81b91bd5e8082eda8191cd0d8de211351104e898bd0ea71d5082b1a0719ce7459ca446414ac7 SHA512 ecc0e849166198def15a50aac46855be61acb65fbc63e74eb102293ce62e1320475b6700195feba835846130d597a9301455c4b77ed06a3396b5943be5a1590f -DIST thunderbird-115.14.0-uz.xpi 588606 BLAKE2B 1c57e1fc57df04460d5d307e3e3eb27a3d5d8d7c5ace9ff4556e5d0e7549dd547154eeb05a1f3c07b9a2de36226280a43f1414f2105a5e75c137cd0063179524 SHA512 f05bc3ca4e77a72909c14024fb801b67eb928ca0ea6dc7b8cc6a318e08ac6636f1e24d4584ef40d7f34cf012833f627479cef2abf730dbcdcb0b835375e40f60 -DIST thunderbird-115.14.0-vi.xpi 774809 BLAKE2B fc16ca251941ed6e89b5cbbf8c5fea6187e00cdf6d30490a6d98088ffa845582c384611ddae3c042c3ecf71b43a91105b26e8433b287ae8c413864c21ca22b4d SHA512 536370b0615b373ee266bf39f434ee5ebec15d535e366fae99a68a2cc7ad75bd44f5abe41af7310b1d5e2e0762e783e4bb88fdd2c9de66f46ccab9c1e87f698e -DIST thunderbird-115.14.0-zh-CN.xpi 775075 BLAKE2B 08be1a16a498404b503c7ea084c585a2c4f99c755b233a8cd3f8c384ce6b4c7768f0f6b03ab77e4688d2241c07f413decaca6b7a38f8113161e2c1303876a5ec SHA512 eb4e1894f408b7d90982a447183c3dbd702c654950c772c3adf6ac90be23655e6d6426210542de70682ba70797c247e6271bc7867fe2a8dc04ba8a63ab0e94c0 -DIST thunderbird-115.14.0-zh-TW.xpi 778882 BLAKE2B 1c17c1d70f42ad4a38497846fdb6296816f5f5bd782aed05ef090b2913170a796e1a54184ac566c3c278ab821dfc9379337f39a1c31f4f98e80833bcbea99189 SHA512 661acf4f1eeb803eabb4c5b8f9cfbbb6bd71eb456860fe23debf0de889d204aba490d545334098c8fd302de29b6adb5f1a75c4bd96e3fbd13f3dceec358a15ad -DIST thunderbird-115.14.0.source.tar.xz 533296972 BLAKE2B b286062857df12cee6b5aa42f26de7509cd89558a8173cb9e1ffebda2c9bd6ef808bf5034ee2149809e6c427d9c3fdc7f2d37030b0c71aa00d5b8f5381166d14 SHA512 b12e1302d6be94dd88bee6dd069d3fec944bfce95e1afc1d72c14cc188d952fd5a85f0e70575317250701ac89498d876f3384b022957689fabcef61ad7d78c29 DIST thunderbird-115.15.0-af.xpi 553548 BLAKE2B 62e9e3904c8f89cbaa6a01f6734e09bd93f3dea42cea6b0e5ce793a1ed8dbdccf5d1e0d67d92f1e4de09661f14f8a6cc7481f1860e04a581635ee4984355928d SHA512 2496a41f4f18cf53d0607c81659aaa9c248e07ef0b2068e6fae888a76b4d15fe8eb8e1031b21f81b586886e004c19e3d18a7b2800a12f3d0986a2b0c33f61109 DIST thunderbird-115.15.0-ar.xpi 706940 BLAKE2B 3bd58099f54219d62b24013f8ea920d03514f6e9589dc6d19696b7ef78fa4b703a12d83293583b9c8506055ed2f47593e1b8b4055dd3abb1bc5554f9a5f9bddb SHA512 9c1bb958ab1101457f91f6fb5e8d35c2d0e727c3f9be02829bb536f1fae959d8fafd1d88e592cb8962f19dbbd227061c3e610acd55b10da3b166e7386b4acca9 DIST thunderbird-115.15.0-ast.xpi 583831 BLAKE2B 91f3eac2479eb1f789ed5707443425c2000ad7d69f2431c78f3b7733736825dffbe02eef1f0cc48886648fa5e22dbc84f275efba614b43340d1726ec4d3ef86b SHA512 bda904a4f4072e87799f6d5ec99094457275482ec622e9bc87e961e91566d6611c1a3522f6bb7f36387b515c114d6a8ef7a9d15f2a673e5fbe02678d91855c2f @@ -131,201 +65,6 @@ DIST thunderbird-115.15.0-vi.xpi 815663 BLAKE2B 7cf6b7a580bedbcdb8d1d6ce969ed6a4 DIST thunderbird-115.15.0-zh-CN.xpi 816082 BLAKE2B 6327323e3cb30dbed637dbd82175ba0f1eb68c6b228c735db585a8050358739bffcc2ed3d0f86b84a0f5dfed16cab9d4b4bd1882459903fc5741dc2ea63c5a31 SHA512 9861cac106263f3928a0cfc70f4760f35053a8dd4c207ed788922328fff5d297ddc9c81768d461fd04b0b3266ce1150022eb73405c3fa5876f9c479fc7655b10 DIST thunderbird-115.15.0-zh-TW.xpi 819843 BLAKE2B 1f5854be3f2cdd4f680b0d649d6ee144f0d2ffc0cfaff094ad2f569a7c3a3245c8c460309b352de87e884e484486d9c3b84cbe56b07408706580528b9f65402f SHA512 3e7fffbdbe5b4435a29a420496e341a9b9d04568cfb46e0f73a8bbff4640d85266d105ca39789261db80e44834e7813a62723f5f3d190fbe585c293cfe03f39d DIST thunderbird-115.15.0.source.tar.xz 534455612 BLAKE2B b77bb2a6c1334fba8638b299c91ab71e7753819538aee005afaf4554db8a91838daf88a670f6b108d7a33dee1a0fe57b9d0c9aca724a471801e858043a5d3b45 SHA512 b161b99e09b6d1ba833f77264e35034ad199438b4fc88d244a6b68c84693fa2e90fbab60dafb827a2e23b37c484f9843a58751d93826ba7cdd0391114d253de2 -DIST thunderbird-128.1.0-af.xpi 530022 BLAKE2B 741b3613ff2d6478d241bc4a2498827f4ab3915ef8378ac60a360aedb90b761ce14142ea3e2126d56275c97d47744325d8b2085b40dcb174bb320d791b7c1b22 SHA512 80cf8a2a84d4334100af3c010497a3b3f6a1ecee0646193f1534dad84de96c6aa331a18172ecc4da7428b4c4881d0a46169ce8893b90845e680bb9eb5fd0e476 -DIST thunderbird-128.1.0-ar.xpi 679531 BLAKE2B 545379463b938a57ba4de7f08f3df356e0e7b74621542d74fc40a2da84d127fe00785561f7fec446a434bc29ec3ecb04965cde58eba684f52bc3d4f189f34139 SHA512 89bbb69670c0db83053c7bdbc6ef8590c01805b487f8cb40d5139e2973aacce9e8277d20a779ba372dd29453f7717bd7cc27640873d56961b9d3321d1ad7970c -DIST thunderbird-128.1.0-ast.xpi 560727 BLAKE2B 75de626cbe945a7e1d86aa1a5ba7ede2009f9c437ce46d605b159a6e84e84d600215f537c94e28e825b82ae237d55fbe3afa1e60316859a4ee55e572adbf69d6 SHA512 db71edb6381fafb026dd28dc48ee3e9ace6f714bc1063ac75a283bf42b545e61547ce8f52f6427d656a3533b6d250122ae3ae21e856f96a61fa1539d0fc3d0b8 -DIST thunderbird-128.1.0-be.xpi 753111 BLAKE2B 88b2bc8ade7a1d8d574a74aa01878d9d68d87fdfe2d6e7731385d2fefc8069216241d64b5a2f428cb35b0c4663009a189de75c1db3a64c61a1a21bbdcde23c3e SHA512 de601393fe9dd025f90dfd1c68322de980d1f58faceeb62045d5c0827cb54762e0c57cd23c5ad93fd8ee28e27af45207d4aa62634d8649552dbf695a667c6ea4 -DIST thunderbird-128.1.0-bg.xpi 801171 BLAKE2B 9b3effa6fa89ff74254d0aba69dc4693cd547e6996f9f6aecfd04d674fcc052b75452b705e80489287ca6e77b92c51f209e7f75465b284dbf95fa745add97ea9 SHA512 88a1f22031c0316fa232dca37f34eeac7b7dce3303242d162dc84cc4c7058effedcdbbaca734b1ab24f6c9063633f3a22f8d91f6760be2b989b029590665e7c9 -DIST thunderbird-128.1.0-br.xpi 652151 BLAKE2B 789ebfc62fd67a381b1f6976297aeef3ebb8630f131e2051966196b6e1ea62741759f7296ade922b955b0f721658f789f8f006de905c6ba33289504e4748a063 SHA512 a9353b859352afab77672f6a8bf86039b0a1bd359ba96af9a8b326fd68bc8cfc48f49c72ef194abbd38c7cfd958c1f74baec3e599ff197c66b0342c55db11e2f -DIST thunderbird-128.1.0-ca.xpi 705576 BLAKE2B cc72e3947fc56f629e9f5984583bd1e736b7bca43ef0771f27e9819051d99a06b04afd485fb7694cc37e677408283096a8a0295be96fd499c7f0430e3cd602f9 SHA512 ef097962863c30a170dd7ec02d0a18cca00486b4a1b6714ab980d5b94db58433eda69264c7f49f0dab374ba37f0c74df7ee906063f56bf6e019d2576e3f38573 -DIST thunderbird-128.1.0-cak.xpi 671376 BLAKE2B b41e5eee2d63b109f9331a387fc22fbb9419d274aa0285d8e2224d6bcd7e3ed8c38bd540f98bc7c5558ac64eb666808f14ed2f3a516b87c4fb50d2a2ec1536a8 SHA512 b8fbca65e72463cd7cbebf1f47da68f05cb9e569095411d53dfec3796a41fd69931fca0c4f11493bac8b3a32da038d70a1dc2cebb8f4fa887da827921d0703d1 -DIST thunderbird-128.1.0-cs.xpi 782522 BLAKE2B 239f950bbd3066386f342b77ee901687449484fa7531aba93e362bbd2f20ff40720e01bfdc0275e84def2a601cac189b2d9f0f0e0f407c4a83b64525d210148c SHA512 f140695d1bdc41d603a9956882f145090d010fb5095f564ae3230adff459078a7af5188f22b1aebcd825d3915aca82427758943d780ab836234c6e34f1c8df54 -DIST thunderbird-128.1.0-cy.xpi 745833 BLAKE2B 55ac15a092b5f0c164e3a05095f5d15eed031e8d80f41fad095afcbbd9d64305f635e2b76d7e00ff0459c77f73fa470b4a6991836790d97daf37c012560c9294 SHA512 58ebe45f66707a103bde71e5f68924d6996171792cacf509eb5ed7df75348bd2a67c91851dd114255f4a7acee987193c2ad4630d70f71d72c52c1b77f4d05000 -DIST thunderbird-128.1.0-da.xpi 732247 BLAKE2B efdbd51962ed398e4ce42ebe86930e7879954db017c90be1069e38b8912198fee01281cca3d5d3a6030c7596ee94ad84732656d2f93a203ff7ea911a7b130259 SHA512 663b9de656b8a5cd932c4606f1ecfc8e9a6f4c60ee9b800cfebeb13f3cdf5449c43e1a5ae6d414707a030cf9459ee3bb1c3058e972696d62ed6d5c454c183c76 -DIST thunderbird-128.1.0-de.xpi 762888 BLAKE2B 647b7354b84a3993528fabe11d1f4176fa3aaa8291c4db2dea99835fcbfba0913a762c4f1d4dfeb69257a53aae904130b153d73b6e7bed6376bdb4c27687e7a1 SHA512 1969c34613ef05aa971091228b520bd88bf88eca384837e70fd72da0da303fff9d7c80cf9d045d70586c55c14a7d99346f7ad1ef91b69410ce39cf091e4b6375 -DIST thunderbird-128.1.0-dsb.xpi 780506 BLAKE2B 0dd77da83926596cbf89cf04077bdf995e9d4248dd9ba98c0c855fa212b71f8e3c2edf3bc60bc1c4cbbec128f7db147cfbf8fb377f57e3991e53a0b481323df4 SHA512 bb6db78cdaf66fef0532c9c9fa7a1fc8c34e7e19a8ff1e1942db1831f93c1f863faa05ec113289f27fe12ab7b98d3c46ebb1c91b64ccedca714803e0867d62bf -DIST thunderbird-128.1.0-el.xpi 886608 BLAKE2B ed2df796edb70163eeb857d26b4ed09ec7d44313ad1c14b81e829343584b090f0cae50f83036c7501790595b72f2a24489f631ad621c9918f9484286fd08bb66 SHA512 651b25c8f908b8520fd130eeb9d48d9880238651d6f0cacc253cbc250714fa38b5ecbc1705dcdca37263a47b541f18f6afc9bf3956f93e1f4156a875e949b839 -DIST thunderbird-128.1.0-en-CA.xpi 699938 BLAKE2B 019b3400e29b99ad4d5848500e39581d821f1ebaa72bc2d340836fd72e905cf98386ec2d4d246b065030129ff5b133532702100e28b9c0b3fd17ad2aa855939a SHA512 1211b880e145c6dd69420ef2567be1718fb8c552b0d089d85f0211ff90d42668b496126d995d10968555ade4b12bdd37a3ef16b2cc05f4cb6d12e824bf33ac08 -DIST thunderbird-128.1.0-en-GB.xpi 700682 BLAKE2B 96d0edba40137df8ab178971094929716f65db41da784c169ffb767a2b3d9bd4ec2276f4daaca5ed2fff66af682befdce1c999caaa320fea339f3979f3805a06 SHA512 0f082ae1190fb1895a62ddd76b61bb51c23115cf502524e53369708a2266887b38cd4cf5e26a9d8e56408b2e1d3137f8400da96657c7bc75d3876c68c8c8e7d6 -DIST thunderbird-128.1.0-es-AR.xpi 756125 BLAKE2B c7d47ef5f296615993f4909cec468b890bcd4728a158cb808e4a34f1de469b89f5eda0ab2226494b2a21f9d388b22a9bb5528e59a07f01bc18999449f39d923d SHA512 38068599297aabf59ee3e66974c0110ac041e9eb7489cbc77bbc49e2270116e4517e462385f84af565a88a8061a951c111e70df37b87f60997dc4e4db2cb8b48 -DIST thunderbird-128.1.0-es-ES.xpi 723184 BLAKE2B 16102bd98d4c844891dcc5413515ce2213b4e84904e7782a410ad5f659a3811adc846cf6c83b3a0609da0c84f650246b6bd13ce71bc3fe54f9fa89c1b9299242 SHA512 c934b372074834f6e431349b6caa475d9d0bbd965cc2bca0b61f9515eeed4b061a4e03bdff9d2a022d0a544f5e7420e240f940581ba2b5d71a60415c2dacda2e -DIST thunderbird-128.1.0-es-MX.xpi 734908 BLAKE2B 8d14d27cb899177aa7686097082f272200ba0752d8d647d95d0522de1a13afcb664771595a6e7c717c7e4095fcd0db9cd9e7f3f54f75ed89e0da8cb82ac02347 SHA512 408ff492308efd61c45d1795927121afb55a3ce67952fa085712e0431f7907dba2c5ae9650252ebc7cb03665622a5629465a5412e00de55376c4b19ee8afe9c3 -DIST thunderbird-128.1.0-et.xpi 695961 BLAKE2B 9b7b37dab2d68ece3f37e2b02df025baaea3a5b50b4d12e95c1e6e78d4266bbf8df9b3b68b126774283d96ac5096271e3ad3cce73349602a713846fff7174548 SHA512 f5b6b548700060e1d15f4c82dd0ca7d1d0a49570ce2e151ed2b58e5983075b22151fd0a8343c18f386af34832b0ae773c1391a2078e8226ee4a086ba4685f3f8 -DIST thunderbird-128.1.0-eu.xpi 726476 BLAKE2B 2b902b56287e89d84ffd0d9fd1a6e63b2907efb1d3601a02e1a017ca604601a10617264d7e3ad91c70fa9bbf1f47ffd8a08bef9fbbc942e713c59dad8ce4d8a6 SHA512 79c3dc77cde882d5016a3823516f9834016da4710e4c51757dde40eab2c2d284a78e6f1c5bfba1c61e7506471fbbc42834ccedf4c0fc50e5cd3df22e0fc6f304 -DIST thunderbird-128.1.0-fi.xpi 731185 BLAKE2B 7ff004ad0ecd9e42aca3e1c3281332d385f206360f3e1b5f5ed46e535c84c7924ebbd3450370421b24358026cc645419d46d72829ecee499b9f14d1c1a7f34c4 SHA512 931fea98c00934167e4cac512f7f7673768c9d27aca8a759a9fb2bc17984ccdca9549b889ea567fcd09a806b4e607581c734fe7a3926f87d01b5f60da63b76f4 -DIST thunderbird-128.1.0-fr.xpi 768595 BLAKE2B 1acad47d0a7f4d774413549fcb2ea4b1d136b66b04832ae72634cc65a090ce7f3b46d27d2b4bd788f3ee82bf4b8e14d0d1b69f5939f082cc48711dec3ccd11ea SHA512 640823d3af3a9f5ff9b511f7bd0d4b932608fa7adb7cdc2123585a88f2b97bf6910d1c92e212985b9d95a59e2f146cf6027680eb46ff6ad7ec772f9c4788825e -DIST thunderbird-128.1.0-fy-NL.xpi 750667 BLAKE2B ffc6d83cdd6478797e8e2ac5014b6e1ed2092547ab50fa7fd1892babfc4e13943a876d7a5c29d38e5f102d81805ca4a2cb436b20e005c45ce1621b7967e621c8 SHA512 763220818b743754aa3133fe767445c157851781bba8c64f76a8e4f4010862c205db9a7ce0e270ff4173b9c2085139c866bc4ddab593ec4a0ff79794946aad0b -DIST thunderbird-128.1.0-ga-IE.xpi 614867 BLAKE2B 49eacb60fa3357ceab9175a404259d075bafc4e879b6019e0f25be042af547075376d67ef164b9af6bebd5c594d71b47a81900d0a5f887ad31e51c90860c319d SHA512 1ccf7ca908214e68b3a0af21103e693736132a1d6d47ea2e1f91f4a85ff464a40586d4421169c8e8029b8f4ac2950639fa59da57a97e774f79af4095a2a43537 -DIST thunderbird-128.1.0-gd.xpi 727476 BLAKE2B 218e29cbe07a10820bb96a279201a039b4d7add4f74b32868901c422cc5b9b0aca5cd0c3ae38ce5db3b23ed90ebb356a1f4acc8438e43c46ba43e63e0c995df9 SHA512 694d160559e1dbc2748d80ff4178d9bc85a2be213f7e8f735d5e9b055ed4d5303c345ea83094ece31d9791badba02b7cd66ce5b96d6bbb918504680eb40c4ed6 -DIST thunderbird-128.1.0-gl.xpi 736247 BLAKE2B 666685a452fe7f333006d14d3338ef5cc92bb02b571e5d835838683f21effbbd9ade4f8de4457da87613609e69677ffc0de3a5a6b9838c82a847db35e965a01c SHA512 0ada5653c2a3597fcb85af960eff1e5b03eda8b5c139d6859868bb7b0145f4690e5fe315015310a9ddd2ace4d7fa5b8812b60cdeb01b7cfff360127c3e134662 -DIST thunderbird-128.1.0-he.xpi 698228 BLAKE2B 1b50328e818c415c656a83968a0f80e54d31953eb019c4342c58f53af8a0a121c0a601409751e8f072378df55ed3d31706431523624ebe99a849d9ff4b5e9a21 SHA512 19b234ebfedaa5f777c376aa497e543ff7efb8be828f3a669775e0ac8fa97e111de2783685efe7084b83a1a927ad6491fe84838d9d7cded209739e7e82cc1bf3 -DIST thunderbird-128.1.0-hr.xpi 700181 BLAKE2B d5890ef09a657a52daad8e906dccb989f89dd339cc9c2cb8fa563e14dbdfe1e8a1a52ab33e56cf1d10a1e05abda3521d988ef4eac24a28bf81b0bd2915b2027a SHA512 23848ef1c8f6858ccf5c9a626688a1dd182926309922bdf7525ea64f6851deb941897c9f922758318e8b142e277802bdbe256d0328825bdeec8b0a382c58754b -DIST thunderbird-128.1.0-hsb.xpi 778026 BLAKE2B 5c227fd77f5cdd8052ebfd860be6aa9bb921f77a931d5fc7e3a95d8804a2e65ab5bcccf4a057eb65696dfc2762b0d07687cafdc8567bf615e47589a666eaf31a SHA512 7e94917addc059e475a8e9d8bd9ee5b21e51691cf174d2983a8423c1a536d238152075221b4b151c9e7cd013d24a454c077bb71956a431865c2fb47a09d191c1 -DIST thunderbird-128.1.0-hu.xpi 779499 BLAKE2B dae1c2e5fe4a3b458a06f9f83b73ee93197ddf40d762657bdf4e825d44df76ffdd5490982dd9aeb21e0e05e1ce4ea7f9eb8a2e49a058177310e1811cd445d9b4 SHA512 0cdec779a18fd00d756f08966d28b8d248c3b11bf609c465519a2945ff57bb090d4e375d415e66971c74be6bb0ef1cb6d2ee95fb9953135da411ba639dbadbd5 -DIST thunderbird-128.1.0-id.xpi 665685 BLAKE2B d1bbb000a660e2b631c4df4a0e3f6acc093a37ffbd478c5bc8f2958a760b4676f2b9f080af8ed1304afe6165e46e3d4a44103bdb39507d3cc70bcc79a1a98015 SHA512 5c71cfa4cf251cc6119aa6cdb73e8fa44150e4bb0d92019e0d7a7574ca1d7b1590f9537658c02db37db39879475790693cae39f30e213266db4fa230cc83564b -DIST thunderbird-128.1.0-is.xpi 742829 BLAKE2B 32b1d6d366e68900e79a96e411f07484179c8f372c337ed686b10e03f16ac38e115b5779b284dfc870ba5083476188a9a1667440f6beb4d2c50b83c47a556129 SHA512 f11e92712276dd60a89b925333d5f7c67436bfd484caf7ad0d7d686550dc3029f1ed54e78b8b3c10f16fe7e373c6fcbab33c568e28ae90c6642fc0f69a1d72b0 -DIST thunderbird-128.1.0-it.xpi 687789 BLAKE2B c0c2af40fcefa52bba67a72250e8e6a5458bda21132d1d8173578a5da90cf2b406c027e6fb81a407a7b6a5d0302d22008a0d5b35c426fd42853c1b713d2847a9 SHA512 7fb281de4bc7758ae2e23cd9e4dfe4b4d2c7bdbde9af8300260e66af7bae01ca08e175de707601d50faf5ec0ae1e8e86c70820346a69f7cd758b139a93aebf9d -DIST thunderbird-128.1.0-ja.xpi 818059 BLAKE2B dbf2a499d6f72fc856a352cf7501f8b5bc86c1c81d5a7fd078f00eb33e0ef52e352673dd09165912a3fb1105fe0ef603e61c58018bc043c860544fb703de2cfc SHA512 29b94518eaf999128353a7300d91a93e47bd2fa1205d4f2284fe6d5bdb31464ca02abc154945c2be94129b73cae6961e1836ad566397bdc361b17970c1a7e151 -DIST thunderbird-128.1.0-ka.xpi 795720 BLAKE2B 97d00c3840046404b123bce0c83a1a610a13c306453fd9b271a1c9daeaed5538a75ffa914a4184de4e98ef111ec27e01525b428433711ab84396232e60dc1eac SHA512 61f13f9ac01b413f6188a3e6ddb16e9a1ed3e54cd9a469aa03611bf5062415c47652072c29c5553e18d0cc32c6efd935b4480089ad2fd0e4b44a71215f073064 -DIST thunderbird-128.1.0-kab.xpi 731531 BLAKE2B 0e366862f2e0e32952b655a736b3c3049102ab01fe7e2132131a4852af3a36f68797aca2c802db831caf23beafbc8071b45fa51f2c6f63283b21607d19d01237 SHA512 3012446290bca68eb9f66b2cf0bc14bdabe6ac7dde5c8e24938996813063f141831f24f053d22b30cd93e0aab2d13ebc6d400ad8d4aa1f4ee78c03ffb2067cce -DIST thunderbird-128.1.0-kk.xpi 854777 BLAKE2B 53804b73786a7af6981c78107c7910c9819fb4446bbd6ac7c7804c72f8d40f5b8786d6fe3f7b9483d8d127ac8458054c3d521557eab89da5bcd9ba824c60038a SHA512 d6ada776f7fbed2a31e3bd7cde6be0ccc8b174812ae9cd9fb9dffedc3f918dfcc49447384ff5e84fce8503f7069e66f05cefba9cd3f7f73334849d7318563608 -DIST thunderbird-128.1.0-ko.xpi 753028 BLAKE2B b3d938e06da60374d8c27068259a7ae1dabaedbf82f2491450c6aeebfbc16553f424669ffc9963bfb51717ef62428b5d00e8d4e91cd6252333e19b56f58e8f13 SHA512 1bb6c218a9cc35d0520a14523e74bbb1ca97d318826e655110d44b74be15fccf94016a4549401e8cdd3bb33daf9ebe9dfc313ab13d71e28c3baef511244140fb -DIST thunderbird-128.1.0-lt.xpi 700593 BLAKE2B e1da4886611face5e07837328aeb47898c4d579d07278fc161fe9c1c7c9c5027d8e6f062262f5dac7cc359ca51fc8f7fd5f871bf1d4c14b2bc09a8a6c8a9d827 SHA512 cea2b8762514d45517dae62c7a08c5e5a04ed4389c41181294942751a082ae307200d9973c5e04e92c4aa2d203da13df17bc75333ba63994f25fc9cd3f0d3602 -DIST thunderbird-128.1.0-lv.xpi 621076 BLAKE2B 8086c6a47c6b7d637c6763fde202e954e618bab8674e2cd39048e87ff2b1a97980af12fa87406adb32052b0e4bb284ab6693f5193dab01831056540c6c11964b SHA512 4872321fdaf659df69f7f5eded5e19744e9a30e3862282e421a65f2ac028c2fb1ea6588d8f7495176553e59f28b6199f2d0b52ad58076c76d732de5ffe3dc65f -DIST thunderbird-128.1.0-ms.xpi 580756 BLAKE2B 21005051c69b20b89885b8229ca6ad35fb141a913455c4531bfcdee07775831b2b6f03c77ad9ba46ec1c13cd815556b7ee88ba863e249377078f47432dd18af7 SHA512 4f2d4be2a2322d887c6bc0e5aa0ec93f53be584911a9500fee0be370fee3d27d38154418a150c0862c06b31a29cce53659a607100fed61b6c40e837c29e84757 -DIST thunderbird-128.1.0-nb-NO.xpi 702089 BLAKE2B b059b699c82f204c9d1ae64da8f64e994175cdf71ffce1d0c3c0df7fc60e57b3a27a540ebb5f8d79302df77bd90cb790bf260f360a721ce4f87cce4d16edac2e SHA512 843e8e80219937453e02770b49d719c541e85b96d41c8006bace0835b32d641030eea9f164091059712f5f34c9cfff39fb7e22a4cef2604c83c056b33bba71dc -DIST thunderbird-128.1.0-nl.xpi 741945 BLAKE2B dd6fd487d889b5cf8de5e71bfcfac2f96618b7a31f40fc9339a803ea5f77a47092c3589a03182220aa520b22b962952d8ed18ec041a58e4e13a0ae25636e7e09 SHA512 122438cc88862b51a09b12b6a06498ba55c62c6e42732bcd9d7a091d47394f5b51640ae0bf624a61c1a16cee0bdcb30cd73b209ba9d0e9248b29b1e606127914 -DIST thunderbird-128.1.0-nn-NO.xpi 721389 BLAKE2B b8fe95b284ff3cf3144638d6ae321485ece49d3d9f1a9e2997431ba78da06302055d63848be12a91e357cc7e93fb20873c955b85d9ac4830291246451097e840 SHA512 22992ab7d7cb8475bd19c979dd7ae783517178430d6640e6908971dfa58d3865aa4bbcedf4771f598088f38106bc7fd07dd90c9e804fa8764d1d72a66c309fd4 -DIST thunderbird-128.1.0-pa-IN.xpi 681221 BLAKE2B ca892e4e3bb05b9fa715b674c45247078737d5e0c26086ac3277dab9ca16d5627eeb8ef97c5e8e9df7809019b9c45fc8fb4e0550283695c9bb658cd6f3b408f7 SHA512 90f71eb7593aa118b332dcd6ccc7fe429656d7b4d99934151e1780a80b1e091e5bb8590e9d27ed402d40afa8230fd86f18b6c968d456bb4a1c2f7331555fbdc1 -DIST thunderbird-128.1.0-pl.xpi 760886 BLAKE2B 65f07d12c5c02b0aa6755f10aa094b2ef469dc22206e438923b362904f2b9f11d7ae80c8c543dbb1b0dcd20753d6a20827bdfb39bc3140c9b89f1f8e07e7be0c SHA512 2217f1184de0df3dc8a45cd29166afdb48c63ea9ce7a7d32b5e82051c165fa3e56fedacb2fffcc2bac180ba8d918eafa5470bbf7bc8f6135047b5c038c90fa12 -DIST thunderbird-128.1.0-pt-BR.xpi 749077 BLAKE2B 20305205b57dc8c9e11dacfe45efdd28337588467c9b9ce6c744fd23361db6bfad6d9201745c89290d54e7d360f98ae5e7b724ede296795fc6638217e7595215 SHA512 8cb8b95f11aa01abd83d15d282c8f1c380d56c58b78c42eeff6f95dd005eacdeb6882823022533b61d3a24f41bbb4f7c8ba89d12e9626da5a6af7f37baaf134b -DIST thunderbird-128.1.0-pt-PT.xpi 744905 BLAKE2B 92554593128a9854943d0f71e9e21ba9c20b025af226db4c52de6d6047d55e1dc3393e7bf480e15f611c876ec630e34d29af11d0a6f196fdd5cc28721add0d2d SHA512 74709c3a1db8c1bf9ae1c856d82e96a56652ea7e0b0efa5cdd9d614e229947e71c71552f85c59040dc7b4bd147be9ee92cf5199d75b2ba855033951cc06aeec6 -DIST thunderbird-128.1.0-rm.xpi 746019 BLAKE2B 30ef13abbcd6a03e24e46f668457dbe88db572e5717ee8bb0a21dbf64beb8e4fcea74f7440a880d6a117117ab69894d8e11c14d9653cbd3f3b913a7bfe7ca3f4 SHA512 af0bbb84a7a64285cfb92b75d922135ccb05fc6ec31baa8009cf114c1bcdae1ba2262ce8686906003f8eefb30df452a15dd7bcc129a4ffc903a5d494b961f3fc -DIST thunderbird-128.1.0-ro.xpi 669415 BLAKE2B e2661774cf4897573d15ae9278ae309a5dc2a15a45b2ae95064173cfa257846beacb9c2729ede9bb72b937dd3ef8244ab9ba24b8eee61dd4901737e5eca2006f SHA512 c177f4144d18be994bac066eaac21c3a3922dd35bd9f9e53028717d537e53e80fe86b753cb80e570415118fc47cbb8bc67e0688720994a6075f88f1a91ef1f68 -DIST thunderbird-128.1.0-ru.xpi 869727 BLAKE2B 5ebdb26c6fd70dd9f3caa5eb4e79b6999f656f61d37ffc8bcf695c7bdc6b91a97859741d2cae5737249b355b3105a6288563b02d6eee7e1f8bebfac8b6a8ace0 SHA512 cc58326e95a5f8f631aa208a8776674db4b10858d7013fbfe71923896228f191f7024d349fdd4b95c8da1e1b30fa7d526eba1cf8dad6c7775939918e1068ec3a -DIST thunderbird-128.1.0-sk.xpi 781707 BLAKE2B 7656c087652f0973d350e2a819c7636888b0284ccdcf6ceff445a280e27819adac98f58f24b3c89c322d58af355b4409269fccd10e3e642e6e6ae4f88cc0600c SHA512 477be6f98276673a9080333641e694ed7f2db2a31aafcac4602c956320983f18684442174e5d38cecdddf9932e191e944a560bdf640aa00d4a5eca69f0f5523c -DIST thunderbird-128.1.0-sl.xpi 742773 BLAKE2B 9cc95282384dfccfdd29e11c0d8daab8e8bbf6c5cda5cf203bd935a73cc057e654e62f5f0685b12a2ba5b6b3f9841f10a046130d5065045d04f81c427ba5e0d4 SHA512 88f08d50b2f0b5017224c5095baefab3ae53a7fb43aa8342467d6181831dbc6fb5954e2381b5ad77f95d4277697ee52d6870257740ce8a8862184df863054bd2 -DIST thunderbird-128.1.0-sq.xpi 765336 BLAKE2B c94623e026f5b3a9502cb58e331794c55905e127df1d8644eca558daa52846b7c9d2c44c66e823a49c172617d67142bdb44315c6e2f0b17132f7ebd97e17bc45 SHA512 ad175048442c9cc247e77b26b42086fc53aedca896c75eb100a68cd91726efa793a99d656c00a62e7018c077e8873c5aa9110326fdf9694a1e3be592be955386 -DIST thunderbird-128.1.0-sr.xpi 770680 BLAKE2B a79ae5298d0fff9cad921a6663972a17f6c14b5b1123faa70bfa79e1895bf66623f21677438a381203ee5ec0477b6028fe455565e414bd9adddab12dfaca167c SHA512 eea635139bff898ecb66fc1b6b21980da372c14c4b91c00623305d85b20dfc3c9e7bb71569e2ffb32f274fc1b690fc4de549df3a9039bdf816d3061301f99763 -DIST thunderbird-128.1.0-sv-SE.xpi 745369 BLAKE2B 4bb35909a2fc1b651ecfed309171e4bd73b29a75d28783ba75862ca397ba4f634bd7ca206632d081a26888dd12840f8bf4d1cd3d10cd83ea557c72ec2f2c1bc1 SHA512 16bff9bf69419b30071765e4a6b6a666e854d2042410a290bb3cf69e32c2d88293cc7330757b0ba2a6ba4f6553e0e7196bda9fecb2e3a4473c9c5f81d3078076 -DIST thunderbird-128.1.0-th.xpi 810985 BLAKE2B dbe0a6801df6d406327377f493f04ea8c62a135db98b71681d3edde1c01431b0b3848b1fd03db8de5a55d3619d9b02b0ed1748cda2e85d0d109f1eac2d643a98 SHA512 61cc4b9823cf7da275d2d1b2d8cdf013f85b2a507f22c94c395abec1f052f2483da449ae3b9cd3b1bdc1312f17d58c88204f6d0fbfa56121a279aa8b48675a16 -DIST thunderbird-128.1.0-tr.xpi 755927 BLAKE2B 29ddd5bd5979e79531612fe3704afa2f5443d22cd8bf79e0c125fac1316f53f1b46c61de99b6aa792059bfaf8313a04af72ce96905e46dc0d56ace6aeea704b3 SHA512 b205d12a9bba26eef874fc1dcb50411da93ce80e6afaab1ff5b26998218ae2c2224b7524757b87551633fcd73d07692efc5aa8bcfac65cee0575bc3a0d9e0d11 -DIST thunderbird-128.1.0-uk.xpi 855730 BLAKE2B ad8c4cc442b6a733a0cadcb1eefa52a36fa7b393a9a7daafa44563bba1aba5912c33c140f7899578d3cf7bcd10b6af1482953952ece3c84e74335a8c625b1adb SHA512 b1ed242e48cf50b9cc902508eaee367e6192fe7347ecbffb0740ea8482433cf67f77eb8ef3c7f50e079f0aafec0c0f60d118b71e18e69ed6416ce643b5c46ad1 -DIST thunderbird-128.1.0-uz.xpi 591808 BLAKE2B eec16355be449ee03382f1d0aceb13ae4eced62c1c26a4cdda38ff92fcdae537064b8b8bf56f84cca415bacefc64ce370cf2fc2ed64d7c420d6c2d65f6c09579 SHA512 f91c09250fbe29e6eb5271da72c6affbbcc1c0680616a5a6b4e175ab247157908307c6d85f200ae8afcea0bb2495d16f950045a393b668516d41c6ae32671125 -DIST thunderbird-128.1.0-vi.xpi 784659 BLAKE2B a5452b16ff2c77537db81fc43b06969706ea5bbc0dc9ef2815923936d86e36f69ebfffad039c44e8fd1ab1ee29fb7e088f08193a634af8a53c7e3efda54cd3f5 SHA512 25c8fc8b8428d49e1e5e97231c00e4c1a864a8883c6f96f74b74e07d09a8448b90289767a2968fe58636db30e92af8e8f874ff431b97562261f0a855d3e3cd3a -DIST thunderbird-128.1.0-zh-CN.xpi 784195 BLAKE2B 8431470bf86b0ae14013c46fcf52335a1f18240a8c27d52f2d3b2532d6cde2d75ebefc1b25f8dce4cde0ee95d6d92229c57b6dd82551fcc31f5a557f4e3c48ca SHA512 fcc3247cd35392d05a2bb7c6274152a5724e8a96180c652c5978182f24ae19b63e99db9285687fdbaaf609bf03f2eb014891f218bdf6bc4721e4be86b6602af8 -DIST thunderbird-128.1.0-zh-TW.xpi 787478 BLAKE2B 808f24ea4c0be1ea3d66b1cc10c887b201563a2a0e011529d4ae4b2da63ed3d43a7c27016a989fab67ac819ad685c6c4089988946afa821ab85850d9843be49e SHA512 fac29119ac494ef69432a79328c507ab3e64a7e94efe504e5d9db24c01d6701616c90eaad2f446e1099f954a465f91eb408b82e7972bf7e99c4fba74d3612352 -DIST thunderbird-128.1.0esr.source.tar.xz 677372864 BLAKE2B 43afab70674010ebc0839eacb513d031cb36b7c2dd7bdbe3d1096b9b16ab82e36c6d45b638e37b7fa6b6c88b1ab737110512ee17aa0df2f5c827d11ee47d2fcb SHA512 cda64afee45ae20a627116f9475cc4421262db40a7efa09eeafcb6e96f8fad97e8c96e2ecf04466ac4bce99fcebe0c3ce9953fa3fc4f5a92ab6f60e122f58c9a -DIST thunderbird-128.1.1-af.xpi 530026 BLAKE2B b10f1d8efc346b3dad5ef3a8d4c81f354d00a69751039637a3a2ff0cb5610f3c187d00b9f65f681a8f1480011ebc42645594cd0530c785acd0dbdb835190c0c8 SHA512 679d037b130be9f6463609d4268ef3b3b40c9efeb308f12fe3865870519c2a6805cb0c91b8914c7752d22fbfbfb9a7743ddcf1ff3613de8e732df61748fb6a7b -DIST thunderbird-128.1.1-ar.xpi 679533 BLAKE2B 6550a043ee29c7925373ce150365c975879d2ca7a12b0a65c8765e5384916afab849e942ea2be02a1e00b84bf93ff8112958d5d1bc1cc050bd31a217a0c09f36 SHA512 335cf6164d46f826335eb553c61cababbdea524207c8cfc60998136cd96406ce2f37c11221a6bf96b3c6fdbe38b29ab20aee451ba2fc3de373175dc1f7dcf2d8 -DIST thunderbird-128.1.1-ast.xpi 560728 BLAKE2B e6b74839085027038b0d0199b5f075dac34814c06b89aefcf8b39b48e6ba26864045e8d42773e282815003718341f207ebf240f263ab5fa759528ef4f1e90f7e SHA512 e4bef426ebcac1e86ccbe9d4a1a3d69c5f367fe724ee403ae1c580517bd27802fdc0bf730bac73a8e31f5b47f345f69446cf6404b94665166672c85cafc3bcbc -DIST thunderbird-128.1.1-be.xpi 753253 BLAKE2B 58e6f0fd7768118bfbd24e5d79dc41d88e6363fd60e40bba5d5353fe02df05b98b121fa19be8ed87952697c9f0aaf432c214ff538fc51052cbabbe1074d68272 SHA512 25bc0c4f792615f73a4eb9fd54bbd03ae1a6fd2fb2469fa8e301e5857eb9a8604431dbb73c5ff62b1c6e8bb01033822d78f94d25d017d9607209b63e7b520619 -DIST thunderbird-128.1.1-bg.xpi 801173 BLAKE2B 29a8a8391d8ddc19659fc680b28e352300354100c74186358aba3975c36acad3b9da9dd3d5b5be6e7689ee3122d527a84a26fc81b658360767cb0f40a2b9f60e SHA512 5d908d068e312a9c5e0d7db124d704dfde20e89f3de62b5593cf822f2b3caec37ff37c2d6ff42c62aa50f9893bd708b4b3235ab33797f7418b62e58aa3ae9805 -DIST thunderbird-128.1.1-br.xpi 652151 BLAKE2B a6ec3043f58a35597f03b3b5c61037903903c4e9ddfca10d5c193a0bc02cbb730ddafbe28f892309d3f91e5d593ec01d8f041cdaaa900ae528e22bb358757986 SHA512 86a7b76a80834845eeee60114d69dd53606d3105ca6ad321988487dd7ddc506fdd18dbb033083fe0863c402180267b83c2225ab80afc82aca2ba4d479b990e11 -DIST thunderbird-128.1.1-ca.xpi 707977 BLAKE2B 632577f29990968bbe422a1d348f581b68bd01c1fc8ddba3a73bc932a852e3cdd7b5217522dd8b3174eae630332f32b10f8d64229e1cfad1e5067e4726280bf1 SHA512 5674eec4fc407cab5b6ace537c21371d6fb107a7741823f043a261aa1295fef0fb6b69f93b2200b17a0a17f74b309a6004ca4d6a590920ae80b1a87bbc16b993 -DIST thunderbird-128.1.1-cak.xpi 671378 BLAKE2B 4c53064aceed14507c6c27b89712715a6409865bd5d6671068e8ca0a41f4cffdc2c23df26cf8e52b4465ca970373d7e7bdba1c4bca104e8cc26aaa95ae62cfac SHA512 418e0985174dae5d0de1e56aa730f4faf2dc21eebd6d38ad23d0abcac3e481b33e725f91bdc1c33643e119fbef986b8f0458b23f8c12d312140de6567ff0e2aa -DIST thunderbird-128.1.1-cs.xpi 782657 BLAKE2B 5a35a51a8676e73801c99237c863f2234783a52867e21571f92bb231904c7082c672cfeb92c76a4c3fbde9706f3f160532508ddee041a52bb9be50f37a0cefa2 SHA512 f72a1f61d868f0545176313f02700c9f4fb5bab44dc0677642cfdc695a73c2acecfdddadf7a61bdefdda5cc9b74f7800c5d11429cd29d68cbe3c2efe876727f9 -DIST thunderbird-128.1.1-cy.xpi 745992 BLAKE2B 146eb29adecc9be1c980d1e74a5a9f398abc528c9a1bc785770fb4044d20aeb725ef8007556aa3a1b8b1bbb1afb66fbe3798f1281266a59cfa943e190f4888f9 SHA512 ee4f973fa8787a859471e38125100bdffab3b7dc35c46fa3a9b8abcbc0a5cc77101e80f3e6d576da2ac902dc46159994a5dd5fb49c5bef7d78262b1ecccca17a -DIST thunderbird-128.1.1-da.xpi 732218 BLAKE2B 6675dc577b16be547f7e2d0632309cf474db772be9716d6a28d8814c4a0af4501210911c8186ae96c0f02a0c674b14748f6962bd98da6e8487e8442daf305081 SHA512 6b75f206da06d914af402b66dc88398e547a7b9f2cdce2b5b999c22d9356d210a0f3da130d2cf333fb0bdad650b89e17f015293a9ae8d33a891459024266001d -DIST thunderbird-128.1.1-de.xpi 763095 BLAKE2B 75ba72464cbd9ae75638dcfb59bd0064232518d1af80dc7be32d4ffefc1275c4c5641264620565f4582d03e958f8a37c9889cfcef7255a01624fff9c089b1cf9 SHA512 4309d01ce71ac8b18cc1a885225ad2bbc6cf9e8711cd6f196074d13f97c18c354ec364526bf8883227d1c4e7cfe67b0176a83cca9a3eed133eaae5bb2c484fec -DIST thunderbird-128.1.1-dsb.xpi 780652 BLAKE2B 1af80bc4db88291bc567bc2a552773498da96b15ce609450ed2c8d326e368d7bf3c796eba3e53312ef999acb72cf07144c916433e1bb5c4262e8fd03a4d4fe33 SHA512 cddbe93033a78450354d4d634a4838510704c21612605fc66878dd7e18a15dd8e086369208d2ed2c982ee4ed47374cb30e22b2975d936613dce5dd810fd8b135 -DIST thunderbird-128.1.1-el.xpi 886743 BLAKE2B 800af0b6919a3527c203e0fc46f2d4cacbd85d09b5147999a627bed60d48cfde4676ed460f7166d0e165ade6e2fffcad916912f4a61156ef3e917be237a213f8 SHA512 eb917a74dc9b7dff0364dd6022590236975fdc4037b276388f87589a3263a6b060af2767b48be483d258fd76d6e1f249c5e3ca01d8688c8c41098c3a6fcfc387 -DIST thunderbird-128.1.1-en-CA.xpi 699939 BLAKE2B a297dbb9525cee90345eb29922c5225a376202400351a49534ddd3aa4dc64c489e5a005ce237acbb69bf7cb98a72046d982943c930a8b65676b97d9782771fe5 SHA512 03c8c50b015b5dd6aed624a1f66079972f092dc631ff354aea6de0977384785de3846f676dc702d37ee2b4d2a77cc85b8dee42134396ebcffe46fa56276a0124 -DIST thunderbird-128.1.1-en-GB.xpi 700796 BLAKE2B 97a96bc346c40e4a95fd93b08f3cbbd21f2c8d1e73e22201f7b85da2935d48a0680de0c91fd5c3ebf85cb0022463109afe63d5e915259366157549678ba0dc36 SHA512 10ef391e86f32478724bcdeef5ba9775f37722a7a01508ea3616e223836a7e6a80a23b7f1546f1b11b925744b73755839b5fa69fafe687f0d4472a374dc3eb23 -DIST thunderbird-128.1.1-es-AR.xpi 756246 BLAKE2B 0a6ab1d246747de2a04237019ed89a4741c6aefb218be4c2b1420a313dd40feb2a44e96b834230c785e1ceadd8530fe58602220989a4ff7a999fb28b9cea6a45 SHA512 3cbd0cf639c51714fbb4102d98a483f6c33dfcf89d0593f895f915f5f4ad40e0612661259189a9f8a090a516b797f5c8380f701ea4e29d5deee5246558db768c -DIST thunderbird-128.1.1-es-ES.xpi 723185 BLAKE2B ef4e0440ed35de9eefea226d9f06a325b8250a207eefacc4669bca902e876492d337c196abbafcb3727b9db49f5a3f8860f37bd426c86272e70bdebed2590e73 SHA512 c421410c7b004b2465dab37bcaf4f4e21c14009faddd3c6c2cf74980dcd85a0b743b42bba27077b945822fd5691271bf0cf86e945f7f0ac1d17a2805e39a44a4 -DIST thunderbird-128.1.1-es-MX.xpi 734910 BLAKE2B fbd4c41700ae669a79413ff50f29708eed5d3e7b6dcbabc97be83d3a1e7dd20a0df949a437ca29b1ad2ed9d33933cd97a741a2dc0bacb0435dfe9dd5cac5ded1 SHA512 a819fcccfa9802e4314f57cb4c84c9afd398701fc7a916ad6326275207ac85dd7130848de2475482a33a43577c095b2895760ceb6a49aadc228098a8ea09271e -DIST thunderbird-128.1.1-et.xpi 695922 BLAKE2B c8aff7ef11f36717fe7c6d6ec26dac1254d317cd6f2a2b35b0a4aca6e3e4f13fa8fb6add6e68fda14b001d49ef5ab112d237c2cfbd521b28c2c4a96293a3b58c SHA512 169dec6011581d657a8a59fea7ce9fe08e1535b58eced80bd364d54be7e26e2b4f5ff7e96823eca669294a34df0846c80585f29eaf60f18e533abf3bfafbadb9 -DIST thunderbird-128.1.1-eu.xpi 726477 BLAKE2B 7de427d57fb0bcc1ae3c72ba919896d1c0d91fd456839df17d174e8518d683d9e598069de030d9adb0c2db4d0c34989b7018609492aaa143221c00b95f062fa3 SHA512 b702077009df6ab53c5d739a68f73050f9a19eddb69dc1d5a134b23046885b69960de0dd72990c1f5615c2fa7034e4add13f7f71ba0aab2b62ed0335ef6f2b67 -DIST thunderbird-128.1.1-fi.xpi 731186 BLAKE2B 975f0751f0e6171f614c1673a06b8786880445bd4dfbaf49312e925fd7fb38e2950886f1053c1a6b4af41fd0cdbb17ded7057bae14020a87264befffed163603 SHA512 be2d3e25b1aa95b3ac4b14941b6b928575eea5ba3a07bd058fb26f220636601c69cd869db6452773ad81113e7bc5b24b1b9ea3a649098128607f1145528257cb -DIST thunderbird-128.1.1-fr.xpi 768736 BLAKE2B 5d130b41617e2394fa070d57824cc88121bb917901f27da43f70144caff49d708ee9abff1c11cde7d0136fcd06c1d7acfa2f0ab4979bb6cb6389affccb5fc928 SHA512 bf4797e981ff74dbb7ddab51200d88c633ee5f9caed8916fbae00994f0adafb684f3484459f8485f585ca6a502811424bfeec95385b77a2c2c3930950c3ddf0c -DIST thunderbird-128.1.1-fy-NL.xpi 750791 BLAKE2B 218f3e40449f782322aa2663ba0341a3f41ebb8fbcc072df9b5b2f0b531d2ead49b6b0f04e18fd498ee29a723e9fd1cfded6b57e9784b733e6c9f2cd46949898 SHA512 5b14a30d14cc3642266d98bcb57b61a6ee40008e984bd8cdd846d08749049dc67c8070344dd4c933978721112c357c33c8ea71eeaac5b48b87a73ff9513a0f28 -DIST thunderbird-128.1.1-ga-IE.xpi 614867 BLAKE2B 0ee9858b27bea800209d4c4900ec4e4cbe8ef09108d8a4b164a5acf4f18f1380dd3adcee3282bd418cb9c0feffa3ed8691b527a1c3580adef15d01048f560664 SHA512 499b857e297b45a62f6833a86621c7803f7ad1f31d1edd3e7262ba6775a42e01a8d65bf5a68dcd8b9e479a2c2f01bdaa73b5021f0d2c17d98394c366b875c51e -DIST thunderbird-128.1.1-gd.xpi 727477 BLAKE2B 9e5ad9945682f06d9210589a96dd69b1a6ca578b4df60728a4746b58dcc157efe0dfe45dc12286496c36acca29f20927b4bde064c69b44584481dc26e4273fc9 SHA512 cbcc83a9a4ce3b46cac945f2da3c545522eae7c33e855563599850ad604937293ffdf3ff86b44e617b3263372a3a612b9de84a5800eef316b36e0b54296e1c19 -DIST thunderbird-128.1.1-gl.xpi 736249 BLAKE2B 5fa8ddbd41f780b2e37fe07cb8f0c0c41043eda1b041f2d2b35937b23d70864bb7c8350a924a0ddc5523630e2017fe699bd51e4d176e54b7cc24988b9768863b SHA512 12604c11470bcaba80a0100e422e634c380101c093b4f9b2967684edf14b5a4b7c5b364cb974f17bf50a8966051289a8438861b3ba6f244043d66a13127b644f -DIST thunderbird-128.1.1-he.xpi 698230 BLAKE2B dc7169581988aee1385b2bac5d1b57d1bf40b8482ca833c7b1679271504e926161e204afa5cb715c47b6d4a17dfe0d860d1036a4464d1c532f622da1f6246fee SHA512 4af4ff48ba6e4249e9ecf8f9b95984fe5e4a4fbf613a25ef38a68a9615f3f7f4ad753a95e0a57b61341f9165ce2bdc0e12dd3ce8957868e6eeda9d9909166691 -DIST thunderbird-128.1.1-hr.xpi 700182 BLAKE2B 5c8bfbe9a95043d2b039d281552f5d92e33d1bf97ac1e4fb3b8895cdf7bac71ebc1d576c487f25c4a514ae47dc05e9fb56efd72f5de9e6284ca8b288c48bedd7 SHA512 3a2d9605a023b591d22d5e3da4bcd008f5029aa958057fc3bfe22637fd807663f9fb579d57543e3b8c52f4f62b00dfa02b41c1065af7cb3493d90675b6b8e2f4 -DIST thunderbird-128.1.1-hsb.xpi 778161 BLAKE2B 41c7253cfb7f12403ff49ae2bf9b964e8402490b715e2ac4b563a5f447b7e63419cbea5375daf84b4abf517ac1f7ca634919b04ab61fda965e7c458ab790fec1 SHA512 751eede7bd28badca08a5cd5cc0d3261ed006113bcfae3d2593e9137f988fec551815c075b1fe93c58fd3cf79f600a5f1cb9cb09a873b00baf119de72fc146f8 -DIST thunderbird-128.1.1-hu.xpi 779502 BLAKE2B 0e81476f314d73a9f7f7192fdaf3bff4520be1a335cc467b3dd76b97c79831b9e740d2054c10d797dd29c9f4516202d98df04cc5cd8c37195517db2ecb505c9e SHA512 a2d3dad8c13cdd14d5bc3bfd7fab60460d49c5875ab95c206b9a3620aa9c705c3f7dca4e5403a6c9bc9fd3493784a7ef522807258650c118a23482b33e5ffbdf -DIST thunderbird-128.1.1-id.xpi 665687 BLAKE2B a370ce9bc99c6f7170536b244cf972a0644322ca80441deafd6e4b891888de6ca5abc36d3698df35974eefc0874a7c3aa773efedcf88deb841f968fd0fcf4f3a SHA512 31d30bc4b143aacb0b0c8ee00cd3f377e99738d040cbdf7f3dcc126605d113e45a7cc0cdedd27b233f7398a728ea59aceedd06227d9b9bb9235a7788e1846ec5 -DIST thunderbird-128.1.1-is.xpi 742975 BLAKE2B 1dfaf9e04f340cf0cab4f6f04f863596c2317b3d4d75959637eca09a594c91af8b52843b499fb76ad61c8a06c84bba608c81e44cb66bf69024448592cb0288a8 SHA512 cff944013c69d3b26c5ce6bd25a2f1b8580c663978e491f679af9c73f0a016103ca398de2666e96c926ec2d5e72edc8986624819938464d57a7cdbe94d0d7954 -DIST thunderbird-128.1.1-it.xpi 687915 BLAKE2B f7ca29996141885293acbc6d858ddb03149a71357fad82857a72b04bbe6539265c502814d9d5a9920ca95cdd6c5e937f1fc43611a2e9024aa50b3da891d5c5bc SHA512 d10f49dee11276d9639b73506f061295aaefa17191610f2bff02f7bb0f018d9f9b8f0866b79a985ea4a539dfd13ebfe8c866ebd2933760becda8b12b18fc6ac7 -DIST thunderbird-128.1.1-ja.xpi 818061 BLAKE2B bcb43287b9c7bfba5e0e71fce4b3caab0275e623f61202b58fc59523700ef9ca3f828c0c5f67a2ebfd17f8f36f9a8c18e7814fdcf74ef9279f77472aef63afa1 SHA512 0220377c9d3bf899c0424054faa22ae7abe9f83f81f10a04162052e8de51cc82b262ac788a89de232c3b2d174afda71ac7279778f0a226567cedd3b4be040b94 -DIST thunderbird-128.1.1-ka.xpi 795721 BLAKE2B bf42fd4ebc612764641fbbf3cd17cd21364866716a52518167c39485f069553ab7fde3fc46d996275b01c57d4098f43389b5a4158b9bd3ed9939b38f45062086 SHA512 bfeb4d172bb3f5f476665c44efc5373f8147d7b1c0f3eba2de53e7e553997beba553842f901abe6e36c64bca18e42cf7dd31996ba9861b82063fe2e259aef38c -DIST thunderbird-128.1.1-kab.xpi 731533 BLAKE2B c43e8ec8a5ba5429a75f58c86a324815cbc587f571105881f173d7631dcbe3d49e5ff0adeafc9d50a1c945c88406b1475763fa054e8bf96335fc0fe6f89fb1ff SHA512 558c8f8b77c900a4bdfc61d08ba2d587fc0f9ca603f1bfa775741d4dd64f5dc76354764d23d1cdfd523850faa65fc6d0a6d1c5016d5833835f48b0c8227e556a -DIST thunderbird-128.1.1-kk.xpi 854920 BLAKE2B 2aed0ab08746bcf154512e4fab1d8c8b310313191f2127a2aa4cdd83efd7ebae31f8b3b25a2fb9f2cd803edc671a08543f06c9e4bf13cb2861c62225100b4ad2 SHA512 b2bdcc0b641d7b94935af19328a5a5c5dd65b3cc015637efe360b775f04d68e8a4c59530f406fc123c4123c1a632887af13f43e6b02b1d258c9830526a7d4656 -DIST thunderbird-128.1.1-ko.xpi 753028 BLAKE2B 73fb048cfbdc3b22592e5e750262067c13113c4e5b1e2fdf1edb97bf23f12c530387fcaab1326ba6aacf4647ebf9978c0c4fb820b4ed56693fd479f54731c12b SHA512 b0430802e0ff41f0af1e974a087f622505242f9bc080d91e93cacbe3169d52f218c7639604624df4a68f2c6b3a40f3dd8c8cfea4227ae0b715477e986084a0e5 -DIST thunderbird-128.1.1-lt.xpi 700595 BLAKE2B 99ee7ea617a3e24050e73833cd77bdb0f9d4646696b858b92dc944efff0825e4ca6b5961731359cb9a1bee9ab75943019b15b6e4c1b5f86087278a696f4a7f60 SHA512 aa5825e8ac4d17b6b12ea667cc6eab4b6153ba5c464a4b7a6e73d5051dec002b85d54bd3e52dcb878851c15415ac013d4cfbed874b05b7af8857f6c489a66f5f -DIST thunderbird-128.1.1-lv.xpi 621078 BLAKE2B 1755014f6d7bb7536feb89b7fad3638f70a63e2ec05393f9dbf726776e42476a31731a760f5712ea1ddcb974b70af00132d02826f37de9767b3a34dc7ff59132 SHA512 64c05f6ef2f9e23f9fb35ae0ed423cfdbadb4d7b4d47c8e72d7ec1b1f103b5abfb88667afc85b9d1a7e4255a3a1aeb6cb74ba9da6196f23ffc9896cd4e6a90f9 -DIST thunderbird-128.1.1-ms.xpi 580760 BLAKE2B 49d6f88d83f6725de4d4dd068becd3f263e74f4325a0084666b0a9af7c69f31b9160e17b248463ee74f0789c59b7125d1273e3c92922aab28762dc6523b89277 SHA512 02fedcf89aba12b2a47ae553efa63dc1df8e0ff6797978c82c89a0faafb99730b2cc99006c294b00194a0da0c948bf86d0f646ca9ff258d13cb672cd6f0f1190 -DIST thunderbird-128.1.1-nb-NO.xpi 702091 BLAKE2B 4f2d4c9863b9e22f0045c932931a607dbbb484548afc2b271a7eb55e9447c8107875bfa6804ac30c3226e833dea8c02e5a036d9a9e41d975a0526a34c44fbd5e SHA512 20a5c81f293df762b334c2eab3712b8c977408880c6e6bd9ccadf5bf3e0849b7ff9d602f7ed056272cdabc0e9df4c9ce30ea72413138514619090dcd1353b65b -DIST thunderbird-128.1.1-nl.xpi 742071 BLAKE2B e30cf1b9961f87d6e1b8af6559db456429cfe0b1cf0a1b3908d0b1075ef698b81c2f467198f4196d982146ee91fe0e2962d4bd39f477f8d6989e53c365f9661d SHA512 1ed963e4d9ff02cec836ad62b58766f3e061efe67e66aa6ab91c8797d5894edbb28d6c66c16aee60be0cab87006a29924a183f84acceafcfea47802d26848b1e -DIST thunderbird-128.1.1-nn-NO.xpi 721391 BLAKE2B c25de2b3c14569ef33ed39c440553d1d4cafac8c53616dd27ae77492035e0bed933ae20ee3191fc8b60afd3f9786fe550d452c8ad714d433269203774959310c SHA512 eeeb982276229ee673f7e43ae5f23e0f593a158b545eba8870248e1d3a5f95e0b9115080fae00e50ca65be2f232a2ffef2493e05c01a78d55cad75e57052c36f -DIST thunderbird-128.1.1-pa-IN.xpi 681222 BLAKE2B 8533c26a4b315fcf32da8cc13a95eed5b19e00444a06a32177569f41e43067161bb1795055df71af065856f43030247a7920210fead3e4da80ebc337adcc6b38 SHA512 8564abc9b8e50cebadffd2aaefa97ea340761ac9ccc0074a6b0fbd7f1dff2f09f2c8b232ee5fe74d1a838cd3dea424ec84ae103c03f9ff486c3ee3395c8d5826 -DIST thunderbird-128.1.1-pl.xpi 760888 BLAKE2B 378f664d2596aa1aa44ca7abf292e173e5fbfe167cbf9a4df73e354d5eb59f4f996d9a0c3eeab505c218ef317b53e7062c2578fd5b1189ba9888f3ef29eb2995 SHA512 58cf7c5ea95e9d123e677083abf5556fe10ac09f2cdc38d71918113378551811f69c2c6e2e15deab95124f199acde7fdcc1eee65774e16fcfdc3dbc94687ba6a -DIST thunderbird-128.1.1-pt-BR.xpi 749078 BLAKE2B 794f1da22894520777c8116a77b68704f4f00dec477c6e562512fe53cd7b8086fa395a597f7df93e8610d45a0e2a2205eebdf07e75cbfae50d1ae1bb58393179 SHA512 9a513c854eae6ee538b56cb7303dfe483fcf5f7734e5a2ba340ca1344817d7b1a9b1593c2c7d17b0e3f506cf4931c97ed6d53b11b0eccc913fd4da7feab7cd12 -DIST thunderbird-128.1.1-pt-PT.xpi 744907 BLAKE2B 2cee75854081d80429e15e105a0e8d1ba7c3e61d783eb0d9c3044ba488be43e571939d125e04991471e58b5ee09759437effddccbfb49827ad1ad68e85316e86 SHA512 947d4530b24829a13d09964416654224072fdfa44523605241672891d2aa8111d7c14794de852074d7b97e6f99b7481eb9cfb2637f65d4221cf9922738438dfa -DIST thunderbird-128.1.1-rm.xpi 746021 BLAKE2B 5f913ef56cb475a89bdc5633b20ef31a66d197e6a47d20913032853f2764094f00645cafd5ab7812b2559bad689111a14f1254bfb04023be8d56a307026908e1 SHA512 9371a6d777217f041856fbf42f759540bc5f9ce2141ccda494bc6e015f84aa1fac5c0abbeb32e1a2cffcd713f28742573642c23ab28d6ddd764699e403509edc -DIST thunderbird-128.1.1-ro.xpi 669418 BLAKE2B 0ed646e0935ab00ba75ce3491c925aa8af1dd1c7c3c587527f80a505ffa6795365c91320db716bce6b31aba98154b459964217da4740a86482b722cbd0739828 SHA512 d155fcb44b4424b282bdd10c8bbdd4be8dddf32d7a3320c24e6e9071277a032536a352ff1ff87528ff97093c8cb37e2778aedbc535f15f5a288cee485f4106a3 -DIST thunderbird-128.1.1-ru.xpi 869880 BLAKE2B ab9e69708102ce63f2239413820e59cbcd2f26f29680e2be43ef88b5301340e81c45c70b2b3902a25f95054448d1f551d1a84b0cd3895e15ca4486266a6e7418 SHA512 4db43dbb1807e96ce17ec2696ce758e827895be8394f24eef297be24862cafe25b76cb512e07281a6477018b437f77faa9dae429a6a039a0302c4411ffd85cc6 -DIST thunderbird-128.1.1-sk.xpi 781843 BLAKE2B 3e08add0379d28b6bcc44294de3ab6afaa8c745cb34af60f399fd857fbd46f2ce0e3ddbc7253dadba527094b215f68ebee9d152bb55aa3f613e3b344b337dc53 SHA512 8bafa78c068ac43ef64b4b0ac2fb46abc98cec0a630d85470370116258efe4ea9d48764db6cb953d1fbb88ee777c3639b3ec85e11cb95fdb5753d68f1baace87 -DIST thunderbird-128.1.1-sl.xpi 742785 BLAKE2B 26a360d83a329bc982bc3f625e70d89afe80113a8943e55e062dc3838b448abede8eab63ef93a35579bb8901680b845f37d305e953eaa7a1a47e872c1d7e4e09 SHA512 9bbdde150802d07102f993fdcaa22391b2e44de5708e2725f7c289129148970520154f8ac97f4b56f59e482e4b013ce2f194918b7d662fa770eb1ab1b4cbc798 -DIST thunderbird-128.1.1-sq.xpi 765340 BLAKE2B 225a30cd2dec7f21e4dd245250d555ea5c7fe1d8896a7faa40716bcd023583f6680947df49073db4b97500cbc07a2d404880fad8bdb197ec6f909efdf0e24b42 SHA512 67047c15f33c1870f4eecd05d4734326b1ce7d9e7c5436ee369c4f6888f7db442991e350d2cdd89d1010e9895d4276c150ae46250c208da4bf1b1c4f8c6a4dd0 -DIST thunderbird-128.1.1-sr.xpi 770682 BLAKE2B 8fb9185bb8c01e22356fe7af75c4134370ed60c025ef7947a79b18ec0aace5dbc3833455cdf874d33a548fdbd5028fe14adc854a009e1a8d2cb063538b339154 SHA512 4fc70e14169a0bccade80d51fa81a4966f23af49fc708fdec558a8a5d6e8a8ae58b1443c39fbc7c398c4f4fc081d1ab0d57fbe48d30238ddfa27f3dffb41a100 -DIST thunderbird-128.1.1-sv-SE.xpi 745493 BLAKE2B 756f6a8f2301da147156a056a2a6c162dffd642e671e976dc036c1121fc13fd11e4ee101952e33eed4f7642f8f4e4c17ddec7b4e6bde5251cea0cde96f7433a9 SHA512 1273d66b33960c3c45998d4f08f8af83a4ae5749fc79ae9b12e925dc1d1f7cfea989e25485c51e88516857ddc05150ceaf6412ef4765c31e2d42e150efa3ed00 -DIST thunderbird-128.1.1-th.xpi 810987 BLAKE2B a8608d4ff0a3905d7a963d6147f8dd829a78a1285215296a7a56d43ee3ed5135c65e2c426ea7303cc9382564c932145addb9685fc2d2242ef3247f0e17f845d3 SHA512 98bfd7b4156aabc84190a246295a0239fc2538322d9b06b7b73621ff614aa649e331b3a8bfe0be64d0f79b950b6d8b059ced3d364294571157c0e065e0fcbccd -DIST thunderbird-128.1.1-tr.xpi 755983 BLAKE2B 6c854657cccab9b1e901cff967cb9def4f9a5045f5809fb52769e55e1b0ae21b260416346d32c15864d1fe38c70beec23d0c6985a2f7f1aace1a832e7b8bf259 SHA512 e37ac7ce0671389ca564d47f37a977223853a8bf3cbdad3834494d3d7c76caf06fc1f7a26b246d93bd899b49728cfd5ab912a7713170f24c1edba4c748b002ea -DIST thunderbird-128.1.1-uk.xpi 855732 BLAKE2B 640f1424995265a7d9afd79d00b5bba1e3881dfc62b9b53e03a38283e9834e188111bf77441653ee807b110075cfb3ba06c3734ea39b3142fed7a864582ecdb8 SHA512 3ea7a90e3da56a9ba045d91f48969afa3a5e93f389c11da06c42c816332c43ea8bf096c9d1eabbb9df16adbc4f8d2ab882cd5d091abea490669b1364b92d19fa -DIST thunderbird-128.1.1-uz.xpi 591809 BLAKE2B a8468e0e6c7b26de3e96a731cfa4873c571c3ffda6ee52737bf4e21e7278718ea7709836f8c810fce8d1925f68f3056299617ac712c6c137174a45667a9af843 SHA512 bac1956bfb40105d6fd81d066466699762aa9578f6d27311abf5629b5b869c97164eecd7819a7c1ed47a19335d8aa617397f566cd2fc67ba31642a67ba61b279 -DIST thunderbird-128.1.1-vi.xpi 784776 BLAKE2B addae70dfb4fcbeb4ee55d179c5be4617ab1e5f05a33febf648f3ad99476f87654d4655631e9ea1920630065cdf4e6aeef801f52b2edcd75a6c14a74184ef99f SHA512 9f8abf8dc183a4546fce4d129a9ee314150abdea401449902bde32c51fa1007368fe8f477c3aacfc67bdf48ba6c49c5f2b55994296689116204e57db7ddc3f6b -DIST thunderbird-128.1.1-zh-CN.xpi 784197 BLAKE2B 8e4074448545cb54373406d0ce0295a68e6fdfababf38e95a4a473407cd824e189d62b27105156dc2f923beb6a9c2f2348d83802ce550dcb4d0a3c36d90d71ac SHA512 b42683ec3970afa764f491ac1f47cd7ccc117646a2f377088902f0c1f46b7bc2719d318f86cddc483268dcc65a59c87a1b1ac6dc627dd58ec9fc1254d1d73794 -DIST thunderbird-128.1.1-zh-TW.xpi 787600 BLAKE2B 9a56823925b2f0a5bff9c2c098d45d04242ac2a3d33603deaba17d346c6756b624f352d0a10fc6206a2f80c008fd822d9002c860ec89dbabcc9b398c7c4a0f3f SHA512 997c503a8dbe3e8cd2d331de6633eb205a9d21a886284360793e481bbcbfcb2a60e0451a64aa78d536034376aee6dea660cc14f8c8bdf8255acfdd9733631276 -DIST thunderbird-128.1.1esr.source.tar.xz 667771968 BLAKE2B 61cad10d9ec40d854ae7521b7cfd3075a9994d15a88af9171fec0ce228d08c7c75d41108f89a4bc8b5356322776cf25289e74f8b2b601bcfbe29b5b494bb11fa SHA512 91e17d63383b05a7565838c61eda3b642f1bb3b4c43ae78a8810dd6d9ba2e5f10939be17598dd5e87bdf28d6f70ff9e154e54218aaf161bd89a5a6d30b504427 -DIST thunderbird-128.2.0-af.xpi 530351 BLAKE2B f4b04315d8618d6bd5709eb0c4cb96c361a1e2a93b2556ed9bb3c06a7b5c938667d170ffb26ff573c906e019be0602bcf6aa692184d2af713c78106392718d00 SHA512 4553dd36a166eded64956870e200fa598111fb970780a2b97f56319a465bb357b81e726f05bbf98cd5c09954e7a19e879b1de3a405bc0445de91ca2b7c44f707 -DIST thunderbird-128.2.0-ar.xpi 679867 BLAKE2B 5b306c106986de11dd40335a5ff30611de6d787d8d4f235ed40efb03f13690aa3685be6c6219f23812ab61d4c6a197bfee464111cb020e0d3e6ed420f613e1a1 SHA512 688e9fd15d629ab219a9234241bbc731cec59746bab60d1c2201046a58968c0afc2c7ac058501e5f206358b2e76af91ce926974bcbc82b6ca168d09a09ff4563 -DIST thunderbird-128.2.0-ast.xpi 561055 BLAKE2B 7e985f8fdf59dbc14168467b36a469fcc5eddacd7d049174713f1fe19bb5441320ca84171489a71ae3fea2f9e6267a98f2496e00df6f08b53eea9b17fc026a07 SHA512 edf8813fb11d6a7afd18b3d2253a41d1c4e450028dea2af61233e1602d98c65304038fabc0047c64aec91f65eb943b11b5b30662e4f3a44d21e04c74a4c50f14 -DIST thunderbird-128.2.0-be.xpi 755105 BLAKE2B 3fec208e7f3b0817e3a8e8822abdcea3cee6787b8bf565f9f2b89e80637828a2acfabca1ff6e9f64fbf2f4d1d73c623bec56071cc35d4296c8eb4789030602cf SHA512 4a208b9dff9389557f003f4637171b1e58eede69f2c875a5e9fedd488c3b80e84a7fe989d1e67c0b79e18e93df74ef04aa54d613cd1d01c8394a8d8f51531f82 -DIST thunderbird-128.2.0-bg.xpi 807860 BLAKE2B 7aa592981e26c26ef9ece53278f3ba9d0752e9581af9e5958219350187ba252bcf0279cb2b546b9c1dbe400d043128827b74b5dfdf9164cc647d893f72dca979 SHA512 99442d6032ee1a2824a0186a22b29748b1b69b7c59a616438ebc6ddce732437ef8b42e9de7b6034bd3f8c763aa725ff699ec6c608199e6cfcb2e79115b745748 -DIST thunderbird-128.2.0-br.xpi 652477 BLAKE2B 3cf8b378b67c62942a46cb685de9166d6ba8b8e3daae29859e871011e9d9f4558c2f5ab2010feefb85a534a63fcb7eae6d28749a551cc31fdca01a9b8255a2ea SHA512 1d6408eb0688fde1ffa1de6e791380f5e3fc222a5ca1a971a6e9e0a9444de82a3184824f1e95cee71a97a784557d59473e408efee6e33cc07f5f249ad6039475 -DIST thunderbird-128.2.0-ca.xpi 708967 BLAKE2B 76177b2b3e1ed5a9f7227364da6297f00e30ea5ff09ad93bd053e72593217c31b68b8e877e4e878cc50618e5e2179a984350c27b1e4be5ee2ace7a588197e5c2 SHA512 1c99399e388c47516a22d879cc23b14578c28364f0e957d82a7b92e75ee66922f748790a6522e0fa02073a820dcf0c190e9fb2b9a2087ad65499af1f6caae61d -DIST thunderbird-128.2.0-cak.xpi 671704 BLAKE2B da438c852c579e6b02cafbc1b09b7d58e3cc76fb235fe157c19f3c044c2b2633ba77594059ba127252c3b362549431ffc293c88556a026ba8dbade3738d5515b SHA512 c138049b26928ea03d9554f99a6fa42a641f1bd840e50f16bbf164f15e7a46696651f63fd170ad374ea9931cc61c903606e423a087c1f5fb82fe3b17387c90cd -DIST thunderbird-128.2.0-cs.xpi 785045 BLAKE2B 98ff73560bd028c0c1b8fc8b7e64fb9eb3af3966b55ad9b97310541308ea76eba7de9eea5de76f9e2fd459c66beaa6741a50303a16cf981f2892c329b388d74b SHA512 2f289d2d43305b091787dbddd62d4c288e031608e4d3a8e73f99fabad1ee694c50d90d4c6c2fd7e14f5d6cbf6ea343cf794b98133744f7d2268c513d4e31aa31 -DIST thunderbird-128.2.0-cy.xpi 749051 BLAKE2B fb7d2c860c49878632e8dc71d1ecedb02e5c3ed2de7a342e2a7824d30384537ef9c44a1b47a28d7ecdf7c7c582f665ba24429168b421953fd1d3b4e2070fab60 SHA512 6a8264a6ef7e8646dce804a1e8a9c5d789c1fb16c0237b799c0c4752037d7d9e7695bc63f73c56e63388e4b9f05561e14e434f5e3d6538debe05051630da0cc7 -DIST thunderbird-128.2.0-da.xpi 734115 BLAKE2B 95b06adf1ac0aad11ea642c4f0cd323766bed54c9ed691d2520686a59d1b1cf823e4c3c7a3f603f15be7872b41c637e655923026829b18e1ef118be0f021c99a SHA512 c7342d1d4681106a01ecae25cfb1ee485172c9e7e36d10d0e227e24a1a5d4547f69f2f384c87839fcea1dbdb935f97e504d29e9cb0a39cfc6088282d3149c4ec -DIST thunderbird-128.2.0-de.xpi 766251 BLAKE2B a1ebb1c4a90afd192e93e7187036ca9d77f4e76d28c3f5820115c99884f01da3a6ace89554767ea2f736ed46ceaf93a2b99d60296fa48a43ad00b7aef03167b4 SHA512 df8f8a6d95c2d698427985daf5b6c5922a4201d5314005adf9d66aece66642901a0fc6dd01e4c34ba54ee7c196897f91c7beae69c7c09a2f040ff4f5bb03741d -DIST thunderbird-128.2.0-dsb.xpi 782743 BLAKE2B d2f4209c6da0d6ac196958cb230eb70859548c3867a0a955df8edfb09822e0dddcfed100530da19f6d09fcf389177cbb6713aaabdf7d36a18382388adbfb2ffa SHA512 08fe7553f916fe0f8057a206cd4f1327e7bb6293ca6254433c08a1113a5f7ba83d26bdc6e16915e61bcff9c31ea4b8ed7d7bceb204f1e9cf8815c930aeeca302 -DIST thunderbird-128.2.0-el.xpi 889269 BLAKE2B 64a9552d9147e5eef0e3b8d711053d89e7e9ed64820f9ddbf160f0e84fac09452bdb9fb4f0796e4d265f5e41f451e93ecc65f71da8ec9cdfd8f506f7400eeefe SHA512 cd50a58fab6fdb5f2ddb062526547981b44d1193463033d9ee5be7c54f1834adb2a5410da7236678d447442d470f2fb32b389e40fc0961b0d053b8f008ad7914 -DIST thunderbird-128.2.0-en-CA.xpi 702143 BLAKE2B d28f797da6751302bd103ad4025e7e05e7f1746b7c2ef9bc36d5dab24a0e4248e3bd3e7aec345649379669e8d985eac709dcd2993758638a72011352c7302b1f SHA512 192b530c7e5035ebe8b1d1f2d870ea0ae7586aea179b7b6a5410522a675bf79ce786a7187040a14f2af3225401c520aa30511eedb7c60876137e4246c1896b0a -DIST thunderbird-128.2.0-en-GB.xpi 702700 BLAKE2B dca31bdcc8b9b1da3c4708800276b868d9b5206f55a52952564e98f52920f53c41850ba09553c51b55da9fff092c66e93491cc165c16f7c881c347f180ada6a5 SHA512 026ba038c4bfb2abd3f26c31ee826eed0d17d00d4ed1e58f25da2e6d6f297ad4e90c1e12d1b8e4e2b908b171ce0cbb4a1057354fc5cee66073c90311c7f54ae6 -DIST thunderbird-128.2.0-es-AR.xpi 758350 BLAKE2B 64721c4eaeb8d7301bdbad809c7235b14b9d0f726fae6caa8acf61596bb9f150ff6feb8ad44a5d5792bceef40476690027f2e461ab12006e9c1abe8b2585e84d SHA512 7552962ef95cfca777c57f4b8109b6ceb0de35387878d140ec4dbcfca556a3d640a0f0049177448d32cce48c17705caa112ceb6409e87c278acbed4f4d3a20f5 -DIST thunderbird-128.2.0-es-ES.xpi 723514 BLAKE2B 3bbbc917ab62b65f315a77bd2c950e9c4aad0b448982a967000e3a754d7725c849ca38430ceaaad235816daf82b0ea2fabd666f9744ba05f57b14f90a856a5ff SHA512 bb5fb42d34b405058c97e7e329a64c9892bdbfe530748167dec283eb34086cd2be772f54e2d56714eda85939fd54faba7f14677c66817d6573faff541d4f561a -DIST thunderbird-128.2.0-es-MX.xpi 737707 BLAKE2B 7260c4ae37fde04ebc0f23449192c8f329b007c9cb7b0e826cd7189dbd4ab966beb23599e4d106b4551c4a1f19b105ee6080a8f40b502d8ecde5f83e1efa6a75 SHA512 f38efcd62b3cdb38afcedc43fd228f77ad59caa859bb8481a6f4aea41aeca276134047700c312da3984ea40311a31afe4cb22f69eb105b2ef16eb8f017ec6e7e -DIST thunderbird-128.2.0-et.xpi 696280 BLAKE2B bab80a3332acb3b5487068069728604d72235c9a0aeb9c793a4d8b6c61f6e7af29462b54d6a9bfe6d445e4cc454559f1fb4aee50830d57cf7f6b6eedab6e4362 SHA512 e34b4c6c5037401c4d6acb9d64b5984d18ae03c905360f2ae9504dea79afa4e0e9e9d2b93cd1cec843f0eb56945f9fc5070136eff9e4309163ebc4e88de376ac -DIST thunderbird-128.2.0-eu.xpi 726802 BLAKE2B 53b6e2830d8d5e95cd741522ea4d115509ebe4eb150606f4f997aae65b0f17b228c51633dc22df9360f8562801b6437df18f355bde3c21e6a3ee9df9b73a3940 SHA512 ebfce61496f2c7c202961be85e4da5aa488b1a91021bf911891cff40c32a3abf0bcc665e6c4d0c07d0778eccd0d61df5fd52163f00ab3b914637f705fcb44a65 -DIST thunderbird-128.2.0-fi.xpi 733651 BLAKE2B c7a50566eac18ca86f88b8a743679fd03c0b11a9c55ac4a7fa9c6aead7f7a54eaae89c4c8752a683dbeb58cd8037fa2d41cf7838a86314933c2297a70ee0c49b SHA512 e1ecfdba4e0732a61c61bb931fac430f09642d7641e3cb3da4ec680ca1553a613a49937613a70a520aed158ffdf7f64ca9359c888e11563ab2941101361c29a4 -DIST thunderbird-128.2.0-fr.xpi 770186 BLAKE2B 0eb14cb05d3411a583d48732d6f65dce30fbfed37640707a85e66cce770fa0786e66e02f0e96e2009467ecaa40ba532913a0c8a7615999565142560acd9951ea SHA512 163daaaa076f00ee23ab0271249fa7a9c175b6a411f8d3309751e41f02c1f405531b0bb2ae0a29fdad6049ef9c4c8d71bbe479f084e7c98b56bf3be3ab3bda2d -DIST thunderbird-128.2.0-fy-NL.xpi 752848 BLAKE2B ddb1920d1082090be895c41025b1313a824fd12c3ef819f4f0ef82ab693d871c210d0be4fb77831872a49b43fb57fbb0b4a6803717b00ea155e50b3ffe396a80 SHA512 cc336b67d0be16c82b4b3fac0bb5fe16f2c6f6fa711c5c0701970a37d75fc4c7869b329183471decd051566bdbedbacb360e49a283c1c116adf881de717745ce -DIST thunderbird-128.2.0-ga-IE.xpi 615198 BLAKE2B 3b89495c04e27b9bd4a185ab79d5f8f41a07409b0b77119f350c91ee512cde9fd99a97aa1eca0b9b8838e29b950ac093a9845f9da2e63bb1c1a84e06bf5cf614 SHA512 09e0f9f0a23c2c52e399d9999873d92893a49c829619861b4f0f72d0dad12b638403626519097e6bd059166752d100c9bda9a4f8a4f47a21478646daf66dc610 -DIST thunderbird-128.2.0-gd.xpi 727804 BLAKE2B 8f75354d217d9d84c091ba029460332827f1de97e588c6613a33bc857da573f24d2a4ef66906c66ff5faf5b54a0c89179b96d668afd51dfe5148cee89a7f2bde SHA512 4b9b3da0cdba5df1a505cd730073d2e8887d4099fdfe7fd5a0f914db2f4e73fab2da47286a84f2eea0bdbbcfd5585f425928b29e7d09f1f050eaf9d3480c036d -DIST thunderbird-128.2.0-gl.xpi 736573 BLAKE2B 3dd448d20d76383a5219db7d1e7ab5e21c793515943bb70bb1635862632cd7351c78268a687f8fa2d25ab2c7138118487f16243ab47e89dc33c921924560e285 SHA512 8975e87497557b9b427ff002d2fd156d2ef4e4b0036836af993f1a7b9c73c632c05d424bdc4e6359f6045bbea725ab3dee993e978b020f0480a1acd96395b2ce -DIST thunderbird-128.2.0-he.xpi 700301 BLAKE2B aa7c9b89a6453aacc09c50d653148ed21ac53f29f88d24dbeef015bd60ac7aa1b3d7d33858c275b16ffb41cb54e4c2f41f09a9525ee6b19b98a9a993cc21a8e8 SHA512 3dd3929b600aab5d1a5c9f489fa326b48eb4de1740579e0d948d8b72aa2fb50e73bf337014be7d892c23cd1b2ab36a13d52da9b10dc4e5a220dff06dcf16afc9 -DIST thunderbird-128.2.0-hr.xpi 715018 BLAKE2B 1a40b987f16a5067a0d26a70a12b8c380248ab7cffb3053cb9991453e35fd9ebaf5167a0870bc6ccb6642a5dd6605860680fe596986bdbd599d80121d4156141 SHA512 b02f671ce57339f85098afb41e27b09a516cd903906bd34dfbe199525fecd73cd0bca978464fddef302f38ccab1bc14d862840677e7fbdb1ba9fd20ea754280d -DIST thunderbird-128.2.0-hsb.xpi 780137 BLAKE2B 6d4610d5f13f7d211732b797ac79c105e2785a58873c49b7fdf948706eca001fef8523e1460f2485f79ac6876973297ebc02dabce837ac4f1c5413adc2d6849c SHA512 746dcb7d355c429fd4c6b633885a86eeb37e300a738c5bcbda4ca91ac0f6ededcf915e9d6a5de54bf7b3c2e463cd86d2cdb7ec2342173ed1836ab19f1137a880 -DIST thunderbird-128.2.0-hu.xpi 782933 BLAKE2B e88c56b89ae79d46865281ca8472ebd6862ba5fc81364ac538a2aa2efc99079e849cfb9fc5645080646ae0eafae4a80dc8d2e46ee99ba115d4bda654d4a8c894 SHA512 028839eca290eb7b02c83bb1bb40ec0f35dcae7d446c06f0366ab7cc17c1bdb0adc0bd72a5a71b6b67a4deb607befd2c5de0372c695d3a1ced5407f8c853fae6 -DIST thunderbird-128.2.0-id.xpi 666011 BLAKE2B 2b73fb3f7621e618e46479d657f8d20ad1fba7cbd4a8c5e0363c2b1ef021fbb03c934c5f11ad20ba4fa86413b93677add503077aafa42087e9fd78339886313d SHA512 16871831e5b92d8721d52c72afc0af6df0a7048e58e6f59bff8ad09b6aee00c0090c465d00f9501ce0f53d3b10b905bfaa1571d3d3e9006385bd22cd1abc0af8 -DIST thunderbird-128.2.0-is.xpi 743886 BLAKE2B eecdf7c8a9eadba2944ecae09df3b12872c83e8dbcee9ad481106ce4716ae8db915e61437215311957c9b43dc45676f5a5d163311452e6a8aed3020d0dd056a8 SHA512 17d1bf8d5ca0aedb25bad3e61f4bfb098830a87d95ace1dd2d90fadc030e7bf668c7cceea170ea7d13d7cb80c6e3e36b6749cdf52b970150dc5ea6b9ae1a6bbe -DIST thunderbird-128.2.0-it.xpi 690396 BLAKE2B cea4e519cf4fa3e326dac57f6e684da5d311e5312beb687b847965833e5acb28ce59b41c97d198863654d2cf49e494951306425385a33cbe27061c09694f030b SHA512 8f473a1b0ffd9feec15e415f0c34ba69609e8a8ab271f3b36dacd4866f02affeeb73e4bb975db2375ce051f59969e54fe577591e9f6810e4a5440c659f4c9431 -DIST thunderbird-128.2.0-ja.xpi 819902 BLAKE2B 3911492febf78bde263ab00d5410a5991ae8c67f0cea5443565e1552bd2cfa5a48e43d73c6fe83b94b222ff2d391afa4efe01c13ce6e7d6ea28f6095ae00847b SHA512 b09cb2fb7b904d2048f1c37e4dfb74b9adf4b0b21023c55551ae51121acea85198a594701396e0d9058c267b83e8c1f2e6fc5b31f8fca8b001ed23f4cb5883e9 -DIST thunderbird-128.2.0-ka.xpi 796047 BLAKE2B 69465d477abfde17660b651dae0ba9fe05cd4b6fcc119a03f1dd3b905bdef1692bb15dc66e6f0d9a7be426a9ad1319040991e2b9afaca9fbdeceafb50ad3f5c4 SHA512 b02d01ef4f9b75a2d103ad499120cd0f9d01ae2b74d8a922463c2c2d42ddc6dfe73dc7ecf51d7c8f5be235107bb1f8c7b484d747e39bd576165eafab2a0edfbb -DIST thunderbird-128.2.0-kab.xpi 731859 BLAKE2B d1b0799ba696785afec55f4b96eab8ff1641a43066638d475467ef997a49e584a31a53ec726e46e1bb59b3f97b164dd0c785a25db89f13a646ba7b69e297def0 SHA512 777dd7242a23724a4ce559164c0ee20243fa137e99a7a9c31b1e99587606dcd66fe7d39a89a799ca294b9abdb537da5ede605eaca85b19a35f0cab99b7a11a5f -DIST thunderbird-128.2.0-kk.xpi 857290 BLAKE2B 39bbbc3e03fe9ce194cfe23cb1e65cb2e443b8c81d091bcb117daac219c76075ce2ddb6e8f3bb31eb9040bd7092bf84d0f532c3ad2293b1b298858d1cf9bb498 SHA512 8c9a2e6597246a166e0e5a51ec6309035788925e41a115e8e6b489fe1f6e6d528cf4ef535a010d83260a0f0aac375589e4bbdf711fa9b38b15980cb4db43d73e -DIST thunderbird-128.2.0-ko.xpi 755165 BLAKE2B 255e9a16f49e607314d365f313249343dbcf8f170abe2e93d3862be51746ffba7aba0f3611992c4458f0d1aa3f2f2000babfd7b09ae4cec828fdca661b308d14 SHA512 1fe409f22f094f9c5b2cc70561650ad4563836ab8a3c5cce846376f53572838a93cca38810e75f2b6d19bc44b156e9341f2ae05b5832ef7844b703ce922b3416 -DIST thunderbird-128.2.0-lt.xpi 700918 BLAKE2B 622bbefcb2572593977459e9325fe25c979d00c7cfc08d04ec17734148a99f1a21535b00d90ccee31e87ca2f6a4260a241b6527ce1781586ab1c3f01ee4096ef SHA512 42539e633382f62b7fc4adf26a87b0842071077f7e6c6262b78f9174b969dc16ec79640cd7990c0bf6761c14f848792f32c9140248d734d97178566417069691 -DIST thunderbird-128.2.0-lv.xpi 623624 BLAKE2B c1f55d36b94e2b564a4f2c88c8726d85772a4853bb9b54777bd6892566747e1076cbc985268c3b4bbd161d8f853e0df07360765b513e5fc4ed2da3da211c0b3d SHA512 beea131a1297ac199c3b3ede8f8e09a576d70a6caca85b6073bc9d4bc6fa08186dc41936a5ea773957ee2fc395c618469acbf8bc41f5c30a193f19aeb9edc7b5 -DIST thunderbird-128.2.0-ms.xpi 581084 BLAKE2B f37963924f629b13445ed30156b5bb53282788e8d9f0a995eea822954661fb4ec729dfef397ddbf0cf439f06a6b8c0ac8ee9bcc1392662f0dddd0d4c5c30569b SHA512 d3229b79de9b89f4d668e520f80376ab1a88fc7f160c0d5c105ce4b1ce4fb6293d55368eac7d85a2bee929403386c4ccb143be7656d325ad0ec5e0759885de2c -DIST thunderbird-128.2.0-nb-NO.xpi 703763 BLAKE2B 6f9bf5ea39c7350a1f3c1c7a7e5d3fb8417da27cf2c9bb0bdc36c8a777c0292346c662361fa4c4fc77d27f76d545921f40630b73d7bd730d5ace3b90768772f4 SHA512 580a7d4ccda3fa278647e6c1354cb9e70737ab6ca4fdf1ea2f335808f46369ca8908a77511dc0ca48c99beb45824afd708c9abb8617c8ff842c7547f2cf62f1a -DIST thunderbird-128.2.0-nl.xpi 744105 BLAKE2B 20a89e15ae7e3539d5a28f38c58d0c7611d101c95600731abcdb248e2e5a59272302a9a0fafad924d4d96150f68bfbd872d47da5293ab8d27f236790e0ba01aa SHA512 9934e0042db3801c2fad3a2754d19f640354128dd376fc1db835b253c48cc83639be08de0162533e47db48d7869e689767cacad6ebaf136e22b831af587f6cb0 -DIST thunderbird-128.2.0-nn-NO.xpi 723768 BLAKE2B b1b6fafe6ffccc66f30665fc40c699daeb1c74c482573d1d2ceec565095b72f9eb40857954ab0cbd8de74022fed9f57275e22b5aa5f1169f6f4831b23543c781 SHA512 8f225825aef220b637fddab316e49d9a05535b19a83e224d6f7fbc88b56d100e8659e9c51658d2d6d082ce02b5db4ca4a4cfa94c3039a22d68df5c942ad28fc2 -DIST thunderbird-128.2.0-pa-IN.xpi 683076 BLAKE2B 1e05f44edd29210a4179a0b6fb00ba8095a7d7ff7d50855f1b8d84c0deccd8149eceb8ec4813f15bcf73edc056c74a7c911fc4395352f1b0143721f3b9f1f67d SHA512 1301414761d65b83d01b2605a70355b522bf66a2b9a01f7cebae46f8ba1aaf131d98b2989e2e740de2f11cb69067192db2156c286056ddec50bb42475a98641f -DIST thunderbird-128.2.0-pl.xpi 762953 BLAKE2B 431add2fd6a53522452e0d1ea78a855fb3e562bb83c8e68797dfe2534b07fbb99505755ff7263574fe5e945d5cb57a281d1a3adf960b1c1022bca7df7c7aeca4 SHA512 582a2a94f3a472a930561d0a2d297d30d0444673b3d188e6cb3c49999c99a90783dd9671329db625a619ed349b016ab0a1638ace68be065fe2785829d90fff0e -DIST thunderbird-128.2.0-pt-BR.xpi 751314 BLAKE2B be58c6d7445ce7fcc4a8f1744861342b749dfd09c0729f0df6416dd2354f903315be0f24acacef461c0a658301077c9aac0b3f2696f6c8c274cd80aa84b49b7a SHA512 fbda48a6f95cca8f7d02cebda30d2a129b113d4dceda4ea3a4fb1bdec837f61c91e39baf1a3677e0fd16cad49a07a59d8db9ff44d810bddd6af00b7a9981c048 -DIST thunderbird-128.2.0-pt-PT.xpi 746871 BLAKE2B 2e798c17d91e7b178d827bfdb56714e5dad560880765248f6d122806a1f4ab1878e488727570c243dc5d28a4aa8a7ffec30e99c6592f1d7bc8e2beb7a0a185a9 SHA512 3c48f173e48e67a66668af76008da90092fc02c77ec8625fba28218fc693931ff8658adc5913e318900b02ae04131cba1201ba68c7536a1cf8470d38bcc8eeaa -DIST thunderbird-128.2.0-rm.xpi 746778 BLAKE2B a7936361d462a4411c571ffd381f4f8be95868de1fa8f09b6c39e4d78af0a910aebe9fe79f890c09d1f1e9a395c1c7e77de2c76c4d2c3ffa0bbf544304fce875 SHA512 c80e6909801c63c0db8e7423248e74bf634bb6efe14ba8e04ec69f9d1e95a1b8a4f37b44144e3889c3daba6ba2871542093259ffa62dc6e981c05a25bbbe154f -DIST thunderbird-128.2.0-ro.xpi 669742 BLAKE2B edc839c54e190a7141f703dfd67999c48788ca56a364042f9181e283cafff20e2acb1fef5deb7e3fa0a5760403c1580ebfdcf6476ebe886c585706fc4d0babfe SHA512 dbc3f1a5b827d249ea7899ea67ceff9055eaeb7fb94c268d26829a056b7e377eea20ac64e685133ffa0418fec3b5114fdac53cb4f21de3006ee0994955f473da -DIST thunderbird-128.2.0-ru.xpi 872246 BLAKE2B a05fa2c35876340956c853008bb9d42c9cf73f4f9fb49f289d55e9eaa5a68afa85f561736da5093ce9f3da33a0b48856840da36873d2dc060dfe22d0d181a713 SHA512 8fb14d376d25fc7690eb9d7cac23e12935d39809d481bd37038cf5993996e8da9af91369521e736f09e13891dbe2b6ff87538222500feda2166b73798ac5cc0e -DIST thunderbird-128.2.0-sk.xpi 784171 BLAKE2B 19c2bc75d192c4bb5a9e3b76fc69b7a78452256f3fcf460ab0efd02d63a78de18a69e55f94431f24d0cfb6ac5f41ef9882e6e5b84317bd05116681b0db058901 SHA512 935bc5c8c88c159c1a7179aab69dd1d3ea6507067a9341760ee6e8e3a6fe0a25d8b439d92072b031cf8a675bb47bd7b4d56c26da6a5ab738402247ee4941c497 -DIST thunderbird-128.2.0-sl.xpi 743551 BLAKE2B 945d820ff6ac2f8a3cdc284e82ae93a9f67a6f2e645ecea7fbec070caef934d5d370c2d74dc0d8807dcadbf080a34c439889afe746200a32c3f8642d15efc573 SHA512 fa96809c273f08e93ee833eb64b923eb50c25a216ef69550dbdf7900d801dbe8baa4b87c00f1d08b0f805a7ba638174f03a5bd74db64e8eb7cb5bedab089d2bc -DIST thunderbird-128.2.0-sq.xpi 765887 BLAKE2B 768d4675b03246cf929a62ea94d9ab1118952bf7276bdfbd4e8445093f018d52b517257fbb2406f15885e29d2a2a40d971741491e64710452428c71e8d3169ae SHA512 5a0ff4c52e61dbbbf87a3b012a3031f23a993d9287bda6cb9428e1de36bd0ccf93f0e1e7691fb234e696ac69587d99eff214699c7f0019ae261242b80b0662f7 -DIST thunderbird-128.2.0-sr.xpi 771006 BLAKE2B 2163ba03ca321921386fa2f3aaeaeb0c55fe89c630495e8272b64d06c6ad1e28ea3940d13ed98285fe0c25bf35b9a725ad8a3f83ed0819163a901d22d02c1fe2 SHA512 c29b762cbcc86b7cf732207a86fb04f548d7e2de8051381a99590e02f49a310fa647af08455172f44f74c095ced5ec301133f82c2d3151534da8903d6c73f6bb -DIST thunderbird-128.2.0-sv-SE.xpi 747521 BLAKE2B bab34c471bf2fa3cf15e568ad838c97bdb7e513f4b090c4596e677075bd68103f4f9045551b99cad35ee30c77d7791727b7fd42fa7aaa292511559a4af3d412e SHA512 aead8781d882e5afb0a3751ebb37dc06e510b028e03f8653d197c7cb6070f958e023d8a59e3855bfcf87be4cfaa3901e53f76ae7413c84800f4991ca196790f5 -DIST thunderbird-128.2.0-th.xpi 813955 BLAKE2B 6e6d87168c2eccd1879f28bcd20e75ee74e77334857c6537825ede0b67d00a6ceb29bcc69393231345e7949e19341f2b06567ac69ffaa241b9cf73a28693efea SHA512 ac7714861e3384d0811eb6becd95d5da87bac4de8df2f78aa103972918259cf3e0947cbfa47eb355463aab3aa4be5abe80e127a61bf880994e192d635440636c -DIST thunderbird-128.2.0-tr.xpi 758166 BLAKE2B 7558c91ab4be059287a140e857580dbf88817b49f1cc28b16dbe7ed1c1f511356591cbe9657dda96b406462a0c8c15c5c214c9c29c1723c6baa03150401062e8 SHA512 ebd44f3cf3c257fec075c7697246337bfc1fd6f0866947457f975a62e2d57299e77b4e31b72b8340dffb494c1cbd804e773fc0f462d0ec7ee58573ceea027703 -DIST thunderbird-128.2.0-uk.xpi 856056 BLAKE2B 3f3733a75f8a85abedc80936c9b1f89c4b3342e4d0337cc3da241ae392807929fa2dbcb9144a882e80167feec357b143f6abf707ee0b581d1cf68f6acb5d5d59 SHA512 c9c88a315305f76172c7df4dabff7cdb399e2eeb661cfb3b14bf489ca3ec004dc61dd70752436c9b318afa23b3984e697344b1cb1fcaeb7cb0fc92e11fa9de27 -DIST thunderbird-128.2.0-uz.xpi 592134 BLAKE2B 392ceee3e9c43ed96190a7d320593796a7d87dcfdd61cac45a2438bc5c390365d3533029e1b5c35a3bb39bac179c51f1b35d70a52d067a4502da540efc2956ea SHA512 00959d85d4cf38e203bd27dc1506ea4e4b326fdd3fee6973282180c0c04fcd1a3ff41e196f78c924fb7a666cf644f335523072e19a5a2790d642d1c97839e6e9 -DIST thunderbird-128.2.0-vi.xpi 787029 BLAKE2B 8905a673b71236891630a9dfac65575e5cc30a4db1951de756dfcfb4a4b10b41fa3bab7a7da01b1502fc1b795aeea1b92eedc7b1abaaf6049d1bc483c52141a3 SHA512 d854fb027d13d24fa4f4783880f76531c2a08bbab5cab5bc041e42ac36954923b797024d99d7c36c032565d5155d6c2d147743cc425ebd8ac2bcfc2179110899 -DIST thunderbird-128.2.0-zh-CN.xpi 785328 BLAKE2B a5cad2e891779711ab6be31929d96647c95b93bb50e6ec31f8a4b4f87eb2881f9ed20bf5818f4475aaaa301ed4a25a6a5350fdca9ce3d532747ff9a74593b535 SHA512 647dfe19d2866e1455d9c21ff0576f7a6ee5a780f5d07ca11cc02bade2a50cf42f21270d573f74258feba2a9adbede415fa4ae4a71e87f77a133e8931c259b47 -DIST thunderbird-128.2.0-zh-TW.xpi 789781 BLAKE2B 2f584744f1ec20465b5e39d8cb966543a1d549fbfb133392aa6bea100f3657df9b29c01d4f07b3bdc4d531a370f7da8d0b85605a680d36919eaf2e4091b4aef6 SHA512 162d5a7ef2e84e55424a6fcb14d18999d0b4c781045180a30394d7f767507dc6b1b084b2d4f3bed63b11d605560bf1fd59fbed7ed0d1e0dce6e47511ed7e6a8e -DIST thunderbird-128.2.0esr.source.tar.xz 674856032 BLAKE2B d86751b94bc6b611fa2ac740e79e57f4321d048e9bfb48f4237021ba2282036b79c449c08837b8b4c19e884cfb900493af4a8f6e221c56a4849241cd32d66de0 SHA512 24af7d705c13a0b49b0f9fa66a4d17ce4e95b65cc60f84f56364dc8fb480fb61b80166872e234a3c1cb843624874757407b2d9f0c5af82ddf2bf86de82571077 DIST thunderbird-128.2.1-af.xpi 530350 BLAKE2B 029e36e76659b7ba83108dc975b456f57c088271d8f423574222ea3074861e7c8828a2e1949ed3b5f0119c5a141a17292a8a8deda0a97e484e9ebdd293701a9f SHA512 b4df011d615580de03296452a21012ca656b45889522bf80884a98bc3fac51f6913f34b525fc42953ee3e7ff2750c2bf6db4c0ae87c1af93f7fde709fc64b58c DIST thunderbird-128.2.1-ar.xpi 679867 BLAKE2B 8bda4bb4bc068343bfbe89a59a24feb30c8205563031e549d0caa0fb30e89651dedd48ae0505bbf0c15bf56d2b568d7545d71808e78329ccccce038401f54206 SHA512 6d419a49791e9fee211fb3856390009326e86f99b45af0622f93a8f345abe15aba24b9c4504b905e11c96ceb267ffcbfe3e8eea9b010b55397a7ceff1156661d DIST thunderbird-128.2.1-ast.xpi 561054 BLAKE2B 21f75810f09dc385b2932d2561044b12d38c04b70b06243b7b500142eb4c1acd82d079e07ea2d4acbf142aa836b9d1b48b8e24ab45733692a98b1250f107108a SHA512 a57f06c1053fc94d4ad860312411008aae42fe71599aeb75f7f619e8049d8f3c872b741524c86dfcfa8c7984450086c5778aa73f62a7ef76967bbc3467aba51a diff --git a/mail-client/thunderbird/thunderbird-115.14.0.ebuild b/mail-client/thunderbird/thunderbird-115.14.0.ebuild deleted file mode 100644 index c95c579c8d9a..000000000000 --- a/mail-client/thunderbird/thunderbird-115.14.0.ebuild +++ /dev/null @@ -1,1363 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -FIREFOX_PATCHSET="firefox-115esr-patches-13.tar.xz" - -LLVM_MAX_SLOT=18 - -PYTHON_COMPAT=( python3_{10..12} ) -PYTHON_REQ_USE="ncurses,sqlite,ssl" - -WANT_AUTOCONF="2.1" - -VIRTUALX_REQUIRED="manual" - -MOZ_ESR= - -MOZ_PV=${PV} -MOZ_PV_SUFFIX= -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then - MOZ_PV_SUFFIX=${BASH_REMATCH[1]} - - # Convert the ebuild version to the upstream Mozilla version - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI -fi - -if [[ -n ${MOZ_ESR} ]] ; then - # ESR releases have slightly different version numbers - MOZ_PV="${MOZ_PV}esr" -fi - -MOZ_PN="${PN%-bin}" -MOZ_P="${MOZ_PN}-${MOZ_PV}" -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}" -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}" - -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \ - llvm multiprocessing optfeature pax-utils python-any-r1 toolchain-funcs \ - virtualx xdg - -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}" - -if [[ ${PV} == *_rc* ]] ; then - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}" -fi - -PATCH_URIS=( - https://dev.gentoo.org/~juippis/mozilla/patchsets/${FIREFOX_PATCHSET} -) - -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz - ${PATCH_URIS[@]}" - -DESCRIPTION="Thunderbird Mail Client" -HOMEPAGE="https://www.thunderbird.net/" - -KEYWORDS="amd64 ~arm64 ~ppc64 x86" - -SLOT="0" -LICENSE="MPL-2.0 GPL-2 LGPL-2.1" - -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel" -IUSE+=" jack libproxy lto +openh264 pgo pulseaudio sndio selinux" -IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx system-png system-python-libs +system-webp" -IUSE+=" wayland wifi +X" - -# Thunderbird-only USE flags. -IUSE+=" +system-librnp" - -REQUIRED_USE="|| ( X wayland ) - debug? ( !system-av1 ) - pgo? ( lto ) - wifi? ( dbus )" - -TB_ONLY_DEPEND="!<x11-plugins/enigmail-2.2 - selinux? ( sec-policy/selinux-thunderbird ) - !system-librnp? ( dev-libs/jsoncpp ) - system-librnp? ( >=dev-util/librnp-0.17.1 )" -BDEPEND="${PYTHON_DEPS} - || ( - ( - sys-devel/clang:18 - sys-devel/llvm:18 - clang? ( - sys-devel/lld:18 - virtual/rust:0/llvm-18 - pgo? ( =sys-libs/compiler-rt-sanitizers-18*[profile] ) - ) - ) - ( - sys-devel/clang:17 - sys-devel/llvm:17 - clang? ( - sys-devel/lld:17 - virtual/rust:0/llvm-17 - pgo? ( =sys-libs/compiler-rt-sanitizers-17*[profile] ) - ) - ) - ( - sys-devel/clang:16 - sys-devel/llvm:16 - clang? ( - sys-devel/lld:16 - virtual/rust:0/llvm-16 - pgo? ( =sys-libs/compiler-rt-sanitizers-16*[profile] ) - ) - ) - ( - sys-devel/clang:15 - sys-devel/llvm:15 - clang? ( - sys-devel/lld:15 - virtual/rust:0/llvm-15 - pgo? ( =sys-libs/compiler-rt-sanitizers-15*[profile] ) - ) - ) - ) - app-alternatives/awk - app-arch/unzip - app-arch/zip - >=dev-util/cbindgen-0.24.3 - net-libs/nodejs - virtual/pkgconfig - !clang? ( virtual/rust ) - !elibc_glibc? ( - || ( - dev-lang/rust - <dev-lang/rust-bin-1.73 - ) - ) - amd64? ( >=dev-lang/nasm-2.14 ) - x86? ( >=dev-lang/nasm-2.14 ) - pgo? ( - X? ( - sys-devel/gettext - x11-base/xorg-server[xvfb] - x11-apps/xhost - ) - wayland? ( - || ( - gui-wm/tinywl - <gui-libs/wlroots-0.17.3[tinywl(-)] - ) - x11-misc/xkeyboard-config - ) - )" -COMMON_DEPEND="${TB_ONLY_DEPEND} - >=app-accessibility/at-spi2-core-2.46.0:2 - dev-libs/expat - dev-libs/glib:2 - dev-libs/libffi:= - >=dev-libs/nss-3.90 - >=dev-libs/nspr-4.35 - media-libs/alsa-lib - media-libs/fontconfig - media-libs/freetype - media-libs/mesa - media-video/ffmpeg - sys-libs/zlib - virtual/freedesktop-icon-theme - x11-libs/cairo - x11-libs/gdk-pixbuf - x11-libs/pango - x11-libs/pixman - dbus? ( - dev-libs/dbus-glib - sys-apps/dbus - ) - jack? ( virtual/jack ) - pulseaudio? ( - || ( - media-libs/libpulse - >=media-sound/apulse-0.1.12-r4[sdk] - ) - ) - libproxy? ( net-libs/libproxy ) - selinux? ( sec-policy/selinux-mozilla ) - sndio? ( >=media-sound/sndio-1.8.0-r1 ) - system-av1? ( - >=media-libs/dav1d-1.0.0:= - >=media-libs/libaom-1.0.0:= - ) - system-harfbuzz? ( - >=media-gfx/graphite2-1.3.13 - >=media-libs/harfbuzz-2.8.1:0= - ) - system-icu? ( >=dev-libs/icu-74.1:= ) - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 ) - system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] ) - system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] ) - system-png? ( >=media-libs/libpng-1.6.35:0=[apng] ) - system-webp? ( >=media-libs/libwebp-1.1.0:0= ) - wayland? ( - >=media-libs/libepoxy-1.5.10-r1 - x11-libs/gtk+:3[wayland] - x11-libs/libxkbcommon[wayland] - ) - wifi? ( - kernel_linux? ( - dev-libs/dbus-glib - net-misc/networkmanager - sys-apps/dbus - ) - ) - X? ( - virtual/opengl - x11-libs/cairo[X] - x11-libs/gtk+:3[X] - x11-libs/libX11 - x11-libs/libXcomposite - x11-libs/libXdamage - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libxkbcommon[X] - x11-libs/libXrandr - x11-libs/libXtst - x11-libs/libxcb:= - )" -RDEPEND="${COMMON_DEPEND} - jack? ( virtual/jack ) - openh264? ( media-libs/openh264:*[plugin] )" -DEPEND="${COMMON_DEPEND} - X? ( - x11-base/xorg-proto - x11-libs/libICE - x11-libs/libSM - )" - -S="${WORKDIR}/${PN}-${PV%_*}" - -llvm_check_deps() { - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then - einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if use clang && ! tc-ld-is-mold ; then - if ! has_version -b "sys-devel/lld:${LLVM_SLOT}" ; then - einfo "sys-devel/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if ! has_version -b "virtual/rust:0/llvm-${LLVM_SLOT}" ; then - einfo "virtual/rust:0/llvm-${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if use pgo ; then - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - fi - fi - - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2 -} - -MOZ_LANGS=( - af ar ast be bg br ca cak cs cy da de dsb - el en-CA en-GB en-US es-AR es-ES es-MX et eu - fi fr fy-NL ga-IE gd gl he hr hsb hu - id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO - pa-IN pl pt-BR pt-PT rm ro ru - sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW -) - -mozilla_set_globals() { - # https://bugs.gentoo.org/587334 - local MOZ_TOO_REGIONALIZED_FOR_L10N=( - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE - ) - - local lang xflag - for lang in "${MOZ_LANGS[@]}" ; do - # en and en_US are handled internally - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then - continue - fi - - # strip region subtag if $lang is in the list - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then - xflag=${lang%%-*} - else - xflag=${lang} - fi - - SRC_URI+=" l10n_${xflag/[_@]/-}? (" - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi" - SRC_URI+=" )" - IUSE+=" l10n_${xflag/[_@]/-}" - done -} -mozilla_set_globals - -moz_clear_vendor_checksums() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -ne 1 ]] ; then - die "${FUNCNAME} requires exact one argument" - fi - - einfo "Clearing cargo checksums for ${1} ..." - - sed -i \ - -e 's/\("files":{\)[^}]*/\1/' \ - "${S}"/third_party/rust/${1}/.cargo-checksum.json \ - || die -} - -moz_install_xpi() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local DESTDIR=${1} - shift - - insinto "${DESTDIR}" - - local emid xpi_file xpi_tmp_dir - for xpi_file in "${@}" ; do - emid= - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}") - - # Unpack XPI - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die - - # Determine extension ID - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf") - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf" - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json") - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json" - else - die "failed to determine extension id" - fi - - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..." - newins "${xpi_file}" "${emid}.xpi" - done -} - -mozconfig_add_options_ac() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_add_options_mk() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_use_enable() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_enable "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -mozconfig_use_with() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_with "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -# This is a straight copypaste from toolchain-funcs.eclass's 'tc-ld-is-lld', and is temporarily -# placed here until toolchain-funcs.eclass gets an official support for mold linker. -# Please see: -# https://github.com/gentoo/gentoo/pull/28366 || -# https://github.com/gentoo/gentoo/pull/28355 -tc-ld-is-mold() { - local out - - # Ensure ld output is in English. - local -x LC_ALL=C - - # First check the linker directly. - out=$($(tc-getLD "$@") --version 2>&1) - if [[ ${out} == *"mold"* ]] ; then - return 0 - fi - - # Then see if they're selecting mold via compiler flags. - # Note: We're assuming they're using LDFLAGS to hold the - # options and not CFLAGS/CXXFLAGS. - local base="${T}/test-tc-linker" - cat <<-EOF > "${base}.c" - int main() { return 0; } - EOF - out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1) - rm -f "${base}"* - if [[ ${out} == *"mold"* ]] ; then - return 0 - fi - - # No mold here! - return 1 -} - -virtwl() { - debug-print-function ${FUNCNAME} "$@" - - [[ $# -lt 1 ]] && die "${FUNCNAME} needs at least one argument" - [[ -n $XDG_RUNTIME_DIR ]] || die "${FUNCNAME} needs XDG_RUNTIME_DIR to be set; try xdg_environment_reset" - tinywl -h >/dev/null || die 'tinywl -h failed' - - # TODO: don't run addpredict in utility function. WLR_RENDERER=pixman doesn't work - addpredict /dev/dri - local VIRTWL VIRTWL_PID - coproc VIRTWL { WLR_BACKENDS=headless exec tinywl -s 'echo $WAYLAND_DISPLAY; read _; kill $PPID'; } - local -x WAYLAND_DISPLAY - read WAYLAND_DISPLAY <&${VIRTWL[0]} - - debug-print "${FUNCNAME}: $@" - "$@" - local r=$? - - [[ -n $VIRTWL_PID ]] || die "tinywl exited unexpectedly" - exec {VIRTWL[0]}<&- {VIRTWL[1]}>&- - return $r -} - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has usersandbox $FEATURES ; then - die "You must enable usersandbox as X server can not run as root!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6600M" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has userpriv ${FEATURES} ; then - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6400M" - fi - - check-reqs_pkg_setup - - llvm_pkg_setup - - if use clang && use lto && tc-ld-is-lld ; then - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }') - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}") - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!" - - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }') - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}") - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!" - - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}." - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:" - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version" - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version" - eerror " - Build ${CATEGORY}/${PN} without USE=lto" - eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole " - eerror " llvm/clang/lld/rust chain depending on your @world updates)" - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!" - fi - fi - - python-any-r1_pkg_setup - - # Avoid PGO profiling problems due to enviroment leakage - # These should *always* be cleaned up anyway - unset \ - DBUS_SESSION_BUS_ADDRESS \ - DISPLAY \ - ORBIT_SOCKETDIR \ - SESSION_MANAGER \ - XAUTHORITY \ - XDG_CACHE_HOME \ - XDG_SESSION_COOKIE - - # Build system is using /proc/self/oom_score_adj, bug #604394 - addpredict /proc/self/oom_score_adj - - if use pgo ; then - # Update 105.0: "/proc/self/oom_score_adj" isn't enough anymore with pgo, but not sure - # whether that's due to better OOM handling by Firefox (bmo#1771712), or portage - # (PORTAGE_SCHEDULING_POLICY) update... - addpredict /proc - - # May need a wider addpredict when using wayland+pgo. - addpredict /dev/dri - - # Allow access to GPU during PGO run - local ati_cards mesa_cards nvidia_cards render_cards - shopt -s nullglob - - ati_cards=$(echo -n /dev/ati/card* | sed 's/ /:/g') - if [[ -n "${ati_cards}" ]] ; then - addpredict "${ati_cards}" - fi - - mesa_cards=$(echo -n /dev/dri/card* | sed 's/ /:/g') - if [[ -n "${mesa_cards}" ]] ; then - addpredict "${mesa_cards}" - fi - - nvidia_cards=$(echo -n /dev/nvidia* | sed 's/ /:/g') - if [[ -n "${nvidia_cards}" ]] ; then - addpredict "${nvidia_cards}" - fi - - render_cards=$(echo -n /dev/dri/renderD128* | sed 's/ /:/g') - if [[ -n "${render_cards}" ]] ; then - addpredict "${render_cards}" - fi - - shopt -u nullglob - fi - - if ! mountpoint -q /dev/shm ; then - # If /dev/shm is not available, configure is known to fail with - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py - ewarn "/dev/shm is not mounted -- expect build failures!" - fi - - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please - # get your own set of keys. - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc" - fi - - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ" - fi - - # Mozilla API keys (see https://location.services.mozilla.com/api) - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please - # get your own set of keys. - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005" - fi - - # Ensure we use C locale when building, bug #746215 - export LC_ALL=C - fi -} - -src_unpack() { - local _lp_dir="${WORKDIR}/language_packs" - local _src_file - - if [[ ! -d "${_lp_dir}" ]] ; then - mkdir "${_lp_dir}" || die - fi - - for _src_file in ${A} ; do - if [[ ${_src_file} == *.xpi ]]; then - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!" - else - unpack ${_src_file} - fi - done -} - -src_prepare() { - if use lto; then - rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch || die - fi - - if ! use ppc64; then - rm -v "${WORKDIR}"/firefox-patches/*ppc64*.patch || die - fi - - if use x86 && use elibc_glibc ; then - rm -v "${WORKDIR}"/firefox-patches/*-musl-non-lfs64-api-on-audio_thread_priority-crate.patch || die - fi - - # Workaround for bgo#917599 - if has_version ">=dev-libs/icu-74.1" && use system-icu ; then - eapply "${WORKDIR}"/firefox-patches/0029-bmo-1862601-system-icu-74.patch - fi - rm -v "${WORKDIR}"/firefox-patches/0029-bmo-1862601-system-icu-74.patch || die - - # Workaround for bgo#915651 on musl - if use elibc_glibc ; then - rm -v "${WORKDIR}"/firefox-patches/*bgo-748849-RUST_TARGET_override.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)" - - # Workaround for bgo#915651 - if ! use elibc_glibc ; then - if use amd64 ; then - export RUST_TARGET="x86_64-unknown-linux-musl" - elif use x86 ; then - export RUST_TARGET="i686-unknown-linux-musl" - else - die "Unknown musl chost, please post your rustc -vV along with emerge --info on Gentoo's bug #915651" - fi - fi - - # 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 - - # Clear cargo checksums from crates we have patched - # moz_clear_vendor_checksums crate - moz_clear_vendor_checksums audio_thread_priority - moz_clear_vendor_checksums bindgen - moz_clear_vendor_checksums encoding_rs - moz_clear_vendor_checksums any_all_workaround - moz_clear_vendor_checksums packed_simd - - # Create build dir - BUILD_DIR="${WORKDIR}/${PN}_build" - mkdir -p "${BUILD_DIR}" || die - - # Write API keys to disk - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die - - xdg_environment_reset -} - -src_configure() { - # Show flags set at the beginning - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - local have_switched_compiler= - if use clang; then - # Force clang - einfo "Enforcing the use of clang due to USE=clang ..." - - local version_clang=$(clang --version 2>/dev/null | grep -F -- 'clang version' | awk '{ print $3 }') - [[ -n ${version_clang} ]] && version_clang=$(ver_cut 1 "${version_clang}") - [[ -z ${version_clang} ]] && die "Failed to read clang version!" - - if tc-is-gcc; then - have_switched_compiler=yes - fi - AR=llvm-ar - CC=${CHOST}-clang-${version_clang} - CXX=${CHOST}-clang++-${version_clang} - NM=llvm-nm - RANLIB=llvm-ranlib - elif ! use clang && ! tc-is-gcc ; then - # Force gcc - have_switched_compiler=yes - einfo "Enforcing the use of gcc due to USE=-clang ..." - AR=gcc-ar - CC=${CHOST}-gcc - CXX=${CHOST}-g++ - NM=gcc-nm - RANLIB=gcc-ranlib - fi - - if [[ -n "${have_switched_compiler}" ]] ; then - # Because we switched active compiler we have to ensure - # that no unsupported flags are set - strip-unsupported-flags - fi - - # Ensure we use correct toolchain, - # AS is used in a non-standard way by upstream, #bmo1654031 - export HOST_CC="$(tc-getBUILD_CC)" - export HOST_CXX="$(tc-getBUILD_CXX)" - export AS="$(tc-getCC) -c" - tc-export CC CXX LD AR AS NM OBJDUMP RANLIB PKG_CONFIG - - # Pass the correct toolchain paths through cbindgen - if tc-is-cross-compiler ; then - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}" - fi - - # Set MOZILLA_FIVE_HOME - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - - # python/mach/mach/mixin/process.py fails to detect SHELL - export SHELL="${EPREFIX}/bin/bash" - - # Set state path - export MOZBUILD_STATE_PATH="${BUILD_DIR}" - - # Set MOZCONFIG - export MOZCONFIG="${S}/.mozconfig" - - # Initialize MOZCONFIG - mozconfig_add_options_ac '' --enable-application=comm/mail - mozconfig_add_options_ac '' --enable-project=comm/mail - - # Set Gentoo defaults - mozconfig_add_options_ac 'Gentoo default' \ - --allow-addon-sideload \ - --disable-cargo-incremental \ - --disable-crashreporter \ - --disable-gpsd \ - --disable-install-strip \ - --disable-parental-controls \ - --disable-strip \ - --disable-tests \ - --disable-updater \ - --disable-wmf \ - --enable-js-shell \ - --enable-legacy-profile-creation \ - --enable-negotiateauth \ - --enable-new-pass-manager \ - --enable-official-branding \ - --enable-release \ - --enable-system-ffi \ - --enable-system-pixman \ - --enable-system-policies \ - --host="${CBUILD:-${CHOST}}" \ - --libdir="${EPREFIX}/usr/$(get_libdir)" \ - --prefix="${EPREFIX}/usr" \ - --target="${CHOST}" \ - --without-ccache \ - --without-wasm-sandboxed-libraries \ - --with-intl-api \ - --with-libclang-path="$(llvm-config --libdir)" \ - --with-system-nspr \ - --with-system-nss \ - --with-system-zlib \ - --with-toolchain-prefix="${CHOST}-" \ - --with-unsigned-addon-scopes=app,system \ - --x-includes="${ESYSROOT}/usr/include" \ - --x-libraries="${ESYSROOT}/usr/$(get_libdir)" - - # Set update channel - local update_channel=release - [[ -n ${MOZ_ESR} ]] && update_channel=esr - mozconfig_add_options_ac '' --update-channel=${update_channel} - - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then - mozconfig_add_options_ac '' --enable-rust-simd - fi - - # For future keywording: This is currently (97.0) only supported on: - # amd64, arm, arm64 & x86. - # Might want to flip the logic around if Firefox is to support more arches. - # bug 833001, bug 903411#c8 - if use ppc64 || use riscv; then - mozconfig_add_options_ac '' --disable-sandbox - else - mozconfig_add_options_ac '' --enable-sandbox - fi - - # Enable JIT on riscv64 explicitly - # Can be removed once upstream enable it by default in the future. - use riscv && mozconfig_add_options_ac 'Enable JIT for RISC-V 64' --enable-jit - - if [[ -s "${S}/api-google.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-safebrowsing-api-keyfile="${S}/api-google.key" - else - einfo "Building without Google API key ..." - fi - - if [[ -s "${S}/api-location.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-location-service-api-keyfile="${S}/api-location.key" - else - einfo "Building without Location API key ..." - fi - - if [[ -s "${S}/api-mozilla.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-mozilla-api-keyfile="${S}/api-mozilla.key" - else - einfo "Building without Mozilla API key ..." - fi - - mozconfig_use_with system-av1 - mozconfig_use_with system-harfbuzz - mozconfig_use_with system-harfbuzz system-graphite2 - mozconfig_use_with system-icu - mozconfig_use_with system-jpeg - mozconfig_use_with system-libevent - mozconfig_use_with system-libvpx - mozconfig_use_with system-png - mozconfig_use_with system-webp - - if use system-librnp; then - mozconfig_add_options_ac "+system-librnp" --enable-compile-environment - mozconfig_use_with system-librnp - else - # This controls the backend of the bundled librnp. Choices are "botan" and "openssl". - # RNP Upstream recommends to use botan. In Gentoo it's preferred to use system-librnp. - mozconfig_add_options_ac "+bundled librnp backend = botan" --with-librnp-backend="botan" - fi - - mozconfig_use_enable dbus - mozconfig_use_enable libproxy - - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme - - if use hardened ; then - mozconfig_add_options_ac "+hardened" --enable-hardening - append-ldflags "-Wl,-z,relro -Wl,-z,now" - fi - - local myaudiobackends="" - use jack && myaudiobackends+="jack," - use sndio && myaudiobackends+="sndio," - use pulseaudio && myaudiobackends+="pulseaudio," - ! use pulseaudio && myaudiobackends+="alsa," - - mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}" - - mozconfig_use_enable wifi necko-wifi - - if use X && use wayland ; then - mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland - elif ! use X && use wayland ; then - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only - else - mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3 - fi - - if use lto ; then - if use clang ; then - # Upstream only supports lld or mold when using clang. - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld - fi - - mozconfig_add_options_ac '+lto' --enable-lto=cross - - else - # ThinLTO is currently broken, see bmo#1644409. - # mold does not support gcc+lto combination. - mozconfig_add_options_ac '+lto' --enable-lto=full - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd - fi - - if use pgo ; then - mozconfig_add_options_ac '+pgo' MOZ_PGO=1 - - if use clang ; then - # Used in build/pgo/profileserver.py - export LLVM_PROFDATA="llvm-profdata" - fi - fi - else - # Avoid auto-magic on linker - if use clang ; then - # lld is upstream's default - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld - fi - - else - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "linker is set to bfd due to USE=-clang" --enable-linker=bfd - fi - fi - fi - - # LTO flag was handled via configure - filter-lto - - mozconfig_use_enable debug - if use debug ; then - mozconfig_add_options_ac '+debug' --disable-optimize - mozconfig_add_options_ac '+debug' --enable-real-time-tracing - else - mozconfig_add_options_ac 'Gentoo defaults' --disable-real-time-tracing - - if is-flag '-g*' ; then - if use clang ; then - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*') - else - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols - fi - else - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols - fi - - if is-flag '-O0' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0 - elif is-flag '-O4' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4 - elif is-flag '-O3' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3 - elif is-flag '-O1' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1 - elif is-flag '-Os' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os - else - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2 - fi - fi - - # Debug flag was handled via configure - filter-flags '-g*' - - # Optimization flag was handled via configure - filter-flags '-O*' - - # Modifications to better support ARM, bug #553364 - if use cpu_flags_arm_neon ; then - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon - - if ! tc-is-clang ; then - # thumb options aren't supported when using clang, bug 666966 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \ - --with-thumb=yes \ - --with-thumb-interwork=no - fi - fi - - if [[ ${CHOST} == armv*h* ]] ; then - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard - - if ! use system-libvpx ; then - sed -i \ - -e "s|softfp|hard|" \ - "${S}"/media/libvpx/moz.build \ - || die - fi - fi - - # With profile 23.0 elf-hack=legacy is broken with gcc. - # With Firefox-115esr elf-hack=relr isn't available (only in rapid). - # Solution: Disable build system's elf-hack completely, and add "-z,pack-relative-relocs" - # manually with gcc. - # - # # elf-hack configure option isn't available on ppc64/riscv, #916259, #929244, #930046. - if use ppc64 || use riscv ; then - :; - else - mozconfig_add_options_ac 'elf-hack disabled' --disable-elf-hack - fi - - if use amd64 || use x86 ; then - ! use clang && append-ldflags "-z,pack-relative-relocs" - fi - - # Additional ARCH support - case "${ARCH}" in - arm) - # Reduce the memory requirements for linking - if use clang ; then - # Nothing to do - :; - elif use lto ; then - append-ldflags -Wl,--no-keep-memory - else - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads - fi - ;; - esac - - if ! use elibc_glibc; then - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc - fi - - # Allow elfhack to work in combination with unstripped binaries - # when they would normally be larger than 2GiB. - append-ldflags "-Wl,--compress-debug-sections=zlib" - - # Make revdep-rebuild.sh happy; Also required for musl - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags - - # Pass $MAKEOPTS to build system - export MOZ_MAKE_FLAGS="${MAKEOPTS}" - - # Use system's Python environment - export PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach - - if use system-python-libs; then - export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="system" - else - export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none" - fi - - # Disable notification when build system has finished - export MOZ_NOSPAM=1 - - # Portage sets XARGS environment variable to "xargs -r" by default which - # breaks build system's check_prog() function which doesn't support arguments - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs" - - # Set build dir - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}" - - # Show flags we will use - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - # Handle EXTRA_CONF and show summary - local ac opt hash reason - - # Apply EXTRA_ECONF entries to $MOZCONFIG - if [[ -n ${EXTRA_ECONF} ]] ; then - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!} - for opt in "${ac[@]}"; do - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--} - done - fi - - echo - echo "==========================================================" - echo "Building ${PF} with the following configuration" - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do - [[ -z ${hash} || ${hash} == \# ]] \ - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}" - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}" - done - echo "==========================================================" - echo - - ./mach configure || die -} - -src_compile() { - local virtx_cmd= - - if tc-ld-is-mold && use lto; then - # increase ulimit with mold+lto, bugs #892641, #907485 - if ! ulimit -n 16384 1>/dev/null 2>&1 ; then - ewarn "Unable to modify ulimits - building with mold+lto might fail due to low ulimit -n resources." - ewarn "Please see bugs #892641 & #907485." - else - ulimit -n 16384 - fi - fi - - if use pgo; then - # Reset and cleanup environment variables used by GNOME/XDG - gnome2_environment_reset - - addpredict /root - - if ! use X; then - virtx_cmd=virtwl - else - virtx_cmd=virtx - fi - fi - - if ! use X; then - local -x GDK_BACKEND=wayland - else - local -x GDK_BACKEND=x11 - fi - - ${virtx_cmd} ./mach build --verbose || die -} - -src_install() { - # xpcshell is getting called during install - pax-mark m \ - "${BUILD_DIR}"/dist/bin/xpcshell \ - "${BUILD_DIR}"/dist/bin/${PN} \ - "${BUILD_DIR}"/dist/bin/plugin-container - - DESTDIR="${D}" ./mach install || die - - # Upstream cannot ship symlink but we can (bmo#658850) - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin - - # Don't install llvm-symbolizer from sys-devel/llvm package - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die - fi - - # Install policy (currently only used to disable application updates) - insinto "${MOZILLA_FIVE_HOME}/distribution" - newins "${FILESDIR}"/distribution.ini distribution.ini - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json - - # Install system-wide preferences - local PREFS_DIR="${MOZILLA_FIVE_HOME}/defaults/pref" - insinto "${PREFS_DIR}" - newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js - - local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js" - - # Set dictionary path to use system hunspell - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref" - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell"); - EOF - - # Force hwaccel prefs if USE=hwaccel is enabled - if use hwaccel ; then - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \ - >>"${GENTOO_PREFS}" \ - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js" - - if use wayland; then - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel wayland prefs" - pref("gfx.x11-egl.force-enabled", false); - EOF - else - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel x11 prefs" - pref("gfx.x11-egl.force-enabled", true); - EOF - fi - fi - - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it - if use system-harfbuzz ; then - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref" - sticky_pref("gfx.font_rendering.graphite.enabled", true); - EOF - fi - - # Install language packs - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') ) - if [[ -n "${langpacks}" ]] ; then - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}" - fi - - # Install icons - local icon_srcdir="${S}/comm/mail/branding/thunderbird" - local icon_symbolic_file="${icon_srcdir}/TB-symbolic.svg" - - insinto /usr/share/icons/hicolor/symbolic/apps - newins "${icon_symbolic_file}" ${PN}-symbolic.svg - - local icon size - for icon in "${icon_srcdir}"/default*.png ; do - size=${icon%.png} - size=${size##*/default} - - if [[ ${size} -eq 48 ]] ; then - newicon "${icon}" ${PN}.png - fi - - newicon -s ${size} "${icon}" ${PN}.png - done - - # Install menu - local app_name="Mozilla ${MOZ_PN^}" - local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop" - local desktop_filename="${PN}.desktop" - local exec_command="${PN}" - local icon="${PN}" - local use_wayland="false" - - if use wayland ; then - use_wayland="true" - fi - - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die - - sed -i \ - -e "s:@NAME@:${app_name}:" \ - -e "s:@EXEC@:${exec_command}:" \ - -e "s:@ICON@:${icon}:" \ - "${WORKDIR}/${PN}.desktop-template" \ - || die - - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}" - - rm "${WORKDIR}/${PN}.desktop-template" || die - - # Install wrapper script - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}" - newbin "${FILESDIR}/${PN}-r1.sh" ${PN} - - # Update wrapper - sed -i \ - -e "s:@PREFIX@:${EPREFIX}/usr:" \ - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \ - -e "s:@APULSELIB_DIR@:${apulselib}:" \ - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \ - "${ED}/usr/bin/${PN}" \ - || die -} - -pkg_preinst() { - xdg_pkg_preinst - - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse - # does not need to be forced into the LD_LIBRARY_PATH - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then - einfo "APULSE found; Generating library symlinks for sound support ..." - local lib - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do - # A quickpkg rolled by hand will grab symlinks as part of the package, - # so we need to avoid creating them if they already exist. - if [[ ! -L ${lib##*/} ]] ; then - ln -s "${lib}" ${lib##*/} || die - fi - done - popd &>/dev/null || die - fi -} - -pkg_postinst() { - xdg_pkg_postinst - - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then - elog "Apulse was detected at merge time on this system and so it will always be" - elog "used for sound. If you wish to use pulseaudio instead please unmerge" - elog "media-sound/apulse." - elog - fi - - local show_doh_information - local show_shortcut_information - - if [[ -z "${REPLACING_VERSIONS}" ]] ; then - # New install; Tell user that DoH is disabled by default - show_doh_information=yes - show_shortcut_information=no - else - local replacing_version - for replacing_version in ${REPLACING_VERSIONS} ; do - if ver_test "${replacing_version}" -lt 91.0 ; then - # Tell user that we no longer install a shortcut - # per supported display protocol - show_shortcut_information=yes - fi - done - fi - - if [[ -n "${show_doh_information}" ]] ; then - elog - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):" - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all" - elog "DNS traffic to Cloudflare by default is not a good idea and applications" - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5" - elog "(\"Off by choice\") by default." - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences." - fi - - if [[ -n "${show_shortcut_information}" ]] ; then - elog - elog "Since ${PN}-91.0 we no longer install multiple shortcuts for" - elog "each supported display protocol. Instead we will only install" - elog "one generic Mozilla ${PN^} shortcut." - elog "If you still want to be able to select between running Mozilla ${PN^}" - elog "on X11 or Wayland, you have to re-create these shortcuts on your own." - fi - - # bug 835078 - if use hwaccel && has_version "x11-drivers/xf86-video-nouveau"; then - ewarn "You have nouveau drivers installed in your system and 'hwaccel' " - ewarn "enabled for Firefox. Nouveau / your GPU might not support the " - ewarn "required EGL, so either disable 'hwaccel' or try the workaround " - ewarn "explained in https://bugs.gentoo.org/835078#c5 if Firefox crashes." - fi - - optfeature_header "Optional programs for extra features:" - optfeature "desktop notifications" x11-libs/libnotify - optfeature "encrypted chat support" net-libs/libotr - optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas -} diff --git a/mail-client/thunderbird/thunderbird-128.1.0.ebuild b/mail-client/thunderbird/thunderbird-128.1.0.ebuild deleted file mode 100644 index 505685b90a5c..000000000000 --- a/mail-client/thunderbird/thunderbird-128.1.0.ebuild +++ /dev/null @@ -1,1226 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -FIREFOX_PATCHSET="firefox-128esr-patches-02.tar.xz" - -LLVM_COMPAT=( 17 18 ) - -PYTHON_COMPAT=( python3_{10..12} ) -PYTHON_REQ_USE="ncurses,sqlite,ssl" - -WANT_AUTOCONF="2.1" - -VIRTUALX_REQUIRED="manual" - -MOZ_ESR= - -MOZ_PV=${PV} -MOZ_PV_SUFFIX= -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then - MOZ_PV_SUFFIX=${BASH_REMATCH[1]} - - # Convert the ebuild version to the upstream Mozilla version - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI -fi - -if [[ -n ${MOZ_ESR} ]] ; then - # ESR releases have slightly different version numbers - MOZ_PV="${MOZ_PV}esr" -fi - -MOZ_PN="${PN%-bin}" -MOZ_P="${MOZ_PN}-${MOZ_PV}" -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}" -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}" - -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info llvm-r1 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}esr" - -if [[ ${PV} == *_rc* ]] ; then - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}esr-candidates/build${PV##*_rc}" -fi - -PATCH_URIS=( - https://dev.gentoo.org/~juippis/mozilla/patchsets/${FIREFOX_PATCHSET} -) - -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}esr.source.tar.xz -> ${MOZ_P_DISTFILES}esr.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 dbus debug eme-free hardened hwaccel jack libproxy lto +openh264 pgo pulseaudio sndio" -IUSE+=" selinux +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent" -IUSE+=" +system-libvpx system-png +system-webp wayland wifi +X" - -# Thunderbird-only USE flags. -IUSE+=" +system-librnp" - -REQUIRED_USE="|| ( X wayland ) - debug? ( !system-av1 ) - pgo? ( lto ) - wayland? ( dbus ) - wifi? ( dbus )" - -TB_ONLY_DEPEND="selinux? ( sec-policy/selinux-thunderbird ) - !system-librnp? ( dev-libs/jsoncpp ) - system-librnp? ( >=dev-util/librnp-0.17.1 )" -BDEPEND="${PYTHON_DEPS} - $(llvm_gen_dep ' - sys-devel/clang:${LLVM_SLOT} - sys-devel/llvm:${LLVM_SLOT} - clang? ( - sys-devel/lld:${LLVM_SLOT} - virtual/rust:0/llvm-${LLVM_SLOT} - pgo? ( sys-libs/compiler-rt-sanitizers:${LLVM_SLOT}[profile] ) - ) - ') - app-alternatives/awk - app-arch/unzip - app-arch/zip - >=dev-util/cbindgen-0.26.0 - net-libs/nodejs - virtual/pkgconfig - !clang? ( >=virtual/rust-1.76 ) - !elibc_glibc? ( dev-lang/rust ) - amd64? ( >=dev-lang/nasm-2.14 ) - x86? ( >=dev-lang/nasm-2.14 ) - pgo? ( - X? ( - sys-devel/gettext - x11-base/xorg-server[xvfb] - x11-apps/xhost - ) - !X? ( - || ( - gui-wm/tinywl - <gui-libs/wlroots-0.17.3[tinywl(-)] - ) - x11-misc/xkeyboard-config - ) - )" -COMMON_DEPEND="${TB_ONLY_DEPEND} - >=app-accessibility/at-spi2-core-2.46.0:2 - dev-libs/expat - dev-libs/glib:2 - dev-libs/libffi:= - >=dev-libs/nss-3.101 - >=dev-libs/nspr-4.35 - media-libs/alsa-lib - media-libs/fontconfig - media-libs/freetype - media-libs/mesa - media-video/ffmpeg - sys-libs/zlib - virtual/freedesktop-icon-theme - x11-libs/cairo - x11-libs/gdk-pixbuf:2 - x11-libs/pango - x11-libs/pixman - dbus? ( sys-apps/dbus ) - jack? ( virtual/jack ) - pulseaudio? ( - || ( - media-libs/libpulse - >=media-sound/apulse-0.1.12-r4[sdk] - ) - ) - libproxy? ( net-libs/libproxy ) - selinux? ( sec-policy/selinux-mozilla ) - sndio? ( >=media-sound/sndio-1.8.0-r1 ) - system-av1? ( - >=media-libs/dav1d-1.0.0:= - >=media-libs/libaom-1.0.0:= - ) - system-harfbuzz? ( - >=media-gfx/graphite2-1.3.13 - >=media-libs/harfbuzz-2.8.1:0= - ) - system-icu? ( >=dev-libs/icu-74.1:= ) - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1:= ) - system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] ) - system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] ) - system-png? ( >=media-libs/libpng-1.6.35:0=[apng] ) - system-webp? ( >=media-libs/libwebp-1.1.0:0= ) - wayland? ( - >=media-libs/libepoxy-1.5.10-r1 - x11-libs/gtk+:3[wayland] - ) - wifi? ( - kernel_linux? ( - net-misc/networkmanager - sys-apps/dbus - ) - ) - X? ( - virtual/opengl - x11-libs/cairo[X] - x11-libs/gtk+:3[X] - x11-libs/libX11 - x11-libs/libXcomposite - x11-libs/libXdamage - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libXrandr - x11-libs/libxcb:= - )" -RDEPEND="${COMMON_DEPEND} - jack? ( virtual/jack ) - openh264? ( media-libs/openh264:*[plugin] )" -DEPEND="${COMMON_DEPEND} - X? ( - x11-base/xorg-proto - x11-libs/libICE - x11-libs/libSM - )" - -S="${WORKDIR}/${PN}-${PV%_*}" - -llvm_check_deps() { - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then - einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if use clang && ! tc-ld-is-mold ; then - if ! has_version -b "sys-devel/lld:${LLVM_SLOT}" ; then - einfo "sys-devel/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if ! has_version -b "virtual/rust:0/llvm-${LLVM_SLOT}" ; then - einfo "virtual/rust:0/llvm-${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if use pgo ; then - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing!" >&2 - einfo "Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - fi - fi - - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2 -} - -MOZ_LANGS=( - af ar ast be bg br ca cak cs cy da de dsb - el en-CA en-GB en-US es-AR es-ES es-MX et eu - fi fr fy-NL ga-IE gd gl he hr hsb hu - id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO - pa-IN pl pt-BR pt-PT rm ro ru - sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW -) - -mozilla_set_globals() { - # https://bugs.gentoo.org/587334 - local MOZ_TOO_REGIONALIZED_FOR_L10N=( - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE - ) - - local lang xflag - for lang in "${MOZ_LANGS[@]}" ; do - # en and en_US are handled internally - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then - continue - fi - - # strip region subtag if $lang is in the list - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then - xflag=${lang%%-*} - else - xflag=${lang} - fi - - SRC_URI+=" l10n_${xflag/[_@]/-}? (" - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi" - SRC_URI+=" )" - IUSE+=" l10n_${xflag/[_@]/-}" - done -} -mozilla_set_globals - -moz_clear_vendor_checksums() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -ne 1 ]] ; then - die "${FUNCNAME} requires exact one argument" - fi - - einfo "Clearing cargo checksums for ${1} ..." - - sed -i \ - -e 's/\("files":{\)[^}]*/\1/' \ - "${S}"/third_party/rust/${1}/.cargo-checksum.json \ - || die -} - -moz_install_xpi() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local DESTDIR=${1} - shift - - insinto "${DESTDIR}" - - local emid xpi_file xpi_tmp_dir - for xpi_file in "${@}" ; do - emid= - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}") - - # Unpack XPI - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die - - # Determine extension ID - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf") - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf" - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json") - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json" - else - die "failed to determine extension id" - fi - - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..." - newins "${xpi_file}" "${emid}.xpi" - done -} - -mozconfig_add_options_ac() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_add_options_mk() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_use_enable() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_enable "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -mozconfig_use_with() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_with "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -# This is a straight copypaste from toolchain-funcs.eclass's 'tc-ld-is-lld', and is temporarily -# placed here until toolchain-funcs.eclass gets an official support for mold linker. -# Please see: -# https://github.com/gentoo/gentoo/pull/28366 || -# https://github.com/gentoo/gentoo/pull/28355 -tc-ld-is-mold() { - local out - - # Ensure ld output is in English. - local -x LC_ALL=C - - # First check the linker directly. - out=$($(tc-getLD "$@") --version 2>&1) - if [[ ${out} == *"mold"* ]] ; then - return 0 - fi - - # Then see if they're selecting mold via compiler flags. - # Note: We're assuming they're using LDFLAGS to hold the - # options and not CFLAGS/CXXFLAGS. - local base="${T}/test-tc-linker" - cat <<-EOF > "${base}.c" - int main() { return 0; } - EOF - out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1) - rm -f "${base}"* - if [[ ${out} == *"mold"* ]] ; then - return 0 - fi - - # No mold here! - return 1 -} - -virtwl() { - debug-print-function ${FUNCNAME} "$@" - - [[ $# -lt 1 ]] && die "${FUNCNAME} needs at least one argument" - [[ -n $XDG_RUNTIME_DIR ]] || die "${FUNCNAME} needs XDG_RUNTIME_DIR to be set; try xdg_environment_reset" - tinywl -h >/dev/null || die 'tinywl -h failed' - - local VIRTWL VIRTWL_PID - coproc VIRTWL { WLR_BACKENDS=headless exec tinywl -s 'echo $WAYLAND_DISPLAY; read _; kill $PPID'; } - local -x WAYLAND_DISPLAY - read WAYLAND_DISPLAY <&${VIRTWL[0]} - - debug-print "${FUNCNAME}: $@" - "$@" - local r=$? - - [[ -n $VIRTWL_PID ]] || die "tinywl exited unexpectedly" - exec {VIRTWL[0]}<&- {VIRTWL[1]}>&- - return $r -} - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has usersandbox $FEATURES ; then - die "You must enable usersandbox as X server can not run as root!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6600M" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has userpriv ${FEATURES} ; then - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6400M" - fi - - check-reqs_pkg_setup - - llvm-r1_pkg_setup - - if use clang && use lto && tc-ld-is-lld ; then - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }') - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}") - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!" - - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }') - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}") - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!" - - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}." - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:" - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version" - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version" - eerror " - Build ${CATEGORY}/${PN} without USE=lto" - eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole " - eerror " llvm/clang/lld/rust chain depending on your @world updates)" - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!" - fi - fi - - python-any-r1_pkg_setup - - # Avoid PGO profiling problems due to enviroment leakage - # These should *always* be cleaned up anyway - unset \ - DBUS_SESSION_BUS_ADDRESS \ - DISPLAY \ - ORBIT_SOCKETDIR \ - SESSION_MANAGER \ - XAUTHORITY \ - XDG_CACHE_HOME \ - XDG_SESSION_COOKIE - - # Build system is using /proc/self/oom_score_adj, bug #604394 - addpredict /proc/self/oom_score_adj - - if use pgo ; then - # Update 105.0: "/proc/self/oom_score_adj" isn't enough anymore with pgo, but not sure - # whether that's due to better OOM handling by Firefox (bmo#1771712), or portage - # (PORTAGE_SCHEDULING_POLICY) update... - addpredict /proc - - # Clear tons of conditions, since PGO is hardware-dependant. - addpredict /dev - 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 - - # Workaround for bgo#917599 - if has_version ">=dev-libs/icu-74.1" && use system-icu ; then - eapply "${WORKDIR}"/firefox-patches/*-bmo-1862601-system-icu-74.patch - fi - rm -v "${WORKDIR}"/firefox-patches/*-bmo-1862601-system-icu-74.patch || die - - # Workaround for bgo#915651 on musl - if use elibc_glibc ; then - rm -v "${WORKDIR}"/firefox-patches/*bgo-748849-RUST_TARGET_override.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)" - - # Workaround for bgo#915651 - if ! use elibc_glibc ; then - if use amd64 ; then - export RUST_TARGET="x86_64-unknown-linux-musl" - elif use x86 ; then - export RUST_TARGET="i686-unknown-linux-musl" - else - die "Unknown musl chost, please post your rustc -vV along with emerge --info on Gentoo's bug #915651" - fi - fi - - # Make LTO respect MAKEOPTS - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/build/moz.configure/lto-pgo.configure || die "Failed sedding multiprocessing.cpu_count" - - # Make ICU respect MAKEOPTS - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/intl/icu_sources_data.py || die "Failed sedding multiprocessing.cpu_count" - - # Respect MAKEOPTS all around (maybe some find+sed is better) - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/python/mozbuild/mozbuild/base.py || die "Failed sedding multiprocessing.cpu_count" - - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/third_party/libwebrtc/build/toolchain/get_cpu_count.py || die "Failed sedding multiprocessing.cpu_count" - - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/third_party/libwebrtc/build/toolchain/get_concurrent_links.py || - die "Failed sedding multiprocessing.cpu_count" - - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/third_party/python/gyp/pylib/gyp/input.py || die "Failed sedding multiprocessing.cpu_count" - - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/python/mozbuild/mozbuild/code_analysis/mach_commands.py || die "Failed sedding multiprocessing.cpu_count" - - # 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 - - # Clear checksums from cargo crates we've manually patched. - # moz_clear_vendor_checksums xyz - - # Create build dir - BUILD_DIR="${WORKDIR}/${PN}_build" - mkdir -p "${BUILD_DIR}" || die - - # Write API keys to disk - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die - - xdg_environment_reset -} - -src_configure() { - # Show flags set at the beginning - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - local have_switched_compiler= - if use clang; then - # Force clang - einfo "Enforcing the use of clang due to USE=clang ..." - - local version_clang=$(clang --version 2>/dev/null | grep -F -- 'clang version' | awk '{ print $3 }') - [[ -n ${version_clang} ]] && version_clang=$(ver_cut 1 "${version_clang}") - [[ -z ${version_clang} ]] && die "Failed to read clang version!" - - if tc-is-gcc; then - have_switched_compiler=yes - fi - AR=llvm-ar - CC=${CHOST}-clang-${version_clang} - CXX=${CHOST}-clang++-${version_clang} - NM=llvm-nm - RANLIB=llvm-ranlib - elif ! use clang && ! tc-is-gcc ; then - # Force gcc - have_switched_compiler=yes - einfo "Enforcing the use of gcc due to USE=-clang ..." - AR=gcc-ar - CC=${CHOST}-gcc - CXX=${CHOST}-g++ - NM=gcc-nm - RANLIB=gcc-ranlib - fi - - if [[ -n "${have_switched_compiler}" ]] ; then - # Because we switched active compiler we have to ensure - # that no unsupported flags are set - strip-unsupported-flags - fi - - # Ensure we use correct toolchain, - # AS is used in a non-standard way by upstream, #bmo1654031 - export HOST_CC="$(tc-getBUILD_CC)" - export HOST_CXX="$(tc-getBUILD_CXX)" - export AS="$(tc-getCC) -c" - - # Configuration tests expect llvm-readelf output, bug 913130 - READELF="llvm-readelf" - - tc-export CC CXX LD AR AS NM OBJDUMP RANLIB READELF PKG_CONFIG - - # Pass the correct toolchain paths through cbindgen - if tc-is-cross-compiler ; then - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}" - fi - - # Set MOZILLA_FIVE_HOME - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - - # python/mach/mach/mixin/process.py fails to detect SHELL - export SHELL="${EPREFIX}/bin/bash" - - # Set state path - export MOZBUILD_STATE_PATH="${BUILD_DIR}" - - # Set MOZCONFIG - export MOZCONFIG="${S}/.mozconfig" - - # Initialize MOZCONFIG - mozconfig_add_options_ac '' --enable-application=comm/mail - mozconfig_add_options_ac '' --enable-project=comm/mail - - # Set Gentoo defaults - mozconfig_add_options_ac 'Gentoo default' \ - --allow-addon-sideload \ - --disable-cargo-incremental \ - --disable-crashreporter \ - --disable-disk-remnant-avoidance \ - --disable-geckodriver \ - --disable-gpsd \ - --disable-install-strip \ - --disable-legacy-profile-creation \ - --disable-parental-controls \ - --disable-strip \ - --disable-tests \ - --disable-updater \ - --disable-valgrind \ - --disable-wmf \ - --enable-js-shell \ - --enable-negotiateauth \ - --enable-new-pass-manager \ - --enable-official-branding \ - --enable-release \ - --enable-system-ffi \ - --enable-system-pixman \ - --enable-system-policies \ - --enable-thunderbird-rust \ - --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 ; then - mozconfig_add_options_ac '' --enable-rust-simd - fi - - # For future keywording: This is currently (97.0) only supported on: - # amd64, arm, arm64 & x86. - # Might want to flip the logic around if Firefox is to support more arches. - # bug 833001, bug 903411#c8 - if use ppc64 || use riscv; then - mozconfig_add_options_ac '' --disable-sandbox - else - mozconfig_add_options_ac '' --enable-sandbox - fi - - # Enable JIT on riscv64 explicitly - # Can be removed once upstream enable it by default in the future. - use riscv && mozconfig_add_options_ac 'Enable JIT for RISC-V 64' --enable-jit - - if [[ -s "${S}/api-google.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-safebrowsing-api-keyfile="${S}/api-google.key" - else - einfo "Building without Google API key ..." - fi - - if [[ -s "${S}/api-location.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-location-service-api-keyfile="${S}/api-location.key" - else - einfo "Building without Location API key ..." - fi - - if [[ -s "${S}/api-mozilla.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-mozilla-api-keyfile="${S}/api-mozilla.key" - else - einfo "Building without Mozilla API key ..." - fi - - mozconfig_use_with system-av1 - mozconfig_use_with system-harfbuzz - mozconfig_use_with system-harfbuzz system-graphite2 - mozconfig_use_with system-icu - mozconfig_use_with system-jpeg - mozconfig_use_with system-libevent - mozconfig_use_with system-libvpx - mozconfig_use_with system-png - mozconfig_use_with system-webp - - if use system-librnp; then - mozconfig_add_options_ac "+system-librnp" --enable-compile-environment - mozconfig_use_with system-librnp - else - # This controls the backend of the bundled librnp. Choices are "botan" and "openssl". - # RNP Upstream recommends to use botan. In Gentoo it's preferred to use system-librnp. - mozconfig_add_options_ac "+bundled librnp backend = botan" --with-librnp-backend="botan" - fi - - mozconfig_use_enable dbus - mozconfig_use_enable libproxy - - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme - - if use hardened ; then - mozconfig_add_options_ac "+hardened" --enable-hardening - append-ldflags "-Wl,-z,relro -Wl,-z,now" - - # Increase the FORTIFY_SOURCE value, #910071. - sed -i -e '/-D_FORTIFY_SOURCE=/s:2:3:' "${S}"/build/moz.configure/toolchain.configure || die - fi - - local myaudiobackends="" - use jack && myaudiobackends+="jack," - use sndio && myaudiobackends+="sndio," - use pulseaudio && myaudiobackends+="pulseaudio," - ! use pulseaudio && myaudiobackends+="alsa," - - mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}" - - mozconfig_use_enable wifi necko-wifi - - if use X && use wayland ; then - mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland - elif ! use X && use wayland ; then - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only - else - mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3-x11-only - fi - - # LTO is handled via configure - filter-lto - - if use lto ; then - if use clang ; then - # Upstream only supports lld or mold when using clang. - if tc-ld-is-mold ; then - # mold expects the -flto line from *FLAGS configuration, bgo#923119 - append-ldflags "-flto=thin" - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld - fi - - mozconfig_add_options_ac '+lto' --enable-lto=cross - - else - # ThinLTO is currently broken, see bmo#1644409. - # mold does not support gcc+lto combination. - mozconfig_add_options_ac '+lto' --enable-lto=full - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd - fi - - if use pgo ; then - mozconfig_add_options_ac '+pgo' MOZ_PGO=1 - - if use clang ; then - # Used in build/pgo/profileserver.py - export LLVM_PROFDATA="llvm-profdata" - fi - fi - else - # Avoid auto-magic on linker - if use clang ; then - # lld is upstream's default - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld - fi - - else - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "linker is set to bfd due to USE=-clang" --enable-linker=bfd - fi - fi - fi - - mozconfig_use_enable debug - if use debug ; then - mozconfig_add_options_ac '+debug' --disable-optimize - mozconfig_add_options_ac '+debug' --enable-jemalloc - mozconfig_add_options_ac '+debug' --enable-real-time-tracing - else - mozconfig_add_options_ac 'Gentoo defaults' --disable-real-time-tracing - - if is-flag '-g*' ; then - if use clang ; then - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*') - else - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols - fi - else - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols - fi - - if is-flag '-O0' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0 - elif is-flag '-O4' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4 - elif is-flag '-O3' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3 - elif is-flag '-O1' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1 - elif is-flag '-Os' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os - else - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2 - fi - fi - - # Debug flag was handled via configure - filter-flags '-g*' - - # Optimization flag was handled via configure - filter-flags '-O*' - - # elf-hack - # Filter "-z,pack-relative-relocs" and let the build system handle it instead. - if use amd64 || use x86 ; then - filter-flags "-z,pack-relative-relocs" - - if tc-ld-is-mold ; then - # relr-elf-hack is currently broken with mold, bgo#916259 - mozconfig_add_options_ac 'disable elf-hack with mold linker' --disable-elf-hack - else - mozconfig_add_options_ac 'relr elf-hack' --enable-elf-hack=relr - fi - elif use ppc64 || use riscv ; then - # '--disable-elf-hack' is not recognized on ppc64/riscv, - # see bgo #917049, #930046 - :; - else - mozconfig_add_options_ac 'disable elf-hack on non-supported arches' --disable-elf-hack - fi - - if ! use elibc_glibc; then - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc - fi - - # System-av1 fix - use system-av1 && append-ldflags "-Wl,--undefined-version" - - # 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 - - export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none" - - # Disable notification when build system has finished - export MOZ_NOSPAM=1 - - # Portage sets XARGS environment variable to "xargs -r" by default which - # breaks build system's check_prog() function which doesn't support arguments - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs" - - # Set build dir - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}" - - # Show flags we will use - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - # Handle EXTRA_CONF and show summary - local ac opt hash reason - - # Apply EXTRA_ECONF entries to $MOZCONFIG - if [[ -n ${EXTRA_ECONF} ]] ; then - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!} - for opt in "${ac[@]}"; do - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--} - done - fi - - echo - echo "==========================================================" - echo "Building ${PF} with the following configuration" - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do - [[ -z ${hash} || ${hash} == \# ]] \ - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}" - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}" - done - echo "==========================================================" - echo - - ./mach configure || die -} - -src_compile() { - local virtx_cmd= - - if tc-ld-is-mold && use lto; then - # increase ulimit with mold+lto, bugs #892641, #907485 - if ! ulimit -n 16384 1>/dev/null 2>&1 ; then - ewarn "Unable to modify ulimits - building with mold+lto might fail due to low ulimit -n resources." - ewarn "Please see bugs #892641 & #907485." - else - ulimit -n 16384 - fi - fi - - if use pgo; then - # Reset and cleanup environment variables used by GNOME/XDG - gnome2_environment_reset - - addpredict /root - - if ! use X; then - virtx_cmd=virtwl - else - virtx_cmd=virtx - fi - fi - - if ! use X; then - local -x GDK_BACKEND=wayland - else - local -x GDK_BACKEND=x11 - fi - - ${virtx_cmd} ./mach build --verbose || die -} - -src_install() { - # xpcshell is getting called during install - pax-mark m \ - "${BUILD_DIR}"/dist/bin/xpcshell \ - "${BUILD_DIR}"/dist/bin/${PN} \ - "${BUILD_DIR}"/dist/bin/plugin-container - - DESTDIR="${D}" ./mach install || die - - # Upstream cannot ship symlink but we can (bmo#658850) - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin - - # Don't install llvm-symbolizer from sys-devel/llvm package - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die - fi - - # Install policy (currently only used to disable application updates) - insinto "${MOZILLA_FIVE_HOME}/distribution" - newins "${FILESDIR}"/distribution.ini distribution.ini - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json - - # Install system-wide preferences - local PREFS_DIR="${MOZILLA_FIVE_HOME}/defaults/pref" - insinto "${PREFS_DIR}" - newins "${FILESDIR}"/gentoo-default-prefs-r1.js gentoo-prefs.js - - local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js" - - # 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 - - # 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 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 - - optfeature_header "Optional programs for extra features:" - optfeature "desktop notifications" x11-libs/libnotify - optfeature "encrypted chat support" net-libs/libotr - optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas -} diff --git a/mail-client/thunderbird/thunderbird-128.1.1.ebuild b/mail-client/thunderbird/thunderbird-128.1.1.ebuild deleted file mode 100644 index 505685b90a5c..000000000000 --- a/mail-client/thunderbird/thunderbird-128.1.1.ebuild +++ /dev/null @@ -1,1226 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -FIREFOX_PATCHSET="firefox-128esr-patches-02.tar.xz" - -LLVM_COMPAT=( 17 18 ) - -PYTHON_COMPAT=( python3_{10..12} ) -PYTHON_REQ_USE="ncurses,sqlite,ssl" - -WANT_AUTOCONF="2.1" - -VIRTUALX_REQUIRED="manual" - -MOZ_ESR= - -MOZ_PV=${PV} -MOZ_PV_SUFFIX= -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then - MOZ_PV_SUFFIX=${BASH_REMATCH[1]} - - # Convert the ebuild version to the upstream Mozilla version - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI -fi - -if [[ -n ${MOZ_ESR} ]] ; then - # ESR releases have slightly different version numbers - MOZ_PV="${MOZ_PV}esr" -fi - -MOZ_PN="${PN%-bin}" -MOZ_P="${MOZ_PN}-${MOZ_PV}" -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}" -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}" - -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info llvm-r1 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}esr" - -if [[ ${PV} == *_rc* ]] ; then - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}esr-candidates/build${PV##*_rc}" -fi - -PATCH_URIS=( - https://dev.gentoo.org/~juippis/mozilla/patchsets/${FIREFOX_PATCHSET} -) - -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}esr.source.tar.xz -> ${MOZ_P_DISTFILES}esr.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 dbus debug eme-free hardened hwaccel jack libproxy lto +openh264 pgo pulseaudio sndio" -IUSE+=" selinux +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent" -IUSE+=" +system-libvpx system-png +system-webp wayland wifi +X" - -# Thunderbird-only USE flags. -IUSE+=" +system-librnp" - -REQUIRED_USE="|| ( X wayland ) - debug? ( !system-av1 ) - pgo? ( lto ) - wayland? ( dbus ) - wifi? ( dbus )" - -TB_ONLY_DEPEND="selinux? ( sec-policy/selinux-thunderbird ) - !system-librnp? ( dev-libs/jsoncpp ) - system-librnp? ( >=dev-util/librnp-0.17.1 )" -BDEPEND="${PYTHON_DEPS} - $(llvm_gen_dep ' - sys-devel/clang:${LLVM_SLOT} - sys-devel/llvm:${LLVM_SLOT} - clang? ( - sys-devel/lld:${LLVM_SLOT} - virtual/rust:0/llvm-${LLVM_SLOT} - pgo? ( sys-libs/compiler-rt-sanitizers:${LLVM_SLOT}[profile] ) - ) - ') - app-alternatives/awk - app-arch/unzip - app-arch/zip - >=dev-util/cbindgen-0.26.0 - net-libs/nodejs - virtual/pkgconfig - !clang? ( >=virtual/rust-1.76 ) - !elibc_glibc? ( dev-lang/rust ) - amd64? ( >=dev-lang/nasm-2.14 ) - x86? ( >=dev-lang/nasm-2.14 ) - pgo? ( - X? ( - sys-devel/gettext - x11-base/xorg-server[xvfb] - x11-apps/xhost - ) - !X? ( - || ( - gui-wm/tinywl - <gui-libs/wlroots-0.17.3[tinywl(-)] - ) - x11-misc/xkeyboard-config - ) - )" -COMMON_DEPEND="${TB_ONLY_DEPEND} - >=app-accessibility/at-spi2-core-2.46.0:2 - dev-libs/expat - dev-libs/glib:2 - dev-libs/libffi:= - >=dev-libs/nss-3.101 - >=dev-libs/nspr-4.35 - media-libs/alsa-lib - media-libs/fontconfig - media-libs/freetype - media-libs/mesa - media-video/ffmpeg - sys-libs/zlib - virtual/freedesktop-icon-theme - x11-libs/cairo - x11-libs/gdk-pixbuf:2 - x11-libs/pango - x11-libs/pixman - dbus? ( sys-apps/dbus ) - jack? ( virtual/jack ) - pulseaudio? ( - || ( - media-libs/libpulse - >=media-sound/apulse-0.1.12-r4[sdk] - ) - ) - libproxy? ( net-libs/libproxy ) - selinux? ( sec-policy/selinux-mozilla ) - sndio? ( >=media-sound/sndio-1.8.0-r1 ) - system-av1? ( - >=media-libs/dav1d-1.0.0:= - >=media-libs/libaom-1.0.0:= - ) - system-harfbuzz? ( - >=media-gfx/graphite2-1.3.13 - >=media-libs/harfbuzz-2.8.1:0= - ) - system-icu? ( >=dev-libs/icu-74.1:= ) - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1:= ) - system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] ) - system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] ) - system-png? ( >=media-libs/libpng-1.6.35:0=[apng] ) - system-webp? ( >=media-libs/libwebp-1.1.0:0= ) - wayland? ( - >=media-libs/libepoxy-1.5.10-r1 - x11-libs/gtk+:3[wayland] - ) - wifi? ( - kernel_linux? ( - net-misc/networkmanager - sys-apps/dbus - ) - ) - X? ( - virtual/opengl - x11-libs/cairo[X] - x11-libs/gtk+:3[X] - x11-libs/libX11 - x11-libs/libXcomposite - x11-libs/libXdamage - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libXrandr - x11-libs/libxcb:= - )" -RDEPEND="${COMMON_DEPEND} - jack? ( virtual/jack ) - openh264? ( media-libs/openh264:*[plugin] )" -DEPEND="${COMMON_DEPEND} - X? ( - x11-base/xorg-proto - x11-libs/libICE - x11-libs/libSM - )" - -S="${WORKDIR}/${PN}-${PV%_*}" - -llvm_check_deps() { - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then - einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if use clang && ! tc-ld-is-mold ; then - if ! has_version -b "sys-devel/lld:${LLVM_SLOT}" ; then - einfo "sys-devel/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if ! has_version -b "virtual/rust:0/llvm-${LLVM_SLOT}" ; then - einfo "virtual/rust:0/llvm-${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if use pgo ; then - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing!" >&2 - einfo "Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - fi - fi - - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2 -} - -MOZ_LANGS=( - af ar ast be bg br ca cak cs cy da de dsb - el en-CA en-GB en-US es-AR es-ES es-MX et eu - fi fr fy-NL ga-IE gd gl he hr hsb hu - id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO - pa-IN pl pt-BR pt-PT rm ro ru - sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW -) - -mozilla_set_globals() { - # https://bugs.gentoo.org/587334 - local MOZ_TOO_REGIONALIZED_FOR_L10N=( - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE - ) - - local lang xflag - for lang in "${MOZ_LANGS[@]}" ; do - # en and en_US are handled internally - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then - continue - fi - - # strip region subtag if $lang is in the list - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then - xflag=${lang%%-*} - else - xflag=${lang} - fi - - SRC_URI+=" l10n_${xflag/[_@]/-}? (" - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi" - SRC_URI+=" )" - IUSE+=" l10n_${xflag/[_@]/-}" - done -} -mozilla_set_globals - -moz_clear_vendor_checksums() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -ne 1 ]] ; then - die "${FUNCNAME} requires exact one argument" - fi - - einfo "Clearing cargo checksums for ${1} ..." - - sed -i \ - -e 's/\("files":{\)[^}]*/\1/' \ - "${S}"/third_party/rust/${1}/.cargo-checksum.json \ - || die -} - -moz_install_xpi() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local DESTDIR=${1} - shift - - insinto "${DESTDIR}" - - local emid xpi_file xpi_tmp_dir - for xpi_file in "${@}" ; do - emid= - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}") - - # Unpack XPI - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die - - # Determine extension ID - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf") - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf" - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json") - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json" - else - die "failed to determine extension id" - fi - - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..." - newins "${xpi_file}" "${emid}.xpi" - done -} - -mozconfig_add_options_ac() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_add_options_mk() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_use_enable() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_enable "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -mozconfig_use_with() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_with "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -# This is a straight copypaste from toolchain-funcs.eclass's 'tc-ld-is-lld', and is temporarily -# placed here until toolchain-funcs.eclass gets an official support for mold linker. -# Please see: -# https://github.com/gentoo/gentoo/pull/28366 || -# https://github.com/gentoo/gentoo/pull/28355 -tc-ld-is-mold() { - local out - - # Ensure ld output is in English. - local -x LC_ALL=C - - # First check the linker directly. - out=$($(tc-getLD "$@") --version 2>&1) - if [[ ${out} == *"mold"* ]] ; then - return 0 - fi - - # Then see if they're selecting mold via compiler flags. - # Note: We're assuming they're using LDFLAGS to hold the - # options and not CFLAGS/CXXFLAGS. - local base="${T}/test-tc-linker" - cat <<-EOF > "${base}.c" - int main() { return 0; } - EOF - out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1) - rm -f "${base}"* - if [[ ${out} == *"mold"* ]] ; then - return 0 - fi - - # No mold here! - return 1 -} - -virtwl() { - debug-print-function ${FUNCNAME} "$@" - - [[ $# -lt 1 ]] && die "${FUNCNAME} needs at least one argument" - [[ -n $XDG_RUNTIME_DIR ]] || die "${FUNCNAME} needs XDG_RUNTIME_DIR to be set; try xdg_environment_reset" - tinywl -h >/dev/null || die 'tinywl -h failed' - - local VIRTWL VIRTWL_PID - coproc VIRTWL { WLR_BACKENDS=headless exec tinywl -s 'echo $WAYLAND_DISPLAY; read _; kill $PPID'; } - local -x WAYLAND_DISPLAY - read WAYLAND_DISPLAY <&${VIRTWL[0]} - - debug-print "${FUNCNAME}: $@" - "$@" - local r=$? - - [[ -n $VIRTWL_PID ]] || die "tinywl exited unexpectedly" - exec {VIRTWL[0]}<&- {VIRTWL[1]}>&- - return $r -} - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has usersandbox $FEATURES ; then - die "You must enable usersandbox as X server can not run as root!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6600M" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has userpriv ${FEATURES} ; then - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6400M" - fi - - check-reqs_pkg_setup - - llvm-r1_pkg_setup - - if use clang && use lto && tc-ld-is-lld ; then - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }') - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}") - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!" - - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }') - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}") - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!" - - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}." - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:" - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version" - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version" - eerror " - Build ${CATEGORY}/${PN} without USE=lto" - eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole " - eerror " llvm/clang/lld/rust chain depending on your @world updates)" - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!" - fi - fi - - python-any-r1_pkg_setup - - # Avoid PGO profiling problems due to enviroment leakage - # These should *always* be cleaned up anyway - unset \ - DBUS_SESSION_BUS_ADDRESS \ - DISPLAY \ - ORBIT_SOCKETDIR \ - SESSION_MANAGER \ - XAUTHORITY \ - XDG_CACHE_HOME \ - XDG_SESSION_COOKIE - - # Build system is using /proc/self/oom_score_adj, bug #604394 - addpredict /proc/self/oom_score_adj - - if use pgo ; then - # Update 105.0: "/proc/self/oom_score_adj" isn't enough anymore with pgo, but not sure - # whether that's due to better OOM handling by Firefox (bmo#1771712), or portage - # (PORTAGE_SCHEDULING_POLICY) update... - addpredict /proc - - # Clear tons of conditions, since PGO is hardware-dependant. - addpredict /dev - 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 - - # Workaround for bgo#917599 - if has_version ">=dev-libs/icu-74.1" && use system-icu ; then - eapply "${WORKDIR}"/firefox-patches/*-bmo-1862601-system-icu-74.patch - fi - rm -v "${WORKDIR}"/firefox-patches/*-bmo-1862601-system-icu-74.patch || die - - # Workaround for bgo#915651 on musl - if use elibc_glibc ; then - rm -v "${WORKDIR}"/firefox-patches/*bgo-748849-RUST_TARGET_override.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)" - - # Workaround for bgo#915651 - if ! use elibc_glibc ; then - if use amd64 ; then - export RUST_TARGET="x86_64-unknown-linux-musl" - elif use x86 ; then - export RUST_TARGET="i686-unknown-linux-musl" - else - die "Unknown musl chost, please post your rustc -vV along with emerge --info on Gentoo's bug #915651" - fi - fi - - # Make LTO respect MAKEOPTS - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/build/moz.configure/lto-pgo.configure || die "Failed sedding multiprocessing.cpu_count" - - # Make ICU respect MAKEOPTS - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/intl/icu_sources_data.py || die "Failed sedding multiprocessing.cpu_count" - - # Respect MAKEOPTS all around (maybe some find+sed is better) - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/python/mozbuild/mozbuild/base.py || die "Failed sedding multiprocessing.cpu_count" - - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/third_party/libwebrtc/build/toolchain/get_cpu_count.py || die "Failed sedding multiprocessing.cpu_count" - - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/third_party/libwebrtc/build/toolchain/get_concurrent_links.py || - die "Failed sedding multiprocessing.cpu_count" - - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/third_party/python/gyp/pylib/gyp/input.py || die "Failed sedding multiprocessing.cpu_count" - - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/python/mozbuild/mozbuild/code_analysis/mach_commands.py || die "Failed sedding multiprocessing.cpu_count" - - # 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 - - # Clear checksums from cargo crates we've manually patched. - # moz_clear_vendor_checksums xyz - - # Create build dir - BUILD_DIR="${WORKDIR}/${PN}_build" - mkdir -p "${BUILD_DIR}" || die - - # Write API keys to disk - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die - - xdg_environment_reset -} - -src_configure() { - # Show flags set at the beginning - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - local have_switched_compiler= - if use clang; then - # Force clang - einfo "Enforcing the use of clang due to USE=clang ..." - - local version_clang=$(clang --version 2>/dev/null | grep -F -- 'clang version' | awk '{ print $3 }') - [[ -n ${version_clang} ]] && version_clang=$(ver_cut 1 "${version_clang}") - [[ -z ${version_clang} ]] && die "Failed to read clang version!" - - if tc-is-gcc; then - have_switched_compiler=yes - fi - AR=llvm-ar - CC=${CHOST}-clang-${version_clang} - CXX=${CHOST}-clang++-${version_clang} - NM=llvm-nm - RANLIB=llvm-ranlib - elif ! use clang && ! tc-is-gcc ; then - # Force gcc - have_switched_compiler=yes - einfo "Enforcing the use of gcc due to USE=-clang ..." - AR=gcc-ar - CC=${CHOST}-gcc - CXX=${CHOST}-g++ - NM=gcc-nm - RANLIB=gcc-ranlib - fi - - if [[ -n "${have_switched_compiler}" ]] ; then - # Because we switched active compiler we have to ensure - # that no unsupported flags are set - strip-unsupported-flags - fi - - # Ensure we use correct toolchain, - # AS is used in a non-standard way by upstream, #bmo1654031 - export HOST_CC="$(tc-getBUILD_CC)" - export HOST_CXX="$(tc-getBUILD_CXX)" - export AS="$(tc-getCC) -c" - - # Configuration tests expect llvm-readelf output, bug 913130 - READELF="llvm-readelf" - - tc-export CC CXX LD AR AS NM OBJDUMP RANLIB READELF PKG_CONFIG - - # Pass the correct toolchain paths through cbindgen - if tc-is-cross-compiler ; then - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}" - fi - - # Set MOZILLA_FIVE_HOME - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - - # python/mach/mach/mixin/process.py fails to detect SHELL - export SHELL="${EPREFIX}/bin/bash" - - # Set state path - export MOZBUILD_STATE_PATH="${BUILD_DIR}" - - # Set MOZCONFIG - export MOZCONFIG="${S}/.mozconfig" - - # Initialize MOZCONFIG - mozconfig_add_options_ac '' --enable-application=comm/mail - mozconfig_add_options_ac '' --enable-project=comm/mail - - # Set Gentoo defaults - mozconfig_add_options_ac 'Gentoo default' \ - --allow-addon-sideload \ - --disable-cargo-incremental \ - --disable-crashreporter \ - --disable-disk-remnant-avoidance \ - --disable-geckodriver \ - --disable-gpsd \ - --disable-install-strip \ - --disable-legacy-profile-creation \ - --disable-parental-controls \ - --disable-strip \ - --disable-tests \ - --disable-updater \ - --disable-valgrind \ - --disable-wmf \ - --enable-js-shell \ - --enable-negotiateauth \ - --enable-new-pass-manager \ - --enable-official-branding \ - --enable-release \ - --enable-system-ffi \ - --enable-system-pixman \ - --enable-system-policies \ - --enable-thunderbird-rust \ - --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 ; then - mozconfig_add_options_ac '' --enable-rust-simd - fi - - # For future keywording: This is currently (97.0) only supported on: - # amd64, arm, arm64 & x86. - # Might want to flip the logic around if Firefox is to support more arches. - # bug 833001, bug 903411#c8 - if use ppc64 || use riscv; then - mozconfig_add_options_ac '' --disable-sandbox - else - mozconfig_add_options_ac '' --enable-sandbox - fi - - # Enable JIT on riscv64 explicitly - # Can be removed once upstream enable it by default in the future. - use riscv && mozconfig_add_options_ac 'Enable JIT for RISC-V 64' --enable-jit - - if [[ -s "${S}/api-google.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-safebrowsing-api-keyfile="${S}/api-google.key" - else - einfo "Building without Google API key ..." - fi - - if [[ -s "${S}/api-location.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-location-service-api-keyfile="${S}/api-location.key" - else - einfo "Building without Location API key ..." - fi - - if [[ -s "${S}/api-mozilla.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-mozilla-api-keyfile="${S}/api-mozilla.key" - else - einfo "Building without Mozilla API key ..." - fi - - mozconfig_use_with system-av1 - mozconfig_use_with system-harfbuzz - mozconfig_use_with system-harfbuzz system-graphite2 - mozconfig_use_with system-icu - mozconfig_use_with system-jpeg - mozconfig_use_with system-libevent - mozconfig_use_with system-libvpx - mozconfig_use_with system-png - mozconfig_use_with system-webp - - if use system-librnp; then - mozconfig_add_options_ac "+system-librnp" --enable-compile-environment - mozconfig_use_with system-librnp - else - # This controls the backend of the bundled librnp. Choices are "botan" and "openssl". - # RNP Upstream recommends to use botan. In Gentoo it's preferred to use system-librnp. - mozconfig_add_options_ac "+bundled librnp backend = botan" --with-librnp-backend="botan" - fi - - mozconfig_use_enable dbus - mozconfig_use_enable libproxy - - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme - - if use hardened ; then - mozconfig_add_options_ac "+hardened" --enable-hardening - append-ldflags "-Wl,-z,relro -Wl,-z,now" - - # Increase the FORTIFY_SOURCE value, #910071. - sed -i -e '/-D_FORTIFY_SOURCE=/s:2:3:' "${S}"/build/moz.configure/toolchain.configure || die - fi - - local myaudiobackends="" - use jack && myaudiobackends+="jack," - use sndio && myaudiobackends+="sndio," - use pulseaudio && myaudiobackends+="pulseaudio," - ! use pulseaudio && myaudiobackends+="alsa," - - mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}" - - mozconfig_use_enable wifi necko-wifi - - if use X && use wayland ; then - mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland - elif ! use X && use wayland ; then - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only - else - mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3-x11-only - fi - - # LTO is handled via configure - filter-lto - - if use lto ; then - if use clang ; then - # Upstream only supports lld or mold when using clang. - if tc-ld-is-mold ; then - # mold expects the -flto line from *FLAGS configuration, bgo#923119 - append-ldflags "-flto=thin" - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld - fi - - mozconfig_add_options_ac '+lto' --enable-lto=cross - - else - # ThinLTO is currently broken, see bmo#1644409. - # mold does not support gcc+lto combination. - mozconfig_add_options_ac '+lto' --enable-lto=full - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd - fi - - if use pgo ; then - mozconfig_add_options_ac '+pgo' MOZ_PGO=1 - - if use clang ; then - # Used in build/pgo/profileserver.py - export LLVM_PROFDATA="llvm-profdata" - fi - fi - else - # Avoid auto-magic on linker - if use clang ; then - # lld is upstream's default - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld - fi - - else - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "linker is set to bfd due to USE=-clang" --enable-linker=bfd - fi - fi - fi - - mozconfig_use_enable debug - if use debug ; then - mozconfig_add_options_ac '+debug' --disable-optimize - mozconfig_add_options_ac '+debug' --enable-jemalloc - mozconfig_add_options_ac '+debug' --enable-real-time-tracing - else - mozconfig_add_options_ac 'Gentoo defaults' --disable-real-time-tracing - - if is-flag '-g*' ; then - if use clang ; then - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*') - else - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols - fi - else - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols - fi - - if is-flag '-O0' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0 - elif is-flag '-O4' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4 - elif is-flag '-O3' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3 - elif is-flag '-O1' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1 - elif is-flag '-Os' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os - else - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2 - fi - fi - - # Debug flag was handled via configure - filter-flags '-g*' - - # Optimization flag was handled via configure - filter-flags '-O*' - - # elf-hack - # Filter "-z,pack-relative-relocs" and let the build system handle it instead. - if use amd64 || use x86 ; then - filter-flags "-z,pack-relative-relocs" - - if tc-ld-is-mold ; then - # relr-elf-hack is currently broken with mold, bgo#916259 - mozconfig_add_options_ac 'disable elf-hack with mold linker' --disable-elf-hack - else - mozconfig_add_options_ac 'relr elf-hack' --enable-elf-hack=relr - fi - elif use ppc64 || use riscv ; then - # '--disable-elf-hack' is not recognized on ppc64/riscv, - # see bgo #917049, #930046 - :; - else - mozconfig_add_options_ac 'disable elf-hack on non-supported arches' --disable-elf-hack - fi - - if ! use elibc_glibc; then - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc - fi - - # System-av1 fix - use system-av1 && append-ldflags "-Wl,--undefined-version" - - # 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 - - export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none" - - # Disable notification when build system has finished - export MOZ_NOSPAM=1 - - # Portage sets XARGS environment variable to "xargs -r" by default which - # breaks build system's check_prog() function which doesn't support arguments - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs" - - # Set build dir - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}" - - # Show flags we will use - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - # Handle EXTRA_CONF and show summary - local ac opt hash reason - - # Apply EXTRA_ECONF entries to $MOZCONFIG - if [[ -n ${EXTRA_ECONF} ]] ; then - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!} - for opt in "${ac[@]}"; do - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--} - done - fi - - echo - echo "==========================================================" - echo "Building ${PF} with the following configuration" - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do - [[ -z ${hash} || ${hash} == \# ]] \ - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}" - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}" - done - echo "==========================================================" - echo - - ./mach configure || die -} - -src_compile() { - local virtx_cmd= - - if tc-ld-is-mold && use lto; then - # increase ulimit with mold+lto, bugs #892641, #907485 - if ! ulimit -n 16384 1>/dev/null 2>&1 ; then - ewarn "Unable to modify ulimits - building with mold+lto might fail due to low ulimit -n resources." - ewarn "Please see bugs #892641 & #907485." - else - ulimit -n 16384 - fi - fi - - if use pgo; then - # Reset and cleanup environment variables used by GNOME/XDG - gnome2_environment_reset - - addpredict /root - - if ! use X; then - virtx_cmd=virtwl - else - virtx_cmd=virtx - fi - fi - - if ! use X; then - local -x GDK_BACKEND=wayland - else - local -x GDK_BACKEND=x11 - fi - - ${virtx_cmd} ./mach build --verbose || die -} - -src_install() { - # xpcshell is getting called during install - pax-mark m \ - "${BUILD_DIR}"/dist/bin/xpcshell \ - "${BUILD_DIR}"/dist/bin/${PN} \ - "${BUILD_DIR}"/dist/bin/plugin-container - - DESTDIR="${D}" ./mach install || die - - # Upstream cannot ship symlink but we can (bmo#658850) - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin - - # Don't install llvm-symbolizer from sys-devel/llvm package - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die - fi - - # Install policy (currently only used to disable application updates) - insinto "${MOZILLA_FIVE_HOME}/distribution" - newins "${FILESDIR}"/distribution.ini distribution.ini - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json - - # Install system-wide preferences - local PREFS_DIR="${MOZILLA_FIVE_HOME}/defaults/pref" - insinto "${PREFS_DIR}" - newins "${FILESDIR}"/gentoo-default-prefs-r1.js gentoo-prefs.js - - local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js" - - # 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 - - # 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 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 - - optfeature_header "Optional programs for extra features:" - optfeature "desktop notifications" x11-libs/libnotify - optfeature "encrypted chat support" net-libs/libotr - optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas -} diff --git a/mail-client/thunderbird/thunderbird-128.2.0.ebuild b/mail-client/thunderbird/thunderbird-128.2.0.ebuild deleted file mode 100644 index 37b1a02af219..000000000000 --- a/mail-client/thunderbird/thunderbird-128.2.0.ebuild +++ /dev/null @@ -1,1190 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -FIREFOX_PATCHSET="firefox-128esr-patches-03.tar.xz" - -LLVM_COMPAT=( 17 18 ) - -PYTHON_COMPAT=( python3_{10..12} ) -PYTHON_REQ_USE="ncurses,sqlite,ssl" - -WANT_AUTOCONF="2.1" - -VIRTUALX_REQUIRED="manual" - -MOZ_ESR= - -MOZ_PV=${PV} -MOZ_PV_SUFFIX= -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then - MOZ_PV_SUFFIX=${BASH_REMATCH[1]} - - # Convert the ebuild version to the upstream Mozilla version - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI -fi - -if [[ -n ${MOZ_ESR} ]] ; then - # ESR releases have slightly different version numbers - MOZ_PV="${MOZ_PV}esr" -fi - -MOZ_PN="${PN%-bin}" -MOZ_P="${MOZ_PN}-${MOZ_PV}" -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}" -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}" - -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info llvm-r1 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}esr" - -if [[ ${PV} == *_rc* ]] ; then - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}esr-candidates/build${PV##*_rc}" -fi - -PATCH_URIS=( - https://dev.gentoo.org/~juippis/mozilla/patchsets/${FIREFOX_PATCHSET} -) - -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}esr.source.tar.xz -> ${MOZ_P_DISTFILES}esr.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 dbus debug eme-free hardened hwaccel jack libproxy lto +openh264 pgo pulseaudio sndio" -IUSE+=" selinux +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent" -IUSE+=" +system-libvpx system-png +system-webp wayland wifi +X" - -# Thunderbird-only USE flags. -IUSE+=" +system-librnp" - -REQUIRED_USE="|| ( X wayland ) - debug? ( !system-av1 ) - pgo? ( lto ) - wayland? ( dbus ) - wifi? ( dbus )" - -TB_ONLY_DEPEND="selinux? ( sec-policy/selinux-thunderbird ) - !system-librnp? ( dev-libs/jsoncpp ) - system-librnp? ( >=dev-util/librnp-0.17.1 )" -BDEPEND="${PYTHON_DEPS} - $(llvm_gen_dep ' - sys-devel/clang:${LLVM_SLOT} - sys-devel/llvm:${LLVM_SLOT} - clang? ( - sys-devel/lld:${LLVM_SLOT} - virtual/rust:0/llvm-${LLVM_SLOT} - pgo? ( sys-libs/compiler-rt-sanitizers:${LLVM_SLOT}[profile] ) - ) - ') - app-alternatives/awk - app-arch/unzip - app-arch/zip - >=dev-util/cbindgen-0.26.0 - net-libs/nodejs - virtual/pkgconfig - !clang? ( >=virtual/rust-1.76 ) - !elibc_glibc? ( dev-lang/rust ) - amd64? ( >=dev-lang/nasm-2.14 ) - x86? ( >=dev-lang/nasm-2.14 ) - pgo? ( - X? ( - sys-devel/gettext - x11-base/xorg-server[xvfb] - x11-apps/xhost - ) - !X? ( - || ( - gui-wm/tinywl - <gui-libs/wlroots-0.17.3[tinywl(-)] - ) - x11-misc/xkeyboard-config - ) - )" -COMMON_DEPEND="${TB_ONLY_DEPEND} - >=app-accessibility/at-spi2-core-2.46.0:2 - dev-libs/expat - dev-libs/glib:2 - dev-libs/libffi:= - >=dev-libs/nss-3.101 - >=dev-libs/nspr-4.35 - media-libs/alsa-lib - media-libs/fontconfig - media-libs/freetype - media-libs/mesa - media-video/ffmpeg - sys-libs/zlib - virtual/freedesktop-icon-theme - x11-libs/cairo - x11-libs/gdk-pixbuf:2 - x11-libs/pango - x11-libs/pixman - dbus? ( sys-apps/dbus ) - jack? ( virtual/jack ) - pulseaudio? ( - || ( - media-libs/libpulse - >=media-sound/apulse-0.1.12-r4[sdk] - ) - ) - libproxy? ( net-libs/libproxy ) - selinux? ( sec-policy/selinux-mozilla ) - sndio? ( >=media-sound/sndio-1.8.0-r1 ) - system-av1? ( - >=media-libs/dav1d-1.0.0:= - >=media-libs/libaom-1.0.0:= - ) - system-harfbuzz? ( - >=media-gfx/graphite2-1.3.13 - >=media-libs/harfbuzz-2.8.1:0= - ) - system-icu? ( >=dev-libs/icu-74.1:= ) - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1:= ) - system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] ) - system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] ) - system-png? ( >=media-libs/libpng-1.6.35:0=[apng] ) - system-webp? ( >=media-libs/libwebp-1.1.0:0= ) - wayland? ( - >=media-libs/libepoxy-1.5.10-r1 - x11-libs/gtk+:3[wayland] - ) - wifi? ( - kernel_linux? ( - || ( - net-misc/networkmanager - net-misc/connman[networkmanager] - ) - sys-apps/dbus - ) - ) - X? ( - virtual/opengl - x11-libs/cairo[X] - x11-libs/gtk+:3[X] - x11-libs/libX11 - x11-libs/libXcomposite - x11-libs/libXdamage - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libXrandr - x11-libs/libxcb:= - )" -RDEPEND="${COMMON_DEPEND} - jack? ( virtual/jack ) - openh264? ( media-libs/openh264:*[plugin] )" -DEPEND="${COMMON_DEPEND} - X? ( - x11-base/xorg-proto - x11-libs/libICE - x11-libs/libSM - )" - -S="${WORKDIR}/${PN}-${PV%_*}" - -llvm_check_deps() { - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then - einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if use clang && ! tc-ld-is-mold ; then - if ! has_version -b "sys-devel/lld:${LLVM_SLOT}" ; then - einfo "sys-devel/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if ! has_version -b "virtual/rust:0/llvm-${LLVM_SLOT}" ; then - einfo "virtual/rust:0/llvm-${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if use pgo ; then - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing!" >&2 - einfo "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}" -} - -virtwl() { - debug-print-function ${FUNCNAME} "$@" - - [[ $# -lt 1 ]] && die "${FUNCNAME} needs at least one argument" - [[ -n $XDG_RUNTIME_DIR ]] || die "${FUNCNAME} needs XDG_RUNTIME_DIR to be set; try xdg_environment_reset" - tinywl -h >/dev/null || die 'tinywl -h failed' - - local VIRTWL VIRTWL_PID - coproc VIRTWL { WLR_BACKENDS=headless exec tinywl -s 'echo $WAYLAND_DISPLAY; read _; kill $PPID'; } - local -x WAYLAND_DISPLAY - read WAYLAND_DISPLAY <&${VIRTWL[0]} - - debug-print "${FUNCNAME}: $@" - "$@" - local r=$? - - [[ -n $VIRTWL_PID ]] || die "tinywl exited unexpectedly" - exec {VIRTWL[0]}<&- {VIRTWL[1]}>&- - return $r -} - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has usersandbox $FEATURES ; then - die "You must enable usersandbox as X server can not run as root!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6600M" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has userpriv ${FEATURES} ; then - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6400M" - fi - - check-reqs_pkg_setup - - llvm-r1_pkg_setup - - if use clang && use lto && tc-ld-is-lld ; then - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }') - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}") - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!" - - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }') - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}") - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!" - - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}." - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:" - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version" - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version" - eerror " - Build ${CATEGORY}/${PN} without USE=lto" - eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole " - eerror " llvm/clang/lld/rust chain depending on your @world updates)" - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!" - fi - fi - - python-any-r1_pkg_setup - - # Avoid PGO profiling problems due to enviroment leakage - # These should *always* be cleaned up anyway - unset \ - DBUS_SESSION_BUS_ADDRESS \ - DISPLAY \ - ORBIT_SOCKETDIR \ - SESSION_MANAGER \ - XAUTHORITY \ - XDG_CACHE_HOME \ - XDG_SESSION_COOKIE - - # Build system is using /proc/self/oom_score_adj, bug #604394 - addpredict /proc/self/oom_score_adj - - if use pgo ; then - # Update 105.0: "/proc/self/oom_score_adj" isn't enough anymore with pgo, but not sure - # whether that's due to better OOM handling by Firefox (bmo#1771712), or portage - # (PORTAGE_SCHEDULING_POLICY) update... - addpredict /proc - - # Clear tons of conditions, since PGO is hardware-dependant. - addpredict /dev - 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 - - # Workaround for bgo#917599 - if has_version ">=dev-libs/icu-74.1" && use system-icu ; then - eapply "${WORKDIR}"/firefox-patches/*-bmo-1862601-system-icu-74.patch - fi - rm -v "${WORKDIR}"/firefox-patches/*-bmo-1862601-system-icu-74.patch || die - - # Workaround for bgo#915651 on musl - if use elibc_glibc ; then - rm -v "${WORKDIR}"/firefox-patches/*bgo-748849-RUST_TARGET_override.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)" - - # Workaround for bgo#915651 - if ! use elibc_glibc ; then - if use amd64 ; then - export RUST_TARGET="x86_64-unknown-linux-musl" - elif use x86 ; then - export RUST_TARGET="i686-unknown-linux-musl" - else - die "Unknown musl chost, please post your rustc -vV along with emerge --info on Gentoo's bug #915651" - fi - fi - - # Make LTO respect MAKEOPTS - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/build/moz.configure/lto-pgo.configure || die "Failed sedding multiprocessing.cpu_count" - - # Make ICU respect MAKEOPTS - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/intl/icu_sources_data.py || die "Failed sedding multiprocessing.cpu_count" - - # Respect MAKEOPTS all around (maybe some find+sed is better) - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/python/mozbuild/mozbuild/base.py || die "Failed sedding multiprocessing.cpu_count" - - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/third_party/libwebrtc/build/toolchain/get_cpu_count.py || die "Failed sedding multiprocessing.cpu_count" - - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/third_party/libwebrtc/build/toolchain/get_concurrent_links.py || - die "Failed sedding multiprocessing.cpu_count" - - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/third_party/python/gyp/pylib/gyp/input.py || die "Failed sedding multiprocessing.cpu_count" - - sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/python/mozbuild/mozbuild/code_analysis/mach_commands.py || die "Failed sedding multiprocessing.cpu_count" - - # 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 - - # Clear checksums from cargo crates we've manually patched. - # moz_clear_vendor_checksums xyz - - # Create build dir - BUILD_DIR="${WORKDIR}/${PN}_build" - mkdir -p "${BUILD_DIR}" || die - - # Write API keys to disk - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die - - xdg_environment_reset -} - -src_configure() { - # Show flags set at the beginning - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - local have_switched_compiler= - if use clang; then - # Force clang - einfo "Enforcing the use of clang due to USE=clang ..." - - local version_clang=$(clang --version 2>/dev/null | grep -F -- 'clang version' | awk '{ print $3 }') - [[ -n ${version_clang} ]] && version_clang=$(ver_cut 1 "${version_clang}") - [[ -z ${version_clang} ]] && die "Failed to read clang version!" - - if tc-is-gcc; then - have_switched_compiler=yes - fi - AR=llvm-ar - CC=${CHOST}-clang-${version_clang} - CXX=${CHOST}-clang++-${version_clang} - NM=llvm-nm - RANLIB=llvm-ranlib - elif ! use clang && ! tc-is-gcc ; then - # Force gcc - have_switched_compiler=yes - einfo "Enforcing the use of gcc due to USE=-clang ..." - AR=gcc-ar - CC=${CHOST}-gcc - CXX=${CHOST}-g++ - NM=gcc-nm - RANLIB=gcc-ranlib - fi - - if [[ -n "${have_switched_compiler}" ]] ; then - # Because we switched active compiler we have to ensure - # that no unsupported flags are set - strip-unsupported-flags - fi - - # Ensure we use correct toolchain, - # AS is used in a non-standard way by upstream, #bmo1654031 - export HOST_CC="$(tc-getBUILD_CC)" - export HOST_CXX="$(tc-getBUILD_CXX)" - export AS="$(tc-getCC) -c" - - # Configuration tests expect llvm-readelf output, bug 913130 - READELF="llvm-readelf" - - tc-export CC CXX LD AR AS NM OBJDUMP RANLIB READELF PKG_CONFIG - - # Pass the correct toolchain paths through cbindgen - if tc-is-cross-compiler ; then - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}" - fi - - # Set MOZILLA_FIVE_HOME - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - - # python/mach/mach/mixin/process.py fails to detect SHELL - export SHELL="${EPREFIX}/bin/bash" - - # Set state path - export MOZBUILD_STATE_PATH="${BUILD_DIR}" - - # Set MOZCONFIG - export MOZCONFIG="${S}/.mozconfig" - - # Initialize MOZCONFIG - mozconfig_add_options_ac '' --enable-application=comm/mail - mozconfig_add_options_ac '' --enable-project=comm/mail - - # Set Gentoo defaults - mozconfig_add_options_ac 'Gentoo default' \ - --allow-addon-sideload \ - --disable-cargo-incremental \ - --disable-crashreporter \ - --disable-disk-remnant-avoidance \ - --disable-geckodriver \ - --disable-gpsd \ - --disable-install-strip \ - --disable-legacy-profile-creation \ - --disable-parental-controls \ - --disable-strip \ - --disable-tests \ - --disable-updater \ - --disable-valgrind \ - --disable-wmf \ - --enable-js-shell \ - --enable-negotiateauth \ - --enable-new-pass-manager \ - --enable-official-branding \ - --enable-release \ - --enable-system-ffi \ - --enable-system-pixman \ - --enable-system-policies \ - --enable-thunderbird-rust \ - --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 ; then - mozconfig_add_options_ac '' --enable-rust-simd - fi - - # For future keywording: This is currently (97.0) only supported on: - # amd64, arm, arm64 & x86. - # Might want to flip the logic around if Firefox is to support more arches. - # bug 833001, bug 903411#c8 - if use ppc64 || use riscv; then - mozconfig_add_options_ac '' --disable-sandbox - else - mozconfig_add_options_ac '' --enable-sandbox - fi - - # Enable JIT on riscv64 explicitly - # Can be removed once upstream enable it by default in the future. - use riscv && mozconfig_add_options_ac 'Enable JIT for RISC-V 64' --enable-jit - - if [[ -s "${S}/api-google.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-safebrowsing-api-keyfile="${S}/api-google.key" - else - einfo "Building without Google API key ..." - fi - - if [[ -s "${S}/api-location.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-location-service-api-keyfile="${S}/api-location.key" - else - einfo "Building without Location API key ..." - fi - - if [[ -s "${S}/api-mozilla.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-mozilla-api-keyfile="${S}/api-mozilla.key" - else - einfo "Building without Mozilla API key ..." - fi - - mozconfig_use_with system-av1 - mozconfig_use_with system-harfbuzz - mozconfig_use_with system-harfbuzz system-graphite2 - mozconfig_use_with system-icu - mozconfig_use_with system-jpeg - mozconfig_use_with system-libevent - mozconfig_use_with system-libvpx - mozconfig_use_with system-png - mozconfig_use_with system-webp - - if use system-librnp; then - mozconfig_add_options_ac "+system-librnp" --enable-compile-environment - mozconfig_use_with system-librnp - else - # This controls the backend of the bundled librnp. Choices are "botan" and "openssl". - # RNP Upstream recommends to use botan. In Gentoo it's preferred to use system-librnp. - mozconfig_add_options_ac "+bundled librnp backend = botan" --with-librnp-backend="botan" - fi - - mozconfig_use_enable dbus - mozconfig_use_enable libproxy - - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme - - if use hardened ; then - mozconfig_add_options_ac "+hardened" --enable-hardening - append-ldflags "-Wl,-z,relro -Wl,-z,now" - - # Increase the FORTIFY_SOURCE value, #910071. - sed -i -e '/-D_FORTIFY_SOURCE=/s:2:3:' "${S}"/build/moz.configure/toolchain.configure || die - fi - - local myaudiobackends="" - use jack && myaudiobackends+="jack," - use sndio && myaudiobackends+="sndio," - use pulseaudio && myaudiobackends+="pulseaudio," - ! use pulseaudio && myaudiobackends+="alsa," - - mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}" - - mozconfig_use_enable wifi necko-wifi - - if use X && use wayland ; then - mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland - elif ! use X && use wayland ; then - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only - else - mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3-x11-only - fi - - # LTO is handled via configure - filter-lto - - if use lto ; then - if use clang ; then - # Upstream only supports lld or mold when using clang. - if tc-ld-is-mold ; then - # mold expects the -flto line from *FLAGS configuration, bgo#923119 - append-ldflags "-flto=thin" - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld - fi - - mozconfig_add_options_ac '+lto' --enable-lto=cross - - else - # ThinLTO is currently broken, see bmo#1644409. - # mold does not support gcc+lto combination. - mozconfig_add_options_ac '+lto' --enable-lto=full - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd - fi - - if use pgo ; then - mozconfig_add_options_ac '+pgo' MOZ_PGO=1 - - if use clang ; then - # Used in build/pgo/profileserver.py - export LLVM_PROFDATA="llvm-profdata" - fi - fi - else - # Avoid auto-magic on linker - if use clang ; then - # lld is upstream's default - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld - fi - - else - if tc-ld-is-mold ; then - mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold - else - mozconfig_add_options_ac "linker is set to bfd due to USE=-clang" --enable-linker=bfd - fi - fi - fi - - mozconfig_use_enable debug - if use debug ; then - mozconfig_add_options_ac '+debug' --disable-optimize - mozconfig_add_options_ac '+debug' --enable-jemalloc - mozconfig_add_options_ac '+debug' --enable-real-time-tracing - else - mozconfig_add_options_ac 'Gentoo defaults' --disable-real-time-tracing - - if is-flag '-g*' ; then - if use clang ; then - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*') - else - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols - fi - else - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols - fi - - if is-flag '-O0' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0 - elif is-flag '-O4' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4 - elif is-flag '-O3' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3 - elif is-flag '-O1' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1 - elif is-flag '-Os' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os - else - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2 - fi - fi - - # Debug flag was handled via configure - filter-flags '-g*' - - # Optimization flag was handled via configure - filter-flags '-O*' - - # elf-hack - # Filter "-z,pack-relative-relocs" and let the build system handle it instead. - if use amd64 || use x86 ; then - filter-flags "-z,pack-relative-relocs" - - if tc-ld-is-mold ; then - # relr-elf-hack is currently broken with mold, bgo#916259 - mozconfig_add_options_ac 'disable elf-hack with mold linker' --disable-elf-hack - else - mozconfig_add_options_ac 'relr elf-hack' --enable-elf-hack=relr - fi - elif use ppc64 || use riscv ; then - # '--disable-elf-hack' is not recognized on ppc64/riscv, - # see bgo #917049, #930046 - :; - else - mozconfig_add_options_ac 'disable elf-hack on non-supported arches' --disable-elf-hack - fi - - if ! use elibc_glibc; then - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc - fi - - # System-av1 fix - use system-av1 && append-ldflags "-Wl,--undefined-version" - - # 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 - - export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none" - - # Disable notification when build system has finished - export MOZ_NOSPAM=1 - - # Portage sets XARGS environment variable to "xargs -r" by default which - # breaks build system's check_prog() function which doesn't support arguments - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs" - - # Set build dir - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}" - - # Show flags we will use - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - # Handle EXTRA_CONF and show summary - local ac opt hash reason - - # Apply EXTRA_ECONF entries to $MOZCONFIG - if [[ -n ${EXTRA_ECONF} ]] ; then - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!} - for opt in "${ac[@]}"; do - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--} - done - fi - - echo - echo "==========================================================" - echo "Building ${PF} with the following configuration" - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do - [[ -z ${hash} || ${hash} == \# ]] \ - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}" - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}" - done - echo "==========================================================" - echo - - ./mach configure || die -} - -src_compile() { - local virtx_cmd= - - if tc-ld-is-mold && use lto; then - # increase ulimit with mold+lto, bugs #892641, #907485 - if ! ulimit -n 16384 1>/dev/null 2>&1 ; then - ewarn "Unable to modify ulimits - building with mold+lto might fail due to low ulimit -n resources." - ewarn "Please see bugs #892641 & #907485." - else - ulimit -n 16384 - fi - fi - - if use pgo; then - # Reset and cleanup environment variables used by GNOME/XDG - gnome2_environment_reset - - addpredict /root - - if ! use X; then - virtx_cmd=virtwl - else - virtx_cmd=virtx - fi - fi - - if ! use X; then - local -x GDK_BACKEND=wayland - else - local -x GDK_BACKEND=x11 - fi - - ${virtx_cmd} ./mach build --verbose || die -} - -src_install() { - # xpcshell is getting called during install - pax-mark m \ - "${BUILD_DIR}"/dist/bin/xpcshell \ - "${BUILD_DIR}"/dist/bin/${PN} \ - "${BUILD_DIR}"/dist/bin/plugin-container - - DESTDIR="${D}" ./mach install || die - - # Upstream cannot ship symlink but we can (bmo#658850) - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin - - # Don't install llvm-symbolizer from sys-devel/llvm package - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die - fi - - # Install policy (currently only used to disable application updates) - insinto "${MOZILLA_FIVE_HOME}/distribution" - newins "${FILESDIR}"/distribution.ini distribution.ini - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json - - # Install system-wide preferences - local PREFS_DIR="${MOZILLA_FIVE_HOME}/defaults/pref" - insinto "${PREFS_DIR}" - newins "${FILESDIR}"/gentoo-default-prefs-r1.js gentoo-prefs.js - - local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js" - - # 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 - - # 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 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 - - optfeature_header "Optional programs for extra features:" - optfeature "desktop notifications" x11-libs/libnotify - optfeature "encrypted chat support" net-libs/libotr - optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas -} |