commit:     c3c74cf5474fa7db0e7c5362293d2384ddd2991b
Author:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
AuthorDate: Tue May 28 11:54:03 2024 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Tue May 28 11:58:13 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c3c74cf5

www-client/firefox: add 126.0.1

Closes: https://bugs.gentoo.org/932601
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 www-client/firefox/Manifest               |  101 ++
 www-client/firefox/firefox-126.0.1.ebuild | 1417 +++++++++++++++++++++++++++++
 2 files changed, 1518 insertions(+)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 774efe66c72f..f0fcb00c8fa2 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -602,6 +602,7 @@ DIST firefox-125.0.3-zh-CN.xpi 645753 BLAKE2B 
a21ea3af45235dcca0378a16cbad27b56b
 DIST firefox-125.0.3-zh-TW.xpi 647651 BLAKE2B 
c05d06c30de86670e0baeacf2127cc53cbc8239860d01156f347d1bf7c9fb05aa568c4ac369df87a08fbad29fd2adc632a9ab6bd60fed8b55a64227646bc5a62
 SHA512 
44990a7f63b54e931b6d001dce27a31b3995ccf94fcbb7322f3e0f7ea806a5dc1b76a206066893d7e56616a2dd142ea0f81f0b4ba8b14286a0dba8d9ba4a22fc
 DIST firefox-125.0.3.source.tar.xz 551590872 BLAKE2B 
a8379eda733981158248134183a11c7fa4a2de7952a43b861e653a0d7c48743442c26312419ad85be2a5e8f242d23dda03ea1aa5041916a3e44d06926a8c1342
 SHA512 
18e705a3093290311ccb5f27f01e43fe243ece94c1769a9ccc4fa53d370e32a1ec6a107cdeb531e9468b9aca1a1fe668161adb7acc1ec65fd383837882c7d484
 DIST firefox-126-patches-01.tar.xz 17024 BLAKE2B 
f6524bb2a1118d4015947f63af10c5c4a0a729fe51ae3744c912e523b813597476f0e8b38558de8bee8d7b68b2f2589bf3f260cf0f97b2a85f3fa9e683ccd6ed
 SHA512 
51162ef122f7751340eb20e68cc3bed4a348499618c51e498a605ab08105a132e44d4e4bf01ea08eac7c57d90963bc0572ed709bdec6fa77cd9f28587b808755
+DIST firefox-126-patches-02.tar.xz 17408 BLAKE2B 
631345d33f0d3c5fb09657c9f286b9a73554fd6c9229dc065fbda482a853cf6d83ddfca77d8de44e650a147fcb0cb4add2b9dd6198851cf11bc0198e959f9112
 SHA512 
21c3f69c86fbc028b94947f1dec301c3fb829de53fa7d745e7b8e055d6fcb5f35581a2488340fce29646e70ba671d6b271843d4336b045b5b7a7b1881611e45a
 DIST firefox-126.0-ach.xpi 461750 BLAKE2B 
bd22a8b4dae2dda16e2505c911231b85e03d7de46875dc0ae0f8a1ade3dc415e26bb5424b7c300d8c6964a4326b6837bda7646828a2943a5405c121a7ace677e
 SHA512 
761fe4dadebc6dc9b01cc66f1e60f2ad67edb9d8581056758ff5ffd213d74bcce198cdb32c9ddad2b0fb7e2653b67e91f0a61514b4e1a78983136f68c94edfe1
 DIST firefox-126.0-af.xpi 415209 BLAKE2B 
4478650e633786f05d03ace7b22a339d64210cab324754ccc48a9f416b788f2f7dbd43da43d856bcf08e65f2f6f12c09c48f67a0aaf7c5f5e83e9c7703a36bf8
 SHA512 
3d2c0893c227d67a7cae4f2d27b0ed5d93f440175e21fed5b26f00500b34be1764a8ab00c12bccfd8296e966bfa38cc82e492721d768dad61dbc356f81942aff
 DIST firefox-126.0-an.xpi 503683 BLAKE2B 
30b353afb4658db21daedf2ad24acc6aad4715caf16aa63e89ab95df0e5558df9c66f5f6ac1522456dcf3c75b4fe7c023a1f06895055a9d5fc69f6d6e97b34e0
 SHA512 
53da2bd4337106d12f06911a22e29be794f9564dfe100b281a240fefc17ba6dd9889ad53471a811faac5558ac4399f7c46117087d6071672c0840108ec9a9e1d
@@ -701,4 +702,104 @@ DIST firefox-126.0-vi.xpi 649540 BLAKE2B 
545a01d3d901f2c8013835649db47c547ec9207
 DIST firefox-126.0-xh.xpi 414864 BLAKE2B 
9ef6cc38daec68367317e8c29ad25d8aa1d002aac87d288e0d2f86342b7b7f76a8822d910fbb3e8f5df604d37b49bdf252890659f7e45261a0714320603111cf
 SHA512 
3b00c25657d9b8e71b53c0699d53bdca327750f4007a54c420657b884524ed1da6e2e0276f2a81f361869b050408590f73ec73f488efdc28820d6ae8a56f077e
 DIST firefox-126.0-zh-CN.xpi 649590 BLAKE2B 
1919defcbe80f49756a984833c2e7d809728394df7d4897d0c805ed5ec6318e8b137a7866563ce9ed2e68ed51a3f6695cee8c241533bb2f43814bf916778a716
 SHA512 
67fb4ee9c44727e56f5f01e8e90817c582e619af051e43edf771f75cd20e8858dac332c0f422df8b8017dfe91c81d6a8eae1ce96a3f927726b8518aefb1fe28b
 DIST firefox-126.0-zh-TW.xpi 651627 BLAKE2B 
34dbf056777c8345e4da72b908af5cf300d649fc8fa5896766f587f36a051418d06126cddb841caf3eaae0c5f2285e13c6929aaad4aba310d8d9e40a2f417cc2
 SHA512 
154c03337b9638c04d62f1282aeb7d3785865e8af63382ef5689fa30509d5ccb0745f6f15a08cdd1c613d24ada133095d2be08a7c9f7b546fefc3d48f3344858
+DIST firefox-126.0.1-ach.xpi 460828 BLAKE2B 
b15137e1405cd3d5fac4817b25f35e4f263779a354ddc94c5e3a5fb1211fb3a4154c666b208b39d3ef51c762a0cb64a12cad7c7502c315e6f4061a0f70f51511
 SHA512 
01c01d57ffd56c5f98f2e2cd24821645a7e0d04452bdf77a57e067d2aaa54c3115770e1f038d08262acb0737e570ef680f4c20e20e28c16753a5ee8d9697904c
+DIST firefox-126.0.1-af.xpi 414283 BLAKE2B 
4704effbce0002c6a20bf99f43dacc37a3e76f5d02fe02b13f820308d32793df314bcb225fb1df92e009053df68544bd61c74dbd6eabc299405f36b996552be8
 SHA512 
2a5b64984539127ab2546a84febf00c13e19afba02b6a4d4b68a508084cd484e309ba400acc506342f27dc7da8164e1d30f706e5b58089c9985038d710f3e72e
+DIST firefox-126.0.1-an.xpi 502765 BLAKE2B 
4dbcca143ed116c99f0e07c35bc73007abe42c4eee30677c502a442909350b2bb0a305dd0628f7fda97bc84ee6702baa98c9d7e6b6c825a227eb13e47e469223
 SHA512 
ead34f19da7c4408b48c899561e8c7ecd25aae99910606f63c7472e5c25f8af789e513e80cd97fb215c45345d04089a8e3cdd67f90e0e1ffe4c3210775f8d969
+DIST firefox-126.0.1-ar.xpi 606879 BLAKE2B 
dfa38eea9d999f700b9434d47c32d6e1d1e6a1775b37b922e5019ba57e6a8491f4ce6b85267afe58630e3f5c4356bc316be4a0dcdba4c805585537e91e9f2757
 SHA512 
accd882aca83ade2fc4fcedee15856bc95d4599772ac72aef4fa4f9d11486fae557bd6874a96e0d585586bf28d9a1a61e2475fcc3400522e39e34b4c13481a1d
+DIST firefox-126.0.1-ast.xpi 492945 BLAKE2B 
d7a8b250e139cc1d3f95313b24f49697cf28ef328611d3ad8d6a2a175787bd8883cabe50b7b71e858fd2911fc4788038e6d0f82f60e64ff4c842b228e45476a2
 SHA512 
