summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoonas Niilola <juippis@gentoo.org>2025-01-06 22:04:43 +0200
committerJoonas Niilola <juippis@gentoo.org>2025-01-06 22:11:14 +0200
commit364d0eb807eb4f0f6748f0b1487962f3ff784e1b (patch)
tree99b1f883fae510fe317e3cc69a0600adf60f37ec /www-client
parentdev-ada/e3-testsuite: drop 25.0 (diff)
downloadgentoo-364d0eb807eb4f0f6748f0b1487962f3ff784e1b.tar.gz
gentoo-364d0eb807eb4f0f6748f0b1487962f3ff784e1b.tar.bz2
gentoo-364d0eb807eb4f0f6748f0b1487962f3ff784e1b.zip
www-client/firefox: add 134.0
- rename 'wasm' use flag to 'wasm-sandbox' to more accurately reflect what it does - people have been confused about it, - since upstream has updated their bundled icu to 76, some of icu-related patching have been removed, - update nss requirement to 3.107, - update upstream wasi-sdk to 25.0 which is llvm-19 based and most likely breaks '+wasm-sandbox' with clang <19, therefore require llvm/clang >= 19 to compile with '+wasm-sandbox'. Signed-off-by: Joonas Niilola <juippis@gentoo.org>
Diffstat (limited to 'www-client')
-rw-r--r--www-client/firefox/Manifest104
-rw-r--r--www-client/firefox/firefox-134.0.ebuild1373
-rw-r--r--www-client/firefox/metadata.xml1
3 files changed, 1478 insertions, 0 deletions
diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 0307b661e5eb..50ae392bddae 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -303,5 +303,109 @@ DIST firefox-133.0.3-xh.xpi 421372 BLAKE2B 79238c6ce683f1d9cc585f8ce40e1603df46a
DIST firefox-133.0.3-zh-CN.xpi 679309 BLAKE2B b6f9d3ac6055a258b78857dddffb89c97f2b77bd859bdab6bb20c7791f811267bcc09db2b451ed56855c074cbb9a7c6b09c375819e951f89d67b011178b30f82 SHA512 c42eba97f3069b38fdae933489c6dc1b9fbd7ab866830b4d3fbdbaf10969e1cf4665235193ae6985d032fd4007c12dc221f8a6f284625f60b36a043dcbf3c6b3
DIST firefox-133.0.3-zh-TW.xpi 681633 BLAKE2B 7f67226c9bf2a2d311b7a13c5aaf68bae1c784c53256f3e971490980f6d739f2dedcde7803d0f1955d6be8390ad461d3fe1f84083a7ea093624ae39564aa6ffc SHA512 975b508f569eff982575a5d62387882a4fe0bc061ef5af510cdfcd4b8c04480b260d9bd89b0da857d481272b12ba5007b73b46938bcb24e2754139d7ec16a3d8
DIST firefox-133.0.3.source.tar.xz 580071280 BLAKE2B e686408397a886e36ead739851ec190f108db2bda92b7147ec16c12233459dc23ab256ba125fb8902fb2a855ea76d9cb02e6c55ea62e7639f8700dba6bae9acb SHA512 ce48beaa5bb1717d9b6dbfff035b1bb5de1456df14b6a91adfaf3ccfb7ac550ab7ee854546231424a920e01d981825253609fce2ec326c4aa1ca316bbbdb31f8
+DIST firefox-134-patches-01.tar.xz 13880 BLAKE2B 4f80540acf09b51de091882318e205e1d9c7a8d65de62f453953d1e943321ba334d8f337244800e705fc38d7fac8c1cee87f4a8532020b708338cbbbb8b69426 SHA512 bd454754a5b14d9e34b8970d992639196672ee4472ee6c473287700c38f1a0127480c3a5eaf4de0a59ba72097f703fe231ef52fb4ab86d5dc5b99569285ce164
+DIST firefox-134.0-ach.xpi 468175 BLAKE2B a9eaab4624ae5675cc0f380c877b8aa5205cd768f640bdfac44e97714c1dd754f8bb89dcd2a71732438f6027b20b0f5f8493e839cf18640bc8d47b604034a1b9 SHA512 ca12411ab30de0f101656b4c2cc9914cc5602580ecb16a0af463c251de36d13641b468690961d4170dfcef89fb62242a73665ea320704e5c23227f5b6edbf8fe
+DIST firefox-134.0-af.xpi 421162 BLAKE2B a9bdd1b7f129a9d3a08df608e1b2d23a844b367bc2985fb6904ed233be5e0d57f36b840bf88712596117970ceb2d20c48f2afda4db3b6e767b1d7d39f72ab2f5 SHA512 36411f485e16856ca96fd5a8ad6a9f4b8266ccd880a9196b5f8052dfec32765e248c53f65930b9cc9b151123ad240edbd3095b7005ff132a6937cc48d2b9be25
+DIST firefox-134.0-an.xpi 510952 BLAKE2B ff0e62dc07bf174b68e691c5285931593312aad5b9522a8310dd5d78c6cde894d768cc394ca75082ea4085f80da164a8f46c632d30c09dc61d548a95362018e7 SHA512 2e1ea28b965ceb2ba8317635045b775084c239ab726a8c8ff5e95388abc09d54e4472914302f5b0c817801c3a962859ed3edb1c15a4cce39e5ccaa86899ae4af
+DIST firefox-134.0-ar.xpi 633883 BLAKE2B 499a63f6432343a0e0917ccdc5b74a381114683fb22a0361f2fbf1f1a57722cc3896ebae5cf7c8d1ac59fdb7ac201a1cbdc9108a9903ff0227754a91ba0e3a99 SHA512 4033c754a91f88b4b883ce539940a8e13241770df6bf41f30fe1dbcf7eff3589b3e7b67696bc62abf64294c044e25f54cb28179ea1af672147a8247bb5926c26
+DIST firefox-134.0-ast.xpi 500083 BLAKE2B 4806276202782d21fc715abd1f9acc3aa6c7971a419fdbcee9dbf11baccaaad6fb2176691631ddbea62351076cdeaa1f49454a2f383aff2aff9d1acec6b6c931 SHA512 2268f5d46db69cf61dfa9c7dd17f3178060180c856eb78fd0a930d98049cbbc81d1d7bcc542f55c586e59d417220ba7f6a6ef8862596d6fb7580434919b3e917
+DIST firefox-134.0-az.xpi 494914 BLAKE2B 98fed19418868442f33ab74a1d9400e91b9e71e4e028b9cf29751730b7f315c4eb419cb6d146a3cf15acfa8404753e408571bf4a8ad8ba38387aac268fc7cef0 SHA512 e5f22868fec85d0082abb5ea8ba24ae6833d38f5f70d0e717aabea718c513bef58bb519feb9a889f5bc6ec4d6d18c1cc9b4b8916100e0344e426841416d0175d
+DIST firefox-134.0-be.xpi 744276 BLAKE2B 5b85f995f7a8a065b8febb2cb31ca4681bce49c7df5a06d742c4bc47f3e0afba5a0181a09c58a3d3f9e99a2cda14a1489df68a31ec537c93dc155cce5b1ef51a SHA512 40ccdab86a13601506174c395812ab285b212332aed946c309979332d050aedf10983114fe9540538b8d45a783d6712acfa6ddeb334bb06b9bb7cec6c6f0c1c2
+DIST firefox-134.0-bg.xpi 670917 BLAKE2B c74f8c258ff87da9036b7720fa8f1b667815cc369b59084a06b298fe8fd0c7278ec302596b834b514ffc89e194996f8dadf485d50b94a3687078482bcc6230b5 SHA512 2984937477e5e15cc78e8d14a58a3ced09a60e9e72cb0decce8950969ce954ac5e18889cf804cd28421a4c799adb8041e761b8c8fd444fd4a8f596069af0e944
+DIST firefox-134.0-bn.xpi 615540 BLAKE2B 8598aecc24159a9ce4a3130351f7eb9a3d52121e9c4ddbb386101041818bfb7012b379e57e6a4162832278807fdd8c99e32230284934ae54b1dd1dbafd0624bc SHA512 56b3394fd8da1f189db1ccd7b636307e592199db2f9109710591d4c9fd77fb25ac0ca8ebd317c91eb3fcba143bc2648844f4b74ed76f6bc9e58aa3c710501e2f
+DIST firefox-134.0-br.xpi 598074 BLAKE2B 02a67188192651658c7bdea7a5256e11964e7ca86d479577bb9ec314b64796f47ffcdd21726e5b7b495196b26b7c4aa8d86f086c0c9b7eeb0fe556b61cb15e28 SHA512 280c030873b3e29ca1245ed0104b14a34c74e41bac485066058cb87f7e2e2df56fd5b89fc9378c7b018aff9e776e9e1032c2331011676c6c2bd2527c4607a57b
+DIST firefox-134.0-bs.xpi 557244 BLAKE2B c19d9a67887fc21ae1df78001759d5b44f45d2bb1e394c5e008ecc89fce9288b42f9320ed8b83bf1cabf83429be5e11bdb2edea8322a40bf8c1c1645805d8e03 SHA512 b4a8c5b09188afa95caa0694342160c8082b6b6668145e161d137144791fe85ef982ca852e67b56aab4301cfb6271259ae41eacbe6da211a2e07919f52c360d3
+DIST firefox-134.0-ca-valencia.xpi 550243 BLAKE2B 2b94db9efa25a8d72d2071824d923da49fdae896d83ad2ad3a20f765cfaa7c0761f8e0befda7eee70f8db0a82d62daac9712946a2645a2ccdd70b55b558b3ea1 SHA512 48bbbe27199f39b3b7b6db5d3aa2b475978d234c50a2f4d1e82d62c4478c4ff3a0a4406b1b473d54560e95146fd82f15789a3655c47ca72130f07303b865e978
+DIST firefox-134.0-ca.xpi 607760 BLAKE2B e369bcf5ac6faec9e2b80267785f8e80ae5f38f1cbc80be82b8cbb676ff44543229d43d73cdaa8c31610ce427b30324bec42ce59affb164190c6b291e3747e1c SHA512 0d411187a750975309071936c93e7ec5d179cf600acec8d5a63d00b5bc1124d6cd71d86c4ed29678bbd8bcceb56472c4ddb96231ffc704473e7cd27eeb0e8d73
+DIST firefox-134.0-cak.xpi 597775 BLAKE2B 338ceee303e1f61923827c61bc183f36c210371a5df8f4affe9f43c946003f07071c8c2b0b25e3f0575a007f9d818e703781daec8cc84aeae661a5687ca0db78 SHA512 e94b4320478188cc2cbcac3818bdf01c739e84f1503427264a3c0f8fa81abb8bfad05fef05f2b87e7a0f2a5d3185cd7c3ee172917fd8560d9a97dff7b95183a5
+DIST firefox-134.0-cs.xpi 688675 BLAKE2B 89750207ac3755d2ae8cd56f38d574447d7c547c153bd59779b6af421416c710fead0df0125ba41a3041ff096dce680abbf4cdcc2c61a88903051d0675be541d SHA512 787dd821e6cc4d8dc8b077854b21a7e2b2a444cfdaef21cb905d87584c43270900f368de049a940211c82d8d34c5a944c101483cefe1aa98a6a5f01afaf512fb
+DIST firefox-134.0-cy.xpi 649374 BLAKE2B a012dcf4dc063dad39349feeebc57f65d2dbd19dd9bcb30c6e0cf352832e40f431b1354299ae87c5ba84ba8f59b125fbc4cabc46f8c1d5808d47f893fecbb5e1 SHA512 535104977911640070b0a90915eb12863fedb3dbb9aba673cf2ea3f336cf449fe09daa198f9852c8643369e85b9a6da8791a0e0a93892ec94b7111de3c6a9631
+DIST firefox-134.0-da.xpi 637277 BLAKE2B beac566965ad67645341e95370dacdac62744ccdf70fab3fa3766c2b7aa5dbaec8ad07638e379e6bd0d72785cb5b7a2bd2b49721e409fda8fc9dc458df2c9533 SHA512 7bfd03093ffe0ce226d556322a26889008b362ccea90bb02b195061c83ba214773113aeecc18c791ab7e8d181457008cb9908e9fc1d57bc1d9f76c3a35b0244a
+DIST firefox-134.0-de.xpi 661278 BLAKE2B 2ae531ae6f9eb6a9f24267069e268f55e34cb3a8f316294000edecbfaeecce3256b0796131251fd88d1f796b1fa58049eae83c2a7fc7d239a1efa90bb046397c SHA512 a4b859e5536c6c7f5dd54fc1bd275efb16bb2d37b83299967ba97d8368a17c6d3bfc66c7288fe0d56369010015d8b0b97ce453e66830a203c6e716fa00ea2b93
+DIST firefox-134.0-dsb.xpi 678094 BLAKE2B 4ef86f513736609808ac2e2c0ec3b5a993795a24647c3871f4b2c877b9b6b03889629f6483d278ce86ab76c63c1c34a8a01241426d630a4ba19c4ac507bfd768 SHA512 e4c35f7544466b1f44b83b1837cd9100b57aebc574290ceed487cf38fa77eb9da8fea66c3c0043d7919b61e3c0ed9e7103ba5b9c4bd0e2189d7afcf1949dbdff
+DIST firefox-134.0-el.xpi 760444 BLAKE2B b01b4ed8767c4736ee103442d575947d984820c7c7b83e5302100c5b7e040d5d3977032a1e72eb4efb23e091fafcace0c374ac8c72bda5c952df1a8f8c8aee53 SHA512 1b85d8383a2186602f19125e0a2d8ea7a7e4fd2b7065db41419074254688f767c5d77c9874c768b83b5473d97519d50cc53025208d069e7fc6fb965a449e8fdb
+DIST firefox-134.0-en-CA.xpi 607990 BLAKE2B 84aa24343d7f657f9170f532900e719673fe9a81c03d340c3fb0b9d7b204b13b87df9aad63405b5b53d60dbc6bed2480b8dba4cb66f3f4f141b894ed5383e45a SHA512 8bd7905d288ca2efaa8e66aa24a00d062d15dfc82f256e9ce3c5d48f25196c625b4f9d03d2e848e417c6a77a98c47ddd142a390e5a1ad8b25bf08dcfbf5bb817
+DIST firefox-134.0-en-GB.xpi 609127 BLAKE2B 621027a1962b61a62ad6ece1028fb18e86d01ca760fcb51361bbd3b2b9bc7787118378bb5a4149caae17045e1703bea4956869cc7b9414731e7d4ad0ebd912c8 SHA512 bb5c07495920787b224160e8b80965c661b3a5e3efc281205a4f72f15c9195f12feae1843832439ccc58f6b7db9e1fb3a415bed0cb23e1bb3d68558e55edea73
+DIST firefox-134.0-eo.xpi 640106 BLAKE2B dc07c9670fd4d7340c7df5d21fa4e4e6a51d278b97ee5937953e12008b0c39ab36c00fcb1c5e28a7ab47518e9dbf53dd8877fae94d1e839e522d83c27e91b8d2 SHA512 783337aaf0e88f64992e90ec659a59859282678ad9a1330ceae9f1ec0cf050732e6ea4547f0525cc39674c680c8323afed3daa6bf9c66c7a519ed7ba0679ddcf
+DIST firefox-134.0-es-AR.xpi 654030 BLAKE2B f903a48e6dbef2e5820b6d9f783b68297b7eba7f3cfefaac6e4376cca626321a4e03d5c65c248d592e78c42e23981eb3883c0e1395d840e013176942fbfc0ff5 SHA512 4eb99e6e13f63df53006eff38c03f2ca25e8494e5406ccaa23e7d3eb51aa2049ea1fb558faa114248af92d885d3010c01d9637401f60623102fa3a8e20c06b94
+DIST firefox-134.0-es-CL.xpi 653726 BLAKE2B 92d312e3b68cf562d85a2980efc367a374bb380de5461770fddf66dd9a2f57bfaf4d1869c2bd433b56159ba91a4d65c07328b87615f38d7f5c39b2ad4f7572f0 SHA512 1175f079f704f3b4ecde696a0aa6a19646ca31f1ce7bd52762caefc7c9c88cb9ceaefe425d6ea2a86f9a428aad620ae83a9c4074c2820248333f9957d1e16d08
+DIST firefox-134.0-es-ES.xpi 648570 BLAKE2B 4889a95618d3a66e6e351086f023d616507bad730f18f691088b612ba0fd5e722d8946f66c826fe91e072fbd431a9d4fc297bafcd5aacdc21fb93940fc737038 SHA512 19ce7b26ee126a95587368c40b08cfb1b856c573b06a6b5adabb9eeb9bcd1ec00a18b09e51ddbe2a0e11a54e65ce88adb159d6f275ab932fb6c13484d6082621
+DIST firefox-134.0-es-MX.xpi 657163 BLAKE2B 55adbd7d260524a017c808aee37e22ee1c9aca9a92a812d6b79303fe2b2d2d12068a40883a5f43bebf1e400a201c9bdb75ae45521361a2372733e973231ce52a SHA512 60de9104db9fd3e76f1f0611e9aed423c16ef957f8ce6a6f3534d3fcf80462650c5c7aaae3659b80f9d8df40a54dcce5656302956afdad23125ed9bb717d984d
+DIST firefox-134.0-et.xpi 546711 BLAKE2B 6f76c5b5e2633c1024c8927427a2dff039fbebe68c5f5114d1e6d1296e07357636ef1438ec548169199d2bcf9cd7aec2d44b0b21298290f9b94c33ce6791433b SHA512 83bfe20856f81493d222bd5d8676c3ea3b87553def038b3ba7cc15b0b5d35e7c1980df51f8ab036e0835f17029c9e776403a3e498353513ab3830d2bf586cd9a
+DIST firefox-134.0-eu.xpi 622849 BLAKE2B de83771937c91d360fc2aa62a7247fd66cf0dc6a8a78256e3577138d121ef810ba8058203d30f33c023a9434a481e95f31df1b98fbdfd8ee2a2859f1bac973d4 SHA512 e1638c31fd4dcaa1a082cc9f8b278c968dfe2b377381638e3682638f211a363beedb3221f33acb65e325ef98b3b75f2a812c5de991674fa4092246f68427da72
+DIST firefox-134.0-fa.xpi 625175 BLAKE2B 29d1200918b50ab32150995f9c72ed3c3ed495a691b4d446c99d099c64ef4254fd4d4194d726904e04c1f17826313e2ab4a8afd048579007f750c804a065221f SHA512 92a9bd736629e6ad97ffd6609ef6bed2be43a770a1e356b94e8fd74bd3471364d605141b8e257aca88ceaafc586424e79b7b63cb5a3258126b14ebbeabd6477a
+DIST firefox-134.0-ff.xpi 479999 BLAKE2B 85c2fdec3c0e3f37e33f756e5751aae6e17f02d3d503f913200a2788b0b5aaa3492c46b6c381f633b96eaba3f13164177392658ceb2d18d39473b0b58760cb77 SHA512 779a6ce6ebf1d2dd82345a92a166d8e83e8216287d8a6066bdb46fdc42b9342f5556be11ed78625c87179567845b1eb93bb4d101ed7c39297bec657802bfb2c6
+DIST firefox-134.0-fi.xpi 634177 BLAKE2B c4a28dd11b971b7d3b74011d6d6137f6fd7890a98f860cdaee0cbbe9edf48bd511c08fe22bc2922aa3bb3d26665b745584a2bb712ca7df515c89bd6c70a8b4a1 SHA512 4f0479c83b457b575f70a149c37c90877a55100d8b3fcee0b5216d6b4d73b62e9e0d04467fedab9a2aaefe01b7feefcf2c4f623ab997ebbf3e6617739b349fdb
+DIST firefox-134.0-fr.xpi 667546 BLAKE2B 510825119b5ae19935623860ac038c0345d3583f80d8c296b8e4f7aea2e474bcfda1cfd538fc2c79d8ec19ad88b12cc84f7f31f7b972b2364e752672d5ef14a6 SHA512 116e99d4f0b543739127131470b07f0fea478de71e395f999a71f99b799df8c1c33e7352472ec40b443d620a05269ce98587f74322e898e08daf0a236ca01606
+DIST firefox-134.0-fur.xpi 652563 BLAKE2B 3faf2cb17a496470d49bda53f4811c517f77860a02c4dd4222b2bea97a1e4380f7ca6624ece7bd416686aff047cb7c40cfaff38bb20fb49cadbf77a32451f510 SHA512 febb5f87a803dd81459e92fd55c0236a4225d927df21ed95f0fbc9c6727c9e73916d18508acfaaa0b77bed013c6f7c39be0a5bf066d66c6767cd28c7bb356918
+DIST firefox-134.0-fy-NL.xpi 649694 BLAKE2B bf3f00c9b4c7bbfb103002a1382d3c99b44bfc157d8b9865137263515d950bb5d9797623844a2cd053746f2bf0c0db577bb12827c19e04a514bc231dabae69fa SHA512 b2d7f8672ed0360b2ad95017cddb0b31f030e8e5dc87679a059e6b31ebe687eface7a7120224b55a310c476b82d1adb47c35858f71de77238f3ad9ae70892f3d
+DIST firefox-134.0-ga-IE.xpi 474982 BLAKE2B ebee8e595678b4dcd4adc159b9e81e42481746af9f90c8a4d0c26b04bf194804be7f2eea84d54115924e712725c8b7670b082082a737603ea4c516f9539a609a SHA512 c28ee784a56b5535930645e7398c13c07ea6822486c6b9260ec20ea5ff0a0b30b7dafbd93b7abacb3880bd521243b72dae72ab33780afff1a1c4b4640d07fbb6
+DIST firefox-134.0-gd.xpi 603300 BLAKE2B 019e09fd2c46919aac770689c17a06f8d3c83006e27f7f92b29cadefe529951c18f50f9e6081d4bc4e49895d0f28e49398fb957764cac912868226a088cb969b SHA512 7f9535446536919fb9c6c4ee5f4cf8874d41e500a0a9cd65d1eaa436d7cfd8edbac2c4a1fc2b4481b53ab017019e5da176c45240c5525cc06d1e9fb7537df79b
+DIST firefox-134.0-gl.xpi 614908 BLAKE2B 35c1cff09869b2fa556b112fb1e46deacc645f37f3af8dbf9ef4aca60596d06e966dd65a68554c365c5a72495bf94ee215b0b5a884d9dd316a30108e197cdc31 SHA512 ad794ad32fcea6c5d3d677f215c78cddcfb6f9bf7ce2001f13da5ae0bb3ab83fcf932b2ed5937a5248d96bb3b052f53a11c3ed9289b851e5c7d7573c80d0f986
+DIST firefox-134.0-gn.xpi 661081 BLAKE2B 96af2541f39a6bf0d1f84210cb78a0eda3aaf698773a5d484dd76927fc3faca0a28581e95e42afbe404cb867f5730c4f15d1719011ee90fc875116ec154c5e94 SHA512 61f5612fbdfed0ebee60a118734761a9c8c382b0d50b8281566c9f3896a3eb509b86b2bf9f59de08a231f9af80bee9b40acfea8149e378b6e851a42d711cfdfc
+DIST firefox-134.0-gu-IN.xpi 531510 BLAKE2B aed65e51e72a525bfb74e9efe52af651c787bdce71962e2f035bea4b6c0af2c7d6b293a7c99c65c2e7b76748b58dc5c425759786eed73530be60860e654fbdc7 SHA512 b5daef8e06b003511a0bf34a7e802f3c278342d0d1964930e2904c002c76ad22d7c839b4450c88709f3da3662d8a8d97ad412806d9d2d8582c30a8bc17b2135a
+DIST firefox-134.0-he.xpi 656241 BLAKE2B e5e33c5205019120333e1bf28f0bc7ff5fc651e72452650fb3ff5211c773185149b5b0328c4384778f46f42a12f11e17cbf96af8d60908d71b43b41f88dbf4ef SHA512 9948154b38aa50ec11a3f478682bf61c5f7a9d2c9022feb4b2e0e379c42901d5604e32a8455c4caa2a8e4bf94e9232d5b3d24e2e93d970f15570c45cadbc92f5
+DIST firefox-134.0-hi-IN.xpi 570956 BLAKE2B 516aa55421d863261421ed8bf3dc93c63157aa4cf324be8ad2658780861128c5fb3828c5237208654e49cc0f11dd8cd64bb4e2b02f99e112f6077b2471a916a8 SHA512 6836bd4de8ba0c57a9a1e9f8079d6eab4230442fb3ab29e69a27c9e836afa11124a1c761b90a0ad2d37f21a98542d04d6c87f30d4ad83420a7ae49c6598b0665
+DIST firefox-134.0-hr.xpi 633368 BLAKE2B 96b344a5bd091e574bfd0ca7350df579732484edcf54f3db709901cf63415d306b2c4919d8f7942dca3876892394732a975f245d652c50a487525a7d61039381 SHA512 aebfd94df4e98412410953b922850a58c37c6ca149b64a4301e4e0cc82d646a9e050260cd0e237e8e685415cdec6a377618cb7cd1db2773056f859ce003c2e11
+DIST firefox-134.0-hsb.xpi 674109 BLAKE2B 7f053ef3ca21c59ad5d2d55ddda8136d54b60f51694131dfa4b5d8fc47ccde6d922c50967ccb1047ec607af489e1cb64313628a9f5fbd865d8741dae77c9a907 SHA512 a7885aaa5f03138dae3a70aecd77d090cc57d5deff3cd7c36b9b3c3a5250b814db1edd69f00d49845d98ba8ac0ee6130c88ecba23a3208010c26a5ac7b72d652
+DIST firefox-134.0-hu.xpi 678173 BLAKE2B 1865fd393f9dea7fbc0bae251c0c6fa7a1f8047e87508e06c21f2d755635b372a713f32d4ecc32a112c77cec249d3e883900384085ecc2d652d9bce604d8e320 SHA512 5b1247bdf0fe4cc4a5ff31db0398589bf4b17fa72b6f61814f74fafbe52a00a0754ea0e5585cc909d14bda0a7a3301e5efa8501fe707c23b5d9c24d4732ba729
+DIST firefox-134.0-hy-AM.xpi 661671 BLAKE2B 027c9a6ac7b9139b2e5b633c359005728b1d8f80f3627e1770702781b7b4ea039eb6d14b6aebf51d610659d72019b34efff3fcba9fe6f22aa0ff087e43865c4f SHA512 48c686539e93f8b0510ee1484e261e0f700767fbace31c745d4242e8604c23921eb102e89136f96c8ff46e5caa360dcbe10fde2a3111785357fead8099938a9a
+DIST firefox-134.0-ia.xpi 636635 BLAKE2B 52033a26972eda686ad6b18ed18552cb75ad79ad36f2b25ae1798cdf276efecfd480a0e8c7eb8e6907d95989251ef1210218ea6d80dc226c3c7a535720e18540 SHA512 8d7d17fb12797ac7866a202e213048195fd3a888f308153bddee559c308d974d3c28f4e7c7ba33f466276a5dd133adc6f47d043855562f2570ff229522c07371
+DIST firefox-134.0-id.xpi 620028 BLAKE2B 4a6b509ed71d455a952098606db488e246441d5708036e2ec5c5da5f6423ff10807ddcf5159e0f30f102a3e651e81b2d50806e25ee45e5f0df4f86a8aa1e1325 SHA512 a198e8e85167ab37a158d2ce3dcaeac4a66875e8a3bcf14b9e93f1c041266165a8757f42d42f8bf333a8935968c61929b7a01e808f2bede03617d03dc34075b1
+DIST firefox-134.0-is.xpi 642110 BLAKE2B 56b463c588dc2b43861ba7d16e08df029f390451702cf38eccdec73abd989c6e46216078c85cb870f983cf311ce1eaa65997caee07f685e06ac51e05ef5f1269 SHA512 26036a48139178aa4609bc70371814543830385224c8c9b5c9291356ba0f530426062c69b9b2d2bce92d10d927fda9aebbf78324bad01793ffc59b23cbc4fc63
+DIST firefox-134.0-it.xpi 646160 BLAKE2B 8dca9f809cded5193b34b9682114aefeaf27383fabbbcc94a46de294959e301fd1454d868e242355078a989fe6da83951ddc02d693c38f481fe172d7009a3776 SHA512 39c328508f6bb53b0688ee40fcf7e50e21ff85a397fefa1612edb284f2b7e36502984ff8e543398db4c8b295f2c1523f260e97aaacabe27bc8d987ab950ba16f
+DIST firefox-134.0-ja.xpi 704024 BLAKE2B 76aee1734dced3a87537ae0f8d7f82ff74171a87c4f9418c3f69359fef32ed199527c8e1ea1259a070e421d84c62d1d57bbf9cb5f7f2ccf6704013e60720d6d4 SHA512 9b1f0c27cfc472a22aef82fb446c8ddf923f997442a1369575c98723b33ec7a31da7b61bc5744cdab40d1f7812d6768c5f6c47db9c1b1dfa1648499d84bd98c0
+DIST firefox-134.0-ka.xpi 711240 BLAKE2B 8f221b7f4ea16e5e2fb3d8c2cb274997f95f21f9419fb9606fd4a7e8e245a971d4a7f825d97c6c04d2bcc9a7a0ef996980e5bf3612c9b68a0d69cedca90f4df9 SHA512 f2ca38b1e8ebbe73c37d0c009b1ab65e103175a69c2d42a0c9e1e27576f1ac7051f051f2dfc323d417c3cffadaded2a178b2c927975a7377fe4d42a7f7e73eb6
+DIST firefox-134.0-kab.xpi 626328 BLAKE2B fe69b8c014967ddc649ed98e17f56967a2449f9b7107e9603d6202a97a093e4ffaa04431ca83867348bda9b5101ccbb936e3bcdde063eb2231e3012f8e06739d SHA512 76c6e9db97ebd1daec554e24ab48564281b4ad8fd198f5750c14bc94bbb40115cb76716e4f5a7b44d0b7ab2073f68f4ceee23f8b5a6c4425734268d19c21d2a9
+DIST firefox-134.0-kk.xpi 734784 BLAKE2B 6f77c28fd237f8ca9634ab0ad9fbe820dc78603b09ef3fe796b9152c4cb14bdfc3d0189c97ef3a6b19cfba01025ea112d3d6f46bbc7c0a7dc2f7e273d2edc6a4 SHA512 d2e32e4a9d9e2ad35b5fab0ef79921d60dc62e21e51b792f9316e60bf77394354e13b480cc4248579a31f470ed307ac8e66921f8cc5ae59c3fe73b5e209d72cf
+DIST firefox-134.0-km.xpi 529770 BLAKE2B d684dfcf62f0e5ec777e8dba8c58cd3ea0f3be9c3ff2db58164382b0ee11b03591bdc50604fab00bdd4d266a6e73202fb1bfabce854b15d9e1e9590cfd6bf5e2 SHA512 a4624a5cb60041ba2b94c199a0f6a8e09c5ce29f577bec7a791afc3d9eed944f9e416801c88fe158a0734f83d48a3076495e146095b2fa5b2ff481af86fa20ee
+DIST firefox-134.0-kn.xpi 494779 BLAKE2B 8f2e7d9ad8d67d0b03982738d3db00ce921befb54f1bb67a4451013ea8f583f91c79a468de37abc59c073f77667ebb3f7116edb08f393cea4591695c4dfb3263 SHA512 92fbc828362f09572fbf909e4b50b3bf3572dd5495f6449c622d6072d89f50ac095f8ed48cb7cb99c9aa92195ef033ec3fa4a44b21fbb13aa07380004aa20210
+DIST firefox-134.0-ko.xpi 688670 BLAKE2B 46552c5fb5a08da2e25a15baab5ed5d64aa9964e93ec6769a532f7e8808f56baa74b3c402eb80196f176c4fc90ebb3493971e2e70f96caf2da9e6e9d8f36f197 SHA512 b82a3c0d9aa69afc94f8e74fe1021cc28ff1d2521f432ade955940cf6c24418aebc3ca26f169d57ae105256d2cb34697d256ce4b9fb08f448c6d90eacc6fee50
+DIST firefox-134.0-lij.xpi 488327 BLAKE2B 9a2b0ee6328da5b1efc83be48a0cc5eea886df98f1f1bd55e9b3ded4eeec1ab5c2bdf105eaaad0ac547f3c0cfbb8e8a558a25429abb0bc7dfb8391e52a007db1 SHA512 5e405965493f3aeedbff0f06852bc1ec40c3ea9b440fd18a9de169956a554fe0ca0b31aeeec9840de49e223e1a87a446d9921e92120b59d7ccc6ebbc6a3134cd
+DIST firefox-134.0-lt.xpi 577201 BLAKE2B fa99bf93f7298e69381a4a986c10fbe203629edbb51c761c08b7ea40dcd9c6a616611096a3036cbeeb1c6c8e7fc8b6e272d0319c00be273c84cff934745d25f4 SHA512 2f37c3b318b1d5d985e32755a8a351791e83a0cec6215d02e435ceab7915d08afb06870f0fb272a179a63fbdb94de1c3f84bb94a679bb7bad66a7da29c85b76a
+DIST firefox-134.0-lv.xpi 590048 BLAKE2B 5a8623e003c2aef172d0796433797e9eb510b442066bcb45cb6fec5002e63fd7b81056f57f10ac59c905cc274e011e30ec92df5465e734b4297741156b7543a6 SHA512 73099be1cae3f0232acde3063d8b9f60bc3f22876449ffc53ab19e981db9927f7adce57553ddb80b2efa31f3db14bcb37257583c7c83360a2d65c2fb605f80d4
+DIST firefox-134.0-mk.xpi 497213 BLAKE2B bfad1e6a9c919f96d6692b2b2eea7ae841cae24cb532118b177c0c3fb99c040e72da88617f42ead86c63b9a83b945958a84b6b39839b91e9dd74e5e1e6c94baf SHA512 2d102dfeeb17d66abf6c2c40b35d99541dab01d64ff143d28da1950a1ffc46e99cf45317b4382fdd0a25de9db331589590ee7d8976ba50e12de5360aba0071dd
+DIST firefox-134.0-mr.xpi 536143 BLAKE2B be8b5a11105da49ab2479fec5fb15fbf7efbd7de6838c326515d296bc4e1bc2ea5c4feed5d65ac5de0da62a46ad33675ae027c5525c6615bfb2ace406366d523 SHA512 59d7555d590cbf6dfb855725e9ce85f6d033a0b3fb714b92e9b9a954868ed590df55dd67b4a45bcd1b5f4c5c029cc65dd7b7fbf7ec9f71d50668082f417f283e
+DIST firefox-134.0-ms.xpi 453846 BLAKE2B ede75605082be68e8965eff116fc19741cf338d987ad0c03dae4bdb441aacd2c5151e2fa8655c15937b7a69033d9f88474928ce60560872d71b812aa23db49a4 SHA512 15dbc9b1c56d97aecc79ebe99965b05238b37c127cdcb4c52035fa88d23b7ab3f8f5b97b6cabf9193c77d37a669a2d4de52e31a0796d801b0443125412d2de8f
+DIST firefox-134.0-my.xpi 522468 BLAKE2B 00a9e7328968c4ed0636c0531b835b1fdfaf94f451ea297e1dbcbe05c5946adee87a5ad9d6e20af897b4f56de0ce964773fdd90ace5f6e68ade4cc36b46d04a2 SHA512 e7794350f214bd015896e5c8cdd4a24e02b71a2bb73ae2f95ef23de030c7fb2e9f70431c342a99e12d8899da164ab820b56011f1ac7fb2bf313d51ff879b2596
+DIST firefox-134.0-nb-NO.xpi 625554 BLAKE2B 9ef2a904ce19d095acc49ec9ef043ccca21d94c79f84b69356e8f812f2acdaef768eed0922e688728d659701e84d09eeafc405363e931cfd30cb660bb3177879 SHA512 ee97217855b3cdc73f4d4529ffffcb570026becafbe542a8477ccc743475762af69edaa788278a60b9ea8d733a8b20bcc7a17f9303a603daf5a09585eabad68c
+DIST firefox-134.0-ne-NP.xpi 524811 BLAKE2B c1d4403220341adec278fc204b44c1443fc94b00158a3deebd4bc1a5c790c9706e2bd18d150ecd27efdac966c57a2c32aa67d6f367bb1b752176020a1a484563 SHA512 47e50fdfe3fd4921e4cdcc2fc72501a754d0e51d3e149cc093b82b9c4ad00e0e9951c83afa19b7b1e85e96923e9ec31f6dcc55f8b992bf742affe662fc153b00
+DIST firefox-134.0-nl.xpi 642841 BLAKE2B ed7bd0d0419819f3d9939b598328598de04b03b02fd3b4b65b2f24a419824d34640bbc51d8374de78db222120629768eaaacbafcb894fe83e85ba5dfba4207cc SHA512 44620f7fef6c7c4c3e41a966aca5902e58c1f04401e0e1bfd9cfca285355d00c82d038be55d62ab0769b3be0ca81400d12c731c2b82e4964c8ba05701387cdb2
+DIST firefox-134.0-nn-NO.xpi 629840 BLAKE2B fbbba8a0590f849df7b17e1cdad0a088649fd57a81fd008bc72c3d0a819773966bea710a7d234b3cd272e0650359031485e6c8c64cc97dbc03e09fca98679209 SHA512 d73d2338a401fb0fe950f78bf080f5021bd60da33077cc1a525c3da8b8297d2f9fe28f6d20bb3c0786f2c0f19dc65256456426d646533d60cb2d8adc9799fe7d
+DIST firefox-134.0-oc.xpi 626181 BLAKE2B 51e33ed53bc1e730867ada9498c2cc69a0a81ffc7c3d79c293e8c378036690467297cc33cd16519fd48b44214998ececda9c8fce0082227230ace54dff615d3f SHA512 67e2473eac8176557dce11ffae66c68bca5597f79d7f6151087acc3c2ee79806c34582d6e2337885a5941bc20c5524db4b0d081d8feb6918aada10ee15564f47
+DIST firefox-134.0-pa-IN.xpi 723083 BLAKE2B df9a2c5a04add3716b31aed17ed44389a24bdaf4d174ef7d728a74d5675a68857f2ac5944bd608e8da56a8c18c3ff02f3ecb07b5b43c7734ed7a2bb16dadcf03 SHA512 7ff4909d046317a4ef6329a109061d771a054672fced6365ec2c2d7487f665b98ea90ec5f5a45c9410e1916ad0122f92828a3267ea829cb38cca90ed9a503a17
+DIST firefox-134.0-pl.xpi 661734 BLAKE2B 0f83a5628415325aa808244c91ea7cd5483b19b5d6237ba0b949fb0ea4a2e4b42d002467d6d6313b0870c0decfd1b28e4969a94a136f9ae9c7a4cf719281b70f SHA512 ad8329ed1e96be483e9a1e809fa4dea71d867e7359b13e24db8b71dbda908972ed456ed89917eb0af4fffc4e8c952bf2060bd96dc46a4ca980ce839463765ae9
+DIST firefox-134.0-pt-BR.xpi 647955 BLAKE2B 8c8006f9bc32dbd1c24827be85af0be7f895a40a2ea7d7a2ce5f57da82381f3f919d132dba4db181c84fdc216ebacf49deddcb0fa290a4c64bbd3513f7e67771 SHA512 5a5613be6cb85e6e5175b7ef028a6554c37748f6439bc8fbcb7c0a92c94c7e0a21c1b67e1b6d243fcb533af9c5550435f4a19e132df98642d089c00318ab6dd9
+DIST firefox-134.0-pt-PT.xpi 654969 BLAKE2B ef28cfb5c6432a7a6544f689b2650b220f539bbae2ba8db1643812eba253168abb91be37679550155b090c3d9111a6636aa13879018c79aee838de6ad075033e SHA512 2f6119783cd9c5f7c8426b9be9dfcf3856c465e63966d38d4863b15734de53898c00fde3896beb965845bc0df2a33089b4353b82ca812660efd0ef73256f420e
+DIST firefox-134.0-rm.xpi 644069 BLAKE2B 4e00656d142d6fe2b47e1c37c44daf99ba49ef5e2c977fc4608dce721870fd18aae83802576e917e36cb8e1036ad8784f7cd22d37ef3da2dd961d56f3c87ada4 SHA512 5e95251b36d4ac8cf36307c2fefa6fecdba532177efed439d12f5492aa6b3114b2f13c31411ae38a7e05e3f15da703c4f06f3c519309349424ea4140ad59317d
+DIST firefox-134.0-ro.xpi 554204 BLAKE2B 152690cf27c8b66b1201ed2d5158ec466a2954cc94ea39d6781811fba05499fd127e9b0ee7fea54f48da69c183d91901e39f6e01fb124b51d0bfd0b002d23737 SHA512 a498a0be99a01ce8c70d099e32c25f1b84e9442fd940d288c2037e646db8cd408c7bae12f9a764759b04065a47aa455e5da7f9075d3e71e3be2516d19bb62cd2
+DIST firefox-134.0-ru.xpi 750993 BLAKE2B c1696b5da1d593a3439a27ceee154b12db6256c53cd45c29a684a2bdf6b4bbd3fdb8e70f76d488f8c5653db3875aa67049acbee5d10857cbc7ac9324280a0d8a SHA512 8777c13f33b6c6cdd8a051fdd1b4671a77d9e8c74754ad16129f28042aa5ad44981eb2859b1abb9cac6b8caab8163d0f4b909a9817b52395b9c233c817fb7451
+DIST firefox-134.0-sc.xpi 602167 BLAKE2B a6c567999ff69fe2ce1e582bf1832ba9e5e96d522acdb8ab93dbfeb70131d9b241d71b0a1a16c18569e754c2415d6241acd4b2753c9da70b90334e9c42113403 SHA512 a4ca14be44f2b8ded0152b9c5bcffa710dba48d21f5ec96c47251e327b5cede1965281d2006c3ef881dadb317fcfa0b5bf962227773968b856946789a1e5e68b
+DIST firefox-134.0-sco.xpi 515423 BLAKE2B e1d0654918a714460c2790717346c469671735a07f330fcada32c4947991e7b0da93e497eb0e80d893f03b12097edf1d71dfed5cfa46eaa582ce8de73bcae4ad SHA512 7cb519be6f4c23b311bf3423b69895c19fb14e6fd372a2b75fabc7ea2d8c63cedf42f28f3c6e61f37db47879ada678655238b223c21686d642a8cdd6cd80dcb7
+DIST firefox-134.0-si.xpi 626867 BLAKE2B 077c7f1fc1320669968eaf605c6614799f6b2bafcd330b3f489a0624ff25e831a7bc38351bbb5adc0de64dbe04ced481f1c0e7a78ee45e868b5175fc8063f161 SHA512 b627fd841542107b098e4c6b7e705bec76f646e1822a99ed70daed8a5bba0048d9092aa958d1ae73bf7a41ff3d5fd74490d0b973e448f9d10091fe83d8001014
+DIST firefox-134.0-sk.xpi 680487 BLAKE2B c3dd9a39b74231e0af76498557d770898ba4620f95f144fc36d53d0ab588b350ca3eef5b8071764cbcdaa5d6005c23309d5bed497220ba8a340ff8582f99b1d6 SHA512 55b3c48e0593d0902042557245c5f2747e3796b24e5bdbf5bcd7c22a7c221684147058daa599eab3d0556fcde28620d81bbdb24a2ee874e15414ebed39f6384c
+DIST firefox-134.0-skr.xpi 727787 BLAKE2B 43539ce890c628d4cfc07d5169de790964f1a56ff17b7760e08e189c0de717f6a7014ce94176e2cf3539067b2906ba3415f183d3646499e77d51e0b3f9a91077 SHA512 2df6f26d44f1e0fd8b61660b2e493c5f6d477de708b86a08d425b886c4973bb92a4b98d18f66a9e2e99966e47ace1c2a2f143ae82d3681a2d37454ce5cbfd91c
+DIST firefox-134.0-sl.xpi 647162 BLAKE2B 59c456d0a606323663d03a7e76344ef8c5b7d909535017dee9a711bddb8672e1df23f10568ae5f09d49547dd97b4c03e28546bb2a13f3b45b706228c125e25d2 SHA512 c23b7540f60ccd69db8a462d34747babbd825ef35d0f68d72a1ae329889cfefcc0916ee7ffa6aebfd4cffd757a2ba6f1142cc3ee2a0cd95eda342fb947d9cbc4
+DIST firefox-134.0-son.xpi 420277 BLAKE2B dbf934e75653ccd7f8c7f987b5640aae1891c02a07baf0718e7cb0a633f20b079d910998242ce37f0105650e3a2777bc1f1da7fd46d799839707a615df060ed1 SHA512 9355c045bdb761e66bdd7ccb131993ae073015d9ce80712d64eff9fe7c27a109308dc14e6090103ccfe75c4d375b3348688cbedc47fda69cc6b13a95ebcb4239
+DIST firefox-134.0-sq.xpi 665689 BLAKE2B 7283bb5bfee040c8404bb60b3a4bec4a420ce9287719cbb22c4f596b7b00f98b7db25292c69017c92575d1088b7819946db20b0eca69d8bb6a2d67e44573485a SHA512 f1bca9246daba492d5e2ffb29781cd299eda64e4944ea885d1b25a8b31989831b83f830021862431ec5828c6bc35154a359b388af3dcb4caf8a28b0e3506e753
+DIST firefox-134.0-sr.xpi 676512 BLAKE2B 5052293123365b0655010824485aac2188c41acf68593469970596350de7db000f98043d32f863f7032253ae1075539178dfcdce8c4411175a15559335737c55 SHA512 6ffc9baf2fa80bcc61337c75b28f77b9e5c9915dc8c4ab3db3d968be0f80d6f5cc62f3e3057b5423fd158b663066a0f9b938763548c8717182be9911c5ba9fde
+DIST firefox-134.0-sv-SE.xpi 644572 BLAKE2B 2473d4381cc01a331621950916badbf6e8ed441f81bbee1f91fd86e218df50be1bc0c33a9f342454731072be9c1b39a05b0cedb1811a39c483952a676f471f36 SHA512 b364924165cc1e463ccb572ef79cfd2014352ccd4ed73d09215ce977f9682f0cb1f7653bcfadf26bd8f73eb1cfa9c7edc9509c1de19620eb3b7400b10792ada5
+DIST firefox-134.0-szl.xpi 530484 BLAKE2B cb68fb9eb03a1b2fae3d3359e9912e6317f7487709093151bda3270d0f27e803c21975964e02c424e7fe7c9a6e0ad78c3d5b6f8c7f73bf1861d1174dccf647db SHA512 247dc50b03ee0db9773ccef63b69c81494ff9f68d9a7958730aa466ade17f1d01fcf186e9619767c49d75eaa8d9726ebf7b4f03c3fd24e820b8e4d2b53a4222a
+DIST firefox-134.0-ta.xpi 511223 BLAKE2B 923c419aa600a129a26a4b6ae8f25a19b17804ba3b158904488c5fd072eaa04955dc74985f00baac68baf8583ac82b76607167873c3d86dbfc3ee76503c9208f SHA512 6354017396ca9b0aa2c7ab1922194b6406cb14648d96c7dce53f6d59933245e21292009afa8154358e82ee46da98caec94c6728199cfe5af18fc6013911129ae
+DIST firefox-134.0-te.xpi 575374 BLAKE2B a6cd392aa090ab43c15a25547dc635cdc2515342d4e71c5107c8dfa584861a50615bfc9604439595de43c66878df45617c6f114fce42136cbc3f3a690187330a SHA512 a4024e7e9a7301b93ffa0e19f770ab2380db675802d7ccb55f709d7ebdfa11188372b7eb8a83a2fcf44260943572ede7ea53823300609bba570151df356f732f
+DIST firefox-134.0-th.xpi 727737 BLAKE2B 5db06b144fd0dcae2412ed238c2025e87069972057e6e00c27cbaca2c6864537bbcb0a527ae0f220b7e5a3e9faf02034733a29f026e75be4a95b2aaaadb1e3df SHA512 f2580bd7fdce036cfe275d1bd0a44b31e93f155faccf980a4b662acc2b6daf6dc463911888d7a786ea107a0f8f986aa7999d792b24f908f87263b9ab6a5fa660
+DIST firefox-134.0-tl.xpi 538552 BLAKE2B 15ee6b545f884659252025d983339d71498b258b50062a1ecf6f542697ae5c4556acb7ee898471ea530c97e6f754180cc010f91ec50c9815829615d179000c6d SHA512 c14a59836795062f96059b6eca08b5b46dcf056bc360ddaed6181fa06f80aa8987955204b42da81b4e850816df265b50843e7b920f9e750f2f8e6530da0e16b1
+DIST firefox-134.0-tr.xpi 656854 BLAKE2B 706941944a18ea03de340e471e418d4201058105cba51a6eada0805505dc8b17df8d62bfb95209fd8de67e7500106bb132aee58f4484002305cddfc2cafeb6b0 SHA512 f8e31694235fd77d5d1e3136dd3a53ce4680c07b3c243a0d70e2f32ad98801c3af7c417de2d129fdb170238e6b55499f213d4d6e2b7437b1fab9f6743b1200d7
+DIST firefox-134.0-trs.xpi 507813 BLAKE2B 7f1fb796821aaf37fbf7052163fabedc57453f9cdbf2c4521db48e3fbe871dff6c2e873be091923073703cdc27668f31d13fee0ae82045f8dba4e7805af94d96 SHA512 9383f0a069e47f5ae6959df6ac026b69d074a7b163ff5c1f3c72861d558d0bf9ae0d280853414d84ae5d7b6f32688d134f5a5db0b6b27720747913e0c967248f
+DIST firefox-134.0-uk.xpi 742077 BLAKE2B bbc0c8813459ba0c0f54fbdaaecadc9c729535b896005f6d2947ca9ba09233e7507ff026579632604598e768d396fd34ac3291d25a0ad56855584b24ccdabc85 SHA512 920969f555f31fef82325d8cebd213a59c7b0d895044538cd34e5eee0b9f688657e76e9c0f7c6489a7bda660ff6747a7902515734277adea2a7939ce59a56d96
+DIST firefox-134.0-ur.xpi 564382 BLAKE2B 90aec1224989da6d6fcc88e99416a02b84909bf018e594a09082fbfd4947cd9afd649e83b972a72791a2074ea4e01b93997bb6022dcebfc0c5987798d49fa2b0 SHA512 e1c354defed3fec88cba9869296ac698d380c7c4450135ede9409c0c049bba0af01e774591881bfb1a71536361e2d4c82e67848138a37cdced3bac6b6f4f37b4
+DIST firefox-134.0-uz.xpi 482831 BLAKE2B e9bdaf98797a83b71e49390d7f5a048158f771734d213165911160550d5cc092f4701922ff3ab5c58ebedca88ee45a369977d6ba76249797061987f986b694c5 SHA512 ebc41f4d9e12935d6d815eb782a41e7ebf8e237f3e0d3896f5330690b80454f00c36d3f067be26b068913bad93bea876a7519f557aa0c497298c6225a0b99161
+DIST firefox-134.0-vi.xpi 683428 BLAKE2B b734c15bfb6712a665ea53d27c6eadef985c3c40235b52d4438ffe8c3984b387468c95e4b1671ed179377d94b71eb60e7275520806707b5aed19ccf14cc044e8 SHA512 4e15d75acf84a780bc34cf11d78a0568fdae087be441870df82f8fbb6f99f6bffc45763542d5fd8983b4410d7c10d6c900730c7d55b3f611c2b302e71dbb8a83
+DIST firefox-134.0-xh.xpi 421002 BLAKE2B d491bfa4f6be41b9403e13e0c1752878222a0d8f6eb3a7466e19efb217a2916143beedaab4512378811faf733d2ab39e9355e4bdd7c45333499be970333b98a8 SHA512 2c6005ba3716f6124a4baeb3210b2cf90ee9dbc51a1b3ace99dc1a3b72d3142c6b62d91363be17629cc0819aba23ebf38fbd53eb37b929e04231eac52436c4b2
+DIST firefox-134.0-zh-CN.xpi 684492 BLAKE2B e0d23ae8493c56b890e1390e6f472cc6d8921f296f0b792fe7c4dc82c3af465597152ec41adbf819a5a775af8f2eb486f3a62c01de246dbadf106926dfe855b4 SHA512 71486999caa8e8a3f8b6420ebe97111855b132fe1f1837ae85af112cb5a30a6b264bc659060f9da48aa7c7745515dc30eb05e44b2ffeada09b5885e53231e443
+DIST firefox-134.0-zh-TW.xpi 686751 BLAKE2B cca65375ac4d4569873a79d331604c88022b9ec8a19967d5faeba855aa89092830cd1cebb16d45aa8135bf38fbdfec53c69a307e79965a8ffc4c308ac617aa56 SHA512 18d9b8025eb99302644b7a2c535e750414e0f419886c4fefb517403881798bc66aa5084e3878b9e37aface79a624c725a62f3b00a89825ac061ff2469a704485
+DIST firefox-134.0.source.tar.xz 604421068 BLAKE2B 599049006a65bc70ce7a43b8412a260e033888609fefdec33a7aa4cf5427e0a89a725e6a74b396097a9263acafc9251f9a54294c666af1f7355c66ffeff4a007 SHA512 1275a686dc0a27b48df4ae05616511512f676e03474e3095b2521eac25a385d345aa3e8786716dbe812af49e07d72b32772479089d648968e2004ca0c9c35344
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
+DIST wasi-sdk-25.0-arm64-linux.tar.gz 115160800 BLAKE2B 1ce22aaea87d0720d40d46ebdd96508c8fb0593b53c4489022fd5a1a9afb043a26a6e162a992d73454f612f2b6ab01e17a99c189c0c8b8c2d2d68fd96fabee1b SHA512 ef4eff22c1efec4dc5ab199d09d93ee0004f9fa67b32cac0030f8b6a40def10f714391cec8e803c200995dd8bfad3ebad9ec79b4195aa6b2ea61ea47a8b9e61f
+DIST wasi-sdk-25.0-x86_64-linux.tar.gz 114450290 BLAKE2B 07618828d4c25d67421aa72d38fc49bbff9052b8ecfe0fa9f4207e71880e9c650f458567cfa5bd389d5f830fcfee89142a77d33c29e7bccd1da7ddba2bc47b95 SHA512 716acc4b737ad6f51c6b32c3423612c03df9a3165bde3d6e24df5c86779b8be9463f5a79e620f2fc49707275563a6c9710242caca27e1ad9dd2c69e8fce8a766
diff --git a/www-client/firefox/firefox-134.0.ebuild b/www-client/firefox/firefox-134.0.ebuild
new file mode 100644
index 000000000000..fd8ced9e760d
--- /dev/null
+++ b/www-client/firefox/firefox-134.0.ebuild
@@ -0,0 +1,1373 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+FIREFOX_PATCHSET="firefox-134-patches-01.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..13} )
+PYTHON_REQ_USE="ncurses,sqlite,ssl"
+
+WANT_AUTOCONF="2.71"
+
+VIRTUALX_REQUIRED="manual"
+
+# Information about the bundled wasi toolchain from
+# https://github.com/WebAssembly/wasi-sdk/
+WASI_SDK_VER=25.0
+WASI_SDK_LLVM_VER=19
+
+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-sandbox? (
+ 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 libproxy pgo pulseaudio sndio selinux"
+IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-jpeg +system-libevent"
+IUSE+=" +system-libvpx system-png +system-webp valgrind wayland wifi +X"
+
+# Firefox-only IUSE
+IUSE+=" +gmp-autoupdate gnome-shell +jumbo-build openh264 +telemetry wasm-sandbox"
+
+# "wasm-sandbox? ( llvm_slot_19 )" - most likely due to wasi-sdk-25.0 being llvm-19 based, and
+# llvm/clang-19 turning on reference types for wasm targets. While I hate this REQUIRED_USE
+# constraint, it's either this or removing llvm-17/18 compat, or having upstream to patch
+# clang-17/18 (not going to happen ever). Luckily clang-19 is already stable in Gentoo so it should
+# be widely adopted already.
+REQUIRED_USE="|| ( X wayland )
+ debug? ( !system-av1 )
+ pgo? ( jumbo-build )
+ wasm-sandbox? ( llvm_slot_19 )
+ wayland? ( dbus )
+ wifi? ( dbus )
+"
+
+FF_ONLY_DEPEND="!www-client/firefox:0
+ selinux? ( sec-policy/selinux-mozilla )"
+BDEPEND="${PYTHON_DEPS}
+ $(llvm_gen_dep '
+ llvm-core/clang:${LLVM_SLOT}
+ llvm-core/llvm:${LLVM_SLOT}
+ clang? (
+ llvm-core/lld:${LLVM_SLOT}
+ pgo? ( llvm-runtimes/compiler-rt-sanitizers:${LLVM_SLOT}[profile] )
+ )
+ wasm-sandbox? ( llvm-core/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.107
+ >=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-libs/harfbuzz-2.8.1:0=
+ !wasm-sandbox? ( >=media-gfx/graphite2-1.3.13 )
+ )
+ 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 "llvm-core/clang:${LLVM_SLOT}" ; then
+ einfo "llvm-core/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 "llvm-core/lld:${LLVM_SLOT}" ; then
+ einfo "llvm-core/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+ fi
+
+ if use pgo ; then
+ if ! has_version -b "=llvm-runtimes/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then
+ einfo "=llvm-runtimes/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#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"
+ elif use riscv ; then
+ # We can pretty safely rule out any 32-bit riscvs, but 64-bit riscvs also have tons of
+ # different ABIs available. riscv64gc-unknown-linux-musl seems to be the best working
+ # guess right now though.
+ elog "riscv detected, forcing a riscv64 target for now."
+ export RUST_TARGET="riscv64gc-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-sandbox path manipulation.
+ if use wasm-sandbox ; then
+ if use amd64 ; then
+ export wasi_arch="x86_64"
+ elif use arm64 ; then
+ export wasi_arch="arm64"
+ else
+ die "wasm-sandbox 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/chromium/build/toolchain/get_cpu_count.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-sandbox
+ # Since graphite2 is one of the sandboxed libraries, system-graphite2 obviously can't work with +wasm-sandbox.
+ if use wasm-sandbox ; then
+ mozconfig_add_options_ac '+wasm-sandbox' --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 llvm-core/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
+ if [[ -n ${MOZ_ESR} ]] ; then
+ 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."
+ fi
+
+ # 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/metadata.xml b/www-client/firefox/metadata.xml
index 0d8cb0c75363..8508735d5c7c 100644
--- a/www-client/firefox/metadata.xml
+++ b/www-client/firefox/metadata.xml
@@ -38,6 +38,7 @@
<flag name="system-webp">Use the system-wide <pkg>media-libs/libwebp</pkg>
instead of bundled</flag>
<flag name="wasm">Sandbox certain third-party libraries through WebAssembly using RLBox</flag>
+ <flag name="wasm-sandbox">Sandbox certain third-party libraries through WebAssembly using RLBox</flag>
<flag name="wifi">Enable necko-wifi for NetworkManager integration, and access point MAC
address scanning for better precision with opt-in geolocation services</flag>
</use>