summaryrefslogtreecommitdiff
path: root/www-client/firefox
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-12-05 02:07:17 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-12-05 02:07:17 +0000
commita6764d56b1c85c8272783500983011c143c72d80 (patch)
tree4012d67c099814931c6188b22a6b5eb4e77f1d6a /www-client/firefox
parent38ecaf88ae0891dd2d7f2bdd9a7acdcd45835724 (diff)
gentoo auto-resync : 05:12:2024 - 02:07:17
Diffstat (limited to 'www-client/firefox')
-rw-r--r--www-client/firefox/Manifest411
-rw-r--r--www-client/firefox/firefox-115.16.1-r1.ebuild1353
-rw-r--r--www-client/firefox/firefox-128.4.0-r1.ebuild1353
-rw-r--r--www-client/firefox/firefox-132.0.1-r1.ebuild1329
-rw-r--r--www-client/firefox/firefox-132.0.2.ebuild1369
5 files changed, 0 insertions, 5815 deletions
diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 39b2408a10a6..2e12d94fc674 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -8,208 +8,6 @@ AUX gentoo-hwaccel-prefs.js-r2 327 BLAKE2B cbfe58675a6e6a5b7cb93e6c2b2431dd47e27
AUX icon/firefox-r2.desktop 8137 BLAKE2B 5d0ce737c0e0969cb1a61de7989f5ca1ca0dff413d6d98bb0c93e0fed510b4e075a88fc117d3713e5e11ee7471ceaeffa9bc9dfd4282f3ddb1ea837d823e4887 SHA512 749a50b11d89c1329a52d13745ff8d5f801e565038cb5341319b4b515f36baf1c0c740003d6d01188c27e31d7ddeff58310e7b2420681292d0f2522bc5bd34b6
AUX icon/firefox-r3.desktop 8116 BLAKE2B 50b476a1be87bcca0bd6175b7a7f5e67ac5d3f40b0a5a99c2244036a9eea53fb518f59c1d87b18723c4ae6c261bfb692ef0b52c6714402b0a98da4b6867ab977 SHA512 07c9d89babe20fba9531396c9aa2b692aae77606be2b8a750481b6b8f9b3eab320fef313d1ed4b15d3fbc4cd94dfb56b62ce1a3e89ba7143c6aa9acc0f919bf8
AUX icon/firefox-symbolic.svg 7432 BLAKE2B 33a552ffb9850f6b9cd3cb8d9f7f80268ac08f00a0bd5eb15d892c6fbb950f8cacf6058b9c838f5be1ae1b53541f143a1ec0c1302ae85b49100b166fcbccdce6 SHA512 ba7db9a7c95a051bcd84e4c09c802fc55ee3c0d1d06ec1b169b04e414259b75bbe92fe584aee41a1e3f71e71c160df8bedf5393449e5024110ed27dbc0579ea8
-DIST firefox-115.16.1esr-ach.xpi 459026 BLAKE2B f3e2901c1f278e9fca3a16a63fef505bfdb596adf8ebdaf0593eebb0f5e5573206ba9c77774e6e6e083768db0afa9b4d76d30d8070cdd19727852b73ef2f1f7e SHA512 0817a743dc45bc156cde5e534f4bb833186c05c8ec6868203a9a7224a5ef5918f696c95b75a327460c2c8987adae1f8f74d34a14229ad55ef2015c17574726cd
-DIST firefox-115.16.1esr-af.xpi 415186 BLAKE2B 3f3866c05c921ca82be8772b7792509aa77486a1a26e6fb5c15dbe26846ec354ffdc5df3650b11b1688a81af9e3e2a3a627d63cc74ce79ef13317898dfe2de33 SHA512 5296973fb877cf590e5423841924020ce31baa1ea525b0ef5219ca1c201b9077540e48320d39ae3ba20d9d0b3942820a4cb00fcb7682a0e1d18bbfae566e0031
-DIST firefox-115.16.1esr-an.xpi 499581 BLAKE2B f4f80a2663218d28998dab411433b01313ad589e42ec8a51164bde3fec48d3f523c313e27c4e09e8e7709231a1140d9911af4e7b03840ed44b539463c58db637 SHA512 312890679936b4e3b82d71c7afeebc185eb93094be0f82a69ea7195b336ea543fb904c55b7b97b14f21d99567a8983a2c55d72befee5a1f4e6c068c5d0775f51
-DIST firefox-115.16.1esr-ar.xpi 606284 BLAKE2B d846b62bb68f2c6fda9cbb1464580ca439128bd471059587d2eabd1888ddc003625303f9cc05e2b12588b09c9f5d847c802531214c394db42cfa50c662e3b39c SHA512 4979771f49105f564d638f60a135be69526a234ba05ed7fc5a940282e2f5f77850954c590782ec244394881f8ad4df83ea60d165c4937627f3d2ff598a87ca62
-DIST firefox-115.16.1esr-ast.xpi 491343 BLAKE2B 40d92c64b6eaaa69208df385331d295479e24e28a2ef0f27c04bfcfe50dbe02f598f647ef3f33ccb2e8d4a739b40b944812de48c063e42b6dad057e6214da6e6 SHA512 de552de272296a113d2eb02fc46b75d6b38e39efedbbff732dbcf7a7a7df757a26d5ef8873d35c6f23fa240298171bf83538b7393bd8906fb76dbac182212cb1
-DIST firefox-115.16.1esr-az.xpi 486077 BLAKE2B 94fe24dad3486066f9dc7eca551c2f41d0a8b8108f6e213124b6639f48d8e2da1b03e7a6c6f368b53580f9158338e48054749e7d0896a60b7c4fb9b714f96b35 SHA512 2f54f7ab157b2eab3e8f1eaa32a4711e71b6c16de2724ad5f835af1aa65c4f04256e8a9853d1583bc6af41fc583d821064359d152e7e277f2293a9501b013f27
-DIST firefox-115.16.1esr-be.xpi 715646 BLAKE2B d1ebfefa9b5e0c99cb344194fddc98b9539784984bb4f4d7fc0f9cc2788777b52d565940fd9c50dd156ad348c51044e630f60004b4e7e74462f78f80869f8968 SHA512 7ebd230753a21d25f49a9f423a95a8dda42c0c65df43dcc1bba531ed567848205fa6d386ebbeaf8761e04c14cdd1306afb622410d4c593974a997afba23bdf89
-DIST firefox-115.16.1esr-bg.xpi 600405 BLAKE2B 6e8676fb9e3a966733d1fb9a9e3f410b150a0dfdd491c4c2c8c86da876439b66632e5e2df011200eb988106772d66aabd62d3213378384fe76e7f3999fdacc18 SHA512 654f041662831e278ab29be9533d203b50c8973cd14fffe3ad31337ba31e5d78687e250cea4a23830031c1abc02ba038900455c493a7ca94bfb7f44c57cebaa1
-DIST firefox-115.16.1esr-bn.xpi 576358 BLAKE2B e9be7cf9b779fe1f3f27814f6110381312331a029bcf0f963e25fd17a1e53df3d588e955a69ca94c62313da4a2123b9fea3a4cae0ad5a1935ab335b6b705b136 SHA512 059539d153281f0fe10f7939e15cee903dc074c2d053bfa9aa815b501565786de3d874fb7b110944f84431cbea32e52841631759fa3b2ee4c16431727c8bfa7f
-DIST firefox-115.16.1esr-br.xpi 585011 BLAKE2B 6cb9a0ee46b780aff7cba85e00cb83b7f5afc4c47c751dabc3d8b26734dd3f4a837e2de506db36ff2e093da6746a41d37fa0c96ace2ab8d4e99f70e31cc94112 SHA512 67f0069f50900c0ce6f7e3ca4028fd02bca37e3c50f73b1210f91c6af89d96be8323b6f2c8f89e924c2e50cf28acd011ce0a207470bca1b917ae5bf21b7c2112
-DIST firefox-115.16.1esr-bs.xpi 496787 BLAKE2B aeec5d75d388fca8b6ae0a745a3ee49be1c3fab54bc7db33bea12aa375acd91656c7f2ac9db761d5b9d22dc360783c495bce013be6af1da405f76d083084e18b SHA512 7f769506a370bd89b2fd31f4beee31c84d971b776e002729aabcd72523c89fda4ff03b8b5b51c8111065517dfbd480fc86ba97e6e1b396b01dcb3329066fb1b5
-DIST firefox-115.16.1esr-ca-valencia.xpi 539256 BLAKE2B 14ce549beabe60556ff110ca0b7da22c524f1a651aaf37da07e9da590f7379554287de80d706a3fd56a60ff860fa036ad9a8dd1f4e8899d6ef7d2722b2e5604b SHA512 f03300106d9a6160e2a414dd5dfa98309e21754d1bce48712966a5b44e9a60e39cefb4b839d50cd34f54a94a971ffc4ab0739dadf58d481ca112825ae1b9e01a
-DIST firefox-115.16.1esr-ca.xpi 591042 BLAKE2B 0d9628d083e012849e41983e05206691b5eb4fbc4a0a07a81586d5f9ac82314144718e9279afde28ba12801341076043ce268e54da19fcae3aeb95d4d99e216c SHA512 e4dca906ea93832a0bd177c3b18a4bb29da36fb7e2a2294fdc4dff69a6650a17551b19130c7ed6f79fca1930bba4adac7dc0e00ee25888d392fc9238c96ebcb6
-DIST firefox-115.16.1esr-cak.xpi 586720 BLAKE2B c2403f8ff139d45961253e1f3215656cfe20ce1f4246eade94412f7384088dd8519ee241144e9ac337e3876e50ec33cf7e39f0cdd6aaa91cde631a1c5171abd0 SHA512 46f6cf280cad7c9c454c63c630cc7921912145d694f018439b8e0948c6d4ae04b1ce05292f2a870029ba421492ce9439353fe765812825a8a8d461cf68dc2962
-DIST firefox-115.16.1esr-cs.xpi 659578 BLAKE2B 71fd5cc6476f465d4bd44437911e251d06cf95d10ae08b16e0ff6d9c0e9e36515e1d1bf56508d38855e878ec7a72501cf4865c2620ce9dd42e6ca82e2ddb7445 SHA512 41c7c0004c18fd359f20db98e89982a0016be8bc110474892785267e40ba1dd6963e4b74e359e72ca61e52ef04e12fb31232332ac94101e203b38ac034532e5b
-DIST firefox-115.16.1esr-cy.xpi 622577 BLAKE2B 391abba9dd7d3c79c3291c317e5e058d0afddbe042d9c9fb7f893bf8073b28e0be7e0ac32c5ca4ac5d71afcd10914addf9957773fa50c6cd7e5991cda4be48ea SHA512 cc04c4b8cfae4d0f5356b8e98ac9db57d9988c06c7385bfb6b50fe1c27dea5ade8a98b43b8fe111433737bb72e9668a40e5233dadee94ab81fa351486490b4a9
-DIST firefox-115.16.1esr-da.xpi 611167 BLAKE2B 44e2867c9294afe94736dde65c2fcac56f6f0020dd734ac8898d6d1ac723293e6b9c34a7c0fb95736d0b0c4adf8324600b6fcd85f5f580b4d6dfdc394e1649c2 SHA512 1e42ff8dcf69c5b99afd8afb7fc62c746b2ddd9f9a5c6536255bdea6b94e9f015aeba0de4805c87ae117f34eb066d358ca6a7cb527cab2a36836dbffc87d47e1
-DIST firefox-115.16.1esr-de.xpi 632369 BLAKE2B 2de7c85164432ff3767e2010952bc8ee3fa38d985aaee6da49c2ef2952c0ad4a2eb2bb0dc060193a738a9702c47eede1ce4acf7126b698bd6e84bd9129a731ce SHA512 65bdf35cc8037bc13400ad1bb82a65a99525889bd1426d333643afb56ca4c45cd974cb1389067efec439e048384851ad06a270e3bc478d65a48cc8a71eb36c25
-DIST firefox-115.16.1esr-dsb.xpi 651466 BLAKE2B d7fcee8f4241a9b9410de4f371c32d52032583e38564c9b0c9eef29f8affa525ba4e8e47dfe43f0c410226b377866a64fccbe858150002f84c1c193297ae8118 SHA512 397d6be896f6f2ce3fe5292169c343ab0b32e0ec335d65c39b94a5ccd4c88b02112f9de4bb130be76b1fe705e0411608c2570961ae2ecd3c87b8acdb35927232
-DIST firefox-115.16.1esr-el.xpi 734616 BLAKE2B b18d91d0cc471ea34d146c11cdabd66cc71acaa24f2abe0381f7e6fc8f592ebfddf610f9b8f033b4ac1af435489ac5e2f0b961f7309a7ca4b39b196507189c5a SHA512 5fa5a9f168080263677b9e9ac0d8ca68db22a4d9f09ff30095d715e6c141a2b329786ccc8bba6dcc2c0d260d4286de570841cf6bb967eea19f16b5fbf9f49557
-DIST firefox-115.16.1esr-en-CA.xpi 584136 BLAKE2B e05f25517c8760d483d3c80fed83258768f358826f12a1a99f8cfb11960288e52319a6401077fadfb27843cc3365ab61434a640bbabd4f33948855ed4d3651ab SHA512 c4899cb6c129061d096422a2512fb0eac0b7905eb4192e0a4de2af10bef7c02c79d31aa1d356f41abdd461a1e9e453933961b87375040aaff248fab69bb8fb6c
-DIST firefox-115.16.1esr-en-GB.xpi 585203 BLAKE2B 57ff4413c5b803522d91b5db67cb79baf8701bfae4f93d76eaee612bf4b212fe77eb59759a0670ad9e4081a0010fb27e49523a0dab4ec2a72f1a6fd505743b96 SHA512 873ae7ab32eeb37bee1298320c9045e1f8a0b4fb3cfe39b3d1251f80d3c212722c822d999c81415cfa82b7d05b654d2ca8812dc98bb5af83eaa97ebefc897d7f
-DIST firefox-115.16.1esr-eo.xpi 613402 BLAKE2B 60d2aa2e173519e92851cb3bdebb4ebd0b0a621d3fc9df8c832718ff079807668dcddfd7586da2591531a313b67e4f4adbb46c3e81b384fe921022b0aa96c2f3 SHA512 70fb38e92dceb9615dc8cc84b339d5b91cc0d46b138301070c04921a47cd3171d8ca0c0a994724fb31c7e2aeb095a25f742ad35e7de97cb0edb9c3923c44bcbb
-DIST firefox-115.16.1esr-es-AR.xpi 628379 BLAKE2B 670649b2bdd9a2752111eb181608f22f836ae9bd1eb0f50c2d9d4530eb14f558aa033cfcb33a56063a7053fbc4112251790eecc78d76639c19a0e45ce4669e0b SHA512 c93d38f5035d680103cff3ed10b4767d99a88d53fe9eb04a6d9f9065ea94cce53be3225bd9cadfd61534700e5427e163fac4cd0b2dfe8c51912a35a23c438a33
-DIST firefox-115.16.1esr-es-CL.xpi 627711 BLAKE2B 74d9e36f4841435f9e81f9a99b4c60e1e0835e4c3069ddf9317df4a56ea9098a51615fc2f9c1270f24539aade9d42319ccccc9c27b8a15775483a44646d59c37 SHA512 79a67851f695c0f0522252ec6ac1233099a0c06b5f43ee646bd73555f7ed6c440c8472db501c96182f8b36bdc7641eef485d2f3d11c921e33ec2bf20747cb107
-DIST firefox-115.16.1esr-es-ES.xpi 621479 BLAKE2B 3007a707cfae92fb5de73c9c20a58cacf68ebc3cbc4dbda65b98430bb0245c2d99c0cb9a8d0be0dc96a08bbaa41bcda95ee01f8f8439a71188c9d76ed80151ee SHA512 3c3e5b10cd8f66a35ec45470d7ac15b0f8172e7e5b2b86d47fb02dd64ace4abf1b8a334a526048288b15631d827bd56f9508b4e1294c7472fb22b06f2350e93e
-DIST firefox-115.16.1esr-es-MX.xpi 597930 BLAKE2B 4c676f89a9675ac4897c321cdb55fb93c802cb3af31003ee1f8d4ece667f8f351cf00e1691b38f449e33f51ecf72b2ea62806a42dede978f9276d9aa869e954a SHA512 0d6905b7201a6248015a5a0f81b3962f8ee59a695119d9e231c233ca91c86a7e6c71d14392f30584b55ea7c5e348e56a0ac18d34c97b090ed5caa5e29e41a40d
-DIST firefox-115.16.1esr-et.xpi 533020 BLAKE2B 8d00c2a05283b20424b0ceda25176c5ff351e04563f32a09c08a8f0dbb53419307a3aaa20db10bc0dda90ff4590522205f82e9540fbf1ec31a6d5c1d51df26ba SHA512 2c32bcc3acc05b8a59da202fb24fb94acd34d8be4c3a6327a760cba2634211224f3eb6ab1c6ad9cfc85837abe84a54f55b8ddcdbea5e0bae53b69b830c121474
-DIST firefox-115.16.1esr-eu.xpi 594649 BLAKE2B 899bb425faa7c138a168c86fa33759039b64f3317737d1c315160e286b8cab2aaaf205dca6d2ed3b6bfad3fc4628db3cbf5ef8c6f2022b701c0cabea6492005f SHA512 a2cb6338c9104aa187a2d4fe5ad393a469dca9129995b8d5bf9a1331831950763c67e1166fde3ce8d321d463601c0c031c5f0235384dd06ea7da8c6ff8381060
-DIST firefox-115.16.1esr-fa.xpi 584358 BLAKE2B d84bd7ef0768829713e2a65dd7ab68d10c8bbab04946dbd8e5b7dffc5212ee9f73757c48599dbe2a18923358a36599f57a943e0254f20ebc3cf6fc3a9dd2235b SHA512 bd0e1ef2ecce3d0859af3a57831c482fae36ceadb7c038e63c6b6101295b6678e98a1666c0db2c3e9bf5ca34e700efc6d72e4883c2592ac66a580e9ca1a94c94
-DIST firefox-115.16.1esr-ff.xpi 471730 BLAKE2B ebe860d8db2fbe0fc64f870bb9dfd2feaa80464ba3c0b0165fda71e566a117b6aecd5399cb6fb26bea43612219e2f6283cffb1d34102c5dca65b970f2c6c4f55 SHA512 d6002ebdfce007dbf68cf6a19ad042a5fbf19dde2e6557d74a3baa1d7c644801f6cc61d03a47ef5aca562314f850c0988713690126278e809af2dd33651f88a9
-DIST firefox-115.16.1esr-fi.xpi 604631 BLAKE2B cd4ea0b0ec70cd7d523499d81d5835c6875d19d670f41085ed5d597a9dd64d23a56b22fb8b5e160767df25f58861b83f1129cbc29d6b2255b6529604ed9f98ab SHA512 d067edf43962b0bf42a7868da0420c14980e5c56a22646d925caebf5d1c9d3dd2e88c0030d38335f38762454b22e87501aed2e961ced455217e3aabc1a9da653
-DIST firefox-115.16.1esr-fr.xpi 640839 BLAKE2B 9c99a4ceeed24bb79359c8e0db357e6d2206c434b9e4f5a81500657ff59d23e932559872398caba780cfdd7e84f68d712b7c864d1acd6c69ead744cf04180f8b SHA512 af3f7d66c2c15aa4b0b6789d701504c33825b5cc94f0bc29c78c5eee4e77226c3e0f213babc239a1808c1535b83475a9bfa2d88e685974567ea0033113e37fb5
-DIST firefox-115.16.1esr-fur.xpi 634497 BLAKE2B 74774e2da70fb510d404b8878edfd1419488961e207961e9cd0e6a4c82275ae7c9802a59a76532e13ec424b6f9f7ec58b877942d4975b6ad55d43f226c541390 SHA512 aee3bdc7c2a6ddf48593dc2f975a42d71509295afc6d57ef759803c8a8ce9ad47f4666e599f8a346c10a0936d60d770dbc83f5c1e5092a5179984471c0a78416
-DIST firefox-115.16.1esr-fy-NL.xpi 624083 BLAKE2B 75482166a0c949457b0cdde5b89229af56ca4ce3454fe9006d3f70f24c889a52e960945daad01f750e35d3571c3ecebb484e025ed56a062cde3fbe300c69b13b SHA512 2c32f7786ef6e06a4953b2f7bdb03be9624eec19d637a241e3dd0b8dc71c8ddc97a6d552f2ad6db08ff6ca9b59b4a949b52954d06344c21469d339df64f28219
-DIST firefox-115.16.1esr-ga-IE.xpi 467647 BLAKE2B 7cd9336268f585fe601529b59493f1e64af24a2985437be65f41b70bbfffa2c1734cb33670421f5ae75f2c9c62f383f06c5c04eb2afe31a59fe54c8348140459 SHA512 5efde4f3baf97cddc5a31d546e2a0b02e720c9f97d81681ef4af5600f7a5ec8ef6b81f1367f93ea0999f2274c1be640c43d8d871ef559134804f69f460ae1181
-DIST firefox-115.16.1esr-gd.xpi 589973 BLAKE2B 5b91c2ec3f81d985bab62c13c0adc79b8b676f88ce504d9ebd9737cd7d381cb517d4f666883286b4c2f8cfea97423f1055d1924d59edecfda828ddeb04e39dd8 SHA512 598b1442aeb4750fcda61fe3b2e3c1be676c4c4e180143db46a851368a023d2e77b84a8437b428db20f686e1cf62a6dc6e7725bd540273b976f79121ec776285
-DIST firefox-115.16.1esr-gl.xpi 599974 BLAKE2B 819acd9b4739a670418e161e51077657ec13d547dd666eb65dd09b5c47414e097c597e7b014108be5368a25daa75f60868453d3ab6a4a508437ffa927ede554a SHA512 dba0a9b19270a754bada9bc32c1c12aaf52c18bd46bc6488f82fd87536412f75f208ad02245ca1ac109fc8cb27b90db6c30a7e3c287869fb65fe12dface20ad0
-DIST firefox-115.16.1esr-gn.xpi 637891 BLAKE2B c9e3859efad4bb86e12b44941191411671e12fe771501bb77cf78564284574846b957f26e50fe09d9729e8388b5b9fb3babc2decefc46f62a5406d62b2263689 SHA512 5d6fde884dbf339787de2a49892c608a35ce7777893855217f8bdadc54fd53bee3ac69f75f6cbaa59961eb07cdf07d198b87db277d51ba81209fedd1ee78640e
-DIST firefox-115.16.1esr-gu-IN.xpi 523390 BLAKE2B 016c4c8ea2a05aadb75a9f640a022659f067e5530b7dbb669e3ca170514966147cd2fe868854acca3794859d1b0bc8b3251bbda5c78286a450b2c1fcdf6dde86 SHA512 29a32a7c3b79d0114faa5b30af18220880f6eedd0a5bfdccdcb62b584fe74db668c3ca26739ac259f8659e05305364b336bf94b80dbdf941a51e68c605ab6b0e
-DIST firefox-115.16.1esr-he.xpi 629100 BLAKE2B d13d70f959a7778311845dfffd09ec27d6972fccb364ab75ec25c2deab5410915505fbc2640575693e1344e750c4002e2341138406f4f740941c261507107d64 SHA512 ba65855220425fce68ac40156c8ae760b764f58c724559997512c8520768ea003d777ef412bbc27bd51ffb7617dc8eed089cd3ba7ab6f5949ef1ad665bc4de36
-DIST firefox-115.16.1esr-hi-IN.xpi 561253 BLAKE2B 08949d0ebcde8dff0d41d58c42fe2fc18634bdaff03e4452aad4e8f006b1a6eeb287bb3a84476d7177eebb78d735a998aaa9f974e11dd280669d0d965ee3b624 SHA512 e719c11acd87d483029115d325dae4d72c322c27830eeb3fc108a8f904d2ea0ede2e2dc110fe0d0a8d271cf6116fdef44334dd82a7d7af1a14680633cc9b253a
-DIST firefox-115.16.1esr-hr.xpi 554535 BLAKE2B 2f5a394fcd90a43c62413d697ffeb687f767e6fd5ce73b0c3877ccd5ba7ad3ee21cfce5cb5796cbda5639eb00f1e33c369fbb184616a61d20f762b1512f8b0f4 SHA512 77926389d58383c944b105e602289d2cbbddfa667e3c210cbf337b0347570e5a93274e20750633975a68310dc0316e7e3bb0827de76860363c6c1449d8d5b213
-DIST firefox-115.16.1esr-hsb.xpi 647511 BLAKE2B 59df58c370c315b158134f401789c06194e496fbf146aa0813baf50ea7d0da7de65faedbe875cdba2c7d60be8b1527373b0ee5e37258b4aa167806b6f88d8794 SHA512 552a61259d9ac6310a06a4d93d82cfd08c17bc865fb497777fe30c492df2986c6a0ffb7b7f58852e38390919c099cf8b222a4807c207f52b97675312f7203064
-DIST firefox-115.16.1esr-hu.xpi 649863 BLAKE2B 863e7084843eacbba897b06485e3a2c24be34e7ef3f9800feb43cd7cb2dbb5632283a89a42b75e05d35d552805299de96871f60fec5c9ed6b259588c0cb71e1c SHA512 fc14552e97f45ad1511f7a54bb24a8cb377099ad26e42d40d62e822401de77306b92f2b7826f0b8ac96b0b7d313e5ee64019985d9baf17e8552e109d0c7dcbc4
-DIST firefox-115.16.1esr-hy-AM.xpi 647647 BLAKE2B 55009ff12907a742d8fb3b2d3c212442e57ad8fcd0076ad315290ad05ad57bfc72dd52c6559fbbb2829f844209c2c71d93aa27433929942de38faffd9c5452ff SHA512 0ae7c22ef800dd65bd3387c09636d16c0944ac04c51dcd0de99980a93b531def98092ca953a23552c4fec7b698a1fe3ccfeb7a6d9d4d8375eb0d4475b3cecbff
-DIST firefox-115.16.1esr-ia.xpi 610842 BLAKE2B 69ca214afbd25a81c864dce32d4f996092933f9c660fc923e053d1256b76e18c146ca31c6a084e7cb5b32dfba965bdf68d5f21818edb75cd4fa428a57c849721 SHA512 46adbc1409f6292c1ad1ec1e8992643764d796563232caf94e81f9720ba5d16a668b872e0261ae2e53e14221c477e2302712d1cfc50399bd86ee708cdbd15020
-DIST firefox-115.16.1esr-id.xpi 573424 BLAKE2B 64b314dea9ab608f5a9cc3a3c5ed83d2c99ab003ef97114fb0f0ee0320be68015120b78ea34b699b01fd2012c453271ab6cfa0ef51a309a896288873fe01d022 SHA512 1a4c5b2986312b571e4ce3de650553094b70d31271797785801a5f7045e2adec26e82add24d874e4753e45bedb0f19c17d50a374d9124934a8c264ce7c7a1abd
-DIST firefox-115.16.1esr-is.xpi 611649 BLAKE2B 63b9928161f29ba563c2e4891f18bb16b7ce7115f2b71cdc2ff7a73af312148c857eedb6f8dfcdec099807eb715b1c4af7e574469c3331123573d7fe9093fad7 SHA512 ce71308555025476cf4ad58ab691318c4f59e6ee7397f7c351ddec470ae8798298a0a4cb9b5a3d61422c5af9e3e59b58c5562675b24baa125ed22b4d977617fd
-DIST firefox-115.16.1esr-it.xpi 567124 BLAKE2B 9a931ce1a86bb1c30597687686414ce65a6946f35098494589865939b7a69db1ac3a35564e45be3ba372de857ec34eb0dfb8ad9147df3b1bff71f2d49f0ea027 SHA512 352ad02c398c4f1962d7c75f06fe28fe3b831cbd3ddcfdba63c2328dcd9c7dbaeacddc5d5f458c343550106222f4ea9de6053d71e9c5c8dc1c7cc7ad5072b8c0
-DIST firefox-115.16.1esr-ja.xpi 676022 BLAKE2B 438849214eca2f3d5873b156158f8540a4c4ac34c7adc52d50ebbd0a4be9b3111ea89abd245da28c60cc6fe0b55c34e4bd9329ad1b4e4e5c668c617b7eb91c99 SHA512 0ff28a3f4b798e3c4b2c20ab6b788cdb7c998911de40d353122fd0114beff872c97a0151afaf74c28d1e9b34c7fb0ca67631542d5fc364c185699eae5319d475
-DIST firefox-115.16.1esr-ka.xpi 657999 BLAKE2B 698a18aa91527934c3ee19ef9a861e4f6c389988649efe791e8b1433c51b88bc8ea3921b9cc9a150e0e2c96b61d9d47fe50012efafae4a3319f94e139978bb38 SHA512 16387fb345a9b710297246e0cf677464fcd512e3c39778dabc9f993080d80ccc7d36a67330d14161c761edbc67b7da182f362bd4426879f79ccbba6e2f6bcbb8
-DIST firefox-115.16.1esr-kab.xpi 604023 BLAKE2B 2186eee2f4e57d2acd2815bc5771415a3bdbe0fd2346bfb18307932139f74150ddeffc98e5cfb0adfce366fc0ddc8c797c9ebe16ea89ce1f12d012442771c6d0 SHA512 e49549a4c588546f6dea8e8ac2c5328abd97619e94c10af00153d8eb6efa8f27dee8d4150bdedd9b890d396cb2d809a6366bcebae6bf1030df077f726a7708ad
-DIST firefox-115.16.1esr-kk.xpi 709062 BLAKE2B 70a92c54c9409a89828ea7b9657fd6afce2ef3061388d2d85dcba4914a32d40d40e34d63caf1a3b06bd07b9a937452d1749dfe24e0189a544e60798a745d7e18 SHA512 c1308eca05f6de826b4c8fffec4224d27d3119171365ca35657aad4964fbb6d4f33d93b6c375da03dd689651f66c9e2638b14cafa850b1ad8764be8ce852f202
-DIST firefox-115.16.1esr-km.xpi 522323 BLAKE2B 7cceaa87cd3c09089a1d7d3ca86bf1ae10d2c8411baea4dc8bfe45124d8faf76d8bca092d45e763be5618e49ecac9011542a1cc9b4231572f11a0f6d49491507 SHA512 fea2f498033fba1442658e3cde01660f86db736b68f6a357600adf394a2530ccd7e6af69d8dc3aac1b43adc87ea2623e8f28f05b71c28e9cfc7b0728d8d694de
-DIST firefox-115.16.1esr-kn.xpi 488204 BLAKE2B 85a572a4012ed85ce9070ab327c7fabb0bb2953f70ef89b561431881623138425d8428ae16712bee06751222bc1060c3c51b340b529e2b8d40795740fc087caa SHA512 d50663ba2bc8d1cfeca47e2da2e33d7e955882db1f0396d20b81c0ffd6d9115e54a1797e6bc3ca1d32bedc4b3cb10d1fd7157344a33895aeb31865231e532b8c
-DIST firefox-115.16.1esr-ko.xpi 662466 BLAKE2B d0f9ab607db54c14174f226c32e6ef2f1b9271b077519e65b0a08a1c27f34cac6ac3469c5551d42828f7d5b3efb158f607f1ad2b805b99807a8be97506d800e2 SHA512 7e66c810f2a219afec83edbb46b0da8b0825947ea8d64e986d21450cccd28c8df9a0eecf8c43933f54323911fee32256b94f642c206eba18c5989ca1dddb39a1
-DIST firefox-115.16.1esr-lij.xpi 479124 BLAKE2B a02f7e8e25354a75ee8beb1cb03a46724e33c3ab31a747d96b7ffb7c70aa560308afa64eda375b54b0897834b3ca43eaeaedd76dfb051538beb94945af854571 SHA512 b0e704232400aa147ce24c5f3aeb579701c8656acf1f14fbbb5c1a9575e2d62701fa14f49b0412342735d97a7cdcfcdf5942ea8a262dd0cd67ba7a05479b252b
-DIST firefox-115.16.1esr-lt.xpi 566218 BLAKE2B 8056d83ed2c6457d9c82d270a668b0cc7f30aa7a18542fd9071eb6b1985de43cccba0ce191db606ea6a11158cf3e92622cdba72aabf69a8cc20b45fa04e0ce97 SHA512 202839c85e666375ac524dee26fc7d8385f22f08cce23abd4ed6271fbb2005ff09c2388643cb45e180e0d921ab9407ca7e55adf6dc2eae62f4916c58c6e63bf2
-DIST firefox-115.16.1esr-lv.xpi 568803 BLAKE2B c7511a18e156d828fcfe3fa8dda00d8bc3740e1db40ecabd48320623031c3090265bcce5a86f08721dd360b2cb666f4b5fc2eea3db5144c12c516e4aa0a638d6 SHA512 8ba7959d29c932e7d09fbbdce313992e3eceede845ced7642b31c23e8d1c5c486e3a5343cab0136c385b82aa9e44073de553fc5f5971f5b3aeba831362de086e
-DIST firefox-115.16.1esr-mk.xpi 490534 BLAKE2B 51707b8f3b42ee80d0bdcef8b81207ab29b76453c8ddc04c90f9c6c6d19fe60f60656af99f600ff9f83db029f998bcc459aead6ec6eebaa534d2d6ba5d7df2cd SHA512 b5c451ba312a8a1361dfc8a664a1551de6fde89455ea9e2f6303ed7a2b9b88b5d064d389b6682cdb0b93be638325e51ebf21cb172e5367c916552c4e01b23bb0
-DIST firefox-115.16.1esr-mr.xpi 526880 BLAKE2B 547677b78d3fb0e7d7f0f475f52edf43c853fdf9ad7c1587a3d3d8cea3383347cf6f10b859e7e58d522fe202d0fc60c1e2d119cc69da0111c43d3bde6d45528a SHA512 66daca60e4746b4b37d4360afe6f5bffdf3494ec7796995bfb4b0f6b04bca4002ed6e993573bda576738fd38bf7a360d828c267d0773ba19307fc186f872b2f2
-DIST firefox-115.16.1esr-ms.xpi 445501 BLAKE2B 7efc1f2f4297060e274be66c4309b9a32f1cb9938de974ab2baba3019155a068222bb0dbdafb34d345ffe4d053c72dc040e4466fc96d4be4c198aa669f444f96 SHA512 ebddccc714ffcd5243b8f6b97f49b6d23b1949954115225770fbb9e3d0800a6b9238261335b92502e8191e2678b2250c5efd8d906b2258c65a7a5d08ee8de1cd
-DIST firefox-115.16.1esr-my.xpi 514922 BLAKE2B 6a532f5624d97bb8535219b024fe269eafd6d0cbae72067c1091994e37e2328277cf7bf08795bcb48e0b1de2364dc8ca1cbc3a76be6661225f86a92fc93b8125 SHA512 c3aea17bd2497efa997c8dd08e6d59887aee4d52d19d7378385573ec21ce9450d0a5b6ebcb53dc8cd8b354dbacb4cf042068224a786e805cbe6f015a9b048978
-DIST firefox-115.16.1esr-nb-NO.xpi 607313 BLAKE2B 292802e4d8c94f9a14cbf66419100c6d714a582164713651a0564f70f8593b42150907b23dc973d05d770ed3f108fc3dc1bf81c627712f268c3ffd1a3c6c4a05 SHA512 a957ae3638156c79506da0aae36adc30e75d059b7f9ff17afbd9ee1a471ce39e724d55bbf50935e5577a136a4d1234c4046d32223009cafee608b35143a16bc7
-DIST firefox-115.16.1esr-ne-NP.xpi 506997 BLAKE2B e84e65d643397e2113a64c98d4944c1ea93aad1b9e33672b4f47a924f9afeec99070fbd7c37c37e8b861e0e4de6122a4cd872731c19b6718c1da63ed7a25f68d SHA512 ab9ee80402f4e89ac9981ae2b459c03e51bed0d77843f6d4925036a901b2ab6b08417b3224584cd88aa8ca1a5f3b41bf1e6f049ab1e8520a35876185ce0e29f5
-DIST firefox-115.16.1esr-nl.xpi 617752 BLAKE2B 7e92c22cc41d08923c74157c720dedfb0393208c4d0be5e1b247ce22a273480a9f94a97bb8cc5bce54f74b09354b689799483f3b5166521e9c5537cd336f51e2 SHA512 375cf0fbe56d6caf0b2ca46d5c930cdb5d6bdc1d735b22bce69a625e778b2de86ca7ff01fdd26fa5da2ff7a1d519253b093cbd1d6983e1aeaebc877a455a794e
-DIST firefox-115.16.1esr-nn-NO.xpi 609738 BLAKE2B f02b8dbb34b7d7a3dcb389fdcf4f5fe692f7465053253f85a72a4932390cb49511046cd2333db9e9a12e02ca78064f79fad82b7a301f482957c4cd082afb5bdf SHA512 9dbbfd80dfaad9549394ad3df4cf69389c4d0c09e20ec983dab21464a07768528d9fc9558f13d5dca633a673576b685599eb3cce35ee7a054396a47fb80eda8f
-DIST firefox-115.16.1esr-oc.xpi 607914 BLAKE2B 2c0563d38e28451f4098facc6c6bbe75813e66594ffc88bcbfa76c4661d796f99bee5a62b45a5243a337888817018d64a9523e1405b245496afd1d7a7a50abc1 SHA512 86f24148b2c98288ed47ef650408cafc8ee7ac5a01b8d18a6d76904cc782d5e5716b8f88ccec1bac17e135f262b4c6761644d7819bae0eaeacde60e5b7f8915a
-DIST firefox-115.16.1esr-pa-IN.xpi 687702 BLAKE2B 29603b7fd61ef8316851edaf6eba9560580f82f5a75b374c38b7e3282bdd83103a3efe7ea3216653598964a30cc2219ed761540d734eb6a7abe76476d5b39adc SHA512 85edb96bf0d6feac755e1aeba3b0973a328825358a3844eea43631de143cf34fd32d32f954cea3a7f82150bc1ad3250fb8aed4f8d06a793725ec1bb89d9cd3c9
-DIST firefox-115.16.1esr-pl.xpi 636469 BLAKE2B 47b8973a05df7ac01eefe51011afe8e5a5aa60cadbbf6f00edb96e2db7fa3dcae9216e13806647f67b56f65ebbabc0435f576e92160882ca7182629658a12a19 SHA512 16f4433cad3c5ba024d7b27b10b961a27b0dc8c7bc172e647cd36c695952b1c595566403f413ef5830cbc04a84042ecbe42ce0d7a48d7697b6a172f8c6d44383
-DIST firefox-115.16.1esr-pt-BR.xpi 622530 BLAKE2B b31333ae19763a7def4e4f988e07595c6621733c393f6f5e999079d0866d3b8fc95cd1f66c36f5c10b9b7daf0e406095e6bc0a32d3f174babfab97f1fb6459d2 SHA512 f36357ada9e57068a89b7ccc1ad9d5c2e5772e0c41345f8c4e511d82820f8e604c21a61e95482c4dea5247f0338bd1344963fd85f802e31e689dad8280ebf994
-DIST firefox-115.16.1esr-pt-PT.xpi 626582 BLAKE2B 8a4cee845b1f50c979afd0ca5fd03348e96fa744c9759fad471c58a277a2b4d250cb89b352ec2b926141116e14c85531dfe551f18ef0fb78f0bb5348808f0654 SHA512 82bf8a3348f552b9a5dad86989a08872031230dbaef4201009920c853d08b30fa0c025b1856f5cee1eb7814664b6bba14cf0457050ff9644abadee9f20f86093
-DIST firefox-115.16.1esr-rm.xpi 617344 BLAKE2B 6c8efb3e890129c919dc5117a0c040057f98f5af1ac63e3243b6a7ae12cfa17b643dfd601fa0c07a2c3b296e735ca9b0bb9fbe63cd50cdce8da94fc82ee134b6 SHA512 867080438bc274fd4e1f85cb2b1dc18b9837e4dc7f3ce4cbc54f6639364057c2753e4f28d2204a7f03bb98dd6bee29d58c0fa2416686f90a18a47034331ad668
-DIST firefox-115.16.1esr-ro.xpi 543540 BLAKE2B faece563c42aa6be9adcae9b504dcf71c5a3003de51d1906130ce942cfa3fd97574acc42aab669e1796f986a3cfa30422d4d44da83e1c73b59b16ede081973d4 SHA512 9b4668c2d4a3a52a5cd72555f76618a647994f5f1350db9af130202dddcd5ade766731998b73d525490ca642fe91bbdd1eb0dae94e81eb8a808ca6392daeec57
-DIST firefox-115.16.1esr-ru.xpi 721754 BLAKE2B 30308a6113ccd1ceda078cfba00c0f834f0bef87c858a22438a41b976f1399428b26ea75aa377cd8a2b487f4e56abd6df5f323f1cdcdf3ff35f315a548fd192d SHA512 104c6e50da3244e3484a0adf4e38b1ed0543e83ca16ad788d5b1aa222e609c17d35a57d35e5b695dd22a6d058ad85bf05ba09401b4ad27af4383f8f2aa797416
-DIST firefox-115.16.1esr-sc.xpi 582736 BLAKE2B 89a48b15688b63bff297f8c62377c35f9a10c2af1e1e974b2cf7f3e27e0df5eff8b4d0e784f3caecfeed8f70990eae99a916b75fe408b1ec3f0a5d89491bcf32 SHA512 116723e847793b736f872bd616f06a2adb9b529e14df88a9c3aba8a95a271cc1d810ea699d73d748b93e61e310877074e26ca58649c3bc98514cdb9fc153196e
-DIST firefox-115.16.1esr-sco.xpi 505667 BLAKE2B 36eaefafcaa52be24e4ad50394ae564643df9f3fc86b74982d0ef9713e5635a5bab0b872a8e9744420920d25c3c871e368d8a03598d1844a452e3a6eff37046a SHA512 41cc0da8fd90fe73c56ce68c0dd281525c271fecd41362ce715639fc610b12913eead9467c855295a8d7923b8455e06e6fae5a6679d0adc9671c682b82fec86e
-DIST firefox-115.16.1esr-si.xpi 606446 BLAKE2B aa8c1c75cd2d4572c6f83899caeeab314b257c7cd0960b598b60f8a8e970d5416876493e3e9bcf8839e6bda7b16d8de857b6033ae54e0d99c4264db486b4569b SHA512 8f1570c82b9f8c8179407bd5d18b1caa19ea7c9e25a2530aed91bc1a7a05cf2b7fc8c9b4bcd7d2c205ff801d018968a7883d5df3a9f17659abdc9a403a8263b5
-DIST firefox-115.16.1esr-sk.xpi 652365 BLAKE2B e8cc6d0d8bcb2b083da7b99d8126581416708e78ff0e6e2e7c0d1beafe41cb28eeaf13ba9004af248f9429731f6723299191573569208a2a959662b6206652c5 SHA512 485d736d0b2ed574d585c1bf7d1436f4017bc0adb21192602760b18ad82e09f440b7cd14e14c929690ba5e087503fa2be17eea78718966c9d0c4d3bffe68719e
-DIST firefox-115.16.1esr-sl.xpi 615214 BLAKE2B 36ece0a16d7e81d6630c022cd8236b11c040e7bcb868588b1648c855c9dcb1f7c86bdf080821ff0246a441e2979e1e0d0abd0cdbf774ec34cf2035c5548bbe2b SHA512 5751d0f92f587fecede5c54f09c8dbab9f9d78f817714782d382ee5c38d41c4f9393697c9eaacaa1b12d6153a248d9d1e2a553e34a3f7c2020f2eaf2dfa56726
-DIST firefox-115.16.1esr-son.xpi 413680 BLAKE2B b88d7c8ab66ef8be7193b89436738dcbf9b1609b24c359de102bbbffb5a7bd3efee0d204f2dab9b18e3228fd970cf44008687df3ea1e3b7cec47083c34d6c71c SHA512 9d418c8db388ac75229c25c1fce888a615ead7bd977aef619f66ab80bc4ec03ea8052e9c16517309633e91ca4a82a2692e57e991a1dbbbb50a389229cc50d145
-DIST firefox-115.16.1esr-sq.xpi 636154 BLAKE2B a7b05e2d9dbbbd659fa60b3f084b4f7fe736aa0f2aab94883bbbb65a85f627ae27130a45cd9fdd9d9b1076490dc7e640ba8d2aff438261a81d24c8d7a9d14f41 SHA512 2a4219cc1349bc05ba61655bf798b7f1eedfcf9c12874a0d7ee8ef437245008de32435cef7d7c025327156597fb6b1af4b5000885325a1a0b96d4bf8ae9d0e51
-DIST firefox-115.16.1esr-sr.xpi 633256 BLAKE2B 1279de01fa75618fa0c3e0f6e407f34417ff1a167484723413d2dacd9786f1a9225eb638d952a40fd4fb1d9526ccde3b48384995c223449625eed1341cc79414 SHA512 3e929089d35a63acf03cdeeadd53164855378336fe12d3e616e35755d540b2ee5645b13ec234081933fbfae7ecb59a252056f2b3e9fef137528c8f55be4c8e4f
-DIST firefox-115.16.1esr-sv-SE.xpi 619430 BLAKE2B 92736946b687549936614bf12ec816ab787fceb881aa6c64b42321a6fed8584ac6058f779ee5ff4003608540fd03143902242d57d2e1d2e9ee5d12853513ad5f SHA512 f36c57a74d7768eb9ea4ca5597e0c3b4fa48fc1e28cd5c4c2c28ddabb5cc825b12b3730b6ebf3f02491aa963b9f267d985a1b7c38748c590dba35a271f2bb11f
-DIST firefox-115.16.1esr-szl.xpi 521043 BLAKE2B 88af36106892ac6e1c2159c03915bc02742add697bb3777f90e218cbf6a53f1ef939d77f652daa7f668a3b59e91b18e84659c169f70d5548733b4cc3cefff8af SHA512 3e94c081f3463f8398b27f237ad659844fc03b8ae34b32eb696b409786ada001cec644995f1779a95c93f09400fd95db79793bfb29fb231ca826bbf3bf925905
-DIST firefox-115.16.1esr-ta.xpi 503629 BLAKE2B 45d6f750412eabea2348514b0cec0f09caa0c5a63b7bc0611cbc8f8ede63e0e205a82c652425576388764b4b823a9df4efdb0dea40251e4372f9ff10d43d354e SHA512 62d8274e664f76d4258417f1f150896592e882b9df787e4a61f7015af57ca55ab3e7e8824efd258b2b24f733b7b48ce6e1cc44ec07fc79a2ddcdbad1acefe7b7
-DIST firefox-115.16.1esr-te.xpi 556763 BLAKE2B a4721ddde20d84625c6fde83281b2302a629b6a1df6b4ed994c275da39c9a4e86c903adfc4b2372e97c21f0b747f92c4411f03fd1610888f260805b0d0c5155e SHA512 956a9946dc6eddc83c5aff9f99ccceab27104060973d9214f8ac8065138843824c40c42a2a4a89cdd0e183d31afa0d4a8709adb93dd3462438159b83ab11745b
-DIST firefox-115.16.1esr-th.xpi 693428 BLAKE2B 86145452ddfca2540963d19b3d76ba021403cf2aa06e77fae01682ce13ff1e7a8e6daaba2f9965dab14c0fa9841fc02f2d78cc728d341a591c26b110f68fb65d SHA512 0ed330ed39654999a4042ade510a85c4941bb32f8dd67219e75c3ab1df871385cc224fd88545ace6bdea2eeb6325624ca2762be92588fc5801dab47b4759d919
-DIST firefox-115.16.1esr-tl.xpi 527799 BLAKE2B 6130242ccec81479dfd1fe0ad63c4912294251d43b8ce4c00dada3db4f2bc9d0b1d261942503b8ce70590f5e691c6c9a82bafddde8795fcf6f4e9883852b2907 SHA512 557525018c5f48260521a2ca19d90bea165a179870483277296d91c97f609dc5f2db5c5751d5748f67106d9367af5f2aa90f18ebfb33488dfa3f2679b3251daf
-DIST firefox-115.16.1esr-tr.xpi 631876 BLAKE2B 77cd6b27b56a4684aef2a84eba6f649900e6912589129e00f194eeaf1ecc96bea8b5d0bfab6808aaba5944c2f5338eaad42f0c740401d429b543f115e7fd9b4e SHA512 533fefae4084b87e2d94bf1efdae08b6438152d85cda42678ac05417c35df0837752d4a60d7f3fc64aad6f666b4afed292d55c65ce6d5e37070abcd0d346f378
-DIST firefox-115.16.1esr-trs.xpi 498677 BLAKE2B cd7bafa356a94c43fc4fabb8714ed08cfa490450a8ac4554d7faa4294949e88d65c50353cada6b6d95f6093a6b2f3ebb223a1f7f2c31fd8679e931c0875e5a4e SHA512 b4e42a68f9305ce388c0c8324b2c329a7a8b59c88be40c8c253f9ad5b3c5c847c8638c94cf187feda0761ee174e2f8f85065d0244d27fc4dfa2899e4f72c3b4d
-DIST firefox-115.16.1esr-uk.xpi 707286 BLAKE2B 32b3c63b1093ca231cabe2b7eb112074cf1aa3a9349f3af74a43e8a5307f3597ee52a51bfbe2a963518bbc84343a1fc4ff9cc5599436043b497e224b1b299ef7 SHA512 8bcb683f7d03e0f889d8e7a0d3bb41a73ad5da93cf1c37405a1034460bd7f33d5cb30eac650b168f1dbfde975d3a75b2a72a750590a5b074d01acbcfede2a8f6
-DIST firefox-115.16.1esr-ur.xpi 554818 BLAKE2B 5ec5e6b90b9fddde4bffaa651716febf9bd6a41ea6132117f0f1e5bec50f488410d80e48a522f643fa9c0837b5bb12f3760e0af42ca1ddb70751940f6022ad1e SHA512 f1607fe39b7d9eeba7c24c21005ca1f8822c2aca373984b4507b3d49470a09dc1f15e26b4cc3ab5132370ce4ca7dfa8bf7d264729c491db38ac8f32031bd9060
-DIST firefox-115.16.1esr-uz.xpi 474680 BLAKE2B 276c659e735b74174f195dba6dfbf24aacf8206c287fa84ce0339c89120848ebe1422e81c8a26543efe5e6d4f99d87079f063058318d7fb0cf5fc40c912b83c6 SHA512 66d6dedbaa0979bfce22cc9d4fd40e24797c80fa708fde0425aed3f4ce1bde55e7c563f6a31b7c907da5a4d3a3b001006e77716a55db836acb0630b0573c32d2
-DIST firefox-115.16.1esr-vi.xpi 654018 BLAKE2B 2cc9e553801ca02ca3de325ce95b48976bf44a96d8f57ac73100d093b8b51533d165a550e7c4b49666e48c9d735904e09fcb95d1375351b706046681aeb900a9 SHA512 a2d380ccea37a6454b9042ad74baba07381dde9a73a884ff23b3ab229382ddd28e81b2e44010e4d4819e373369054ec2ff8a7fae2f0661eb296ff0418b676f2f
-DIST firefox-115.16.1esr-xh.xpi 414954 BLAKE2B 3841a27d12d6ca8fbcd928db244105591bf07378250ead2ca5570c82629d7f438d076b08bf93685f05876c97beb53dcfa58a9b66a04033a38827411b52949ce9 SHA512 38b3b6145e4b0bb35797c3fd1f7f186651d3a884ca413fd2adeb90218b4e8d9c9138dacb7bb9298712562625124bcd86754a3b7dd83e6bcced952124a7f3af9b
-DIST firefox-115.16.1esr-zh-CN.xpi 657113 BLAKE2B 52a87cd7414d045671e62170aa5d3ba13dc5ff8619b4ff0cc74dc66f449040f5544e94b9708f9fe2e08ee5961a7f311e875cfd2afe24569018c553248143eed6 SHA512 a61ef369b40ab986c49804ef3505d63fc1784af72329c895c60333fb374ffd15403f4b246f8997b07766495e299071308da2a02464054ba30bf88b2a2e9e3bab
-DIST firefox-115.16.1esr-zh-TW.xpi 659318 BLAKE2B ef23402128f4e23c1f4eb37318879a153f8fc5b475bfdfb1419c5dfc4566b8d8621ce55cc0f620e03e03a2aa01ecfa4e154ec2066d0277236c1515d4d6e0f7e9 SHA512 c9eb45af2360532245d4383214fdca71188099f03a6b7ef568a017db42164664849f2d3226c3c558473666bed076336b6c150e865587c2768c2705371a0ba891
-DIST firefox-115.16.1esr.source.tar.xz 514949380 BLAKE2B e54beb7036c89283fec40bbff1087cfdba5b1040d4655f7469aa4743d158bb2749dbeda15f950e47b42bd30c31e248c2ca690ac920007c04cd810bbda5abbdbd SHA512 eca42b3494fdab73e67d5c8e8b76520729adb75b5cad85172953dba56b225b0f05dcfea70fe8cc3e1bf1cd3d7103159cc20095d5480bb1b0e6d3ec90588988a8
-DIST firefox-115esr-patches-13.tar.xz 51360 BLAKE2B a048bfadba989ebbd4c6e3df97d303d6853844e66ed92f5f5f322acf18866218b91d52dbbece63827de283eef855c932d67e329c8d93200aa83f11268a5d1b2f SHA512 186ec72323e621362dcef1bc67c476716aff97dfad701faa9220a7302e798d3cb4ed90d5ea59e3e92f016be29875bb5219787635db99a8848b7c76e4e2e09e90
-DIST firefox-128.4.0esr-ach.xpi 465143 BLAKE2B c3a9f21844787ce1483a2288f90e59d5a53b106755b9e9eacbf9a63abb189602e7ddbe36867999b90516969715594ad2aac2a3f56b5f652de4a68ded32b193d9 SHA512 9d756e0fa0880508addeb703d3c26a39d35d105a91dece81bc21c61b2b9740f64613e824281a9c54938110b005b326fb7b846235fed1772271294e7021ad4b53
-DIST firefox-128.4.0esr-af.xpi 418481 BLAKE2B 4003217027774d87a004b636b721768ccf15c23b03b2dcbac8f1316fe096d4da17ab4580500e2d3d451467b177c1f202aa99ec6c5c67183bd47b93eed55e978b SHA512 8c6dbcbdb9517a0886a8e4b80e8ee0dae05aec366f6fbe5996ebc8c37be70eb104a5e3b0d0eeb99d0b9308c1b723290d6bf96b782b2c10f29668db7a5d1bf1d9
-DIST firefox-128.4.0esr-an.xpi 507084 BLAKE2B 80bf4f68ec8bad566f5b3627ae8c2d4ad2468f98d18b6abc8437f4a66bbf2dfdf87c30585f5d0995ead31fa2a47a5286691d4f7b6bf84251307e9f8cdf16afa7 SHA512 d2cfd1705af29d37a86fa80ee5f459e86b78e4218874ca44c60ae042106239c37d93b9553409d360cde80ac69b2e5f969197cebff4310fd79d87854764697398
-DIST firefox-128.4.0esr-ar.xpi 630465 BLAKE2B 85c0eba45b435aef3988b4d8e5421a980d16c51849a7bbf02f9456fef117f0d9bf6b3bdc6a183c62946beeb9b234570a7bd3f8babd5372a5c9ef9a14abadf2b5 SHA512 23c6a557039053c870aefe6e75ec89ac83db5dd78dde01f128b705897ade0bdbc6443aa1805be739877252ff13e4f155d4358f75f976fa4f814cf9d5228c79fb
-DIST firefox-128.4.0esr-ast.xpi 497402 BLAKE2B 1ff8ae2b974860fa0b08e31df2d8e2b3de1e72774c9edb92deab9ae6a4fe499494f7f2feb806eaf8f928e372e0de8bd7dd2a3750551a918ebc4842651308deb5 SHA512 37055137c7219c7548e2cdcfe66fbfb192501e0df24c0c9e45c968c828389f1a78b1bd203871c2cae7b9df6bc05600df5d69c47decd6a7fa85d1d53a8ff93001
-DIST firefox-128.4.0esr-az.xpi 491850 BLAKE2B 701ffa873a079ce12c2cc87ebb27f4c4cf1c6f1b14db7cb9b5eac4338052049b61db183761069bb8d85867efa0ebdd1777a245655c18ac11fdba7729960c2e62 SHA512 aa2c63ea7e90c069c187d6cd3ff892e10d004316acde7a2e5994cc0792eb0403efc4fbd974e3c0a9e84d447cb7fe22bd4a5de422a250de5fa49eb3d3451cca68
-DIST firefox-128.4.0esr-be.xpi 726775 BLAKE2B 5945ec990d5ea05ad6cd4ef0489f5a60a20aeefccc96d2789cf14dbff6ccd64e61335643473fe82e256412da39746aa886f96d88b13195af60119892c0e5c017 SHA512 c13632d42fc9dda66394879b704c7bbee808186b1afbe1cdc4af4a80211b44f65cb0d95192ff6914e00da8effaa74ac8e306175ad53519b6308d1d6e8a828b67
-DIST firefox-128.4.0esr-bg.xpi 645122 BLAKE2B f786d1607af2a67a7c71624f7c8e878314ee7fe9492370ef0499ae984c63151d2a09efd010e87b159dfd6d917e4c4cd804d8935115388b31749fd3f9fd0bd243 SHA512 91f4db861fc69d97245ed0b10a5ce8a7ba15c5435da967e4e5f9f1d5297931377e7dd200d047eeef9ccf513aaa95fab7bdba01198345e85bcf13e9e636503d8e
-DIST firefox-128.4.0esr-bn.xpi 582600 BLAKE2B 4d5d23d0ac111f3d1e702b87e1c10cd4951af9a36cfe000ac42d1378a780426000d616c4eb88328dc177556d3f0f719f9580e4ab9c834a960fef24c5e6866081 SHA512 419832878ef934489e507fe3f2fe9c069c1eda393eea7e8cccf4bad8c7d98f22ed4970b14899dadd7b5de27607247b08e73e64e7a889fe94d0a94656a9bdeb98
-DIST firefox-128.4.0esr-br.xpi 594468 BLAKE2B 56f2fb251d8657e3e18149ac0609cf9787ff65fba2f4e0614fde70a90929c86baafdb95d7b1687352cc0932bd6805136db5b50c5453d1718dc7532868ea266d0 SHA512 84b8bd04842021ffb7475bbebdb4a0921be699e24226411fa3905e843361a8363fd623c85c3a947de717fdd74b53dde7c0ab4a2c6cd365be76840d2a5b293717
-DIST firefox-128.4.0esr-bs.xpi 511996 BLAKE2B 990653ded8934c108a1fab06480f519e9d1c9d7972ac3ed7fecd14c34ebc61cc0a8975b90417a590bfac9aa96e28a39f92989c1907be6447b0e940819cd34816 SHA512 3e4337b1daa733abd916bffd79a57bf861f2faaecc51addabb4cdfa04177d1c6dc56f53ebf7ffffd3a2a72192aedcab1030ffd3d871b8f024b3c37259ed7b51a
-DIST firefox-128.4.0esr-ca-valencia.xpi 547325 BLAKE2B 46e3a5c7352a6f50c8d0fee27c22ee41150c61bd30ff38e9b0f09463a288fd1c828a22dcd190d6e7a80394dc1fd2a7a0199700e0e1b533c5f8ccdb47b74485b7 SHA512 6b8894ad8103e325d5ea7d32109ab58f2314238dd3672d064960bbff4636114cd8900c943b4791a34603f8985dead320d85e352e305c0a1512e48e0bbbeba576
-DIST firefox-128.4.0esr-ca.xpi 598857 BLAKE2B f88614c8c477423c1d32a149caf9d010449fdaa94f3e23e9d05a0f32f56dff6977b6cd19206a4d397471506a72b0a0a3e5dda3e4f4b4c6d2c23a46dd3ac6e7de SHA512 3653eab908010b01a4ca92ba9ef31b7a056705550644483110ad3ffb53d2d216d88bedae467a65745d074a49d349db61cc6a7b19bf16994ab2554e9eca8c1ebd
-DIST firefox-128.4.0esr-cak.xpi 594283 BLAKE2B eb0b749bcf17a612b8987c94396077fa370ff103f9a962f99936d2452cacc0c29a576a579071ea2260b8889744fb643e83a88d34e93e207849f9faf3fcd97762 SHA512 13a8ac86ae3dc5d3553ad873d763f4b951657974f8ab2b017993da38bf1e37dd6d9c50b5b6dc67fbbed6c6f82041b6698c68305e9ea93a2776141937e2576faf
-DIST firefox-128.4.0esr-cs.xpi 671319 BLAKE2B cf7d11505fb765db812a8af93d9022bce3f713992102f2b849a21a80b1104c5423c119371036b56d9f91f472e8315c2c4a12e53f02a478be0ad54c662719f0fe SHA512 924daf2ace96382ef5ff104df955eb66a81005564f1844b95127cacaad0673e975d2bc8f3fe63413e8ca90aa00e0d04313c55809cf6e39b3d7b098b6be53bcae
-DIST firefox-128.4.0esr-cy.xpi 636131 BLAKE2B 7fbe300c6d6ec07a4824e5f6de1fa7beccbe153ba4a87f527f8366f4e298ab51ee0d79dbb32b37638e8ffe2e5d8eebc9a5b021d5e00162cb00a9b776e0b551ea SHA512 1d2cdc764a18d542b8283e76220f6d14f38228f74a5f0df2977a2db7833896c9962dc5918d39a585418ae691c48496a0aa895fe5f751f9d3bd84c5b2a26f9b46
-DIST firefox-128.4.0esr-da.xpi 624460 BLAKE2B 83d897d1e2d23677ce2937ba0d0fc10d446a94c375967d00470072c29bb8c0bd7b6b76288339939f86783aa1167e7f7c9592decf6de8141efb5f57f811eddcce SHA512 c90d63f22fc8bcf61c647876c3eae5c9101804f25f14964a49edc63a146727eb4353e685061b2ded5330b723e6398162a108b78d3442799b9cc68af9c1522f25
-DIST firefox-128.4.0esr-de.xpi 646220 BLAKE2B 5664d498c50b3e09d6d382d0c1b67d283634a4ae0af121ed44ce7d3b4307324a5da765b8dee44907199996e492e3713e9db17fd665fd142fb54360b778b39077 SHA512 5b44ab8f142dfc5e69e7e03851f382e0de7639e3953c0355a05d4726afd1453df46d9d4a3f703e2efaeee4591b5324c1fb3956b0a30ab86f618f5dbeb4452064
-DIST firefox-128.4.0esr-dsb.xpi 663381 BLAKE2B 266002ec7fb2e1e48448d442513c21528a464936b548c9b781840383a5f97a2c6a4655583039b8c31980bc2fa10a278957f73a0b8269cdff494a7cd86881346f SHA512 364ff138510568cef12772ca451e171c8a3966d029df19aa95f84131e5b11ffd69b742dc93d5f49495f4a5bbcb0557e368cc82eff32c7b2f74ef549ca940a90b
-DIST firefox-128.4.0esr-el.xpi 747326 BLAKE2B 10900e33d4bbc2f9e761fdd752b253a6d6b3bc747fa1bd1d6c9ce768040277f7f0fa19587ade8e5fd0c32c42a57b43b542c0852475486aeb4f06c9967c867db6 SHA512 a0f11744c77f9eee3d4da9964d39d6091709154c60d8003629da9a5800b23bd1cfb672c662b1816deb93a41690c066c8d186a4b0a22c1325d6738e045503a4d2
-DIST firefox-128.4.0esr-en-CA.xpi 592733 BLAKE2B 5be0755e299c27d5d1e8129421aa0af48cb7a80e8be22836a45cf6bd40401e418f098213e427d5597f93b61418e48169f836d4834acf46aa0f6cc10d07b1bf80 SHA512 125122c3b4f5e19063c74da77c754590b3aba3d60b9743fe6d684f142f602041dc079af69e11ddf617a7c2018180c784c2802429eee519bbab0093672c82d42f
-DIST firefox-128.4.0esr-en-GB.xpi 596284 BLAKE2B fe406f6ef56adf83af63274af39fa7fec7442087d940509cf21eb20497da16b8604102407b239754203912568e4f7a68b6e78d31840493a90af39630b37ecbcf SHA512 2422f5c2feceb7892384d6e1db6e6ea8682436fab9752287e801ca58b1526468edb680259da3eb4c8eef1c62acd9de6545f5224d2f0f3231ae6f94da5382aaba
-DIST firefox-128.4.0esr-eo.xpi 624385 BLAKE2B 3be740162662a63f1a233509563665072bad3742bc25fd66b1f9f068a791e2c92623de068de20f9201636e6916dbc16b3089aea59a49dbcc1e1e32e3e4b9d4da SHA512 13742a87cbfe68d56987ccd7e1975c8e39b6d84756f18077eedd51526d28d4c218377522cd7baf70dceaf11258aca055a41e3f9668f4cd06dcca472c4557562f
-DIST firefox-128.4.0esr-es-AR.xpi 639976 BLAKE2B 2327f5552ae72f3ef808d61e809701615e23dd73e9c4607eb20e793dc081689e7587ccd87d6e864f29300de4071f2137bc5563aa826a93fb52229197ce454977 SHA512 f4e808713b97a1ec62f0255e3af4b649410ed6c95eebe12bd42332bed3b47ed2ce6798ffd63abcd730e26147917e6a9e54a76b9f4b9e05f8a9ba62b4b3bdfffe
-DIST firefox-128.4.0esr-es-CL.xpi 639393 BLAKE2B e46c62fab8af3bc60f2f6fa2b70c8ee7be6704c29562c53785f7195050a06bd35e45089da8a1c1057dcad465532df95385e5e5382368527cd6cda167b7b48f43 SHA512 ff6bb7e202915ed072c7a8afd113906dec7d799e5b17dfb55f92216c613d6262e493d302192ec8bc9d6252fb56733079e5c64fa728ae79356a862d8b2e774333
-DIST firefox-128.4.0esr-es-ES.xpi 633924 BLAKE2B 4d01df95b0308b782390276546539dbba8c91a0998e26ba4efe28540ef6333716309b78438dd02a8d73a9b7e3fe51957dae0bb264aa731e81d47e279152ed5cc SHA512 23f85f50cc4bf73aec68ccc12a553441a070c40cb055861aa83cf949d213e3825a9e9eaabf78968f54bc6dd4f585638d053f83250f629aa2ebf45d0ffd56bf8e
-DIST firefox-128.4.0esr-es-MX.xpi 635876 BLAKE2B 1adb0d550d935f4253e8ff5f5582cf524cace65653c9037f0bb5a1ff051a900556f7af07edbd2ba41a3370ca37a12f30a2def316abc93bcdf4dd6a62a3b7cfb8 SHA512 be0c03e9f8d8abe0668a4b9d117cddebf6869042a330519b3fd1df20e1dfddf705f06f08f79ef9c2cfc3c82250726fe468caf3627b50c9c7d7224f63483283eb
-DIST firefox-128.4.0esr-et.xpi 540770 BLAKE2B 4335f969b03efa5ca17fe212f3c6a49fb51b0b9035d42e912f9faaf60dea64dfcf52872dcc9f5195759c06c062df341bd592e5fc758da714c1caf6107261f1ec SHA512 5170155894e45d5fc9de12ae659de5f3374825a718acc7a79329a4c4f71e3383a98b7c7897fcdce6d239d646e5a5bada3cf6113adf8ddddd57845e09ac622f9e
-DIST firefox-128.4.0esr-eu.xpi 604161 BLAKE2B 6e7f49f1f7058edd20917a59afcf2416d8819ad8333128df27b8c910caa483ce07d1ec88ef5a0fed19d6d8f0c1f1a72f295111f5efa7907ae75bfba134864bc8 SHA512 8ae87158be09e744ee0bd034fe18811da83953ea9271c8e83031576433f50902bd7325799a20e8a1a2aff62fa319b7d7164b218830b98d18076ba8b32a196492
-DIST firefox-128.4.0esr-fa.xpi 592293 BLAKE2B d56f27763297e385086062c7fbeb7f085c92f68ce85a5e21e27dc3aab9655adac286bec8b95c02b20c590746fd553ebf201202aadc4ddd7f050cb747a43243a5 SHA512 69ef731e3caae1c71a17dbb50932b2d51fe7b01b107c2f072d86c605b856a59ab77e496de21e01d4ba695b68a34661ac30bebe713405003d39fcd3507c45a019
-DIST firefox-128.4.0esr-ff.xpi 477126 BLAKE2B 6e112da796cec6bd60ab505efb8dbabd50e136727467db5d96df1318061872a6ff9ffb44e9df1460b253e5aafc73e50a8b807ddaeec6017d88a0b8be192e72de SHA512 9e246388f71a68f960b41a6921a1c005d27ff483afb044f202c7a1dc2bcd1fa7680347bc5bd52e1191dc28db41942b52d060f83e7a42bca99f5b71a25609de7a
-DIST firefox-128.4.0esr-fi.xpi 619039 BLAKE2B 8c95c1cf14ac9a4b1357df28636b9f0053b0e63aa5c4dc5dd020e506f96ef5cc94f44bd00f99bc0395472e98b79c97d40f1c561bea7c2dc195d75472937316ae SHA512 6120e8a60aabcc98d55ed427b9365918f99899ba2c561c330b97b37e73a485834683564c806d62e6b86d2c3a81e51fd01d5b765f6b44bb8df8020ea51515e616
-DIST firefox-128.4.0esr-fr.xpi 653420 BLAKE2B ca1a634768d58935c497cd524ebc9308359abbc189c85d38486d0b6171bded0b71fb1e0822b1a0eb0d45f8eff2ed978ee61aa42f94dea349f072cc80693bf4df SHA512 de21175ec101551a3f9b5416f2b89adc995f03c3a030b48c417006197f1f1620e49e231e49867e18c304653860468a8404ac4a0f71b39175d9fb14f1565a3fc0
-DIST firefox-128.4.0esr-fur.xpi 642531 BLAKE2B f6b98e52d7aa71eddea4c2e8cab5310e4156f92e3395dc02bccbb9a7c9fcd809185e6c58f00c2cecc000ec336e67c4d7639565e59151b3f8abd7a3addf77bc7a SHA512 c6a101653359325e811b33be01b2fb10afe0cfc5c790b1104e00913ada57f615edcdae81b1549110358dc3c85b4946287e334e75181fa3c9e458e9e14c320f56
-DIST firefox-128.4.0esr-fy-NL.xpi 635607 BLAKE2B 0770fae5b46c56125fd392514e5a441b4105027fb962166f39574313229e57c8b31732e4f00abd4d465367ec1d586c2eb87303f1588e8b7a1f6c4e68a1e4358f SHA512 9432cadc2a4f83fbeb9b2483ef1d5cc1d9576aa9a884946bfa3b3d56332888b7ea9ff9f6910aa075996e2402bf6b33d464dd65ba5c3c4f151595cc65fc60a7b3
-DIST firefox-128.4.0esr-ga-IE.xpi 471981 BLAKE2B 15d1331ac02f20b0bdcf8bdb1e2edc52b3b871df93a16750ea2289210db54b0fc0c7ec61d2f6b340f9e0d84129627f85d906caa1fe356a233a0164d6d93cc625 SHA512 5a69aaa875b768a8da70207e87e35fcf0780ae869253679e91a0b40ff7556502fbeada7d66403453d4f944a949413f0c114f39481a197750afbb819132202b3b
-DIST firefox-128.4.0esr-gd.xpi 597920 BLAKE2B 15b0c0db33fac2d014cc24fffb8428bf933c6b88acc41d8988b7ff1dd6a5e38f1b5d798351c5d3e23f7dbe74ec6d3a0782b776a78092deaa83920c6d0ac9dd6a SHA512 9be3c9c90fe2045efc1e400019e5702fce9a3324ef2bca0894b4dcc424a0237681f6a0a3c01c6cd052be51eee0685c40dffe913c10ab2874899f6aff4403563c
-DIST firefox-128.4.0esr-gl.xpi 609264 BLAKE2B 0cc374323a9ad0de4c31ee7f0111af8c0318d7789c576cd4499c4a869d3bdd0b9e98996b4f1d768f69dfe82f21e80e487264c5ca1996b1ae9da3aa88bbff6e40 SHA512 022f1f6010aa81d14ed5456ada7f1a74074473e7d796ac7cf5adbb6b2629643817f379c001180e9d2427e542939781739f97ef14c4d2b90852de88f56477a717
-DIST firefox-128.4.0esr-gn.xpi 648558 BLAKE2B 7d00cf8927bf45ebf1a374d963c72ce4433fe1ba8142dc0ecb17d3116d95d9b9271180bc142345950118e364126452327dd61b0da9953068de882bfe3494ee99 SHA512 d1cfc68462f461e650848c97dbe1d95cb5f6f044f6280cb3ef7eb7dc3ad17524929c66558aeacc3859954940e44caa1f0b166824aa00829b038b954b190a0dc5
-DIST firefox-128.4.0esr-gu-IN.xpi 528426 BLAKE2B 031de822f6bb918025e1c37db882b07d9f30161bb2d1ae8f13e7c539c41e3f94f1003e6f36d12d0c9cf03d592abc1134340841bc61df68a9e7cccd6440458334 SHA512 54752991b1a70eacedd619704945208d2de9604e781c94308435f6012e46eab483606cc7a154724f94241642ab82f33e9c5f87ee20b7512618e4230a2a2c0322
-DIST firefox-128.4.0esr-he.xpi 642015 BLAKE2B ced8b76618be4ded8932b8b4da7d7bf3cf19edaf37d24b6f3ef4f2be5fb2d775c1b0a5a504de306feae4fd3f398ac233b4f05c094927ab5e3f84efcf71732ee3 SHA512 41168719bb1c18d16d0026d2d35569062fe08dda4774a31e3ca28d60d17c9efd15b9fed57e98be05b8d4a8cdfea221acfa7392932fe88add36c9e639e1720573
-DIST firefox-128.4.0esr-hi-IN.xpi 567985 BLAKE2B 5ccd308ab922ecfbfb61426f5ef524e0090643d03a834aa20f06c8b479111acdf3176f5f787a2c9fe0f667f61bd7a2e38a6c7d73aaf0e38a996bce5914bc53ae SHA512 5b98551f9015272251aba83e680a795d3b15db567f76d42e55f50a88b8c6b58f36db0872b679d9221eba4636049c39358d75471a2a93ca6ffb3bad2ae27e484f
-DIST firefox-128.4.0esr-hr.xpi 618788 BLAKE2B 558425ea8fcf414e0cd6494da8694f5b566c6a93644b4bc5fc682629849d8ee4fc9e26ab2298c848fcc47c74c8752e62df42d79dd42b6983203d776dc4a0e920 SHA512 280f879b148ba024721746399a9bb5a907fe706c7ce2e367ab3f91665a0a2c151d5c72cb1a9fa8b432cdda7a4f951074aa57e005087e9965e6419db0c7d03db6
-DIST firefox-128.4.0esr-hsb.xpi 659314 BLAKE2B a3a562681a7b6d7f3a0e182b4f84a761964196e2c43daaccda00f69e20ff39940d2f4f35d6b4033987e3d5863161041c130f27bb47e58a3c4d899200d54b52ab SHA512 31a543ba230b69ef2a968b370a5ea6cf20db14672c463e62fe76ab4615441968fdc7b93bfbfbe9c9e47092116f38eb9a3e82fcccfc7e4db056d17a38ae0916ee
-DIST firefox-128.4.0esr-hu.xpi 663653 BLAKE2B 8d8204575ea12daeb4841b945c002c11c07bc8057cc8287fc10b35208d8c1aef705540a8385fa37f0b4885c62c3ebc63029aa8138e64073c75642dc2b3905f57 SHA512 147c6af23bce37f0133104702eafb0457e462ffa361180c6c8789b64990049248256747c11159e34c647aba153fa578ea526db8fff805c89399cf621ec772da8
-DIST firefox-128.4.0esr-hy-AM.xpi 652678 BLAKE2B 7f57e5faaac1dbce5a338bc15b958ebf76d640a24dfe9554dbf793367eb2475ae40be63e4e13f7b905c2dd6e9dc13f816567f0937dcc0647d5bb173150225904 SHA512 23d258eeb81fa560d25f346878f3692ad2a5a73249c0ea5ab3f3d12b093915cd1ee2f5b43cb54686f470788363a38d65acc26a05da454d86461fc92b20fc1b27
-DIST firefox-128.4.0esr-ia.xpi 622472 BLAKE2B 711e2d4c4e7f41e216c195f222aec2979a29e9aafdcc1064e8b8784b09fd8632d0a4d54a7dd605976e62e07c3e59de1eed80f367c6ccc67c59cf82ce21cd3af9 SHA512 a618a3ac4b995bb967136990ccfc05a0ad719ae1cc6cd679b24d64ded769026e9650a9f9b1763d2e439b943c5db118fd5a3f61b4d8bc0b3a6232116ea06fb05c
-DIST firefox-128.4.0esr-id.xpi 586192 BLAKE2B 1ce2d9463c0d319b38cb931f2f62d3ffc2bfe0d2cf09c66c291637413440d20d56d7a45a050caf3d842bf3e27417ae7dd25b6d4c206dfb77ea576c6135ffbb77 SHA512 b7885ea204d6d4d270f6367845900288437a4ad6ddf857ca96cf3c55e9347e5997caa2b5ab940ceaad4c1bee92cc43659a2ecb2d6d09446586d976731d76232a
-DIST firefox-128.4.0esr-is.xpi 625613 BLAKE2B a844e27bae3a873eab85a3f5fbbdadeb61ebc65fb13c909109594b68737dd18c63a82972bac3ea00151f18b786c728d754da8a41f4d2a0fa6246306d43d553f0 SHA512 7d369ae33848ebe9bec4ed2fce06e49613079fa7fc36f37c6bcbb76de58d3a986c040052e0110d870e67f82b95df74392e836d6e9a965fc26a9fdc46df96309e
-DIST firefox-128.4.0esr-it.xpi 579345 BLAKE2B 0f58c8531ae61bc2c2f404151192c108e9456e1ae60b5f9b91740e953b9afc96891f118b5d0a178657aab3c31e2ed9ebe78ac434105271eee38620c4bfba9b41 SHA512 5378605bb0a9203bff46ce27a58fba45ee7015d60561d472ede2ee32ec0bcfff40ab249f284c730298242d05ea3090d8f1f7216816eeb77a1451e45d90722a1e
-DIST firefox-128.4.0esr-ja.xpi 688886 BLAKE2B be678a6a6587449826630b9f5f0f1d1043e6b37bf5ef84c1691fac4d876a2b28705876b336b460efb7caf5fab8fcdb7c98ad4002e29a072320836909481b74c7 SHA512 b44c6c7874f08bd3a25c797b8aaebc0e3f7c2ff7287b02d72dc59a6a127a2f76ad3dbf14847f1a702731a5b948b47192bca429d1ef91b545cfe1ae84b190665f
-DIST firefox-128.4.0esr-ka.xpi 661961 BLAKE2B a4ccbd5ae3d1bc8d14602f0020edd98d8ed8fa9c24b9173906f0cbd582669331634f07e34bc8604c16dd37e702cd2dbabadcce598389d1f15a8493ba1092234f SHA512 57567380a6942d0f08c189345df11da94de205497d571fd1d3056772f790630c05a33dcabc7a03049c59682f8097da9db0e208790fab8779a5f35f52fc8f7943
-DIST firefox-128.4.0esr-kab.xpi 617515 BLAKE2B ef127681e3f57011fac0bff1614a1d53d16a0c5bf5c8bee5369a806387430aab8d1a91a31f4efde77c10c28bca2060eb545a17b6a6f3d075f9e6cb824c08bdba SHA512 1f507ae8e47bf35f11f6eaa0ca1e320a071c2e9a13f94051b92e71800c6f4d500a7cea156232b72422cb0b3bf43d98f52a7db0de459a1117490661f74e306937
-DIST firefox-128.4.0esr-kk.xpi 721099 BLAKE2B 1a38b82e0529292cb2194c1854219a08e7c4a8f85dc3f81deaf30a2df2484775c305ee734094227ce51802284df4eb9eeee854d1be4098e0bd55425b618b17a6 SHA512 2869c872161a66a3cdb3746878aa71d0818581476cd5a2d549166e2fe5a9c77d1cde8136ec4b461d4eb2da5a1b9c7524dd52d01281c54086bea8f74eed874522
-DIST firefox-128.4.0esr-km.xpi 526829 BLAKE2B e3d33fc987febcd5950b371bc8708ea80a1d447eb185c281008b6fbf5d215cd21aeef0094185ea0b523edfc8761671ece00b572590af05d74d44702325d44140 SHA512 2ee11e00621450f39d9c029b8233a1160a44bdb3986beb5b5f20db4a6edbbeef871fd90cb600efee84848a77be856f279dcd282de8107b5371efcb8bbd66e37e
-DIST firefox-128.4.0esr-kn.xpi 492184 BLAKE2B e7f115ebb1db0c4f10aad00dabd0fa8923ac378a63fcfea461df1b244f539528a1620a3d38eb213129f2184054d8779b759cf7e3e389e25282bd955b9b7cb1fd SHA512 6eae1502e0df057d7041597a9eec9472afb783be27ded5ef1b6523ab12f246624cb79511b174c310d989b887fd2075b7c3dcd0612ed2b1a14dc5b6ed5ed751aa
-DIST firefox-128.4.0esr-ko.xpi 674093 BLAKE2B 2276973801ed77b39b948d141b43029c70a1ded6022f6b8c17ef06ca870dd7a07067ef018413f99fc7842b5ad3fad5941d54163f598c6c0f73782b65300db9b3 SHA512 3280d83423d5f41824d01fc7ece211eb20516e5eb00f28bc0616b48dafa619ceb6612800f4d6867c32e2f2c1f09be626116ca266a3bca7a709b6261687fdd316
-DIST firefox-128.4.0esr-lij.xpi 485187 BLAKE2B 027789ca6b662f526639e9cd8825fdde649f360e9e732e5af3b6e13331c31bc642e3926125b1f2fc6cba1b69ff5246cef5f53bfc840b95bb0156428b553f9609 SHA512 1d375380e8ed66761f1ddb0c6fc43e626eeb66260d3b5f3ceb4b90b0bd9a5cade0169ad46ac16416ecf72c8e56f8c250ed5d063bca795634e30b8592a6ca8eba
-DIST firefox-128.4.0esr-lt.xpi 573761 BLAKE2B ad2d59535355581a6feb199fef374c7576acc86da3d5087222475a88d05999c46f607e8dce246bec00a78d8a267414252766b2ad37fbc8ca900ae1256512d9d0 SHA512 ce1f48fc4b1273194f12a7700e8f2ecc1f034995a5493598817a03b5e22164e908923cafc3d7db83bc224b131a06a9d8ad2fe1a672c11dd437dfe1ab9b2854b1
-DIST firefox-128.4.0esr-lv.xpi 586847 BLAKE2B 3bcd0bb3c2b0c2bd1f19f0c2f4b1a8828eaf4b336908f0f9adb244cf72e1c1661aa29383ffa9767dd72292ed0b98b282306346446851e141bf954df9a1c73b65 SHA512 0a5531d8a4b1743f85abde7c4915548bdc9428247392a18131a31c97085be27148a8fd769a6729ecc4db8f381ab0a828f1486d9c14c01759ffaa803e141d1b48
-DIST firefox-128.4.0esr-mk.xpi 494810 BLAKE2B 776f401b93933f0981274259e5e4af3b0c443465fa2d6118b757c6271d71bf493238cd416f7c3e4fe2d2e965b47ae4b9b45a8e17f14be23b4bebd11ea4e3ab9c SHA512 060ed564c8c371520ca61eca27fc2decf687f15df7f74b23126d7780dc921609dfa98d390216f49a47eae1c1d539810fad0b62792b9059ada9699e7b445a4862
-DIST firefox-128.4.0esr-mr.xpi 533190 BLAKE2B 9ebaebb11b032898bb7560df21b0e70d5dd18db461c1cd2a03ba261005540fbd56b36725c7b8ebb51e20693b09afc4ef21cd685fdaced81af8ce5d0505de1103 SHA512 aafd961a48c8f4892aea6c5d830fa870b951ca21984d35a2ea9c8e7a8beb1336a0c379f22618aa4a05f0a87eb516b4dc99b50e5e4e603eb738a6e56b47ed9302
-DIST firefox-128.4.0esr-ms.xpi 450802 BLAKE2B 9d231cf2e5331bed5fdb4914ed17c9caa5bfca927c0651b59b295e1ce06f69e6c1ed70620f93ec1271c7b458c1a41b3e2d2963607faa2189e55bd79ea6db050c SHA512 2e39ecceb186f624a33e5246093b75e9d4b6320ee44c16b5446230418348d71ae8583df7ca7e96c11909619d013cb1102c15dc41d097b14ddefe0220eab99b62
-DIST firefox-128.4.0esr-my.xpi 519557 BLAKE2B cbfcd93ccfb60be9f7961ae363407dc3bad104637d544c388a35a9c57bf5589933322710c370884d19405639ebdff9956b237c47e8e9d34372e6f9dd6020b3f4 SHA512 b3912540697caf23eab729f568cc1b314ba1ce3312d66601ca8a3c734d3046d4299a9e8087cd986f2136b3128623ddd8d5a9eaf7205efc2882fad9c20ed3f7b3
-DIST firefox-128.4.0esr-nb-NO.xpi 616759 BLAKE2B 6d7b5474df678bb10467a1fd5a1cc4ca24625df02917b334c9f62594b7d0a02f27d7d35d9521d5aece8ba97ac500693ae2ec89cf97b639b99f635b018d156aa5 SHA512 0dd00fab1b387bee87f29bde5d983eea5d1f1ad6cb3c0b826a8f5b606540641715bc8274ef7da7c14a56ef7094b67c94695d47be9b18bcdcd7b80590590f3c04
-DIST firefox-128.4.0esr-ne-NP.xpi 521810 BLAKE2B c7550a667fd8e2e145c7273504cd50f6d14f8a7f2c5afde96639e95440a63281de9e9f13d77621551166d9339defbbef66aa7a59012572712a9c8a985de6e4a7 SHA512 6f199eb2fdeea39e4c630390a98afa106bdbf3bcb66101daea75a3821cb2bd9a2cae208892586bd21090b8ac501af4532b77f17d43549803779b076b224fe1f6
-DIST firefox-128.4.0esr-nl.xpi 629316 BLAKE2B e86469b815ddb91e87caef4594e317a61ce7b70def186fea1a34d3ef69f1f44c81f8b3884697076a8c746effd737a40b483d9300a976b82510a5ada31c971e32 SHA512 edda0f63315ae910e659cc0ca26c540c50ec8593ee638778d8022b41342e07d5bf96730a6045a40689591d07b3f59b2e68a26148561b05e55f34a029a71fc91b
-DIST firefox-128.4.0esr-nn-NO.xpi 620846 BLAKE2B de50062b870d8b5ddc7899985ebf4f95dbed9a444cfb5b43f1428f759317d751e885d5e2d26124beac7324510fe61faf7faecca48be9f197565515a205d64dc9 SHA512 923c12f76463f921c6cc91c65751bc6f1e3758bbaf763f708ed9841a27e397a3ee5646181566ebb04e173456d761bb95dc79fee124222ae9e170bec16d413643
-DIST firefox-128.4.0esr-oc.xpi 615227 BLAKE2B 5dfdee9ef4f278f230e768baabc34d858071b1974c1a79362fc657900fb711cdde7806b580b04128c5365b187358f4e8183a24482ea1fb939465814631cf3177 SHA512 f4312844b71d5510c960d2b17c77b746de3f6b483d693f59a013bad2a039a2caac0aa05eea870ee3ac6f2a62e48bf24b54ab4b6e65c11109bc8f85c8bf930595
-DIST firefox-128.4.0esr-pa-IN.xpi 704629 BLAKE2B 769ab7ae385e19e2714a0a98ba762dc7f2c7f1353a76c5bd035d08873922296a561f899daf0dab125e06d9342a43dae5e7e997c13da53811e9228adfd32aa26e SHA512 86ef822f2f2122437c6c5fbea9ff1684d75535427ea3f775e25def0358cf194777256e3e79a481ab343fcf080eef784591d894c8a0fdc7c6e4c0ed611b9a135d
-DIST firefox-128.4.0esr-pl.xpi 645225 BLAKE2B d7928c22d27d1f8c45924a2e892c53a7aea85b121cc46d111d059182ec7bbc9b216975612f7b1023676360e301768b56c3ca996c883c64c9a3682a3304aba4bb SHA512 bc733fb0ed6fe63a105b65f4ee163bc6120fbd6d418ae90f794b80d8efb12e77ce6d8e9ad9cbdcf603ef6197c27ec665796e76bb16f344aa37e2c59e0b6f30cb
-DIST firefox-128.4.0esr-pt-BR.xpi 633980 BLAKE2B db802d7b8b7824f59092ca317af0da957bbb385faad971f038c6be40ec08e6da2dd6447991a2281fb6fc565c7806e0f348f530321a1b9fb02e117655cdd28cb0 SHA512 ed4f525f3c82583477a44f61276a34abf3e2f5034ddd9babafa7b172b506e5bf77154e6b7b7332d566fd979b66d8aebe28dfe76b3a2ad38326118415e1200051
-DIST firefox-128.4.0esr-pt-PT.xpi 640664 BLAKE2B ff745bab368f79316e2312cb293e9bdeda3e2d0bf658e2e570169cd06f6192a522cad7116b782b16884eaa55104ed43f8fa137c4b7609d9a980a44dfe1ec170e SHA512 5828533b95c3a3a7e2332bc6eb13fc59764536e55c5cbcff47c212e434b0cc55e8e7334c719641686f22f04737fbef93a1c76a4e99c402f24dc96cd0b9179d4c
-DIST firefox-128.4.0esr-rm.xpi 630455 BLAKE2B a701d8f2de45e063a7eed75a765f8cbbc507e2013a5844ea59384830b31d8776ab2303d6714b0790a6996ae13e232c4f60fb43dc4518f69a47af7d0b061db582 SHA512 9debce809766aa12aa514dd58258bd8f2d9845c332d68dccaf7e17ae27a0b0a589c821bb751e01cef7a17ac165293558ac1b0ed631ec5a4e5abe7ad66c9ff64a
-DIST firefox-128.4.0esr-ro.xpi 550869 BLAKE2B 1392eb00fadccfaec9fad6c9bb9bac3e430de6f6147c42a1092b83e240bd4c5e13ebe6567effd215e70ec11518b3f6f635dc76174c56c162dfdfe6fbc8a31919 SHA512 6d1c0fc1d676a0b07539a8e9e34299eb942f7b2e6643f3ac4bbd93271ef500a562e37a1d7016a97248e250ea3269aebcc6f6f670b532fcebb8f045ae959a93ff
-DIST firefox-128.4.0esr-ru.xpi 734436 BLAKE2B eff9d1ed80eecc6578532747a99468cc174bd04bbe95637bb30108e7cab21dfc17a91c178f4c2ad6d967e2a9281584bfdc78bfa28ddbc61afead20adc6f72776 SHA512 ede052a4b5be12c2dc59442ccf16a0ce451b253b895c4afaac423ec7cc5e5c15b36ab97d48a24be5c8a7d46f39b6106e1a84bae659a91625ebdc273989ea7376
-DIST firefox-128.4.0esr-sc.xpi 590842 BLAKE2B ba73b0b935c95d219ceee6ca0c7d9b96a0c53ead735baa04ba9010a0047a656204651ee88ab6da5e749ebb81038d9f6625a6699e179dbd257677d13af0604c89 SHA512 10154002bb75e2cda340929a2abb300f037459053e1800b08fd480e6c1ecd28a56d2a63e83d5bba4d4bb11cb61e7165722617a9a08c7e44027d7aa487d9d8523
-DIST firefox-128.4.0esr-sco.xpi 512357 BLAKE2B a80088abfc03dfe77d8db3f7d125669a5d65ee27ddadbf026b3664770578338d21083b9d72bd05771ae2d6a801da2343180462cf9c25a3840d12b62228abbc16 SHA512 1a9406a722fcc510bdf611349d4255710842cc6cc79055fef3eccbbf2e88308b45e5c552d33267223ff5ae776cc980fb640a54755bc8ed01dcb034cd05c5a49c
-DIST firefox-128.4.0esr-si.xpi 617122 BLAKE2B a1d2292f7859eb623ba313d36d9d2215a30b93befbc745dab525a74c8c2c13e3fac0eda0e6b1277515caf69daf4ec896f6dfd33617b257b69982ba76281813f7 SHA512 30f63622b6ddc9745d725e2b1bda772b7fd14a44de6f3df78ebf677949673d982062729ca8097f81598854bea0e6bceca5a3e8723ae93c963c9c7cfa9e8caed2
-DIST firefox-128.4.0esr-sk.xpi 665061 BLAKE2B 0473cd3fd1921130b4001b3c8a2929cd33e013c4dd7d7ca24cf710a0c071662e1b74d0d44a23faa118034acd5e5cd1895b751c160aaffcddc2274ab275e6b152 SHA512 d6a3174e932d5c7df7727e61fc35640a0db7be87ed3cc4a795227eab2ac73596faeb4f616d27e8cb36601a983fef1b7769d908cc0bc23720c731a1a2c5723ce3
-DIST firefox-128.4.0esr-skr.xpi 722293 BLAKE2B f74c0e533156a8fa8ee324bc440aa44950cec317fefcf647c1b3a92fff0733bbb1dc82b3171954cb257a1f1510c8c24232eeffb47357328407ec83aa95ddd7ca SHA512 1b700af5ce5e00427d0b37636d9fbcb409e06ea45862d9a85ec5f400d522abe039f5ac0667b9e210b7676b9d2dcbc6cdeb582796a6e0142d0716b4e4d62e0534
-DIST firefox-128.4.0esr-sl.xpi 633029 BLAKE2B 1c68940e31213048d50bfa9516f9124511c7f0075ab70ea0ffc8acd03b1cd4931b9d2bcd7623f2089c22e71f44992da9c30578b4ca53736b0abc28d54cb0300b SHA512 320e16f11c99788d677145e4404e914105bee3dfc2a1d2e15956d56ae29170ef84ce8abb23a602d6682cbdf677592125c3471c6ca952f75208059f41104100cc
-DIST firefox-128.4.0esr-son.xpi 417361 BLAKE2B b53e962fbc2cdc9ae58faadf7293cff91ee1c0c8db3eea73f057a62a56e077028698661727e0fdae26ca45dc881df86b3d627094bae9ac30127f770e1c7f767a SHA512 dd17f9b4b69c14ec9970d3edc698c1bf72740696e3f86cbdc19808be997d846b1832dc4fa77000c792221ff5c23d1d0f2764a340442fbd06151fe7ca9d7a1dfd
-DIST firefox-128.4.0esr-sq.xpi 649016 BLAKE2B d7c0330c72ba0b61f557e502c40861498114cf1649c8aefed2e4dfbb7e68bac280c2d571b769a060fc080d0a399463115ad94e189918f9940ff1afa0b299b49d SHA512 f2477edcf47f97939d8f1facffea373ff6cc83505f8f427e722a06d40e57ec7f080ac6d6a1cebee37b4bf97e12013d26c236bd1b355414932dc5d9cb1d7634df
-DIST firefox-128.4.0esr-sr.xpi 640559 BLAKE2B 55fcb6488729154744b026d1722d774f95b02c150dc49afd343ba59b23f703ee7b69f3db458cdc048ca069e1ad002858054b5b7ccc8063c2117b1f4bf0825fcb SHA512 4ed8bdef11113ef8d5ee595f5ba9623ff615a2122f1ae242899f09a8cbd31203aa562da11cbb1a97e875f19903079b7733b39cea76fce624c2d001416e34302c
-DIST firefox-128.4.0esr-sv-SE.xpi 630785 BLAKE2B 91b86f7fb81c201a0f51673e64fe9bafe2cf66d0cb10d30a8fd188c5a47174e54db4baadd67c6c84d489fbccec6535b66a05c25d8d6550844a2bc948bc0bfb5c SHA512 b75036390bb4e5f7dd9053a34562a67df7fbc6fa72ee383ae64f2344050e426f7f353df2fb7171b94c3c143cf56cbaf3c447e397ca48713fdabc693dce786fc6
-DIST firefox-128.4.0esr-szl.xpi 527478 BLAKE2B c6325a38f346efb0ce9366c658551dbebfdd79b8b0593bc65653445042251426ea0fe4a196587e5fffe4e060a1ceb3285cedc2471241f6b49a8df642bc8389f5 SHA512 8ad091212592318c5c47db2bc1ed5878ff06591c396be0dcab8304a533130436e4ad83caf74c8e1050911f640e871712b0b645548f3c5555627536f141af8dd6
-DIST firefox-128.4.0esr-ta.xpi 508471 BLAKE2B c90749473054d20349f652375b67e3cba23a810ed8c297d97934829a28ad7ccf64e75fd43ca7971918ed9abd19092ccd8591858585ece087087ad5afc9b867c5 SHA512 905e205d74c21f20e14f31269cbae685072cb6cd224abd98e4f9728321668a29dcdd4c4245cd534eaa0fa056ac77c4b1f0f68ea163d252909970255b45034fca
-DIST firefox-128.4.0esr-te.xpi 564812 BLAKE2B 92567291af5d2854b60d77e78e7684ccdf70c66d4b4fec8928c5a1453f0acedc7bce17e0f9c1cf6618d243d816806d7d2975ab60f3f43455a6480198a01349bd SHA512 77c95852697fd21ad7b151fd6977a00a15d6f77390e5b9a5b24b127a091e2b72cedfd32c737a8cc8e03bb8bf044c598fd9ebe9d6b3313baad2ef789d793dac2d
-DIST firefox-128.4.0esr-th.xpi 707058 BLAKE2B 4ade4fc3fceed3ee5d0435bccaef1b3f29d18f06df5b6edf4a4ed56cbfa9d168452337f52784e9844bb6e3acf0fc847a16c61b989048138aa69a349c095ee242 SHA512 76cb05a363deb9ead097d31ed4bc2acadc0a05839a296544668bcb3e9f442e68c0f1c952a985b4f969fd375f58cd6a1ad8a201347a0900c554955bf504ae7943
-DIST firefox-128.4.0esr-tl.xpi 535266 BLAKE2B 1018e33d9c662e8e9abc6d989a736e8e9e30a9cec0d9f5fbc4a0af83d590e14a6a0b56b9a482fee05b31bbf862e1a48d5c83c184b7a1105da8efc95e52aca7fc SHA512 94e8b543732a3f3eedc4a284f0eafbe32a8556f03004d3d974c2fdfee934c1803c07ffe2b2c7b1c03f5f08d0f89c31abfb322d52873fc9c0332d269c91fed811
-DIST firefox-128.4.0esr-tr.xpi 643884 BLAKE2B a862bac98de27dc4b83eff2fc1cc8607fc9ce198d3793679a77655a6e2cc6e6086888a401977e1fb3f74d999b75b04a572dc17468f5d23e970c459e651487e7e SHA512 734d3f8f7aaf8d8db11b076d0711227e9b46610ac38874b18d6b968a4b05fd600300c38abf6631f4302a9a1ed4753bcaca37743fa3ff660653b77f32571670be
-DIST firefox-128.4.0esr-trs.xpi 505444 BLAKE2B 991de990432ee554c7ab4d5496e82e182fc13dabed4c608543603477d481070d77bff20a5d9d505db6416a5f15c938615e13ec0076e8d9655d6d6803b5c41884 SHA512 a18bfa1492e0e59d9200e212471b2af5f5e003ed4943ad77a4494fc991940711a102b7c3992dd70b51d341cd87e0c77e3e5cb2510eb8780d142be414730f3a49
-DIST firefox-128.4.0esr-uk.xpi 725326 BLAKE2B 2e31a5108e5fd2fa33b35b9737305cf748d469bb60f29bac41011d5104e620cafa153c03f28e7f106ce2692f1e3bc712d27fa9a73e8887cdff4fe6b6d7cfdab9 SHA512 157f07f2c4c02faa8b677394d5c6f097684beb7a6f97fc2d6d0e502c9aad9794ada115f18fd61a818ec8b82e4f6329b8d6a175a16eafe37bab6f18d3fc8f59b9
-DIST firefox-128.4.0esr-ur.xpi 561425 BLAKE2B 525f6082e54eeb14c268992fe8384bfe9bcd26debab2d9a1cc7b7271d0bd1c78ede3eab2f4a9424eaab656f0dd044ee6d64efdb48550f1b59e046925a3b853d5 SHA512 8a9732952b1a87cf131b89eea43d9f7b878a83d19b295b31bdaf286155fd4cbf1c4ff6b3b892a955db6cfe1f0b95b3dc0c0ccf6e09a7f26f2be06ec63b1bf4f1
-DIST firefox-128.4.0esr-uz.xpi 479858 BLAKE2B 8a080228a360f35b04228a463d7a4f66baf207ec9043b0587f74c974454c1f015138857266df53b5878f0eab1b2799302555ddafa553ba3bb772aef1679c72cd SHA512 596b31afd8caab1ce4c2f7370ca058e1f17a3f2f0dc7ca8f2e7e3f08800e451b3f067ec85adbedb94d9346afaa20200e216622dc0245aea786da05134daa8468
-DIST firefox-128.4.0esr-vi.xpi 667522 BLAKE2B 14b688aa8bac1a37ed67ba02d261c749c0ed529f09baf60e1dd5014919c5196c9792c791aee86c9a2d0de038ee8b839c7073616fb97ded9119372b5bebbd3133 SHA512 990b128825e37801174b5c6df99006f8796427fea09c6b8043038c04aafbb18ea3c6286e7e427f8f24b825cddb42a10a0e44d76805b110d99240007e4b68fb7f
-DIST firefox-128.4.0esr-xh.xpi 418140 BLAKE2B cf8b826b22f7c9ac50c8d063b817aeace08730366ddf5cfa88db9a1f3039d9243935e3de48902d3c2e40acdf9cdcad5deca8ecf2ff8c79d793e8df5a1bd70b06 SHA512 fc1891f35559964b9d6933d7092979f38f15cf954222a4650f4794a76210dae87efd2c1a2b37e0dafd57bd102d00b5f1b02220ed7af226effcd02a82a12eb1b0
-DIST firefox-128.4.0esr-zh-CN.xpi 669752 BLAKE2B 7271c99939f2adffed7730ecfa207579e6279bc7c19058e54cf7be7896e030a3942b3a1229f424e135630c832db36f6db11f7a92ee1fd743673ae9ac013cfc7b SHA512 14404537fc9b3de89964432a475cf9b526be4023b3b9b29ce4d7c48646af564ea734df7ef4775e4fb52d8320cdbcb114e984d6f651b0c14e8f90040871390877
-DIST firefox-128.4.0esr-zh-TW.xpi 672066 BLAKE2B 3e90953b69d12ad01f0a4aa7d48d1874e9a098363914fdbb0dcbf77a37af848fac65e9c99bd3ead6da34df827990eb6c8b25177a25daa66073e7022318a39e0d SHA512 33a1d240a10fdf0be29b98065964a8e5ef6c698e9b2dfd5889979b8098fc12514671b7438600a4dce47ce48596e7447ee6def8900d23250b718b70483c1bbc55
-DIST firefox-128.4.0esr.source.tar.xz 558619512 BLAKE2B 1f0528c8806bb034af623f2022740bb5056ea11817b9cb7154a60b87f04051ba5ae06b0daf55e6b03b7531c369deb871d3d3579a86f3ca19f3ab71ccb45243f9 SHA512 e720b1f993926d73f5a5727648f753176ac2fd093fb0b71393946bbc5919ce5fc7b88b82960bd1aa427b5663c7f659828dc6702485fc0c1e7a6961571c67faa3
DIST firefox-128.5.0esr-ach.xpi 465498 BLAKE2B bf35fffcb586cdeb9b9f14fb7017dea9a879c2954f4ff34ef9d0bf5f1b5300907223dc6036b63961ea3e2c0297fcc2d3c4ec304744916a048cedc383c7d0def9 SHA512 dc50d88ca036a4098e9b7e69bbb381761fef3cfdad692173b061385a906b10ded763fb73f173f18fb3b5d78bc4ddd8fd42823156d65fe7e218ff2f8385bdbc19
DIST firefox-128.5.0esr-af.xpi 418816 BLAKE2B 246cbdfc575a8c99aedb0d45b890aecea168b02880bdab22bf23fc6a745b29c67a2136836657c6599c00811a581114de1d0c6e266eb4ee62f2b9496ac09c2b2c SHA512 afffb4fd3146ec2545f603750b9cbd897e80c55e2df207f7b3fe9e6b10a008c41934a611e9508b41d4e63c97622ebf12fbb224eda0a74e91202bcbcede620432
DIST firefox-128.5.0esr-an.xpi 508455 BLAKE2B 9156c38c1f83d865fbd3d11a08f631e3363dc8f4aff565a0f57204db895956c4affa225cff18e03a5f38769a8bdc2c0c1832046340e8fcdd479c2878215dbfed SHA512 8c974391d5d94c01f5ee2b01d6eaf8da06c2dc9c4ef942819192b5b18e805086afa10337c24c312254477571a5c4150ee165da4cc916c80190fb989800cd2d63
@@ -412,212 +210,7 @@ DIST firefox-128.5.1esr-xh.xpi 418473 BLAKE2B f380e0e675c4532fdfec0e685ca53608cd
DIST firefox-128.5.1esr-zh-CN.xpi 675197 BLAKE2B 5ef7cbbd136ad19effbaa3e27c6e0d16627b5f0cf38fa849e4e88086f0a421b9b4e1009e5572573c3f69f7e93509433b0047690d27784247e5990b5909233844 SHA512 d82fb4e9eecd1037d7ecc9660d656da9e7d679a8fdb850d5c4109d0c8ab20fe5dba0325d91efcf4025b1453d6c39e0036c20d18314ff6ce0d4a918c4be0b79c2
DIST firefox-128.5.1esr-zh-TW.xpi 677431 BLAKE2B d7b0a38dbb8a14146d2b26a5c5885e89c89a7b9ec2638eb97ea7d7f0157b57164b29ef7c26461ba196222809e86ff12befdde48be30ac87e2ed5d1b258d8a8be SHA512 44da6850818affc80e9257150d6fd001b50f238f2e40b61298329540cdaad94b6431c5a3d522f921a8f9b1393591ec90ceef654c7403d01f0deaf3cf0c77ab56
DIST firefox-128.5.1esr.source.tar.xz 559760256 BLAKE2B 45c1e9cb54ccc031ab8ce53d61337b3105cb76c7a00043ca62b323aae968c3e3642fd5141355a96b43fb3bafc43f72f4127d6bfdeac6a51be2f6a56f0e66699f SHA512 476d71ff45a7178301081191d1b4c47fb21b42618f12191605f95ad48603b84a9150cb5c96f668751a43c8f6a4a43ecf337d38007d8e2b546f006faead2d66d5
-DIST firefox-128esr-patches-04.tar.xz 14416 BLAKE2B 0ffe3fd568480e37fe28fe71d5304e51028dcb8cb2d5fc1d838d725bdd36971696d7152c37bd90f7802c75e696aef0b1b075d386a906b40635f25083a6a58239 SHA512 adbac956dc2d6c1c29fb6641a42096bfd033a662f69e177f8d75a928f46d30fbc811e8a9ca24de8c7eb675ee80f6c1187f1a13dbca8e75782abfd54e276f5854
DIST firefox-128esr-patches-06.tar.xz 17168 BLAKE2B fc0a72af6a87519a86e44862a9c3d142cac600c9150b5bc4168cbc6de30beb0dde2a5985d74b51c9b977ee5272786c5a98804fb6d16968c4f517b28deae00fe1 SHA512 04c28f6f97a596e811e986bcbe9f5dd5045c24e7eb4b9bef6180d46948a9f3b978f44bb0b161a25f6217e9c0a18d88726b82737a72b711b90876da26d947a256
-DIST firefox-132-patches-02.tar.xz 14984 BLAKE2B 9ae56d19ba391bbc53a6babc72bf956c7bfda293aec52f5b1af3994238494d9c311e943593f6d8c2b89f7b24a50281f07248e684a6a6ec4a3f54ba1792125faf SHA512 9299d41830d91ebe558229149afbf66ade18f3925d5d30a603eec6115a16ce4d5e6c0a03193e0967ecad35fe4bfc1bc639f858a6df44372132541fd1aff149b3
-DIST firefox-132-patches-04.tar.xz 15164 BLAKE2B a485bd2f57220727ec4447def964d2fba0f2d3421e35644906dc20fdf5aa086d13952d4270b16a8268518ae21ff77c7e47c6093559b901c3542cc0e5bc1ced57 SHA512 1077439c4db0dbd7f415fcbb74a37d535483c1f9953c66770cbc4ed221f8e68c17d2cd897f3a07736924e9b17d18f2a1b8be6336b9e61a42dc69d54b7b469fcb
-DIST firefox-132.0.1-ach.xpi 467451 BLAKE2B cad4ed35bfd827d5e629cf478d46b85b9547728555aeccc684238caab763149eabed9771f05e4906923f1b7119190022e39e32fbe3ef0d41a95c1604a6582764 SHA512 6a1a50a19dbdc9198dd6336b53ca9e906a48e3f880d176a3e3d9b29559c0780868b18a2002c57dccaff901b651978c2cc6a4a7f3373dfe4a4ef77be630e0ebd3
-DIST firefox-132.0.1-af.xpi 420465 BLAKE2B 7b03a69f9f0181c196e3abf7e34d21c377d1fdf7f6b88c78b651447afbdfc73c8552185196dfc7d8c9228295c4db703a85e59646ff1aa134b7a5e66543c570f9 SHA512 b512c7a8f003733b1aea47ec3f7a85e91ece4cea381dc254da07a5cbc9c5dab0036d2fa11043754f97fa25dc112c545aac42c396c60cbfaa054119e0e053d9df
-DIST firefox-132.0.1-an.xpi 509134 BLAKE2B dfbf3a030c2e7771676828253d2f6afc0f8f3b03afbab29a2141941ebb3638eb7fd9bcab09c1500181e997f77394fb3dcc740bbdfc0794edb13d9a26f1765744 SHA512 401323ffd2319dc50e06b2e923971b8f14dfc99e3623d06f196069f015b46b7eacfdb21f6bd57d59125db1eca2be4409804f88ab2b0d682c2ef21b727beb4505
-DIST firefox-132.0.1-ar.xpi 632524 BLAKE2B e9b9edecd15c110f59158aaa1043a617d4d5126d4d620e48f6bb60731814f4a91d3dd1fb304e4b93bca6423ac69baa67bd1bc7c2ac626b5dc3f028b580d10344 SHA512 5d47cdfc98fd90701480e3021ed0388e9cace43bcbb2fc85578b23f2eb3b522827ecab8d333f5ba7ff59c844ad08c3a00b4d65bd86630f25854159b145522afd
-DIST firefox-132.0.1-ast.xpi 499453 BLAKE2B 12fda1efcf96ec43ea3aa06a1231146b94328c97e9ef58f7ef18cc0b8c8581e3717a1a8c9f9f657f3a353bac7863ab65fb374224dc0d188de74e49e460d4ca59 SHA512 8cb6fa7688a97584d8a934c0583ab1bc69e99d12137da56e0236682139637e30ceb544514506a0924d9687d19bafd15139e030a3368f1550e58cc3ee3f36263e
-DIST firefox-132.0.1-az.xpi 494135 BLAKE2B ab3a7b21f23e10a75311c6773f21dcaa38809cf2cca160353684d41aa205b9a5d6b4d4efd6a254767b7e74c1ca244ec131816d313775482989cbc6835bbb2147 SHA512 e6966688b80cb4400e0dcf59ceef66a41171ae940379fcb345d994c11bfb31bfa5b43c111af5456f87a856dc785ba90d6407d40399d6acd06c2e162d54a2bc33
-DIST firefox-132.0.1-be.xpi 731815 BLAKE2B aef7174ea4c1d9d25fd4aaa892875d9309709df44f4500faacca6624212e787677b5745d8075b31a6b6378bfe2f2dfd3ef9534b90582b178a7e7cc702894a90d SHA512 f9d99e6dbdc517a25b842821bdbece8e4f62adffab75491c9233311ac9b73e00a6b255ec4b04e42b6946b0535debfbdef89508cf39a037b22946935d0b85b6b0
-DIST firefox-132.0.1-bg.xpi 647401 BLAKE2B c3d48f914d4d9470184c9517a6f9926a85d30f62d88090213cb6dcee246d71201d759f374f7ad38ebad87fddbde53e4eb70100e673290914669905a28a60e680 SHA512 2ec1ff6e481d98bd99e6d3c0cbab6bb6014835b5dab67472a6a03f357ae1eac3536f62f3b570bdc6bf2546497b6808669c896e0e94d7537b720ea3b2f1c7cd24
-DIST firefox-132.0.1-bn.xpi 584925 BLAKE2B dcec1c192869aa23633a662af23947b15ae1dd1dc02e761f0017687bc84f88182edd1e50d60a82f881d28d806f886a7240fa1115792fdae4cb90ebf7d697e261 SHA512 bfd2e79360ac4dbe786bfb6df6997c69a4d3bb9854ab7fac13b79c2a9db79fd5bf6f4823567c2c66cec53de96ce706cafb2f9bb24448ae9399c4f23bd589141e
-DIST firefox-132.0.1-br.xpi 596690 BLAKE2B 5fbd49a3efd5b57ae468b94c15deefb251a57016c562aa599f290f1bfa2fccdb8fa57c471a6d6dc35f8307cca5a8e261bd372bc0bca88cd176631484f1dead2b SHA512 d2390f676542f3342190cc387b37d06bb7ce6260c8833cbd54e71501a5037a71e8fa17f0abc23a3e9b426f2537acd198010717bcff54e53f89708265440e75ab
-DIST firefox-132.0.1-bs.xpi 514286 BLAKE2B 624134c79173386654ef573a4b1c919a02ba72e47d6d4b0eb64c8d60a58a2e6f76890cce85447fdc0431637674449cba4e0c0e4364acbf283878e1bba91cd617 SHA512 8a8fe47a8fa7598e8b944ab4e1338f2d8d4d0f0d78fb0d5a90d9bd5a5711681d4d5c7e6a13d1d059c5c239978890c07f6a43b587327e3246baf649252006a515
-DIST firefox-132.0.1-ca-valencia.xpi 549050 BLAKE2B caccb0a89804c1d12a067aac3627d19ddd09769172894a09d66ddf3cfa6b9dd76eb6a69d78db36646d46e9ba2153b882caf342fa2bddf155cae67cf76d8a3bcd SHA512 2a79ff67b56e43d04a6fb2d19ac5e1d4df40bdf3308e21eedf2e5bf42bc14df9951eec43605025c1264fa8b39d1a616ea0b889884eacb1a2cbde92221a19175f
-DIST firefox-132.0.1-ca.xpi 600798 BLAKE2B 66fdf5ebd13d62f4ff8c83f302a5254f569bb37f759d0ffdab46e640a9b4c0b24a274bc605533246bf1e614a600fa3abead01459a32073f1e41372271cffea68 SHA512 b0e53e4f2d8190349684548179ae0475fff1337ca8c6c816986678a480b3d106255bb9dd413fbae66641892d9a6bf543b7fb438fe55854bc455036c8171a2247
-DIST firefox-132.0.1-cak.xpi 596808 BLAKE2B d464885420fd14dc326a816eb057993ada21294170a8f2f171934728fe3e493951b1a24771c544c8b5d79cb9776ca4024ff77d9b9a9b60a2ca007941cbea0a2e SHA512 9c908cc7d62f1d8b321d44773a25a7c46e56ff056c94c72b1548e6881123946d076451342415575b26eba3114d030840595281bab2908c5d2c64924def6a2d9d
-DIST firefox-132.0.1-cs.xpi 674911 BLAKE2B 8215998453fca5baa2a7fb2115dbaec0d6b528b35ab9475e087756184fa214be1429f821e824e309186795edeb9b2a03dbbf19f9e7eff97ea9da36096400bd2a SHA512 261c2c6d0e284e6c8ff45a494b606e0ec975b62d0b258bc5ca695d48ffa978533982f65e14f8462ebeef086b9df92926abfe8b3ebdd8d1180c5d06b6c681f8c8
-DIST firefox-132.0.1-cy.xpi 638608 BLAKE2B c26b9fabe57776e71a4cd63f31e8614cc73fcaf38659a8ac99ee5c86dfd7cd0df2fd4e109fcc6d1c6161ce6b02668dde363c3c8b15e16839236cb55062422828 SHA512 5f65b019eb3482d7af70f6549977d9b5438da89573240b114b1ad46aaced69e2bc473a76cb52b3639c290314fd93c45697eba70ba33df32562f8793eec7ae90f
-DIST firefox-132.0.1-da.xpi 625910 BLAKE2B bc2cd47159e65481b06a82dd5c36288c1f160b368d1c4580b6223f1eb30438ea5baaef408bfe5e931b429f55becf7ccc21065f153c2fccf3261bf0c9d5f5f500 SHA512 46b306c531b0044287666cfb26fb48382c300005d33b14736ff4d7214f127a1d9d663dc1b787466f5d39a99f702401468c1004be6b051fa52606c54b2faa6d75
-DIST firefox-132.0.1-de.xpi 647672 BLAKE2B edeb9de3e10da6d10d6c3eafaf76e52598fb4a08bc843c8e31aae17b2f74c84b25a5f41e42bd797b1728c641a1a12b5e83f15455b24b11010bee07106fe599be SHA512 775d32dd00dacc25f1e0248048468b9aae3e14d32896e18e95d8a17e1629f15eb74621766a535b9e0127bb45bb38e4bf758082d305aea594d600ef64da4e2593
-DIST firefox-132.0.1-dsb.xpi 664799 BLAKE2B 9d1e5f4dd97cc2867f1ad64820c37e3a1c95f0f666139be675e2f7cff8a89ee29a7e712a0861575f5f5a741d8621dae2cab9647bdd4f62a7f657cb94003b4c58 SHA512 9164eacef361392f26db397ecfed941ac7dd473dca03a37a04a6cad0517dcf15d698c98b82c84b67f1f6d88d4906bfddf2e84a57ebc6b0f53da112c5b8e33f9e
-DIST firefox-132.0.1-el.xpi 749533 BLAKE2B 4070e664c7d97d98d4f6604523bd65fc489c9675ecfddcc82b6408547733028086d2d61662ca5b92c3b18ef5da2980f476cf03ba9af4aefdaa1f8f3078655b4c SHA512 c0a64cf4eb61b08d91d21342f903540775c2cce45156b040e98610fc69beb76af85de4342afff004fdd00d986e97aa278382291092a8d44db5666807d18f4dae
-DIST firefox-132.0.1-en-CA.xpi 596275 BLAKE2B 8ddb37c15cc727fa90385c15da4d96e95adc153c16070db352fd4f77a295eb0be9fe0556ff8ecaa3a7871450e26ddbf146a958dc89f466baf41a1d5b5e740bc8 SHA512 35fd6e08f182d4ba9f754b794f8ee6f7c17c01db6366dd7bad416bcb4ab9c65505ecc94228386c5f1531e2de7126dc75f906542db0faa190c5014d6c607bdf32
-DIST firefox-132.0.1-en-GB.xpi 597695 BLAKE2B 733146bb11fae31dd919a2fb0331276340bc6130b2419ab646402392e14f980069e1e814c1146937e1bc4dd43cfb39473b9a22c7c894b58af79b8a19be096c0c SHA512 de88599146f5f1f6b2046a6a3347563e4ed83d842114398483ecdb6ee35c0e8300c6dff7fffc3aa631f8972bb3f832b001dfcfdaaed6c631c95ddcf5ff70da24
-DIST firefox-132.0.1-eo.xpi 629904 BLAKE2B 6b34005058ef3466439761805be0c66118755d128e031c37792165f7e207b8a4ae6e126938b553b1e8047da5620f1d647e5cc00a08c05a75ccc73ba5a62f9549 SHA512 97491e994abd03a2af0ffff2eb80fc34d41a127a6f01f9c39e4ffc3121ff9183d61cc424adb34d6ea293cd606f0c3a5974e6e513747d4131992a6c56416c5015
-DIST firefox-132.0.1-es-AR.xpi 642070 BLAKE2B 54160f1b9188cd2b8c945784ea8bf5c8340f6a782cdb4030b3ea7e45814e35832e3f56b09548572d75bd5aa9e0a6fd3bfc767fd2abc0162c83a133f0f59c4245 SHA512 70fb6b73cb7bb6e9c69ff25ec71e5464279011c6b33f76f9464a7129bfa71a19916092309efdb99dc861a9477bc3aefff0a082f227a795f442160c61d9d74e98
-DIST firefox-132.0.1-es-CL.xpi 641508 BLAKE2B 2d72481aa80dd70868d0dee1ab0d7902c6f41397fecae4e597b3022a709c93d757df5be8c3928bea995ae9b5b130042b15039e003fa4f750f8a2330c81828aab SHA512 f072aa14a5fcb1930021de876146eb6bf89db7f5b998afc718809e4842657948a2222e97d5a20c1df27e9690afdc6b54c0cdfd618dfdd7b278a2bf1385744c0c
-DIST firefox-132.0.1-es-ES.xpi 636419 BLAKE2B 038974a641855ec65806e8a0b32b254426ee60ddd5db29028d850f231cfacc2b730e4a3edbced53814feb8b3a24ff16164b8f9c5f40773826b85ed865cc83d5a SHA512 11f52d1d78c8587725a218f860585711681e13dba17c34a181990ad6eda2daa22c18c2c71c388410a7630df2d84128f7172fec506168f957fb20d5e9d30f5072
-DIST firefox-132.0.1-es-MX.xpi 637813 BLAKE2B 5f5f98fa857caf31d993e30f27e03943865937f7a9750b9e5c3b031929d5b9b53bf0d4940eb15c0532c4c7b247c8402f4643f06d80e5fcfd4daedb37467a6e6b SHA512 b4dcfeed06bf858088eb46c40864ef4c223a9b8fab11b42e6b4d27cf0841aab1a59a640a39694fa68f6c0c5f927c24a56356d094a065e627d7aac9d8f8a78088
-DIST firefox-132.0.1-et.xpi 543091 BLAKE2B a1a8e7427a77bb240ea45bbba0093f37f8165ec6454cc7bef797f0602eb52bc95cee2ec1b82cf1f6b45a35594990c51d38a245422b34f325e54004cd9dba80f4 SHA512 609d9826ca55b0927296c277e1fff611d03342dd86ae9080a5a33f1e09c080490156bc838a6d67432a10982f4adf156aee9b3bd47cf126354bca8f5d4c63e948
-DIST firefox-132.0.1-eu.xpi 610877 BLAKE2B bedbbe8aae8f1fe38c9d289963b44fe7f8d15f537aaefaa54d39b821b81f90c7dd7bd2a378816f2efa22deedd1a49971c6898995ba3b11771b891ceddb8f92e0 SHA512 b356a3fd479692ec904e2bbc8cf8d699fcf800335b56b9345f64b2070bc8f36bfb53c43f32e09599acd840ef620a87e01f0d3f23876cedc4184dbdcf38b57a95
-DIST firefox-132.0.1-fa.xpi 595836 BLAKE2B 49ea9c0145fbf38f6fd308baa5b95d98cf9a0a0bebceef22127cc6e4ac4b914cc0196c5048dbe5044a1b14e0ca4935d80bb5b31f9156c76b52d9a5f9847337d7 SHA512 e2edf1306c7bcc3e0574d75e54a7fad55e293a74919bb8936e64fe1bbdf353a1c592b1a4afffb8e142301e99e77a3a87e0be95c74f4a51925b1dd7fcef65e9de
-DIST firefox-132.0.1-ff.xpi 479083 BLAKE2B 233787736f9a9d8991099dec7831e2fd28cb098169005536af9b96e8dd7b970c89da7e9aac197661580043312c5935e268009dd7ff2a930f4d00633ec124987e SHA512 388218c57a685fe356895e6e0266cb48b4784f4ca3eab213e3f9518ec73a2ad44b593948fba4946ef2c8f48c6c7e9cae908cfc3f9c4f7e09fd42a7185e2a05eb
-DIST firefox-132.0.1-fi.xpi 621802 BLAKE2B 7611cd70cdccc3fa2731132bde6d8af8c6dd0f0a1669572c81a6b3f5526590ffa86091c56bbcafe6c8f103138c13639983982c42803c70ab7a79f52b66602482 SHA512 0b3b54f9f4931a740ef7f3c6dbbba3b6298371adc975a2207148095c8e64db69e1b724dd1838c1c737dffa8644e2630781a434ff3bce56f024d4a13e50ed9601
-DIST firefox-132.0.1-fr.xpi 655053 BLAKE2B cc5771f05cd237951512ac763d8d7c1deb2c1a5c71fce532934ba6da4646ed12d37eb75001c1dd576bc24306e3a9716b935cc8f28e328ecc8f47803838791eea SHA512 31508253ca9a18f144cc3afcf024cec161b187066e6f69a967888c444cd10cdf05c53d25f55750dbc27bcddc9619d50ce6290fc5e5565f3a00d00573bec97ffa
-DIST firefox-132.0.1-fur.xpi 643962 BLAKE2B 1e98fe98a7ad5a01a6403cbebcc9c3055b6c4c2d907ccb14741a0a25117c2739fd13e3a6749fb20a364d3815cd3619a222d53d332163a13e2e2aca732e84e76c SHA512 fd1144c5eb662900065f122e7c32c9bbc3b2f98e2789d1d88b5d4b8b9bf09904393ddb086e867cc6407358d7e2f6f8c69ef1b6847a7617f8927a3efe05540a01
-DIST firefox-132.0.1-fy-NL.xpi 637368 BLAKE2B bb1e8c1d5dbd9c6f3b7ed11ffe978fad5d1a266317341ea36649e95495d4cf3393c676b518e93b3a83b2ed935c9a9b7105eefd5e6cddfa37777e859f61a5f976 SHA512 6f92aa6f4a7be37d7af23954ce9d0ceed77d04fe9fe179b93fe959212b776bf69510045098a88a3dbdf1b96c101a665c0e06156f5f5aa51d2a5cb8430efe9a22
-DIST firefox-132.0.1-ga-IE.xpi 474211 BLAKE2B 4bacc4b7dfa88b4de032dbacc2eb903399a83abb971cf44c8e88e12b3f685b9e8f18e42bf754ee6954ee0f40a748a460970d3fb2892660ff64e952bcf6afd456 SHA512 429485df644805207c7c1e6624a4d54695595d9e43cbb3c6fd311ce2c18c27373d34d927e8f18dd1a124956bfabad1ed71d3fd0507c787c82cc141c5a49b0f4e
-DIST firefox-132.0.1-gd.xpi 600428 BLAKE2B 4e49b0caf6871aa85e9a1583581698116cbfdba82c957805f5b28bf6a6a8bbfe7f36fafe46cafff23e024c8c9a58075d05ec4ae25496c0f3900b82684ac28a99 SHA512 faba7db206c792f0f79b824f68fc05807fba79695b6c2c45865ccaa16e129f965f9f5c6878ec967399a0ff204f0c346f419d8b6c204b6a9736060090cf2f9862
-DIST firefox-132.0.1-gl.xpi 611962 BLAKE2B a77dadc2d540e24b2368f4817d3888160d51b0653bb5caafdd34ec5edea3cf79ae1fbd5ffc555cee453251161f12485b6be3716ab0f34c98bb148ff841cc7894 SHA512 de097e42d311917ad2d4bf79d841f0804c1883dcf5e7f9756feb515db7e35680818fe179fda15071715a348c78acf7590db6a7de515937966bb7e258fdcbc493
-DIST firefox-132.0.1-gn.xpi 650538 BLAKE2B c12c994c0078c3fa569a64918d59ed9992721d750885b6041e5906e5640626103e66179ca323dfdc46025f245153c50ff55056a7cbe01eccfdd14257758dbd40 SHA512 c57d730fcd15a4af0038fb6a53df777b5f5ac84bafe8b61af63f2d71d0b2be637a6156582033b4332768ef3ee9926b7244da7203b12d445fe074220a4eb87825
-DIST firefox-132.0.1-gu-IN.xpi 530691 BLAKE2B 511d395741f35e520695366bc87947cd11cca605cd20a3620924c07b1c8b212c7f0ea1eb26b1cac7b19cb0e5f4d833881d6947bb5d5f39ed87fcf024f982821a SHA512 15bec69c3b0f645c5fd56fc7e976ef3c2afc09b85d8df836959346c81b0bcdbd00532c021468bf1af98230f41a2f613d768d1faa893ff29681042f424c799db0
-DIST firefox-132.0.1-he.xpi 644447 BLAKE2B c495d0ea2c1f959c85970dca222f8431322c2c3d083728c6231c1ca06f2adc8d922bf4c8b1ae823e2dd613e723bbf2c570080ccc99bb6d9acea0d135ea94db4d SHA512 6c3fa0869cd563940d667d983a9acac1ce1ea0f00bb9fdabdd3f01f5d7b917aa5e29f900b5232de7b06fbf8063423f8210d79a75cae6a76f2b64b30335232a80
-DIST firefox-132.0.1-hi-IN.xpi 570000 BLAKE2B c7f38b43b9d51814fa4d4b12025c40906abfe7f99ca2dd168059d688274e1ed6dba3557a5ef74b926ea3b30e20f653f497e6d6319bda35733d464e36c47dbce5 SHA512 38c90f0aa67cfaa26f35a16b7cab6d95c434ba89d443c0ae385ff4a1c2c647cfdc35c3e24e9a0e37cf3eb6a88b59d17f80d5638622451becd4b1f9e749334f59
-DIST firefox-132.0.1-hr.xpi 620629 BLAKE2B 1bbf6aac86f480f5e656e161e9c936328027ef7653d3e57ec4d2091b9d7c07443411bfe8804920abf18e3110344a38468c457b81cd63e3ffd00c7f89abe4944b SHA512 408bc257c1512224bca0ffa014955d1f9f3d4c01f8109fd1d0ee087590b65a0b8afa6f84e6e4916875ad0badb6c7e7f5d5d3066d69fea04d6bac84fd2a809bbd
-DIST firefox-132.0.1-hsb.xpi 661287 BLAKE2B 07632236930dd4cd982f22ced34c5ba821842f640ed5e77ce7e048ce50af8a0abb0fa634433eb99d7e2d98fa6bd70c87aa9fbbc2c885efe5a4d90303d86dadc5 SHA512 2e34c184da5298158719f114c0edd450063c610470a4aabcc2a1193000a5d199b96d3336abe1a39fc6cf20bd484f40489257715017e65ad7253836c7fdce459e
-DIST firefox-132.0.1-hu.xpi 665349 BLAKE2B 7f5caa9dcdd0735c06fad8971511f8206598fe7126dd740ffccc9babbd4b10e1ac8a180072a1bb215d9e349423a794c67195d86bcc5115c57e21429de70646dc SHA512 033f6334530dbd2fbe049f6ed953e1762822c082028b3d92ce43d309930a3c2c5d83a9d7b632924c4c08e35ec40894f8f116d6e9425d87d51834918ec8f6cca8
-DIST firefox-132.0.1-hy-AM.xpi 654900 BLAKE2B 6fb3ecf18fa00f5e32ad3ac4cf121474b99da31639466516f330d7ca4886c875d25c29ab66bb63774f3e7cfe584799e2177f26ed866c51041b1fb0c2892eaa62 SHA512 f9a8d569872b38182ba02a167055b877dc3bffa249f6561fbec9e11fbd5bf052279ac0d2bf4f63d7a9e6a84be8578c270530aa13e92c6fe068b43306fb35c4d9
-DIST firefox-132.0.1-ia.xpi 624979 BLAKE2B ec24df61d0f34d2d923d3755cbf1d1670a5b9f608f42f2938671ce11f1135f44f669c07252031db118e1158647c6bcb55ead39c631f49370338aff09a0aa3d74 SHA512 8f93a9a43274c48bf908568fb36b077f855ffe8c79b14bb55150ede9297028c725307dddbf4342ce22f53e5a8b532ce16b565513048ea55858402ec0fd27224a
-DIST firefox-132.0.1-id.xpi 588659 BLAKE2B 8d1372c4cd83754a2463e32f179d951b1b5e5271d877a7b081ff41c688a434a1c8998c4da4dde8bc9c153dfd45bab9d2c92f1b9161f7bb3618277ddd353d1714 SHA512 5385471c50c5fa572b2176785f0b9aa81c4721caa6bff1b807ba26eb31d3960c1e9d8014ba5690e578eb3f0b80237ed7b70c27b864bb2ba0edc95191c334a743
-DIST firefox-132.0.1-is.xpi 630383 BLAKE2B 1f0294d3f5424edc31e45f6d526dacda3cfb668cc44b7256f593407dbf89be7babdaa1bfecb4986aa371cb58e8f9e8ed333da6e1fb3907545b7f744c26e8350e SHA512 b6e193a40eab3a4936affe28cc93cabe5a3a4d58f25401501b299f60d82a30a61631e89e82d264ff443f84a253d0fa310250bcf7b3cf6295665db96710f8abbc
-DIST firefox-132.0.1-it.xpi 581358 BLAKE2B 31c3a37c74298eaaf645b0f1b4d9a8ad7debae2feef199ef0b532c72f8034e99e55336d8b541d519734849eff63e29e769e22f9a4226478e070eca02f5d64155 SHA512 e7d511592fc7a1c519a3f7cf54236cb6e21159c1db2965b95a977f88a07a771fa6c430e9cc389dff58b28f613e70a20a23d0cb830e26fea41c4546c985293a40
-DIST firefox-132.0.1-ja.xpi 690326 BLAKE2B 3b6f4cb5bc6af384e57e262beea2a8ad8e544e9646d7463fd01ca061c1a3a02cd3a88303d8ce0f74dbc1c8c94f50522ed47f6cf759a13ace219c2d5ba80eddcf SHA512 a2a40aa9bf6c94951392923fc4dc9357208d7acb9b2b0c7a5bcb9c714e7841cbf364ac71a1831ffbf166a6b168e4b39c919260a9f3adf155e3aefb89bfc8a432
-DIST firefox-132.0.1-ka.xpi 664790 BLAKE2B cd15f7b97021d60395ddce0785fe987e9ade35319c92a4c01f4c707ddd8ce6975d76700df9a1592ce9fe5577a659c05a568c39392889c86605688d5b98d32c6c SHA512 99eb1135bdaa3577868a686d5c6f9dcc223d36c87718879787aaa2c2ddf5bbb90551972c3daedd1af778fd64b63338a3f009b31372febafe934663194152d7b6
-DIST firefox-132.0.1-kab.xpi 619840 BLAKE2B bebd9b53eb5a6cebf3af9c1c47ebeb632cb5ee472a933c09da576c9f9e97b7690b9e653565e80e6650e25b8d8f7c782539c508107f2e6af46321d127a8205d77 SHA512 ded0bdca770c3142ecd04a2463d25cc5208b6611997e7d698317f3c8490e0ad0d8387fcce704a4640ad06d8af8d23c1e00ea84e675f4ca54caf8274b26b6ed82
-DIST firefox-132.0.1-kk.xpi 722542 BLAKE2B edb262f19e77eabf856d3efe98893b787a41b53d2ae9e2626a82a58b054de0ba1a99b5245ed02aac63513eae60ab5e994aca73ccd409c72c7e941316ee497f78 SHA512 75498f7709bc9358d4292c5a830362d64b655716de83875c4e898d79125b945e7ea30a613e883d56ce577548a3638e21618e45bd2ebabfdebf0cccab66bc6a6f
-DIST firefox-132.0.1-km.xpi 529184 BLAKE2B 84781a8afcad95bfc838e8b76f5406ede7c3948cc4cb840d4a895b4e37e390ce0dc7f3d2b49eb451ce925d363bd9d657942db8e7aeebe140cbfbac7c9c223eca SHA512 8907ebc63a14f3ae148c88fc6898f87d970f87e3f6dd66b7da6c77ef6b5da05690e670bfebc6268b394f23b2fb0bb04221c6632a26cd73fee3088bca36e3f0c6
-DIST firefox-132.0.1-kn.xpi 494178 BLAKE2B 006bae2cc522e77b8928866d18bd1adc7736338d2ac2848825b7408311a38cde0ef2e221bc268b09530e154e59895db4c19f9c955bc620482ad415ba22181100 SHA512 5a5ee9bfbc5b317030d6b04f278274abf0ef752678a44431769ef48e1bfc2c562bfce3255183cbd2084ee3486ac478aab11ebec6269c607ccac4fc21dd3561b3
-DIST firefox-132.0.1-ko.xpi 676237 BLAKE2B 670ac3dfd8216a3d05bf06ca598b1cbe87d90cb6089d81c491999a90778b0c99d6d5ba9eb410a6c1653ce3e0da8ee22cceafb5e8142b76cb4b7887211847b804 SHA512 74c6b0e8e67705413b2c17bc2db49cafd47950a4e82af72065fc4807285a492e817b8eff11d08f7a1bce4a4713147228a8b0ef59272cdb55f71ddec4a45846b8
-DIST firefox-132.0.1-lij.xpi 487469 BLAKE2B e10d9d1e4a5f0625e8754feb698bfc1660792d0b0d8444558ba75d48bd7ae22d55baa0743ff6c9944a65d3086d3fa98fa358e80edd428150b909f060eeb6e955 SHA512 6ed7df8dd0eca28803a69b9357ac14a73fd2a66d95151660a4b25c9e2c91e0c092ac6b17365287a6601b276a528709f7a0d9119e1f00a8d8353a693711ff08b2
-DIST firefox-132.0.1-lt.xpi 576212 BLAKE2B bf94ab89c2c61b842b20e71cbd016ee5b36f1c5a46d5721ec60d2d7a96b9fe9cc73b9e3d9e20f8c806cae2f6a544b760511093fe001964a51a4d527e25375796 SHA512 0ba161c2724a9b0d8da0095c56e2e6351765f4b932fde38191ed07d9661ea9dbc86348fa5cafcaefe62031af4954ecbfe7798beb15fef0da5068dc0c1517b8fd
-DIST firefox-132.0.1-lv.xpi 589513 BLAKE2B b60abbc36e1223b963e4be882089e1cad41053a46363be28026bd2136803800e91b32a4196363ad7ce5aaeb758408a9e4f2372b7db98cf1740710f5193c1aa26 SHA512 edb40e0392f547f148cd7c9e5138b3c630e2774132631890ff069fec0f60519f03cf4a015a5ce2890a9439e7852d21543dfc7997fe6daae3a7b1e52ae73817b8
-DIST firefox-132.0.1-mk.xpi 496805 BLAKE2B 99016590aae48bdb2dd0d81d87cc12c15aa7e871b50496013766234e194776d09c8865d6af6abc3375ffce91cebb1fd870697f1ac973c042a4a78a8ada7c050b SHA512 5dfcf02233af6e9848e826db9e4a1573d03d2e515d27292b5870df004faa44826ce3acb645e1f36f49b65a3348165c1ceb2c047993d7721840436011d8b6aab8
-DIST firefox-132.0.1-mr.xpi 535309 BLAKE2B b143dc02f12412a2f6d27fd0c3c7168be09360fb94ef3c21b8a91ed95b7273541c0f1cb3640223727b4cd12222793e84907271e850567255fe6ffb6890d789a0 SHA512 28766105abc9156fafac858d5c65f612935850011bc20fbcc8fab2237569f47f75b7664b19d5b7caa1dcfb49143ab104e050629b2d39d08b21e17df8de6a5d5b
-DIST firefox-132.0.1-ms.xpi 453075 BLAKE2B 36db375e962f933fc1fb3a9174943f5d87b7e64adc070fe84580ba64282f7ae39fcc2b8af8b2cd2ceb80e9e60ab123b87d1ba8c02d1877648796c5bedeb65b5f SHA512 68fb2ae7cf15c092b65cbdcb0f37ceed260905d6cbac3f010a733a3ed7d87d8b34e9dbab13623e325c1e1c07993f7326c7c21514ed6fa936623601e9bbd795c5
-DIST firefox-132.0.1-my.xpi 521655 BLAKE2B 75e1221a6658a1bdf0a39ae47d8585b47421e7342d3cf6860b5cff660e5aabe419711a35bfe4ec1107a435e02605c17964cfcd6a131c5435e30e1748fc1a68c1 SHA512 4cc420a0f82bcde13666efb033354d267d6dd4317f8553f9d7c85ff63b9574f400e97cd6a76bdee422122e8cde4e5ebbf8f05d396fae74be33962a918da9e536
-DIST firefox-132.0.1-nb-NO.xpi 618359 BLAKE2B 463e983a9934faf0ef5464b795077258a7779557660fe674965e868be2c245a2355e377f8270113ad6e24df5dc390be82c790e0f44e3b0f97d491a014e2d424b SHA512 0d346d9a8f31bc066a443f7fc76f0f459f78026d06970a5ecec79841809fc46ee1a6ed98b4d520d015ef9261aec885b4090b8bd61f6e179c66ae6c00f052f49e
-DIST firefox-132.0.1-ne-NP.xpi 524107 BLAKE2B f63627809362723af0782061304648db96fb51c4c5dd7b225057019149c7ceac1702a735985f26033e0118e2a048dafd93e2002f26d9aea2b047c0006d4d4cca SHA512 0029babff7b380fa7890c8d6774aa05d9c7457863875946acf40185e7e2cb99f3b766620f7668aefe52e8964e21672d592c06a74830015ba276500216efdafb9
-DIST firefox-132.0.1-nl.xpi 631087 BLAKE2B 41a4eef87c026a0051ec674f66235471f1948fb9b13893c313195a2b43d57dea13f1004c15daba1885687966e00a8b99e2182328bd09a3f79348d90a079df70e SHA512 b10010260aa3af54c9fa4a6f1ec36368fd26969d85369d169eb0a338cfe75bcaee389f16234b1e03299f295c771d2f7403c58b601c1a810659c02d9d3bf008eb
-DIST firefox-132.0.1-nn-NO.xpi 622853 BLAKE2B 1c4bfbe06932a5bf0eee861ac5c5ad1a73e0430c3509bf0e6c8a83c3a41b7ee317e2faeb000182800504ad665c63bcb568c6ee041c94ba709084f23297bab33d SHA512 b53ae9e4e1c4c2c2465470ad84a9f8295f7a0f59112a9fa1d20ce78d7149e68804b29473c3c1dad48132fa782c62ad9d5bab7a49d5a74259204f9d7ce07b949d
-DIST firefox-132.0.1-oc.xpi 617974 BLAKE2B 22b4e51a6a5061f22af04d1768e80a63d5aa31e909612d1654ce7125e980afac115e9ac0cd77ac016678976c9a854bb3006a2c24224700df874aa4736159539c SHA512 a329a126efb1e5f90a94d9824d3299ac28abdc8dada8c1690189bc45fe9c8bbc6f54d0a42a610f3d94c8f8eb627b3d81577d5010b2c8917072f6ee7af4863472
-DIST firefox-132.0.1-pa-IN.xpi 708930 BLAKE2B dddc62907cd9f3baa3244772b110a08cd6eb8bed88e864406fe3e6a28413f0eec8f37bc66a5ec5e8da989796d5755ad7b542ebaffbfb851170e58f2c6619498e SHA512 481f6fabeebec55faa5996ab486d608ec56d748b8e3c2377042f11c000f937eaa55bc06dd513fe194025badf775e265aa3416ede0d3644bf95b47feabfc694c2
-DIST firefox-132.0.1-pl.xpi 649861 BLAKE2B c6bd324e7e01fb48039cc6ac3b2136c7e2a04c2eb45f5805f778374d3800e063cd1b664f1c2ebd516da33055e8dd2967eb617de6d4c2dee00448285a72bc699b SHA512 b613b4cd0881597977151f0fc3b40ad361b5856e98be9091e39d73decae093446fcf32f76478d950fa3c24042f3f48c0265a298fa361e3ff5d7f241d94e8c8ad
-DIST firefox-132.0.1-pt-BR.xpi 635392 BLAKE2B 0a20c1431fec648ad5a36d25c81640dbd42652c5db623bb84e150c9ef558e04e9be1f582a78b20ad3556ead00a634d036ba1463b6752a7a87c57458194f3a4de SHA512 b724a8966f2c4e8c16b7456edddc48b6ec37801d0462e07e50f66f00e9d76a10652ab09c34772045710cc50154adf952013b678fe5d77086d8f7b965faa00791
-DIST firefox-132.0.1-pt-PT.xpi 642104 BLAKE2B 6397d93e9574dc60ca8e1c6caf1c0fab5c664d867ba73921e236923b5195030309daccf2f37867b7631d1da598ab0925b2c60a1c3018f39d18f703d74d2a41d9 SHA512 2e975869cffd5100b7db3934a082337b527e8aca4f794237caf72b491ca7b616da89b62a9b6ba8de0af40acf2bf470d530ac39666cc5f3c0a0afa958900fdffb
-DIST firefox-132.0.1-rm.xpi 631871 BLAKE2B 093f23e751fc3fd6b98fa6ba72ecd57a59715eb4479aa90a699e2e393d0c4e741068083f350d01bf73941115391cf97a7e29d06472762477ac806e32303b8bc5 SHA512 bc697e189d739b7b736c7d90a80b9b054fe9bca4c3e7e6819b3c1f79da56f38ca7fa465f3bc44d279fc57066719770fcaf4bd46fc03e1dcd0750134ad2a8da99
-DIST firefox-132.0.1-ro.xpi 553310 BLAKE2B b0f65c321839eb3eaea2ff9e581921c04b1a83bad5af7896770500195605a3d1ff70ff2ff0e4b7dfa5aaa01b6431a04a21b358da207835975f1bd839f9c5ed1e SHA512 af26d424dd3891f5c5916efd899ea385c8319f2c74f814b7fa8495e9e1f5ccdf6c96e41a79873ce3547a2aba473edf2685cd198be189036a2d28b13feacc7f06
-DIST firefox-132.0.1-ru.xpi 736638 BLAKE2B 8f680569b90922588b59ed2e3395188f26724d793a289cbc16789d9e183faee894f0bb46cb5a302a1b61f4cfe8f1d8356e89dfbda8bf1ce4ab61a06b8aba31d4 SHA512 d16379f4200288036d305258e3ae65c87cbe4ebf2ed1751719a86b3f3f5465ac5c8171614dc84f9650f3c82dce46931a2674ff58c12d8127419d1f6df3b24ce8
-DIST firefox-132.0.1-sc.xpi 593049 BLAKE2B eb8cc97ebd2a72c4c267c8da3bd21b91bd6852cf766a360ca14c69f1950f3e715aaa1373fd6a633745ed2f62441ba8d352f5dd5a411b1ba9d040f39f9d91c785 SHA512 dd6ad11a479946775475fc23cb9c375158547b82eae19a1d895e1fe38a0e9034bc2f7589fd0546e9d48e4d5c796f89a0dafcfa804fff5f1c45f84b0d8f4d1024
-DIST firefox-132.0.1-sco.xpi 514607 BLAKE2B c13595673ab1145f9cae2a6d5d8c54d1c7cc240a6cde566801492ca01059c7d3581db5580ca90c7d240f6e0554295a7695dc7df47c1ebd460b3cc1ce0665c984 SHA512 5aac65653e2d83685354107afe932e78effa692b100e6cc389ea59d9876a5e262e5ccf2ceaa5812df0d961b6549056b2fb23648e06febb3b7077aad9d898a9fc
-DIST firefox-132.0.1-si.xpi 619316 BLAKE2B ea4c6158e0d58faf07a203990b6a7cbc4cb4870df5dd3a40140bb424c701cfd5921f7accfe0339a1a6c324d02733f97de303b9290ba8846afa2d278ba942d816 SHA512 28fd22d7c20715fb9e64002b1a9236191e4eb0072693c9af885ee0abb5be1c000a77edbd5a58a8f104fb6d109039f3eff19da0560f57f8250ff7df07ec7fe329
-DIST firefox-132.0.1-sk.xpi 667602 BLAKE2B 6b18a86579e584d161a2f461de55bbfb211cf2c89b1ecdfa4e9f0b025a1c892a23a4fb97a7d8932c49080add3885cc4a95f3337d5c808cfe80abbb96a9948852 SHA512 d50b10bc0a0e1fcd03aaf7c7935c4c87669ffb193fad1bb025d8bbb17a738b3bd379b30fd5347bd19e1786ec83c91a0d0124e661434e66dc75e89486d0173188
-DIST firefox-132.0.1-skr.xpi 723872 BLAKE2B 59a21ec30bb0db0f5545b15ee8b86db68d0df999340fdcc9c54c2cc965cc3370cfbff33b306cc9d4dfe30860fb277256882851f62dcaf036635a9b089f27e9a2 SHA512 831b0fa1e7bcdba2c272cae0fcc1c5b48a3949e5ae3cb509e1bc2544dd9dc4971879ef7cf04dbe80024f906800fe3e311b56b2de1f52429c53e14ca2ef0aa731
-DIST firefox-132.0.1-sl.xpi 635182 BLAKE2B 62d2449f9a3358aa71b311399579987c36e42fdaf65340d0803d1e7488db947d599c019cfdc71b6d68d3e75ba95107ef04565808a3ed0a44cbb48acba4d87775 SHA512 c4ff04981ac70a3723ed657b2b2852b026d03e411ac479f4f1054dfe928e4e49fcb3d755bbdfc864c04253c939f6945221654a115ec22a1f3e864bd2bcbadc00
-DIST firefox-132.0.1-son.xpi 419523 BLAKE2B 58d2120791cc379cf121d41dd43e773563771f1cbc13b676ab0d3bd033a948788ed6d7936e0f8b20827c7d9c16a8fb7eee7eeb7a7928d2c474ddd313fdec884c SHA512 dce1eb9f731e7b0e6747e75ff3ea3d8e9e636e0554dcfaeb1043992a7648f3ceeda1e48d355aba0abb34fa513f14628b3bd25795ecb1d2bdd0ee115e5648f161
-DIST firefox-132.0.1-sq.xpi 650698 BLAKE2B 72068ecb909c1ddd3cbd486ca5d95aaaa91a724c56cc3a5eed6f430a14df9e4ecad1b5d928511244d4fd1fe8d5fd9a17306f1c269ee69769f4453dd8b86b1b57 SHA512 7b4e44d92169eb6f3607dcbbf9de962146cb9e0a9954f7f9f0f9f1b65c3051b752676621fb62ae4de06f2ef382d05ae5e095afb105d604c29b8136841e6e979d
-DIST firefox-132.0.1-sr.xpi 643279 BLAKE2B 85b5f8130d68e16e860ea5c99731044193d441579c2149c748c59bdaafc4fc733b3b3b2ad2724f2d7accb7a9ad31aa9ea339d37fb8b8a1e0f82cb501fc5b36bd SHA512 259146a00d68c6513b5e545d987aac30d6be34d1295e800082c6a59cf8b277ee97466308c5f07bc1a0990a7fb0c20801d3f7d56f12b109ad01befe31adbc6a7e
-DIST firefox-132.0.1-sv-SE.xpi 632934 BLAKE2B 095a22ec1a3b4e48bcaa174c4c3a3620558cb838096a454d819a1cda1bf7abb27824293053c710a6cb1a187b7cff4f206439f2ab8f716c4928fb1ea7fefbac90 SHA512 662f53c5d82907a92f2c95866796cf2b6619f5910ec811e11d99afaa4bfee354de411dfa28e1583595d15d1a065a850785ba0b0937b88215649b2065c2bcd545
-DIST firefox-132.0.1-szl.xpi 529744 BLAKE2B 33d661adb367efbe0e06b073b43e519c5bd15d7997be7ad2b2831986db70e8a4ecded45deacfb3cae0c4333dcff0ca463a2b1556fb685342a7d4aa8fbf77f7b4 SHA512 9fdfd8f0c8b67ef5896792f2fc2b854ad4977042c964c5e08d8e9aa94bd45f71ed22d15ccf5c5800feccb44c879fb045eac7f2bc7b9f32b86019eea9392f0a53
-DIST firefox-132.0.1-ta.xpi 510478 BLAKE2B 8d8882bd58909b16a1cf1b229104c1e64dbdea27bb649f620382c3ac1d4b792f8c132691a3ad99c73bbc5c07f29e5d6414087e821f4a66c863ba745ab917c9fe SHA512 1e7ccda7c8bce77a758d78f98eee0b366093201d491d07808bade052065eac5ebc432a4bfd657bf06bddc0cc6dbc8e33777aafb5bce000982addb552af536117
-DIST firefox-132.0.1-te.xpi 567117 BLAKE2B bfd984db6ec15954ea28fa731298e3b0f00e759fadc297278236657916aca6c1d613400ee7f2802153644df53938740080d56922133628081ca530544c3f5810 SHA512 b44d70d84e25ea5b4917f583f766d896f47c1d71d5fe59934627895fbdcd9f8a046d791f65f371c7b078ca231b09ac941cb33220cb23504581b7576ed700299c
-DIST firefox-132.0.1-th.xpi 712982 BLAKE2B b17cb841ed2508c54d5cf3afa6665befc159e8def983ca4e1bf133cce727dca08d3bf927abe71aaa3648d6787bd72fab713abf40ce1988542d77452c0c546fee SHA512 2b42330384ef51454e78a22e381474b0d9d464107f89ac86e23acbb800693f221be146266f38f6c498ea4d5e5dfcd9e94b9f48cb3e66eb50efbe28cf337faae9
-DIST firefox-132.0.1-tl.xpi 537617 BLAKE2B 3916f8860f00945b7438d435a68c0b6243d3ae4677300ae9b0432992ce96c2587aefb2e7e915ee27faad7afff3d26617df29d4ce006deb19fd116069a8be0f39 SHA512 9490e548b96e5e6b9614c69f83fa49962b9fa814a17f7f7d27299e42adf7830b41c53261ca2e34c7a32f3c16fce068124728056a4c010d0cf470242d2a51c1fd
-DIST firefox-132.0.1-tr.xpi 646975 BLAKE2B 55edfbeda470f12e5990163bb35304ed230912b79aad50af760a0734c507ba2ce3016c11a00a44916d1c385d2d1acd960b753741997f019a36951d929aa02167 SHA512 888b6f80def47eaf866a88181ee4a58797c954d7a01e86597b7dd20febabdf7af12882de1b06b24dae26d2bfd91b3b69d6243c6496755ed81dca025d3c242a92
-DIST firefox-132.0.1-trs.xpi 507583 BLAKE2B 5f8bf69a00995fa8ee27c190c38a1441c696522ae7753ecbf8c6c4b377f545c2bad0eea826a1143139c9126e9c9f2f74f5e0efe7b9abb5516c52bc736c9631e5 SHA512 80791e46cd0f1b96d846fdbb23c63549d1d82e6d609ae4feb01610eccdaf0e74d60d2d4480543820047577437e74eeba58c6ea88186a670b3b1d5c2185162506
-DIST firefox-132.0.1-uk.xpi 728028 BLAKE2B 017a001f11829395da95976769c83b1dd801742b2239e3ad12aea17d6a909e25f0b131424fcf0574fc593d65ec4dcb0962797555712018f598e6994cba7e3ce3 SHA512 990457c5a3171901b8308fc1596ac2c64839168836656413a2440baa64e67ff01bf327c37045f1dfa15d07d45414cabd34bd07de2760aaf11c1cf50ae1ae4bcf
-DIST firefox-132.0.1-ur.xpi 563495 BLAKE2B 18f90a4d66eeb5e4eed72279c9764dd7e7656bb7b2ee2ef724e7342c399c09a95b25ee2b82e006e6313dcd66a2cf0b18f32b9ae0da0ace4005fcbe656c85e8a9 SHA512 16fada2d71288a80aa090d40f5bf78b8515519b6ff2e1cb55c080ff22a3e992d3a104e4147ff73bdc5ef3474bce9ca58fca0a9115ed97a5e0cb28af0e519858e
-DIST firefox-132.0.1-uz.xpi 482092 BLAKE2B f3a9d35d17a6ac36dfddd530e17447bb2e841db643187bae4756f4d329b3676dc15b64e7945372b01926141ee4a77717866afa0f62e1a5905b1b4e6ee5970b23 SHA512 a59754896852f327e28b835035d38ce16e260d870211270eaa4c8235feddeb4a280aa2fac2cb132d450e389b678b48f3225194447162d4f2a6cf5e4cda0731c1
-DIST firefox-132.0.1-vi.xpi 670765 BLAKE2B 6e2f106fbd615633571d11b15ff2d48dacf86b1e6ab89228420450ac9821b9a297b9a89d84efd1dedc10b60ecadb6fe6f47af95d41a9c8dfcd9d58e841c85a07 SHA512 292856d04359a176f162037817bfab4d2c981c13e67e6a24e67e7b9be14572e421191b89509a5be4372d5107f9d7d0e8aac70244d35225b78ec9a4eba38f9c1b
-DIST firefox-132.0.1-xh.xpi 420276 BLAKE2B 7b694f65dee0962e9429532d6887815705ef8d8e6b128f67497cc5a5edf1199e13a1e7253f8545b7b9c6bfd79de002e7f77cea21466f53ab38bf48c71479ad73 SHA512 5508086515c44993874be0d702087d3acfc8d0324f4b70c9cef0f18df91808d7c53281ea065ab981487c9f229e88b008a3ca3af0ac84f0da2ab126ec11e16d5f
-DIST firefox-132.0.1-zh-CN.xpi 672173 BLAKE2B 103aae4cfa0847f6c6d598ebc13e69b30d51c510002680f84f2a04cde6ecaa76f71c9bcd0e45833cde4ca1ae3d0f8c5687cfe95edba842e455197edbd0f1d932 SHA512 b4ea523d6f99d8cc7188cb7cbc686f8c10f5542adfd60c4420a434bf4d060f4f7eb29cdfa447a69201f88f65dd644ad73a0a1f8392b421ef8681cb86b0d3fec7
-DIST firefox-132.0.1-zh-TW.xpi 674245 BLAKE2B 6f74de755ae7f3f87dd9fc2d905b77595c27c3698cc8ee214414ff704903f5ceadcf634b6407506143b541bb30918c92fe1cd8e855d149da0539404bcb67d10d SHA512 a0e24d82e9e33c4b2a28ff08576f3c1652609ab59f354a7fc14c63667715f9ab64ea2d2798b1c7af5c21ab4c0cd19d0eef9a730f24ba567c4cedc29b8e9cbd67
-DIST firefox-132.0.1.source.tar.xz 577539004 BLAKE2B 2773f6f74088954ab067df978e7069cbd92d96933190b32a24c7762ae7f300a8b4b9c95d6fee36ccceceebda86b51fd3842074d49869f8fa0cda5cb98402ed54 SHA512 10d5b05f61628deb9a69cb34b2cf3c75bb6b8768f5a718cef2157d5feb1671ede0d583439562e1c1221914eb6ed37fdf415dd651b1465c056be174136cd80b9d
-DIST firefox-132.0.2-ach.xpi 467798 BLAKE2B 841156f14a633ea775a85426b8c229e29cc772591a71d63145a93310ceafe34abe3771aae438451605f3fab5a37d096f5fa2f61553c370f9212d8c2fc948920a SHA512 72ca18245edbfd77ce7b9f4d19c7cb5841d1de709bdef182e1d41fda889b9e164e34b41fc78f0c2d76ab792c2122657de551c1bfa99ad0d555a2d708beccc8a2
-DIST firefox-132.0.2-af.xpi 420814 BLAKE2B e68fed5131f695bcc9c814f73ddb47c9b2eee35692a216c06f7c394316497ae19e54eaa2016abe17390660c3886dea615d98893bce92ec55cfc1eb8e02076a38 SHA512 ace2aef67bfc74236995f645d743d219f1dad7edb086a007df34c3e0be1a90305d70dbc9b692fcfd6af89d264d429b8fb2a971a98e7f527dc1f9c4b36f723e1a
-DIST firefox-132.0.2-an.xpi 510536 BLAKE2B 4b2bad5760a34fbde1c8570a7c8d6d518f70a6dfe104247f9b6944b1a0773ef933dac6b8a417674df33a7c0addb415ed847eec935ad86da6cd5241a24d1af8b8 SHA512 2dd1058c1e840e724595ec6f3137f13286e7ce90b88d14c24ad77031d2cff2e0315d9d252586d2f63a16c2d7a1afb273791392c3cdfdbb27af96cb07b5b35998
-DIST firefox-132.0.2-ar.xpi 632873 BLAKE2B f595558df803257586d32637aa01c84de8981e84842f8446776d9297998fe3abd7d5f0ce4356baafa48c6bbd6ce05d2f04c52e62dd760697826700e1363c865e SHA512 cde74ce5754666c88109826f83f829eafd4e6d1c7408d16be7ea1d92f733703680594b9c9edf9f8b467da2574df498e36117364c85815fe9b25b9b10d4dc8228
-DIST firefox-132.0.2-ast.xpi 499804 BLAKE2B 4d4d94c925674b01ebf8b36e428ab7d008c83fbb208620d66ddcc2cb0cd02b8a636f57727aa961d987cb8b34957c7f37e88b2db781999f863019a2f7620a4051 SHA512 1e423656af13a15ae1da07f742306585c961b8392e6cbcb4274a9a24df8604cb3912b06d24eba00bb7c4c6103cdd37bde4b8a2d09aada0413ea0b272950f3138
-DIST firefox-132.0.2-az.xpi 494487 BLAKE2B 385b92317f4258ac93344d26698756d9140d9104c06ab3ab44782e428dc0cd2af6cfd2f2c419f8ea88aeed1c286e21ddbbb1b874c5bde26a5b83529a24656753 SHA512 476de459daac3f133daff9702baa44a7d9c680cc4ad4cf75b1701ca32237020729848dcdbae46eb8be352188e94c25b33e26ef200590b1511e8d59e847f05eb1
-DIST firefox-132.0.2-be.xpi 733234 BLAKE2B 00b6bfbfd76ce34eb28a3f6bffc93775eb2a28df82dbc7c79e6ac4e2933fc66d20d5a1e95445a990995bf1fc5f5a258e183004193ad36ebf8531be85ab64e206 SHA512 59b8e7771e9fb57fb2db64474bbb58e460c7bbd169ab4572aefa3025e9a3c32fe4f25261431f0900419bcffc422b9ad56d4d173b186beba5b8464389c00aa008
-DIST firefox-132.0.2-bg.xpi 650514 BLAKE2B ac2d4f4d16ca22b05c868007a87f02b20fe5b716bee6603d79b24ed288be5e3bd31a31d4062143dd22dec90987e5baac46531c9b97fbf35edfe5826cde653eb2 SHA512 d4bad7e897c3534c69e034ccf4317256472b8f58b7be892ce2372d6f01f8340bdabe2d29b6960ca7daef1f5bcd3f020ae183bc8b6fcdd92f4767b0b3b50f847c
-DIST firefox-132.0.2-bn.xpi 585845 BLAKE2B 8718f62f40944f353dd75a5ef73b9f00c8922875405364b6504b394fbbca004401f588d9a259efc569f0ab7dabfdb495b02b3123b4888956c6fa0e642f702541 SHA512 620e778303e9f2f3529ab58d06726b73162c2a75289ae0133992ecb23a0fe3b2a7da6e6caac6360e3719e9cc36107edce844d09c5f8771d7b307f6d2e6dac5b1
-DIST firefox-132.0.2-br.xpi 597575 BLAKE2B 2a3a43ef38304c63c88f7970f732d91f9e7cdba6e2b56701a1c8c9b82a8f43cdcbfd3a0ac6796e345592182fe6c458ce0a4b3f3bd4af88111e3bac2a0a28b800 SHA512 5dc79f069528a3d298842be0eef06e4ce862995879fea2809ad1f563b2d4a3ff0619dfdc701d18cffb7a18e04b09282464c891ac96ed940d8891cddcf35b24b4
-DIST firefox-132.0.2-bs.xpi 517985 BLAKE2B 2ca4993e8219bc9ee5cfe85b91747f0ce290fed52c3d3201310bde4cfd590904b14d0502b62a4766bbff060f3f25c6e0ddead88cc7afb46755e98ed891f074d6 SHA512 c281376f082678103b766392d50cbf16d0e2169cd3ab79dd4d728694cdba4fc514d8111e54de32bed8c19e1d5dce4c9c39fcc7c0247fe3c38065aa338cf4b6e8
-DIST firefox-132.0.2-ca-valencia.xpi 549424 BLAKE2B 14158d56110e467cf725a42cd888607fe9e638d00c86d431d38c1fe770ad834fe2e8fee7a8d91b2ccafff7f3d1b182212cfc1a083588a3ed0e58b559f8f0d3e8 SHA512 7dcb6b66a095f1e54786882413aaff67ebaa1767c156ee014cb707764a0c8fd7fd6ff4fdf1004c2691a64253ebfcb9363a26255836eaa7daecd4d0839f8e2a5d
-DIST firefox-132.0.2-ca.xpi 601164 BLAKE2B 953cb26bd6106aac4ef7961ad725eb5497763f85d92d99cbb96fc933ac945cc61f0363f0a5313de1e94dc83b0dd88c376e1a82397617a7361ce2ba484006cef5 SHA512 f781f8f9e6d599b6cd590d2528b94b39774105368c2ab2a06ad95e0976c1eef897e828f82f4edf23f6ca866976b2258578fe8e81176873610b6ade62dbc86e6c
-DIST firefox-132.0.2-cak.xpi 597169 BLAKE2B 644547d2a7a545c878a14cd18d6182df2109df9bd0cc2c8672416d77b0bfc5394ac1a33a7d698a2c6c7df03e86b76efcc02b066b23cbd1b530a42ceb3ca9607b SHA512 8e45e940ed69a0673fe40082e58f8b08ae549eae7fff6538835da9de7d69732e06345a4205e18ce9ec04dc4e85bac753a772d054cd46bfc82a9e02aeeb7699c0
-DIST firefox-132.0.2-cs.xpi 677420 BLAKE2B 30a672adfb8370cc73db4124f0f80c792e757f3cd0e171895f4899f4ed49bf5cc4e56645c4ffe81f959016bd9067c734f42a5f10ec2847b533cfe20cddae3fbc SHA512 dce64b2fb18ff4bbcfa9d372086855dd778774aa8db6a77da4c2f670d8d0ced9e585915a2d99bdb59a574faf2a2578768cb40413c7eadd240a1eaf0b5ab6e822
-DIST firefox-132.0.2-cy.xpi 644264 BLAKE2B 4d39129fca426d897b8db58d832e8e988d51625746a8736e043aab106722c2f4de5bd9677cf2d89ee5c7f6514697c3ea4e2dd8ea3e0392ff9fcec14ad06ad4e9 SHA512 30ca15b96dcec839207fa821f0463bb720c03b2e6f52c3d9e7f83c1115bc94699d330b8172a50e791b8a3db96bbc2c1fe5b2e80e6a3b9df877454966ebdf8086
-DIST firefox-132.0.2-da.xpi 626406 BLAKE2B 5f34c48da31c652f42e138f68f0b8f80ed2a1f0fe6aa5cc78c268ccbda7d1881defcb2cd6badf9d3c06d42e6598f8cb1a4e933811f4b37bfae3b6e0270da34a1 SHA512 8358b4519906e06358b65fe0d907e2abeac2f75135d11f75be01ae8d57ea3dd8f4a4d61aa7981b08621f025d616b670a56b26000bb0bfcdc5f18866340f06fc6
-DIST firefox-132.0.2-de.xpi 649839 BLAKE2B 947c957874be9a0d8f9467942d3e2cea5c495dccc2a634c0e6b2c7f4b02967cd7295325bf7e7ad29f7406323b1dfc3e22cc05e7b8bcb5792b1ff488b270a8a13 SHA512 7ea49c009381679e1e1088f612d01a613d86ac1835c03e8fb747fc393927ad025d310f9a904244611db1c5e2cdb5db7cbd04adbb6d61381188213c09599537b8
-DIST firefox-132.0.2-dsb.xpi 670475 BLAKE2B 75e0441f1c05a02f9c8b4efd69767ac1f7e70ce59b3c8429e70ee3f54741c86be9162fef3875a4a33f92c1b96bfa94b53ea81cdeb667ec69b3c2aaf9faec012f SHA512 d8c870c1d6e44b3809a32b9e7e413193de3404d62090d111c3a04354efdc1fb33761a9c2f064d1d4fc3f5ba07d1de44cec3c34f8b85e2f8e50d62ebb8f0dacaf
-DIST firefox-132.0.2-el.xpi 756332 BLAKE2B 70e513b6f41b72433f848334bc05007dbdf8eed05c8fa0f0380573bb9855cf434449efd02e6e2d612d7c9d0a108bf44b9ce9fe04dd475ba1a8ba810f98a75d23 SHA512 a502fafe230786c07b3b65fe5da39406e9961263c0e1c48e726357013766d59508e61b4751ec36794e6cd5d004a72a2f0086bd804161207cbe97e396dc871ab0
-DIST firefox-132.0.2-en-CA.xpi 598667 BLAKE2B 6145fa2155e5cad211f08c92d1a843433a15ed57f6abd56febf84b2d7ef63e693473a65db9537f6ce619101fb5473ce9c9d48d983b7f629f6f0909b88b1823e0 SHA512 6c456ee5c60123efe6363522258d8774bdfefc2388d82c6e318d8246d7743b754f5543e4e47ab82d1fb2f57fe0ca6ab3d52b4682993d0e93d2cb3193b733635a
-DIST firefox-132.0.2-en-GB.xpi 603442 BLAKE2B afd7cb2d83168a19d053902ee2942da052f0ae8efd0e7b0841dad5fd84bf5f9520fc0d4709ed814f623b8903006efec1c6c81b60221886bb0f70ff7404c027bf SHA512 3e2367c30908ef1cfd7ca51500257de5b8bbf8dcdc98ae9e8dfb7414599ab48b7a949761b720b847ed6558517d58080e1af587d08eb775cdeaa90f78039f0a8b
-DIST firefox-132.0.2-eo.xpi 630269 BLAKE2B 47bddcdb6766101953512666048dffedb58d2c001a2ff389d4798e5bd6262b5aa519360cf9e1fab7a4f0c4bad12b182254102e1d86030bc91832f1b078252e8a SHA512 31c07b7a3445e875dc1f015060e11f5c04d98e361fbb132b75d911fe57b746bc89f35cc976446366942dbb438a37a98657be6efebcf8bca9735e55115264b77c
-DIST firefox-132.0.2-es-AR.xpi 647731 BLAKE2B 52393040762c961d32fae4dd5fb85d14e9599be8e705e7272f0f53300905aae4a8a8dfe31513aa296c911bfaba8178f20d3de39c0bc6b8bab5990f7ddd50404d SHA512 7e32b0a98c7b41e49d1594d68c6e10e5d541b71db840abd576adcbb160f626e800ad9d91efaa7a41a2e54b7e3697a9ca44949285237a51104600b97f44573d76
-DIST firefox-132.0.2-es-CL.xpi 647210 BLAKE2B 2a1aad17d5add11a4e2104c4e5c32a56a180fb6b116e2b39b43e31bac7c3c11d5a142c658cbbd641dff885b00c1bdf7bf35503485da128b4330cb4a7eea01edb SHA512 5951d921056f2bdc554925d5162d5699593a37d01300a5d64cbeef9a69aee553fed476b57d510745f508855a20521631b4beab1a8d51c6f2a3c0e198e263ac5d
-DIST firefox-132.0.2-es-ES.xpi 638777 BLAKE2B 0577933e610658ae7dcbbcbbae58175cc615419d8564d6797eb357e24dc876ea8ece0258ef4c430d35a4550a76a4d60eaef0760ecedd9c10c021ca75f69f557a SHA512 1f0545e8bfb0c8776b8dc4e0ba05f775d84e3802724f699dd85733bb671036faed2275ba849c221ae4ee481d573d63c1c57cb09d66bd0379a9e17d0090db7685
-DIST firefox-132.0.2-es-MX.xpi 640615 BLAKE2B a32215ab0f13e2797049cb7fcb72b6b979e903ea7767fcbc8a862ffbef9bb84b9885d2e836e74a1ba71844815749f1c51e657a967fde622ffd3fcfa4db0e4fa5 SHA512 6ac564bdf4aac750a52c92abca8ecf1cce55045b1faf8c43538a8a3e40ffdbbd1e1ad7a8bdf06373e66227700289cb2ebb9204717a05fa251b23bece35b1731c
-DIST firefox-132.0.2-et.xpi 543445 BLAKE2B 699ade0cca167136be6767a04c63eb9c9bad2cb55ce79da4aefc61796ed79d5f1071379277b780e9c137099d7d5d1480dd3ef43d8a699a8748fa28bcca609152 SHA512 64d691c3036ef685bb90c5f9ac74e51f90137212ca00db980bbad5e20ce7e274794d34af97671e067097d7d8fc09d0a5009c20b8bc4b9b500c6d4818c54d8682
-DIST firefox-132.0.2-eu.xpi 614704 BLAKE2B 54ced28611f00d0de39f14d3ad208d7ff3ce944a31d273eb3c4edb40ddffa5ac3b2e76a33c694fccb810d416c67969fe9cc1d9cb5f8058baede329c9021deb08 SHA512 534cd1653b26ebce4900f961cb5f4470066da0fd951c9a43d2b4eaa2c7ae5529b15b14d27cd259d18aa7c1b2f293bafda4c5b17ffd4907b1a2494bba97d3d102
-DIST firefox-132.0.2-fa.xpi 596190 BLAKE2B 55b5d3a94cf90a465931b16a692619d7904555490e6ed89f05939953d2a2b8fe39383b4f51c4f07207b4fe5f8ba417b9eab8c06633372b94f355814035f48435 SHA512 f1b9d036dee8f1a9cbabfe42d6651c931e436444ab924c745cefc8978a2e53787c05812612ef7b2c2f5fc769a6a8dacfa6387e72051562590bcbaef8ae639647
-DIST firefox-132.0.2-ff.xpi 479429 BLAKE2B c6f8c918acbd98e52c0ef2e812dec5a18824ddff5880f0e2eb13a393c64cd3cee144ffcf0be03d28b9a001196762ce16811125ea559baf11a500f3b1eddd1389 SHA512 dcea6fa8f8ca8ee72ea3e3ac8b2752e253b9aea81266b0097da90c9f04aba118a42d560f1839442316a5fdafc2951043042abebd5a5b208f0edbc8c9ef9dd23f
-DIST firefox-132.0.2-fi.xpi 624913 BLAKE2B 4e5b4a699941d8f24298dc41dc3520056a4a88941672fbea9b182f3a7a1a53a1226d92e45af9552d793e17df28dc46975f9e226f93cbfd88560823f374b11038 SHA512 34df4572610bf573ddfc7b0a3db12e6ba5be025cffb919b63d4f8d4793627ae6194af8f860fc7600d06ed138006d80a77ac4ea3f060909e0fc5a4d704032c793
-DIST firefox-132.0.2-fr.xpi 658604 BLAKE2B cfc89b209f3a3db88e0c87364604b8f0ffbe545f466cc6ae8cf562dd4c9f9e106e67c0e7d49b67b6d56cf9cc223d9126a056923ab9f0491d8f52100a4cbe8034 SHA512 1439183c1e7a150fccda22a8a50c16309e6b7c21b869985334d6659d6bf20a93299bf1157c97972cc6eb9438932f168dab562e732283365850e89449579c945d
-DIST firefox-132.0.2-fur.xpi 652784 BLAKE2B 6926ab64138705a4dfc33e4b2147243c0889d13eda594d12181035da80e0e80c38b9f5d99366e6a9bf4d3526fc257cb0da1a9f6ef0280fb7158c909b47322b0a SHA512 3316868cc3d92cce7132e35c3c98e2bade728d747d0bf343a4bbb0c5473f3c6f85254ac5634b8c6c48e8b297c7996a3d0d860305fc7db5383e07716d8c4e91a9
-DIST firefox-132.0.2-fy-NL.xpi 643396 BLAKE2B e874ab2a7491af8646be9349dca74e68d64697349197778642d2e10a1e439ce6d91e7dca884d6e94fcb0e1256a65345bb9675292d316ac83cd5b020d5a72dd65 SHA512 fb4f68cd5e110414a7ba3fb78b6cdab4e02ffbb52f0e0916208c4a422d6aa3a2b46214bd1ca6dade51b1aabad71521b5b7a427c0e2f990cb83d08159c00425fd
-DIST firefox-132.0.2-ga-IE.xpi 474559 BLAKE2B db71d23230a2f446f6b6611727c09a13bd67151e74f739a5b55bd68aae5c84801319bda80220e78525a77d2f13b5af69c40211bcdb1a42d9b56a4c6bf69cfeba SHA512 7a7297cc1c0b4f752b7e1fc13a3bda38e4a668993b4ae817397776a650fb1c24e514662c709ddbb580698c47c9272d4671c5ac3f237f3b5e6165c11204cd9df8
-DIST firefox-132.0.2-gd.xpi 601141 BLAKE2B bb78d1080a6cf93671c3cf56e4b3ab0a93366fca31e103cf84ebc74548592e8169c2ac477deb6351cfa6310f5b41e6b2cf0f0087b2582568529beab3bdbaf038 SHA512 cef385c4f1c37c062a4b47c1b68982f6f27b9a6337daa07183013ba46752500f4076acf94c3bbf0591c9ea18226669b795cd0fd21ab9bbff6503565630e4b42d
-DIST firefox-132.0.2-gl.xpi 612327 BLAKE2B fb94aff49e882fe302bb8460b1ab5cf98828dda7627fe5ccc157dc393b06e4a5694fe2358ef22130d2a23ceb27a5d48db238b79bd00430d05a9b948a11fabe43 SHA512 df3acb247af217321be3cdda6227ea565144c35e97f75e6fc8c9fef634250a629a61ac6b73bb4f680db09b1bdff5bb664317d2320aa29a98055a33441a0411c9
-DIST firefox-132.0.2-gn.xpi 654433 BLAKE2B 5ad1000b0d04d360178b2751a895d0394010cbe8cde3c3be2c71a31bec2d7e67ddc45afbdee5f1f28840a97b908adee0c3e0a2e76cf0d4437fa3bbc840f5204d SHA512 65c394a3d1d4ba41bf43c30ae56ca102145b76f5f4ebe0d51e003fe267c58dd1371f7e7e45ca47eb69d01f7376a25571ba082747db3e16a4f673bef04f9f5766
-DIST firefox-132.0.2-gu-IN.xpi 531045 BLAKE2B 447f56eba782a0542267f9f605c7f0f693f6ff1060957f00b236e82b3a36fad3cfe9a29625a01f82b2ef0df7f22235033866dc00cd73ec991df1a674352c666b SHA512 7a1cd2d15557deeb6b2aa3c4b8fef725e12c0a7d8b43c11a8845759e9c3ea5d445a26681a739b28edac87b0e248514aa8bfaa0d1782f5f0793740a7142687a34
-DIST firefox-132.0.2-he.xpi 650184 BLAKE2B da416b20f1a54eef8bd7b39226e6db239627c127323b294311a99df96a0d442f0f9e1060c27f89999ec295acb782b0d8cd5291d26ce5a8e58b4a03c9aed2775f SHA512 e255f184710750c486605f67e242e95dd1734197b7780f34e6497b0375f64344b6f5f78646558d795980e6185e5df8438375769271d908f4ec553467f8f20a25
-DIST firefox-132.0.2-hi-IN.xpi 570357 BLAKE2B 0a2cf794532beab7240fd1672bff4d659c0568dcb138d6331eb4ea3d79f1a6fbea9e8f8fc5fa921903c77930d330126587713041b80cc65329adacc86f7f95d7 SHA512 fba5e75f528fa12b7c19ec2e971f04b019cc68bf91a2965c9985822c8a4f8d3ff36f353dc14d03e3d848abbba5375c90bcd46ca70488b30dae54a91b69c2e21c
-DIST firefox-132.0.2-hr.xpi 621225 BLAKE2B 3fc445002da07b17a0e948dc9adca8e600656c47a856cd20fd2ae2f30a95e317a8b5263632b64cf8a076cb9521e2e2e44387905ccf98534f8a217c92cc30f84c SHA512 1eff632cc695417ac4490e7936c8632132bb48c0d880654ea7fe30ff955924d78cc00194a902c2680b363b375f73436996495619aaa9646c8e89ff19a98ca1cf
-DIST firefox-132.0.2-hsb.xpi 666358 BLAKE2B fa7dc2b7d67cfd04e0c0c93f2744890810f431252d0840b204f73aef31a9d13d4a6393515a7aca67ac5232a8d07d9e5092131d36e60cbc7245e2908bcec3503a SHA512 cae655d51a2cbb05642dbaaad990d8cd37c70f00bf6d328e2d5ab143e3b0d0a356a1b4cd416ba9332ec19467718d86a16287dac129389f88bd3304a0729ec121
-DIST firefox-132.0.2-hu.xpi 672271 BLAKE2B 6c62c10e6bd93adf6c6ed897463446ca7aa843ac64dc2a9a63bdf40c6905596b306b8e59c6bd420f4950966553ea74165fdda7d41d1af62ddd96191e0920fd44 SHA512 bcda7c6da5d87d977f8956db8831a12c33549c5cd0d1d7c26df5a6c69f9a08edd1cefd7fadd1e42c5c252dce0ffe20c8f4f4bd2b22854a95cd3f666d07fb3957
-DIST firefox-132.0.2-hy-AM.xpi 655535 BLAKE2B b1aa4fb763e76b165b97df6fc69ead23a0615d836c1964308b2001c4477175c70c7d64f65e3cc490d7546a05fdb76f5e7c0de0d1aea32d93fc61fedc38fbe337 SHA512 97aedac84914947fc8aa8f4f558e8dfdd8702d4ff8954dcc4829be0acdf184ecba0829e986eba2562a2d6c4ddee7b04f98754399aa0c4c26655dc678d84eca88
-DIST firefox-132.0.2-ia.xpi 630234 BLAKE2B 750a3a53bc0e488e3409be2edebca20c4367f3cdd2985ae743a5b7b3164807f6910c6141c4004c5cd1cb5ad0df253904b26b600ac32a8c28c31520002eb26adb SHA512 e35e386b94ed017630c96725dbfda001a4246780c6a5f3b9f125d216f629e88ac6e76b2454207c55887046297584d790859682b7d7999b9666b1e1587e1320e0
-DIST firefox-132.0.2-id.xpi 599976 BLAKE2B 36647134acdcd2cbd3690ae7474c718c678ae11c01cd133d8cc615e14d80da9f50a6a60f28d418e7e943ea2ebb22aae5795f27c7f2cb24beaa3a855af54344f6 SHA512 1a393de38bf2ca97eca9777dc97f2c8b650471ae7a41ad24285a6fffa1c79aa1189c5ffc2ce715f37986de40117e7fbf3ac254632c6bb23cfbe89bcd364d17a7
-DIST firefox-132.0.2-is.xpi 632789 BLAKE2B be04937e77ebb6756426a8b804ed7e2dba95165cb70feb1bd5449c880628f5fb515d66a1ef567c73bfc08eae581e3eb771094dc881c1d9f60dbd5a08aadcf5f7 SHA512 484c7a6f187d7a0d50c37272d901548c3f17fd9263360a134f000ccda07393021a8960e686dba21f1a0f8786f5347dfd9bfb39911d47f9761e43a491f42f0e5b
-DIST firefox-132.0.2-it.xpi 587225 BLAKE2B 3c58ad56d4dffc685ae9fa5127661b6656ba1e6e6ca4774dc555aedef835efcda2f0d3fc50290041bd6e0d75d872d98d50acd1353e1b408bfd4eb25087b7ebb6 SHA512 6703556101453f5cccdf2950496b2e56fec415b3d58fc67798fea02663549948e29b299b54ea21e17b8829c7affab059ee9d5e31f27e2427484b7eb05823ac40
-DIST firefox-132.0.2-ja.xpi 696298 BLAKE2B 9b50a8826a04b244cece7ebfd3dbd03a356a7ba8ceab19be620d1ecf54f43c7516e194a81d94f675306b5bcfd73e085cf6dd1fe1ecc8b2f3ea3789d1bca65fa0 SHA512 67c1d7217a0b82508460101fb0c64c479016b437e531d6ea4c5d1d217a9529f228860ff08b3ff9ddd5f82cf4dc5c5de9382847878fbc5ab18b906c1f2373fbaf
-DIST firefox-132.0.2-ka.xpi 665145 BLAKE2B 33c7e4e9f78a03ae0811884fba8c6a3f8ce70c2086a2c1f343b189572bfa3e2723c620ed7d4f6b22a179207a42ffb1e741cea01e91bd83249719f22c5ade40f3 SHA512 da11d68956b6356fc6358697267ddae6dff97d3432e22379f9760959a743c487798aca20e2cb3c1e91e921528b61551f90192f0b76e0bbca8f949d22a8488f53
-DIST firefox-132.0.2-kab.xpi 621693 BLAKE2B 8a29eaad65c211244e5d9f412ac7496cdcb2613ea4d50eb17fb362dd626fcf909af336f17b61c4773e8d07f8cbe66f1b2c6e1d26acd1e2cd6b1e556208281409 SHA512 7b051aa5225a84311e3357d37cce82838d8dc93435f12b9e4c95a6d0ae949796cf8b05227d1e45e72bbcdf2e0370486cc4055b601077a9b96c7e59f9b633d64b
-DIST firefox-132.0.2-kk.xpi 730304 BLAKE2B 293a08890e21406450707f3280575e602bdedb351f01510ced08b71a6e0dfe8fdd2ac9df904eaec756e41c2022266689ec33fdc1384c007c5f6df791f15c5ffe SHA512 21d8692c267dbeffbe33d5c960521d7e074bc2a28d6ca03d8d4dacd1babecce723363613d59f0369d76c9476e84fadd67875bacedd7576159f2a1410120c06b6
-DIST firefox-132.0.2-km.xpi 529539 BLAKE2B 0a5d8d22882d3c4d19047bf3584e09c5d59c9d917a63d450e1d4a2ab01babc13c084a795c8ae178d28911310190c409af7632e61b2fbe2631b69fb17be67a495 SHA512 8e5efd85dd1379ee0b4cd5349fb7a2879ab14fc7781c622d021f1a50481f7d15a6ad7bb607918fa572c0233c35a355769bb71405bd61269a15bdd9c80e6da48f
-DIST firefox-132.0.2-kn.xpi 494520 BLAKE2B a5051dcdc7ee11d41e52af729b3b544a6e1a1687cc6eb118a69cc3eaa44bb9503b1c48459d9b83459c8683f5b74a9f8bdd07b7c7b5155c5fee993c09dd9ce03e SHA512 ff381548ba0125caa7aa74439a1ce9891e63938051ec5fde8296c88d5f9f16634fbbf7bfe6cd9268a3c6b32012cdd7685b259b6305a09087700efd64cb9600a9
-DIST firefox-132.0.2-ko.xpi 682218 BLAKE2B f696cd8dee1e63e4e13b9d5799149b3ca79d8642f6afdf3c58a5e2adc800e805bcbbb501a6968f4a89ba08dc9c29ec680614f59d7380f070cfaf1ad9891deaee SHA512 2d08a46784fa575f91f9c0d110134833c684481a8adde2d7d8de1ea692b15c2fc45095b26bd53b33d67042072e6aea3d6794cf396201638527c72ba6aa71b4ca
-DIST firefox-132.0.2-lij.xpi 487824 BLAKE2B 4f649afa3622f1e9ff010b9c7c983962673feedfb9fc8980bb7cbe5677a6de5128da81ce56ef14dd19e43db25a7feb5e0f7d9042f9c13654e2a99f54c9a69197 SHA512 bf6cc840e1f38c8549b42f59ab34d19d9df87b10e6b5ff0e5eadd3dcdbb5bddcbe3518b9cd77cff7a6510dec497742a72ecd1a436133d9e0dc83972f30454647
-DIST firefox-132.0.2-lt.xpi 576567 BLAKE2B 5e8666d34a67b1c09fff4b0e80696f0430d4464b8eeae936fa52924a30f74469bcc20a4ef1789ab9bdb878c7e6be703a3a5387e996e23dd951cd938ee9f6d650 SHA512 cb0b3cb791de05ecefbae1c2c63b45b888fdd357be189975ab2a797b714cb748e039c0817acffd11593f07ce4d1b1be59330e4b89e6c96428b092a306a04b1ef
-DIST firefox-132.0.2-lv.xpi 589867 BLAKE2B 4c76e2966f9856bb4f373e1c522aaa8e320d9c5d1d1a4db55a06d98196427d408fa30aa4aa2ccd9d313314617d29e631cd4443d836b17ff833d450e9f2922789 SHA512 b18ad4ca7030e3e43c5306d11bfe21d06c190e1159042e65c0ae920736dd0b03e95a1eba6c524a501447c34c11b50bcae19be3114e2430b7e2ee7480b6540f25
-DIST firefox-132.0.2-mk.xpi 497150 BLAKE2B 60a43baf1b763a5769413e06b2cdd735b1ca2dfe6b684736ecc6f77e70ae479bd32c2785093a03cd4b8175116e3400dbd90b2de7d80b4def62ea50aa1880d67e SHA512 ec119d0ff9253b2b73c148199bd4582d247a3bf8f75e1b2a9d0af475f1d3659cb25ac4f2c04bca2f5d05dd6fd5f938be6f344523fe8d29238878169f50eeb20f
-DIST firefox-132.0.2-mr.xpi 535649 BLAKE2B 8b53b94a0e0c8165ed848a9af1f0f7701b1d74eab00868969f438fecf723e83f16cbb35c7b5848973841322963581ad6cabf35325a6e0960f3ae39da6938cfa1 SHA512 1da76812738636d32f902169f8524e2e1a54faa7fb62eaaaa7aea7804a71343ace5c874c514a6c604ba75f2f0a5569183798e79872c95ea90ed79397274a3239
-DIST firefox-132.0.2-ms.xpi 453413 BLAKE2B a1db6dd5bc0e550dda458d0a78e21eac26d4a948cefd1c7915ab74980befd8504bdd4e1ba51e972bdd0d5cd6e1995b413c829b573b6b876d3ee5ca71ac145e5e SHA512 83bcc2679f67c6f8279f74beaf407025556ee53336e36c91497b1efd46c97f0f81bc3815e8b476dd861b7e33fa867d5566a108bfa75643968fbfbec1bf7b06aa
-DIST firefox-132.0.2-my.xpi 522004 BLAKE2B ee4b5d44fd4f4f4a09af249d692d900a227730d60017511e16944d4264936e03ec3aba9a88f3d25ebbcbae5e1be8c4477bc07dd2c4d4b89ec8820a2e04c85a5c SHA512 8bb466f1fab21afce67aad70e0d7c952a26f745f2b7c9e31f40f23b737d48e557df09a5b880f6f8ef440a1f1767dd11fe7db652f7dd6caac8bca613c300482f1
-DIST firefox-132.0.2-nb-NO.xpi 625151 BLAKE2B 826c98d222dc05eb724b6bba4a48bf666e8d46c26286b894ee7f291ee7e3131cfcc404d8c7253700a4f4343bcb77e5b7ff5c890a573447ca0722e8565c160cf5 SHA512 a307bf838822564e4923b4cf605583e04e370fb6019232658d8fb37e51aad7e35ed17e05b792cbbc88634fc59253c24044962e9c1b72fc4bf195f54fb7277c30
-DIST firefox-132.0.2-ne-NP.xpi 524461 BLAKE2B 751f5e711f5b2ab456dd359f1c5843fb5cf4792dfd8e7029f09399269df09741572ed8cf5ad646749f78c6b7f858a7d42cdfe6f76213a30bf129f68369514369 SHA512 ecb019fbff8d229dbe9ef677f63ff8dd40898deb9a1dc8feb9496fa2393688c824ff68b3814a7769cbdc75bdeb3cc3a16bfef0dd0e99a012c76884d51c809519
-DIST firefox-132.0.2-nl.xpi 637083 BLAKE2B 49ac366b022b17e426c4fb8d77e871f6b661fe63b58e0c1a9d094c54cd71f4ac2b518c5c9feb86822e9ada20f9bb2995685ef609685d76a14941d1b7c46903ee SHA512 217155b5cfe13580793c7bc843dadd3f10ec571a05ae05868b3b4cc92a6560089d11b8e1c1c923374b6568c39d5015b0684581b1d69d89068c98319bc2872069
-DIST firefox-132.0.2-nn-NO.xpi 626155 BLAKE2B 7cb2b9884f0a690ba9effddead726fadcfd4b827dfe089835c69fe917c4b7c88b739e54db64f02a2b12a91e342514ecc8c135c01b2f39bf6eb96c138325986bb SHA512 b80dc19ccb5b1a7d3a4d0399de9b754445ebfc8b0c51cb9984c52e74a29412f0fa8943e77e2e02332a3070e61a6ef9659efbe70d0ad70278e4b1704fa74236cd
-DIST firefox-132.0.2-oc.xpi 618331 BLAKE2B ac37a39a7623089ce8de500797108f201e63b087629bad757f47a85eb91a8a1cff0bcc5cc75180a57efaab361717aff4f2583c5150fd45f08aadd7a2be1ad9f7 SHA512 6fa064702a75c23d1db592c0a3a16a5ce0ab5b71917c404d0d96e12a0a0b0a225b9b088d2c0866ed7ac6503d0312d4447171759d1bf3a1dbcf1afe23b6ce8bfa
-DIST firefox-132.0.2-pa-IN.xpi 714761 BLAKE2B 219b3c66975a8f21cf8b8787ceb4f756164c73f0f2f6d0fb274c0889ab180498c070feb3384763aee44f8fa803a46a19e3d9579a2e6d88a4b5cba578fa229d48 SHA512 335667a473eb9121c1710e3fb07880c10520738ee6c9de2e7956ceae59462fd5587084645fb29a6214a2cf1c7a31382891ee1b232757ebe8c85951eaf8c809bc
-DIST firefox-132.0.2-pl.xpi 650230 BLAKE2B 946e494b557fb3a799a4081bc8bd125b98e0b786007ad3276d76926fd0ae50ff37c4f4e5e71d91577d22d9f2011f9954c954c326c4203acde466d05c9b48af97 SHA512 9bf3ce1c48e5fce2c2edda92569a9578f5e623760df1cb2a14871d5f5389631c5ff42233f140eac8233f4992527227bd7958a29a4e99ba007a3375e0b3d60376
-DIST firefox-132.0.2-pt-BR.xpi 641704 BLAKE2B 130354c59da013a95cf047a4a8a269eaac42dec93db59e641dcee782e70c9a284333980609eb6534b0d970e2540c7da5dc54ee557cf231e9784880dcad81da6e SHA512 e58016f3da6b61ea742c47bcd5bf07a3989bc0577d18e190d53e61ed741aa7ecc146a11cc371df756402cb405e6841160f1b85632211a236372d259c3123b8a1
-DIST firefox-132.0.2-pt-PT.xpi 648557 BLAKE2B a13fb8fa15871ffd5b5bb7e96036874a99a150d6ad3e14936e4bdced9f62a78eae944ba4fb32e811aba3ceaf98d425d5d1304905428417a6ebe1824519771611 SHA512 77b3dc821c8b7f1d362194c6a8eeaa591ed999ce215a87f774c5a24ca94021a66a9038cbea1bbd06d06d30260348dc6797911ba9b49e132774e44eb930c54ae8
-DIST firefox-132.0.2-rm.xpi 632861 BLAKE2B f5c53f7e6487c2c7953329a812c8a0c3e9d9e1425c52fa076dae99cbb60d5d3f1089cb796f3856a6b6a9922d3dfadbd4f915ff6836f05dbb3665d08d319688af SHA512 983aa0306b42b9951a0e813f345be0541850dd9181bc1814f95fcff3be6ada18f09738ce880156d4449529b49b2d60a440f6f067c6bf82f0cb316df89bda5787
-DIST firefox-132.0.2-ro.xpi 553664 BLAKE2B 7a0540d8fa2785a38c62bcd2a4154708fa3e1c6983b375ce5f2fd31a343a9b44353ed5e5d514403a8e5678db01f2c04da710ed6a76cff21643ceaab55be4274c SHA512 6f61cb405105e29fd70b42515e59e0a63076e7ed7adca706a2ee179e6dcca818a24965395df88e1594d1b6cbb6b5d1008ca9d78499dc1b4cf8500e1a519703e5
-DIST firefox-132.0.2-ru.xpi 743491 BLAKE2B 655b3ca367aa40e405cad44deb02762e7c850a1e9438ee76bb625ddd3284ac69737433dea186b6a8fcaf63af032e4f78c53b0225f295a44f64aa835dbf139542 SHA512 1ccd6f879f55b0af64da13068dccf44319559cc04884415d4624f1c0c1bfd3ff57130cf59414d47f8947c4105f0cee117d5d91ffef109bbd18b4095251d4d837
-DIST firefox-132.0.2-sc.xpi 601038 BLAKE2B 0e9dc5ddbc48df728ec9df3a1324ced2d58492854aafc5cb03bc7615f2b5aee83830e2b664ba24d407338e2d5731b97874e2f01456283c07d3ce5038344deddf SHA512 20ef4616f753274aa26885145646435a8dc8722bd97ef6165734606abe5de0066270456f1f37c88c0997ab888c8fcdf4e92fe300aa5d43f2e3c9c5ec264d06e2
-DIST firefox-132.0.2-sco.xpi 514967 BLAKE2B fa81615044d6084a5cb63535c35914b1a5a30829876b66be3058732ba8e88adc24e0b41c399fc4c19c3b1de2681ae9aa1ba0227c09e044eb376a5350e5484295 SHA512 db7c243932dadb4e2d9f2e969741d2274627912250ec456423ea346f5c4e6193e41ef59a22cf988db0517e81cc4d35ae254558cefd83bf5151799486ba69b995
-DIST firefox-132.0.2-si.xpi 623768 BLAKE2B bc798fb13f32d3d99a62ca354d389150a313c1035d3a019efa4b485dda6d9b3a94e01ada3382c79d68f14e424ed5be7005220ed76bc01a33397a3476df88c8c1 SHA512 326a0551cba4dfaeffd491c5145b85331dbdc9dee91e49e71a5a9a154e705b1ea16c068e08e624fc456af457c35b8766f923323969a3549936a4857df98087d5
-DIST firefox-132.0.2-sk.xpi 672236 BLAKE2B 8976ffaac09ecf84ef1f1e1c2fa96de631f356017a2d0924730442b73bd17dc0a579e3fd3a249aad7640235756c17beeff93ffd0b3e4f03a7cbf206dc64832ee SHA512 61aef080645d7739111df14f9e7f99e09c3a74c0e226aa51d5ea51ff79f7a813e716b38240a4de8038c2ec82edb930e9c6ffa0a6139455741c5ea678afb6e24c
-DIST firefox-132.0.2-skr.xpi 726163 BLAKE2B 3d652df871013776e63d839601f1d09b21ea9ec6a6df05e16d3b164ae39f4968e4b9eeaf96b31908745245770abffb5a284487b194d6df146836cd0856aa68a5 SHA512 f9b80ca4faa2db577c68101f7edb4f705036e6abd67d4d91a5aea04939649a8b746ee4874a838f804259138b78fb47512c5c5a62e19f56deda4f31cc0c3289fb
-DIST firefox-132.0.2-sl.xpi 635522 BLAKE2B 3b1b12e4c68b1188697938d743a942b0ebda2687f742aee2bf184a0a928635ef85856c237d2e07f8fd6d2c6d3f1ea3eb48ec2c13fde1f2a263a5a78a006a9492 SHA512 e936020c1dddf2aea58eaf5a01f927f7afb9b2c8f8173441fe048965ed5027eef7748fe3a80984e1ca90a30a6b89e04210c78706f35236c713c5cf7574e846aa
-DIST firefox-132.0.2-son.xpi 419879 BLAKE2B b74702e9300fa1ecf86af87bea87d63290fd2b8f2e4d8a05fe63f895b0bf30b8b31037951ed9e2d5e5c50821bc14453b24256e7f63ddcac314cef297629f3279 SHA512 aee2b13f50af10011a1054e3282f37150b20be77c32555286723043bac26cc224597f294f4fb441f20fca4693dac3cef0879c16c280f1c6e280b51f6d1ab87cc
-DIST firefox-132.0.2-sq.xpi 659168 BLAKE2B cba04b9fe059d85bc6ba297c0acc3b97df547a8029fcc5096108b3da356eb6183959feef449adcdc3e2672d665a5421f85a9aaec367c5e0a1ee024ec470d3f0d SHA512 367beea0b3c242e3d19c6869d12a9c7635dc2a40cf348c30ef5ab9a2d4a98850c68806901a77471699d9f9d2ec2cb889018b391053a70f16837c55dd3fc2054f
-DIST firefox-132.0.2-sr.xpi 644786 BLAKE2B ca50ab7d6216b6b393bcd3150f83c7d73f4bdb46fdc0ed7c5be6a49ad93e5b3d157b1e24cd20ae399f28c461c4f3e042d767e6fdc68d366e64433d4d7697c660 SHA512 436da27332b7bcaa91b37fd50d27a1029d26716917bdfefaa245edb801fec994114089d7a79b91f633e2c5aa615d2d5a44becb0749e89f035610f4d3c60f511d
-DIST firefox-132.0.2-sv-SE.xpi 638440 BLAKE2B 68b69e3ceb831cf067c6222621f1fec31575ccd7f70d34e804e402191019bab3b0812ded170547466a504504fdf0e6156da60194a233025761ece6e379462dea SHA512 1f3a364c38f929624b2670db11dd915ae6f97192fa36a9154894ba2bd5290d0e5fa90250ae6a4a6176e13e5d02514ec3d44232fbd39a0b87ab14ccda8f1eb3cc
-DIST firefox-132.0.2-szl.xpi 530083 BLAKE2B c3944985a7130db8d9fb28ae06bedae1158c284f02b77ccca401f2ffd8a8ac4e59c82b7be8cf456ed58ff8a82a79a783cca732236cff6e9af49e5d8f02d40038 SHA512 6fc22edd0a99a15a6fa78b90bac168906577bdcc406c7c02b4c881b061379e6918ffaaea6c78be8f934c141e1b5a701a5569d6f514aa16186d786da976dcf0b4
-DIST firefox-132.0.2-ta.xpi 510826 BLAKE2B 102a02c85cb02428e4c12f4c7f36428e5f2457ba9dce37f2a2fc9aeda760a51866b3768aa826642cb35e1a8174c3d215baa73cb6945e9c059cf4f1eb97e25844 SHA512 834ff3eae172f05a72f6a8e632b4c0fb99029d83fe769db40f466aeeb05519dd86501161d30d34f795c6424fbc36c71f29ca75bac6cfd479e077cdb7b2452f72
-DIST firefox-132.0.2-te.xpi 567981 BLAKE2B 1c2b0ec6ba71f406ca34fa6ab3e7678f12309bcfc689ccf62b4ca62a21b7e9b45ac65df159b46848006528c2accae20dd20b4eced520300920cba3137bb3bd8d SHA512 aed6b7226579ccd611ef98ee925264b782db931cbadc8e98f5b0680345fe7056e47045c7ca17f00da0092d5b9d50228e6c91975c4ada1fdea2cd4df931811747
-DIST firefox-132.0.2-th.xpi 714676 BLAKE2B c6273528dc8ac0033c86603de3253b9483efc2436710f22a5b5a3a0c311623fae3b9b962f880c471428fc3f8a4fe716f08fe5610a490e209b5a6ad2007232ff7 SHA512 e9c2eed44249de46c12aad67aba36e970a15d4e72addd530d896e3320b06a1d9b5fd8619405ca01bc7c34491f21e39243ed073f98fd5d1bdd53ae40c3d575995
-DIST firefox-132.0.2-tl.xpi 537966 BLAKE2B 71f119020ddf35a11d8a9f602a04e527b874d0516cde27e8a87d0f3d524adbe66a47fbdfbc0ceacf23fc6b4faad6b4bb264c1552c4fbc00ab726e7a309ec1639 SHA512 5da537a210da86194adbe62f2b6377884fcd251000d17a1fc1a628ab4ef69e14b55f51649eb3b7e415d8c78a8120f60dfa9d610b29115b9093803abbc12b5b04
-DIST firefox-132.0.2-tr.xpi 652135 BLAKE2B 1c6642cc1830595a04397c9f95ece8f4552a2c0b556dbae20e3d1cd610389d7a3b97f03246485c2f54027021ac86edb9eb710f8037b9d7c347a93a9892ddbd49 SHA512 3b578f1e34f5ed4f3d4d32afa2b42808414c805a0f840a8d6e80feb3476ae8db30ae40c06895dd5c18ff1664f29c23f3996bdb6d626ec41abe2f61f8944cfcde
-DIST firefox-132.0.2-trs.xpi 507935 BLAKE2B b79f4f7ee138cd4a5c8134d0d309927eb4e8a9199685427eba5f8b5a1815958686a3a59eb8a799f26955c9d0df6821171e58e24cbf8bd4cc0f7f28f0928587fc SHA512 61a268485ba028a277200400b2289ac8f5b723cfb9f53ad5c8430d1d1b451288b511956f55fb2d13893a4f75eb84f4f7f7af1e9d739d7ebb19280de2ae24699c
-DIST firefox-132.0.2-uk.xpi 733096 BLAKE2B fc7b7193632bc0fb2d52074d52b5f9b60b316673af842a2a9e35b2ef24d530db0f6af02680f4db6d0e8ef66dc7b08412f205765d47af8e55e9314ce363267b50 SHA512 74cbed02db9912dee825d33c80f480e9128d2bed3a0b8905976b762f8434c987342f2491d9ea0ccfeeee124fc185d0d09c24d2bb1333bf09f0971f697fe3c511
-DIST firefox-132.0.2-ur.xpi 563845 BLAKE2B 5758ab15f1893335353a75a02cd799ba58e6d2de5258af4d7c6a2f902787cea38a22dfa2ba470e3857bb87e4a61b42f48350df58d5383b4f49f66b36d067658c SHA512 ff03745fe0ed9cf1d0b6a4a7d7704d8917b3303880707eec648f549f460bd16b71e69b5356453b7af74b63a01b424c32118186d740a289c43ee4453ed3323be3
-DIST firefox-132.0.2-uz.xpi 482433 BLAKE2B 27c4db14e7d3d1626178569c01f1628ea10f8d9946c1d3d1131eeaba58981feb49f90ab79d6bd2a0712aad52c2a662b08cd44bbd3fdb8720c7d23914be58d331 SHA512 20328412adf7b342278620a5c24ea7c2fda50e47f290be95e324a34c1db8dcd28a48440ba4fc3aa5e7f4fc9f22adbaf992476fea2618500bfbff2cee03794b03
-DIST firefox-132.0.2-vi.xpi 676879 BLAKE2B 1d83f45c7ddcc4a93b77f44a479eb8448e0d7d2ef1613425bed130d08f898e3cbdc9d39a277f7b9a4386883e2b18de76ad0349cede76f53c83fe50ac6f2c01f4 SHA512 c96b3b9e9494c732065b12554441180f5f0f673733cc3b9fb4e8685d85095a7ed9a6b2f0b5958516387a24cef241cc57f0bce065900fcdfefb867ef6d00bc629
-DIST firefox-132.0.2-xh.xpi 420611 BLAKE2B d4bcbd524706fcc5a75d94854f9890bc7ae90e81e8acf7e62443e5d81e2e5f77714e1da473a685414b2f794f34fa61bf932062500a559c0b4a71070fa4a299ff SHA512 3227ba2290d072e8d144b1cbd06b64c136a74a25e3f8e229db5a149e3a7343b23252699edaa5a0e06760d26f128ce3f43ff04c4c45ff56f8fdec4854765c95f7
-DIST firefox-132.0.2-zh-CN.xpi 676660 BLAKE2B 1887a9b7c49de2b8da5b30325b6d1b84e2b10fdddc90063cf0e84ecf39808ff0dab0ac5037456427b1c617e7d8c76bad3cafcbfc81d781be6232edf0f1d19c3f SHA512 bbbac92eec43da48674d2b693a19e8f1c839a08214971b7d90f1fc196165240cc9f1d723506146adecc4286b8b897a52332242a57c32a3e256018859169472ba
-DIST firefox-132.0.2-zh-TW.xpi 680268 BLAKE2B c421f438fec53fcc1851f076e0394a7ca5559511dd9d35da0ac85aabffa9acf57cfe00ff2174c83fe83e2a58c626bbff474591778b8ac18d0965e6524b9a07bc SHA512 65ed54c87a62ccd4253f115752f1c2d4d276156306624f2d24f010015dfbb0e26a5a18755bbb9d44124f5a0dd483a1819a72edcdd06f69b6ca67d50eefc87f0d
-DIST firefox-132.0.2.source.tar.xz 570535648 BLAKE2B d71b0e074ad2f299dc5b4291e9af012f54e52d71f029648aa4367a17227e7a9d4c22fc6ab3b834c4adc1c82e155a4cefeedce84f04045c56b03a0ca1689340a4 SHA512 9ea95d9fb1a941ac5a5b50da67e224f3ccf8c401f26cb61bb74ad7f4e1e8706d469c4b6325714f2cb9cdf50c32710377d6bca18dd65b55db2c39ef2b27a57fae
DIST firefox-133-patches-01.tar.xz 15184 BLAKE2B 45d8637de4e1102306dd7c3b905d395dbed86b35ce3594daae914b0aa79a6bb0b7e339c9972d0f5ffedda54e67ee13f8631cdac0ee3af898112f1578917a11cc SHA512 48732b11fc1a5b05d6c0ece76f3c88a16dfa48b0096555717267c3aff2c86cfce5bdb738c3c502d63f8b7236fa049cfc9b18b7c6c5bdce300d5e93c924d376cd
DIST firefox-133.0-ach.xpi 468550 BLAKE2B f43831186c2b63a701a5f82d0a6352d3171de07d480b291c3b49124a437e07075ac1590b78527bdf8bb0699d1084991a29683a8997e1c06c7b317b28d37678c5 SHA512 150daddb52ed7635091fb484679f8defd0038a6b67519bb817ba16c4bcaefd2feada7971505505be41f97a563d4d1d49d9ee5e0c50fbe36885b333600abc2b39
DIST firefox-133.0-af.xpi 421559 BLAKE2B 66732fe0f7b6ba4a02124340181e4105ef13b5b529e7588b0f94072ca85d43920c83808874d6c8431fc1bbf18869c2f3547c8c933a08e2d2625c761880024d87 SHA512 c9d1206cd565ac4044d3eb329e689b067591f5ddb50600ac748f7e768bca872dde9c34879ca91cc09df37bc7dfb38834e3725f4c7d64ec2828cbd2c2f3b2c9c2
@@ -722,11 +315,7 @@ DIST firefox-133.0-zh-TW.xpi 681645 BLAKE2B b5211fcdfd3d5b60ad1a1d925093b51123d6
DIST firefox-133.0.source.tar.xz 582165112 BLAKE2B 6c356a4d34044825e86f712b959cbfa6ee27c989c74e42b0b276ee6b169ca84b467ed5ea82f850a517694b75be104362273075c2aa6019f9d30e1be4035b3dd6 SHA512 b16f9898bee4121914caef48d4f7f44bf9d69aee168586b02bf1b4f4197844fd10179e1b63b273f52929fb348030df36328f24993cd666969da4ddc82562a90c
DIST wasi-sdk-24.0-arm64-linux.tar.gz 119660865 BLAKE2B 5067fe0d63a8be0e3466131a7f1e0a92185e09879e5256b8d12428606920fb074198d7c5b4f949466f5179852f53911333baf8fb2409068de4a9a6c4d62bbd96 SHA512 412df3d066ef4a175bc5a10353d4bf853c6aee101a024b84b2fc10c1e2a48c0dde1b7162c08a56726861a5b5b9838c05da75c5069d3454513ed862ba3f4629bc
DIST wasi-sdk-24.0-x86_64-linux.tar.gz 118879731 BLAKE2B 385dced143f463427e48839b4c9a810161b2791f0a1a335ad53b1cff9e20fd004b1c24c80443ec213f448dc31a5b1748f447569161c88ca8fc01b3bf35421aa6 SHA512 e320e1d3965324dcc435aab15e0ec3597dae914fae9634af4e7181a76609d35fd01cdca07621f39a6c894b528055e2d014ce0c1fcfe23a154343f51fb48928bc
-EBUILD firefox-115.16.1-r1.ebuild 39187 BLAKE2B 2e708bb20394605304630e3b9e12b4dbfcaf9f300d6b60a182e943f4c7f19fb5a1996cd6c4a6216965b5c04309613b0e9cfc82053642cbdb0c9c25a034aed4c2 SHA512 184aa94944271de9c19a5ed6fa6a9af60ba25c14aabff66bcac9c1025ebd161d1ca060b2c05feabefba1c79e403f26c3817f9372031673f5c266234b922557cb
-EBUILD firefox-128.4.0-r1.ebuild 41093 BLAKE2B 43a37fe67afdda79fc54958f1db81a8b6d71e37a52e3e94efa5b7ec1a99a02f21266f09c51787e002b1afad62eef5cd1ba584974f4284deb761c8e1c51321172 SHA512 0a6456a21b4aa080fb2ebba4b0bf23c4e3fb63b38cce06282b4c2e40ccaefd3b7243ecd9cae98fcfb2613b699d20c09e0eb4a52bab3a9a7d662d6cc6df55d4ac
EBUILD firefox-128.5.0.ebuild 41166 BLAKE2B 2fa95fb4f22f2b80142c47f7072bafc7506b9e5d21a6e01b7ef20df0f8f63abba1438826da381c70f842ae6e2faae4bcc93219cede3e844ab5da0607e80b734f SHA512 3f4084aded344461e751531eb49b63199731f372c061d346262124df1f0ca5c0b1a0c4878129573f95c83f9e2b387d659253e2822e8d5545424c2bf99b141161
EBUILD firefox-128.5.1.ebuild 41168 BLAKE2B 80d67ed015f16c73e4547e562f756e4b73ead4ab21ff63551a4d2bbf9c573cc56ca9227289c0f8899422215ccf22ee38f4b418ce0464c1b58a0f995b5a58e8ae SHA512 a62e90d9fc82d7193808ee831f9591267caf0769b751658ee8d0512bbec2cecd0342a60d16935e6f125856a95d4cd801a63d591b3e95b62f6686764431720265
-EBUILD firefox-132.0.1-r1.ebuild 39383 BLAKE2B 2f52e771910992bdbe38ede5448affe7674d20794b05c3fc8002e2b8f3a522d99eb26a977e744067b95232a1b5303e2ee8daa879c74d6631fd6ad2397cf3b2dd SHA512 3124afe75ea942246679488164c66c6eba4517a78cbc32774a48ffe75692a60dfd1cb801f9739d3d1197bbd77f6b089a0fb630b2575ace8e466a82274f55410f
-EBUILD firefox-132.0.2.ebuild 40534 BLAKE2B fa7cae39629d505bcfb0aa589d5c4238808185574211f6bc555aea31bb4c2a3683ca696b053a117c41699d67075f61fae8c9283a70b319b2fce02528461a931c SHA512 c1bc58356ae2639051c0c1102634644a502310bdee066fa2428cf2c3cd0f33d95a4266f5033d54222f529d9992370c496f3f3eacff2503eb5c63c069f85d787f
EBUILD firefox-133.0.ebuild 40738 BLAKE2B ab8b8490cf068b34a3d5d976176138b0932fb89bf68aba3240666aaaaef4fa996af6654f25c855d4f923e2fe6ad425923341f762f31ae2e93fff67f3fd8d9364 SHA512 64c8cabdee9cc8b0d56542e3b46bd93c159eafcc82d57858c594f93dcf18ff4980c17716d315250d38203af12232d49f5d90d4b5dd98183b2fde9e5b6b397eef
MISC metadata.xml 2785 BLAKE2B f598ed0bb1c1b4473a59f171898fb5e4d1872b175705662e8801d936b32ba609c1e2e657d235329b0fce7642ac8eb97612876244a029a5ac5b0a6cd17db153ec SHA512 a47f3e4336381bb388906ca826b09210dd20bf7a19e4395d6cedc1675b30b89b40820fe22a424abcc8e725c412f5bdc18067450198935c2edbd8c276e050d27f
diff --git a/www-client/firefox/firefox-115.16.1-r1.ebuild b/www-client/firefox/firefox-115.16.1-r1.ebuild
deleted file mode 100644
index e01a588149b5..000000000000
--- a/www-client/firefox/firefox-115.16.1-r1.ebuild
+++ /dev/null
@@ -1,1353 +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_COMPAT=(17 18)
-
-PYTHON_COMPAT=( python3_{10..11} )
-PYTHON_REQ_USE="ncurses,sqlite,ssl"
-RUST_NEEDS_LLVM=1
-
-WANT_AUTOCONF="2.1"
-
-VIRTUALX_REQUIRED="manual"
-
-MOZ_ESR=yes
-
-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 readme.gentoo-r1 rust 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}
-)
-
-DESCRIPTION="Firefox Web Browser"
-HOMEPAGE="https://www.mozilla.org/firefox"
-SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
- ${PATCH_URIS[@]}"
-S="${WORKDIR}/${PN}-${PV%_*}"
-LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
-SLOT="esr"
-KEYWORDS="amd64 arm64 ppc64 ~riscv x86"
-
-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"
-
-# Firefox-only IUSE
-IUSE+=" geckodriver +gmp-autoupdate screencast"
-
-REQUIRED_USE="|| ( X wayland )
- debug? ( !system-av1 )
- pgo? ( lto )
- wifi? ( dbus )"
-
-FF_ONLY_DEPEND="!www-client/firefox:0
- !www-client/firefox:rapid
- screencast? ( media-video/pipewire:= )
- selinux? ( sec-policy/selinux-mozilla )"
-BDEPEND="${PYTHON_DEPS}
- $(llvm_gen_dep '
- sys-devel/clang:${LLVM_SLOT}
- sys-devel/llvm:${LLVM_SLOT}
- clang? (
- sys-devel/lld:${LLVM_SLOT}
- )
- pgo? ( sys-libs/compiler-rt-sanitizers:${LLVM_SLOT}[profile] )
- ')
- app-alternatives/awk
- app-arch/unzip
- app-arch/zip
- >=dev-util/cbindgen-0.24.3
- net-libs/nodejs
- virtual/pkgconfig
- amd64? ( >=dev-lang/nasm-2.14 )
- x86? ( >=dev-lang/nasm-2.14 )
- 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="${FF_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 )
- screencast? ( media-video/pipewire:= )
- system-av1? (
- >=media-libs/dav1d-1.0.0:=
- >=media-libs/libaom-1.0.0:=
- )
- system-harfbuzz? (
- >=media-gfx/graphite2-1.3.13
- >=media-libs/harfbuzz-2.8.1:0=
- )
- system-icu? ( >=dev-libs/icu-73.1:= )
- system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
- system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] )
- system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
- system-png? ( >=media-libs/libpng-1.6.35:0=[apng] )
- system-webp? ( >=media-libs/libwebp-1.1.0:0= )
- wayland? (
- >=media-libs/libepoxy-1.5.10-r1
- x11-libs/gtk+:3[wayland]
- x11-libs/libxkbcommon[wayland]
- )
- wifi? (
- kernel_linux? (
- dev-libs/dbus-glib
- net-misc/networkmanager
- sys-apps/dbus
- )
- )
- X? (
- virtual/opengl
- x11-libs/cairo[X]
- x11-libs/gtk+:3[X]
- x11-libs/libX11
- x11-libs/libXcomposite
- x11-libs/libXdamage
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libxkbcommon[X]
- x11-libs/libXrandr
- x11-libs/libXtst
- x11-libs/libxcb:=
- )"
-RDEPEND="${COMMON_DEPEND}
- hwaccel? (
- media-video/libva-utils
- sys-apps/pciutils
- )
- jack? ( virtual/jack )
- openh264? ( media-libs/openh264:*[plugin] )"
-DEPEND="${COMMON_DEPEND}
- X? (
- x11-base/xorg-proto
- x11-libs/libICE
- x11-libs/libSM
- )"
-
-# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
-# overridden in the enviromnent (advanced hackers only)
-if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
- MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
-fi
-
-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 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!"
- 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 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
-)
-
-# Firefox-only LANGS
-MOZ_LANGS+=( ach )
-MOZ_LANGS+=( an )
-MOZ_LANGS+=( az )
-MOZ_LANGS+=( bn )
-MOZ_LANGS+=( bs )
-MOZ_LANGS+=( ca-valencia )
-MOZ_LANGS+=( eo )
-MOZ_LANGS+=( es-CL )
-MOZ_LANGS+=( es-MX )
-MOZ_LANGS+=( fa )
-MOZ_LANGS+=( ff )
-MOZ_LANGS+=( fur )
-MOZ_LANGS+=( gn )
-MOZ_LANGS+=( gu-IN )
-MOZ_LANGS+=( hi-IN )
-MOZ_LANGS+=( hy-AM )
-MOZ_LANGS+=( ia )
-MOZ_LANGS+=( km )
-MOZ_LANGS+=( kn )
-MOZ_LANGS+=( lij )
-MOZ_LANGS+=( mk )
-MOZ_LANGS+=( mr )
-MOZ_LANGS+=( my )
-MOZ_LANGS+=( ne-NP )
-MOZ_LANGS+=( oc )
-MOZ_LANGS+=( sc )
-MOZ_LANGS+=( sco )
-MOZ_LANGS+=( si )
-MOZ_LANGS+=( son )
-MOZ_LANGS+=( szl )
-MOZ_LANGS+=( ta )
-MOZ_LANGS+=( te )
-MOZ_LANGS+=( tl )
-MOZ_LANGS+=( trs )
-MOZ_LANGS+=( ur )
-MOZ_LANGS+=( xh )
-
-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
- rust_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
-
- CONFIG_CHECK="~SECCOMP"
- WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
- linux-info_pkg_setup
-}
-
-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"
- elif use arm64 ; then
- export RUST_TARGET="aarch64-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=browser
- mozconfig_add_options_ac '' --enable-project=browser
-
- # 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-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
-
- mozconfig_use_enable dbus
- mozconfig_use_enable libproxy
-
- use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
-
- mozconfig_use_enable geckodriver
-
- 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}/browser/defaults/preferences"
- 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-r2 \
- >>"${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
-
- if ! use gmp-autoupdate ; then
- local plugin
- for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
- einfo "Disabling auto-update for ${plugin} plugin ..."
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
- pref("media.${plugin}.autoupdate", false);
- EOF
- done
- 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 geckodriver
- if use geckodriver ; then
- einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..."
- pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
- exeinto "${MOZILLA_FIVE_HOME}"
- doexe "${BUILD_DIR}"/dist/bin/geckodriver
-
- dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
- fi
-
- # Install icons
- local icon_srcdir="${S}/browser/branding/official"
- local icon_symbolic_file="${FILESDIR}/icon/firefox-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}-r3.desktop"
- local desktop_filename="${PN}-esr.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
-
- readme.gentoo_create_doc
-}
-
-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 gmp-autoupdate ; then
- elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
- elog "installing into new profiles:"
- local plugin
- for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
- elog "\t ${plugin}"
- done
- elog
- fi
-
- 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
-
- # 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
-
- readme.gentoo_print_elog
-
- optfeature_header "Optional programs for extra features:"
- optfeature "desktop notifications" x11-libs/libnotify
- optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas
-
- if use hwaccel && has_version "x11-drivers/nvidia-drivers"; then
- optfeature "hardware acceleration with NVIDIA cards" media-libs/nvidia-vaapi-driver
- fi
-
- if ! has_version "sys-libs/glibc"; then
- elog
- elog "glibc not found! You won't be able to play DRM content."
- elog "See Gentoo bug #910309 or upstream bug #1843683."
- elog
- fi
-
- if use geckodriver ; then
- ewarn "You have enabled the 'geckodriver' USE flag. Geckodriver is now"
- ewarn "packaged separately as net-misc/geckodriver and the use flag will be"
- ewarn "dropped from main Firefox package by Firefox 128.0 release."
- fi
-}
diff --git a/www-client/firefox/firefox-128.4.0-r1.ebuild b/www-client/firefox/firefox-128.4.0-r1.ebuild
deleted file mode 100644
index 38db785016b5..000000000000
--- a/www-client/firefox/firefox-128.4.0-r1.ebuild
+++ /dev/null
@@ -1,1353 +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-04.tar.xz"
-
-LLVM_COMPAT=( 17 18 19 )
-
-PYTHON_COMPAT=( python3_{10..12} )
-PYTHON_REQ_USE="ncurses,sqlite,ssl"
-
-# This will also filter rust versions that don't match LLVM_COMPAT in the non-clang path; this is fine.
-RUST_NEEDS_LLVM=1
-# If not building with clang we need at least rust 1.76
-RUST_MIN_VER=1.77.1
-
-WANT_AUTOCONF="2.1"
-
-VIRTUALX_REQUIRED="manual"
-
-MOZ_ESR=yes
-
-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"
- HOMEPAGE="https://www.mozilla.org/firefox https://www.mozilla.org/firefox/enterprise/"
- SLOT="esr"
-else
- HOMEPAGE="https://www.mozilla.org/firefox"
- SLOT="rapid"
-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 readme.gentoo-r1 rust 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}
-)
-
-DESCRIPTION="Firefox Web Browser"
-SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
- ${PATCH_URIS[@]}"
-S="${WORKDIR}/${PN}-${PV%_*}"
-LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
-KEYWORDS="amd64 arm64 ~ppc64 ~riscv ~x86"
-
-IUSE="clang dbus debug eme-free hardened hwaccel jack +jumbo-build libproxy openh264 pgo"
-IUSE+=" pulseaudio selinux sndio +system-av1 +system-harfbuzz +system-icu +system-jpeg"
-IUSE+=" +system-libevent +system-libvpx system-png +system-webp +telemetry wayland wifi +X"
-
-# Firefox-only IUSE
-IUSE+=" +gmp-autoupdate gnome-shell"
-
-REQUIRED_USE="|| ( X wayland )
- debug? ( !system-av1 )
- wayland? ( dbus )
- wifi? ( dbus )"
-
-FF_ONLY_DEPEND="!www-client/firefox:0
- selinux? ( sec-policy/selinux-mozilla )"
-BDEPEND="${PYTHON_DEPS}
- $(llvm_gen_dep '
- sys-devel/clang:${LLVM_SLOT}
- sys-devel/llvm:${LLVM_SLOT}
- clang? (
- sys-devel/lld:${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
- 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="${FF_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-73.1:= )
- system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1:= )
- system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] )
- system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
- system-png? ( >=media-libs/libpng-1.6.35:0=[apng] )
- system-webp? ( >=media-libs/libwebp-1.1.0:0= )
- wayland? (
- >=media-libs/libepoxy-1.5.10-r1
- x11-libs/gtk+:3[wayland]
- )
- 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}
- hwaccel? (
- media-video/libva-utils
- sys-apps/pciutils
- )
- jack? ( virtual/jack )
- openh264? ( media-libs/openh264:*[plugin] )"
-DEPEND="${COMMON_DEPEND}
- X? (
- x11-base/xorg-proto
- x11-libs/libICE
- x11-libs/libSM
- )"
-
-# ESR and rapid dependencies.
-if [[ -n ${MOZ_ESR} ]] ; then
- RDEPEND+=" !www-client/firefox:rapid"
-else
- RDEPEND+=" !www-client/firefox:esr"
-fi
-
-# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
-# overridden in the enviromnent (advanced hackers only)
-if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
- MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
-fi
-
-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 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 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
-)
-
-# Firefox-only LANGS
-MOZ_LANGS+=( ach )
-MOZ_LANGS+=( an )
-MOZ_LANGS+=( az )
-MOZ_LANGS+=( bn )
-MOZ_LANGS+=( bs )
-MOZ_LANGS+=( ca-valencia )
-MOZ_LANGS+=( eo )
-MOZ_LANGS+=( es-CL )
-MOZ_LANGS+=( es-MX )
-MOZ_LANGS+=( fa )
-MOZ_LANGS+=( ff )
-MOZ_LANGS+=( fur )
-MOZ_LANGS+=( gn )
-MOZ_LANGS+=( gu-IN )
-MOZ_LANGS+=( hi-IN )
-MOZ_LANGS+=( hy-AM )
-MOZ_LANGS+=( ia )
-MOZ_LANGS+=( km )
-MOZ_LANGS+=( kn )
-MOZ_LANGS+=( lij )
-MOZ_LANGS+=( mk )
-MOZ_LANGS+=( mr )
-MOZ_LANGS+=( my )
-MOZ_LANGS+=( ne-NP )
-MOZ_LANGS+=( oc )
-MOZ_LANGS+=( sc )
-MOZ_LANGS+=( sco )
-MOZ_LANGS+=( si )
-MOZ_LANGS+=( skr )
-MOZ_LANGS+=( son )
-MOZ_LANGS+=( szl )
-MOZ_LANGS+=( ta )
-MOZ_LANGS+=( te )
-MOZ_LANGS+=( tl )
-MOZ_LANGS+=( trs )
-MOZ_LANGS+=( ur )
-MOZ_LANGS+=( xh )
-
-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 || tc-is-lto || use debug ; then
- CHECKREQS_DISK_BUILD="13500M"
- else
- CHECKREQS_DISK_BUILD="6600M"
- fi
-
- check-reqs_pkg_pretend
- fi
-}
-
-pkg_setup() {
-
- # Get LTO from environment; export after this phase for use in src_configure (etc)
- use_lto=no
-
- if [[ ${MERGE_TYPE} != binary ]] ; then
-
- if tc-is-lto; then
- use_lto=yes
- # LTO is handled via configure
- filter-lto
- fi
-
- if use pgo ; then
- if [[ ${use_lto} == "no" ]]; then
- elog "Building ${PN} with USE=pgo requires LTO, however this was not detected in your environment."
- elog "Forcing LTO, however it is recommended to enable LTO explicitly."
- use_lto=yes
- fi
- if ! has userpriv ${FEATURES} ; then
- eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
- fi
- fi
-
- if [[ ${use_lto} = yes ]]; then
- # -Werror=lto-type-mismatch -Werror=odr are going to fail with GCC,
- # bmo#1516758, bgo#942288
- filter-flags -Werror=lto-type-mismatch -Werror=odr
- fi
-
- # Ensure we have enough disk space to compile
- if use pgo || [[ ${use_lto} == "yes" ]] || use debug ; then
- CHECKREQS_DISK_BUILD="13500M"
- else
- CHECKREQS_DISK_BUILD="6400M"
- fi
-
- check-reqs_pkg_setup
-
- llvm-r1_pkg_setup
- rust_pkg_setup
-
- if use clang && [[ ${use_lto} == "yes" ]] && 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 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
-
- export use_lto
-
- CONFIG_CHECK="~SECCOMP"
- WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
- linux-info_pkg_setup
-}
-
-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} == "yes" ]]; 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"
- elif use arm64 ; then
- export RUST_TARGET="aarch64-unknown-linux-musl"
- elif use ppc64 ; then
- export RUST_TARGET="powerpc64le-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
-
- # Respect choice for "jumbo-build"
- # Changing the value for FILES_PER_UNIFIED_FILE may not work, see #905431
- if [[ -n ${FILES_PER_UNIFIED_FILE} ]] && use jumbo-build; then
- local my_files_per_unified_file=${FILES_PER_UNIFIED_FILE:=16}
- elog ""
- elog "jumbo-build defaults modified to ${my_files_per_unified_file}."
- elog "if you get a build failure, try undefining FILES_PER_UNIFIED_FILE,"
- elog "if that fails try -jumbo-build before opening a bug report."
- elog ""
-
- sed -i -e "s/\"FILES_PER_UNIFIED_FILE\", 16/\"FILES_PER_UNIFIED_FILE\", "${my_files_per_unified_file}"/" \
- python/mozbuild/mozbuild/frontend/data.py ||
- die "Failed to adjust FILES_PER_UNIFIED_FILE in python/mozbuild/mozbuild/frontend/data.py"
- sed -i -e "s/FILES_PER_UNIFIED_FILE = 6/FILES_PER_UNIFIED_FILE = "${my_files_per_unified_file}"/" \
- js/src/moz.build ||
- die "Failed to adjust FILES_PER_UNIFIED_FILE in js/src/moz.build"
- fi
-
- # 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=browser
- mozconfig_add_options_ac '' --enable-project=browser
-
- # Set Gentoo defaults
- if use telemetry; then
- export MOZILLA_OFFICIAL=1
- fi
-
- 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-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 ; 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, since it's not activated automatically via "known arches" list.
- # Update 128.1.0: Disable jit on riscv (this line can be blanked to disable by default),
- # bgo#937867.
- use riscv && mozconfig_add_options_ac 'Disable JIT for RISC-V 64' --disable-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
-
- 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
-
- ! use jumbo-build && mozconfig_add_options_ac '--disable-unified-build' --disable-unified-build
-
- 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
-
- if [[ ${use_lto} == "yes" ]]; 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"
-
- # 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"
-
- if ! use telemetry; then
- mozconfig_add_options_mk '-telemetry setting' "MOZ_CRASHREPORTER=0"
- mozconfig_add_options_mk '-telemetry setting' "MOZ_DATA_REPORTING=0"
- mozconfig_add_options_mk '-telemetry setting' "MOZ_SERVICES_HEALTHREPORT=0"
- mozconfig_add_options_mk '-telemetry setting' "MOZ_TELEMETRY_REPORTING=0"
- 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} == "yes" ]]; 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}/browser/defaults/preferences"
- 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-r2 \
- >>"${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
-
- # Install the vaapitest binary on supported arches (122.0 supports all platforms, bmo#1865969)
- exeinto "${MOZILLA_FIVE_HOME}"
- doexe "${BUILD_DIR}"/dist/bin/vaapitest
-
- # Install the v4l2test on supported arches (+ arm, + riscv64 when keyworded)
- if use arm64 ; then
- exeinto "${MOZILLA_FIVE_HOME}"
- doexe "${BUILD_DIR}"/dist/bin/v4l2test
- fi
- fi
-
- if ! use gmp-autoupdate ; then
- local plugin
- for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
- einfo "Disabling auto-update for ${plugin} plugin ..."
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
- pref("media.${plugin}.autoupdate", false);
- EOF
- done
- 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
-
- # Add telemetry config prefs, just in case something happens in future and telemetry build
- # options stop working.
- if ! use telemetry ; then
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set telemetry prefs"
- sticky_pref("toolkit.telemetry.dap_enabled", false);
- pref("toolkit.telemetry.dap_helper", "");
- pref("toolkit.telemetry.dap_leader", "");
- 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}/browser/branding/official"
- local icon_symbolic_file="${FILESDIR}/icon/firefox-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}-r3.desktop"
- local exec_command="${PN}"
- local icon="${PN}"
- local use_wayland="false"
-
- if [[ -n ${MOZ_ESR} ]] ; then
- local desktop_filename="${PN}-esr.desktop"
- else
- local desktop_filename="${PN}.desktop"
- fi
-
- 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
-
- if use gnome-shell ; then
- # Install search provider for Gnome
- insinto /usr/share/gnome-shell/search-providers/
- doins browser/components/shell/search-provider-files/org.mozilla.firefox.search-provider.ini
-
- insinto /usr/share/dbus-1/services/
- doins browser/components/shell/search-provider-files/org.mozilla.firefox.SearchProvider.service
-
- # Toggle between rapid and esr desktop file names
- sed -e "s/firefox.desktop/${desktop_filename}/g" \
- -i "${ED}/usr/share/gnome-shell/search-providers/org.mozilla.firefox.search-provider.ini" ||
- die "Failed to sed org.mozilla.firefox.search-provider.ini file."
-
- # Make the dbus service aware of a previous session, bgo#939196
- sed -e \
- "s/Exec=\/usr\/bin\/firefox/Exec=\/usr\/$(get_libdir)\/firefox\/firefox --dbus-service \/usr\/bin\/firefox/g" \
- -i "${ED}/usr/share/dbus-1/services/org.mozilla.firefox.SearchProvider.service" ||
- die "Failed to sed org.mozilla.firefox.SearchProvider.service dbus file"
-
- # Update prefs to enable Gnome search provider
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to enable gnome-search-provider via prefs"
- pref("browser.gnome-search-provider.enabled", true);
- EOF
- fi
-
- # 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:@DEFAULT_WAYLAND@:${use_wayland}:" \
- "${ED}/usr/bin/${PN}" || die
-
- readme.gentoo_create_doc
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
-
- if ! use gmp-autoupdate ; then
- elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
- elog "installing into new profiles:"
- local plugin
- for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
- elog "\t ${plugin}"
- done
- elog
- 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
-
- readme.gentoo_print_elog
-
- optfeature_header "Optional programs for extra features:"
- optfeature "desktop notifications" x11-libs/libnotify
- optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas
- optfeature "screencasting with pipewire" sys-apps/xdg-desktop-portal
- if use hwaccel && has_version "x11-drivers/nvidia-drivers"; then
- optfeature "hardware acceleration with NVIDIA cards" media-libs/nvidia-vaapi-driver
- fi
-
- if ! has_version "sys-libs/glibc"; then
- elog
- elog "glibc not found! You won't be able to play DRM content."
- elog "See Gentoo bug #910309 or upstream bug #1843683."
- elog
- fi
-}
diff --git a/www-client/firefox/firefox-132.0.1-r1.ebuild b/www-client/firefox/firefox-132.0.1-r1.ebuild
deleted file mode 100644
index 2a50427a7c44..000000000000
--- a/www-client/firefox/firefox-132.0.1-r1.ebuild
+++ /dev/null
@@ -1,1329 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-FIREFOX_PATCHSET="firefox-132-patches-02.tar.xz"
-
-LLVM_COMPAT=( 17 18 19 )
-# This will also filter rust versions that don't match LLVM_COMPAT in the non-clang path; this is fine.
-RUST_NEEDS_LLVM=1
-# If not building with clang we need at least rust 1.76
-RUST_MIN_VER=1.77.1
-
-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"
- HOMEPAGE="https://www.mozilla.org/firefox https://www.mozilla.org/firefox/enterprise/"
- SLOT="esr"
-else
- HOMEPAGE="https://www.mozilla.org/firefox"
- SLOT="rapid"
-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 rust readme.gentoo-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}
-)
-
-DESCRIPTION="Firefox Web Browser"
-SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
- ${PATCH_URIS[@]}"
-S="${WORKDIR}/${PN}-${PV%_*}"
-LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
-
-IUSE="clang dbus debug eme-free hardened hwaccel jack +jumbo-build libproxy openh264 pgo"
-IUSE+=" pulseaudio sndio selinux +system-av1 +system-harfbuzz +system-icu +system-jpeg"
-IUSE+=" +system-jpeg +system-libevent +system-libvpx system-png +system-webp +telemetry valgrind"
-IUSE+=" wayland wifi +X"
-
-# Firefox-only IUSE
-IUSE+=" +gmp-autoupdate gnome-shell"
-
-REQUIRED_USE="|| ( X wayland )
- debug? ( !system-av1 )
- wayland? ( dbus )
- wifi? ( dbus )
-"
-
-FF_ONLY_DEPEND="!www-client/firefox:0
- selinux? ( sec-policy/selinux-mozilla )"
-BDEPEND="${PYTHON_DEPS}
- $(llvm_gen_dep '
- sys-devel/clang:${LLVM_SLOT}
- sys-devel/llvm:${LLVM_SLOT}
- clang? (
- sys-devel/lld:${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
- 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="${FF_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.105
- >=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-73.1:= )
- system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1:= )
- system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] )
- system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
- system-png? ( >=media-libs/libpng-1.6.35:0=[apng] )
- system-webp? ( >=media-libs/libwebp-1.1.0:0= )
- valgrind? ( dev-debug/valgrind )
- 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}
- hwaccel? (
- media-video/libva-utils
- sys-apps/pciutils
- )
- jack? ( virtual/jack )
- openh264? ( media-libs/openh264:*[plugin] )"
-DEPEND="${COMMON_DEPEND}
- X? (
- x11-base/xorg-proto
- x11-libs/libICE
- x11-libs/libSM
- )"
-
-# ESR and rapid dependencies.
-if [[ -n ${MOZ_ESR} ]] ; then
- RDEPEND+=" !www-client/firefox:rapid"
-else
- RDEPEND+=" !www-client/firefox:esr"
-fi
-
-# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
-# overridden in the enviromnent (advanced hackers only)
-if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
- MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
-fi
-
-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 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 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
-)
-
-# Firefox-only LANGS
-MOZ_LANGS+=( ach )
-MOZ_LANGS+=( an )
-MOZ_LANGS+=( az )
-MOZ_LANGS+=( bn )
-MOZ_LANGS+=( bs )
-MOZ_LANGS+=( ca-valencia )
-MOZ_LANGS+=( eo )
-MOZ_LANGS+=( es-CL )
-MOZ_LANGS+=( es-MX )
-MOZ_LANGS+=( fa )
-MOZ_LANGS+=( ff )
-MOZ_LANGS+=( fur )
-MOZ_LANGS+=( gn )
-MOZ_LANGS+=( gu-IN )
-MOZ_LANGS+=( hi-IN )
-MOZ_LANGS+=( hy-AM )
-MOZ_LANGS+=( ia )
-MOZ_LANGS+=( km )
-MOZ_LANGS+=( kn )
-MOZ_LANGS+=( lij )
-MOZ_LANGS+=( mk )
-MOZ_LANGS+=( mr )
-MOZ_LANGS+=( my )
-MOZ_LANGS+=( ne-NP )
-MOZ_LANGS+=( oc )
-MOZ_LANGS+=( sc )
-MOZ_LANGS+=( sco )
-MOZ_LANGS+=( si )
-MOZ_LANGS+=( skr )
-MOZ_LANGS+=( son )
-MOZ_LANGS+=( szl )
-MOZ_LANGS+=( ta )
-MOZ_LANGS+=( te )
-MOZ_LANGS+=( tl )
-MOZ_LANGS+=( trs )
-MOZ_LANGS+=( ur )
-MOZ_LANGS+=( xh )
-
-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 || tc-is-lto || use debug ; then
- CHECKREQS_DISK_BUILD="13500M"
- else
- CHECKREQS_DISK_BUILD="6600M"
- fi
-
- check-reqs_pkg_pretend
- fi
-}
-
-pkg_setup() {
-
- # Get LTO from environment; export after this phase for use in src_configure (etc)
- use_lto=no
-
- if [[ ${MERGE_TYPE} != binary ]] ; then
-
- if tc-is-lto; then
- use_lto=yes
- # LTO is handled via configure
- filter-lto
- fi
-
- if use pgo ; then
- if [[ ${use_lto} == "no" ]] ; then
- elog "Building ${PN} with USE=pgo requires LTO, however this was not detected in your environment."
- elog "Forcing LTO, however it is recommended to enable LTO explicitly."
- use_lto=yes
- fi
- if ! has userpriv ${FEATURES} ; then
- eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
- fi
- fi
-
- if [[ ${use_lto} = yes ]]; then
- # -Werror=lto-type-mismatch -Werror=odr are going to fail with GCC,
- # bmo#1516758, bgo#942288
- filter-flags -Werror=lto-type-mismatch -Werror=odr
- fi
-
- # Ensure we have enough disk space to compile
- if [[ ${use_lto} == "yes" ]] || use pgo || use debug ; then
- CHECKREQS_DISK_BUILD="13500M"
- else
- CHECKREQS_DISK_BUILD="6400M"
- fi
-
- check-reqs_pkg_setup
- llvm-r1_pkg_setup
- rust_pkg_setup
- 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
-
- export use_lto
-
- CONFIG_CHECK="~SECCOMP"
- WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
- linux-info_pkg_setup
-}
-
-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} == "yes" ]]; 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"
- elif use arm64 ; then
- export RUST_TARGET="aarch64-unknown-linux-musl"
- elif use ppc64 ; then
- export RUST_TARGET="powerpc64le-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"
-
- 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-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
-
- # Respect choice for "jumbo-build"
- # Changing the value for FILES_PER_UNIFIED_FILE may not work, see #905431
- if [[ -n ${FILES_PER_UNIFIED_FILE} ]] && use jumbo-build; then
- local my_files_per_unified_file=${FILES_PER_UNIFIED_FILE:=16}
- elog ""
- elog "jumbo-build defaults modified to ${my_files_per_unified_file}."
- elog "if you get a build failure, try undefining FILES_PER_UNIFIED_FILE,"
- elog "if that fails try -jumbo-build before opening a bug report."
- elog ""
-
- sed -i -e "s/\"FILES_PER_UNIFIED_FILE\", 16/\"FILES_PER_UNIFIED_FILE\", "${my_files_per_unified_file}"/" \
- python/mozbuild/mozbuild/frontend/data.py ||
- die "Failed to adjust FILES_PER_UNIFIED_FILE in python/mozbuild/mozbuild/frontend/data.py"
- sed -i -e "s/FILES_PER_UNIFIED_FILE = 6/FILES_PER_UNIFIED_FILE = "${my_files_per_unified_file}"/" \
- js/src/moz.build ||
- die "Failed to adjust FILES_PER_UNIFIED_FILE in js/src/moz.build"
- fi
-
- # 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=browser
- mozconfig_add_options_ac '' --enable-project=browser
-
- # Set Gentoo defaults
- if use telemetry; then
- export MOZILLA_OFFICIAL=1
- fi
-
- mozconfig_add_options_ac 'Gentoo default' \
- --allow-addon-sideload \
- --disable-cargo-incremental \
- --disable-crashreporter \
- --disable-disk-remnant-avoidance \
- --disable-geckodriver \
- --disable-install-strip \
- --disable-legacy-profile-creation \
- --disable-parental-controls \
- --disable-strip \
- --disable-tests \
- --disable-updater \
- --disable-wmf \
- --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 ; 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
- elif use valgrind; then
- mozconfig_add_options_ac 'valgrind requirement' --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
-
- mozconfig_use_enable dbus
- mozconfig_use_enable libproxy
- mozconfig_use_enable valgrind
-
- 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
-
- ! use jumbo-build && mozconfig_add_options_ac '--disable-unified-build' --disable-unified-build
-
- 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
-
- if [[ ${use_lto} == "yes" ]] ; 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
-
- if use valgrind; then
- mozconfig_add_options_ac 'valgrind requirement' --disable-jemalloc
- fi
-
- # System-av1 fix
- use system-av1 && append-ldflags "-Wl,--undefined-version"
-
- # 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"
-
- if ! use telemetry; then
- mozconfig_add_options_mk '-telemetry setting' "MOZ_CRASHREPORTER=0"
- mozconfig_add_options_mk '-telemetry setting' "MOZ_DATA_REPORTING=0"
- mozconfig_add_options_mk '-telemetry setting' "MOZ_SERVICES_HEALTHREPORT=0"
- mozconfig_add_options_mk '-telemetry setting' "MOZ_TELEMETRY_REPORTING=0"
- 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
-
- if use valgrind; then
- sed -i -e 's/--enable-optimize=-O[0-9s]/--enable-optimize="-g -O2"/' .mozconfig || die
- fi
-
- ./mach configure || die
-}
-
-src_compile() {
- local virtx_cmd=
-
- if [[ ${use_lto} == "yes" ]] && tc-ld-is-mold; 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}/browser/defaults/preferences"
- 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-r2 \
- >>"${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
-
- # Install the vaapitest binary on supported arches (122.0 supports all platforms, bmo#1865969)
- exeinto "${MOZILLA_FIVE_HOME}"
- doexe "${BUILD_DIR}"/dist/bin/vaapitest
-
- # Install the v4l2test on supported arches (+ arm, + riscv64 when keyworded)
- if use arm64 ; then
- exeinto "${MOZILLA_FIVE_HOME}"
- doexe "${BUILD_DIR}"/dist/bin/v4l2test
- fi
- fi
-
- if ! use gmp-autoupdate ; then
- local plugin
- for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
- einfo "Disabling auto-update for ${plugin} plugin ..."
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
- pref("media.${plugin}.autoupdate", false);
- EOF
- done
- 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
-
- # Add telemetry config prefs, just in case something happens in future and telemetry build
- # options stop working.
- if ! use telemetry ; then
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set telemetry prefs"
- sticky_pref("toolkit.telemetry.dap_enabled", false);
- pref("toolkit.telemetry.dap_helper", "");
- pref("toolkit.telemetry.dap_leader", "");
- 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}/browser/branding/official"
- local icon_symbolic_file="${FILESDIR}/icon/firefox-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}-r3.desktop"
- local exec_command="${PN}"
- local icon="${PN}"
- local use_wayland="false"
-
- if [[ -n ${MOZ_ESR} ]] ; then
- local desktop_filename="${PN}-esr.desktop"
- else
- local desktop_filename="${PN}.desktop"
- fi
-
- 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
-
- if use gnome-shell ; then
- # Install search provider for Gnome
- insinto /usr/share/gnome-shell/search-providers/
- doins browser/components/shell/search-provider-files/org.mozilla.firefox.search-provider.ini
-
- insinto /usr/share/dbus-1/services/
- doins browser/components/shell/search-provider-files/org.mozilla.firefox.SearchProvider.service
-
- # Toggle between rapid and esr desktop file names
- sed -e "s/firefox.desktop/${desktop_filename}/g" \
- -i "${ED}/usr/share/gnome-shell/search-providers/org.mozilla.firefox.search-provider.ini" ||
- die "Failed to sed org.mozilla.firefox.search-provider.ini file."
-
- # Make the dbus service aware of a previous session, bgo#939196
- sed -e \
- "s/Exec=\/usr\/bin\/firefox/Exec=\/usr\/$(get_libdir)\/firefox\/firefox --dbus-service \/usr\/bin\/firefox/g" \
- -i "${ED}/usr/share/dbus-1/services/org.mozilla.firefox.SearchProvider.service" ||
- die "Failed to sed org.mozilla.firefox.SearchProvider.service dbus file"
-
- # Update prefs to enable Gnome search provider
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to enable gnome-search-provider via prefs"
- pref("browser.gnome-search-provider.enabled", true);
- EOF
- fi
-
- # 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:@DEFAULT_WAYLAND@:${use_wayland}:" \
- "${ED}/usr/bin/${PN}" || die
-
- readme.gentoo_create_doc
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
-
- if ! use gmp-autoupdate ; then
- elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
- elog "installing into new profiles:"
- local plugin
- for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
- elog "\t ${plugin}"
- done
- elog
- 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
-
- readme.gentoo_print_elog
-
- optfeature_header "Optional programs for extra features:"
- optfeature "desktop notifications" x11-libs/libnotify
- optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas
- optfeature "screencasting with pipewire" sys-apps/xdg-desktop-portal
- if use hwaccel && has_version "x11-drivers/nvidia-drivers"; then
- optfeature "hardware acceleration with NVIDIA cards" media-libs/nvidia-vaapi-driver
- fi
-
- if ! has_version "sys-libs/glibc"; then
- elog
- elog "glibc not found! You won't be able to play DRM content."
- elog "See Gentoo bug #910309 or upstream bug #1843683."
- elog
- fi
-}
diff --git a/www-client/firefox/firefox-132.0.2.ebuild b/www-client/firefox/firefox-132.0.2.ebuild
deleted file mode 100644
index a4cb786aea1e..000000000000
--- a/www-client/firefox/firefox-132.0.2.ebuild
+++ /dev/null
@@ -1,1369 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-FIREFOX_PATCHSET="firefox-132-patches-04.tar.xz"
-
-LLVM_COMPAT=( 17 18 19 )
-
-# This will also filter rust versions that don't match LLVM_COMPAT in the non-clang path; this is fine.
-RUST_NEEDS_LLVM=1
-
-# If not building with clang we need at least rust 1.76
-RUST_MIN_VER=1.77.1
-
-PYTHON_COMPAT=( python3_{10..12} )
-PYTHON_REQ_USE="ncurses,sqlite,ssl"
-
-WANT_AUTOCONF="2.1"
-
-VIRTUALX_REQUIRED="manual"
-
-# Information about the bundled wasm toolchain from
-# https://github.com/WebAssembly/wasi-sdk/
-WASI_SDK_VER=24.0
-WASI_SDK_LLVM_VER=18
-
-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"
- HOMEPAGE="https://www.mozilla.org/firefox https://www.mozilla.org/firefox/enterprise/"
- SLOT="esr"
-else
- HOMEPAGE="https://www.mozilla.org/firefox"
- SLOT="rapid"
-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 rust readme.gentoo-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}
-)
-
-DESCRIPTION="Firefox Web Browser"
-SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
- ${PATCH_URIS[@]}
- wasm? (
- amd64? ( https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-${WASI_SDK_VER/.*/}/wasi-sdk-${WASI_SDK_VER}-x86_64-linux.tar.gz )
- arm64? ( https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-${WASI_SDK_VER/.*/}/wasi-sdk-${WASI_SDK_VER}-arm64-linux.tar.gz )
- )"
-
-S="${WORKDIR}/${PN}-${PV%_*}"
-LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
-
-IUSE="clang dbus debug eme-free hardened hwaccel jack +jumbo-build libproxy openh264 pgo"
-IUSE+=" pulseaudio sndio selinux +system-av1 +system-harfbuzz +system-icu +system-jpeg"
-IUSE+=" +system-jpeg +system-libevent +system-libvpx system-png +system-webp valgrind wayland"
-IUSE+=" wifi +X"
-
-# Firefox-only IUSE
-IUSE+=" +gmp-autoupdate gnome-shell +telemetry wasm"
-
-REQUIRED_USE="|| ( X wayland )
- debug? ( !system-av1 )
- wayland? ( dbus )
- wifi? ( dbus )
-"
-
-FF_ONLY_DEPEND="!www-client/firefox:0
- selinux? ( sec-policy/selinux-mozilla )"
-BDEPEND="${PYTHON_DEPS}
- $(llvm_gen_dep '
- sys-devel/clang:${LLVM_SLOT}
- sys-devel/llvm:${LLVM_SLOT}
- clang? (
- sys-devel/lld:${LLVM_SLOT}
- pgo? ( sys-libs/compiler-rt-sanitizers:${LLVM_SLOT}[profile] )
- )
- wasm? ( sys-devel/lld:${LLVM_SLOT} )
- ')
- app-alternatives/awk
- app-arch/unzip
- app-arch/zip
- >=dev-util/cbindgen-0.26.0
- net-libs/nodejs
- virtual/pkgconfig
- 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="${FF_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.105
- >=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-73.1:= )
- system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1:= )
- system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] )
- system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
- system-png? ( >=media-libs/libpng-1.6.35:0=[apng] )
- system-webp? ( >=media-libs/libwebp-1.1.0:0= )
- valgrind? ( dev-debug/valgrind )
- 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}
- hwaccel? (
- media-video/libva-utils
- sys-apps/pciutils
- )
- jack? ( virtual/jack )
- openh264? ( media-libs/openh264:*[plugin] )"
-DEPEND="${COMMON_DEPEND}
- X? (
- x11-base/xorg-proto
- x11-libs/libICE
- x11-libs/libSM
- )"
-
-# ESR and rapid dependencies.
-if [[ -n ${MOZ_ESR} ]] ; then
- RDEPEND+=" !www-client/firefox:rapid"
-else
- RDEPEND+=" !www-client/firefox:esr"
-fi
-
-# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
-# overridden in the enviromnent (advanced hackers only)
-if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
- MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
-fi
-
-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
- 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
-
- einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
-}
-
-MOZ_LANGS=(
- af ar ast be bg br ca cak cs cy da de dsb
- el en-CA en-GB en-US es-AR es-ES et eu
- fi fr fy-NL ga-IE gd gl he hr hsb hu
- id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO
- pa-IN pl pt-BR pt-PT rm ro ru
- sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW
-)
-
-# Firefox-only LANGS
-MOZ_LANGS+=( ach )
-MOZ_LANGS+=( an )
-MOZ_LANGS+=( az )
-MOZ_LANGS+=( bn )
-MOZ_LANGS+=( bs )
-MOZ_LANGS+=( ca-valencia )
-MOZ_LANGS+=( eo )
-MOZ_LANGS+=( es-CL )
-MOZ_LANGS+=( es-MX )
-MOZ_LANGS+=( fa )
-MOZ_LANGS+=( ff )
-MOZ_LANGS+=( fur )
-MOZ_LANGS+=( gn )
-MOZ_LANGS+=( gu-IN )
-MOZ_LANGS+=( hi-IN )
-MOZ_LANGS+=( hy-AM )
-MOZ_LANGS+=( ia )
-MOZ_LANGS+=( km )
-MOZ_LANGS+=( kn )
-MOZ_LANGS+=( lij )
-MOZ_LANGS+=( mk )
-MOZ_LANGS+=( mr )
-MOZ_LANGS+=( my )
-MOZ_LANGS+=( ne-NP )
-MOZ_LANGS+=( oc )
-MOZ_LANGS+=( sc )
-MOZ_LANGS+=( sco )
-MOZ_LANGS+=( si )
-MOZ_LANGS+=( skr )
-MOZ_LANGS+=( son )
-MOZ_LANGS+=( szl )
-MOZ_LANGS+=( ta )
-MOZ_LANGS+=( te )
-MOZ_LANGS+=( tl )
-MOZ_LANGS+=( trs )
-MOZ_LANGS+=( ur )
-MOZ_LANGS+=( xh )
-
-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 debug ; then
- CHECKREQS_DISK_BUILD="14300M"
- elif tc-is-lto ; then
- CHECKREQS_DISK_BUILD="10600M"
- else
- CHECKREQS_DISK_BUILD="6800M"
- fi
-
- check-reqs_pkg_pretend
- fi
-}
-
-pkg_setup() {
-
- # Get LTO from environment; export after this phase for use in src_configure (etc)
- use_lto=no
-
- if [[ ${MERGE_TYPE} != binary ]] ; then
-
- if tc-is-lto; then
- use_lto=yes
- # LTO is handled via configure
- filter-lto
- fi
-
- if use pgo ; then
- if ! has userpriv ${FEATURES} ; then
- eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
- fi
- fi
-
- if [[ ${use_lto} = yes ]]; then
- # -Werror=lto-type-mismatch -Werror=odr are going to fail with GCC,
- # bmo#1516758, bgo#942288
- filter-flags -Werror=lto-type-mismatch -Werror=odr
- fi
-
- # Ensure we have enough disk space to compile
- if use pgo || use debug ; then
- CHECKREQS_DISK_BUILD="14300M"
- elif [[ ${use_lto} == "yes" ]] ; then
- CHECKREQS_DISK_BUILD="10600M"
- else
- CHECKREQS_DISK_BUILD="6800M"
- fi
-
- check-reqs_pkg_setup
- llvm-r1_pkg_setup
- rust_pkg_setup
- 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
-
- export use_lto
-
- CONFIG_CHECK="~SECCOMP"
- WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
- linux-info_pkg_setup
-}
-
-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} == "yes" ]]; 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"
- elif use arm64 ; then
- export RUST_TARGET="aarch64-unknown-linux-musl"
- elif use ppc64 ; then
- export RUST_TARGET="powerpc64le-unknown-linux-musl"
- else
- die "Unknown musl chost, please post a new bug with your rustc -vV along with emerge --info"
- fi
- fi
-
- # Pre-built wasm path manipulation.
- if use wasm ; then
- if use amd64 ; then
- export wasi_arch="x86_64"
- elif use arm64 ; then
- export wasi_arch="arm64"
- else
- die "wasm enabled on unknown/unsupported arch!"
- fi
-
- sed -i \
- -e "s:%%PORTAGE_WORKDIR%%:${WORKDIR}:" \
- -e "s:%%WASI_ARCH%%:${wasi_arch}:" \
- -e "s:%%WASI_SDK_VER%%:${WASI_SDK_VER}:" \
- -e "s:%%WASI_SDK_LLVM_VER%%:${WASI_SDK_LLVM_VER}:" \
- toolkit/moz.configure || die "Failed to update wasi-related paths."
- 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"
-
- 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-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
-
- # Respect choice for "jumbo-build"
- # Changing the value for FILES_PER_UNIFIED_FILE may not work, see #905431
- if [[ -n ${FILES_PER_UNIFIED_FILE} ]] && use jumbo-build; then
- local my_files_per_unified_file=${FILES_PER_UNIFIED_FILE:=16}
- elog ""
- elog "jumbo-build defaults modified to ${my_files_per_unified_file}."
- elog "if you get a build failure, try undefining FILES_PER_UNIFIED_FILE,"
- elog "if that fails try -jumbo-build before opening a bug report."
- elog ""
-
- sed -i -e "s/\"FILES_PER_UNIFIED_FILE\", 16/\"FILES_PER_UNIFIED_FILE\", "${my_files_per_unified_file}"/" \
- python/mozbuild/mozbuild/frontend/data.py ||
- die "Failed to adjust FILES_PER_UNIFIED_FILE in python/mozbuild/mozbuild/frontend/data.py"
- sed -i -e "s/FILES_PER_UNIFIED_FILE = 6/FILES_PER_UNIFIED_FILE = "${my_files_per_unified_file}"/" \
- js/src/moz.build ||
- die "Failed to adjust FILES_PER_UNIFIED_FILE in js/src/moz.build"
- fi
-
- # 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=browser
- mozconfig_add_options_ac '' --enable-project=browser
-
- # Set Gentoo defaults
- if use telemetry; then
- export MOZILLA_OFFICIAL=1
- fi
-
- mozconfig_add_options_ac 'Gentoo default' \
- --allow-addon-sideload \
- --disable-cargo-incremental \
- --disable-crashreporter \
- --disable-disk-remnant-avoidance \
- --disable-geckodriver \
- --disable-install-strip \
- --disable-legacy-profile-creation \
- --disable-parental-controls \
- --disable-strip \
- --disable-tests \
- --disable-updater \
- --disable-wmf \
- --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 \
- --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
- elif use valgrind; then
- mozconfig_add_options_ac 'valgrind requirement' --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-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
-
- mozconfig_use_enable dbus
- mozconfig_use_enable libproxy
- mozconfig_use_enable valgrind
-
- 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
-
- ! use jumbo-build && mozconfig_add_options_ac '--disable-unified-build' --disable-unified-build
-
- 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
-
- # wasm
- # +system-graphite2 doesn't currently play nice with wasm.
- if use wasm ; then
- mozconfig_add_options_ac '+wasm' --with-wasi-sysroot="${WORKDIR}/wasi-sdk-${WASI_SDK_VER}-${wasi_arch}-linux/share/wasi-sysroot/"
- else
- mozconfig_add_options_ac 'no wasm-sandbox' --without-wasm-sandboxed-libraries
- mozconfig_use_with system-harfbuzz system-graphite2
- fi
-
-
- if [[ ${use_lto} == "yes" ]] ; 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
-
- 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
-
- # PGO was moved outside lto block to allow building pgo without lto.
- 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
-
- 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
-
- if use valgrind; then
- mozconfig_add_options_ac 'valgrind requirement' --disable-jemalloc
- fi
-
- # System-av1 fix
- use system-av1 && append-ldflags "-Wl,--undefined-version"
-
- # 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"
-
- if ! use telemetry; then
- mozconfig_add_options_mk '-telemetry setting' "MOZ_CRASHREPORTER=0"
- mozconfig_add_options_mk '-telemetry setting' "MOZ_DATA_REPORTING=0"
- mozconfig_add_options_mk '-telemetry setting' "MOZ_SERVICES_HEALTHREPORT=0"
- mozconfig_add_options_mk '-telemetry setting' "MOZ_TELEMETRY_REPORTING=0"
- 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
-
- if use valgrind; then
- sed -i -e 's/--enable-optimize=-O[0-9s]/--enable-optimize="-g -O2"/' .mozconfig || die
- fi
-
- ./mach configure || die
-}
-
-src_compile() {
- local virtx_cmd=
-
- if [[ ${use_lto} == "yes" ]] && tc-ld-is-mold; 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}/browser/defaults/preferences"
- 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-r2 \
- >>"${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
-
- # Install the vaapitest binary on supported arches (122.0 supports all platforms, bmo#1865969)
- exeinto "${MOZILLA_FIVE_HOME}"
- doexe "${BUILD_DIR}"/dist/bin/vaapitest
-
- # Install the v4l2test on supported arches (+ arm, + riscv64 when keyworded)
- if use arm64 ; then
- exeinto "${MOZILLA_FIVE_HOME}"
- doexe "${BUILD_DIR}"/dist/bin/v4l2test
- fi
- fi
-
- if ! use gmp-autoupdate ; then
- local plugin
- for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
- einfo "Disabling auto-update for ${plugin} plugin ..."
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
- pref("media.${plugin}.autoupdate", false);
- EOF
- done
- 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
-
- # Add telemetry config prefs, just in case something happens in future and telemetry build
- # options stop working.
- if ! use telemetry ; then
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set telemetry prefs"
- sticky_pref("toolkit.telemetry.dap_enabled", false);
- pref("toolkit.telemetry.dap_helper", "");
- pref("toolkit.telemetry.dap_leader", "");
- 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}/browser/branding/official"
- local icon_symbolic_file="${FILESDIR}/icon/firefox-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}-r3.desktop"
- local exec_command="${PN}"
- local icon="${PN}"
- local use_wayland="false"
-
- if [[ -n ${MOZ_ESR} ]] ; then
- local desktop_filename="${PN}-esr.desktop"
- else
- local desktop_filename="${PN}.desktop"
- fi
-
- 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
-
- if use gnome-shell ; then
- # Install search provider for Gnome
- insinto /usr/share/gnome-shell/search-providers/
- doins browser/components/shell/search-provider-files/org.mozilla.firefox.search-provider.ini
-
- insinto /usr/share/dbus-1/services/
- doins browser/components/shell/search-provider-files/org.mozilla.firefox.SearchProvider.service
-
- # Toggle between rapid and esr desktop file names
- sed -e "s/firefox.desktop/${desktop_filename}/g" \
- -i "${ED}/usr/share/gnome-shell/search-providers/org.mozilla.firefox.search-provider.ini" ||
- die "Failed to sed org.mozilla.firefox.search-provider.ini file."
-
- # Make the dbus service aware of a previous session, bgo#939196
- sed -e \
- "s/Exec=\/usr\/bin\/firefox/Exec=\/usr\/$(get_libdir)\/firefox\/firefox --dbus-service \/usr\/bin\/firefox/g" \
- -i "${ED}/usr/share/dbus-1/services/org.mozilla.firefox.SearchProvider.service" ||
- die "Failed to sed org.mozilla.firefox.SearchProvider.service dbus file"
-
- # Update prefs to enable Gnome search provider
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to enable gnome-search-provider via prefs"
- pref("browser.gnome-search-provider.enabled", true);
- EOF
- fi
-
- # 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:@DEFAULT_WAYLAND@:${use_wayland}:" \
- "${ED}/usr/bin/${PN}" || die
-
- readme.gentoo_create_doc
-}
-
-pkg_postinst() {
- xdg_pkg_postinst
-
- if ! use gmp-autoupdate ; then
- elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
- elog "installing into new profiles:"
- local plugin
- for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
- elog "\t ${plugin}"
- done
- elog
- 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
-
- readme.gentoo_print_elog
-
- optfeature_header "Optional programs for extra features:"
- optfeature "desktop notifications" x11-libs/libnotify
- optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas
- optfeature "screencasting with pipewire" sys-apps/xdg-desktop-portal
- if use hwaccel && has_version "x11-drivers/nvidia-drivers"; then
- optfeature "hardware acceleration with NVIDIA cards" media-libs/nvidia-vaapi-driver
- fi
-
- if ! has_version "sys-libs/glibc"; then
- elog
- elog "glibc not found! You won't be able to play DRM content."
- elog "See Gentoo bug #910309 or upstream bug #1843683."
- elog
- fi
-}