f7920ac881f4d93c7f72b974eaa377719dd4675ac743cf7996342ec50d58d86342e3099a9be0274cf5b448371659be31f23929291556631a59edacd3a5a2e88b
+DIST firefox-126.0.1-az.xpi 487518 BLAKE2B 
70319dae9ec337878e64157d6333c84a61953c79eeb28a80381dd708c219948ed6e62cfec8f689c0149105ef11f012f8f7936bfb607b8c5bfa95d3902ebde6c1
 SHA512 
d3022f4e9c195565e6e6dbf3202f210d76ced81930611b77e5251c859b214f8aa077550971f54ffa9250890577e5b514e7ca862786d3cb2f8569988fec14f4a4
+DIST firefox-126.0.1-be.xpi 706207 BLAKE2B 
41a2162a0d6e695154859fe5f76f4ffb1d938c50d060d2b629ebcb45442870e2287bc2ad762c91b83475c6b9ace28f583a961d59a28a29c0d27fce51b0885349
 SHA512 
6924c38e830dd8efb34ac3ba37a0dc31270f2c90c3befc86c620cd346599516826bd950cc4b9a629275f72d979a2117352b8ecfde46725ef8b474d51f0637a0b
+DIST firefox-126.0.1-bg.xpi 600540 BLAKE2B 
6de31d292e9e7af6daece21834709e4d0de7b2ce8315a6e000fbca9680a14b85193b5f4859109b69d61ddb111540357c2a128f70b39466715b02f1bd9f99425b
 SHA512 
3e421b2125becdd58bb9e6a2fe4f6c11a804c7dbe62ac686d9eec9c8f3b56669f6ee48034cec7d289a6a9a893d92f50675fb9f7ecadf252267eec1d33bf238f9
+DIST firefox-126.0.1-bn.xpi 578258 BLAKE2B 
789e20002fe2e54f12a0cc350a6cfb0e5f74927cef1497a6895467e4e231e381337be596725af3a6091a02d29b95274e59a04cfa0269e0ea886e1e7d26bc8827
 SHA512 
5763cec86b58362d3523efb8a2c1cebe043243c0f4fad015bc1dcb7392164c44065739867c3fdc33220fdc520cd632f79dfc9af825322fa60cc793f38d5e5b98
+DIST firefox-126.0.1-br.xpi 584218 BLAKE2B 
d52fede774aa48a55cc422f30f06de8ab7c30bbc6c81ea35acd48ce406ae6bf41bfedb375f52e7274a92087a23e9ba35fa2f61ed2591b86dca28884e15fc28fd
 SHA512 
fff3f3118c0f51ceb06fc15956c20559b3d6e853b33666725b3eb17618b25b561509e061fd464dd80105ec2d1cf73b9148a46af7374554574a7a5cdfb9f08def
+DIST firefox-126.0.1-bs.xpi 498264 BLAKE2B 
64e1ffb3878a455d84e48bd1e4a82d39ca3af6d518d5b15397b58e9b3daa090f9466082ffc2dd7ace8ec08a3ebc96368354bc00b4573a37f5d40b25492a850fc
 SHA512 
38fa1ebf2d3df55b8e37e480b6582c592c0326290517a935d7ed4d3525ee70e8d720e79e93bd2e3c2899b9e22f62a8f5f075c79b4d80aab596bd1aaf437a66a8
+DIST firefox-126.0.1-ca-valencia.xpi 542918 BLAKE2B 
64dcf13efaec4051b0a3b6cb79d714399fa2bab927c7655a0a661afda06b16e6afb48f071434c3a373fd2c0bf9e799a786939773fb95c3544854311fb51ec385
 SHA512 
bb51eeb42b54721e6259b00e1fa32b44ddc9d2affaf956d842ff82a04f3abdc25b2814ae977fc8fe4cba6125a58c3e36b931f6fd3eeeaeedd15bcf4c752e457a
+DIST firefox-126.0.1-ca.xpi 581729 BLAKE2B 
f64d24d97951cffc8a9c86a6f0d5cf3d4f6f9c375a353c5c8e2c67db5cc38ba7a82541615b5505fe45dcf7fcca3a116967166ae6ef3c824c3d13f651575cee5d
 SHA512 
09b7908a47d9385bb6adff5a8a182c7c5eae049bfa5b7087b386b84fd458a09dc3f22f5bcf2c617540c91565f820587c000c592c20ca1437a978e888aea99f52
+DIST firefox-126.0.1-cak.xpi 589494 BLAKE2B 
64d80ead40358eb9b21bf89663907d327e492b9f62e64e0587b888aa6895884fb9cfe8426a3f97892b48fa2724eb5a3929019187d017fda9494b76ea97fe6ad3
 SHA512 
9fc2230c79567abade024be5edb7b7dd5eaa49c9607a4aa17a3791dd52e483a621b44528881235c9e384e134b2d7a48210b651b5995087938fc5e399b76b71a5
+DIST firefox-126.0.1-cs.xpi 650908 BLAKE2B 
ac8f43bf764c10ff8cb39e948a2347607a547c104f16726b71b0772f06c365124b6e247532263f14fd65458dc4f8de9b9f7e5a15ff26bb2a12f8b9247219222e
 SHA512 
7127932c56433b2f508e83cd7cabeba25ebf2a4b8b870cbe0003ff192ae9b8af82c8a7548022b203ec534c56c183a0148df9c76625a2803f6772fc4503c2aba4
+DIST firefox-126.0.1-cy.xpi 616326 BLAKE2B 
c35e71a80b04f3f8a422f0888f63d780ac5dd14d592c5fed165a3fc108027564ed09b26c8bf51f9ad7558c2e8aaac5f06e77de75f05a405576e2180439733bd8
 SHA512 
3bd707be15234fadf0d660837444eac30e4a9a7ed738dcdc4dc92e425aafaf282b288a0796e6af088e5f09fc99ddc8e8925a6f18dd41e03310ce92451c1e4af0
+DIST firefox-126.0.1-da.xpi 604650 BLAKE2B 
7016806efaa576bc76caa3db8ebea86aaf675d3dec54c1adaf5624f614cf16451c3b7695780b5bef0fea222d46735123f0e95551909d44a0a54f97779eb38e69
 SHA512 
029f72b492a9458895ac2a5907dec6f9fea95362a88f40619e3c40dc732751bf6e857889bc35dc08126426752ccc329ad9f6fed13e5d71d24361f2176ac6f414
+DIST firefox-126.0.1-de.xpi 625881 BLAKE2B 
a21a882cea813fe3c1772b77ec384e5a511bbb7a34a23e68078de27a455af3eb117f27ecc27e185c4ac0acaa55d163e9bf047c8267f62942f12d9fd6daac4758
 SHA512 
965779052b13327468f80606375838330e7b11f4827656c4b2bd2d2bc5f1117784df2dec1667a9e5a939f61038f1649b36601f660cbbd4341d2e7552e0639e73
+DIST firefox-126.0.1-dsb.xpi 642402 BLAKE2B 
666656b7bea5b233633ba2aad69611b8b069d0cb01a4f18d8c689aacaed88feb6888abe8745a04c7e74798711614ab9a967d3927243f78f860e6eeef454dd489
 SHA512 
4d1fd00d8f347d9210994a6b1de7ed74df815cabe9203f7572d1a9b1fd0e74bba7924e416eff0fc7e6a469526b0d42004fa5d4b58e2c63bd3c151a3fb1e58be7
+DIST firefox-126.0.1-el.xpi 723120 BLAKE2B 
3370a0a67da6e5289f96811930c2865ae8217da7b1f6d284c109173b4d08af2c308c8015555b10c21c9b66d9a152d1842ddb12649095182ce4215c91a9042577
 SHA512 
91c65718928e0b24e56d26b65f796520145c5427829e6caed28dfe6c8a7287e145c1daa8e4239ff0f34cd73958164c25c892428291691d67115a9f58f1e9de90
+DIST firefox-126.0.1-en-CA.xpi 576990 BLAKE2B 
2bcc669fe9d3bad5ce24fffc00759b83a0bdd4b9756488fdcd3fb86f21efd85f5006c96869b159445132f0e5051210932014269d4841a8022da5d9af59d23420
 SHA512 
