summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoonas Niilola <juippis@gentoo.org>2024-07-29 10:02:52 +0300
committerJoonas Niilola <juippis@gentoo.org>2024-07-29 10:02:52 +0300
commit5912800ad86980283c72c21d65da27b283f8a73d (patch)
tree35a8b744f134165fdb050be5e1b92101eb94f329 /www-client
parentwww-client/firefox: syntax updates for ExcessiveLineLength on 128.0.3 (diff)
downloadgentoo-5912800ad86980283c72c21d65da27b283f8a73d.tar.gz
gentoo-5912800ad86980283c72c21d65da27b283f8a73d.tar.bz2
gentoo-5912800ad86980283c72c21d65da27b283f8a73d.zip
www-client/firefox: drop 128.0, 128.0.2
Signed-off-by: Joonas Niilola <juippis@gentoo.org>
Diffstat (limited to 'www-client')
-rw-r--r--www-client/firefox/Manifest202
-rw-r--r--www-client/firefox/firefox-128.0.2.ebuild1403
-rw-r--r--www-client/firefox/firefox-128.0.ebuild1402
3 files changed, 0 insertions, 3007 deletions
diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 13b9f50036e2..ea67fc787dae 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -100,207 +100,6 @@ DIST firefox-115.13.0esr-zh-TW.xpi 656755 BLAKE2B ef8244f8c0d65d2c604a5a11caf4f4
DIST firefox-115.13.0esr.source.tar.xz 510571488 BLAKE2B e2b00965a92cd11da6c81daa8b6c652dfccc9f0f7d066bc17ae5fa3ac3aaaa021c4489a9f653127f5516e3d77cd7174de328343e22c4edab438e3fcb9a859178 SHA512 799cdf2d0494003a5addd0da703f53deb9c9d6bb6f6c95d40026363382803e2d086039c7798940a1f35f4cba111f2e8e21bde8ac2eac29fd9bd6876dd8d3a85f
DIST firefox-115esr-patches-12.tar.xz 50732 BLAKE2B 821ea063bd14085458967e33570bb28a1457672d2c210368507532024db25dfbb7d30d37084a2cc60a4cc34dde453669ad9046c664e7e8459a8c7fab33485068 SHA512 e80b0eb9a4efa8e6a872a875a31e384a5d3ac2f7000a3d12b03cbe2dff43baf8e3e544b7b7baadcb46ae714e3709ecbc53742b9562fcb1b1caf85b037b5ad501
DIST firefox-128-patches-05.tar.xz 19380 BLAKE2B cb3ed0eeaa1ddc1df936815c594eb3b7beab20b3560b52a63436b74a191a0e6e8c05c4d65084ae00dcb30ffde1907ad8194211717a50fe55e8e23ab306d8ce9c SHA512 17c723e120f3057de276863d367d25111578cbc5a333718f230ac3bccac178361ebd795f67b522aca199e17b8ed298d070020884ce6b5b4a0b89a60370166570
-DIST firefox-128.0-ach.xpi 463921 BLAKE2B 016138341e087f6afd53c82e0b33700c20c341491e6b12f444cc7d85aea1f0e08f4bfa7395af5cf888984f57a3fd6a41f5df39fced8267e0bd0388753a1ad994 SHA512 b67378c13ecd5e0c7e570b69c2f267232749ce71c97ad987b3e6b1215b84ff934918d5fccbdefe99dbd5a331917b8d545e9ccc8aad4aba25329231ad357a9612
-DIST firefox-128.0-af.xpi 417369 BLAKE2B 434dd6861e1b378fff90cc704a7cf63b90de4f54d6b8153ad9051beb0aae84c37686c052624b8d38f60cbf6885162142f5f2a126bcf2a238cccf63bc7194dcd5 SHA512 e3ef703a909fa12d944c80aec83c9d8ddf8c49aab18f62c2ebf6f4ad08d17e17b5494b472480a41c510e522994db0afe796259879668bb319c4fab27979e2970
-DIST firefox-128.0-an.xpi 505732 BLAKE2B d8d25160fd99b96cdf051a30ecd1e5aab3a50b22e3f2cf78fc8d3fb6d2405dfb38181aaa894e09d288fbb9f5417f0e4a70832bee1a53d27dda24928db2742933 SHA512 f1c09844a27b803f2b46ff4fd2fb27f2a4cdd6e2527b4bd8574e7a19af408d168ebea58ff830436497e3c768c3023282a24fdbdd23f96cea8bc6d7fdf626a3da
-DIST firefox-128.0-ar.xpi 610516 BLAKE2B 0a121e72c5ece69b04d91d8b1aea42603bd266105d7c35dd9ab1dc27ee9523c4e6bc65f1115c6360e3594c7b76e7878ac53ab8d34791deccc3a1ee1c5321c51c SHA512 4244a286d4e4b1444a18246ef0a0c04292e91e4c8ef9b9708ab58eb0ef005902d3654e0712c8c0bffbf4b0f1504acfc2a2694ecced3bcaf544b6701cbdff1775
-DIST firefox-128.0-ast.xpi 496179 BLAKE2B 8f3cb856a27d7224f02178adf69980d37c42259a1aea3fa0879ffe703f8243e6e5b471374e57be41360149527e008db56d343aa8503a8ad23366f72c68cd0974 SHA512 0ec6e85464756c3defab9cdf19d792e4a65fbf12e98e6179fde725a1868be8813ced98c76beb8940d0b41d371b70953270c5eab05edb732d869b1f7465db75f7
-DIST firefox-128.0-az.xpi 490622 BLAKE2B cd88d8bea3e2ca3e8c14c6708c9caece0d3623ee4419e35ad7d974885da13cb9367fb88ab68cb51f43b8ebc354a1061709fd1cece931c71ba547a1773aa28499 SHA512 98a915c0c891d361c16c57b7ebb43650dfc55508ba8bd9e91189b29a3f6be4314309ee97546c8782b688250164c009a4caafd01addeb48c0a002ad8d96758b0d
-DIST firefox-128.0-be.xpi 712861 BLAKE2B a80599b0d3cff27e4bccd6246bbbd7ee877995bde8a3232b3ed2def5ed593690671a5cd05bae343469eedd40747933440eb4d8e713dcbd7a3c8b04eef06987bb SHA512 9d745557d57e1cc0f2ab57f5e57c152ede1df78bce322180bbacd42996658cabde09e773b9f52e1ec4d1f69117ccebd549b1364a22de6a87f3eba5b48e9e820c
-DIST firefox-128.0-bg.xpi 603668 BLAKE2B 6615e062bd290606e917bd2643ba98afc3d25e0b52be0be6378b86b48b8a9c293e0d51a3ad46c8ead0b93b0c16fb469f28e81c865a9df5e2b0371c714d21abee SHA512 83ad4d590ce2fe9f738db9ef5643a82223f4053d5bacc6dc03813cc5d92234ba9b435ded3fff8a92ca42a3ecf77a305445dc3c3a24ff3f052975d0cd88851847
-DIST firefox-128.0-bn.xpi 581366 BLAKE2B 02a8b39df8d69ad3e7c1c010d0da12fd52850b1abd02c1a2f8fcfc6fed6b0c8b221b804e513a266c64b1b8fcc870abc317d4e298486a42447ec7543964519842 SHA512 e552017471b93571b2a1589dfbe950733a8a7880b2570b1581c9b4099d382e99dc558e10b6516c13fc2354abf1a9ba612ce131437529a7257cd10e030adeba4b
-DIST firefox-128.0-br.xpi 587967 BLAKE2B 681dd47acd14daf1221c1c3ad832dc17ffdcf9fc7619d31c86b319ddafd96ebd1f8b1175095c881c951291b940c74cb9a2f84bdd4ea617fe053942eba9b09e97 SHA512 476aa7e2c32338e3304aaf7848b6e25353912cc39c97ba86024bf32b89c71b0d550359bd4092aa99866dbdbb09c6fe5ea4fa6e6c4aec335db381344b203989ac
-DIST firefox-128.0-bs.xpi 501822 BLAKE2B 60aaf21e9f214a4d3fd791343abd9fa309c4a47b275c18ec9c7b0b65f09add541ae16fea4f382d334671e9193cd1aca932a14d22872889dea46d27dd7b361500 SHA512 90f7540b85cdf8b094150ff73994acc738a1ae60762fc97af90600c886d80651ca12cb778d2dc2e2f3cd7c120dbb1fbf6ce37ca04168f7a4c6eb68ae9fa04f7d
-DIST firefox-128.0-ca-valencia.xpi 546032 BLAKE2B 36c61ac442037376329194ad5cd0357f2d69b3b77ada0e10100d63a6532ebc1b6fa57d9121debec59d8db540f9de8cc46a47e352d6524815c957dcbbf681b417 SHA512 e1d5cde5bf3b23b864a4862134de08f0cb46195aa487f3da54ade878c11e67e6f19a521db37803fd7ce7dbaa2e56f4fa603778065ff3ae5ee78bc687f49c9c94
-DIST firefox-128.0-ca.xpi 595961 BLAKE2B cec1470d3deffb3b1f9205b1ccdf43402aeea6cc6fd24e9527a1856f3ddf58d4b58b217131359d7ddaff4e0db92b42428731d3f864429084adadefe2365bd44b SHA512 824040406afc6282be2ef89154c221852aba6ca94b485389e80faaf9c227f8c310b22981629710893a25e8b8f55787dc1362b0cabe5a8e15007bd18f984a96ec
-DIST firefox-128.0-cak.xpi 592927 BLAKE2B ed66e64503f6e075074be84428c0641945efc9a585664aaa49ab01d126ada34f7839f2ffcdae5c04bc74998593b170ec5bab1ebd25fef917a2a1b22ddd1f6aa6 SHA512 8f6e7420c82e29e02d009b88e2d13c6b523d974a220da112895a22b606b7120548fd805e33b76d9d35c941b9c1525bcaf1adc685f90f7281241977567b3991e9
-DIST firefox-128.0-cs.xpi 657124 BLAKE2B 4bbc7b1964229a8117631f2450fed9a8685ceb8f69fc7b793b387c2542ad3b7f690c5e08a4abdbeb78f54c9d14226b40edffa22fef23c4f2981b33da4a027c62 SHA512 62a7d271d6ae0e09e2f61b84c5caf604261af40c552dca4b97638a365c926b6da861239e6f1d059bc27fa1f7b1af48a9376db09ea203c37a28d378de9b14b7b9
-DIST firefox-128.0-cy.xpi 622268 BLAKE2B 73fb18569ad98825dfaed13bc7b76c1bcb014bc2407bb9e5fdcef5b66b97b2ca1dbce3dd9d6d54443d563ec564c41dfe189fc7835c23442c0aea7b0a48149477 SHA512 d9e804e5bc0dbbaa0d24e5fc6f65a9eb730523c2dabae51908c033dd23d4a6a642867a12ef384de1fd9428b1c7ee2ee56c24b552753c15ccdc2d5d013959005e
-DIST firefox-128.0-da.xpi 610709 BLAKE2B 5a1b63d36c88a50ee5c58cd14bc2a6d2b86140357e31062239d1d786fce188263a7d62d39da10ee2adf5d92f99b406a6f92f6282922a24245868e41c03f658f5 SHA512 a0e60cf276ec021ff76316c206a94d599b3c6b7d1cf4533a5e8cb0948db04762e641282b8c18cbe4cdc725a19b7d1e9d37c98f55bd7c47fe4b45b6271ae76ed2
-DIST firefox-128.0-de.xpi 631918 BLAKE2B f7169c465c1efe2558e2b30afe87f32e5e61d114bd3e1a12c2c2d7f2aa96fddca8e60bcb34bbc1b62ad92d292563c130af1dc063199e215071a10acb79d22f93 SHA512 b4debd554dc591657857dd7952695b49dfc2b9b190dd1c6a5dd4c3e74cebe3a36863ef5c07c1137389c22c19faa2c67d534798860877d781fdc06ab4c5dadb55
-DIST firefox-128.0-dsb.xpi 648454 BLAKE2B 6b22831d5aaa242a9ae04a90f704424a8fec239e9757b2b5f0718e84719821e946bdb70992865e9b11ef9f996848802217108ffbb475c3966152962ee0ea2f4b SHA512 8dcf4bbb8b541c1b47ce72a599de945f2bdcb358d9a87ccc48dc18a0bc0d6992d5f095b7c1821e7e0c9f9da5bbfbe3516522101c168d34f08a1be44a9d6a7581
-DIST firefox-128.0-el.xpi 730463 BLAKE2B 0f2e15a91ea01451dba9f3454d64518974bcc80aac227e7794e2739763333499739fe4afd403b7ef9c450e34db68d555f5910efaac02c34ae8b94ba9f67662cb SHA512 723d9826c76407f8e82ef8cb1fb6009f43ee3fb26976bddd30c8195b0425cc1e17bc64d0d9c4cac0ba05091c9062fe982c6ded251de2978fbaf5ed1f3b29ebe4
-DIST firefox-128.0-en-CA.xpi 581050 BLAKE2B 8f20e6923ba2ee9394dd9e53bc7c1ae1130f7434f491c91d4c46e0277fe7d47fe20f497f19dac29acb0b673be09c901ab76a140cbccb6c9d3e887c8e15e9ddec SHA512 c9daccf0344fc25483a76885e87d624406fa3e7398f8770f7460650faa9db5ed854876719f66ad254ca9aaeee97a6fc3f7537a08c33cbb0294c452077680d668
-DIST firefox-128.0-en-GB.xpi 583199 BLAKE2B 74ec322c0ec6d881e5446776bf189c4749e72d4fccbdb3af48e3efc3c3a2204a0ed862635998f83ee08ad59132b9f69a0c378d0a6642c36e7fb2828f65c7f664 SHA512 2b304fcd92652afb9627130ffff693269aeb989f4b716858a0042ec2b6d315e870d9e2e3b8892f7c1e50dafcaef2c341bb5405844f74e6f8cac0eb14fc72ffaf
-DIST firefox-128.0-eo.xpi 613599 BLAKE2B b57b761f3941d317082c755babe1b37c02e1ebb6a884f2264929271a54e4788e31c47d2b0330634dba545362c535b4f8c3b6eb53dadb93ef72496ddc21703ee3 SHA512 ffd3515adff03b94d1adf6b926a908f270f88170184c799d0a15281577973d34f33a6f333daf51ef45a762c87cecc1a1b592b07311e51cbce8646d0c3ff0c774
-DIST firefox-128.0-es-AR.xpi 625743 BLAKE2B f218e24beb19cfe71042d12c7b21fb0dd6c6143f4113f658ec71fd5704fb27ad6e60e9467cf45b9053ac6ca711d86183a5b958cf3bbabc5a26b94cf3c72a4cf7 SHA512 1a792b556f9a6f4d2804605722c84eee98df5b2700dc877ffed5a4df60d00fa09293aeca863cfa9ac61e8e99e15c98576e1839fa37f02578a021cae79699f382
-DIST firefox-128.0-es-CL.xpi 625032 BLAKE2B b5fde2d84c0054f7fb90310b3b7d5dc10f97484f400eaf9767b0687775fea92882686ac0332e43dbdb7ad8a329e119033c39d0a3dafc807e45a345d4dc689e2a SHA512 f84722b92be1b26fd26aea20c9361a12a3600d0e1614a330ebedea85b4e0562f788ea474e39e0bdbb1a2d243274f760a7f4970f9e7cd80e271a9944ee5751322
-DIST firefox-128.0-es-ES.xpi 619471 BLAKE2B 0386ace5612e79918a3bc397e50b8ffa3d4d38296cbdb232afefc0e54f540fd760069c6ef9ac97770d948a2aa1949efc922ad8c7f7b6adc4cf488afc8980fbc8 SHA512 2b00a5145cfc0785d63dad9ca34a5e46363b93d780b2a22cab1b884cc3b097ecd1a53572bf09b27706cb57a57174608a1bf67a907850a4efbd68c6aaeed5439e
-DIST firefox-128.0-es-MX.xpi 595787 BLAKE2B eb08bd8898552977a2a2ca4c9c988eba81838dbf3dda36de97a249d12e9d4cd590268d49379232dadf74e31ccadc410a25941ffc5117568802cea0e00e37f28c SHA512 4424c8af301ccda624b2e7d7bece4d2a4e4f7527d37df16fbad12eb8404b4029f452d203e2c83a886738111b26493bb711c696ec9deaf8856b337d59af751aa5
-DIST firefox-128.0-et.xpi 539386 BLAKE2B 0cfc855d72fefd52b4512db4c31cffab2d1dd0fdab14d09fbd18078e053eeaabff8066449319134d90557ab06f9091eca4b737780d16753c9b92572e7f361611 SHA512 7abf688f471efdfee82b542a65714dafe454c9c16f4b870f575f7bd84fd1be28c93b03d613868ac839cc167162a9eb84cca2a92e439a0b02c172b0c047002a14
-DIST firefox-128.0-eu.xpi 596447 BLAKE2B 934c74c1ba8778f96569e3518083acf7ae61aa5d4a12906d8e35ae0f8ba18022707816d0b504c8278398b3742edc0f566a280095a2fc74f07a10fc8d68214810 SHA512 74a7f72fe904b94f61960f3a5cc949c28fb504c7de2163caab1950a3c90ef2834a416f04f4d00e3b58ef11a9cd0fd3aba0b89f9f06cda24a4b81a45a3ad0b87d
-DIST firefox-128.0-fa.xpi 589848 BLAKE2B be6ee30128b376cc4713abdf10dd8ca699f5968ba56a886be73b4f57633427cad50282006675c5962623caba8637668fb2253adbacb3e03199ae156869c18117 SHA512 cd6863a691e3c8a6fb6bf82a7c0b6deb60d6ed4ff921e0eef256008162533b932dfde2bba479f00061f8d1d98fc065a6fbfcf9b99a06ca1ff0736063cb7aabb1
-DIST firefox-128.0-ff.xpi 475894 BLAKE2B 0858593e5bab9b6e5508ba2444704bafa754c60ee352d25042498db72f51bc48a8b6bbb66b9f9f58d362030cc1c83342cd3f03e2c0764c432aac5c95117bfcef SHA512 f4e3249bc16c5d07958fbdde87b1bbfa244e61f58bfbf0db6c74693ffe01f9046a413667850b28fe5e632e5146b153625d25e5bc3486fe0da1d15fbc458b882e
-DIST firefox-128.0-fi.xpi 605631 BLAKE2B 451255bb1fdc8c44eb7745b6279ba1ce303840043a8a16feb63ebd2f1d604ddb85192cf00d7ad4e1ca6d8bdea9a226614d85e392d83c9656bda544812f01ac83 SHA512 009df840b731e5bc4e9281153384451fa9e0fda32738324fa29355634587c1c3501d857ab40df6d13767dbd5156e055ee76c0877769aa214a8fd898e7eb4d7c4
-DIST firefox-128.0-fr.xpi 639018 BLAKE2B e0cc4d4b97a158c867838769ef88e74372a97720141ea9e1a9f6e525bb7337a104cf071b73b5c88d4b2d81a87a4e96f163f461fd6e1bfacc8101104c17dbccaa SHA512 c2ddbfe62b5326e4a9742d0c21f82015a444b4135336f99477721596c6b53a15f7cef35622e454cf3df42dba07b4a90c6391eaab09d3888e0914c6fc9ea56111
-DIST firefox-128.0-fur.xpi 631588 BLAKE2B dd16c24a1990b5a3baccee97a40e3f107f0498ee1dea49ae6af5b60d6722fd35f208033e68ad4a428950bcc6740d43e38f762e74612ad7d5146222e7ebd01ef2 SHA512 c867baa9ada38dee47023784627a4f52294105555fcb620c78540f4e296241bd7a4d2b0af554d7dd9af016cc0718e5787e9dc76a6cce7cbf827941c86db37a21
-DIST firefox-128.0-fy-NL.xpi 621390 BLAKE2B 148b842ddaac3c71f1cf6276df11e41b3adc66692a640901abb73b9936a2f9d7267df3e0d0331cca6552db93f61745574da42b5ca64ac42f1fbe9104707b5fc2 SHA512 de7aeb47e3bbb574d9dcc9946058efe0bc950ce79512fbfc1a9f4ddd8ed9918fdaa3a49c8ce15ab4618629ec2174e276e11b7caa12d19119389eb3019d167e24
-DIST firefox-128.0-ga-IE.xpi 470833 BLAKE2B d3bbcf15bcddfa692bbf4eba085a81ad4ed91fcea53e644c076c2ea79e96723447a0966d86865c57827024b88bc3d990d6e19966d277701d69015f565b57740e SHA512 5b5843ba31342bc659ecbacf4694b064ae90511b780c194d533701b34859d672cdd535796a361dbc3fa395a60947c179aafee950002cb340dc6a92cca9026941
-DIST firefox-128.0-gd.xpi 596427 BLAKE2B b3603e7147e3a021053f0d9d07d77122264dc4b296f478609cefd5644ebb00e224da8ad328e342723add321c344f1e7bafcde0c43e1775d40d7274396fab6f01 SHA512 5c033afe75120fe5bf4e0ab039c1c2deda81eeb5473bb7366ab236ab676f380452becffaa612c093ea1950e150031f9b7dfb7ef268cd12a7a9986ed967e5ce92
-DIST firefox-128.0-gl.xpi 603933 BLAKE2B 1766c5b75d04875e355e626930defdddd2b556fa425bef3c3072922199090385b8512819dc1e51da7180e459fadce338f48c1daeb7a3d41ad68c6cef1ec2f0a7 SHA512 d3474013cc3cf4b1df6d4a610fedb00c9cb866f463b0293c48f916950cbd50910f363c710c825835a6969ee21d8342db0a83a8047b646aac0542b78f618b8378
-DIST firefox-128.0-gn.xpi 636448 BLAKE2B 6ca741bf7c0a6b47f0ebf65a603ea8709da6fd3d26c0e3b6e09f5eeff330b2f11eeea67965d5f089a1701cdb7f6eac3b7d4202f1f9974f94f52a08af7454fb1c SHA512 a9eea16028f9389a4850bf525cc782c8dbe20785781ebb9d7a07c8b10274ac4bc1e87412d2abfde95bc6ff57ea5a0cc72fb8cb2ba14ae06d154486851a36d1f8
-DIST firefox-128.0-gu-IN.xpi 527179 BLAKE2B 67c2c09cd7b3c714404ed31708aaf04fcdb3ee12274b003aece748973751306064c00e25702a2180385efd69167a67a98a53d54f3d3b6db358946b2054a8ddb4 SHA512 25aa0dcf80c78aaa82c6d7d2d7462565ab51376bcf6852078757fe69e5472dbf0d0440d56192a042323c3d06bf9a0f7af0c49d24b0a0a2a6b2d5af25087f8a33
-DIST firefox-128.0-he.xpi 629896 BLAKE2B 87677a10c429ed51a2c7f4dec54189a8c323f7333730ee65e83f8c0afa4b47034f06057cf32902c4734c5ecd62ab5bf9ea4a3a9147a3043fc6845358b13e622c SHA512 2648eb80a505a9e11cbab14c978dfcf74fe80479e45d161ca2660dc60b16d239d27688021fb90026965f3ede05295eb0b4fbf8fc2465c85267cbd9f4e7596003
-DIST firefox-128.0-hi-IN.xpi 566639 BLAKE2B 5664464e903e7ca880bd466f30c682c5e32dcee3c0ae28154c63e9457fc406b0ff84d5397ed96d131a9945de930a1168f3f1cca38112c0406dc7dd26c57ceade SHA512 bfa5e59944ebd74346c21807ffbcd2e0ac6a28efde6f6ba3d2cc34f136c034d23f2cc0f1665dd3c7e12221a84f61182b59fd3d4fb67bc6e0e7f54f27c7877565
-DIST firefox-128.0-hr.xpi 556613 BLAKE2B e7ce108af8b57c249bd16a705157297eb4b6c0a08b9af3acf2813e7d6123e8573294e0d3b69a733008334fda53c57f13bb57a5732548e586f5c5864a1051ed05 SHA512 a8af34fe1f4999562751ad9253c5e36c88dc337a115e14f69957258ed22757127acaa6f2cf30d34406554852cc962066bab60c241384d254c65e7f781a684463
-DIST firefox-128.0-hsb.xpi 644493 BLAKE2B 1af31e45908d1eaf7a6864c876f090bb202a2b61372c18ee33b2445984724454d8cf13d32934866a94a09253459f28e02da774868b7d4cebac319f0548255956 SHA512 e11d7abbe73ac59992746aa230ac47868b7da8de3b0a7e3ba29bc7a589c97720b1e1012e47d24b91c215e21dda80282bc28d6fbe5cf7a37ea66e079b753db016
-DIST firefox-128.0-hu.xpi 647705 BLAKE2B 1aaa5da0508e8d0883cd53e58cb5ad53dc137d4dc82a1eb84f30ed875294b64f0c53a4cc461e14f9940e493c9b9a89fe049220b85734cfa7e565bd0294fd3631 SHA512 d26aa2dc2688fdfae43f9fd706ee762c22c69d28b96b90c783ae70ba7209bcfe354ca21a9502c54b1153bcce3b7a4f2bdb125be3555ad56b1c1514ed7b22e66f
-DIST firefox-128.0-hy-AM.xpi 651430 BLAKE2B 22dab366d5e9d1d953c4cbe9e6732da640994130d4c4ac1b11d651d294528dc194e5e34867d0e637623ba9cd88c9bb912bbfbcd2c960cc52acedbbedecc336da SHA512 96a30fb4d88fdcc9ad93df1a99213f0651aa194ee50b02abf339dd062fb57de8490c3646104d5e7d877ab581e6475bf5beb36a37f1723e8a53bec91c5ce255c7
-DIST firefox-128.0-ia.xpi 608974 BLAKE2B b550056e980d29436b3cdc62caf29cdc827255e6bb3d46af683bd2ad334688781dbbe9a853dab9e00f9b6a538ecf215edd25646daf00fdf8ee0e394df0653f68 SHA512 e05eaf1681ddb23989c039e6e01b370022937babc2aa59b7f6c59901cf22f91e2fe99dc19579b2a8f27485712586b2f73ae9078108ad5a09095be4f7a4eba49e
-DIST firefox-128.0-id.xpi 580043 BLAKE2B 03e0b9a6845ba89d4149bf9ad35fbf1067c49a1c22e95085c23e537bca73174cf78564c056bb458c8fad66b752a73252ccbab9fab5f8a6e79f3925b2729c4f82 SHA512 9b517ab3ef018452e4df9ef4547bd3e4aaff194ff452bd32f3b0f42d2ccd1af6963e93603c82b452055abbbe54e85276d0c664dcedbbbe26090d4fca674cba9d
-DIST firefox-128.0-is.xpi 615187 BLAKE2B 327ad1c06a9c327b676683d6d12e509f5d10bd0a06bec3337b3a0ec7ce907e4938e8bfaa4459be3a061e888672fdd740aa39c9c06620d651694bf829ce18d201 SHA512 2b84332c4d8b44b94dd8ca6c834f85efceffcbc4a84cc227e77a2df4ac9652396c577402240e8e0ae295637a05a4dbda2631a73fedcb43b9d607948292fbc40c
-DIST firefox-128.0-it.xpi 565256 BLAKE2B 931784ba2193258a3b50a62d7f6bea4655c8d4d1edd2272706fb1a1a7faff133047fb9dadee4b204f98d040b25069c378dd47ec0e6bfba11661301ff14993d2a SHA512 8c6f1656d0f5a7df709d6c16cf830e0c4b00ced4faa4ef964fc6a13017c2a0c660f5ede974f278197635ac0904d520ddc95864553850846432793070320e40a4
-DIST firefox-128.0-ja.xpi 675101 BLAKE2B 464a570817d4ec5cd5f2177350c8421aaa604fa80122877cc1f53da6875191b7f5b2daf495366af03a3efa440aff0391e822d14f573c1c7fc40c615c50b05efe SHA512 24afd1abdfa5e867b86feabb45d892b6eba306588d92055808b80e9e8e52a25b8521f2f6a0e2517f1dda1cf1846c346dba26e7b9beaf1971dfb23ded3e2b3ef4
-DIST firefox-128.0-ka.xpi 660538 BLAKE2B 831345cef7849f5bc87f67127e1635a9e1db1d527f446db4d5c53316f180af5350cb968a35a312da82ebc7a0b41618137435d3c103cd21ddb9074d2ca628e4ab SHA512 3b6acb3a0c94ca52ec498364d85cae5b0f7b9f42278db188ed9c8823aed01ad86f74cfe1629f02337853371a916503590f95c0648e6b7f6beb5831fdf0ead4b5
-DIST firefox-128.0-kab.xpi 607380 BLAKE2B 5e7c182e4d581660e2ce5ce27160e8e7bb49347e829ff4c673051fb37f1fbe459cb4024326029de7dce68f4776071c5da1e4aaa31f35d1bbab2cc8800a4c53bb SHA512 e4feebe26efb0426a8f9ba4d80b5d3cd8d221eca9f32003d125d1d966d38639953ac51638375ff855a0c5441410220b63fca7bd624c14390bb749a43d185c250
-DIST firefox-128.0-kk.xpi 705161 BLAKE2B 26c218d8e3656e79bc528319fc075b97bc8f1bfe4526410a70d6ef5010f5eb2088e972a17e125ce23efb733ea381399bfaf2c5c7cf8fbe9946e37ea53c518a53 SHA512 ba6205e1f1f2c1e3ab6d9e0b059634d4bbd0fbb97091faa357a2174b176f4500624034cffc1da35f643f08aca8c982496c255fed37703a2689f5b1b113535259
-DIST firefox-128.0-km.xpi 525722 BLAKE2B dba1383d444e847ff1fce3c6a5e614799176f7bde0368f3fce9d5a8de4ffd9f1b9047340ee559aafb218d83a2af61b2467257c8bab10a847722481cf90a55ba0 SHA512 529b887dff551c687166794a575fa55074663d1ab029c10b429cbfe4e98350f8bc8990b2f7d525936940ea0bf6a2ec26a3b7df3e11ccaadc587c51b4e73c2c1a
-DIST firefox-128.0-kn.xpi 491095 BLAKE2B 356fdd4be841774eb8e97d92ce5ee293592bc86d54d88f3acfe4e1f91be491bf5751787c2490b71a193152e9025bc0cabd00ba44a3b52fbc7af7d1d322191ef8 SHA512 1988c5cc58726533dc54fd2db5959f1abfadd36ebfcf2fb92fae5c00401f46d96b8e0afac1997ecb2db8fa50ba685cb4e74d69478068a6bf3151963a1197afe8
-DIST firefox-128.0-ko.xpi 659215 BLAKE2B e654e50b94ea63ba518ec089906582e7aca1d8a75e696627f9e69cb78ef3f5f1fc24155d58984c4266ac0f21bcfeb763b796db3bf65e3e51b7fbede20e3c0e44 SHA512 a7d2729d973ef69d253431ee2f08e889f8a35c3b8c550e1944eab06ab2ede4f222de983f385184a4f6fbda3310a50ff1c48f3f2c4c99a3e5d3850614e6d0e425
-DIST firefox-128.0-lij.xpi 483940 BLAKE2B 2c66f9e5c397b619ea3d0128e64aedba7df802e569370ee688a31f7b706fd73e73af91c74e0c6b4366b99a781377d3cf9add7f467ed9e5e177a99f907b30f036 SHA512 46511fea4ced3315fc26b41dd55beacdc480bb771d7f63d9a307ed8574a943fbd49a18bd038a39f32f167ff223b0daecbbc568e05ceb23f838609ed351f6da07
-DIST firefox-128.0-lt.xpi 572515 BLAKE2B 3b4dfa0fb0928cc08776fa3096f8ae16b8c72771bd636b9117cc53d571c0fb2973cb5ec98c6b1ed16866fd2a8102d5937bacb73cb0f4413048c21f2116d44397 SHA512 42b31e2a95b5c6a0e38bd9916bb7941eabb32ffaa2651aa13df4276bc36f3176b3f656709484e72f975dabb1dfaf2643d5a1475eef634bcfc2e345ae489a7109
-DIST firefox-128.0-lv.xpi 573655 BLAKE2B a3e25cfd6ab234ef9561220d532e4bd69aadb0cdbebc63144b8a7cfa92265c3abe9712ece40032cceddb4a917eda8b2cbb1574471d7aa0c752c4f15c7fe7328f SHA512 12aa8518c317b124a231423cd0360a7502a55676db931532945187bb6f580887e86101b62a9ec18e21afcf404ab4d5a71b7320a4463684ca52dd5e6d6058c178
-DIST firefox-128.0-mk.xpi 493700 BLAKE2B 9fbcc70dd96de86ba285db4ea487d04e8f30be0126d12193fc0b47e8620a37adb7c89439523c2ba2dbdf091a4be57295d34aab19a8343da388075a482a0cee0a SHA512 ece5ea80a73f3662fb9119abefbfea0527ad5d4d989da36380f99e01d138eb1a1d1b3858588b807a5e866e51596e1face331c486b42234f3439456e7f62e0443
-DIST firefox-128.0-mr.xpi 531935 BLAKE2B 26f54771d851058a5d8ff39ca2d49f26e5829909a5360b183896ae41cf242efff21b4e316b370543d0d4bfab2c2ab82c723f9383b037186cd4f6d15be4be0894 SHA512 397cedbf6abbe8bfb755e29a0c32a58ddd6ad0fbc352be179b4160b7301ee1d4f52e0a129ac5baf061543f79d06042360b92b29edfa96f4cd64ed75b61c65341
-DIST firefox-128.0-ms.xpi 449580 BLAKE2B a7310ce8c170f512a922dec9b8aa416f4257ef56cbf35e3970faf9e427615506ed5fcba8a9a207ed3143193931132cdc9a5d98b9eb14b72013ec8c2133287b90 SHA512 6979122e608ae629fb95b215c86137d7f428a9c0e2fdfe279bd0fe51e6e37646c73c59abf78e0c6723495abbb55e1fe3bc088b97e62ad18a22a3122a51e21fc5
-DIST firefox-128.0-my.xpi 518482 BLAKE2B 18c6aec8b327b1b1c4fec03a6a773b55a0eb32016e625bc61d616c48feb9044a950e0aa6041e98d44c7464708e7fca45f5f55d83e0e3a6c7e3636848b93c676d SHA512 1fc374db949908f877170a9933358a854fef3df6e77b6acf5d1d9cfb398a69874ae3823962f88c47c92813de2a95311960a350abb8c11f32922a4570da3424fc
-DIST firefox-128.0-nb-NO.xpi 606490 BLAKE2B 08aada502a1fa02fb2d97186712b79ef1ae13ef8996f43b04be5c6823ce85d878000fe294d40dfcead9f4f116bb1827c02003986d965c0c5bb5f72a700349e42 SHA512 328d53604251ac54b252c38b3242735467704c75c82809a8acfaeeb5f6e6977b3211a24ab0af6e93f2f71e0043b54e7bcc20b000d94ad29416191827c04f694b
-DIST firefox-128.0-ne-NP.xpi 510771 BLAKE2B c61b0f643f321646f8ce7693914402bb0c68572fa1a55d3d918d6dffae3873df6f348f6782609d385ae84bff47e210112f1d330f8b87db3a234e6bec6125fe73 SHA512 89e2e34aa8441a8455304fd909308d901f467bd7b54aa297ae511ca0102bae41f6608e3336b099f4a2a0f2d9e54e9bee76e30d2eebfa5f5f7f1e8303f0956954
-DIST firefox-128.0-nl.xpi 615102 BLAKE2B 060719c32c1cc6abb3d374ef2485257f948357236248125a8c7e53718ab233c60e7beeb7a85d49260f7dab329e8daab7256bc78b3a54aa8fb87db6473cfc0e5a SHA512 caa0828667e8a43cd3987f31ba137545640f7ab714d39fe94cecae4369d180158246db7f91f463a1b6eb8ce79ef1d02a42db4590f8afbfb4ed362cd313e5e464
-DIST firefox-128.0-nn-NO.xpi 608951 BLAKE2B 4a1cff01fe60efeb1165ec2da737c1e21956a4bc5160086891922f208614ed1921bf3148d2ec418863a9f5bb484962389155a48fc0418d0ac9bf4dd5231d1bdd SHA512 cda0d637fbe71760fcf73c460defeed0072c1d5b2c4e531bf5d42940d7491bfd1da7cb5c889e859425a50e48abc5a965d8aa6391d8cc35fa08956f17fcae993c
-DIST firefox-128.0-oc.xpi 611284 BLAKE2B 85c6e71264b071d1441b23db0519dfaa3720c2e6853f21faabbb25aef9e7d312aebb33cd42487bc455b5fba91e73d157e6bf34f622439c724a14c0053061d692 SHA512 7f808489d938ee33e76c5bb573247c500ac63f9bc5ebc400128a19907e549802a0999fdbb8116e4ebb3445d32c34ed2312413726cac461fe898e1bd7e733f1d9
-DIST firefox-128.0-pa-IN.xpi 690605 BLAKE2B 8f5b22904d07e1664330f61bc1bab04c5159234afd576c4dea46343f7d2e2ec8dc9775aad5abd907d9710aa7d8f3a39545f6d84df3656274ac03b42cd437654b SHA512 e6ef3c55b34921fd14c82da2f1aadf26e7a8521a617cb6af8ad2217107b8402afe95de8d70c1832f8f3ca6bdab290f1ed60cc174c2717f941c90bc72bc41dbc1
-DIST firefox-128.0-pl.xpi 635626 BLAKE2B b1ce0e6101a6347df61181200dfda9c64401e5768b6d38644a344535aef156aad3be3eaa3b0c805383891d8cabb83b32126e5f66f45972fb7112da5dbbfb137f SHA512 5d81ece8da283acca3616c5f6bce8e6b4b3b08ae3d588072fbf4a7335b030e941aaf66d62654a6fbeae36d9fa1ffc04918f816b82d3ed71e1191cfc2d4b4942d
-DIST firefox-128.0-pt-BR.xpi 619824 BLAKE2B f4c17660ac81962ef908182d784addc1f592db337409dfc6dc645c1f5c7c7e9c505ce077838bfb4315a1bc249c3404983de256ef2449caaef73515fbc2f13ece SHA512 a1b8d0f7b81a2323db19098d2f9626ef4c61930deab6ea105d0f66829f7b058cd0e595c3097756779df4ee150100ca9a4d06e2274edc203973294b1ce7238359
-DIST firefox-128.0-pt-PT.xpi 626034 BLAKE2B cd2d7f68b58ebb295d2b7b25729e9c589871b0ad80f10e55d99d260c3e64171ed2be33095a3565e854ffa0ac7e220505058f902a6909b0a8324173803df88a0d SHA512 1f30508b45a5cfeb5383a069c35cd01cfa2339858eb269cab085a4e19532681511c14b81fcdcf1c2e0b80420dbb18ea2ad235aca46d53423d162086b3916f2eb
-DIST firefox-128.0-rm.xpi 615679 BLAKE2B d9857a9a9b9efdd1d1bce1c5d9eeb456d5cb36cf66472362ffdef5af4fc340adfef5f998fcdfa9010a1c494a591560557eb1a65e3829125375c78c21c40f97e3 SHA512 c55632e4079187baff1dd985f98074a17639672959724495582a33d7b545cd3d1f4039022c35d09815a38a62fdf8d1243c08cc0d9b60601f80a6e6a9ea1d4cb2
-DIST firefox-128.0-ro.xpi 549650 BLAKE2B 3cf57fbe58a1f8675b7b04ad4675a499b9d0cb05bd283b2e31767684bdc8f709e81618b53afbdb1fb9400dbcca8a9f2c2eaa165eac8147bea35f9ad04b223fad SHA512 eef8bed22d6f7c43e7e613e019d1c61f045dffcacf78ee80a12b7976227c46778eb8814e3a89c2a9a4be9ba355f6aeba1c2d389f5ca0dfdf33129427b43f3590
-DIST firefox-128.0-ru.xpi 717691 BLAKE2B ed73f89b7d576d73a1a28e714b40d313a3810315afdeaad90f6ca419a6b7e1508d618bc44fbc945c66c7721d632b427490f1e7aa56d7bb6ee5697ef453be1268 SHA512 189e6e0af8fbe921599409e7dee9a61cc21d998d4776fa7b73f145723244b4598418a35d62f18b2c543d38ec6f372365d64fc73a36fa339264a25a0fcc4212c0
-DIST firefox-128.0-sc.xpi 584914 BLAKE2B 4a878328ba2f78cf983b150ac0fd65c9a8da2d668414c5ca16304b646cb53ae333828a066bfcaee22788dd49b05f205acc7f9255de9cd59fa46912f41f6477eb SHA512 cf1e629ab935d1262f2d18becd0214fdbb33db0541e5a8bfabd5a7d8b41b387201d38fe8770835d62ce04200bb67f5572d928c7bc11e5d057ffe9d181417ae0f
-DIST firefox-128.0-sco.xpi 511148 BLAKE2B 20306a0c5cd573797a5978817a9724e30983f4c5d0bd2a5cd89ce25a5675ac75957d00f314fad4bddfae6218d5591e29c0b866a87a1fb9dac71c4e53b28e72c9 SHA512 33ba113d7300ba9308c3dae216a9544083f22aa754997025151ad560083b3832b77b243f912ea9b069d7ee0747305df57294b07affb047dc90319132bb34c67d
-DIST firefox-128.0-si.xpi 606047 BLAKE2B b54752f3cd674e9b7761a94c81ba4b59157a13c07822f5272e94eab58763d734db6c598804e237ad9ff1311e06e85bd96447960f8135f97e03a0c9e5469bff4a SHA512 e6ec86b16c9ee4da0993abbe5a7e9bda90baa76aa539e3b1318cce433896381dddf9d874a77f800bd93cc083cca422e3ae4672b17100b1ffabc9c52cea178149
-DIST firefox-128.0-sk.xpi 649995 BLAKE2B 363f8507927cb7f2372fa51b4391030bea837df26bfbd0265daaa26196e7b85e01cda39d039f1832736e3d52775a736805d04792a16f430bf326cf99534702eb SHA512 90bb5724c474e33513f4047f3a478f2f74cfe6f8f5a565edf40bad5a4e4e227255401c10e670a2db134950f824ac573dfc927bfe7121321b8ca5807571ecb066
-DIST firefox-128.0-skr.xpi 707175 BLAKE2B 94deb377fd0ccb676865c8a72c44fac04af6a8ed1030ff3328ae69aa95a548e346801f7f8467bffccc3815dca162197023b689a021fe92e10bc4d009befa4daa SHA512 972635c3ab85f4a93c1cc6bedc9bf1d4c4aa6650c80b5d74fea59efe13df272bfffe7a24bd247ec15d46373d1cf7d95056c68a5568b37aafa31d97e98ba31b75
-DIST firefox-128.0-sl.xpi 615568 BLAKE2B 9284277640e177d7f209b82e4b00d733dca4a75618548c0144458f2b072720e270958bcc81203e9be678d14bca203618a8ad1fb90661b3d2d2b10d55412c7df7 SHA512 123648ba73f740d65535d93bb2ee8c242bc657936338ce65a6db7743c595570f5b96aa95b52518134922527ccc7d778a1239706d7086d0ac26328b48c61fdda3
-DIST firefox-128.0-son.xpi 416260 BLAKE2B 92595a58ae205d1619181fae205b3a7d9f661c6c6564000198c9399a9aa4103c4e5090e7a05d644eb9b5cf2db7db4d6417fdec3f56bb6657992ecb0a89cd6cf9 SHA512 02e64b150e475b765bd4da5045e487567ade0d9ad3efbf8ca953a6d575dfd2154d3889b3b3252ac6c016b3be977ae05d617c4342b51ea5d0fe90014d7dfeea53
-DIST firefox-128.0-sq.xpi 635525 BLAKE2B 4e4bac7617e8bba1906be9f056ea3fddf1dcf1dbde11074c9202de30b41282f1415ab3b55709ab1499d67f38ad26be78d165638d07779268f8dcb129a7ded324 SHA512 8a6e25535991f9c2db6011f22af25c7ebcc721b9b531bccfc87fadce54cfa60d8945a1b707f14d0cd11679089558ca87b37e97d8d167f14fbf4d8127d674d071
-DIST firefox-128.0-sr.xpi 639179 BLAKE2B 7afc26f9af6e028a2199e9092a1291c93a327baa278ac547be39e82135de55ea001c07073026a2c2153e65b11991c355e649b66271de100b156bf78bb14580f6 SHA512 5094e5db62d2a022c7781166168162ec260cc31963038b7a07f35462c96c8f44b177870b94da6116536e36c0628e96286a011a528e2f43d2d1a0c41ce4f4b0d0
-DIST firefox-128.0-sv-SE.xpi 616852 BLAKE2B 5f82acfbf78ecbe2df0492b6a741334207e7d950050bc7c5faa0ce78579eeb3fda3108cd804eaca706282b8aa21ad0f31e36685938633e3f395585a5d056fd87 SHA512 161366bfe1f335237c88617c5889db6d1587f3c24196001249787740657acc52f0ffa7aa128bb509a4802071235ebc2da2ce0acb005aeae57c9895457fa748a1
-DIST firefox-128.0-szl.xpi 526232 BLAKE2B d79a0c3777905a6a5ce7cca637ebab49ac307bc94e72cc6b1df32b672b21a24cc26b46db591d9ef3b6330741b486e7bdaa4e5541c1fbedf2f2e3cb29349fd328 SHA512 85a4072de10412a1e13bed240a6cbd9f3a037cf4ebf70a28719051354f3c0dc6a6f254223a424f5af5f8af6bd5e0baebfa3e8fe95f0750cd6381c1e6ab43a614
-DIST firefox-128.0-ta.xpi 507358 BLAKE2B ce2b278b49ec31e34e508f944ae8e6fb94e17199cdc5bd2add5d02760db26ff63e5370dcfa15649b3b3cae74b624d039dd68effce96b67274cb080971456b996 SHA512 5e4cdd408d64ae585ca7296c2c4e7f759e322b81913cefb453f700eb659492997b24f6ba7be7347475c3a14a0a9e1ecc2fe19c808dad0d57682465f4423ef77b
-DIST firefox-128.0-te.xpi 560876 BLAKE2B dbfa13be40842db1e208021befd460528f6d95554d92b1e9c94d1cac7bef3546c786225d751c26868438638fbf846d871b2173ecbf830464b941f511cab855fa SHA512 178c4bd996b14f483881f678fc22b12c6064918e26ac4c24401435cbf454d2523d1ed15e112f723490586aede99fb78728a089d428ef5fd60d768a883d88307f
-DIST firefox-128.0-th.xpi 693405 BLAKE2B 79de5f26ce012239267fd7900089a5b424eaab2dae31a383ceb0ad8a62907288b0af129e8bb93559118c21f01feac4f2901056303a971e6f32f5ff4b51d40cdd SHA512 fa5e1e4c0ebcc564c5810530b7959b5e8a887b2de252d641e73cd7bd2300972cd78b4212ad267b85b3de52cc018ad35d2d828007f8b4859c33fd33ff4649c278
-DIST firefox-128.0-tl.xpi 534025 BLAKE2B 6aa35320e39dbccf14f863832185d8a1db19a7f5e7c0dc8e86d4100dc314b2d29a9113697c1a6ab7e073523054e85c68e1989c8a20e0f3cc153c01bef603a2d9 SHA512 1bd64d2513d54794d6d41aa194fd88feb075fe651100bdbb01be5ff6172ab349c00c3d15b5efd4345c6525e648a66336e5dadbf4d0a86164c3998b7f1bc572cb
-DIST firefox-128.0-tr.xpi 630012 BLAKE2B 92522c3b5ddaf027da6ba32f84cb3e80bd23cccd94ef7c78b8aa0f88eebe88ff3a4791e772f76c16b62967a9cea46da341b3b2ac37f870e92bdf3fdd56fe5a46 SHA512 47355ff3d82e19db9ae20f16eb1630a2ec255b0219b569606cd6a3e5053ef5aa6ae7a484f70707d25d89f99a5fe5025e25176189605f1e90efc1fb6e6b7619db
-DIST firefox-128.0-trs.xpi 503824 BLAKE2B df7e070b45c41c069d76a3d7a1f67f0d034d39777f61a54fe8127f723a603c99c0addf69bf52edf1a3824b54b72dd3c5b31a4ae2c16a476a5fe2f979f02d8032 SHA512 534114666bb1a131ef4ff51f1a114156c09924cf7f8560f278c4783a45728f0df730e4b19f01ccaaed4c6453ef757608975d695f17ea3ed9e6bfe43155a39236
-DIST firefox-128.0-uk.xpi 707195 BLAKE2B 4071217517c8cf7c51b584b51936515f249fd383fad6132b9637c296fe911ff7dc853700cc49b266e34d5305ed7052b9908c5250c50869a9b3a2493a9f90fe20 SHA512 886c42192240ffc7dd8294bf912de1e56ea82e17e5e206b1f521c484557d42f9f2a3958ffcb114ceebe26126d045bc4bb7cd52c0c076e83a8a07394c0e29cb69
-DIST firefox-128.0-ur.xpi 560339 BLAKE2B 63f996dff257c66e0f35887984df64771426653eda49352696f379090b3365cf737e6a4e8766c4234de8f0921caa481a69745d2e94f167e35c1b7a7e6097abc7 SHA512 9f65ffbdf069de89f32928812f311e7eaf91675ad40765fcc0b88a4bfca86aa9242c7207b49874cbdb39fe31e8f6b110af2af176ea649df3b5fac07538a75723
-DIST firefox-128.0-uz.xpi 478619 BLAKE2B 03ce6a56af48dae306d7cdc8c8a34a57a2a436207503c5c94da4c38359630d56356b4c52d59b3518d4efed2bbc816fb34093321e0b9bd7ee00c9172e8cab4464 SHA512 e2a7d96d73664fd85acafe7d008cfa22d283e2742dd98f5e34f00129c00b2cf3f3a7240bbf0b01ecfb5fa49a0055d8d4173d6e8eb929e4d24bf764b5f1fb9202
-DIST firefox-128.0-vi.xpi 653927 BLAKE2B f2f804cb08bc000c1c1975c5b641b068a8677f7ab51b707d877f1333766af927584afdcc5a3f817a3d72a4b9f486d96bf75a4cdfc430e53dc19dcd8819720221 SHA512 16c58254dee12ce09b4aa603614053b08b50e7eae55cabc9709828de233d2393a84ff1f7daed39f58d17f570337caf3acc3936bab76f83b1fad49f3bcdb4befc
-DIST firefox-128.0-xh.xpi 417021 BLAKE2B 50961db41b3ea9a1cac9f5ca60ff7c69c262b7f7f416c63393ded69b3916cb57fa1d2ae2fb6cba03ba8d30857bc2c596c6d6c2d88f7b56cbad49f3ef353a70af SHA512 fdf7e9bb3b76842c4c135cf2d82ccd2dd744967fdb7d9202474e69e1c6f4e955d0ee234da2f63ebc706fa22a7de363655477b406e9cd9524e33a7907f680c9e1
-DIST firefox-128.0-zh-CN.xpi 654723 BLAKE2B 55a9f29335f9d75f71b01aef5b13afd7bc4d74d334a85d97c89212d8e127c9732f494afa39cedcab6efecf59997c967e593478ffd48e6dfb25e2aa6ecb0fcf58 SHA512 a9f11798976e69b2faf44dfd2bcbd1294b0c771f9673ba168c2e0a351a1df346c3c74670fae9ed729cc37f1dc4c19df92b20e977da4d60a8a016383ff9192d32
-DIST firefox-128.0-zh-TW.xpi 656867 BLAKE2B a0a83d940a8a78a8436f5b708d4443ed448d0b676bd6c52901d58c557d28c4cd17c54bbfdc8fbed8cd5b8f522da646ab80927bcbf516ac572db0c1a53472ee07 SHA512 1617aa2937547da420fa95c40cef125898967912c2d1030488ffb4ec953432df75cacd2af7a6907684491ee3f52e52b1d0e855759a141ee2cf605714d0e80a0f
-DIST firefox-128.0.2-ach.xpi 464065 BLAKE2B 349d24f095e397ac55948dc98a969c2f4618a9ff1bb60f08dad16a533e61281f46514e41fabde8fc97419b5582b6ee50e533f79545ec5aa6466a830d621a83a8 SHA512 e6239680cdcefa500b368975e57c169f737d682afb3b45f6a2ecab0922a5b9165efa92807a5f60205c966cc442dbe75747fefd616dae94c491483eacf7fc8f0e
-DIST firefox-128.0.2-af.xpi 417512 BLAKE2B 86e5910783c1a5be881a4785762e83f2d3299268cfbb44caba2e44d2e1bf44f305e488419370537f37da5746d57c0dad0e0aa22486fa1a6455a9c4487bfb8bdc SHA512 abc1c92a9f25f269b2fc029d27e735334d3eb2de055537b853a2a2e0e1c733f631c7e35b65ce1d17f50d05d8568c2f3f01d072b899786d0a578fa9bf4e42c9aa
-DIST firefox-128.0.2-an.xpi 505879 BLAKE2B 794d016a1f760d2fb7c0542a0fb775f605fd80748a82b314d855bf34a550a540d54110a0c2b5295888bc6894cf55b6734da4de9452b39ab9489d1a1023ca0fe0 SHA512 4e2e94383ec50cf6c906ea16de82023a141b1f31cfcb64dc34dfb2e9a590e3f1ce7c58f6cf1e6c6d0492ef128408814a63cd4bd7749729532258f81e0e761a62
-DIST firefox-128.0.2-ar.xpi 610860 BLAKE2B 1aa51224626452fc624529f6a8963019a23876a787ecbe384a6a2fd5f555a591892ce8ddbff77b6e89105c069ace0f6f0cb59b80f6fb80a21d64503e51db2c6c SHA512 d9712a55156dd8a339c80c12caaee4a54afc2781b4c1116d535043207907f6df1f6d6f2c108c1a59ca4d83a22fcaf1f3de6a9d964a5c3fb0877ddc7d17e19fb8
-DIST firefox-128.0.2-ast.xpi 496338 BLAKE2B 96d191d093e1761ac4b50c2b9ae8866e0675e38955743b2dd01a28a6c4efae3c739e3248f04c1c98bbeba2bca130424f9aa57ebd78047711a0b185db290794c4 SHA512 3076fd83fc53ae25bc9d8bf17850dc49fe2ada16714ed7994508bb0f47f228cfe2da2a7ae630739ad732494fd8f1b1104c511d90bd5c6437cf110d3f0761f4bc
-DIST firefox-128.0.2-az.xpi 490774 BLAKE2B 1651806965c2cd9d89fc0fc244340af518e4c13522fa68eb6e9cc3451d4d5af6f09e3f671f4ca77d13f39991aa8ab2a1143de5a5875d1b274868f645aa8af505 SHA512 dee60a155fee8705b59e44929000d77dbbe982fd3c0a32b8ebc96291aa5e0ec8f493afa9e271b05e5e0671bd242b1015ba56ec4ceb1fa28244fabe0c764e4ba7
-DIST firefox-128.0.2-be.xpi 714341 BLAKE2B a9d26c39a7d057f2acada2505749ae10087aa7ccfbb436e8cccdb1b9ac5e04e9bf12e41a63ae26e97ea52db93ea236e924e2608be5bd14e5949095c261272eb7 SHA512 3df0bc179624ec750d6f369b18c3a6c84790097c51b4088b33b61d4f1c38a2a38c50310bcf996c6b46aa7d3c152fc2b389af3516cb801690eb44ebba43609233
-DIST firefox-128.0.2-bg.xpi 606568 BLAKE2B ecc4edeb81ba05e8cc60198731eeeafe2c3d5a23a77a58952c9f6f362f719407b4b417baa56100b4b857bb8f70972d5d85b94f38308c60fd8f2d3cb6993ae93d SHA512 7093adee722cf1bae7e3ab465165baa31b68f8bcac4413d09e4dc4784cefb7c6082c02b27fd6c27840aad6b84b39c3e1bb670061ed981406cfe810359ed34815
-DIST firefox-128.0.2-bn.xpi 581528 BLAKE2B e5e878f4fac2f5c27f401b4af75b294881d852ff1663dca8884ef1a102a2430cfacfa694d9da80c56f0689d95be6247e073f0754bd47022c29b9b787aaf4f2cf SHA512 d69376d91bb7a32d41c5ba8450a98763791028a9e4764e6433275420b5cda026f91f9b2db586d58e4aae1cda3ff42edfe4ab09530f0afffdce6221c8a8ad3329
-DIST firefox-128.0.2-br.xpi 588926 BLAKE2B 281eb80a3ef1bd30699bdf6f8f747bd237de7969df1633b127fdafab1bb6f1586199d4eec23331dee0a516e10da8d62d1b4f7c9040f7f49541f4ac318eab35df SHA512 6221cc674911fcff2f2f670ff1e944ffcf4377e0c18f10d2800c003a4ba74d873301a93342a328bd779f16b34f7b0dfc8828b02e73ce3557d605bdb45f0d4029
-DIST firefox-128.0.2-bs.xpi 501979 BLAKE2B 031d137aa7ad709dd84ebbe6b11f51a6570d167cfd19f0103628e08eee8e8617347cad4e778d449a84d582ebb451739d707fd8022a89c03b9b76efb43557bdb2 SHA512 058a493fa84044476b8e346c3143a5ed4f13446976fd88d62d2c6e94bc5669ade231bfe6f4a373dafc5a2f18f3ac80ed3619ab6eaea98cd77c27da6de1644021
-DIST firefox-128.0.2-ca-valencia.xpi 546186 BLAKE2B dcabdef261b83ab2bc5c2c2f829df9ac5c43673f0969bd260dfb540978d4c78947ce0331f2a2a32d711a5d0f8999f8d2289cb0cf4babeba91cc04725f6743a4d SHA512 c8f2191c7ea70c981b366b695759a49e4681cb66fa634ab9b056d19d00dfb2e79e333c0f56ed999d86a37143d0c6ea6e937d3a1d82785e02c2dc70b523b09f06
-DIST firefox-128.0.2-ca.xpi 597102 BLAKE2B faa79a0ed1d8b32d287b226d559074f1180b051dcb6aa854c3a0e12ecafe4caa1f156997046175b998108480d11bca423be102cd948d0771e2ee1bddc944c480 SHA512 4a99cd5eff3d7efb13030864b094dcb3a120e14e446bc76e83b2b5bbb8ae1f2868441ac739080819bfbb99342992eada898f0023c653d6cb67e8ecda052e287c
-DIST firefox-128.0.2-cak.xpi 593078 BLAKE2B 3cef18facd21d8865faaf8ccd039ca88577edea830c6784ba9822100b01909d2bd289ef8c14105ef9ad519bb3d3e60e491b23b288e3fee7b19ab4a62d1896727 SHA512 d4b0f931d0a58368438ac78dba2fae9e5ae443e578a37f79fdab21c3fd1b175ec8c88d840a9a097c9a170337bdde12ce8ff363950d71e199932858bd06cc2a46
-DIST firefox-128.0.2-cs.xpi 658957 BLAKE2B 0f2195c414969b92e116176fa14f4feb158f25a3234dd4ba620eace7446a93c7864a9e27782937a1069a85107a20ac05493fe3a5edf0aaf8a2240f812fae2042 SHA512 ba906039fdb83e8391a4a63be3954683a987f141b69847b0971fae78ddcb9efb198652bd42453aedaf9e1bce3fc9fa7ec32f139423e787ac424acc49f50e7652
-DIST firefox-128.0.2-cy.xpi 622915 BLAKE2B 31a3bc4c23f33da2b87ef84601b47eb2eab87a5e15bd380c78cf0c5320c396bd11922b4e2d2de3bfe0c19d690a3dfc48c0c03ab21b37c6c9d8bf6f25bb20421d SHA512 0df64819a61cb7250a67ae15736bb6907f26f2504149574fc3ac7f1232b93d215e1c05c5c606aee74ac1213e4b3c909ed9f1622f20be462237830045ff63779e
-DIST firefox-128.0.2-da.xpi 610833 BLAKE2B 092a8943c03368976271a70b60782442b4ec9b049e7219b79eb4ffb954dad690dce8a58dda1b8702d30f869487c768413db13287d74ecaed8520eeb53f7ac95f SHA512 d7f311a061cd54a21c7f1cba60603495c3f1d636b25fb3e1097a2976eaa4b9ef7e27793ab668258d6027cb91cb14f2d1fda633791ff22a52ea7146cfe958361a
-DIST firefox-128.0.2-de.xpi 632471 BLAKE2B 76578b6e492cb501fb93f23a858c6629596039a44becd341f1c098e1f7fb3b5575f0c6b7015b560aff08950a14528d892c6a2dedcfd33f0eb0b538c810ed0c12 SHA512 db9fa94fb7ac21b37a3d48cfef08d644b2083c6c12aef9ab3cd239e44597776e54e2163285f72efc4839e2d5d16ebff5579286f7d1ece0efac7275fef59f3671
-DIST firefox-128.0.2-dsb.xpi 650810 BLAKE2B 5b713009453c2f7ebee4b836bfbb1f028fc6a5116b55303588b4a78d41377cf48f3c62839d8e762f3e79ec29656beeaade3b8779361ddbb0813b47b9299223e5 SHA512 f91de0fe451d335eddc58e2197165f2a9f31db00a2f62d6475d6bff1bf20442a60dda90b3a063d14a9bb470fdf694300bfc0706fc485d24aed4b31a78a93c046
-DIST firefox-128.0.2-el.xpi 733063 BLAKE2B 3cb27dc577c549fe903020d17791e7c3da57a8276869668633fe510c69983ffa9faa02ce15350c1997fbfa406500794df49120bfe77d1264c6040b4f790a4ec4 SHA512 2f8469e0b34f9dfe13e19721cf93f96ee6450c7795be7c16f9960d400a3d2eefc7e9a92ad5874e28c71dd3df20f69236a24c6f542f8bf9cc913d6c8aabfdcf32
-DIST firefox-128.0.2-en-CA.xpi 584668 BLAKE2B 0c12595a419071a76a061a9dec0561788dd02b5488ac3064cceff3d1bc6e51f4c2f5b1c7f7a9e1a1b1fa17011134462d253f21a71e3c1eadd189a938309d4abf SHA512 46d428f0a4eddbd4d1b9b056231bf3956d22c870a9d74e11de27be267781751eb68b7d3ae7fc4660bbc30c6c827d25895d9a2e71f93538ae9586359e5bc1e1e0
-DIST firefox-128.0.2-en-GB.xpi 585264 BLAKE2B e1aa9479f2c43be57e833a33813916fa62b3f6a5f634121108458e8dd3d125b4935ee363c457053aa1d7c75112846994f87cc45147ef9fecd6a281264ecb19ad SHA512 51475fba419dd4b0fe54a6a7594a80fc4ad432b90280e7c903851912ff7237943aecb849d07f38979b8e8b1218bbee545cdfdd861c36efc51ca2b07c298d2a9e
-DIST firefox-128.0.2-eo.xpi 613687 BLAKE2B 5769137f3ed2b0249ad7d89a8d7a7fc15cc91eb010bb1626246b41ec61c0f5f0368fd85867c82584c299665c33504689c221c4383220496243242ae9fdb9b657 SHA512 e7307f26b1f829ad4e433808c5dc846498d0e0b14ec12d756d13e55b8e782942d21ac068a44633017094f0ea97e85dcaf6457b3e57e1b9d84d72a366c21cbdb4
-DIST firefox-128.0.2-es-AR.xpi 628031 BLAKE2B 578b50a0bbe88fa3db4893cfb8e02fdb6e48a575f8154a0a613194dd36732d1287706a87a62ec54bd4ad4d54663f1fcee4d6063c405cc07b88b1af4b9d880539 SHA512 cd04c1a68153f42351cf0cf9d3c841ad3ff3831534f2eca72bcc94fa9096a4ea101ce68e11b3a221868e7e2c3e3082757bb8ebe273f82b13f8665c6c1bba605d
-DIST firefox-128.0.2-es-CL.xpi 627313 BLAKE2B 52fabd385ccc7048e3177bbd991ba01a710b1a87c273378d1b37ee7127aed180af2884d5b89f7a0e2f7a009fffc243c4b5a7d52f2172a59327f31090632cba68 SHA512 10af849dbcb5e9f3fe437a8abc0b81d8b6c647b4ffd7430af7a67d18b080d2e60f511243b911f7ba9cc5c91b7da379eae17dcefd1e0ff821ef1e59eab8c53893
-DIST firefox-128.0.2-es-ES.xpi 621082 BLAKE2B 8e4af7a383f25b6853ad8b50a863424e60f6b69d2640c84e397fbb9b80221bb013c86152ac2d8a27db6820c0c4db1b5e5165ae92dc99de299bfc504b5da6eada SHA512 c8eb33f04fdf8dbe9bba9311bee4996507303d15d0d5a4f28e8b1b3165b2c636a028f90a8c0c06c23457a4418f858ceda489c5ddd2e1beaa9b4c2962c5a4dac4
-DIST firefox-128.0.2-es-MX.xpi 604994 BLAKE2B cb04628e65ba68d2392fcdd6e903842e9e736d9f6aef805ff9c178b99b0f603c693c6f909b9e62a11fbabb38c9f9d4897ccf6de4b251dae7e21f74ef947e2161 SHA512 cb479b7ebb71421e5187d149d2aa64d736aeae379966e5c64c3aa83832e61a802075a4dbe5a8f461c5a37ca02fbcb4f0e796db3613d7421f5f51ac82d402e74f
-DIST firefox-128.0.2-et.xpi 539538 BLAKE2B 915009a33dcbd39b5ad32ae04cbc7148d940e08047a3c80ef096ce91204926152874754e0f7109de6a633b69a10149fc2fa87441985bc8d3322f325c40b320f5 SHA512 8f9b31b95ca046fbf8dd9c4585ead7425429c79372aad0764d54cdcc46a1ad6f80748a1a49566974c18dab7d034a8b59d426c652617eb48464b7ad4b3afc1396
-DIST firefox-128.0.2-eu.xpi 599320 BLAKE2B 58fbcc61dc81d02a9ada1100b719aea4bdbe4d6094b4f0d662b0226364176cef04dcdcbf9a8f851e4e11f4e01e08ccc80e49912c670289e3fea981ff65d798ea SHA512 43bf2f2b5510d272ac010b19748c9c3586f31e907f732f71ebd649ba4668ff8f164d1670110d78029d81d7b5ed5b196c6eec2a6832a3c07d08ad7dc888a1ad3a
-DIST firefox-128.0.2-fa.xpi 590023 BLAKE2B 39eb855271b27d91f346708e867f8cc36ce9a9e9d48cfe7919071cb82519a8ad3021e6d0d87a844af3677c8e10aeeae47e5684a4b61353f21b859d783a49bbd6 SHA512 5363d6eac7550d5b076dbab33655ede870571416fdc7397a4f7c9fe5ddc8f066e016cc25b826c3de1afc591c9333ed9b33d569dcb7557247548e88483e776da1
-DIST firefox-128.0.2-ff.xpi 476062 BLAKE2B 2e4bda58102236daa206375ca4fe26982713558c970fb5ecdcec7c8526c2e3c8c0d1aba4230739cbc69c340858c85c2dcdae767e08c597b9f3332acca26caefa SHA512 415bee47b097aceb7732b9c45e4e3987936759a921a9e44028ab2a488cb30b933485c1c063a975f33f84dd1eeab3ebd68a2f4a00280e8bc6243e881d06a15591
-DIST firefox-128.0.2-fi.xpi 606451 BLAKE2B ddc25078fe0c0b7556a34a0a03b4fa8798c0cb547fdb6334f8908a3b4b7f4e3a3d9e1e51613e6b8f26f3de2d66fa3a64d42325209da1164caae98538c824b107 SHA512 f895d8d2cf706405a74b51bcc7a786bd480a5ef9f940485df8c957fb5bb3ee3dc96ccf761e9f3781366fcefed13b987c21fc87d55a823e2a890df7b6961c5a45
-DIST firefox-128.0.2-fr.xpi 640304 BLAKE2B 3c72b070b3f2f1fd7d747ada67a10183ea0105f3beb6e4b736d28e40f5004920019821242c7d0e9ead47dc9aa7c43f2bb5165c35f2fa52d6a100cf8763f2da03 SHA512 8b12f989dd39d9d428b2c44d29bb3637421a0a6a5ab9a94f160f463a037e6213809eb3cdcdef77f2da027c7a1c9bb9e0050586f9762d354a6b6050d62c0e699b
-DIST firefox-128.0.2-fur.xpi 633987 BLAKE2B fe1027adb8fcd2ed34b3b9a6a9815d56d30e98b81e3695609270b5feb92f78c645d94938f2e883cfb8d81186b7b58c2e96c8d6ab373819494639384860c47ea2 SHA512 d9447a367427ea4c12a4feeed9864d1f524a34d4249117bcef03335cdd8786e6135da3da10fb2f356d08a9af7aa3ea083dd1dec078ebe909cd17c12e56ac38b5
-DIST firefox-128.0.2-fy-NL.xpi 623726 BLAKE2B fa563ffa8f7020a9a110e3c42d0d61a2909d203dac7db8cbb77d023afebd0cfce60852c7944430b1c211b2154b584906c1c1ada40008770e239544cee6e70ee3 SHA512 6fac22c532af4c153afe976edf1c2a2875c41899392bef733dc4b4f5ee48cc2a801b07d09554d7e642a7bb6160505dd8ec10cf85b1a728d835fa0067184cb8ff
-DIST firefox-128.0.2-ga-IE.xpi 470997 BLAKE2B 48913d4249ee7ab061c43f512ee57d52c683e003e5843afc4a583d1dbb38928d61f38d9ccc35a7b281f643d3e1596b485cbc6a2f85b9c2853814d3ef0adc7f82 SHA512 f3b306eec6e638903a874cb449f86cf948535d63817c1d9693241a690c9399d3c750594e840f241c12ce735e5262f2d06ce9230b51f1bb7b43db8515f91559e8
-DIST firefox-128.0.2-gd.xpi 596593 BLAKE2B 6892fcc3c40bf1d3865c535fc0c4ccd0d0315a3b02711f1f28c165475d6c2fa2922449114a87c5dbd723b6f79a6a9c234aead68353d9c53d6bc742919435579a SHA512 8a5cf3a81ef42efad6a5dc56abdf67e77ff0e53f07c869350553bc4295aa1b77610d8cbfd2af99066d6f6e69f69569c02bbf8128fafdb580bde1f6d37817f309
-DIST firefox-128.0.2-gl.xpi 604090 BLAKE2B 62edf7a596e47db12a0c322106b1be816e77928502f570700fe466a135eb61c677775f8fef2d425950c27a9e9f1d217eddf5778ab91e6b7e55cca5d097343615 SHA512 c6958755786fbff65cd9cb0a8351557eaddf1c564a10b60df2c59ad114d718af53a365d02fd854ce1aaa22198c2c074ff254c4c86f3cde0270643fefd9d928d4
-DIST firefox-128.0.2-gn.xpi 637435 BLAKE2B c5339a5ed137ea472a72a19d91f16b708eadd4c88dedd1d5a12a698e4f88483d00b22adbdc000d6b3cb5c1ade596493a196735f5957e69eac701c2ced9bcc2b5 SHA512 99e96cf9fa7fe369dc1351b15f655afae0787be18bdb8a1ed6290b19378fc85a468f2c7e5b06e13d64e04080673a68ba85dfe5c51ed5a58e5816153214048cf8
-DIST firefox-128.0.2-gu-IN.xpi 527341 BLAKE2B ed1d4cc92a6db5b24f532eabc9403960e05ace3ba9b86b3687bbc8b3d55a206b3c9005cf8fba944ab516271d06a0c70ddcd849a45143cf6e5fe0ec5f394d32ef SHA512 31f064825d57657838341a6ad05b1afb0c79a8a69aced89e66860001317d8316b036e3e2e12707982b0594fae2d35c98aa6efda5e772085d6ff4e1214b232b13
-DIST firefox-128.0.2-he.xpi 631600 BLAKE2B 310d67a40758499aea74e6e86e24907dc80193074479ddf072e11f0482f414b0d4d4d4cc3fd6ca6e4da3781bcf9cf9308daf98c22e17512232884458b3ee1ce8 SHA512 04e37e60a397747cd5d8c4e58b63ab23e67dee3d909c124f140ffc8ef162d19adc4f944413217060954e7628e7e45b101e885f6a94fb7cb1408772c009fbf229
-DIST firefox-128.0.2-hi-IN.xpi 566764 BLAKE2B 94ca449197ebba18451fa44f291eb913dbb3511d3a1bb3d1c3e29413de5df1b608eb815eea89c555b2d02f538e56d8be85d2a2d79852e68bb1943673b6ecf19f SHA512 b6ed62657093146de51cbb3d08e6aaa1d501b848db4e516af8a08c3cf8484b5c64fa98074d5d1492d5e832fc4f4448650b06d9aa28d93280a5b0fce20465a3cf
-DIST firefox-128.0.2-hr.xpi 559798 BLAKE2B 8c2bca1901ac5f56878c4b8f0d985ff7e3a72c7a6e4b29943aa0e5833042b25747493977878469c4011fac27ea2daf051a4f3568ae9d6f5f0829a357f23adaa2 SHA512 00e3f4816d7940e7b7e2621c86b43ce3c83eab28fe98b522a5b76a9f3a89a9d0f89752de0145c57cb2171736cc780bebfcf8dcda74ceb50689fce19d11b6d5bd
-DIST firefox-128.0.2-hsb.xpi 646891 BLAKE2B 6c1be89dff346abb0005121f6e4722aabb1a9db7f053fc0c2c63dcdf45fb6e21b298e14f096a4d825903cca059082b13c151465212fe4af11397bc95cb31486c SHA512 e87190f8ac18de6b01bbe2af127d3d5b9af0969b4845aa54a9c3ab426bd7478dd0dfb6229edcb2441a0e640616ac90bf4e9dc47aa8c39aa0ba52d0aaeb499c22
-DIST firefox-128.0.2-hu.xpi 649181 BLAKE2B cbc8247eb114bb91dd03b79ffb5d6c03b00561d639252b3a8545ad02b6bd2a88226fffeb6bfc0d7f3ea75ad9713a2719f8214fbe209204788b3970bbd0431cc3 SHA512 a16b712b6a37bea0fcddaa43c5ac93aa48cf1debd9a7405219b124d7ab8543e21c05553fe302fd406d6ffd1d1a81b60233d1bc6d0dcbfe51c20e401b6285ace7
-DIST firefox-128.0.2-hy-AM.xpi 651607 BLAKE2B 527974617c3783c1ab88e7aeb4af91cdb846bff11a2e50a5466c8a58bdbeb038fd546abbbdaa9abf2079f802e4930f9402f12dcf6fb827fa863cb4a8b7be6203 SHA512 2b24fb827bfedf76fbc4143b43bf96a858b50929d75ad68700269a8616748ed685be40aad55dcdf8186aff1c0a9de4af8052e05398525afc23210a1932f515e2
-DIST firefox-128.0.2-ia.xpi 611220 BLAKE2B 6b612a3be1206462a629c7ea61ec1d421acf15266891ef849a912f654fec4c9518c5301aae51a69487cdc7bbc0a4132f3f2448842995b8bfb514c2d441c9606d SHA512 fb40b4cddafb528995abd07bc103a60ab5aa0a59169c80b360cc6106c1a412b6b8d68071225b31ed90e2ec5e53b0be37968d5f296df5aa53de280fc115d2d5c5
-DIST firefox-128.0.2-id.xpi 580204 BLAKE2B 4801e5fe780e500c83f38bed8ccb593d40c9f4a864f92ea9cd7d90045b67d52cbb5cbce355fb25040ca12f3f81e11652d0046fc58d82d64af702db2d6c9e17fa SHA512 986a53e5c7c01a509281799519a4b48645f9099b5815ce8dcda4455d66c1a7cff32109f1b55d941721d9c5ec3341a5fe6980629990bf70bf2fdc32faffa5cb81
-DIST firefox-128.0.2-is.xpi 616484 BLAKE2B 2904bd93cf646757ae4abfffd07afab164b768f5bae69635178c662d9233e772bae14022156daba50520b7ba3a3705ffb0f59172c25d393b77057bcc57efc81e SHA512 a54ab40a71cdb45cc0998f6f9a3e04cec6873fe1c74c181fa3f8e6a231a4a38bc80e17e83ee58c82234471d870194d9684a7d9cf59ef087165936ee81c5d6305
-DIST firefox-128.0.2-it.xpi 567330 BLAKE2B 41f09c66d93f8783c58da2b283ddb405c9c1be28fa3cf5bfca3ae509ed1848e40a7133b2edb61e6c766c11a6d7a470f8d9867512ce6835c6ae708a2caae81cac SHA512 04e9c4e9e766f6ad3ce1054f1785f3192486decd3ef3a5301881cac5d6178c31b381f376e50acd6381b3bc4ef3250817e78635ab26cf93e279687ab2264929c0
-DIST firefox-128.0.2-ja.xpi 675622 BLAKE2B bdb276b89d8106ddb6585fadd712eb859d51f9088898dbb4c72188b2b8cdc00e10bedf2f1a79dc103296b1b7009807563e210ac5578b6f428f8eb015ffcd89ad SHA512 efc83ef95596f3f0345ba437b202060d787b5daffeee3534e9ad2275bdc81be500447ec1e19191e844634a4febd0245e3c41043e166dda3153179319c4483443
-DIST firefox-128.0.2-ka.xpi 660710 BLAKE2B 528d8d5824b670563756e3f38ad6db65799eef79acf3dae2c43ac983eaf802f9ffe8ebfa0c6d0e822250339133137c701e1429cd018498ce777565d8e1a21a2f SHA512 5bed5e1a1804263e16d69be1d826f842336e90831000e9d2a4cdc6c96712cd8b339d76f496db6964074f4c2a784c371693c195a13345f5aa88bc6105aecbdb03
-DIST firefox-128.0.2-kab.xpi 608729 BLAKE2B c1a529a32a7b9033b1294d4a6f24ca165573c7772b20387bc7f2aa6563f7909381d6165a780bd16498641a73636fef15aaa23231a5e0c13676900ae3236ccd1f SHA512 b4fc553d905cb56634bace27b49da90c6511370f12730f11e6ce3ff0978485b567d81099b9a7d1edb4b8bdd0a538633be06eefd48fda4a4f1aedae1e4f973090
-DIST firefox-128.0.2-kk.xpi 707815 BLAKE2B 75947d00bb89d7cc2ae58fd0b2012ee785857e50d77eb870833f0c156b5853a028d3fc54d679bb40892ba6d30e29b220fe70c45e74e9c5af6e50eddd6bea3ec9 SHA512 009bce52f8eb910576648fb97414ae6395c00fb21da824f3ae7ebfa263302d019cb53fb932f1b57c064ee5fa23014103dbdbc29abf504c89577c06f6cd90d0e7
-DIST firefox-128.0.2-km.xpi 525877 BLAKE2B 5da9cf8206fb1fcd59af1bb111aa057468af076362d0b6267f97ae8af2a10b7d6f8013fc4940be52671083bd54af891719982fe67c5b3d1d5c8256d2ba177de2 SHA512 6fe1fcc9acdf3db41be45fbae10eb92f2f794f58ec943d75cb60d097655576c440a21c9fa58371f0b14ba139ee868cd20742f3d4edc9aca39d31fb3aeb1d02c0
-DIST firefox-128.0.2-kn.xpi 491244 BLAKE2B 30676e53fd659fc3d30d9a17c2c23fe9bd95283869c017366fe58259c1d5cbbfd6fb9fa6bbd44bca16ec3e86ba3f86f9b1c5201762821f07e7c09ada123d1430 SHA512 52919a3884b09adde09440221f5e56de3dc1a83d9dc9143706c840bd0e029ed204a37d5d872e249699300c6e3b1eb08cecb8e6a7ad9763f7d75d0c86d59dbbe0
-DIST firefox-128.0.2-ko.xpi 661598 BLAKE2B de9cc7387300632c453a0ee1eebb73c179cb1158ab03935234e6b3052c8acd3c77115d46fcdefc8aee40602ae4a27ebf30993f3c4f3011c0e74f35b9982b8d36 SHA512 b02da8a1cd4cb1a6602212601adb5ce7d360e48ae7a1824baf6e9e8086cbb60b708cd478b68fdd2239f16985596b61e2ec2685f1a9e3c426b0164483d827335e
-DIST firefox-128.0.2-lij.xpi 484085 BLAKE2B 6f4bfb7c98cbfd65121744838c1324e5a54fcf9a57202a2016797da8f505e4bbbf13402e7eb70ecd86ad08fe5d8b8bb08f4762d770f94905cbe88cc8e583d23b SHA512 7cf51354a54c4b751c2330032d4cd41305930beb207b85fa67978f3ed766ecdbb5867586902a3476f455e28f32fa5a2b90874c2eedf4a83126b97c175b81e85b
-DIST firefox-128.0.2-lt.xpi 572686 BLAKE2B e88d17b536dba7880d69768d5125a02b233d0b3e3d753bc928dce16f231635fe54e614b2ef00563789229aaeeeed9594b5aa39e6eac5f7d4a63208812350038b SHA512 8a8145a208de907ecb1b627f10c926394deabc7151cd468879ec46676c894d3df569da261a44d8d96b8309b9c245cc334f919d3d6ef7b47a7faea4ab5ea61f9f
-DIST firefox-128.0.2-lv.xpi 574392 BLAKE2B facabca3ca3bedfb210ab1392077166be0d780877c8bb8be7a32480a332a16a8ae22d8dd4111e48d240852c517fd00f08825df248eb262190927f9e4d3999a16 SHA512 f81021dcfd67ddfe37dce0a582f73d9295a7cb490221ba26d35ea399baf8c6d480e7a2bfb18795e8d039f859c9741ad6f5e5e3ba72ae56b3bb4cb2131ff7e961
-DIST firefox-128.0.2-mk.xpi 493863 BLAKE2B 8ea33f0580fb0c851c5de575f361f81f72591e77797b93595d1ba89f7e58e783b52206629e7230b5b646e972149bc3c0e140b6d405993f53681e5dfd61ba4dbe SHA512 41c7276fc5d2ae80a524c5f978508861ce4f3b0737f2e499cdab84872c52227e4d441a01c02bd9ed9b39df0de4cb3f6e06eb6d979af32b1d401ee93094d36725
-DIST firefox-128.0.2-mr.xpi 532101 BLAKE2B acde52413e8f1875cdff74e856523f111b694a732e3afa67786089760e844c073605ff8270d8c5f2cf59a7041b89a08667adde34f9f40ba664fa8db1e8bdd2bc SHA512 308d29dff1693234ad8ece14b18c55480c9d44184598a42922c45021fc6e867302cf173fa70282ff96863480a0de7142e68b314068687696cb1ec1ff11983827
-DIST firefox-128.0.2-ms.xpi 449721 BLAKE2B e25ac432ac436feb099c2adc798f36a7185b2fce85193009ec9294caff7b1994e837376a17244a17b4c6f4851c74c69d5afa4c6eb22596003604d961cde68195 SHA512 f6b0e50cb9502740e7f4c9b48493d2779fe3763aa6cc6db17b261a00d02e6c77e65e25f721e93c4f7b6817336a6c722b051ced4fb6bc43eae3ac39ab55859f92
-DIST firefox-128.0.2-my.xpi 518623 BLAKE2B 80ca715805ea34175b3bac818204f1cf498b18440b1c130e3465378b4c8ac269df338e3c5afa122e02213234c9c89aa26934cd23f285e916c7d5f486c394c878 SHA512 cdb1bda28d668fbf71e0eba0cdf790d24a992be6980299e178f13fabd9ebb0a5790a3c671e6110334710b822d6443586b9d18bdfaad14533f9d8349719640d4b
-DIST firefox-128.0.2-nb-NO.xpi 607047 BLAKE2B a509ecbd615177fc0addf99fcc996457b7bab0ed5dc4fb040e5c3ebab2a13fddcd5d11c21ec1695d61a5dada791d4fc124b6fd7f4e4d65b92024c1290090e7d6 SHA512 6980f7cee58c2540cc2e8e05d466faead54d6fa3e14f1f5ce9006210382ef3c372d511d2085df95d099040491407db1490470f008900fdf26c73df6601ea3281
-DIST firefox-128.0.2-ne-NP.xpi 510956 BLAKE2B 90da5cafa23390abce26cc0595ea71894380795b63109813f9bec15d3e16bd7f84d4153619f119dd2496a6eae0d8dbef932a2290cbf448b29e94e6c92f415d2b SHA512 6e9aafd2ce686c190a49defda15980453f3cb3489e67de51ce82254e8dca1506cb2d2e818af4ee4abfd099078c1cc7321bb4a6674568c6724bd8fa219b699ee8
-DIST firefox-128.0.2-nl.xpi 617403 BLAKE2B edc95a7efd427c0811e05f373bfc66697851c096989344e6421ffeaf95d3911707001bc9ffa90b5a74b61dc6cf7951ee90474a3d1229f000d2fde016b7bdeb74 SHA512 09db011d2c7490c5f9bc48aad95459b3e1811c30cb284e0ead51892aa80bb6d7108f7cd306746fdc6a5cc171573ac2f3e1802fe33c3c8eff892f56a13b5ecf88
-DIST firefox-128.0.2-nn-NO.xpi 610259 BLAKE2B 919df0cdc8c19db56b6e835de30a450419fcc7f3bd987020e01cd1c9cdf5c4efb4f963ab85544c23bd284d573106b8ff239c7dfadfaffed018662a4ffa6f85bd SHA512 ba09369673f7e530ae086d7243d6601924267bbf701b804ee5760d9aac2c6fbdc5a74236c920ca732700f54eac774d29b4766e47b62dedef4b17ee984677fca0
-DIST firefox-128.0.2-oc.xpi 612805 BLAKE2B c62f420a96f9d1f53e2bb18db5fb9f63cc5e21d33d3378ae8e557a8f650cb828e1b98bc1c462e9406b3a172ba187c50253427ce4b46ad3579c879c3d0430bd53 SHA512 dc11245f4eaa78987b7c6a90365c99d30891c693d93bb5e34e9f691c9c7be4858068fd164a75b0b02f8697f9675043a0a308e35816eede942dcb89b85c3a78bf
-DIST firefox-128.0.2-pa-IN.xpi 692030 BLAKE2B 4449afe59aa25e6e77cddda6e2179d9470407790d015b89a7f5322e5482c45edbc81fa92210bee1857fa3f9344fe34c2dd966b0db925f058b69cb1f014a2b100 SHA512 bdfb7b1d1bac8fa15ad730f05b1234432894f7e2ac65d820025672148d297bb9a70111e55012eae2cd7a7c8bb5015957ed3139f647336e31c9da7ed6fc8aaefe
-DIST firefox-128.0.2-pl.xpi 635783 BLAKE2B 7178736bf3f275b96f58a2d6e4d186014d8f6c118933976f0affa77ab8741d475ee5d8e1e2be50b42cdf856a650de5d7dc407b56fbc3cf6d5fcd1da9326ba110 SHA512 14ceb2130817b7121ddff74130fc5562eb3db2c682ef9e0ce6a93448056e3ecb51b8b4732d0ac521caef1abfd075f2ec3c921edb3413acb4e4bee6301c6ab998
-DIST firefox-128.0.2-pt-BR.xpi 622153 BLAKE2B f905d1b1b85a0b09243c55e07a8499496924a096a60e364fc2116de3589bafc74c9fe7b5571a2b33a37763baeaf56d4288d6b56bcd18abe6d2eafd50cb91b1e8 SHA512 f1ac4068bbbc1b69b3c1dcf48c2ac5aab57fd8a5b9aa4dc69764048bbf717a3cb4be80f6c63934888b31bbff258b0df3db442d43059c49adf9f2adb3f6674fed
-DIST firefox-128.0.2-pt-PT.xpi 626178 BLAKE2B 99bd66e7df5f04b45aeda24a73d6297045d1b74ed42f64b97c9a0530eada7ba81d6982d759d73ec081604dc21bdfec3d8c9324db03fa1462d878cb4840ecaee8 SHA512 4ce01b1f7e5997f7aac26c85d19dbf42b9613f48c16f220ce4e9743efcc307d40160b747b3d950bcda2dd9dbc8711dc8008410f7fa6473057b60b7ddc2193b2a
-DIST firefox-128.0.2-rm.xpi 616896 BLAKE2B 21fec28f71d46da4e8d8b0cea4f71f36eb8834a861476c0412e055ac45d9a198f594cbb13558fec16befdb9e39f749bf03b4363e246d63cc5d6b65b44d80003a SHA512 ddce6a55c62ca5db2a211d901ef89263b59ca2f0cc6f47bab8c75d3d54f0c56b51a4af9d28c5118d61e491073ed270061b244e2f8425e81382b6e985dd650044
-DIST firefox-128.0.2-ro.xpi 549787 BLAKE2B c59eb19419576eb3e00d066ab3e16bee3032dfdbc545bdf0c2bced4abae44e7e23b91e27dd4d1a1035fd6b2cd7bda574025eb37c6d28610c00b5b6253f1c0d56 SHA512 ee4b005ce9350272a97fdefaa5f4494f71789bf9bf0f10b65fe372b8e4b15b0e3ef67c50d1fb3dc9a81eba5736b81b0da11ae4ecd23bf00ced2cfff97815ad94
-DIST firefox-128.0.2-ru.xpi 720396 BLAKE2B 5def2e4198e47073f561e98b1c9fa1506c3a218317224e3f49808db385a0d46f6f55865c34eea746b3ff57e20e2af7be2756db5bc5a5ccec6be489a86db23361 SHA512 e9af6f6c6e11bf5a99d700ef79fc7ce1654598d1976a60c313a8b4daf34ca56cd76cd8c0a0d9cfaa9673257e308b8b968775b893150608d32534c6e65020292f
-DIST firefox-128.0.2-sc.xpi 588571 BLAKE2B 216a90e4e65c362587a89f286c46f98298c965f3fbfe8b7354ee637bdf8e5dbd7871d4a0ab17c7a233b3d66932fb0e5a290ca87a5377b3ba5e57f998cb089fc0 SHA512 f991cfc17ef48bf3bb0ca1ff84e045143f71761e112943372b2eb3b60fbd601816b3dd17268abe6bbefbe096815ef5ff40f81426ede2b8b801d1235ba4c7e238
-DIST firefox-128.0.2-sco.xpi 511273 BLAKE2B 6cdf627d130b50fe34e694ffed87079e9cb3fb2e8980e3fd20804a3e3df51d5e016702ed784915ce766c188011de0aeb9d52bbecdb96b2e1c304c44d97e4d13f SHA512 b19ccd202e62ffc767d535e39c0907dbffbb363a5dc15fa7cc5eaf5490e792c62d61aad963d4e85d30a989bd40a5157ebe8325999647619afceb0b8cb5217466
-DIST firefox-128.0.2-si.xpi 611290 BLAKE2B 3ce2931e584a360d57d54e0251f901180eb239714e4f7a0ce49009d9891a4a09db7a908fa938cfa96fc2d463b22baf15a14b86c456e4b05211e8799f6fa33680 SHA512 006c4f44f49c251bbdfdaff2cb7efa4c71778ecf5c2fb445f656778ddb6526a7379a0c49ccbc85beb5359389b6ac4c1d01e8cb30048397b8d3403202bab6bf92
-DIST firefox-128.0.2-sk.xpi 652449 BLAKE2B c36037d61f039d9068ff0c66aaed9b69a26a94ff698219ae3c8ec2d8dfcb8dfd4e3da3b85fb956d65ba01d238fa48cb4b0077f68112db176926a0716cb2b8131 SHA512 4af47add2c882c533005364055b2159304c40d9ad326edef1fa2a8074b8a812ef006bdafe889c8873e7963189a8be6b4bdef7651e528b7aaec9ce4541ccdb874
-DIST firefox-128.0.2-skr.xpi 707651 BLAKE2B 433de08a8966c4a27f9f3163e581afe2407b338f783aadf94dcac5502822c4709b7d3c988e7939e06599b0713a59339aab30b4edd08bf2e07dbea876a5c305f0 SHA512 d0e2369b6ead5d3efd93f38acc789de14b3a1bcb5fd5268cdba2ad185373c642cd066570f8e7e863606f6f6405456251ab87fb26c8433e1ad81bba792eb88098
-DIST firefox-128.0.2-sl.xpi 617397 BLAKE2B ec9870f2cd480592730799c36ce71803b79c6b9c5064ac30c6c5f4867cd537473504397934c400ab1d3bc3cc5d0d714f1e22f20bb4b0a37d3d5f36a76ebfabbd SHA512 5f5a4cf5f45d34dd955c472f88857cc5d9d74d465a3e9ece0bc5348dc47986b3553ae5438cc264c9eecc802eaf7076de9d058d2c10a9524494179571d8d059cf
-DIST firefox-128.0.2-son.xpi 416398 BLAKE2B de93bfd8247de56a8cfea897a4f16a48a6e3604cfef8f444371321146c5aa55157446da283bbb0e469611ec5f690f4db3dc1af018fa8d139fcf92ace68901f07 SHA512 d63a93a09152d322d0c3a13b350441f1c4a79e876957cb2f39a92137987d97f8bc8a62e5722d63d8ef69816338cf7114dbae195a3015aa0c3944e40741fa9656
-DIST firefox-128.0.2-sq.xpi 636983 BLAKE2B ac76e97d34464fc918eb7dd1bd3fbc402e436c2b2babd598ea34363ca2dbcb2da734f98dd221d1afcdbb6ed1218a61ec4277ecc27ca16fec19f936ad8d4c6245 SHA512 2c3a3f80449b78626f3792dcbf72d0988a9a1d652397eb26ee38e1d584e3ae9f5f5ebb73736ec09fe0e71a6d0f9b7085441dda65169afdf7cc7daf26d9559a16
-DIST firefox-128.0.2-sr.xpi 639348 BLAKE2B 511045cd5f1fab2a2ad7f177ed6d34749964565ef2fe517e339dff4ab9bff6f6e4b73ba085d50fd059db88329e41fca046674a54d33bda8dc62c62c587ce6f60 SHA512 87fe4b1d9a2dc75d7da73f0901bceda75d7a457187d21b342f1c15323b81606a867cc3fd9828dba906a726d37a08b16e7389f5b398644e650f02790d92258976
-DIST firefox-128.0.2-sv-SE.xpi 619130 BLAKE2B 8450d97879b8a7bb8458e5db08d74e40d2569d36946030a8f7cd41a606c1ab28c569187f737c0b89b8b7f30d6b510e2534c1bee6c8e6210a8b2016f4e6df45df SHA512 e55c08fe1954046be54429ac636d8b2ad1a4885954c4764bcec90dc248588252d9990d60a5a044fdae2fe832e6ea3d3d0ac37c607a12a3b256527bae50c31fbb
-DIST firefox-128.0.2-szl.xpi 526396 BLAKE2B 1f0f53683cf94b4eab312dbea3d51e6e8a7d6c970a63bf265c1ba6a86dd82c1b90bacb8400cfc358971e03988c5a09ad4cce76fa8bf1a454a858c40fad3349d1 SHA512 0e61ab5cf6183983978d88a6c389a729f970310f56d2f80b3418b27e03ee1d20c290f341e5cf7ed793fc7fc446f4965c7582e1abb9cb13ffeef8be649585aa55
-DIST firefox-128.0.2-ta.xpi 507516 BLAKE2B 161dcdfb71ba6d202d6eb0b14d991e2482b5fedf8f8e898263b7fb6679d8475c48edeecc67c64bce99ed7f12dca7be1371370e8ad1b484b73196fab837aac924 SHA512 621da90efdb7b103c7b1d65d6ba13256bda9ab044048ad1797d7ea4475d92a6ff94e6dc968ebb2761fc4e4e885b061e5668232c9802986cfad91690090e1e304
-DIST firefox-128.0.2-te.xpi 561040 BLAKE2B e9ad2460cea201e221a2cf7c9f8dd1654e15a68b70469d81ccca2a3b72515fcea1a4ac1c123548930e4920cda03c487720d41a631fa9e7d0e947404afb4c8b9d SHA512 995a070c67288901fbed7127bcdd29c638a6ddbb4759714f12db02de1faa6b257313a43e42543cde0327ba66bc159f4e0f593193a64f0b2476729f3f3236ab9b
-DIST firefox-128.0.2-th.xpi 693560 BLAKE2B 528f49ae7010cfdbed672d462e0a3056e20318d25f38b8488ee716ec4c7fc066620073bf83387d975f2a0a366db3d8356946a9041bebae2aea657acd3062fe4f SHA512 0492d89a4c8cf1739fbf80570ba287698def8f1f68afb561e3e3814114b4334ed6c8ecda10af83c2441f803e611ed3c16482af7d491c5f603f892b71a3ed31b2
-DIST firefox-128.0.2-tl.xpi 534188 BLAKE2B a7cab322aa06cf979e70eee61bae68da0fb41f124cb04e8560755f702a7d07b306b0109e0951d4ab981d25dec1f76e80d0082dcc964656a9c1487bf3552d4500 SHA512 29c8e90b7a78ef22be118d873d8039c4ecfc78d74c55256c68f133a6b3359b9cc644308fb59cbe4dbe1807f4672ece3840985cb789a2e81624c39d6e1585f3b0
-DIST firefox-128.0.2-tr.xpi 632457 BLAKE2B c8ab73ec107bf6d27be7cb2dd1f09470858af0e7e3f26b6fd27509cfffa41d00e778fd49647fa21a722777a5b1d336752f3c3f85533a28f8975c4e67c915b988 SHA512 d780c0cafe9c5363a8ba88ce17b8e27882dbdf06de88c27ccfe8e26730b7e3c97f33f2cd6932ac2b255436b6f11949863c59d1e8317bdeb62c4ce1d281cef0ec
-DIST firefox-128.0.2-trs.xpi 503976 BLAKE2B fd269cdb2c137a667e35f910c7e57a7e7de3f1825a04107acac02c7974c00afc28b86e633c9c32fd9a0fb5048cb1223c3ee7b4f242c92a373d0b56bb70db9e34 SHA512 81d812870b48a58dd459e736d565b9803ef938b3df3e6179c29cdef024e865867e0bcbfb5bb58b9454f54811bbe9249fad461a0e007e13981ce4f05ad80e9902
-DIST firefox-128.0.2-uk.xpi 707284 BLAKE2B 4c93763d72ede9e4e6b24876137c49b518d3f043c0342cebec3efb6891c465b6f1514402f8ff00c8eadff13abb923a359a126dcb896039f954c4e723ea3762ba SHA512 115063bccdc568ac491b01635eaa3de52cc5170c3ee3d5a5c3504372e8c12398540db8ed8ebe2a24fd2b8e988cd6a0ee0bda36e6f4d286bc7ec07935c7e6cf2e
-DIST firefox-128.0.2-ur.xpi 560466 BLAKE2B edf6836aa832240928124c800ede89ff3c175618e83ea15b43f592064c7bd2d9170b98d7e47d17c804829ba931bca66de80ef2d6693740fb2989877f9dbc39e7 SHA512 ae59bdc04ea1672e51549c1b9ea8e53bc7ce6bb27bd71c9957193501dfdf8e8afb7254cc6dea3187ef9a513e295a53e5cf6eeef240cb7e053209a052c23edf90
-DIST firefox-128.0.2-uz.xpi 478778 BLAKE2B e24b137af297d671fc29053684c9b8cc18371ecd46d9a1a729a457a0b257086f8924789cbcae23d1b84662ad06aed89b54a190ffc4c342ee19bc1875471c9f0a SHA512 4429bac7e6ede755afb70b2c5aa6a4ed756dd30ecfc44cb6460ab2525bbc136d65f6403b75faac04c8f13086fcf7009e370af224b12c673663e22b1bccbac12f
-DIST firefox-128.0.2-vi.xpi 655572 BLAKE2B 80c6e219491b7b18bc00b79514037fdaa3f65d2b3c04ee2da0fb4c3d809caeb1ecfd75070519d03afb6c2dbe1dc911e474908d527cf08a4ea1a05a9a9d31ce1f SHA512 b80c570c4c486f9862ac483c01d361242810c85494e5479a5a5efc67e517c187119df79945c48b13e2ab7f0f110a36afa77aadc8f40e579eb1b80a751f4e7f77
-DIST firefox-128.0.2-xh.xpi 417171 BLAKE2B d17ad8add3886462206a56df9d528b5c9f4c594010a6ec02fec3a9d402722dd194cc659c9fbd406a7721d36096d5dcceb81ec2e15654efbcdbd649967de35f78 SHA512 7d260721b77e5c8f10a4bff8a604632c616a0988ecd736e275ed602998b01dee8700fa89a5730c5e977aef9ce5178f31f9c19e863850ef10c92c1bd2ef8341f1
-DIST firefox-128.0.2-zh-CN.xpi 657106 BLAKE2B 80a6e21e5ce7ec1fafc164e86f5dbd26ff6a32859df7555a656e1fc5e0fde7bd9b1d72e8ecf1f21b45975c346ae1a6b60098c1476105e9ec2b18ace9c6fdf00e SHA512 330e81c388a15352286d4d16721bdeac018891364b76c4020f251b968d364834f09add1666794d02577cf0feb7454a3a1177b66c30cf9398ddd05d9e73bc0141
-DIST firefox-128.0.2-zh-TW.xpi 659230 BLAKE2B 1d11133f2e6900f6cfb00ba75bfa84c29382c700cdb8be49df1e9aa7a6ea11da3a52396ab2245cb49c705757afa791e691195785387621050132ab573a1dda4d SHA512 8955f84ada33a73b8303efdc4e0bc61dc07d8a2702bbd7bc514d1b516778bf1d1ca568676e06957c560cb78b27b3011cbe1c2e96b6a630e01f8eccc98cf0a3c8
-DIST firefox-128.0.2.source.tar.xz 562183904 BLAKE2B 38beef8eda209f87d2e7fc02dc11bf77794b3fdf94878dc25b1a95e88b8f7ddbdb3e9528cc6be74b74953e165b64664a90e10fe87559e3c2e67142f9e5a367a3 SHA512 e5c38fa3adf26f5f072b6dfe5955004e67f576dc67ef68348d58fa0ac13bd3c7764e9289dfcadb2bbe034188bf296267d74fde13fb9b53beb5421245fee69da1
DIST firefox-128.0.3-ach.xpi 464070 BLAKE2B bd1e92adb3cb6f1f4f61e9c1a168190c26972ef846fcf45cd14e7f29d6b5940611d6348fd6b3815f356f80bc9ccf5143775fc602cbb2035ab33bd77391721139 SHA512 8ad9af4e2c693130d471f8bd99f32579cef658317dccb821521069c130647ec7e7a0cfac9d8d82c8f3e3600f22e080ec4174bd8bf7f7cab6107a6a0ecad1936b
DIST firefox-128.0.3-af.xpi 417515 BLAKE2B 45b368d5bdbabeab7cace3e29dfad7d2cf4957fbba446a9ace922c0f6cb0683de1d634a9146dda7367a376b6802d6579d2f0ef1095bda24886a3fdae87dd6ad5 SHA512 a7d2ee5bed99cc18ed47be14c0421d84a815af7f870b4307517f9ae3929c81d6f2f7d646aedef11a3f91143aeaabd57a7f2386e92bd6e176849356690ba009ce
DIST firefox-128.0.3-an.xpi 505881 BLAKE2B 0f9ecd72aa5b4bd5af3a659002b9956bf9bcfdb3a709b5f698afaf393e6426b3606ad6140b861e5740edf40910b9d1d07dc6eb092cfb1d742b07dab209803295 SHA512 b3d16a753b587acddda69fe1e55967c88ccb3624a603be4030c78048385aaeba74f9b2379bba447a5e0495f3d1942fbd6f5ad6c41ce2080ba762493036528266
@@ -402,4 +201,3 @@ DIST firefox-128.0.3-xh.xpi 417171 BLAKE2B 9e0f3da87a68da99ca52353ba8caccf0993ef
DIST firefox-128.0.3-zh-CN.xpi 657105 BLAKE2B 85d43be34cdff7ba76c8b9d7466678904b913593abaa4538221a805d59012cc9d4923750d41302057dc768b59a21ad8ea9af367af91c85924368821f303a7036 SHA512 8ff9a0c898c344182c1e0eca16b3adb47fea59c47a71ce5e1fa12ef02275e9204919eeec552641973704bc4e20b5f405bf6152192f4fce9d756c975b67bcb5e0
DIST firefox-128.0.3-zh-TW.xpi 659225 BLAKE2B 5f7cfc5d21e1a98396259b46c28ca5531fc50e0fb0b78000915ccd7c97c1885aa53866248a9d8f0134f706bd5a920c63a11937dea304eb7b6c8b5dd00d9370fd SHA512 3afcf932e426fd3673f90fd1f8fb7f974f03d1821da6907768d50f755c5e59a0c80564ba7884a925d07ca2f53ee3980f11e802723c2a07dcc1c731aa650456bf
DIST firefox-128.0.3.source.tar.xz 563698520 BLAKE2B b717044fb0af090cca8adb03eddf9d1ba7b2e46c25d78de7aa36298d3b6466cf57b0a1c6c72ae369c5fc3484b9da9a79b902529350f3329b5f7254386dac9271 SHA512 52a0a1a6fa653f5a621a9e16e1937760c05a5ebc81a058ecc16b2c3d29d09d418dc5129deabed86ad2f82abdb3100969478a67f48b11616dc3b3e3698a1acf51
-DIST firefox-128.0.source.tar.xz 560761840 BLAKE2B a50c7ded69d86c9d45475e701f83295ab6ccfc4eb59d9c91379504bc35dd0e7e1fb59e8c7737684709fe62969b9762e2960fa90607c83f9e8d637b78e60f56b3 SHA512 309c0e2a0bea5699e6daf4fa02300ad7fd118d2c02c35cb5fa97a5fcc6e250cc7aec34e50fe872b8fd516436bfcfe37ddf33c9d0f9291860388cd6f3f08ea9f1
diff --git a/www-client/firefox/firefox-128.0.2.ebuild b/www-client/firefox/firefox-128.0.2.ebuild
deleted file mode 100644
index bb58710aa6dc..000000000000
--- a/www-client/firefox/firefox-128.0.2.ebuild
+++ /dev/null
@@ -1,1403 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-FIREFOX_PATCHSET="firefox-128-patches-05.tar.xz"
-
-LLVM_COMPAT=( 17 18 )
-
-PYTHON_COMPAT=( python3_{10..12} )
-PYTHON_REQ_USE="ncurses,sqlite,ssl"
-
-WANT_AUTOCONF="2.1"
-
-VIRTUALX_REQUIRED="manual"
-
-MOZ_ESR=
-
-MOZ_PV=${PV}
-MOZ_PV_SUFFIX=
-if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
- MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
-
- # Convert the ebuild version to the upstream Mozilla version
- MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
- MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
- MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
-fi
-
-if [[ -n ${MOZ_ESR} ]] ; then
- # ESR releases have slightly different version numbers
- MOZ_PV="${MOZ_PV}esr"
-fi
-
-MOZ_PN="${PN%-bin}"
-MOZ_P="${MOZ_PN}-${MOZ_PV}"
-MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
-MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
-
-inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info llvm-r1 multiprocessing \
- optfeature pax-utils python-any-r1 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"
-HOMEPAGE="https://www.mozilla.com/firefox"
-SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
- ${PATCH_URIS[@]}"
-S="${WORKDIR}/${PN}-${PV%_*}"
-LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
-SLOT="rapid"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
-
-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+=" +gmp-autoupdate"
-
-REQUIRED_USE="|| ( X wayland )
- debug? ( !system-av1 )
- pgo? ( lto )
- wayland? ( dbus )
- 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.76 )
- !elibc_glibc? ( dev-lang/rust )
- amd64? ( >=dev-lang/nasm-2.14 )
- x86? ( >=dev-lang/nasm-2.14 )
- pgo? (
- X? (
- sys-devel/gettext
- x11-base/xorg-server[xvfb]
- x11-apps/xhost
- )
- !X? (
- || (
- gui-wm/tinywl
- <gui-libs/wlroots-0.17.3[tinywl(-)]
- )
- x11-misc/xkeyboard-config
- )
- )"
-COMMON_DEPEND="${FF_ONLY_DEPEND}
- >=app-accessibility/at-spi2-core-2.46.0:2
- dev-libs/expat
- dev-libs/glib:2
- dev-libs/libffi:=
- >=dev-libs/nss-3.101
- >=dev-libs/nspr-4.35
- media-libs/alsa-lib
- media-libs/fontconfig
- media-libs/freetype
- media-libs/mesa
- media-video/ffmpeg
- sys-libs/zlib
- virtual/freedesktop-icon-theme
- x11-libs/cairo
- x11-libs/gdk-pixbuf:2
- x11-libs/pango
- x11-libs/pixman
- dbus? (
- sys-apps/dbus
- )
- jack? ( virtual/jack )
- pulseaudio? (
- || (
- media-libs/libpulse
- >=media-sound/apulse-0.1.12-r4[sdk]
- )
- )
- libproxy? ( net-libs/libproxy )
- selinux? ( sec-policy/selinux-mozilla )
- sndio? ( >=media-sound/sndio-1.8.0-r1 )
- system-av1? (
- >=media-libs/dav1d-1.0.0:=
- >=media-libs/libaom-1.0.0:=
- )
- system-harfbuzz? (
- >=media-gfx/graphite2-1.3.13
- >=media-libs/harfbuzz-2.8.1:0=
- )
- system-icu? ( >=dev-libs/icu-73.1:= )
- system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1:= )
- system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] )
- system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
- system-png? ( >=media-libs/libpng-1.6.35:0=[apng] )
- system-webp? ( >=media-libs/libwebp-1.1.0:0= )
- valgrind? ( dev-debug/valgrind )
- wayland? (
- >=media-libs/libepoxy-1.5.10-r1
- x11-libs/gtk+:3[wayland]
- )
- wifi? (
- kernel_linux? (
- net-misc/networkmanager
- sys-apps/dbus
- )
- )
- X? (
- virtual/opengl
- x11-libs/cairo[X]
- x11-libs/gtk+:3[X]
- x11-libs/libX11
- x11-libs/libXcomposite
- x11-libs/libXdamage
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libXrandr
- x11-libs/libxcb:=
- )"
-RDEPEND="${COMMON_DEPEND}
- hwaccel? (
- media-video/libva-utils
- sys-apps/pciutils
- )
- jack? ( virtual/jack )
- openh264? ( media-libs/openh264:*[plugin] )"
-DEPEND="${COMMON_DEPEND}
- X? (
- x11-base/xorg-proto
- x11-libs/libICE
- x11-libs/libSM
- )"
-
-# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
-# overridden in the enviromnent (advanced hackers only)
-if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
- MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
-fi
-
-llvm_check_deps() {
- if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
- einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
- return 1
- fi
-
- if use clang && ! tc-ld-is-mold ; then
- if ! has_version -b "sys-devel/lld:${LLVM_SLOT}" ; then
- einfo "sys-devel/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
- return 1
- fi
-
- if ! has_version -b "virtual/rust:0/llvm-${LLVM_SLOT}" ; then
- einfo "virtual/rust:0/llvm-${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
- return 1
- fi
-
- if use pgo ; then
- if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then
- einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing!" >&2
- einfo "Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
- return 1
- fi
- fi
- fi
-
- einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
-}
-
-MOZ_LANGS=(
- af ar ast be bg br ca cak cs cy da de dsb
- el en-CA en-GB en-US es-AR es-ES 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}"
-}
-
-# 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-geckodriver \
- --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
-
- 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-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*'
-
- # 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 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
-}
diff --git a/www-client/firefox/firefox-128.0.ebuild b/www-client/firefox/firefox-128.0.ebuild
deleted file mode 100644
index f4a6fa3babc7..000000000000
--- a/www-client/firefox/firefox-128.0.ebuild
+++ /dev/null
@@ -1,1402 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-FIREFOX_PATCHSET="firefox-128-patches-05.tar.xz"
-
-LLVM_COMPAT=( 17 18 )
-
-PYTHON_COMPAT=( python3_{10..12} )
-PYTHON_REQ_USE="ncurses,sqlite,ssl"
-
-WANT_AUTOCONF="2.1"
-
-VIRTUALX_REQUIRED="manual"
-
-MOZ_ESR=
-
-MOZ_PV=${PV}
-MOZ_PV_SUFFIX=
-if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
- MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
-
- # Convert the ebuild version to the upstream Mozilla version
- MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
- MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
- MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
-fi
-
-if [[ -n ${MOZ_ESR} ]] ; then
- # ESR releases have slightly different version numbers
- MOZ_PV="${MOZ_PV}esr"
-fi
-
-MOZ_PN="${PN%-bin}"
-MOZ_P="${MOZ_PN}-${MOZ_PV}"
-MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
-MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
-
-inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info llvm-r1 multiprocessing \
- optfeature pax-utils python-any-r1 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"
-HOMEPAGE="https://www.mozilla.com/firefox"
-SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
- ${PATCH_URIS[@]}"
-S="${WORKDIR}/${PN}-${PV%_*}"
-LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
-SLOT="rapid"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
-
-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+=" +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.76 )
- !elibc_glibc? ( dev-lang/rust )
- amd64? ( >=dev-lang/nasm-2.14 )
- x86? ( >=dev-lang/nasm-2.14 )
- pgo? (
- X? (
- sys-devel/gettext
- x11-base/xorg-server[xvfb]
- x11-apps/xhost
- )
- !X? (
- || (
- gui-wm/tinywl
- <gui-libs/wlroots-0.17.3[tinywl(-)]
- )
- x11-misc/xkeyboard-config
- )
- )"
-COMMON_DEPEND="${FF_ONLY_DEPEND}
- >=app-accessibility/at-spi2-core-2.46.0:2
- dev-libs/expat
- dev-libs/glib:2
- dev-libs/libffi:=
- >=dev-libs/nss-3.101
- >=dev-libs/nspr-4.35
- media-libs/alsa-lib
- media-libs/fontconfig
- media-libs/freetype
- media-libs/mesa
- media-video/ffmpeg
- sys-libs/zlib
- virtual/freedesktop-icon-theme
- x11-libs/cairo
- x11-libs/gdk-pixbuf:2
- x11-libs/pango
- x11-libs/pixman
- dbus? (
- sys-apps/dbus
- )
- jack? ( virtual/jack )
- pulseaudio? (
- || (
- media-libs/libpulse
- >=media-sound/apulse-0.1.12-r4[sdk]
- )
- )
- libproxy? ( net-libs/libproxy )
- selinux? ( sec-policy/selinux-mozilla )
- sndio? ( >=media-sound/sndio-1.8.0-r1 )
- system-av1? (
- >=media-libs/dav1d-1.0.0:=
- >=media-libs/libaom-1.0.0:=
- )
- system-harfbuzz? (
- >=media-gfx/graphite2-1.3.13
- >=media-libs/harfbuzz-2.8.1:0=
- )
- system-icu? ( >=dev-libs/icu-73.1:= )
- system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1:= )
- system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] )
- system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
- system-png? ( >=media-libs/libpng-1.6.35:0=[apng] )
- system-webp? ( >=media-libs/libwebp-1.1.0:0= )
- valgrind? ( dev-debug/valgrind )
- wayland? (
- >=media-libs/libepoxy-1.5.10-r1
- x11-libs/gtk+:3[wayland]
- )
- wifi? (
- kernel_linux? (
- net-misc/networkmanager
- sys-apps/dbus
- )
- )
- X? (
- virtual/opengl
- x11-libs/cairo[X]
- x11-libs/gtk+:3[X]
- x11-libs/libX11
- x11-libs/libXcomposite
- x11-libs/libXdamage
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libXrandr
- x11-libs/libxcb:=
- )"
-RDEPEND="${COMMON_DEPEND}
- hwaccel? (
- media-video/libva-utils
- sys-apps/pciutils
- )
- jack? ( virtual/jack )
- openh264? ( media-libs/openh264:*[plugin] )"
-DEPEND="${COMMON_DEPEND}
- X? (
- x11-base/xorg-proto
- x11-libs/libICE
- x11-libs/libSM
- )"
-
-# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
-# overridden in the enviromnent (advanced hackers only)
-if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
- MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
-fi
-
-llvm_check_deps() {
- if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
- einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
- return 1
- fi
-
- if use clang && ! tc-ld-is-mold ; then
- if ! has_version -b "sys-devel/lld:${LLVM_SLOT}" ; then
- einfo "sys-devel/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
- return 1
- fi
-
- if ! has_version -b "virtual/rust:0/llvm-${LLVM_SLOT}" ; then
- einfo "virtual/rust:0/llvm-${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
- return 1
- fi
-
- if use pgo ; then
- if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then
- einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing!" >&2
- einfo "Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
- return 1
- fi
- fi
- fi
-
- einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
-}
-
-MOZ_LANGS=(
- af ar ast be bg br ca cak cs cy da de dsb
- el en-CA en-GB en-US es-AR es-ES 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}"
-}
-
-# 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-geckodriver \
- --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
-
- 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-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*'
-
- # 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 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
-}