summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoonas Niilola <juippis@gentoo.org>2023-01-05 11:16:04 +0200
committerJoonas Niilola <juippis@gentoo.org>2023-01-05 11:23:27 +0200
commit21c64e924813bf475dd969095e8e40a5a8e11e7e (patch)
treed182cf1255bdafdb7346e0ea351a79e86c7dd2f7 /www-client
parentwww-client/firefox: add 108.0.2 (diff)
downloadgentoo-21c64e924813bf475dd969095e8e40a5a8e11e7e.tar.gz
gentoo-21c64e924813bf475dd969095e8e40a5a8e11e7e.tar.bz2
gentoo-21c64e924813bf475dd969095e8e40a5a8e11e7e.zip
www-client/firefox: drop 107.0.1, 108.0, 108.0.1
Bug: https://bugs.gentoo.org/885813 Signed-off-by: Joonas Niilola <juippis@gentoo.org>
Diffstat (limited to 'www-client')
-rw-r--r--www-client/firefox/Manifest296
-rw-r--r--www-client/firefox/firefox-107.0.1.ebuild1328
-rw-r--r--www-client/firefox/firefox-108.0.1.ebuild1330
-rw-r--r--www-client/firefox/firefox-108.0.ebuild1330
4 files changed, 0 insertions, 4284 deletions
diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 72822d83905a..c19298df035e 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -97,302 +97,7 @@ DIST firefox-102.6.0esr-zh-CN.xpi 589094 BLAKE2B dd88c9c206afdf3a13794190504b4f4
DIST firefox-102.6.0esr-zh-TW.xpi 590469 BLAKE2B 44c00eb667554aefef04eb6882a33821f0b5891ab13dd4654b780aff900b8531d1f226c3288f743bb8ca7a32b7882a3bbd7e3df424026db4154086df9e17f7dc SHA512 8e92632883807a993c3d54b93d4b0f49ce9098ae42237bf1ee32ad1f7fbb398c7acd0c2d88d0feed680f6eaa27f1dad5d509306343eac4488974dcd69e3669b9
DIST firefox-102.6.0esr.source.tar.xz 478856656 BLAKE2B 2094bbb3ba00fc2d726a620e9946ca1ec98ad4c930ed611486ac92a7c74aa84da9c15b1353603eb36ce0a9098bd1f311dea2bea255f2bb6dd06fafbc7808d52c SHA512 c0f0160bea612d0ae74c29dd44beb7fd9a1c292694b8cd5c4faf2e54feb5c27684eee821b67dd40df714d69866a4e3a8b19e22182d9bc3023050d2d96b02d308
DIST firefox-102esr-patches-07j.tar.xz 23012 BLAKE2B 41b706f5ae8695ddd33e971cf1aa99317382a57618cf19163c5bca09ed5d430dba672ac51b7ab3072360452cc89ac50397bb7992882a61a3adda37022239e654 SHA512 7048353ea5504e34d9d3950e3e5e3125f631f95269d5c9e422ca052173a316718fdd4b57ea7980a452139b1192805cb598f47f398fb148a426a85a5e979c6cdd
-DIST firefox-107-patches-02j.tar.xz 21624 BLAKE2B 73c363c6265e6e8f3049c8beb457b814f704d1493cea6c426edd363f2d49d61a8dca54f3ce33322bf95fdfc5c5ce8f6d8b306e3f6989148715abe9d4a4b03851 SHA512 d9ae1e970e183f8e5649f4b556f914157d27218ab2b1ec2886344ea662649efdc56e6e281dfcdc899813fde2f3b0d0e8a4162c9aad979d1bdd484434ccad976d
-DIST firefox-107.0.1-ach.xpi 449039 BLAKE2B a149710d662e4cb9f20a3177b4a759252cc8224a189590d50b9fb4708586196307a43b40e9e35dac4a7035b7fc39ad5cb16ccf605051ffc750f29db717b730c1 SHA512 cb700a00adfc67419af0678d4d461fdd91bb57ec2a2ede96194828bb717b3df91dad12e74e3c19b5c0781f61e0846cf3ee36fbddb3cc3973c30438316d9a4908
-DIST firefox-107.0.1-af.xpi 416137 BLAKE2B 3856d98b4f7bd241b4ea58c20d7f40118ea46df7aa47940db6754eb8aab8c05ab6e6145ad43859101aeb013e99f30c10c7dccfbb762b11d2f09da9abd548b746 SHA512 fb1b08e4abde6aba206ae59325727be2e0f8f5e75adc0534203e56e56a9259079806513c1fa31563ef418f0d60e11f6bf4416152cac0328c8db479c74cb1c07f
-DIST firefox-107.0.1-an.xpi 495686 BLAKE2B 10655d87c4791309cb8c00d6c73e0c33479f2e20adcae18e970a43f20a14134fd4af1dd2f4d236ce7976dabb6582e4322ad4f246c79e80de39a5950e7a47aea4 SHA512 145873bbc2387b7bb24b58a64b3def61430242386da18081b73641e0911123bdfbeaaf5300f87cf7e461b275ccafc4d4991b45d7699ae2fc6eb5b5c5335421bf
-DIST firefox-107.0.1-ar.xpi 561802 BLAKE2B f5ecd24b22c7921ca4857938585e33a4e951d1c26eab847fe9ca4a1792e5b5bc58bc785060e86fb49d5d25665db0b14f7d7bdce574cfc057672216f21168ad33 SHA512 4a9f8481f889cb6464f624da423b810f75960af9d65a7af75c6de22c22aa065be40ebdfcff83615d04047b913e2c08fc1522bfc1f76ece0c10bc72ca9ca48609
-DIST firefox-107.0.1-ast.xpi 482601 BLAKE2B dce2b3592493874ac5676df184644f9740fdab3a215d3bf4785bb8c3308fcc31f41f5c3c47aa9d1256d9112ae39528f1bbbd74e59be761ae1fe150147efc1a97 SHA512 d539629d6a4a66c3b10a65fa3e397826f8a8e0b39e98bb46dd11da529decd18bdefb3e6d0e26dd7c16321ea17f892eb1b458c582d3cafbda24f959a7e3c04a0d
-DIST firefox-107.0.1-az.xpi 485082 BLAKE2B f6f80b6f9467c37b04a10e6b8f5e48ed4a8f88a076d7164c44e321fc3c7a7b1abbe9f032f9da84a014cb9681c126563988b5a9f63743322d149ea32c5f629db9 SHA512 858fda6517f5b54955489eba9ebd94ac93fa8fac6dbe76f514b843df98dd5a748a1444f6daa39470eaadce00e08855eb2e9cde7941659a8cc4429927093ad1c4
-DIST firefox-107.0.1-be.xpi 636885 BLAKE2B 98ce5531a81f292929a6304b275854a71c71e06d6081b909293236fb3c49e073e729e517f83c4f46b19b6ff67a2f94b958f604b5d0f5b785c7b2bac930acadb3 SHA512 bf7b0ff36928db905d6ad32a239d3060234c8a07f486a099a58ced36d5e879fd454e4f342de28732f57708058a711a1ddeaa912a22c8f2e76a11984a8c05a98b
-DIST firefox-107.0.1-bg.xpi 574259 BLAKE2B a7174aa669a67530efc91d607ca88b0b835ab0090d0114b42e879e339f0e3ae9d78f18402daaf0c9792350621114bcad3e7090bee4a20f01cea3fe22fc8fc558 SHA512 72cfd5109f558507d894f5ca23b16040859b0b431edd9c6bc9d5a3ab3d98d9eac6e58e6b2f10e68ae31b810016fdb478d14b858c9c207414bab3c30ac7edbf87
-DIST firefox-107.0.1-bn.xpi 573784 BLAKE2B 1a27f73f0418b75a9b2ceda7e92ccb1b7949fd0c059d4bdc85668871d9fc0c3a154689be85a81b915671eacb1dcb031a548c5a0ca4ee38a99fa709259f0d6052 SHA512 4ec33ed11c775d788be3df646ae6bcc1b0e82c47b1a7df04085109b25bad9977d3d1a5f4901262de1d335a230bbcb63badff13c5d1e2e93b3823b354301fa1df
-DIST firefox-107.0.1-br.xpi 534506 BLAKE2B e7816e0de423e6d5f97e366a72bcf0a151ae3b012271f18f4e338500657689df7404b42714248b68e5ace6c57156eb322ddc828e7760836a4a0c186651fb75b9 SHA512 79163cbbd6308617bda9703371a0cce19259443cfbd722e62fb732d4f55dd721b89b17807bbe0da25d9d2d7ac1505a4826512d3a57d78beb90b2d5c017998948
-DIST firefox-107.0.1-bs.xpi 457089 BLAKE2B 33b7c04772ee3b7ec604aca714faf7746f1a5e4ba06abce99356e1ca37b46a17e330135bec1ab36985e5721eb04e4651ff8c9a74e117babeae8a7c7ecb62ba5e SHA512 d9a30d99b4425977c2de7fb6120bcbab9799316a08ac6aa31678daddaeb5f6ab1916f7d883d56b430948c78db7e7add88ee39aa11b03e23b5fb2e5f6d3c2e858
-DIST firefox-107.0.1-ca-valencia.xpi 534190 BLAKE2B a8dbbcf1d50af44173874635851faee5192be6c7baaa5d0aa272c242911c5f1e530c04f293b916917e3b6dafc2bc454f8b7f4575ac5510db09c77f23750fe4ac SHA512 ad9ae9517a8a54ddf593c3eda0a7fc32903c6616e16224a2de5173b744ae91c01e9a28884ba01ab10f1a0a0710aa0b169f55af13ada08b15b7d2cf8e94cb3f4d
-DIST firefox-107.0.1-ca.xpi 537741 BLAKE2B 37b204f92ad1f5412b19491024825686810b5c18690f74b056e7e75fee98b624d6d22ce1a2ff1e2d14e77f6a6412fe2a7ad474ad7715dd69887a3e1efb78fabc SHA512 583f6e8e2ac9cf9593360eeda15fb27eb580cd622a7ff7b66615a3d6523380d6d9c0d526bdd9163d642fe220bf66fafeb3e79720a6b6e306c262f92427b3013a
-DIST firefox-107.0.1-cak.xpi 549259 BLAKE2B f0aaa351c4afd6b2a1758f98ffdf01a786bc093f927643fbfa08923728c59776df6b4b100d4a33a84704737e3b21c4971982b9a1fc7b1a8ab5c41e784551a326 SHA512 949897082b72399da1f89b6d42d4f5c6e7ae36ecad916442f7feb35368d8009750bda40df70caa930f3f29e888a2eedc68d9b4651cb3852a62e24b0f3d1023b7
-DIST firefox-107.0.1-cs.xpi 569273 BLAKE2B 45f43aca4538a7bb28429c693b6b9042d1d340a9db807ea82138bedcfe97680b93928e87ce23e86d9f4d625993bac570d993282d0e984cc600e4cb3bd68a5cf3 SHA512 080dfceed6ca8bd6e868303d19e9306dde76e1586940092bc2fcf905270f9fad9318b6826707eb32f9746b2f984c21fd9d300b3a8e6fbbe866e0bdf9eb8fdeb5
-DIST firefox-107.0.1-cy.xpi 553188 BLAKE2B a42a488ce26b7ffa8709eee3741a6f5295e587d074ec8a6360816333cb749fb946f4a45f927c90b2a8fc961a533fe877e08e7bc192041bd7a94bd624b8955dce SHA512 3b51a35e0d83486e9133eedf1a7aaba704544208d307ccd385fb10d6f6542cdb992d60c5b9c684cdd85fa84ce3cbf02fbf633b2a8f8fddd6eef04cb4634cb965
-DIST firefox-107.0.1-da.xpi 543651 BLAKE2B 529c2191320390d6c36e76e2c52dc676e7c2af01e1e57b9889b2a90bcd38bdcb181eb4841800c5d2e242737ea2fbd14c2c2ed1c67f79b2b2eeddf4efe5bbdc43 SHA512 b3fcfd237e1bd630fbc7193f2c5c4f580ac20591a6a55ce9de1f78e58ae09803b9efac20b2e7bedadf9be8a47c95f8e1cfbe32a3fe4e253c03f121056a32b7b3
-DIST firefox-107.0.1-de.xpi 564623 BLAKE2B c644ba8fc4d133cefae88d12d53f28fc95369fd4abcbb7ba5217742bcc87afa4a0975f412d307d377ac26753b535e517c303366af6d64ff621762dc64c3635a6 SHA512 be5ae01d8703bf7d45f35aed7a65732695c9518b74845fb48e953bd2df0c8cc44a20a89d025914c698cc8327cf247eec321e1150d59cc3a9207e22a1f518329f
-DIST firefox-107.0.1-dsb.xpi 576821 BLAKE2B 5475cd6e95b5049f0eb35a2cf282128c785520f10814c07a3dc91d0f79958ea3c7b4154412327af4c4f83762222471582b15389d8d265f3f3740f18daf72e499 SHA512 d5858151071d96ec6218c6af830d26d871c584aaea73ae766b93edcef37a6dfb1724f7069a9d9a1475b9a98484abba546394546cd078e3de54c4741b11a6adb5
-DIST firefox-107.0.1-el.xpi 651470 BLAKE2B b5fac66b2e4668c8cfa3b8f5c06b6f764f4112bb158cf6ccb8caef92dd768f741c28cfeaa74e652b8fab322151587c78a85570f617af395553fd4404cba0c1a2 SHA512 dea83aac8f789a0577268c19e35b1726ee6821152ffb886021455b6cbc839c5e99a2b5e9205ac0979f248a5e1bbce0ae0e93a47a7fb7e59070caca662087592f
-DIST firefox-107.0.1-en-CA.xpi 518718 BLAKE2B 01f0aa373ccfd317e28cc48b7a90068539e2e1a663dff70fa06836f98c79e26c9286a2d8bc63c32825afefeec30e8e0e2928a086f7b945cf96a5d86c1ba49a64 SHA512 326425489312bc330924f7987ba77e7900348d1c6323d3483c949fee534ee6a5984d3697c1727945a49183a7b8e30b99124d6f33e53b194c0958badaaae7045f
-DIST firefox-107.0.1-en-GB.xpi 520248 BLAKE2B 4304aeaf9422c2da6dd6edcc0fca17c0828b847adb25d281db72e94f3d45ee6c35c0f3566893af5ac9564d0e8aabdb0369b323f02cadb4680263a3afbf9da443 SHA512 e8883a72c6454a19b01e63220a19c755d243255825ab207b13218a431040d0cffe798a81afc55b1df16e08006d9b109cb1ca16b47115fe49d9314654508502df
-DIST firefox-107.0.1-eo.xpi 546698 BLAKE2B b498b8628f366546d025e3f8fe1c3b8c5b8589e9d380dd2115364543ab5642d98e7226d721d67525e9caf4801d7372939fdf594da219247d53c88c0d4dac3d17 SHA512 13375734d8e9b49be3b8d3d638033091063007fb1581bbb4197a1e5d6a10c358ea5de07fea98b4cffea22415ef970d345f2d16a69ca30bc91d3ecf87579d9a52
-DIST firefox-107.0.1-es-AR.xpi 558788 BLAKE2B 4e5703ecb9f1b08071c837bf9bbe271ae21efdc9e20299fdca517ef46fc1d69fbdc39842108d0c4a2482693d84fdea04bb689c5f69cdfb0e7c3ab46de3bd2fe6 SHA512 0a3a3dea2cfa67f9406d7e5ffd05a997877f4cc130d5e604fa67dfded85814c5d05d707a0ac68235a0c0e82a6f13a5578161d1cd559ef2af0f7beadbc4af54b5
-DIST firefox-107.0.1-es-CL.xpi 557630 BLAKE2B c226bf4f7a68411a1d53b10f7bf1dd712ae54f5a8664015efefeed523100cbc95204f0a5dc5120fdde7c78de3dc8b939ca8bbe6eb85d8ce43ba46fae70e234b7 SHA512 d9412af614ea3d4924361f61094e6cd49caa524e31fe2250d347d6069660f48c5e6e9c8dcb30b643904fbc16b921fc18cb3545a725daa09c79ca44aa2ce064b2
-DIST firefox-107.0.1-es-ES.xpi 550456 BLAKE2B d9e84ce9669ae1a7be63cbc0713667111c4247c1a4ee20c909f451f9cc9e08d5d181dba502d690736b3c5242d7f196ba75c86c32b1ccce2fd6dab160a28034a3 SHA512 b5900969b219593b5565161288bbd4651f9e3d57d74544a1f59ca9373cf6a1bed8591e1805d9268c39e035689fe7141bc7c9fb3aac7a4ed6aefabc08ce5c4163
-DIST firefox-107.0.1-es-MX.xpi 561149 BLAKE2B 346546e16a85be9f0ed7f3d34daf3ef84c39067777104c3bc4169acd81d847bfe47ef606c77d1d79676a6a925233e34102f7b3655acf09f5383eb08ee362efb9 SHA512 5fa7d96cc13f25403c1dd4010aa27709aab772f0d153c88c4ba376860e12162030f602ec9304b9d0664d43417f91ae4302f83261938c7c8a4ed4bea460910ba0
-DIST firefox-107.0.1-et.xpi 528249 BLAKE2B 20a57fb52173eda4b6c7e484bed68aa4c85d2bb17aa22614de1190ae98e93a59598253bc3e1a4b3bf82002d343408b008564471203d3752376e8947c1e2ea727 SHA512 c58e5b8997c5dda1e25da1124414cc9f5d355ebaf6827095b81573ccb5c086d9fc68839397723fba2e53923ead559b281071c53bec2ebbc7b1956f4f5a8d5145
-DIST firefox-107.0.1-eu.xpi 547839 BLAKE2B 112dc8d342e42976b50950ba955efe500a9f1bae863e4dbb540e5422972ef2f7bcaae2b7c65d64ee215e272d9727a2d90f3d625da7bd4315836925c947516362 SHA512 072638c29273f19b21cdd8a51f97bb61b716783d1a7fa39634a00bae481eaec249ffb9c0ddade9f87e5f2973f3b3688cb70b9989df8ededef4ff942a28fd8339
-DIST firefox-107.0.1-fa.xpi 565788 BLAKE2B 7736bcf53fa40a587a155c758da9412477981d54d61bbd0f1503d3cef5d9fb9aac131311d9e733471130e3eecc807c365da20d751c1cc018da1cfd70aea82c61 SHA512 7b0352c0ec350151e88ab183403c7e5ecb847e9aec867933000fd4222c051ffc117b2910339217639a9a3ae62d5ee8cacbf26456221b9ae6fdb203ab0881a3ae
-DIST firefox-107.0.1-ff.xpi 469111 BLAKE2B 1c8c7f5992bbe30dbb211e54366623b4315b556eb747bf44557be86f1c48c019f782a7dce506d4a03be83d7ad39b56e0d5cec6132fc9c7289a2dff753cb1167d SHA512 57d16c1650165ecc287abf87a8439d7b51ad828f0571a8304bbeac6a62c0f086628c834fbf2ecaff62d964bc5b9e6d39a26167b665d478a3d4afebcdbbaab84b
-DIST firefox-107.0.1-fi.xpi 543813 BLAKE2B c1e287b0fdd049f02aaba3a2b66b1beb61ac828571dbccef92e8c28a84584a6e83f9ef6896e09682176ed121e9966bec2a69adfb4adf8de8c13e1c9a3342496b SHA512 f9078015e9ad82b6dd7434024bab1ffbcd2cedbe83dcb9bcdaa038a85d044cac2ddc589793ccb671191fbc3052ceded3c683921041ede7b5b3b75cbc8d6c49db
-DIST firefox-107.0.1-fr.xpi 569058 BLAKE2B e87716467efdf78c3ee8c60e05836e7ba239eef9752ca9cc215d78f58b369c916a2189ea06164bce38287f13dd4bdc979b6ea532fc555c613cd7e1622364d439 SHA512 6d224dba6b798969c485f915427d7e42379488873452f7dfcd350ae79b0b6465b445077cfd411d7355dbdbd0a3b72a3c02e0d85f1128c7abd7aed07aec0ff391
-DIST firefox-107.0.1-fy-NL.xpi 554258 BLAKE2B 23c9c80d61b2acfdc19a5a5c1819233c48c7d145a5b4d9f6fac5eac1da206db7b8508043abc34d0c561e5f7c539e0b1856b1b0ff2945c8fd93d87f895b2da4f7 SHA512 5fa663d1c295e2fdf3bf52ae2ee34e2c3abd0271616e5eaa498d3ff6ae373a5853900f3be27ac3ffb45d214e76e08dabf77300cc7b8112b4a67d662919745471
-DIST firefox-107.0.1-ga-IE.xpi 464759 BLAKE2B 721332c4d13ec77484d91dd44486afdd4d3537430c3e3fa07c28687610c12a193cbcee14186554cd4e6955b158526d6bba7618c79171d7034621b7449a37d9c0 SHA512 f33cf9626dd9f9e284a8d1a2d1eef12afac203fc5ca1920f35bdce26a44ef8942d661f91ec8721c54c06d8e4784948a6e85473a10887e6669c8ad6ba12b3b931
-DIST firefox-107.0.1-gd.xpi 542597 BLAKE2B 85d08150fdbf821de166c2b33a9b8f6cc205b250b5fe9a8593072e50bd3bf3163e95d41928cb33e670d8c20d81e80a0546573d92c723e5f03503a2050185a35e SHA512 9309a42b376950844201be1130426a32ee79a9f63211ff5fb42ce202985575ec5111dfa8a22d67cd52df1787218de1dcb8df996f1ebe3f6238fa1970ccdcdebf
-DIST firefox-107.0.1-gl.xpi 537433 BLAKE2B 297822dca0903df348d7a8e37f80765cb47d7969d65fad608ad737a4319af72605f957feb1d874905be192fafcdebf209ae02320f03a3de181180ca493c0d554 SHA512 b99a310793bf8069d7256437fc12b6d6e1aab8b13c1f56a7e348d0fccff3ad29d382cb0b474fba014be27186741de36d41e0fbeb96c052402ce7ba7406dcf163
-DIST firefox-107.0.1-gn.xpi 567616 BLAKE2B b02544d0a57ab3229a50967f6ae5d4954f26cd4531c78da3a5f81144a766aeb4d65e08dd78117f5d8de65ab3fbebe1ba9b13133db15a078f006b91dff2ca96f6 SHA512 a76161002ce37adad060228f1244cdc612613910e5dbaa052a928d201750850a97da3aad2c6278861ce4784251600e6fbc8eace38202dac564a8ea7705b69543
-DIST firefox-107.0.1-gu-IN.xpi 523506 BLAKE2B 74af08617fd81ff2118eb4865f625b90d8fee397ead1d06d998f1a9ebedd76046917a0b619e16105899b0d1db748fb6cf6143f755b881ea13b144a470e3abce4 SHA512 d4bd278d28a115c5cfda876407dbf8ba8a4d119d3187790e3b4fac3f49c45a7112c34c20c464343a44d2a69cdfaa706aef7915d92eb246881e46cbb19a0b6fe8
-DIST firefox-107.0.1-he.xpi 564223 BLAKE2B 63bc218e67b367a6e74935108ef0e0479e79ed650844ec1bcdcdc61725ba261130eb984e67df156ef2595fd5247c77955dd602e986d9991a1a28eda6d553ee3e SHA512 2b27cd7ccaba5af3807460f7d469edec63e2b75922f2294d1bd5251b6efa632721e6b72738df7f4428881e98b4800a32a4bc41c977b6c2763592150036e60d92
-DIST firefox-107.0.1-hi-IN.xpi 552200 BLAKE2B 512575f1884fa9b320d8ae88d4ccdf495015e0aa8b4d1253dd04e0d6cef52b30242fad9354f1bb2f81b5028ee84c136051a03412bb6841cd8dbea8476e889e51 SHA512 2f871f0ba44be4f2be17db16e8e1562988adaba6d5ce58adc6207d73a78eb0dd97777ccb6276f7a2dd53733fb84cc75b36e05b081dfdb0a8f8fabd32044ea3f0
-DIST firefox-107.0.1-hr.xpi 532340 BLAKE2B 54795559749f44992f6085bc95099746247473fa6c75e263fa9a06b2c75b31e1d60aca7b7978fcaf2767e0a49a2ebbb999df97fbd498ce16cd1e473f41afc6d5 SHA512 f2f57d1e8ee5667f4197806ff87aff7e10ca4e24c3555c0f456a2a53bdbb60022d597a416b1db48b015fc7346372a8ec689b3246c975cf153ac5de53da4f6f8e
-DIST firefox-107.0.1-hsb.xpi 573054 BLAKE2B 561871f8b3e705b089ce91e53f7b68bd8f388149ead676af3dd3f0c8e22a25713528c018eadfb59da55b04efc56c38db8b1b46d3fc0da30f5a5471841961bf35 SHA512 16f39efa86ebcdd04b67ff1b5fd7a0800be33d1aa73dec359c65378357c86e3b00b86645a4464827d44c80d2d9007fd6049424ab7544ea9dd2ccaedbae678a7f
-DIST firefox-107.0.1-hu.xpi 578347 BLAKE2B abe623e9053b9e81ff7fb52074d15c6f4cd7698ccf44d8a06a4bb85dcbf2592f1c5ff724402b2c729fe5b29d334f8087de1853a2835e0cab6399997b60e30565 SHA512 c4720fb716dcf5a700dd83298d4a98bd13c5ef3598a4fad15b29ed77f8ece863cef0095e41d1036f7b208fd1ead7e2c5e323cd6e0d567f3f1a8828abeae06375
-DIST firefox-107.0.1-hy-AM.xpi 588067 BLAKE2B 63dd3f50210a89f2bb587d93c48db5dbae74325b7cc545305b82ace3b3a3432889e758ed61954b8e6a3b0fdf02167bc86c356605c7bc2f0a38f7635d17bfd2c9 SHA512 bc7adb377fc07b56d6efffb76d52ede43f5f822c556ef035ea8aba646667cdb55a4bb9409a2d590516ad1af901b193480aa55151315412d370d23304d8632cfb
-DIST firefox-107.0.1-ia.xpi 543056 BLAKE2B cb2f716fcc949e195853b441035e93a55af4e174528056c79ec3b0e2dfabd854441c11195db27ac5fd1e74e40d4b1f864318098635ece7181fb6db03024da124 SHA512 72f1927f7a896ef0bcf99a8af531c800d792194fe97a05d3d4b7263e1a5173bed7eb8ac8b3704d7634e6417f6a0f3a48b912fe1a0e0a3ae828971fad5657b679
-DIST firefox-107.0.1-id.xpi 540031 BLAKE2B 1f4d13232e32b0049f8cf2590c65378ace6fc9b6c4f0b1ea5b8a2651a052e9704a1c56e542e930f78f3fa926c029c69d9fffde230233c516063d7bfe0f418c66 SHA512 79b8c8a6c888433592e78da046d7834725632ae66c696901db9a72773ba705e1ff43466dc5233d712f0f4379dea4b13a72f9b624432fb1c67b9ac9bd5bb5cee2
-DIST firefox-107.0.1-is.xpi 552255 BLAKE2B 91b3673fed93ab4128e99a030bb9aad2ec6dc17743dcc8fe0885fa4f62640b2a4403b9de74bc84b100eedaa5993e205a6abbc75c51e0d7549bf6e0333e91c1da SHA512 4ad8b75ef79031fb0357e1333bb4328751f440a30d9502c9bc1362ec74c32c02559b2d78e3b42373c73fbec23d20798962c61daed430c4f57eceddaece279741
-DIST firefox-107.0.1-it.xpi 481517 BLAKE2B 7e02a949367f899e586cd27ba6942ecc7ca80b1cbea5a7bd0579cd27ec67309e6b13d741a87cfed395439e49dde27b162664ffd3c9a37c34004eaea17472c015 SHA512 80f5b17194b5c68a0a64f5a077da50ca9b63afa2cf14afc0d5967bbc8a2fdafa18bf92b2869b6b271e603fc796669e0d09516a41cb027b0155100d78a899825e
-DIST firefox-107.0.1-ja.xpi 603795 BLAKE2B dedf27a1d97640e5e4cce8fe29439189ed6694b064bc7737501474ccc1721767762d9907a121348e7283c67540879275f8da446ec07a08482fa4915f5bf24d44 SHA512 18de035adc78584639b2e4ef354a6e83ece0de42ecdc4d03ff0fc6fe1b853144e0b3c42cb4a4184c99d9e7962130001abc3395698d49dc2b5b2da89a4db52a26
-DIST firefox-107.0.1-ka.xpi 606241 BLAKE2B cf56281ee299f93047a8756067c94f441927a2bf5eaa7551821da925845102fb828be9acb17bf30377e9b312639877f90c9aee14b98310bfe3834d7d8d26d0f5 SHA512 2126fea6304200305e36aa1b3e64705a2db11eab18c223e7d4c05ace8896b9c750ebc86dcd4524b3b54188a9914d834b9699a01d5bc24622f5d5d1cd34eed668
-DIST firefox-107.0.1-kab.xpi 562224 BLAKE2B f9b43668aad9d962eb9c6ca6a0579ab7cf89c883c12226009afc8d8a30a2210782bd17b680c045015de5647b6ff33ecf5da871f5d0c10e1d9630e40c177c4947 SHA512 29bbd8eaef84f13fcdd27b82e69fbd460321f4250bec5d06e8ca702742f334a4a2d66f3a83e01c78a6d14931f39da1dee96fa6accdcb93a153c6e4cfd020e226
-DIST firefox-107.0.1-kk.xpi 625497 BLAKE2B edb90e98ed891404173d4b71c7345904d97a0d65b648e527586ac2a515d1185862f40499bf5300ff8a7ecff5cde3d156994e3f38511fad591eb1d3df676e61d7 SHA512 efdfc4cb536b4c97fa64552735bea0230e009aaa86d2b98bcd165c9502f97b35afd4804ba96f517b58422a1d838fb9f78cb637d570b4ecdb77a837c29c265f80
-DIST firefox-107.0.1-km.xpi 525697 BLAKE2B bdecf673084c50ba69f9650fa423010d98f97ddfa31d1a2d900a15d0102f0853101e8f7f867eaa8201ebbd39bdb0a1caa1715d8a3461ff7d4530ffd04990d38c SHA512 0a9b60e508c4bf7e9fe1c1735833ae178361b5de56991b06ae198602b1da1bdbc01f25b0536aae496933c4a284e060fc979a68429393df0ccefdb5cfe984f46c
-DIST firefox-107.0.1-kn.xpi 491417 BLAKE2B 30dfd67cd5bf078668fa040a4f72c0b760583607d29d9a50f30ab31b13a6a5faa11922fb6a592af80dbeb99631fdbf380a750dac721502b98ded143878105f51 SHA512 64d460c35c9546162410373194d3468b40a0435ecb24024e90e7b401140ab0457d4ef474319f42e4c98d5207408e22773f0b6a08e91120be8f1d827b2feec81d
-DIST firefox-107.0.1-ko.xpi 589126 BLAKE2B fc0dd436d60b310b1aa62221df3fd27ed8baec511da0ebe96330809108aba1e7094033b79aa14829e4f30168a0c528091e2907181d540d21bc60b01074ac2002 SHA512 a605f1a2c4196e9d62a921189dd0ebba14d69ffade1b2c971fb1aa64ff078290035e46c23b47e4b212cb2f54b31e4806658d13cb50de09f7edab1c3cd126ae69
-DIST firefox-107.0.1-lij.xpi 465965 BLAKE2B 18b65311636a881ecbc2d6a507322d200ed56ac1f0075667bd89dba104dc7c0dd6ff02d55e8c0861cb009d3587276a9baaca6b240fdb34aa4f4924ef5452305a SHA512 209ce19b88e446c51a289c8a0adcfe443e3d2b254ff0c47eaa9ffa7c57846d98b7860fecbcf59ab1f233f27c6255962c1609719bc885a858b6a357d28b44e516
-DIST firefox-107.0.1-lt.xpi 558419 BLAKE2B ea696e8edc153297218c99c1e123bd85778da38ad6eff7cd4b0251200db0b0c04134df9d3ca0e4d15dde384970ae1d3d7588422ecaaa108cbe8c46c11f4f279d SHA512 13c8cb1559d76a5e8cfdc88fb2e37715f8aac37a389a53d296bc6f7507d5dd2af5a3fc42a2eb6a0d865a13259f24381458a66e8f926f361f9023deaaa51c9347
-DIST firefox-107.0.1-lv.xpi 460737 BLAKE2B ff838c14d738e55d5a94e061d3a236b75c2bc42c2db0293e49db2734b6b820a01f2cac19f75fa689bdbad03c00038407fd6e065eb529d90912590864c7496a8a SHA512 01b5c7c54f3ab2c040203059e3e4be626c9c1cd6d8cbf83ffc8b44981edb890dbedcf3a669d61d4d83f5fe48bab699ef869c4e8a180c660688d62d7a29eecbaf
-DIST firefox-107.0.1-mk.xpi 481448 BLAKE2B 4b44cee795a64da5d60804bd657a4da40c2cfc34e6040e6f45988be85aed1914defc6ae63d10b286b76ccdb638e9ef334573d2f0e4cc562fb418114869354ef6 SHA512 be5a8ca52cf586dd85031ab48f8cff5b0c2d45795bb79b527907a910d1985d8e37c33797aee0da4c95551a4beca936e76222aa51ead870ccf3aa7aa7c6dc5314
-DIST firefox-107.0.1-mr.xpi 526039 BLAKE2B 9cbe0b87b017f577e2f1068af7f4a3c42588d2b2ebb51f2eb735a6c770ee0c55febaff45a6c01e529e38d30e733e4e00f59bc14d6f82d79ea956497fab9156fd SHA512 57b100056cfdf6027a8f8ef2eaa0b2783a9df8210f7947b5a39b267c90e1f9703d661b90ed90f9ab6b28c0d5534a8a1ebfba7b053edfc72b15a781cd94a507e3
-DIST firefox-107.0.1-ms.xpi 445493 BLAKE2B bca003813cbdca4d7968855e146e6485c43b7c176a1fd6f6c10b3e8ddc8e9469cf14a0c6163939a1269b6fbefa6ca3368277fb5ca45248412640a313fa0550ea SHA512 0b97993d02beefa37c135749059eee420d8cd29cb874049db0186738121cb3d79f88ef147e44b392e0a9fa9b125ae3bed1e4d5a931800e5d9b71037e167c29d6
-DIST firefox-107.0.1-my.xpi 512003 BLAKE2B 2842daac07b031c5061ea45c8726f3d5bcdc404710cf6d3075938bfabe02dae16f537f9832363f98a4b940b599bd0b04e0ab4034daf92245752ad657b34fae1d SHA512 98948c1fc465946c0920e4f13cb14a38864502a672a6406ae22dadb993d00cbdc9cf370b1614766dbba02debd4d41993b7c168b28b7c642dc67431b914741dff
-DIST firefox-107.0.1-nb-NO.xpi 540798 BLAKE2B 24cb4b31ba6fdaf55b01b16e37b78a45927d3cf15b7bd47b69b821f395b30bc447d0f60cb200104a3a384284e3940445957a4459e84ec07f158c9b1321dc9eb3 SHA512 760f01f2c9ab83d34cdc8e5efc5fc3e210543f094a32055912725dcc22eebfce49c6b3e38f973d48be10871e9a7909ba326ec4364fcd3acf3fdb6c769605e5e6
-DIST firefox-107.0.1-ne-NP.xpi 480176 BLAKE2B 7c697c407ada21edd972f528db8fea81930b4e39601e2300291d5e68ba47f5f703e241f70ae11715675da378d53027064ff457c2b99d2b1dba44093983d7b011 SHA512 de6337411d9bf06f347f3baca406ec84cfe92955ec69aca8b69c6a60c0268550db09da10fa3fec8092ceda395aa712df5e4694b54072eb9f8e45b77eac867d8d
-DIST firefox-107.0.1-nl.xpi 548546 BLAKE2B 670b16f49dbaa1e775a295c0bc2ead18b3ec8c2580faa1c53a75c441dbf3a23ee2d36e009134c7e964f332cf324cd7feb5c4f7e9ac5d509956b00f445dfe7631 SHA512 672659ba87cf26a56521b1309bb146da0726fc889c003239d8fe20ede046c6e7930ef7fa74d1318cad50a4f4d3c4e3a9412c7f556ecf690d5ea39c57dbce8d40
-DIST firefox-107.0.1-nn-NO.xpi 543213 BLAKE2B 8d2e881f0f4711332fe4c3ba629789a6466bcaa153da4222531f6349728551ec7adbd4715ac14eef64fe7b9764a759f40314982e86e2c2d30433a13d4d895b7a SHA512 16949e233389932581fa56de01d0f92e10d796dd2d3f49c8b80a1c34dc6792062d3ed8cb3b0a860e1eb9afab040d032713ea4b677e8ca2bdbdd96d944c1f40c5
-DIST firefox-107.0.1-oc.xpi 564163 BLAKE2B 7101d30d595bd0f1a8f6216ac0c4f4d7c833d6f4d8968ef403635111dc1f1f212e48a927f29e72021939ba8eece55a670880beff114aa082875e9e4276a66bc5 SHA512 3fc357dfae3f7519092a7e1e389208524b5d786bea3d713f65c9a7761bf75d00d14ea44175d05ff90902ec278f7dfcf50a14abe8c1d99b0166b20559db626f61
-DIST firefox-107.0.1-pa-IN.xpi 618932 BLAKE2B 400865d13066b7806c311dc712d45449858bce3bf657082a62288056ea42a6e5595fee55c53af96ab8a8be955db64251371e391879b990220c784735a03bd7af SHA512 c67d33942c5ed7f74792e8099be88843bd51373f7dd75bd6832637b61303918e9beec18eb564cfd79332fa1f8c92bd4618b90d1f66469ac90e9f87ab372433cb
-DIST firefox-107.0.1-pl.xpi 570594 BLAKE2B 32568f4e55c8b881d03c095e0eb99764580a2b83b8f1e706d206e0353639784002b93a761436659e27f105a873e2c0a7ed416d2b51f2d664d8e393cc592622db SHA512 94e0cb3d71f8511dc502cc8cf6987371a23dbed1b1985486e3241ad4888d00000d65d198540a01f8813dfad997e7164d23ddd38124f1640b75e6f371ea7c4576
-DIST firefox-107.0.1-pt-BR.xpi 553416 BLAKE2B 18a5fe58e793f9e085966efa5ca1b4e31322952ee39eab41884820783552d5c9b974818959f91a73b0415248488c25dbc98d8390f793d4d719d2753a1cf1ffc3 SHA512 0f30801b2204c6fa42cdffca0322d758a482e19ce2d91ccb01fbcd38481f352627cfd617ee23bdbd42905cfc4c48d4bbca2fb61f4640966346464598facf34b7
-DIST firefox-107.0.1-pt-PT.xpi 558236 BLAKE2B 658d9fbf9fd16eb6b061b81ebdb8ce6245634a8472f1f1c0c8d133572aa29588e120b6c88e9fd320641a30bf5641704a58f2991f83e252b0a83152f9a2ab003f SHA512 000c1edaa2837c80f51de220742fa15f58320de98a60090b8d91c242b2fde1190df6be7e8b3cf4f268258ffd7a74eaf1b27a7872382cd0863d722c21ef0353f3
-DIST firefox-107.0.1-rm.xpi 548611 BLAKE2B 6b3cc0a78822fe9382701486b6e67279c58c72ff44f00064e6082a4b15b52a263336d1017244f5d9429dc759731d158659326e85d72391ffe5a6fbd38ee08034 SHA512 ef80bf0f52f6c7924e5c6dd8709b4e596c13934b94da55394b107360aefe6d2346f4f3b946f3c28f98ebabb7c041f69432c726d4a5742309ae0b81e2cbf92ef0
-DIST firefox-107.0.1-ro.xpi 528280 BLAKE2B 6ae82a8501d57f9ec8b87dbd46410112f4f0d19cd464b0b6930b6d28ccfd2192a94c25b3d338e4f0a9922e91fbf1c0cc454a307bf023eb5a6a0578ebeb97319a SHA512 486de7dc3aa134e280a288e60b0754eb228892cf1f9631febd074ef491e45464dd6cdd62ecd40dde18ec85319be72bcc9a84f485c7a8f0ebe9863611d0ef72b6
-DIST firefox-107.0.1-ru.xpi 640928 BLAKE2B 0ef5be441ec773ba67050af9725dcc691323ac5d2669aab29e59aaf351a31de9f3ef59a1844421a08f1b3feee10c39221c1a6ec0e7b6ca0c69c24c6599b1c810 SHA512 a303388b2220078102cfc757b5e1e332ccdebb1395c587ab93c82ab49683caa646f4fce84ab86517be7faf759f752bb4fd999b305b0e25c3a370c66e5baafb31
-DIST firefox-107.0.1-sco.xpi 498952 BLAKE2B 3e5e1402c36fe81239cba0b537ea2d0761cf4e535bad789025dae3da6abf4e0776f5c8cba990db7d1993be8adfb7f363e933a877ab609599716095d20b07e80d SHA512 5bf2a3e24b950973f5169c124f1291c657a889dcaa02bcc3b8fa787628092f639380d65158c76d5e96794f457d5a17d2d80eed54591bac18d452f2236e17fb82
-DIST firefox-107.0.1-si.xpi 564935 BLAKE2B d05ce2726a8c6e7e7a1c2e95fdf4a7ba14b827040b379744cf7c81900495b5ed7c945e08e1ce54b04f1fbf6c0ca08d712504a6fad8652aa7b15442eb24da65a5 SHA512 ef23e52683a681601ac1b5b2c0d8733a97eceb0edb250506e6cd964a423a10d5a128975090ccf924d791c855d3b2ed5670d431556b963dcc75909058bc54f253
-DIST firefox-107.0.1-sk.xpi 578150 BLAKE2B 31188b7d8518474c6849352dc0cea08ea89d86e529ed85773d6cf3fb26287ed13d07dda0e7cc247044221c6e5ffc8d83697b8c909d154b0fcbcf39c97dd8926c SHA512 f879c693b064ba820288a33c993daf83cc763a9289d0291918ba0eee98a37a1b477b1692690dd8631747af5ac3129126824367b0765403f5b9449ada46223dc9
-DIST firefox-107.0.1-sl.xpi 551906 BLAKE2B bd51c797ad6c2cec72470d8a32f6ab57ff3f258e22ed5d81acb2d394762eb9bf13e8d852762d55861872a22eeb3a47047166756d2c8c34cf67881ba6d106c545 SHA512 42739408646160d8cb963ba1fdaa79872b322669fcb0472d5c5160dc6084710e2d6eab5fe223c787779f93a39a8db3ba98695b03d51893d6b66c46b11d1ebe88
-DIST firefox-107.0.1-son.xpi 418041 BLAKE2B 40a29562c3def3b7b0587b6e7b94a6717037142ba024f26c9aafb87b6d3a8786283eb210106646f5d55b0d79821c65ab0efee06d0cf44e98000098f4075f7e1b SHA512 2997fb54d99ff43b6e12117963f4948bb425f5b3de836bd4869547ca985f040f7311b307df8e1e5c50aafb8305b55b45bf3c267652553462b7de653931038283
-DIST firefox-107.0.1-sq.xpi 554278 BLAKE2B 9a57f8377eba29fec8f2a92c356ee2487299104f17015b1c5eadb04b690a0456ad502f6ffffd6fcdbd01bc6ab15a0f5129ab57976a2244b98c7b4f9eb76d9516 SHA512 bc0e0c8125432b64f9d9f1d04ef181d00b9c7f82eb06ff34cd17aceaf1d3d92622853227e13cbdf9e40c4ee7096b9b217bbc603b8e6d61df75e4a881037949c2
-DIST firefox-107.0.1-sr.xpi 594624 BLAKE2B 4cfb39b7f693df1ce1252f543ee497cf315f78ec4536076f5cce2483c9279eb8f41a0ebdc4d51f9ec5bba55dd25bebeeff9daa97e338d9f04cb9038c42563744 SHA512 958a0de6256e75b3769f4c115fdaa6bd7fae4133d7d39986a93ddb1e17a9737a50d73fdfd20ddf985e51c2bb090fc76e9386a2353fe3f54fea522265c8c94629
-DIST firefox-107.0.1-sv-SE.xpi 550431 BLAKE2B 29c03ca1085d8bff372bdb81479d43d5f055ba11e171de1cb7de53dcb7648081de1e988b11edfc1509d41e29214ebfb4926662c94768b0c3de6541fdd1d167fd SHA512 84f9b91b77d8eb1ee283fe671f9c440338876002236969208f386ef00eb00271074685108b69e55fbe95317e223ed67158eb9e741155c5267ca5eef4e979359f
-DIST firefox-107.0.1-szl.xpi 511813 BLAKE2B 008466485cf93a7b28b15d4896462c72666cf12e4cd4177e01cef50170ab5154f860d275d943419bb719f584f0e613ccfa28ac3407d89752be9bc465f8b8db22 SHA512 653e6f8d3e9c12551426668ab27efded8641bcb74b4b2545b2287fe0d367ca4ec200a2ee32c9365956ef7524300bb1f611bb40fd2b5c7870b595b870e69186f3
-DIST firefox-107.0.1-ta.xpi 503959 BLAKE2B 35806726c2b9222bcc3c984dd3f40e405bc8a205cc04a1fce4267b4767bb4e16efc205ae969e52ef004c43e1bebc2ed14f24ba2b04fc318a92d8d4e4ee30b31b SHA512 429902bb4fc55dfe93c6e044fa7540692b50e6958a4f403ff7b5e26610fb9718eb1c0671418454342a2a04dd1c2c21460b00f48a35b79c6ffd21682337e3674e
-DIST firefox-107.0.1-te.xpi 550791 BLAKE2B 033471660c1f3c9c19dad3580740aac1d001e9d45637de11537e65ccd3379a19aff7c517b5f1066ad1330be69cfd094adb0b5ab517934c2be89fa513d5cde384 SHA512 ec0450e482cc72521cf84047055e721299245839911f226b70149f5d3e7737f01a4ad68c005d673032f80ef463c1d7bd1f7be74ad56ded16842510737a83fa5e
-DIST firefox-107.0.1-th.xpi 617234 BLAKE2B 2fd2b8f875dedca11a147405748dd264f150da276d9c7e8d76df3372a328f008441eff8bfc7079e5eaf12532c948b8144abd08cb4eb55bee4dbc99d7d3dacf21 SHA512 5e6716712d389fc216d20468f4938ef856667413c548c358f0f619fde61d7060ddda81680e9d03a58f69168dde5583b64d9f7dda1592807d63967ea01a004b9a
-DIST firefox-107.0.1-tl.xpi 517170 BLAKE2B e4b7330527a5b9f2b26cb00a5bb0e9235f81bd535b3df5ffd04a77dd64a8fab7ac851ac60a3afcc4cc6433a8d6d138c50461d6fd61d9540f6d142ee882bf8c45 SHA512 fa5ef8bfaf1d585df7f58ea2bcc9a53a91a9bf2c0bba51e8c5084b649c3fcba22fb4dcc55a1d9ad5ebe76e066112a83cdf244067105ae38642991e3b6471a7be
-DIST firefox-107.0.1-tr.xpi 564032 BLAKE2B 940a9c1cbe3da18f8dd493425f7bdea7264756af484fbd836ca933236e4cc198302db870b389012035cefe660a97953f790d140039c37a70efaa32948e9655fd SHA512 3a7a9f0e45942cc07f1483eb27dd24df8653fd571509ef3667826698d6bd08634018672fd49d8b7496911251f2f103cdc4c29321b1e5e65dd7e713813f732fce
-DIST firefox-107.0.1-trs.xpi 481809 BLAKE2B 9e671e7e10889352af3c4420e541fc9da2f8c8548365a840aa8052198901d915bbb6b5368c82aec5730db735f27d194268b6b2dd4eeedfb13d21ffc10560ca7a SHA512 92ddc7ac9ba74b56cd73f00aec7a5c5c9485c6370c7a65f20177f6d7bbd4096bc9d1fae541a679c6375cf2324976a2cb8f59a05aaa1d3de3daa981ccb249551b
-DIST firefox-107.0.1-uk.xpi 634111 BLAKE2B c6371d66495ed14fead561c7899b5f9223b443e8d2b8a5d6e4973289398c940fa87823641cc4bca42590676fcdcac2db4dcaacf023c8d926540a942aac692f25 SHA512 afb80ab6bc3a008035222bfb2b0d576e55c1f96577cd522f9f7f2815f1b40b502c482e56d1cb8fef2bfb5a28c10b9c60fb8a2fd69a80dc51fcb490224c1e2b94
-DIST firefox-107.0.1-ur.xpi 553081 BLAKE2B 9b64dbd578e695f2e8efd012bd52527b6f024e31d2e0816e1d6cae3535320c27650904cadf3fe0419edf36fc654d514184ec00cf7df8e98b4b4b458560fe339f SHA512 e155e942d8e7aafbffcbc7b16b7745322a2f41e2872d4de0c5499deb647739086d9f5522f73b3ba5fb64f152ea3d486fd40c837542f4d69d6c41b245d6389816
-DIST firefox-107.0.1-uz.xpi 473055 BLAKE2B c9a21bb2d7c2886c95829e99a8bce06f47301acfcf6c76d919309ce4c70b1c2bc6b47bd8f9bd80c7350e6e375a61f48283405412948b7607ebfd35b3833a2e24 SHA512 905434a50b9f264fd26095005cf0c9d155181e9cc6260c1a8ef26c1139a64afa7d21b8b827f01f221c578a0cf3e8c9b5082f30ddcc726a45b6a420310d321dc1
-DIST firefox-107.0.1-vi.xpi 585158 BLAKE2B 5c030fed4c996d44c712065191f8f3c8248c790b45b68cda43779542767e5349697ae83766599455c676382866d2531b3cbab7921033ff09c47e8c5e804c9caa SHA512 4c3d86fe4255f121ff2ed3e252f6b379610abafa2017fe13aed520e217e666ba7443c08989ac47115670e2ad69730583bccace14bde595345efd7dcbf991cdbf
-DIST firefox-107.0.1-xh.xpi 414832 BLAKE2B 3db7a14a5cde7a36fb0ddaf3c452787f8b4835b6cc025334dfec8a0f131040b3eea4171784b8ec39f7370047eb0f58d5b16904282d3d9a38d5df2727b08ab7c9 SHA512 36006fe32b4a6b5ffe208006ec6df870d280d7040ca1c52182839e9ad3de4e5fadd49f942170751549158f6ce894d560fad88c3f78ad92a9e92f07b007e10057
-DIST firefox-107.0.1-zh-CN.xpi 585099 BLAKE2B 98bf9c88917666a9316c8c7170dfc83e7a88d2deebd853b282af0b3854405a9ac258204df9013115dde2b8a0789c431396a8d9be6dc6ee7ff7a81a7f3748916a SHA512 393e75b0ec843b00f874ca44b0a378bf823223bc83a107bb8bfde5277c590a5c05b3633a72dd52b24e6d5755e19e844cb70ec15a12c696aaa53852ff95d6736a
-DIST firefox-107.0.1-zh-TW.xpi 586226 BLAKE2B b3f7b7831a501304dc47282f07f3edc1315a109a4de76956194644db2164544e8b2f85ec9dd98f2d9e7393d41ed603cf8b3cf3990c4fdf9e650cd453e61185f3 SHA512 18a5f6890a2f291bfab58252b5456df7e61f3f6289c84ce5112e1e1d7228fb3d2ec92d0f6a7669ee81ec8ccbca4ecc858ded8e5f2ecaf9839d38426851f8e3c3
-DIST firefox-107.0.1.source.tar.xz 508678860 BLAKE2B cab3d7e723c9927518a3acfbf8d0db7846074000933074309b9bea1dcc2e182b579a7a6b2763bafeaf813d9846c4539d6e73cf75734844f3207525aff7e5c8be SHA512 e57e4bfcecbcc6dbe73f23577a14a2998c8c3f3d602f85ea06f99e0974e78481b9f7bdb019cb4e9733e59f56be1407edd64a2adb7b284bb4a87b46b1e2295dea
-DIST firefox-108-patches-01j.tar.xz 19984 BLAKE2B 73e462e94e9646440a0f316a3445fd5839ff40aa8525bdef9408374b0b5e2de03cf02f72e2dd9975020b1997817e3fddb07547ffbd97a1932858327eb5f8866f SHA512 f225c27f78614e57e2626236b2d1b2a4e49efb5b25068b67705e918cac2bac0b63c96fbde71984f348ffa57e1dd2c1939f4acd319cb79f4ae87d33db2f9bab5f
DIST firefox-108-patches-03j.tar.xz 20324 BLAKE2B af8f48147faaa5180ec481d4eef7ff33a0f07bea6c9829d9622ac4c1444d6c41a6d1c45ea9912b1c1607e0f5f2e48cb70b1ae8d53eb51ee025a98c9ab106a123 SHA512 d382dd99e39f60bddd21cd674f42c3e0be330dd7fc4f2ae0ddbc2c002b934c76ba734a754509770f063e981ceae61af587786a04741a2a6d6ca92da9d71c6c70
-DIST firefox-108.0-ach.xpi 454490 BLAKE2B 392a924ded6bc94be764b06fb4f9fa97fed739fe2133db62a3e4cf7f469e12fca3c3dab62b77218653601628951dc9c76b737d5c4c2579c94c0b8004c072d0ca SHA512 7a67bbc3f10a000b1a2f665f3f9ab0876c1d66e6c4de80337c6d1abb9a7bc113839e72b134f7fc433de3755c43f083370f194bb748051958a95edee3dfdd8e76
-DIST firefox-108.0-af.xpi 419608 BLAKE2B f34c8288a87a44101ced0205649efcac9c16f882dd4030e0cb8ca3e93d6d823fca5aff2024b7159285d646be7553717d8639a38f0f9087e23ec06dcccbb44dab SHA512 50dbdbce858aa66983a6fa6513c7f478bd8c1027948711fc8af1ebe53240083f505b67a44169eb0ffc31b8953782bb4d6735fd79994aabd83fde4eb7bc6b57f2
-DIST firefox-108.0-an.xpi 501390 BLAKE2B 6fedb599efcf355e6d978fd54a21d70e156f2de3f182a59b742756f34224386c6ebfa712e6070bfb6767eb65de7e56d772e2b8dd8863f5b44d579907a8a3a8fd SHA512 481e514195fa90a30c62e126263a242e28c5714307b4a90139d3ea9551f9c92d15fbb1a1aee753baf8e10800dc286c78d5176e2042694347412db6db56cc57d7
-DIST firefox-108.0-ar.xpi 568726 BLAKE2B fb65ed190d2482dd468a7bb7d54c2d561799c736eda6b288f35779acf913320970e6238d1fb5fcf3cbdc419d0513b6441dd24474d2c8c493941dc000224a5e8c SHA512 3550fcc8b18efa6f6846531342fd17a3ab902f02a99ef07424c310b1ed12bc378b9f38b735549e5ae64f3c9fafdb9525c4c91cde878e7164a3ebe0880245016d
-DIST firefox-108.0-ast.xpi 487880 BLAKE2B 873ed7dae98cc6c4232d7e110ff00a776b7c302f102a70a619ecb79bba91acbd535dd8a9f9150bac270ef91d11982a5055f9426d6442eb9bf00e5b3c77c547f9 SHA512 b52b61b575dbf24da8b61cdcd8e3d46c686b0fe9960b73d7671241d6ece579494dc1aa41c67f85076aae8a1ae1237f252b508d7fb55f27043817ed8b206ca5ce
-DIST firefox-108.0-az.xpi 490762 BLAKE2B 4790ba52efb7f36db30dbf49e336c628a80203038a3f0373eb0b309b2125ad033a8ebd4411b770fb1cdc1f9b8f402522954cc209b6d5ef193b73a3d9484aca67 SHA512 a70ea03478cdd281956c5afd9954664867b442f9c10b9683a6287df7515e047bb3066d483ce6af5dfc1d26bec2f74ddc84186c1eeabf965336b7236ae09eaa2a
-DIST firefox-108.0-be.xpi 646989 BLAKE2B e825b403b9e844e8b4943b1985b4b751451368ae8700e9967b8cb78b7557622422fa208db2ddd5b92e7076ee532a755c89e8ad5fff7df3e7fc0725ed63b47407 SHA512 f07b92a4dd3d4e4ef737d3283b0fe8f9afb4adc85c8ce3296a1405dfd7feaf3344ead29b9c363a3a4879694a860488074db0c22241b0fb35c277ac4b24034a28
-DIST firefox-108.0-bg.xpi 580618 BLAKE2B ca4f071522fb18ab91ccbd434048689d6162233c5ec1c57e6b94973f6a5554d5bb69400e27414b47df21016f44763a51d5f10a739ec445e78f8de9ee68927037 SHA512 de5dc443a397bba6690c17b20eb68af1dfaacbadce5fa56c8e392f7a905d1383b6807bb25f39a9e1f8f9fa6e3e4d56b0380c7fb37ec050d7d950068b6a054c88
-DIST firefox-108.0-bn.xpi 579702 BLAKE2B bdd57ad7574eba4f3f28094d96050aa17269100e9b53affbeb7a77a60e573f941167b001849c78709ba03e3baf1a4aec7ec8dc3823677a0f488ccd84e394d06c SHA512 558400514f12ea4a898f45edd263ea7c2e2d07baee4a0338dec89bf14b2109da05ac51912fc727a60aa15f24a8c4adc2581ff12197baffe6d1f6311692132e8a
-DIST firefox-108.0-br.xpi 542569 BLAKE2B 76d7483a911161cbd0669d726230fb682ed0fa004e4d49d2b83d17125f3349638256600b7f8679e286b4e8ed6de9043e21f15b90f55069ed0f473f2175304c40 SHA512 608a4186ee6f77f52af4164a385e4d2302d76a7b80d00193ec7651fb838a0c47c98b33ddaddde4ab0c4130854f86d2e29b9c623acc9ae0c60e68043dc1014077
-DIST firefox-108.0-bs.xpi 461628 BLAKE2B e7dfa47ce4b8d4f82c198f992ebbbc1d7c64a1d3a49159df1f81997d580454d44ba3047cdaa55fc0fce8fc81db5093ff599c987d6d3c581569195f263fca12bc SHA512 5a0aa7d3f6ae4e0f47d632af56bd2369f5ecd2f1458eb9b87e20e6941282f932689379959290681b4a8973d38d91455bdc3d48dbe2c94c6757363b0bdbe12902
-DIST firefox-108.0-ca-valencia.xpi 540302 BLAKE2B 4ca74fee5cfdc616411223b0974cccccf60e61b11ac2003299a0b69f169c082c79dfa08beaa599e5ca9797ed6aaa703d37095138ca23d1150bb523f68d54e5be SHA512 066b0caffb3c31f969a0d9a2f8880e7e619bcb4b2dc25a991e2e5180454275797a963563787687b87f0c098aa5d4c8eff6310d466394e6e5ac5bda6cfa460ed2
-DIST firefox-108.0-ca.xpi 543820 BLAKE2B 20b1f5c1fc3deb3986ca6e93137c5eaa2a8d2fe9eb93a25dd7f4a176c9744f663e1e03fe666d30654938000025a70d6818b0ffd3c74ecf402d66c5b6b32b2f10 SHA512 7da5e42181e889e1780528c9a171c8fb18558d64b64af788b0cd3c884748b1379c450bb58cbf6ad41b04336e0f176d70526fc925570f2a9e088fbae45d9e439d
-DIST firefox-108.0-cak.xpi 555248 BLAKE2B 3f87e8769919107198bc030b4301f866a9e3734bc847957fd1db56887010a1d0266f28296a9e4e0c04023be61dbdb9ba8d44ea6c2c09620b8eff01ba570c5a43 SHA512 5467afe17f096b3707378987be471eb2e0af843861d497fbb4f6d2b7571f3386a7092518771e09a0ce7f7920ff6176cfc6c013567de503eae356c8a7d1cea21a
-DIST firefox-108.0-cs.xpi 582586 BLAKE2B 54342e1def5d9a23d7a47879f881096362d8de1bf77f66d55994ad63160adb38254ea5dfc7f2cecaa686abf9d61ca3a33f998ad951cf6f36d3881f0ec190b484 SHA512 4187f758fcb0669886efc89d90f3b20631372f34816dc157271144a9209793d5d81dbc5eab5759dd90cc76f28b74c68d3809e4a5492ab0edb440f3a9ebcb6880
-DIST firefox-108.0-cy.xpi 562646 BLAKE2B 0da39322485d15951f6190a6646a02a66333ff8ac1182c1cdc1e6f5d000c8cb32b7579997983a7563980da151fe69ead47cd311730ccd5cb2388887805e64568 SHA512 67d028f2a5fc3690676ab13d260112cf7cc60f6e5fad54e74b3a49eac44905bcca7ee170ca089093de934d87cd005ab5cee63d09dfcc3438c77d40bb3ca607e0
-DIST firefox-108.0-da.xpi 552335 BLAKE2B 7de9784bada50e804a46c88b5501107b724cfe3742d2dcc89b8f7403aaeb3536e94de7be5960d8156abbae045107c4fabf9ed7b17a17dce8d3d3ec02a296004f SHA512 91870d08ee54ea8576c8030677781df628bd080c418d40457d5c8758c8830bd6a136609bc42a42c5cdbd3323ec3c998cf4f917dece306a139ada67733ababba9
-DIST firefox-108.0-de.xpi 573552 BLAKE2B 85dd4166e1985679159b7c0f7864b9cba685314ff028dd3fc3c8d62076a8a76e86f2c0728d1df7e9ad8eac20b4a77c725b5c70a92f0de6a964798a7ab8ee73f4 SHA512 68a6d1b20415a87531c5c7f41c488b139b02232549858a099eacaf17820a34f46fc8ac5e02a834e7c65ce122dff97f157a4d3ee3bda4397ca3c3d9fa9d914730
-DIST firefox-108.0-dsb.xpi 583369 BLAKE2B 5e818912e303702b7c1e296927b3a9d7bde6ca1520bb72be7b023bec959610d3ddb236a38bbce691eb581ce2f5b9d40ebd811dc2f0638b20ef05e284f24ba0d3 SHA512 1666f13c4d88d4c305bffa0a6bd50e011f1665c6c650f0fcd0af2484c2493176aa1e492385e72ce52ae8aaa2fd1fd118d18f027c9147433c668a600f7d054149
-DIST firefox-108.0-el.xpi 662909 BLAKE2B a0ef8b1ae9c74148761210aa62d544d9f68b9e46df0fc91fb4c45f8db1f0cc501d7e78cdf961a676194278b20538526159497f600394386c51080eb924735fae SHA512 6ed6b3c1593d6b67cb192618eba884dd256cde7ecd3f1a3887d164c3eb5723ed97a4f858d74febe4941191396e5368897f5b80a89e5e488d650a36a63cfd6496
-DIST firefox-108.0-en-CA.xpi 525757 BLAKE2B 5c6e4088875ce2a83b8f3d2b05063c9289c8436a0bfa8de86421078d6b9b754fae37f779fe312e5144436409016a75d005e908b96b10995b974a8a001da8cb67 SHA512 29061e1db10bc877b19a4157411d19e78421c5376ffe79ad38d5d5346c7388a8e1bb8070bf5b64f2ddad3de1704798ee212aa26ef457618ae5cbfaa0af767544
-DIST firefox-108.0-en-GB.xpi 528668 BLAKE2B d115250eda73e9552ea5f17f713b8d775788647ab2627ffeef23549e4e687fd47b5abb4c8ad79185359308acc7dc5acf83c41a1eb1c114a001ad96001d7f65be SHA512 2957bd3771b8d87823f7b5bf3f7609c5fa928af9af8a572f0c1db3cf60220a42a8514fa7f87bcd0edf085420dd3868672cc74dacbf34eb5e2c4b4609539eee0e
-DIST firefox-108.0-eo.xpi 554179 BLAKE2B e354275de72c6d017a17d6b1293b3ee71ef269de9c6df0babac5564f23128de5437fefbe7f968a10ab6c38502dc9a8add9547dd022fe938f7f371c9b561331a7 SHA512 564f79260b2cc3e4c2202b77545c68a9ed819b56239ba6377dd5836ab914c15d22b435f9388c18852a64d3287e29f7ba3565246a04c006a6cccdcb9e26a97380
-DIST firefox-108.0-es-AR.xpi 567746 BLAKE2B cab811c7f45b0c57cf77d66234f061dc050f5dcb32380f313f0a89fbf9a9fe19fde1b57ac33f32f0f46770ab46e78fc3f2f955375ea7e5a666d99d6c21d0ba4b SHA512 9fa21f227b5c1b54be6bf0b7dee6f45d0282672db7efad623c8289313ba7019cebd17800b60408201e26b72b23954450c72733c3ddf6ccd19ef70662f31707cd
-DIST firefox-108.0-es-CL.xpi 566900 BLAKE2B 9e3ae1cf341060ae7cdd4c8c32e0a678e67924d5c6ad93b4aad628823da593066388a6b00b9395f45859224b57e5e597c38a2c486e481cb73626d75cc9bac329 SHA512 65927e91921ef924e55c665441831422c64b0b64d4ab0201e78d2bbeafd26693460188714ae9760ce674b640e2c2936b12cc0f551ad6de5de6209b55310a478d
-DIST firefox-108.0-es-ES.xpi 559297 BLAKE2B 86a55662f84a37be766c9f677c50b64350d2a67b8cecce9395791bae9c26d99b00b9df367ee0f4ceda08ddeea2beb983327d38f9149d4b6efc6cb1b9564729fc SHA512 c105061758a127f716782f40c6caeb1ad7b549a2e9ebb8ee7a5b721ec275c3e80db6fa9c886cf18c0483ab173d083755f319771ccf7aa86e0d457d7ad8279349
-DIST firefox-108.0-es-MX.xpi 569584 BLAKE2B 4c98a05b9e1facdfc0c2c54a939b62ebd04b761d30c98be6f4dbbd8409fcc9373c9bdcf8ac912bee2d4d8108543a932ac175f30d01e6df1e62980123f766daa1 SHA512 7a1f20a832a33e432bfc8c74d18a375e52e98705a98a7a8d4f2c979a03f3215dfb50772d9aa28a13d03da8956c06bbba1365c1be5b1de46b32c54cd1d807f582
-DIST firefox-108.0-et.xpi 534528 BLAKE2B f1f519d0e59210351ad78ba1d57563c53edc3d515ecf06debc5f7c9d5f1625f6daf15761ee14ed6a79e1f54bc56c85d36bf960216e7015e21908e087b69d5ded SHA512 8795000d725c6df3abb0f1c07b50e5631f01798bed0cda393b27361bee5e18d3d07f469b632f967bf1909961b3bb84c1024d8a86c2fba189530f4463f10f58d6
-DIST firefox-108.0-eu.xpi 556949 BLAKE2B 1ac12f8fd8e2bec3abf33dc3ed8dab417bda0f14bea4d9b05a2e0f22a4e756124e6098044e740129266dd5169e0d1dcc9d00f5a775ca3d28afb990b83465cf44 SHA512 2f06c9b01663b04a4c19ffac7e9ea12eb5a2896b1a2a99e91e74762a1fa0e7596d4f297e37dc727d1076f94ee666a894fc8288eca49f04ae809b14a1216256f2
-DIST firefox-108.0-fa.xpi 572380 BLAKE2B 2eb331468bbcda26032fffdd1f28847b1099309c9c14a7149b3dc3516ad8e1b54cd5a5b54ba905799d071db320d485213a591c3cdb41f56da5aea5d80eaca4e7 SHA512 30208384ae9825041dc9c12a8e5b592feab33bfa507415cdc3d339af31c31c9cc98f338d5a822a681d385df80fce4bcf4dbdc7f805769458a1a127e913c30391
-DIST firefox-108.0-ff.xpi 474471 BLAKE2B 30d8724b9d9c9b3d91c5976a1536edff5fb0fd103e16c5f73d633cef8bb6d61f55844c3957b52ac841d5cb08d327b9836a891f140cc5baad986bddae287885f1 SHA512 61f56b20998ca6420e9e951c0853bae128388a115e2ddc9fddd5bebc4bc97ed2e2aa9168504058a6780395747612fdaaeee908a6c8e4337249cb5e3034f9868e
-DIST firefox-108.0-fi.xpi 552982 BLAKE2B 18e5b9d407c08287c73fe1f5689f151af975dae3827c33a11f7fbde31b03fbea1fe7372768cad7b8a70633fe44a51e348007707cbfaf56f1fdfcdd6b75dc9ea0 SHA512 7d6643694c6a40367f236e8edc4f2a9d508305fc30be8868b5a0fecf170f9b7589ae41bd68483c255332d8c5f7d039309ea60feb8fb255008117c80be9e63310
-DIST firefox-108.0-fr.xpi 579472 BLAKE2B 1af8b6750de84e914f464a42ab6c6be98afea0e699e07c532936951063290ea02fdb1e9cf4a2b593f7f10064fbc49596874fbe800c1d722c855d6ec07450416a SHA512 8d5e10e9974888eb90ce555bff14e40f675663fe0239941e9e5772027faf38120a38b2731b56f2dd3926ddf7530bb9de4063376004fe56649dc32169bb222faf
-DIST firefox-108.0-fy-NL.xpi 563342 BLAKE2B 449db3cd1045db3fb14e855404595a00ddc61322882b0069da4d3928b1ebff5d09188138c70e74fd2ebd7df3572819d7466fb0db7a1e57a1b30dc04f7290e8e2 SHA512 5c12156bf9b415460a91c5f48a2ae5fa5279b326b65384b4b4beffeec9431c14bf410ca8f60e4d2c23d39e42ee891e9b2774abe9a20a21bd2412f3d14e08e440
-DIST firefox-108.0-ga-IE.xpi 470265 BLAKE2B c6240a8e5265be9718d4ee56901c991593ac2755dd1e982d8d8bb66dd11bc4f468c47dcfe64ad931cb5963fe0e7a9da359b40cc8ece60956914dd28bff661a1c SHA512 a1784479d095c9e366b4973f0ea9426c800755ecb8e8fe41381a5122ae60af7429fa66a6196ad6c917b36d0cf8dc6da1e41cce59cdc2271f6b269bac3e339ffd
-DIST firefox-108.0-gd.xpi 548823 BLAKE2B d9615203dfe6168692dd09df38519cfbf5d2f5f1b9282221a71d96a894255e60c36871deff2999a9b90f9407551827bb93acf56136a207dceed0ba1d72d14208 SHA512 d915d47d01b2a17a131eb787867d0341ee60174a8ed9b6c60c9f34f62c7f87a566db057fbc951ae003390ae123c478b826a0895104a67ea23863e2a31e9c0c4a
-DIST firefox-108.0-gl.xpi 543424 BLAKE2B 4dc37846585f16310556725513ba4a6d3a151fa202eeee3fc93cae66bb60e6686b382c5a6584af67298190d80aa55aa3bb10a89a84dc5c296ab33c4db66d3ee7 SHA512 a0ecab84ef7816bb94baa70ca5182428a1257e3cd190ff848017b913491849ba5fca23ec3ddf68e5314fb285b4e35f4b53914d4472e12710def572677c447b67
-DIST firefox-108.0-gn.xpi 578516 BLAKE2B 504968cea686b304efb71d753ccb9d3ae08cbf069068b3f95d6cbc0c7a1031483d18a494b8ed4f69bb14fc751229e6e93b13c3b4d3448ea25e80d30bcba55b31 SHA512 2f8226643a90de1ecda9787a8bfcb2812585901837c131b05eb6ae5b536a72d0bd081699ebeef0d1dff30f1bbd1fc822f6b0343f722f1f427426cb87751c6da3
-DIST firefox-108.0-gu-IN.xpi 529438 BLAKE2B fb8596d159bb6d821a90379c03d852781dd1cb6d0f238d04a5eba9b501ba447de67068f998a56e1ad3418c11bd1b8780b453c4c1bc0d4cf923d8cbae6761882d SHA512 a491e6d5b7ffd5420d532692cf84bf873ad2e066b65b8568f0b7ec21d96db84974d0400d5843f7678605531e4cb4f0707a73d07b77ab4a28e770aaac22145e4f
-DIST firefox-108.0-he.xpi 573905 BLAKE2B da15999966d997408b2d9cccc2bb34bac2fd91bc8d599c309bd13866e9ee6605a4e2a2c69ba49f3234d41996569f6cae6055bece1dc4fb0e6e0a0312496b979f SHA512 425b523deb0ce596b382eb16999945327fe575640cb666ae6637fd136fff82ac2adc4268e1f29627b2dd3a86ad9d202aa7ace937d6d43d2f48e4bd8278798bda
-DIST firefox-108.0-hi-IN.xpi 558576 BLAKE2B 15c0e28821ee0d9f14cb962802465e0b584f9539c355ac310a22a1ebb1a0d6b173969f2dd4753f108f815b2bb90575ef24e6b03df9c9d233ed8cb4ae3136aea5 SHA512 84b1727baa88591320de28b4dc788dca67d98f7e4ec49530e175e5d0170982a0a56556f08941d539c9939f0f0b6e92754b2142d5cd5eeb251f68f1c33de8c167
-DIST firefox-108.0-hr.xpi 538310 BLAKE2B 68068a88ccc482353ccf3c86ce8188075b185cf90e9076721bf5adde726665f08706347f7fcbf3d4d0121f4a7b2cbca8a98eb4c864f3545e145cf619d82c5229 SHA512 35498b528c9e02dc84ed95bd3a5e2ea1710496d681b2f69674015eaf1dff1a026033d1003c27e8a6159cb348dbf80620d18078772e7c00c7509001a826b9d4cf
-DIST firefox-108.0-hsb.xpi 581692 BLAKE2B e1f0ca85b2d45f1c7a1e4e1a31a4d592b941581cb643bda2bb93e80bea819b58bef2130fbc16f52b11a6b0acecba13e84d7c6fb0b074c094962207d913504ed0 SHA512 ad01eb3ba7f9b51e3d56487e39bc8f92d02c6828f120243d9db95dade62bcc3e8f2de7a0cc583ba4607fe89163c8e3454ed6080371a1f58d78441a163d2425e0
-DIST firefox-108.0-hu.xpi 587849 BLAKE2B 1a9662b40161f77d0950142fd533425c8cc5d5e6793b02070de4e0886dee60a3d46f97e1e9b2ff5caa6d4966db85a8b4e2523713fc7f84c931367d81504a8225 SHA512 ae7e016cc9d692e9fb86acf6dcb37859b12a8d02fef942313b82998c7aeaf76a3978730f631fd5e976eb5d6abd87a239ab65c3870711d20ab4942e9dcb145108
-DIST firefox-108.0-hy-AM.xpi 594651 BLAKE2B fd7efe69c01c97e7fcfe5d273d8049ea57481762cc82f396ed253b4a4103c568cfee621629faf3a598e6be35c8fcfe90317315fc9d917f5733cdf28079e31b00 SHA512 48a1abff3259febc2347732fdeb4d9ed252e11ea16540455a19f5ba7962ca85e188c7c391b33c4f8d0d69a4672531946cfa1cd83848d229ed33b77aeb918c1fd
-DIST firefox-108.0-ia.xpi 551760 BLAKE2B be3d90ff2ebf705a5469c9443968d8ebd6c1888fa3657a7f653f193b8dbc418b610c819999d7e68d60234def2d058317e0f9b45b1d34d7d0ad68bb76672725c8 SHA512 c8f24d36bcb4dbe40ca71ef1c77e7b4cf3e57b5e78833c2ed54ba5295b0f21548133ea8d33a4059db7c7b953a24e5a97bb28748bd8b88b9e3071842a610e1e02
-DIST firefox-108.0-id.xpi 548618 BLAKE2B 8d439ea92047e4f1608e67413a988b965ab89890ad1f7ed905afcd5c9a9c74634043b2ea1f357f917ccaf99d762fb14157c9f390d05777e3f8d7451424cf3e61 SHA512 11c44a58e4d3da8e4d57d3123b724b69e566ffe4a24d285be823cea2c92c5ec816cc250c177728edbb90c02b9a823ce36dec0294e969db008b4b0fe52e650565
-DIST firefox-108.0-is.xpi 560732 BLAKE2B e503fec2ba4cdc725de9a0c600b1127c6b03983f6e62f153adc696d8399d7c2eda43b3b697ad3717c64f58bb2af1bcdf9ddaf1b2d2f50cde2ed828f2306b93cb SHA512 fa02afde8b9431a7b460b3a77d3c940d611a46922ae828e094ccaad0fc89c48b5ae109e155c52feb133a1b9dd83d6146720dcfe045de5b002e1d163aa8030376
-DIST firefox-108.0-it.xpi 488821 BLAKE2B 32dcc42e14ca263e9364ade7a93d2dc5f7fb4dabd8da9a0e4f5ed524025cd5c6b79b39c91473460f4c8e2050c0ea8acdf6c10f8ea7fdfcf18791fee83df60fc9 SHA512 bbcc6969ce1404b7ac54072f627f96dcafdba517b7768f7965822eb385b9a40c7798a28b758acc92fc22672883bf5d289ce16899638c42e8dfb41c3d23e70a4e
-DIST firefox-108.0-ja.xpi 612097 BLAKE2B 7e5465d205568787c6db5304721993c77abd3e15681de27818b78da98c241d82ccce0e96249416db4c6eaf4500db3869cac70771b49db62053a2f624a509e602 SHA512 37ffe099bcc265069243fbea7d337cbddccee4634bfc5bf8aff91b88fd8304c16f30d3304cd0385b346302798ee717c8fbdabf427c514b2d850dd91b90d44a70
-DIST firefox-108.0-ka.xpi 616441 BLAKE2B b0248ae8165757f4b8e4121b01d73fdf06e2bb3eb85c92e0275bd1039514dfa5f9d26d293f24b1c4d489aca5aaae6c5c62f6ee24035c7759fc22c6ccbcdee2f5 SHA512 255c5b6237405a8a9d4bb16e2cd51c8e3b85db085f3d05e587a983a1c241c1ac9decde51bb1441f4d6c51d75922567f3687ba625015f7855856978c34dc50993
-DIST firefox-108.0-kab.xpi 569587 BLAKE2B 0b4cdefd1e83ca98ea92446acab645c792c29041eb592dcbd125370f33c9b373067dedce60eb47b9d45ee8ed63d77fcc9490c2d800d7814a41adc68e401406cd SHA512 74a4cf4de33067c3c76ba183ff494a79cb2dd4e44de5f8e809b33cbbb21e2a914981cb99fd27502e5b3216e8709dbbc57d9f5cbd31c19d036ec380f83f32a8f6
-DIST firefox-108.0-kk.xpi 639483 BLAKE2B 2891aef45e05c95d75e3cded2f50aa30e06dfd325cf6eb69e00264643c150460d026cb75cdf028f5102965397fd343bdae99bc1f92058adcfc341cd0cfcee5c0 SHA512 e9c3da1db9ab54884f4a1c761ae4431ed83f6f15249c5fb4e69f065406a0f6dc0bfed0614a4ca941260d56f1b85f08effdab55f159f4cf78c98883c4ab47f262
-DIST firefox-108.0-km.xpi 531197 BLAKE2B 4243bf61f44f9dcb9a151698224600b72475017d518d7352f531864e1e45bc0c95f2c0fe879118251899f6d1953cca08d594d8184d2c1109bce29568fcb9d073 SHA512 5d0c67bc8495ca5283c8e2204d2cc2f9e49f8023121ca3bb321ce488ae74b698b8ecd133419d0f4b604cb62b98a039746df3713bf08ae611208c7f124e0040d4
-DIST firefox-108.0-kn.xpi 496781 BLAKE2B 9eb00c9afaf58c950359160c14dd1d863103d744d7c8b9001f5b5c73fad7e9f44e576046587156b8e2a450692d85878de21146d6c8740e42cec9270bc3ceea8e SHA512 0590c56803c13be97ae06674781a32f7db87a7c0b9b6ee854d2ddaa0cbb11400d255f6d3b05caff2a4d812d02c6d99c1d2a0d93d2b206f51ee162c5d335b6e4e
-DIST firefox-108.0-ko.xpi 598484 BLAKE2B 680051c6b1c250c637d3cfef1e39d1077d3041fa8002e62ed12e204da98c3ee44968fd72fe3b71443ff02c2ef48bbb19fd460d8e48e0c84ec2297f0ec96ac20e SHA512 6580137e6b7d19d7a11c1b560a5933e02aec69ceee4c3efd9828aa1857967dfd3e7ade2e5b79beb73e1bf536fc1ad9880e86d496a5ba6415bf273bc46cbbf21e
-DIST firefox-108.0-lij.xpi 471417 BLAKE2B 47d5f6d9437be743d24248b553748f6272cdf19528e6b3a622d71f0f52da7c6a6a1ce529774949a139f11c3677cf2501768caa5af1ba879bbaecfff35d4fc171 SHA512 0811bb15737b7689475c9699d5eed2a4266ec7779a5f4dd95dfa9b1c7a506ef99c0a1c0635ea5ad66573f0f712034d886630854371021df0a59d788d70139afb
-DIST firefox-108.0-lt.xpi 566404 BLAKE2B 608c3eb5ede3e45d4029872da6b33d438a34f8dd00dbec8d860b83243513927242124dd075c28f74401f2b8103d1fc9fa58f6af6e2bb0e284196ce4031c883de SHA512 a11f3947712829d9f5ae5f3191f19012a5a509677620d04ae836b4e31f7a11e716bd537ef5f4718444bed68b57165fd52fd43a86cc331c5612ca1b89ef7901c7
-DIST firefox-108.0-lv.xpi 466194 BLAKE2B 86eaf251422527298feeaab94b969415065ab43a17355956afebcf35e74247e9cb764cba239e3d05c74ed7b9fd5b8e0b52c9f8c866e9aecc81c2d2a2767ee492 SHA512 da796d4240ce257ad91bef1e64c2e96360ca947b126d3ac217cd8ee657aea82e6ee60756e8f687df794a3b9555813e45e0ed68a80ecb0c62eba954aba8cba4c1
-DIST firefox-108.0-mk.xpi 485634 BLAKE2B 37c66613689cb40546a44a47ac22745962d1e53baf1e5374f86dd150fdaed48462def4539242a6b749f91b1bb4e8b82b1849990349621efee60aab83ec54193b SHA512 bbe807d7edc4f9b9ffffee7f6ae88f1796ae743d0f42e43048b4b97892a6cd705bd879fe4da631f93ea80260fa2f0d53ef6bae21b2a8dfcd52dab46bf5975846
-DIST firefox-108.0-mr.xpi 531995 BLAKE2B 738f3bfe8d7cef2685fce74fb2d5389e47c367563d4e27b4cbab624227e1d904e1187246685e8c8580ab0f01676a806f52751f2110c03f1bdb595abf83df6dbc SHA512 0d26a58ff20ea5a8548ade7d9d8b22d2b09cb4ed50fd4968d339d81a733207a88cea432fe1a648ba6d53fe87913f63d8326c72f6f41532ef3fccb2f461b915d3
-DIST firefox-108.0-ms.xpi 450657 BLAKE2B d4fdd02bb0be86428df9da03cc951ec28be2538b2c16ac7d3501069b94c0f2e730229d07fd009a41001aeb1233570ffe8fb0ca96d4ea838736465f7d78b583d3 SHA512 2a2a5f82d4d965c3a1f01dcc68e3297a11cf619c3846b1ecfe47e2d2eadff9a1039b2d6599baf926ee8c969f0a676b9d66e5d6ffb01aa560dea5b0f9453d52f5
-DIST firefox-108.0-my.xpi 517676 BLAKE2B 50acdf122560703635b3a4941bcd3dc8938ce378812ef1c5d5efd39ad65cda4ece773f98c1cbfe7faac2d302d6c441923bd89a46c3d96773ca90e1394e112025 SHA512 91804176e9f4239d0ff161a3dc5e8475f2d7482c3699e892e42290929202ff1f3c91a92ef6f071930c86b659372d7765154f96d9eea55afb66d545c2a5cd4168
-DIST firefox-108.0-nb-NO.xpi 549684 BLAKE2B 838cfcd8a655c5a61475a27788064ab6701a2270525d4f2a9278e3eff187af0754a6d87cb0026f6298b9c359063016db347b26bad951355e28ee967816b5638c SHA512 4ce8139b1740981bb23b474c48030b937b65185469f146f9cf124ae431c710a6153468236b679add895252b16a218e125575f950abfb52d892c386c40d0a645a
-DIST firefox-108.0-ne-NP.xpi 485231 BLAKE2B 67bb1ffc50bb8b9a1b0dc793423069040dcb3f9014112b6c4550a50ca68444060fd55ef81f9cfb7dde08836f586148f85a93a8147ac7bea704009933735bb77c SHA512 2178bd37af507e89b10861f471abb17ec7099a5c8d9ffdc48709c319fc4f316041e32b09c67da84ac8cce4c4642f455f84e0a8cff792849329b9abb2a325c9af
-DIST firefox-108.0-nl.xpi 557494 BLAKE2B c72b7e6aafc1d04cef49289e3fcf203db10eaa1bb7e87d3ef5fea652aa09e5ad6d39675cc145eeefd55bced1d436f69300155548ce3675c126f9feaf57d39471 SHA512 892ead871d7616f52175115e443e6e73793a3222b55ce4c7d25f0ed523e39bf433415a36c78fe0cd882407aee00d6d9ebc0cc0452aca70e3b923391ae0ed0147
-DIST firefox-108.0-nn-NO.xpi 550012 BLAKE2B c0ebdb20b0730ee317df29ccc10c15b3be6a0f269d8a0eebcf438a2205cca11391a12e090fb378125c3d9307ffc9f5c0c4e7c68b0a6206198c9fd0aa8794d967 SHA512 f6b74a5a676a17bc7f6fbf47a3f442b539b0f3156ac7449c4716d7fd24bc8c2477d92f545c1603b6c973369af9210e05f0eaf0adc087bb7eef0cdc8e135cdd72
-DIST firefox-108.0-oc.xpi 574018 BLAKE2B 538ec14e4ba756dc69b3e30bf752644ddae6aed43ad512ba227b57bda50e2a07a22e3eb28d03dbde33045a3ce5f9434fffaaf8e31448fb86fc4420301daa4ec8 SHA512 875e03e24cadbfb70641081cc7d95c2aafa19bb2798106a6662887758d50e5f34a1b477b330c39793495f8021acf52a52437914cfa892efaadef866b9859be53
-DIST firefox-108.0-pa-IN.xpi 625821 BLAKE2B d5d41d21baf1d58e5c64f0a8075623dc5584d6b82ff83ce5414b1859b0b58b51abde253e397e76bd34d1753fd9b8d84e1a24022a930504649bf81e17da47ea5c SHA512 7ae6d14b7e51977b3b30880ba52565280d10dcdef3d9645fc184d3a00da47527182b0123084766c4da16a14b85dcd8a8aaf1948433ed774f07667e0d36f11832
-DIST firefox-108.0-pl.xpi 579972 BLAKE2B ea44ed659c54ea37d0e4d13d8ea8b613b8ab93e9c92ec33c27587703ddf8a37008f186125a40c2d70df62a059b631ea32cf0cf0defcd1d1a611138274f3755b4 SHA512 2ff258453e260c7b05f67bf3ecbc4ac145b3ed3e5d4ba217748984f2099c1fa7d4be5bd6526462d2bfa9093d6ec4d005665ee21e4cf69917cd97c8bc8fc33605
-DIST firefox-108.0-pt-BR.xpi 562412 BLAKE2B 4b9c6b0fd4b527c5ccbe6cf01f0ce24dc22332f203558c59258d115384fd3096d04d0ffc344de70fbd7b6549aed76a413d5a43faa41c6d0d1982089021daff0c SHA512 b5058a5cc1755ce837bce5f5316a5b1f23d92abeb0a137e8b1c025f1e1ebb0e2bef520877f89bc27d0f2591c2ea52fbe1db229e052c0922a734d508590d70b44
-DIST firefox-108.0-pt-PT.xpi 567179 BLAKE2B 5943a1745274dfb8e5ce83ffd636fc033fea75fed895dc19122ef70546d566d949058a8a07e9c4db3f03659fbadb9411618d3bd9d35dbb77243e42b32e259f3f SHA512 ee27210d137dbeb1bccb22b8e20857d3bc2677d2b94df13ce95f9b017311e749b3cba9f64f498a29f06fe0c9612cab06e0fead30accf8edf127cc80c520673bf
-DIST firefox-108.0-rm.xpi 557258 BLAKE2B 737466a3f6cbf434bbcf58648544a8d0a476a8b958a6dc02ebe88aacf646fc34fdf8906fdf78ce80fe40cc606052b35dd0b917c0342e9aa9b9ab71615955ca8a SHA512 d1310534cc7ef9566d42a43e1e0d559d15347f395855469cc243998bdc9bba7ae263c01624eb435837ecb772aadcc05d0542348cc255b90147cb6b41b1e896f2
-DIST firefox-108.0-ro.xpi 534108 BLAKE2B c8b738e64b683b3e94a7cdbd2ce368516e8bd46c7cfdf68b59add943fe9e4f3d682c1cc38753236d90be53ea7d2474a125ea0643a09fc38311d8972766c5046e SHA512 7384aaeaaefd02d3b8bfede5956bf36042c5c0452895c9f5e722a9ae0224bdd1caa78c0b15b83ef1c39d14343c79ad5178e2b47512552a9507225fe4e03149c0
-DIST firefox-108.0-ru.xpi 651318 BLAKE2B 47381f7d191d4f0f3326c94bf50443014deb79052b3783b6758126960a46fc172061e545d45399ab94026beed67df9a8f92bbb8b7a44280bb7888ab1adf46ab1 SHA512 2071daeb2114214f1099d3f29b5c418c24820d0fd3cfd5e00ae73d29b6cfef4c53de97fd7c5cf239db4f0f87949bfb60c66f7aa57600b7911ff71a9f8471a73b
-DIST firefox-108.0-sco.xpi 505174 BLAKE2B aec781b812d2c0d50ea133093878a4dd2b4cfa4eda44eed9295b6d12839674ffce9a3bd2ba39829a190afa26064721e08831e20302c609986f16239eb8c8d7ed SHA512 4d5dacab7021ad2e857f2f75a25f95d8e6322f394c1a8d98abee6695ba32faf710734082c4e6b8bbbf7550bcd80941184faefa608b74a2263b50e0d5d0bc10c5
-DIST firefox-108.0-si.xpi 572049 BLAKE2B 5a3cbbd1f77ecb1ac691485c130669428054bc87378a5831dd05b32ad2064ba04f2ea0cd1906e77917324a1e2a0a8f4a8e9ff108dc464f7edaba8a50d12ace1a SHA512 50ff2ddd1a23585ad8f45250ae4cd32770dc9d9642c136bb475ac653c1925786a67df8999ca82399bcf6a835d3b4596803fcdd69b57caf484fb31f87a69e2785
-DIST firefox-108.0-sk.xpi 587665 BLAKE2B 146755827993e802e498104c604731bc17cf1bcc7b12c0255aeebe4f6c8579e8fe52bf39ad09adced717f600fae96503d31e2a1d1cfa3f26c5daabac9a8dca63 SHA512 e56c727578b29095ad67b40b3057f50ac1c717704a194563cace8db2b0b4a6905ffff1d5e8de9bb99e2ecfb35debc21b89eea82f0b97374b1bbd2604d267ce69
-DIST firefox-108.0-sl.xpi 559750 BLAKE2B c3e42d1c8bd8cc7687d3f21f47e68d1b5135eef10b5f50e8ee5de7a3892bdf3c63ce354077994a3aad052a477dcbf3fdf9f72ca4dcbec34e9071cd45cdff8a71 SHA512 8a96bdd58288eda97b084f08af93d82442f9199a5e9e262deee738b3a3e6c856cc9cac0bd2143b6ded35c65e725a783caa6dd27a6a8f8c085543bdaa124a7896
-DIST firefox-108.0-son.xpi 422464 BLAKE2B 8afad92c35c7aeca455803819c68c2cb5c6426b404b8cabc653008112516f39782ffb605537b9663d7228911b9af642cabd2680f7e703e73df30820a17f83664 SHA512 35e020d2a025412ad297bb39353e475692cbf871a789b95adb8632df0c88384c10d2d815a1e80ea5247dab6f3f788d8aaa61ffaaeb0f47c3c1838b96be414d6f
-DIST firefox-108.0-sq.xpi 574787 BLAKE2B 04ee94f761e2fe4c0c7c04145054f41adffdc5fca3dc30427e561a50395ebd38caed9d1ac0c382f20eff64906dd83f8e0e7cc90b770039ffdfcd5c4cae9a49a1 SHA512 a9cc80b7e95a0be8d8a74d0e8a481996ff5a2c550ba27213b689fba86a53a504fed2ec3e230c1a5cbe58cd441361a2261d43ebce3ae59dcecf31479d28ee47e8
-DIST firefox-108.0-sr.xpi 614999 BLAKE2B 6c1cda2ac17237e167238945d1a5a71adc81dea2acd07cd8c54f2f8afac74e0454364422ecfa6aef583aa791a9535d4fa14423ef42ff2c0935dc137ebf688b4e SHA512 d0de1758f1845fd55dc166797d47f9746a37d81d8790a2e1ee24cbc73f8db3fcb6a5ae0690cb7eb8a1cec3a61fecfd758b00ac0592a6b16af0a1e8e1627fe967
-DIST firefox-108.0-sv-SE.xpi 559333 BLAKE2B b6b99d4eba609690152fcef38529411b1e9cf58a9d7a02698d616d8f71b1d7595f0618b54907cc1de185f056ac28369d1734a6845b82b554c1d42bec09fc9387 SHA512 a828e5b78a22788359c4afa77219de596ad505fc2ef0a33a80615c87d6a67ae6ec09f65ee73486da5749dcc22be4ad721d7e0b7d31d04f313a785e999297009a
-DIST firefox-108.0-szl.xpi 518193 BLAKE2B 0272eb92e24e61421f9949a6107d8e78b7a87b9f19b4c1626f7ab3f7ebe3c39c67e23a450ed2de31a2b0d3f70fbe75569bcf1e34a415b5c5817cf03487243961 SHA512 9de5b1e3abd9752528793524ac9ac32744fb8a47fee3e9fc0db42e9102249ee7b621824396e85f803e2ac78d91209c35a17c986afca5f864092653f9a692f421
-DIST firefox-108.0-ta.xpi 509717 BLAKE2B 8cdd03a7ea85c06075f02d18376787b7d74014cd75c6d5a70a9d9708125a55a9ec6ff4800f2322ad70909bf1a3adc7ebb005af0f65d3598b7423feb50eb5c980 SHA512 d2727befaa46da32cc7f7c1f5630c87cab89a923390eaa74141de084124fc743e194f9a8e68c21b8870e37b48f9a21bb9eea3ca48740a7240d0ab701fb689903
-DIST firefox-108.0-te.xpi 556975 BLAKE2B 95df2dff1b7b86728fb879db1606e1157fc54910290d18e2d68043170b1bd2278e9b1a6be5c9fe9619340307376da018144e7b0ea2a64b3087d4c4c0520f12bb SHA512 8d8a87b31330b47f5fad680f938fb2e43b45e0c45388c1f8c26f7b6381a47e5893900da75b4cb9c13a74a420d6fd287586bbc159476ffd388cc0f84431ec3e38
-DIST firefox-108.0-th.xpi 627887 BLAKE2B f2c25dc655a5469536e009396d14920e49cd4da5330a1ad27025843e0c7cfc3f50545e144f01734fc0bd1dd72e52f13c0d55a2fadde9a8ed24921ece6072d20e SHA512 79801769cdcfbbb774f6155556e2098f78ee03c8186bfe03f009175acb8471b2d7cc578fdde8d43856a329efe00e3eb55887b336267a8b84eb6672a78c382762
-DIST firefox-108.0-tl.xpi 522745 BLAKE2B 71b794994d8bab096aeb8798855e2b410362af8f577a18eeedabbd3029d27d39651f3dbeefb7317bf3c92e56c16921b9cd2c34f0f88639610de96e9311b9c5b3 SHA512 5499a53ebff03a474bd0e79126ddca2c962a38dec3c925284370b69f2866b50f0a52e5a81592e43cd440b2f8e305d98ab699bc02944c46a5d99bce416d0be60e
-DIST firefox-108.0-tr.xpi 573046 BLAKE2B 757454b0823bfcf96295cf208a9e3fea30fe83e6b6df02ecae4b153c21ae3f4a7b10d95236b0963eca2f0a184f6cd49a37d4ebe7b61b842beadd4e498e966834 SHA512 86abfec9750461a6a4e7566bd46cec5ae6f332cc73a63928247cd2ad035e30331f9ebb62681bf5654d6e92bfeca2b4ee5a7a76f77894a841790664de57a37687
-DIST firefox-108.0-trs.xpi 487419 BLAKE2B 2f94b930b4b5ac222b886d159fe2a5cd7458827f6b201cec02fb78db877c49769520cabe3702aa8ea23603e1ee513a45d7c7b623418b33f5dcf1858663cb34ab SHA512 6e35df18e9ed14a77ba7e9ed253764473a4e063d5c6ab90a3a36f8d80bad7d2dd305360ab98a228e667c0c8fa77b5b9c1277fde5d45aafb74516e45e4053b8df
-DIST firefox-108.0-uk.xpi 644540 BLAKE2B aa1045ec8eabe66259cfdaf550e0451f1e315d3998fe0b2a906c5afe4c0ab7364728d831186720280a9b974a7e446168fb73460fa7a9e6cea2022dba4e8e38ee SHA512 6d6c0be705adeed790352a3f243995336a47947ca7b48568dbf9423d9db990574a8a71a838acbcfac4b91b1ef94a55186a65c0e81712e621abb6d741d9412814
-DIST firefox-108.0-ur.xpi 559040 BLAKE2B 32b20c764a47c6a3dcb1d4ccc3716068a886851e6202038a717f28ac65ea723eda5183d6e53536393424ca23af8f5b1e3bf6f0f56e5811413614705ed960a305 SHA512 142dae638f70e7cb4095927e34effda348977fe3f19a8d412c04b480c20824f61680f3b544c3fa49f32461996bb55e7a644629bf544b73011b7cd787cf3a22cc
-DIST firefox-108.0-uz.xpi 478513 BLAKE2B 58e82b9b07a2773f365732baa0ac583ed5f9a615c47685fa96c811548b9bc0338f7edb091e37e7f97d92d6a5d81545a7024a73eb5f748ddc2c5cf82d4533b3ba SHA512 dbc824d1f0e6a568d7446ea711db41938ea4429b4abc42b20f02d2db6b4f2bbb7316147e2da8100dd03474c40bab9373854b8e0483ad6aaedbe6170c5a42601d
-DIST firefox-108.0-vi.xpi 594795 BLAKE2B fa0ed81572c0c68fb27d2c794e62aa3511dcbb8b2cf9f7107216d97248ab7923183aeca57f358629c40cd6da9075b33967305c9356a757f0720697f9b9b7cadb SHA512 a9bb4d2839b589ea12876edd8e9e6df5f8b00e6e4f9fe1de47fc588033034a2ef8d117062fd6e33479018f6b1eb0b64ba98baf2471a9c4ef8301eaddc26167ee
-DIST firefox-108.0-xh.xpi 418351 BLAKE2B d537ed8956c3e1f80039e66f2a38e4df306d27a3555dfd2b70f200e4bce8f8b3f564ba2ab4d094259232ad94d416d495db5651ff8e5184ba078b430a31ec8a98 SHA512 39fc15ab75ca50234d06e274e11ff9d0c02178fc4df9d466d70620e378fd6be5c22f91ea700850bce0fa2f7d234807983fdcdd83fffc8c9bed916914fb80ef5d
-DIST firefox-108.0-zh-CN.xpi 594372 BLAKE2B ccd72c1b6f242ff067f86013cc7d9e88fe306491355cb0139d9a21d1541017cd4b42787211d49a04814af3b63771cf25a6c4c055d0d5acc429facccbcd54ac1a SHA512 1d7e227b5f451ad5c09245b171af9e5d5407ab3efb94176a101264376bd37d781594688bd0c71cb3786a0de6a83ca511657ae613135c225c1911066c2097d0c6
-DIST firefox-108.0-zh-TW.xpi 595825 BLAKE2B e4f5ead0e7e53914a4a5898b1e8aa4849cb1c421032427c5ade7d7735f879f6c55747f4afb881ec18e2132bd8897a235e5a64e405b81fd5855e8fe063586aa4f SHA512 71234ce804de4d7e6a0d5661f65ececec6baf7e748345d47de8a19b2d390af805a70a64fb1d57ad694bd4ff7ba49941a5ffcd1980d6f9bd53965c39437e525ba
-DIST firefox-108.0.1-ach.xpi 454485 BLAKE2B 0abc9417bf776897a75c404b156c787afd22892a4d08e65bee13a0bcf3f6594ce78091b4affb01b79c2ee9f1dff05e4565b6d803bce8cefd6a1a7bb2421a1e21 SHA512 362253ae52772bf455171f151304654ef1ee6b1c3fec8d02791cf19d0970f1df3997922f344f65dff6644664f1df150152192eb6d2347086130a1830f567dbc8
-DIST firefox-108.0.1-af.xpi 419603 BLAKE2B e2d0028c7fded599ff1b98b710a87871d9879d2814b8139e85eba9cbe45346f3a2eb817128cbbcacd0229107909e9ae764c762ee416be8daf89894374ec75720 SHA512 e4bef5c47c9a827774c6c3a74480ff775c8c954816cfa6aa143326f91b8b4dac4c4be50221c4b4e6ea741e33fd398ee3f5005bef813742df055bafe850cdd7dc
-DIST firefox-108.0.1-an.xpi 501396 BLAKE2B e95378706ff47cb1c30684605ff55491c3cf7757a244f01aedc366e6f9724b63836ca0f21b20c2221b522187f88e6bae22f4e13e0220e2f886358bd780237c8a SHA512 9e75fe53d9012d414337dcabe162df501ec37864ea67598ccac53f9a5552c2fc959df641485ce8c78dab06707c881fef33cfe31f379cdf9f57ce587a3cebba53
-DIST firefox-108.0.1-ar.xpi 568727 BLAKE2B 09058ace0b602d190b5b3a6bf9be9f5a697a0d8835508799f7919089843f06d9a4d561002e8dfac0bc5782b9aeeff5102c686456bbd7ba2f9a55723be121475e SHA512 afd9a768ec60c43944b0ff8cc5c2d06a44e91b60baae7409606cc15b37ce15bf6648069b17e5ec3ee33359dbba841ed89f1880e4d849f4baedb1194e3f57b655
-DIST firefox-108.0.1-ast.xpi 487881 BLAKE2B da304792219a5d683944e5bd1ba05362f08774f143a10f61fe8f4b98eac8911baed3300d465eda7d16e6f135ce0eaefc3e49755ce14341a01c91eecc882527f4 SHA512 124d6c625bc7989e32e2b7f9197afd48ccd0292e69453a80c03b62ae4fa57aca57d037ab69db19352d516705e3fe2cc1e692dad696c70503bea15c4b81eeb17c
-DIST firefox-108.0.1-az.xpi 490772 BLAKE2B fd4a4cdf0c040e4560ea7d984617743e03a44a491f587a1296a17e0c9bb1ba132f6e782d13c377ea5015fcba278ec4d3fd8f338a69117b389f2051a55867feb8 SHA512 cc91efbe4af4024a2c45fd1162576f75b17e403f5a82870726d24d823a28fbad0da6bfd6b105e5682dfa7f64ca6ae3b156c1e8278af7762d629d83890eb43a98
-DIST firefox-108.0.1-be.xpi 646994 BLAKE2B 555831e82016c11d1c145c01c1dd24f5fd2ec887d9d89aada9f08f4626085f728326e6c5406614871468ad605c84fa345bc39e04ebbbf5147503d5ed2dfca3ec SHA512 fefb1186cd8c7ac73822b4378f27911efe2c16dba06d4e90655dc27c16d36fb7c81ab04cd88dfb0d4db406092565a29ff9f51bf937ada83796291be6c2027e31
-DIST firefox-108.0.1-bg.xpi 580631 BLAKE2B 29d0192e2c59e14bd35413e06c4cccbeee745f12361cd512b536b1e65adb582860150e2d67303a6c1528af48f80408b84737f92276c96a618665bff5ef434961 SHA512 5c67ef1311abe7070b5cb9657a9d1083d32b4828c07322bae1c8ae0e6621141cf4761241802eda99df4e7870b0acf5f343beee20e3ca8b3e2ae5ffe7ad85fcdb
-DIST firefox-108.0.1-bn.xpi 579708 BLAKE2B f9bba41ecf1d053c00f4785df8a30da46486a3885af3d1601f5bfb786b85c9c7f16f504b8f64bce67c1fa358c0b93fc6d8cd6a37aab7b0fa97341d21b2f12a28 SHA512 124f7b54ccf8091f8ee7d2a79c9223eb7f18ef8807439b9a9a44efad4e67170a54607b464eaa3104d1a0186ef007fd5b15bcb9273938f67d439e194738f77a65
-DIST firefox-108.0.1-br.xpi 542574 BLAKE2B d3c7779ba86f5ee4a816bb814637488b9bdc850031840a030b196568a6f79a241380aa1668fc3fc33a7cf19f5150585bd03889f53907e5247db3181f82dc0fdc SHA512 084dd3e9ef190d688fd95611b93257da7d0f582f630fa32e46ae25c79789bf556035adfa681c3a80213956b01927ec0a57d91d919a2bab0eaa1218e4900e5aeb
-DIST firefox-108.0.1-bs.xpi 461626 BLAKE2B 40a1d6a94b5bf816f02109292afec856be0d0317e4c8e5b87d2ea85118bf12d1dbc562a7cae0b746824cf4e6f7b6aa47c136cfb1e86d540b54c02f151d86ef01 SHA512 f36e4a775a5c5421be11377ee46f19e4711a20366ba8defe45ed3f14cf9e20d451191b5c5aa916c428328de0d99d647eedeb11162f0d1a20dc3e1bbc93d6dc13
-DIST firefox-108.0.1-ca-valencia.xpi 540295 BLAKE2B 11e705164d80112efc18f3ecd7f6632a0635c9e41c093d9a21d87936f0828d19fffc89c2e148fcd1066d0f70fdef8deb9530aac51522233bad584a82856989ee SHA512 22462951c7e2ab0f557970937bf7aeda6085ce6125aa8298049c82d614fba6d0a275d1a178a30fd1fd08e547d4f26d54c5054a61ce7976d8d713d0cf5f5b2d4f
-DIST firefox-108.0.1-ca.xpi 543816 BLAKE2B e1e121a9a066cc79e9e901a9b04c9418f2a9490b49bfb9ebfa59c5dcb3212382c5483ea55f4db68a4ae052c2bd17d84b7fcb8c26effa1855609a6303014eeff4 SHA512 70433695c9183a8ab6ccd77267acec18d0a9ea8f78d92ef5297c3f06fe3e0e00d97cd9bcc7dd338a04577413459b6b852f5a8a9cb06e04eed7982f8d71435573
-DIST firefox-108.0.1-cak.xpi 555253 BLAKE2B f0caf793f42c710f713d0e67185ea089c666e78c2a660bda60ec228d3f532e89ecab94b0b313ab72ff034b9bf101bc9b85da72bd7c4c36a14e886955cb93c4cb SHA512 ddccf2cdd12d07410660665d2a6f701a6b21bb727d5e72b3d4a87a56c34d79f4b301d2fe94c6fdf56a828f98251c2444d92136d5beb760dbdac11baed145420a
-DIST firefox-108.0.1-cs.xpi 582587 BLAKE2B 6ea508648b3f1b35ee55c4c4ff56353456399b9152e75664c869290eb1a2f05536440cc84545fc65236de55b8443c810eaf5b4cf25dee2aed1e5e9683e5b613e SHA512 5041a1567d04235ade8915d4cf6ee08d629306bf68edfbac479dbac1c961cc6c65f76b5cc5750b1607f5a3e0fc92191e0be0eef3588a9c2dcca877c50b1854e8
-DIST firefox-108.0.1-cy.xpi 562653 BLAKE2B ca8dc2f1e42c30fc7228613acbf285cdf0412a775d973f9fa3eb60e0020a2067f5a1d6a662088b814be1dd7c4f90a92a9e5cf3875348b8c151c882670d38fd72 SHA512 e14a5cfecb24f58fbc5d6e405e44895dbdcc8f5bbbaa39642e5ebe0f8c566d8cbde928c35cf89717c77ebe008f00b23aeafefaa51af1dfafbb1194ad635fe143
-DIST firefox-108.0.1-da.xpi 552333 BLAKE2B 75db09a6e56ad334b6be4931281f9367917d1cb53c3ba4d30391dc27ed4a773647aa351c27b9457c968f0a8e8254488d5e26ad023a1f806514a84c74434966f4 SHA512 990c60d6a863e8b95d22f38a363fe2f2582ac1cee72e247beb297380b09da80a84e24fc34bdb5caacf509f661a6480cf494415df90369285b7d7227ca86ed7a4
-DIST firefox-108.0.1-de.xpi 573561 BLAKE2B 1a9fac0945f1f9de2cf2b6c2353993ac9d25d6cf00089925f33841ff56136844e7d5c9e5a4bbc766a8c5b387e072a715bbb82a41a9194835407e04a5a7225c13 SHA512 b651737e6542b022377b8d5105dc9acce8058f7e14becb0359372a8df39bcfd3905dec11a7a48081c913562372f48fcbaa41b81efe39928de91b470aac3f82aa
-DIST firefox-108.0.1-dsb.xpi 583364 BLAKE2B 0f000eb18c2ca5b2a6424b20769eb5f587943053a8f9c612d839f581590967e716748b65fe2d98c517846379edf4402a78db72db3c6389171cfa9e7aae55462a SHA512 f97dad8cba691eb327740a488b0fd8d3514d06641c98db3ea3aed738fc1f7516d9dd40cc7c29ad04311a7ddd2aa92db48bef525c4471271a33dd52e087c91019
-DIST firefox-108.0.1-el.xpi 662923 BLAKE2B a4fca33637a1e290fd414da9f7c99abda7183d81beca135b92cdd857b36b42e7285ed4e80f0262d09ede8de5f44c94fcfe5dc633d7d599014aa7e8cdd4d244e8 SHA512 abb2fc9acf0bc8872506016797cb86944cf66feadf186378d1cd4ca4bba047d4594fec2cccd2a14db685a803cef79d68d992b9401a9c03fe6e9a969df5e8be59
-DIST firefox-108.0.1-en-CA.xpi 525756 BLAKE2B 140b29eff7a37d5a2d0524d6dd0610d89a8c7f132ae17763fc1243a6ee0081684120b69bf076d2aac5a1eac477eee1c46b68f3563b16d2d2bd28a56f473dacd9 SHA512 5715595d629403bb3b90f9afa45b1db3fc4160b800635fe29a84d5d738e362fb7dcf3ee9d360d61d6f59f789160b343e02548d9919c68e7a5a8970c60c4085c4
-DIST firefox-108.0.1-en-GB.xpi 528671 BLAKE2B 615998886e1466bd8744fa5137d05d847944033509e47fdf7698469574db9cec465bbf23e3696198a730e6b919239b2abbbd5b2071f246404f05397d72778a6e SHA512 21038c51136bfe9fa55bf9c8d08289d62afd2f77c8ff362c63043cedbce2d3a4d97a8457da6d6116069823cb9289cfc4b18be49df572550cbebf8c2fb9c1311f
-DIST firefox-108.0.1-eo.xpi 554176 BLAKE2B d810db59ba02993e6e1308ef78e8f8f02992f9e08b5cc175f0adc51fc9f02804dec7cb4d8f9e671839da93fe1dfb778888436d89e6de2aa4fba33c106dc16e50 SHA512 5b055eb443f491bb968540a24efb544642d44f26681140e77c1e8ea52f943e09761a20f933b254371ce510af35d98ede188ad7235762736b8bbac7ba1d7e7c99
-DIST firefox-108.0.1-es-AR.xpi 567756 BLAKE2B 380091d915cfb0d20524a26ac0feea3b7a015cfcd3fc922e194f6b8685340488a91a344c0fe3d16ef9392102a1bf3d23c816092a42fe78b7be6653a80eab9853 SHA512 6f3191afc655db349fca58607fb680e58a3cff8abe004377cb9f1042ad9c341d79dd0cc70d1dfd243a9d47d426d5052c511bc0c94675f7a399de87b67ad53b60
-DIST firefox-108.0.1-es-CL.xpi 566902 BLAKE2B 3525b53995710f8688c4eb88312a4731312e0439335e986cb7a295cd4b3e929d7e4585ef40d4a3ea309cad89213f66d523b9bb3c73926c40bcbfd8d4a86161ad SHA512 f3cc7465d7f951df3cec45b367562dbf2dbf17173772550b16460fadb37d7029df0b5b05bbc67cb4b577a6e45f5b4b1e75a4f7b715709add377efe805a1b418f
-DIST firefox-108.0.1-es-ES.xpi 559292 BLAKE2B 4493998ffbafe633b916202feba515a3eabdfd8c6ca304ff65fbe8d1b82d084d1b5bf7f89121e53b120aad0f610829410af73458d8d1e39c64ae6e4b1c9b9962 SHA512 1fcda93992488b4f52d071435e14adb49b303668caa537c35bf368efa4db96411a71de8b5766475ad0abe373c22d06d067651a448b6562a59d205bbfe725611a
-DIST firefox-108.0.1-es-MX.xpi 569569 BLAKE2B 174867b4289a46e7225004a1089631e7cca516439cef2d183276ed357748742e859bb01bf4af413f31ea3a8a11667f55eedbf28904a2316c5bcbeb3221336a6d SHA512 2bbab59d6acd9a2bebc405f9655a8a21a32a86d65d3aa06e75eaaef650811a5f14359608006f1a57a7f89858895f5ddeb3cad0e0967bdb57c5b1c8ad1a350668
-DIST firefox-108.0.1-et.xpi 534529 BLAKE2B aa48b3c0b1daedee1f5e62c732eeb71b22ff4dc23f92a218f569b8f97b70e1328d6775ca6e28707e34c796f3b6c2036769ed4419aecdd3525574e632c1d4f094 SHA512 1b5262ec7b2cf9d941072974579d7457d6686c6cd67fd9d1061a6371463c6fee0827848eb31453d007599ad09cd08cddc5dc525ec2c6df9d33b4e61a08618678
-DIST firefox-108.0.1-eu.xpi 556953 BLAKE2B b7d7c4bbde26521f3f5b7dd63a3c65ae6993de2c0b8c3ac2346158c0a9945d7f150146bc824923ca68b073fd8b2033abbb787cb2734c0e0f4fd4e1a3cf4a45b1 SHA512 57521828d1cb674682bde33a4625fa5743f18b304b3e5358019196950a1e840ccde7ede71635e81bdf7f37a9961dcdb1dacc3c3f092a0afb49b1bcf1da37f824
-DIST firefox-108.0.1-fa.xpi 572386 BLAKE2B c710b86a46bff27740958a4558c1050bec64b1c912bfe9bc7cffd1ff33b5539d12249386142372e58429458b73e620169b2acc7b63f4a994cb09433b085507e5 SHA512 94b8e9282b4dcc2615588ad3f2d001513b8d385cf34c4a620b633b1b0dbd3119ddbf478662c3a335a22b2e6307d5887d7c2cf6ff5a94e9a3a54395a0b2e73dca
-DIST firefox-108.0.1-ff.xpi 474480 BLAKE2B 2bd6bdc909c1199482ec1b4d36b5a01bf42a2547fb55d4ff3df7138c862c98581fc173b7595e6956b2694a646414453f4dc8c75b9c6a851f1934cd39d13ca973 SHA512 93d2367d7bd1aab8bc45d1eb784b45ea73d94a012767a675fa5de76bfe751bfeff61dc101812437e66bf507f8498a3a37755d74b73401e2c72428d269037b960
-DIST firefox-108.0.1-fi.xpi 552986 BLAKE2B d255e010307b671d3fc9ad3d96f62ef22a5b75d2e13ba89c09a1f997782e006e012afbffcbeb412c969cdc85ac948a79a0b3cc99997db7bf96078d5af34408f9 SHA512 7969b249db3a9fac6caea2be51da34edfca3edc9c6cd03252f1f3a4608f45ba0a024c47eba08d6d317a4967c757e46adc876c10c7d12b1e464ddf8cf7cc7e643
-DIST firefox-108.0.1-fr.xpi 579478 BLAKE2B 6c7b55d0eeb1039d766e2a1fd56b1ee21b81c3523c38daf7f51cc13ae84849c1a7896c8b0efcfec2b3ddf973b1b0c7a3053fd7496e4508be52c974a807120760 SHA512 1c561929ff4a75d792080b6d97e90be244c9ef377dc4804e1a37bd3a1f444685b7c7ec2e7be9966cb12ee80b0b93f9da89af2153e62220f3d838c8689b15ebed
-DIST firefox-108.0.1-fy-NL.xpi 563349 BLAKE2B 8504707a95cbb631c64432e21b8a3fcbdd10161770d6c069ce9fd4a16594f1b6d37e39df7b74cf2af914a2726813a1109266a58929a4a13f6c2d98583ae519f8 SHA512 450a88bfdb9dc48a759705894b6202a1fdbaa4b72e0892e976b65795fd82a2d9988ed6f6e1b2a3e665c7d99acfb974f1b19d48461bf36bde1fba56a5f6565075
-DIST firefox-108.0.1-ga-IE.xpi 470251 BLAKE2B e556a567467cee0c27bf0bb2f46fe2a2b290bf4ec9bef41aa632c6e9d65a4b8eed8b140a0da6694c62f3d87f2354ad4f6a15f92c2b6a9a2611b8c088775de8ae SHA512 cb9e0a00950740c0ed63c8bc8abde00b6442d62d463bd72d4398a694416aef2d826f1923f7e5b573893e83f94c9ceecd1b5b3599f45362de092fbb5cdbc7245a
-DIST firefox-108.0.1-gd.xpi 548826 BLAKE2B 86aea61613fe7b90ecf616bbf2c5c0d1ba768a738dd1e879bb9576cb49271c48ab311dcf1c43bfb6356212a504f9e0c6758f517a473f0296d1cf3aa6bcc930fc SHA512 e574dbe9d13b76892ff3c35509798d044cb931dfd69a1cabeb75ba5fa85d8307b68b5a44376bbaf4ff5ffa1aa2749a49ee10f9cb25bdaabdd489732903d813ea
-DIST firefox-108.0.1-gl.xpi 543434 BLAKE2B f85b0b787371a871c9586a9a968013b664af716825fd6f77890c163cd387a2ec24d14d94375a619a672163d1b4468e69b9b5b275981394260a52c873f9be8ac1 SHA512 770cab00571294abc98d03f63e158cf253c8107d93ac6a54fc1e16ede9e3515a32fa51b7c2a7ef7a4241331af544272b98ef80595aec2b1d16a089234c9d6b75
-DIST firefox-108.0.1-gn.xpi 578518 BLAKE2B 7d2039d671c266f5a2412d2074f9eb4d2a07dbf96999172f127599193c81911a1abcc51efad193affae3a0820d8a3a40ba483d3c28b75e03dceec921f9e6ddbc SHA512 c2f2aa46c1412dc386218a090639dccae40120da085f74234b4f6ebdaa92f9783e8cd82a44597c5f0a26b63fc2685351cdb59364aaa414ec24993ab09a55975c
-DIST firefox-108.0.1-gu-IN.xpi 529444 BLAKE2B 19961f006e76968292d1e6b869fe1fcf6580bca613f3ec465c66d425f506da3f3cd4606f108344bf688baf918dbda6794d0664e2a81d9ce0bb97edb70fd153e9 SHA512 5e5be8e697ef242a3e147ad0e3ee1fca0f51ade81cc0215881dcdb0f5d92a9c6163aa862bc9229a8dba95b80bd75008b4ed3068adbb1c34c4335dc667f1d8fa4
-DIST firefox-108.0.1-he.xpi 573905 BLAKE2B cdbafbf59efaaf973406ffd9fa3b1fcda6fdb25e6e3bcb57503bf6afd6a769fd3fe10b17e7758a99e6b7a8ebc7feb483a9757464858ba4890ec11a59c510ba2e SHA512 ed459ccd4392e44998a38b709f1acbe6bda9945391b3f1ea82858a611a073354af42230c0f25e4f8d2b514a42135d8ae8e135ee0eaf509f3982538701050ac36
-DIST firefox-108.0.1-hi-IN.xpi 558570 BLAKE2B 6802030173e991e7e77153a033842789fd1c141a82c8dd4a931aa927dd530e4a46a97364c66689e053cd3dc8094b4ab9ba2fa7ffa088cac7b85af7338b724517 SHA512 a8741f24cd0cc943dd6a7a0f4f1e9a937372d9aa7a684ecc4e109bcb3cd1151ea040b8713cde8f46fc72ab75c8603b1dadd86e24d6bb3569c56f30957b4f18b0
-DIST firefox-108.0.1-hr.xpi 538312 BLAKE2B 4c8c56dca5ef2f17abc84f18ce623120a47868bfefc717bbc95f5fe6271c6f7951d3ff308cfcc85145f6ab2c1c45f314c5b8dc08c839370661f0f7bf670287f3 SHA512 c02e8eb7d2ec67d9b7afc4fa501d2d53669035668ab37c4d4eefe4f920450556b0f024b06e9233b5bb9af8fe1af44b25667c858bab0607fe14cf20c220155816
-DIST firefox-108.0.1-hsb.xpi 581697 BLAKE2B e33cc4b0c3f2c294f3328a563c5ce5e867f0ee7369245a3d74f2205f85fc7c2071f4b548468fda3cb756923e8c5e72e05c1b977e3e269cda0e1456e784f31044 SHA512 839029b7ebb9c26bf5ec47a10ede9481b5ebb4e2dc6145d870c93a02f21aecf6f2baac3503c1f9384c8fd40fb84cec480c3b4ac1059bba3013d0dd20e46d682c
-DIST firefox-108.0.1-hu.xpi 587848 BLAKE2B ee23d3c35f8634b2bf185cb8c6263241ceed5792c3c6323a63069906164b4fcfbf083185c166b340ed1647a1d10492617d117a3d9c0ff2203bd64eb7818a8c14 SHA512 741ed7e6103924331bbef94e78a07e55be947af78390a55aaaca9c2fb09d45ea995a1c6c842775caae4cf160713955f01aea1c2dbbd81083feb2777e1c8a261c
-DIST firefox-108.0.1-hy-AM.xpi 594657 BLAKE2B 440a1550ea00a239943e3593852a05c64f2d7933474f27c0c042fb27fdaa67a168734631b76ea36543c5621cffd4bda733cd6b1b9b401b343bc624a43bcdff7c SHA512 dece73c576f92c789f627ddb62e6c3a3c0a35391e3eeb45efc416b8588a4ff8ce7c3bb88fad27f2327669599c67036e63129d4e79ef2bc0bfec05205c3850e8f
-DIST firefox-108.0.1-ia.xpi 551763 BLAKE2B 340830190b2ea0bc90117f710cc9226a7c9fabc0dd7355ba80286354fdd2f8b6674854175640afbd95a0e8f6ac2a489361c2aabac397abdf37f43d95277d2de5 SHA512 93cabb343eaba18eceb22693ad0a68db187ea4f5b3c587a79ba3634fb1eefe8e052095671f059072c2e9c649b1c9aac1a73e8895965e9afd161af4b54e56782c
-DIST firefox-108.0.1-id.xpi 548618 BLAKE2B 2786b0336924eac45a3e6a9cdd053fb68ce4095525cf36b25e790762e69a679c67b4ac06d71ebef324a5f74100fcd490135a61811d0c623041b7d2933edac290 SHA512 195f96265e4f706dbe0da1032e8e07e24558a5133139dbe4116d10005c938e110db3630967cecc1f7bf1ba439b91ddd96dd8ea9011c12c29f456392f798310e1
-DIST firefox-108.0.1-is.xpi 560731 BLAKE2B b8a96943206fa5f8961e2d98ede8ca50701ba8a8ac076b242422b61067ad3ebf0b146fa38d45a3a88102e712c29fb669f860b2472a43caa3981c91eb42826233 SHA512 a208d59e15d5a0b5e1a8156dc44f02197e90e2f0af458aa93fa5901b36a6c85240f44647ff1fb80512a7466f801b99e76d58663d256545aa2c6553f78b6eee73
-DIST firefox-108.0.1-it.xpi 488823 BLAKE2B d6640fd00dd8cbfa03826bc77e83566f532b0d109d2d4490778e87f65f62a262339f0205feaf509c0213d2b34752ec423fdd5f49398c446c4e6d6f301d46927b SHA512 76b47a47814a5b32f21c2372e4ee329f8da6ce71eb82b932f99b40eede57a92615e019ce0623e31a76f3fb0c8874f21932de120bfdbb0695198e8b118c17c34b
-DIST firefox-108.0.1-ja.xpi 612094 BLAKE2B 9f156c87612e14b1a2b9fb5e143afe0c52ea41e135987ff444193dce3fcaaa2faf61a9910ca1625ec97cec4c54abf1aae894ddf40cd4cbdc598a14929137cb97 SHA512 8ef21bfa40d74549638f17ba4b93456184f8e52e596d842317da12964b607196aa51d72db724753c531922240f67ee3196bdeb962b1a8ccdfff17a5d117a4d9b
-DIST firefox-108.0.1-ka.xpi 616444 BLAKE2B 998e65597172bb25bd6db9eb3c897a67caa6fc72d8521bf37428188a4f719b4de62dd90093258a12d5ada176b6b90be56ed80aeb11cda39133701d2457dc9be9 SHA512 01e6636f26b39c3829907185f7efdbd2b3783a0a87a4c9ab02960d2ae7957ae9e6d8cd0d55ac76442e2a9c539c9b4e30b8d605608ae96254bae70974ef4362bf
-DIST firefox-108.0.1-kab.xpi 569581 BLAKE2B acc75790312160f3511990569699b08ca1ceb1128219adc0f3a1b35a721704764c709cea0432580bc5d237376c454cf32be8012dc4821643802bdbeb4dbe8466 SHA512 1be081b6872aa885e5209bdae2c069ae2353f9f053ab28c42c2eb3805531d1a9b8b6fda06d2831963df7b957db4627fab36c2493a0499d47843be38c390f97af
-DIST firefox-108.0.1-kk.xpi 639492 BLAKE2B a9cb26b47080f368a07ecd267c32f12311a85ef1fd8933e32e035e59da0f8e826352880e79cd5693f33fef3507b3f2bfa55cd0efffdef19348b261419de8e73e SHA512 1f1082da21782f9e28c01c0a39e143d227aaa0f302bb8a96955f68ff522d6fee2e8d0f715392a187c614bb8c9d59c6a5d454f40e69ef69a16c4664ec1b6033ee
-DIST firefox-108.0.1-km.xpi 531194 BLAKE2B 6706b252c59859691d4a856cc9fc505a99b7c8406e62eaa80a15249286335cad1d2f17e7870020ff43c0d347964c894fe00298212dae6fe3b02b40205b02ff7e SHA512 4dab956a89870e14a781247bd43633e1b34ad4753d99be0199aaecbfd1c8e2b59942a6c187b7ec81c977a44d00fabc5bb02f450d5dd175529d2b8833ba1d909e
-DIST firefox-108.0.1-kn.xpi 496783 BLAKE2B a708685c4acd346ba3b25c9e9afeda904c3072903eab00bd4674e8a0f5b24e02e09420981d989a10265ba6939e22c73fc22c3b9cce1723586d2fef41d0becb97 SHA512 c058920af17a150bfab66850c437e0acd637c9a1034388a1e33020547f0bcbe71c5ee5767c9cba59f0804d032d7e76d58cdb789b66a0a46a568e85b0c230cf4d
-DIST firefox-108.0.1-ko.xpi 598492 BLAKE2B 653d0a0da17d827031dbb1efc60f8817cb07ed4053fa2bdab2fd7c9f3c72873c35c8fa6dd23b453ed6ef04c190bf1950a477cd059dde29b36c87677e3fa43387 SHA512 442fd2ae62f908a345e1ef6ca139483c5881bf98d24fecdabcad80d554029d42d276fee7bd0e08416d524bb61f29021a88b4df34f7721d69a4a6e8f22fbdada9
-DIST firefox-108.0.1-lij.xpi 471422 BLAKE2B c37f4f9e6a52633c241782148bf58a1ed15ea9bd2d7a326b056fc2040815b4831761afca109da0ce022a2035a1b6ab75f042196834babe7d37a55498d4c0bf46 SHA512 365df5ff1bb6d4aff0eb44024f34dcbfb56332166839d8d49547f432e0a9e809f580512205d5c663c83b626a1f382d3e27e0356f2137095fe44d693fdae5c405
-DIST firefox-108.0.1-lt.xpi 566411 BLAKE2B c98ac524a351b05c2ec0c5fe7d91d81c32b173e71e9a341e95e1179be7865020482c3c842f93f447b21deedb27e9f17f1dd4708be900660704fbf1f497def5f9 SHA512 749b1078f6651d65726cc8adbf5dcc7798dc0dea11a64a65ccb871387d769d76da42b15a03658d93602d73d9da0e1e151856902b4fde273d4a201cfea485a5c7
-DIST firefox-108.0.1-lv.xpi 466194 BLAKE2B cdb2c5c8a8b6f7976f9c0437fd9b9165415c2b618fd99ddf449c390b6994a7c99a291a07f15641fcb8a2d1bf0c9db124d3053319329b1e7bb8b89ea7a8da028c SHA512 a2acf3f19cdcdd8c2c6681574b18f1d428074f22aed0f0d5c94391865ebd09482e9448d4868916aab2ac2402b922c25ca4c6c59de4b32781b27d38e3cbb188f9
-DIST firefox-108.0.1-mk.xpi 485625 BLAKE2B 64558d638ce6254ca7d00d872954355959190433f5a27cdac6d9cdfad7c5b89b98e3f6292a9b4fe8165386b3d12349db6a0482a522b02f625e8f8e57eac749fe SHA512 5dac4a474928057225920dcef61e520fcc86e563bc526e9ed192c4701d59d78dbce48f4d777aad1f5b2d048430ca147f64f05cfd9017de5e9ffc2628daea5cf6
-DIST firefox-108.0.1-mr.xpi 531997 BLAKE2B 8e7d92860df7b560b18429b29faf2843e58f8ff5d2fd7edb54c88cf5e0dd1440081b6e1fb06576c60962515c1a6cb22c5b36adb7d848c7f278293240a557c373 SHA512 a7b855591e96977fd948ffaa39aa628c459588ca54a247551834341c3913428255cedb4062e15d48c9ef4cb828fee83e602b331aec6d65002428ec05533e7aee
-DIST firefox-108.0.1-ms.xpi 450666 BLAKE2B 43da25f1ab48157647f3073cbbadb8282c510ea2d1ddb071dce64a417138a0c4939c82d440be9685aa5e0ca7fbe3a72a9481219c715e549df2499f805af86667 SHA512 a5c78a4e1446b9f1815087f7fba7208d231b6c8ec7ad8d8657e229b9e88e1ff8ddb1e5be94471b5d3bcc05f1104aa1891b0a7f3bc03a6d01e8989eb3019de69a
-DIST firefox-108.0.1-my.xpi 517675 BLAKE2B 6ea2552d75fb4699b471d47ce5e596074f7ab6450b43cef7b91bd22087751f25877a92d43dd3f0d609636c4da1a9fa8bc106b89d7b9a8b1853250d23413f9c20 SHA512 9cd762b64101c84acabda265be2d5c723b48f55cd234f28056d779a910f9b79d7b35d81f708783e48dec85479bdba53f763880b014a006a77a216739cd12adca
-DIST firefox-108.0.1-nb-NO.xpi 549695 BLAKE2B 042f6a5a6857c0581bf5ba29007c261da0c111a9024eed5aef83548eb8a30e31696abad3def90fba14276429a04e4b5b7d04998c59f59b93539fc62b221ecad8 SHA512 89e1e8b2f0b3e8f963e415fae883c9e454b5e971e63726183ee2157fb68f50374f3a757214c9a9fe1eb0401311f8bfd52fc4c1bbee145f7dc275bac1a322fa6e
-DIST firefox-108.0.1-ne-NP.xpi 485219 BLAKE2B 980fd5fb07264e463d086d35ef63cd9c3b46a41d3d9bda824806feeb9baed767d0635b2dfb8782eb65cc1e57256a13f7baaa27de4c2d3bdd0a26dbf7744319f1 SHA512 dbd087dc3227d0ac937d366765bd95956d6c02c5267254ff2a0ecb7c0287574a6526e830dc4055c9bffd2b4a809e5748894000d03093815d01863d2ae53903ff
-DIST firefox-108.0.1-nl.xpi 557495 BLAKE2B 6634e2b0da522a7dd8b27c5219f4961e2e0b1f1820d1f24b0bfdfa3fa73c03b6e2056c501b0addda93e167ae12fd42a37ab22e13fbbbc802ed25fc3964f6cd0d SHA512 1bad888f40717cc8a6c4396b1f534b6ac83b09396a248dd043434ff4dffdef966cf961874af56592988437c5e4970feea93c09b79a1e35b3cf954a8bf139181a
-DIST firefox-108.0.1-nn-NO.xpi 550010 BLAKE2B ebde674a01fd1304a642b7a9bcf2a6ba97d7589ff20a46da7e39cdcc5784703d8a3262f8ab44f4ebcd7be1249b6af7cbb4d7ad08020ccca06961c22110599a40 SHA512 4f04846259e79e7d75813efb3831f182c0e61d40029de4c2b2bb0dd1fe23f163fbbaf751022ef72592697669bc11bb52189a23a5e41adbd7d754e1e2b9973b45
-DIST firefox-108.0.1-oc.xpi 574012 BLAKE2B a28dc92c975ed02025569850b0d5216d8cbcc7cdb69472277e1c14a4c75d09970f0b864306fc4ea7adfbca43008cbf2b6fd18272c4d102b441222be59bc2e90c SHA512 30b9a525d0a304dc6c8b4939fa8c2059a3d5e7c2cb93e8b5d136e1808576f10fdc7a5fab4a56ef5625e968397b04c1d574fe6fbe42b82166a1d33d48a1683c09
-DIST firefox-108.0.1-pa-IN.xpi 625814 BLAKE2B dca86502f7004a43fabd24b949c86cc3d90841388f45f6493ad8061fc288e6ec463e19de92ba549abe8baa71f3dfafad3c613bcd4c9ab11b1d5a96440bd8eb88 SHA512 dc3bc159a0c6ea1a35e2fcae39a0b9ea6a05d38067841cf3d7f1646ac7a5b279e5a07eccb443bb3bc542b292ca8fefcd0cc689ee4b610350bd6fb8af33c4c82b
-DIST firefox-108.0.1-pl.xpi 579960 BLAKE2B 58df0f973a39d5343cce9f84a7d3766815123cf06b56b24428ffd1d2e66dc0cf4b5d98aae4848ef791a108e18075c503a1121a9af5c55c2a8d0b4bb1a86ac4d7 SHA512 eb41f7b55a49fb3c4cb6336764f1ee9f3d8fd28eedd82465b8ec9f4a012ca5d1cdd43f7c07d90091899de85c68e73addf0f999f202f612db6f506402c942a10c
-DIST firefox-108.0.1-pt-BR.xpi 562421 BLAKE2B 8fb3b37091eaa68e4a75afa8308024896f14f70eaf33aab74aba32b2f4fc1b1c40f48400ef478254b433694e8d753685c4769dabf311ba21dc432848f83aef80 SHA512 a60b2a6f747f6fcc056766d13ce902ff43d12779807ac9ce0a2f6f73ad05605156bd06b99f4fb28c624b212454a7dda7fe000830ea9569f45f97ebb05b82f7d3
-DIST firefox-108.0.1-pt-PT.xpi 567185 BLAKE2B ed1ccb7120f2253668ddab2dcccb938bb504bb138108a1863c27966e53a142f3de79b199673f4a1305301150effd5da08e0c4f972be0aafd883d16091970f14d SHA512 5b24ba366b45730e329daae885e231401820dd80f7a2c53e8268f54c574008b18f78345cc8e81a603fca94aa4d7599b1f6b8a2ae77b8b721af624215077129e5
-DIST firefox-108.0.1-rm.xpi 557257 BLAKE2B 133eef76081d6efb3c36dd9e29ba074e6d3fabf2d91684c419875bdaa2d84f211b2f31fe5076502cbbdeea7e55872424b5a7c11d6c9869029da9a87560454b97 SHA512 02aaf6373e76fcb403cad67e13279fedf665d9d5f109b81226f13d451dc4275fd570d1d965f62e3d00011470d3c656278804be96869d0306b461099438f63554
-DIST firefox-108.0.1-ro.xpi 534099 BLAKE2B 91b8ca6df19cbcf766b18a41e6a4fac0189a1e089f42ec5497c2604d338802e5505df7e289fbb2a57feb6193bde9b21154ff5d2fe7b3d1e690c0bf557f217749 SHA512 172e0c6623356b02340a00f47466ce3633fb90fc96c760df887c9efbab91cc376582e22cf1105fc2fad6a494e2cbbc73ded7ec1345a70e4386edebe557cb5a92
-DIST firefox-108.0.1-ru.xpi 651322 BLAKE2B bfdee2b40544df3434809a76e3c820727ad63752d8eb17dcc82301c4b12857bd2635f1639238211fe8760ea38bb017446dc457800d13e04f49510bc038fd99ca SHA512 f649882ecc726ba770879e295066cf01922f3db55fba29f2a939923bc5bcf0e0fbefcbc777a260cd8f79919fa892722ad75c5f3d2b557ad1a236c9fc1bbad9ac
-DIST firefox-108.0.1-sco.xpi 505173 BLAKE2B 4a08fc57527e5a6648d62814814a2c9877c7cf2714d6af82ee0b2a2e47c0086dea383734f7816f4677c38230e21f3f026c867625a0b09acec5fe2f5a9da71d96 SHA512 54ed58abd13fbc206bddf074aec8a5e6681a128d6ed6c5fdde9776f7907b17de60bd44805caf5a66b62ff09b262beca479c6b037252faa912f19a76f8e9e01bd
-DIST firefox-108.0.1-si.xpi 572043 BLAKE2B 350cccb1686073e508a1b04899ca79144439f4117f6fc26f2047e20923b5f68b363b286a498361b805e732c7133e0afd6e361599d6bdfc4c7785c02fefe13105 SHA512 c4c702f3b37c6c0fcf00d56fbcf52a456db69afad5c34d22e70fc8785ee9e27004ee86ad29e58a4baffbe03a354010be3e7d9b44f2bf1e4cd4a13ea23bcf48ac
-DIST firefox-108.0.1-sk.xpi 587671 BLAKE2B 41fb2d5dc4ac0bbe6cc59407f9752330bc95b9dcc1b450cf335fe501e4830f157af302a4e9ffb520ef6d4f35534d5dde606c7826eda9714ee7038274c5f24bf0 SHA512 db38e087110f5f375b6b28c6d8e2e8b34e7a1edb60699b6a9107a84aad24eda2f0b8a986daa5a39fa9c6ad207c96ed086df3a362c422865aabf8e2d05526fd0c
-DIST firefox-108.0.1-sl.xpi 559761 BLAKE2B 232394c02a7195889608a6fadc8097aa5b4a8ee16e4ec7857cd5339fbdeaed8c77a400c0f65f69c2ce6b54ccee05f5b981153633a719f008b49d8217686c5e32 SHA512 917949c0e7c2656932f06fd9310bc04558012e4a85aa527ac6e01b5f785364dca8db98bee4139ab75967c1d335e845c09cc23dcf7476e0fe740f790ff6b5a95a
-DIST firefox-108.0.1-son.xpi 422456 BLAKE2B 15db088ec59c7e44177a875a4602440c3f99ea96ac54f9b644d0709f5c9fcb69baadf8c8b7bdd51b1881c6b00e7a8c5d765c3cf7810da6d633e58452573932f3 SHA512 86a90f8258d762c8723115c2c90e06761b30295415d056065db07b318f6abb19d9dba6218ffa0a74502d58dcae38c46da3036f239972b2c3c6c206bbb21db7be
-DIST firefox-108.0.1-sq.xpi 574787 BLAKE2B 6f5e81ec3bb6bc3b61e2b69240400dc0755e5a21ab7cd4c35008131ec967a1cf10a370149f58345a1e69084e0f54e8e10d7f37a5d0abf9be61aaf8eb4f45c489 SHA512 d7cd6392b6caf9cd8c57cdbda31d6f7b2fefc3f5126b17d62a303ebcc0421b70952514261b8e50f4a3474c00a08b1c5ae358ac4dc8d1331cb6cea71bc3a8a5f9
-DIST firefox-108.0.1-sr.xpi 615008 BLAKE2B 792d71d8d3de6720bdb27932039ff4aa212dabab6f6c6d3ff5758d3a2b0be15a42f7cd092ea7306a801b7e5a164dec138003ed091da9e450e234a19e10061ac2 SHA512 9b5c797335aa8c2e453f24663cbaa37f9ca669650324c5b292933113f7b700cd39bee1e23c41805a5c9114cc9cdb2c3b8f3d2461d8fb18bf0e35dc21d8eb4fa3
-DIST firefox-108.0.1-sv-SE.xpi 559345 BLAKE2B 819940fb4d30676d85149cff13df1e562d2ee4e3800a1831bb0cdb044f14963ae3f85d797be2212f35e3e857ba32f4f64830ecad089dfaa43b7df22958cd5836 SHA512 4b03f924f52bd75ee01d66bb8fa7d5e4c753ddc0742f97a826348653a279396dbfc241a66dc0e62222b0779a31a8c1f98b81ca2b277fb10aaedacc60430fab09
-DIST firefox-108.0.1-szl.xpi 518204 BLAKE2B deea10cd0a4073ff3ec54434aff8c73997e485d458f94e8496826aa5983e951a9d24f81150481d866c191d610508170bca8697d6cf2912585a9d1ca3044d157f SHA512 a3b1b216e78f61690432a6419f8b8423a08e1cdbd2a344a73bb40396ac5b142e469ab9728b1ab6b054e887266cc05643559cbe0c0ff157d31f65133b625f49ce
-DIST firefox-108.0.1-ta.xpi 509729 BLAKE2B 6e6c0ff855bc88a4e33f25960e2eb41a9e4c4b19c17d16fc95526c5b686045e781ef065c6c11c014a8639e2c09ebc1223350235c7cfe7b4aeeeba0a0385139b8 SHA512 6be51312154d7f327343dc3afe57228af887ea9759d89c579980034fbffec8df96cd5d0cd79bc909cd6a81261328d5a89d0559993d7ec9676e1ac1478c3c1028
-DIST firefox-108.0.1-te.xpi 556979 BLAKE2B d7b88eec32485da79c9faf584ad11fde87f7a8261a7787b3e0e757e44cffe06406e837c00e24d4b820284848d779597e0080e91846c3c89da99c727d493c5278 SHA512 166b72cc57859cb1a966af49dfdf002f029e080dc02d41f3b3b28a15670450d4ef3aac2955aaa2949caa8ff524e79fef8ec504d4511fb9f04bee16a76316fcf3
-DIST firefox-108.0.1-th.xpi 627888 BLAKE2B 6fa2b5b164c755d8139c2b054f0236731873f73fea74db9520ed72a5dde246ad6897eca89fc47a80088360ddc50f5a1c78c06560b0bdd78b71e3cc0912fa9f7a SHA512 d87de4c4b5fe1c7d093378e3dbf6644928e359d88e55fbb4e15d75e5f10dbe96c4a419a0d036205c22d681fe9afc504baf02817195c459b9148b5b567a51b6d8
-DIST firefox-108.0.1-tl.xpi 522751 BLAKE2B 318eefd13020e744da783da76fcaef33f9517c083631916c5d6ed7497213d48c962a59194f381efe62149df6e70b9f881b3a22ecf566ab12d97605036947bb03 SHA512 63d8836ffef5ed25ed1b63d2f04a531bab1d77361a912e3826fbdd72cdc1a9c10d397ad6a7f3f4317b29038d7ba8268c9f3148fd0042daedfc25b29790b749b4
-DIST firefox-108.0.1-tr.xpi 573051 BLAKE2B be4897f4518a9aa1db76b552658f53fcb73b1993e95138b28f18a0c47647c71334d37fe06b5cfbbc5474887286cbaf68dccbb1c1b965fe76211c6ac0b7675cc2 SHA512 f6db85bee3d5390ca4a01df9de7fd43cda3c176adc0682fd328f55a07c87514d70d3342a0097c009b36d1e629b9139f3e9f2f469e54e1f1c464867f0ceaa5311
-DIST firefox-108.0.1-trs.xpi 487417 BLAKE2B 76ed3e93822e4cd57ed9ab3508710103ba90a780055d1eba1c19ff769b31d377ec54b124c7a7176df18509ed3eb29cbb027beed4d4b0655779b24688f5fb2d3e SHA512 5191d76f88e4ec0cc3126bf16c315a16536a0d931cff9cb4a9c3a988caf494a1bcfc679324458fd18f0f490a4f00eb6185f286a9ae1d05f5d04c3586c7bc964f
-DIST firefox-108.0.1-uk.xpi 644538 BLAKE2B dd4668552d78bebf088231685b0e2d27d3d4e55b9ec6f7483f15d3b17b51876238fe1b66eefb2dd87b3c30413e4a6cc59222a19f083ee7ef936fe24382dae39f SHA512 fa118eddf661bd3a17d0f4cca29786c8259b6aaaec7ec7ff67d3fc97c10ad82312267c656625c793bea4310acc8ac857ad3d7241c392e92fb2f498c5382fe3e5
-DIST firefox-108.0.1-ur.xpi 559040 BLAKE2B 8d9de2ed2a34e4bb5c4b5bc07f07b7b47e3b3fa7be18756ed284fa8847fe4eeeb4ecc3f1a5b12f339b077822a7ce4b36ca029246e9be830939ee231f8e2f34fc SHA512 9c482480cb741c57d3d955c109efe81a0f19762fa741114975c126a2112f5ae15b2808e9523f3d88e8cf634063cc861ec7b001801e866b082165df420b26d6a9
-DIST firefox-108.0.1-uz.xpi 478513 BLAKE2B 8d6996b019ddde66ef28c197d881ac8bb122b90b50d60c1dbd4d02a4d4f255f8531f620c9900b287188b7954503b1a673d3cf2af5bb1f5fef6871a2a71ab5a84 SHA512 5b401f30ab983c1b59d80009a746b9f530cb8a5a1730e709026036988b7dd08df9bf23b26599aa87d8d61785c228e9562b4617a3e7762a84ee208f75e7104a3e
-DIST firefox-108.0.1-vi.xpi 594794 BLAKE2B e4e8a640eb55099fab21f6dca394d65bd11b191a4c5638a7ff806a4bdbacb02e7edc2c904a3909e05450923fcb9078634a8d32c585165dda045ecdbcb322b32a SHA512 0a9e7b90a0c5c5250a9e0273d1838aecf46d756b922b4a76ce44d77004ebc937161ee88f51b6996cfff445d2473738e2af815f5b191a35eb371760ef8e27442f
-DIST firefox-108.0.1-xh.xpi 418350 BLAKE2B 3d4be6d583b1ae6920a907c25325cd7d75482d987cf9e990f4ab29984a4c32022b3664c25a23af19aeb9673f19329a06f4e969bb9be6517ea090a074f1623d07 SHA512 dce1700d0b736984164f9ceeb29292f7c6183a63953dcdb51519989f7e58745d44894514b52d6c94fb825cf9d8ed035753c1845db677b6a88cf4f5134cbdea81
-DIST firefox-108.0.1-zh-CN.xpi 594371 BLAKE2B 0c5305ab5d80a679d0ccfb200045351846e44139459a047ad58069f9d70c379d3c8ee00b89e61d4b5d26769c52458ac1ea9b94cc929b2285f21cd82736b417f2 SHA512 a4ab0dde55750b942592cdf836eb4c5a2a3758c51104b7068ba801e4abf0950907a88887c868e7a5ed82d1d82185e27eaa59c2ab3f01e4c68fd7f4b1efb42bf1
-DIST firefox-108.0.1-zh-TW.xpi 595832 BLAKE2B 2119b9f170e6d4e39632af1e8226e15383460e73f6fd7afe53b8366a88881b2fd4e38e2aa287894b164c64c08ec5f5a7b4a72897bd621560e23d2c8d7fabf4ce SHA512 d50ac669054cbd608e2fbd33964f468166628716729a2dda35950050c09029846b2995bbffa4490ba01adcc058219d26f72f1a4206aaca9611a31a7b4ac12c2d
-DIST firefox-108.0.1.source.tar.xz 498268448 BLAKE2B fbdf5c32e81a676867375aa2a42f0f5d649fc6e37bff729d69c7a3477eb09e553f5bfa53625f9848ad0694388ddeba11d63350105228253dcdd8a303fb9c963f SHA512 e6219ed6324422ec293ed96868738e056582bb9f7fb82e59362541f3465c6ebca806d26ecd801156b074c3675bd5a22507b1f1fa53eebf82b7dd35f2b1ff0625
DIST firefox-108.0.2-ach.xpi 454489 BLAKE2B 55fc5f61e15600518e41f3ab6f05e4bc9df466754a4be63301c6fc49bf0326f1f49848072350a5a7e452b13149673c3853e02da4dcc31ced809e321254eca3d1 SHA512 635a9ac1bfcd238adf4bd3df25435ac64eb58e1224bfe9da41723bc1d6f918e74c122818079aa9a84c55964bd348735a2325fbb1dc5a37f33d396627d056eed5
DIST firefox-108.0.2-af.xpi 419613 BLAKE2B c75573c642924c21cc84c79c55533a13dfdd43adb1bac8361e3ff9b1ca43b591a9bdf0850f5f9306c5c3811f88c5e45c2eae4c95efcd18bfc4f35cf40b2f14bb SHA512 27388512241e7057e1d8459fe017df43173f34fbe7d23a2c59fc2062a4cbe7a48026b103661e8026dbe82fe86129446020059fe822ae935e0f21fb7bb5a9ef80
DIST firefox-108.0.2-an.xpi 501401 BLAKE2B 2f3890b335965f80a630ad678bc5810cdaa9f94a2739bdc08f69fed8351801ec6b3b09895763713028bd36fe5b25ecd70d3d4ad44ca2e4c44e91a94d10673fe2 SHA512 269e5198d8e20d3171714d0e4180baea9657220c0a46f1f83ece9cdd5cdcf94fdb6d9e917f5b9231502e313a2af79b3de25be5d8dc2d9afa0cb5b6800d5e1591
@@ -491,4 +196,3 @@ DIST firefox-108.0.2-xh.xpi 418360 BLAKE2B 347829edcf2de37df146ac3424fe11c1ed957
DIST firefox-108.0.2-zh-CN.xpi 594362 BLAKE2B 290e6af6349cf6c0f863a1c60dbfcd096ed289df0e6f3f37a5e9699a486fb8a03d946506d307a90a3c977be7955867cec5a380fb940160cace64bc7006ef8b6d SHA512 b0a24d9152677fe6d2155e6e47112a22c246401a7c7c9e3a278e7e90c510151f6e1caa5bfae964d7f3f7f44018e9196b454ed660310f929123e751626c24bb7b
DIST firefox-108.0.2-zh-TW.xpi 595831 BLAKE2B d54dd8100a1ee6adbc7447430576d2aae7a0341e12ff472cc81250905052b1c9736c1b86df41b11343249a45bf340122499a05b3523e9ceede7bc2e8e7776e15 SHA512 c63edc0f214319a53b892d84fc81ec64008e1639e2c440333c5c3bbac57191636563a702be9402beb9a72b81c4d4e1cbb2205be76666c3a5adee3e594e0b9e3f
DIST firefox-108.0.2.source.tar.xz 509638740 BLAKE2B 8032c4250c975dfbe159eac8db3a8909c45b9ceccba206f7a5aba9650bcb40df658a50890efa5572d9cacc22411d6f1a2253905fff2d0791604debfebd986c29 SHA512 f856ef034fa4a526e19968aed092c9ee99e124d2d271ec1c1bbd091d9a03e23293d69c7a9ae17c43258cde7e73c294534b471e36441e576377854f607c9bfa3a
-DIST firefox-108.0.source.tar.xz 503688784 BLAKE2B ac8e5d613899df4634d7126735b219938b48f49c9306c09eb1669fadcc362f6d492ec3cb6d8a8113eced73fc3351c54d6e5d4ce70b1c77a3a87db22adb76ce81 SHA512 fa800f62cca395a51b9a04373a27be48fc3860208e34ecf74d908127638d1eb8c41cf9898be6896777d408127d5c4b7104d9ee89c97da923b2dc6ea32186187e
diff --git a/www-client/firefox/firefox-107.0.1.ebuild b/www-client/firefox/firefox-107.0.1.ebuild
deleted file mode 100644
index e5d25a646f1a..000000000000
--- a/www-client/firefox/firefox-107.0.1.ebuild
+++ /dev/null
@@ -1,1328 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-FIREFOX_PATCHSET="firefox-107-patches-02j.tar.xz"
-
-LLVM_MAX_SLOT=15
-
-PYTHON_COMPAT=( python3_{8..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 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="rapid"
-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 +X"
-
-# Firefox-only IUSE
-IUSE+=" geckodriver +gmp-autoupdate screencast"
-
-REQUIRED_USE="|| ( X wayland )
- debug? ( !system-av1 )
- pgo? ( lto )
- wifi? ( dbus )"
-
-# Firefox-only REQUIRED_USE flags
-REQUIRED_USE+=" screencast? ( wayland )"
-
-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: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] )
- )
- )
- )
- app-arch/unzip
- app-arch/zip
- >=dev-util/cbindgen-0.24.3
- net-libs/nodejs
- virtual/pkgconfig
- !clang? ( virtual/rust )
- amd64? ( >=dev-lang/nasm-2.14 )
- x86? ( >=dev-lang/nasm-2.14 )
- pgo? (
- X? (
- x11-base/xorg-server[xvfb]
- x11-apps/xhost
- )
- wayland? (
- >=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.84
- >=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 )
- 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-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? (
- >=media-libs/libepoxy-1.5.10-r1
- 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
- )
- )
- 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] )
- pulseaudio? (
- || (
- media-sound/pulseaudio
- >=media-sound/apulse-0.1.12-r4
- )
- )"
-DEPEND="${COMMON_DEPEND}
- pulseaudio? (
- || (
- media-sound/pulseaudio
- >=media-sound/apulse-0.1.12-r4[sdk]
- )
- )
- X? (
- 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}"
-}
-
-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}: $@"
- "$@"
-
- [[ -n $VIRTWL_PID ]] || die "tinywl exited unexpectedly"
- exec {VIRTWL[0]}<&- {VIRTWL[1]}>&-
-}
-
-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
- # 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() {
- use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
- ! use ppc64 && rm -v "${WORKDIR}"/firefox-patches/*bmo-1775202-ppc64*.patch
- 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,
- # 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
-
- # 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 \
- --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.
- 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 X && use wayland ; then
- mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland
- elif ! use X && use wayland ; then
- mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only
- else
- mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3
- fi
-
- if use lto ; then
- if use clang ; then
- # Upstream only supports lld 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-flags '-flto*'
-
- 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
-
- # 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
- # 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
-}
diff --git a/www-client/firefox/firefox-108.0.1.ebuild b/www-client/firefox/firefox-108.0.1.ebuild
deleted file mode 100644
index 838f3ba06f1b..000000000000
--- a/www-client/firefox/firefox-108.0.1.ebuild
+++ /dev/null
@@ -1,1330 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-FIREFOX_PATCHSET="firefox-108-patches-03j.tar.xz"
-
-LLVM_MAX_SLOT=15
-
-PYTHON_COMPAT=( python3_{8..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 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="rapid"
-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 +X"
-
-# Firefox-only IUSE
-IUSE+=" geckodriver +gmp-autoupdate screencast"
-
-REQUIRED_USE="|| ( X wayland )
- debug? ( !system-av1 )
- pgo? ( lto )
- wifi? ( dbus )"
-
-# Firefox-only REQUIRED_USE flags
-REQUIRED_USE+=" screencast? ( wayland )"
-
-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: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] )
- )
- )
- )
- app-arch/unzip
- app-arch/zip
- >=dev-util/cbindgen-0.24.3
- net-libs/nodejs
- virtual/pkgconfig
- !clang? ( virtual/rust )
- amd64? ( >=dev-lang/nasm-2.14 )
- x86? ( >=dev-lang/nasm-2.14 )
- pgo? (
- X? (
- sys-devel/gettext
- x11-base/xorg-server[xvfb]
- x11-apps/xhost
- )
- wayland? (
- >=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.85
- >=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 )
- 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-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? (
- >=media-libs/libepoxy-1.5.10-r1
- 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
- )
- )
- 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] )
- pulseaudio? (
- || (
- media-libs/libpulse
- >=media-sound/apulse-0.1.12-r4
- )
- )"
-DEPEND="${COMMON_DEPEND}
- pulseaudio? (
- || (
- media-libs/libpulse
- >=media-sound/apulse-0.1.12-r4[sdk]
- )
- )
- X? (
- 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}"
-}
-
-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}: $@"
- "$@"
-
- [[ -n $VIRTWL_PID ]] || die "tinywl exited unexpectedly"
- exec {VIRTWL[0]}<&- {VIRTWL[1]}>&-
-}
-
-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
- # 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() {
- use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
- ! use ppc64 && rm -v "${WORKDIR}"/firefox-patches/*bmo-1775202-ppc64*.patch
- 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,
- # 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
-
- # 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-tests \
- --disable-updater \
- --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.
- 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 X && use wayland ; then
- mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland
- elif ! use X && use wayland ; then
- mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only
- else
- mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3
- fi
-
- if use lto ; then
- if use clang ; then
- # Upstream only supports lld 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-flags '-flto*'
-
- 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
-
- # 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
- # 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
-}
diff --git a/www-client/firefox/firefox-108.0.ebuild b/www-client/firefox/firefox-108.0.ebuild
deleted file mode 100644
index 6ce4c9468c19..000000000000
--- a/www-client/firefox/firefox-108.0.ebuild
+++ /dev/null
@@ -1,1330 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-FIREFOX_PATCHSET="firefox-108-patches-01j.tar.xz"
-
-LLVM_MAX_SLOT=15
-
-PYTHON_COMPAT=( python3_{8..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 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="rapid"
-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 +X"
-
-# Firefox-only IUSE
-IUSE+=" geckodriver +gmp-autoupdate screencast"
-
-REQUIRED_USE="|| ( X wayland )
- debug? ( !system-av1 )
- pgo? ( lto )
- wifi? ( dbus )"
-
-# Firefox-only REQUIRED_USE flags
-REQUIRED_USE+=" screencast? ( wayland )"
-
-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: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] )
- )
- )
- )
- app-arch/unzip
- app-arch/zip
- >=dev-util/cbindgen-0.24.3
- net-libs/nodejs
- virtual/pkgconfig
- !clang? ( virtual/rust )
- amd64? ( >=dev-lang/nasm-2.14 )
- x86? ( >=dev-lang/nasm-2.14 )
- pgo? (
- X? (
- sys-devel/gettext
- x11-base/xorg-server[xvfb]
- x11-apps/xhost
- )
- wayland? (
- >=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.85
- >=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 )
- 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-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? (
- >=media-libs/libepoxy-1.5.10-r1
- 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
- )
- )
- 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] )
- pulseaudio? (
- || (
- media-sound/pulseaudio
- >=media-sound/apulse-0.1.12-r4
- )
- )"
-DEPEND="${COMMON_DEPEND}
- pulseaudio? (
- || (
- media-sound/pulseaudio
- >=media-sound/apulse-0.1.12-r4[sdk]
- )
- )
- X? (
- 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}"
-}
-
-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}: $@"
- "$@"
-
- [[ -n $VIRTWL_PID ]] || die "tinywl exited unexpectedly"
- exec {VIRTWL[0]}<&- {VIRTWL[1]}>&-
-}
-
-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
- # 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() {
- use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
- ! use ppc64 && rm -v "${WORKDIR}"/firefox-patches/*bmo-1775202-ppc64*.patch
- 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,
- # 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
-
- # 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-tests \
- --disable-updater \
- --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.
- 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 X && use wayland ; then
- mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland
- elif ! use X && use wayland ; then
- mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only
- else
- mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3
- fi
-
- if use lto ; then
- if use clang ; then
- # Upstream only supports lld 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-flags '-flto*'
-
- 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
-
- # 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
- # 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
-}