44b15231214f7434ec378350c79161e62337b319e9ac1fd0e123a49a1b87d8476221b3f4f42889ff531fc3f67d0962fcf3d2bb1c1e1585ea8992e4e20d40db6d
+DIST firefox-126.0.1-en-GB.xpi 577579 BLAKE2B 
b1797210cdc3a73a28a79ea457bb26cb1bbef07f6142adfbf33ecca9a47b967a64207482935520ee103a24faa86cdde44ed21efe8b09379cf68ebcbe06e4448b
 SHA512 
196d14dbcc3477af219c862de7d2719eab524fab468b34d2a69ee0dabd80bc9ba691adb4a4481fe8003a1b375ccfc6d46f77be46a6a4d258d24dba53570912e7
+DIST firefox-126.0.1-eo.xpi 607948 BLAKE2B 
e7a5d4b5efa87cb0565225199a48a25d40314990631c9277a5c8965401a18f7a4df9807a5beb503b6593897791d6f447f40cb020c842675472108716d5e72ba7
 SHA512 
6187707c4d0bf8c73e3f95ccfe4d2c7ada08d1621017c01d330f7d78650ba152be2d224c64ed29c19d1b9cd566384b193edb356932ef8ea8c033c03ee6c6bc20
+DIST firefox-126.0.1-es-AR.xpi 619820 BLAKE2B 
133f958434a6811103a05a095ece2ce99fdadf108bf39ce6283299a0f8ad9882df0dc31d7f1ff0813eb1d5e304f2a79c2b5d59a7264d8ffb3d1e27933527fc18
 SHA512 
8b7b97448d5b1ddd7ec41859f47b3ae632f0522050a3261cd2c148f6b0e29b3ff206898ef29e54c95c83d0ebdca551cda664ac7cbdeb23dc88b08fec4d5f8f6b
+DIST firefox-126.0.1-es-CL.xpi 619032 BLAKE2B 
25dc7eac927f0da1d747b67caa3dc57f8f3d0e08e1c3b5d23f866c7ac2848927820119a7b5fd18cc19a42a7b9c694e7f700cd3f67227669eab9fb7b3daffb032
 SHA512 
6f82e7e1589c155882c14b6ca43346059937a928128add9911bee37befe53d5fb98a8e99ea31ca1495828de295d4ed88585047193adf54d09077b5889ba8b56f
+DIST firefox-126.0.1-es-ES.xpi 613853 BLAKE2B 
54bc4e3e947cfce3793a8ea6cc583f6bd6102c179831978423f83a7210ee1c2900eeca4304ab767c557948466241e2e8c2e49329b7b4d0f9f70b75a9bfaec380
 SHA512 
1a5216b8533bf4541d10dfd65405c0194fd602de61ab51b10d8160f283367f6d39ae62abdbfff133a20a51239eea92bf1626f7b54f5cc2bffe008c8343b21bd2
+DIST firefox-126.0.1-es-MX.xpi 588126 BLAKE2B 
219170782732f7d1248afdee4d46e449083ca79d816d5055d73c8509880b621d73807aa36b255b615b621dce54c043beaee5c3051202fb88214c1ee38c166ac1
 SHA512 
a82ac5471ce3acfc98f65c75573b6c88a8f8b5335aa5d797a7dcdeb0a64ac9f87cc989af46b0e629eb674db8558678e7f5a796497c1991b85bda741e687fcc04
+DIST firefox-126.0.1-et.xpi 536212 BLAKE2B 
84118c499a3b7c8f146566849fb7f22b0f15ba9bc4221ef3124dfee37f00291d535105e8859ebd0484c51d1fca2c4222ea1c9bca0662df890ee5a33b194f3da0
 SHA512 
fa8f9afc83910d8b5ed276e0d13ebf292e6289e526a465a99ba4b2c7c2d8974a2692e2377a0d1415f797069b98ace64c6d7df007d4c403669fcedf72530b718e
+DIST firefox-126.0.1-eu.xpi 591015 BLAKE2B 
95d3066d267c7fc781890a01a7e7580bbea3fb78f22ee498680bc1cf7ec2c92cc457243c983347fb6bf050df8c9aa2fa0a5a94d1ade086944a2d7b45fb232cb5
 SHA512 
7d1ec25b1010d3e994feaf932ea43d9aaffdb234da0d91a278d791a97239038fcc07882f6188491ee7fe43033754d94ddad14f8e301bb931cec921fd7b806c21
+DIST firefox-126.0.1-fa.xpi 586739 BLAKE2B 
0bf68af7d115e26c1d3b88ed53cd38e8dd3c34c399250b231bf9b03d8e3e5e49682f3815da346c48ba2f73c524545c1d2149d6e048e917e1f10c65ad002d4f89
 SHA512 
cc3bdc52f9f96859910792e8a10f20d078a9f10898a9a4a5d088f9a0f42e6c391f7a9917ff806fbcec2fc02f6cec88170ae7101f701d4c3fdb62731d29bb4102
+DIST firefox-126.0.1-ff.xpi 472966 BLAKE2B 
6da91582e4323e8ceabdd5e56abe570156971df2ea61158a38b2f9c5adb50ce6ea0eb2dfbd4ed0533e181091579fb4183214e254625e457f0576258149f241b0
 SHA512 
19a86c4cd2ef9c1bf85d60ee67fbedc641206915e72e070a5c0abe2152a0a2755bb95253d5a93d9afded9ddf111b04d287f653d41b570f4f865fdbe6a897263c
+DIST firefox-126.0.1-fi.xpi 599648 BLAKE2B 
add2cdbbc81654fca6b53b08dd3d0c04ac99ce09f32b1db555a941381d228b6cc34af2be0960fbe76f81048d3a53dbd80a4388d6c4ca43ae17ba0e7fe97d582d
 SHA512 
2b18a21e7dd5e33ee7d07db718cdf03b24d12bee067e7edefc6af61119b81a3af1086d380d03e7bb9a11b432c659e0edbe51f92d97615628082a4b4818b9f63a
+DIST firefox-126.0.1-fr.xpi 632731 BLAKE2B 
4fcf59d7b4f36d2871aec196a0b2d70631430d8a9b5e6917d549067fe4351e47e5e091239a0aaff3dd5113c8567b39d77194784482180758f5adb58811e878f1
 SHA512 
eeaca76154a352b777e7c396433582c277af8e6906fa7a743c47414d3dd736d0ed89047a68b5156bcae7e34483eda7b2c2c6b139d506d50abadad534df02a246
+DIST firefox-126.0.1-fur.xpi 625337 BLAKE2B 
34fdfa03df0b39fdfe79a3dd38e1e2470bfcfc9047a7c53e8982f869711f98cd93b670ee4f741887d52854bacd85d9a6bade8fa022f99c4ae58a349db2ddce6e
 SHA512 
c640beadccdf9e774f86a06e10a92f2873435324fcc49cd9418e587fba441ba00eb895d1febf0ad4f5af46502df090afc81b5864a53f09f80209b70d6281059c
+DIST firefox-126.0.1-fy-NL.xpi 615437 BLAKE2B 
b41025b238b09d001ce3213601d594e6cba1ddcf77d36000d3a2fd73b2feb239a640c1a392edd8c51e2d673cc5cc96c63f5715b5b65f287b4116d67994b496a6
 SHA512 
879d2aac67f1512d0059b73f2c9bfffde595c5ddccbc3e43c6f2f2a8dd831cb6170926eaa1656b459cfa13c8e0c839b08576d0858ae1a0b3acb37bf3de80e768
+DIST firefox-126.0.1-ga-IE.xpi 467743 BLAKE2B 
b7d44dcb84fafc22364216474370057f5efe2ccaf38c58ca0d6a137e3ac8d42298f83b50a030cc6d40e446ef1a82fa2a1e86344431f42a97acdd909d420ee2bd
 SHA512 
f0f5f08ddf3b4d641f9f5e264cceb77941045b93e0722d20e86ae026c5b850758c0c1b820b4926a9ec3d6ce3fc1f9561da62f70ae26a0136d8816525d02db302
+DIST firefox-126.0.1-gd.xpi 593300 BLAKE2B 
473b3b6983230ad8eed3b23f98c36ef780cca8a3d364ff1ee7399c47a5511fed72baf023fc35a0690f4f37feeaee7dee2951b14d6c3a1ad5a0de3a3ec4d49c46
 SHA512 
