summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoonas Niilola <juippis@gentoo.org>2023-08-22 08:38:37 +0300
committerJoonas Niilola <juippis@gentoo.org>2023-08-22 08:38:37 +0300
commit6eefaad20583a55397b1f4fc911faaa1738a1df6 (patch)
tree6a09395a912e4ae82dca37f7e912d1839a142f74
parentdev-libs/nss: drop 3.89.1 (diff)
downloadgentoo-6eefaad20583a55397b1f4fc911faaa1738a1df6.tar.gz
gentoo-6eefaad20583a55397b1f4fc911faaa1738a1df6.tar.bz2
gentoo-6eefaad20583a55397b1f4fc911faaa1738a1df6.zip
www-client/firefox: drop 102.13.0, 116.0
Signed-off-by: Joonas Niilola <juippis@gentoo.org>
-rw-r--r--www-client/firefox/Manifest199
-rw-r--r--www-client/firefox/firefox-102.13.0.ebuild1290
-rw-r--r--www-client/firefox/firefox-116.0.ebuild1466
3 files changed, 0 insertions, 2955 deletions
diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 12569d99036f..ec17833f51f0 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -1,101 +1,3 @@
-DIST firefox-102.13.0esr-ach.xpi 466438 BLAKE2B 864867e81d0e5101b09f9561bb3c1aff9dbb5ad5ad9bc513126dacb8215524a0bc4e9427a15752b146ee20d5ab6a07d7dbe5d530dc54c03e1cef6e7b61cca3ee SHA512 d1cb24636411a0740503420d51df4104530a35d024f094d18c0e845c868b6badee3fcfa3ed4ddf1849baa07c6d147134be4c17906f0cce3a3d69c6b5705108b1
-DIST firefox-102.13.0esr-af.xpi 429120 BLAKE2B 11bd513b3d3c86a470791a89b6df523866b262a923bb2ec66e622f0b180672d4b3ea6891912eff7cacdc8e6aa10a2b67cdab1bef58af23f8f8ea06ce04c0efcc SHA512 6f9d02cde6e7f455e44c0ee7e6f5f7abeddcb07d229fab66fb29923dacbf8faac50bbf686c802a28d86639ee67a0a566cc3a95b06bb319db32ce7413da5fb334
-DIST firefox-102.13.0esr-an.xpi 510488 BLAKE2B aef317575387e6bf2e8ab404c89b4d657379e4f646921ff0afb2fc23261d4e9270202b0a3ca6b929767964086bd6dc4916b265296640a8c2d58573bcf5c359f5 SHA512 8b3e97acf2965380d8d720dc8e5c39cb3f541cb13d1afa0f6fdcf02156494ba971d42af21a8371de8e568b5a58c7cd319e4a4cd9b5f5089edca512dd58d2b651
-DIST firefox-102.13.0esr-ar.xpi 578875 BLAKE2B 1a46ccfeeada67da098786d0f758a7889837385ba656413ca23e0a5000af10d327f243205fbaa7f0cba6b32859aa5fece67dcb36f91bc186d212e29a316508ea SHA512 822a0bceaece2e2cd5326e2d703f0f4bbc0a9126f652665231ee582a1822b0954785da53cd547abad29657cbc2dd9a60ba1bb8b34ba288a93747c57f6fe5fa9a
-DIST firefox-102.13.0esr-ast.xpi 498112 BLAKE2B 928d98cc66cf4a1b8c134cad69964120de59ab8b3c0fc11e26d234855fb1080e7b80967a8a567cbe3daa3f8c6b218d47a9fc483b5b2c4e809ceb556fdfc6b6c9 SHA512 ece3756088ba4264e5f2e8546916e713aad52302095852eda2f23fbb2b44ea4d60c90270d4fc3bf7b81e51f1494cb9f07be419ccd32c5551650b5a2ea0d5cda5
-DIST firefox-102.13.0esr-az.xpi 500793 BLAKE2B 089c46ea025380d01ccf5326e6300688213f9c42d5ca0d350b988196a82959c15c0f399899ea7def8a95398bde35ed79b5f5783abe557687d14743c8a874c602 SHA512 70e9c4e9c9f1457b155d1d3ce1c84ce875d716c303ea9ff6dd61564fd1e8eb5133c4a764a50ebec274baf2415b2294829f8e6c4a69837e22991f1dbfcb4dc8d1
-DIST firefox-102.13.0esr-be.xpi 666680 BLAKE2B 15c518ff9f15121b39d502f334644abe5eb5ec4242c2f64b4d2e5646b3c8252848010a49e8f9fb4bb5db21df4c697834d94aae9741aafd066aafcd974501a212 SHA512 22cc88d1cb0879730a018831faf8d973f0549757cbda3f0f71d54ff6baa7f260c384028eaeca2a695ba426315fa2a85c74ded4fc2dc0e34a6ee16713550d9235
-DIST firefox-102.13.0esr-bg.xpi 591333 BLAKE2B 4a90909f2d07136be8afb5d8845752a6a7bcd2892ba20b0ea3a58f0559f8ba8f9aedaa3406e7aedee7dce639a11cfa9154bdbb6926bc6745aa8b59fa59ed9c73 SHA512 2dffcd9a7095a3bc028739c1bdab1f6c0e7a2f8c8cadcef059d33b79847759f20710b786ae6754e5f07cf7a0b8527c9beb236dbbc7b879f8101c47b56a851824
-DIST firefox-102.13.0esr-bn.xpi 591682 BLAKE2B aa83531062ffa2f554422541b77d32c61a089ebd31443b29e4311ecb5d622b4ad3465917ead539e44f92de63252577309100b3df00e588ff23839ff59df44127 SHA512 168dcedb3d16d1350387387c3bc0fd9a22a6177b1bbbb3283f0cab23ba252dd5a970e5f09835d9262544857dbd21c6222c51f6d05da8d920d85cf13e4c1c64ee
-DIST firefox-102.13.0esr-br.xpi 555854 BLAKE2B afeb2d9d6f2da0eb65fd2e083a4d75df2d59034d7744b6877fcd258a4db62371b498e492441889e189ecf742d573c4cd8d1c19ce259e154e3f2ccd7c8513c04a SHA512 7f8741b6fe119d3a319a742d69d06d32b43f4580b5c7fc6103d27442528a2861f6849bf4adc6db221712d05f297b66727d7dbd260584efefe17fa7d299388084
-DIST firefox-102.13.0esr-bs.xpi 471722 BLAKE2B eb574b31586289aab42cf14b4f8426e8eb7951fb8b4dc2c454208382fe3e64cd34743c874db2a696540ba912a68ee79c1c1f7a1054d09a6f909f7864045890dd SHA512 f46310dcacfb5d9409f488f8a941fa24a01789c92b1b418bb9a5845730f226556fcc3cfab5436eecd94fb0334b6d3e09e9893bd28de631dd110e1d0a34d20a13
-DIST firefox-102.13.0esr-ca-valencia.xpi 549190 BLAKE2B 109ba11d9f9caeb08e0d4ddeb0b722b0464ace61d4e7044c5cd03d3d4c254dda588e8dfd757696c35dec840e68c9434475352c8b22538cada61bd4c652ce5f8e SHA512 533c8e196b3bacb2eab6df597e87b1d6abfb8c3a42931f5f39477c3b7be93236cf9b4b10c1d14c1939361bcfd60ab3b543f8090ae76fb25bc2113db98c3b88f1
-DIST firefox-102.13.0esr-ca.xpi 561926 BLAKE2B 1fca3f435551bf5f355a4d40f84e1bab7caafc0b6ef123f8418c30dda479b8494da8b12f974cc2a973709767058f93477c9ab913033f7b62ee86dc70f92cc773 SHA512 7884c66ebc9b78285cd0af3a8099ecafe4bb05543da37fae4af062942892cdded39c9b8042b484f31300580e616e2b4544448c38e514ba47e94ac6d682438269
-DIST firefox-102.13.0esr-cak.xpi 563849 BLAKE2B fde732f6118ecbdfa99cb366cfa45a1a3b39b838aec1ddfac407e7c1d24d799ce4062a82aa5902be5ecb6f199ed8a9aab2e53a782efed5029037e7462babc6c7 SHA512 d1747fd3882cf593dee43a35737bdb04a294ab7470d30e3d10d6c7f7f1c8959d6c0e10f3df75f5b9725c3cc2ceb9ceb25d52b70305a1b7475c4248d2d8979bf1
-DIST firefox-102.13.0esr-cs.xpi 599799 BLAKE2B 6aabc1c1aa7ae3fd6937337cfa9d94f54107b40cfd902c8f5c232b530f1614ec26f976999fd035c84a015d00ce4fc48a7286024871845576eb7766c3302318d9 SHA512 842aa1ab934acdc18caf6e4bf776136f94607b1c9cd1a186af2ae31f66bf5711ab1287e97713dee4ac07fc4c58f151852ba1c97946842188b2acdcc038f1b111
-DIST firefox-102.13.0esr-cy.xpi 579215 BLAKE2B 424a1055b6e93b1584f93c214c13116051c27d6b6658e8a58f124023ef4710126c137e7dc0499fa321aaf1cacef7b9bd9d02a744bbbd25f1e1df20c014b8b2de SHA512 f214fbd1974561f8f9b75b367d746e2f88d1dd8a6b02ec5d281bcbd657356fa5bf193d07114b27ea7b086d69570144696a59d69062f5601b6a0ebc86eb39ba55
-DIST firefox-102.13.0esr-da.xpi 570505 BLAKE2B d6da3edc6adb69ac6609530a947d9d1ad6fe227baaa43a4b6abb7db6a268853c0abe1e76c062b1ca226e9ba97a65190aa39df95bceaad0513694d1c85385fbb4 SHA512 d8208c938b71424b8bc8ba63df3aa5bee81473a4bfa646b473e875f40825bbe46eb0192e16155923d1eaf52e735a977838926fac2a1b72c71534ad875ec5f130
-DIST firefox-102.13.0esr-de.xpi 591574 BLAKE2B 0d35c22e8743f399fb0fa88cf2e083b39013bf7532de4613d28a2f7555214d2fa644a102cd69a650e3c87cfcd5f3fd703d6fca3296a20fd98f2f1c2458fd8910 SHA512 eac44b127865749398252232bb85a03f43515b1f5cd4eb849b89874eb9a86a47cd3d11b9c7600356d8de17a2e303b21dfaf80e61d0c38b394fdae137235ba3e2
-DIST firefox-102.13.0esr-dsb.xpi 600373 BLAKE2B 1844c596a8ac0005e59a4c088cdf7fc2363713789279cbe7243b8df2ecafc28f274a6191e6b4e5bf6d9373af856d884514e5143dd8457162e34acdb00297e775 SHA512 5dd691c80ef3716ba8a964f26eb1e3d2c7407f92df26b46f80a2d9a73f3892c2ba97b8f00b11d66ce5b852ecec17087b2b2c840affeb07d43a0480fc62e40f66
-DIST firefox-102.13.0esr-el.xpi 681653 BLAKE2B d82459c45ebaa059be37bb3f394e52b2b599a1ff369497101a16fa0cb1cc95c6ac2e2f31eccf1c7246b8d5467f15df4b557565b5eaad81a15613ab35580a3ec4 SHA512 53844472ddf077c0c8205950b09147b06d08a6d45cf6da8c91cf027331cb79be438fde43f92371c1aeb6fff97ae499d69acae5a42d96efc565e9fe81d796b939
-DIST firefox-102.13.0esr-en-CA.xpi 541065 BLAKE2B 34503d2b5c719758bfb283acbf61030084cdda33e174bad92b885c03abb68fa14e231c7516105b766274e19e75fa79799dade0997a4b4702ca2389ea2b49228f SHA512 e1517e08836df2ffa30058d8ef0fd323d3e25f7213c523ce62531ab9bd8486716de72b7688a280610f197121e2ed744be51d03faa5819b5444a838b5047801bb
-DIST firefox-102.13.0esr-en-GB.xpi 543997 BLAKE2B 71aa4ae91159ad342ceb5eba4c498b7444e2988664b11b3be1db46523b2f0662caf1ca4b4d131b7f68eebd5bcee7195e51f2563e30e79e75bd6b7047e35fdc9b SHA512 0c8e22453371dc17cff3fc9f6bc7753076e381f142652aacc72475528f6160a7e694b988b57ec79b2e30846c847b883af48031d3b621ff8c479ba81b318791da
-DIST firefox-102.13.0esr-eo.xpi 571437 BLAKE2B 58c0b4ff83ca82260510b58989e63128c4727a7f754ad53daf09f1c2092b846cd550cc78eb7bff086440171f7ed9f916cc0df5933c7b39f72310cbad5efd84c8 SHA512 9d0f9ef2f148e8f6eaa141641b02120f1ab6dc62c507131e500afdbdba5c22b2db6662b852924290b6dcb0b6e13a782524522122b2df4c20872491a93dc4229e
-DIST firefox-102.13.0esr-es-AR.xpi 584189 BLAKE2B b32a6569a46114245ce1a1cec3e63bdcab7e924c2bed8cc38255bd050ff9639662de258bc38947273575a3756a4bf2ec07adf3820da24a1302199a561423d766 SHA512 1bf54d266aa4c5bb38999d209cad53462ff861fff6ce69007adef315e45a8c1e1f478a54b3ce90647ad8f28478a0fc9000de91dfe4170c941c7c1b4b7c42e1f8
-DIST firefox-102.13.0esr-es-CL.xpi 583179 BLAKE2B 901624ba970cdd45ac9b0a37f11ed012592c32ce92aa53d2a2ba36983515a30a837aeb987145dff0d28e8b31454448ec66fb862a6d81481dd71e08d5aae18a25 SHA512 cc797aab5098f3825bcef4994a72db676a75bccb9372fb7745b021fca9e4c8b73d170b17ea07b22b38d83b599b3f8411d73c91acfe90e8f987c24319945f15a1
-DIST firefox-102.13.0esr-es-ES.xpi 576075 BLAKE2B 5aab54c21998ba959b365bc9080fa7fafc3587b7101790d4b570395a69ce26b97ef0febfee0e789d31ca8e894963390b669d6fd5ab3e80d124938255b8af3879 SHA512 a25b2a85abf572eca2e74fbd69b94011ecbdd281c0693f4d5877c03fa7df7fb978398c2afef31cac05b687e40277beadafa07fbc115afa8bc2c7952a4521c7f8
-DIST firefox-102.13.0esr-es-MX.xpi 586671 BLAKE2B 5c2d3d610fb643e30e056f4cf6b6b54824fe5ed03818cfb46521d23d3383fdd3f0afb67f233656f7b903a8cc42ac1d05a3ce6a8189976487a69566ff398dd02f SHA512 3f9449d9fcb81bb0693712e65a763c3a33c3d9b81988e24949aa20f3c59779b17878e589621c49f6fe50151a25b734853ffb4df2e9d08a3c565a847f127e5488
-DIST firefox-102.13.0esr-et.xpi 543285 BLAKE2B c31ab1df1cb32d0a4b42e197237876844019b43750138c67510f7ac34b866c335cd7bb81d695c8692e362aadf0f9313bccfd367519208dedb83495ce8280412e SHA512 31917b88de6c71d24d0de7978c77a9d3ec1530c92bef8264360e46c2a0a05e97d3aceb34dc946e983645811aaf124ffb5cdb5d7c403519307143ffd7a6160f30
-DIST firefox-102.13.0esr-eu.xpi 572525 BLAKE2B 13c0bead8dd03fabad59a2999c47ed8fc47e1b427b1e4fde91711e2e87451aa9b04e3ca84e47048ebe63d18c4003e9593bad5aac5cdc32c13e42afeb5835fd25 SHA512 f6f2b65d3d711853981a89da5313a3fd5887f94111d613593b565e5d9040e56dd4dfae0b34c099ca54ee11cc05e9d86d62932b5be11c2823a0e3a6492a6937d3
-DIST firefox-102.13.0esr-fa.xpi 583117 BLAKE2B 4d935e330f84340ceeddc34393af5e074adcf2be9711e5ecba1cd0e63a5bc122863d895d1454cc14f149851d45a2532fa6b24a4ffa4b121f5416607c82e0f8f9 SHA512 d27e6826f07db7e257949b11aae6050f796967233502ac809882b528ca4a9e1f4f416eae08680a95834bcc6454c3b57709c07093dd99e0f5f1f7e335abbfe04e
-DIST firefox-102.13.0esr-ff.xpi 483133 BLAKE2B f2ac817b1d8d59010ecf45280e2d6d6900187f2ad2243b28ad74ccf5c56557001fb78162eab3429eb97e5838a897eefbbc5e879ca219e45bb0a571591b1918f2 SHA512 727042739ce2a5efd8d5b448c1492c6e08d0465f8fa1615f076d6ea98dac83fadb35f90c4eeef1777537ad4543fadb6967d8fbe12532a8d2fb3d09fb899e2b4c
-DIST firefox-102.13.0esr-fi.xpi 568229 BLAKE2B c92a63a97bc587102e51c0d722f6084fd9a783654bbb2d0b5dc7ad97ebf2af8ec5dc3706f0fa7bf6879a7a2c7d98592b56a79e3f27fda0d21f9363a13acc330c SHA512 b8e797d6b948d8601ecc4376d1bc42f13112b574126c839fe769a04a51f4835f60b4a410a64799391ae43c13ec27825653a0e2430d5cb55362f9b06d784c5303
-DIST firefox-102.13.0esr-fr.xpi 595536 BLAKE2B e206830e43d8d0aee6a549dd7fdcc990b06d030d57f705f1a1fc3d8726247b16c61abc2f774e5ea1b20828a622df49310e83c18894eb4940d0a2944b29414dc7 SHA512 ed3e8eca9dc9cf7a80fee9a46c6f4075cb6e86cc039924160200fe435bce9b802d9aa76ec4346e89d87c336790594a52d3a97fd8c2d75bbb62f377a6156ef544
-DIST firefox-102.13.0esr-fy-NL.xpi 580237 BLAKE2B fab278b8fd363bebe7dbd0916128dbb005942b3c388146a69551898e522524cdc3a7b7031f6160cbbca6874e2bf94603dcb7cc9372cf6cb36f4ea140c721752a SHA512 1135a0bf28c7bb1919143d97309d442512a8688e5fe227298f4c9c1b67ef750c0acb316492940361098eadd6b78be8c77ef26d1eae41e989f3c4a537476e4ea4
-DIST firefox-102.13.0esr-ga-IE.xpi 480698 BLAKE2B cf5621e2cc5ca5161916a343074ba584e84ddaf3c40685d38253f9db64c204aaaa0285ecc102776e549506a59d3c3abb7d36c66e172eeea0e3514ece79d878f5 SHA512 41270c814804665485d6d162bccc579fb51fe4428ed672bb295b8cc22674140f894e573c4f3758a16de6281d0c7d6ed0ee8fb59eb914e0326e5742d4543d3972
-DIST firefox-102.13.0esr-gd.xpi 557858 BLAKE2B 5a56ce1ae6199a0438d41424fd270cae2f0a6e0a26b0651e2f3f9569b0275a53568bd8acedc64464279134ba6a06f688ce5c5038e75e11a7160bd1b59672ce66 SHA512 a39b8c49991bb82ff4047380bd19bc5e58394731f14402953fa7d3c581d194a30373fe08ee125d862f2d8b04765bc72b3c3e757adcf5eb46e3b7631859f89524
-DIST firefox-102.13.0esr-gl.xpi 550717 BLAKE2B d71db79a8d2e3db7f1d60f548417670cc18ed500ce5a65011e5841171a4ce58b477ec69f29e559598d946fc213f8843f4bda4d26d59e831ff193916643632341 SHA512 127674e68a56dc64b45a8c7c340fe9aa4ac1fcdd99be4e87980b04a4d378d8460b85a6a47968b4296a40d48bbe850ee20911cbea472511a5bbfed9d6b7eeac71
-DIST firefox-102.13.0esr-gn.xpi 595698 BLAKE2B 99776a83b6ae641b09f99fff70294dee65b9934f271a83e5ec011c2983988388e81d27e0bcb5ce874452c621902946a85493a4b918852e0ab0b064729523e4fc SHA512 48b9a01df63b76a0441d9c36780cec8873b45716ac415faf749b8f39a29fea395d1404e0693e9e40141e4b420e0a7ea4708165657c58f4b814791d560faeb2ce
-DIST firefox-102.13.0esr-gu-IN.xpi 541907 BLAKE2B 351092866af9e6836ccb0265b1e9e58c0e27006f0e1f1db9b3cb2671d09598774444739b14373b7cae29702ccac2134399d812a524a8845a5182ec3cde9dbaf8 SHA512 e73801dcfdc425cb241d0727856197752e90b76a95b6c9d206d5324d176761769d8d8cc3965ebcfd51b56208ce1d6bd8a90a1323ab98bad102696cc834816096
-DIST firefox-102.13.0esr-he.xpi 591522 BLAKE2B 7c21a84bb7ce3823136804e87a653ae73617d52543f55761b09e2f6307b936d4ce70a85d6cd2e739022fa8405571632e7950871e32b8038d6fef8c0a97547d44 SHA512 f817e98cd0cf64b4fd6237366557c30aec575ca472f1c528b70c8bdd1c75ef40f6561b43633e6aca4e12b634ccfd6a8f595fd7d20ae77198a75be7f4b0792f33
-DIST firefox-102.13.0esr-hi-IN.xpi 570410 BLAKE2B f88eb532a6011539a1d914be42bbd6c5f467852be1411b999af1c60419e716e26a9c13e9a9798657e2b6ccb19f3d625ffdd60e8b33b57b70f9a0b4693e70ecaa SHA512 80e1f897d03e1979ade09fc47d14e28a92ea63813e020e4ec60a5dd25cc68a9d2ffaee0ed7ab0823bb7ffb8b736bdf06763f3898b51aeb3bf2f4830008616214
-DIST firefox-102.13.0esr-hr.xpi 555266 BLAKE2B 91aa09d9f9f395fb86f02f8cee5b3db68fc83079058527cb6f499e7eee23cc23ea4ddec99b5367ec9efc5f9e9176b9d3357cfb43a441eea5cb8145db4014d8be SHA512 acaa856dbae2d53e1ee3a8786a9b918957f3896daf1e404e2da7a547b2b43d497929e96d2825a499f1b09aa65870a32ba7790a024d8d76179a458775eeefceff
-DIST firefox-102.13.0esr-hsb.xpi 599181 BLAKE2B 5e027e9394cb6189595660fcdb4960a7c990ff8242f8acca121671ceb6c1baffd3b4d0cce2095e31c5736795ffd37c57ec8cf8ad98a2486cbd20a9ac6a5fb07d SHA512 44fcbdab990dc315915b1b29db3a13f39d67d84426f6afcddc14e20c2987d3d8e52553d2a5b593c64eb3e84a22f600cc225c7a37e68d3a0e5987552d77a52a0d
-DIST firefox-102.13.0esr-hu.xpi 605258 BLAKE2B 6265bd08f0f7ef38a2b62dad35cc2e11cba2bf5f1d4e41fa35448fe17deb12218cf156215940e3ccd5cb0e820e3949011a66c3499aca26cafa4d2460ef6ce1e7 SHA512 a444225f2335de97445f9aca2d05a4499a36137f5fcdd186e159fd744b21758d0725e601790cd300dc1b92d9125e5c99d25aefe0e6de9448f8f786ad176ea12d
-DIST firefox-102.13.0esr-hy-AM.xpi 607096 BLAKE2B c414bcc9020ba2b5aa8184210049b5ef9d1dba59cee7a30844640a50637c7248e84fa9e92bd57bd18e34afa14cf8b11869c3ebdee5096b48b8fa0fd88c85c8af SHA512 677b98f686f2f06f7935652ff3872d6c5e57fe2f5883a61831f8547b6ff840ace7870243b9fc1b08023ba08304f339f42d96909e53bbd4bfacd4c2adc6fbbd7b
-DIST firefox-102.13.0esr-ia.xpi 567877 BLAKE2B de11556e7bb33176feb16897f205fc8b0e81d9046d720689f4c727703b1ddd3f51e61fcd91296bb410c6258a3c2b4f02e6c9f501c317a132dd6c0c3ed0994375 SHA512 99d4335fff972d8d979ac2414561bc121065f181e1677b3db37fae53bb6a271586a40a9590b355275b0a6cfb2b620c5c268c39d1f06e2b669a0bd56a6c0be603
-DIST firefox-102.13.0esr-id.xpi 564792 BLAKE2B 4287d19b649717aacb1dda81edba9531009fc4e291929008885886ce65c7c938ce84d42fa3914388232833b0c2b2cb80bf397535faa87f59edbfd2b05145a8e9 SHA512 62e31e9a4ad41f6c05116337becdc94004abde3ff60beb1364a3565717770fb65c10e12d0ab7d7228e3065ce8db558b3ac17d663bf37c6c32c88dff189d4efa7
-DIST firefox-102.13.0esr-is.xpi 575729 BLAKE2B 459e93a9069812306c1d5344c542c01a1cb32a2265f6ac8c842ee9c39dc15e9b7fe9253cca4cbadc658aff7ef3a715274207c35708e0a224a0e50525e07b4190 SHA512 dea0e12e462da13ffe53dddc38de3744c8d8a325ce0b8c8d5f068f0f0000b02745af7ebae9ea3417138cfd02b2331f83d66d7421d77c407853d6cd1ea6130c22
-DIST firefox-102.13.0esr-it.xpi 505293 BLAKE2B 110a544bddb730a59540f2dc8ef4cab96fe647d1d1718bfe80486781e9527b09ae9e535fbde97baa1cfbd36a68e0391f63275f45a3779f9a0a69068a2070eee1 SHA512 5a350b7c0617360a979252793cf4e8b49f0997b5f1f27bf0be5eeade723d3898ee7b2567efc965dfa638ae4c27092979cfef68ef5b8d226ffe2e668fab39997a
-DIST firefox-102.13.0esr-ja.xpi 631476 BLAKE2B 9094e0de52c9426f5c57d9f828225a8f70c35766fcc08673ba7dc13501af03f56b5128537f96a190a7a172adaf2483b494dee0dc08171f776e5038d60fc4a1d5 SHA512 15b7ff23530fa3e8cc65a49bf85323a1ef54cb6b9a6d77a4bc620c528c9ba43ca208d39dda8c4711ca042367f34045cf796efad71dfb3e80aa5f36d071220e33
-DIST firefox-102.13.0esr-ka.xpi 636004 BLAKE2B 6f7def5c090554c32797ef50bbdfef066e9264d35026bfea7cc2cce8c1525e0fe64c24ee03b7e11465684282e93832874613ca1902bcdab8d8b4814b5db96d47 SHA512 3f43e8b592ce865772205448a01e97beb8ce1bc818412af1a700a98dd411847181d5383dc7040c9ed3f6103ade238f73d93ef6ea5f9448cb627e9af3faccb1dd
-DIST firefox-102.13.0esr-kab.xpi 583629 BLAKE2B 551e0d44034a4db6883aad9b6cbb2ee149c8c3470ef3a912026e06b75c4d92c01a71004f980a0a15ba305570f29b59c78a77b6eb9e912f13629b24ac9b4a2113 SHA512 6b92463781873c05a1c1ec71473d97e51928e3a4580aca56f774f91bcd210da3436dfc21790d3b537eb4b4982299859b3b9870b6be8cadd7d8bf630028bb2c2f
-DIST firefox-102.13.0esr-kk.xpi 658886 BLAKE2B 8c21bf4b349fb4b19570142d82dd531c76b26f5c893dcff8ea8728e1f17beafa707dfbff34396a9de605d97f60bf71b89481329fc60763b568cd5b01f3c78179 SHA512 a43adfa058a5ee85832a1fa1338d5cce35ad5810218e28390a02a38cc1e24f12fa30d038817ee9bce3e926cfb09898e5a5e03763eb8d9122a54c9432bb7dd395
-DIST firefox-102.13.0esr-km.xpi 543897 BLAKE2B 34dacf546c6f8088257449f47ea644d54eb98794c0f6e6ec4f7224d92b155551fafa15efd96d48787da238fc15d5834f3c71c53bef679106076f28cd5fe67ba5 SHA512 521423f704bcf78169d0e8d6e665cc3980c2dc0a5f34b53b12ac1b7f5d7839f46aa24313d2cfce78647f0f5c093afc7edbce2d45300758964b62ea09ebc1e044
-DIST firefox-102.13.0esr-kn.xpi 508582 BLAKE2B 5ad3c649d802e432ccd2183cd01a19a8e639655fab4a9a00d30361e90104d7806407b0226e844f599cc4739d83e1cf098fba8997120ff4a052528819b2027312 SHA512 ea8369059c4fa854a1330d350500ca5f7dc0b95c7ff27cb857a72aae639ebc358d05a8ed515d65991e73e92dac8effbc70e199eebf47b5ec5af3b477fe901c0b
-DIST firefox-102.13.0esr-ko.xpi 617292 BLAKE2B c6e36b66e696a6ddc5137f22ccf4aee67632397ff8547b2d4f84ef29fa8276dd7cba27e67e6b58a295b6f2dfe79dea3d6bb38d500e326df972d430aeb9bed29f SHA512 0862af7b06bb7c414b7827af4f171319bb378822550e9a0b898065c3f9989fa10555c75b48a4e5f4f585c7fec641e40b8bd16fcb338a832ae03c2526fe8509ca
-DIST firefox-102.13.0esr-lij.xpi 480142 BLAKE2B 04d210d0e301e774b8a1b6f34498e5af672346b2f14b27e67d93dd91f5c73cdcaa4f1b8b46e63f1e7a30125adb99592aa18ff0c3b761c4531382d9d2476605af SHA512 dbae3d8f1aca3c5a5b6b7ac08b829359cf0a39239188768baa6c3f987028a8ffa8cec7dbada76e7e050a9974a03ff7748bf42b20a317edcc72ecffa6aaacaeb1
-DIST firefox-102.13.0esr-lt.xpi 574776 BLAKE2B 13cb2f7a89fa8e43195bf18488cab0355efa5ad8808229e5500125483880e477510319031342eb1d48ef68d9fbcfb99bc6ba24bea55eaf53fd4f20ac332a698f SHA512 bc3d42edd8a0ea2841fbe73253d5a9565e98e969e00d37a2048e4d748de741234e57eb124ccea4e76bad4fadc914065becfd9fba62b862bae4990e6449d19b33
-DIST firefox-102.13.0esr-lv.xpi 479290 BLAKE2B 91736c27deb02921ab0101152b209119ef89552fa2a13731af58b221f8eceff6f29414e3b5376a8b04dcc8851c799e261bcf703a6fb4108a73c9baaccecb40b8 SHA512 91a0267e483bc07930e11164863002b2d0297f3aefb213b1dbf057331721957656bc4d274cc952567ca2ae8005205ef0d40aabe3e4817dce5bdae49df42fa3f4
-DIST firefox-102.13.0esr-mk.xpi 497531 BLAKE2B 8a99121bece3c21c15c4d09e8065654ada217f2571e0e2a126a9898ffa51e1274b9a6727e450ed037bdce6e217f065121fd6d2eb0203d0de324e97ca565822ca SHA512 cc9e93e74d478841eb2dfadc52a5662d23d885f73b497a3a873ce82974ef7529c9ba6f05c15d79bda40f58d76d2e4ba9549109402c5b0e177eaf22665753607f
-DIST firefox-102.13.0esr-mr.xpi 543737 BLAKE2B 69f134decad2ed166642d72e4fc595e1bffe0fa2c39bedd5550cd167b05b38ddba6bc579d28a5428cc0acaabdcc1e9c966ab920eac58960ed886b6c553fdb91b SHA512 41ba465eea9961ed73f995dd3534b6dea98102a886ad8a635c61a0b576270a3b1bc3e5b1228bf818c8cb93dbb707aeb4fd120eaa8bfcaf6eb34c9e8fa8977ac5
-DIST firefox-102.13.0esr-ms.xpi 459034 BLAKE2B 12c49bb9aef8612568ce0ad6c74831063a42626762aa79cef8fcf19cee63280a589cce4989beb6918a2c59fd3a58a8b80f2525d7eed2eaa715095f1a40a93d3a SHA512 367643e27cc0a61f434d4c7e85e073d8c367c0e7b35d672c15c368af147d3659a3e64729e69727cf0de2b9fa416e1ab96119d7eb6633a219648c114eb51a11aa
-DIST firefox-102.13.0esr-my.xpi 529947 BLAKE2B a15ea72ba04c0cf37089f2ffcb0c585ec4602ee83397ba8bc09fac1cab67f6c9859a30152aa02348f2d4d1a57f31448fdf65e5ede9fd6e0005ab339852270fa5 SHA512 955752090ea50e8ddca8dbce3e28760bf01ca5fb9069ac83e422b99e31fbcc903a264a2b6b498d7dcfcb5d8a7f4f5cf0b11630792c01fa61865d777c4349ba37
-DIST firefox-102.13.0esr-nb-NO.xpi 565281 BLAKE2B 6d9992d3904050c1cb38582c3ba974f4457832bf072eb4bc56d50de54f2cfa75c6f165709c35d2961ca4244a1f79b65154221300fab68bd143299644d2948fb9 SHA512 16c3489caacae79975c33da954f113047a901163f7f7f714e8718cfccadb275f37fe8c0dc72d766d984a8efac0dae3409b3cfb35834a479a933ff52007842d11
-DIST firefox-102.13.0esr-ne-NP.xpi 498089 BLAKE2B ca151dcbe141bf1129203d8417f61aa73df7a1e0d9331ee004f5abc4fee8a05348a0e6bf78b806867e3410621a1c6cef439847c19e234581ec3254c4dedb550d SHA512 ea311150ca8bad010fb6bca4d2a556b4e85760219a2005f7bc38b4e55af6f4e8e75a3796751047ec3083e6997ccf74c388d2a105cf3c6bdb3adbfc69c811a097
-DIST firefox-102.13.0esr-nl.xpi 573464 BLAKE2B 72f838c0afe6d20e79acfb7e958e724124d25818a99dcfb192bfae4e56b25c7f236d8ce70338c8d391f1d060e4f04912a67753fff0b5a98d66c0dd2edf80be12 SHA512 d2fd05d5dfc091d766b2f52f82a021ad04beb027c32e15d5a68bad8c7e6ed25f560e3834ec758005d16b28aa7633fa6409030e4edbb9cefc63a92f838c462e5b
-DIST firefox-102.13.0esr-nn-NO.xpi 566170 BLAKE2B 441685aa7a1bcf933167bc714cbaadaf961d592d0d25e0d8864bf52862dcc662170db3ed44e46b4efaac344243acf7a8b79b561aec453e0ab8e916309672e22f SHA512 c91da0dc8cd87e44a4b85c8573f2daafe417b7d367f437aa6eb6a5580f60ded1a149e2cac999581e0cdc6f6a8431e21f4d22bf276205c8cce220389a00f62d3a
-DIST firefox-102.13.0esr-oc.xpi 591128 BLAKE2B 6c1ebb649cf619d0c617b8018ecd4835c112413565d949c3ee32b814bea9eb0a29d02ed90e222b99a3fc7c2907a06f646151551b2212ea29c66f7811e801c80f SHA512 cc92163da7d3f4745106834c35aaa00fd60d0f9e6b82e05f4d7d1f071d41e3ae604d1bf85d223afc13e2a10d9731264fb3c3a45739ffb375ceb0bb683e1e41e5
-DIST firefox-102.13.0esr-pa-IN.xpi 648632 BLAKE2B b76254b20dfc40d5d9848498234de39af71c2c4d088405c060df2116b4ac4d0bd7d4136f24c561b2ef9609c87169bd7d6461cacec04be5b5f51a3946c4ebfb19 SHA512 ce20053da630c4d1e5f74eaba032df89e489c86e0efbae342d20c155d0b696a0d0cee350b1a518a441359e53bdfc425a17e17eb118f854f057014a094aa81405
-DIST firefox-102.13.0esr-pl.xpi 597072 BLAKE2B d63eadd0919f0bc82046032ad66759788d2eebaf54e1a6b712d37d836bcb2fc8cc582e636e2fcf51edcebdc377032a8cec511ff2e070cf3c7b5e809d617858ea SHA512 03aff9d174ceff2f5c0499e659b8df02ccf3522838033eae193c6a1ca631aaa394c74cde6ac16f225a9aabe81cabfc6513ef4d268a1b010b2b96df99c40ff994
-DIST firefox-102.13.0esr-pt-BR.xpi 579015 BLAKE2B 9f3fbb7145b78dc50aee0e28447126b263b73a01332c01bbd316c1bb9a1b881f7fc13a04e287c64c8830bb7046d2d9bc92b389ebe62220c7b191b5d19685c799 SHA512 df9a92289c8e2fd049bb7f7517b5d7582677d7918dd1b7fffb62f2745c7e42e72e76925660c52f2c08999df9bb964c4b1b5bc68b42548decfdd1dff4b0866c49
-DIST firefox-102.13.0esr-pt-PT.xpi 582843 BLAKE2B 9fd80a0fd677588eb6473e8276082edab67620ba0eba04e2047122e70120251028330c13437a7aff8d327a65eb6a581856baf4713303b0fc744dd14d25a95c7f SHA512 0c85939883723b77d854c8ea463f320c62507e00269637d2f598938ce430cfb661ae956bb88b8d2716958e5831355fdcf2cf79fc7735ab2400a47a3d7bb7f9ba
-DIST firefox-102.13.0esr-rm.xpi 571923 BLAKE2B 0c752c2752d481cbeb24c6dffa41a22a32bf83d6207c0b2f92e4723e1702da4daa9cdc7d956f366218130ec2232aacbc25cc333bae40099e50a97c375f27eb67 SHA512 10ca9f1f96af30592f11b49ac16cfa56e7e13ad2f2d2f2a74d965546ce53e7bb372c42739dc244166ac69bd3e1cb3d29202546ecb3c3b8595ffa238b55a746bc
-DIST firefox-102.13.0esr-ro.xpi 541909 BLAKE2B 434ddabaf4dd55fe269e21b3a74b661c301ff212db410ca5e514a03b8b5b798b3b495ed8471270c8304705faa460806c09968836558dd398d95115c1e14f792e SHA512 4b7f028639f2031980b76d9d00054d0d2c3edef981304c14c78487a6357eaa03b83c2fc1829775b760e30bd5eb7955f07ae9c28424b76ed29a78c81d16473427
-DIST firefox-102.13.0esr-ru.xpi 671126 BLAKE2B 435c177d5e11b27b9c5279ef66e68137fc27d8a438cc9c8aefedf031bf34d4ccb74e2ad81ad4470f40223bbafc0e1ea52117e04a033d0244e8c2b6bbc742c386 SHA512 1245c65182ad75bc3521fd548f8232eb72840cc4ee26ea075602f386dd0b2f1b7dbca906d30111ba8942c974a11269032efd3d41d1a48571f37e187824a1c466
-DIST firefox-102.13.0esr-sco.xpi 513230 BLAKE2B 2fe5076baa0ab0f3e3258bcd316991d10e7d11b9959b60aa929379d3941dbb93924b260b67251e9e15db8a36334b53438e1bf49a96d442e39286e1401a5b99d6 SHA512 0bbc72890b6b441167fdf9956f63228eed8a22702962a0448f4127f58e4e70430158a482b1c0915584a0f42ceb6badcea5a526bb9da50434f0377895f7ec12d8
-DIST firefox-102.13.0esr-si.xpi 585620 BLAKE2B 14841bd64d53b194da89d354077965448bb2edfdc3497e7b8a3af1a63541bb55966f2f7563e62d3e8b1753da653d66bf0ad378e78d8493ad3d1fb8c1a10e8e0d SHA512 fbe2124d3891140a7974ef741c17e5f97e6003e0708110cd9f447a45cb3714ebb0ab4b56fb10d6cd7bd63a104edb05f48c1387af62cf048ac4271a27cc4114df
-DIST firefox-102.13.0esr-sk.xpi 606118 BLAKE2B 3f463fd09669bec9d2dfa50f8c14ee1cfd91e2147dab9739b18acf3105787fee5bb34a49cd58dc2d80fb362801605d603b4ababe5a734b63df8d12c3ff30b1e5 SHA512 13e2092144583d62305985d1be9d42cf1eb7ba2892100a840b25b8ef6d5f1702fcf236cc4e935bb698729810ab0aefd49021fb6879fe6df5afe968c46ca1d159
-DIST firefox-102.13.0esr-sl.xpi 577356 BLAKE2B 311c2c1475d6ec9758e7000d67d0d78c6446be64e017021e659042af57bdcffdf8d1617a298d05ef29d1032aec38097dbe891dd1e3795b637913994660ddfa88 SHA512 ea90a4f64efffdcb4ba7179249b34066651e56902137064c36a8ea562e8ebb127d2f7af36649e265cc021c8c23f73f91712eb1b49294da78133796fac80d1d8e
-DIST firefox-102.13.0esr-son.xpi 433051 BLAKE2B 5927332ad4e9561ff0abe66feb1ea754644bd732be60d3e5e40d2603ab0acb2b4c67fc6e09f41a71cb01a7063baaf6267a7350c1675c743257a5a8f495eb08bf SHA512 01eaecba48bbd344118e63a8b71af94d8e3f77e7626b8e823e30eb22b079662beba6e895e5c4c9ffcc49bc6147390380928f6778fce709519f7cfbfe7ece29e9
-DIST firefox-102.13.0esr-sq.xpi 593404 BLAKE2B b31abac33d641e5d3f8e32ede28a7a8cf91362590e3e4d6c8e0486e1fc2fdb1701e0cd5c8da593db8eafb9d3a1d4349611bd41a2f31fd5a088223ba9c25a8275 SHA512 b7c8099caafab1e8a7948cecde771603866394b6b57efea9aa8df2ab819c6e1b61ce414db18cfde47c290e9fc0abd61baee69dc25979b758f5613fa2c45fbaf8
-DIST firefox-102.13.0esr-sr.xpi 635148 BLAKE2B fbe79be2e1c8050aa2725fbf18708a0df0d153412f5800a90360a3e6840f364d459bd9e91d3f4256aba45f37106b37f088f85ee0a03f8e06ea8d26c19f09adf1 SHA512 32a88e056346c654846d85d82a03e520150f782f715b70d31e3d38411699d75173578ccfa7fbb30f7bd419f5f944a877818818ac789111b12089125b9bc427e1
-DIST firefox-102.13.0esr-sv-SE.xpi 576038 BLAKE2B d46e56d6118a96d77ff5d4db3c49812b5568ce43e0282138f7ef044481c991dd489f57aadfa35bc1258e76e7409ff9b0af315e77045c444dab1586fc2d147f5f SHA512 bc3cbf083bba7a572174fbb3f1119f9e1b58ec86e9bfc028590f00861bbe6982e3fbfe15e37f46ee7acf752121674be609c657f66238a978c1b5e967222c2225
-DIST firefox-102.13.0esr-szl.xpi 527106 BLAKE2B ee1b140f53bd7a1410561c32eaf87a143225eb7b4936903c14104cd2e8b8bea3795e04b29dba8d78c3e526b60a4bc79b5f5f88fb757ecd45b821a560ae79e2e8 SHA512 a5216cf3481dfb59d5c63a8853a9f4699fc010d3f6782916d25d33ebd44697308739cb2a7ce8d2845a2ec668ffb3de6bdb28402c8184a1df5909bd30a0870bdb
-DIST firefox-102.13.0esr-ta.xpi 522083 BLAKE2B ed490e7c1906c2afb0b465bd4216f50b7812261eddae13c5fafee24718b2dc4e11cb73d2ede8d63320522f2bca03ff3b4b759a3eafaa4431b900a107c4c64ae1 SHA512 a064ea37c0602d202a0e095a4b3dd2c2baf5361e3f1dcd1b3bf85e546b91876a732fc02d10fad208da4fe80ad56fb5a3328cdae1aaa87ab6c01397ab6a102f07
-DIST firefox-102.13.0esr-te.xpi 568454 BLAKE2B d461bab0750f6ec8e8cb2bf91564bd5d79ac66bc53e6eb5ae5fd503b7e87701130309d9ad7254ccfe8efcc2d1bc267458c910f6eb787ece41d87520976deb52a SHA512 a0a123d09b1dcf75ad267afa4cf7ddd4e188f9e6260d2c9644113829b802d120a876ba76493d65bfe919d164ca3e3f9f169794b89c80fd5cf8c14b74a157c5a5
-DIST firefox-102.13.0esr-th.xpi 649490 BLAKE2B 9d0ea58bcbdc25c6cd84659aaf77a3adc612d643deb8f0bc1cb80966e9cecc91af0f8e0882669cc4a7948a5b719be6b184e728b3c67bc7bac04cacd055826c6e SHA512 ab7735483703640cb24226e8ba20ccf384661930f3339ad61916574870db8855566759ac75784e9896a5a23653252a0c31006c640180e3814318500f90efb875
-DIST firefox-102.13.0esr-tl.xpi 532366 BLAKE2B b439041651966ac4dcaa2185882fc3e94c878b0157130ab6cd2b3fcbb19c7e53c1831d7ded61c0f9584445c0e02222a569a596159f0dafb60a835394e6c6a9ee SHA512 ae98f8005fa86a1c7b3ac6ebf5e2b55d994a5d0b71d9501682f2fb9f6305df1a6e0b9e805fa369f1cec37e56afb913947a7d0c07584ce28b30ec7080ad83d33a
-DIST firefox-102.13.0esr-tr.xpi 590502 BLAKE2B 9d2e21420cae669a3d94548c96c67fe3cf105102eded11fe7aff3c43cd7404798cb7409411e37a40d1b291efbfbacf711efcd1596d72aae08d50359bb8fa3b36 SHA512 03f3ce4dd9b50618322a5f6e85fe920b4c9bf996839188642569298ea77bf60eb93a6b185cc375a4556dd4056ccabb72e37b32a4492bc4126a92f7173c142e00
-DIST firefox-102.13.0esr-trs.xpi 497373 BLAKE2B 5381e6065c8bfe50675056648cb216ec4ad1958355cf0815ec89369fc573c3e197b3ed259a206f71e5ad0773f06ad1c786b6290b68e7981bef728aca1037492c SHA512 ff7ad879808f9e298ecb898249ba9eeeddc59e96025592241344fe65e8985b624238783738e4d59b98eed835f5be2008eb834c85005b1cbac8bf4d2f9c164891
-DIST firefox-102.13.0esr-uk.xpi 664324 BLAKE2B 32adfaac5b789abec45c51a7cb6291d1edc224ec1c0e55c4437c575dc0d1994352e6e286a2b2f2f8a52a48818056f56f97e0a26bb3903b8e613ab2d72b6a6266 SHA512 f7f52a85499801ff1e10aa63980204f4bf16bad178aaf1aa760793a40c2b8822c4bf99cf62918f5444eef8013b17e985bb7cd1a8801885ac91613863c1744bdb
-DIST firefox-102.13.0esr-ur.xpi 569913 BLAKE2B ecec685a6c6d78e779ece62adbc33fc4421212d31dab1007522c65a1dc481707b2f05c5d88f5e46c2ef27dc59959051a48bd1d86c45019fb7f3db9614ab100d0 SHA512 9fb9bc6634e42bf07bd5298b47118cb9b87843723cd3b0790f1baa432feee25c77b7fa12ed02d2c1f04669a49ce41b5322be513fe83162ce21e60f1a2a4f7d98
-DIST firefox-102.13.0esr-uz.xpi 488871 BLAKE2B 39c5675c79fddae35b2733ea632dd4ea96fa00d93a4e8e349b956c7b5ae3e719ca17fd98ad330e780154ef6b25e9b639579f3d8e272202375a563fa1fe9a203f SHA512 9e8c8688d2c702d7185fc352b443f97f85297744baef82f6a715e3c8f607dbffbf6844c947fd4a6c7771b9af3a18d571a3cb58fef3d2629072ba95a3c437c862
-DIST firefox-102.13.0esr-vi.xpi 611417 BLAKE2B e67df605c3f3a94f34d82c87df46d25ccca1ca326212bd55c36cf7a1d385fcdb3c71ce5711c880a1160118321314aa3204154985fb1307ef1c172611bbac278d SHA512 79b3935fca5a1ac77947e0595a9c34e9ca339caba2f6ae7b25f400c749a7df5070fb28c9a7480eeb657adea8140ae8f8903908ac64331aafe20ef6cb9fdeb7cd
-DIST firefox-102.13.0esr-xh.xpi 427930 BLAKE2B e7c691d36360e7d6353bf0e183cc08b64b0f7758411e37c7b5324511236f4f55957ee2120b6d2a7e11cef779af4927ccb535f2a052d3def6c108b76dc984cd39 SHA512 721c3b68e7af4712230f9be29222c73b9380907778ca7af2e26e0886fee583b4c01508aaada6cbf622b7d72184a18b7cb2f623f7e41917642757d908734f47d4
-DIST firefox-102.13.0esr-zh-CN.xpi 613299 BLAKE2B 315e07eb480c9374e5d9dbd963f72f750757fac9aafd902e47b77fc0d8707c72f509b0aa420a40dfa2edd94f873d965265d12f949338c753df367e154938ac0c SHA512 4c1baaabda6bbf5d06476d49aad5b000410b0af71b81140aae3f6e5d6299427b99b1d1e60075f05b95a430f10cf5e55932a6c071704e61831fb596bd60c900c1
-DIST firefox-102.13.0esr-zh-TW.xpi 614569 BLAKE2B 68fdce9b0ece08978f8d514451a86a562e5d0cd7d9f0d1d99396013ec408eb6996206e8cbae4ebeba9be992da8b15b74076e875a05fa8a01d5bd1fe8471a0ac8 SHA512 70fd7d18b6662a328c8b1503adf27b42c9cd515a07eae325d56325aa459a5af84222779311d9162974b5763469e5c3e28c27833b72ca8155bfedf6d81d4315e4
-DIST firefox-102.13.0esr.source.tar.xz 485854020 BLAKE2B c835146f8eb5d45bcc5eebb5a510cc1b0b1f36ad7b47ed10eed743e9fddc2555f3458f19ab75ed12a510e896be727bf2bbee8521af439f323c48d8c1bbd82499 SHA512 745f4a77e4c898313f11118274d27513f4baa16bb42d5b71d9bd0dbe8957dbf39a5f7ae8442cd711aca9b597bc909c04b44cb8d9094c57aa34e285e64f834fde
DIST firefox-102.14.0esr-ach.xpi 466433 BLAKE2B bd682624a9cf6e451907d7e11c128722be65da2e0ab5f4529c30f4b849cb16ea33ddf8e4ab5d6b8d9d529cb46ed8291302f26d525ebe8190b7a0e94f4a365f48 SHA512 e5e3c885c1be4048ae941d9ef24dfdaf5b82a058457e8beecc77d2029f19d909c16d3f82667a596ff4a27b48dda5de41190907ada6ad994ed17d3376ec2d9970
DIST firefox-102.14.0esr-af.xpi 429124 BLAKE2B 404be6ec12701a5f406a3636d58c4c022c26c00f8840f57387cd95d7cfc9cb0b55eb56a0a7af10a586d9bbde034cbe3cec24cec91ce7592d28dcf59d45085a06 SHA512 2d6d1ca753dc296f7303869db747628cd86d3265f5c7863e1db1b9ba20800142c2a1a7d099d4d85dd89f3f5882908c72e3d9451e55780815babf6c805b6cb20b
DIST firefox-102.14.0esr-an.xpi 510495 BLAKE2B 7f4101590728fb91d42e05153cab4e38e671cab879d1f3fb712fba7226ea38682dba81f08df17e1f7bba63b6502edea079a19c78feea7cd3c12d991711f30ebe SHA512 3b0d61d918d77ccd0c9a8d9c929dd24b8268489e45337079ec68cb01f887962b27422d61312e61a4a88c9d85abb666f9277492e17eded36743006825321b2814
@@ -296,107 +198,7 @@ DIST firefox-115.1.0esr-zh-CN.xpi 595483 BLAKE2B 51a3408f8119f025ca8b68cb64a180a
DIST firefox-115.1.0esr-zh-TW.xpi 597818 BLAKE2B e56d1306d9a0ca2638d6ff3ef5c8553e5aba87625ac00b12a492ea98738dea3e12477fbf668535182743c9096d40f645a92f7c69bf47dd9dcfbe06b0ce98492b SHA512 8e9c3ad02d885c080ade555db078ad9c714fe5da6cb44320cc12ec508e5e1060da7e2990de4f3bcd3782f77c83d965c4664af8b228b3d9222cad8563a85f3f75
DIST firefox-115.1.0esr.source.tar.xz 507060904 BLAKE2B 4da0535e05e193d0d7509790f3a6b0f8dd4dd809bdfab14da357ef06ce2b665d89a5620994393d6bdbe6a8fba1db55157063b7760fdd2e75f2bddca86f9992b4 SHA512 b2abb706fef2f1aa9451e7ac7c2affa0cc92cf2b0c6629f106a94c62017476380c7b6f406861fa468f60ea898d8402f534ad74844eb3932741fbd981cec66592
DIST firefox-115esr-patches-04.tar.xz 14608 BLAKE2B 78143b2ed2f0c71bef84c26ebbb9f29912e6d8bb2f513cf95f5d97203efb556cb339bbb1f61666300786eb5b1f93294816481a0396bd8acc497c9f51b138376a SHA512 f6b07b9f94a79c766b864c4f73044dfd6aea5faf16e742202ca78f4f6e0399a71fc3dcf4d40d4dd67d3f13612c26a5e1a5f845e6892901c0ee6168aabf131f79
-DIST firefox-116-patches-03.tar.xz 24768 BLAKE2B b62547c1ca9230bf1f6a0474743e695c8e6f4cbcc7d2d23ee983a95ff38af4483881a59f90cf0035660a223457dede19c984f4c5bda2528a23dd2d7d25b5b22b SHA512 f69eafd5a0f07a91baaaeb141a2110077e627f3e3d34db69e9fd45de9044ce8e84dd183920799cb2714ab74acafe159c7275b85b4f778b4502fb2bcaecefa175
DIST firefox-116-patches-04.tar.xz 28448 BLAKE2B 542af3d9dfd02a7d89157afd66e13984f7e4c3073eb560eb76872eccb183cc61f46b8304dabc24218693016eb94c4050e4042f9dd48471a900fdda2ec1545ef0 SHA512 61653fd8cdd9815c5c3c95b9ca45655822d318e81cad2c45cd166c5fab88ec1c6232ed3b54bd47b6bbd0971f5be9c9025947bdf4d46b97598005d503262bc383
-DIST firefox-116.0-ach.xpi 440323 BLAKE2B 56d55907cde8e61f0be7c4e880d9548e0f9660f465d33fb61afaa50d1b440bdec76a9a6091885edb58677335941c3755f240c99a0937113003c7ec07a2306695 SHA512 7672d3ab4f5fb6adc14830ac99d3e704b3391e392ce6af3e97375ada2ad675caf5ea1d0b42d311e3fc0a1628ada8c76284d38aeed74c89aee05cbc4c29e3502c
-DIST firefox-116.0-af.xpi 401616 BLAKE2B 9115ce0800aefdb2184556fb92f3a1ee28ab82dc0c77c8b913ca7933253a4ab7f478016ac38e063c20479235a8341fcae4bdd35eac713d0720b4343dd862e59c SHA512 4e8569dac354d5b899cd7e38552d5281045bf2b2dbd7dcd8861d5a48169aef8e0a9b12a251f976006d8833a23d32391adeee27986de6d3eddd101001ea6dbf88
-DIST firefox-116.0-an.xpi 482309 BLAKE2B aeeff77edd86406fbb613696043dfbd080bf1ccb8717ee9d1fe65f338dd26d251a9417b4c5461a9466c905cad888dca03761e123a409f87257a0d6bfea32fa92 SHA512 b79674baccdb978697993c403f1a4ab514e570829962159443a351982e360d62ddb91575dc4eecdda8755623746fc82f916286b8ce3f002be2e78f058e8e1205
-DIST firefox-116.0-ar.xpi 549032 BLAKE2B 97a8756e56dcab186000e47ed0d116ff0467dae59137314974ae3ed32ddefbec2b7f2d464707b34fc6df3b79a28c4fe8996d5a160c9a17097e4c97882c2f8035 SHA512 da07a5236ed41e65175f39ad3ac22ced839dbc97f1fa573745798b92693cc78984a6fd798c78b75b42251df71f8fb3e5f74c7055469f5a8c38d29f6ecf10038b
-DIST firefox-116.0-ast.xpi 476782 BLAKE2B a00b6d28761d907295f41a219a1e08d82fd2e2e04efb708b8c87a76d9cc5dbd637eed557d6d8df6e332b1e7ea030b710ab6463b7423ffdd340e57c0b6ede101e SHA512 2b2ebf06bee28faace4e0e4c17ef1f9181f3f65501ee64354831c70e44da221af4b49ba5f48d4c7c6ba2cd3c4de3b787daded079ecb556e571224240db312cbf
-DIST firefox-116.0-az.xpi 470089 BLAKE2B 6b788d4d9ed92a7dc75817060c93198ec381a01ad8f9e9844990488e58f8a60b35538f170a7627fc252ee419b64accd21fb0ad27ffe52acff4049ae52a679308 SHA512 93a6f57459e67abc09891be7735f864691cae9463e2d7aeca03390488e18663f43c1a7a3c00faf64359bae84728b919eecaab1d547f42baab64fe9ea65fa2eed
-DIST firefox-116.0-be.xpi 647165 BLAKE2B 5c1ee6ab6725b2039577c6b3f0e90ba9371eb057fa351772265b51e30a76c7e0947e19a538ccc246b318232d54fa0fa01941a8f2e51ded78b3af026c7870c8d3 SHA512 9bcf8b91560bc74209802db699e45ab9c1fb6fbb95656fd2ca9120e5e2dee546f8d35556afd51cdb1ecae8cfbb08b881b01b60cd865fc4fb3e5467e9cc047f44
-DIST firefox-116.0-bg.xpi 563684 BLAKE2B deb427524cda4bc765e94501adfb39d8c4303237894bbac2667a0245b411f2aeb42a6df73d44f21de82e11a82b1f5b3d90310ecab5d680e5614ddf5b76ca6bb5 SHA512 bc24d78825fa4a2a7334d9739ff00a03ced53cd95a88d9a1036d43249f8a7eaa08ead02b30b87ad8919a77c5754a1870a6422eef82fdfaef1f5d2b647727589a
-DIST firefox-116.0-bn.xpi 557959 BLAKE2B d0199f998847428dd8b8637db286ec0e7daa2103bffa533a99516392191d7b2f223be99f6672ba0d7afb0b35ed8f03387505cddf9ffdabd7d9e242e802f5e3d3 SHA512 0a85eb78670f5329638726e5f4cc1c383b33df6c39724adc08c55573244817e2678feb163b6a7ed73bd0bf9270ba925492a4b1e3fa3ca7148fc66342af03d64e
-DIST firefox-116.0-br.xpi 533891 BLAKE2B 37d5281b5f90105968d58e759d5d2ad179275d2579e1e9f74c1ab94e75f7b5ad90686f4ae6925685f66d3dc17f36caf748f59ff5c9fa3f59963c8aa85061a881 SHA512 10f42dfe15516d91a4bbae3dd3929f57cd656fd69f19ab7b709ea43aceb3ab49479c8d72499ca3e16aba99dc66ffa8a4d1ad7fae29fe4ee530f0d5892bac5240
-DIST firefox-116.0-bs.xpi 440590 BLAKE2B 0cde4af28b8eff82118dee4eee2d32d94f29d2355dfe813482ead547292303dbc01415ef50af0f397e58aa8d5c46a28c1c3eaf51c224dd4ceca67863a23cc450 SHA512 760c00ec13ebd6e9f148709d60281ad9d26c743249317ce56846b21002c5be5166362f9536682881af5ab32b9588fdab991c8381e0456b11c6347cfcc4a04b33
-DIST firefox-116.0-ca-valencia.xpi 521443 BLAKE2B edabca1c8346dd4f4754203e1b4989e740137f140ebd7675bef0d5972dd62a87b9e6f003c7ea58df99da3aa7cc61836ee40de08b5c7661803c5fbb4bf234ec4e SHA512 e2fc82c11b0838ca0372cec6c43df971867c03f3835ec317bffca6a679d12e38244c2dbe2e0581f97a193d40634fcd14d1764ca7aab0cf2c7e75ab49460f18c9
-DIST firefox-116.0-ca.xpi 544947 BLAKE2B 68a808e69c5732cfc65d0611256b015497c7a976782247140165e2276d47eef1f5b49da6a5e4b427272e15a631988db64cc7dc1324eed987776cef2ca8624ebb SHA512 145ebfb04ef0120a4d1db90992b8800595c0d86d4c32cf267e35737d189bd2dc1e5ed8c0c1dda81c77edc4209fe36d8c06f06dea8763cb124f68ce86d633ab50
-DIST firefox-116.0-cak.xpi 564108 BLAKE2B 18f8c59f6cae941ee7b6ff325cc0da958e2b377e0e7a4a30bfb13e99241949e3f8a07fe2ebd7707ae999cbb60b2e5efe467b57d8d544ec7c34f44e7f3b73e8a1 SHA512 b983e03cc8ea78b74242be1f1515a7fe97d91286f0f5bf9ba91863bebcccdec9fb706a298e6a8260689725f62b25b65d724959609d34436a7561c2af04384d58
-DIST firefox-116.0-cs.xpi 592432 BLAKE2B 624f8e0efafe1020d1f48095e1520ae1ebb83a7162573b65cf4cc1934b045f3ebffb2bca160934c70bc77373a95dc41762cafec97f0dedb53544a9ee9bbe4848 SHA512 bef9d4fc95791369094ddd5abb858cc7289b6f94eea6ddce378b1656e853939bcf5bed8aad1ba13532287c3f8be35078896e68f6cde30fc814f7d6e23dd2acf1
-DIST firefox-116.0-cy.xpi 565915 BLAKE2B 1a038d68ebe4f3b662000892dd5efbfd522360edfe5084174a16c5742785fcf4a4e320faa0800b80e57157869cbcff8174167ff81721686ce5f298ac14300f01 SHA512 b4421d39c5a18ae57be9db3d0a0f68b94128698f854eda4f89d6ab0baede480b49c4ef7c8ffac7cccedd2ce66af51d1cf2549ccf3f635dce43b46c53b505611c
-DIST firefox-116.0-da.xpi 553373 BLAKE2B 51403dbd1304009bc13901d2d76ad4e953b206537c3e5ec405edaf1a3cbd5703cd628e77d3af46881a0c406102c5cd6b394681d195b652ce430e497b4ef89890 SHA512 71b65b7eac4736bf6dc2a2e7668474d45cef0d4603a4a75a621ac987add7fb0c1936655722828054d34a9fd6a12ccd45c6b5406bbce0302e9c62fdfc5f62ff94
-DIST firefox-116.0-de.xpi 574197 BLAKE2B 8f12bfe07d567d8cebe8dbf8ca76cc1f274da26fff15ab4aee797501d605a4cb2a10344cd41ee977118f6b72aa0d30452caf8a89432da0a83c734b9bac12fe4d SHA512 b5acb569b5f23a5380b7ae6a2bf6f1a086b4f022b7f01ff18bcbe90748ffe5c1ced334737d4cf09b9804c01173e63f43082339f89369fa6db9ec1d18b69163e5
-DIST firefox-116.0-dsb.xpi 589675 BLAKE2B 11bb209ca73c286b733416b24823f8139b9046549b3ed7950865ab46a37e20226107d45e6767f7a78362734aceee115ce2737e0691e7795715acca798d579aa9 SHA512 fc003dceda0b1fcea9d9a8dcd9e79724ed91b1dee97403cffaf2e2f2cc19cf7a9af3061bcd2190ea55ffba076ab1caf363c597238894fc75645f817a9b359345
-DIST firefox-116.0-el.xpi 663124 BLAKE2B 113852948b65eda6f5cc25c0a5b053c477fea4998eb0c870b95d48850878f6dbde477cef70b6f2ab774d1fe28e53ca115e1d1e20b7d3b0918219660f6a130366 SHA512 765708bd104ea642e1607941331e50f37896b2bcb9785d4b5338ca5f7dc4cd96c6ad14fb1b1e4ea9a6a4a4ccecde2b04a1a1c95bc08f0a737759a358165575ef
-DIST firefox-116.0-en-CA.xpi 518974 BLAKE2B 5f38b03c4dc7721559eada3bf7745b13b64e8ceaa83941d5ff26fa0d8b58761c2abf6ae85b9a33c3cb18dd02ee6ca3134b68c316e6600073105a832dd8c1bfed SHA512 bfa610a3837c436a262a463dbecc7b0201062d2da1aff71e24f262f88affb9e349760a15af4e46961d5789dd42fb70206a6f6b2436ad23494733ac7e0cf69f69
-DIST firefox-116.0-en-GB.xpi 531550 BLAKE2B 196bdea697fde01080aee8b9ae380c0270c158fc177bf02907bb73fe13c8a9fc65b4c5819adacf238faf5a5d9c467d43ebb52cc2530a7eb90b1f6c096992adc6 SHA512 64af7ed062c3f4b042ef42af63613ac00352c2091206381e6db35de4ef4d4ddb7f823ac41cb12b61d79824cf3a29ae4ccc501e0d0f24dab079872e990a560ae6
-DIST firefox-116.0-eo.xpi 555850 BLAKE2B 11c9f9ffd1977f6533dc664c9b3d1840c9bd9fabb798971e5555e58c0e3ef4218a7f154bf7e93501308e8e54ebd6158bcd3ac0ab3152790b093cda2a5d8ddc6a SHA512 a3e77db74c82d17f3079c01d128f9dc3085b88b51c4166ddfd5394206c9b558bd29ad8aad4c93fb58acf0d32156ce90b83127766709f33b206e5bfaa07d4e87f
-DIST firefox-116.0-es-AR.xpi 569189 BLAKE2B eb703beb58208343de2560d869c3f5db1ddcf9924f68fa70ebff847a19ffb9f591dfce0375fdabd47cec74842bcb2d4f84e649c4c4029bec223ea5ac9653bfdf SHA512 bd59ba74d449f9ffe1fa0b5df93cb39fd27eb60f22a436b1914225babc1eb5af011cb7d53835a1da3af33d9dd190f9d78678a51773b7dfc95d5185657b291489
-DIST firefox-116.0-es-CL.xpi 568868 BLAKE2B 3a9973ce147b7c281ba1e37b4e49e1eebcc0a42df7fa21ac7ec8f529b688eaad39d20333b4774c4322c10c9f643d3a798cfa0d76bfc2aa8060249983bf47b6cd SHA512 c53096731f6b2cfb4fa50c0446e850d8c3cdf2d5574cf7aca2bcb16526cf2f6b5fb87d69e24d759d96e3e5d8edbfb3969d01eee3b23b181cb5f1d33a42b63648
-DIST firefox-116.0-es-ES.xpi 561405 BLAKE2B 61772ac717bac91f87e82013f888a8f941b3fc5afa443a45dd86cb3a9f5bfa8b73ba39ed6d10f0402ed9244b5fcc7453d4fc503f32e337fb735431095b09c321 SHA512 a2ff7c6fe8f8f201720206c96cb2d485b2a5a66806f1dd6193b005dca52cfc6bb9ed194b947369e231597089213ed5b3e54f5dd32ab3f762e8aa60349041679a
-DIST firefox-116.0-es-MX.xpi 564991 BLAKE2B 88266eb4eea91f87daca458c21ae74b7540ded1deb35b7bb7b483d9e8cdc68c255940dccec7295c62d500847043d5ba89ac44098bdec4b2d5e2a37479b59bb04 SHA512 0ca84f06e62b81b13fed79fefeae5425ff30a45f9602396f083a4af1201297e6f76eee29854941d772de72e2240b23e7595754683d97562972855fa6e28b70a8
-DIST firefox-116.0-et.xpi 515646 BLAKE2B 819cfe7ae95bef3ae0b8ba8aecda8966651dd7ea5fb5b98c2c8bb55551c66d3e010ff4ac6a616270965b2102938d66c9afd8dffe26d7312870a17b0abf799da2 SHA512 b7fe6cab23acad6a88182d2196b19d9009f2978f449a9c2174661d6d7955a19318a2299db9986e68a551393aa553359c8d8a826eb8123b0d7c303abc3454c4e9
-DIST firefox-116.0-eu.xpi 551061 BLAKE2B 6fc5c9ea7b0952f05ff38146b2b0df77247efdd86753303492c45f9e8e19561a692261c57336e2311aa95cae345b27000b7665dbee953bf1c27343ba0c55bf42 SHA512 75b69d62fb6a9d170b910136683e0223e6665f163379752a984388b72c57786e7a415e2b28155fdfe3359d16f292e6c127b80e09d25cd039637d2d415476b4bb
-DIST firefox-116.0-fa.xpi 563997 BLAKE2B e6272f3ed62965cdf3870ab806043a758c7a928e4cbc8b1e0797a3c2eacc3935e3c80059b0276d92c7902045b2a500cde00575e30b41db5b79c9174f5bcf6992 SHA512 d5086ab29bb409ff3ad9cb94326fd0277a18297fe1267aac1b4f88827aac3daef9d7adf1d4e7eb7cbad41749b89dc74834bbca98549c9f1419b1a8660a09b093
-DIST firefox-116.0-ff.xpi 456416 BLAKE2B 577e263066e449babe057e66af801588a8ec0d7304db261448a2ace649babf791a1b5ebff73f3dd25f23dd8c73fd525866a796884f47244951efbe46551869fd SHA512 96814943c647ad53c343baa60b849b96458fa3276d4553388f45f8c684259ac4c3f7578546d9afe71cbfb0e320585d88d6acb772b00cf23dfc858e4dc4841144
-DIST firefox-116.0-fi.xpi 552857 BLAKE2B b75fed64129e8f337a4d15eecd24965d5759b4b42f9d71b2677698bd404ceddd1200993b5f58d04012890d8cd70e421600b11179734f98c8eb69e309dbb01ed7 SHA512 d5f0abc088cdd78c3441681ac79b56a9c95a9fc99b327aaeff0488a8287dd498d1fb3463bba2404a0c63d82b72ea686da0b75e92b0a6a65fb7e072d97f410942
-DIST firefox-116.0-fr.xpi 580219 BLAKE2B 285c10388e5f2daeb9a319f8a9e81ec479dc32818e21d4daafd8a1db3100f8f43f13fdb6446ebb7fc10f211480d99ad4f849531f70067499af1f2bc27220357a SHA512 ab8bb23081d9ae9065d7773cbd180e1037fbbd3e4655b9a687f57aa44edb4794d0c540403df5b0c1595a783ae913fdf931c7cfcf1159439620d7a9068acf1d84
-DIST firefox-116.0-fur.xpi 574349 BLAKE2B e75e6878773376a68568166492d5acd0fe7d8f5bd94a27e1b4b4981bbe3746a27ecfe2a3db3b365d1ed2dac61b24bcbc8a7d581e6395d905e0499b86afda1848 SHA512 bb59f3ad3f4d52c0734b3e7ee2e6b09760eaeaa44449dc372b1ceaf2f7136eeb2e047b2484e7928f95d41eac01d374be8348c4ae24ec7f0f5cbfce5c48f84ec8
-DIST firefox-116.0-fy-NL.xpi 564297 BLAKE2B 018fd4411422beef301cb26974448a47a6478b1caf7d736729d1f91296ad88cc6441da115a972cc7e2764ac4a64cf5f5ad2b5e047abfc67b8458b5adfd3447bd SHA512 79805b9c13711bafd8cd937da32ff5ea522265faab16ac9d9e877d8ce7e74ff99229f0e9e0e2c1223eb831f74b1201d65361f9748a33ef514b90106ae4691ad4
-DIST firefox-116.0-ga-IE.xpi 453552 BLAKE2B 0d0e6771b099974625d5a46872a5da1c9e7ef4b10d97ec687a71db3d9c36b748f386d140ef8d743863fd0303a5a42adaf3cb84f8c077c7621e272052dbee59c2 SHA512 4de236f12ef883cdb6973ddc710a034f6c2f77018f84757a82bb53d9abffcd245f09221ad507df6ae535897a20b5e5f44557d80131f2deb3d18fb6e853307875
-DIST firefox-116.0-gd.xpi 566659 BLAKE2B dc8992d5f368c0dd4a20f2099e82b963fc65f86a39f3fddbdb82e88f7258e822e6110ac12fa2845016b7992c117e883899f219ddc9b8bd6f7d1e8397484ebe40 SHA512 64f82f4901d9206dd5ae1e668e7be7d2c961c222b477dafa584c456383ec26010df6dd84792660ace9c1076d3ba0722f360d4c09def314ba660ad5086ff165f3
-DIST firefox-116.0-gl.xpi 565967 BLAKE2B a8fc484de0324295fd4251fd42e4227e9df74d1ac553083cc2a97ae55d35b8e0f60cb34b0ba26ceedbd421f316917142aa2958e8a4549e1737f872e7c27e4d22 SHA512 1620e1a5acda04f4532e6396188d678cb55220f3825df3c860e293fa914a91f6da304ee51dcb43c35cd40926486674afaaf5d400a682c5e928230b7f1af31589
-DIST firefox-116.0-gn.xpi 578267 BLAKE2B 386d5dedb995c46acb352ea05b3af1b888b78d8e2173648e10cf7710f5e42bb8d1f068be0ce97af1ccd11c197b610fad41a444189624c1fbe1287da6ff6e9ff9 SHA512 a67552989404f3107312b1d21a35dadcdd9e113f0d39ae8ee9af9f2be7c65ab216d39a626057eb62d3b383a1d2f1df69ca860291d73db31c76c406c4e6bf9e21
-DIST firefox-116.0-gu-IN.xpi 506021 BLAKE2B d7f69682252810db5835ae92ae224ac4383283a009ebda66a079ba447bc5bb779e314b0b1335b91c5ecd865d2808adece7a2e5c2df218c605194573865b44511 SHA512 d19d03f2ee8a4c0b436a8059de653cfb72897991dce0ce7d6e460d081c5edb62ca5883ad737e99ca74320ff152abbfe04024f7f2c356834b3e4e587cafb11e13
-DIST firefox-116.0-he.xpi 575333 BLAKE2B 823e6416cdfbdaf2402603ffe5c7516f27254b058575d4f188786436a59f3ca95d513f688958079fdf3742eea6c2d57afc632e9bb4a90c2bd563c1e4ce686c54 SHA512 91a790b58832e387339793fa9a04db5bb16127e808445f71010269998fcdf53d3896c80aff683c43ab7255d18fe84a0ac1f07c2e077302a16d967c83d2f3b792
-DIST firefox-116.0-hi-IN.xpi 538287 BLAKE2B d57447e9567265f8516e2b4f1606e3550d26d8f85007aaff5e8b2ca23d88d65d31b3b861bd68f94abb6283be620766646c214d4bd6ca6fcf0534f5ad2ac72bf0 SHA512 cd7ec011da0be8519de000eb0c53442c2af8c0eeb489e8e56450bc69d9109aa516e17c0d251240a81c4a27e4cc5747ffadb05e0793002b9511499c8ddc9ee1f0
-DIST firefox-116.0-hr.xpi 531474 BLAKE2B 8af41ea8501d1899dfa24800f7666a9b89aefc279ca12f5ac9e027d6c87baa9746af44f7090c971efa443958f0f526d25a003c40ab7f1347e5585bc394402dde SHA512 bcd80c65e36f9090c58e23c4b8d2f2ca536787796f33a2268150524770fd20d3f8b6c4aedc35bcc1bdfd157b457016eba2df66401e5196c7911d6ac9481dfd80
-DIST firefox-116.0-hsb.xpi 585853 BLAKE2B b2dc7bb5d55eb9a4d748bb19816197531cf51832690384d44381b963366aef35a8390acb096b31e9927014f064146ed17379ad892fe7d425b92162e996dcf0ba SHA512 8d88b657fea257a5b13bfd3da8fbfc5f523f36146d720da9fbadcf7049cbc025755e90a98a21d6d7191c269019d15f0fd191f422e07cef689463f4147c771384
-DIST firefox-116.0-hu.xpi 588333 BLAKE2B 1b8befa1169ffebfd0c9519741877632d05ea8295646d7d8f500f76257119ec7ffd1656a5cc764f2d8f8925246ca8355e5ec9260a3917634eab8725f8ad30241 SHA512 abfa9ff75a7dd877d367bc6fa9e1e34ab06d04d4513ba66fe30731598ed81be58733636b6b189f8bb9f6332db862e197bdd842a21fd0e15857ddf2f3736f08ed
-DIST firefox-116.0-hy-AM.xpi 578713 BLAKE2B b72d275f4a5f7f8eba5b9d841c2fa29445d49bd6f3e0152d81d10b684cd2cfdf05589c4e36e88c62ea36e43c1dba0cdce1548d3dafb3d1c20cf06e6c5733db11 SHA512 fe0fa6751ed1bb500f2633d94484cd5a4a286720d32b0317e9bdf9af500db0c0f86ac117ac5ff3d26d6eab0872ba20f5e2fc4cfab738793059454d8341b45ac9
-DIST firefox-116.0-ia.xpi 552437 BLAKE2B 868b651f26dc0e68d16dd7abbca1d353014f6d9cece8a00c3942c3b7578c645832af1fe95d7e26ed545691081364b551b39634bce18d9a17694341310e833122 SHA512 8d0771b03e3af60dc8c7ca26c180cbfc012c83a76df54021a97bc1950ab0838349dc1a072322da5b7a3b6e216e7a215806307d1665dafc015043d86c75dc634c
-DIST firefox-116.0-id.xpi 537282 BLAKE2B dad1caa1051ec2bc3ecd4f3046509093681a9b9e7b1f3b4325c1725749664baa5e3173799fe340fe7297f8e980cd635f2a6d91e378c15b89211e49c17e32b303 SHA512 4461fdac00ec311b8c0c0cbc83f3cd53da01e3998c8eeb88f0c4866d7088ea13b2e3fd7361f5cb0c4f63717d6fdb956861a0e4fdf3aa16cb91716cf0874dbfd2
-DIST firefox-116.0-is.xpi 561600 BLAKE2B 780c4c34fc3cfdf255e900d985d005c177e23144d721b97ffe13d1a453b3e4fc362d8be979aba51ab27fefe2e7c4b75d8d48d96ee086521f61c42a81e11ca299 SHA512 596a1f5bc580a0aa83a8b7cfc15c37d648ea093670432740d2e154bbca2a46f4a24d4357915445ea8a32bdc92099a8e55f3cdb06b39ca2db95808ff7c871ece4
-DIST firefox-116.0-it.xpi 508069 BLAKE2B 5d7f82d664b686300545db7c1a990f577266986f782889f593213c98bfea4ebee4bbb3f9c7981d34a8f48b848c5c88f5ef01da80c23fc98e50c0f55a1c39a126 SHA512 20a33505d1b03470ffb1a5368aa649907097d9d571a6ad604a76449a7d67eebbd153056b650fdc95f4391d1af54b45dc6bd70aa23498faed57653d434d4da730
-DIST firefox-116.0-ja.xpi 629682 BLAKE2B c83bb705a179fef104ae4a9d688a5be8cc07de90ce2f310fd9f2b1ede553bc07d73c1a74a92967d0472938f40e4278fecc43f94857739de159e6430cf3d3bac1 SHA512 60efcaa441ff36fe88d6ee09ba0a6248424a842e1f578f19ac134eeabb0b9202006cdbe5ed538b19a97079870aa8eaf12453923e278c18c39ea7d249b937e362
-DIST firefox-116.0-ka.xpi 610442 BLAKE2B 01ff9baf14dd72250ba76d40d11fb224dbfa08e4e85007a407ddce758c198aed7ce0ca4b0218a58aa5b2f41dcd6210185f2c1fafbd6c88d8f8067ec1d96497b7 SHA512 a6c995151e7b721e8998410e26cb6857513083090e264bc28ac4068a5d194e9d39798b1858c00d2c2d5723a8ca6782f82e23cd1505302d7cdabefc07c4b8107e
-DIST firefox-116.0-kab.xpi 562162 BLAKE2B 52f5c4a1cc916c29203d972736acf6ebbf2c2f60a32fc06974b6b20bbd235649ea58936c28c404a8cc356595486d5c5a28f771798923c517b28ec040e835c21b SHA512 02cbe7f372d5ed84863bbb6c33b37d59c5b5562f61a13bd5a0525cd06ba3d88730b51fed640227100e252e4ba8b7fca5a7bce0dd21700902201227108b176b5d
-DIST firefox-116.0-kk.xpi 640649 BLAKE2B 240c7f750d8115f3a8dbfbb960336777a3b8e66e1f746a1456731217659db28c6663b734d657c9048c217bfe8575869a885702a0657269ee621ce4233ad2df07 SHA512 4d1c1cd2231594fb64b99f0cf9d2940bc42b2270d2ba8ad468bf7cde489c9247f58d7f0c3a7ac928f73a13ef96bf69c7f521bb714d3c8626d35c246f01f504c1
-DIST firefox-116.0-km.xpi 507451 BLAKE2B dd5b0c65b69963a937f1bbcec023aef41f0948d2e8b805b76e14ce57923730de186c7ad690e933c0fe96da3c3a13ad5fb0084eae2cd8ae17c4be07496007fc94 SHA512 e43800b6965f096de9d4227b7ccade4d5db694cbb55c14a174426afe19bbcf470e8f602bab5a011497bc477dd9bff4f48a0fc5495ed90efb1d64adea2d97c55a
-DIST firefox-116.0-kn.xpi 473015 BLAKE2B a067327d200c5cea6fd39cb409e60a6bf99b635ab14feeeda1e6b0f0d01c771fc619f1746c7b820d157bcbe92b0f922603aedc47d6f3fed571754a4ff9a1de51 SHA512 214724290fd86aec85a84f851cf537fbeca884ef340fd39cc5762148b62f08fe45b1f2d14f4075c9d2aa97272672a93739e58aa9a0531d5a2a2f15bb90bc6c15
-DIST firefox-116.0-ko.xpi 601095 BLAKE2B 5e34c51c42756d07c9d819f46e51f9b5fc58819ffb4c94055478605d3a4b7f7a5a63d0fa62a1cddd8672a6b5d8137f2b6aabda856b9d7242a7605aa135d767bd SHA512 e320ecc278876fa8541f5b65f8b323c428a0cf3df12cfb2e0ccde6fa3cb393578379aa92e96f0282f4282acbd3852ff17bb204e3f5076936a744a42d327f631a
-DIST firefox-116.0-lij.xpi 463109 BLAKE2B 1ef02f0b945e1549e526d4af34708e625b5e58b93f05f563bb351138e1c5d5b3d383c05f2c3c3d7cfeed9c85575b27d32fe9122c531652bae29cacc410fecc26 SHA512 314ad54280bc5393d35895a2296917d7a96fab4dc6edc1a4f39fb2296924fd2da2a66051cb41455ac6a696c6eb1ebda37ab1ed73720442e6951ad14d6673ac89
-DIST firefox-116.0-lt.xpi 547793 BLAKE2B 4e40185c7011e33e0f48f21d35fc0d697acc933c7630963cd1fdf3b63f783e950071bb798b974e03eede3bb884c41546d06fdffa1954be5357fbe9211f0ff096 SHA512 b82f8442c5d201ea26d813950cf664327f41cd1202a253511f711b0e190ead889cb72ade0e2b6166915835652fe87e6a4e362fc5b2be5209a6e4789c8527f02c
-DIST firefox-116.0-lv.xpi 450081 BLAKE2B 992a8d72b05a43d8665f19ef0971386e3b492bce8a5e70adeb832fc778d7a0b2d35813b9d71cc237b97ba09bc5c6ccf9e726bc91f1104436b9c5f46e179e576c SHA512 5345b5044fd1b984de1469db548991d71998b89c0458e7138cbdf3d751577d5c931b906556e5b6813f66df66e9c180ba9d48db309e73d542277ab62f4b8ff9e3
-DIST firefox-116.0-mk.xpi 469353 BLAKE2B b56733f697410c496ac3f3cf428bc1b531d17cc345b657909521d90df26aa34c5935eb46c3b1bbac2d9fa88910a0b72c9840b5fffa54e39feddc48c3fc936d61 SHA512 6d34c910d37c3afd0cc3c9b0858324008e3e42e54905de263e3b7809e9d0a4f3f7834f4cd7b0900eb42afe94741d4830c5730c5fc915e4dc025b346b32f7638c
-DIST firefox-116.0-mr.xpi 510121 BLAKE2B e9ce3eac58786218004f9a0a4351dca590bc7df5bbad0caad1682fe1153b9141e828fbf046c67baa7b7dd5ce549afa4bd8aff358952a7a8841258b46b79d7f29 SHA512 a79dfba06fc5e65c205233ba6a148c97aaeacb8d7e3636256f7e6f535951b3476920f2f71c434f7e2a58a0c576dcd216deb541b0751d10c782e44608aa1c992b
-DIST firefox-116.0-ms.xpi 430632 BLAKE2B 009d668a1bb15d98e406c0dcc0f6c2f6f47f891fc86e8dd0cfaa7f22b1081e03a08bf4e77ab72c70c6ec15cf726c2029f611e8a25b076abfdea92d0f0d17b19a SHA512 9bbeb6cc2740ee1bbf4be36c9133adff01654d6e6178d888d937e5565c0a8ec3264e946d3841f33c1b346d1d3e002729f4d050507e0ace6f61b2ad46a444f92c
-DIST firefox-116.0-my.xpi 492892 BLAKE2B eefe28d7ee9d606bc2be14fb636ce9f30122047e579c84f3bb204af6a889f5328a7993168c7447723c37ef562fba46348ea26d1fef0b64b524350c899e4ad9b6 SHA512 b55b032ad2c6d26997167b5a19ad9d600fa5593dc3dc092939b63aa1e7783ccbaa85948fe0681d5ed59be11684c5faaef13c557d349406eb3af61f6073b2549e
-DIST firefox-116.0-nb-NO.xpi 548995 BLAKE2B 0322096227daa482d5a535557dadfb98038514dc84bb9809b28e89d76552850b38fc23cd33af6539046283ea1cb584948b4f9c295877f581e1e158527123f789 SHA512 d42201d05ed7429040c6cf008a2e7af949df041a6271e60853b0a587e7a80afaa63b957f68b6ab35cf181ac1a8ac52c0edeb05afebb9a46cc6188674f7316267
-DIST firefox-116.0-ne-NP.xpi 468336 BLAKE2B d2ef2921e212a6c96711ff6b11e9f7f1f1d4720e51a97629206d0dcb4d4ff9cc861e23c979b180d2f4a58500688246a24ab4878cb376feaebc089de06b2d3ef2 SHA512 24830c061a5e727ad07f15840cd8ec357f07abb07dcfcd25db1befa723e715282425968a60635e1574a5bd12688aa419ae11803206b2473dcef9998da7a021e0
-DIST firefox-116.0-nl.xpi 558557 BLAKE2B 46ff973842d48b618a8ec26fa1657f79a445b65638bce5eb36072ed0f8f51ddad8edecc35ffbc7668ee3c00de1db41201766f1c35fec98b217af42e4dbd87998 SHA512 8699548f889d239c56323c50e86783f568e2e9ea9a182a8a84e5fac1fbee1b0037e6789e094e058626f982fd62cd9c5e8b7ad02097c7a2b3c7203d364f1ac022
-DIST firefox-116.0-nn-NO.xpi 551413 BLAKE2B b945375dfc5f18b994b0a9abde9a385a06313bd2d8c36802cc26b03821a3f6a4e9f771b975ddb7785f3730ce555f756164cabc155595ef5b501823bd7b338c8a SHA512 3712e9e2ac17f6ebfa9cb80baf4092d7f0f9846e728bd2b35fe56b3139e5037ac840761970f30eaa3187971d4b9837108f2c9b01c8a905d707ff6ba2f6f81236
-DIST firefox-116.0-oc.xpi 571598 BLAKE2B c601b9791336faf86c08620e70538cfc8dbe0bf75e477e8bdb9369755868e2da1ff6019cd36898c41f20a5341e98732cafb9070847c1167f1fe0b3b18aaf3c69 SHA512 c63394bbcea50db300212fdef2de98d2c3a4fcde875db43f85308e702829ff706770cf0cf49b0535c81a500adbb375de66e2494ac79351f12ef65b04eaefd1c6
-DIST firefox-116.0-pa-IN.xpi 626851 BLAKE2B c7a585b416801dd964c65b2f1650630754583da0e09d1de2b2e1f3d9e109080e4a69b306e96cc8cbf1081f53da9ee1245a795194b18ddddd74dfa0200d07a816 SHA512 b9baa1e6d5e435d9d952607a8cfec429aa46cec5e3f092393832d7381e1c76a9faf83b6d4ff5a6dcc9e67c54d4126c13c8dd7c7930a700becdd5b724df0a9d3e
-DIST firefox-116.0-pl.xpi 579296 BLAKE2B 5e7053e43ca76ce672fd6b23223e6bda44d71e0d0ce4a2a12d19d4abc61793008e0af43e3af1352eb8cff140a62af05356400d600bfff96bf07db1ae8d56de41 SHA512 7d2599eed582c2e1ecc9a67e661a0151e8b8c8f6028ddd19bb4e934eb121ee77af2ff49e5096c824ccb9f41aa87d9fe61df15019bb38ef1197ba87e5b6848e55
-DIST firefox-116.0-pt-BR.xpi 564563 BLAKE2B 26d3219e8257e88d7800c9bd3dfe8040ca3fce902a4ef63e18ba9fba21f2d4e66fee39a787fee9f240ded64837dbf4fd08b70991ae7e1e297ae5b77817efab9b SHA512 ccf271c13fcd528da1d9afa1245038a066aface786a52fcd2562434619834627f2492e03bfc564e50e73b417c5ee512a74f30f4fa64bd717a33db586473dca83
-DIST firefox-116.0-pt-PT.xpi 568416 BLAKE2B b2c314fd02698ae8d49be3ece86d55d2a83db0a6a02cb034fbde568fb86c313d3320a85416514ad4fa3de766a4320a9a6ec02d99824321b88652d55254dfdd6c SHA512 7a561689538df66bebab2a4508dd2fbb53f5232283e8a617dc4bc48e9f34ecd799252b91b6f86b0db690cdfd04d0b6738064ab484842b4dc01b296c8d29c9e29
-DIST firefox-116.0-rm.xpi 558028 BLAKE2B 82a8b6d8effe0edfca1091ae768a0cd0af721d4c2e11327244060d81276cc9b938cd2f66bf3f779837846879d3dad0feee6f26983c3eee56ce7e65cefc5de68d SHA512 47116719a0cc2970cc4c037b56944e2ded79e4ec54089e19f1857bd627ba0564872a9254b19fd506359f9468daca93a2d09aa721f9ae82c69e6058e5379a6892
-DIST firefox-116.0-ro.xpi 524309 BLAKE2B b49eaec1c070b7056ec33ddd882584ebd744f9d91eb4c5826e85afe7fe7937e3996d3f5f70233a888534235ddc9c1e01b70a270ea980da23361ea7cf6ce43367 SHA512 fecf44f719720d37e95b0a1d9333549cf0b9ef7a40670310e266bcdb5f953c5f4064c2a1a46756d8294728ab530bc9dda55e4b8c3c237eeca3c8c7c422773b1e
-DIST firefox-116.0-ru.xpi 653105 BLAKE2B f4de4add2cc21f5484498e5216c855da858cf08554b86903e8bd532dd9bf005037113cf11617d07fae2aae379fff3ffd8d10f2b139caf7163d7a3353d4c5b50b SHA512 9a8b503152ef160af80a80645f6ea1bf2ba403f973781329db0dea71019276dc9509d3e82af8f69279cd6ddc2bbba4cad991deff6ad631da06a37e502f0f1a82
-DIST firefox-116.0-sc.xpi 534523 BLAKE2B ab69acf677dfc22dd737e73c5609c7e4eabfbee5b2765aa69e1ab9c47ba0c01c1b4ccfae7bbd49ce8ed25bcb8866a2ccc797e9ea84a46a2b8d7d816ab2698870 SHA512 a37036d05a8ef42c10dee13bad1d9e70731245b966d45de359cae5a1afde174d73d860e2951f30940895fa04120a6fbada211b00f47b83c0314232ba75f32388
-DIST firefox-116.0-sco.xpi 489055 BLAKE2B e77146c2916a401d086febcf5d5a757146bb0aa987a0b3446d3c2c71d49568ee125027f03aee8e8c7789fd30b56b8ed566cd11cdba0d94299449996b0916bd97 SHA512 e88621dd5ad6452f98034e6a8828f21f47abd971665d782c0a1b5e6f3179841c166f2b31e39f562ebbc3f627c0399c2541c9222bca8d59af4e70c65da99ae64a
-DIST firefox-116.0-si.xpi 574168 BLAKE2B ee38700ccbdfff8e7ce9aff1669cc28eef67bb7c4c0479573c6a4c6c1e5e1389c0c297eba33f57d5e17e611661cbb4eab3f8aefb3096257a417444ffca277020 SHA512 32be0bb91c6d687926b61928e664bbbbb91d91d198eb2a712f70a874209e8ca3c2c2d05211315b822e6063374f95f9451163ee7d8631c9e559881be4e5a71f93
-DIST firefox-116.0-sk.xpi 590366 BLAKE2B 6b667527f53f44af98160018a81f029749b514138b306da2dc35e1c753675e96bca76fa7ce1ca8586439d7f1bc19ccd7796836bece0fd088938713f11e836f36 SHA512 6d0a0de25ee7f669002a23a167d1b8fe7f791cd3d0eb01ce1335e2be7371fe21d7cbb406b6e9ab82da70c68a577110a9ddb72d1ff2caed33aa8061197566847e
-DIST firefox-116.0-sl.xpi 562029 BLAKE2B 1a9b0dd6826ea5f434e582b6de72ca7e764393a6d9c69f46cb00186f346b7708b25f9d6849497661ba541bf1519b1dba00b415d4e872f2506c1b7d00f130ee18 SHA512 f96b285d1da49a98ac5b101b48d5c6784e8a0091ed34ce038847c8f460612aa2ae92fa56610bb0acd98913848b0461977533ba37582b2a69a9daf1e8523f4fe0
-DIST firefox-116.0-son.xpi 400204 BLAKE2B 2ea9b50609b176aad1b8902cb6838c3437a86ea399052beb65bf939b71cf4fddddd3ca7901f582306b26d3bc7e37ae27d3a70a968c92aa25056d5b22633e7ae7 SHA512 4c9bfe4a09ac9b184b5306ef1f8c5277c0ce38d4ede217a60b04e3539d9d5cc883bdef5ffc5e4c6856153e4f2863300fe37f6e10e13fd14cb50644c477e12001
-DIST firefox-116.0-sq.xpi 563998 BLAKE2B ffdc0e926dd6a81675ef5184f2ddd4b26bf021387a8347b220722468ef07e5593d7828412dfcae1905f43ef83294a4f383822c394ccd72625e7de64204242fc0 SHA512 a4ed0c6b79c4cf845b7bb6df79721ca5b6ed055a3983540bd344260a28309c8f072dbdaff90c753d02b473518949a45b79456fb81ecde4a12792b911c4c39dbb
-DIST firefox-116.0-sr.xpi 613441 BLAKE2B 15aa6b91451315d15a8033707e6e7cff1c4256bf34b31b00bdc15d885b3f8a3d793dfab186c61e90b1c846f9263b2923701f6a32e5d9859a3590a555155200b0 SHA512 deae0b022f9f27a33714a0a1eae465f8a01bb75c912ee0a1eca8ff596b09318a3a506534c6aa56b6859756040f6fabb6a0c37e359fd899f57533f6b8254ec345
-DIST firefox-116.0-sv-SE.xpi 561743 BLAKE2B abade289aefee0e44c057ab05a4045509307aaca303d337568d87564ffbccd7e4730d36337668e3a7b03e76f4b8e247e6d7e2c79de9bb27b51a16cfd08814bf6 SHA512 646779e61e97b6c42196d9bbc1dba015f7d9c4a20d9e47ac7a0cc3bbfc83cead613c0253d4b6f8d726f57b76592e135bec93bc4e4907ea2438f040f0363a9f1c
-DIST firefox-116.0-szl.xpi 503526 BLAKE2B 20354a0c88107f18e4d6237fef090a7195f0bc76c15a31b1f1b566513ba13e4d096244a80a8a40648fe747a78c44ca4232b7215ecee73fa3c2a3b3d7ecf98ce6 SHA512 052a6a15c4f6d72696a84e504d2ce8a3c2d36da65de79de3e735ae19092156c0d37b95aa4487cbad206ddbe6946ce8103a3a9563f2b54415a911afc538e79841
-DIST firefox-116.0-ta.xpi 488084 BLAKE2B ccf9be9661c3de2deed609cc56fe3650d1a78c96645ca4eae0de0e11b253ba3062c72c55200a9b36139f8783219aeccad9d989aef7821a4b0b55f422c10e17f8 SHA512 2a7fbfb711acec39e045f736a814759ab7cebc79fbff65b8f6bfa50c5fa4d75e41813ba51c781cb1016151475a9523a9ea35e29a8ed9b7b95115688676d581f3
-DIST firefox-116.0-te.xpi 535418 BLAKE2B d247ef6eb294f47fce6da799accc9ec379e7964d1e16ef0c8525e95b27ae243015790ae1a8e9d0abd3a122ec67105a5d25952fb9aafaa1615e3187979b75b2c6 SHA512 c4bd68e5a2710766d8c4090d1f6f96e844009bfd554ee5a7d6fd2d0b8ca42e69d7090b7a57ce6a6ff7c235299191206be00f4442672a1e8566d8316a7876509f
-DIST firefox-116.0-th.xpi 631494 BLAKE2B e94af1a92b3c5f05c7706d263b57dd96fcc84c468acb92e4699763e3939b23f584e4affbceab93a5602747a4e5fc67070d2cf5fc95d0615cc1ff107d5cbcdca9 SHA512 3893e957707b3a62a6984b04a92f47ad4718738f35611f0684e69a85ec3f3a4d7506a2cd925f399fe5ac902d32744b45ae66faf3144f2b8d5f1e67cf40ae99e7
-DIST firefox-116.0-tl.xpi 510943 BLAKE2B e3a8803be244f2f0f967c14e7d6f98f424467561ce4aeabc943013597256e651b09a4efb5b3f3a9041ff77fa45919340e8733a51a885c7be20a7bd733fb7267d SHA512 722d100271429921b4eb878fd6758c406f247900db4c216f289d6713bc5c29782ea4d1a4dfa80c29f37f1813efa0f513e627373626e2cc2e2a8868ae94fb0f0d
-DIST firefox-116.0-tr.xpi 573425 BLAKE2B fd6a2bc198b6c529e29253947df3e41526dad01bf11762681789a82eb4a850efd51681b57554f36911483dbb31a6d5906c1a1fa9b81e16f424b36a16c34f0dc8 SHA512 1fd58a90d0412d01c0db67d134240eda312304d466efeaf43a774a80122fbadd8aacaf4ab74388b9b7c1903b78a4d373881125693f6cd13ed9daeffad8c01492
-DIST firefox-116.0-trs.xpi 481280 BLAKE2B 7dd3c698d32a7dd380b1ecb226b70b7e10a0954fc4778eeb56e3ca6d463787567e31452725e280baff231c10dfa46c577af9e10cd7d482629a55ed7dedc71d90 SHA512 c5508931bc3194dc4f0ab171dcaebc02611399537c6fd3eff3501b07fd34acd0d35f8755a0d111e3bc1ba9c92c76a16e7ba2266eea78ff1aa433a540eae0ba79
-DIST firefox-116.0-uk.xpi 644408 BLAKE2B 584ac4961fb7de3684d353d5dd44218da8f82efad8654e38e9b21306aeda0bc85813966607e8c893776b3776556af5ae749300b4d40883cfa1ccafe607f81ad5 SHA512 272c9725f08758137b554496a837f52548fc26f198446660f0b8b483dd7bf38f3ad2393e95acc4933726102bfcd65bc43b61595b20333a7c1e37fc7c8128d332
-DIST firefox-116.0-ur.xpi 538180 BLAKE2B 2e2524ef3a27adfea3c060deb645fd8e76d3695ffa8fa1731a139772d0b088b80b1e03d04da62546a55ba0d180b538e6609a9725aad1280186764a6c193a80ea SHA512 000d23875ec9afc3600f9cc6dc7357e2cff504ae7e222b860f145f83c38c7ceca63e7d2841fd05600d0ec78451ff41b1062c8be07c2753fd2844bb1f3646cb33
-DIST firefox-116.0-uz.xpi 461091 BLAKE2B 473719f882c93ea0b5150fe3f187c067d7ca20fea64ff2b76315eaa4955caee0b11da5e743406a7034cab56a977f63811a19c2f4a4734b5bef711e09c4a968e3 SHA512 90ee43ea59410b9e884919c8c9c8c099c08e83f6da4521b8bd7b86bb72c9b58956451550c21b2ee903a44b05bab98edcd703ccc6e23b2c2187324349a2067142
-DIST firefox-116.0-vi.xpi 596611 BLAKE2B e282057e43e821ccdcae2c11c4966fc403d45c914b267fb03c7010ae0cdecec683ae98ca79ca21f09c618e93b7769dbd7ff1792d5878598ceb5b8408f68c8e68 SHA512 31f10ba77f79c9425ec88cdd379a6725f3ed3b1b90c69ed83b4b74f42b0631d3e1d66f9abfde88150a3f8317a914e6254f88deb61ddeaae819be2d2b0f1d5d44
-DIST firefox-116.0-xh.xpi 401650 BLAKE2B dce3add055f8e5ca785c05b1b110980668d11e0b4d3cc26569aec77b84441c992e4f8e4e55bb804561aa2e230ae5d6875ed85d9acc45b0ddc3f5423133bd33cd SHA512 e4a466326376e785587faa0497501e1bf0e8cb235027ba0144047eebd2e62defc60990050c7b8bd490dd539439a2485b2ab793c84c4e8dfddcdaf5dd425dd09f
-DIST firefox-116.0-zh-CN.xpi 596066 BLAKE2B 133b239fd1cad0d5e7db5b0f861a9afda6abba16238149d2055f66f07aecc9b23959edc5e43bea0c7f00798bbd3efccbc47c1b74fff263e6490e4f55fc43908e SHA512 427a1e063e986503fae1849cec5124158237526a4a265e616235e77984343e883936ff1569b198a6ec20a5d48cb19b5edf12976ddc3c8a69e598acecd494976a
-DIST firefox-116.0-zh-TW.xpi 598593 BLAKE2B 6633c9ffbfa988f1345c67e3b4cea06bf90714ea6960f12f6beef3c5cd2fb085f0a27a5cf2addab28e645e156bf0f518faaab4be63e3603210b916275f0d1c1d SHA512 c3f901183ab89bb8e01034dc328522163d131dd847be330ea099018bfb32abcbdd748bfd8763079605ee4b3cc0c65b3fd7a39fc853fa3b93b25dcd32d74d7641
DIST firefox-116.0.3-ach.xpi 440326 BLAKE2B 56cc69127cd3b8abe717bc2a6636dd41ef76fa8e0cf69fdca067bdf14bd9926584207383e040c7eef527ae7be3f0f05f0a30b608550f6432bd3d46cb98a06a8c SHA512 4d45e59a30d7fd47366c3102472a15fd385ce9d1ff314eb91df45f0683d319a9ea0b9c6fbc261015f017f1c30728a6e6b3a8da9d49b7972abc0350d604fa5672
DIST firefox-116.0.3-af.xpi 401615 BLAKE2B f3f77e3b4476525bc25c9fde7570afc28c62072ea7f3e3c44e0afd2619762eff5563d4ede3b99a4ffdc328eef4375245e405ba2499841f56291485d423dd6755 SHA512 a4ae9689730d18a039b849a5e19c06821a36b59db89d838f0dbec5fbb75c8b17578cc5ba162d1b0976c7d770df352d6619a6660d2f9d372d222e99179888a3ca
DIST firefox-116.0.3-an.xpi 482299 BLAKE2B a793e3d151b8b475599b3e929109571a32a7a839cf5800dc160a3fcf9ae60f660ce644e7062be4037f2719a44df0bd5e65a538a6064a385b5fa05b8f07b2dfae SHA512 fef7b7064e8516e92ad1c67aa8e37a2470de830d9716127e6bfe1afc2a58148e86a632fb841920b038ffeccd99bbf803c1123ed219d2c72e0ed07c843a7e9641
@@ -497,4 +299,3 @@ DIST firefox-116.0.3-xh.xpi 401664 BLAKE2B 1de763b5c8827217095f304d7800d3dabf78e
DIST firefox-116.0.3-zh-CN.xpi 596069 BLAKE2B adead5cae90fab7daada7a6d6ac29fefa8e2706e5316b22d9a2af6da70bfe43c8c0dc1776ede6c4840ac974b363f4b0b7282bcadf46dc7372ce845be10eccbbf SHA512 1ea142d55ee2eba534738e5fa8eaaa4b869e6e0c33f153b2becaea558ee196805b20bbaabece433af3fbfa5b667820f948cba57edd76eb7ed4b21cc9645f65f2
DIST firefox-116.0.3-zh-TW.xpi 598589 BLAKE2B fc7879a838e63711402b457f951033789be486c1980ee3cf0bd47c60524622f6e4cddc54102a04fd046bb14e14c1a80c78aa1dd33db333272e64029c6dad8e06 SHA512 ac20f5fc22d469f8ba7550e7029884ac4733f33cd0b7d1ec89723072ce99625fcb2fb40535ae9972a0cd7ce4f6bb6349952f785c44b00384abbc2ef5929ec330
DIST firefox-116.0.3.source.tar.xz 520884220 BLAKE2B 371ff2db5516059b6df21dc4c9350db9f829f6932fb401d7eec2570771aa12919e9a6b1636bb969d9a0ceddf9ab7f8535c9136287847893431143c6e9cb80551 SHA512 194c50e9ba5a918c37fbef8cd72ffb98e5e9f51955d8172b6666a758b5f20777ca0a7f79dff0328305fb6dafefb102ab002e326f47d0965a4dc6d3e9287c42b9
-DIST firefox-116.0.source.tar.xz 515487160 BLAKE2B 844f37e6f1f0947771a5e9a629ad44c04733906cb5922d5541ec12c4193dee4307cd435c381a97ce4ff20be1f31200a0c13c6e33a0308fcab9ce16b1327723c1 SHA512 4370c65a99bf8796524aca11ea8e99fa4f875176a5805ad49f35ae149080eb54be42e7eae84627e87e17b88b262649e48f3b30b317170ac7c208960200d1005d
diff --git a/www-client/firefox/firefox-102.13.0.ebuild b/www-client/firefox/firefox-102.13.0.ebuild
deleted file mode 100644
index c74041508fd8..000000000000
--- a/www-client/firefox/firefox-102.13.0.ebuild
+++ /dev/null
@@ -1,1290 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-FIREFOX_PATCHSET="firefox-102esr-patches-10j.tar.xz"
-
-LLVM_MAX_SLOT=16
-
-PYTHON_COMPAT=( python3_{9..11} )
-PYTHON_REQ_USE="ncurses,sqlite,ssl"
-
-WANT_AUTOCONF="2.1"
-
-VIRTUALX_REQUIRED="pgo"
-
-MOZ_ESR=yes
-
-MOZ_PV=${PV}
-MOZ_PV_SUFFIX=
-if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
- MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
-
- # Convert the ebuild version to the upstream Mozilla version
- MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
- MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
- MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
-fi
-
-if [[ -n ${MOZ_ESR} ]] ; then
- # ESR releases have slightly different version numbers
- MOZ_PV="${MOZ_PV}esr"
-fi
-
-MOZ_PN="${PN%-bin}"
-MOZ_P="${MOZ_PN}-${MOZ_PV}"
-MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
-MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
-
-inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \
- llvm multiprocessing optfeature pax-utils python-any-r1 toolchain-funcs \
- virtualx xdg
-
-MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
-
-if [[ ${PV} == *_rc* ]] ; then
- MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
-fi
-
-PATCH_URIS=(
- https://dev.gentoo.org/~{juippis,whissi,slashbeast}/mozilla/patchsets/${FIREFOX_PATCHSET}
-)
-
-SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
- ${PATCH_URIS[@]}"
-
-DESCRIPTION="Firefox Web Browser"
-HOMEPAGE="https://www.mozilla.com/firefox"
-
-KEYWORDS="amd64 arm64 ~ppc64 x86"
-
-SLOT="esr"
-LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
-
-IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel"
-IUSE+=" jack libproxy lto openh264 pgo pulseaudio sndio selinux"
-IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx system-png system-python-libs +system-webp"
-IUSE+=" wayland wifi"
-
-# Firefox-only IUSE
-IUSE+=" geckodriver +gmp-autoupdate screencast"
-
-REQUIRED_USE="debug? ( !system-av1 )
- pgo? ( lto )
- wayland? ( dbus )
- wifi? ( dbus )"
-
-# Firefox-only REQUIRED_USE flags
-REQUIRED_USE+=" screencast? ( wayland )"
-
-FF_ONLY_DEPEND="!www-client/firefox:0
- !www-client/firefox:rapid
- screencast? ( media-video/pipewire:= )
- selinux? ( sec-policy/selinux-mozilla )"
-BDEPEND="${PYTHON_DEPS}
- || (
- (
- sys-devel/clang:16
- sys-devel/llvm:16
- clang? (
- || (
- sys-devel/lld:16
- sys-devel/mold
- )
- virtual/rust:0/llvm-16
- pgo? ( =sys-libs/compiler-rt-sanitizers-16*[profile] )
- )
- )
- (
- sys-devel/clang:15
- sys-devel/llvm:15
- clang? (
- sys-devel/lld:15
- virtual/rust:0/llvm-15
- pgo? ( =sys-libs/compiler-rt-sanitizers-15*[profile] )
- )
- )
- (
- sys-devel/clang:14
- sys-devel/llvm:14
- clang? (
- sys-devel/lld:14
- virtual/rust:0/llvm-14
- pgo? ( =sys-libs/compiler-rt-sanitizers-14*[profile] )
- )
- )
- )
- !clang? ( virtual/rust )
- app-arch/unzip
- app-arch/zip
- >=dev-util/cbindgen-0.24.3
- net-libs/nodejs
- virtual/pkgconfig
- amd64? ( >=dev-lang/nasm-2.14 )
- x86? ( >=dev-lang/nasm-2.14 )"
-
-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.79.2
- >=dev-libs/nspr-4.34
- media-libs/alsa-lib
- media-libs/fontconfig
- media-libs/freetype
- media-libs/mesa
- media-video/ffmpeg
- sys-libs/zlib
- virtual/freedesktop-icon-theme
- virtual/opengl
- x11-libs/cairo[X]
- x11-libs/gdk-pixbuf
- 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/libXtst
- x11-libs/libxcb:=
- x11-libs/libxkbcommon[X]
- x11-libs/pango
- x11-libs/pixman
- dbus? (
- dev-libs/dbus-glib
- sys-apps/dbus
- )
- jack? ( virtual/jack )
- libproxy? ( net-libs/libproxy )
- pulseaudio? (
- || (
- media-sound/pulseaudio
- >=media-sound/apulse-0.1.12-r4
- )
- )
- 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-71.1:= )
- system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
- system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] )
- system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
- system-png? ( >=media-libs/libpng-1.6.35:0=[apng] )
- system-webp? ( >=media-libs/libwebp-1.1.0:0= )
- wayland? (
- x11-libs/gtk+:3[wayland]
- x11-libs/libdrm
- x11-libs/libxkbcommon[wayland]
- )
- wifi? (
- kernel_linux? (
- dev-libs/dbus-glib
- net-misc/networkmanager
- sys-apps/dbus
- )
- )"
-
-RDEPEND="${COMMON_DEPEND}
- jack? ( virtual/jack )
- openh264? ( media-libs/openh264:*[plugin] )"
-
-DEPEND="${COMMON_DEPEND}
- x11-base/xorg-proto
- x11-libs/libICE
- x11-libs/libSM"
-
-S="${WORKDIR}/${PN}-${PV%_*}"
-
-# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
-# overridden in the enviromnent (advanced hackers only)
-if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
- MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
-fi
-
-llvm_check_deps() {
- if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
- einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
- return 1
- fi
-
- if use clang ; then
- if ! has_version -b "sys-devel/lld:${LLVM_SLOT}" ; then
- einfo "sys-devel/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
- return 1
- fi
-
- if ! has_version -b "virtual/rust:0/llvm-${LLVM_SLOT}" ; then
- einfo "virtual/rust:0/llvm-${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
- return 1
- fi
-
- if use pgo ; then
- if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then
- einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
- return 1
- fi
- fi
- fi
-
- einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
-}
-
-MOZ_LANGS=(
- af ar ast be bg br ca cak cs cy da de dsb
- el en-CA en-GB en-US es-AR es-ES et eu
- fi fr fy-NL ga-IE gd gl he hr hsb hu
- id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO
- pa-IN pl pt-BR pt-PT rm ro ru
- sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW
-)
-
-# Firefox-only LANGS
-MOZ_LANGS+=( ach )
-MOZ_LANGS+=( an )
-MOZ_LANGS+=( az )
-MOZ_LANGS+=( bn )
-MOZ_LANGS+=( bs )
-MOZ_LANGS+=( ca-valencia )
-MOZ_LANGS+=( eo )
-MOZ_LANGS+=( es-CL )
-MOZ_LANGS+=( es-MX )
-MOZ_LANGS+=( fa )
-MOZ_LANGS+=( ff )
-MOZ_LANGS+=( 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+=( sco )
-MOZ_LANGS+=( si )
-MOZ_LANGS+=( son )
-MOZ_LANGS+=( szl )
-MOZ_LANGS+=( ta )
-MOZ_LANGS+=( te )
-MOZ_LANGS+=( tl )
-MOZ_LANGS+=( trs )
-MOZ_LANGS+=( ur )
-MOZ_LANGS+=( xh )
-
-mozilla_set_globals() {
- # https://bugs.gentoo.org/587334
- local MOZ_TOO_REGIONALIZED_FOR_L10N=(
- fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
- )
-
- local lang xflag
- for lang in "${MOZ_LANGS[@]}" ; do
- # en and en_US are handled internally
- if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
- continue
- fi
-
- # strip region subtag if $lang is in the list
- if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
- xflag=${lang%%-*}
- else
- xflag=${lang}
- fi
-
- SRC_URI+=" l10n_${xflag/[_@]/-}? ("
- SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
- SRC_URI+=" )"
- IUSE+=" l10n_${xflag/[_@]/-}"
- done
-}
-mozilla_set_globals
-
-moz_clear_vendor_checksums() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -ne 1 ]] ; then
- die "${FUNCNAME} requires exact one argument"
- fi
-
- einfo "Clearing cargo checksums for ${1} ..."
-
- sed -i \
- -e 's/\("files":{\)[^}]*/\1/' \
- "${S}"/third_party/rust/${1}/.cargo-checksum.json \
- || die
-}
-
-moz_install_xpi() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -lt 2 ]] ; then
- die "${FUNCNAME} requires at least two arguments"
- fi
-
- local DESTDIR=${1}
- shift
-
- insinto "${DESTDIR}"
-
- local emid xpi_file xpi_tmp_dir
- for xpi_file in "${@}" ; do
- emid=
- xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
-
- # Unpack XPI
- unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
-
- # Determine extension ID
- if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
- emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
- [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
- elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
- emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
- [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
- else
- die "failed to determine extension id"
- fi
-
- einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
- newins "${xpi_file}" "${emid}.xpi"
- done
-}
-
-mozconfig_add_options_ac() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -lt 2 ]] ; then
- die "${FUNCNAME} requires at least two arguments"
- fi
-
- local reason=${1}
- shift
-
- local option
- for option in ${@} ; do
- echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
- done
-}
-
-mozconfig_add_options_mk() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -lt 2 ]] ; then
- die "${FUNCNAME} requires at least two arguments"
- fi
-
- local reason=${1}
- shift
-
- local option
- for option in ${@} ; do
- echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
- done
-}
-
-mozconfig_use_enable() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -lt 1 ]] ; then
- die "${FUNCNAME} requires at least one arguments"
- fi
-
- local flag=$(use_enable "${@}")
- mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
-}
-
-mozconfig_use_with() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -lt 1 ]] ; then
- die "${FUNCNAME} requires at least one arguments"
- fi
-
- local flag=$(use_with "${@}")
- mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
-}
-
-pkg_pretend() {
- if [[ ${MERGE_TYPE} != binary ]] ; then
- if use pgo ; then
- if ! has usersandbox $FEATURES ; then
- die "You must enable usersandbox as X server can not run as root!"
- fi
- fi
-
- # Ensure we have enough disk space to compile
- if use pgo || use lto || use debug ; then
- CHECKREQS_DISK_BUILD="13500M"
- else
- CHECKREQS_DISK_BUILD="6600M"
- fi
-
- check-reqs_pkg_pretend
- fi
-}
-
-pkg_setup() {
- if [[ ${MERGE_TYPE} != binary ]] ; then
- if use pgo ; then
- if ! has userpriv ${FEATURES} ; then
- eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
- fi
- fi
-
- # Ensure we have enough disk space to compile
- if use pgo || use lto || use debug ; then
- CHECKREQS_DISK_BUILD="13500M"
- else
- CHECKREQS_DISK_BUILD="6400M"
- fi
-
- check-reqs_pkg_setup
-
- llvm_pkg_setup
-
- if use clang && use lto ; 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
- # Allow access to GPU during PGO run
- local ati_cards mesa_cards nvidia_cards render_cards
- shopt -s nullglob
-
- ati_cards=$(echo -n /dev/ati/card* | sed 's/ /:/g')
- if [[ -n "${ati_cards}" ]] ; then
- addpredict "${ati_cards}"
- fi
-
- mesa_cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
- if [[ -n "${mesa_cards}" ]] ; then
- addpredict "${mesa_cards}"
- fi
-
- nvidia_cards=$(echo -n /dev/nvidia* | sed 's/ /:/g')
- if [[ -n "${nvidia_cards}" ]] ; then
- addpredict "${nvidia_cards}"
- fi
-
- render_cards=$(echo -n /dev/dri/renderD128* | sed 's/ /:/g')
- if [[ -n "${render_cards}" ]] ; then
- addpredict "${render_cards}"
- fi
-
- shopt -u nullglob
- fi
-
- if ! mountpoint -q /dev/shm ; then
- # If /dev/shm is not available, configure is known to fail with
- # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
- ewarn "/dev/shm is not mounted -- expect build failures!"
- fi
-
- # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
- # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
- # get your own set of keys.
- if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
- MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
- fi
-
- if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
- MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
- fi
-
- # Mozilla API keys (see https://location.services.mozilla.com/api)
- # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
- # get your own set of keys.
- if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
- MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
- fi
-
- # Ensure we use C locale when building, bug #746215
- export LC_ALL=C
- fi
-
- 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
-
- 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)"
-
- # Make LTO respect MAKEOPTS
- sed -i \
- -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
- "${S}"/build/moz.configure/lto-pgo.configure \
- || die "sed failed to set num_cores"
-
- # Make ICU respect MAKEOPTS
- sed -i \
- -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
- "${S}"/intl/icu_sources_data.py \
- || die "sed failed to set num_cores"
-
- # sed-in toolchain prefix
- sed -i \
- -e "s/objdump/${CHOST}-objdump/" \
- "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
- || die "sed failed to set toolchain prefix"
-
- sed -i \
- -e 's/ccache_stats = None/return None/' \
- "${S}"/python/mozbuild/mozbuild/controller/building.py \
- || die "sed failed to disable ccache stats call"
-
- einfo "Removing pre-built binaries ..."
- find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
-
- # Clearing crate checksums where we have applied patches
- moz_clear_vendor_checksums bindgen
-
- # 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 ..."
- if tc-is-gcc; then
- have_switched_compiler=yes
- fi
- AR=llvm-ar
- CC=${CHOST}-clang
- CXX=${CHOST}-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
- export HOST_CC="$(tc-getBUILD_CC)"
- export HOST_CXX="$(tc-getBUILD_CXX)"
- export AS="$(tc-getCC) -c"
- tc-export CC CXX LD AR AS NM OBJDUMP RANLIB PKG_CONFIG
-
- # Pass the correct toolchain paths through cbindgen
- if tc-is-cross-compiler ; then
- export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
- fi
-
- # Set MOZILLA_FIVE_HOME
- export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
-
- # python/mach/mach/mixin/process.py fails to detect SHELL
- export SHELL="${EPREFIX}/bin/bash"
-
- # Set state path
- export MOZBUILD_STATE_PATH="${BUILD_DIR}"
-
- # Set MOZCONFIG
- export MOZCONFIG="${S}/.mozconfig"
-
- # Initialize MOZCONFIG
- mozconfig_add_options_ac '' --enable-application=browser
-
- # Set Gentoo defaults
- export MOZILLA_OFFICIAL=1
-
- mozconfig_add_options_ac 'Gentoo default' \
- --allow-addon-sideload \
- --disable-cargo-incremental \
- --disable-crashreporter \
- --disable-gpsd \
- --disable-install-strip \
- --disable-parental-controls \
- --disable-strip \
- --disable-updater \
- --enable-negotiateauth \
- --enable-new-pass-manager \
- --enable-official-branding \
- --enable-release \
- --enable-system-ffi \
- --enable-system-pixman \
- --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.
- if use ppc64; then
- mozconfig_add_options_ac '' --disable-sandbox
- else
- mozconfig_add_options_ac '' --enable-sandbox
- fi
-
- if [[ -s "${S}/api-google.key" ]] ; then
- local key_origin="Gentoo default"
- if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
- key_origin="User value"
- fi
-
- mozconfig_add_options_ac "${key_origin}" \
- --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
- else
- einfo "Building without Google API key ..."
- fi
-
- if [[ -s "${S}/api-location.key" ]] ; then
- local key_origin="Gentoo default"
- if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
- key_origin="User value"
- fi
-
- mozconfig_add_options_ac "${key_origin}" \
- --with-google-location-service-api-keyfile="${S}/api-location.key"
- else
- einfo "Building without Location API key ..."
- fi
-
- if [[ -s "${S}/api-mozilla.key" ]] ; then
- local key_origin="Gentoo default"
- if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
- key_origin="User value"
- fi
-
- mozconfig_add_options_ac "${key_origin}" \
- --with-mozilla-api-keyfile="${S}/api-mozilla.key"
- else
- einfo "Building without Mozilla API key ..."
- fi
-
- mozconfig_use_with system-av1
- mozconfig_use_with system-harfbuzz
- mozconfig_use_with system-harfbuzz system-graphite2
- mozconfig_use_with system-icu
- mozconfig_use_with system-jpeg
- mozconfig_use_with system-libevent
- mozconfig_use_with system-libvpx
- mozconfig_use_with system-png
- mozconfig_use_with system-webp
-
- mozconfig_use_enable dbus
- mozconfig_use_enable libproxy
-
- use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
-
- mozconfig_use_enable geckodriver
-
- if use hardened ; then
- mozconfig_add_options_ac "+hardened" --enable-hardening
- append-ldflags "-Wl,-z,relro -Wl,-z,now"
- fi
-
- local myaudiobackends=""
- use jack && myaudiobackends+="jack,"
- use sndio && myaudiobackends+="sndio,"
- use pulseaudio && myaudiobackends+="pulseaudio,"
- ! use pulseaudio && myaudiobackends+="alsa,"
-
- mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}"
-
- mozconfig_use_enable wifi necko-wifi
-
- if use wayland ; then
- mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland
- else
- mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3
- fi
-
- if use lto ; then
- if use clang ; then
- # Upstream only supports lld when using clang
- mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
-
- mozconfig_add_options_ac '+lto' --enable-lto=cross
-
- else
- # ThinLTO is currently broken, see bmo#1644409
- 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
- # This is upstream's default
- mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
- else
- mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
- fi
- fi
-
- # LTO flag was handled via configure
- filter-lto
-
- mozconfig_use_enable debug
- if use debug ; then
- mozconfig_add_options_ac '+debug' --disable-optimize
- else
- 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
-
- if use clang ; then
- # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
- # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
- # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
- local disable_elf_hack=
- if use amd64 ; then
- disable_elf_hack=yes
- elif use x86 ; then
- disable_elf_hack=yes
- elif use arm ; then
- disable_elf_hack=yes
- fi
-
- if [[ -n ${disable_elf_hack} ]] ; then
- mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack
- fi
- elif tc-is-gcc ; then
- if ver_test $(gcc-fullversion) -ge 10 ; then
- einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..."
- append-cxxflags -fno-tree-loop-vectorize
- fi
- fi
-
- if use elibc_musl && use arm64 ; then
- mozconfig_add_options_ac 'elf-hack is broken when using musl/arm64' --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
-
- # Allow elfhack to work in combination with unstripped binaries
- # when they would normally be larger than 2GiB.
- append-ldflags "-Wl,--compress-debug-sections=zlib"
-
- # Make revdep-rebuild.sh happy; Also required for musl
- append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
-
- # Pass $MAKEOPTS to build system
- export MOZ_MAKE_FLAGS="${MAKEOPTS}"
-
- # Use system's Python environment
- export PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach
-
- if use system-python-libs; then
- export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="system"
- else
- export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none"
- fi
-
- # Disable notification when build system has finished
- export MOZ_NOSPAM=1
-
- # Portage sets XARGS environment variable to "xargs -r" by default which
- # breaks build system's check_prog() function which doesn't support arguments
- mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
-
- # Set build dir
- mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
-
- # Show flags we will use
- einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
- einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
- einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
- einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
- einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
-
- # Handle EXTRA_CONF and show summary
- local ac opt hash reason
-
- # Apply EXTRA_ECONF entries to $MOZCONFIG
- if [[ -n ${EXTRA_ECONF} ]] ; then
- IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
- for opt in "${ac[@]}"; do
- mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
- done
- fi
-
- echo
- echo "=========================================================="
- echo "Building ${PF} with the following configuration"
- grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
- [[ -z ${hash} || ${hash} == \# ]] \
- || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
- printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
- done
- echo "=========================================================="
- echo
-
- ./mach configure || die
-}
-
-src_compile() {
- local virtx_cmd=
-
- if use pgo ; then
- virtx_cmd=virtx
-
- # Reset and cleanup environment variables used by GNOME/XDG
- gnome2_environment_reset
-
- addpredict /root
- fi
-
- local -x GDK_BACKEND=x11
-
- ${virtx_cmd} ./mach build --verbose \
- || die
-}
-
-src_install() {
- # xpcshell is getting called during install
- pax-mark m \
- "${BUILD_DIR}"/dist/bin/xpcshell \
- "${BUILD_DIR}"/dist/bin/${PN} \
- "${BUILD_DIR}"/dist/bin/plugin-container
-
- DESTDIR="${D}" ./mach install || die
-
- # Upstream cannot ship symlink but we can (bmo#658850)
- rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
- dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
-
- # Don't install llvm-symbolizer from sys-devel/llvm package
- if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
- rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
- fi
-
- # Install policy (currently only used to disable application updates)
- insinto "${MOZILLA_FIVE_HOME}/distribution"
- newins "${FILESDIR}"/distribution.ini distribution.ini
- newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
-
- # Install system-wide preferences
- local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences"
- insinto "${PREFS_DIR}"
- newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js
-
- local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js"
-
- # Set dictionary path to use system hunspell
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
- pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
- EOF
-
- # Force hwaccel prefs if USE=hwaccel is enabled
- if use hwaccel ; then
- cat "${FILESDIR}"/gentoo-hwaccel-prefs.js-r2 \
- >>"${GENTOO_PREFS}" \
- || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
-
- if use wayland; then
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel wayland prefs"
- pref("gfx.x11-egl.force-enabled", false);
- EOF
- else
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel x11 prefs"
- pref("gfx.x11-egl.force-enabled", true);
- EOF
- fi
- fi
-
- if ! use gmp-autoupdate ; then
- local plugin
- for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
- einfo "Disabling auto-update for ${plugin} plugin ..."
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
- pref("media.${plugin}.autoupdate", false);
- EOF
- done
- fi
-
- # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
- if use system-harfbuzz ; then
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
- sticky_pref("gfx.font_rendering.graphite.enabled", true);
- EOF
- fi
-
- # Install language packs
- local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
- if [[ -n "${langpacks}" ]] ; then
- moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
- fi
-
- # Install geckodriver
- if use geckodriver ; then
- einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..."
- pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
- exeinto "${MOZILLA_FIVE_HOME}"
- doexe "${BUILD_DIR}"/dist/bin/geckodriver
-
- dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
- fi
-
- # Install icons
- local icon_srcdir="${S}/browser/branding/official"
- local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg"
-
- insinto /usr/share/icons/hicolor/symbolic/apps
- newins "${icon_symbolic_file}" ${PN}-symbolic.svg
-
- local icon size
- for icon in "${icon_srcdir}"/default*.png ; do
- size=${icon%.png}
- size=${size##*/default}
-
- if [[ ${size} -eq 48 ]] ; then
- newicon "${icon}" ${PN}.png
- fi
-
- newicon -s ${size} "${icon}" ${PN}.png
- done
-
- # Install menu
- local app_name="Mozilla ${MOZ_PN^}"
- local desktop_file="${FILESDIR}/icon/${PN}-r3.desktop"
- local desktop_filename="${PN}-esr.desktop"
- local exec_command="${PN}"
- local icon="${PN}"
- local use_wayland="false"
-
- if use wayland ; then
- use_wayland="true"
- fi
-
- cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
-
- sed -i \
- -e "s:@NAME@:${app_name}:" \
- -e "s:@EXEC@:${exec_command}:" \
- -e "s:@ICON@:${icon}:" \
- "${WORKDIR}/${PN}.desktop-template" \
- || die
-
- newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
-
- rm "${WORKDIR}/${PN}.desktop-template" || die
-
- # Install wrapper script
- [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
- newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
-
- # Update wrapper
- sed -i \
- -e "s:@PREFIX@:${EPREFIX}/usr:" \
- -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
- -e "s:@APULSELIB_DIR@:${apulselib}:" \
- -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
- "${ED}/usr/bin/${PN}" \
- || die
-}
-
-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
-
- local show_doh_information
- local show_normandy_information
- local show_shortcut_information
-
- if [[ -z "${REPLACING_VERSIONS}" ]] ; then
- # New install; Tell user that DoH is disabled by default
- show_doh_information=yes
- show_normandy_information=yes
- show_shortcut_information=no
- else
- local replacing_version
- for replacing_version in ${REPLACING_VERSIONS} ; do
- if ver_test "${replacing_version}" -lt 91.0 ; then
- # Tell user that we no longer install a shortcut
- # per supported display protocol
- show_shortcut_information=yes
- fi
- done
- fi
-
- if [[ -n "${show_doh_information}" ]] ; then
- elog
- elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):"
- elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all"
- elog "DNS traffic to Cloudflare by default is not a good idea and applications"
- elog "should respect OS configured settings), \"network.trr.mode\" was set to 5"
- elog "(\"Off by choice\") by default."
- elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
- fi
-
- # bug 713782
- if [[ -n "${show_normandy_information}" ]] ; then
- elog
- elog "Upstream operates a service named Normandy which allows Mozilla to"
- elog "push changes for default settings or even install new add-ons remotely."
- elog "While this can be useful to address problems like 'Armagadd-on 2.0' or"
- elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security"
- elog "concerns prevail, which is why we have switched off the use of this"
- elog "service by default."
- elog
- elog "To re-enable this service set"
- elog
- elog " app.normandy.enabled=true"
- elog
- elog "in about:config."
- fi
-
- if [[ -n "${show_shortcut_information}" ]] ; then
- elog
- elog "Since ${PN}-91.0 we no longer install multiple shortcuts for"
- elog "each supported display protocol. Instead we will only install"
- elog "one generic Mozilla ${PN^} shortcut."
- elog "If you still want to be able to select between running Mozilla ${PN^}"
- elog "on X11 or Wayland, you have to re-create these shortcuts on your own."
- fi
-
- # bug 835078
- if use hwaccel && has_version "x11-drivers/xf86-video-nouveau"; then
- ewarn "You have nouveau drivers installed in your system and 'hwaccel' "
- ewarn "enabled for Firefox. Nouveau / your GPU might not support the "
- ewarn "required EGL, so either disable 'hwaccel' or try the workaround "
- ewarn "explained in https://bugs.gentoo.org/835078#c5 if Firefox crashes."
- fi
-
- elog
- elog "Unfortunately Firefox-100.0 breaks compatibility with some sites using "
- elog "useragent checks. To temporarily fix this, enter about:config and modify "
- elog "network.http.useragent.forceVersion preference to \"99\"."
- elog "Or install an addon to change your useragent."
- elog "See: https://support.mozilla.org/en-US/kb/difficulties-opening-or-using-website-firefox-100"
- 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
-}
diff --git a/www-client/firefox/firefox-116.0.ebuild b/www-client/firefox/firefox-116.0.ebuild
deleted file mode 100644
index 4251bee50d76..000000000000
--- a/www-client/firefox/firefox-116.0.ebuild
+++ /dev/null
@@ -1,1466 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-FIREFOX_PATCHSET="firefox-116-patches-03.tar.xz"
-
-LLVM_MAX_SLOT=16
-
-PYTHON_COMPAT=( python3_{9..11} )
-PYTHON_REQ_USE="ncurses,sqlite,ssl"
-
-WANT_AUTOCONF="2.1"
-
-VIRTUALX_REQUIRED="manual"
-
-MOZ_ESR=
-
-MOZ_PV=${PV}
-MOZ_PV_SUFFIX=
-if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
- MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
-
- # Convert the ebuild version to the upstream Mozilla version
- MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
- MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
- MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
-fi
-
-if [[ -n ${MOZ_ESR} ]] ; then
- # ESR releases have slightly different version numbers
- MOZ_PV="${MOZ_PV}esr"
-fi
-
-MOZ_PN="${PN%-bin}"
-MOZ_P="${MOZ_PN}-${MOZ_PV}"
-MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
-MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
-
-inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \
- llvm multiprocessing optfeature pax-utils python-any-r1 toolchain-funcs \
- virtualx xdg
-
-MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
-
-if [[ ${PV} == *_rc* ]] ; then
- MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
-fi
-
-PATCH_URIS=(
- https://dev.gentoo.org/~juippis/mozilla/patchsets/${FIREFOX_PATCHSET}
-)
-
-SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
- ${PATCH_URIS[@]}"
-
-DESCRIPTION="Firefox Web Browser"
-HOMEPAGE="https://www.mozilla.com/firefox"
-
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
-
-SLOT="rapid"
-LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
-
-IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel"
-IUSE+=" jack +jumbo-build libproxy lto openh264 pgo pulseaudio sndio selinux"
-IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx system-png system-python-libs +system-webp"
-IUSE+=" +telemetry valgrind wayland wifi +X"
-
-# Firefox-only IUSE
-IUSE+=" geckodriver +gmp-autoupdate screencast"
-
-REQUIRED_USE="|| ( X wayland )
- debug? ( !system-av1 )
- !jumbo-build? ( clang )
- pgo? ( lto )
- wifi? ( dbus )"
-
-FF_ONLY_DEPEND="!www-client/firefox:0
- !www-client/firefox:esr
- screencast? ( media-video/pipewire:= )
- selinux? ( sec-policy/selinux-mozilla )"
-BDEPEND="${PYTHON_DEPS}
- || (
- (
- sys-devel/clang:16
- sys-devel/llvm:16
- clang? (
- || (
- sys-devel/lld:16
- sys-devel/mold
- )
- virtual/rust:0/llvm-16
- pgo? ( =sys-libs/compiler-rt-sanitizers-16*[profile] )
- )
- )
- (
- sys-devel/clang:15
- sys-devel/llvm:15
- clang? (
- || (
- sys-devel/lld:15
- sys-devel/mold
- )
- virtual/rust:0/llvm-15
- pgo? ( =sys-libs/compiler-rt-sanitizers-15*[profile] )
- )
- )
- )
- app-alternatives/awk
- app-arch/unzip
- app-arch/zip
- >=dev-util/cbindgen-0.24.3
- net-libs/nodejs
- virtual/pkgconfig
- !clang? ( >=virtual/rust-1.65 )
- amd64? ( >=dev-lang/nasm-2.14 )
- x86? ( >=dev-lang/nasm-2.14 )
- pgo? (
- X? (
- sys-devel/gettext
- x11-base/xorg-server[xvfb]
- x11-apps/xhost
- )
- !X? (
- >=gui-libs/wlroots-0.15.1-r1[tinywl]
- x11-misc/xkeyboard-config
- )
- )"
-COMMON_DEPEND="${FF_ONLY_DEPEND}
- >=app-accessibility/at-spi2-core-2.46.0:2
- dev-libs/expat
- dev-libs/glib:2
- dev-libs/libffi:=
- >=dev-libs/nss-3.91
- >=dev-libs/nspr-4.35
- media-libs/alsa-lib
- media-libs/fontconfig
- media-libs/freetype
- media-libs/mesa
- media-video/ffmpeg
- sys-libs/zlib
- virtual/freedesktop-icon-theme
- x11-libs/cairo
- x11-libs/gdk-pixbuf
- x11-libs/pango
- x11-libs/pixman
- dbus? (
- dev-libs/dbus-glib
- sys-apps/dbus
- )
- jack? ( virtual/jack )
- pulseaudio? (
- || (
- media-libs/libpulse
- >=media-sound/apulse-0.1.12-r4[sdk]
- )
- )
- libproxy? ( net-libs/libproxy )
- selinux? ( sec-policy/selinux-mozilla )
- sndio? ( >=media-sound/sndio-1.8.0-r1 )
- screencast? ( media-video/pipewire:= )
- system-av1? (
- >=media-libs/dav1d-1.0.0:=
- >=media-libs/libaom-1.0.0:=
- )
- system-harfbuzz? (
- >=media-gfx/graphite2-1.3.13
- >=media-libs/harfbuzz-2.8.1:0=
- )
- system-icu? ( >=dev-libs/icu-73.1:= )
- system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
- system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] )
- system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
- system-png? ( >=media-libs/libpng-1.6.35:0=[apng] )
- system-webp? ( >=media-libs/libwebp-1.1.0:0= )
- valgrind? ( dev-util/valgrind )
- wayland? (
- >=media-libs/libepoxy-1.5.10-r1
- x11-libs/gtk+:3[wayland]
- x11-libs/libxkbcommon[wayland]
- )
- wifi? (
- kernel_linux? (
- dev-libs/dbus-glib
- net-misc/networkmanager
- sys-apps/dbus
- )
- )
- X? (
- virtual/opengl
- x11-libs/cairo[X]
- x11-libs/gtk+:3[X]
- x11-libs/libX11
- x11-libs/libXcomposite
- x11-libs/libXdamage
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libxkbcommon[X]
- x11-libs/libXrandr
- x11-libs/libXtst
- x11-libs/libxcb:=
- )"
-RDEPEND="${COMMON_DEPEND}
- jack? ( virtual/jack )
- openh264? ( media-libs/openh264:*[plugin] )"
-DEPEND="${COMMON_DEPEND}
- X? (
- x11-base/xorg-proto
- x11-libs/libICE
- x11-libs/libSM
- )"
-
-S="${WORKDIR}/${PN}-${PV%_*}"
-
-# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
-# overridden in the enviromnent (advanced hackers only)
-if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
- MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
-fi
-
-llvm_check_deps() {
- if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
- einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
- return 1
- fi
-
- if use clang && ! tc-ld-is-mold ; then
- if ! has_version -b "sys-devel/lld:${LLVM_SLOT}" ; then
- einfo "sys-devel/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
- return 1
- fi
-
- if ! has_version -b "virtual/rust:0/llvm-${LLVM_SLOT}" ; then
- einfo "virtual/rust:0/llvm-${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
- return 1
- fi
-
- if use pgo ; then
- if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then
- einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
- return 1
- fi
- fi
- fi
-
- einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
-}
-
-MOZ_LANGS=(
- af ar ast be bg br ca cak cs cy da de dsb
- el en-CA en-GB en-US es-AR es-ES et eu
- fi fr fy-NL ga-IE gd gl he hr hsb hu
- id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO
- pa-IN pl pt-BR pt-PT rm ro ru
- sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW
-)
-
-# Firefox-only LANGS
-MOZ_LANGS+=( ach )
-MOZ_LANGS+=( an )
-MOZ_LANGS+=( az )
-MOZ_LANGS+=( bn )
-MOZ_LANGS+=( bs )
-MOZ_LANGS+=( ca-valencia )
-MOZ_LANGS+=( eo )
-MOZ_LANGS+=( es-CL )
-MOZ_LANGS+=( es-MX )
-MOZ_LANGS+=( fa )
-MOZ_LANGS+=( ff )
-MOZ_LANGS+=( fur )
-MOZ_LANGS+=( gn )
-MOZ_LANGS+=( gu-IN )
-MOZ_LANGS+=( hi-IN )
-MOZ_LANGS+=( hy-AM )
-MOZ_LANGS+=( ia )
-MOZ_LANGS+=( km )
-MOZ_LANGS+=( kn )
-MOZ_LANGS+=( lij )
-MOZ_LANGS+=( mk )
-MOZ_LANGS+=( mr )
-MOZ_LANGS+=( my )
-MOZ_LANGS+=( ne-NP )
-MOZ_LANGS+=( oc )
-MOZ_LANGS+=( sc )
-MOZ_LANGS+=( sco )
-MOZ_LANGS+=( si )
-MOZ_LANGS+=( son )
-MOZ_LANGS+=( szl )
-MOZ_LANGS+=( ta )
-MOZ_LANGS+=( te )
-MOZ_LANGS+=( tl )
-MOZ_LANGS+=( trs )
-MOZ_LANGS+=( ur )
-MOZ_LANGS+=( xh )
-
-mozilla_set_globals() {
- # https://bugs.gentoo.org/587334
- local MOZ_TOO_REGIONALIZED_FOR_L10N=(
- fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
- )
-
- local lang xflag
- for lang in "${MOZ_LANGS[@]}" ; do
- # en and en_US are handled internally
- if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
- continue
- fi
-
- # strip region subtag if $lang is in the list
- if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
- xflag=${lang%%-*}
- else
- xflag=${lang}
- fi
-
- SRC_URI+=" l10n_${xflag/[_@]/-}? ("
- SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
- SRC_URI+=" )"
- IUSE+=" l10n_${xflag/[_@]/-}"
- done
-}
-mozilla_set_globals
-
-moz_clear_vendor_checksums() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -ne 1 ]] ; then
- die "${FUNCNAME} requires exact one argument"
- fi
-
- einfo "Clearing cargo checksums for ${1} ..."
-
- sed -i \
- -e 's/\("files":{\)[^}]*/\1/' \
- "${S}"/third_party/rust/${1}/.cargo-checksum.json \
- || die
-}
-
-moz_install_xpi() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -lt 2 ]] ; then
- die "${FUNCNAME} requires at least two arguments"
- fi
-
- local DESTDIR=${1}
- shift
-
- insinto "${DESTDIR}"
-
- local emid xpi_file xpi_tmp_dir
- for xpi_file in "${@}" ; do
- emid=
- xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
-
- # Unpack XPI
- unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
-
- # Determine extension ID
- if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
- emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
- [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
- elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
- emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
- [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
- else
- die "failed to determine extension id"
- fi
-
- einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
- newins "${xpi_file}" "${emid}.xpi"
- done
-}
-
-mozconfig_add_options_ac() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -lt 2 ]] ; then
- die "${FUNCNAME} requires at least two arguments"
- fi
-
- local reason=${1}
- shift
-
- local option
- for option in ${@} ; do
- echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
- done
-}
-
-mozconfig_add_options_mk() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -lt 2 ]] ; then
- die "${FUNCNAME} requires at least two arguments"
- fi
-
- local reason=${1}
- shift
-
- local option
- for option in ${@} ; do
- echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
- done
-}
-
-mozconfig_use_enable() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -lt 1 ]] ; then
- die "${FUNCNAME} requires at least one arguments"
- fi
-
- local flag=$(use_enable "${@}")
- mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
-}
-
-mozconfig_use_with() {
- debug-print-function ${FUNCNAME} "$@"
-
- if [[ ${#} -lt 1 ]] ; then
- die "${FUNCNAME} requires at least one arguments"
- fi
-
- local flag=$(use_with "${@}")
- mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
-}
-
-# This is a straight copypaste from toolchain-funcs.eclass's 'tc-ld-is-lld', and is temporarily
-# placed here until toolchain-funcs.eclass gets an official support for mold linker.
-# Please see:
-# https://github.com/gentoo/gentoo/pull/28366 ||
-# https://github.com/gentoo/gentoo/pull/28355
-tc-ld-is-mold() {
- local out
-
- # Ensure ld output is in English.
- local -x LC_ALL=C
-
- # First check the linker directly.
- out=$($(tc-getLD "$@") --version 2>&1)
- if [[ ${out} == *"mold"* ]] ; then
- return 0
- fi
-
- # Then see if they're selecting mold via compiler flags.
- # Note: We're assuming they're using LDFLAGS to hold the
- # options and not CFLAGS/CXXFLAGS.
- local base="${T}/test-tc-linker"
- cat <<-EOF > "${base}.c"
- int main() { return 0; }
- EOF
- out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1)
- rm -f "${base}"*
- if [[ ${out} == *"mold"* ]] ; then
- return 0
- fi
-
- # No mold here!
- return 1
-}
-
-virtwl() {
- debug-print-function ${FUNCNAME} "$@"
-
- [[ $# -lt 1 ]] && die "${FUNCNAME} needs at least one argument"
- [[ -n $XDG_RUNTIME_DIR ]] || die "${FUNCNAME} needs XDG_RUNTIME_DIR to be set; try xdg_environment_reset"
- tinywl -h >/dev/null || die 'tinywl -h failed'
-
- # TODO: don't run addpredict in utility function. WLR_RENDERER=pixman doesn't work
- addpredict /dev/dri
- local VIRTWL VIRTWL_PID
- coproc VIRTWL { WLR_BACKENDS=headless exec tinywl -s 'echo $WAYLAND_DISPLAY; read _; kill $PPID'; }
- local -x WAYLAND_DISPLAY
- read WAYLAND_DISPLAY <&${VIRTWL[0]}
-
- debug-print "${FUNCNAME}: $@"
- "$@"
- local r=$?
-
- [[ -n $VIRTWL_PID ]] || die "tinywl exited unexpectedly"
- exec {VIRTWL[0]}<&- {VIRTWL[1]}>&-
- return $r
-}
-
-pkg_pretend() {
- if [[ ${MERGE_TYPE} != binary ]] ; then
- if use pgo ; then
- if ! has usersandbox $FEATURES ; then
- die "You must enable usersandbox as X server can not run as root!"
- fi
- fi
-
- # Ensure we have enough disk space to compile
- if use pgo || use lto || use debug ; then
- CHECKREQS_DISK_BUILD="13500M"
- else
- CHECKREQS_DISK_BUILD="6600M"
- fi
-
- check-reqs_pkg_pretend
- fi
-}
-
-pkg_setup() {
- if [[ ${MERGE_TYPE} != binary ]] ; then
- if use pgo ; then
- if ! has userpriv ${FEATURES} ; then
- eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
- fi
- fi
-
- # Ensure we have enough disk space to compile
- if use pgo || use lto || use debug ; then
- CHECKREQS_DISK_BUILD="13500M"
- else
- CHECKREQS_DISK_BUILD="6400M"
- fi
-
- check-reqs_pkg_setup
-
- llvm_pkg_setup
-
- if use clang && use lto && tc-ld-is-lld ; then
- local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
- [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
- [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
-
- local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
- [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
- [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
-
- if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
- eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
- eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
- eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
- eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
- eerror " - Build ${CATEGORY}/${PN} without USE=lto"
- eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole "
- eerror " llvm/clang/lld/rust chain depending on your @world updates)"
- die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
- fi
- fi
-
- python-any-r1_pkg_setup
-
- # Avoid PGO profiling problems due to enviroment leakage
- # These should *always* be cleaned up anyway
- unset \
- DBUS_SESSION_BUS_ADDRESS \
- DISPLAY \
- ORBIT_SOCKETDIR \
- SESSION_MANAGER \
- XAUTHORITY \
- XDG_CACHE_HOME \
- XDG_SESSION_COOKIE
-
- # Build system is using /proc/self/oom_score_adj, bug #604394
- addpredict /proc/self/oom_score_adj
-
- if use pgo ; then
- # Update 105.0: "/proc/self/oom_score_adj" isn't enough anymore with pgo, but not sure
- # whether that's due to better OOM handling by Firefox (bmo#1771712), or portage
- # (PORTAGE_SCHEDULING_POLICY) update...
- addpredict /proc
-
- # May need a wider addpredict when using wayland+pgo.
- addpredict /dev/dri
-
- # Allow access to GPU during PGO run
- local ati_cards mesa_cards nvidia_cards render_cards
- shopt -s nullglob
-
- ati_cards=$(echo -n /dev/ati/card* | sed 's/ /:/g')
- if [[ -n "${ati_cards}" ]] ; then
- addpredict "${ati_cards}"
- fi
-
- mesa_cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
- if [[ -n "${mesa_cards}" ]] ; then
- addpredict "${mesa_cards}"
- fi
-
- nvidia_cards=$(echo -n /dev/nvidia* | sed 's/ /:/g')
- if [[ -n "${nvidia_cards}" ]] ; then
- addpredict "${nvidia_cards}"
- fi
-
- render_cards=$(echo -n /dev/dri/renderD128* | sed 's/ /:/g')
- if [[ -n "${render_cards}" ]] ; then
- addpredict "${render_cards}"
- fi
-
- shopt -u nullglob
- fi
-
- if ! mountpoint -q /dev/shm ; then
- # If /dev/shm is not available, configure is known to fail with
- # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
- ewarn "/dev/shm is not mounted -- expect build failures!"
- fi
-
- # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
- # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
- # get your own set of keys.
- if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
- MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
- fi
-
- if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
- MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
- fi
-
- # Mozilla API keys (see https://location.services.mozilla.com/api)
- # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
- # get your own set of keys.
- if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
- MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
- fi
-
- # Ensure we use C locale when building, bug #746215
- export LC_ALL=C
- fi
-
- CONFIG_CHECK="~SECCOMP"
- WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
- linux-info_pkg_setup
-}
-
-src_unpack() {
- local _lp_dir="${WORKDIR}/language_packs"
- local _src_file
-
- if [[ ! -d "${_lp_dir}" ]] ; then
- mkdir "${_lp_dir}" || die
- fi
-
- for _src_file in ${A} ; do
- if [[ ${_src_file} == *.xpi ]]; then
- cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
- else
- unpack ${_src_file}
- fi
- done
-}
-
-src_prepare() {
- if use lto; then
- rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch || die
- fi
-
- if ! use ppc64; then
- rm -v "${WORKDIR}"/firefox-patches/*ppc64*.patch || die
- fi
-
- 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)"
-
- # Make LTO respect MAKEOPTS
- sed -i \
- -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
- "${S}"/build/moz.configure/lto-pgo.configure \
- || die "sed failed to set num_cores"
-
- # Make ICU respect MAKEOPTS
- sed -i \
- -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
- "${S}"/intl/icu_sources_data.py \
- || die "sed failed to set num_cores"
-
- # sed-in toolchain prefix
- sed -i \
- -e "s/objdump/${CHOST}-objdump/" \
- "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
- || die "sed failed to set toolchain prefix"
-
- sed -i \
- -e 's/ccache_stats = None/return None/' \
- "${S}"/python/mozbuild/mozbuild/controller/building.py \
- || die "sed failed to disable ccache stats call"
-
- einfo "Removing pre-built binaries ..."
-
- find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
-
- # 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"
- tc-export CC CXX LD AR AS NM OBJDUMP RANLIB PKG_CONFIG
-
- # Pass the correct toolchain paths through cbindgen
- if tc-is-cross-compiler ; then
- export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
- fi
-
- # Set MOZILLA_FIVE_HOME
- export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
-
- # python/mach/mach/mixin/process.py fails to detect SHELL
- export SHELL="${EPREFIX}/bin/bash"
-
- # Set state path
- export MOZBUILD_STATE_PATH="${BUILD_DIR}"
-
- # Set MOZCONFIG
- export MOZCONFIG="${S}/.mozconfig"
-
- # Initialize MOZCONFIG
- mozconfig_add_options_ac '' --enable-application=browser
- mozconfig_add_options_ac '' --enable-project=browser
-
- # Set Gentoo defaults
- if use telemetry; then
- export MOZILLA_OFFICIAL=1
- fi
-
- mozconfig_add_options_ac 'Gentoo default' \
- --allow-addon-sideload \
- --disable-cargo-incremental \
- --disable-crashreporter \
- --disable-gpsd \
- --disable-install-strip \
- --disable-legacy-profile-creation \
- --disable-parental-controls \
- --disable-strip \
- --disable-tests \
- --disable-updater \
- --disable-wmf \
- --enable-negotiateauth \
- --enable-new-pass-manager \
- --enable-official-branding \
- --enable-release \
- --enable-system-ffi \
- --enable-system-pixman \
- --enable-system-policies \
- --host="${CBUILD:-${CHOST}}" \
- --libdir="${EPREFIX}/usr/$(get_libdir)" \
- --prefix="${EPREFIX}/usr" \
- --target="${CHOST}" \
- --without-ccache \
- --without-wasm-sandboxed-libraries \
- --with-intl-api \
- --with-libclang-path="$(llvm-config --libdir)" \
- --with-system-nspr \
- --with-system-nss \
- --with-system-zlib \
- --with-toolchain-prefix="${CHOST}-" \
- --with-unsigned-addon-scopes=app,system \
- --x-includes="${ESYSROOT}/usr/include" \
- --x-libraries="${ESYSROOT}/usr/$(get_libdir)"
-
- # Set update channel
- local update_channel=release
- [[ -n ${MOZ_ESR} ]] && update_channel=esr
- mozconfig_add_options_ac '' --update-channel=${update_channel}
-
- if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
- mozconfig_add_options_ac '' --enable-rust-simd
- fi
-
- # For future keywording: This is currently (97.0) only supported on:
- # amd64, arm, arm64 & x86.
- # Might want to flip the logic around if Firefox is to support more arches.
- # bug 833001, bug 903411#c8
- if use ppc64 || use riscv; then
- mozconfig_add_options_ac '' --disable-sandbox
- elif use valgrind; then
- mozconfig_add_options_ac 'valgrind requirement' --disable-sandbox
- else
- mozconfig_add_options_ac '' --enable-sandbox
- fi
-
- # Enable JIT on riscv64 explicitly
- # Can be removed once upstream enable it by default in the future.
- use riscv && mozconfig_add_options_ac 'Enable JIT for RISC-V 64' --enable-jit
-
- if [[ -s "${S}/api-google.key" ]] ; then
- local key_origin="Gentoo default"
- if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
- key_origin="User value"
- fi
-
- mozconfig_add_options_ac "${key_origin}" \
- --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
- else
- einfo "Building without Google API key ..."
- fi
-
- if [[ -s "${S}/api-location.key" ]] ; then
- local key_origin="Gentoo default"
- if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
- key_origin="User value"
- fi
-
- mozconfig_add_options_ac "${key_origin}" \
- --with-google-location-service-api-keyfile="${S}/api-location.key"
- else
- einfo "Building without Location API key ..."
- fi
-
- if [[ -s "${S}/api-mozilla.key" ]] ; then
- local key_origin="Gentoo default"
- if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
- key_origin="User value"
- fi
-
- mozconfig_add_options_ac "${key_origin}" \
- --with-mozilla-api-keyfile="${S}/api-mozilla.key"
- else
- einfo "Building without Mozilla API key ..."
- fi
-
- mozconfig_use_with system-av1
- mozconfig_use_with system-harfbuzz
- mozconfig_use_with system-harfbuzz system-graphite2
- mozconfig_use_with system-icu
- mozconfig_use_with system-jpeg
- mozconfig_use_with system-libevent
- mozconfig_use_with system-libvpx
- mozconfig_use_with system-png
- mozconfig_use_with system-webp
-
- mozconfig_use_enable dbus
- mozconfig_use_enable libproxy
- mozconfig_use_enable valgrind
-
- use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
-
- mozconfig_use_enable geckodriver
-
- if use hardened ; then
- mozconfig_add_options_ac "+hardened" --enable-hardening
- append-ldflags "-Wl,-z,relro -Wl,-z,now"
- fi
-
- local myaudiobackends=""
- use jack && myaudiobackends+="jack,"
- use sndio && myaudiobackends+="sndio,"
- use pulseaudio && myaudiobackends+="pulseaudio,"
- ! use pulseaudio && myaudiobackends+="alsa,"
-
- mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}"
-
- mozconfig_use_enable wifi necko-wifi
-
- ! use jumbo-build && mozconfig_add_options_ac '--disable-unified-build' --disable-unified-build
-
- if use X && use wayland ; then
- mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland
- elif ! use X && use wayland ; then
- mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only
- else
- mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3-x11-only
- fi
-
- if use lto ; then
- if use clang ; then
- # Upstream only supports lld or mold when using clang.
- if tc-ld-is-mold ; then
- mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
- else
- mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
- fi
-
- mozconfig_add_options_ac '+lto' --enable-lto=cross
-
- else
- # ThinLTO is currently broken, see bmo#1644409.
- # mold does not support gcc+lto combination.
- mozconfig_add_options_ac '+lto' --enable-lto=full
- mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
- fi
-
- if use pgo ; then
- mozconfig_add_options_ac '+pgo' MOZ_PGO=1
-
- if use clang ; then
- # Used in build/pgo/profileserver.py
- export LLVM_PROFDATA="llvm-profdata"
- fi
- fi
- else
- # Avoid auto-magic on linker
- if use clang ; then
- # lld is upstream's default
- if tc-ld-is-mold ; then
- mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
- else
- mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
- fi
-
- else
- if tc-ld-is-mold ; then
- mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
- else
- mozconfig_add_options_ac "linker is set to bfd due to USE=-clang" --enable-linker=bfd
- fi
- fi
- fi
-
- # LTO flag was handled via configure
- filter-lto
-
- mozconfig_use_enable debug
- if use debug ; then
- mozconfig_add_options_ac '+debug' --disable-optimize
- mozconfig_add_options_ac '+debug' --enable-real-time-tracing
- else
- mozconfig_add_options_ac 'Gentoo defaults' --disable-real-time-tracing
-
- if is-flag '-g*' ; then
- if use clang ; then
- mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
- else
- mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
- fi
- else
- mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
- fi
-
- if is-flag '-O0' ; then
- mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
- elif is-flag '-O4' ; then
- mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
- elif is-flag '-O3' ; then
- mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
- elif is-flag '-O1' ; then
- mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
- elif is-flag '-Os' ; then
- mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
- else
- mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
- fi
- fi
-
- # Debug flag was handled via configure
- filter-flags '-g*'
-
- # Optimization flag was handled via configure
- filter-flags '-O*'
-
- # Modifications to better support ARM, bug #553364
- if use cpu_flags_arm_neon ; then
- mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
-
- if ! tc-is-clang ; then
- # thumb options aren't supported when using clang, bug 666966
- mozconfig_add_options_ac '+cpu_flags_arm_neon' \
- --with-thumb=yes \
- --with-thumb-interwork=no
- fi
- fi
-
- if [[ ${CHOST} == armv*h* ]] ; then
- mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
-
- if ! use system-libvpx ; then
- sed -i \
- -e "s|softfp|hard|" \
- "${S}"/media/libvpx/moz.build \
- || die
- fi
- fi
-
- if use clang ; then
- # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
- # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
- # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
- local disable_elf_hack=
- if use amd64 ; then
- disable_elf_hack=yes
- elif use x86 ; then
- disable_elf_hack=yes
- elif use arm ; then
- disable_elf_hack=yes
- fi
-
- if [[ -n ${disable_elf_hack} ]] ; then
- mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack
- fi
- elif tc-is-gcc ; then
- if ver_test $(gcc-fullversion) -ge 10 ; then
- einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..."
- append-cxxflags -fno-tree-loop-vectorize
- fi
- fi
-
- if use elibc_musl && use arm64 ; then
- mozconfig_add_options_ac 'elf-hack is broken when using musl/arm64' --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
-
- # Allow elfhack to work in combination with unstripped binaries
- # when they would normally be larger than 2GiB.
- append-ldflags "-Wl,--compress-debug-sections=zlib"
-
- # Make revdep-rebuild.sh happy; Also required for musl
- append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
-
- # Pass $MAKEOPTS to build system
- export MOZ_MAKE_FLAGS="${MAKEOPTS}"
-
- # Use system's Python environment
- export PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach
-
- if use system-python-libs; then
- export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="system"
- else
- export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none"
- fi
-
- 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
- fi
-
- if ! use gmp-autoupdate ; then
- local plugin
- for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
- einfo "Disabling auto-update for ${plugin} plugin ..."
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
- pref("media.${plugin}.autoupdate", false);
- EOF
- done
- fi
-
- # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
- if use system-harfbuzz ; then
- cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
- sticky_pref("gfx.font_rendering.graphite.enabled", true);
- EOF
- fi
-
- # Install language packs
- local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
- if [[ -n "${langpacks}" ]] ; then
- moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
- fi
-
- # Install geckodriver
- if use geckodriver ; then
- einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..."
- pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
- exeinto "${MOZILLA_FIVE_HOME}"
- doexe "${BUILD_DIR}"/dist/bin/geckodriver
-
- dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
- fi
-
- # Install icons
- local icon_srcdir="${S}/browser/branding/official"
- local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg"
-
- insinto /usr/share/icons/hicolor/symbolic/apps
- newins "${icon_symbolic_file}" ${PN}-symbolic.svg
-
- local icon size
- for icon in "${icon_srcdir}"/default*.png ; do
- size=${icon%.png}
- size=${size##*/default}
-
- if [[ ${size} -eq 48 ]] ; then
- newicon "${icon}" ${PN}.png
- fi
-
- newicon -s ${size} "${icon}" ${PN}.png
- done
-
- # Install menu
- local app_name="Mozilla ${MOZ_PN^}"
- local desktop_file="${FILESDIR}/icon/${PN}-r3.desktop"
- local desktop_filename="${PN}.desktop"
- local exec_command="${PN}"
- local icon="${PN}"
- local use_wayland="false"
-
- if use wayland ; then
- use_wayland="true"
- fi
-
- cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
-
- sed -i \
- -e "s:@NAME@:${app_name}:" \
- -e "s:@EXEC@:${exec_command}:" \
- -e "s:@ICON@:${icon}:" \
- "${WORKDIR}/${PN}.desktop-template" \
- || die
-
- newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
-
- rm "${WORKDIR}/${PN}.desktop-template" || die
-
- # Install wrapper script
- [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
- newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
-
- # Update wrapper
- sed -i \
- -e "s:@PREFIX@:${EPREFIX}/usr:" \
- -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
- -e "s:@APULSELIB_DIR@:${apulselib}:" \
- -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
- "${ED}/usr/bin/${PN}" \
- || die
-}
-
-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
-
- local show_doh_information
- local show_normandy_information
- local show_shortcut_information
-
- if [[ -z "${REPLACING_VERSIONS}" ]] ; then
- # New install; Tell user that DoH is disabled by default
- show_doh_information=yes
- show_normandy_information=yes
- show_shortcut_information=no
- else
- local replacing_version
- for replacing_version in ${REPLACING_VERSIONS} ; do
- if ver_test "${replacing_version}" -lt 91.0 ; then
- # Tell user that we no longer install a shortcut
- # per supported display protocol
- show_shortcut_information=yes
- fi
- done
- fi
-
- if [[ -n "${show_doh_information}" ]] ; then
- elog
- elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):"
- elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all"
- elog "DNS traffic to Cloudflare by default is not a good idea and applications"
- elog "should respect OS configured settings), \"network.trr.mode\" was set to 5"
- elog "(\"Off by choice\") by default."
- elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
- fi
-
- # bug 713782
- if [[ -n "${show_normandy_information}" ]] ; then
- elog
- elog "Upstream operates a service named Normandy which allows Mozilla to"
- elog "push changes for default settings or even install new add-ons remotely."
- elog "While this can be useful to address problems like 'Armagadd-on 2.0' or"
- elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security"
- elog "concerns prevail, which is why we have switched off the use of this"
- elog "service by default."
- elog
- elog "To re-enable this service set"
- elog
- elog " app.normandy.enabled=true"
- elog
- elog "in about:config."
- fi
-
- if [[ -n "${show_shortcut_information}" ]] ; then
- elog
- elog "Since ${PN}-91.0 we no longer install multiple shortcuts for"
- elog "each supported display protocol. Instead we will only install"
- elog "one generic Mozilla ${PN^} shortcut."
- elog "If you still want to be able to select between running Mozilla ${PN^}"
- elog "on X11 or Wayland, you have to re-create these shortcuts on your own."
- fi
-
- # bug 835078
- if use hwaccel && has_version "x11-drivers/xf86-video-nouveau"; then
- ewarn "You have nouveau drivers installed in your system and 'hwaccel' "
- ewarn "enabled for Firefox. Nouveau / your GPU might not support the "
- ewarn "required EGL, so either disable 'hwaccel' or try the workaround "
- ewarn "explained in https://bugs.gentoo.org/835078#c5 if Firefox crashes."
- fi
-
- elog
- elog "Unfortunately Firefox-100.0 breaks compatibility with some sites using "
- elog "useragent checks. To temporarily fix this, enter about:config and modify "
- elog "network.http.useragent.forceVersion preference to \"99\"."
- elog "Or install an addon to change your useragent."
- elog "See: https://support.mozilla.org/en-US/kb/difficulties-opening-or-using-website-firefox-100"
- elog
-
- optfeature_header "Optional programs for extra features:"
- optfeature "desktop notifications" x11-libs/libnotify
- optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas
-
- if ! 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
-}