ce66dc92932f370492762cf30da8756a3d1b83d9ca60c3e6746c6fdcd33f32ff17118e789d1474c6a5869e5984108eb2d6b216bb2465b28112a8a670e1f44354
+DIST firefox-126.0.1-gl.xpi 600771 BLAKE2B 
65a10fa8efafee069ca87c25a4d6d3018a2678d79b4e14e4951203cade16b27e28e3054afd5982bc7e04ebb49a241129b7fa56d2b1e0846c6df1e533c8a2a7b9
 SHA512 
7ee8ab6bebc3774af247e99ef57c16e4431d1e0921d4789ac353d6a32577078c468ce653420cd6e84a88a6354d1be99e8451c45f3fb949ac5aa773fd9acac76c
+DIST firefox-126.0.1-gn.xpi 630932 BLAKE2B 
105045d3125791d0e9e5d6d6b46df1b849feb361eabf0c49693d69c0c9906cc492ada6f788932aba4bfd79934242c7ef117b8a45e24604a5f41bd22e036c8e3a
 SHA512 
868511498e9d35f2f843bcd11678da77deb44afac0017e7b23084cfbb4b79766fce308765ec25804c00c27f4b426f1dc138d823c59afa12ac8b7e39b60836f7a
+DIST firefox-126.0.1-gu-IN.xpi 524055 BLAKE2B 
a9cc86984120f854421c53485ea551cde4141ce76694ab6229b519b473e0171efab42aa6950cbe38af6aae1f39d9a590e091baff4b3b21d499c89601af792294
 SHA512 
de1fa3a98ba911932816de5eccc4e93073a65ff47eaf9e818bcb0338ade1c21bc7aa4e6ca7a260572a113d70e1d5f360a5c3d3db6ab139df1b1b245669d439f2
+DIST firefox-126.0.1-he.xpi 624336 BLAKE2B 
6a401531d559b0c44b7be634547af8fdd91590bafdbd04c376fef7af0c64780404007429fa642a417fadd17642f32743cc5fe09baa28563282aa7a0ab93e105d
 SHA512 
e14974dfc8fd660abb13c83bfb1bd48d167f6c8008053ecaa4e2bca67b9402689916fcaed8e3071945efb118d316b0f358e811db0e501e215d622b55c46d4c12
+DIST firefox-126.0.1-hi-IN.xpi 562254 BLAKE2B 
8977dd5471e808c548da3e19d0a2f8a07383dc630e0ec58f46e7146a0f0d6349ac6284e95d273ab34f6a9bc6b78d7472d39eadecd66c65c0d34f491945d05cd3
 SHA512 
f95cb6b90f055d44d5e0fcd012a432475b7080a2250e0cbbc726a1252424404a38a114949dfaff327e20832f1eb1ef3f6c1f5c549fa65c3126b1830dbaf596d5
+DIST firefox-126.0.1-hr.xpi 553504 BLAKE2B 
527f4411fd61225d6f42da07d410b7d4b860741a83024d9cc3fe481dbac86a4613d59d7fdac5e4c32cce08b6c9a7428ec6501910ae0f23f5fc8c8b6bbee91944
 SHA512 
3e4135c4ec8f95f455d6b7ddaeea2019c7bb4e75b9b93eb0798b93614deb591b3269955487e3672db764ba3f94ad32c3196558ea4cf1e7434e2e25573aad078d
+DIST firefox-126.0.1-hsb.xpi 638426 BLAKE2B 
d786f32be711faa01aacfd832f81e8e9a9066baf7c0bff6ac47db50ad205ccecb65b4afa7873583eb541eddfe7cb65662f4b9b990a413f88fbebc0c4f465169e
 SHA512 
35e8fb53eb6da86bfb11c27120e29a2a792cd2c868efd0cdabcac0f18d59e4018584c1e6e8f72afcfdc6766e18603338356be868de2e7d0eb7409541ca8b34fa
+DIST firefox-126.0.1-hu.xpi 641489 BLAKE2B 
d4f1bfcd5af1448e9296cd1b1564e564f9cb9042b40ae7845665c3c9eb8951434e150d5919c6a1f46f41540663e3710a763667f960649b9ea646c14b03281b0d
 SHA512 
01e794587dd4d0af8d99288ea6f058b056e18c6bf7224d3d316b7a6064333b87db5f1eb88958d780625d63a098bacb005f3599805aa752f8498e910f95eb96a8
+DIST firefox-126.0.1-hy-AM.xpi 646067 BLAKE2B 
9ead11a69d7f32df885828d2f1fc6f5eef8e9ae193015967858ca14acaa80e9dc929fa55f0f7947490b18f98ca2d646558388f6f1003f426b9ae0df79d1cdea2
 SHA512 
c282379f67da71cf1aa39d266442e49814d37d8583b033140670f78f6758a088ee2552a89444fa4fc4df36bfb94a57a4120a383ea8db167a8bc50f658d89392e
+DIST firefox-126.0.1-ia.xpi 603094 BLAKE2B 
c6f2b8cb6191f1b1b1b9841ec77922fc707c2f08928cd5c3bfbbbfbc04b49643dec075124b8dd157692b99885e084ab91b8fdb31fd49f5ecb414d9afec6a0d1b
 SHA512 
c24ff4caf57a0fcd4ae8ae9bc64f0b5c2adc9b369a0ca20bf68e04c7a72a0ace61a916c67c01132d7d97ec8783dad7fcda7c4ed30b34fd290e30682e3a701f92
+DIST firefox-126.0.1-id.xpi 571018 BLAKE2B 
ed150f4a9e19204f8e7aacaa2b7e7619e6a36653c292e7d1f3d71c7d25871079a8da3206bd801d31933bee8d020cffcd5b0b15af50d66a70f1ec24c42650dd19
 SHA512 
d89d43e19944154ec54c2448c6b5c64c22ee89a11ef93690768a18e53ad6a14520cca3396af70cfa32f7df69854e701eeb40da6a5b6ba6858fcb19ff970e96c9
+DIST firefox-126.0.1-is.xpi 609547 BLAKE2B 
ad307e90e5b2febb7ea47beca78548499fa3ddf7c04e2077e50f6722ca0d592da73c090ccc73c4dc3b39647f70c38a09a54e6ea7ec8e87b14667af0a616ff914
 SHA512 
98f8dd82527994fc54627678f72a622e6fac1255cac440a9384dc2569ac2f9f8adbd6765ef343325c7d87fe43168a48f8fc4788869e179aeecd5b860c753713a
+DIST firefox-126.0.1-it.xpi 559948 BLAKE2B 
08ce89231e25f06db6fcab76bf7af0cd1a0149e01952de4f23d201f067a4316d621d5f67411a6e1ca0156455e73596959b6883f79c59043284d3152c93087f79
 SHA512 
98fcbe9978b6a7aab151fb62613918c295d8e6fac4c6b9e6a870ed27a62f41b08718675e46e9d65ab8b4b7b114a9d91c167df9cba1c8cf3c74e6ed3c57d54186
+DIST firefox-126.0.1-ja.xpi 671058 BLAKE2B 
1b0144cfbd43c783a73b131be3511909d16de4cc0e465d2207b50ca4cde9c6fa9d31017da57b2307cf70340622794438dbc71f6f1bb78a8983b4b27b939750f3
 SHA512 
dd096b18ca34ba86382110f28f007a47aa17482d0481795c7fc66974faf156b295cbc65aa901923e4020eb8aca124355d80a3214f221c2e959cd4ae9ce297b18
+DIST firefox-126.0.1-ka.xpi 657349 BLAKE2B 
388812ff6b67d6c1b89b6dc4c15f781b25d58c2ecb696a604736c3f179985b67db82544dee70bc6307cc5e94aa528ed7d89d00cbc796e7dca34f8f8be1afc087
 SHA512 
8154fa42c4ed565900a8f11f94d61edd236da4456d1eb255ae6377d917ac16cdef2052bff9571c8d7512fb1d031625fb451358ece7c41b8f5a7244927cc86169
+DIST firefox-126.0.1-kab.xpi 600376 BLAKE2B 
686aa0a16fd6b0612cf0a12d90b8377a5047e2abe552ee316ea1b53fbaee76a443e1b020bad37ca947242364cc001b5f22514350b86f5b4d355dfbeedc0630cc
 SHA512 
16f9c72245f09f23dd74cf235f0e943676b81a23fc287e04126c7137ddcc4f9cc47c6808688e1b27baf95c304645d7d35091aaecd040008990b7221a09048fc6
+DIST firefox-126.0.1-kk.xpi 698849 BLAKE2B 
dff972f308516bf8da5b2c038cc3bc1a2a75d2dcbe75b57e4b24715a167b1754cc45d9af7936a1d3ee10b8c8731d23b534c3063ea60ceb83931c0fc73ff01bc7
 SHA512 
e1b7635615d6153f301b0a1fa64c1b9a47fc4f6b80ebfb8f4e9b1f9394b602b90dc9597b0bdb724478e4959e8c350149ca9265ace5f31e3e544a76d3d639ffab
+DIST firefox-126.0.1-km.xpi 522526 BLAKE2B 
2b66372c147ea5ab39233a728fac6ee06be751b678cc476aff01c4c70ff20c75368656499785f0e0492888c597da9d1948a2582d624213f24bdb774cb47e8521
 SHA512 
0412ef18db99b462f96170d003bec5435db2b24b9c13c0d193beae6612295a20074322f8de28b4afdc68720d462e70372f5d9587ccd5c0e7872771eb78220711
+DIST firefox-126.0.1-kn.xpi 488011 BLAKE2B 
402b9480a7a67fbe761ab79c45d98518fa99e058a4a5995ed90d5a78935b754ee1fe584a311c6ad39125d98956dbd7f9da77dffd622bc282a42f9fc3df4849f5
 SHA512 
d2c675665c679810058a684996400176f0222fb28a19736b6d43675747f281b8593a9183d1ffc7fd44cacff0165952aae367a748317cacd203b1974f828ac0ff
+DIST firefox-126.0.1-ko.xpi 653055 BLAKE2B 
96fabfc2720ad382f945988b8632b90b1688b0b62a92b101f181baf4c491b11bde14cdb386a3eb234b4f2907bec282ca29729d588a124191dc1d0fb01b1d0da0
 SHA512 
6d9198f6672fc91470f6b96eb4924d851e6d002d7b2e5b7659f1b1b9ebf32963be400e45451b659b6b3ef4bb97f5386a781ff7cdb5bdf3e86f1b926478c656c4
+DIST firefox-126.0.1-lij.xpi 480887 BLAKE2B 
5e0397d6dd7f3d0d977f04aff09717a265fad399e4a85fad94f2be8a9f4f176250c359c38e6ffb32d2aada9e95c3d9105cc37cff971be357b31029c4aedebc61
 SHA512 
35b5dea1615d34c9478dbd28fcc719dd0e7565ce163ddd9ea4d8eaf13d013dc690c03395b8a3001bb71c0240de25b6ccbca8db16828d4b3179a1bcffe8738497
+DIST firefox-126.0.1-lt.xpi 569361 BLAKE2B 
81880cd8f04c58e122033a3203cc7f63c4775dd6c3e57faa35ec8fa7ca0893f8a6b829a39604c48c13ab4b6e0f1c8c2342659ff247d20687b39ad68676119f24
 SHA512 
8aabe910ce69f4c1705416b24e59bb1a741239eec346144ad1c4e677e5e9928e791ba24f53dc3cd68cc1a400c1d825d157125785026c30ef1aa54de15339c7bf
+DIST firefox-126.0.1-lv.xpi 570524 BLAKE2B 
943d9b6444ce20223cdcf1933c2c5c799769894ddc8f8712d6db749b028d754b9d7569ced7257390ba7d216adc89069b9db3a79e38e784b6070d2286cf52374f
 SHA512 
5d028f4ea2f0b924f8c9aeaf32e35e44c23017bf420419eb7cfde87259ae1bd2ad57cabcab65c41ad7cceef2dc04acaa5b208ee61dddf00f7c298a2f9ae866c5
+DIST firefox-126.0.1-mk.xpi 490019 BLAKE2B 
2ec719d630b1c845c1e9b03111eb725004438db548d8f7c76557bab4dfa87c6b2e292ba694bbd1d0e23de964f45cea1dbaee8465c8d5b1098ad90360e9320a70
 SHA512 
dcbc77b08e7fee0656cd26ca535384ba6868cb49e0a9c9fcae90dad6d54074a19628925492c8a4a24e883cd7942bb67e79c1e1446803e90cc45b3b9a67770b07
+DIST firefox-126.0.1-mr.xpi 528842 BLAKE2B 
baacf7e497ebd2fb91668c83d8c962ef816bb9d3d812f83d4532ef61bff70681e1ef1dde8347729c34ddbfc147292bfb7bcc35823a34226d319a2c77e0b55534
 SHA512 
364a785b050a9fa7902e867aec594741052cc52122a27e930e1bd52226419f1155da37b88d3ebbf4545df25557437d71ac2fc7d4f45ae2bc1685c302923b4410
+DIST firefox-126.0.1-ms.xpi 446501 BLAKE2B 
cfeaf8d9663df575d1af9132a5c5d1603918ca81469695e2f7e9a5cf6614144cb189c7bba1d242c15097c77490a41356824dec662e4e1046a7c5a2609136bc4d
 SHA512 
db1908e1953609cf35cd78317356f06749fc661f823ee7dd8a50bfa416c49ed3c20331866f2946edb5ef6dbac03c4d537590496e08f75df6b91586dab7e096ad
+DIST firefox-126.0.1-my.xpi 515510 BLAKE2B 
f31af323b972773f944958d0123ba2fe256dc5e51b7b0d5afc4e3dfe016603e33bfc49a0af2e62492e1cc6c4c3885277d90527c934980b409414b6897b656ffe
 SHA512 
b2526a06cddaa430889b2e0535dfaa56128ff7f7aa73b75a22e08c4499a77d7f0a9aea937cceb5d36b3578bf2f8dbc99c9dafba106c236824424eedf4d6ef50e
+DIST firefox-126.0.1-nb-NO.xpi 598799 BLAKE2B 
41a167b4cc466fdc736bc76a4ec3bedb8592d46dab0010aa53374b8f1d4f2e785a17343c1f66ef1db264dd22c15c19b7056288f8c18f535c39de1e0466c98662
 SHA512 
764294d97b5d0bb03f7a4e7f0eabfef6718f45768d85137617f3e27ccfed376cfff02fc6c84af1f77e4119c59fdd2311d92123f9afa0437be980083b775b1c28
+DIST firefox-126.0.1-ne-NP.xpi 497281 BLAKE2B 
71496de9d47d7bc00615a12bc2d2bc819a0acfa9ab1266af0ebc2212a4eaa9127d5d2d39782d79a09acf35992224198ad0e4d8b8c092f1d0f74e9044d239d6ee
 SHA512 
14f6cedb2c3f054b9f30ad69c32e05217ca2d8fe4c5bde496bcb2560139f774a20a3028e8e18eef3ff1e8d6711738e19f617e40a4ebf609580e028103bbc367a
+DIST firefox-126.0.1-nl.xpi 609207 BLAKE2B 
47137fe2fe41b5d560e0c5873dd707a9c46052da0250d43ba9b070d2cb1df9936eefce9b79b819ead5183eedd93542c1bbc552d91e62ddaf24f36cf0b980e943
 SHA512 
9da394dbc1f3a1653f10a406f8189db328a035c94d5a219d9669883a2a3627b82b66d714c48162312822f3faecf09909e612d5f6609b1fe75b972495b0927895
+DIST firefox-126.0.1-nn-NO.xpi 592824 BLAKE2B 
55e4aaf1ab5fad956f1ce4462843d0729b9a9be8bbfbcd772dc45feb78a62eea8756450032920b2b8ba3838909874b7c618550e9e788888c9d8415980087294d
 SHA512 
b775de13cac3a3f4ba71c595c3506f2b4423a218b29885f73812749ce25b87882a13749e6c811db6588eab8310bb9252b67d178fb03e50357c128ab251332698
+DIST firefox-126.0.1-oc.xpi 607303 BLAKE2B 
d373adf2258306a329021c4325e7b28585346e7077045e718187eee203bd4414b6d6c00acdf1b0e88519fc2acdf74b6b207bfda8d3f17b2b287fce6428740cab
 SHA512 
222d2cbe54cbc738925403d2b506a898c629837fc8092b643b0bce6a74d78281e23cbbd3953f4349d16b7c1e3c7a526fceea51e07025dd9a4a8256e8b84560f2
+DIST firefox-126.0.1-pa-IN.xpi 683170 BLAKE2B 
0df6d5d8aa48ebb8989d6fb9b7e762cc494b1da62d069863b08cebe4e5647cad3f007f68818208fb95b84b060c14537f20b25f9a508263a04e9a6f8e4a815dd8
 SHA512 
8f7148591df5960004a25baa71499857546209e0972d208d6160b7aaeada0194f4e0cb29c4bfb283f9262b07bbbc9057102b26a1c33f93b61dbbe78a9f9deaf5
+DIST firefox-126.0.1-pl.xpi 629564 BLAKE2B 
9cc35a4bc60f882e77d9e6d2836155ed9298a0ac335d9ecdb822261b9947e258213a4e9ef6f07cef2a1039731fd88080bcb3092d52220c8c6db766b13237f14d
 SHA512 
1c5b784809ec6e7077449b979cd014ecaddec34f6afb915e35d5c45178772548f7e1dc688800d95d1796f53d17ca88584b5a1722c4a26078f3ce2b59c0abfc1f
+DIST firefox-126.0.1-pt-BR.xpi 613862 BLAKE2B 
39e8480dfd20ff9352730c95e2a748fda35ed863a0f0f4fa880ddf5b658990e60a7d1206ab11a53792dd7242372c1562d669e9189b0b7e0d1a627ccc97174bbb
 SHA512 
715939d1ddb4115de34950aa4ee4eaf3d40878c293927ff975c6e47c2af2e2782622a929b4852767d17d1cd7d8d3ec07b6df0f62a933caa245826387b6166448
+DIST firefox-126.0.1-pt-PT.xpi 617460 BLAKE2B 
50a2a52c1f21ef9ba1ece6f8529ad3e383cd5ffc4729140d12b7f90ac6ab0327804eea42b97be457408229b57b0d9be18a32bcc03edd1ac166822085815bff7d
 SHA512 
9d613266b1fa8e124ea2344c7935f0e021d14ed38e3e41d5a3f825ed2743a1f8b109082f5966cf62c50d56084949684c92d2f6a8f117395c58e0579e19c2fe29
+DIST firefox-126.0.1-rm.xpi 609792 BLAKE2B 
dc38945f3e36f36f31369d82515ac69b5ece47aadb5d948951ff793ed0dcf497345b6869e18e9c04f25df3deb964d73d17e76bd95a1be106a1ecf703f67eefa3
 SHA512 
41b58222f798d9347a2f52e8dc9388a8ec585a80fb3209bd1f1ba8a7f89c3c67e1fd4b0ecb38bb9c37dc5a073bea63d0599a4d8b8d56670d7fa8bd9d0d84ad69
+DIST firefox-126.0.1-ro.xpi 546461 BLAKE2B 
497982dff7c355b37ed02a790e62dcd919ca2665ebb5d82e15834fabf635b752d2430d7d2629770c87327d1cb9f9df65ee7fe3e0841ba3e7c370ee96e14da264
 SHA512 
35837ab05ef350ff4b6dc305b9bac7f5e2b382244c92d6fe21b7917086e3720dd760d610ac49bf9b0bf8341c7f75723c90f7cb5ab117ee9d68337b5d75a1519c
+DIST firefox-126.0.1-ru.xpi 711042 BLAKE2B 
694b5258df0143ab787babf528650b3403eac75032bf3a3080a881d6034a6a7b2d4b2ca2c75f88401caa785de04ae66047e268d39f523e34ba9d442b010df3c4
 SHA512 
69c512ac4c297e1c54f2fb6c1aba80a0f0682d54c951a99db481abf926cf2113aeb24189bfd56d9d1903a88cd073f144399f0484d6addaeede13711814cfc481
+DIST firefox-126.0.1-sc.xpi 575625 BLAKE2B 
c097005b91a5a708d217d8daa225865a47daa2935b438d3495b01096dc7aab7d2b4f310f7a5d630ebdbbcdc8872e3f7dd934b324e9cbc37b32e7ebd51043c1a2
 SHA512 
b415b171a84f95ef7194323a715191b5e79de6e3660b5290216c4e26e8ab0da3e544237586050012a3743877eed4ddb61b80aed42ae359e73227ef7659394097
+DIST firefox-126.0.1-sco.xpi 507927 BLAKE2B 
c3908426e0d00645c704aaa82f8d7ee5c9aa1b5885d8fa06a3b3cdfee2b0dc0986a9205fef5782678488767c23dfd20cb1287c323e0b8883d791c409ee001999
 SHA512 
f5de3d676db0c2334c63278c652fb69fb462372cfc0dbc734a08c1ffe3dc51cc33696165918b208fa7f1c15792434f7cb756bc508008be42487386fc4b392943
+DIST firefox-126.0.1-si.xpi 602659 BLAKE2B 
2ad507adcb7f1f19485409baf89bb995aa0a3cc03d9816804b84119d84953bbf95d776911e2226de20647196eeb3dc55b09175d9f2b052b88b7446fa0a5e9e7b
 SHA512 
75b62bc7ce234faeb784ba845d36c27bbc95b7e799e15aeee27fd2e470732856d246335c9cac240b5750127423359eedef60dd2c6b18517b7883f8f9836895cf
+DIST firefox-126.0.1-sk.xpi 643907 BLAKE2B 
828c0d270fb058031f3c9e9eb51afdba05ea945ba51aef9198c0c9eeac1ef7e3bf1729600ea7fd87f5ebc260821f6e2c342d4105bd9ebe124341897ce79b51b8
 SHA512 
2c75b47115ea341b85690e2ecc0ece0e2acb49bf214d538538a582c6d62fdc269aa93e1f33a652cb290ca846dc013f018e010882223eac0b0f471d5adb81673c
+DIST firefox-126.0.1-sl.xpi 608097 BLAKE2B 
f8b3d257da080cedc124a536fe8a79a79aba2041e0291c197adafc2ae20bdbe1371078030dc1046b29127fa99af8a3740b0dcd6fdf44d7ab62eade99fae88f0f
 SHA512 
1025411c4a9b2a033deccc57a7731ee1beb6ecd2cee38a60c306ef7647f06aef4fbc6b814866a5693e5f20721595341d7ba8a8df65b088d3be38640c3037f374
+DIST firefox-126.0.1-son.xpi 413206 BLAKE2B 
eb4493329a5d9f0069ef96ae0f4b90f3fe27ae4edb214a111c274ba12ae0d989e255b208177ca6087a1f1c8aa1d6185a6ec550dacc9d42d11767e2dd7867acf9
 SHA512 
2cd42507854e3bb769dc0b688b8c70ddd0da73a618f7f4df4f325e5962ed66bcdd69881e62bbefba81a5ef04da5ebc34890eb31e313467fb2739956023815e4b
+DIST firefox-126.0.1-sq.xpi 630563 BLAKE2B 
39964fdf16ec6024c86527e219b350b71032916bd524469a1ae79c99bc4b0352c3e1ce0f061c0da592019805a2e3e85cc1b38943c0854514ad8d3ac0f38979d7
 SHA512 
f68c82dab31e4f8f3131f857503977e1feeb60632b30ec904d1000f937d3276da09171663144080999869b4c2898f956d22bb18e311105f76d49b1af105281d2
+DIST firefox-126.0.1-sr.xpi 635976 BLAKE2B 
ba9edebbdaf0baba401b8467e9d90739782dd6b6fed995340fe6d7f5113bede99bf2e7f4e7ad9ec14e62e62a34320b5eda61e9452ab5a0d42a3586b987628ab5
 SHA512 
3bc4390711a3b326444e5ed4f02df11b4626e29e87472edb151ec8fdaebbf36cedccf06773d5c462c2e3e720c1a4513d8bbf5808a46eba21ae4ce3f81910e850
+DIST firefox-126.0.1-sv-SE.xpi 611068 BLAKE2B 
60d03261051546e12e2dd42788e1a50ecafb781be139e2d4cadc6d8994563983642af6da0625a259b04527500798c9be89d20a6874315cd4a1495799be0ce09f
 SHA512 
f089e51567bbfcd7c4451f2480fb084fe6b48b9885282d62b36e9f63bb36919dfb67d5ac9f632bad598c654f118d04631f40c531f9ece2fe7949b4fde5ea9c8e
+DIST firefox-126.0.1-szl.xpi 523112 BLAKE2B 
87372a62821b8fb7243c7d824d83c2be58220f7def4fd394da9539c5c26c64b978f6ae11a4266baba296718cf8ac1f1d735e61e79b9dbb1b202974c496ab2b48
 SHA512 
32b6df517fa3e78f60956f8026fb792f585d4501e474bce08bca2749d8c667f3630f823daa21fa87ca72df69c15910b330b68623f8fe44148c46b629601658b3
+DIST firefox-126.0.1-ta.xpi 504279 BLAKE2B 
c8437f154dc946a4e44c838b4c2a8a1d99c68d0c5e7dee18e043fa6f0d6ad23d32d8da4edbd432aff5fd311ab98117f6f21a49c751ee23f6cb1ce32db5093e5c
 SHA512 
8333823f51b4433513a8580304776e7ff6ef0a5ac9978eeb1fb3af1b4e6590e6495e869683da89d77bfbc9bf86243fef073655fbe54bf81b889db44f6214aaef
+DIST firefox-126.0.1-te.xpi 555754 BLAKE2B 
29aa5e24df4df61553e9cbdedaf605cfcee40aaf8b6c3c328cd97f545e19f483c6c936224087e29ce019a736ddafd8981cba8d3eaa13a8f63e166c017d824fb9
 SHA512 
6d070117bec5566ba293609f2bcccbf8a9c1573d37c38da45d4033f76550532abec396edfa6d514a3f3a68809c3a81161ffee3590871164b788b4faf90f93f8d
+DIST firefox-126.0.1-th.xpi 686788 BLAKE2B 
5f85f3728d4d2dee54113945300efb5dfe9db42aebf35dd4373b2e6e7c88927c75b03a07ee955269ff6594d31f5a367048cb1ce319198d8e2888e79218316568
 SHA512 
0760924ed94931d57d170d93d844b07bf234dc19de2d82a72cf01cd371d21caae2d8c61e6233209fbd896b3a48f3c9a40f29d79b3d566fded0e5ecba85b238c2
+DIST firefox-126.0.1-tl.xpi 530903 BLAKE2B 
91b05a93f08efdf1bedff86a46651624f881663c6c457f50b90dd11d0ba46bd484e64537582765a77c974c74bc1336c541b6e9f6892efed2cbbf0d708146bcb6
 SHA512 
06ec5e1cdfb02acb3d5e82052f8a272ebdf5898bad88be1d8d14650c76f87c2af1984a62bcf49bf22cb3af17efdfb834775b540fbc07de5b1d11d004f63f1007
+DIST firefox-126.0.1-tr.xpi 624076 BLAKE2B 
51f896ae2b5a1c428d67b154cc73bcf58b4034bcc3d49af6dadbc2309b9809d7ea46aafe7b49f23b0d6157674a8b279b039ac97dfed3a40499540eabd6318737
 SHA512 
cb9c2fd10e53f3208dcefb25ca095c12ec546cd44e909f70f82ec525913f4cb3f0b7415dbdaf49dd6ae8c47bd96c20b322341a235a303bca9733076da2650841
+DIST firefox-126.0.1-trs.xpi 500763 BLAKE2B 
ac2817e6f496cd42705c037bad6f53b7fdfadcf5d8c4a4e3ec733a563e30254bcfa313f937bc0da2b18abddacb08fe63b08fce8d9769dfa7d032b06a76af3178
 SHA512 
c0f41364d68b2d88a6d08e93862dae6c78c6c380a565e343c9c3a973557779983eb5d62be3b1fd27dc00aef69383cd65bc759a59ea03b9adcb8e9f841918e753
+DIST firefox-126.0.1-uk.xpi 702878 BLAKE2B 
4e193486b0b7f4954f70f1775d6690516a62d36d30d6f4ea4725dc8309a86785298a47e403690019e659b3eb9bde0d802d5eb359c5e617d07c0e43cc3fb17e2b
 SHA512 
78ff17e716fd89c237eec6a657ade5be28501ff5c8b8377c99583394680ce5347ce5ef8a49a261d7c7fee6440c0e47aa0202e7a990c552043a54164671c02549
+DIST firefox-126.0.1-ur.xpi 557227 BLAKE2B 
a368053cda808b085cb0308cac1fafd6148c70a85dd567df358efb28beb0c6d77b7e0204e219599685eae48e1193664eeb685a1b081de1fed81ad72a2f01c10b
 SHA512 
2b7268b1a271dd43d8d415f9675cd66c3f090ec4bccd0c2308d9ddce82887697765be39977feefef64bc31f5d46f126e0ad32eeb8338ee5021991e841a594189
+DIST firefox-126.0.1-uz.xpi 475624 BLAKE2B 
fb780d6bd51500f49bc378ff2427bbc558465f1030f8f0f1e82e0d426f69598436f1ccd32ce1e0f675295fdc8cad462ae8c691a8c8aff6c4261cbacff573a6fd
 SHA512 
eff3c78e7bcaa71ef4d0371b1d4554f02da1ce523a8b6859a75c33ed523fd8fa1cb8b91a3d9cc10e439bae9c437b52b2c4f555a1de89392884fbced48ea3a262
+DIST firefox-126.0.1-vi.xpi 648610 BLAKE2B 
0b435a98887f7f70e339fa1b62cb9de6a1c4efc1f999681c80af93528b8aca229bc833fca0e0f13751760536d43cf7481e34f30b1dc0b9793c3a225f5695af19
 SHA512 
8310f52464be67c0f5686d57b9bb1cd6aeed866c46dd8c2b5e388580e5403a0d4acbe9a311e84747f718a37593f23ae28d5c21b425e69f64f714901c25347c8c
+DIST firefox-126.0.1-xh.xpi 413941 BLAKE2B 
e16119980966742cd2ba01fcf780f10dcbf50d65ca49fc49286a3d3e4e1fce08b20f1fbd43f5dac0fbc774a550a838b87103e5c3efe7707deeadff2c3a45823b
 SHA512 
9e9e33ff05a5eade54e6d460b166caa5170a22c593ece0563abba67d30ff1a58a66da564b455a22698f054056b672320c545ab3fb04d244b85c26d6c29e839b0
+DIST firefox-126.0.1-zh-CN.xpi 648666 BLAKE2B 
616b18369b285e3469b47f6202b9c7c482ddc3032b6443a681477dca85089d38d078499f9341275acad630df1debdc459fa2cf79a3e366a42a2cab3316cd6e38
 SHA512 
f525b2f9123d43f75958964935daeca02b87578bacb7f3ff23aaeb9c2a6074fa99e34e52510331c3e6e9d82ccaee585f1bc4315047d1432a266de92c5abe86ae
+DIST firefox-126.0.1-zh-TW.xpi 650696 BLAKE2B 
0ade075f983fa77ee562b2b0d311ede43b44eb6151ca162341f532f1cf0a1f7a88d993492b19aa33122636713ba15cab3da1d6e935b14c07a70a12d53d71b1fe
 SHA512 
55865f9e6bfbc601cf7bdb902a9700ea57e5433a0760325991e7755207a434bd61d83ff2222cc44580bd3874ba4b0370109579bb9096d127b97d5f7f81dc004e
+DIST firefox-126.0.1.source.tar.xz 552965660 BLAKE2B 
b5d381bbf3ac7d63561dc4c8f8955faeb08fe41e57a05b39585f01054a5348d68d6fc50d9c00d151c211d26ba2d0fb21843868e4cfc1445e4c637ac5756af161
 SHA512 
249605c4891ee9271def187d161369bd3ccbd347f5f0e175d0239aced3cb9ae9655d3c134b7705bda80ea1e63c0a2ee8eb4e76db0840019683376c00f20fc7ac
 DIST firefox-126.0.source.tar.xz 552065476 BLAKE2B 
9f40424502ccf7516b8b1142372ff816986c07646e88b3e69ca1a6a5173166a3b6c37696c99fbbaece23d01af51a76e56c19df3babc7af4e5d13e5821262ad1b
 SHA512 
56025b051d544ca294911a1d6a66f09945f71012131881b64313dafb579730810a4b091950c90a21d4fd3f393ba23670d8409086e1677d80d0bbbe347c303527

diff --git a/www-client/firefox/firefox-126.0.1.ebuild 
b/www-client/firefox/firefox-126.0.1.ebuild
new file mode 100644
index 000000000000..a002d14e7caa
--- /dev/null
+++ b/www-client/firefox/firefox-126.0.1.ebuild
@@ -0,0 +1,1417 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+FIREFOX_PATCHSET="firefox-126-patches-02.tar.xz"
+
+LLVM_COMPAT=( 17 )
+
+PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_REQ_USE="ncurses,sqlite,ssl"
+
+WANT_AUTOCONF="2.1"
+
+VIRTUALX_REQUIRED="manual"
+
+MOZ_ESR=
+
+MOZ_PV=${PV}
+MOZ_PV_SUFFIX=
+if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
+       MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
+
+       # Convert the ebuild version to the upstream Mozilla version
+       MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
+       MOZ_PV="${MOZ_PV/_beta/b}"  # Handle beta for SRC_URI
+       MOZ_PV="${MOZ_PV%%_rc*}"    # Handle rc for SRC_URI
+fi
+
+if [[ -n ${MOZ_ESR} ]] ; then
+       # ESR releases have slightly different version numbers
+       MOZ_PV="${MOZ_PV}esr"
+fi
+
+MOZ_PN="${PN%-bin}"
+MOZ_P="${MOZ_PN}-${MOZ_PV}"
+MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
+MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
+
+inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info 
llvm-r1 multiprocessing \
+       optfeature pax-utils python-any-r1 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}
+)
+
+SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> 
${MOZ_P_DISTFILES}.source.tar.xz
+       ${PATCH_URIS[@]}"
+
+DESCRIPTION="Firefox Web Browser"
+HOMEPAGE="https://www.mozilla.com/firefox";
+
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+
+SLOT="rapid"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+
+IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel"
+IUSE+=" jack +jumbo-build libproxy lto openh264 pgo pulseaudio sndio selinux"
+IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent 
+system-libvpx system-png +system-webp"
+IUSE+=" +telemetry valgrind wayland wifi +X"
+
+# Firefox-only IUSE
+IUSE+=" geckodriver +gmp-autoupdate"
+
+REQUIRED_USE="|| ( X wayland )
+       debug? ( !system-av1 )
+       pgo? ( lto )
+       wifi? ( dbus )"
+
+FF_ONLY_DEPEND="!www-client/firefox:0
+       !www-client/firefox:esr
+       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}
+                       virtual/rust:0/llvm-${LLVM_SLOT}
+               )
+               pgo? ( sys-libs/compiler-rt-sanitizers:${LLVM_SLOT}[profile] )
+       ')
+       app-alternatives/awk
+       app-arch/unzip
+       app-arch/zip
+       >=dev-util/cbindgen-0.26.0
+       net-libs/nodejs
+       virtual/pkgconfig
+       !clang? ( >=virtual/rust-1.74 )
+       !elibc_glibc? ( dev-lang/rust )
+       amd64? ( >=dev-lang/nasm-2.14 )
+       x86? ( >=dev-lang/nasm-2.14 )
+       pgo? (
+               X? (
+                       sys-devel/gettext
+                       x11-base/xorg-server[xvfb]
+                       x11-apps/xhost
+               )
+               !X? (
+                       >=gui-libs/wlroots-0.15.1-r1[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.99
+       >=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? (
+               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]
+               x11-libs/libxkbcommon[wayland]
+       )
+       wifi? (
+               kernel_linux? (
+                       net-misc/networkmanager
+                       sys-apps/dbus
+               )
+       )
+       X? (
+               virtual/opengl
+               x11-libs/cairo[X]
+               x11-libs/gtk+:3[X]
+               x11-libs/libX11
+               x11-libs/libXcomposite
+               x11-libs/libXdamage
+               x11-libs/libXext
+               x11-libs/libXfixes
+               x11-libs/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
+       )"
+
+S="${WORKDIR}/${PN}-${PV%_*}"
+
+# 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 ! has_version -b "virtual/rust:0/llvm-${LLVM_SLOT}" ; then
+                       einfo "virtual/rust:0/llvm-${LLVM_SLOT} is missing! 
Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+                       return 1
+               fi
+
+               if use pgo ; then
+                       if ! has_version -b 
"=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then
+                               einfo 
"=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing! Cannot use 
LLVM slot ${LLVM_SLOT} ..." >&2
+                               return 1
+                       fi
+               fi
+       fi
+
+       einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
+}
+
+MOZ_LANGS=(
+       af ar ast be bg br ca cak cs cy da de dsb
+       el en-CA en-GB en-US es-AR es-ES 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
+
+               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
+
+       # 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"
+               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
+       moz_clear_vendor_checksums proc-macro2
+
+       # 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-gpsd \
+               --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 && [[ ${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
+       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
+
+       mozconfig_use_enable geckodriver
+
+       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
+
+       # LTO is handled via configure
+       filter-lto
+
+       if use lto ; then
+               if use clang ; then
+                       # Upstream only supports lld or mold when using clang.
+                       if tc-ld-is-mold ; then
+                               # mold expects the -flto line from *FLAGS 
configuration, bgo#923119
+                               append-ldflags "-flto=thin"
+                               mozconfig_add_options_ac "using ld=mold due to 
system selection" --enable-linker=mold
+                       else
+                               mozconfig_add_options_ac "forcing ld=lld due to 
USE=clang and USE=lto" --enable-linker=lld
+                       fi
+
+                       mozconfig_add_options_ac '+lto' --enable-lto=cross
+
+               else
+                       # ThinLTO is currently broken, see bmo#1644409.
+                       # mold does not support gcc+lto combination.
+                       mozconfig_add_options_ac '+lto' --enable-lto=full
+                       mozconfig_add_options_ac "linker is set to bfd" 
--enable-linker=bfd
+               fi
+
+               if use pgo ; then
+                       mozconfig_add_options_ac '+pgo' MOZ_PGO=1
+
+                       if use clang ; then
+                               # Used in build/pgo/profileserver.py
+                               export LLVM_PROFDATA="llvm-profdata"
+                       fi
+               fi
+       else
+               # Avoid auto-magic on linker
+               if use clang ; then
+                       # lld is upstream's default
+                       if tc-ld-is-mold ; then
+                               mozconfig_add_options_ac "using ld=mold due to 
system selection" --enable-linker=mold
+                       else
+                               mozconfig_add_options_ac "forcing ld=lld due to 
USE=clang" --enable-linker=lld
+                       fi
+
+               else
+                       if tc-ld-is-mold ; then
+                               mozconfig_add_options_ac "using ld=mold due to 
system selection" --enable-linker=mold
+                       else
+                               mozconfig_add_options_ac "linker is set to bfd 
due to USE=-clang" --enable-linker=bfd
+                       fi
+               fi
+       fi
+
+       mozconfig_use_enable debug
+       if use debug ; then
+               mozconfig_add_options_ac '+debug' --disable-optimize
+               mozconfig_add_options_ac '+debug' --enable-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
+
+       # 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
+
+       # 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
+
+       if use valgrind; then
+               mozconfig_add_options_ac 'valgrind requirement' 
--disable-jemalloc
+       fi
+
+       # System-av1 fix
+       use system-av1 && append-ldflags "-Wl,--undefined-version"
+
+       # Allow elfhack to work in combination with unstripped binaries
+       # when they would normally be larger than 2GiB.
+       append-ldflags "-Wl,--compress-debug-sections=zlib"
+
+       # Make revdep-rebuild.sh happy; Also required for musl
+       append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
+
+       # Pass $MAKEOPTS to build system
+       export MOZ_MAKE_FLAGS="${MAKEOPTS}"
+
+       # Use system's Python environment
+       export PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach
+
+       export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none"
+
+       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 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
+
+               # 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
+
+       # 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}.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
+       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
+
+       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
+}

Reply via email to