Gentoo Archives: gentoo-commits

From: Joonas Niilola <juippis@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: www-client/firefox/
Date: Sat, 09 Oct 2021 07:10:12
Message-Id: 1633763399.18170dab3692674737a3643bb2f7907321272291.juippis@gentoo
1 commit: 18170dab3692674737a3643bb2f7907321272291
2 Author: Joonas Niilola <juippis <AT> gentoo <DOT> org>
3 AuthorDate: Sat Oct 9 07:09:08 2021 +0000
4 Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org>
5 CommitDate: Sat Oct 9 07:09:59 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=18170dab
7
8 www-client/firefox: security cleanup
9
10 Bug: https://bugs.gentoo.org/813498
11 Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>
12
13 www-client/firefox/Manifest | 589 --------------
14 www-client/firefox/firefox-78.13.0.ebuild | 1187 -----------------------------
15 www-client/firefox/firefox-78.14.0.ebuild | 1187 -----------------------------
16 www-client/firefox/firefox-91.0.1.ebuild | 1149 ----------------------------
17 www-client/firefox/firefox-91.0.2.ebuild | 1149 ----------------------------
18 www-client/firefox/firefox-92.0.1.ebuild | 1148 ----------------------------
19 www-client/firefox/firefox-92.0.ebuild | 1148 ----------------------------
20 7 files changed, 7557 deletions(-)
21
22 diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
23 index 2eae2f39350..5787d0da206 100644
24 --- a/www-client/firefox/Manifest
25 +++ b/www-client/firefox/Manifest
26 @@ -1,195 +1,3 @@
27 -DIST firefox-78.13.0esr-ach.xpi 460301 BLAKE2B ca4cd3d8d2384de6fd855bb6bf2b6f4a5bae9addb51e7a092eebd8e6f4de1b5cb7f452c58636679e68f58c89ae816eca6108813df8bea4272553602b65a40630 SHA512 b93d460f80a2403946c0daa8a083670b3f95cd91d5b9d9620b1ccd71f4a2eeaa6d9ee9acf73517e6efb56b39d8a4058f66e328b058df5c143006d18fae2d647b
28 -DIST firefox-78.13.0esr-af.xpi 428367 BLAKE2B deb1463defa2b2567b7f1ac2e6a12cdbd7b723ce1d1242d55fe34d3422ae52651bce6e785347647b59ab75bd9c8e42ab75fa6bbaf74ca5449844873077a826e6 SHA512 777c8f15e6a004e2fe1a48011187fe6d7d7ff2c8372885043e57e646a9c4913ded02695d970cdf0660adbd90840ea791008c342f33eca77b92e8809f1b659c38
29 -DIST firefox-78.13.0esr-an.xpi 508374 BLAKE2B c1c02f6732ea63a2692b2f82540c61a50a661c681f433299acaeca1008be387f489e58fc3e776762e0fda1799b956b503b3b941974bf2f03835c59cc2b724d89 SHA512 138363db07e7e2972cfb59ae76134f6604494659b0459596a1af56c37b33d0713c1632e34d239486c7b8adf46bb86aa84e9db3bc9ba428862ab075de76056451
30 -DIST firefox-78.13.0esr-ar.xpi 560955 BLAKE2B 2f2250f5cee51a85ebc0d44c5e683594b9cda155a70f6c168185a737495c1f7b1084e5505679aa990eb73aceb186accb786f8f12c9fcbe53bc6d5ab6636c8905 SHA512 7bf2a63204528769a443586ce47de9085f151883aca910d3814bc6bd70dc8cfb0ed5c4a96cbed68d15b06fd3d8f256eb4a23be62c2173ea76a8fc7aeac1f2240
31 -DIST firefox-78.13.0esr-ast.xpi 456379 BLAKE2B 2590ef002c4db03b5f92f12622700dd78e49692429ee9360bb70ca974e73ca46fc05c5fe7a77af5ac77470ed558461612c0461efa8d75a8aafc510d93aed6ccc SHA512 ac9fe567c893f2f5c4e6091b3f84481c0898b64a09430bd7cfa96b4be1824618a0ba17916e424ebc7a2561f1b7c6ec6de8862d27eaff2c05aa6f2610981283e8
32 -DIST firefox-78.13.0esr-az.xpi 497445 BLAKE2B 295eeb81ba639a847094db720a7b2f34a9672f4499b4a079abe957a913d5953f62e3f9186d888c97540814428a80abdcf1550ed15347a471bbce53e51850578e SHA512 80d2ecd9f0d58fc3c3ecf2141f599bae11ea9a754d417316a020b4687baa308a6595c5112927fe48d7af425f876bf647f6eb217cb59902bde76a8ff967465f3e
33 -DIST firefox-78.13.0esr-be.xpi 608659 BLAKE2B df63d42565cb7848711d843ad02a3a6eeebedb08ad59a76c54798314b13905c3f4cf86cce9451766bda8a30b791da37ecaa294ef430b549dcf118126b13222ad SHA512 0bb5a0e882f56cc15749b61f62b6a9039188767a8cbdf4d8e9039ba3a922c1e3b973baa01b9ab26474ee9491acb48ae803e63a95824481dc0a096683b2c670bd
34 -DIST firefox-78.13.0esr-bg.xpi 553974 BLAKE2B b76e7290edf1aa1c87a8b2a0dba09cb091be43484687c96d651a382cb8fe74cc13ed3c728a3ebf74caa90e5a5a24a8cc8dedb7fbaeacdb0583327b9f31fb0747 SHA512 e6119e25a36a04a2188d17d6fa5b77760c14353f54b96f7e29ed1381900fb756b2564d6f89175f8d3a68c33a00888c3d0514ac03d61423ca323869e69d8de7e7
35 -DIST firefox-78.13.0esr-bn.xpi 572607 BLAKE2B 575dccdfc43d46905e16adc80ed82b00b74a7b83d837c9e839873136e67a961e13a72a0b5d4b8312a3ddd9cc87845a9b4fc61ea6f7308709c21134a3a4ea5acf SHA512 32178259c4df33e5c67cd2e91358f88d2e43dcccb5ad702abe8e4bb06b36b15d767e5a9f67c89010e8a241d0e678a9ba49d82b55721927a83a2bb5b188c7e5a9
36 -DIST firefox-78.13.0esr-br.xpi 507138 BLAKE2B f556789f0afb060aecdf9c0dd18b0944b0ad68d88625df9a7bc0d1f2fe78735e97bc674a3cbcad3b20d50d8c21d4dd4f6ddf847ec38a9487593e9f401d4bf54d SHA512 91392d621a1f146c110720bb4bb62275c5befd87e056eb56f06be5c5592344fdc991f9e62bd0baa368688e01dc99f17e3ae01c633e2b1baa14c7ce8e3f555fc7
37 -DIST firefox-78.13.0esr-bs.xpi 463805 BLAKE2B 5ab8913e373789d6d24a6c74b7e00ed7954fdd47b86805a4de07a462c803b074f39ba469e33be282888c8f5ff7cc7e04b6892fafaf5290b62bd2ab1295b33fe7 SHA512 150ced0674293c1256dd1a02cf1b0c522c015eda48c46f80a34730c4158c9b03e409d12283bc10ce76cc19120105771bcf748d0a21fd3453541bba1693ee6fe8
38 -DIST firefox-78.13.0esr-ca-valencia.xpi 517183 BLAKE2B b7caad787c6899d90df5ee7f7ba4af71693b9f05b8e2409eb2002a6c4bede51e0dad61704a174de79526e6c0ec7a93aba7aac6f3d8dbbbf38639a79c0dee7cb6 SHA512 e220126c1c12fffcbb4b362a13b75a0c7283dd1a15f38d6e891c447fa9bdbf570e617cd50f6208316bf01f00a34398ed6eb5d2abc9cb60873199ae5a3108d959
39 -DIST firefox-78.13.0esr-ca.xpi 514178 BLAKE2B 80ff5a01ffdbcf6cd996d3cff9d92d5883645a788c46ef703a85e5167c3c331ffcbb6dd87f2f48e2910c01039c157696ebe6602df37ed2b5dcf9fb84ad5c0575 SHA512 c335b3b3fe9d15b81513060b6b5450e55db662e63105be5f99cb99ace6560e272669279cbe9d8142a0dfda6d38e5d24bfaec3a27a7303042806425c8e93ba95a
40 -DIST firefox-78.13.0esr-cak.xpi 551550 BLAKE2B 5659d9f973b24825959dca2d57dba1700562a7ce99fcdd752bd4e20644ae5d6941138c3dfdc4a186aae987bbe17d4fe124f644f927d4bf57cdc82372e28d8be0 SHA512 52b26214ee19f9f61630f39445f7335b7616b72367071834d4d94a9119065974acde2d64a676649570aa6541e635643563ff94fd34794001be249e98fd6389ae
41 -DIST firefox-78.13.0esr-cs.xpi 540320 BLAKE2B 0363a36a5e83979b8f9fe559941e9b8cbea3e90605fbe94faaf9045e4b6be3db4c59a777eeab5806e5f37987a60e85853f8b933342bcf3d6cafad41f8b55f24a SHA512 2b2a6814038e4213f5142477016356b9480c6fc7887051c3ba8a3d31011d0f03a42a92fd55f431ca25920cbf0350f8aab73b120e12e6e82d7d095bfc1e3a392b
42 -DIST firefox-78.13.0esr-cy.xpi 530701 BLAKE2B 9cd88db7de2620fb592d6fed33c13f6b54ccec9982feadf9a66153478eced45223d6421781bbf428e68ef29e7a5971e06fdc7ba95ed3e373a7ba2f429ccfd736 SHA512 a9f66379d99576040d7861bc3c06df7df904ed29e71f8686b790527de27b123bc13d00e22c4db10ca8d03a64e84fb8bac11148fac6866ac788858a5b79cde7c5
43 -DIST firefox-78.13.0esr-da.xpi 520278 BLAKE2B a7d0c1a095a8f9ced42ff51c85f2a24bc74a1c29d06d394cc587c0347a070a36865c2c4a0b988eddec0bd1ec3b3b6e155425a0aa8d852e1e99a6f791c4e67a37 SHA512 34d9c20c1d5899c11d08369baf7b94a50711b94c135a0a67dfe8281ae12b0e512ec2594c36edb5dcc93f609fc3e98714bf4dc89525d5a8ca19418bf6e31f45f2
44 -DIST firefox-78.13.0esr-de.xpi 542854 BLAKE2B 434ccafabcffab6226280155b3172da15fe5f12a2263f2eacd6a80d05509b220b4acc1da8c13f77ebbf15a1d755c3eba12e2789a6f0a46e4f497431e79447641 SHA512 f6818cd5eaed1d0bd2c1a35ccf93cbd396407ebcc09c428ba7692f75bdaa7b106da44e85a4b6dcfe66a06821943d3b0bc413424dc9b7820da1b9abb9a3545653
45 -DIST firefox-78.13.0esr-dsb.xpi 554282 BLAKE2B b509ff153d52f499c53a193be91439652eab0573231f228efb406716a3d280b6aa382edfa1f379c66dbd00a6ef4105ce9855bb6f86208e365fcf1c505af00e93 SHA512 241e36d1bc70f5c234572e9a4e048c6be55c0967743fdde19c53398e4030f4729371fa34656429d4bf9ac80a1b58e7786d19cb69859a8646184c405e6a90adcb
46 -DIST firefox-78.13.0esr-el.xpi 626572 BLAKE2B a89297cae63836060f439e897b956a2b00e438c40fee704acda87acb169fd9d91297ab69e5101b126bf29335b2bb4f3223b4a2dbdbedf1b40a010debd2a07f02 SHA512 68daa7d62fa75cc282c44a0378021f4b676411cec1608d5603213efbccd96ba239bdfbf1162de79a1c5b40fa4146d586247bcd20a913505b42c43e5017c9cf6b
47 -DIST firefox-78.13.0esr-en-CA.xpi 497730 BLAKE2B 944e287896bae91b9ae305ffffd4ed2784e43cbca3ecb8d0d4ea6a4fa66234173614b0c99d99a1abfce1f21083c88353c600901ef12b1976c5e8e01fa5f46008 SHA512 367804a19076a3ca6cea35931cfa3811e71639139bacb156e44b4ec1a19266a699d4b927b8344ffe28067eaefd18e005babc20a83220b627c59f50309de1492f
48 -DIST firefox-78.13.0esr-en-GB.xpi 497574 BLAKE2B 3f867c5fd234e67783dc7155cacc1812b6bd8a6fb8759b64dfdbff59f8dd72123e9087eff71d03dbd018109c9937f9efe3a3d8d1d54be0b8e68e0f8e19a15b12 SHA512 4bc690ca4634cb29c355973d37d2d94a1968dabe60836696d147e5d5052ac46b620e99c5a8e478a68d2c3965006b8644ee2dc2a844ee1b128286731512deca79
49 -DIST firefox-78.13.0esr-eo.xpi 525738 BLAKE2B d9c055bc8aaede7c7cc13fbe308218e69540374588b7094a1b20086bbdd75cc335f93d4d09c54f5bab809c722a29449773e027d79c457f35a43932c410e22514 SHA512 4c8a269b33986d82e77a53bf03875071aec11be9063ab93f1e878f8395075b7e3552695f8f34b14d878d49896ab1a85f2c9598287e22fa6f4ad771622fc525c7
50 -DIST firefox-78.13.0esr-es-AR.xpi 535813 BLAKE2B 08c7bff8682f82cb51dffcd0911efdb962b2acb2998c9f25815686c73d153015b158e3f8088658c023044740d7a9354b27582cb229db834d641df77e6ab51731 SHA512 39b1f25407b73e9354beda25e4f087c77d0a3bbc9957e2867c810c66f423519ef2a747e05ceff8a236567ed1ce653103fa59b9cdb1324c86291c549955c377ee
51 -DIST firefox-78.13.0esr-es-CL.xpi 535356 BLAKE2B 0a1b73b7935fc91aac2b98e6a0eafe8345b5477d8b9b906852c702cd95210b71de31c535503fe417f4a0d6f8082b3d13e6b60ad100ab7919150c6ca7c6c09435 SHA512 b36a2a63a0ce754954095eeafdfd40b91645298722daa6fc01b5d60dc66bc960e115a4067f6624ab865bed44c012c21c9694fac2ccdba74b6882a6ea3f14691b
52 -DIST firefox-78.13.0esr-es-ES.xpi 522699 BLAKE2B fb73ee445bb400a48824ce5de31aa1fec6be4252fc455397bedcae5edd3358028b69af4b1c56474d5da6c513ef274aff1144391fea32ff5c87d039c35ca76975 SHA512 758af7ac3853349013aa99df4df894ebe0b60e45152814eaf37e38b8cea3d1a1850d731eab3343256c3269f3a1f0437f3fa1ab920f16212034e79e79c398c5e4
53 -DIST firefox-78.13.0esr-es-MX.xpi 532313 BLAKE2B cafefc82f7fd260bd60157807ae83fc8a4856ac9ab72c7c71502bcbc14429acf72953e488a18d64bddef798fcce3b842a17dc937853d7d99635fd7a49ec6cd24 SHA512 3931f1c79a950c4787e088450a40f5044b73d5684d4f47c6480cf161b5fc0a7dfc30edfdc3ab317686d3113a90ae549748b6f6b02740103da86b8c1afa053a28
54 -DIST firefox-78.13.0esr-et.xpi 485253 BLAKE2B 4b237896b91c661ecb7afffdfcea8959f675ea1f2ad29691ffa07a71d3a22cfa7af701805b14c05f75e84316aabb0a6437d4458ac55659458b720e1754900495 SHA512 ea5309cd03aa32dd440ed5a72f5e1cb7e430c0440ebc91c5e8b45ed51785bb91cd3c9bd774f28cbebf1c523d7ef2de6de504b8318f015b587f6caeea31475c93
55 -DIST firefox-78.13.0esr-eu.xpi 505872 BLAKE2B af7b75906a36768399651abe01aca22cf4f2764e954c3b9ff5bb500b8c0d63114d6c1d15b06e24e2ab141740e15e8647bddb62bcf2ff6f7e400cd700837c4955 SHA512 d4718873c1c30dc55d50d4905bb25f3eaa2919349a34218ccf1d828238798aaa72c0cbaae6f2d8af0af69581eb952b69742b98498256c1fb54902d8d4856ec0d
56 -DIST firefox-78.13.0esr-fa.xpi 538920 BLAKE2B 5c38fcfe7792e5887a3bf10bfad34305074f9525b1b8ffc3ef3a02d9872281a8adc1deb00e68f4066170ae27401836beed9928b2aafc15567b5ea8b27fc2436c SHA512 6ed1a37f6ae15e7937e8a60e056df155d4b977d2895466bc37a042b3b9379a10db015fcabffbb703d1d65d1a7e66c62f014b876d7fdee99243f2406984b1d727
57 -DIST firefox-78.13.0esr-ff.xpi 481616 BLAKE2B 646dcb5075bb6aab65df2c83cf526f8427f41cb2359ab8887942eda4a377d5c718136ca0125a11d78e07a983c7529aea0c567fa76e150278b42c46d16547de85 SHA512 18a06d0fd236d58f41acf6491dc9bb391040d268a3fbb5945b88e656ad5d44d941562d042aa419b944850cd8c4e290f2246f43f8b70a8bc70e24aa7300c83d60
58 -DIST firefox-78.13.0esr-fi.xpi 517928 BLAKE2B 696e294eee7dab802b9d3713e333f10e0b7a5cdf6d190daa3cc22cf624d663f016d6175544501665b973317ceff446b2d3be354aeccb13a8ddb3842541e153f2 SHA512 a5a49de966bb9334acb2a036e23732eb56b8f4359e5982a88b68ba62fbf3503993044c79b592fb1d8e397db3b55f1afb863fab0f4fa271f9e8ca1f260a3d4dc3
59 -DIST firefox-78.13.0esr-fr.xpi 545877 BLAKE2B 86f92a9272466277e953cd91023bab29a3e0a602c320a846d74926bf94c145d8d8e05ca9c48f4060842633a92678bc747e97a2b6e3d1d80b13da473c5f6bfb9b SHA512 b9f3ac1736b5644d155b59e1386f0f28db160ce964b0fd7ab2d6559358ae902ff8da9b4d82cd6a8b41a15e6634c3c3a484712e0b1ec08c75e46619c213a80b7a
60 -DIST firefox-78.13.0esr-fy-NL.xpi 532480 BLAKE2B 0a0a44fd4c7b75c74905aa3f9691681a37fc6794e23e53d77105ea23b8bdaee8dd455ec58d0e5a4e009508ddf6310d77e67ae3e427d84492d89afb1a25bf68cc SHA512 23f552a6ac6e1d95911c8b2167d578fadc22583c7630105f38ec3cbe7ff8f4356a6e0fe3698b9ea7b6fd3a9c8f7313e4c901e4f2d67f288fa95f2d6e41d59fda
61 -DIST firefox-78.13.0esr-ga-IE.xpi 466892 BLAKE2B 2ed1c00d30929cd84413276f3dff260ffbfa474bd86dbf8abd63f72c28ef90679b398558eac9719c477c85aea9e48e6c1916d2f9294c6494209962b6e56ad88e SHA512 854679fb5656890c485a4e8566553420e54d7c5a18b394cba45fee608bfddc37b82bc3b352a5378ea87d8304beb77946a1b764713e2edc4a111d49ff75fa0df6
62 -DIST firefox-78.13.0esr-gd.xpi 491890 BLAKE2B 7af9f281bf698be6378b7e691aed329b33dccd187227551701f61c46cb419634b65ea17999a19da4a1664501fcd8ef038d6852b4c7d62e25d78f440ba2f20ece SHA512 f29b1e1086af3a93af4b8012680d052b666b1bbe4526c32be44b7126bd1127bf46e248faf78c579c4e4c1b962587ce7b18643954125426ad4ce9f02b5a4ae480
63 -DIST firefox-78.13.0esr-gl.xpi 528418 BLAKE2B a21b06208cc51a02321b216a0e0cf6df5bddfb3f749ae2d831b8a0de5f7550cc8e174be5f2402c67890cca798cb629dca13bfe68d10802bdd2523255638149f1 SHA512 3dc680e75e5489936a2110dc336374e71838c044fef7e3030ee17e80b23f3f171a802fef13b8e2ab6fcd34041bb5eddbdac6ee7036a65f1077f15f0d343a2952
64 -DIST firefox-78.13.0esr-gn.xpi 546474 BLAKE2B 529dfe3f5603b2c0144c8d65f6e2d0d41dca61c90c38178a80342f11d4eea9993385bac6a2bd33f3b1fe3c406cde0cb775f113a8a0ecaf8a205278276893325a SHA512 bfa84b5e81b898b8d88cd43632c538dabe8c00a708c905c91e222f88a9220e1d6c4415328dcc3b84d928279b3b5dea3eda9b39d15d1b3aaee8754fa904878476
65 -DIST firefox-78.13.0esr-gu-IN.xpi 541439 BLAKE2B 59b1cf09802c2d009c6df58d6ad231d3d3ce8a831ac9c9eb9ecc6eb00108d3d24c7eecda7937e3e7fcc94ef13bfc4f8d05d93546d775b5d5295dfdc1e60f8617 SHA512 6b0ddde030a780d90b146651f9e16c7beb1f455ecb3a2eec5fbde2b218e17b3536c111d52502e3a65ce2385575e13ea8f9fe1bce95f9ec88de70ed31a4003c43
66 -DIST firefox-78.13.0esr-he.xpi 545594 BLAKE2B e9c4af2587e618f4ddd0929357d497f1e4b95749e17c09d5e439b5a3aaaf7a766aad12b303a48f810219df5f50384cd325ba6df7b3b9e98fe45f7d75c329de46 SHA512 cdd10acb879c693409efafca19fabedb5d3fbca29185c0f38fe6e2af4f82e2ecfe0a88cf8c45945e8044daf1fdaf11a49aff9805175d9ca7f941ba9603d4a03e
67 -DIST firefox-78.13.0esr-hi-IN.xpi 567845 BLAKE2B b7bc36271cd92e2829e73339e150cceef02fc9c651b1e77b322364fe2b2f95e7f7b0f18160b33d475cfb46d376c1dd98ce9ceadff9cdfd622148135f3d7a5c0d SHA512 958cebf9c6730a6a71a2cfa50adfade1dd690ed4584cad4508ea3ab5fb1abb700e82454961c63d6d7f34e14611a1d121922a4fd5b015142783d1f0b79f3786bd
68 -DIST firefox-78.13.0esr-hr.xpi 522682 BLAKE2B c3f4bd7e567f191a2a4b501ffc00de72f2966e07a290ef4cb2d9015c398e95479f3272b38e776eac6b7275951489206088c3e96922751afa822f5d71b682033a SHA512 483bcd5387f00c9bb74280277086444ddd1127841aad5f72c8e1d99f77c7ab234b154abe6dc27fbfb9238063324c315b5429d8ae4040a7ccdb3385d30c3bbeb0
69 -DIST firefox-78.13.0esr-hsb.xpi 550660 BLAKE2B 7f5a35319c0849296114aca6bf8037598f9308e41a8fe1ed68b959543a744fb93644f94135f71fb33390c1ab4d961c520e8b57d4ce0943932eb520caee346312 SHA512 df10e5678e7c1815300a355e9dfe6d0b2a350d882bd31e7100155ffc5a70759d2bcf844740376897ce447ccfe7ba2b6a79ac5272b0d1dc22872bd9829dc688c1
70 -DIST firefox-78.13.0esr-hu.xpi 554890 BLAKE2B a04c706fb83ddd09972498124ab4c69cd73eeb317acf4d4b3592cbf06c2fab686b79e39f6462c9d59bbdfca51d3285bed1429b00f4f4bafbee1114d6a42da746 SHA512 aa4c125c04ca979aeb4a41d1f52ebeddf82eb7835862462412ff4859c5476a3339c7bcc6cbf6466f242a71f7296ef44f910d37c767dbd83d6a73cef2fb26a654
71 -DIST firefox-78.13.0esr-hy-AM.xpi 588992 BLAKE2B b683f8b09b032e371250712bea407e54065409e0c9fe3c013944ca7f7b89b65398803cb1afb2a56c6caab6a2449fcd6f68418a8a874fc4245fc3bf2739da7537 SHA512 e8fa0f96b46814b5fbe74b075f42004003ac648e22ccf12ec3c867c361d110c258ff3aca7e31be742a659698f3d04e11a13cb169da03681e5467b7c6c1194f9a
72 -DIST firefox-78.13.0esr-ia.xpi 518833 BLAKE2B 8ad262af0d970e96bd459b2591eba045cc4609f0898b0c99ede204aeffb422c4fcdedeec0701fa50cc16c686303611f2626161cefa17236fe5cf584dce31266e SHA512 9cc3a0e5f504ab24e70735e5aa688440dd769ffd456ecf2d2fadb3297ee8df7b7526bed89d04c08203ca99e3f3613356faea1e0f7e75bff73c2828cc1639f388
73 -DIST firefox-78.13.0esr-id.xpi 509572 BLAKE2B 1431d40db2eb8d14a68cb6f822a04005579ffca6a04b8063250ba6b252560442fb2b0c560b5831c47180bdf1f9b663add2bf1340838bd6ca15eec365a0bac299 SHA512 9ad680701be2bc0ba280c21a28e6e0587fd14bfd4f5337b1338e5b8881e7df0cf38e0eb4586115c3684c42a3b4f11160e800480cdf9ccedaadd3e1dbe6d75597
74 -DIST firefox-78.13.0esr-is.xpi 477021 BLAKE2B 2982ac46efe36f2dd5c36ba6a8edac87d37aff888dd2ac4cc4e6888254abb0e0a0e507cd67a6b317290357182ec21361495d354ff48e24b74a3b82e9e9b77701 SHA512 84ae935d055a5482036892c220fe8d952919854674b8625405aa178bd081363c96c87a2b27a522e14fb468d019e4e335bb8010ade498ff4274383637b3632911
75 -DIST firefox-78.13.0esr-it.xpi 449811 BLAKE2B 4130a27de327b1cb8d1545a256a46ca8642d210c2355342433c2ec94a302276bbfe000bfc676eb8bbc05547b8febd05edb5627ab9e2a8a61e917975695c3aee5 SHA512 555239c44184d6316fdf75fed7bf56a0a7dfe2d0e1a66852073f3200012ceb3860f92e36b63676c0d2450089a9c24048ee8f04e31b53e00a817f60123a4408a7
76 -DIST firefox-78.13.0esr-ja.xpi 578208 BLAKE2B f8d8256f6d35965b9360c3783ae263a73b918896b0294d403242bb91d19b06eadd9ebb20e01b643ca9bba781b72b16bc10d419d7f53d1cc1970e76b77e7e449b SHA512 f3fbfa55276b171acdb3e875f17b61c2a7d050b12c0416c3bc85846c037256e9d3591cdf87b20c1e25bc3337f6182d8266152f722f94a3412afb326d9c0c94bb
77 -DIST firefox-78.13.0esr-ka.xpi 579100 BLAKE2B 5fa3d8ffc64ef29876c63cd135252844e1f049412a2f858106655b0321344dc185df11f1a2c7fba2b707bc282784b6508235aac645a445fadda4ec9834e8df86 SHA512 b4184ed89b260503ef8cb5210a180d15c931d486c02efd9e28c0aa2cd7ddfa845ce063139e325562d372a00384d0fbf722975c6ab6377e82c3ac08dd76febf33
78 -DIST firefox-78.13.0esr-kab.xpi 539740 BLAKE2B 791c4d2e5c7e4126dd49f7187e2f81f958750bfc7ed53979c664d9763a8fd6e22b86716f6817726916cd8de87fbadaee34f74c97ab194f4458b0922e75a7d061 SHA512 075ed489d539dea49f7766654b8bd49f5159cd3bd182b75977e8416e651e7b87fe3f33c91ff2247a4318aab326c2ae4ee0209da57b7e83619c05df6124486256
79 -DIST firefox-78.13.0esr-kk.xpi 593250 BLAKE2B fc0f6063d7b39e94a4d07cd633cb7b1c7e9925c18f0dd91b0a802a230bf494522dfd459820ca77116b0e5db7a78f6b486cfdd38f2bc602b82c74adfcde911a95 SHA512 b929b0c0ba3873eac4d72090b73d35761a76c5518835e580bbbd3ec2710f3bd049368c4461dec24a6de0fa30dc1a217acdb563b64e785f93d5fb04f93fa04020
80 -DIST firefox-78.13.0esr-km.xpi 527364 BLAKE2B 3402e64a044aaf15a822fd2b51ba6a9beffc216ec8263a6f503bdf7f4977a4e37305b19ae8937167667a9470bb9667726bf77c76594bb3c35a0198505ec75db7 SHA512 149193ac6cc08908b9dce860aa4a2cc02d8c8ed3d2eb12ddac6f0b9f8338d778198fdc853af8a505a1fea1c202a9543dc79b58ce07ff0d7f0d9601b73b59862d
81 -DIST firefox-78.13.0esr-kn.xpi 506746 BLAKE2B f590d5ce7321758d8c10080ca80de1b605664fd56a844120ebe17308ab5ee134260a662e239156db445a727f02477d8a8b5bffbb125cdc629c80ef1fb3e94ae9 SHA512 fae713254c36a2741776f743e33f8bb9872e16f7b5a7d8076a157f0188916be7862582ecee1a3508e1441dce34e1a7765a2e897bd96879706421c4e598ee9296
82 -DIST firefox-78.13.0esr-ko.xpi 567536 BLAKE2B b9e0f99a91a22ce59fa94f35bc2b000091fb97d385a3e472189db6a68891bc8e45a7a259f937c60bfb3c9a7f3b245567d3cd9f3c357aefa074de41142405d4bc SHA512 81ce1e71d87a7136a55b853138be17e1bd5d310f81033e5ea2c695552fc72eaa4f81b3167889532b217b731804bed0efdb5b59ae5caafa50a27b778d32f17ebd
83 -DIST firefox-78.13.0esr-lij.xpi 475236 BLAKE2B a87fc4fb6f385fde26475e0a4ac0d7b0c1c0c566eb5f95cc4aa9d3e7bf255be99294a283fd5fe76e3c565dadc4b50e77cfc071db58fd0418b7aca52a0ea91040 SHA512 4dc2ad8c6cf9973704ac4338625a4cfc7a0bd86f1c1672622a831d6ab81781ed3c877f5809d2d69d074e5777eac7577d29fe29f54e3efe4ca57b92e1d348f45b
84 -DIST firefox-78.13.0esr-lt.xpi 540686 BLAKE2B 50fda225b85f7c980dc311fe49ebacfc3de0166c2719450262f3f3ee4fc499ef6ea71a6e458d96fa8633a2c25b7a7e5df9c2cf5d48bb70166eff88f14b342cc5 SHA512 bd5e2316f1cd2696a5b1a2aa3803c812babd11bce880bcde436d735f8610e701e0a31e662d9ff61732e2e110e1001ceea25c0b3f41911e2b50b1c4eea4fa820f
85 -DIST firefox-78.13.0esr-lv.xpi 467471 BLAKE2B 580dc5573d73da24983fb6fe3453c42aad828d180cc63db26da786b4e15e9b78c7ee4ed49bb601c0fbdcf0ace4693158d6a30bdbf4f6dead254a05e457393819 SHA512 9dd2ae04f93afaf63a0254b0b3277f14867d125984b41fa322c475fcc99b3ea8061efb8d419460bd6dee58d01dfe1f5dea8c83910b1f66850d5bc1f458767023
86 -DIST firefox-78.13.0esr-mk.xpi 460033 BLAKE2B af225cfb8e47eeadb443df6dd961235339d79bb7eb0ccd0b19347043894a5b0467575f5dcf5c503db456db830b65c60df25b35a512c2eaf49e5e34d334bd80da SHA512 16ecb8e2cbefdec9c9a14c9df7e017bc555ccfd3dd71cb9bcf8ea788498bcc3c4b465e89fa7e90272c8a188a6dc87fdb7d73c9e17157f2d9112bd9a3b8b84ab2
87 -DIST firefox-78.13.0esr-mr.xpi 541568 BLAKE2B 827b193174ee8f91121726cd67f4d5248ca2090e8bf76a0dcf9396fe2844e98486f7bb6910b5c43c34b1d24fdb6d89a635696136aabb3a6eac0a32b6a00c33c2 SHA512 844e201cc429aaba56a0daf2cb4648a8c8d85a50c374236c1c90a91c77a546847df92f269313d4907ed5738cbb4763084beb8e92748cd5fb7ae23afdaff88b72
88 -DIST firefox-78.13.0esr-ms.xpi 453064 BLAKE2B 4e47558d7d5f2c27b79a992bc0fca4e2f7f7736fbd5187bf90a0a31cc9d98a9d5fd5583a3153b479d5821f6884829eaef4441d6a18bcb38df5f58eadab75db1e SHA512 2108b828e90d7353c1f4282997fc2567edf9bbdb3f009578a80aa9f0f8d7db754cef9492afc63039178b5dd0462a21401a29005b914538880c4b8e84bffbb41d
89 -DIST firefox-78.13.0esr-my.xpi 526325 BLAKE2B 00cafe6ec345ba38731feef5e350f1174d9b41b90bab13b40925457f4e6771553ddd13a4dc06fd26a94fdc8d7934b15b065376eed8d49d41ae40de03cfd5fcd0 SHA512 2606263dbbedc8efdbd3723d6f99e9796e897c9fdd1dbe61c3825b00f0f0f1ce66c7e1c8615904cc98cb5fbd5042dcaaac8ecf3a5e77f2dd9bf646c06466c5f2
90 -DIST firefox-78.13.0esr-nb-NO.xpi 518522 BLAKE2B 783d790d25456aa126585c05cf5199fa02765c8a697bf2b05484eb17b3f0d402aee1346d3bbcc7e01b195dcb206b876e28d15798dfc2f137c98b8f141929ab38 SHA512 7a71a8e6dd4db1285c49443357b4583946f98bbb6e4b677a3da8ecd8b50834308751df78d4487302f5392ff87c73a826984769bfbfaedcc976447bea73ed5d59
91 -DIST firefox-78.13.0esr-ne-NP.xpi 483409 BLAKE2B 41f2e4fbb40432630f7c99f2593e151e0c5bf010c6c041a269b683628e3154d044791b50b2aefaeda083620c55815cb85428fc82dc6271c07a55407bc3e0f9eb SHA512 45bd2e9ed018edbe9a6e8d403bd26692fb66f52714ac452372479f0cced5f16de2a16d4691a2666a9f2e8717a58929ec09b2af285d207e10a51f4af4018ab436
92 -DIST firefox-78.13.0esr-nl.xpi 526215 BLAKE2B bf51749af575c21d582715041bcf20577d091cedf5d3fb16e091beaf261ca55c6734be9509d98e4bdb009f3833b8fa279d872c74bca49388f84070fc9acbfe07 SHA512 9cc5abe3c4eaed94c8a0347b053f1255f85d111a57102efeee4e438111c320a9a7db18b2a7d069329a3794f327efaaf25455b9b3244c5405318727ffa9b1e8a7
93 -DIST firefox-78.13.0esr-nn-NO.xpi 520165 BLAKE2B 80e87cb105b316fc580a921076d090ab3529be9f6e1eb88eca943fef7fe050d940b9e909290fec05c14f504ec9951e54fed9e4eb5b1374c03820ce94d806e6b0 SHA512 1489aa7b3938794db8938e3037f25d9f6298f7231b2180332a93abccad37081b9c07dbdf27cae71706f9485ada48961ca3d787a5d64691686b0a546ebedef9d4
94 -DIST firefox-78.13.0esr-oc.xpi 542153 BLAKE2B 4e8e2b747714c7f25e774063f3182269b085a7b4d4e2c870ced81ab847f9c90472007f244100263615c49e752f6ba8581e51bb74a1ee3025e58ef431bcd38b52 SHA512 ea9b63c0bdc83ba26d65f49d7f0e77ee8c11771ec9464c3b5d55cfe73a3f4b86c4b8a01560da8ac227eb5843257415c235f4e345eb8d356bb07d4b9e70ef709f
95 -DIST firefox-78.13.0esr-pa-IN.xpi 580355 BLAKE2B 2f77ef3a465d6d08ff0c8ab0632cc1619014d80e50e3c1d3a62e6f0fc597d09bd1c75d5325ba8bdd62aedee6a89caf42c5e7a18d8be4886f56f21148c6d447e3 SHA512 73abc1399df17aefc22397c560e9d32a8fdb7e39b353e8f2b31f8575c9fa453d6ef3268a80f4e671b477ade868e5e7147a0ab23ee6ae84fc9172aaf6857f31aa
96 -DIST firefox-78.13.0esr-pl.xpi 545612 BLAKE2B d5e61f21c1be1b63c3afcd124b0a1b52542c462ee75c7c972b8a4e7120080da5658d9603ec96859b26210086c9f98a25855f2b74d5ab0235b4f04d716ebc2503 SHA512 df3acefdeed5c39bf855e9229a2197cabe9280928422b44580fab3ce02fd7577142b2c00602f1bf2aecb4eea5fe8c8ad92b39e56ab7b573a01e225804d971dad
97 -DIST firefox-78.13.0esr-pt-BR.xpi 527580 BLAKE2B 694dbbb70ac01e77543d0ea431a78b1013c04705109f39e9cde7fe12ec2e070094a1baf4bd1aa6e96612bdb8e18ed0b08309c4586457bca251877998a66d0f1f SHA512 5ac17545748321c02fd04f01bd4e3797367c357411a4a5b332e2d49bef2e2bef5c6e75e858e34b5e164a6c6daf9bf8b85cf74703c6daaa64280fd368baafbd73
98 -DIST firefox-78.13.0esr-pt-PT.xpi 532051 BLAKE2B f8c209fff3c12d322c2498f74aba778ddd2a1e5cdaf60b56024b2d9e973167cf367fd39d98f5dc72d5493d195bb9eb1722b7dd75ef68c742b6be5d72f14b8aa7 SHA512 aca4c5705fc06ad6816b329f89b41fb05febfa8dddc02aefa0e976ca124f56aa115a65a828cdcec78f66d86320282b2c3ee579add44116f7c459a38cbc88d4dc
99 -DIST firefox-78.13.0esr-rm.xpi 526714 BLAKE2B c54d926dd3a0abbdcdd325dda8656f5cb5f633cc0b7ce06ad825599e5ca0aca0b6f14ba7bb4aee0c943388130e28335e6d23117a998c1d22482b384360aa391a SHA512 85644a756b51515755321f6a9e1d82a0035b09aaf89412b7b67b2d62bd216c271554414fc9164574d6e153f7afc6b0f7ee93a0fe6a7ae7993babdc0d84382435
100 -DIST firefox-78.13.0esr-ro.xpi 535579 BLAKE2B 56cbd08104acc42032eec831607cbb823b3c3595679239dd01fd8d3c0c98ebee562637616c0f2619453c1c7da2b27221a311776d5c8ed75d00ea18e39328b694 SHA512 10c5f936179e329e87a754f8fa41ea805fb3313911a1c58a84e595b941508ccab408e88fa3aa5f5f5f03f737cd886ff1e7f2c3f4990fc11401bec4b5b656da79
101 -DIST firefox-78.13.0esr-ru.xpi 614590 BLAKE2B 610e6db11ec6f491da83ebf4ffe70540644eb88388d7642b2857ba5e3d9cee8a4945a6476ca031c7553c6cd95ab85f520a9ed3dfae5b626a3a1ff1d6635176c0 SHA512 3cfe6058b1d14224a7791bf485c909b21f8db81fdfce655a8af76baae86aab648a31d8dd694f1b782a30a5ada876224caa89d140529b9b0259b60ef3cb1ee440
102 -DIST firefox-78.13.0esr-si.xpi 492534 BLAKE2B f973d5db15c9fe7d7b0d0e82c2644e289cce4089be701ffc4870ea63c6d27e8701ed8a447e3431d03b1181d1fd926bda68651d5addefbf02560fd3cf1422e55d SHA512 544f386723eff09441da17bf69f8cc151f9bbd2b443a66837b3ef148d6568650049ab4b395d558d05c4a4c0935fb71a59dfb01c3c5a8a131a2e91760e2f5c05b
103 -DIST firefox-78.13.0esr-sk.xpi 534241 BLAKE2B cea9f20c5722f22f64faa1f6bbd5869cb69827b4922d1e91ad7f66c0472a3ff273792314ed164ac7be4779ac6de7f3cea22738638275c621256ea1771d0530e6 SHA512 26de99bc30eb0a90babe5e667376dc8901c5374b4cfbdae0160271ac48f7ecab8a553008acb5464b60eb2657832dd6fb527e7266678e4ff16a491155e00399fd
104 -DIST firefox-78.13.0esr-sl.xpi 520940 BLAKE2B 66c23d901ec5bd1111a4f3e292dae496fc7b82fa510bb45a4e5df72fef567ae2ad7fec2fb91a17247bb4cfa3e0d5048f84d380fc18231c1badabf7ee570c83d9 SHA512 e90031dfa2558f440a75a3a34cdfd21457d85766765129825cf675a5559879dd61000ad78127d7f64706aa7036575ccec2b4806479bd0766a73a96ac5d529c5b
105 -DIST firefox-78.13.0esr-son.xpi 424574 BLAKE2B ee31f8dcaee77b335343ecbbd7cc66b7ff3c5fba94002443f0eb23379500d96412a107158d36b9fd73ab61a3849dafb19a5a4831588d1d4f71fc6e5102af4cf6 SHA512 c1bb069fb3c74badd20a59cf977bb0b0245a4380332fbd64fcb6f02b7c52d3f65e7e3969907c1b0f71d09404487d59d525b4bc34b10577972f325f7892f2d426
106 -DIST firefox-78.13.0esr-sq.xpi 544908 BLAKE2B e5fb256ca63b3e8161d2875df741fb5318020d710d7dd9de734afb5c894c294a33d0527db4de79d2bb796661343965d347d892af5f1681a54dc0089c7fb32ea9 SHA512 a6e5b97c6defec1bd3ed6dbb0afb59df32891008dd291d8b7759e1f61514ec413a45e1eeba0706e41f088422a0cc33e4c1f58797fb006d0872d58125f064eb03
107 -DIST firefox-78.13.0esr-sr.xpi 561377 BLAKE2B 8b65c4b4bb7e39e33f57c530b10bfafabb78508a3037a254a234aaa754f0ba74528531bc68449e4facc01c8ae72a8c9fbf326472f5e8da2358e5ee9ffdd7a128 SHA512 5fff90b3e5784938c8b4f1101b6fa42383b1c62611af6b60902611bd126eca842c9deb518efb2cc91b0e63f0dd862216ab2510c0b61799be5cdd2ee8eb2c5cbc
108 -DIST firefox-78.13.0esr-sv-SE.xpi 529694 BLAKE2B 9b33ee7b142ba01d6d40f7141549df756fdb966e708a7b6c565a4b7fc9e6713bce724fd191b1796cbcb37e94ce6677b6e6fcace75f37c3072176e22deae81c14 SHA512 5b721c1395fcb8f615888687d5d6c07fe566a0508985b7a4c3bc2318febcb47e1e9b419dfd1cf5a7ef470c98b38ca5106f0325bb56dc1f74db34e4162b3a6b26
109 -DIST firefox-78.13.0esr-ta.xpi 521540 BLAKE2B 2903678a17137d22249274981012af216edbc345fa8ed8df501071153de8deb8cab85294208af268b2da50f4fe3e76c9805353d5e135e34aac22d0acd053fdab SHA512 a8ce09230ad06373484f5857f26cbbce439d0251cf76f0768da8f70e5fd141f39834b254db25c2e712db4df73b62e2ee71be3eb376bad7be84916daabeba2a06
110 -DIST firefox-78.13.0esr-te.xpi 558394 BLAKE2B 5234b1293098bdc8c029dedb08686a78fccb50e9f5281d3d760e6a73fa4ff3be4da590b184a9b2870d8f2d6b214a628f13106ceb7bf82f7acd8ed872dbeb6c4e SHA512 248db47c72c987163fae11fbf5972bcc02c18b877228b86d1848151b5475d8dc77a70de925287c89d692fc0a33c61386fbd8e18a4a153c67e6dc8a18371d57b9
111 -DIST firefox-78.13.0esr-th.xpi 592241 BLAKE2B b111dffec4ee4cdf8483b668a234850f6df45aa899dc8548f312c342f82abc81853467f1881a093398c1dcf59b63869badf293318e5238f70788a77ee8721c82 SHA512 f5e037e845c6bc88887c3bba090bcfe5c6863da4a2bea21c35ea1c1c4d4d69b05d3f303a62653c1be10d326ddc50a3a0595dc99d1e50fbe39914d5bef05b8d80
112 -DIST firefox-78.13.0esr-tl.xpi 521106 BLAKE2B 8a2a5e268388b65b9791bcf1d3dbcc00848bfd72f69d0d60bd28a2f5d3d3edc4581a0000e66a89c78013510e5b4570c78b73bfa35dcf7c148de06dcbe50effa9 SHA512 5225d642a2647c3097868bc893cd95968cadd61a2078c836cd52adf948d4dffaa8a02b0e3fc9d43bf609be629508bb049cd6add4110bb947acac33925edd0788
113 -DIST firefox-78.13.0esr-tr.xpi 539868 BLAKE2B a651d7bbdad1f1838aa08434ed972141d945377fde0c3aea31a168e1802070cf646cb9c45225c2e3093801299f859ee83186a08483f8f6a0b63d681c54277cbd SHA512 633c50d8147f12a28cfa2fb997728dcbf71cdb5ad5f253817edf212bd656094bb1bc44e0e30bbafa399cd94090cf16e932304801911878026bc88d97e1fea91e
114 -DIST firefox-78.13.0esr-trs.xpi 501218 BLAKE2B 2ddbbdc3fe7db8c96dcff4ea3303dc7dcf56428f181de240b0f1d643e8ca59d2a9f5498b95abe6aaa8bbca3adc48eee98e7f200a529d2e5a4606981001f9b75d SHA512 d2df6fbdec088bc74529d4ba698b9bb2d89631106a0d2f797e0ca80f9d742eb21980a3f6fb9a0ebdec65af2a3434767dd7d3bad7bf04c52b4088a6c1d7e176e1
115 -DIST firefox-78.13.0esr-uk.xpi 608596 BLAKE2B c521861f67e0e139b0ef3eb0729a0660a024cd4d73f50235b485e8dafa37eb876949ace28770c2302e3f407679bddf38ab14f72d4e832354ad25b25e7d7e2018 SHA512 6a52be7ffeb05baa95328d8d049cc30c15cd9f466484283ec671c0c90ca90b06f68e30c78861db4c72012afb474e4d0b983b05292fc29332b089196197ab6e68
116 -DIST firefox-78.13.0esr-ur.xpi 557945 BLAKE2B 11940d28eda4478582e6d3b5ea32a2fe263843e428f4c4115d289a15809bba99cec30059e6d9d87f5970bc3ed8542d59d35eb1da1a7c33dbf576996904eb274c SHA512 ee5101356c137867c3a74d40dce3c985dfc22ab093aee2c3f923c07b317a964b83949b5404ec457f988b7387b6f17b011f14cb23ebfdb3501df72d243876b030
117 -DIST firefox-78.13.0esr-uz.xpi 477557 BLAKE2B 22131d49584ea9d8512c296b6bfe4ea46dce2df22fe1e99bae58639ceecde4941ae5bada3a3265a7de73b43f855a8b895959ec08ac193bfd990db00a536f53b6 SHA512 e43f2930becaab2dcce6a8fc93581da735884a086e78310661ad24f8d8496397c8349152f565194cd9aa7e6bc02565e81d029e304f206aa6f84f85808c8734ff
118 -DIST firefox-78.13.0esr-vi.xpi 562865 BLAKE2B 695282cb29634e91f5401809e1010572aa1ef26b79414764136da8af68d30df0713ca208e5106d892110559df786291411754bff327d40acecc09af9a9273b36 SHA512 68be6d3df4a69d5429cd798c5eedb3c863f8b9246162abd7a2f534843cc352b395500bf2732eb0ab687d5e712db03e58c6534fa1eea5e4014ffd990ee795f8f1
119 -DIST firefox-78.13.0esr-xh.xpi 427848 BLAKE2B c31909945f72dadee041eb3bcb4042ea97e5da17084a10b9af54174970d5e76b7c0606d58746a5ab4e85743dd556e6cbe4c2e718e9553cc39e134989c7261b83 SHA512 d10ca999401c99dd32bcb9c92dd6bb4652d59877153c91553aa2e9a12bcc86869ee36b05f78f7f4600dfdf511d8a04a30b7a539e6cfd0a9d45454af5bebe2ba7
120 -DIST firefox-78.13.0esr-zh-CN.xpi 564769 BLAKE2B 2771f27244e43c48075f9f6babbbd362ef02ae6aa4ff344affc84fc96cd69427ba2f9650ede1aa27ad8c4e240030855df06f5d5ba133cf1f42bdc22ef7e049fb SHA512 9ea0f86c5529e9d069e1066974be9c50b93325be653711159215e06dcd4b0ad76c7e4a8ba954ec3e104b424918226c2b4999c7328638d352ff389b0e24b44b65
121 -DIST firefox-78.13.0esr-zh-TW.xpi 564747 BLAKE2B 0aeef4fb1a7f1290f84f7f18d4f1ad63dd267a2b7f472dd7c2aac55851776c9308457ea9d6abb297c661d18b8aaff274d50ee1f8b39ec36de9a804b62bb419bc SHA512 73e873090097c1021c34e4e063b9bbc729023279b94a451307332ae70fb5f60b9cec6b515d3366550d126368f913c574200664322ca20b95279f7171595120d5
122 -DIST firefox-78.13.0esr.source.tar.xz 333506484 BLAKE2B 1922e2f6b2ada46e581e4eaaa388873d31c6a922e5165ba225eeaccde5c1c6d7369a57ecf8e89371a34f692dca5754a461abb7d1c9bfda9cbc4f021d39549439 SHA512 78a5dc8713ab879ebfc3b8fd7a8219844d06f0d897342fdf9a11471633d98e148ff85cf10e561899df4910b94a33b57709b64788df4621a8c0b83eb9a7102cef
123 -DIST firefox-78.14.0esr-ach.xpi 460292 BLAKE2B 6172004493452f0b3552b279e145fbd1e3f0b390c2a1e38d636beb2e76ca2353030e5a23cb0051cc2686b8a7dfd47bc12a62c0f9903484ce91e53afd1015b68a SHA512 1eb68df58fe3f601576150a6e0f344b68537cd8db3c69cfef30f81ebf35b48a40881da5194db62783f88e513dcce705901a0e51db1ad28fa68bbf3fa0d03702c
124 -DIST firefox-78.14.0esr-af.xpi 428352 BLAKE2B 4c4eedbbaffe0b787bec867f8dac28b83b9854077c86ef6091f7b344ac9afc0d1d40dde83422803a1005c81dd7a17dc8ac155b8bf22ab8d9168ad48a23065a5d SHA512 b41a340340522ff72ed78bf4990254ceca898ee13ca3292e260b88293daa0763da1e5ea5aac482c5206314cbeb04a1ae44fb498bf5619417964170ff03fc227d
125 -DIST firefox-78.14.0esr-an.xpi 508372 BLAKE2B 569866fdf9fc43e290bd6c873c4e0a57948fec7315977b614722bc300ef9fb7bc3733cc26cf6131c9aaf877aff5aad2c760729c932bab23d20e2e7161c51423d SHA512 49cedb618b37b478374fd735decad90976a9057d8055f82dbf6d207ef4228416be4ca5cc7371917c826271256f59c4b8bb244fa353966a323b038ce1300944c9
126 -DIST firefox-78.14.0esr-ar.xpi 560974 BLAKE2B afa1a2cdea62b4c906d4c4a07de110d6bc76799a4df0c68c5d1fc5d8f6232748e47ce7b567cff11dbd91db967cead05a79f28363ce892f9ab480b6bf0193b06d SHA512 131b1b2163fa0970a945f23ce3d7362958455a1f7b527ed47611f5ebe2960644fd7a4e998397b414935eb9c602e558ebbf69da9446b0ea37999b5aa16dcfcbfc
127 -DIST firefox-78.14.0esr-ast.xpi 456400 BLAKE2B 9109a1204d82327b267954d284535bf82632ab687490be1699887ace2dcd7b42a34ea377261322e32d53d0da4077efcef62307764f0bd1765da47e3abeea8710 SHA512 f90e699147d6a11c4f3e086a17749180aa9d07faf81987bba218463c353e767f04c01b01c35ca657ea9583ab7c775a2073e7de2de92fba9e6a0e53b444e8545a
128 -DIST firefox-78.14.0esr-az.xpi 497429 BLAKE2B ef59d029419076d2c4530d7646b03913044914cd530ab68b9ae4171db4d25877e92d43083ef8d15ac768fba38dc02d29fde7b7eb4de07a146f3096bb9322d4a4 SHA512 d634b3974dcd2d61bce46901dc7074ec8b6739250663cd44c9ac2b31530e15af8af4f435acfdbb46cbca1f5636a0d04fa56ef8a4feb2f7ecd6b7bf96c152c7cb
129 -DIST firefox-78.14.0esr-be.xpi 608653 BLAKE2B 52f62ed9905da1f89fe90e4b131c91a66c3e7c04381e3d50c236b04a72383a7b6f73f485ed6e97caf5ff07c0e2d522d8be724be904274a8f38459e9fb5f8ad62 SHA512 b9a211c6545a8dd32164bcda535f9bdacf25faa4e20740ea686eb2875a3155c7d8b1e2dfce465ecec74511334e8b403ed890c57ccf3ba659a1b9207bc9d8c5dc
130 -DIST firefox-78.14.0esr-bg.xpi 553989 BLAKE2B 6617311a88bac82102018be4eba224339540dfa05e763ab8f48c17cb3e6bf05f430a4b7cb73880029b07b04df5cf259d2e9b5373fa363daad31958104f600ff3 SHA512 8e663d4c1f4c3b3d4940b3b8fd6d34dc34bafd9195e8445e203f5a1a11ce85ce38f5e6544f731512b1c41ca294548f22f3e943b3cf3502a0beddfe5ef018f3d3
131 -DIST firefox-78.14.0esr-bn.xpi 572621 BLAKE2B b340d67e313a71d7373972ad8ba38d9ed5d129432dbe8f8e1d94ec433854009bf4e4eb6a1ebea15999b0b0a549dea35731f277fb35790f3e23fb4054d877677f SHA512 458c2b59e7fe485df04421c97b4964de076178f6413a7ab9721308b777ac912d13ce8e59dff0aa47c78eb3928487a0eda7009b10b031140b913179423e068061
132 -DIST firefox-78.14.0esr-br.xpi 507124 BLAKE2B 1beda598aa2a9c9405f91ef6916f1607949d73659611c721836ad2cb5d4f02b147995543cf78427c80fb37e14575b9824e84fe39f4c5e8d041c2784b6623656a SHA512 b0292679c2ab68c75dfaa70f030c4bc8016af0a4f48361825b06616121fb76b26db524adb2270b0232c7a6661d97a31c02aea7731d5395bbd933f9ee8d20b278
133 -DIST firefox-78.14.0esr-bs.xpi 463814 BLAKE2B 06af02ba3492000afa32ebb77cc2f633e03012343eb9c6c3469703f8241ad5e7a7c17559be1b3d9c25e1a87d568694ac72cf5ae86f892f38bf7d1beba1d3135c SHA512 e264a6b2a50c11372bb1f882b076f7643d54f6d015e39f11557d2a4edd24e58c38db6c9b3554b6a522d7397111acab46d713c32167b7836a9c696a3b56ea472f
134 -DIST firefox-78.14.0esr-ca-valencia.xpi 517191 BLAKE2B f7be836d7c207c5fb7c5098cadec485b18e253f8d6136c18521a907dfda1fc5cafa12d754d3036ecb10fa73339ab4d86074c7691a78dcfe86dc75606c73a32d5 SHA512 0ff6e8fc648b5ac6cab1e24c730c6cfee284e8eb9cd7ec1fd1e966b6b69f6d5146fd5bd3f401b8d110812c1efa6f7a25082a646552a85386517705d47ce1afd9
135 -DIST firefox-78.14.0esr-ca.xpi 514176 BLAKE2B 807464010072c897105e18997bfcba347b6d6b8675cea8d368f46f21d8114e620f524c2148ac55b66d810fa0e53e494fa2e8671cd47fc75020d5775a0950dffa SHA512 a1832778fc082f3b67bb57e753f428d0e2961dfa98c86264ab0a0d30c31f341df17310c73a003c4f30016b13180cd56853a4137ffedbdeb994c69667c7e771ba
136 -DIST firefox-78.14.0esr-cak.xpi 551551 BLAKE2B ba07df4c82a29bdc68dbaaf86afc0e9dd737553c155cda5aaf41649195c9b1d480b638b7babb30daa177f31188cf90bf2e56ed59c8695ca9b70b41d3b2566e47 SHA512 a54203624b37d0bc0c25eadc0bbea5a83808f964dbb98d3ace33a1bdeef36061c55a613718767055cc9bba56fe9ab26c1726c221434628b028ebdf2319bf4857
137 -DIST firefox-78.14.0esr-cs.xpi 540325 BLAKE2B 2cdd1cd91a71a60021ba412ca4dd66f2e2627ee4041f9e4184565146707f8780980af6cfff2a8aaa5ede9fe214d24f0fcef4b5182ae2e897779cb55397c5f96e SHA512 1927bdfb335c49ec181dadf133d8a8fd3ae0d61b6c4d05f94db3f321f7f7be256c9ececc728bf39b27e48bdefc4d965c4009cb752b771bd899f939966a489508
138 -DIST firefox-78.14.0esr-cy.xpi 530698 BLAKE2B 16eae5cbe546606f93ade7a69d24bde8d7d7d83c6865f8adc514fa1a38fa7b887ebe62524fbe47d735c324ab230f8778169c0a8dbf521e1d952afbddd840d52d SHA512 0306993221059abb0c4540bfd6157d9ffc4155881f66d7752be423a1798b9c07fa96a266be8ff52b8e54be95bc1591ba7dbd8b9a19948bd31b5ca3a0869286e8
139 -DIST firefox-78.14.0esr-da.xpi 520275 BLAKE2B c124d90d73050bb9eececb9e9e4f977e214bccab465548f5eae993be10603d0c6cee1b756349665afd5c27e7d47c18d8c0fbf9190a72ab314701f81ceab13513 SHA512 3db6396f32ce2851cc66179cc8aa1e897a07882bba0002cb3003f5e75feecbae30c443ad6f450b94cbc55824fe61d1e7ffa2fb1f7cbaed05611302cc724c8fe6
140 -DIST firefox-78.14.0esr-de.xpi 542872 BLAKE2B 112688e2f41bd6eba735fa13a2235e482d5243180bb5d664c7b7c3eccc46f0107d22fc0ce41a432eef538a783b148718d6d5373432c8b7e0c33cf66943fc1115 SHA512 b78b315cfcc1015edc7a09438b2c828aaa6e2e6ccfe11f701de14dd6544983b6e7dc2253662cf318da9f404a22937168dbbe4f8095d27857808378785a45197e
141 -DIST firefox-78.14.0esr-dsb.xpi 554277 BLAKE2B 29875c9c0a0b992e6b6c26ec714c0b428ee69cfb18839a5c3bd5abf55667487b07d49e4670ac0b64aa77c1d96e97aad1d54b6f0d5ea2871a76def8c8f1d0ae34 SHA512 d7115d986d50bec430a7b79a58de9a6fe456c306c4f77f4a1bc8a2ef0447a474840b800d05b5403cc5a0bdf302e2020d59aeb38b39cc98b7ab34b9058ff02103
142 -DIST firefox-78.14.0esr-el.xpi 626561 BLAKE2B 3c1becc741a1b9a2610cb9de73e61d4e5632dc18b3e54b58f9de45672313779ef797eedeccf287553ffec7f0134057e62afda9c852076f5bec1cd3d0edee9efd SHA512 bbc74cb32194f0ab25f4ff3e72e3a367592354370683a27bba06a40cf461a6d53a9e8b9a20fa513997be1cf941e77592f3a92afc17ccfaef23e631847f760af6
143 -DIST firefox-78.14.0esr-en-CA.xpi 497735 BLAKE2B c95e41bf3300f9cc8ad3fe1ea8575cf256202a77805baebb2f3e75a1acd6bf2ccd52c3a1bf0dbc4f8fc56527fc6ba729092b8601eb25281b1237fd027bba4098 SHA512 0573a076e30381e8da7dfc07642771e47f6f8187c13a3e489acd049ee8e2000182a5181871126502893a3a2673c740fc12112ba1fd0b4104874ed19a75a169d6
144 -DIST firefox-78.14.0esr-en-GB.xpi 497574 BLAKE2B 8b883f6fbf8ee861781da81b0183e34d353746fd0dfdfe95429a0d6c9497b55f0ac78b151ad9fa8c2bdb4c64a95582bd35c0d93a1b9c29dc40fe3ba9d421ea68 SHA512 8f987f7a8fd525a166c174ab84fa962981d85cccc63fa35e73e14c9c29580d4a94162be5de5c03eb0e83ed54614467dd5b59078211b5aa63b594ab4eb23f180c
145 -DIST firefox-78.14.0esr-eo.xpi 525722 BLAKE2B b2b20498379353a4e973b54566c32236ae123ba2190f9c804492d8d6d894d1df6609a60dedc051b48ab40ba06e34e37968d135e17f27bdf5442ab99130fdae81 SHA512 3ff3bc973d3d510e4dad39f689eefc36034c5b8816e7b0f8ce9a7df3d2dad53b56e889314580a602bd3cb5a49b3d1e1a5d73a1c4d229aec4342c694d966dae43
146 -DIST firefox-78.14.0esr-es-AR.xpi 535804 BLAKE2B 55380decd6a15b6a2496c5f7a4a98264235166a9a7bb8df2f7ff68b5315b0374b869f29c0accd7efb69c2f38820e052892b1e482a232c87669576558695e1e57 SHA512 d286dc978479142caf7bc913bfba78af3db39aa754f73f35ea56f26622fb3cfa077a5f5f15afdabea0adc3ed70b66549574c5bcfe9f96fba909c435ff05ce049
147 -DIST firefox-78.14.0esr-es-CL.xpi 535354 BLAKE2B 79efc11b2faab019d8e4329ac8d98143cdb57e1bb35f33b6bdf8f53c9e19f8b565c2a46fa6ec681625b95c31f167f8ded74f5cca6cd0530a5c46df8277201527 SHA512 2ec0ffdcf645c14d240bf2b108fdcb5d74f3f6772ab68edf57bd49ad038f598b0cdcadcf734d7174466a54bca5b7e914b621628dfc19694ddcee6e33d04bbc0e
148 -DIST firefox-78.14.0esr-es-ES.xpi 522708 BLAKE2B 8aa900dc6ee81b3e248d8c1b45ad5765b30831ff57e5068e69c864cbfe74d02984ac3a17f6e67a902a5e5ae78011b4da9970f2a4021d5ca5cb7803131ca78abc SHA512 93c57ffaf86a41dda795a65ad01c9ec6399da07c96ffe83af53d8f08aa5e0f2b7a8f02749a762b4880bb0046030965c15bebab04eac07d0416d5baaffd95eac6
149 -DIST firefox-78.14.0esr-es-MX.xpi 532309 BLAKE2B c59d8f6d0c7d8b0562df60abc4761a4e808006389b4ed3cf9a3ed35e87b99244fa6d9b4ea190b751a3aa7f73124b9ace8d8cb23de548306d65258d75f9809f17 SHA512 2b6760d5c883b962bbbbfddedd7eff3334af42ce675c02caed3689efd5c4cdd1afa72a6c1e1bc92233e1c84192735bf9e3203432ffdd859210be3a70cc60fa88
150 -DIST firefox-78.14.0esr-et.xpi 485250 BLAKE2B 671ac432ff76c63e4ba720aec6a993fdb0237dc3f8b41ad531d6187474eaea0d9464eb2da41fe17ef99362e2569dc6ae0b4250c79582065f32d3bec33f2a4af6 SHA512 2a823709169cf7a32e751926633aefaf7971111b0b707c76278109ba854941d3bd3f16d12302a66c3a7264922f9cc8d353589a1d4aa104d3afb15485848c49f0
151 -DIST firefox-78.14.0esr-eu.xpi 505879 BLAKE2B a8b5818c395f29f573743ff412c329da4ce71d14ed9ff16bddfedbba25df6956d2e456710bbcbbd6b6fc14b660df31173af2e855d82b84a16765458d17ef29ec SHA512 cffeb8bbbdaf1cfbb167117eb8449d79446ab0cbf643b54e77eb4ab479761df74fb365af88444121b1180433b63b61e8cc87f7d3af3331dca06c31cc58b6aab1
152 -DIST firefox-78.14.0esr-fa.xpi 538923 BLAKE2B 315963b5c2496d5733c5b3a4dd0901df505e7350b29b24a3d8600434fbf6df6dbca453474ce625679e2ab1286718a127147ea3dc2af847c09fcf5c8b0b689e29 SHA512 edf3a1ab884bf117e7933c91070b319226b22e5cae9df8e10734ae4a74e7dafc2f32f594f4b33452a0d85ad8de14af4e814caf63c51eeb3db3d67cf9c0e258df
153 -DIST firefox-78.14.0esr-ff.xpi 481617 BLAKE2B 77e63295b40a46a70bddf25c5aba37c5c8cfe07abc461eac6234a85c783fec20db2c236abb21ef70847a004ba486f2ce48f75b3f81a5e1d631c64714f509878f SHA512 38ca80b0f2b3486d8dcc1e15c994d5e8221bb248922f81a48faea5b04355c86917282cdc1b623529d0557dbbebda2d1c9a4eb57f60152c43110615d9ba7fedfc
154 -DIST firefox-78.14.0esr-fi.xpi 517930 BLAKE2B cce4811746d7c6866d42c63677e37017f0696707481bd55d36bbe313105601d6a55a4a04bd16a17abba7c7a72eb4379ef67d04922958d2824e773a430cb71e21 SHA512 6bee3f658b8ad7a287c0594290a1e3181c793d59e89cf7491a2927be2a3dd0334d551bcf26fded5cc9022d0908ea292633db000412130ab275c27441283b64c8
155 -DIST firefox-78.14.0esr-fr.xpi 545893 BLAKE2B 2ac2f8fd03da7db50dc6a77e2e7ee68030e3dcc4d2bb3992528df9f8676dc8a601e06e830775b6ae0167679a7f579d6f01544ab01c1d52939fe9f1620eb7221c SHA512 ddfdc7353cefb19383c191bf6e2f8590d38dcc80fda93fd34a7d4537634d1f672fae7dbff6dc9f1cfddb665c389d474508104b9417f7f3454702b0f08243f5a9
156 -DIST firefox-78.14.0esr-fy-NL.xpi 532481 BLAKE2B efdb7475883a211852bd2ba45288a7e89a4dba469c3f27ecc5192ce98d41b239badd142e4af71008741a1e6fdc97d052af70cc521e8e851c41f72886371bf314 SHA512 c5ea8e6745705cceca75accae16b7902a103d3e8636432e1642092951247e757db8904d2f6ed012fe7814a5f6808db4067016a32127ba3a9b920e11e753b51ba
157 -DIST firefox-78.14.0esr-ga-IE.xpi 466904 BLAKE2B 035f7ff09072dc43b2b1283cb4fd828f33f2f0bf7eede6e9ab4c09bf0503c889654858c184a94884f2dd45a485a708bcda34393e613d034160062b6cd17426dc SHA512 6d4f5bd6dcaa4bf43ceffce578cc6fc670f180aeb12f10459137665a757fcd97620c732fd96c2202053816292984696efe0e24f0d9c3c5033326c5e881f42fb1
158 -DIST firefox-78.14.0esr-gd.xpi 491896 BLAKE2B e46c92db5a33e36957b37cfe5326e3696070b453b81770d50ef5ee7bd545749338d74b502a986ce3e9afc84e3aae080e0cf697c4551086f4ba4bbd9fd2aa1a46 SHA512 8add92a07bc6d9246f1a6fc960028a0b7911ce4a7b9418327aaa4b53cd1c0f2139f42a83884998516e06a2a87d6e2e67ff6cf9d12189db9e84020068d8dbfcc7
159 -DIST firefox-78.14.0esr-gl.xpi 528418 BLAKE2B 5bd680f46f212e402ba2a881a1124bbda4cc79edc86940734d4732296d1a04f67a8a08c725db2ace8198bf68e7c55362645636b81070b2633bcee8397f0d362b SHA512 b1ac9231006a237849538783d1a0133534bdbbcfcf706cea28a0489d5ac6dbe294ce0ad7412e3fe9bffa26ad431e355b5aa0b491e60ed8392758f9bccc5b8ac5
160 -DIST firefox-78.14.0esr-gn.xpi 546468 BLAKE2B ecb00a5c32bac405e26c4d8b1ad6514988df3d68738d407ac662ae6341d014e8ebd3d56271d89c4aad2c8c2a44880d0e2d091c808c6644b252509cabf4c15999 SHA512 02798e554422228e73fecdd4782d9cf019b28a76193035c33cfb151272ab6ece72a98c57f9060d11cd9faf7f352a97e36c91b2a1c6aa6ca6b8328d880e0750dc
161 -DIST firefox-78.14.0esr-gu-IN.xpi 541434 BLAKE2B ded993c377f45b54c1cf835fa21730c27be49ed039758cea004c418668bcf3591a79775a7bdf4aa598a8e96d7b1a95f551e186f79e8d0b4ac0350e276e59213e SHA512 e2f1888108b08666a7a819ae89916e14cc641b9a867fb14821ba4a79515197fd3aa2b5eb800f57fb3d63eec49deef645a7d40cdc5789b860ce5e3133833d4aef
162 -DIST firefox-78.14.0esr-he.xpi 545580 BLAKE2B b9b4b3da5a0ad55e9ee6a9577095085cf076c4b5c07a30c234c058ed5057681ce216692add63e10441dc409b098f3a6693810db17e30c558587b794279fe08c0 SHA512 fdeefe908cdc49090e8925de92b8cd96c171a6f280f244446a45d7cc9d9bb394dfda34da95a91c29b6c9a0371accc5d790b4e6f34d9b43191ccfff0346af252f
163 -DIST firefox-78.14.0esr-hi-IN.xpi 567859 BLAKE2B 5dc5e18013a8a476792fbd1eb4ba6b27170a0c635b6bb4844b24567eb233e7bb972a894f4aeb04781571418ec7b24f7fb32624a473088a07db4a28f9874f3f74 SHA512 0a761b30838635cdd85b2673301019754a2ae5eadfd509e2df646a82402bba9a24b8bdf775c8da26683d6eba80d6379f594951abb19f73c3c2c5f029f4c30311
164 -DIST firefox-78.14.0esr-hr.xpi 522695 BLAKE2B 290b8c8630d108b126f5c03a2c83daf6a285422b3c3f41ed02e28d8f759498f5e40edcee5fe5cc177e2cc49a2404955ad83350616f4a85f1e3e90a32c887cf24 SHA512 d8e7748d17925b8031e3a2bcf11be017fcf3ab6970cd4e885667035ec7077eac41404b2ce76bbf2ca86578006733faae5dd142ea9ab60809d4b81b8089633d0a
165 -DIST firefox-78.14.0esr-hsb.xpi 550661 BLAKE2B 1e2a85f9c11b8461dbc278080730269bb07113350204adce75f01afb4bc1488d57ffadd10b81d3590e23bbc792c284c874417ac2f1a8d44ba6456c8d76bc0dad SHA512 78a007061b50f387dd2cf2e7ff2c5680aa363ae84cd8bec287affbe8d03f9da43e4a5f76b60bf09c76b278ab5ed8dd916f0a51f8dff23e4cc54d32f0ee1bc014
166 -DIST firefox-78.14.0esr-hu.xpi 554883 BLAKE2B 403ad326a1873ed30684910a76dcf4f4340e1bb86630bf42c706357c49b1795031ec6b6e4a6e04ea0a9933eeed93fb6bdb25e6059a819d82cf9ee7b926e3e32d SHA512 fee59bce668bce8fac15ab9099d0b2c433538128cf5e51d744e07dab427096a8bbcb01877b884a14b9eb552fb56bd05bc68e29c1532632bd7f5d3a85ad777663
167 -DIST firefox-78.14.0esr-hy-AM.xpi 588991 BLAKE2B 60b632765d084a822508e1291fc350ebdcf1fd2b468716cc843cc09b6c2895e79f062980dd8eb4309a6457257643c2297526e8caa9999c011bb239ca207890e3 SHA512 c33a58a6403273f9c10525c024eb0d7e0b931ffaaf1d36e0a6c3cb8193b42aa716d90aead251e74511374f488303dabfc9e65fa6e208b3d6c6bd25b221cf5f0c
168 -DIST firefox-78.14.0esr-ia.xpi 518822 BLAKE2B f33e514f9d4d8a3d08f51c24f2857e7b6c150582b581a1138083b52baf9429654cf2befe760a5cf0687fa91a7ec702be5d259aef824d6c99cf43d40bc79558ac SHA512 17844ad44221e6a1dcdaa6f1280de24d0f363fa2a5256b61161a5bccad8d5d1d121176d90edb23dc37a4b58a4e77c1ca8a3eda3cf7c11a176cb7b5f58be34251
169 -DIST firefox-78.14.0esr-id.xpi 509569 BLAKE2B 116f25148448991b25647064a79df2fd2bc5b77e41c9589267cb628991a053efe0e45b913d37113877cfb0b30fa2c27b37140c2f26f3611580bd82049c4efd74 SHA512 f46cb098cce38e6d55c90486c9de293b424c1d1cb0b4445e0a9b1417107e5fe98d0e582d2b814b2690bb58eb0a55f823b79d4171eebe36f15ea0cc8a706d0673
170 -DIST firefox-78.14.0esr-is.xpi 477032 BLAKE2B c55323d8ff25a3f63a6a723980108e5daaa5f4a52d2bd7f2da3cca7cf4efcb65eb910114d53a96d3a035a5b1969d514dc427a02aa3ec5cb1b2c63ace77f026de SHA512 12b1b4000643f17574c01b70ecd016a25c81ffb792e000f56a9b656de8af9eda0874fd8285eb503f2eae14a13230e79d4a75f258ef9f0448b51f1bbcb984ee59
171 -DIST firefox-78.14.0esr-it.xpi 449817 BLAKE2B f45a2c611e673949dc9af995cc8816d408087f71b561682ccf802eb57495a9f6d607fd7966a041037e245514a3015da82da8a1e713d127ba4dfb4bc7829747c8 SHA512 a5dd1f2ad7e020852e07ba776bedb789cbeb301049c52a8a7178418f7b3ac9c59458d684d86e482786006d3d1d7576ce6f872f56cee3e39ec8c71a82ce137280
172 -DIST firefox-78.14.0esr-ja.xpi 578183 BLAKE2B fd4065c26887fa73a925136cc25a951dab8cac1647f82dd3f89a79e7e32d44952bf7b7598f2eb56f77a31d08f904e39866abf688e06fdaad25cab4d3e3e60e44 SHA512 27ae4cd28328d3a23b1414a7ef8be6366baa838d3f1a20e9ed6a8c8704186eefaba8e68c3e5f22edfa0d76c902b4985dbd8634d7a48fa0ccbdee0c1b98413d29
173 -DIST firefox-78.14.0esr-ka.xpi 579087 BLAKE2B 3492928dd07f22dbfbb6bb78bc8c3e02ada8f86a32418115634281bf643ffce0cdfed7aa888fcd98f6957913fd824a6dca8777202fce57d3bba9be794b6f0688 SHA512 17f9965e376adbed4067d00eb2617f6515140b4cd1a24cfb233642cdc73d8bffa38f14bc3649627cf5ea7896f6ac0efdfccbdd4a723f554c470e391d3323da22
174 -DIST firefox-78.14.0esr-kab.xpi 539729 BLAKE2B f6af275768f9756e65d7bce90d05389cb96376df2567bc151301715e87a543bea32b9d974d69232b2747960838379ba5e99a328a079e570d67fce276a741e267 SHA512 3b92398b6f1a7ea37057a0546fdf277dae1e932e0c6774e65666c63ded4e02ba0708edbb7eadf7db147dd3c06f00b9cf08a8e97d1c4bfa7af2dd0b633c897166
175 -DIST firefox-78.14.0esr-kk.xpi 593247 BLAKE2B d9e8f4678c8995aaa8e4d9877e39100396b0a6832236ffb91924771c8f766cb40985959b157addd69c961beae9f746643cf621bd79512a6f235f133e40fd7d6b SHA512 ecc0155641d3f48b6703797d1f2901f3928eda04150683e2ec8e15081685aeff70d095d682a6191571b3e9d3d40a6c29e40b7ee2786f21274153d90dbac23597
176 -DIST firefox-78.14.0esr-km.xpi 527376 BLAKE2B 1b10ab4e022020728cc5c34b13bbc6b4308bb15a3dc1f1cae2e142a3b0090fbc267bbc80411d85caa3e3753fa579f92d394d2e824e6b7e628e14242830871f86 SHA512 5ccb8ebfd62089ac5f152e9ccab72365a2914239480ca4ddeb0b86feb4cd558bf965db3471ce9e1597d7b985a3db8a1d5b0a48358baf1ca141e7a523aded71bd
177 -DIST firefox-78.14.0esr-kn.xpi 506750 BLAKE2B be7be89726ed89ed9fe2a335223c0249b4f1fcc8a0eed1d4c28cc9c9c6726a326aabe0a498dfbebf1fb557a525d21511666f511b3c594308c109cbd65faa3707 SHA512 917d339b78fed82f72bdb3b7e62c20cbaa9dd9954496827da37cbecef5e4b120eb56bdfaf623e0a0ce38e7516720e14900bd283b2475e7a91f21ea29a24329b8
178 -DIST firefox-78.14.0esr-ko.xpi 567535 BLAKE2B 9649e6f7208e075043b9ca268ebe33edb516e2680c7b47cf3ab3e811efe6639441b57f05a28791bda777d63ec94826976897850cca4a09bb504db4bea0835da6 SHA512 d103971c578bd847b951c91d50665a8bee58f1d29aa62ad163a692c45612c348a183b0e5285378bc7cc86273231f0a4c2f1eb8be077b4d52659008470a3c5516
179 -DIST firefox-78.14.0esr-lij.xpi 475234 BLAKE2B 2891005a0e72cdbd7c233149e3b95f2c0038e88df1a42b467c53549ee755a2feaec1a89966b6132bc3f164fe47f3e0d8bbf5a1887bcf24a702032055c285fdf6 SHA512 8e7582f8e34bbeb13c9d3b22758c3abfc7bfb84afd57dce1f3300b68aedab221a06ee5b0f71d7a7dcb8534365ede3e9b91b3b90ea1af37034f4f73ade03679e2
180 -DIST firefox-78.14.0esr-lt.xpi 540701 BLAKE2B 0569be25a3aefab4ae1f78891024e0d2e74aacd11337f9ea3bf7c6ff8dfbd52cb614c88bae83f19356804c2f03326d63adc1cac1dac5ce15d1d16176bfffb133 SHA512 de0d9879cc0812898fbf1879fe6860a86d548cf9c1a0110d58db9c78d1c0db84db6a93a140f34ab9314d6c17f4f932afa8f98701c2b16ecf6d6d950bef90227f
181 -DIST firefox-78.14.0esr-lv.xpi 467472 BLAKE2B 5af8c5289c0f70d6123ab7d1196bc6d44c0e16dde66d1dcbd91c0ffcb47fb3587cc3889c9e5f6a76819ee72928d18bb23974634dea21c4f59d7b1aa3498f3643 SHA512 e4afe1d166116e4eb8c5b497a9b3844b44e6ec2586c5b24c1192de016b5c963eed15b77e8169c0d2626a6670b15b6e3247dab349e8f47d26baf75caaa4ad0b7b
182 -DIST firefox-78.14.0esr-mk.xpi 460031 BLAKE2B e0003607237757be71a147d256ca003f8e4dc3b3018ccf946acdcf57f0a262b533643d2404ef1c0ae1d09a8f31b73e84b77eab81ef5f30d32c338d3b4b0683f8 SHA512 7f57fff0f75eec887b1329bdb52d4eb523c117b9b841b7c40f42d3d106900e046d697d4fc70957f61777b6c940a3d3e2560f54e865c0b19ea4e81d8a50055145
183 -DIST firefox-78.14.0esr-mr.xpi 541568 BLAKE2B 5b61ee2a6ff3cb70418cad699fb702afd718999a98fbd9186f8226df21a95fba49eed999d31229af9dbf7d8fa81ebb52c885d8ecd0b4882c9974d9a4fa1c0265 SHA512 9bf2465a5b25500fed276056a83d924aaa821c4cc6d506e2b8fd14a9fee1a8637a2d85a4da95a71863a3d5f5a2b399a024eb6d0e213ffb31da1581044bcaa1e3
184 -DIST firefox-78.14.0esr-ms.xpi 453055 BLAKE2B db16cf845512665f448a7541a408752d8984806e6a48d79860674eddf51ad301e3299f7c3e001ebb0f0ab9d27b6630da4c0eed9fa0560aabc6ecf89b5dce7cdc SHA512 0851fb2c84f595f5af61edc5fd05ad87213ce34351b8635bb73969b5019bd01f9faf786172f8d27584c9055c01cb1718bb6cefad626c046621f673bc662a8763
185 -DIST firefox-78.14.0esr-my.xpi 526330 BLAKE2B c4dc0addf76dbfc8357e9620916a1c70e16ffc67b0e5f47825a5377aaa1c1df4cd602a3a0c7521a7edfde961079a08c9ed302515c06721cc7dd64969f5619f0f SHA512 575d51d92126448910f809b467ee588e608524312c872667281810591dee4616ad3ca58102aee667dc937069b64479efab21ad7381a0a2bb1b9a6a46a6b16014
186 -DIST firefox-78.14.0esr-nb-NO.xpi 518521 BLAKE2B 6a37694dd9015b303aa955f64eb76a00a5e5a041224251f9e468438ef6be9676dff88dfd4fff767bd4907c9a92cfe453f8ba716983c6be957b668062fa9a6c55 SHA512 0ee6ff5f074345187b2b19c88da1628fc696cfea1dbac2e7e3e8e28cfe0cdb3f48b5674c07fa2aa1e661e09ed9798265f0b37f25ac1ae61afb565e6d12f5cd36
187 -DIST firefox-78.14.0esr-ne-NP.xpi 483408 BLAKE2B 166568a283b52103d9548b6d0dc149b8c90dce4a83302bb33dc2848ee46f90fc8921203c05ea3c6779366f81b96e4f1c4b2398c82ddcd22fd2728b4fb0e01908 SHA512 4bf89380f196b7f17857d1df0696f4484df398a3122f5ec55ac314167489ad63e60884cd2b749eb0ca6f7ee7fad21bae4f151bfaf4fb1df7aa671fcf73d74e24
188 -DIST firefox-78.14.0esr-nl.xpi 526207 BLAKE2B b3f620de2fe0706b20e5c9150be2ef2007984fdb5d1b0e9fa4b97f04cf17fcf07341a0395718412ee2b4e7b2e1f6a07154ab0b22f418f4bab80ff06629fd8e4f SHA512 c9705e47fbc634928437b9133a6b23224bbb022ef24d43ac8ab6ede44ea4ae2ca9774a5de34da679c094b43e8916093d74ed90bd39bdf58120727eb253c811d6
189 -DIST firefox-78.14.0esr-nn-NO.xpi 520156 BLAKE2B 06246ec50fb6b1d83c529c71e480c1bd52755e6a22cbd5e54cf42d2b27d29639123586696ea539502df1e2b1a5b8e22c4993d6810d7ed8f631c40e741df4e094 SHA512 e08bb070ec79334cfdb3a209bb6362d4fc0b3fccffc0c038284ebc339b0af4b83005c98590f0b5f83520060d1ab99295e6f0964e91a45410fed4fb693bcef4dd
190 -DIST firefox-78.14.0esr-oc.xpi 542152 BLAKE2B 3eec31151584826ff93f486929529b316a53406749865ca888f8520491d984266aa5d2465475c63e9f416d98b9bbd10c7d55cb025caf1c94d56a1a8afd4c0b47 SHA512 244be100f4fa5b598ecea295b3010c2001f1fe71624503a27adec6a12e08bf11031382b3181481405295665f36dfb8da6eef135fad6953dd7d3de4e8a374a41e
191 -DIST firefox-78.14.0esr-pa-IN.xpi 580362 BLAKE2B b9b649e223080248903c114739b1231220cb29845fcf0890a2a9d98188051ae0e37b671a6b9f38cd38b282d1a06ed58ce0d068d4ee7e21527221bd28157ab619 SHA512 666ab88cc906db6874dd59f2da77af7d589068e88e3981bfed4ab445389c1a7cf7cf8b7cbe70038889a620404df2127497be20b0a8717e8394393c390b3dc093
192 -DIST firefox-78.14.0esr-pl.xpi 545606 BLAKE2B 7bc6a8cf6677391f824c194529fcbe3febb20cb62cdb56b9dffc0305d364ef52c7c17c09a0697308a8bae867da46e41c162d2d077c54bd4186a0b406c93e491d SHA512 bc11eec9565bedff24ed749d5b40b53b9269d950b7623918f61c7870f6311e9fbe3ace65679d85fd62de41a73a425ab3fef1d152b5997ba87c722b20e8903652
193 -DIST firefox-78.14.0esr-pt-BR.xpi 527582 BLAKE2B b1c2973fe1458098ab34a5b92803462933f7e3a6b0203022fba81f3fd84fd9c112a0ef455e06c5cd3cca85571ad69ad0302e229d1dd476f838ac5b1ad4e06305 SHA512 5f454030c18045690da22971f4a90ab8b5bb6dac70db16b50599a9d083aaf4137b2f4a182ed9d3e585781d105ad51504ca16bc5dfe636469183a7afbeca3a47d
194 -DIST firefox-78.14.0esr-pt-PT.xpi 532032 BLAKE2B 5390d69ab9f234b1570d1b70b3c55abcbf51c6fea1f0e1053477c545c658a777077cf0f267200882cc88bb2805cc2a660efbd2f108e0852ca84726ec27dcface SHA512 3cff6d3fe5ccbdf199aeeff632cd64a5b59be608881c18f596a59a210ff4d3fe3e913ebf6110b5be6d7d5a627b265433384839ba4fdb182d616f978fc55c944e
195 -DIST firefox-78.14.0esr-rm.xpi 526711 BLAKE2B 08b913c641e2da7adf62da5f175a9f42146e071bfe2be82b139fe9b62c6312c779c2000b11cc07c83407aa77b8a8cdd5d3dd9346b133aa1b98e30877b98b236a SHA512 2fd6ff84e90a8e02c3b0e973cc0c7e46cc36d81357d106008df090687649f9ef7895b1f53e4a155299f99784a40e2ac34f70b8e76c8763a034c216319c0a4e83
196 -DIST firefox-78.14.0esr-ro.xpi 535575 BLAKE2B 7a2c060ee0fb718aa84b0568da6457f3e16e8f962061c2f1ffbf156827d0edc744ee48a25130d26be528eb959a784dd7ea4cf07ce38352206170084d6ae0e0d5 SHA512 da47132eb11729b0342306d9c7d6d42799b4c0911814a2c058874fad3de079bf34a3695a6afa595bc5b877bbf847a160921fef678d009ace2ead7b9718a701ea
197 -DIST firefox-78.14.0esr-ru.xpi 614598 BLAKE2B 078acf040420a0d03ad9adc9119264160e3f0694b8705fbb8b913338fc93cda51bc9e64f994f6569371d9b3d225600e10642bc36a71121c51b6dfbec4b93f49b SHA512 a122f4294c94eb76376436a08d591c8a8948f3e686b06c043c0a4a3832f56e69823dec19bc610f04231c208a08153bdb2b74b2185b62d533d79b0c8732d76233
198 -DIST firefox-78.14.0esr-si.xpi 492522 BLAKE2B adb49fc8ac4143ecc43c5bde14f324139041d34a0fa0b2f5bd65edcc4edc520d0f452713423f8d3694995f1769811b7e35eb265dadb66f366f4f624146e61c23 SHA512 9951afbd84ab0b543278eac671994eebf7d14c59cc5c99f4fc69bb9ccdd33cd37f7660db78c43df81c0fc18c4807ca75b0dd90adb0d97452ae1715910c3a2790
199 -DIST firefox-78.14.0esr-sk.xpi 534241 BLAKE2B ab2114580fdb7541e5b35f2a056ed0abafd5e1d34832d35e1bb36ef1f03552196672cb79422337163c8a553bc4f030a1e78257d5c41bc5ced294735217e67ec6 SHA512 ba6d3c9b821dff62d085ffd77359936fdd6005f4fb44b3a8c123c0e094e20cbe940de8c6d5c98b0c377b35686f96f011e24a33ab83041cd897e1d345da297dcf
200 -DIST firefox-78.14.0esr-sl.xpi 520936 BLAKE2B ff1082a5a0eddbfb4c3d05ae6489de9ab12fd32ffdb79437bfc485720ba46e6ad425da81a49ece9242c59f908eaf761fa403bc37049f6ea8b12f7a758118ebc7 SHA512 39db06bab8cc70be2d10cf713be7e3cceb5c32e60010dbe315fbd607c4bab74a97bcff19059467a4eb2e75c568c3912c0889b193316266994573bf9a603f08ea
201 -DIST firefox-78.14.0esr-son.xpi 424580 BLAKE2B e00166ff54cb94674ceb0919617fa7855fefb57a6c6360bb028f4db78197267c3b565ac27d202a3dca5f741b0263bb6d3fea0670712c796e0da8916027765d34 SHA512 ca7becddb358c672c75b43781ba66d63da1abcdeb9756b4545891c9a24d7b1e9f7f36ff6ea653960dff8ca40d705512f372260554ab5260080e1048122697da4
202 -DIST firefox-78.14.0esr-sq.xpi 544909 BLAKE2B b926f14347a7a3015ee2214720ce5828c9f530d8de5941d8b97e7f54e15fc2fd1422cd7063c5eb7a3dd8dd5bb435dfd592c5f0b19e25dbf04b20c2b06a345d16 SHA512 fda3a5cf64b791ff6e4f3da3ac91ca82552bef84dfb25b300b96b08996ef8b14b7fa544a0ee54d2306201af1354605cc260b527ee1967c029c24043d27d8f2f7
203 -DIST firefox-78.14.0esr-sr.xpi 561396 BLAKE2B d88ecc03210a6b13ab591186a0e052a13234ccb0d6ce17482b92c44510df55690a0fcfd7398469e3951b6250d5fabf2de885cb642998d0f9cd2d747da5bbcea2 SHA512 3feb63179860f10dc7303740ad1c7c2164ab8d67578dce8166e64bd7e281a5391b6be86fe85d1e89f54b807661cf3bf4e3a745b41db3e21921af855059461185
204 -DIST firefox-78.14.0esr-sv-SE.xpi 529697 BLAKE2B 941286baa2839461097760cb0ec08360d5f946baec4385d6909c1bbb91462b0cb1e3ce13b6fe853e5f78a8f924eb5cff92164442497d532aa2bfef5a3dae0924 SHA512 7602297e7ed5934da0dc92d334c6a8989ff1db40ce9a4347efaaa1842d92f71ee17026219d122685f5387a41c9a4796b302c8ee4c16da9980bbbb5bc90c2e12c
205 -DIST firefox-78.14.0esr-ta.xpi 521529 BLAKE2B a797a83786c85c8416ba89b088ca2abfbd5aa102f132bc79889da96a9fad4f785b98ccd9a002a82693c9feac863bc9391ba701b3c1039984b485d7079866b615 SHA512 728b43a062d2561880a4b45c1ebaac1e01d8f26661ae2b26d2a4b88f3d50ec57bb611c8fb227df5bcac4a20c7fcd5c0fc6dd5a2d59dae53fe50f46b4fd6161f2
206 -DIST firefox-78.14.0esr-te.xpi 558415 BLAKE2B dc65317915ab52d53171f06a9818e6abc7810768e2576b01febf4b02a8e0941235c3ab43654b103d201b4b039a96dac371219597c00db5c2e4e1e6ba293f5d60 SHA512 fccb2562d445c63745fca297b24df36d9ac6d808c9b794d26396255ba98cf6b05671130d84645603eedf329c7d86c4194b2ef12fcc668f6d89f258474684943e
207 -DIST firefox-78.14.0esr-th.xpi 592253 BLAKE2B 13bb9950fd43648d922e841b27001c7a4599946b3f22716284261177aafbf2ba5ddf7bd22d228c55542f4901de7ea1383d3ce5ee66aa1c5701aadf232456ae9c SHA512 6c482a34cdcb8a2880c0c744c7fb2bcd2553f1b3340c9a62e5232259f853ca7749bce25509307a1f6a8266efd5f17fcf9ab63c707bc6ee034e0928730f24780d
208 -DIST firefox-78.14.0esr-tl.xpi 521114 BLAKE2B ebc8c8b95e03d609e7f3408e4521f5443a541dad343c1909a243ee36f689312d987e7732c979b9093efb4908975f5ba8364af3862a21dd33b9d6eed0adb361a3 SHA512 3a7a4bb231c471ef3601b00f6e45b7cbbd8d24b987e93addd937e1aaf5abeab7fa555a984baea267a50f3714a494c26dcb04ee6df561f7f29fb5dad64854e8e8
209 -DIST firefox-78.14.0esr-tr.xpi 539885 BLAKE2B b52ae72ee505611d151d5b650d06c4628c43e8cb713ca4146c327f4ab06c2ec8b5fc2c84a5ce56ac82e36fa127a745e89d2f82cc84d22ec772b217fbf76b8eab SHA512 2196241b8191cadc3997a1dc3bcf5e358dcc82c91398538dfb28442818dd0030b3b577ec5fe82d64f1466a84859db65de453e2d184b71763e7a001814da350c1
210 -DIST firefox-78.14.0esr-trs.xpi 501224 BLAKE2B 0696fe6474ae4b9d535eefc395b886998cf495a724ce4e4a9432ee645f748a52a369b5b74d5f23c7ccab9d39db0490e159265ac1d43d2220b51616671a8200bb SHA512 226201e55c438a1753774850b8fdbddf3daa3ba2c94ae56eaabde0254fcc18ee55d85a811d21df30f29e2cd7395b83338b6ef89b9da0dd540fdcc86621df9af5
211 -DIST firefox-78.14.0esr-uk.xpi 608593 BLAKE2B 2491d4f7702651ae4d4b5e65b47e9e5a50cf46b71a461472beef5c004a52cf49b3d131025225474f03817592427991f9212ee9bc4cd8c3ef5184c5a1f3c33634 SHA512 b394708d5f65ca4fea5dfe1f6ba190746ff4e99cc7cf6221a417db817ff33d139194eb3c3b4a5fb89d186a08834fa89556c72b5b31746c5b0e805521aee4ce71
212 -DIST firefox-78.14.0esr-ur.xpi 557956 BLAKE2B fcd4b2cd224043dfcbe9e7a0ef8f8812c5ce52d4c77e41c4c755b9fefd56e0572090650f97e0aa713d302b0e066cac0b257934780b2376266ed854c86ce592f6 SHA512 c5d8c23dc191879cb9943064f973c8217a08fd50b9b359b91935f62a64af53de8844d439ac9aac035af9b3999f939bfd9063f8268e3d662137e6cfac38e56a04
213 -DIST firefox-78.14.0esr-uz.xpi 477564 BLAKE2B 0d79d9774a0c3e647e0d6caf889a270f14cd72e26594e81967162152ecfe3c48b924b3ececf9015dbb31d01aee579dba710821ad43962662d6f3dc8990b8ad7e SHA512 cb3c8bd3268a060635cce6e216980b9908cb34b8ba100e1eab5bb7b21ca1202901f54e601adf76f852ef19ebedfaaf5c4e7cb16f1c3badc5a5ccc769e4e899b4
214 -DIST firefox-78.14.0esr-vi.xpi 562861 BLAKE2B 433c6d2cf314308957ab8126515945cba8788a28cd8d7c3e9ccdbaab1367850edac16f1ee5af2d737974b6a8a69612e421bc15caa8c00431541c003488e3253e SHA512 fe873c104c78167e35b959ae9455805f62436fac404b22d7dba2feeaa2722bd1b9b46583f9eaa02d5b0c20578ffa8192acfca1043b01755197523b415060764d
215 -DIST firefox-78.14.0esr-xh.xpi 427840 BLAKE2B 98a6203db8dad8b0eedaca0fe618cad0ec9839aca849cc0c4eda134dd8215460c74ffb563da7bed7a5ee88ad1505521f43ded6f69e866e7dece3121fb8b8c812 SHA512 f0af08c51d823977c6a07f2e6500db03cec4ce0df70f2d5546e7bb8ec9aeeb7f8c4fc54978e2427b741ae5bae9700b896120d1717b01295606c2a868057d0778
216 -DIST firefox-78.14.0esr-zh-CN.xpi 564767 BLAKE2B 79af107fc6eed1b264c84d4694d1a88406de80e28d211bd1ddb276be043987f29d69bce0047a3b5fcea36ba1683679b60f979b80618aabd4f239dacd69333ab7 SHA512 682073787d31141414b41ff8a579d917bcade5cc8752eab205e8911a2cf51546fb5a77872c8ba13711b665f4f31716586660c308da9ddcfb4adf4342488a8a3c
217 -DIST firefox-78.14.0esr-zh-TW.xpi 564732 BLAKE2B eaf9c564862a9235ebbdcfdb0ca594f88876082e7078e1d80e418f28e9af495d9e1932a6e569e8ce6f0bad948e833d4c99341c8cd4ec55f09eb0355bdfe6b984 SHA512 5e39158d4821aa9424fa3b66b2c050bb5d093147ffd40786c93561fcc58bad933d6342384ce2bf5fc8c78eb010d4058fbde9da9e843fd7751b253ffdef589a4f
218 -DIST firefox-78.14.0esr.source.tar.xz 340771180 BLAKE2B 7b83bf081138fbf2367116099839c6d05ec5ade58f183ba033c5167d503a2a1f40976f88bdba680a7a8df7c66ac32449004e58a5211f16086b792a2b41e27c67 SHA512 5d5e4b1197f87b458a8ab14a62701fa0f3071e9facbb4fba71a64ef69abf31edbb4c5efa6c20198de573216543b5289270b5929c6e917f01bb165ce8c139c1ac
219 DIST firefox-78.15.0esr-ach.xpi 460291 BLAKE2B b22cff8020124356f56a542d0b027321fa6a6d3538239498150c036eb7619df2dfdfc5a04145ea7755a533c560c67dc4098b4a6cea77b333be5d23713b879aed SHA512 658884e108ad3d1b71353742dffc2e4b205ef1212d12dccec75a9f014f151237a34052f78a797975fedb33ab530bd78aea5d1f0276d00fc3177015743b76d17e
220 DIST firefox-78.15.0esr-af.xpi 428349 BLAKE2B 1cc33d264817e7aeaf6b532a5fb65901e6b8f3253a6be78fda026cb97b417c52b62952ba5db247bd7370fa7631b9d94a6b3e2ead3f016e85562cdfd3b3021200 SHA512 5a6558244c174d9d225c3cf3f6f74b9c4c418bae41ef2b7b3d804dbc92ebcd1b2191082909a000bf6f544771c2d04ade7003c16e58fd96272233168d1f6d82f5
221 DIST firefox-78.15.0esr-an.xpi 508374 BLAKE2B 73854cc9f9a1b7ff4d9a70ec10bab04cae18cff5e23875590b6e08f5f571b44ee6aa1259638e658102c78e41e60dfb27ed86ad8f11b7b2f5322997a0ab7549cb SHA512 1ab2d37cc19377234d82cd5d85ad963ce0f14875ab94f5e093d7546375b09873c22cf9ba8c7df23cc42baa8075e060e773d7de1a9e730361d9f77c9ca6d326be
222 @@ -286,404 +94,7 @@ DIST firefox-78.15.0esr-xh.xpi 427847 BLAKE2B aaf667de15953c99c580766047afe082e4
223 DIST firefox-78.15.0esr-zh-CN.xpi 564764 BLAKE2B df0b207411e7731c9238dd069fd42e47c7ecd0477089e0673a98fc879e76db566dc6f92c60a515938a831c0e0ef116f4f75f9a0b37350ce2f04be4fd72e53677 SHA512 072aba4d663091121118ecf6978129ad3cad28ae16eea7e1f680831ae0326d8ad5e0f853cac25827719229d7eb51635d1d8ed33e6fec01a48ce05875e15db2f3
224 DIST firefox-78.15.0esr-zh-TW.xpi 564733 BLAKE2B dfcc1df31227d62486a8a36428c413523e2b6a81f96fc91481fc35fa65744bdb06f92ec1b259a1b79d1e5b43f1cb16c6fefb0a74fe2d4b33538783755b165453 SHA512 b5b9c3c6a4d717fef8ca250e6ccc636be2de0b22988f3f1da634266622ee0304b59a10a194f424d2b6693ce3262658172fe2a015474de600e1686950f8b90370
225 DIST firefox-78.15.0esr.source.tar.xz 330819568 BLAKE2B dc8785613c2f72c55d484642c89c2545765a9efbd609bc7c2cf57b4a3a06a2ea22e6959e42b5b8af867db782e8b2097a67dec858796b744e47008a8e575e2316 SHA512 ac3de735b246ce4f0e1619cd2664321ffa374240ce6843e785d79a350dc30c967996bbcc5e3b301cb3d822ca981cbea116758fc4122f1738d75ddfd1165b6378
226 -DIST firefox-78esr-patches-16.tar.xz 55964 BLAKE2B 79d3a465c69656bb55ee7c1e9060606464b6404435b92f534db275521ac2343e045feae1fff6166fde9e2599a82cd982b0b2395271b1033f0f784e745e2c6965 SHA512 3aa971c726646cbf37a14a0dba6c4ac966b88db655cd8b730c5572543bfbf682991ee7c139889541e4f6936c13f27233dc1837fbdb9ee340b33ebb2cec59b01f
227 -DIST firefox-78esr-patches-17.tar.xz 56004 BLAKE2B 01d2ded2658c24176a3d13d0267d1c4df4ef0113c5c40b1002acd39a0f04db35b773bc617afed1c681df3ec38120621a5c3753ba2d36688d7d5926233bfb8501 SHA512 43b372b848c1f30e02505d06bbb11f5b80d976fe7ee39c0d2aacf60d48bc1d3e378c325f4e2fd4730b971e88c3bd902539a7b81874f53b8b92369f876e05be5e
228 DIST firefox-78esr-patches-18.tar.xz 55968 BLAKE2B f32fe8e0086e4bf74fd43127b9fe136a0e0ad6e51cb8a2398f6e8f9fe585de1574c745dd3f50440cf62b626f9fa24d368284c563fb75acbacc5238f9bc8d099f SHA512 99a51a241d91aa00c64550f2a521528f6134c8812e379eaf95cd1287fd51d00346de8d41f2d2f55a83332580531b31c4e814a47d7f69da6e3512613e8e98bb31
229 -DIST firefox-91-patches-02.tar.xz 22332 BLAKE2B d323054441c9383ccc88b0522cd2a8732df19af670aab6e57689a69f299ed97fe8cfeda0aff8dc7353d591705ce2c42957b21da1f449a58145d9343474d35f2d SHA512 f70665c4dcf19b67ee7305fc3d683c03817e7089188a5033a6fe9ee32074820876b52e0bd32f585e1e5cb14e2fa4bcd1cf9928dab6f74f6753b4bf18919537c5
230 -DIST firefox-91-patches-03.tar.xz 22948 BLAKE2B b65585a1c84000872ce675cd531033522cd7ec7e3d3c4bb660269709f02944e8d88cc76c3b9b0059cf3ca85a3caad22168cf607aa1f4f2426eb0dd161b5ea249 SHA512 e970f8fda3257b871f3d8f1e185724ebdf5b4d91bfba6061a777242b7aee5a613fa4450af4f758c0f440d09483e65ca48ae79c91e040ba9c5e63d32d329a7187
231 -DIST firefox-91.0.1-ach.xpi 465287 BLAKE2B 2d45551393247fda1a64aa05e8491c52e476c033a457cdd8872b3cab88028692f360b2310174116b93437e6523d86c19150045187f1392fa2973cab0f9141a8f SHA512 560cf7a68510d55909a15524af17b3e49c3c6acd84d61c509545ca0661733779b563699952f07d8efd6becd569b204f7114aa7434ff8889184f5c2f0a71d4d07
232 -DIST firefox-91.0.1-af.xpi 433153 BLAKE2B d7b7210a9dbe92e2e73493539e3245f265247a6a754461c96e3a29fcfdfc5714ddfb83025b08d862d76bd19fab03fbb9892665fc8987033a406cd6e0ed0be6d5 SHA512 65ac9bc81d3676b1dd7871596fb8ee3361bc1e6204571319adc2691c8969234c7c0a66c00a52244e1ff8bbf213f38ae4ea9c85a181d3c92039cfc47902305e8f
233 -DIST firefox-91.0.1-an.xpi 511815 BLAKE2B 286a6e19f1a882942f187204a2923ec7e8ec38eded208acb0fe01b0c0f83f3b9cb30dc9bfe622d5a66ef327732ad8aebd415177716133abb074e8e85c1d400a2 SHA512 df6c249c5f0f572c4d128ff62e4c49d13dc6c2e4e3d450f290f4f9e55c18da2d1ffc4d04f75359e827b7a2b0d8d242c3f3f40f9e08d64e64e2d0c27a8e1390e5
234 -DIST firefox-91.0.1-ar.xpi 573965 BLAKE2B 52b50fe23ee9cc59730bd6baa81f0032ed46f54e6e633820a19632b6c45c8a1dd9fe0f73c2644b093f104c92f9ab6dfe621c1a6d88853a1ad516b63082a9d0eb SHA512 b20cc21d86967e15c5dc9276040ce46e51de8514905b78ebf9887cfb5c74135f425a3cabcdb7d6cf93be9c8d84e599e0c2083fd07b79d45c2d404a90536edfc1
235 -DIST firefox-91.0.1-ast.xpi 502959 BLAKE2B 07415fb7f77703a299e022c5283889ff070492f1e68709a610ab571a2d03af5449a751ccdff071b41091f271174aff8515cd090232ee3a8afb8524326488fe2e SHA512 a525017e47323d0680e5ec15ab1dfdb5be45994fe27506d0088c2e02d5ffbe9aa37d426b3032e4343f01d9f1e597359f46b73bd32847de02a524c47a82befb3a
236 -DIST firefox-91.0.1-az.xpi 500888 BLAKE2B fc33248a75f92dba2b6f905a18b184fa819a8b22244744e34c562bd824a4d5a352a39da7378a3810ac2ffc60c5e037ac627ff4d69271c3c1bdbc4b24d7c3559f SHA512 831ad2fa7fce8f1a1b3c5c4e69c0be8f412802a1b45c980f344f0329aa5b35f407185c7e863ef521e6be8ddea7b1c4ebd51112c47854891b11c1d8ba116feb3d
237 -DIST firefox-91.0.1-be.xpi 630159 BLAKE2B 54f5d6cb3e7cd8fe093637f4894afbe58627d0f548fe75095b97580af6be66ffec73dbf80176ad954742eb5cdafb790017f54f9a66594a948d84bd938dc137a7 SHA512 d126e4d28cf90a843c7591a032761e7fa9bf693ce5c94b2620b70d88e146896114ca975514a258e62c57affac13884c1dd3f560ab5a27287adefcf3755066d97
238 -DIST firefox-91.0.1-bg.xpi 585089 BLAKE2B c1986ecf74b055f5be9b20f40bc564b6ee4442fcd5aa8336b57dc45ca552c866cb209514aea48b124c10310c91d6a4a5c74353043a10dfba059f7557d1dedfb3 SHA512 db96440741c136a6bc8f6b71be0c100fe283dc85798f0c4be0975e543a1fed89e3045f81f8bc0299b702dac6b4f0336181154e256ce10831b6f4b922c117d624
239 -DIST firefox-91.0.1-bn.xpi 576483 BLAKE2B b7a85debdcb0a7ad07ab095d5d53e625d07608a118b29bca5491dbbf81455516c83b6cd2156cded61d050dd5239620e2c764460f091bee4f122cd74a0bde2d77 SHA512 d0498f27bc4e4b1e23cf5d53364b8c70c41f5e47542c34cd2151b25bb36d608da6897035af9493c1e07d0af8603abfb411953a84874df0d77e90c03e5dc8cff3
240 -DIST firefox-91.0.1-br.xpi 534797 BLAKE2B ee346228bb3f8cd0d2b6fac0b8fbe08cb37f36a151a63e181235894dd4608894442d481d7740f8543e538c8a9778d838a3f8b239642a17f9ef0621f0873643d8 SHA512 fe5bffa7fadb5192d4054ffcf865dd2fb2063d43e8012103280cb121fa59d39818a60f9d9305b22358942a5a55f4a34a3de188a1b7350f10a6820de8af918908
241 -DIST firefox-91.0.1-bs.xpi 473115 BLAKE2B 3d667ec86b2e840c39f412df88fa7183945e6a55ab9134300bc36ac1fe7d59324fa85b8efc8f6685ff813f734ab7c983f9afb9bb96c621e683311e50be8018b0 SHA512 fc81e1e90becee4436fe56ddccd986e9c975e4bf27a2497841e22dbf1f06358596071148fe9f00a729da549d80f31d6e341ec717e9eb63baebbd1e9403f8de16
242 -DIST firefox-91.0.1-ca-valencia.xpi 543224 BLAKE2B 0aa78a5d29c40ecea6aca34b4597b218433e67101a4018c64a8ebd7235bae0a4257570afecb9f1da75107379a72934752c57734cb81bb708461dd8b1127235a7 SHA512 b22d1013b3f60df720c7070f3e4ec62bf72b63629ea4828eef5def4edba4793a34ecc14aab8b5e21613193713ac13cbf53b3d240c6716a91523bef4a6752ccb8
243 -DIST firefox-91.0.1-ca.xpi 540998 BLAKE2B 1e7694f1e055516d36cc1e40360b5e60c94839b16ba9cdc7a241a308dd87e0fb46930ecd48a04bae560d35ad19cb480221cf0334f077c2260b2fb8f884142769 SHA512 01e3aefbb2cec10c86e7e18f45ec85b4d433cc995518c878411872a93c24d883dbb7a3087a51ba170d991a4e5263c75d59855b8a82ba21e329615fb33b89e48d
244 -DIST firefox-91.0.1-cak.xpi 568040 BLAKE2B a59457069ac664c299073e66ae405178241096cecf693b2b9eacade23c1916c5b171fc17a0d84286f3954d2b412e5dd87d10da2ababc258932d4171d49744c17 SHA512 1c0ff812049e5f09dacd795342722f117f33ecc4d6a2b62f0627971f91b68ad1ef62af85f1f694832318b06e5409560867256231a667b02bf9d01933cd610886
245 -DIST firefox-91.0.1-cs.xpi 571507 BLAKE2B 7804cf6786ab37d5f365b8901ffa49cef5b5176994cd380717b1fb1ac36816d6fbb97bae23c64851120c9fdb8bd24f35a729a5f8b8cda859c45e1522bf007228 SHA512 7667c0088c1366cb10720bbe52f8e7a58697f0c14c6319206b601bbb293f49d0d70bb0db57ee3e354665b29688b1612ef257d468a449843b387f06c0c81aa8a0
246 -DIST firefox-91.0.1-cy.xpi 548290 BLAKE2B c6f40f2f5c6eac115e8d31c54010b5d6478e18fca3eb7cb4944782abc84b66b7415acae4b7e3dcf5df91e4e78b280cbb66a6f86e9fff3ba62cb1a650338f1630 SHA512 e74e3de44863a6258b961b863961d620ea2c76386bab929a6dd954aacc7323bf2eb0b9e63619f62103a1224fecd5ab9adf633e99173661e07d0575e94649bbf7
247 -DIST firefox-91.0.1-da.xpi 540522 BLAKE2B 28962025613bb8f43a9493ceb3195ce94933691be571c950abac62c30ae75ce327c7b1834fe9a02de5209d94c66e62de346bb4e688bca21aa9ae284482652696 SHA512 958d7c260b947d7577f88f482aa9df9af0350b2efd618a47d1332d9f50418200c2e62c7bb71fe5136c80604b6450022aaeb78e16dff50a1c2ef63a12122fa316
248 -DIST firefox-91.0.1-de.xpi 560086 BLAKE2B 99079af04537beac2bab4b5591bd915295043597e09ff496c95c9c54bc9a8b30502a3d73e41eb54cb3ef3632a46fb3f92dcea88b8e0c21e7e7a1ace1f9511fea SHA512 8c0c1512ade19c9005bba51bd9bc2d559a84559c0b5db99c6687cceac7a9fd6f9aa0383815e9592a2ba656aed42d337fa94a687104738c8a76db649f0e150dd6
249 -DIST firefox-91.0.1-dsb.xpi 572852 BLAKE2B 5b5a79b15711ab50779d8af85095ce963ad27543eeb621e44384e0d25aa198cba029f13166ee3c944c8529dd5ff0fe1b232bcc60e1884afc96c8a0148ed85461 SHA512 01df036204449b6e9c08f26e7c9f33dd9a7b2db0eb9446a41c76de7bf9cc5adb35ce09020d93fc5c851e143934c8a0a3a20e2b0ab40a887bb347fc42c366f0a5
250 -DIST firefox-91.0.1-el.xpi 646565 BLAKE2B 39a36d9fb96e710fcb8f7907e6dce3c78b7c53a547373ef76ddef95503dab5b9ba10efcb8ca998e5141c7dc094923af808a8e53e7a1ef19cb6e1785fdc2b9613 SHA512 9a35bb7a0b2327616f4f928c6c8a39c00cdfc99926c3447dd314c19c201230e6f7b134734ed9ba126efd6a2762c6f8a9b47079ed52917b447d63d085fcecbb38
251 -DIST firefox-91.0.1-en-CA.xpi 515726 BLAKE2B d845b2da2d5c4b2e5f4f45eaaa038e075e0cc838f1f8fbc5018da08def530fe65558c80fd06dfa327c5cdcc5da7420abdf8a229dc1a451fe76d79a1d1ebc718d SHA512 e14353b710c593b0b912e9cd7c9be58c58591a93605a4ce5ccfe56385165b7317dceb699ce2dc674d20e51677a4a83f029579a8537757ad4eb0386c4cd79f600
252 -DIST firefox-91.0.1-en-GB.xpi 515977 BLAKE2B 1fb0906663297c2007fdd17983864c5d1240fc910485cd0f63d2f09463c7f0ebe8e1082972b14b02a44fe757feaadc999752130eecbfc5742e60ff348736011a SHA512 dbd27bbd0695d978e6f043fcbe859a8519c0de9a15df1be5d02676a8b122a2dc88afbd6be9fb6786db3562d894b7212d2807ba37487220c5d85c368e1f9cd8b8
253 -DIST firefox-91.0.1-eo.xpi 542047 BLAKE2B 6240da366483ca76a58eecf0efade198cc4443916efb7da422eddf353f5ec4e2967a7f932bddee056c62461657c03bd2524aabb9c12f4398d7e4511f3639cc88 SHA512 f3ceda1b665d696a4316f2c39d6172f0b88dd61100a7cc742285172d9da742406f7bfe1ea1f7de855ffd38851f5e7fe93bb346f62912f6e47b881f275012c1d6
254 -DIST firefox-91.0.1-es-AR.xpi 553515 BLAKE2B 676280a74709db605cf84e59403bf65f6b7b8bb4679e2e0b7f51fe8da2a69a38886f2a848318602ddad1070b583aa18977c4899a978def7ab87487104877e97e SHA512 3ace98e5165cef6d5eeb45b8df8449133c6a466b86e553778ef121cd2e89b57bf74dde6897b90f1c25b2d1e1db22d420627883496df160be293aa605defe52bd
255 -DIST firefox-91.0.1-es-CL.xpi 552540 BLAKE2B 893e92ed1e681e1ba238cd6d4a694d298aede939bb01d55b14017d61c58be545453534c82fe7f183683475292c068a37bc9e6f76cc50e99041962460af085763 SHA512 eecfaf871d63a51487a2aca835ff2190882aac2e51aebf25709f19fef34867ac4297598aacb27d908110b127102755aadc404dbbf3cd231090b8b1a6d4a0f100
256 -DIST firefox-91.0.1-es-ES.xpi 542531 BLAKE2B ddd687343115af534f986201dd1d7496a678457a567ae7309a2ff245432fa52341e877781b61ef304a0157f2fb5db49063ff54574776a5d4c74f17044bc5a9fe SHA512 b2022661f9e0fded6c91fc30b050c8c917e323f105779477f7883418286ff0838519bd091a510be4bd18fd41053220680bcc025bf3f7093035baddcff6a7a965
257 -DIST firefox-91.0.1-es-MX.xpi 556676 BLAKE2B ca0de4cb6af0bd6a033cc32b95c58e545d523feb30e7785d18b39d0bd90895b8e48272606f059c7e7b39da0dfd132f964f446142384459897e15f85360682043 SHA512 9ec1ac0d060b2284c77062ec780bb44f771189a360cdf687756d9d43a56072725c24b89b594a941ace27f892a6e3dff0d588cf1e6cf96d71bc6f5db4b29a90ba
258 -DIST firefox-91.0.1-et.xpi 494144 BLAKE2B 1507fff6e251ea9cb4ad0a13f471a95374b7aac2c109ac1f70e8c285103ffe0c08e505414ad90d9518cbed3946b9db5521793afca0ce3cd1a9f6303833876777 SHA512 77ce0b40539ade514a09453b175eb0be52702e53d4f1a0af39740d393d9f076b4f6e7e71380d678123dba2783a22d871c6990c738359e8c7387f816af4e96c3e
259 -DIST firefox-91.0.1-eu.xpi 539059 BLAKE2B a8b7c4ac6d4f2f4af552796a32ad46a90e3be4c2d3159f34d26566d8de1d1ae22d279be967289e7df161c875b9d28b244081a42c39386193a1a86beec0607d27 SHA512 34da87854e3407a18eb1adeb9a6f3aabb8adc2ced228bf6b62baba93a9a7160f108be7d0f18a9a462b30a503d411c4ca43dcb1231e5063504fc2c4b56aba4b60
260 -DIST firefox-91.0.1-fa.xpi 561627 BLAKE2B 5cfc5115d94a9e827eb254cf1da94fcdd1e5e2edf724e5725f4e4c3566d2a08084efb057f01131dcb5b6055de4f282f7170c55ffdc48a22bc123a02739bf440e SHA512 5e199c81278ca9311d4abddab35bd758231f5bbdaef50247c8d0e148602ab686517f711e97909d3e8c99a10a7e83dfbcb8a655dc151c595a348667b1c096d4cd
261 -DIST firefox-91.0.1-ff.xpi 485699 BLAKE2B 3d4bdd815afc8143019b3b8aa26409e5ddd70e5c5c9d98bdf856836f6d187318129aca275c43026a7d199e619059a6e8e89f177ec31f98f43933868fb811e47c SHA512 607c0e7e50f21403db2e7662a7b3b842c259534e6af052edf2ac4f5f2429cc0e4e90551b6f5dd09ac707756525349439a130305a86b5718bf436120c7df9a4b3
262 -DIST firefox-91.0.1-fi.xpi 539827 BLAKE2B 78fc432a81754687bc2cb42ef55597316086fe70987868dcb8c6b0155eeefc60e460596fc5a5750541f98d838c5d81271338b2280fba3b8122f8adb82a0932ea SHA512 046fb4f4b5300798fad660df13ddcee8327a7586634e4f1945ead67fd9b84cb50f4e1d05a8c8b1d259fdf4752efa2f02a84de637444118bad3eebeabfbb663d7
263 -DIST firefox-91.0.1-fr.xpi 564062 BLAKE2B 4be5cbb4d525dcbc50f2bbc652ed8d64c83922a2f5a2e30c1f78f89748668442dca87050f29be57ec5fd8f2f0f78eaefed8a985bf09245937d4567875813e047 SHA512 0d61587288f3f6677a1ab48b366f634eb05a55aecac3209a2a48a4df8c80b507589e88423493bcad86927f7e14992862916a910a14f951f5060651cfa61244cb
264 -DIST firefox-91.0.1-fy-NL.xpi 549214 BLAKE2B 86920b43508060098d03724b89b9d0327b8e95580fe1180c34ef372dc7554c48ffde85b34956baf2e8d9d1d1294622487d39713a9f57abba5b716872a4223357 SHA512 51b7c6623b446eb7e05d64073a66dfe5a853e742fb1251eebece8703edccfe9c534c06542df7c31353ca60f38612dd2f1a956bfea794b266d34590dd55cbee5a
265 -DIST firefox-91.0.1-ga-IE.xpi 470695 BLAKE2B 0854bad626a93dbb5a6d5bfb69dd10dffae79500040b423771793a5bca1d47232b9d620ce807ad853d8d3aed7f3e4d03e8fdd4dc1db4555150a8356c6d22d41c SHA512 e0cfb591df480d5d029700719e1cf0d1e72ca6efbe6e5ee74382b5ff631d22e6b5059a0805aead8e2ef3e8b0d03b2462939dd595227c4ea060aa8896941ef6d7
266 -DIST firefox-91.0.1-gd.xpi 545679 BLAKE2B f305678a4ac5a4e6d3078e7216abd69b8863a55a7322d490c94342ec458dd2af22eda25a3b578b801ca6e49ccf983115012ac4b1d0d0f20b6ee736b9313ccf7c SHA512 9014992c1fd03bc207ecd91f12d4e3d42d99323d306824274a5d830f73afe2718890de291d2d8619fb879b9b825e46e3eadeda9d905a4528be1d1a22e9ff2311
267 -DIST firefox-91.0.1-gl.xpi 548400 BLAKE2B a30c56b8b6d7fcea245dd4088f68b1e5d5ec052673b6bc81e00dae370c2e041a75060238b658c2f2ab0cdb1d6f48e410d071efd9640bd0ae6057401996429189 SHA512 57191af8eecceeaa151a4166b7d81d9bca56905cad4b335c3096c3b77c52833342863528398934a69724e4d315f155a4ed5188178f5c03e2574f8a6f78bc0648
268 -DIST firefox-91.0.1-gn.xpi 565288 BLAKE2B 2a625071695bb5de6e0c66dea03fbe34bccaff97443da4d3e8bc241a5e37d49af5ecda7c28a32804667f2f0f321137b92582f2339ca767c645e6d1ab0dfd44b6 SHA512 f2ef2392c8e0f51c0164dc27c0761d8b94e9b049e1a4e84b1c895de19ad1e97dc71419eab42436b62fc26be39baf10ee3c546f8440c834e890194f914f989b4c
269 -DIST firefox-91.0.1-gu-IN.xpi 544520 BLAKE2B 4b6ef8accc458b5092d2dba3a1b17816dff06c48f3cdd0b8c60732057062f8cb3070ef13af7024a5fc72d4f7d49d54871b6d1f75c76c1dc536754046576cc69a SHA512 4a861f82dd8ff7d220c9eae2552eb554470ff5214d3587b82278753525a7c17edc9d139a245360d6a2691694722b0be143d8388bfa3800c2c6e9868ee3f73e7f
270 -DIST firefox-91.0.1-he.xpi 563135 BLAKE2B f062c0d3778e60ea66554b31e4c25ed323b6a3c1304e69855fb9d249c55265003df9cdb9cff6c81543df1a0a427b17734c744589dfdd2ce70dd11f6f96df9fdf SHA512 cb3f171a0c84db3c4549392ab981450367f9a76a21014427c37e3b7d71693b496d27f140b029ea5e532c849100abae54e92706254840da406e901992fefc4d6c
271 -DIST firefox-91.0.1-hi-IN.xpi 575687 BLAKE2B 63b0c59d6be1d098c7ec121a111d7f7af394f3735e097bd82b445270d16a2881aeeef3c309b16aa4b4aed567fa3daff8b566ebe6d3a70ee068319af85cb9ae7e SHA512 260c490892ab6790bb7ea4e8e8ef84038359f016563be742f145a089b73462988611450246455c10fa70926104a79c55cd71bd508e0523ddecd79ab39d37a00e
272 -DIST firefox-91.0.1-hr.xpi 544089 BLAKE2B 585a212a42590aed3886a0d2f8c8819963cabb8e43c3eacf7b025606973c92aca900f9dfa50ee1850b84eccc0d07bda1f1fa8c3fa27f19cf0fa5e1f2b018eed2 SHA512 50e5540290c2e6b45c13aa04221478272ffc2c4ea67675997e95cffa366291a9e6cdf78803cb9d826710664f566e69dfee29266a6c50d60033d5b65c47830e6d
273 -DIST firefox-91.0.1-hsb.xpi 568946 BLAKE2B 657894acbd00379001162e710c062db03846ed8f59f1b522bef0305f86d65986b631bdc70216bfb3685be25ba856cc04adc509f08ced6265cd1904bd606646de SHA512 cce8258a90bdafda4136dbdc3a6bca7254dd5fe20d67e47c533d2bf514bc6e88debce079016e5ebe49c6e12aafe52501ff45629ff1a40ee11dcc740c3952e3f4
274 -DIST firefox-91.0.1-hu.xpi 572754 BLAKE2B 634d3a958462f342d398435161d5f2908392d4a2ea464946fb2c30f416a2ac143972abf4a6f7da3c15ce20e54b7d5b26512b2c47e15680483a56ffbff26b9bca SHA512 78270700c812a78b43242353b00e0668fb39141736670238e9082ce444164acbdfe94313da6698b90d5d1879d32f3119be720326bdf3f2687a6400f6d4617410
275 -DIST firefox-91.0.1-hy-AM.xpi 599022 BLAKE2B 6c34d34b1ee5d07ec67795702451b5015a08e4714cc6d4ce82d4a30b9522c51abbf3e20818c24f3a54f9d6e8e2d6a9a17771d3f468658822e1d8aa7cb1dbf66c SHA512 a0889af23304d9576f4118c56a739431fadff7abe913cefd800988da5783dcc9f8bddc6d384c217a4a766747306cf9464c4ddfda4b6faad5181faa781d584aed
276 -DIST firefox-91.0.1-ia.xpi 538521 BLAKE2B 92aa1189ff7235e68447a0dc815da9c662fe7b2d1016385e9872d039eaba5d7322a8ac4aa4b89c15bd5b28292979ccece664612ad6a27bd0322e7b6ebb371aa0 SHA512 ff11e19878b0dd9aee6b0a13c1d03921cb4f9537a7ec24a2cfd671208dbb1d7ce09e425ddd35afdda9a8603c975672a0db1cc92c6d8b16afa8984d4cec84c4e8
277 -DIST firefox-91.0.1-id.xpi 533880 BLAKE2B 765594b76a6e516c71c421b8d86abfca88e90ef9d7327c339034db15a314822495f3c742d56e82802f79e9f936934c677358dc343a594d50ce4a780e4515f787 SHA512 9af829bc083f0861613689f587aefb476428d6557c7b58122dd115389ef92ce63ba0915552657594d272f6162cd7c03364df8e84086fccd73d7f3ce7a4170ea6
278 -DIST firefox-91.0.1-is.xpi 481333 BLAKE2B 5272ec7357389f2036a321b2e8e117d5937696439ba1987575a7ceeeea49c017d43b225e8778ae0132dbf6379e31605bc6acc3f269fb15010ceb2002499d27a9 SHA512 dafc2b5a52905b659e8a7147b7ff5faaff8fa66d14bf7e1920764f9cc132b770404638687e09327ee99089ff37ee9e37effa607f0509949c6e6e4d842cf7a179
279 -DIST firefox-91.0.1-it.xpi 467038 BLAKE2B de243e2995585bf155b7e19e6fc092c083cfb865074e11b1be4f5cbb130b5984eeb034400ccaf19a4ff70867c26eb4387fc3561beacb0ba47864dbf9a7d5bfda SHA512 36bc28ba390afc153c7c3d5499fb78292ed8dd6ae5158119863042a254b2f1dc3d337dcc60258fe96125d587c4aea3e6b78763a8ab574d10c24038fa37e0f228
280 -DIST firefox-91.0.1-ja.xpi 599312 BLAKE2B 1fec31ea99221e133a2afb633d6e32a613a333e566c274591321e7c40dd657398f714a76cd69eae5ddf4f946d085998119e0779ea87c7c6e6ca14eae0c5fca9a SHA512 bfa62d077b9415ab9640389da416703bcac799d6849106a611edb4eea25b76cc0c55ebc6d1ed4c599d0d0732fee84c785c4b179024fc8c31ce992bbe90f0a9b6
281 -DIST firefox-91.0.1-ka.xpi 600149 BLAKE2B 849f2564a1bd52c3fbfc91adc5ee1d0434c4a7b0fb6ab07e7666b6e90c63a5fdfbdddb538c31c448cac3b5a1a44fc067229981f148428c0868e0675472c66b3f SHA512 7f40ed7b11e2baec17900a9cebf34763530619bd5377baf7cdc1384fd5197ab1b1743d2c0641ef1b709050b8dde2489feebfbc28595f8fad78c891764d310a15
282 -DIST firefox-91.0.1-kab.xpi 557819 BLAKE2B f3324372e1d0a77662266218537c90945135348fe955eb25cfeecc679c2f819a3fe18284bb7f4ac95e655a0706368d3ac38be25567e80c122d697ebaaa8377db SHA512 4d726ce5e6d2804e53f12960655a69ab7b5752f89c7ada0db8e6a5a7ea78c6971ee87963d4b2355a1b45d2aa21fd26757c0a85370494c61cf630ee6704537cdf
283 -DIST firefox-91.0.1-kk.xpi 614348 BLAKE2B 8b969952db26b3af3dc36f7cf0bd383583e1610a0fefecabb8587ae1360304fa4d0e0cb75ee80297d4f06f9a6a5e6aba278c61421cda3c292636defce5e434a3 SHA512 3dbebf440a68e0647758f6e821428ecae09fe6248cdc7166dafe4306c34c8ccec8362d4957b2de5715e38798a83ed4b988c0562b9357e4f5e29f9e8ccd9e70d1
284 -DIST firefox-91.0.1-km.xpi 544979 BLAKE2B c9404fd5a0c462ce0835e8a0752f0222bb258b5185b88c36a0b9e5ce7f1adfa6a3680da85fb3ac6ee5f27c93972971a4f203826e1a3e8a9ac8ff9ad1090ee2f2 SHA512 6afbba783256aea84c2ad2bcfa5d17dd58ca14288275b893f78c374561b03c407ead02376957bb622b19248a01c19f9788af736e85c663c252a20b12ad2b8c3a
285 -DIST firefox-91.0.1-kn.xpi 508520 BLAKE2B 0f7e87ed335cbf6b3d406d515fded7608976079f3f69cb623301b84c85ea21b90f8845bebd25a84d306d99cf59c7cf2d3bc66db1c6fc47d249d650b4f79fa307 SHA512 e4b0c2ee328e0fa5dbfe844fc04e4da8113a67dd453a2e7ec427aae55ad358467fd58959b0235c5bbc25e764b33003b326548c63b9d7224db4328b906d2d9cc2
286 -DIST firefox-91.0.1-ko.xpi 584339 BLAKE2B 260de436acfe9a052764d90321c51e912e86922ff2dec42baa997474f656af21542920a02dd8c6e9ec414b89aaa2470c050ba329747d56b8530a6e840292c67a SHA512 bd4edaead3c1e64a3fb2f95b7bced43f0cff61532900b2e092481a3296dc3eadb9d39dd6f5ce2150312cb81f18e113431e5a5f5de48541b4aa0b9603e4aecccd
287 -DIST firefox-91.0.1-lij.xpi 481929 BLAKE2B 9905cb8ac5025e63112209d20358aa6af3bb06de4ee6071937fd21be899d118f230906692baffecd30a0a1cec2aba23cbf8b4f52e8da055133d6164b5ed488a9 SHA512 ca04d219b8e0fa2a60a90a051b1ab67e575e68eb5e34689a72ab055215c2b38052da806666438e6ef361e5211195e54a9f4bbbf96c6197ac627e118549366b5d
288 -DIST firefox-91.0.1-lt.xpi 567607 BLAKE2B 176d3253e86b5636ff485355fd7921e20b8d62af84c8ebf5ca14340dfb89880dfe7c66847984ee2f43accd206da62378d2b4ae70427c29786e457a7ed38cf48e SHA512 a508469ccbfb038ab0c307f00f05d237f9471f85a547447236644e801fa4024acd3e9fb773f0464d801d8b1e762f1eb75dc4611b9ba41b14daf20328b15b4145
289 -DIST firefox-91.0.1-lv.xpi 473330 BLAKE2B 28460959c1137966e5b21cfe687e15d6806efb3a19b4805b88c71a3ca9af93aa2cb6cc222bad8e2b186d3be4712aa0500590a2308ad42b1b23092ef2de3aa069 SHA512 bc694d8ab26d76dd6340bd0a11499049e0a0c3436468a6839bc8384fbb275f9960528ad6aa56bb1463bb20c152a278c64100e8678ba369a034a2c0e01c05d5dd
290 -DIST firefox-91.0.1-mk.xpi 473477 BLAKE2B ff78a87591709df5a7ee502c4f97d509291aa73562417c64922342af171aff6a462c21f09e221c834162517a3d5528f8444e17330ebefc4f0b826ca5f050d381 SHA512 559077e8d9151618afb8ba375c637d04c3b382c34355442ec717175f60c85c0ed159725b8c6d470505349d33c13d0b70a5fd1850ab125aa25df1308f89dc8862
291 -DIST firefox-91.0.1-mr.xpi 544861 BLAKE2B 1bc24be2c664792aeeac10e706079afa3859f520b7e75899df95b371226c00f0f7a9943d76308dd48c2f58a181547fbf65d59c2f21cb0b20d2b2e8204d8fd4b1 SHA512 c60b5eec8c5cacc0520ef545298be9cca1e1cd7cb58a6e7dd54dd8975fe8ffb47642f1bac69f583a8da3e8821db78dd6351bbfad5fc4eddec52be18f09f105a2
292 -DIST firefox-91.0.1-ms.xpi 457207 BLAKE2B 55f928df57053f905d738e9fb56ae5d72c4d21aa409d0e478438e77fdb4bf842ff4a5a968aaa5d22b397b13d6ef5560aba402b9017d1258d5d2d838ca617a363 SHA512 e9ec601628226a9bfb14e5bbf3f41082daa8a5ab93a9e06a6fb0a0675b840f622cffc4bb332012a5c14760aff0cc861d797fb3f1f6cf3bcfb677d5150c78023f
293 -DIST firefox-91.0.1-my.xpi 530141 BLAKE2B eda719bd9d52eb2f74725c172fb6281d0693831dc99af7b22e9a2eb66605e4abb0543218ac69849da8c0135f7d10214531008f368b2887c05302450a25a9d078 SHA512 892c3872e531c1bdaf735250d42a275c181bdf096d1aade126acdb1d7169f02dfce67057f36c6f6a4cbb87967eb23afeac8c1fedaeeb0cc4092a68bc7cabbfb7
294 -DIST firefox-91.0.1-nb-NO.xpi 534990 BLAKE2B 8b6ddf3de4c230dba5c4afc1dd4c9aaba8abc61716b6a88c7759baa65c1af7b17c6d6a92f5b7d01817dcb50f6b7b64510b4141b813f2ecff487d05e9217dc77a SHA512 388eb598be5022de1d9b43a02666f60f618ab1a74a4a04718cee6e398f3422da314eb87d70f1e5eca31883f7d782d46076c3659f457fa893e9e9d9532abe61dc
295 -DIST firefox-91.0.1-ne-NP.xpi 486187 BLAKE2B e2a82ac646a4d7008a95b39f53b1f6e2516e4a22b837d32484b461e1f18fed2169cacddfb719d6099e66e61ef3dfb95021a2f2880de34da0fcaa8c99fa0383a7 SHA512 571c7002526676b5bac07d09a3666b586e016fa7f3d2082a1100a55d35309823b18185ea416b10ee501d7fe0934ba2d4f5ebd5849e378b2afcc9a8006841a12d
296 -DIST firefox-91.0.1-nl.xpi 543368 BLAKE2B 1b1681b47e5612ee32e1ee3371fef0d07855b0fc80e961b8495c0fc0291a6489582219f5c7aba465d517fbc4ff23c2ae9346a5f40b0fad078e77a9501f0534de SHA512 55b2d6cf5a699874af23b70da80195a2996b6f4a9c90e657785c98c14410c9d725b763fc39d73570b455359811d682430bc423b909270d067be9c140bcc1ac70
297 -DIST firefox-91.0.1-nn-NO.xpi 537546 BLAKE2B 978bdc13173d375f7321e6e821e93f9fd033001a2f0bf6f65bdb7da8571b41e0953e32b4bea9b43edbeeb31fed7c067e0eca72d86733a60e13b7070e189df0cb SHA512 0774741d022647dd826e316bc1c45cd17c43c130b4fec5edb770cb776a61953a3de30e4bf589c7a08680c4e02412f0ab4d55ca4596584921c2e22505df4ccf59
298 -DIST firefox-91.0.1-oc.xpi 559032 BLAKE2B f2701f64ebfe23a829b8e05b5337b7b5c9d7da205f131ec47b6fc06b7687ef12548ef5b19d13bb1d5884528e34116e99ed073c4babf421ae2e13d51e8a051b6c SHA512 e24f9d000ffbc4b138640cc01387d570336bf84b8f4d94d9fb2a04d8f9f9d183b9b04561411e300cbec44775d1cf08f720908caf9befbff4bb2d68a98bb002c1
299 -DIST firefox-91.0.1-pa-IN.xpi 605089 BLAKE2B d51ddcb0f3a2c37ad121e7e61e243d87911f1df20a88670330145f25dd40cb0edda537444e513ca7973004358946fb2812fd76d088624b918bb85eb9610469dd SHA512 6342a857167837f0250873d3f7d645a435ce9fe42afc3c07e00871953567d01d9076cd31ef6cf2aae33a1ed626a8fb70f747735e47eb1162debf35a1aba2cba3
300 -DIST firefox-91.0.1-pl.xpi 562845 BLAKE2B 5ef1225f91896ff5df88e2f7e6d83ab11e4b7aef1a094e11cfd4ba79c3b8777992b711a1e9cbd3a539377decb69e9de80d675073db2c84b86923674dd9ee9a0b SHA512 c62a73ce7c63468541a295cc4dc96ecbff669e9c80690b0db8cca3587398f1ce52f3087a88e97be1f7770bde7f6d06f96f5673864dceb45c8f7a3a7c7ab005f2
301 -DIST firefox-91.0.1-pt-BR.xpi 549014 BLAKE2B 284df08f9b992b692234726f29dd6db6ceb64827780d84a9eaa0b8d6ff3736f0fb8aacf6ad17a3700f5ade48e0f0647756452d5fea70527780bc05001e7500fd SHA512 9eba2963c882c64309cb39d732eea9a6a47b65764ef20c5ff35504255d764529b198b63177bbe654d1ae9e35c8ccd7d8db6416b8c2e4c5e7a423f8dab156b056
302 -DIST firefox-91.0.1-pt-PT.xpi 552654 BLAKE2B 6fe32e53cdc0977027f2ed12a3bdb4663316bfcc4633cd8199e8d22d119d621536f72d26f523aba005c923b6cc13f51ee8a2bb1509ed92e6bd9ed7288bdcb21b SHA512 f2bf85d884ef8a6d2b7da40f06b0cd530d64593f65908be62e78609e78f7ea47696e7129f68fb379abae78da1c83d9c32083ea4b9bcd9ba7104d4f4c507a8e83
303 -DIST firefox-91.0.1-rm.xpi 543754 BLAKE2B f4431c5bb5e8f408c7c794def16790723d3d44e823c38038a80375175ef63fd47b02728b24f4296cd901ac964d18a9bd9b63f5d93a65a0db1987343aafbaea4b SHA512 05ee7220d545afb2fdb8688eb2d3b750a732c80f53c1af349d85496f89152a6dbf96127f9f8e64e45bc62b7e2d2def9bf37e2be9c7b31deb5735167f5f0301fe
304 -DIST firefox-91.0.1-ro.xpi 544863 BLAKE2B 2f4708130a9b85110eec60ea44e696132bd36b08c6dbfb79d2d75382b337baf691a375ead8d014b408257c818a0495656169a82aa9ee9a5878b9d66053f747ad SHA512 877de9fe822754d72b7ae354f3950abafc48b9b2d90f2fd084a030aad2e4784f99c975f4781e1a6916a8d7ebf6908be90963fc51eef6e8915c1927893a3f645f
305 -DIST firefox-91.0.1-ru.xpi 635042 BLAKE2B c6de6a6fcc637665053998277135e53164617afe01d5123670c3ce468006cde702f93bc7b45ce514f6557c7788c21487c203cf7172ea47a9bf09bad0f21ead03 SHA512 9e55f4b82db8f9b566e0dab997ca5a9d908db7c002e15aebd4d92bb1aa98d7c1e1bb705be26e0d14ee342a1e719fb733c0a0ece15d3449a919673c9f68ae797a
306 -DIST firefox-91.0.1-si.xpi 496846 BLAKE2B 9bad4b6f48a63ec7f557eed45d7f85b532b942dd7d1281eb0d21a67950cf75b707f8c79b409e0e00f207479356e7aba10ebb3d8d18352e6fb5b3f54aff3a1909 SHA512 7999d0c0e2cb8a9171b8eda05c369d31a336041a9e907fe36a6a7e3207a5f57a264f4616952a34bb762374e5c18cec1b2479278c05210e04cb4bbb3c05b5496a
307 -DIST firefox-91.0.1-sk.xpi 572090 BLAKE2B bc335f6b5222f8618360d8f76143925fdc1b4a11970c5dd9dd65a83e3c79401ac0ae4afb685e95e103da1bb6d750eeab86b5c0471e49ac31f6eb3242bd4dfac1 SHA512 5f851e8a755b755d5bbc7155eecf9c9d6c9e79fb6753492280aa43a00caf9b80a07540e32e48f9281f1afe68a920d78a72229f7809a974724a47d23efbf9ad24
308 -DIST firefox-91.0.1-sl.xpi 542780 BLAKE2B 449439702d3e4b04b45971c0461fbcb6014d7aa420fa9e85efb068e93482731953c6bf413b96f645ec9bc6b02559ef28ba254404040469b2521ed58be31d1109 SHA512 14806cf7a350bd7983d0c4684b1c956c933e332aaaa376290a0184687fb14f1ba22aac8388ce1d05b627dff763faccf28d3504402db7b001165eac6c790ba18b
309 -DIST firefox-91.0.1-son.xpi 432934 BLAKE2B f21310d02ccee27097da171a18abbe47acdf6494422499d4f1b791bed56636db5596540e0412d43ebc7c1277e90e4755a7148e00da05d344284511618affc780 SHA512 34811ead9fba243f1892bceab29e4180b56d997fb7ee7c48899485a8308878ccc90b239f3b2565eb4f5356d60ea07936f6c8c94c4eaa5d2526c84e870b93c0bd
310 -DIST firefox-91.0.1-sq.xpi 562218 BLAKE2B 09780c37d7323135c9a336c7109d4abf7c9cab013f6148639f1e0c7ed00fb884d1115952849ddac6f33762594784f46807b78e4ecdee845817e0d2a6729f5d4b SHA512 5e64a574accbb5309cb6ce5f390dff4327e5374327bf20e4ac9fb42ba41dfdb4466a2bfde8b6f8390b2ffe53ca11746aec9a4a0c8d47e0a81e2bd5da610120e8
311 -DIST firefox-91.0.1-sr.xpi 596028 BLAKE2B 732581a0fc2758bcd377a7b7222392d083679764d61b3c83572a2c5e066738c70ccf1663134d2ace5999ed9f5b0cb23b494cb9813e8fb476e54f34aa3588a43f SHA512 08770fdca76823c10da8ce6cd4cdb32dfc35568ee579f97e3e826113a3d82c01459ababa4952c82b7c4ecf0c31f74066826f9a2782665ad9667b18d0d7e4551c
312 -DIST firefox-91.0.1-sv-SE.xpi 546388 BLAKE2B 52fe3913d4772ab3e621aba11a2e2bdb2e85aa194131494eb385f19094bf80cd8ef540111e450e6982ecea4f9c80228679eca7c01a353bad0ac60d7912b55954 SHA512 ce0294899aee0b12fded3572a9a856aa025836e492b49cd76c0c636f63056e951bb95d25c6e9228ab8a157fee24875defd632b36fa67c175e7b7d62323c8ab7c
313 -DIST firefox-91.0.1-szl.xpi 522369 BLAKE2B 4f42ea144d7782084f91fa89649f6ae360b7827801e35d9601f7b61232e04e1965c25c55b453b75f498d5f0347a7f1c4923fbe01fcbdfe61ce44177e7855f500 SHA512 5aa722889837c58f2fe5156cf17c5f6ec2349af3918ee6f97e42c6954420012c8931260d16d1ed475ea71695c25b776fa1ded76d17ea29c3d0ed49a7bfbb0ec2
314 -DIST firefox-91.0.1-ta.xpi 523936 BLAKE2B 17a186aaedfaf2d6e516c2d17278925005b933dcf4cc3e2cf50af2bd45e90239e33d01476de13e8dd3c65dc3e08f1dba5307d684096bd7f29b94a1c03e5d6792 SHA512 094f7c7f511d1485c4fc21745246a9eb7d654f728b3208362dfcc8d2cf4ee09adb0e100f47384b44972630e4b7b02b674ba611e56af39efb2354ccb466635610
315 -DIST firefox-91.0.1-te.xpi 564764 BLAKE2B 4aa83a92482e5c285f71a4922a5de2b2aeec84d396b179ae08d1a3318aed85d6b79ebef7e9b75ffcf5f533467ca61ee2a0a29a7830c7e8954cbe86ac45cc1eb6 SHA512 40a41d3ae4e3fa8613481d29766e770ca57a9cfcdd90ba2632b99794fb9a4612569d5f3e774b0e7d5abc47b818f99ba6abd1c767b459e734eb2731c21dc1fda3
316 -DIST firefox-91.0.1-th.xpi 614163 BLAKE2B f9f98f78708c60e3e63c24641b8c06e954c3e25d92872177d492d5c90fdf64d6cab1823da8cb757dcb0b8b5d85bb83c97f7a6ed16835ab2a3ada4fe9520068b6 SHA512 0eaef5015db4d38948b794da0c36f0f5c266c96a224bd75c5555232b43a167c6c3c2752b68b919409d626cbeb51ccbd45af39eac0e70e8bf91c701a30186e98f
317 -DIST firefox-91.0.1-tl.xpi 531313 BLAKE2B 77440085b88fd315097eb2bf7294d2bead31c40e87d402699ef4ce97200a5c77435ef346b688f1de3d1d44492c51d611968f98a3ae1411897d322ff8f4be75c8 SHA512 0e2bdadbd050f7306cc458976a1e32e1242034775b758cc1c1da605f5500ce2661349cafa28f004a1d5cca56837f176536c5515f4f96a8c66d9f8640f88bf3bd
318 -DIST firefox-91.0.1-tr.xpi 558477 BLAKE2B a57e1834284d4a41d34a5500e332393410858067ec2918da4110ea1c58581fe0956b98e580a1ed7028e139e963e3a1cd03e1a49579cf360f3aa6a6cd6f217159 SHA512 a13ea02344dd369c4f85ff8917c20f401c9944b472e9fbdfbbba653c8cd47415b33efbc77b580954ed9f9201ccf23e72258e40af532de0678622275437e32b18
319 -DIST firefox-91.0.1-trs.xpi 503655 BLAKE2B 25a6acae1b111d3b1b8ccad18cf9949896996bce2eca82a09b01487caaf595ea18353deea4b6943051e9cc07b0a84249e8508837ffcb729c3576705ad213bb5b SHA512 6aec49222741e020db701fdc071dfb8a7d64a5c434eebfdabea003258cc65dcc19fe01aa3acc3701c79f0f1dae267e856346bc079e4fc1e1c37e1836aafab56c
320 -DIST firefox-91.0.1-uk.xpi 628576 BLAKE2B 254edaf0cc874886013a2ffbe5347bb9ee2effbd53cf021804a8c04373e5143d51e8adf12dd887206ad75ccc0c12d130e07599435fdecb4bcd26655dbbec69ec SHA512 c01e6da44471bb0c0e2b762e80dadb2d69c3fde5fc8bf9bda41f6dbb19f20c94d7977e9a59a28a70eb48e05a235a77775b9253d68ca9ae95fee9cfb5e1aa3832
321 -DIST firefox-91.0.1-ur.xpi 572686 BLAKE2B 1b3952ca3196f7cabc28b3f898b13a16d9a0b04c16234e82174d90d77e772f4a30e266adc7a60afaa5bb67b5e80c0119c48c3ded58d429cf0a01d8eee98ac923 SHA512 7e1a35fb4fcc674b2f01b6e708d63fd17d035bc779c3d595587c6df47c956619511611b5a966b3335ac3007e1975de7399f9cada7a413a859718a0ea407bcc6a
322 -DIST firefox-91.0.1-uz.xpi 480945 BLAKE2B c2abeafd1326d072949393daa3563abf0ba638ee59b811989142fe2bcab711e354aab074272a7d7bcd296f328b080fb7e43d06873ec0e22bcb800f04596a4b27 SHA512 dee6dc7222129758602be663bb17d0f5bd0888bedb516970812983114db988d4c93f5452d219b29d9bb9e0426751b1967ea053a87c533f9cb8a56be66400c2b1
323 -DIST firefox-91.0.1-vi.xpi 580493 BLAKE2B 655227fb4bc61ecf7214ed185c6ff62cee36da6a2ea386a8979d738c40f05507dbd7b43610f9e634b8076002b7f3f3206ba776a8cb773af9bfa9e104e37c2b1c SHA512 8d18c04aa991c0d5b39303b14249c25b6d11adf871250d1639ed6a938d9a201dda08c15c56ffb4ea16288ebbaed0f5ae5b8c9268c6e4e0d936a86d9a2728b36d
324 -DIST firefox-91.0.1-xh.xpi 435057 BLAKE2B 02b8cd6ccd064c43111158efc842f305b497af8338ae633844dcb0c926dde913532b1df213b0c9f420a5ad9477e6ac26cef39075c26e509a76fd1c355e6d989d SHA512 01e6af744a5f099a79b6bd2c124a4c203fc494c8f3f63fa5b685581a258d504475b29767af5368cd4b1eaa5958fdbf17ef65d618613f720dd2b3289a2b304c55
325 -DIST firefox-91.0.1-zh-CN.xpi 581947 BLAKE2B e536cd392e3eb452f7de9bb708974412e9e34f862fb9213917df4317f331005f29300e7a486302584a8c2e59c03088b8f4a1e3d780549e9006a62f22a495fdf3 SHA512 d2f1767782b9f9a3dd545bc3fd98c08da3fc9d4809c5eaed088518e0fb766813acfb498442486768aa90f0ecc9ed9e787b805a268c6a03a8ec381493ed694e4a
326 -DIST firefox-91.0.1-zh-TW.xpi 582122 BLAKE2B 1cc357c92eb9a3ea42fc1c30e9aec966b6368a6c0ca60fa41415ff561d86cfb7e5bfaecbc69bc99b2e0ea8d93f0026c0c48b41b0fe06df5b784eb76bdf25583e SHA512 9927feb39e7bf343414065d0ed8e308e9c754c393d59d0ad7fdc8a743d20d7eeb315b1fd0a8f5e004968d99ce2fb1cac3344ac973ecb31257ad8052612cd0f73
327 -DIST firefox-91.0.1.source.tar.xz 389052264 BLAKE2B 5372d65561ef5f52b2d71d8b9401c2402413fb5bc027167356bb491ca3c979a5516da11f9b855a1d796146640a9f1308e808218099cfd64f9c3e61578dfaf348 SHA512 9388789bfe3dca596542b082d0eca7b1a6d1bbbf69eb97cc445f563d1a5ff0c9b530f3be02ee290805e311b0fcb392a4f5341e9f256d9764a787b43b232bdf67
328 -DIST firefox-91.0.2-ach.xpi 465284 BLAKE2B 1827b3beb7ee055d363f3d993a02a732363e0a8f37cf9ca15fd97f0702779a7a1a2ff4a7594b3c85034db42f3b50124b4cdf1e2b38e0fb01f1a7ee16f83f00e5 SHA512 6f9016adcce981dfe122282e5806ea690e615af4c2542f996813eeeea81bea81ec87eac38f12baf9e0daad19af546a65753fdedc1cb715ee93ab30250dd8ba78
329 -DIST firefox-91.0.2-af.xpi 433156 BLAKE2B ea445ac7e7b0080ee0b454a6839ef378359945b9aa6fe9c8e99accb8343982127cb42d64a7ffc1f24edd5f0358d3eedfbc58828bd1f3a37058ab41dd160db5fb SHA512 89866a7e818ecc53674b1bcebc7ef36af7b3ec8416cb8ad6b57f0ab4ad9a1445e99dd203aaa52631c5cbb9265adb9c13197abf593f0c5a4849660f40afa3e122
330 -DIST firefox-91.0.2-an.xpi 511823 BLAKE2B a0aee9d410bccda629ceae7cfb913519c31317bf2dae6290b36b764219154d4a7bc17dcabab0d7494b525edd374f5003f00acfada79d3efada0676a73c593963 SHA512 75a4a2ac929a629fa1392868abbdab4d3f86f94f93c15fa8f8029c84ad5c70054153a85b7fbdee47495a25efd7f829cad3992b3e87fcb950607a70fe58f1e48c
331 -DIST firefox-91.0.2-ar.xpi 573962 BLAKE2B 7e7cd41eacdeca1773d3bf97a15270249b4514ca3ce30bf44d2ec3ac19394f0e1eb1f0fafe991ae850bd35fbcccfadcb9a469f6af9ffae7c4fae9a8d9c3ef22b SHA512 2dca2e3828a381c08e48f5cf05449a62ce41d2ee5e86e5d74c6f128458e2ef7f748d8e93486dc40b942330e2481dc836bec38caaa957d18b512a3b48421f914b
332 -DIST firefox-91.0.2-ast.xpi 502953 BLAKE2B 129f446a8d4d7d704423426a22c2fc0fab4c11bab737f1395a8bb3f9b0b9071942e4d076e98fefd487f673da7f5fc7a7debd701764559132be8dcefc33328b5d SHA512 8af2bf2347ee42566c9e36872890212a08ec66c4b1d6eac97d43212d0b05617e5fdf8504eee6087344b4b4cff05b1b1e23b1433fa5fcfb9df6df7c0b8c57259e
333 -DIST firefox-91.0.2-az.xpi 500888 BLAKE2B cfaf3f2be8c9c2a99c68c91ecb05e2526e0caf6e80bf955708d6c6f35e0eb789ed8865e2c0343830865a201defb42ae1a09df8895bd38a1bc92c25e573212e51 SHA512 2e25186f03ced1a2c817dc05bef502b5eb62a46e58a42ef31f5fc8b1a6747e57bd2c132987e08aa4aea30745130b818c2acee0a685fb506d51964f6ff9348823
334 -DIST firefox-91.0.2-be.xpi 630158 BLAKE2B b01908e7234c26ce6bd1093639e6ffb9f184fe6bc9b3389bc70a405109dca768f98135e22989e7e071d6e49a61d9e5102d14785073cec6f458eabcfe54c1ac33 SHA512 589dd1b63468f2f6e08b769680f8217f21d73a2b16257eedbd5f100e9d17591476a7572a04e89c3a14e9d63662fd62ef9c56e9d756c2172461af015ea7bef0ab
335 -DIST firefox-91.0.2-bg.xpi 585089 BLAKE2B 6759da23207731cfc0ea46a14f64863c97aa8e1d4f030664819407a91c37b458b64a3fd6902f005c070aba5bb9c42f7dfd4f5752bde00277147670b728b647f8 SHA512 945b973fe302fbb7344e6152ae5680927ae4df45f9b836b79e9de89f0739a162a41565517db8591abe09762564ed07709c3b7175d89803df27b54c9308e5da2b
336 -DIST firefox-91.0.2-bn.xpi 576482 BLAKE2B b3c12715a82cad54cd607c3ba4d97f8863850ba52bfd48395376f48d11b7fb2854de003a4c497cc5af06fee31e52d9e5ebf150f7c28085b0e5033a65ab69d7d7 SHA512 899f6c151b0133d18516247549651fc0a008d2f8a5a329976201f5d60192d3715907c56848933c3f03883bbac86b1e933414379bcf207ec4d3c9ed1639e3d745
337 -DIST firefox-91.0.2-br.xpi 534790 BLAKE2B 66f419ae8b34b69c76e192f603d7b68aea2e9883fc74e1f24cfc010a5465cd3750310b29d06d674d861d634117efcb09f18e9fb186c12131a80db00a5bd95540 SHA512 6f97876cfa656d181c819beae2ec0d08bb13901538df0e5cfa27abafcfe43660b49f1db9e4dea3ac2da38f3a7f5925341449ca50c71cfffdf24aed9e93a94120
338 -DIST firefox-91.0.2-bs.xpi 473101 BLAKE2B 6228b43cfb0397be9d0303b84c17338a338e4c84ee05e578714b9212812066d7209ca11bc80ab16308a53372b202fe60fccb7792e520e14a0c3e4d2edf9ce342 SHA512 d3cd6bb28e5adc4a8effa3907c4843813d583a2d4a04c5ba1371c9b9cd086c38158b7aa8baf2b91c1f917b60b79fc2214bc1b956cc12996ba1d0c58356d6b261
339 -DIST firefox-91.0.2-ca-valencia.xpi 543235 BLAKE2B 80fc2be3f773136a409cc231321b21db4a7fcf1c927d460c4c10cd47fb14bffb9915a3d792d49646ea1798f164a7a00c994aacd376cc11c2d7634fefcfbd88d8 SHA512 e0a6e8d39d11caff521aad0fed3416a16097190b102db40970c63070eac4723831a428425abf9d6a1c4fb47ee18ef63cc3a7ef829938b528646f3ac14a46edf1
340 -DIST firefox-91.0.2-ca.xpi 541005 BLAKE2B 411c713142c91d73902d09667a2ee058a8f13c2ce7dd2655655a63e349176f15d998625a63b1b37e497bc5ef053ee5165f8a4552738ea1b4d92f541e955d68c7 SHA512 782878ed186ddc0e64aaed91c66f02d4387b2493f81357d73e6a7c2f2f5612929f6d2fc955b927dd7d12ef5e18f9890589691ea834ce6232aa60474b11e66d75
341 -DIST firefox-91.0.2-cak.xpi 568042 BLAKE2B 24f066877199909cbc65ae213e53f53f9393347d8ed16c09c54e9dd2e344715ee004d273e8a8720b60f71f993a93b986d0db80434e66ad9aeb7d998553ef5491 SHA512 14be651ab88b951617ae1f60b35ab61f4241268d261d9cbe2604e11bf2c4d0a8ccbc16a4ef980d88865d84112c4ff1577e7002b57a4af3cc1d90ccbf0693eb21
342 -DIST firefox-91.0.2-cs.xpi 571515 BLAKE2B ec03024b6e69364913f952b4ba56b7c4695f5067c7bb1115d7c27b1cf8f04abc7bc5ed023c3c5a6c673ee99356bff23af160a5ae642e741cb2b98b637fc9ed99 SHA512 b47773ce2f19f5e44de7ba59d27b01a533641d54b0354a2d0c1b4e6455f9ad9b8485f72dd03d2081d7780c2221c154b117b0f14e6669b2774fb11b19e1fd798b
343 -DIST firefox-91.0.2-cy.xpi 548289 BLAKE2B b0513e5f5eff768ad4061125a6de882a5046235115b115ec6da6e9d308b844a51482a189225c50906f675b7e47fa51cccd1028385ed69be809cc5ec22ef19ec7 SHA512 8eab5988490e1a0f396290f399ac47347bc269ea6ba6676a9e1ed6c52f9beb494687e1ee60eb1eb1b1a280be551c7c784a47925ce2652b4cac1cccd3712e14e2
344 -DIST firefox-91.0.2-da.xpi 540522 BLAKE2B 5c33f02e1940e8dbef839967276c9fe8fcc8011f814790825433c6960bb35e9d624af4c35d615516e43f5d65a2320266612d10516ff0d209ec49396f6154cd28 SHA512 50b8d81b568e1c29cabd304427ade67fae622d1a1af589773c148c9c2e45651baaba6b9707bbd54b1f103cbefcdd476ec5623773a9fb44fcb8c0a4377661e001
345 -DIST firefox-91.0.2-de.xpi 560089 BLAKE2B 47647865fa91e22e601b52ae2bcc8f2ac91619307551ef3dd260e258f7657d8ee164664eda40354a30e8c50be94402dca56b5ef9c53a2bc463c390130c8fd46b SHA512 8267c893cebec1cb3198045bbc5ec2cea821abbe8ade3488eec27b1d599d74de87df4396b686b509866f850dc3b996a0e665f8ff1e3b510f08fd8d7a9035b39d
346 -DIST firefox-91.0.2-dsb.xpi 572860 BLAKE2B 49debcc4b22fc28e7bd2b951b59898f4d60070dffb50f851759161731dabed3b8750424cb5d5517c9f71ef7c203b1f26ff370dcc0fdeae11fdb2a9606be4571b SHA512 bc045c295d4a33507a4037003e3dc32cd632d88c31c89b10543e5ee57b733659bee5ebcb45629fadf79ace5c6a47fc3fd9cc06aa2e75ac43edc3d32bcd67fe0f
347 -DIST firefox-91.0.2-el.xpi 646568 BLAKE2B 50a0fe00c2b14556f39d501232593289585213e66b65897f630e6688e1a3ab4b447ccd1634672148370c325712510e7dad884872360e8d8744db8901b51af849 SHA512 0e62e049b3a51ad1f2a2a95fa5ac62996a3e56a69a41355bc74e6af9ce487ec98e89a15237b351878c9a90f34f0ca5ce14d6d27659f432eafd11f960b4fa21a3
348 -DIST firefox-91.0.2-en-CA.xpi 515736 BLAKE2B f0de88e7c171910287fe40048c3c4e70c65856e6c7d6af06ff92edf4b0ff6600678f0f51164bb59b2315187200783068c0b28436d50004e64b944dc46c086684 SHA512 6b9b6a4fe029df7a283d78237b23f69bb57e84ff60055843dc422795dbec4fe92a396344c0be2467be7764d30f19d993c4af01e6935da688ad503090714ca610
349 -DIST firefox-91.0.2-en-GB.xpi 515982 BLAKE2B 034e89bbc4419c77913370b19f587b437588aa7f9ec27a84aeba27887ce2e31e967d695d67ecb725b31ac0d84e3fb56eb34491927cb4604bec658883a55f6a47 SHA512 fee033b59fb4305a373a902519537ef3293c74ad5ecc5016ce499bf845400d34e7ae5915ff5f95a3384f5eda20ddee97578f9c1d8c7f055936c4800e5341bfbc
350 -DIST firefox-91.0.2-eo.xpi 542048 BLAKE2B 374f51c5979d382e73c0bc4cbe7e4ea66112b4cea907f71cb140515632852a686ff0f3a1febd0f74e4c2c536977e7aec0c0eff43f33fe61ebaf3aa96238dc0c1 SHA512 cc0049d2b4b90833a66affb778a3481c1de0816bda7eb150616562c43fca9095d2d5704cc4c9edf346f29e30471c83848d15500a319caea5b04f7df8c0461708
351 -DIST firefox-91.0.2-es-AR.xpi 553517 BLAKE2B 311b2b0e5f4c0704b2bb993bd9da749b84c4780fe0b4dbfd960c11f6c0e33ac5b74bd7d88bf0e8a993019f52e093e5b5915d6a05660a655fd189363415939730 SHA512 792532867883d33fc234a204291c9966b06870db3d15d8710beba6be7892ad5d7ab0141191390372b44042f9ab6a3ef81c113ab7a6a675306fbdaffd2b3378e6
352 -DIST firefox-91.0.2-es-CL.xpi 552534 BLAKE2B 48891168c9de04fc35ee63cba20c0f0c03ae967e389a5cfdd6f6984663ccedd28d686f84d8ec4880b41938a5e64833c635c51b9b63c247f340aacc010beb2aea SHA512 e774fdbdab10bdaa97d81a8e05963b60921143aac2149cc03aacd0ad8b89689882617ad3052b78286300a2d8c44fb549577cc84d78048e725a7ecc1a831470e4
353 -DIST firefox-91.0.2-es-ES.xpi 542522 BLAKE2B 62d28273362e360317562939cfead517c5da7fe2d38b0e13123992e67dafe5ed4c06a5c426a28192719bbe6aee6cc59fc6d8e36bea10f8e544ec35e12c62b0ee SHA512 c50e56de633f981f0e8e5fb0c82f5ea0e347d71434bd467aa56c131a01d605b44f955e6cfffddd0e9a7a12fef98d811830d032aef2ede7a3b8576ae164e8ccdf
354 -DIST firefox-91.0.2-es-MX.xpi 556676 BLAKE2B ed87e4b73f9827a31c4b257c797f5b117d37f436ad7876f6aea71052ed858b700f535597372a49db9297bf51c8cb2c3a053661642fdbc228beb85f63d6542c65 SHA512 e07113691b8fc1a6b798dd8327f95d725f635fac7e198fde00f833528a073c69eab6b88c7e1d4c50340475c7fe2c1416498ca243cc6843bd93da8ef1342db95f
355 -DIST firefox-91.0.2-et.xpi 494142 BLAKE2B 4e8ace24cde2baf4826334e0fb7ae7209893bace1981f994fe3dd1c9b1cb4e7384eaa68db7974a8dfe0db2cba6ee468268f0852f47db81b975b02cd09c77185e SHA512 1f53ae61a22fe59935b7b7be506f466909e27ea3a541bcf36174ceea89bce56fd35b15372c7adecb92173e87ca0706c1bd39011fea40c136768410d9c2d49d8f
356 -DIST firefox-91.0.2-eu.xpi 539046 BLAKE2B 93cfe5c88109054e09fb0605d998bc4ebe9cde572332ed6fd8cef517e5afc50596175a08cbd041dceaa056c5a419cd494e6a75a2d19c54603b9d48be5b357424 SHA512 61bfe155b5abbcf15739576928e2f4f84f4898911fb862d2d51d45d4648d0f5ebfc7fab0770f64b295dbf604d6772883884d3f908dfeffbf6438f44ea1078f63
357 -DIST firefox-91.0.2-fa.xpi 561638 BLAKE2B f277a445a109761dea17a8601b62c1d03a53855d46ba17c5129aa5732695663499ae86ca279a1581db2bde6ee1b8dbec09506abb60ea8c39dd4550bdf735af8f SHA512 c0821849b254977c6002b92f0a48020476531f6485260155ef103e4564f6628f3b097c24877cb86adfa6ab0afaa15786924e65e3f60a2284753f7ba52514eda9
358 -DIST firefox-91.0.2-ff.xpi 485699 BLAKE2B 1d372646848dadb64a1ea0f084e762b8174f6f815fedd265dbe0b70af07a7fc472cc32ae755b18e4b9af8257dce5bfc18f67526a997e17734b4277573684b310 SHA512 bc34242897070e8593f8024f795d18e049fedd448d0084aff7b7d4765bd4d9b9458bb692cc54eae15872ebe7d2f22a00e732f1093a7628e216d4ccca0ba4615e
359 -DIST firefox-91.0.2-fi.xpi 539811 BLAKE2B d09217d946f8fdcdc9dd41b4d5c5bd9d9d30a37a1e1d4cc85b37c90d5e3a7874aa58c8297c7fb10ee437f738cdf64fef338c4aa0d92733c5f2c4a9aef877e0ab SHA512 4d87dc2bcaec4b3a1d653797fb3a56a609931ce3a24ca277fe0a050d0fd7336e5ddef881e03f7c161184c857aa0d361a7b9c80258ab42bc4e9fa73d335a8d8b1
360 -DIST firefox-91.0.2-fr.xpi 564055 BLAKE2B 7e6538a7246179fea01b20361334a7ce429e73f6cb7537c096ee512acc77192dc0e39546956c1cdffa9b497e4d14ba41ad38c5f5b583fe42f57032356086df28 SHA512 aa25c36a732d512c4d686698f69ed1467d82c02eb4476d8117959683f7aabd1ca580019e0450c39ecc95916b9e2765c4eeb5a94774ef3ca87e047830a8756925
361 -DIST firefox-91.0.2-fy-NL.xpi 549221 BLAKE2B b8b836dd7fa5f4f9bc0fb5ee9620db0ad2d1606ea26f49344433fbabb85321cfe760412d02fd61c010be25bc92f8793101e341527b8770375a20adfcc3c25666 SHA512 b452811f1fabc0240141996c393d2e0bc04a6d1163aa32e9cbcd381f2d505a0cc6b4d82192dfbfeb671346e111db16bbd6bf73712ce7015a3c4fbdcf438a0b2d
362 -DIST firefox-91.0.2-ga-IE.xpi 470699 BLAKE2B 1da8c8d70e28dddf138b6750b6bb5b03ce95349e1108f14e395993aae0c9c2631b40742b10ff4b5763e2d5c145fc316ca2394bf14715467e4ba75b542d51f23f SHA512 2d7cafdf455cf805ddb522152238dde6261964399f60bfaacf2c6cd70e54c047ae70fd0952254d34b7b1b4f9c85162687684f5e66c7d60ee0915571b96c78c84
363 -DIST firefox-91.0.2-gd.xpi 545686 BLAKE2B e6c5552211ca1b07426ae79e80fe9be7fb516ad831c4bb303f0aa1bb7e3f648062d0b29c9a617ed2bed3310dc51a28889232b4c413e93c6623126ff4fdb7a075 SHA512 5ebde92fbb0697745e8b8cb4d0eb40581a2a54f18fb967a90cbe7d90bf22ab9b1a40d04f7a52f1ef96c349167a4a50ef02476a68a5bf5d9fa911893a3a90f37b
364 -DIST firefox-91.0.2-gl.xpi 548390 BLAKE2B cacc1630f147ede28dab1c47d1eb4442077d0126fd5e02ab06572f33004e50f43a0a7365ef863ff0b3f983041b2b915cd34ce674c56602616912516dab39adfc SHA512 644cec199ab6f9919b82b3d903cda3fa12557c9e7ac0df4e4d41e854d04f54fb98775e80d052aee6a840c1de008c83390c4402cd3a0703de1edd94ec7ec37a37
365 -DIST firefox-91.0.2-gn.xpi 565276 BLAKE2B 7053cd1585af3a9f755a1f09132035e5b3e39f9b293364a411028fda8382dfe9ad91970a748c52dcad35fa526ddace25e0e032032dfcf8cd2008422b54be5117 SHA512 ca0476636fded14809fbc8549305b7f5d42382f973704f04fa6bd1cdfd378ce4340046a8ffc7959caf5345a5955cab235834d7830f77717a759e9404c8b74ba2
366 -DIST firefox-91.0.2-gu-IN.xpi 544513 BLAKE2B 414c5705c7b9116754c7a64b9b270d5fdf08589e50993643165c61e2a0874eeec5ca11156c9dd8bb7ec2edca05ba0c476f4df10927907b3a10aeb4f4a6a4f509 SHA512 2fc8ba1bb037a70e20c3914f304aa8798fe4f7bef9814d73f21df7e4deb2abd708ec90fe8c257640d66249fb21efea3226564416d326705f10258defbd84ccfb
367 -DIST firefox-91.0.2-he.xpi 563140 BLAKE2B f4a9fb78602318778be27806f67afc4d638248472386dd5f1140cda9922a3d62439d06e1ebe0b19ed8adf86f256bac14ff7cd5a53e6fa82ab05b5f596813e2a1 SHA512 0100acf0f6cce50fb382ba9e70c5b95e3862779308a6f6038726914226f1948b556335aac498f2737217f0a77037af2545788515bd1ea643af37c855ad0833ca
368 -DIST firefox-91.0.2-hi-IN.xpi 575682 BLAKE2B b93b1cfef22c48dc1fd7c1b6cf2f6198428aabcd19a002bd60c2b17e14cfa68e93253391783c179f20a4b619cb75ce2b4b09a58228525f73c8c9376075476bfe SHA512 8f9b0d18fb1ccac2df13faba3b84151e222b717b0110f3bed4b3800848bfd165c42388e3e81a76e7bd13356cbc1a85f4b6b8676f2c0179da3847beea5c7610cb
369 -DIST firefox-91.0.2-hr.xpi 544093 BLAKE2B 522e7738189dfdfa741bbf6e071a2a0af759830b9ef055d6397f22a95da390e6a22d6d08e4c5cf61588d8d6decf0e986c80be0720640c56d5081f9eae373bab6 SHA512 3284e8570ed98d6d453d87fc3d0805015b5219c4dab9d5413622a5bc95ff6026811b30a6e64546b138884f9e1bcdb04144efe6efaca6666ad37eb0a89ec1ffa9
370 -DIST firefox-91.0.2-hsb.xpi 568931 BLAKE2B 02948484c3d21a10bb1811921fbcc9a2e1d549358ba0436d4958edf85a5f3b5580d011ffa98c154c79c2349e3dbdd04f70993e70a62aaaf3a52d0a36d94b9540 SHA512 2767920e501cba28b842bb358dadea7a9b992b7324186dd1b4e6a8f3da404aa682a5f1e23d05c3c3ba79d5bd0550ed6631c07ceb3d35ec223974e6608c778dc4
371 -DIST firefox-91.0.2-hu.xpi 572766 BLAKE2B 85196c0e3107768d3b50c32d12a44156bae2ad7bfecd5f3588c9fbba4d122da4d8fb09bb2e9582a7c35f19e74f8622bac6e791da022f151e37727a5841c1b6aa SHA512 15be8f755bcdbd1c3f2ddb5f5e6861bb5b5eaac2fe6590c117b48d2a3dc841356d96c1385569a54eefb4232f3e0b9552f0082e9921f5dbd62a85e71519b4552f
372 -DIST firefox-91.0.2-hy-AM.xpi 599014 BLAKE2B 6a08d2427f3ed840cd88575d84e862bfc46998e6c1f5c51ed975b4e7f7e2f8bff373d11b59c71fdc4da34ff16cb4ac81ee2f803effd7e8cb4095086f6c43ead0 SHA512 6d6edbb1cc88a9d4af446f7979b559ec9fa848e6c89d45f00e0cd74278f2c0863bd1f7c78710c0238fcac7dd9fa1f62e79d9ef04931bf2df94d1899eada3c913
373 -DIST firefox-91.0.2-ia.xpi 538523 BLAKE2B 078f874a0252b40d0817ae333d157c0f18d9b3f84da9778702ef2ff96d55bab94395cfee04ae8b292fea36f7c8f7f3e62aea63a4aa4534073525532a60107760 SHA512 526712c639ced83b42602d160d020d66a1b5381db15e3be500d121820a697c48ba961ed5b874003e1df5b819da28107f620805b630b4fccd85613229841ebe47
374 -DIST firefox-91.0.2-id.xpi 533874 BLAKE2B 165ddea29605321b3296ade87e8cf276fecc45848b3df036527eaacb566ec3b44ccc5a90611a4f815279e0aabb06eaaba6c8b432460bc6bed8d92bf63247b174 SHA512 333874f55731dca69937a4f43fe335c0c066af4506955af8eb3da82764c5c05394f359429ee38992c51a714c7d7e0f4427235d54c52f176865a03b291dbd0bf9
375 -DIST firefox-91.0.2-is.xpi 481340 BLAKE2B bb8c5840492f47ef79c763e2677fbafcfd90b3d16c54f9492958fae73c12f575265873fe310dc9010fd55a62d42c74572351a828b78edbcd479aadaacba5ff93 SHA512 d74497fab93316d556002558768bb28ca26d39198d745e9d252b6c97a46179e9a33a207d0aafca098ee83de79522d5e73d75e1fbac3c0f83ebbbacd3d2d0a7a0
376 -DIST firefox-91.0.2-it.xpi 467043 BLAKE2B aca3186e0e425f0532f9be8c647c44f2edb934fdebfb0197d122e921e181093ff38485bc9f9e18e32bd2d3ae68a23219def152d00d0d435b7b643832d635b595 SHA512 070fadc60b7f06591a1e9714a12f3f60be04f6fc42ed4ff8713d8755fe39c1a99345f8e9fc0bdb94a825e5cc582e7d671275946a125597f08c57152927bbddf6
377 -DIST firefox-91.0.2-ja.xpi 599312 BLAKE2B 4535634b3469ee7e76f465ce87cb82baaff44bc69bf9b95c7691df876df4fe91bab899c48b3bbb2b665eef8259aa83251aa3c184b0296cd431a8e6c6ff82db0e SHA512 a1e813820de9b5e44d7adb18f1451c55e62924ed769e394b9a7b38ff24c6a96e49f674402e76b53eeb43d19e597f7df9083f0158987462157f48940808d6f057
378 -DIST firefox-91.0.2-ka.xpi 600142 BLAKE2B e1a2ebaa905ae3432c06f448f4a2e4414caebf92148abdd52d8077784f5d6d5c63770c7c797d5bbacf206ec7f5ed6410dfc3315229f7e13f67df1b225175a434 SHA512 d99056aec02d3c62a3b6fac4d44bd7bf35edd73de32500f9dcf2ac5320d6fdaf93bf495303873dd725d80651d393786a3fce5d7eb68ca5ecfaec5be199c9f3e6
379 -DIST firefox-91.0.2-kab.xpi 557813 BLAKE2B bd0baf375f7318ce8f88883f52368b0d35132674ccda5905e2154b03e493db6452267069b482c290d3db005bca450c038257262207b2547872d66136a0d864a5 SHA512 3afa8920925b1c54d7b37b26056bd170e246615544bd4e3efdac9404602e4c17d6b7f019c56819f4dbd53505bee220e7edec91d85ed442fbebccdfee7130b6bd
380 -DIST firefox-91.0.2-kk.xpi 614348 BLAKE2B 8cca4eaea30764e7156c55c13118d5ca1d9dda845be7894fe2bcfc734ace1d967e984cafd8e1a522298032a7f1f345847d806429cce0ea157ab12566c8f70d06 SHA512 12753ddc8419b830a0e6af938399902da277ee375cb29a144e32c1a71c5c5cb314c308ed1283bffea4127b70e5dada7449f141455fd148c0fbe0d85e56a817d2
381 -DIST firefox-91.0.2-km.xpi 544983 BLAKE2B 648abe7d2f3c4dfab206330886bf64e9e5e6a121612ef8589bd6f9bb2ce0f74a2db5336098e9f7b15fd959bc562be7aaa6e5c957f7b601ceab0f06be9eb5e7eb SHA512 5dedbefa7d088c87c009263ad6bf11b3c739478fb993a1b94fa10fa5d0e8771fe92db7548e52618543340f7d42774faf15a9ae834011577ad6a4f45d113163d9
382 -DIST firefox-91.0.2-kn.xpi 508521 BLAKE2B 70d6936f6b213428e3a09c94d6cdf9ede084c9c96dc0dcf43134bf31f1bbc356cc69354c3a6e9780b5f208e6ce254f7e307d31f39d2d38660260ad374c438b5c SHA512 e9bc6fa8cb3ebc9cd5d6f289b2d7f31a8f9063cf84819cd5e56e43db7a2d864ce2fcb09cf6602b53dd6cff595f62f50caa60343efd2ebed84c0c87bcf92c838b
383 -DIST firefox-91.0.2-ko.xpi 584343 BLAKE2B 58a4c560788b2b8f9c7e7f577cab11c7ca34cb243685bcecab8b8a5453f8634289b61b30c8717d2487d3ba10f59bf76a09af4e156fa7cfa4c2b7b81453355638 SHA512 7fbd65d20d1f72f6ce83b8efc2d2d37515360060b2a58d0395e03eb297aa136a13f919187b29027512f7558ab489cf73d7edec344e37a91578a2c03a346d2f7c
384 -DIST firefox-91.0.2-lij.xpi 481930 BLAKE2B 52dbe2aa33ce053073c0c157471d5c6be9c94743ec90523687f8ce70da96c17f64a59a1cf96c78f810e86a64b3ff573b366742184f617d7e4d713b3a8c85c564 SHA512 463bfffdae4e4969fdf9e1629dc44185e4774dd786d0a072b4ad3214230f0f6c8299b129b1dee1859a626cd2233e5c0af60128651b7722fb50b7892bcc873225
385 -DIST firefox-91.0.2-lt.xpi 567603 BLAKE2B f073ef003588d3fe0cfee368ddcfffbae6ef0b1a233f4e0ac9637b76b4724db5cc2452373098552103523d28426e71c6ab88149f0599cf40040c057dfc61b45c SHA512 664557a9e4d05ceac2fac9d51b89a672824b83eacfe14744cbb639866ae0efdf743c6d245f5c870dc97209b015ddc9ccc2feec9b71af717355f5073fc0fdbb08
386 -DIST firefox-91.0.2-lv.xpi 473333 BLAKE2B f53f90bb380bf60d960c998affdcf2d250fb84da847a6904d67a54f437e0e0c522346276a3db6967d5153998ddccb1916a98ff70ea44182117d300f0ce950582 SHA512 d59618421f4c3b8dd85e8a2eabe08c3a858eb3c8a06dec84da7451c4f12bd0a1161db3b300bae138558b552ebf5bcdba18494272b08871b4d7d1d05d280c7c34
387 -DIST firefox-91.0.2-mk.xpi 473479 BLAKE2B 6ff5f26980802fa7049fd550e56215807dda08fbf248f77c2d4d06255bf5d7c2897b5337582276b14ce7b11692c04c442d746559ac04b5d901dd6e53307e7cc6 SHA512 f8902b73f7dc119c960bf536817c47589f7d9bf4fad73ecbbb173bded865e96beeb1eee891ce69d4cd7be0732f7f07bf5a43290d79e32acb3b1d77ece720f1cf
388 -DIST firefox-91.0.2-mr.xpi 544869 BLAKE2B 8063812be027d53982c5b2c52c576622c4b5ee8add2deede210c70eb3a9fa77b4b82d8f78c2277cbcfec64955a76ef7f91d290b354aa01275c6d98cd15211b6d SHA512 75a95bd65b7caefd471a171fa56ceac1dcc73e65fb62d89af71da608fc44a802d3e239546f78340e9d61335765183dad85f1593cebbcfc7418d0e467a041e3f3
389 -DIST firefox-91.0.2-ms.xpi 457203 BLAKE2B 459bc8db9573053491d7708cf7136fd8b25f0ee406f1058d49b46868242ab2fbfcaa00fd5dd97bba830dd4fc3d98eed944adacf7fcdc3219b35b438bc76625bb SHA512 733971750312670a2345c3724585991e33e65d17126bd699be7c115da6f814700db01411776ea25adc2ee47ade78d6f8f18f4aa0b5e301dc749de5c1c2fdff26
390 -DIST firefox-91.0.2-my.xpi 530145 BLAKE2B 42909546ba46ed0e12a93703cdf356407e2b1bd0296d74748fbee32415bd1c8cd647602c7c7312eff94b31ef27fcfe9fe947dbbb999c10978c06027d6f90efeb SHA512 c24deca71aeaf03d083767b37758da97c20b735973bc7373d791b7d4f2d70175bd243b4ae8b65d3fd277cdf43d65133d7c536dec6e23aa395e68547176364ef9
391 -DIST firefox-91.0.2-nb-NO.xpi 534986 BLAKE2B 6393d435d9bc7f6afd76def4ebb3a03efde327a3bb8a3fd84eabcb485d4fd340bd0dbd84918102ff10fb9b5e9f3a5783d2404010c448a3eab34e0fcc5084b35b SHA512 bba89b13817da879d2fbc029dd42753122ef3ead9f24163c57f6e56daba4d83c69ec117dc729a87a8d217b073e0f623007e05bb5f15c5cc579a7a0c254ed9ad4
392 -DIST firefox-91.0.2-ne-NP.xpi 486178 BLAKE2B 22793df48a5a2f62169a441934aa8975470f7765b32d6097b19320c3cb4e3890cf95f9b5a91e7590781e342bdf0fcf26ce4949208fb8ce89001b4d3bf3adc5db SHA512 d4b67b1fde7c386cf0df744194e72df12e0341b85678378762d15ab86d0d9d1e03d9d251705986b5cf8bc67aaed54694d719b73426a2911b0ef3d1d00b76c14d
393 -DIST firefox-91.0.2-nl.xpi 543375 BLAKE2B 7089b4c42afb164560e45727f655255c8f6d0c0530dcd18535524520a9b011aa145f097c0d260b5a16df007ecca58dc63c8516ec55aee2559a5217b120c03db2 SHA512 5668f48b70798f5da84951c1f95ab60ad2d7e354abdb75546684d0df2749381c68ce0d3f8e481c29aa9d7e942cf092aa03e3967cd914dd8abd5c7f8fa7ba7366
394 -DIST firefox-91.0.2-nn-NO.xpi 537542 BLAKE2B 9bbb693c26e3776485d816cd032ecf380f3dde7785b9994f56c06d194127993bb22624b3d5a2d9e7c300b7676f9d1e8cb9627e9929cd80bce39c030e656e6949 SHA512 dab9c2c2bdb72fcf8463d82a351746c9cafa4b3400493098d8ebbb5c611a6b0563d070e36d7cc659351c45212551e7e77af023c91e13691d88a70afaea169484
395 -DIST firefox-91.0.2-oc.xpi 559028 BLAKE2B 341ad88da64ac06e86cff2ff2f2b3a31e420a1529e64f0b626c0374272d123a808cf47aa30104bc3821488d1051f3020fdb5a91c5ad590069857029b39d64038 SHA512 7fee4a09dfcfdc84372faa8ade371441985d235c73e1cd0349c7ac8d280ccd5f9ac1efb86530cb5dade4face156d6299f8d14a0b3d7972a49898da56b816a5d2
396 -DIST firefox-91.0.2-pa-IN.xpi 605086 BLAKE2B d31232b6ab3154ca7c1b4f69308c24fd9fa7ae5e367e02d089cb8f759ee95397b504f6a94c059b6c822597fecff69703af59cec5f299fac62b97c396ad132a06 SHA512 86a98ac48c729fb308ece202dec5116732dad5b13c75a8fcb6dd4a3e7f1888f432a5aaffa0b4fcef7de409d3f5d2e6e32c4b762f0e0c2e932d5510361835d0d4
397 -DIST firefox-91.0.2-pl.xpi 562852 BLAKE2B 45177be1a73deba99c21c00e92607567384fd93e632803b4babd3f6d0b2d4ee7106bb3cfaa713b44efa0f667bb524c0d4b0ed14f2cf3aef2ca46869e5dcec60f SHA512 913c5fd1618e09fdcf404af08754022249ac4dc3580efc823a3ffa14876eab949b28c41ea99d291d59d0012cee5306509108ebbcfbb97cd1d3396f9510831d09
398 -DIST firefox-91.0.2-pt-BR.xpi 549002 BLAKE2B a12c8b2d7dd6f5228a547a79f5f6527cbce47b599076d372d87501f8b965299c538072dd1845efa52f94c579506a82129dd5623d3d66ec8f7a325aabbfa63d9b SHA512 4de795d87061b9e4e6d484efd765d2cd68b68b98dcdcd58382095d8e4d7d3051650da3a28f01b632b5eb37c4c3e5f50f0a2dda3c97c02f5dd2097d472c957de4
399 -DIST firefox-91.0.2-pt-PT.xpi 552653 BLAKE2B a6b625df698b8dbb2686b140b8ad89a6e547197b91d397b72ce03b27357f037529eb4b9dc431b5a6c785f365dcbb0994060b87a11e77daad069687c7f39fba3a SHA512 499152aadb03b3721dda8ca4f1943b56122e4cb9ddccfc90d1eddd6f7c116ba2f3746e686ac1b4057a2c3a821beda3d1d6aada651b545fe144b5c86f3780bbce
400 -DIST firefox-91.0.2-rm.xpi 543758 BLAKE2B b5c6b7c255cf47d565379c2d09978d54fa84da46b29601c3ef23dccb244417080f22e6c18e96fdf5ba4c657da8e7f3adba1f1b44436e40fd615b4f2ec6ad70de SHA512 f3ffd1514fa4d664cbb5e0d1a3caa1c286dfce482665a111504d72c5e0c1f1db2148552c24e7daf801317c11732049df997134c481de790ae2962fa3c81a3183
401 -DIST firefox-91.0.2-ro.xpi 544870 BLAKE2B 638192c620112619abd447597f9d7db7bc09cc5b1fc7bafc1986863ff0904f78695fcebb4271d3ddb86167436d98052aa2b7fc5fdc919d1751beed00204c0f85 SHA512 b4700a3b946df0210683d463fc244cbe345f4ab34b4240ed746f15096a4a00448bbe5a3bbfd7bed1909c7df39cb9e234cf33db3650096a8d1b34767fb6694f81
402 -DIST firefox-91.0.2-ru.xpi 635037 BLAKE2B 1173448e8346105bf86e91be2467c5d5baa4f0afb8f79d83197acd3ede3fa88505a7f123f132a7dbab13c4bdc0aaf095815cc943056a1152569407b7d51afe63 SHA512 5e18f24daea284a47ec2a563d790e3dc8ae44ffdedffa684f737daee04fe480eedcf4ff60481d8c76becd0d1c16cb80954c612aa00162cf40390f9f2ac3727aa
403 -DIST firefox-91.0.2-sco.xpi 512252 BLAKE2B e91cd10d8db891b75f552cae391b9f20fc93e77ef9a01e13e3303425ec4758f63b5cf8806bbdecce2434f471f660148dc16c2bf9b872732f8156235995341809 SHA512 340626f186c46336b1b36c14f1b4e56d337ec0e04fe84a8cc2293b1cdf7b385d2068825fe81952ed28b983ad931a8e56d0e1828447a6fbad288a9016eca38375
404 -DIST firefox-91.0.2-si.xpi 496840 BLAKE2B 3609ada9163696aba196d9748e97f8e6ea16510b0f55145d23c16d8868def2236a178c4b429f0bf9f479c75ed83623e306443e102dc82c87be35de12fd4a8fde SHA512 7dfcfc0ebc6c2d9651c3274abfc25d100b451b55375a9e9380cc2586531ab08c0a5e1ce4d914f8b846f3d4f8c10ae33fe66c9d04817d01d5e7f3ef98239ea6d6
405 -DIST firefox-91.0.2-sk.xpi 572088 BLAKE2B 86020743034e7e00783038256231e1bcb3f2054d3c679db716d71ecc42e5b3be18e3151180250f82bbd03c99d72b71a886f5d8cb7b08da4fe596fcd1de62e5bb SHA512 5487d0ebf35a13368c3f2c4c6e933953ad43938f98a56660d7ee83156bfedfd5f766b8779ae0980aebebe6a4112cc3e90ad941159fed6767c4319c4bcbfed873
406 -DIST firefox-91.0.2-sl.xpi 542792 BLAKE2B 05b78a248eecd982251e83aea8d4e180388e5ba2424d8642c8b8c37e9024622bce4c7e268067bd2c959602326f7ded61f3268c25c6048abaff277f6eb53dd143 SHA512 684d20192df92823fdd853d8a79582748e2c1f3d95d40b2896952b931b34feaf4eedf222aea640ff576f0fe68efb661a48acfa616263a3d41d9777a23ddcd992
407 -DIST firefox-91.0.2-son.xpi 432937 BLAKE2B 592a2605a2fe3567e0dc5020382c3cad9ac152cfdd3793c679a1f776983cd9aa4cb83d59c39ff3dfca8c0e70c98fa8fa13ba5a11eed74ce906e2cd0c9f955aec SHA512 cac2639b2358550d50ba53cea726dbe65717d40296d63dc0eff85bbebb3cf0186c70ef6e8d83857e61b06bd5c425c1a72aec34723541e2aaded96ae6838e616d
408 -DIST firefox-91.0.2-sq.xpi 562223 BLAKE2B 49443861d6ecd85d6fe4383518a0b65b57055260d326778497042e771f62cbb830dc479e883fa154dd2f2a2dbf4061fde46f137f14e63b8bce76d4c90299f13a SHA512 c6a65bd7fc49ad9fd5af2c7b8b86c42a90b81074ea16411adeb6794195fda74cd13fc61762f0962ba6252da8011c8279deaf2352ec9be3439254fdc38c398d45
409 -DIST firefox-91.0.2-sr.xpi 596028 BLAKE2B 6ea53132a28738d54446b82fba65317a3f9f493f185f76595067d29a84551a69995d6676150946dc52df9df5f6836476d578b9609bb04f7ceda77f9bd8723e73 SHA512 c4e6b08d0e983bae2f76fc8b5d3c301dcb8103051d7d7d1766db7981972cfa8027cb178ddb854be6a95c4fb9c2b4a82336eee4fd5d4de7b6af4e98ad8d0526cd
410 -DIST firefox-91.0.2-sv-SE.xpi 546389 BLAKE2B 20dde060f8e0bb1a0117bd8d3135dd5593720eac58a946df6f6572fcc1a3c558052dd8db4d696b3c56326685af149d02ad023388539f45c71c959b0e5c24671a SHA512 42f66c348933a446aead3dbb115873e52a7f8ce428b75065ccac8e6bd6a3332f1f4a5e9fc30fd001f7e6fbce4c20f50c70f0aea52fe4f3bac605a1b94ba96e45
411 -DIST firefox-91.0.2-szl.xpi 522374 BLAKE2B 3100df810f0b26de1c4ba3e868e6855ef444654ddae1f15b1b28ff721f64b5807eebb154dc41d6d7ef30184e35a532e3357229148cb502e2a34a2b08b29060dd SHA512 4434ca0704390113fc22bcac26efdd376643b550d33f070493b2132421281983f1e0b4823b83319a3e11e274b9381d502fa193d52f7efe883ee6f801707b6e71
412 -DIST firefox-91.0.2-ta.xpi 523941 BLAKE2B 2c87a6ead3ba80ae2d31353dedaeb6f58da25751684e5341517720690f8ab52201259aad7ce33ed78816d817a5d3a3a2147ab3bba6513ea044971a8f7f273cdf SHA512 9c24dd0b1e17623af3166ca4078bee47a6958cd9287c8719a525f1c5ae8a88bc21044e8e83675c9e786be93fe6c1a4c30a91f1f68a880eae2351b4ad3bb050b7
413 -DIST firefox-91.0.2-te.xpi 564760 BLAKE2B 314220ed7b4ebe6bb27d740360b608c4702051a6f2762429868c9a116c568f87ae34eb062d86782e0e753febc70daf02ae844c3fdd3f1ccd67d13f2a4c404ce1 SHA512 4170d39649828e1c8395fdcd1b0e5555ca2ca32e4003c68ead981b108ac98c5cf955bcfc74486c3e940d8e5ce21c9853a7fda88b98b50698a979f7258d4bdeb4
414 -DIST firefox-91.0.2-th.xpi 614152 BLAKE2B 85b298f4dd95f35e7681fec5a736c3dcf27bea72d0c319292a342a8d5f72dd8764d02c98aac5e0d49326ac506cd8045715bbe8088e67062c97ec116e1f32779c SHA512 0ea959243a6edb9433bf86dffa7cabb09b4b69dbda218a4e040625c75d543d5e5cb065dcf6ebaa346b347abe6cf0d76237458cae8fab04f1ebef3e8a9320de63
415 -DIST firefox-91.0.2-tl.xpi 531316 BLAKE2B 0946e102605fc7c05c7e883b693cfeca11204f4d1d0793864e9c0f7a5c573b04f1714a72094e8e78b4106889068921a1c13b44ab77478352310c05507de9a087 SHA512 8f13de4fd691937296bb4c3e3d67b2d826b0e89ac0a972cf4ebe2bdabd4b5539bed9455a56f6211067900b9b003d388c90d96b2b25f4896ee9c78814a7bde6d2
416 -DIST firefox-91.0.2-tr.xpi 558469 BLAKE2B 1f6b73ada217f445cc9eb04358f7d6e84ffb20283d4bad63afc735536851af4a7198cc2a4e32a8c2b2659d212b89783844e006dbedc1a613353f76a523a0ab38 SHA512 c947f20755b5691bdb115e15108f6a6783a74b372dccc6912749e25ded9d01e463b4346bcd1b8d2d8ee017c95573b27431056ed3878c547b36be81a8f108fc9a
417 -DIST firefox-91.0.2-trs.xpi 503653 BLAKE2B ce6c5aceeffc3ce0f3980d64c6111c917ab984020d03b18302422a1db3dc8f9d56544e27b45dbdc12d4f394f41d133624932e390c358572b1a8f5df780d62717 SHA512 f1b16b1a9e97344d6f0326e29939ccd9a2e71dec21748310b4c76ea4ccd130f6e3c0ddaef7596eff073315d8d57602c12361aba45e85785720e73ccdcbf0768b
418 -DIST firefox-91.0.2-uk.xpi 628579 BLAKE2B 1276d8d95c61ab17748b3d5809b4fa1c0606b7eab417888e3e4f822295ffca7e1d5d38c6c3c5ee83b2dafd3fbef2462b942c245ab13e90775e252dadada43740 SHA512 314262e929bfeac9908709e01b78f0a42a9317e0c427cf47f87233353dcbee5ad12ca2b77a322c8a1bd481d43b42d133784170e5335429cf11ca16da838762a3
419 -DIST firefox-91.0.2-ur.xpi 572692 BLAKE2B 3726bed6a61448343fbe39dd952045d74ea16e9910c1b4712e0e4145fc852242b675265929f06f4f32daf31e648438cd95bcf2e3077005f12e21b28392283402 SHA512 f0d2ef0ee280096c905b29b8cf81e8a561d789e51b8cc45ffba4f56a79854fc0a9d28270fa85d1db85642690bfb1e3d8b2c77cd04fb81a0ffe5dbf3e9198c00a
420 -DIST firefox-91.0.2-uz.xpi 480939 BLAKE2B c992594e78b95eb6678ac7beba5a5c332b3af5d9ea09ffa77e052e0b4745a84c4e27abc9423d9ae0db44eee15ee3e05880da378a83f86754e3b55179b862ed20 SHA512 9b65130a52b0eb05cafda63960ac0bca6f499d1bf9422685b8e21647665daa837331d7f59fc82a6bf55cb7824e851cc86529e140e5316ebe319e06669bd8bf1e
421 -DIST firefox-91.0.2-vi.xpi 580492 BLAKE2B 9df06719539a0d9f9d55f6480bc438598eb632916b4254599df1aad25abb3ab3d379fb1d55d8dca39416dd9bd0e7f225c6579643a8a7883bf68aaf1d9783b56a SHA512 684ca1c7c994d3a67a27b3e3c1318bb6dd0b668a49da13c4c5cfb4fe695915a38f6f9cfbb7bc7ee3e322b6139f0ab561ef741b11a12ccd418e747b03a70e18b7
422 -DIST firefox-91.0.2-xh.xpi 435041 BLAKE2B e51f7abe34cd7e65be01e3a5c0288cced33e85c0e63e4bb33e62f0972724c689d40113f40cbdbeccb84ca536b540fa3a1653d8853c461c28b7f353fca11db1a9 SHA512 eb6ba0cc1446d67663270505e7f9b215733dd6d668218197c1b5a7c95b22c237ea5f66cea6b8a9ba7e74699d50643927e77c95b29f2922cf30aff5ac1bc9dc7c
423 -DIST firefox-91.0.2-zh-CN.xpi 581941 BLAKE2B 92ffe8fa9317e8240a522bf312333cf35359fc036e9caf6bdb8c56a4701163efbbe6f69145a0282963c255998c554a6f2f0876c31aa6c7396dc7bfd73f15ec85 SHA512 f09100f3d7555c00cdb33bc0b0a07488494baffe6bb8e7408c32196e91808625fcd9af24d4088bcbaa06637ccfc3f6e8772d29dc0c66b1335d09ca7a6e0ced55
424 -DIST firefox-91.0.2-zh-TW.xpi 582124 BLAKE2B 962fe6182f240fa5f1bce94f7e1038c958aefa0736a1b3b36a3565d26acd6361d19dc31cd4747dd723e9069490b073b2b2fdd328af440efaeeeed6531bb00a72 SHA512 3315585c1cc781c2f8707f7f092e70374e93166884149ee9123ddd1cc5e6c4950ce6ea5050637181a79096544d3567f0c4c46dbd88ddb6eb1d3e06c2c5b7346a
425 -DIST firefox-91.0.2.source.tar.xz 381193820 BLAKE2B 42e03ee63e9930a71716599fdeb538006e1a1404a81ecb0efc25511f4d2100b447c9c979d367c9f5fdd60c8ac667f50d36f250b1b755b8eb6eb8f7fdd909b612 SHA512 82084799524db6661d97d9942a01ca9edec2fae6b503c9dd2d79fca78bfef4ee0a888e5f5cf4cfa2b91d9c9392658bb8218bae2b9bec0fbcacfe73a174a4dbe7
426 -DIST firefox-92-patches-01.tar.xz 21148 BLAKE2B 3135c63ffee4c1268db98c1994b174c8293fbac23ce3f75202342dd1ae187d5b2e0d4f8df0871ca471cd24aeba0f0d699acbcb8af54f5172a559ecc2350f66d3 SHA512 d09ed2f559fd438725a599f9b3b915270882af200dcd4cfc31dacedbddf31a81de8649a2e92fff8ba682e42bc911a5bb24672e6ef8202a497dfdb4ce61084444
427 -DIST firefox-92-patches-02.tar.xz 21848 BLAKE2B 684364e1cd3667498fe39dd9a08d48c4cacfea9d426db77b47f6578aa631af19be7241a074da9e6b01d0bf9d56db247c2ca0ef23bb3d5e978aa9c3226c753df0 SHA512 6d13e2363866ce9d4de6f900fd593038c74457952a837f5fbd1a43d05000a6eefb04910b5697fc8c35f2643462eb81dadd199dbc3b42e116db4e98f278d81808
428 -DIST firefox-92.0-ach.xpi 465861 BLAKE2B 7d94552a24be77bbe07d0ef6d15e0ea0e7638160383a08b07d9f2f52f85da67e2bd1dd8648327d75980db3666ca923b1d97f01b0a81376604ebf7d552fde88ff SHA512 7ca2529c005dba08ad4d34e6cf56266c45274acce9a98e474f88e14e39fc1829620a59a68f7b9345544bc9eaf8feeaf17a228b85af6edaa87f51e15a1b1cad9a
429 -DIST firefox-92.0-af.xpi 433704 BLAKE2B 2365b44db5d1724aac5a15b88f71158e1703449bdd26f73b4d113a33014ba37e4ff060a9a6c52269f27129187a25cf133b944bc4f455076d292973a7cd12b14e SHA512 0591a67216cd5033e4add9571614f1025f09c5b99dd93b85a907b126b4a60a95c45183d220a1781822bd79f7338e7596cda862bb818136374013f970153193af
430 -DIST firefox-92.0-an.xpi 516731 BLAKE2B 2a9e61e95d2a718b68f4de87f97d52b7563fc47858e6909ae76eb0cddee36963c94b9f818ebdd27726501e132a6f5dac64a0a94c6ee30d135ad771e517431f1c SHA512 e7eb05045beacf86ad7fc74973389f040ea936ee951c1980c5dbe4631b54f5bb11163983e3803958669bf10014383c2da024a4ad34fccf1fb4413e3517ecd8ed
431 -DIST firefox-92.0-ar.xpi 575437 BLAKE2B 86c06da9b5f6d5a83aec3f9ffa0976a14adb057b331d0ea7c776b8d06944a9e7ed9226b1d558fb9a0633878fa38d6c775f12f21970f1a2c8495d5be165e2d2c7 SHA512 f52718c39fad8362fc447d3c0f4ce589bb64ade52e25672b0a5f50717bae4c99e6bb38435380f1d5c6b1286befb1be192ddf1cc89acadb5e477aa54398f5bc3f
432 -DIST firefox-92.0-ast.xpi 504077 BLAKE2B 18b70a8c051561a8ec260a611a2e73313d019e516c13d67895d3af70bc2e3e7abb6db412d83507385c3975b746b74cf353c4e0babdf3cda398c19059a5f1212a SHA512 5d503769b03cd3a0d37059b7ebb7840c603d595609a853889b65825a8fadb3b2ce67ae695268b5549e63e5157fac1def8c6b170eb997d4f7d7343081c6ecb2e1
433 -DIST firefox-92.0-az.xpi 501628 BLAKE2B fbf74b1356c5281d45d6674747f73cb021999332b496266fb0ce8a58f9a0c630c2db95649a4c2a2f002d7e9f6a81ec4b9649d7131909b5e21c24bc9afd378af6 SHA512 2dd7665290a5581729231f01eb0a1a3db7afed3822e4f437cc497f015a17ef3ca0113a27705e4c381689cc5add9b181db42435f7f27e9f6d6216a133453211ac
434 -DIST firefox-92.0-be.xpi 631728 BLAKE2B 267743c0a95641684904e93505dfe1c3864fa8112080a15160587b4a9b9753c29b1665f6a1a49d738e4af07ba45d64cc6db973aa0475052c513936e5ee50a69c SHA512 92c1d1c2788f50528575896a0db620d43488b849da15953674f6df692d0a86e82edcaed98b7d26072ffa6321bf2080fd223c1f15223a2f1b251fd69804fe2591
435 -DIST firefox-92.0-bg.xpi 585832 BLAKE2B 8975ac73a6de3071be4bf4a62fe56fe149402e9be1c66e2f4743e4926480a323d1d02eb00493271f3f1855e514ca830c3ea08788ee658dd6b91311bb0ce46d12 SHA512 698c2f4138eeb2fb8887923df9534a2810272143d2810a5875e5342999b75d70dba2f46c008ca4c970dd4a9785e6ca66c81702754655f9603e1721c6a4a2c8cb
436 -DIST firefox-92.0-bn.xpi 577032 BLAKE2B 065c5e88bbb6a184280b8174f6eb77af3dd9f2ae79bc6c87a5c5b1225c1dc24a6ae90d7d92fede84ee37ce8fea62a08895f03c4ff9be22e0fc57bc8d4d120819 SHA512 c584cc35797b41d32692c69d07e3f48e8e97db8bcca8f3325b3b3772bb9a94e53f8e1f01b2b9c21989579e30a8e4230b4dff14fca2075dda1feb0a4cdf32d9ec
437 -DIST firefox-92.0-br.xpi 535413 BLAKE2B 9bb2f456c6b1e649a32f21a6a3db00ea7bf68579ae91d190f1c810f8b85cc56c98758b06b9a83b9f4acd1293ca5e3b544e1bacceed8720743c9d1e3048036236 SHA512 5ef4f4e8a1cec97a8ea89f9a64520c892d3f240532979339d322a046ec1ba33b1b2853995909e4aa3f46cc979ec06392f587acd0329ad89897106027aa8e5742
438 -DIST firefox-92.0-bs.xpi 473741 BLAKE2B 1eff4110e035a3e050de28281aa69c840021603deb5d67be8070be49fb8ac7fdd9aabcba8bef77a42f23ffa51c39a176249d11b3f5c61cbec09c397de843f059 SHA512 95e1250cd3ede7d74f693068d691f42bb7039bb690e391b2f74492bfe8595ee63446860afe78391b44a6a54477729a151419a0ddac6ceb47a98aaf8a9b884218
439 -DIST firefox-92.0-ca-valencia.xpi 543909 BLAKE2B 76d527aa1c3ba85940bf6c86e6cf05616e347623f216b228408f07e6ba5e6f1031aec52e5ed59129d98bd61efa22882766f33e9c5f209f4411bd024a2bf32667 SHA512 a01259b414856803c1a41648e3c49536edc974ff996b0e0e9cd8bf96b1488718fc7e965896bf27086f728faeea99c6e22e85281bf04466aa78aa826a21c098c1
440 -DIST firefox-92.0-ca.xpi 542395 BLAKE2B c91a1d4b3026b317334bc5e00becea1a9ddcfab60c52ec9da29caa93f41036589f9dab8db4078440628a058df7c88f6605a25a5471054243e10ed33e60bdfeb2 SHA512 cbe01d0277aa33fb0b6647679c220b6a64fe20583f87c3ddfe0700818da0c37c66b5553042334628acf672f344aad4ae394d9c5e13f26a81a1575906ac26a862
441 -DIST firefox-92.0-cak.xpi 568756 BLAKE2B bddca5aa0d38e6615fffb71d9656fb8e445aec6b133cbb697928b315ead5a54bece051d628b6e8d45bbd95f50fd30144feb8204e91e35175d612924263492783 SHA512 408b91d2938f014bd4eb5bf59c0a9616b32e4127f0439f103748b92f4b7672e45029db904eb66173117e5a6df581eda629579037ebffe4cbe6d96d957d073138
442 -DIST firefox-92.0-cs.xpi 573296 BLAKE2B 2727423838d2ec126aaf883a3e56734f13081d218b066b2bbaa25fbe1f6c877172e79bc8f5006644371cb632e13bbb3b94e0aae5c90b3cc21c267324c43edf9d SHA512 1f33a52ce6a4b6f4b61ba66f6d91aaf4664dfdaa35a176b44ca0c89655fdd9cbd0aa2cc6ff1de2861184f2d9f3c95383d14b6bfadc7bb3e9e6ed59e0c8a38dcc
443 -DIST firefox-92.0-cy.xpi 549215 BLAKE2B 183237354a64b49c7c5e0b33604fdf9c59fdac286bfba2c4c4774d6624f62e8e208e7d99d9d3fa087748481aeb735484c44c43571ad175558ab7e5bcf0a6d1fa SHA512 a5092eebf00e2f2e60790ca995123f7c609263323e2f9f68888958e36bf358437d9457370e5129a47ce09d24db4173adbb2a93aa905763aa9a3469348de36c62
444 -DIST firefox-92.0-da.xpi 541085 BLAKE2B 1cfbaefeb24cb9e3aeff5e7e985627cdfe9c8db4882868ff3c9aa49d121f524864327fabb6e0a929c9d1bcf98153a5b5d79f4045987ebd72b9f090dcb2983f07 SHA512 f51dc0992a3f86ef51e7765b3a943377070f9054b81e9fb18e98e0bd7ff1b96fdfbf963b83f21ec56ca42c57d269033387a156ae92cb28745625759428022eac
445 -DIST firefox-92.0-de.xpi 561491 BLAKE2B 549fa2f52c1bee61f1cbc6a72d184ef57a55839a163771b9a9eed2afb9926027d69f2d59d22915ba1ff5bab46e99fe6761282d2bae6bfc4d33a269ad3f537447 SHA512 7a3f0ee1613e9b04f4e30be69ea57c355036704b35ae5613adb9e3d0061fd91e568c7af07f95ad49ffe482e7baa337a89cbdff9037eec89b67c0a32a2c98e922
446 -DIST firefox-92.0-dsb.xpi 574182 BLAKE2B b8a845416fc1deffdbf5274b788f5d8bc8b2c0fb68ff31a275081312cd8cf5f882ea38bba3f7d0fb2788ede936ee61e50733d36b74bafa09cf1c73322621d3bc SHA512 2d3de43368deecccce7999f8ac29eeaeb1bdea8244ba2f8d004b026ad6c0ec5239fa5431ab3badfb84ca250983cdef97da6df69c40d31af41dede4e514b8872b
447 -DIST firefox-92.0-el.xpi 647313 BLAKE2B 1fb150e19fe90543fcab94ebfc19f86293a2543d4bbec42bcbfc6319e28eaa28e48d5c4026460bf22e9edb1de2c542f3155949ac04e6315034b0a8ecbac044bd SHA512 f7ae3b6d46ec6b1ac1aba8fd03fe96ea0cb431658b55e0f269ff53c8b75c95b72d79acd7ad609a3474d8d4996db9f61328b139a6db4dc7159faa82658550be10
448 -DIST firefox-92.0-en-CA.xpi 516480 BLAKE2B ea3a5294b02ff288bbd8941f764e903a71a791d85e1498907e8623966eede12f1e26faca063f2371250fdfb4a4166547a33a67d8182b0564aeb61bec34c4f65e SHA512 42a738671b3bf4efde9c165b90a3e2cadb2f1b70be900770479de9872742641d409bd0ae980ba727b15c26467f3b3b3441d9245c018e625fab03fb6a457ae02a
449 -DIST firefox-92.0-en-GB.xpi 517068 BLAKE2B c7df7c2379dd6c9e7e26c3b8c6df175407b96873c8f7b3173dad69b21f9b6b9b8503c4f35d1b75bcbc650a2f9138cc93de2e9f0405407d8f70d81cc95c113a6c SHA512 4cf091d855be867a4410e89b116578f27e5f9ce67acea3d17fcbbe79d019b38fa14d8b3ef108712187f567a8ebbefe93b6cc146cb85421204b131fbe4f0eafb7
450 -DIST firefox-92.0-eo.xpi 543248 BLAKE2B 6a64cdcdbb3ca6d255348fc86f333be80167325d843242d295518331a9eea61535109215573d26eb9d245473e1b4c03ea6e37e7c0575a936a3a4e7b07aeba37e SHA512 b5ed1334e6ab221d44f04c8f054ae0273542d94570e0cb24dd4cd7bee3d8d0b19288eda1b5c78540ebfd2f99d187155d999ff5965a122f03e269109e5b53eaa3
451 -DIST firefox-92.0-es-AR.xpi 554546 BLAKE2B e38045fcfa3cd5249e8cfee1a1bd127764d4f4bf7325c559044f028da447a35908f15144d6b32d597cbf8f189269bbf11e18f167f5f7871a5f33bc490095aaab SHA512 3987be6ce8350231638497d2e0ce59bf9e466e984870d69a6a01f03c959507f91fa8ebc35cc86c2a7b6a56946749d49515da6db6020a19eee10f8f8271e0cc98
452 -DIST firefox-92.0-es-CL.xpi 553841 BLAKE2B 496419d014c508fd3eacae2fb7498a8db2830c1093a699d7dd71a59ad0b4a8c3afcb84acdb1f9d022cf19b11dbf1ed79b08e83595989f27f684d08a3e4cc56d8 SHA512 be5a70498dd6058c2903e014c53e6d5b810ce71cc697943691d0f2ffa529944d6179ecab936f355cadb2222103e8b17050581ef9f7f431ec0f23e740066cbf4a
453 -DIST firefox-92.0-es-ES.xpi 543221 BLAKE2B 9ee18b05770d9fff6c7572100852c6874aa2236e6d61c182f0b1383b843b13e3530f39fb79b1beb2da417eba6bb4b40875f72c58a06659b971ce3f26078e1aa8 SHA512 b69eba5045ccfe533b041a1e351a5a901fb63dbba86e0929a1318483581a3cce566cbee86e7b3e236c586f538dee203795632be6813d7da20c2d1dba9964bae4
454 -DIST firefox-92.0-es-MX.xpi 556995 BLAKE2B 1596010e768e1f4f3b2db5403ae39fc326b080ae70994a46b04ab579b52fd9306480a1fe6e4408ae1780acbac11be9052ded516bf53c547f12b6836fefcac4a3 SHA512 42e9d3dd6700a3dce527f9502dbf17a6a2eeb3516a9e35c245281a48f8d81642534f86091ec238c8848c7e3b4715766f0e07bd37c20de5e67d4fb5c9b5bcd51d
455 -DIST firefox-92.0-et.xpi 494873 BLAKE2B fdf9220582bf8208e8a134ed6189835bad375ffe446b30c1ac8f252e318d1f5c7b1b2545b5e21162fa100f7fcbc84b8049f2123090c7c1cda80ccd323959a6b2 SHA512 b780aca16b3c760e7c9f1b614a5f6eb53ccc1686a63644819c7275db45357e1044e8bda59c634b09d8d96105a19eb740cc333e9ba2961f9db70d400c02f09879
456 -DIST firefox-92.0-eu.xpi 539775 BLAKE2B 939f64181678f3c88c3635a2438246547ed9ce9b6ccd80a95158694788ad6da34fe190212e76579797b37f129ea310c7b2707ae3ba799136cbcc7e01d1a63006 SHA512 5af62d3744c24182aca56174a667777f522b36c151df3c208fe808fa8a93229643350ad0c39a0afb4a1466a795e778935b8215e700352e3f86d76058a6777a2e
457 -DIST firefox-92.0-fa.xpi 571229 BLAKE2B 4f76b2886dee55fcbab1a0fc3439840ca2a3b98f64ba2cc8bdf040e02777ea075742db2cf106027ed47e1f266df89051642550678b0f26500979d0bbf0f50b8e SHA512 cce85adb4ebcb8db2ebf69a5b8895dc35e139c8c77202e24feff44d19be40212ff0b2fcc83c357e8a54fa0ce17be08db5752281a30804eb119cb57b9d55c7f24
458 -DIST firefox-92.0-ff.xpi 486429 BLAKE2B abd3f9f3788c7603a08c17d0a558390ddbf6268009250f14dd20b93a8f582c271c9735a7e66fb3417633fc2d37e9e2f43d7714e29994074e83abc199ba266125 SHA512 1f49c39b696c8ab49bf1f79266a85a94fb836d02cf4bd912ab7c1d1d65cb82fafc0918cee78186306f672a757b6065b8995a2bb3154ff602db04d21331d33144
459 -DIST firefox-92.0-fi.xpi 540701 BLAKE2B 49246e41b46b6b354ac32ba4c7acf2545787911421b166dd4aa61a78c8a0b156eadc6fb30187f4f6d3171d3685f7cf9622c1a5c1b77c2e7a5d6e748d97ed11a8 SHA512 168fbb21267c4ee2110f7a5bdbb6ae8fe9fb35f92a0094a1a1f58ddee7087f5d2ff6ab17d6f6fa07e9a6ca01c6503d5f9b7d1a03dd2ec707d0fcc15499490af4
460 -DIST firefox-92.0-fr.xpi 565622 BLAKE2B 2763e1ab413a7f3e4371d89cc42c2c54ced51c8716ca050debdf83575bfb094eef1ac00fff253caf5fc5e5d9f00a620246af691d410cb48580479dd34a530293 SHA512 0042b8a01ea8f8a9d1997786a114917202553b217795a8de927ac968967f76417b0c482591e7933048299080f891d70bca2d4e87a1e5853d3f7e87585cb88057
461 -DIST firefox-92.0-fy-NL.xpi 549800 BLAKE2B 7efe16d4542320afb2ec0b50ac3dc3980d2fff4c516d0952950c6f08c96e439c1d15103cc2f71c382ef0802838a5cd83da9a74887fcaefd946b8006883b45ff9 SHA512 8bad1072823c1b7394fe4d580038d8657a6d7c46f94168f8c3520e93cda807de29c46fcb98d7eee6e2a374c3f242e3964dee62ede6fcec35cbd56bf21c44a182
462 -DIST firefox-92.0-ga-IE.xpi 471470 BLAKE2B efb50adacf182e8acdcac59db60a532a321752aabc2287547bce04072c3db754fabf9862578689623caba75911af8504a7d6ce348d7bfb089ec73b061d2659d2 SHA512 8cd7b5a46fc6b7e2f29691a6759d1a7640f734e28b01a30135b459a1106a0bd4efba7dcc63d9b67ab71a9929afc3d53dab0a300fbdfdb6657a4b04bfd400ba49
463 -DIST firefox-92.0-gd.xpi 545949 BLAKE2B b22117e0db9de6f4c2c18ae71d104d2518bb6f8fc37b71f9ed70a80fd3f33b19fb9482104d5be3c258d106a5ee05cfa7effa03696f44649b505862aa27574a31 SHA512 b31020cde143d9e6e334a07de474c6cff77a4812886b96583ac1be58624fca114a6f5047dc1563faba2072659b900fb2302b1cb6cb0c6fdeff5a7710eb759b00
464 -DIST firefox-92.0-gl.xpi 548998 BLAKE2B a91c6cc3408effc76748231398feed6fe7a3ffab0f1ca2f5187bf19bdd8b74943e4c804ae265b62f354b2c2a4c3b94631180b202bab858bbaf532983b7a0c866 SHA512 b5118c2393d6ee647859b2014196a77ee33789c5a351adfc28faedb529ca4426b8a8508d4b69c59114c2d6c63e3cd2c569ec3fee5d6db6ff6b28199ea6e4cbf9
465 -DIST firefox-92.0-gn.xpi 566605 BLAKE2B 81fa761a4d782f15164eec6a8fc82eccc1850c7961e6d595f5d9ee278a4e2965aca293dc40941cb4fb99d931954b1d8282c24fa0ce98eb8c4016991bb6d5677c SHA512 e42add8c48ca9e4e0139ba7ea6bdcd7e5f3437335ecf59107cf03d67c9f6b105f1790419e244813378ba58f74fcfe432da0b7f23e4bf7181c365e618973e9c01
466 -DIST firefox-92.0-gu-IN.xpi 545302 BLAKE2B 62c4cd429f00d2459beff9a5a82a1ba88f57bec603243e64b529795fae682c002cb05c02a07df58947cd107a919dae53fcd5ca73dcb3bb5ae09c63cfef9c8317 SHA512 a2ad9ff82880d10459bc237aa5e4685fafdfd922e84fada384cf8f7b6f6fb42cc058317c36df26c52f9d105709e78d1f43d4468270df53ba517141262afff295
467 -DIST firefox-92.0-he.xpi 564004 BLAKE2B 724e7b9e592ee9b4feef11e745777cd5720446af4700eb4595fb405e6772bd22b7a01c0b4c7c6be63573c9caf81ca421881b4ef85ea4838135f86b2fc3c6fbbe SHA512 8b31e7a89d0bd6f34f34e6be47d9640ae4c58f272f91a7e8bef7175ade905154b9636e653ce53abd356bd882ca0a16a815360adcd8e251f499ed31e988ae9198
468 -DIST firefox-92.0-hi-IN.xpi 576346 BLAKE2B 6feaadfe601dd5094328fbc73b0d56581d3080681265b6d12747ab54c6faf1a7acf8bbed24711970cbc9fe1ff9e6407a20dd2fbe0ccbfd75893bfb13d3e991f9 SHA512 6e2c4ba5b5d0034d936650b9a8366f97402df8d48ab6c39c69ad18df4e32860d7298d80fa20a2cc7534fb8039c9be71f6afe5f8df043246c11a7830e37e8d19a
469 -DIST firefox-92.0-hr.xpi 545062 BLAKE2B 8e32013036fdc53f5c4110f36ae49e16445f4be6a6bf3f8c3366736bc5d8be5eac48b23e564be3f063bb1a6f202c5456c4df47f5460bff1ff1d1133e73ab0c9a SHA512 5f332ff5c2909fc28300154bf42dac5755a019dc34072e4eb5a0f96a189a59edfec3dbe1da098138243aee2be75fd5f656023696318ecf5514919d993e1cbaee
470 -DIST firefox-92.0-hsb.xpi 570282 BLAKE2B b794b41c24e605a8cc3b68cc476a4cc04037e495171eb01050da9cbc4d6e1631ab3fabe364f2285b0abca52aee02cf7e05d0ef5f6ddd1dbe4c6bafb1308f9b88 SHA512 8b69ee627dcb400bc05e483ad9427cad49b90a1c449f3b45cf87d20acf3b2fa222b92a10c0e830304133905a0397f25bc38e0d3e4cd93d3563addc023b67fe4c
471 -DIST firefox-92.0-hu.xpi 574178 BLAKE2B 8033f2e3bb61393c116136d1a4ddf76c0d53fd27298e6746fe9deb79cdc716be5abb0402d58ef0892996ef09b2bc1542e31d01dc0f2e2132e5cb5e8d9ccdb5c0 SHA512 03118f6c5ebf6312a3f92622afac7a35a9f29ae2cbfa47e9e0897ebb630b536313da226d5e14107356938df43ea612f04ad00475500496c19af215c7b63c6aa3
472 -DIST firefox-92.0-hy-AM.xpi 599704 BLAKE2B 47b2d67d90c107720363327585da21da0aa1f0b0747952cf31c1d704567230b15790a97c7ef9d59208182f8f8336f96e8c330c9832bd66a6bd34146758e9a81b SHA512 95da7c4fa5766895178e7cc7c91647e955394aed5c2a474ca21b5ed2534ec99ec5dfe2f04a5fefd5240ca51b7e682b4225606444d90e98e63632153ccf367435
473 -DIST firefox-92.0-ia.xpi 539829 BLAKE2B 5e4af9d63b6b5b2c0ee93e60fad02fd1c0d9ad472fbb8537b1484b07cdd30758f77e134fe4b0c74a29818956a8dedf9fb28de89553e1068e09f04d8910fdb2e2 SHA512 5670d24edfddbd82c079cdecd9c9fc52b8dc07d94127e05ebb45cf1d3ad6a8c57bb04f2500257d4bd96fffc3029f6d94913d1b6ddd6d51c5a3b09e5302b3709d
474 -DIST firefox-92.0-id.xpi 534563 BLAKE2B a2929a900f2e6bcea9972c43a222e28ce09c9544f093da454e21d48a28f19df1bd90679b23b35c60e5584749f251125947aeabd297cb6712b1167c32d14bdd64 SHA512 1ac7b074064431d67c7e1b467b47a93b8335d0de88d771b41e52145b02d26e33978a4398861514f6c0fb690838d88536b203b3a91ffc76c12cf609e0aad44ef4
475 -DIST firefox-92.0-is.xpi 482030 BLAKE2B b89fb89961cc6726381deef0a3c11f273d9faad5aad24b14978d25935f37a866b7ba0a8a64c82f3101fc3a7cc7792642cea357720ce8fc22ff3829c3ee8e4497 SHA512 e6e8a5834b447287c7cdfc4b4dfeed0c97cbb7aacbfb5d517adee5f8f26bb3d95f6e421f6edeb847dac861d9c93c885645ab658d43c0ff9e9312afdf0fac6011
476 -DIST firefox-92.0-it.xpi 467585 BLAKE2B 6bfefbd27e2d96c328a97c4cc8abec953d64230d53d0a2cb89bb8eeeca37cf77d4db0335ec6ec033c1c9d09de4ecdffe975a72757d6ac875f130311e0c317b45 SHA512 045c717b090b9f842a2c1db95010007b4f941fe9f9f0951f4b950b8f8006231f46a0a28ae6a1fb52ba83f42d984557a742254f049b1d264b823739da22978838
477 -DIST firefox-92.0-ja.xpi 599760 BLAKE2B a62a1d2a479ed661cd901cd2b1a90bebb5a20a96f63c2b049b2952db871e3a7f2532b3a8a3065930a83c0a7c02e8091e47d3204a269a4c862a85a7050326e5fe SHA512 29bbbbad76b5a05367fafde0c644b5d0c070b0798eaade0cc4cc63c9aa7b52647b80f4bfd511bf9a8a8192d9f2c112e1c214bc9ba74e442af08c071640449e08
478 -DIST firefox-92.0-ka.xpi 601258 BLAKE2B 72634077d7ff739145145ce5eaa7c6ed66628180ea60d2e5777b8c3b9b378d6ad7ab5b19003c85dbce0fb926d16f40ac2d8a319e334f1433e2b59b8c8fc173e7 SHA512 8e83dbef7bfef2a2983e2d43637d9a43c8c4e6852db5d7fa72ead760e654b8fd3e53432f723f6effb31bd022a2c212c787a2cff0d431000023f523e76613b115
479 -DIST firefox-92.0-kab.xpi 558942 BLAKE2B c77b6f4a306e671d3d79c24b4c9bc937c7c8d91e08a05c2489f336fbb8992796dd1ec51b7074a62358c566b26d411648d1df1cb122237160bfb9a8a82ea5c911 SHA512 53faa17ad2b455cd60ee7e3f6209705bba67e157f6ccd38f539b6c47cae77a9e20154ae8fe540c12182832cb4bc88d650717d9a9d6397b5e04f549dacf48618c
480 -DIST firefox-92.0-kk.xpi 615414 BLAKE2B dcfca9958ae6a0142edebf01811345de50ae3fe74900bb7af732d27517e09e06de3ea4334bc82f66f36c97b8463d7ac4032482fa3e65f0836bd484e4212737db SHA512 d10e4f65bf20135f0806b8e9d237d12df5c817dad44f570a7a77e6876db3a8f13ca2939a96f71ca59dbd4b49eda0835ba345fecbb238537fd202d705c514f57d
481 -DIST firefox-92.0-km.xpi 545531 BLAKE2B b048c844212441470fa08b2e8e86e54fb32278a7be99b61c203aff9bf96d3afb2d1adafa00e1ea0828d9bd1ccd6adb1a819be5c6561fb1a52d050c47c57ed908 SHA512 868b4f6da85fe8a01d3c17866c96f0185bc852ed97bfa7bd9f4fc651825e509314625f5bb873e470fb2fa9fb149315daa2000ddef2e55dde93832d4b154acd0f
482 -DIST firefox-92.0-kn.xpi 509169 BLAKE2B 5fe542d3d7386658684d45b109764aa270cdb37725c71ad1c485a49327395275ec165dbe6c2cf2a98f415eac52b83d05d6ced15904b08c28e48f5b8be5657681 SHA512 777cf7be31654418cde07b5e2526870668950f291335d1a95dae1f555f8dc44ea5ee6dbe05486777f2dff5ae1c96c507579ff7129e0e2e452958e0f7abc45b38
483 -DIST firefox-92.0-ko.xpi 585486 BLAKE2B 0d5542c609b353dd4344abdc561da5d5d489ee72dc2f2671b83713e6bb8f7e933a2deff2f5f493906d73958e79cd13ec150bcf2420fef2b69b77df412bad57bd SHA512 258a09a0df4a8cd04f86ca49a94d1a8c329feecf6eee2d2653cdaafff4337182c9dd8f38bb9a68b33620713db356c5351909265af3bb42e6af614020dc70cc94
484 -DIST firefox-92.0-lij.xpi 482445 BLAKE2B c17f579f2cb698ff07dcc9b9ff28c538109de6ade6d0ef7905404c94ebb91e42635fc386adcc041531edf9ce3b157f519438bfd7502b88259a162640c9b045b2 SHA512 6d0c5b12d34308bfa526751121995492164032d40246420a20ae8f42195a5e57d83f8086f55d20608209c674c108dcf2e33d559a03f7591aed65eddbbc0fcde3
485 -DIST firefox-92.0-lt.xpi 568122 BLAKE2B 670d653b62f69d15aaec00dade64b717c22e903da6010caa722e4212f4c9b87f5fc29a61dd782fc5cf8ce8b85c29e0cba0ab3a8af60a7884ff9ca7fbe0988f54 SHA512 f56a8b694cf9f4296b20e2ca090f38b4a9fa9d405398ed3111df228d657791fffe600e42bb476b29c5a47ce463d82bb84a883d44bab5f5e6427ba55a8151a160
486 -DIST firefox-92.0-lv.xpi 474044 BLAKE2B 68b25a63cb49380aec23c0b68623085d0c864076eecbd1172ccd668e7c66d580d7e011cd4c9b2fa781a894cd3b4f03c3bc1fa690b09185f681d0b9a94f93bdc4 SHA512 ca1778b735a5fd83a636bc03d1e679fb52f0339ef3770d1aeb3d213290a3f3e56204ce3aafebe365d3846a5d7f08314870b87f9370e025be18b17a72f34cf267
487 -DIST firefox-92.0-mk.xpi 473976 BLAKE2B 0addf0c2e701d1f43dceb67d77d5812fa1ac8c55e4ff6bd0693a6ae163955e5cea4e23ff58309a6f3feb5e2882161cc61316ceefb1ecc996bfc8eab3a334cdca SHA512 05874993f32d6bd14807ba337671b1fa994e6cf190a0e19cebe7518784c03f4c8869438892d9bde40881881d102fb98e58a8c2442364618acc18d746d0383e8c
488 -DIST firefox-92.0-mr.xpi 547477 BLAKE2B d025fae033e9e4dd7f9275a5b861dc534da1fb8a714aa1154a3f5d043c694106fbf3ce4ae0f9ba7f9be6d0e3ce138385d1fe275966295106542a48513e5f8013 SHA512 928650168c588f19d714e7a5fb45b487d84bcb7d837dd49f4e060b91483ebd8d71862f86b6538ed5ce9425552b5c6d6ebac04bc3244c032090749a436c420bea
489 -DIST firefox-92.0-ms.xpi 457892 BLAKE2B 02db15daddb239f0c3dfcefcdeff567f4d0d85659dfbd92b836ad310a6bae3f8460242d644a6f0ed7ca4101e36a933b0b1685699b8df19b6fb254f6d62d9f417 SHA512 12023f2247c98888b73cec0bca42aa3afc94cf936fe1364b7c672100920c2314f56fa2a44ef031427f74b5b93cbb58c8143473f5ec3cbd309ba2062758e42fc0
490 -DIST firefox-92.0-my.xpi 530888 BLAKE2B a9b97dcb50c7430767de4d3c4535f0d74586c8db3a2d9d74a4b85832273f8930ea0629752325cde80bf4f4e478082864de2f0530f65675fa832a21b68e70811f SHA512 11167a28ab2774b727686348b7bcfcc84dda846d4bad470103017854269a84d7cc2f4bf2e64a7b85cd58b0e487928bd5109ac07b05a90148c40550d9b1914a48
491 -DIST firefox-92.0-nb-NO.xpi 536410 BLAKE2B 2a5ed043d2a3bf24cd81adee7b700ebb101c28890abf835f99d240968413ba66a8d1b6d167baa17c6dcac49f5f3245171b6e80f9e610af200fe728279382f096 SHA512 9e10f7717a690763f25b75b2f2b2a854ca2122f1f07c1e5bca3145d5a7188b47d6a71b806b7195c0090a5fbd6f1f1361425883d7cbec8ce18c7889db494aeac8
492 -DIST firefox-92.0-ne-NP.xpi 486827 BLAKE2B 5a7ba7a3c66865e075216fda27563580b4e37744314683343704f33d876bdd8f7615f382fb25418701e81d754ba1489d319ab348680bf5106cf086b4031d9aee SHA512 f8b561ee8abb59f61ff0a7e86dae995db03a1156641134198e50298b306cc2fdaa36f5854b5c71a20a7318c6031cfa07d144e3acb2bbd19734df048cdd4baf32
493 -DIST firefox-92.0-nl.xpi 544342 BLAKE2B 21052b6916fc675fe6f8df1acbb1b862bd3700ad51f1476f9f34cb30712d3c8314fc2a2651c5a948787d1288eacbc14b0f4103f33c6c9bcaf09386900631d7bd SHA512 d2e17a3e55d35b92e72d90a0d0bf2080aa533e1107d20c5e78e0bf5a7610a8a8bd5aab8a802bc223ae67bb4141018466f73c89374ecb9633c288b381f6eb042b
494 -DIST firefox-92.0-nn-NO.xpi 539204 BLAKE2B fad9e0b207c271975beabdc6af14947d71055cb16762596d79d9276e12cfebccd581c0b6a95f04491254bafe116333ed634c37e25ed765d991e7d863140e33aa SHA512 dcacc69cc80ceca6c8740a7e92311fe8e2ca45d554312207dbe18abc64e2f5604f75f6c17fde086c88548752662bb681336510dbe1400692c007464fe8c2fd48
495 -DIST firefox-92.0-oc.xpi 560486 BLAKE2B d8b4c7ea53c6cb88e126326094a93b4cc56011b4efefa03abb4945e3b5e04d0a949cd2ecf8e86dd70d1f05f15977307aade6500b8ee4ad2e43dbc482f1cd4bda SHA512 931d0829858a6ff795710eabe81a80ce0d0ccf8fbf0a7211b7eea79808ef89c537f21d13cfb748a154caa6035de423161fc0997ab0abd5d9c330ee805518b192
496 -DIST firefox-92.0-pa-IN.xpi 605556 BLAKE2B 906b9fc303d6473caf95af949b99997e13f2a42e0b20d310f919831d7349562b58efcc47fe5b7bf9f0f992565aad190a7a16bab015bd58c647a36bf064c4be34 SHA512 8933c98a76f00aabb9ea066c3625961f3e8c5fc81cb6efedd9fdb03e2dc12b6ea9bf2caf4a5bfd23c3fbda58d7fbf9d9dda71a5171a13a3dab578dca2e8cd0cc
497 -DIST firefox-92.0-pl.xpi 564253 BLAKE2B ed03e95de5fad7982abca8f60d13703cc79e75667ebddd1648ed5cfb119f7c889003dc936b6fe291139958b44634df2aa8cf5070f78eab912fbe1ef0cf76f172 SHA512 d65c2e19d2fa7e6f9488ca7c98093d963978ed631f1c6296dda53b64756327cc79ac196aae637d4f9068e47b199ba1bac1dfa843489f6f139aea57be1fcf5e3f
498 -DIST firefox-92.0-pt-BR.xpi 550108 BLAKE2B 153af29fb86ad47cd98ce73c1e8bbc0cdce23101d8120bbb2cf80630c44717fc5af6985d565e0921b4af82b992fcf45ae875d0ac403cca328c2e0568464d3f51 SHA512 51314539e84c3bca514a83052e89805e2001aa20e49b4051d767145de1ead58b94f773dac3cc4913f98461b8ffc0e92c210ad3c8c6f557fd670b5eb35b693473
499 -DIST firefox-92.0-pt-PT.xpi 553465 BLAKE2B a10d5e6bf3771a690fc13a3a9033e6488b5c6a17a03133d75895948e80c00ea7c1b1f9204a71e721e4211d7315aeedbe32d3c47cc888e970d9d0c40ad4bf29a2 SHA512 2ed68519e92ed01b69a61d92dfeec1827f079ce150960aebb9ce685affe05de8ef9f75e5803a8f11b559b043c6f44a018ee24da5e299bf9eec1a373276ba85b6
500 -DIST firefox-92.0-rm.xpi 544463 BLAKE2B 0f604a6d26392e2092ac0814c3b36ab4a376e6f8fc6c3186506e3cd948af7934da88d4a486f06e4d8e7e6a4be65370cb64e77a064b976682a16f780709a70da5 SHA512 31109bb6c2b57799cbf65df3bd9ce925bb00b4ff1512d14f970e62da2b8e6f78f20911fb86ceac1abedee6e6c2dd25112500e1961416891731a80c7271611340
501 -DIST firefox-92.0-ro.xpi 546127 BLAKE2B 749eb2bf955edada6a3766bac8f6b0ea2ea2bea5a3ca18391e94d0d7e5e2cc616dc7d2746cb55089f977d70f4ce12136007748a28b830f0348f1e654c63755b2 SHA512 a2da72744a0edf00342e9691670b8f9c63ea7c1cfd23f681b806543d286a715fb21a4959b10ed4fa9293c960825605ba47ac1abcfe2d19db249eac49b674752d
502 -DIST firefox-92.0-ru.xpi 636045 BLAKE2B ed4a15e8c65f79e203025977522c93cc39311343a96d916d66c2a170f064f762049775d5daa259ff3b5ac2ebe9f700980fdbd66c35025d2f0ce266ca01185dac SHA512 6a5311cda22b75b5fc17a426b4a5ba08d7ef1b922940aad054bb5ce3f72df17a070b5e162d6da7fbacb5a6411feb2ff4c3c2d240bdd13085de83e49eb8161331
503 -DIST firefox-92.0-sco.xpi 513481 BLAKE2B 5c4911f2a62da4a36cc09161cba0c18d088e607b23f676aad2486eb635efe889fba37d52fd7f9ef594114e1c9c7c889051637e0b43ef24b3f3f3b9114f0b35a7 SHA512 cbe970e50c9b376604febcc0569ab98206f704d033e276cab017e51c5a31bd7deddc0d628c770bfd3881134934bae764e6e792dbe979eee0ebc465aa53325919
504 -DIST firefox-92.0-si.xpi 497459 BLAKE2B dfa7f8fe3314056a0b0337d4c741ffbaf7b8a8b6425d0ba57484241df79fc9b8a9bc5f0c554eb4e2e4557c9d91b5781f320bdb4e0082b543a9d41306386f212a SHA512 f3deecb153435df30ec2a2b035bae888d5cf38aeaf8afb8c3fb1c2b50b6bce6ee0fd947d71ef62d9bda46bb1ec2acb45d1002b03462422d273c612472b675986
505 -DIST firefox-92.0-sk.xpi 573545 BLAKE2B 0478f143011fb39ceeec1d8855737e893b531b9457373ed9eccae3ff36a48ba45fe6ae0c627acea8bf32e8904dd9b2391ee660989e89682145495f46c5f3ef35 SHA512 a75a0816b9539f3f7d3454f536f860510d1eed9002df79ec4b05af190cbad7f0acde9e7056a55d4be849cc5fbb6c988904f4f7ecce45642452d50140c4ed02d0
506 -DIST firefox-92.0-sl.xpi 543414 BLAKE2B 5e4d94809cf7852b5f7eb06353756612b712923b367d64d042a3b48121d804cf4bd0536b7f76f8bf580b65b050c69b05ed879a999262a2116d10b33c97db97cd SHA512 4f3a4a46f678c62ba7e66bac3f3e7790ae54a1a25eeaac82b8ddd0b751e45d89019116e9c5a9604e4aea09e1826a6642a59e9de60ee2a637a60dd6803098faf3
507 -DIST firefox-92.0-son.xpi 433438 BLAKE2B 5e8b80000c0a1d2e15193336f6b34f3a93ccf9b0881cb8e6b4a23df65a0331540ed031565a8e864c68c8fb144421eddd27c6b1173c4e2221503a366f4578a569 SHA512 21f026197ccf58abc19cc33615e534ff7c1648973bdc0266f3f9bab6483fde8de22399e795fc44366174c52d6f241e1c17e67a21b18293ed581ab0592d5002fc
508 -DIST firefox-92.0-sq.xpi 562893 BLAKE2B 15edc43578dbf9deb89c04e107b29d5770744baa16124ab9d410795cab31f30f262272d3b6791e1f1c7309e12f9e7cee6ff5fe46c7b47d2e0ee603e479f70f21 SHA512 216c440b666acef73904804ad68dadbc78266ca569d111e4dafbce64227902af5442d1ef9a9f7784e37498e1b40d9806389c5a6c6b7f12b8f2680f7fdc989187
509 -DIST firefox-92.0-sr.xpi 601676 BLAKE2B 9ed6f87298d0b957cfec315586672e2d701b771298c9b6198215b823fa5749c8f1e961df7677c5032ef25f381c684ede77c54c6f6d01df5022bf99f0d4a48f74 SHA512 2d7827f56dba138acecdca08ac856bc463309f035464f7415478170f2ffeeb81fcb902dc24b058c141aac51ff13372d9f10866291a29157b80344ca98606c6f6
510 -DIST firefox-92.0-sv-SE.xpi 547612 BLAKE2B f83b1a2886bbf9a2863d88d86f800b568c9d46ab8af4aa48ede67acad10b92abf73d96e7cc2fa91b8fb5e7de3eecd1570713f00db9b7641bc5fd0610040a2e18 SHA512 6307a8ab52679c91a7675b97d414a0b73c0eaaff0398570b994faff92d740f05c87bf4524c1b25e281aa4f4bf2c1623d088163071655ac0eae6c778401d0914b
511 -DIST firefox-92.0-szl.xpi 522849 BLAKE2B 98e915f6ecf993f9680976c17bfe35eda94907fdd860f6aac500679e56978ecbfd07918533037e66c264e1c885ff8dd594add6e2bbcf9fca7d40caa0179b4b40 SHA512 e38648e23f25e7d19eda6bbc208b1964c8e7b423de0c1cb317ac523a0369271b2afd2f8d6edc8a5af6499787094dd41629dc36c0736d4fca56b5fcc1b86f6e0a
512 -DIST firefox-92.0-ta.xpi 525652 BLAKE2B af375f03fd40988d8f932e58d9e84ffbe3599d6594c217dd86c88f671f4eecdb832d4d728a486d3d08cf001c89356b64558dc7e7cfbefcb58de96d5b547a3d02 SHA512 4b9d9d419873e92cb1d2aa9e370d55913257f827654021443d4aa825e9ff5ba12b182548d41cc84018ee07d9176b3367b8f8ccc6bc01e2d2f63da5cb7a8b2f2f
513 -DIST firefox-92.0-te.xpi 566292 BLAKE2B d6b6a24c36c394dc0b40d1c660bcae94498978a4bee05930ce1150dc38cb7dcbcff0be98930bd2eb25f4f339e4ab71ef25d2693e694b1ca588130719f58732ee SHA512 f59a7d79c93e7354d45fc5c9ed63eb5c0779992350f50c42e2a7b118f578bd231e7f4e3f027edfb907a5da4b84ed994b6f537843f0be5477f213228d92cba898
514 -DIST firefox-92.0-th.xpi 615176 BLAKE2B 86e3ae1518147add00aaad92191b9094c7c4f7e9c255411941c0bd57b86a7f21eb6f695c55585692c995da1ef45e80653e1a2869196901857bf2d237c9e143ab SHA512 09f1112028a5fe82a05e6df8e49389e45a91deaaaaf01a19e52c5469cdc3e19ec797966b3e7dd05f96f8a9bb5e6bae7ba4f58d8c321b7eae48fbda816840288f
515 -DIST firefox-92.0-tl.xpi 532140 BLAKE2B bc1bf0cac0212841e5251d4111de1096fffc8ba9f32e5b9f504ec45e2f0ce218bdb3abcc436c6d8fcdd9c82ce01e8566b3d92cd86746b40075d0d3024776fa0a SHA512 605f059fce9fd93b4b71b8a7f8fab9976200dd7fc47fd2eb8103a4b776c57f6a8e93dd85d175df48dc48a6902391dd45212fde9a00fa6c1a977b42bbe4424fc2
516 -DIST firefox-92.0-tr.xpi 560032 BLAKE2B 2f4a4f3d1cfdd09c19faee316400cfffa52171589127b069ea422670afa5d006ed9f355c60a375222b6846aa67545c2f65f5d28f7cfe52722865dbbce468b51b SHA512 3fc203fbb9e19a7f3e0036ef0e3ca1e77d0bfeb7adf127da0035c6073c319f2f7f88e2eb6331e625ad9d1c2eb878cf34ebe80195043e1b2617205a2fef58868a
517 -DIST firefox-92.0-trs.xpi 504293 BLAKE2B 9dc80f5c3f4d19c6d1e504eb073f2be0583bf19341380b3914d468f19783b7aade6d6ef6f562a362c2d1d09fd028d0ab368fd0b83b2d67b1939d57a8b332c615 SHA512 906b8201a3b90d4e7c002cc94cbf3a2dbedc686b6a0f663be348f2816e79e5c61c76b759a1efc308d4cfd29ab4f110a4e72049070eb8cb13c03197e9eba638aa
518 -DIST firefox-92.0-uk.xpi 630019 BLAKE2B 771aa32396ec1c57beda499060fbbf02f3146b92989e51913a245c6b1340b393c562a54eb4aaa264230bb83e43d1e26a537ec3a90e28c6607322b80f061fedb7 SHA512 5e9d1d6b74e8b7fb2fbed6b0861381e3d536f4fc53c619eb34d8ebf3d7046a6e84882724c274458e281d04f1e705971b81140ff90767ad2aef521796c7dc86a1
519 -DIST firefox-92.0-ur.xpi 573434 BLAKE2B 96b2bbe589296441e8a06987b10088487f28c880a36d58b3f5d03d75ac26569285b52c60758a5c928950704434b4f909b8890768b50a9edd6a178f67cc15d45d SHA512 c4ffdf34854c62a3326c0d3680d1733f4ea8d9f7bf421ca11d5a3b1c84ec2b18b48e34d020f9f79b6f18522db9b2d112c2405ed5922423e1321f4f6cb567f845
520 -DIST firefox-92.0-uz.xpi 481444 BLAKE2B 6e4a651e2915f0dd060e99fc229efc7a8c2f0cfd817d5b77fa33eeac0a3cd39c91a35b6ca7c45575c12aafa2822ddd7cd411165efe38bc97c91725c5f2d4c8e1 SHA512 4b68ad2389f2dd02d3855c131f7a5710ee23808ef79662de8790e2cb16f1b8eec3489407b62b00dbb718aabfbca407b67cdd382661c3590775a3d816fae27b9f
521 -DIST firefox-92.0-vi.xpi 581667 BLAKE2B 2a2c48c093a59101ec806c4754a020fa39bf29ca396150c7b0756081a5dbb8510df304f720813327bc331ac459d37e71cb41ff6faee8c6e8b9b25035717db838 SHA512 2e9fefb9b587046b659385fe656a35e3b14d3b8df598dd47332c03ec228cef058923a96a69f34f52683db94c724437b3ed3f968f7e5ef2b83faca6087664d01b
522 -DIST firefox-92.0-xh.xpi 435584 BLAKE2B 01d40abcd4fba4fffa1c5c3728f33a50dbe470dc3cf70764ebce255ddcf2b6db3662e9fb67d161b80984a415d9e91757886bed486c31bb64c8df4ee7ed474e1b SHA512 e0b548d92bfdd453ce4743d990497625245105d4f4bcd686c08b2bd1a185d2a2e5a4db1b797bdb0154dd25929119efdeed2acd8633ccb9af45f06627d88f5848
523 -DIST firefox-92.0-zh-CN.xpi 583255 BLAKE2B 6068bec5e9500fdf0f89d05f5f48ad06a20f93e7d96b6d4d1b4ab93496d308a25a7e1b6046625239d55e8e2e2ae3b66b3ae3d8463d01a492cb2b21dca831abbf SHA512 1ed700d048bf5029522737527996b4cfd4ba6221f3efd95cbc34123f2991f1137a310a7bd21e7ecceedf4891a8daa41f1ead74d2e280c44caf114e361335212b
524 -DIST firefox-92.0-zh-TW.xpi 583437 BLAKE2B 4a0d0ed4510867f786fd70635371e4431cdea9d97ce45246686515dd4ad65b19d5eda69ac8aa7efd296f55356dfec28fb2a2673e5cf5733d2f8121bd294a66cc SHA512 ac98b5609d9fb005811e9346fd933ca071cbf216c6b0bed7cc8bcae6e25d19add77d7bc3d04c3ddd32be6b8e0ad608826a36054e040e0a8b2fd78cbfec3356b0
525 -DIST firefox-92.0.1-ach.xpi 467091 BLAKE2B 69aca340ddc5d97b555f892231a25c7787ab653d0434c602d2cb482713f12a2855585005c41cf236b74276eea4c034eb3b4da6b762b9a094df05e8f9742366d5 SHA512 cedf46d637a422893d59ca80a5d5bb54557407f5b4b81c264ac0eea4fd3c099577a3adb7ac821776085c9be51700f7910e602dc487f8c7a0de3a97d925cc8a26
526 -DIST firefox-92.0.1-af.xpi 434922 BLAKE2B 74665b82986be45b12addab0cf7a8919dc7ff34743ac13fc4f81673d35caa73b98b27a1c096d7c11047992075588c3f2ca451073d478270c667999cfb30bfa24 SHA512 778b93916c34f8389266ba85da24ff401976ffebc027052504ffe9eaee677b88f8981fde8655e175be78358e9334b5c3e1fafb076d98469f8f4a6521c1ff33fd
527 -DIST firefox-92.0.1-an.xpi 517945 BLAKE2B eddb593c9a03a490089b9782c403c3486dbe50941c81ef10f20cc42cdc8ff029d29b1e6ca10c2944ff442fe94c41649ebfe17de9c0d75df6e76fbc15b5af6ca9 SHA512 30ea91d4effc5d151c34f999a114d4bd67debb72737f2d505ae9d51a0fe0499bfdb7cfd4e209bb52599a8de4768269ca526f3a89f9375dd105a0c5186bfa6344
528 -DIST firefox-92.0.1-ar.xpi 576665 BLAKE2B ef09d61145599aedde2e3429946cd60e5f675e027e600cb9d4e9bb29d167bcb9cf3aa015336820c55a489a1cb4e878d91eb4634c3f7f9593ab114e2a8f465e40 SHA512 baa81bf218257ec83d29c42ed4c2efa34bb322630c4b6a616d0bb4ebb5d60c97272520e1d8b9b345ed01d898987254830618abf2448613e51c2f81c15a64224e
529 -DIST firefox-92.0.1-ast.xpi 505296 BLAKE2B 044667d015d90a995e3aebd8fb7df65f261bb0ecf7ad81b418cd61ea0f21ce0e8b66d1fba112c7317b1e89b11d75b7acfff7617cb5920abc70269876ef5fe4d3 SHA512 68efc4f3c17d559471f3eff5fedab48e876543a1ec74b8b6f922ccec44649f0b23a82a2000c3309610e9a84f8cdc627ce1c0a9332ad92a010415b03a496f00fb
530 -DIST firefox-92.0.1-az.xpi 502850 BLAKE2B daece29843bcfb6f0f4c649bfe99e422c42515504beb9769efb8bcf64a0e94a3796c8b0c8804a73bfde270dafb00196f889a02883cc2e4e3778c64a378dd69b9 SHA512 18272f25199f8e40ebfb50c687989e63600562787450da6a773131c6cfe91b34d70260ad99fd042a0f5045f3c6ad83679421cea269e745d7dfa4da0f8042b887
531 -DIST firefox-92.0.1-be.xpi 632952 BLAKE2B 38ebe4481a4d1aa0512f2706a02b2b47d8d4d9babdf25be9757339c4f51e287ccdf0f92f58dd363d9e42eb9f198801695d72f5684964347e95781434d39cd602 SHA512 063930376ccd0ec362acfdc47e6bfe6a84667a2a7ee8d1443609c71395c4948ff36d79041e35a8d188c8358db241104514a46ccf3f69260293dde50efaac412f
532 -DIST firefox-92.0.1-bg.xpi 587050 BLAKE2B ab05b1eb1e0d0106006c8d9641e430500588bf867961931ac046f2726100e2bd3d39c2de5a07223c58d2dd919a19a5e508a45282f508b9f4e3a5361899d8a695 SHA512 a5a250cc67f6072a45e28ccfe6a088c972447407db5481af7b09308719397bcf20813d2de7dbd0ea8bb338ebf51ff2b9cfc1de298c1dc03a6d4f730ebbc42cb4
533 -DIST firefox-92.0.1-bn.xpi 578253 BLAKE2B 010f31e284612032bd97034fb94ea71e3133c5367e2e7785faa2dda8472257ca513a851f8087e97ce991e555113a465cfe3f4b1e94d5c14216cdb54d9de9a005 SHA512 6936bea3305db22b7feedddc870e8f69041ca43a889ec0d53f1118b188c5db263e74a9d542554142399b31c8fd9222a34a1f5213a4d446f61ddd80f7ed2f38a6
534 -DIST firefox-92.0.1-br.xpi 536626 BLAKE2B 59c83c882a9836a5bd244e2c1cbdcdeb83f804f5a069038b26935890bb0ee1398266d284333417efd5047091739cc7faddabb29e1f48459ba612fa69a9b9d010 SHA512 414d12959cfc20ece1833df145e708d065d98334db3b15f5de764f900f41ced178fce12640a9a7bb38cb2232a8771e1b0347b42e355e0e7ce0f0da26fbe7c14f
535 -DIST firefox-92.0.1-bs.xpi 474956 BLAKE2B 5f60dca9b238004c5ec2fba41d571462b4a4792ae9461db0b901e7fcb4279c554a786ab9099cc91f9cd2826998bc1e129e923f6362aa5e2eec8361c97f26bfd3 SHA512 0d468faafef0d744e58785706811e0b537eadb0019aabe098fe1e4275a9e23b5a95986100cf07d4242b1c6db761b1beed5a3857899f007468a042886837af6be
536 -DIST firefox-92.0.1-ca-valencia.xpi 545150 BLAKE2B 49c832e83be776020e2c6a980ce810619f52eeca8676f687289e237d3eb718392efd640c813383acae0baaa6edba4e0f6ce10348edf04cdf32839838a401603c SHA512 27891c006461663137f3ef5108251ed0e61a5df3f9aae254d6512592704d2363e80a5718020e55f4cb2ca33b5ef0cb9a9d6eb715506693e0fe3a45dd355476e7
537 -DIST firefox-92.0.1-ca.xpi 543595 BLAKE2B b9e3269c401f4422d578e527866f6e9fe8c9e30d40fc30745610b929a3aa1706d82486247045d44551e2818de8751e37c061b2e018e601bff702ca7d07c5fe0f SHA512 399dbd5a64a5fd5dea3f0d28217c180185409ca34c19aee6a4cea892bf63821b828106abae9dc8e92c29a8512132cfa40f751b2522b5caa603f8d56b0ee1f42b
538 -DIST firefox-92.0.1-cak.xpi 569987 BLAKE2B 69a87f4626ed81fcfad477a3dbe5944f77d76f3be7c4703677e987973e92adbb4814f7092d1e1349a014105ebc2d531c8ed1f7ad6c66668bf6bbe3b52a4d6ad6 SHA512 3020fbe0cada3f6170201e297962e431cea07980fd9ae0a4ec65d1e52f084b479962958727df46f2b166e0256b7f3718297fbe27e1b4ba07107ea696842a77af
539 -DIST firefox-92.0.1-cs.xpi 574516 BLAKE2B ebba30d9afd0f9fac6b7bd91a693527af53a02ace7b5cee5ff2fe8fb25dbb7b9e25f5071b4852eecdf55d6bf94ba5da0f2287384ef8413f6747fbca47b7fe676 SHA512 8b9f9c688215a5acd483344deb43fc6ce5cc70d8e3a99fddbfbd7a365781328195365fc4b4edc23f34eef2b61033559aed70f60d5e7cfcd7f056183fa0769a54
540 -DIST firefox-92.0.1-cy.xpi 550434 BLAKE2B 198fd5ef724364955ae1e465e6df6ce8c04b4166c31636164f48da89ed4e8fa98d76fe8ce15716db86c4a3a2743eafec075a05bdc978cd69d013d20b8d092ff3 SHA512 01a05cf99d47bbed6db1c6f5451694c1c32fd4c325b55cbdec1c7e2363da670d85dfd6d46a336840716df9413e46cbc76d75b942e8a50460930f4f93a6afa546
541 -DIST firefox-92.0.1-da.xpi 542309 BLAKE2B 37aebd2b404811e56353b971fc5b40e3348382d930f901065dd4ce2423394227e9151fea73a639daab2c317c49a41782e18a0c7ef31d8084c5fd28e16a566af6 SHA512 60a6177349af0ee7171dc24e786d32197f177d8998d0c468683fe156dbad6b746d522de90e088a68706a063fd9a7d42992dabd5e678ccb3660bc3f3433348d0f
542 -DIST firefox-92.0.1-de.xpi 562713 BLAKE2B ec14093825cc5d238fd6083eb1da42006375b6c28091d9649b3ae89b855fc16a4e3822233677a0ea97088b7adf4de165ab0fdc152052bac5b6092a7bc6f9a798 SHA512 096ba106dcdc34f67904ea88952e8941a751fd8e82ee244e20ae4b62f13f4cae57a45d06c5bdad5f0c1a3c37e4f8a8bb4384644728f6c1535bb4403a53335370
543 -DIST firefox-92.0.1-dsb.xpi 575414 BLAKE2B e5c4f231f2ee332a2ad3bad5084bb14bd06dac4e685641a40b8093c7fc0b26cadb1a35e4cd83342f510102bf4805aad454f71dd67cbb50d7eb8e26ccad622b1c SHA512 90d4fbb9616ae075494e869e4308a12978bca33ce3a67510f1edd6ff4131ba86a4d25f7a3e798381fc47749d8e1506c5e1336658019cda6424d450c1586a2e54
544 -DIST firefox-92.0.1-el.xpi 648536 BLAKE2B 7242a7f237fa95d5ce34ae69cddeee413bb9038333b3e098a31c0877553cf977dac7d9f646dfcd693819d9ba774ec1ba1c43b96453468ae541abfdcfcc71dcd2 SHA512 b2f5ab2ee854e0e8f98dcb3ed6032bad4f87f9e23b370ccec84bcd7ee872549ea4a351dc91cb443a28f38bb8f893aa8f34350f29877eeceb6275f3ad06d458ad
545 -DIST firefox-92.0.1-en-CA.xpi 517708 BLAKE2B d7c511ca653b3f06c7741a99c86dcfe167bf48ab33f6df0bafc868ecbc1e01858aaf15c5a151b671418af888317f99aa32c78dfd2036c9ceadf4f4b674ecd59b SHA512 568a3ded1e3ed0f2f0c906ca5c598ded3f67206d8cf8d755026ddd1ce488cd6240e8794b843b6485ae0cb465f87ebb59f1ddcf00bf095521f4650d0a6864ef96
546 -DIST firefox-92.0.1-en-GB.xpi 518288 BLAKE2B f4997bb8bf4efebd932b2168b169a71905833029f55eabeb796e129979664022499a159336b8829c3085711a90d2266ee8d77a7de4056e0c7a581676212ed1d6 SHA512 67f888c9280204db3afcbf1926e72416dfbe90eaca6998b53d4e7e59169a4649ee57265ed7fb55af61cce19a8379841ac039a41b6b8bcaec61557791c3e2f83c
547 -DIST firefox-92.0.1-eo.xpi 544471 BLAKE2B e1000cdc59b7ae59da9f68768f5584ad20b936b89facd3cd7ac5940b5367323ca865d47501ee052b10fa407fb5672fb53683d05a6464124a07dd86b97d5f8f43 SHA512 f2bb903f1ff5784cdb931590a593a68a19887d943c723b81a9cf7369e01bcde209e43a1946a3f27b5800138807eb2d12c27976f0b839d6e0eba14bda12f4324f
548 -DIST firefox-92.0.1-es-AR.xpi 555769 BLAKE2B 4f9771bf531c15b7ab318231311160bf302ae7668e215fa7eb20abd3575aef5a4921a56623f5c8cf52f8089b8c7330977d828288854ec3ba23c687a1506b09e6 SHA512 bc2d83fa348a7680b393f4a1e07fd739ee8c683dec2740b2d76e98bd08078a439cd6c3ddcf6176021d7d64fa14858635f9d8eefb48e4fd148a60dc3ef134fb12
549 -DIST firefox-92.0.1-es-CL.xpi 555069 BLAKE2B de7983a601eef0071265db8e2f7354f61d2489c5c091e209b887560a30b4e5052bc8af72745196628540e3f217f1d417ef89b58b60cc8c858a3de2352a265cac SHA512 28b768e3b141a906d565f61a0d90598d168f62e7a49e7fb4d92d5ead75eab16a162f73b8096c95ed0c4e057e4718a7c903b1cca1ab4d86780461f01e4520039f
550 -DIST firefox-92.0.1-es-ES.xpi 544458 BLAKE2B d0d27949b05006f02d8e28f9e19af048c9ea86ddea7818977e9b798b77d84dd374048e7db7b73e676f7933f629a2b43c986a08bea7aff80ed40cd0928fbc861c SHA512 a72be426a5944ff674e69f3fca0f257533de8e302848937ebed82f73f8f14d4ebf4d5d512e68ea236c5fc05ca8b7d118644a07ec54109c754f63db93e9c47565
551 -DIST firefox-92.0.1-es-MX.xpi 558216 BLAKE2B dafd0b8366b5d2d31d3edbd025cb26196e671c0e0b67aaa4015fb92e0a549d85f0b14502581d5422dc8f165fa8556e88a57c3be97e0b045799d6742385a06b99 SHA512 646487f1334d28793b1a2ab45491b93cb81026eaeadfd295fa33d997fedc8d1f54edae1f932256790e267e4f1c54b94840056d09fe50c30dca803392c20484fd
552 -DIST firefox-92.0.1-et.xpi 496094 BLAKE2B b1abd936dfd53da623a437def5bc0b37c35c64e09a36a30163d5c171258a0dedb1606101b36e732fd7980892c27f31b3012d3c8ec7a1dc42f6f4a76d8aaf0315 SHA512 c9e6e9edb7554f7cb3efea890a40fd44870d7de2a98ebbfbfa3807338c422d6870b12ee263bf6ca8fdfce153449526fd38b1f71b4c9bc9cc210a352bdaf795f0
553 -DIST firefox-92.0.1-eu.xpi 540994 BLAKE2B 680a466ab969833a8a204721c6cb74851e39d11414b78296da796c0bef0390ec8b0ad89a0230e670804bb6f161477be9604dc8d3abbb03397fa293b59e435e69 SHA512 008e54af9f429e000ccf9014984fcab80be8fda0076424d8eb78f85d1d04f1124cca0601bbd33506fe6a2ee9a07b59dffddbd9d4505f7d2d0b0d342a23d85a64
554 -DIST firefox-92.0.1-fa.xpi 572448 BLAKE2B 6c1a51dfb257c0085734d3509149982777e9b1d443b71e64edd1dae6cf9452e1c010003b94b77376d14b6e6160a2197dcf631dc9355262a9ba3df7a35838d696 SHA512 b5888fa334d9c94b9f139665c388f0de5f3c843fa57f37d8d9de65a8ad403080c924afab62f0fea08e708187964750161f7c4b563e7442abed447fb99d7aa76b
555 -DIST firefox-92.0.1-ff.xpi 487643 BLAKE2B b6f6184aa3921e9d404a109ba5a401892b958ec195c31c04c94a7419bfa9d04e5cf71385c11183bd8072507e265094e11e260f0cb0dd7af540ca63844b25c6e6 SHA512 30391a4fe1426566e05cfc53bedb7f4331690af9e478550a5356758930f014c59d3dfe5ff02d3471edbf92a440fe0a75c37f96a591f184e3ecfe5f38b10f8ebc
556 -DIST firefox-92.0.1-fi.xpi 541929 BLAKE2B 59d6b15a2d26ba69aea33ea0a91f066dded0acfba62db7b683c04aba889f7f18bae56cef5f964ce1814099d51b9ec903c9d66fa79d5c84abb73ada4bcf239b59 SHA512 d85eccfe46d281fd78c6b924bcdc08dce713c7ce2a2e4751444526be06d0016d7bdb43f20337c4af84c9611f226423f4dfe45537f4b86466f68bb7c0b753bfae
557 -DIST firefox-92.0.1-fr.xpi 566844 BLAKE2B 3cf3c42d97feeae841eb7022c7abc37b7cac44fc69dbd23cb62604de2aa7306e178ce5a08dfa241bc273cd95f116c15140993e290b79235b8c6551603e196ed8 SHA512 5520ac0e573cb514361ec149b7104d963e571e051a90529059661191c11566bf5d82f49f0e1eac0889210ae58acdd50b111fb53ed05593f70d96ece763cc8556
558 -DIST firefox-92.0.1-fy-NL.xpi 551027 BLAKE2B f9ee5f46933b110a770e0e7267eeb07df883d27a4dde193a97c2f1bb61e2fa8410c802556443f753c2625986c33e810e3630142f01a00756c0e4b7ab2dbb07f8 SHA512 045eadef3abe25d46006acaeadd73eda2e70bbd1266a6e2d1edbc2080aed8155f98a83a8c6268680149858155935369a171cf5ab3fae296a945282ac35c66d9f
559 -DIST firefox-92.0.1-ga-IE.xpi 472694 BLAKE2B dc8d8ef233a52809175b3ab0a88a4c55d70f5d61a881da09c316abd826ae754c4bede61a8bb56374d0f6b3fe0cb8f04fa67d857f0ebf893f50d39b81795b90d4 SHA512 10164d2c45ab6a9a2c66ab93aa5bfb64ba91df1e35b9a0b41f1b049db8d1d0b0de124ae52096b9d8f391093a3d8534eae5b8fc45861fe41d14de94be31529b01
560 -DIST firefox-92.0.1-gd.xpi 547163 BLAKE2B e568e5bab06b43a0b21a81f32fbf8996e2bb7792fa203ddd290f135e44536afc7c3978787e3466b53dfc602423ce1aadfb02b59e3071f445a2a3aad5cc1affc7 SHA512 fb849f1846356360ff5f26d2ff0d23b69e43be7c1a32eab5288ab29d1cfa2189f466510bb7c1fca8030a2764763cc19e11f2e78e35d53b1ebfd45e865ba9b4a5
561 -DIST firefox-92.0.1-gl.xpi 550222 BLAKE2B 05e12cb38f43f548ef22d79d7c8dcbe66d89341cb706d6c47d3c529cc4bfe422925992417b8170de056c5c5d6821a8b1c3e1456bcab2a8de21167b59cdb52f6c SHA512 7f54e4344b69e95ab46b3ba3685bba16087877883d3fdee23ab40c72ebf67543bbb2dbe403547a661fdf8ca2f891882e893dd808c3da98d7ba49d6b68c0129a0
562 -DIST firefox-92.0.1-gn.xpi 567834 BLAKE2B bcd3315219def7ff582547c9af04bc1e2970f40476f46a03ba0ba75c272846994f6c742c583877cbf9e2ad7214b18144252d8fbc8ce29506e135ddfad741e6ed SHA512 e866ea1f326ad55d873d0e233bb407cb707838c7fa43784b21cb58db07caba2ca30e509e42b1b7155371674d6949be7c6cb1a1889c2cb055d8c40a9084f8745b
563 -DIST firefox-92.0.1-gu-IN.xpi 546536 BLAKE2B 4e89f1165c0af2d73d7f15e284c19f0a69c0438589d480af1040f924599f82888a5a4ccc66b02150af3aa633fe7b5e924708eb746581fd5b013ad70758bc85ab SHA512 e7271ad3a77c81ed6665001578b4c43dd526250d1f8a91fbce69edfa01573091c8b025a5345398567363418f9e87167ced54446227aa583e6331a28a2dca78a2
564 -DIST firefox-92.0.1-he.xpi 565228 BLAKE2B ad2edd6e500109e164882a7c9aacac18043eb7496042893c8b22052fadf4803ee6096de94c0356f14874fc485f2fdf88d57884de6b3a999ec82db7054b0f91bd SHA512 3e17c056af8f8bb31915ec9f2715cb967b363d093adda9678454f1bacff6ad148e36af408cfcf5839fa63d63aa0eaf7d8f15a35c5646d7bc4fc7db0d95f5db42
565 -DIST firefox-92.0.1-hi-IN.xpi 577578 BLAKE2B 79b6eae21df015867d32cf8baa7a9aaca030066ed60d8573609477db353d865dc6daf2537d6fbb759fb40125ce0de68a577f041f6c212c29444628d9b597e6bb SHA512 4fc9bf7ccac9a49daac46b15570504a6c23675ca616add53eb6d6a673b0e1aa9e1f10699db1437f40a351970cb23057d540c13fe609232db0dbb91d9fccef6ba
566 -DIST firefox-92.0.1-hr.xpi 546282 BLAKE2B 4d21d64609e0923c10843d3f6e984ebaa6b28dd852ddd57909bbc79b988d48e516025518d15d07717ba3238d52a265bb4bd4c16b86e2650f2adbc2019d160007 SHA512 aa2f31c3e6e76fb8cca873c3837a7e7d95cf452ef503653c5b134b1470745ec1b196c2a419e51a82339b49c1f04725ff7f95c3d8f031562e954dc55f5b6e1efa
567 -DIST firefox-92.0.1-hsb.xpi 571502 BLAKE2B f8ce24b9b8dcf8b6731353df1e9838044af3c5b4056a7e6ea19a1527411d50d16023efebadc1b38868dc6aca0e144bdcebf24b76053331f45ae629d6f0da876a SHA512 fc2561e3af337a2fe6363a48fe69ae4764c78ae9621fae17786c9c5ff6cebb8415b54696488707476a6e5a401c63ff8fb3e456f879e3d71411489c459aeb8a52
568 -DIST firefox-92.0.1-hu.xpi 575396 BLAKE2B 2b3ffd087de2f04d8430eedba7364e8f670f50ed24ead6569355ca61d573e7b94f9529ffcbdfaa06bc6240d54c2e61adcd1f7af85d357b088f17902829de8e2a SHA512 15852bc771757e27768ef5912a49d320651f220d918a6ad935a49cc53915152f3c964f902e32ec242c3742e6ec42c7084962f26b3a1d7931468abd84cea0c6fe
569 -DIST firefox-92.0.1-hy-AM.xpi 600941 BLAKE2B 2afbe11e643feea3e817a0675227eab80e5516079c90331bb2d83cf9b2690d790e44455705aade47f392b2d46bb44f2647f1c9925eb2c357b0372fd1df81e2ed SHA512 6033ccee25c6a493b34bdca82aefa7b1d34854f09eddcd314d646cb0c710a4e9baba56ef4f0deda9a9387ce6d715f32fa173a493fadd26dac25472d5221e6264
570 -DIST firefox-92.0.1-ia.xpi 541035 BLAKE2B a62700cc1421970349c636c887a9654f0979adcf1a9e1956029fb2974f714b31d0627147b13b0779cb4d49425f59838fc25e0a2d99b00b8d2bdeeb4bce2c0159 SHA512 a29f3835198903531c3c4b086e1b27a5640d194582d01c6ec9dfeeee3407e6361e3de06e6bc6f24c960f8a85ed2eb5247c1db1743f4b14182216a8f06ab49700
571 -DIST firefox-92.0.1-id.xpi 535782 BLAKE2B 9d232f08c822cfa33b4cab57bac12f225e75810435fe3774ccbf872fc7aadd622ffccf7e18a4b5c70d2ca1f13d63b1c60f92005e2bacc2931c74b3ec527dfa94 SHA512 234b73a7204f688306b7a7387067c1948fb6197daddb382256d8f0585068960ff820f6d8fffefa02caf97dbbe6545433472259a277e3fecb1ee7d46dd2db7bf1
572 -DIST firefox-92.0.1-is.xpi 483259 BLAKE2B 30b5309c3863003cf1ed0d8614ee1aae89f8b275903c2da78eb047cbbe97a73f2127d967948d8481ed350a75e23327a6ab09998b1b2b15cfde58aa8f487616d3 SHA512 d39f3e7ab6dff8233151fcdebe608678413f8e1311a2cd9d8b0fcead26fce068e7b74ddb80bc8e1b606c358ffc325bf2bf62a07b936cf83d6bef95f7e73ea5d3
573 -DIST firefox-92.0.1-it.xpi 468804 BLAKE2B a144856da8118eb796b79a76d1f5e0f3d0b72820094c83851bb4b01e9dc71d3a0784fe8cf3130abeabe68877160fbf651b8b65e1cff85e51b4203fec68a698c8 SHA512 bc34be7a704beb17711f3cbcd2339853e35b6fef79ceca8d5b6b68b74463a16684bc07df9cf7f2ceb966fcf176d02afc8cff3838df753c10b07ab9ef4f98ae51
574 -DIST firefox-92.0.1-ja.xpi 600987 BLAKE2B 28371df404e08d1bc3c3ae42c9536bd41bf0e6f25a3aee226f36d073716189598c51c7cf5dcb4429a226177c4f0dd12355d8b181b031bddae991640739bae714 SHA512 a6a98fdf80ef0f5ecf3a83ca9bb3d9ea936c353de917ab767d83303f5deebac4b1ba024c20ee6a0ab7ef775b35f597c585753b1627268e753403555b10cc3644
575 -DIST firefox-92.0.1-ka.xpi 602473 BLAKE2B d8b9971b5d5a472d5faf05a4c5ba6de08fcdd1e2fb193f0dfb13f09bcbd34fff05730eb28093cf794a01979fac66e4dc8e1d5e8f2aab7f692ef64d1138139e38 SHA512 c1ca358b3ed5f4699202ef76bfb0712554637c90f09b65f3499eaf02d6bb24c1c5f03f3af8919fad6529536de66fdb9e0c9392dd854fa4b9d708a62d09f92fdf
576 -DIST firefox-92.0.1-kab.xpi 560163 BLAKE2B 0d250fe999d0a47de95bb15d1cafdc05b404ab1c6a9b7e61dba3a8dc64ac7f998b94362ea19f598a2780319c50c5daa8a47a7535edf2310d1ffc1f7cfef99595 SHA512 8b8c625518973e0013a86ff0e5341e7c20db9038f31d76151c2dca54bbe86015e9ae69d8dc5f6e1ab155d61091dca0bf4c73ad18513fe607f600a7fea61eb530
577 -DIST firefox-92.0.1-kk.xpi 616646 BLAKE2B d877bf963effd6850bf05a5f53542cbd27814b77b22a1073e20ed6765cb2616b298bf1bd577169b9ba2c7e0ffb38a3c9d53a1c4a7d407c69e3ab460a3e62b708 SHA512 eb6feee9fe266cb5472208d5fb1e86572ec2c98c644eed5367fbf48822966de9d5ac5ce6684b27537a349b36a99b1c150651948ea3f0097633f8a5f0ee47c083
578 -DIST firefox-92.0.1-km.xpi 546739 BLAKE2B 1cb95911a6d73481d7aeb09835765f29bb42fc1807466dd364118fe09796f1c5872aa5baca7518a917b3c3bc2908b641edfdd48efe73e5b3cca1f3e8f9456885 SHA512 5c09f8d8d4b71f4e1fc8aed767ad375e3fa012d642c499de8748fe3e1754ba4042cfc17ccb864f28fd5f134221fb404758ce1f16b0d3544d998e83ca2d28ecd2
579 -DIST firefox-92.0.1-kn.xpi 510404 BLAKE2B 4096d82c3becb34efad6742b85132356f4d77644f87640572d33cab3960c424144bad64adda1a80eaf733a6e609bfdc92af488f3df23a77846a6899e5c10d480 SHA512 51724d39bb53273b5b1992119c7045de4771091ee47ad49283ae55a958f1d03dad34473a79e1d57692fe20c8c12ca25114bdce319ccf952986d4a599b151baa4
580 -DIST firefox-92.0.1-ko.xpi 586709 BLAKE2B 8dbbf07c24c671491d37d0d087d89e4c7553c5185eb223f3063a3a233679d40b6d18559d2105cc892dccfdf5f9fcec8096fe100c42aa1a22a2d0356655312476 SHA512 c2111821f6c20f8168f26ee108cd91ad7e72a746e85db655276607a9877fc2b81ebeaa988cb3554082ce4e4c5b18a7e92adfd0c2b1f8427820d759c16df7928a
581 -DIST firefox-92.0.1-lij.xpi 483664 BLAKE2B 593a8e2de99e2d4b62ca73ec1356ff1d48ff7e966074365e2d515b1910e7896c2a9440b06540ad045bbced51313c6ef0b7aa1c6ecf0eb311f34bc17d9bf54712 SHA512 216c2b37fe8dc3160c5b03f33650c5c8db49e3b0b0812f9f5998faf0b3a2cf602f99bdd066aba4ccf070386896a6f8af0f40631e3e2d73bbbc78cafa25f02777
582 -DIST firefox-92.0.1-lt.xpi 569334 BLAKE2B ce33287575b37005b5a8599af50288435da063778aa0f50ef41077e1a2ecf5494fe528b0f7a7fa2074cd1e45528990ab6712cb86c6f028f10a11e79b154ff0e5 SHA512 35d7ee784a5e280511eb7986eb55301604d051d24718d856e2fbe347dd1ec862d2e54f3bb7b67fb03796dae3b0e54ad6b37c627bdb209e21f6b212f929c56420
583 -DIST firefox-92.0.1-lv.xpi 475270 BLAKE2B 1f83cb03241b986e3f1e8ac034c47bb93e7438cd54636bd924cf1b529290a621a7c1a170974e84aa3ab0ddcc589991aabd7daa7386b2b8fe981bd106dc00a692 SHA512 ceabb9c3d53813532286746ba9fb528f449e81a5ad9f4539a70e61b0194b07d03274a599adf4eadab29083bc27fb20897c3c23918ce3c56299fbc4ec0f8ad1ba
584 -DIST firefox-92.0.1-mk.xpi 475197 BLAKE2B 5b46b373dba926450d7b556f45f39a24be68339ce77f6a89d25caa640039c75469f929b8aa90fb6e5ed14a64375b240123095754b2e0822dacca716b26c3622f SHA512 e66ba3599cbbf01753412489eacfeb5349ec886a601b9b72a2c375d520ebed5e76a31aa4d0dc8e717257292343b2427354170a30e4ec186a39f194747ce16560
585 -DIST firefox-92.0.1-mr.xpi 548695 BLAKE2B 8277b68e6f977345d5e4e6635a1d8cf216d1fd0add1d85ffd53bdeb3a7719ad881920ca018f2d106c9497e2bbf84fbfcc310fed98b93e073b9d0f2401dc58592 SHA512 9b8ca1c31eca1c2935d1dd026422f9f69d9903b88c07987e616e07c6c35d2798d45f91061ae199ebd1882958de72c35d60ebae7f552c62c19b3a7cd44587d5a8
586 -DIST firefox-92.0.1-ms.xpi 459113 BLAKE2B 93bd3525707f6cecc94e38101a629168466c24575f93225c33d8605d119fd56d071c831946450a1c27ab30c7d445baf8b4d964117c8fd372692489e7547902f1 SHA512 8572f1a8dd9878ace14f1cb6f11ca460218dcdaca8136a2ddeb10fb26d1690ee75d23da6a6425659f1902d8745b7e1473d8b7e58fa95508045a975d48c6e8e03
587 -DIST firefox-92.0.1-my.xpi 532115 BLAKE2B 6a8751365950b932fc760ec1d42af89433522f04340c83fb71602eb8fe4826c1147fc6d07f80b63cb6cfc6a09260a334b4b6ecdb880cd6af89825e223805b25a SHA512 81008262fb836b9cd4c6f9f4ae1fd40f1c958be18239a5e891d345166cb01d5011003f292880b06918b6ec67ca63bee6d338e9dd3f2d6360cf3848d83a3ae433
588 -DIST firefox-92.0.1-nb-NO.xpi 537637 BLAKE2B cf359ed7cc20ce245f412eaabd95eec0212a8712d01654d0de0378beb440d3140ff079689905ca326ee26fa59c7552e65ef5a34c92decd344b69baa15ec42a49 SHA512 5159b1600501f64b66cbf6e76ec34cb9710e4cb30394b327c5120507464852adb4665be377c3e6cbb62f473ec7d004de464228ad636a5e2381619595f12f23ec
589 -DIST firefox-92.0.1-ne-NP.xpi 488068 BLAKE2B 6c20c38df8c4e7d50cea8651e2a5fc8b814061cff80516f30222eff05ce8aa9f32a6abd2333b20e80dd9f1e6aed8ec629dbdf4649c1f50fa76112a4c241c5763 SHA512 569a3375bf8d8c5a87f5315c6b9ef8d29cab2b0f8315765549fd09cfb8b35e4d29e2e5a8909832e0fff2356efee74a16ff9c2b1d106518c58db7e37c2a16d4f9
590 -DIST firefox-92.0.1-nl.xpi 545568 BLAKE2B 53b79d5cb04c1fdfbe39f77919e11c363024eafc742749f6e723fbc719cb09007674f45aceb594394987c1743d4ab30bdb320ca5272284ae2bae0ad67e6e9a27 SHA512 6b5a9b8d3d9453daede5665022191fe408c6ea3063b3b9759ca098261f386235a10e7fb58fa07d0e33672e521af4589100aff65a59848381f44f8be1a43e67b0
591 -DIST firefox-92.0.1-nn-NO.xpi 540432 BLAKE2B 5b6860b6eec352aff726ed211c42ba65a97931b9c2e87719f62d980d96c8515939532796d41cc8d482781189afb3c27fa0067c7c3162bb54d6370a5eef1b379c SHA512 55f5640ff1cd9a23e282e8a664063877041797524ad732007302b1663b21ca8dd2116919b765116a216114fb8ee02dc6491d82cc1c62fa54a3a0229f24dec955
592 -DIST firefox-92.0.1-oc.xpi 561710 BLAKE2B 1e67498e17e081c544eead14e74ab5bb7a14048c2d12f02eb0953f212b8fc7a57b9d122ea55ba8c9f0b11fc5df95a4bf7cf4ce77114902433a6c902d2a03aa83 SHA512 09555295b118f995004c21bca1e1f49b991911943fd9614d18407aeb41baba67c7e11592c2a4f17a7a7acc221cd78430f80d4d318b296e9a3eea6c684101b91b
593 -DIST firefox-92.0.1-pa-IN.xpi 606782 BLAKE2B 37c7458729cebaeb95ae358524d6342d5626296e6ed4b2501d4ac6dbdc7105f8f8e5c504bd73d95a461de8a26408258d0c565db19891b2782ceeb21b4f6ab500 SHA512 40a5e0f805d6311486867df9e8c176ee7a0b84a17ecdabeaf615305684a7423227ced86b53a80dc545d66b9c8dae9b95c52a2a13ca065985170e7f43e0450be8
594 -DIST firefox-92.0.1-pl.xpi 565472 BLAKE2B 926beb34f5c48702a39ecca6cbb8f2a3f91523a38676862a2c3260cec9fbb52b670ff68f9ef1e37f05bb5a176b34637b326b405065efce4af2e81169860ac69b SHA512 94755897209df0be77e0bbddfd70a3066f0d156edae021a362ae465599c15f6689d18b69942b90894cae10605e3c0bd40035278c144e28f8ea500108f71f0015
595 -DIST firefox-92.0.1-pt-BR.xpi 551336 BLAKE2B 7ee83e8207b94dc3003265d6a254905e709208f1624238fc3eaa6d02ef66bcf9b029437d51f96b059a90de6cc795bc749e24d728a7ec8af91e4d4bb27604c441 SHA512 8316846328f0b795da0566b4fc6feeff59bc833672ff1ec86c475f032c861ad7b17006d07c01b60b4235706b6e19d67442d4b6bd88b55d993484aa3593a622fc
596 -DIST firefox-92.0.1-pt-PT.xpi 554681 BLAKE2B 47cdc49753490d06e948dd112e07678a6e59c825278149f976dbe8cc7f33f1fc85b8e25fdff857dcaf07f875b1dcf5994165cd270db84ed2375e9e1b0848838e SHA512 95c33aa12d8da5ed6c47fd9737292b5c3e622864ab4f5fe0a66e3170fa6ad2d0a0bf160cd91c8f254f5f5ff8984d3d16a64546855e9372eddb0427295db6585d
597 -DIST firefox-92.0.1-rm.xpi 545692 BLAKE2B 2c15a7655985b10a9a8f973e03b10cd2f924f85746d44b1801c024d82d4aa2b471dd2681c399849e1d3fbac6435bbc2add96c0a8c75c1eecd14cc5543a5d079c SHA512 f27bd85a5af8f12c2f7f7c15afe67d6ddda831ed08f11ff212689872039245668ffb9a201a8e9f51e0561a3f9bb9ee698e81893b5779bffb81079f8ec3be62ea
598 -DIST firefox-92.0.1-ro.xpi 547345 BLAKE2B 9913ee0f7877f40170b5777a089ce198b9f663225e1a864ac9ab84e48604c87dd255e0db2b7c67d1592e0daec57836d317d6c9b7050fe9c2d3c8393438119a46 SHA512 2c45afd35cef5b17a3bd06f1b4e96bb3976839acfe38570cb2ae78217bac16f399d64fd1f66d9e7a51383233a8800c04c3f02ec7b78116c8dcd4521fbac69f29
599 -DIST firefox-92.0.1-ru.xpi 637278 BLAKE2B 49a0938762107625db347859ef9f38122d2d2e6407225206247e101c6dc901a380ff333a6eafec02d839333d080583ad4485c335cf34fd57280dc7e25fff2e47 SHA512 71d14a75a20b593058a55dbb9b34a132c238d741ef4474e787424bfc5a7b74cb7471c42ada99de09587399462c8f8de9d3aca5c6deea702bdad80918fd0b7dce
600 -DIST firefox-92.0.1-sco.xpi 514697 BLAKE2B 186f7beb84597887c79c70afe60661f1cab88ee76f8b5527531d2d856ffedc39e7163c84dc4765c312ecb0200780beb8b9a0a81d60a2ebd1a5352ff14e5d09c1 SHA512 4befd6e5e6b10fb266e6ccb0470e6aad8e26660592ce462bbe3b2d606e753306c9957e418c061c33a24c0481393a63ef382f16e97ee72e3d5127eb3e4fc8900e
601 -DIST firefox-92.0.1-si.xpi 498678 BLAKE2B f1595ae2b5777876e7bbb9eb75c4830a612c43581f8d43281457e4ecb42cdd0239e7fc3402021dcf660a33df098411672007713fd8f4807fb16777b19bba1c21 SHA512 969974e5667df25670ba0917afececee2895963aa7c1aa0a5d84f4de2d153b5b424e4009badc77ea7b268d9c2445d188cdc44f15688f127d0e425ad2cfb65071
602 -DIST firefox-92.0.1-sk.xpi 574783 BLAKE2B c207b3b9abcd9d80ae9432335fa8e7931dabe5cb0dfafd9fdd8338d0d70874703673930e76519876533444ce46b38c14b7e5083e19554985c7f8998da6421a30 SHA512 f34fedd725c889e26f3c68d7703df1392e221c0813bc433f350fb0957990b5012d76dceed7aab9cf98e2f791780e52a78da8404370b39abba4c4211cac6cf99e
603 -DIST firefox-92.0.1-sl.xpi 544638 BLAKE2B dd09c8cb671304f3527b9174c8daadbf85c1e95262a7e8bc98f446d9b8d94e1243fe5b8102c9871af4197d3795ae79166c3b224328f8a8ab8578e42311f518b7 SHA512 e2e8f395da4fb63f05a2c0e18f7b64924e07c9d136b7109310d307eb5df59570967f4a5562e5011430ec34b2f2536d2a77444f3e773fbeed0cd426d25f26d407
604 -DIST firefox-92.0.1-son.xpi 434675 BLAKE2B f8f9a342a2a7f8ad7bc9e3e1c1326b06bc22febba0540d204baa3e758e5cd59b83ab405ec1dd932d1ed991a3bf3430f2a96cf8f6c40c693f1cf9d202895b5da9 SHA512 22315bd63dc7a4e4788f69c043a83cfbce8799b27fc062d3b275805cd2114be373d17318ff403a59d5610aafa06d67a5bb11b5d1c9103f6d526a12c0c949a068
605 -DIST firefox-92.0.1-sq.xpi 564121 BLAKE2B d6dfd2ff91529f23b949b3c71c1ea6cf168937e357dbc741581183939d595068ff45fc77f293bce54477f1a00c133cd3cc4bb36f681d6978276b3a5d14126bc9 SHA512 9ae5f83ad613fc13a5ac981e5e26ef2a4c1d4591428207c02ab6eabc34730b093b17c60b76a9448367458ef9a723a2ff2450717b41c8c06c291af088af242d08
606 -DIST firefox-92.0.1-sr.xpi 602899 BLAKE2B ea0c668740684c63190121e5e8f76d4e79e4d5eac1338796f7aaac21595e3cd7490b31881d8cac12decff51b3b24329c9c77bee0bfbff4803f0dab4537617593 SHA512 36418408595689a861b6c163a20af801608c989f2264917135635ddcb93228486cc47e5dc42cff725d7e8682d516291664f35eb14688d6ab1e7b745305203db9
607 -DIST firefox-92.0.1-sv-SE.xpi 548845 BLAKE2B baf80c384c40fbdeef0ef0fd4c42829df6e41fc5775849cc26efeccb5e419eb8e41cd70a4c94c18cd51cd7140e32eb30ec8fd2d72bada565a47149d5095477b1 SHA512 6bcadc0f55358e70e31ec934395ac3f8fe055cf4f8bcab1ed72f03ec2014982e8beb2a901af70f2d9104513e4626bc286c48ae245a362a6f0a3257333aa35772
608 -DIST firefox-92.0.1-szl.xpi 524082 BLAKE2B 253cedeef55b8a40acb57f099d0d40e479a2d81420b18b22a50de6dbe059ed06c4b15fa75060ac562b3d69fa2076af5f835e5272a5b98d3fc8d99453a40f3fd4 SHA512 b5713cb95b1c1cc08541727a754c973484d50e53c105197fafd1e8fb512362759d0b588de9a4f0921e16a4d78629e33ce68ffb062331b40b88f26acc2e35c1da
609 -DIST firefox-92.0.1-ta.xpi 526874 BLAKE2B e53aff7808f2185fc8d7e2191efacfe2a70722bbfa04ad47654b3f6702a9588cd50ad688cab12c78355f62aea4c6eecddcf324c7aeb6f805063c6eb3e066e628 SHA512 b042c4254f92e336362f42b74f0242ba482c3d80afda46ade260843316f661af4b72029098952652b7169b1362af5023688bf6a293c3ab30ced392b691607d55
610 -DIST firefox-92.0.1-te.xpi 567533 BLAKE2B 138781adbfdc5f20b452debdde2804bd37f8df043d597c3da49fdd2e0b607709a843ee0ae0ea99db04485fae54fbb8e0cbf7e3db81d5dc3a8117353c338b07ee SHA512 7f8769435d56f37047791564a0e789fe1e6c32e35120ad7a765f68b37370b24a04dec92118ce9347cadced40e282a616a8a4ca511157c422ecfcecdc638ffe36
611 -DIST firefox-92.0.1-th.xpi 616406 BLAKE2B c6bb56c52095ddf3f84972fc1706c1847ebf2ebe21e68004f38f8bc52ae357941a99d9dcb2fa697abe08a07752581e122e4f07935fb9117ce440115582b5bcb7 SHA512 aeb1254e460978e2da78a15f734723d6fa8cae99bc412fc459fe92d7553863682380e8f719ef5b037edfc6aa4d8302060a89c426cb711c732a96d2859a4438a1
612 -DIST firefox-92.0.1-tl.xpi 533364 BLAKE2B 50fa717436824c3ffc43ca45aca4fa0427f93b7ddc9961e0da8b23006a0209298ccecb6f862e9c5985c5909b03999272c7f33b344e237777fea3f6aa09e7a558 SHA512 7e1da2f18e7a813dd5d205352df72de639fbce56c230db82d83b673f5d562caa4332fc75ad31f56054ebfe7d24fcd782dc8fb941e1f68711608ff87f5d84fa1c
613 -DIST firefox-92.0.1-tr.xpi 561252 BLAKE2B ce10a6df082f1f542c5474217da2021061cfcd10d6524a8f87fd426c7cf938733e4c5e3c9c50d46bc8e2c16078b35f6d36a90ef9e7e5290f2e522dc97eebd114 SHA512 cfd149dbce0e511fe9e536abe7de45078b36273d0fc92602b764de03c7dbc19be6aabfcd0c518ba334612ae9fb10add25e1bcb0a79cca24a4d45ff1eafc97077
614 -DIST firefox-92.0.1-trs.xpi 505515 BLAKE2B b8eea3b9822aa449fcec27acc1770b8f57734783ead5dda9777fe2e557104b1506c837ac87ff3a419e122a4465aa32bf87051792478930387e4e7e6275a888a6 SHA512 8fcfcba81f384b19a4f8a713ef4a97c0e6cf6c360fa9f85c964fbd06e3323f4e40c28b6ea4254b9d7eb6beda909b9cc7cc910c5518e50868c11db79196ec5337
615 -DIST firefox-92.0.1-uk.xpi 631240 BLAKE2B e947032e45a6f4f2605d3eb4ce5499372b86ca6676dd88d47643cdd8e2b76abfd701a536a432176c90e77a56a7c269198b1e3282e92ab8b5da85996d3c328446 SHA512 d87aa3cf3fd71757008cce57ea7dbe76ec01ea672e28a922aead20b05e6c206f50abab315899adcf09f6e74b19afe5d842193cf192a9786d253c7ce457070702
616 -DIST firefox-92.0.1-ur.xpi 574648 BLAKE2B cfe4bbfc114469b0317db3016bd9273ce2e23fd4a5bac24d796c9195b0ab1a4314ba536269507744439f11aa951194b79d8aa05970f01ffdacfa8739fc598032 SHA512 5e1ce66546562a23837b6fae0ad47877716d80c8a2fc0be27fb397023099dd0b69831706f10292b37000c6f062db6d6a5e4d583067f4f9b1432cdbfc0049773f
617 -DIST firefox-92.0.1-uz.xpi 482661 BLAKE2B 4ad0c7af4a6b8cd8ade9f6997d454ba0475762cf8484cf2676a6bda63413a4de534e2df2b6a80ecbb32643034d7bb726c761018ef2a36080d4804768486edba2 SHA512 6cd33b0a1a1d6753085f6a0644e3956ec6aec43af45aad0d5a823846076b1cb91992b57273467cd5d362e1759c7ce10dd83d23ab6b5c595e0bd66201863b1b55
618 -DIST firefox-92.0.1-vi.xpi 582888 BLAKE2B 099b24b3881cb78d06f333a3523b615c52ee414c8def0f20b00a929599fd361c15946db6743e75435b8e357aa315f5f54dcd19165c18b44620262747028005f7 SHA512 a36d7bfbbf97e5da3205c893d4d7b142f91b57611d5ab8dca4d0a20ce91779428ad7b3b007fe5c32c3b2f1e2b4e026c4a8e735a350270dcf6d5a1bce2e5aab9d
619 -DIST firefox-92.0.1-xh.xpi 436804 BLAKE2B be22329e3fbef2bac77d2842602449cca8128f2921625cff9addd116aeb768642a6a236bbb15cc0d05dd9753652bf7dad233c0e65da7395c6d3ef7ded275ddad SHA512 9ede42192fb5d367c852a157e1f5b2a012640b638180978246b4c88b3e64fc1137b6d37c878746115a927f2d39aaad28abd777e0d71b8d4fc95f107b96bb1e50
620 -DIST firefox-92.0.1-zh-CN.xpi 584481 BLAKE2B ad036c8632b6179c13a68c0984af1c556e81bde86c3693bd43bcdfbfba912224ee19e4b8f70e6335586b5d5007d2b2e9a7ff2e2a07d7224d4096b3d54abfceb8 SHA512 916d7809acafa752c70e62722f6c61b5626f5ce30762373f312583bf12787f72d5552be9014205bca03ba1339b4f9e013aec8afd1fd980803ee1021d59f8a98e
621 -DIST firefox-92.0.1-zh-TW.xpi 584667 BLAKE2B 5358642e7088f384fbf68ad3117bd7ea85a8abdc421bed792c13515654286024870cc756e8832176652727d321a4f85ec1af72ea5804c477909c4d9bd121b37d SHA512 ee7625608c6ac0c56791697c3dcd1c5998f719fa1636717b8b8d001748020f874a16214499595d07e69ab8fb736dbf045a0ef2830478e99366beeba942ef798f
622 -DIST firefox-92.0.1.source.tar.xz 383567460 BLAKE2B 021aaed695994145f4dec0a6d251bc57c3bcaa7a0772be060f1b2167d330ce70b14ef2867ecce24d8b833b814506196d290c2e1984db593d2cc1e4029ff0b8d8 SHA512 53361c231a4ac93a1808c9ccb29893d85b5e516fe939a770aac7f178abb4f43cbe3571097e5c5bf91b11fd95fc62b61f2aa215a45048357bfc9dad9eabdee9ef
623 -DIST firefox-92.0.source.tar.xz 385055824 BLAKE2B 782fa226c11d793383a577b1c355933ce83d153596574e864e1a357ab19ac18ff5489aaccc18a326a76af9f51bbfeb3fc5834503c7923b86f7490685588d767a SHA512 1a73cc275ea1790120845f579a7d21713ea78db0867ced767f393dfc25b132292dfbb673290fccdb9dcde86684e0300d56565841985fa3f0115376c91154ba8e
624 DIST firefox-93-patches-01.tar.xz 21604 BLAKE2B fa9b993f7a5c95fc8a72c81c65c3167e896e4ab6517f5e3c4f543b6fc15714105d8486680557d82482f2ee5a99be23c831564e38ad8fb06f9a1c95d164d1dfb0 SHA512 ef982215b720ae9484229140a2bbfc5d2c606b888203a82113e566409b34451b7edd184e46f3ac500d2f371ecc1ec58f28610395d90f17db30fa58cb638d19fd
625 DIST firefox-93.0-ach.xpi 452270 BLAKE2B c7fd81469026d99e21553ec59d0d005e906915483b3765898beba694cf31c02aef3c15789a5c2e2e2d1ee242aef323ca7fa1c142912917ec2ca02a8cb9c604fa SHA512 9a4c7f880801eb1c4391a57107e88e3d43e6ce0a1bd617ba4d11951957e2d62116f102e55bb62db22378460c68d2ecb3a9b9b0285951c46846920ae02360749b
626 DIST firefox-93.0-af.xpi 425657 BLAKE2B 8f0f1df2ddc330f386d831696dbbbd15f639b0d95ae4d85b268924116f93f1bce22adc10b6053873f0ed6d69f9067515774b7904f7595c89a25edffde2e25e97 SHA512 f8c122c624c139c0afea5920f063b981665771ae107d32b654206dc0d00a8173230a357ca72649bc636d02825f1af90d291b5e09f9b7044d05b4af1ce39f6e6f
627
628 diff --git a/www-client/firefox/firefox-78.13.0.ebuild b/www-client/firefox/firefox-78.13.0.ebuild
629 deleted file mode 100644
630 index ddf98b0a157..00000000000
631 --- a/www-client/firefox/firefox-78.13.0.ebuild
632 +++ /dev/null
633 @@ -1,1187 +0,0 @@
634 -# Copyright 1999-2021 Gentoo Authors
635 -# Distributed under the terms of the GNU General Public License v2
636 -
637 -EAPI="7"
638 -
639 -FIREFOX_PATCHSET="firefox-78esr-patches-16.tar.xz"
640 -
641 -LLVM_MAX_SLOT=12
642 -
643 -PYTHON_COMPAT=( python3_{7..9} )
644 -PYTHON_REQ_USE="ncurses,sqlite,ssl"
645 -
646 -WANT_AUTOCONF="2.1"
647 -
648 -VIRTUALX_REQUIRED="pgo"
649 -
650 -MOZ_ESR=yes
651 -
652 -MOZ_PV=${PV}
653 -MOZ_PV_SUFFIX=
654 -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
655 - MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
656 -
657 - # Convert the ebuild version to the upstream Mozilla version
658 - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
659 - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
660 - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
661 -fi
662 -
663 -if [[ -n ${MOZ_ESR} ]] ; then
664 - # ESR releases have slightly different version numbers
665 - MOZ_PV="${MOZ_PV}esr"
666 -fi
667 -
668 -MOZ_PN="${PN%-bin}"
669 -MOZ_P="${MOZ_PN}-${MOZ_PV}"
670 -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
671 -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
672 -
673 -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \
674 - llvm multiprocessing pax-utils python-any-r1 toolchain-funcs \
675 - virtualx xdg
676 -
677 -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
678 -
679 -if [[ ${PV} == *_rc* ]] ; then
680 - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
681 -fi
682 -
683 -PATCH_URIS=(
684 - https://dev.gentoo.org/~{axs,polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET}
685 -)
686 -
687 -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
688 - ${PATCH_URIS[@]}"
689 -
690 -DESCRIPTION="Firefox Web Browser"
691 -HOMEPAGE="https://www.mozilla.com/firefox"
692 -
693 -KEYWORDS="amd64 arm64 ~ppc64 x86"
694 -
695 -SLOT="0/esr$(ver_cut 1)"
696 -LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
697 -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free geckodriver +gmp-autoupdate
698 - hardened hwaccel jack lto +openh264 pgo pulseaudio screencast selinux
699 - +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent
700 - +system-libvpx +system-webp wayland wifi"
701 -
702 -REQUIRED_USE="debug? ( !system-av1 )
703 - screencast? ( wayland )
704 - wifi? ( dbus )"
705 -
706 -BDEPEND="${PYTHON_DEPS}
707 - app-arch/unzip
708 - app-arch/zip
709 - >=dev-util/cbindgen-0.14.3
710 - >=net-libs/nodejs-10.21.0
711 - virtual/pkgconfig
712 - >=virtual/rust-1.41.0
713 - || (
714 - (
715 - sys-devel/clang:12
716 - sys-devel/llvm:12
717 - clang? (
718 - =sys-devel/lld-12*
719 - pgo? ( =sys-libs/compiler-rt-sanitizers-12*[profile] )
720 - )
721 - )
722 - (
723 - sys-devel/clang:11
724 - sys-devel/llvm:11
725 - clang? (
726 - =sys-devel/lld-11*
727 - pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] )
728 - )
729 - )
730 - (
731 - sys-devel/clang:10
732 - sys-devel/llvm:10
733 - clang? (
734 - =sys-devel/lld-10*
735 - pgo? ( =sys-libs/compiler-rt-sanitizers-10*[profile] )
736 - )
737 - )
738 - )
739 - lto? (
740 - !clang? ( sys-devel/binutils[gold] )
741 - )
742 - amd64? ( >=dev-lang/yasm-1.1 )
743 - x86? ( >=dev-lang/yasm-1.1 )
744 - !system-av1? (
745 - amd64? ( >=dev-lang/nasm-2.13 )
746 - x86? ( >=dev-lang/nasm-2.13 )
747 - )"
748 -
749 -CDEPEND="
750 - >=dev-libs/nss-3.53.1
751 - >=dev-libs/nspr-4.25
752 - dev-libs/atk
753 - dev-libs/expat
754 - >=x11-libs/cairo-1.10[X]
755 - >=x11-libs/gtk+-2.18:2
756 - >=x11-libs/gtk+-3.4.0:3[X]
757 - x11-libs/gdk-pixbuf
758 - >=x11-libs/pango-1.22.0
759 - >=media-libs/libpng-1.6.35:0=[apng]
760 - >=media-libs/mesa-10.2:*
761 - media-libs/fontconfig
762 - >=media-libs/freetype-2.4.10
763 - kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) )
764 - virtual/freedesktop-icon-theme
765 - >=x11-libs/pixman-0.19.2
766 - >=dev-libs/glib-2.26:2
767 - >=sys-libs/zlib-1.2.3
768 - >=dev-libs/libffi-3.0.10:=
769 - media-video/ffmpeg
770 - x11-libs/libX11
771 - x11-libs/libXcomposite
772 - x11-libs/libXdamage
773 - x11-libs/libXext
774 - x11-libs/libXfixes
775 - x11-libs/libXrender
776 - x11-libs/libXt
777 - dbus? (
778 - sys-apps/dbus
779 - dev-libs/dbus-glib
780 - )
781 - screencast? ( media-video/pipewire:0/0.3 )
782 - system-av1? (
783 - >=media-libs/dav1d-0.3.0:=
784 - >=media-libs/libaom-1.0.0:=
785 - )
786 - system-harfbuzz? (
787 - >=media-libs/harfbuzz-2.6.8:0=
788 - >=media-gfx/graphite2-1.3.13
789 - )
790 - system-icu? ( >=dev-libs/icu-67.1:= )
791 - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
792 - system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
793 - system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
794 - system-webp? ( >=media-libs/libwebp-1.1.0:0= )
795 - wifi? (
796 - kernel_linux? (
797 - sys-apps/dbus
798 - dev-libs/dbus-glib
799 - net-misc/networkmanager
800 - )
801 - )
802 - jack? ( virtual/jack )
803 - selinux? ( sec-policy/selinux-mozilla )"
804 -
805 -RDEPEND="${CDEPEND}
806 - jack? ( virtual/jack )
807 - openh264? ( media-libs/openh264:*[plugin] )
808 - pulseaudio? (
809 - || (
810 - media-sound/pulseaudio
811 - >=media-sound/apulse-0.1.12-r4
812 - )
813 - )
814 - selinux? ( sec-policy/selinux-mozilla )"
815 -
816 -DEPEND="${CDEPEND}
817 - pulseaudio? (
818 - || (
819 - media-sound/pulseaudio
820 - >=media-sound/apulse-0.1.12-r4[sdk]
821 - )
822 - )
823 - wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
824 - amd64? ( virtual/opengl )
825 - x86? ( virtual/opengl )"
826 -
827 -S="${WORKDIR}/${PN}-${PV%_*}"
828 -
829 -# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
830 -# overridden in the enviromnent (advanced hackers only)
831 -if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
832 - MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
833 -fi
834 -
835 -llvm_check_deps() {
836 - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
837 - einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
838 - return 1
839 - fi
840 -
841 - if use clang ; then
842 - if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
843 - einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
844 - return 1
845 - fi
846 -
847 - if use pgo ; then
848 - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
849 - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
850 - return 1
851 - fi
852 - fi
853 - fi
854 -
855 - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
856 -}
857 -
858 -MOZ_LANGS=(
859 - ach af an ar ast az be bg bn br bs ca-valencia ca cak cs cy
860 - da de dsb el en-CA en-GB en-US eo es-AR es-CL es-ES es-MX et eu
861 - fa ff fi fr fy-NL ga-IE gd gl gn gu-IN he hi-IN hr hsb hu hy-AM
862 - ia id is it ja ka kab kk km kn ko lij lt lv mk mr ms my
863 - nb-NO ne-NP nl nn-NO oc pa-IN pl pt-BR pt-PT rm ro ru
864 - si sk sl son sq sr sv-SE ta te th tl tr trs uk ur uz vi
865 - xh zh-CN zh-TW
866 -)
867 -
868 -mozilla_set_globals() {
869 - # https://bugs.gentoo.org/587334
870 - local MOZ_TOO_REGIONALIZED_FOR_L10N=(
871 - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
872 - )
873 -
874 - local lang xflag
875 - for lang in "${MOZ_LANGS[@]}" ; do
876 - # en and en_US are handled internally
877 - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
878 - continue
879 - fi
880 -
881 - # strip region subtag if $lang is in the list
882 - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
883 - xflag=${lang%%-*}
884 - else
885 - xflag=${lang}
886 - fi
887 -
888 - SRC_URI+=" l10n_${xflag/[_@]/-}? ("
889 - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
890 - SRC_URI+=" )"
891 - IUSE+=" l10n_${xflag/[_@]/-}"
892 - done
893 -}
894 -mozilla_set_globals
895 -
896 -moz_clear_vendor_checksums() {
897 - debug-print-function ${FUNCNAME} "$@"
898 -
899 - if [[ ${#} -ne 1 ]] ; then
900 - die "${FUNCNAME} requires exact one argument"
901 - fi
902 -
903 - einfo "Clearing cargo checksums for ${1} ..."
904 -
905 - sed -i \
906 - -e 's/\("files":{\)[^}]*/\1/' \
907 - "${S}"/third_party/rust/${1}/.cargo-checksum.json \
908 - || die
909 -}
910 -
911 -moz_install_xpi() {
912 - debug-print-function ${FUNCNAME} "$@"
913 -
914 - if [[ ${#} -lt 2 ]] ; then
915 - die "${FUNCNAME} requires at least two arguments"
916 - fi
917 -
918 - local DESTDIR=${1}
919 - shift
920 -
921 - insinto "${DESTDIR}"
922 -
923 - local emid xpi_file xpi_tmp_dir
924 - for xpi_file in "${@}" ; do
925 - emid=
926 - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
927 -
928 - # Unpack XPI
929 - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
930 -
931 - # Determine extension ID
932 - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
933 - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
934 - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
935 - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
936 - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
937 - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
938 - else
939 - die "failed to determine extension id"
940 - fi
941 -
942 - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
943 - newins "${xpi_file}" "${emid}.xpi"
944 - done
945 -}
946 -
947 -mozconfig_add_options_ac() {
948 - debug-print-function ${FUNCNAME} "$@"
949 -
950 - if [[ ${#} -lt 2 ]] ; then
951 - die "${FUNCNAME} requires at least two arguments"
952 - fi
953 -
954 - local reason=${1}
955 - shift
956 -
957 - local option
958 - for option in ${@} ; do
959 - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
960 - done
961 -}
962 -
963 -mozconfig_add_options_mk() {
964 - debug-print-function ${FUNCNAME} "$@"
965 -
966 - if [[ ${#} -lt 2 ]] ; then
967 - die "${FUNCNAME} requires at least two arguments"
968 - fi
969 -
970 - local reason=${1}
971 - shift
972 -
973 - local option
974 - for option in ${@} ; do
975 - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
976 - done
977 -}
978 -
979 -mozconfig_use_enable() {
980 - debug-print-function ${FUNCNAME} "$@"
981 -
982 - if [[ ${#} -lt 1 ]] ; then
983 - die "${FUNCNAME} requires at least one arguments"
984 - fi
985 -
986 - local flag=$(use_enable "${@}")
987 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
988 -}
989 -
990 -mozconfig_use_with() {
991 - debug-print-function ${FUNCNAME} "$@"
992 -
993 - if [[ ${#} -lt 1 ]] ; then
994 - die "${FUNCNAME} requires at least one arguments"
995 - fi
996 -
997 - local flag=$(use_with "${@}")
998 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
999 -}
1000 -
1001 -pkg_pretend() {
1002 - if [[ ${MERGE_TYPE} != binary ]] ; then
1003 - if use pgo ; then
1004 - if ! has usersandbox $FEATURES ; then
1005 - die "You must enable usersandbox as X server can not run as root!"
1006 - fi
1007 - fi
1008 -
1009 - # Ensure we have enough disk space to compile
1010 - if use pgo || use lto || use debug ; then
1011 - CHECKREQS_DISK_BUILD="13500M"
1012 - else
1013 - CHECKREQS_DISK_BUILD="6400M"
1014 - fi
1015 -
1016 - check-reqs_pkg_pretend
1017 - fi
1018 -}
1019 -
1020 -pkg_setup() {
1021 - if [[ ${MERGE_TYPE} != binary ]] ; then
1022 - if use pgo ; then
1023 - if ! has userpriv ${FEATURES} ; then
1024 - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
1025 - fi
1026 - fi
1027 -
1028 - # Ensure we have enough disk space to compile
1029 - if use pgo || use lto || use debug ; then
1030 - CHECKREQS_DISK_BUILD="13500M"
1031 - else
1032 - CHECKREQS_DISK_BUILD="6400M"
1033 - fi
1034 -
1035 - check-reqs_pkg_setup
1036 -
1037 - llvm_pkg_setup
1038 -
1039 - if use clang && use lto ; then
1040 - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
1041 - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
1042 - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
1043 -
1044 - # temp fix for https://bugs.gentoo.org/768543
1045 - # we can assume that rust 1.{49,50}.0 always uses llvm 11
1046 - local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }')
1047 - [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}")
1048 - [[ -z ${version_rust} ]] && die "Failed to read version from rustc!"
1049 -
1050 - if ver_test "${version_rust}" -ge "1.49" && ver_test "${version_rust}" -le "1.50" ; then
1051 - local version_llvm_rust="11"
1052 - else
1053 - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
1054 - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
1055 - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
1056 - fi
1057 -
1058 - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
1059 - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
1060 - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
1061 - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
1062 - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
1063 - eerror " - Build ${CATEGORY}/${PN} without USE=lto"
1064 - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
1065 - fi
1066 - fi
1067 -
1068 - python-any-r1_pkg_setup
1069 -
1070 - # Avoid PGO profiling problems due to enviroment leakage
1071 - # These should *always* be cleaned up anyway
1072 - unset \
1073 - DBUS_SESSION_BUS_ADDRESS \
1074 - DISPLAY \
1075 - ORBIT_SOCKETDIR \
1076 - SESSION_MANAGER \
1077 - XAUTHORITY \
1078 - XDG_CACHE_HOME \
1079 - XDG_SESSION_COOKIE
1080 -
1081 - # Build system is using /proc/self/oom_score_adj, bug #604394
1082 - addpredict /proc/self/oom_score_adj
1083 -
1084 - if ! mountpoint -q /dev/shm ; then
1085 - # If /dev/shm is not available, configure is known to fail with
1086 - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
1087 - ewarn "/dev/shm is not mounted -- expect build failures!"
1088 - fi
1089 -
1090 - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
1091 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
1092 - # get your own set of keys.
1093 - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
1094 - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
1095 - fi
1096 -
1097 - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
1098 - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
1099 - fi
1100 -
1101 - # Mozilla API keys (see https://location.services.mozilla.com/api)
1102 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
1103 - # get your own set of keys.
1104 - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
1105 - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
1106 - fi
1107 -
1108 - # Ensure we use C locale when building, bug #746215
1109 - export LC_ALL=C
1110 - fi
1111 -
1112 - CONFIG_CHECK="~SECCOMP"
1113 - WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
1114 - linux-info_pkg_setup
1115 -}
1116 -
1117 -src_unpack() {
1118 - local _lp_dir="${WORKDIR}/language_packs"
1119 - local _src_file
1120 -
1121 - if [[ ! -d "${_lp_dir}" ]] ; then
1122 - mkdir "${_lp_dir}" || die
1123 - fi
1124 -
1125 - for _src_file in ${A} ; do
1126 - if [[ ${_src_file} == *.xpi ]]; then
1127 - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
1128 - else
1129 - unpack ${_src_file}
1130 - fi
1131 - done
1132 -}
1133 -
1134 -src_prepare() {
1135 - use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
1136 - eapply "${WORKDIR}/firefox-patches"
1137 -
1138 - # Allow user to apply any additional patches without modifing ebuild
1139 - eapply_user
1140 -
1141 - # Make LTO respect MAKEOPTS
1142 - sed -i \
1143 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
1144 - "${S}"/build/moz.configure/lto-pgo.configure \
1145 - || die "sed failed to set num_cores"
1146 -
1147 - # Make ICU respect MAKEOPTS
1148 - sed -i \
1149 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
1150 - "${S}"/intl/icu_sources_data.py \
1151 - || die "sed failed to set num_cores"
1152 -
1153 - # sed-in toolchain prefix
1154 - sed -i \
1155 - -e "s/objdump/${CHOST}-objdump/" \
1156 - "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
1157 - || die "sed failed to set toolchain prefix"
1158 -
1159 - sed -i \
1160 - -e 's/ccache_stats = None/return None/' \
1161 - "${S}"/python/mozbuild/mozbuild/controller/building.py \
1162 - || die "sed failed to disable ccache stats call"
1163 -
1164 - einfo "Removing pre-built binaries ..."
1165 - find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
1166 -
1167 - # Clearing checksums where we have applied patches
1168 - moz_clear_vendor_checksums target-lexicon-0.9.0
1169 -
1170 - # Create build dir
1171 - BUILD_DIR="${WORKDIR}/${PN}_build"
1172 - mkdir -p "${BUILD_DIR}" || die
1173 -
1174 - # Write API keys to disk
1175 - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
1176 - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
1177 - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
1178 -
1179 - xdg_src_prepare
1180 -}
1181 -
1182 -src_configure() {
1183 - # Show flags set at the beginning
1184 - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
1185 - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
1186 - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
1187 - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
1188 - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
1189 -
1190 - local have_switched_compiler=
1191 - if use clang && ! tc-is-clang ; then
1192 - # Force clang
1193 - einfo "Enforcing the use of clang due to USE=clang ..."
1194 - have_switched_compiler=yes
1195 - AR=llvm-ar
1196 - CC=${CHOST}-clang
1197 - CXX=${CHOST}-clang++
1198 - NM=llvm-nm
1199 - RANLIB=llvm-ranlib
1200 - elif ! use clang && ! tc-is-gcc ; then
1201 - # Force gcc
1202 - have_switched_compiler=yes
1203 - einfo "Enforcing the use of gcc due to USE=-clang ..."
1204 - AR=gcc-ar
1205 - CC=${CHOST}-gcc
1206 - CXX=${CHOST}-g++
1207 - NM=gcc-nm
1208 - RANLIB=gcc-ranlib
1209 - fi
1210 -
1211 - if [[ -n "${have_switched_compiler}" ]] ; then
1212 - # Because we switched active compiler we have to ensure
1213 - # that no unsupported flags are set
1214 - strip-unsupported-flags
1215 - fi
1216 -
1217 - # Ensure we use correct toolchain
1218 - export HOST_CC="$(tc-getBUILD_CC)"
1219 - export HOST_CXX="$(tc-getBUILD_CXX)"
1220 - tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
1221 -
1222 - # Pass the correct toolchain paths through cbindgen
1223 - if tc-is-cross-compiler ; then
1224 - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
1225 - fi
1226 -
1227 - # Set MOZILLA_FIVE_HOME
1228 - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
1229 -
1230 - # python/mach/mach/mixin/process.py fails to detect SHELL
1231 - export SHELL="${EPREFIX}/bin/bash"
1232 -
1233 - # Set MOZCONFIG
1234 - export MOZCONFIG="${S}/.mozconfig"
1235 -
1236 - # Initialize MOZCONFIG
1237 - mozconfig_add_options_ac '' --enable-application=browser
1238 -
1239 - # Set Gentoo defaults
1240 - export MOZILLA_OFFICIAL=1
1241 -
1242 - mozconfig_add_options_ac 'Gentoo default' \
1243 - --allow-addon-sideload \
1244 - --disable-cargo-incremental \
1245 - --disable-crashreporter \
1246 - --disable-install-strip \
1247 - --disable-strip \
1248 - --disable-updater \
1249 - --enable-official-branding \
1250 - --enable-release \
1251 - --enable-system-ffi \
1252 - --enable-system-pixman \
1253 - --host="${CBUILD:-${CHOST}}" \
1254 - --libdir="${EPREFIX}/usr/$(get_libdir)" \
1255 - --prefix="${EPREFIX}/usr" \
1256 - --target="${CHOST}" \
1257 - --without-ccache \
1258 - --with-intl-api \
1259 - --with-libclang-path="$(llvm-config --libdir)" \
1260 - --with-system-nspr \
1261 - --with-system-nss \
1262 - --with-system-png \
1263 - --with-system-zlib \
1264 - --with-toolchain-prefix="${CHOST}-" \
1265 - --with-unsigned-addon-scopes=app,system \
1266 - --x-includes="${SYSROOT}${EPREFIX}/usr/include" \
1267 - --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)"
1268 -
1269 - # Set update channel
1270 - local update_channel=release
1271 - [[ -n ${MOZ_ESR} ]] && update_channel=esr
1272 - mozconfig_add_options_ac '' --update-channel=${update_channel}
1273 -
1274 - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
1275 - mozconfig_add_options_ac '' --enable-rust-simd
1276 - fi
1277 -
1278 - if [[ -s "${S}/api-google.key" ]] ; then
1279 - local key_origin="Gentoo default"
1280 - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
1281 - key_origin="User value"
1282 - fi
1283 -
1284 - mozconfig_add_options_ac "${key_origin}" \
1285 - --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
1286 - else
1287 - einfo "Building without Google API key ..."
1288 - fi
1289 -
1290 - if [[ -s "${S}/api-location.key" ]] ; then
1291 - local key_origin="Gentoo default"
1292 - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
1293 - key_origin="User value"
1294 - fi
1295 -
1296 - mozconfig_add_options_ac "${key_origin}" \
1297 - --with-google-location-service-api-keyfile="${S}/api-location.key"
1298 - else
1299 - einfo "Building without Location API key ..."
1300 - fi
1301 -
1302 - if [[ -s "${S}/api-mozilla.key" ]] ; then
1303 - local key_origin="Gentoo default"
1304 - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
1305 - key_origin="User value"
1306 - fi
1307 -
1308 - mozconfig_add_options_ac "${key_origin}" \
1309 - --with-mozilla-api-keyfile="${S}/api-mozilla.key"
1310 - else
1311 - einfo "Building without Mozilla API key ..."
1312 - fi
1313 -
1314 - mozconfig_use_with system-av1
1315 - mozconfig_use_with system-harfbuzz
1316 - mozconfig_use_with system-harfbuzz system-graphite2
1317 - mozconfig_use_with system-icu
1318 - mozconfig_use_with system-jpeg
1319 - mozconfig_use_with system-libevent system-libevent "${SYSROOT}${EPREFIX}/usr"
1320 - mozconfig_use_with system-libvpx
1321 - mozconfig_use_with system-webp
1322 -
1323 - mozconfig_use_enable dbus
1324 -
1325 - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
1326 -
1327 - mozconfig_use_enable geckodriver
1328 -
1329 - if use hardened ; then
1330 - mozconfig_add_options_ac "+hardened" --enable-hardening
1331 - append-ldflags "-Wl,-z,relro -Wl,-z,now"
1332 - fi
1333 -
1334 - mozconfig_use_enable jack
1335 -
1336 - mozconfig_use_enable pulseaudio
1337 - # force the deprecated alsa sound code if pulseaudio is disabled
1338 - if use kernel_linux && ! use pulseaudio ; then
1339 - mozconfig_add_options_ac '-pulseaudio' --enable-alsa
1340 - fi
1341 -
1342 - mozconfig_use_enable screencast pipewire
1343 -
1344 - mozconfig_use_enable wifi necko-wifi
1345 -
1346 - if use wayland ; then
1347 - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland
1348 - else
1349 - mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3
1350 - fi
1351 -
1352 - if use lto ; then
1353 - if use clang ; then
1354 - # Upstream only supports lld when using clang
1355 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
1356 -
1357 - mozconfig_add_options_ac '+lto' --enable-lto=cross
1358 - else
1359 - # Linking only works when using ld.gold when LTO is enabled
1360 - mozconfig_add_options_ac "forcing ld=gold due to USE=lto" --enable-linker=gold
1361 -
1362 - # ThinLTO is currently broken, see bmo#1644409
1363 - mozconfig_add_options_ac '+lto' --enable-lto=full
1364 - fi
1365 -
1366 - if use pgo ; then
1367 - mozconfig_add_options_ac '+pgo' MOZ_PGO=1
1368 -
1369 - if use clang ; then
1370 - # Used in build/pgo/profileserver.py
1371 - export LLVM_PROFDATA="llvm-profdata"
1372 - fi
1373 - fi
1374 - else
1375 - # Avoid auto-magic on linker
1376 - if use clang ; then
1377 - # This is upstream's default
1378 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
1379 - elif tc-ld-is-gold ; then
1380 - mozconfig_add_options_ac "linker is set to gold" --enable-linker=gold
1381 - else
1382 - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
1383 - fi
1384 - fi
1385 -
1386 - # LTO flag was handled via configure
1387 - filter-flags '-flto*'
1388 -
1389 - mozconfig_use_enable debug
1390 - if use debug ; then
1391 - mozconfig_add_options_ac '+debug' --disable-optimize
1392 - else
1393 - if is-flag '-g*' ; then
1394 - if use clang ; then
1395 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
1396 - else
1397 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
1398 - fi
1399 - else
1400 - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
1401 - fi
1402 -
1403 - if is-flag '-O0' ; then
1404 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
1405 - elif is-flag '-O4' ; then
1406 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
1407 - elif is-flag '-O3' ; then
1408 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
1409 - elif is-flag '-O1' ; then
1410 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
1411 - elif is-flag '-Os' ; then
1412 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
1413 - else
1414 - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
1415 - fi
1416 - fi
1417 -
1418 - # Debug flag was handled via configure
1419 - filter-flags '-g*'
1420 -
1421 - # Optimization flag was handled via configure
1422 - filter-flags '-O*'
1423 -
1424 - # Modifications to better support ARM, bug #553364
1425 - if use cpu_flags_arm_neon ; then
1426 - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
1427 -
1428 - if ! tc-is-clang ; then
1429 - # thumb options aren't supported when using clang, bug 666966
1430 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \
1431 - --with-thumb=yes \
1432 - --with-thumb-interwork=no
1433 - fi
1434 - fi
1435 -
1436 - if [[ ${CHOST} == armv*h* ]] ; then
1437 - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
1438 -
1439 - if ! use system-libvpx ; then
1440 - sed -i \
1441 - -e "s|softfp|hard|" \
1442 - "${S}"/media/libvpx/moz.build \
1443 - || die
1444 - fi
1445 - fi
1446 -
1447 - if use clang ; then
1448 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
1449 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
1450 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
1451 - local disable_elf_hack=
1452 - if use amd64 ; then
1453 - disable_elf_hack=yes
1454 - elif use x86 ; then
1455 - disable_elf_hack=yes
1456 - elif use arm ; then
1457 - disable_elf_hack=yes
1458 - fi
1459 -
1460 - if [[ -n ${disable_elf_hack} ]] ; then
1461 - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack
1462 - fi
1463 - elif tc-is-gcc ; then
1464 - if ver_test $(gcc-fullversion) -ge 10 ; then
1465 - einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..."
1466 - append-cxxflags -fno-tree-loop-vectorize
1467 - fi
1468 - fi
1469 -
1470 - # Additional ARCH support
1471 - case "${ARCH}" in
1472 - arm)
1473 - # Reduce the memory requirements for linking
1474 - if use clang ; then
1475 - # Nothing to do
1476 - :;
1477 - elif tc-ld-is-gold || use lto ; then
1478 - append-ldflags -Wl,--no-keep-memory
1479 - else
1480 - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
1481 - fi
1482 - ;;
1483 - esac
1484 -
1485 - if ! use elibc_glibc ; then
1486 - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
1487 - fi
1488 -
1489 - # Allow elfhack to work in combination with unstripped binaries
1490 - # when they would normally be larger than 2GiB.
1491 - append-ldflags "-Wl,--compress-debug-sections=zlib"
1492 -
1493 - # Make revdep-rebuild.sh happy; Also required for musl
1494 - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
1495 -
1496 - # Pass $MAKEOPTS to build system
1497 - export MOZ_MAKE_FLAGS="${MAKEOPTS}"
1498 -
1499 - # Use system's Python environment
1500 - export MACH_USE_SYSTEM_PYTHON=1
1501 -
1502 - # Disable notification when build system has finished
1503 - export MOZ_NOSPAM=1
1504 -
1505 - # Build system requires xargs but is unable to find it
1506 - mozconfig_add_options_mk 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
1507 -
1508 - # Set build dir
1509 - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
1510 -
1511 - # Show flags we will use
1512 - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
1513 - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
1514 - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
1515 - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
1516 - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
1517 -
1518 - # Handle EXTRA_CONF and show summary
1519 - local ac opt hash reason
1520 -
1521 - # Apply EXTRA_ECONF entries to $MOZCONFIG
1522 - if [[ -n ${EXTRA_ECONF} ]] ; then
1523 - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
1524 - for opt in "${ac[@]}"; do
1525 - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
1526 - done
1527 - fi
1528 -
1529 - echo
1530 - echo "=========================================================="
1531 - echo "Building ${PF} with the following configuration"
1532 - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
1533 - [[ -z ${hash} || ${hash} == \# ]] \
1534 - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
1535 - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
1536 - done
1537 - echo "=========================================================="
1538 - echo
1539 -
1540 - ./mach configure || die
1541 -}
1542 -
1543 -src_compile() {
1544 - local virtx_cmd=
1545 -
1546 - if use pgo ; then
1547 - virtx_cmd=virtx
1548 -
1549 - # Reset and cleanup environment variables used by GNOME/XDG
1550 - gnome2_environment_reset
1551 -
1552 - addpredict /root
1553 - fi
1554 -
1555 - local -x GDK_BACKEND=x11
1556 -
1557 - ${virtx_cmd} ./mach build --verbose \
1558 - || die
1559 -}
1560 -
1561 -src_install() {
1562 - # xpcshell is getting called during install
1563 - pax-mark m \
1564 - "${BUILD_DIR}"/dist/bin/xpcshell \
1565 - "${BUILD_DIR}"/dist/bin/${PN} \
1566 - "${BUILD_DIR}"/dist/bin/plugin-container
1567 -
1568 - DESTDIR="${D}" ./mach install || die
1569 -
1570 - # Upstream cannot ship symlink but we can (bmo#658850)
1571 - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
1572 - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
1573 -
1574 - # Don't install llvm-symbolizer from sys-devel/llvm package
1575 - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
1576 - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
1577 - fi
1578 -
1579 - # Install policy (currently only used to disable application updates)
1580 - insinto "${MOZILLA_FIVE_HOME}/distribution"
1581 - newins "${FILESDIR}"/distribution.ini distribution.ini
1582 - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
1583 -
1584 - # Install system-wide preferences
1585 - local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences"
1586 - insinto "${PREFS_DIR}"
1587 - newins "${FILESDIR}"/gentoo-default-prefs.js all-gentoo.js
1588 -
1589 - local GENTOO_PREFS="${ED}${PREFS_DIR}/all-gentoo.js"
1590 -
1591 - # Set dictionary path to use system hunspell
1592 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
1593 - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
1594 - EOF
1595 -
1596 - # Force hwaccel prefs if USE=hwaccel is enabled
1597 - if use hwaccel ; then
1598 - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \
1599 - >>"${GENTOO_PREFS}" \
1600 - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
1601 - fi
1602 -
1603 - if ! use gmp-autoupdate ; then
1604 - local plugin
1605 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
1606 - einfo "Disabling auto-update for ${plugin} plugin ..."
1607 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
1608 - pref("media.${plugin}.autoupdate", false);
1609 - EOF
1610 - done
1611 - fi
1612 -
1613 - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
1614 - if use system-harfbuzz ; then
1615 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
1616 - sticky_pref("gfx.font_rendering.graphite.enabled", true);
1617 - EOF
1618 - fi
1619 -
1620 - # Install language packs
1621 - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
1622 - if [[ -n "${langpacks}" ]] ; then
1623 - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
1624 - fi
1625 -
1626 - # Install geckodriver
1627 - if use geckodriver ; then
1628 - einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..."
1629 - pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
1630 - exeinto "${MOZILLA_FIVE_HOME}"
1631 - doexe "${BUILD_DIR}"/dist/bin/geckodriver
1632 -
1633 - dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
1634 - fi
1635 -
1636 - # Install icons
1637 - local icon_srcdir="${S}/browser/branding/official"
1638 - local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg"
1639 -
1640 - insinto /usr/share/icons/hicolor/symbolic/apps
1641 - newins "${icon_symbolic_file}" ${PN}-symbolic.svg
1642 -
1643 - local icon size
1644 - for icon in "${icon_srcdir}"/default*.png ; do
1645 - size=${icon%.png}
1646 - size=${size##*/default}
1647 -
1648 - if [[ ${size} -eq 48 ]] ; then
1649 - newicon "${icon}" ${PN}.png
1650 - fi
1651 -
1652 - newicon -s ${size} "${icon}" ${PN}.png
1653 - done
1654 -
1655 - # Install menus
1656 - local wrapper_wayland="${PN}-wayland.sh"
1657 - local wrapper_x11="${PN}-x11.sh"
1658 - local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop"
1659 - local display_protocols="auto X11"
1660 - local icon="${PN}"
1661 - local name="Mozilla ${MOZ_PN^}"
1662 - local use_wayland="false"
1663 -
1664 - if use wayland ; then
1665 - display_protocols+=" Wayland"
1666 - use_wayland="true"
1667 - fi
1668 -
1669 - local app_name desktop_filename display_protocol exec_command
1670 - for display_protocol in ${display_protocols} ; do
1671 - app_name="${name} on ${display_protocol}"
1672 - desktop_filename="${PN}-${display_protocol,,}.desktop"
1673 -
1674 - case ${display_protocol} in
1675 - Wayland)
1676 - exec_command="${PN}-wayland --name ${PN}-wayland"
1677 - newbin "${FILESDIR}/${wrapper_wayland}" ${PN}-wayland
1678 - ;;
1679 - X11)
1680 - if ! use wayland ; then
1681 - # Exit loop here because there's no choice so
1682 - # we don't need wrapper/.desktop file for X11.
1683 - continue
1684 - fi
1685 -
1686 - exec_command="${PN}-x11 --name ${PN}-x11"
1687 - newbin "${FILESDIR}/${wrapper_x11}" ${PN}-x11
1688 - ;;
1689 - *)
1690 - app_name="${name}"
1691 - desktop_filename="${PN}.desktop"
1692 - exec_command="${PN}"
1693 - ;;
1694 - esac
1695 -
1696 - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
1697 -
1698 - sed -i \
1699 - -e "s:@NAME@:${app_name}:" \
1700 - -e "s:@EXEC@:${exec_command}:" \
1701 - -e "s:@ICON@:${icon}:" \
1702 - "${WORKDIR}/${PN}.desktop-template" \
1703 - || die
1704 -
1705 - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
1706 -
1707 - rm "${WORKDIR}/${PN}.desktop-template" || die
1708 - done
1709 -
1710 - # Install generic wrapper script
1711 - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
1712 - newbin "${FILESDIR}/${PN}.sh" ${PN}
1713 -
1714 - # Update wrapper
1715 - local wrapper
1716 - for wrapper in \
1717 - "${ED}/usr/bin/${PN}" \
1718 - "${ED}/usr/bin/${PN}-x11" \
1719 - "${ED}/usr/bin/${PN}-wayland" \
1720 - ; do
1721 - [[ ! -f "${wrapper}" ]] && continue
1722 -
1723 - sed -i \
1724 - -e "s:@PREFIX@:${EPREFIX}/usr:" \
1725 - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
1726 - -e "s:@APULSELIB_DIR@:${apulselib}:" \
1727 - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
1728 - "${wrapper}" \
1729 - || die
1730 - done
1731 -}
1732 -
1733 -pkg_preinst() {
1734 - xdg_pkg_preinst
1735 -
1736 - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
1737 - # does not need to be forced into the LD_LIBRARY_PATH
1738 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
1739 - einfo "APULSE found; Generating library symlinks for sound support ..."
1740 - local lib
1741 - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die
1742 - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
1743 - # A quickpkg rolled by hand will grab symlinks as part of the package,
1744 - # so we need to avoid creating them if they already exist.
1745 - if [[ ! -L ${lib##*/} ]] ; then
1746 - ln -s "${lib}" ${lib##*/} || die
1747 - fi
1748 - done
1749 - popd &>/dev/null || die
1750 - fi
1751 -}
1752 -
1753 -pkg_postinst() {
1754 - xdg_pkg_postinst
1755 -
1756 - if ! use gmp-autoupdate ; then
1757 - elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
1758 - elog "installing into new profiles:"
1759 - local plugin
1760 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
1761 - elog "\t ${plugin}"
1762 - done
1763 - elog
1764 - fi
1765 -
1766 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
1767 - elog "Apulse was detected at merge time on this system and so it will always be"
1768 - elog "used for sound. If you wish to use pulseaudio instead please unmerge"
1769 - elog "media-sound/apulse."
1770 - elog
1771 - fi
1772 -
1773 - local show_doh_information show_normandy_information
1774 -
1775 - if [[ -z "${REPLACING_VERSIONS}" ]] ; then
1776 - # New install; Tell user that DoH is disabled by default
1777 - show_doh_information=yes
1778 - show_normandy_information=yes
1779 - else
1780 - local replacing_version
1781 - for replacing_version in ${REPLACING_VERSIONS} ; do
1782 - if ver_test "${replacing_version}" -lt 70 ; then
1783 - # Tell user only once about our DoH default
1784 - show_doh_information=yes
1785 - fi
1786 -
1787 - if ver_test "${replacing_version}" -lt 74.0-r2 ; then
1788 - # Tell user only once about our Normandy default
1789 - show_normandy_information=yes
1790 - fi
1791 - done
1792 - fi
1793 -
1794 - if [[ -n "${show_doh_information}" ]] ; then
1795 - elog
1796 - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):"
1797 - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all"
1798 - elog "DNS traffic to Cloudflare by default is not a good idea and applications"
1799 - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5"
1800 - elog "(\"Off by choice\") by default."
1801 - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
1802 - fi
1803 -
1804 - # bug 713782
1805 - if [[ -n "${show_normandy_information}" ]] ; then
1806 - elog
1807 - elog "Upstream operates a service named Normandy which allows Mozilla to"
1808 - elog "push changes for default settings or even install new add-ons remotely."
1809 - elog "While this can be useful to address problems like 'Armagadd-on 2.0' or"
1810 - elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security"
1811 - elog "concerns prevail, which is why we have switched off the use of this"
1812 - elog "service by default."
1813 - elog
1814 - elog "To re-enable this service set"
1815 - elog
1816 - elog " app.normandy.enabled=true"
1817 - elog
1818 - elog "in about:config."
1819 - fi
1820 -}
1821
1822 diff --git a/www-client/firefox/firefox-78.14.0.ebuild b/www-client/firefox/firefox-78.14.0.ebuild
1823 deleted file mode 100644
1824 index dca07f91203..00000000000
1825 --- a/www-client/firefox/firefox-78.14.0.ebuild
1826 +++ /dev/null
1827 @@ -1,1187 +0,0 @@
1828 -# Copyright 1999-2021 Gentoo Authors
1829 -# Distributed under the terms of the GNU General Public License v2
1830 -
1831 -EAPI="7"
1832 -
1833 -FIREFOX_PATCHSET="firefox-78esr-patches-17.tar.xz"
1834 -
1835 -LLVM_MAX_SLOT=12
1836 -
1837 -PYTHON_COMPAT=( python3_{7..9} )
1838 -PYTHON_REQ_USE="ncurses,sqlite,ssl"
1839 -
1840 -WANT_AUTOCONF="2.1"
1841 -
1842 -VIRTUALX_REQUIRED="pgo"
1843 -
1844 -MOZ_ESR=yes
1845 -
1846 -MOZ_PV=${PV}
1847 -MOZ_PV_SUFFIX=
1848 -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
1849 - MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
1850 -
1851 - # Convert the ebuild version to the upstream Mozilla version
1852 - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
1853 - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
1854 - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
1855 -fi
1856 -
1857 -if [[ -n ${MOZ_ESR} ]] ; then
1858 - # ESR releases have slightly different version numbers
1859 - MOZ_PV="${MOZ_PV}esr"
1860 -fi
1861 -
1862 -MOZ_PN="${PN%-bin}"
1863 -MOZ_P="${MOZ_PN}-${MOZ_PV}"
1864 -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
1865 -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
1866 -
1867 -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \
1868 - llvm multiprocessing pax-utils python-any-r1 toolchain-funcs \
1869 - virtualx xdg
1870 -
1871 -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
1872 -
1873 -if [[ ${PV} == *_rc* ]] ; then
1874 - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
1875 -fi
1876 -
1877 -PATCH_URIS=(
1878 - https://dev.gentoo.org/~{axs,polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET}
1879 -)
1880 -
1881 -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
1882 - ${PATCH_URIS[@]}"
1883 -
1884 -DESCRIPTION="Firefox Web Browser"
1885 -HOMEPAGE="https://www.mozilla.com/firefox"
1886 -
1887 -KEYWORDS="amd64 arm64 ~ppc64 ~x86"
1888 -
1889 -SLOT="0/esr$(ver_cut 1)"
1890 -LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
1891 -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free geckodriver +gmp-autoupdate
1892 - hardened hwaccel jack lto +openh264 pgo pulseaudio screencast selinux
1893 - +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent
1894 - +system-libvpx +system-webp wayland wifi"
1895 -
1896 -REQUIRED_USE="debug? ( !system-av1 )
1897 - screencast? ( wayland )
1898 - wifi? ( dbus )"
1899 -
1900 -BDEPEND="${PYTHON_DEPS}
1901 - app-arch/unzip
1902 - app-arch/zip
1903 - >=dev-util/cbindgen-0.14.3
1904 - >=net-libs/nodejs-10.21.0
1905 - virtual/pkgconfig
1906 - >=virtual/rust-1.41.0
1907 - || (
1908 - (
1909 - sys-devel/clang:12
1910 - sys-devel/llvm:12
1911 - clang? (
1912 - =sys-devel/lld-12*
1913 - pgo? ( =sys-libs/compiler-rt-sanitizers-12*[profile] )
1914 - )
1915 - )
1916 - (
1917 - sys-devel/clang:11
1918 - sys-devel/llvm:11
1919 - clang? (
1920 - =sys-devel/lld-11*
1921 - pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] )
1922 - )
1923 - )
1924 - (
1925 - sys-devel/clang:10
1926 - sys-devel/llvm:10
1927 - clang? (
1928 - =sys-devel/lld-10*
1929 - pgo? ( =sys-libs/compiler-rt-sanitizers-10*[profile] )
1930 - )
1931 - )
1932 - )
1933 - lto? (
1934 - !clang? ( sys-devel/binutils[gold] )
1935 - )
1936 - amd64? ( >=dev-lang/yasm-1.1 )
1937 - x86? ( >=dev-lang/yasm-1.1 )
1938 - !system-av1? (
1939 - amd64? ( >=dev-lang/nasm-2.13 )
1940 - x86? ( >=dev-lang/nasm-2.13 )
1941 - )"
1942 -
1943 -CDEPEND="
1944 - >=dev-libs/nss-3.53.1
1945 - >=dev-libs/nspr-4.25
1946 - dev-libs/atk
1947 - dev-libs/expat
1948 - >=x11-libs/cairo-1.10[X]
1949 - >=x11-libs/gtk+-2.18:2
1950 - >=x11-libs/gtk+-3.4.0:3[X]
1951 - x11-libs/gdk-pixbuf
1952 - >=x11-libs/pango-1.22.0
1953 - >=media-libs/libpng-1.6.35:0=[apng]
1954 - >=media-libs/mesa-10.2:*
1955 - media-libs/fontconfig
1956 - >=media-libs/freetype-2.4.10
1957 - kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) )
1958 - virtual/freedesktop-icon-theme
1959 - >=x11-libs/pixman-0.19.2
1960 - >=dev-libs/glib-2.26:2
1961 - >=sys-libs/zlib-1.2.3
1962 - >=dev-libs/libffi-3.0.10:=
1963 - media-video/ffmpeg
1964 - x11-libs/libX11
1965 - x11-libs/libXcomposite
1966 - x11-libs/libXdamage
1967 - x11-libs/libXext
1968 - x11-libs/libXfixes
1969 - x11-libs/libXrender
1970 - x11-libs/libXt
1971 - dbus? (
1972 - sys-apps/dbus
1973 - dev-libs/dbus-glib
1974 - )
1975 - screencast? ( media-video/pipewire:0/0.3 )
1976 - system-av1? (
1977 - >=media-libs/dav1d-0.3.0:=
1978 - >=media-libs/libaom-1.0.0:=
1979 - )
1980 - system-harfbuzz? (
1981 - >=media-libs/harfbuzz-2.6.8:0=
1982 - >=media-gfx/graphite2-1.3.13
1983 - )
1984 - system-icu? ( >=dev-libs/icu-67.1:= )
1985 - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
1986 - system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
1987 - system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
1988 - system-webp? ( >=media-libs/libwebp-1.1.0:0= )
1989 - wifi? (
1990 - kernel_linux? (
1991 - sys-apps/dbus
1992 - dev-libs/dbus-glib
1993 - net-misc/networkmanager
1994 - )
1995 - )
1996 - jack? ( virtual/jack )
1997 - selinux? ( sec-policy/selinux-mozilla )"
1998 -
1999 -RDEPEND="${CDEPEND}
2000 - jack? ( virtual/jack )
2001 - openh264? ( media-libs/openh264:*[plugin] )
2002 - pulseaudio? (
2003 - || (
2004 - media-sound/pulseaudio
2005 - >=media-sound/apulse-0.1.12-r4
2006 - )
2007 - )
2008 - selinux? ( sec-policy/selinux-mozilla )"
2009 -
2010 -DEPEND="${CDEPEND}
2011 - pulseaudio? (
2012 - || (
2013 - media-sound/pulseaudio
2014 - >=media-sound/apulse-0.1.12-r4[sdk]
2015 - )
2016 - )
2017 - wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
2018 - amd64? ( virtual/opengl )
2019 - x86? ( virtual/opengl )"
2020 -
2021 -S="${WORKDIR}/${PN}-${PV%_*}"
2022 -
2023 -# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
2024 -# overridden in the enviromnent (advanced hackers only)
2025 -if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
2026 - MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
2027 -fi
2028 -
2029 -llvm_check_deps() {
2030 - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
2031 - einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
2032 - return 1
2033 - fi
2034 -
2035 - if use clang ; then
2036 - if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
2037 - einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
2038 - return 1
2039 - fi
2040 -
2041 - if use pgo ; then
2042 - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
2043 - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
2044 - return 1
2045 - fi
2046 - fi
2047 - fi
2048 -
2049 - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
2050 -}
2051 -
2052 -MOZ_LANGS=(
2053 - ach af an ar ast az be bg bn br bs ca-valencia ca cak cs cy
2054 - da de dsb el en-CA en-GB en-US eo es-AR es-CL es-ES es-MX et eu
2055 - fa ff fi fr fy-NL ga-IE gd gl gn gu-IN he hi-IN hr hsb hu hy-AM
2056 - ia id is it ja ka kab kk km kn ko lij lt lv mk mr ms my
2057 - nb-NO ne-NP nl nn-NO oc pa-IN pl pt-BR pt-PT rm ro ru
2058 - si sk sl son sq sr sv-SE ta te th tl tr trs uk ur uz vi
2059 - xh zh-CN zh-TW
2060 -)
2061 -
2062 -mozilla_set_globals() {
2063 - # https://bugs.gentoo.org/587334
2064 - local MOZ_TOO_REGIONALIZED_FOR_L10N=(
2065 - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
2066 - )
2067 -
2068 - local lang xflag
2069 - for lang in "${MOZ_LANGS[@]}" ; do
2070 - # en and en_US are handled internally
2071 - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
2072 - continue
2073 - fi
2074 -
2075 - # strip region subtag if $lang is in the list
2076 - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
2077 - xflag=${lang%%-*}
2078 - else
2079 - xflag=${lang}
2080 - fi
2081 -
2082 - SRC_URI+=" l10n_${xflag/[_@]/-}? ("
2083 - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
2084 - SRC_URI+=" )"
2085 - IUSE+=" l10n_${xflag/[_@]/-}"
2086 - done
2087 -}
2088 -mozilla_set_globals
2089 -
2090 -moz_clear_vendor_checksums() {
2091 - debug-print-function ${FUNCNAME} "$@"
2092 -
2093 - if [[ ${#} -ne 1 ]] ; then
2094 - die "${FUNCNAME} requires exact one argument"
2095 - fi
2096 -
2097 - einfo "Clearing cargo checksums for ${1} ..."
2098 -
2099 - sed -i \
2100 - -e 's/\("files":{\)[^}]*/\1/' \
2101 - "${S}"/third_party/rust/${1}/.cargo-checksum.json \
2102 - || die
2103 -}
2104 -
2105 -moz_install_xpi() {
2106 - debug-print-function ${FUNCNAME} "$@"
2107 -
2108 - if [[ ${#} -lt 2 ]] ; then
2109 - die "${FUNCNAME} requires at least two arguments"
2110 - fi
2111 -
2112 - local DESTDIR=${1}
2113 - shift
2114 -
2115 - insinto "${DESTDIR}"
2116 -
2117 - local emid xpi_file xpi_tmp_dir
2118 - for xpi_file in "${@}" ; do
2119 - emid=
2120 - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
2121 -
2122 - # Unpack XPI
2123 - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
2124 -
2125 - # Determine extension ID
2126 - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
2127 - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
2128 - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
2129 - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
2130 - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
2131 - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
2132 - else
2133 - die "failed to determine extension id"
2134 - fi
2135 -
2136 - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
2137 - newins "${xpi_file}" "${emid}.xpi"
2138 - done
2139 -}
2140 -
2141 -mozconfig_add_options_ac() {
2142 - debug-print-function ${FUNCNAME} "$@"
2143 -
2144 - if [[ ${#} -lt 2 ]] ; then
2145 - die "${FUNCNAME} requires at least two arguments"
2146 - fi
2147 -
2148 - local reason=${1}
2149 - shift
2150 -
2151 - local option
2152 - for option in ${@} ; do
2153 - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
2154 - done
2155 -}
2156 -
2157 -mozconfig_add_options_mk() {
2158 - debug-print-function ${FUNCNAME} "$@"
2159 -
2160 - if [[ ${#} -lt 2 ]] ; then
2161 - die "${FUNCNAME} requires at least two arguments"
2162 - fi
2163 -
2164 - local reason=${1}
2165 - shift
2166 -
2167 - local option
2168 - for option in ${@} ; do
2169 - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
2170 - done
2171 -}
2172 -
2173 -mozconfig_use_enable() {
2174 - debug-print-function ${FUNCNAME} "$@"
2175 -
2176 - if [[ ${#} -lt 1 ]] ; then
2177 - die "${FUNCNAME} requires at least one arguments"
2178 - fi
2179 -
2180 - local flag=$(use_enable "${@}")
2181 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
2182 -}
2183 -
2184 -mozconfig_use_with() {
2185 - debug-print-function ${FUNCNAME} "$@"
2186 -
2187 - if [[ ${#} -lt 1 ]] ; then
2188 - die "${FUNCNAME} requires at least one arguments"
2189 - fi
2190 -
2191 - local flag=$(use_with "${@}")
2192 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
2193 -}
2194 -
2195 -pkg_pretend() {
2196 - if [[ ${MERGE_TYPE} != binary ]] ; then
2197 - if use pgo ; then
2198 - if ! has usersandbox $FEATURES ; then
2199 - die "You must enable usersandbox as X server can not run as root!"
2200 - fi
2201 - fi
2202 -
2203 - # Ensure we have enough disk space to compile
2204 - if use pgo || use lto || use debug ; then
2205 - CHECKREQS_DISK_BUILD="13500M"
2206 - else
2207 - CHECKREQS_DISK_BUILD="6400M"
2208 - fi
2209 -
2210 - check-reqs_pkg_pretend
2211 - fi
2212 -}
2213 -
2214 -pkg_setup() {
2215 - if [[ ${MERGE_TYPE} != binary ]] ; then
2216 - if use pgo ; then
2217 - if ! has userpriv ${FEATURES} ; then
2218 - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
2219 - fi
2220 - fi
2221 -
2222 - # Ensure we have enough disk space to compile
2223 - if use pgo || use lto || use debug ; then
2224 - CHECKREQS_DISK_BUILD="13500M"
2225 - else
2226 - CHECKREQS_DISK_BUILD="6400M"
2227 - fi
2228 -
2229 - check-reqs_pkg_setup
2230 -
2231 - llvm_pkg_setup
2232 -
2233 - if use clang && use lto ; then
2234 - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
2235 - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
2236 - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
2237 -
2238 - # temp fix for https://bugs.gentoo.org/768543
2239 - # we can assume that rust 1.{49,50}.0 always uses llvm 11
2240 - local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }')
2241 - [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}")
2242 - [[ -z ${version_rust} ]] && die "Failed to read version from rustc!"
2243 -
2244 - if ver_test "${version_rust}" -ge "1.49" && ver_test "${version_rust}" -le "1.50" ; then
2245 - local version_llvm_rust="11"
2246 - else
2247 - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
2248 - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
2249 - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
2250 - fi
2251 -
2252 - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
2253 - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
2254 - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
2255 - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
2256 - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
2257 - eerror " - Build ${CATEGORY}/${PN} without USE=lto"
2258 - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
2259 - fi
2260 - fi
2261 -
2262 - python-any-r1_pkg_setup
2263 -
2264 - # Avoid PGO profiling problems due to enviroment leakage
2265 - # These should *always* be cleaned up anyway
2266 - unset \
2267 - DBUS_SESSION_BUS_ADDRESS \
2268 - DISPLAY \
2269 - ORBIT_SOCKETDIR \
2270 - SESSION_MANAGER \
2271 - XAUTHORITY \
2272 - XDG_CACHE_HOME \
2273 - XDG_SESSION_COOKIE
2274 -
2275 - # Build system is using /proc/self/oom_score_adj, bug #604394
2276 - addpredict /proc/self/oom_score_adj
2277 -
2278 - if ! mountpoint -q /dev/shm ; then
2279 - # If /dev/shm is not available, configure is known to fail with
2280 - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
2281 - ewarn "/dev/shm is not mounted -- expect build failures!"
2282 - fi
2283 -
2284 - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
2285 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
2286 - # get your own set of keys.
2287 - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
2288 - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
2289 - fi
2290 -
2291 - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
2292 - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
2293 - fi
2294 -
2295 - # Mozilla API keys (see https://location.services.mozilla.com/api)
2296 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
2297 - # get your own set of keys.
2298 - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
2299 - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
2300 - fi
2301 -
2302 - # Ensure we use C locale when building, bug #746215
2303 - export LC_ALL=C
2304 - fi
2305 -
2306 - CONFIG_CHECK="~SECCOMP"
2307 - WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
2308 - linux-info_pkg_setup
2309 -}
2310 -
2311 -src_unpack() {
2312 - local _lp_dir="${WORKDIR}/language_packs"
2313 - local _src_file
2314 -
2315 - if [[ ! -d "${_lp_dir}" ]] ; then
2316 - mkdir "${_lp_dir}" || die
2317 - fi
2318 -
2319 - for _src_file in ${A} ; do
2320 - if [[ ${_src_file} == *.xpi ]]; then
2321 - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
2322 - else
2323 - unpack ${_src_file}
2324 - fi
2325 - done
2326 -}
2327 -
2328 -src_prepare() {
2329 - use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
2330 - eapply "${WORKDIR}/firefox-patches"
2331 -
2332 - # Allow user to apply any additional patches without modifing ebuild
2333 - eapply_user
2334 -
2335 - # Make LTO respect MAKEOPTS
2336 - sed -i \
2337 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
2338 - "${S}"/build/moz.configure/lto-pgo.configure \
2339 - || die "sed failed to set num_cores"
2340 -
2341 - # Make ICU respect MAKEOPTS
2342 - sed -i \
2343 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
2344 - "${S}"/intl/icu_sources_data.py \
2345 - || die "sed failed to set num_cores"
2346 -
2347 - # sed-in toolchain prefix
2348 - sed -i \
2349 - -e "s/objdump/${CHOST}-objdump/" \
2350 - "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
2351 - || die "sed failed to set toolchain prefix"
2352 -
2353 - sed -i \
2354 - -e 's/ccache_stats = None/return None/' \
2355 - "${S}"/python/mozbuild/mozbuild/controller/building.py \
2356 - || die "sed failed to disable ccache stats call"
2357 -
2358 - einfo "Removing pre-built binaries ..."
2359 - find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
2360 -
2361 - # Clearing checksums where we have applied patches
2362 - moz_clear_vendor_checksums target-lexicon-0.9.0
2363 -
2364 - # Create build dir
2365 - BUILD_DIR="${WORKDIR}/${PN}_build"
2366 - mkdir -p "${BUILD_DIR}" || die
2367 -
2368 - # Write API keys to disk
2369 - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
2370 - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
2371 - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
2372 -
2373 - xdg_src_prepare
2374 -}
2375 -
2376 -src_configure() {
2377 - # Show flags set at the beginning
2378 - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
2379 - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
2380 - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
2381 - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
2382 - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
2383 -
2384 - local have_switched_compiler=
2385 - if use clang && ! tc-is-clang ; then
2386 - # Force clang
2387 - einfo "Enforcing the use of clang due to USE=clang ..."
2388 - have_switched_compiler=yes
2389 - AR=llvm-ar
2390 - CC=${CHOST}-clang
2391 - CXX=${CHOST}-clang++
2392 - NM=llvm-nm
2393 - RANLIB=llvm-ranlib
2394 - elif ! use clang && ! tc-is-gcc ; then
2395 - # Force gcc
2396 - have_switched_compiler=yes
2397 - einfo "Enforcing the use of gcc due to USE=-clang ..."
2398 - AR=gcc-ar
2399 - CC=${CHOST}-gcc
2400 - CXX=${CHOST}-g++
2401 - NM=gcc-nm
2402 - RANLIB=gcc-ranlib
2403 - fi
2404 -
2405 - if [[ -n "${have_switched_compiler}" ]] ; then
2406 - # Because we switched active compiler we have to ensure
2407 - # that no unsupported flags are set
2408 - strip-unsupported-flags
2409 - fi
2410 -
2411 - # Ensure we use correct toolchain
2412 - export HOST_CC="$(tc-getBUILD_CC)"
2413 - export HOST_CXX="$(tc-getBUILD_CXX)"
2414 - tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
2415 -
2416 - # Pass the correct toolchain paths through cbindgen
2417 - if tc-is-cross-compiler ; then
2418 - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
2419 - fi
2420 -
2421 - # Set MOZILLA_FIVE_HOME
2422 - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
2423 -
2424 - # python/mach/mach/mixin/process.py fails to detect SHELL
2425 - export SHELL="${EPREFIX}/bin/bash"
2426 -
2427 - # Set MOZCONFIG
2428 - export MOZCONFIG="${S}/.mozconfig"
2429 -
2430 - # Initialize MOZCONFIG
2431 - mozconfig_add_options_ac '' --enable-application=browser
2432 -
2433 - # Set Gentoo defaults
2434 - export MOZILLA_OFFICIAL=1
2435 -
2436 - mozconfig_add_options_ac 'Gentoo default' \
2437 - --allow-addon-sideload \
2438 - --disable-cargo-incremental \
2439 - --disable-crashreporter \
2440 - --disable-install-strip \
2441 - --disable-strip \
2442 - --disable-updater \
2443 - --enable-official-branding \
2444 - --enable-release \
2445 - --enable-system-ffi \
2446 - --enable-system-pixman \
2447 - --host="${CBUILD:-${CHOST}}" \
2448 - --libdir="${EPREFIX}/usr/$(get_libdir)" \
2449 - --prefix="${EPREFIX}/usr" \
2450 - --target="${CHOST}" \
2451 - --without-ccache \
2452 - --with-intl-api \
2453 - --with-libclang-path="$(llvm-config --libdir)" \
2454 - --with-system-nspr \
2455 - --with-system-nss \
2456 - --with-system-png \
2457 - --with-system-zlib \
2458 - --with-toolchain-prefix="${CHOST}-" \
2459 - --with-unsigned-addon-scopes=app,system \
2460 - --x-includes="${SYSROOT}${EPREFIX}/usr/include" \
2461 - --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)"
2462 -
2463 - # Set update channel
2464 - local update_channel=release
2465 - [[ -n ${MOZ_ESR} ]] && update_channel=esr
2466 - mozconfig_add_options_ac '' --update-channel=${update_channel}
2467 -
2468 - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
2469 - mozconfig_add_options_ac '' --enable-rust-simd
2470 - fi
2471 -
2472 - if [[ -s "${S}/api-google.key" ]] ; then
2473 - local key_origin="Gentoo default"
2474 - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
2475 - key_origin="User value"
2476 - fi
2477 -
2478 - mozconfig_add_options_ac "${key_origin}" \
2479 - --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
2480 - else
2481 - einfo "Building without Google API key ..."
2482 - fi
2483 -
2484 - if [[ -s "${S}/api-location.key" ]] ; then
2485 - local key_origin="Gentoo default"
2486 - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
2487 - key_origin="User value"
2488 - fi
2489 -
2490 - mozconfig_add_options_ac "${key_origin}" \
2491 - --with-google-location-service-api-keyfile="${S}/api-location.key"
2492 - else
2493 - einfo "Building without Location API key ..."
2494 - fi
2495 -
2496 - if [[ -s "${S}/api-mozilla.key" ]] ; then
2497 - local key_origin="Gentoo default"
2498 - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
2499 - key_origin="User value"
2500 - fi
2501 -
2502 - mozconfig_add_options_ac "${key_origin}" \
2503 - --with-mozilla-api-keyfile="${S}/api-mozilla.key"
2504 - else
2505 - einfo "Building without Mozilla API key ..."
2506 - fi
2507 -
2508 - mozconfig_use_with system-av1
2509 - mozconfig_use_with system-harfbuzz
2510 - mozconfig_use_with system-harfbuzz system-graphite2
2511 - mozconfig_use_with system-icu
2512 - mozconfig_use_with system-jpeg
2513 - mozconfig_use_with system-libevent system-libevent "${SYSROOT}${EPREFIX}/usr"
2514 - mozconfig_use_with system-libvpx
2515 - mozconfig_use_with system-webp
2516 -
2517 - mozconfig_use_enable dbus
2518 -
2519 - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
2520 -
2521 - mozconfig_use_enable geckodriver
2522 -
2523 - if use hardened ; then
2524 - mozconfig_add_options_ac "+hardened" --enable-hardening
2525 - append-ldflags "-Wl,-z,relro -Wl,-z,now"
2526 - fi
2527 -
2528 - mozconfig_use_enable jack
2529 -
2530 - mozconfig_use_enable pulseaudio
2531 - # force the deprecated alsa sound code if pulseaudio is disabled
2532 - if use kernel_linux && ! use pulseaudio ; then
2533 - mozconfig_add_options_ac '-pulseaudio' --enable-alsa
2534 - fi
2535 -
2536 - mozconfig_use_enable screencast pipewire
2537 -
2538 - mozconfig_use_enable wifi necko-wifi
2539 -
2540 - if use wayland ; then
2541 - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland
2542 - else
2543 - mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3
2544 - fi
2545 -
2546 - if use lto ; then
2547 - if use clang ; then
2548 - # Upstream only supports lld when using clang
2549 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
2550 -
2551 - mozconfig_add_options_ac '+lto' --enable-lto=cross
2552 - else
2553 - # Linking only works when using ld.gold when LTO is enabled
2554 - mozconfig_add_options_ac "forcing ld=gold due to USE=lto" --enable-linker=gold
2555 -
2556 - # ThinLTO is currently broken, see bmo#1644409
2557 - mozconfig_add_options_ac '+lto' --enable-lto=full
2558 - fi
2559 -
2560 - if use pgo ; then
2561 - mozconfig_add_options_ac '+pgo' MOZ_PGO=1
2562 -
2563 - if use clang ; then
2564 - # Used in build/pgo/profileserver.py
2565 - export LLVM_PROFDATA="llvm-profdata"
2566 - fi
2567 - fi
2568 - else
2569 - # Avoid auto-magic on linker
2570 - if use clang ; then
2571 - # This is upstream's default
2572 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
2573 - elif tc-ld-is-gold ; then
2574 - mozconfig_add_options_ac "linker is set to gold" --enable-linker=gold
2575 - else
2576 - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
2577 - fi
2578 - fi
2579 -
2580 - # LTO flag was handled via configure
2581 - filter-flags '-flto*'
2582 -
2583 - mozconfig_use_enable debug
2584 - if use debug ; then
2585 - mozconfig_add_options_ac '+debug' --disable-optimize
2586 - else
2587 - if is-flag '-g*' ; then
2588 - if use clang ; then
2589 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
2590 - else
2591 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
2592 - fi
2593 - else
2594 - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
2595 - fi
2596 -
2597 - if is-flag '-O0' ; then
2598 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
2599 - elif is-flag '-O4' ; then
2600 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
2601 - elif is-flag '-O3' ; then
2602 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
2603 - elif is-flag '-O1' ; then
2604 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
2605 - elif is-flag '-Os' ; then
2606 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
2607 - else
2608 - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
2609 - fi
2610 - fi
2611 -
2612 - # Debug flag was handled via configure
2613 - filter-flags '-g*'
2614 -
2615 - # Optimization flag was handled via configure
2616 - filter-flags '-O*'
2617 -
2618 - # Modifications to better support ARM, bug #553364
2619 - if use cpu_flags_arm_neon ; then
2620 - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
2621 -
2622 - if ! tc-is-clang ; then
2623 - # thumb options aren't supported when using clang, bug 666966
2624 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \
2625 - --with-thumb=yes \
2626 - --with-thumb-interwork=no
2627 - fi
2628 - fi
2629 -
2630 - if [[ ${CHOST} == armv*h* ]] ; then
2631 - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
2632 -
2633 - if ! use system-libvpx ; then
2634 - sed -i \
2635 - -e "s|softfp|hard|" \
2636 - "${S}"/media/libvpx/moz.build \
2637 - || die
2638 - fi
2639 - fi
2640 -
2641 - if use clang ; then
2642 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
2643 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
2644 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
2645 - local disable_elf_hack=
2646 - if use amd64 ; then
2647 - disable_elf_hack=yes
2648 - elif use x86 ; then
2649 - disable_elf_hack=yes
2650 - elif use arm ; then
2651 - disable_elf_hack=yes
2652 - fi
2653 -
2654 - if [[ -n ${disable_elf_hack} ]] ; then
2655 - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack
2656 - fi
2657 - elif tc-is-gcc ; then
2658 - if ver_test $(gcc-fullversion) -ge 10 ; then
2659 - einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..."
2660 - append-cxxflags -fno-tree-loop-vectorize
2661 - fi
2662 - fi
2663 -
2664 - # Additional ARCH support
2665 - case "${ARCH}" in
2666 - arm)
2667 - # Reduce the memory requirements for linking
2668 - if use clang ; then
2669 - # Nothing to do
2670 - :;
2671 - elif tc-ld-is-gold || use lto ; then
2672 - append-ldflags -Wl,--no-keep-memory
2673 - else
2674 - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
2675 - fi
2676 - ;;
2677 - esac
2678 -
2679 - if ! use elibc_glibc ; then
2680 - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
2681 - fi
2682 -
2683 - # Allow elfhack to work in combination with unstripped binaries
2684 - # when they would normally be larger than 2GiB.
2685 - append-ldflags "-Wl,--compress-debug-sections=zlib"
2686 -
2687 - # Make revdep-rebuild.sh happy; Also required for musl
2688 - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
2689 -
2690 - # Pass $MAKEOPTS to build system
2691 - export MOZ_MAKE_FLAGS="${MAKEOPTS}"
2692 -
2693 - # Use system's Python environment
2694 - export MACH_USE_SYSTEM_PYTHON=1
2695 -
2696 - # Disable notification when build system has finished
2697 - export MOZ_NOSPAM=1
2698 -
2699 - # Build system requires xargs but is unable to find it
2700 - mozconfig_add_options_mk 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
2701 -
2702 - # Set build dir
2703 - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
2704 -
2705 - # Show flags we will use
2706 - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
2707 - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
2708 - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
2709 - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
2710 - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
2711 -
2712 - # Handle EXTRA_CONF and show summary
2713 - local ac opt hash reason
2714 -
2715 - # Apply EXTRA_ECONF entries to $MOZCONFIG
2716 - if [[ -n ${EXTRA_ECONF} ]] ; then
2717 - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
2718 - for opt in "${ac[@]}"; do
2719 - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
2720 - done
2721 - fi
2722 -
2723 - echo
2724 - echo "=========================================================="
2725 - echo "Building ${PF} with the following configuration"
2726 - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
2727 - [[ -z ${hash} || ${hash} == \# ]] \
2728 - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
2729 - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
2730 - done
2731 - echo "=========================================================="
2732 - echo
2733 -
2734 - ./mach configure || die
2735 -}
2736 -
2737 -src_compile() {
2738 - local virtx_cmd=
2739 -
2740 - if use pgo ; then
2741 - virtx_cmd=virtx
2742 -
2743 - # Reset and cleanup environment variables used by GNOME/XDG
2744 - gnome2_environment_reset
2745 -
2746 - addpredict /root
2747 - fi
2748 -
2749 - local -x GDK_BACKEND=x11
2750 -
2751 - ${virtx_cmd} ./mach build --verbose \
2752 - || die
2753 -}
2754 -
2755 -src_install() {
2756 - # xpcshell is getting called during install
2757 - pax-mark m \
2758 - "${BUILD_DIR}"/dist/bin/xpcshell \
2759 - "${BUILD_DIR}"/dist/bin/${PN} \
2760 - "${BUILD_DIR}"/dist/bin/plugin-container
2761 -
2762 - DESTDIR="${D}" ./mach install || die
2763 -
2764 - # Upstream cannot ship symlink but we can (bmo#658850)
2765 - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
2766 - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
2767 -
2768 - # Don't install llvm-symbolizer from sys-devel/llvm package
2769 - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
2770 - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
2771 - fi
2772 -
2773 - # Install policy (currently only used to disable application updates)
2774 - insinto "${MOZILLA_FIVE_HOME}/distribution"
2775 - newins "${FILESDIR}"/distribution.ini distribution.ini
2776 - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
2777 -
2778 - # Install system-wide preferences
2779 - local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences"
2780 - insinto "${PREFS_DIR}"
2781 - newins "${FILESDIR}"/gentoo-default-prefs.js all-gentoo.js
2782 -
2783 - local GENTOO_PREFS="${ED}${PREFS_DIR}/all-gentoo.js"
2784 -
2785 - # Set dictionary path to use system hunspell
2786 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
2787 - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
2788 - EOF
2789 -
2790 - # Force hwaccel prefs if USE=hwaccel is enabled
2791 - if use hwaccel ; then
2792 - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \
2793 - >>"${GENTOO_PREFS}" \
2794 - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
2795 - fi
2796 -
2797 - if ! use gmp-autoupdate ; then
2798 - local plugin
2799 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
2800 - einfo "Disabling auto-update for ${plugin} plugin ..."
2801 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
2802 - pref("media.${plugin}.autoupdate", false);
2803 - EOF
2804 - done
2805 - fi
2806 -
2807 - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
2808 - if use system-harfbuzz ; then
2809 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
2810 - sticky_pref("gfx.font_rendering.graphite.enabled", true);
2811 - EOF
2812 - fi
2813 -
2814 - # Install language packs
2815 - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
2816 - if [[ -n "${langpacks}" ]] ; then
2817 - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
2818 - fi
2819 -
2820 - # Install geckodriver
2821 - if use geckodriver ; then
2822 - einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..."
2823 - pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
2824 - exeinto "${MOZILLA_FIVE_HOME}"
2825 - doexe "${BUILD_DIR}"/dist/bin/geckodriver
2826 -
2827 - dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
2828 - fi
2829 -
2830 - # Install icons
2831 - local icon_srcdir="${S}/browser/branding/official"
2832 - local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg"
2833 -
2834 - insinto /usr/share/icons/hicolor/symbolic/apps
2835 - newins "${icon_symbolic_file}" ${PN}-symbolic.svg
2836 -
2837 - local icon size
2838 - for icon in "${icon_srcdir}"/default*.png ; do
2839 - size=${icon%.png}
2840 - size=${size##*/default}
2841 -
2842 - if [[ ${size} -eq 48 ]] ; then
2843 - newicon "${icon}" ${PN}.png
2844 - fi
2845 -
2846 - newicon -s ${size} "${icon}" ${PN}.png
2847 - done
2848 -
2849 - # Install menus
2850 - local wrapper_wayland="${PN}-wayland.sh"
2851 - local wrapper_x11="${PN}-x11.sh"
2852 - local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop"
2853 - local display_protocols="auto X11"
2854 - local icon="${PN}"
2855 - local name="Mozilla ${MOZ_PN^}"
2856 - local use_wayland="false"
2857 -
2858 - if use wayland ; then
2859 - display_protocols+=" Wayland"
2860 - use_wayland="true"
2861 - fi
2862 -
2863 - local app_name desktop_filename display_protocol exec_command
2864 - for display_protocol in ${display_protocols} ; do
2865 - app_name="${name} on ${display_protocol}"
2866 - desktop_filename="${PN}-${display_protocol,,}.desktop"
2867 -
2868 - case ${display_protocol} in
2869 - Wayland)
2870 - exec_command="${PN}-wayland --name ${PN}-wayland"
2871 - newbin "${FILESDIR}/${wrapper_wayland}" ${PN}-wayland
2872 - ;;
2873 - X11)
2874 - if ! use wayland ; then
2875 - # Exit loop here because there's no choice so
2876 - # we don't need wrapper/.desktop file for X11.
2877 - continue
2878 - fi
2879 -
2880 - exec_command="${PN}-x11 --name ${PN}-x11"
2881 - newbin "${FILESDIR}/${wrapper_x11}" ${PN}-x11
2882 - ;;
2883 - *)
2884 - app_name="${name}"
2885 - desktop_filename="${PN}.desktop"
2886 - exec_command="${PN}"
2887 - ;;
2888 - esac
2889 -
2890 - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
2891 -
2892 - sed -i \
2893 - -e "s:@NAME@:${app_name}:" \
2894 - -e "s:@EXEC@:${exec_command}:" \
2895 - -e "s:@ICON@:${icon}:" \
2896 - "${WORKDIR}/${PN}.desktop-template" \
2897 - || die
2898 -
2899 - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
2900 -
2901 - rm "${WORKDIR}/${PN}.desktop-template" || die
2902 - done
2903 -
2904 - # Install generic wrapper script
2905 - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
2906 - newbin "${FILESDIR}/${PN}.sh" ${PN}
2907 -
2908 - # Update wrapper
2909 - local wrapper
2910 - for wrapper in \
2911 - "${ED}/usr/bin/${PN}" \
2912 - "${ED}/usr/bin/${PN}-x11" \
2913 - "${ED}/usr/bin/${PN}-wayland" \
2914 - ; do
2915 - [[ ! -f "${wrapper}" ]] && continue
2916 -
2917 - sed -i \
2918 - -e "s:@PREFIX@:${EPREFIX}/usr:" \
2919 - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
2920 - -e "s:@APULSELIB_DIR@:${apulselib}:" \
2921 - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
2922 - "${wrapper}" \
2923 - || die
2924 - done
2925 -}
2926 -
2927 -pkg_preinst() {
2928 - xdg_pkg_preinst
2929 -
2930 - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
2931 - # does not need to be forced into the LD_LIBRARY_PATH
2932 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
2933 - einfo "APULSE found; Generating library symlinks for sound support ..."
2934 - local lib
2935 - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die
2936 - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
2937 - # A quickpkg rolled by hand will grab symlinks as part of the package,
2938 - # so we need to avoid creating them if they already exist.
2939 - if [[ ! -L ${lib##*/} ]] ; then
2940 - ln -s "${lib}" ${lib##*/} || die
2941 - fi
2942 - done
2943 - popd &>/dev/null || die
2944 - fi
2945 -}
2946 -
2947 -pkg_postinst() {
2948 - xdg_pkg_postinst
2949 -
2950 - if ! use gmp-autoupdate ; then
2951 - elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
2952 - elog "installing into new profiles:"
2953 - local plugin
2954 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
2955 - elog "\t ${plugin}"
2956 - done
2957 - elog
2958 - fi
2959 -
2960 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
2961 - elog "Apulse was detected at merge time on this system and so it will always be"
2962 - elog "used for sound. If you wish to use pulseaudio instead please unmerge"
2963 - elog "media-sound/apulse."
2964 - elog
2965 - fi
2966 -
2967 - local show_doh_information show_normandy_information
2968 -
2969 - if [[ -z "${REPLACING_VERSIONS}" ]] ; then
2970 - # New install; Tell user that DoH is disabled by default
2971 - show_doh_information=yes
2972 - show_normandy_information=yes
2973 - else
2974 - local replacing_version
2975 - for replacing_version in ${REPLACING_VERSIONS} ; do
2976 - if ver_test "${replacing_version}" -lt 70 ; then
2977 - # Tell user only once about our DoH default
2978 - show_doh_information=yes
2979 - fi
2980 -
2981 - if ver_test "${replacing_version}" -lt 74.0-r2 ; then
2982 - # Tell user only once about our Normandy default
2983 - show_normandy_information=yes
2984 - fi
2985 - done
2986 - fi
2987 -
2988 - if [[ -n "${show_doh_information}" ]] ; then
2989 - elog
2990 - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):"
2991 - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all"
2992 - elog "DNS traffic to Cloudflare by default is not a good idea and applications"
2993 - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5"
2994 - elog "(\"Off by choice\") by default."
2995 - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
2996 - fi
2997 -
2998 - # bug 713782
2999 - if [[ -n "${show_normandy_information}" ]] ; then
3000 - elog
3001 - elog "Upstream operates a service named Normandy which allows Mozilla to"
3002 - elog "push changes for default settings or even install new add-ons remotely."
3003 - elog "While this can be useful to address problems like 'Armagadd-on 2.0' or"
3004 - elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security"
3005 - elog "concerns prevail, which is why we have switched off the use of this"
3006 - elog "service by default."
3007 - elog
3008 - elog "To re-enable this service set"
3009 - elog
3010 - elog " app.normandy.enabled=true"
3011 - elog
3012 - elog "in about:config."
3013 - fi
3014 -}
3015
3016 diff --git a/www-client/firefox/firefox-91.0.1.ebuild b/www-client/firefox/firefox-91.0.1.ebuild
3017 deleted file mode 100644
3018 index fa00e352801..00000000000
3019 --- a/www-client/firefox/firefox-91.0.1.ebuild
3020 +++ /dev/null
3021 @@ -1,1149 +0,0 @@
3022 -# Copyright 1999-2021 Gentoo Authors
3023 -# Distributed under the terms of the GNU General Public License v2
3024 -
3025 -EAPI="7"
3026 -
3027 -FIREFOX_PATCHSET="firefox-91-patches-02.tar.xz"
3028 -
3029 -LLVM_MAX_SLOT=12
3030 -
3031 -PYTHON_COMPAT=( python3_{7..10} )
3032 -PYTHON_REQ_USE="ncurses,sqlite,ssl"
3033 -
3034 -WANT_AUTOCONF="2.1"
3035 -
3036 -VIRTUALX_REQUIRED="pgo"
3037 -
3038 -MOZ_ESR=
3039 -
3040 -MOZ_PV=${PV}
3041 -MOZ_PV_SUFFIX=
3042 -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
3043 - MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
3044 -
3045 - # Convert the ebuild version to the upstream Mozilla version
3046 - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
3047 - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
3048 - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
3049 -fi
3050 -
3051 -if [[ -n ${MOZ_ESR} ]] ; then
3052 - # ESR releases have slightly different version numbers
3053 - MOZ_PV="${MOZ_PV}esr"
3054 -fi
3055 -
3056 -MOZ_PN="${PN%-bin}"
3057 -MOZ_P="${MOZ_PN}-${MOZ_PV}"
3058 -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
3059 -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
3060 -
3061 -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \
3062 - llvm multiprocessing pax-utils python-any-r1 toolchain-funcs \
3063 - virtualx xdg
3064 -
3065 -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
3066 -
3067 -if [[ ${PV} == *_rc* ]] ; then
3068 - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
3069 -fi
3070 -
3071 -PATCH_URIS=(
3072 - https://dev.gentoo.org/~{axs,polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET}
3073 -)
3074 -
3075 -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
3076 - ${PATCH_URIS[@]}"
3077 -
3078 -DESCRIPTION="Firefox Web Browser"
3079 -HOMEPAGE="https://www.mozilla.com/firefox"
3080 -
3081 -KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
3082 -
3083 -SLOT="0/$(ver_cut 1)"
3084 -LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
3085 -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free geckodriver +gmp-autoupdate
3086 - hardened hwaccel jack lto +openh264 pgo pulseaudio screencast sndio selinux
3087 - +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent
3088 - +system-libvpx +system-webp wayland wifi"
3089 -
3090 -REQUIRED_USE="debug? ( !system-av1 )
3091 - screencast? ( wayland )"
3092 -
3093 -BDEPEND="${PYTHON_DEPS}
3094 - app-arch/unzip
3095 - app-arch/zip
3096 - >=dev-util/cbindgen-0.19.0
3097 - >=net-libs/nodejs-10.23.1
3098 - virtual/pkgconfig
3099 - >=virtual/rust-1.51.0
3100 - || (
3101 - (
3102 - sys-devel/clang:12
3103 - sys-devel/llvm:12
3104 - clang? (
3105 - =sys-devel/lld-12*
3106 - pgo? ( =sys-libs/compiler-rt-sanitizers-12*[profile] )
3107 - )
3108 - )
3109 - (
3110 - sys-devel/clang:11
3111 - sys-devel/llvm:11
3112 - clang? (
3113 - =sys-devel/lld-11*
3114 - pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] )
3115 - )
3116 - )
3117 - (
3118 - sys-devel/clang:10
3119 - sys-devel/llvm:10
3120 - clang? (
3121 - =sys-devel/lld-10*
3122 - pgo? ( =sys-libs/compiler-rt-sanitizers-10*[profile] )
3123 - )
3124 - )
3125 - )
3126 - amd64? ( >=dev-lang/nasm-2.13 )
3127 - x86? ( >=dev-lang/nasm-2.13 )"
3128 -
3129 -CDEPEND="
3130 - >=dev-libs/nss-3.68
3131 - >=dev-libs/nspr-4.32
3132 - dev-libs/atk
3133 - dev-libs/expat
3134 - >=x11-libs/cairo-1.10[X]
3135 - >=x11-libs/gtk+-3.4.0:3[X]
3136 - x11-libs/gdk-pixbuf
3137 - >=x11-libs/pango-1.22.0
3138 - >=media-libs/libpng-1.6.35:0=[apng]
3139 - >=media-libs/mesa-10.2:*
3140 - media-libs/fontconfig
3141 - >=media-libs/freetype-2.4.10
3142 - kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) )
3143 - virtual/freedesktop-icon-theme
3144 - >=x11-libs/pixman-0.19.2
3145 - >=dev-libs/glib-2.26:2
3146 - >=sys-libs/zlib-1.2.3
3147 - >=dev-libs/libffi-3.0.10:=
3148 - media-video/ffmpeg
3149 - x11-libs/libX11
3150 - x11-libs/libXcomposite
3151 - x11-libs/libXdamage
3152 - x11-libs/libXext
3153 - x11-libs/libXfixes
3154 - x11-libs/libXrender
3155 - x11-libs/libXt
3156 - dbus? (
3157 - sys-apps/dbus
3158 - dev-libs/dbus-glib
3159 - )
3160 - screencast? ( media-video/pipewire:0/0.3 )
3161 - system-av1? (
3162 - >=media-libs/dav1d-0.8.1:=
3163 - >=media-libs/libaom-1.0.0:=
3164 - )
3165 - system-harfbuzz? (
3166 - >=media-libs/harfbuzz-2.8.1:0=
3167 - >=media-gfx/graphite2-1.3.13
3168 - )
3169 - system-icu? ( >=dev-libs/icu-69.1:= )
3170 - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
3171 - system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
3172 - system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
3173 - system-webp? ( >=media-libs/libwebp-1.1.0:0= )
3174 - wifi? (
3175 - kernel_linux? (
3176 - sys-apps/dbus
3177 - dev-libs/dbus-glib
3178 - net-misc/networkmanager
3179 - )
3180 - )
3181 - jack? ( virtual/jack )
3182 - selinux? ( sec-policy/selinux-mozilla )
3183 - sndio? ( media-sound/sndio )"
3184 -
3185 -RDEPEND="${CDEPEND}
3186 - jack? ( virtual/jack )
3187 - openh264? ( media-libs/openh264:*[plugin] )
3188 - pulseaudio? (
3189 - || (
3190 - media-sound/pulseaudio
3191 - >=media-sound/apulse-0.1.12-r4
3192 - )
3193 - )
3194 - selinux? ( sec-policy/selinux-mozilla )"
3195 -
3196 -DEPEND="${CDEPEND}
3197 - pulseaudio? (
3198 - || (
3199 - media-sound/pulseaudio
3200 - >=media-sound/apulse-0.1.12-r4[sdk]
3201 - )
3202 - )
3203 - wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
3204 - amd64? ( virtual/opengl )
3205 - x86? ( virtual/opengl )"
3206 -
3207 -S="${WORKDIR}/${PN}-${PV%_*}"
3208 -
3209 -# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
3210 -# overridden in the enviromnent (advanced hackers only)
3211 -if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
3212 - MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
3213 -fi
3214 -
3215 -llvm_check_deps() {
3216 - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
3217 - einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
3218 - return 1
3219 - fi
3220 -
3221 - if use clang ; then
3222 - if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
3223 - einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
3224 - return 1
3225 - fi
3226 -
3227 - if use pgo ; then
3228 - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
3229 - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
3230 - return 1
3231 - fi
3232 - fi
3233 - fi
3234 -
3235 - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
3236 -}
3237 -
3238 -MOZ_LANGS=(
3239 - ach af an ar ast az be bg bn br bs ca-valencia ca cak cs cy
3240 - da de dsb el en-CA en-GB en-US eo es-AR es-CL es-ES es-MX et eu
3241 - fa ff fi fr fy-NL ga-IE gd gl gn gu-IN he hi-IN hr hsb hu hy-AM
3242 - ia id is it ja ka kab kk km kn ko lij lt lv mk mr ms my
3243 - nb-NO ne-NP nl nn-NO oc pa-IN pl pt-BR pt-PT rm ro ru
3244 - si sk sl son sq sr sv-SE szl ta te th tl tr trs uk ur uz vi
3245 - xh zh-CN zh-TW
3246 -)
3247 -
3248 -mozilla_set_globals() {
3249 - # https://bugs.gentoo.org/587334
3250 - local MOZ_TOO_REGIONALIZED_FOR_L10N=(
3251 - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
3252 - )
3253 -
3254 - local lang xflag
3255 - for lang in "${MOZ_LANGS[@]}" ; do
3256 - # en and en_US are handled internally
3257 - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
3258 - continue
3259 - fi
3260 -
3261 - # strip region subtag if $lang is in the list
3262 - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
3263 - xflag=${lang%%-*}
3264 - else
3265 - xflag=${lang}
3266 - fi
3267 -
3268 - SRC_URI+=" l10n_${xflag/[_@]/-}? ("
3269 - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
3270 - SRC_URI+=" )"
3271 - IUSE+=" l10n_${xflag/[_@]/-}"
3272 - done
3273 -}
3274 -mozilla_set_globals
3275 -
3276 -moz_clear_vendor_checksums() {
3277 - debug-print-function ${FUNCNAME} "$@"
3278 -
3279 - if [[ ${#} -ne 1 ]] ; then
3280 - die "${FUNCNAME} requires exact one argument"
3281 - fi
3282 -
3283 - einfo "Clearing cargo checksums for ${1} ..."
3284 -
3285 - sed -i \
3286 - -e 's/\("files":{\)[^}]*/\1/' \
3287 - "${S}"/third_party/rust/${1}/.cargo-checksum.json \
3288 - || die
3289 -}
3290 -
3291 -moz_install_xpi() {
3292 - debug-print-function ${FUNCNAME} "$@"
3293 -
3294 - if [[ ${#} -lt 2 ]] ; then
3295 - die "${FUNCNAME} requires at least two arguments"
3296 - fi
3297 -
3298 - local DESTDIR=${1}
3299 - shift
3300 -
3301 - insinto "${DESTDIR}"
3302 -
3303 - local emid xpi_file xpi_tmp_dir
3304 - for xpi_file in "${@}" ; do
3305 - emid=
3306 - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
3307 -
3308 - # Unpack XPI
3309 - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
3310 -
3311 - # Determine extension ID
3312 - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
3313 - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
3314 - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
3315 - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
3316 - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
3317 - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
3318 - else
3319 - die "failed to determine extension id"
3320 - fi
3321 -
3322 - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
3323 - newins "${xpi_file}" "${emid}.xpi"
3324 - done
3325 -}
3326 -
3327 -mozconfig_add_options_ac() {
3328 - debug-print-function ${FUNCNAME} "$@"
3329 -
3330 - if [[ ${#} -lt 2 ]] ; then
3331 - die "${FUNCNAME} requires at least two arguments"
3332 - fi
3333 -
3334 - local reason=${1}
3335 - shift
3336 -
3337 - local option
3338 - for option in ${@} ; do
3339 - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
3340 - done
3341 -}
3342 -
3343 -mozconfig_add_options_mk() {
3344 - debug-print-function ${FUNCNAME} "$@"
3345 -
3346 - if [[ ${#} -lt 2 ]] ; then
3347 - die "${FUNCNAME} requires at least two arguments"
3348 - fi
3349 -
3350 - local reason=${1}
3351 - shift
3352 -
3353 - local option
3354 - for option in ${@} ; do
3355 - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
3356 - done
3357 -}
3358 -
3359 -mozconfig_use_enable() {
3360 - debug-print-function ${FUNCNAME} "$@"
3361 -
3362 - if [[ ${#} -lt 1 ]] ; then
3363 - die "${FUNCNAME} requires at least one arguments"
3364 - fi
3365 -
3366 - local flag=$(use_enable "${@}")
3367 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
3368 -}
3369 -
3370 -mozconfig_use_with() {
3371 - debug-print-function ${FUNCNAME} "$@"
3372 -
3373 - if [[ ${#} -lt 1 ]] ; then
3374 - die "${FUNCNAME} requires at least one arguments"
3375 - fi
3376 -
3377 - local flag=$(use_with "${@}")
3378 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
3379 -}
3380 -
3381 -pkg_pretend() {
3382 - if [[ ${MERGE_TYPE} != binary ]] ; then
3383 - if use pgo ; then
3384 - if ! has usersandbox $FEATURES ; then
3385 - die "You must enable usersandbox as X server can not run as root!"
3386 - fi
3387 - fi
3388 -
3389 - # Ensure we have enough disk space to compile
3390 - if use pgo || use lto || use debug ; then
3391 - CHECKREQS_DISK_BUILD="13500M"
3392 - else
3393 - CHECKREQS_DISK_BUILD="6400M"
3394 - fi
3395 -
3396 - check-reqs_pkg_pretend
3397 - fi
3398 -}
3399 -
3400 -pkg_setup() {
3401 - if [[ ${MERGE_TYPE} != binary ]] ; then
3402 - if use pgo ; then
3403 - if ! has userpriv ${FEATURES} ; then
3404 - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
3405 - fi
3406 - fi
3407 -
3408 - # Ensure we have enough disk space to compile
3409 - if use pgo || use lto || use debug ; then
3410 - CHECKREQS_DISK_BUILD="13500M"
3411 - else
3412 - CHECKREQS_DISK_BUILD="6400M"
3413 - fi
3414 -
3415 - check-reqs_pkg_setup
3416 -
3417 - llvm_pkg_setup
3418 -
3419 - if use clang && use lto ; then
3420 - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
3421 - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
3422 - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
3423 -
3424 - # temp fix for https://bugs.gentoo.org/768543
3425 - # we can assume that rust 1.{49,50}.0 always uses llvm 11
3426 - local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }')
3427 - [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}")
3428 - [[ -z ${version_rust} ]] && die "Failed to read version from rustc!"
3429 -
3430 - if ver_test "${version_rust}" -ge "1.49" && ver_test "${version_rust}" -le "1.50" ; then
3431 - local version_llvm_rust="11"
3432 - else
3433 - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
3434 - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
3435 - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
3436 - fi
3437 -
3438 - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
3439 - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
3440 - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
3441 - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
3442 - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
3443 - eerror " - Build ${CATEGORY}/${PN} without USE=lto"
3444 - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
3445 - fi
3446 - fi
3447 -
3448 - if ! use clang && [[ $(gcc-major-version) -eq 11 ]] \
3449 - && ! has_version -b ">sys-devel/gcc-11.1.0:11" ; then
3450 - # bug 792705
3451 - eerror "Using GCC 11 to compile firefox is currently known to be broken (see bug #792705)."
3452 - die "Set USE=clang or select <gcc-11 to build ${CATEGORY}/${P}."
3453 - fi
3454 -
3455 - python-any-r1_pkg_setup
3456 -
3457 - # Avoid PGO profiling problems due to enviroment leakage
3458 - # These should *always* be cleaned up anyway
3459 - unset \
3460 - DBUS_SESSION_BUS_ADDRESS \
3461 - DISPLAY \
3462 - ORBIT_SOCKETDIR \
3463 - SESSION_MANAGER \
3464 - XAUTHORITY \
3465 - XDG_CACHE_HOME \
3466 - XDG_SESSION_COOKIE
3467 -
3468 - # Build system is using /proc/self/oom_score_adj, bug #604394
3469 - addpredict /proc/self/oom_score_adj
3470 -
3471 - if ! mountpoint -q /dev/shm ; then
3472 - # If /dev/shm is not available, configure is known to fail with
3473 - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
3474 - ewarn "/dev/shm is not mounted -- expect build failures!"
3475 - fi
3476 -
3477 - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
3478 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
3479 - # get your own set of keys.
3480 - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
3481 - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
3482 - fi
3483 -
3484 - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
3485 - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
3486 - fi
3487 -
3488 - # Mozilla API keys (see https://location.services.mozilla.com/api)
3489 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
3490 - # get your own set of keys.
3491 - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
3492 - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
3493 - fi
3494 -
3495 - # Ensure we use C locale when building, bug #746215
3496 - export LC_ALL=C
3497 - fi
3498 -
3499 - CONFIG_CHECK="~SECCOMP"
3500 - WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
3501 - linux-info_pkg_setup
3502 -}
3503 -
3504 -src_unpack() {
3505 - local _lp_dir="${WORKDIR}/language_packs"
3506 - local _src_file
3507 -
3508 - if [[ ! -d "${_lp_dir}" ]] ; then
3509 - mkdir "${_lp_dir}" || die
3510 - fi
3511 -
3512 - for _src_file in ${A} ; do
3513 - if [[ ${_src_file} == *.xpi ]]; then
3514 - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
3515 - else
3516 - unpack ${_src_file}
3517 - fi
3518 - done
3519 -}
3520 -
3521 -src_prepare() {
3522 - use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
3523 - eapply "${WORKDIR}/firefox-patches"
3524 -
3525 - # Allow user to apply any additional patches without modifing ebuild
3526 - eapply_user
3527 -
3528 - # Make LTO respect MAKEOPTS
3529 - sed -i \
3530 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
3531 - "${S}"/build/moz.configure/lto-pgo.configure \
3532 - || die "sed failed to set num_cores"
3533 -
3534 - # Make ICU respect MAKEOPTS
3535 - sed -i \
3536 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
3537 - "${S}"/intl/icu_sources_data.py \
3538 - || die "sed failed to set num_cores"
3539 -
3540 - # sed-in toolchain prefix
3541 - sed -i \
3542 - -e "s/objdump/${CHOST}-objdump/" \
3543 - "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
3544 - || die "sed failed to set toolchain prefix"
3545 -
3546 - sed -i \
3547 - -e 's/ccache_stats = None/return None/' \
3548 - "${S}"/python/mozbuild/mozbuild/controller/building.py \
3549 - || die "sed failed to disable ccache stats call"
3550 -
3551 - einfo "Removing pre-built binaries ..."
3552 - find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
3553 -
3554 - # Clearing checksums where we have applied patches
3555 - moz_clear_vendor_checksums target-lexicon-0.9.0
3556 -
3557 - # Create build dir
3558 - BUILD_DIR="${WORKDIR}/${PN}_build"
3559 - mkdir -p "${BUILD_DIR}" || die
3560 -
3561 - # Write API keys to disk
3562 - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
3563 - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
3564 - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
3565 -
3566 - xdg_src_prepare
3567 -}
3568 -
3569 -src_configure() {
3570 - # Show flags set at the beginning
3571 - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
3572 - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
3573 - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
3574 - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
3575 - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
3576 -
3577 - local have_switched_compiler=
3578 - if use clang && ! tc-is-clang ; then
3579 - # Force clang
3580 - einfo "Enforcing the use of clang due to USE=clang ..."
3581 - have_switched_compiler=yes
3582 - AR=llvm-ar
3583 - CC=${CHOST}-clang
3584 - CXX=${CHOST}-clang++
3585 - NM=llvm-nm
3586 - RANLIB=llvm-ranlib
3587 - elif ! use clang && ! tc-is-gcc ; then
3588 - # Force gcc
3589 - have_switched_compiler=yes
3590 - einfo "Enforcing the use of gcc due to USE=-clang ..."
3591 - AR=gcc-ar
3592 - CC=${CHOST}-gcc
3593 - CXX=${CHOST}-g++
3594 - NM=gcc-nm
3595 - RANLIB=gcc-ranlib
3596 - fi
3597 -
3598 - if [[ -n "${have_switched_compiler}" ]] ; then
3599 - # Because we switched active compiler we have to ensure
3600 - # that no unsupported flags are set
3601 - strip-unsupported-flags
3602 - fi
3603 -
3604 - # Ensure we use correct toolchain
3605 - export HOST_CC="$(tc-getBUILD_CC)"
3606 - export HOST_CXX="$(tc-getBUILD_CXX)"
3607 - tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
3608 -
3609 - # Pass the correct toolchain paths through cbindgen
3610 - if tc-is-cross-compiler ; then
3611 - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
3612 - fi
3613 -
3614 - # Set MOZILLA_FIVE_HOME
3615 - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
3616 -
3617 - # python/mach/mach/mixin/process.py fails to detect SHELL
3618 - export SHELL="${EPREFIX}/bin/bash"
3619 -
3620 - # Set MOZCONFIG
3621 - export MOZCONFIG="${S}/.mozconfig"
3622 -
3623 - # Initialize MOZCONFIG
3624 - mozconfig_add_options_ac '' --enable-application=browser
3625 -
3626 - # Set Gentoo defaults
3627 - export MOZILLA_OFFICIAL=1
3628 -
3629 - mozconfig_add_options_ac 'Gentoo default' \
3630 - --allow-addon-sideload \
3631 - --disable-cargo-incremental \
3632 - --disable-crashreporter \
3633 - --disable-install-strip \
3634 - --disable-strip \
3635 - --disable-updater \
3636 - --enable-official-branding \
3637 - --enable-release \
3638 - --enable-system-ffi \
3639 - --enable-system-pixman \
3640 - --host="${CBUILD:-${CHOST}}" \
3641 - --libdir="${EPREFIX}/usr/$(get_libdir)" \
3642 - --prefix="${EPREFIX}/usr" \
3643 - --target="${CHOST}" \
3644 - --without-ccache \
3645 - --with-intl-api \
3646 - --with-libclang-path="$(llvm-config --libdir)" \
3647 - --with-system-nspr \
3648 - --with-system-nss \
3649 - --with-system-png \
3650 - --with-system-zlib \
3651 - --with-toolchain-prefix="${CHOST}-" \
3652 - --with-unsigned-addon-scopes=app,system \
3653 - --x-includes="${SYSROOT}${EPREFIX}/usr/include" \
3654 - --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)"
3655 -
3656 - # Set update channel
3657 - local update_channel=release
3658 - [[ -n ${MOZ_ESR} ]] && update_channel=esr
3659 - mozconfig_add_options_ac '' --update-channel=${update_channel}
3660 -
3661 - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
3662 - mozconfig_add_options_ac '' --enable-rust-simd
3663 - fi
3664 -
3665 - if [[ -s "${S}/api-google.key" ]] ; then
3666 - local key_origin="Gentoo default"
3667 - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
3668 - key_origin="User value"
3669 - fi
3670 -
3671 - mozconfig_add_options_ac "${key_origin}" \
3672 - --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
3673 - else
3674 - einfo "Building without Google API key ..."
3675 - fi
3676 -
3677 - if [[ -s "${S}/api-location.key" ]] ; then
3678 - local key_origin="Gentoo default"
3679 - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
3680 - key_origin="User value"
3681 - fi
3682 -
3683 - mozconfig_add_options_ac "${key_origin}" \
3684 - --with-google-location-service-api-keyfile="${S}/api-location.key"
3685 - else
3686 - einfo "Building without Location API key ..."
3687 - fi
3688 -
3689 - if [[ -s "${S}/api-mozilla.key" ]] ; then
3690 - local key_origin="Gentoo default"
3691 - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
3692 - key_origin="User value"
3693 - fi
3694 -
3695 - mozconfig_add_options_ac "${key_origin}" \
3696 - --with-mozilla-api-keyfile="${S}/api-mozilla.key"
3697 - else
3698 - einfo "Building without Mozilla API key ..."
3699 - fi
3700 -
3701 - mozconfig_use_with system-av1
3702 - mozconfig_use_with system-harfbuzz
3703 - mozconfig_use_with system-harfbuzz system-graphite2
3704 - mozconfig_use_with system-icu
3705 - mozconfig_use_with system-jpeg
3706 - mozconfig_use_with system-libevent system-libevent "${SYSROOT}${EPREFIX}/usr"
3707 - mozconfig_use_with system-libvpx
3708 - mozconfig_use_with system-webp
3709 -
3710 - mozconfig_use_enable dbus
3711 -
3712 - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
3713 -
3714 - mozconfig_use_enable geckodriver
3715 -
3716 - if use hardened ; then
3717 - mozconfig_add_options_ac "+hardened" --enable-hardening
3718 - append-ldflags "-Wl,-z,relro -Wl,-z,now"
3719 - fi
3720 -
3721 - mozconfig_use_enable jack
3722 -
3723 - mozconfig_use_enable pulseaudio
3724 - # force the deprecated alsa sound code if pulseaudio is disabled
3725 - if use kernel_linux && ! use pulseaudio ; then
3726 - mozconfig_add_options_ac '-pulseaudio' --enable-alsa
3727 - fi
3728 -
3729 - mozconfig_use_enable sndio
3730 -
3731 - mozconfig_use_enable wifi necko-wifi
3732 -
3733 - if use wayland ; then
3734 - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland
3735 - else
3736 - mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3
3737 - fi
3738 -
3739 - if use lto ; then
3740 - if use clang ; then
3741 - # Upstream only supports lld when using clang
3742 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
3743 -
3744 - mozconfig_add_options_ac '+lto' --enable-lto=cross
3745 - else
3746 - # ThinLTO is currently broken, see bmo#1644409
3747 - mozconfig_add_options_ac '+lto' --enable-lto=full
3748 - fi
3749 -
3750 - if use pgo ; then
3751 - mozconfig_add_options_ac '+pgo' MOZ_PGO=1
3752 -
3753 - if use clang ; then
3754 - # Used in build/pgo/profileserver.py
3755 - export LLVM_PROFDATA="llvm-profdata"
3756 - fi
3757 - fi
3758 - else
3759 - # Avoid auto-magic on linker
3760 - if use clang ; then
3761 - # This is upstream's default
3762 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
3763 - else
3764 - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
3765 - fi
3766 - fi
3767 -
3768 - # LTO flag was handled via configure
3769 - filter-flags '-flto*'
3770 -
3771 - mozconfig_use_enable debug
3772 - if use debug ; then
3773 - mozconfig_add_options_ac '+debug' --disable-optimize
3774 - else
3775 - if is-flag '-g*' ; then
3776 - if use clang ; then
3777 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
3778 - else
3779 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
3780 - fi
3781 - else
3782 - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
3783 - fi
3784 -
3785 - if is-flag '-O0' ; then
3786 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
3787 - elif is-flag '-O4' ; then
3788 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
3789 - elif is-flag '-O3' ; then
3790 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
3791 - elif is-flag '-O1' ; then
3792 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
3793 - elif is-flag '-Os' ; then
3794 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
3795 - else
3796 - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
3797 - fi
3798 - fi
3799 -
3800 - # Debug flag was handled via configure
3801 - filter-flags '-g*'
3802 -
3803 - # Optimization flag was handled via configure
3804 - filter-flags '-O*'
3805 -
3806 - # Modifications to better support ARM, bug #553364
3807 - if use cpu_flags_arm_neon ; then
3808 - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
3809 -
3810 - if ! tc-is-clang ; then
3811 - # thumb options aren't supported when using clang, bug 666966
3812 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \
3813 - --with-thumb=yes \
3814 - --with-thumb-interwork=no
3815 - fi
3816 - fi
3817 -
3818 - if [[ ${CHOST} == armv*h* ]] ; then
3819 - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
3820 -
3821 - if ! use system-libvpx ; then
3822 - sed -i \
3823 - -e "s|softfp|hard|" \
3824 - "${S}"/media/libvpx/moz.build \
3825 - || die
3826 - fi
3827 - fi
3828 -
3829 - if use clang ; then
3830 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
3831 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
3832 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
3833 - local disable_elf_hack=
3834 - if use amd64 ; then
3835 - disable_elf_hack=yes
3836 - elif use x86 ; then
3837 - disable_elf_hack=yes
3838 - elif use arm ; then
3839 - disable_elf_hack=yes
3840 - fi
3841 -
3842 - if [[ -n ${disable_elf_hack} ]] ; then
3843 - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack
3844 - fi
3845 - elif tc-is-gcc ; then
3846 - if ver_test $(gcc-fullversion) -ge 10 ; then
3847 - einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..."
3848 - append-cxxflags -fno-tree-loop-vectorize
3849 - fi
3850 - fi
3851 -
3852 - # Additional ARCH support
3853 - case "${ARCH}" in
3854 - arm)
3855 - # Reduce the memory requirements for linking
3856 - if use clang ; then
3857 - # Nothing to do
3858 - :;
3859 - elif tc-ld-is-gold || use lto ; then
3860 - append-ldflags -Wl,--no-keep-memory
3861 - else
3862 - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
3863 - fi
3864 - ;;
3865 - esac
3866 -
3867 - if ! use elibc_glibc ; then
3868 - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
3869 - fi
3870 -
3871 - # Allow elfhack to work in combination with unstripped binaries
3872 - # when they would normally be larger than 2GiB.
3873 - append-ldflags "-Wl,--compress-debug-sections=zlib"
3874 -
3875 - # Make revdep-rebuild.sh happy; Also required for musl
3876 - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
3877 -
3878 - # Pass $MAKEOPTS to build system
3879 - export MOZ_MAKE_FLAGS="${MAKEOPTS}"
3880 -
3881 - # Use system's Python environment
3882 - export MACH_USE_SYSTEM_PYTHON=1
3883 -
3884 - # Disable notification when build system has finished
3885 - export MOZ_NOSPAM=1
3886 -
3887 - # Portage sets XARGS environment variable to "xargs -r" by default which
3888 - # breaks build system's check_prog() function which doesn't support arguments
3889 - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
3890 -
3891 - # Set build dir
3892 - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
3893 -
3894 - # Show flags we will use
3895 - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
3896 - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
3897 - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
3898 - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
3899 - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
3900 -
3901 - # Handle EXTRA_CONF and show summary
3902 - local ac opt hash reason
3903 -
3904 - # Apply EXTRA_ECONF entries to $MOZCONFIG
3905 - if [[ -n ${EXTRA_ECONF} ]] ; then
3906 - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
3907 - for opt in "${ac[@]}"; do
3908 - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
3909 - done
3910 - fi
3911 -
3912 - echo
3913 - echo "=========================================================="
3914 - echo "Building ${PF} with the following configuration"
3915 - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
3916 - [[ -z ${hash} || ${hash} == \# ]] \
3917 - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
3918 - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
3919 - done
3920 - echo "=========================================================="
3921 - echo
3922 -
3923 - ./mach configure || die
3924 -}
3925 -
3926 -src_compile() {
3927 - local virtx_cmd=
3928 -
3929 - if use pgo ; then
3930 - virtx_cmd=virtx
3931 -
3932 - # Reset and cleanup environment variables used by GNOME/XDG
3933 - gnome2_environment_reset
3934 -
3935 - addpredict /root
3936 - fi
3937 -
3938 - local -x GDK_BACKEND=x11
3939 -
3940 - ${virtx_cmd} ./mach build --verbose \
3941 - || die
3942 -}
3943 -
3944 -src_install() {
3945 - # xpcshell is getting called during install
3946 - pax-mark m \
3947 - "${BUILD_DIR}"/dist/bin/xpcshell \
3948 - "${BUILD_DIR}"/dist/bin/${PN} \
3949 - "${BUILD_DIR}"/dist/bin/plugin-container
3950 -
3951 - DESTDIR="${D}" ./mach install || die
3952 -
3953 - # Upstream cannot ship symlink but we can (bmo#658850)
3954 - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
3955 - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
3956 -
3957 - # Don't install llvm-symbolizer from sys-devel/llvm package
3958 - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
3959 - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
3960 - fi
3961 -
3962 - # Install policy (currently only used to disable application updates)
3963 - insinto "${MOZILLA_FIVE_HOME}/distribution"
3964 - newins "${FILESDIR}"/distribution.ini distribution.ini
3965 - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
3966 -
3967 - # Install system-wide preferences
3968 - local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences"
3969 - insinto "${PREFS_DIR}"
3970 - newins "${FILESDIR}"/gentoo-default-prefs.js all-gentoo.js
3971 -
3972 - local GENTOO_PREFS="${ED}${PREFS_DIR}/all-gentoo.js"
3973 -
3974 - # Set dictionary path to use system hunspell
3975 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
3976 - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
3977 - EOF
3978 -
3979 - # Force hwaccel prefs if USE=hwaccel is enabled
3980 - if use hwaccel ; then
3981 - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \
3982 - >>"${GENTOO_PREFS}" \
3983 - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
3984 - fi
3985 -
3986 - if ! use gmp-autoupdate ; then
3987 - local plugin
3988 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
3989 - einfo "Disabling auto-update for ${plugin} plugin ..."
3990 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
3991 - pref("media.${plugin}.autoupdate", false);
3992 - EOF
3993 - done
3994 - fi
3995 -
3996 - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
3997 - if use system-harfbuzz ; then
3998 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
3999 - sticky_pref("gfx.font_rendering.graphite.enabled", true);
4000 - EOF
4001 - fi
4002 -
4003 - # Install language packs
4004 - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
4005 - if [[ -n "${langpacks}" ]] ; then
4006 - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
4007 - fi
4008 -
4009 - # Install geckodriver
4010 - if use geckodriver ; then
4011 - einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..."
4012 - pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
4013 - exeinto "${MOZILLA_FIVE_HOME}"
4014 - doexe "${BUILD_DIR}"/dist/bin/geckodriver
4015 -
4016 - dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
4017 - fi
4018 -
4019 - # Install icons
4020 - local icon_srcdir="${S}/browser/branding/official"
4021 - local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg"
4022 -
4023 - insinto /usr/share/icons/hicolor/symbolic/apps
4024 - newins "${icon_symbolic_file}" ${PN}-symbolic.svg
4025 -
4026 - local icon size
4027 - for icon in "${icon_srcdir}"/default*.png ; do
4028 - size=${icon%.png}
4029 - size=${size##*/default}
4030 -
4031 - if [[ ${size} -eq 48 ]] ; then
4032 - newicon "${icon}" ${PN}.png
4033 - fi
4034 -
4035 - newicon -s ${size} "${icon}" ${PN}.png
4036 - done
4037 -
4038 - # Install menu
4039 - local app_name="Mozilla ${MOZ_PN^}"
4040 - local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop"
4041 - local desktop_filename="${PN}.desktop"
4042 - local exec_command="${PN}"
4043 - local icon="${PN}"
4044 - local use_wayland="false"
4045 -
4046 - if use wayland ; then
4047 - use_wayland="true"
4048 - fi
4049 -
4050 - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
4051 -
4052 - sed -i \
4053 - -e "s:@NAME@:${app_name}:" \
4054 - -e "s:@EXEC@:${exec_command}:" \
4055 - -e "s:@ICON@:${icon}:" \
4056 - "${WORKDIR}/${PN}.desktop-template" \
4057 - || die
4058 -
4059 - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
4060 -
4061 - rm "${WORKDIR}/${PN}.desktop-template" || die
4062 -
4063 - # Install wrapper script
4064 - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
4065 - newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
4066 -
4067 - # Update wrapper
4068 - sed -i \
4069 - -e "s:@PREFIX@:${EPREFIX}/usr:" \
4070 - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
4071 - -e "s:@APULSELIB_DIR@:${apulselib}:" \
4072 - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
4073 - "${ED}/usr/bin/${PN}" \
4074 - || die
4075 -}
4076 -
4077 -pkg_preinst() {
4078 - xdg_pkg_preinst
4079 -
4080 - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
4081 - # does not need to be forced into the LD_LIBRARY_PATH
4082 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
4083 - einfo "APULSE found; Generating library symlinks for sound support ..."
4084 - local lib
4085 - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die
4086 - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
4087 - # A quickpkg rolled by hand will grab symlinks as part of the package,
4088 - # so we need to avoid creating them if they already exist.
4089 - if [[ ! -L ${lib##*/} ]] ; then
4090 - ln -s "${lib}" ${lib##*/} || die
4091 - fi
4092 - done
4093 - popd &>/dev/null || die
4094 - fi
4095 -}
4096 -
4097 -pkg_postinst() {
4098 - xdg_pkg_postinst
4099 -
4100 - if ! use gmp-autoupdate ; then
4101 - elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
4102 - elog "installing into new profiles:"
4103 - local plugin
4104 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
4105 - elog "\t ${plugin}"
4106 - done
4107 - elog
4108 - fi
4109 -
4110 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
4111 - elog "Apulse was detected at merge time on this system and so it will always be"
4112 - elog "used for sound. If you wish to use pulseaudio instead please unmerge"
4113 - elog "media-sound/apulse."
4114 - elog
4115 - fi
4116 -
4117 - local show_doh_information show_normandy_information show_shortcut_information
4118 -
4119 - if [[ -z "${REPLACING_VERSIONS}" ]] ; then
4120 - # New install; Tell user that DoH is disabled by default
4121 - show_doh_information=yes
4122 - show_normandy_information=yes
4123 - show_shortcut_information=no
4124 - else
4125 - local replacing_version
4126 - for replacing_version in ${REPLACING_VERSIONS} ; do
4127 - if ver_test "${replacing_version}" -lt 91.0 ; then
4128 - # Tell user that we no longer install a shortcut
4129 - # per supported display protocol
4130 - show_shortcut_information=yes
4131 - fi
4132 - done
4133 - fi
4134 -
4135 - if [[ -n "${show_doh_information}" ]] ; then
4136 - elog
4137 - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):"
4138 - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all"
4139 - elog "DNS traffic to Cloudflare by default is not a good idea and applications"
4140 - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5"
4141 - elog "(\"Off by choice\") by default."
4142 - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
4143 - fi
4144 -
4145 - # bug 713782
4146 - if [[ -n "${show_normandy_information}" ]] ; then
4147 - elog
4148 - elog "Upstream operates a service named Normandy which allows Mozilla to"
4149 - elog "push changes for default settings or even install new add-ons remotely."
4150 - elog "While this can be useful to address problems like 'Armagadd-on 2.0' or"
4151 - elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security"
4152 - elog "concerns prevail, which is why we have switched off the use of this"
4153 - elog "service by default."
4154 - elog
4155 - elog "To re-enable this service set"
4156 - elog
4157 - elog " app.normandy.enabled=true"
4158 - elog
4159 - elog "in about:config."
4160 - fi
4161 -
4162 - if [[ -n "${show_shortcut_information}" ]] ; then
4163 - elog
4164 - elog "Since firefox-91.0 we no longer install multiple shortcuts for"
4165 - elog "each supported display protocol. Instead we will only install"
4166 - elog "one generic Mozilla Firefox shortcut."
4167 - elog "If you still want to be able to select between running Mozilla Firefox"
4168 - elog "on X11 or Wayland, you have to re-create these shortcuts on your own."
4169 - fi
4170 -}
4171
4172 diff --git a/www-client/firefox/firefox-91.0.2.ebuild b/www-client/firefox/firefox-91.0.2.ebuild
4173 deleted file mode 100644
4174 index b606ecd707c..00000000000
4175 --- a/www-client/firefox/firefox-91.0.2.ebuild
4176 +++ /dev/null
4177 @@ -1,1149 +0,0 @@
4178 -# Copyright 1999-2021 Gentoo Authors
4179 -# Distributed under the terms of the GNU General Public License v2
4180 -
4181 -EAPI="7"
4182 -
4183 -FIREFOX_PATCHSET="firefox-91-patches-03.tar.xz"
4184 -
4185 -LLVM_MAX_SLOT=12
4186 -
4187 -PYTHON_COMPAT=( python3_{7..10} )
4188 -PYTHON_REQ_USE="ncurses,sqlite,ssl"
4189 -
4190 -WANT_AUTOCONF="2.1"
4191 -
4192 -VIRTUALX_REQUIRED="pgo"
4193 -
4194 -MOZ_ESR=
4195 -
4196 -MOZ_PV=${PV}
4197 -MOZ_PV_SUFFIX=
4198 -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
4199 - MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
4200 -
4201 - # Convert the ebuild version to the upstream Mozilla version
4202 - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
4203 - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
4204 - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
4205 -fi
4206 -
4207 -if [[ -n ${MOZ_ESR} ]] ; then
4208 - # ESR releases have slightly different version numbers
4209 - MOZ_PV="${MOZ_PV}esr"
4210 -fi
4211 -
4212 -MOZ_PN="${PN%-bin}"
4213 -MOZ_P="${MOZ_PN}-${MOZ_PV}"
4214 -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
4215 -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
4216 -
4217 -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \
4218 - llvm multiprocessing pax-utils python-any-r1 toolchain-funcs \
4219 - virtualx xdg
4220 -
4221 -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
4222 -
4223 -if [[ ${PV} == *_rc* ]] ; then
4224 - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
4225 -fi
4226 -
4227 -PATCH_URIS=(
4228 - https://dev.gentoo.org/~{axs,polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET}
4229 -)
4230 -
4231 -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
4232 - ${PATCH_URIS[@]}"
4233 -
4234 -DESCRIPTION="Firefox Web Browser"
4235 -HOMEPAGE="https://www.mozilla.com/firefox"
4236 -
4237 -KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
4238 -
4239 -SLOT="0/$(ver_cut 1)"
4240 -LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
4241 -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free geckodriver +gmp-autoupdate
4242 - hardened hwaccel jack lto +openh264 pgo pulseaudio screencast sndio selinux
4243 - +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent
4244 - +system-libvpx +system-webp wayland wifi"
4245 -
4246 -REQUIRED_USE="debug? ( !system-av1 )
4247 - screencast? ( wayland )"
4248 -
4249 -BDEPEND="${PYTHON_DEPS}
4250 - app-arch/unzip
4251 - app-arch/zip
4252 - >=dev-util/cbindgen-0.19.0
4253 - >=net-libs/nodejs-10.23.1
4254 - virtual/pkgconfig
4255 - >=virtual/rust-1.51.0
4256 - || (
4257 - (
4258 - sys-devel/clang:12
4259 - sys-devel/llvm:12
4260 - clang? (
4261 - =sys-devel/lld-12*
4262 - pgo? ( =sys-libs/compiler-rt-sanitizers-12*[profile] )
4263 - )
4264 - )
4265 - (
4266 - sys-devel/clang:11
4267 - sys-devel/llvm:11
4268 - clang? (
4269 - =sys-devel/lld-11*
4270 - pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] )
4271 - )
4272 - )
4273 - (
4274 - sys-devel/clang:10
4275 - sys-devel/llvm:10
4276 - clang? (
4277 - =sys-devel/lld-10*
4278 - pgo? ( =sys-libs/compiler-rt-sanitizers-10*[profile] )
4279 - )
4280 - )
4281 - )
4282 - amd64? ( >=dev-lang/nasm-2.13 )
4283 - x86? ( >=dev-lang/nasm-2.13 )"
4284 -
4285 -CDEPEND="
4286 - >=dev-libs/nss-3.68
4287 - >=dev-libs/nspr-4.32
4288 - dev-libs/atk
4289 - dev-libs/expat
4290 - >=x11-libs/cairo-1.10[X]
4291 - >=x11-libs/gtk+-3.4.0:3[X]
4292 - x11-libs/gdk-pixbuf
4293 - >=x11-libs/pango-1.22.0
4294 - >=media-libs/libpng-1.6.35:0=[apng]
4295 - >=media-libs/mesa-10.2:*
4296 - media-libs/fontconfig
4297 - >=media-libs/freetype-2.4.10
4298 - kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) )
4299 - virtual/freedesktop-icon-theme
4300 - >=x11-libs/pixman-0.19.2
4301 - >=dev-libs/glib-2.26:2
4302 - >=sys-libs/zlib-1.2.3
4303 - >=dev-libs/libffi-3.0.10:=
4304 - media-video/ffmpeg
4305 - x11-libs/libX11
4306 - x11-libs/libXcomposite
4307 - x11-libs/libXdamage
4308 - x11-libs/libXext
4309 - x11-libs/libXfixes
4310 - x11-libs/libXrender
4311 - x11-libs/libXt
4312 - dbus? (
4313 - sys-apps/dbus
4314 - dev-libs/dbus-glib
4315 - )
4316 - screencast? ( media-video/pipewire:0/0.3 )
4317 - system-av1? (
4318 - >=media-libs/dav1d-0.8.1:=
4319 - >=media-libs/libaom-1.0.0:=
4320 - )
4321 - system-harfbuzz? (
4322 - >=media-libs/harfbuzz-2.8.1:0=
4323 - >=media-gfx/graphite2-1.3.13
4324 - )
4325 - system-icu? ( >=dev-libs/icu-69.1:= )
4326 - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
4327 - system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
4328 - system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
4329 - system-webp? ( >=media-libs/libwebp-1.1.0:0= )
4330 - wifi? (
4331 - kernel_linux? (
4332 - sys-apps/dbus
4333 - dev-libs/dbus-glib
4334 - net-misc/networkmanager
4335 - )
4336 - )
4337 - jack? ( virtual/jack )
4338 - selinux? ( sec-policy/selinux-mozilla )
4339 - sndio? ( media-sound/sndio )"
4340 -
4341 -RDEPEND="${CDEPEND}
4342 - jack? ( virtual/jack )
4343 - openh264? ( media-libs/openh264:*[plugin] )
4344 - pulseaudio? (
4345 - || (
4346 - media-sound/pulseaudio
4347 - >=media-sound/apulse-0.1.12-r4
4348 - )
4349 - )
4350 - selinux? ( sec-policy/selinux-mozilla )"
4351 -
4352 -DEPEND="${CDEPEND}
4353 - pulseaudio? (
4354 - || (
4355 - media-sound/pulseaudio
4356 - >=media-sound/apulse-0.1.12-r4[sdk]
4357 - )
4358 - )
4359 - wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
4360 - amd64? ( virtual/opengl )
4361 - x86? ( virtual/opengl )"
4362 -
4363 -S="${WORKDIR}/${PN}-${PV%_*}"
4364 -
4365 -# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
4366 -# overridden in the enviromnent (advanced hackers only)
4367 -if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
4368 - MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
4369 -fi
4370 -
4371 -llvm_check_deps() {
4372 - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
4373 - einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
4374 - return 1
4375 - fi
4376 -
4377 - if use clang ; then
4378 - if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
4379 - einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
4380 - return 1
4381 - fi
4382 -
4383 - if use pgo ; then
4384 - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
4385 - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
4386 - return 1
4387 - fi
4388 - fi
4389 - fi
4390 -
4391 - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
4392 -}
4393 -
4394 -MOZ_LANGS=(
4395 - ach af an ar ast az be bg bn br bs ca-valencia ca cak cs cy
4396 - da de dsb el en-CA en-GB en-US eo es-AR es-CL es-ES es-MX et eu
4397 - fa ff fi fr fy-NL ga-IE gd gl gn gu-IN he hi-IN hr hsb hu hy-AM
4398 - ia id is it ja ka kab kk km kn ko lij lt lv mk mr ms my
4399 - nb-NO ne-NP nl nn-NO oc pa-IN pl pt-BR pt-PT rm ro ru sco
4400 - si sk sl son sq sr sv-SE szl ta te th tl tr trs uk ur uz vi
4401 - xh zh-CN zh-TW
4402 -)
4403 -
4404 -mozilla_set_globals() {
4405 - # https://bugs.gentoo.org/587334
4406 - local MOZ_TOO_REGIONALIZED_FOR_L10N=(
4407 - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
4408 - )
4409 -
4410 - local lang xflag
4411 - for lang in "${MOZ_LANGS[@]}" ; do
4412 - # en and en_US are handled internally
4413 - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
4414 - continue
4415 - fi
4416 -
4417 - # strip region subtag if $lang is in the list
4418 - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
4419 - xflag=${lang%%-*}
4420 - else
4421 - xflag=${lang}
4422 - fi
4423 -
4424 - SRC_URI+=" l10n_${xflag/[_@]/-}? ("
4425 - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
4426 - SRC_URI+=" )"
4427 - IUSE+=" l10n_${xflag/[_@]/-}"
4428 - done
4429 -}
4430 -mozilla_set_globals
4431 -
4432 -moz_clear_vendor_checksums() {
4433 - debug-print-function ${FUNCNAME} "$@"
4434 -
4435 - if [[ ${#} -ne 1 ]] ; then
4436 - die "${FUNCNAME} requires exact one argument"
4437 - fi
4438 -
4439 - einfo "Clearing cargo checksums for ${1} ..."
4440 -
4441 - sed -i \
4442 - -e 's/\("files":{\)[^}]*/\1/' \
4443 - "${S}"/third_party/rust/${1}/.cargo-checksum.json \
4444 - || die
4445 -}
4446 -
4447 -moz_install_xpi() {
4448 - debug-print-function ${FUNCNAME} "$@"
4449 -
4450 - if [[ ${#} -lt 2 ]] ; then
4451 - die "${FUNCNAME} requires at least two arguments"
4452 - fi
4453 -
4454 - local DESTDIR=${1}
4455 - shift
4456 -
4457 - insinto "${DESTDIR}"
4458 -
4459 - local emid xpi_file xpi_tmp_dir
4460 - for xpi_file in "${@}" ; do
4461 - emid=
4462 - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
4463 -
4464 - # Unpack XPI
4465 - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
4466 -
4467 - # Determine extension ID
4468 - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
4469 - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
4470 - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
4471 - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
4472 - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
4473 - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
4474 - else
4475 - die "failed to determine extension id"
4476 - fi
4477 -
4478 - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
4479 - newins "${xpi_file}" "${emid}.xpi"
4480 - done
4481 -}
4482 -
4483 -mozconfig_add_options_ac() {
4484 - debug-print-function ${FUNCNAME} "$@"
4485 -
4486 - if [[ ${#} -lt 2 ]] ; then
4487 - die "${FUNCNAME} requires at least two arguments"
4488 - fi
4489 -
4490 - local reason=${1}
4491 - shift
4492 -
4493 - local option
4494 - for option in ${@} ; do
4495 - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
4496 - done
4497 -}
4498 -
4499 -mozconfig_add_options_mk() {
4500 - debug-print-function ${FUNCNAME} "$@"
4501 -
4502 - if [[ ${#} -lt 2 ]] ; then
4503 - die "${FUNCNAME} requires at least two arguments"
4504 - fi
4505 -
4506 - local reason=${1}
4507 - shift
4508 -
4509 - local option
4510 - for option in ${@} ; do
4511 - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
4512 - done
4513 -}
4514 -
4515 -mozconfig_use_enable() {
4516 - debug-print-function ${FUNCNAME} "$@"
4517 -
4518 - if [[ ${#} -lt 1 ]] ; then
4519 - die "${FUNCNAME} requires at least one arguments"
4520 - fi
4521 -
4522 - local flag=$(use_enable "${@}")
4523 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
4524 -}
4525 -
4526 -mozconfig_use_with() {
4527 - debug-print-function ${FUNCNAME} "$@"
4528 -
4529 - if [[ ${#} -lt 1 ]] ; then
4530 - die "${FUNCNAME} requires at least one arguments"
4531 - fi
4532 -
4533 - local flag=$(use_with "${@}")
4534 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
4535 -}
4536 -
4537 -pkg_pretend() {
4538 - if [[ ${MERGE_TYPE} != binary ]] ; then
4539 - if use pgo ; then
4540 - if ! has usersandbox $FEATURES ; then
4541 - die "You must enable usersandbox as X server can not run as root!"
4542 - fi
4543 - fi
4544 -
4545 - # Ensure we have enough disk space to compile
4546 - if use pgo || use lto || use debug ; then
4547 - CHECKREQS_DISK_BUILD="13500M"
4548 - else
4549 - CHECKREQS_DISK_BUILD="6400M"
4550 - fi
4551 -
4552 - check-reqs_pkg_pretend
4553 - fi
4554 -}
4555 -
4556 -pkg_setup() {
4557 - if [[ ${MERGE_TYPE} != binary ]] ; then
4558 - if use pgo ; then
4559 - if ! has userpriv ${FEATURES} ; then
4560 - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
4561 - fi
4562 - fi
4563 -
4564 - # Ensure we have enough disk space to compile
4565 - if use pgo || use lto || use debug ; then
4566 - CHECKREQS_DISK_BUILD="13500M"
4567 - else
4568 - CHECKREQS_DISK_BUILD="6400M"
4569 - fi
4570 -
4571 - check-reqs_pkg_setup
4572 -
4573 - llvm_pkg_setup
4574 -
4575 - if use clang && use lto ; then
4576 - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
4577 - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
4578 - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
4579 -
4580 - # temp fix for https://bugs.gentoo.org/768543
4581 - # we can assume that rust 1.{49,50}.0 always uses llvm 11
4582 - local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }')
4583 - [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}")
4584 - [[ -z ${version_rust} ]] && die "Failed to read version from rustc!"
4585 -
4586 - if ver_test "${version_rust}" -ge "1.49" && ver_test "${version_rust}" -le "1.50" ; then
4587 - local version_llvm_rust="11"
4588 - else
4589 - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
4590 - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
4591 - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
4592 - fi
4593 -
4594 - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
4595 - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
4596 - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
4597 - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
4598 - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
4599 - eerror " - Build ${CATEGORY}/${PN} without USE=lto"
4600 - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
4601 - fi
4602 - fi
4603 -
4604 - if ! use clang && [[ $(gcc-major-version) -eq 11 ]] \
4605 - && ! has_version -b ">sys-devel/gcc-11.1.0:11" ; then
4606 - # bug 792705
4607 - eerror "Using GCC 11 to compile firefox is currently known to be broken (see bug #792705)."
4608 - die "Set USE=clang or select <gcc-11 to build ${CATEGORY}/${P}."
4609 - fi
4610 -
4611 - python-any-r1_pkg_setup
4612 -
4613 - # Avoid PGO profiling problems due to enviroment leakage
4614 - # These should *always* be cleaned up anyway
4615 - unset \
4616 - DBUS_SESSION_BUS_ADDRESS \
4617 - DISPLAY \
4618 - ORBIT_SOCKETDIR \
4619 - SESSION_MANAGER \
4620 - XAUTHORITY \
4621 - XDG_CACHE_HOME \
4622 - XDG_SESSION_COOKIE
4623 -
4624 - # Build system is using /proc/self/oom_score_adj, bug #604394
4625 - addpredict /proc/self/oom_score_adj
4626 -
4627 - if ! mountpoint -q /dev/shm ; then
4628 - # If /dev/shm is not available, configure is known to fail with
4629 - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
4630 - ewarn "/dev/shm is not mounted -- expect build failures!"
4631 - fi
4632 -
4633 - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
4634 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
4635 - # get your own set of keys.
4636 - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
4637 - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
4638 - fi
4639 -
4640 - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
4641 - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
4642 - fi
4643 -
4644 - # Mozilla API keys (see https://location.services.mozilla.com/api)
4645 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
4646 - # get your own set of keys.
4647 - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
4648 - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
4649 - fi
4650 -
4651 - # Ensure we use C locale when building, bug #746215
4652 - export LC_ALL=C
4653 - fi
4654 -
4655 - CONFIG_CHECK="~SECCOMP"
4656 - WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
4657 - linux-info_pkg_setup
4658 -}
4659 -
4660 -src_unpack() {
4661 - local _lp_dir="${WORKDIR}/language_packs"
4662 - local _src_file
4663 -
4664 - if [[ ! -d "${_lp_dir}" ]] ; then
4665 - mkdir "${_lp_dir}" || die
4666 - fi
4667 -
4668 - for _src_file in ${A} ; do
4669 - if [[ ${_src_file} == *.xpi ]]; then
4670 - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
4671 - else
4672 - unpack ${_src_file}
4673 - fi
4674 - done
4675 -}
4676 -
4677 -src_prepare() {
4678 - use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
4679 - eapply "${WORKDIR}/firefox-patches"
4680 -
4681 - # Allow user to apply any additional patches without modifing ebuild
4682 - eapply_user
4683 -
4684 - # Make LTO respect MAKEOPTS
4685 - sed -i \
4686 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
4687 - "${S}"/build/moz.configure/lto-pgo.configure \
4688 - || die "sed failed to set num_cores"
4689 -
4690 - # Make ICU respect MAKEOPTS
4691 - sed -i \
4692 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
4693 - "${S}"/intl/icu_sources_data.py \
4694 - || die "sed failed to set num_cores"
4695 -
4696 - # sed-in toolchain prefix
4697 - sed -i \
4698 - -e "s/objdump/${CHOST}-objdump/" \
4699 - "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
4700 - || die "sed failed to set toolchain prefix"
4701 -
4702 - sed -i \
4703 - -e 's/ccache_stats = None/return None/' \
4704 - "${S}"/python/mozbuild/mozbuild/controller/building.py \
4705 - || die "sed failed to disable ccache stats call"
4706 -
4707 - einfo "Removing pre-built binaries ..."
4708 - find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
4709 -
4710 - # Clearing checksums where we have applied patches
4711 - moz_clear_vendor_checksums target-lexicon-0.9.0
4712 -
4713 - # Create build dir
4714 - BUILD_DIR="${WORKDIR}/${PN}_build"
4715 - mkdir -p "${BUILD_DIR}" || die
4716 -
4717 - # Write API keys to disk
4718 - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
4719 - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
4720 - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
4721 -
4722 - xdg_src_prepare
4723 -}
4724 -
4725 -src_configure() {
4726 - # Show flags set at the beginning
4727 - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
4728 - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
4729 - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
4730 - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
4731 - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
4732 -
4733 - local have_switched_compiler=
4734 - if use clang && ! tc-is-clang ; then
4735 - # Force clang
4736 - einfo "Enforcing the use of clang due to USE=clang ..."
4737 - have_switched_compiler=yes
4738 - AR=llvm-ar
4739 - CC=${CHOST}-clang
4740 - CXX=${CHOST}-clang++
4741 - NM=llvm-nm
4742 - RANLIB=llvm-ranlib
4743 - elif ! use clang && ! tc-is-gcc ; then
4744 - # Force gcc
4745 - have_switched_compiler=yes
4746 - einfo "Enforcing the use of gcc due to USE=-clang ..."
4747 - AR=gcc-ar
4748 - CC=${CHOST}-gcc
4749 - CXX=${CHOST}-g++
4750 - NM=gcc-nm
4751 - RANLIB=gcc-ranlib
4752 - fi
4753 -
4754 - if [[ -n "${have_switched_compiler}" ]] ; then
4755 - # Because we switched active compiler we have to ensure
4756 - # that no unsupported flags are set
4757 - strip-unsupported-flags
4758 - fi
4759 -
4760 - # Ensure we use correct toolchain
4761 - export HOST_CC="$(tc-getBUILD_CC)"
4762 - export HOST_CXX="$(tc-getBUILD_CXX)"
4763 - tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
4764 -
4765 - # Pass the correct toolchain paths through cbindgen
4766 - if tc-is-cross-compiler ; then
4767 - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
4768 - fi
4769 -
4770 - # Set MOZILLA_FIVE_HOME
4771 - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
4772 -
4773 - # python/mach/mach/mixin/process.py fails to detect SHELL
4774 - export SHELL="${EPREFIX}/bin/bash"
4775 -
4776 - # Set MOZCONFIG
4777 - export MOZCONFIG="${S}/.mozconfig"
4778 -
4779 - # Initialize MOZCONFIG
4780 - mozconfig_add_options_ac '' --enable-application=browser
4781 -
4782 - # Set Gentoo defaults
4783 - export MOZILLA_OFFICIAL=1
4784 -
4785 - mozconfig_add_options_ac 'Gentoo default' \
4786 - --allow-addon-sideload \
4787 - --disable-cargo-incremental \
4788 - --disable-crashreporter \
4789 - --disable-install-strip \
4790 - --disable-strip \
4791 - --disable-updater \
4792 - --enable-official-branding \
4793 - --enable-release \
4794 - --enable-system-ffi \
4795 - --enable-system-pixman \
4796 - --host="${CBUILD:-${CHOST}}" \
4797 - --libdir="${EPREFIX}/usr/$(get_libdir)" \
4798 - --prefix="${EPREFIX}/usr" \
4799 - --target="${CHOST}" \
4800 - --without-ccache \
4801 - --with-intl-api \
4802 - --with-libclang-path="$(llvm-config --libdir)" \
4803 - --with-system-nspr \
4804 - --with-system-nss \
4805 - --with-system-png \
4806 - --with-system-zlib \
4807 - --with-toolchain-prefix="${CHOST}-" \
4808 - --with-unsigned-addon-scopes=app,system \
4809 - --x-includes="${SYSROOT}${EPREFIX}/usr/include" \
4810 - --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)"
4811 -
4812 - # Set update channel
4813 - local update_channel=release
4814 - [[ -n ${MOZ_ESR} ]] && update_channel=esr
4815 - mozconfig_add_options_ac '' --update-channel=${update_channel}
4816 -
4817 - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
4818 - mozconfig_add_options_ac '' --enable-rust-simd
4819 - fi
4820 -
4821 - if [[ -s "${S}/api-google.key" ]] ; then
4822 - local key_origin="Gentoo default"
4823 - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
4824 - key_origin="User value"
4825 - fi
4826 -
4827 - mozconfig_add_options_ac "${key_origin}" \
4828 - --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
4829 - else
4830 - einfo "Building without Google API key ..."
4831 - fi
4832 -
4833 - if [[ -s "${S}/api-location.key" ]] ; then
4834 - local key_origin="Gentoo default"
4835 - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
4836 - key_origin="User value"
4837 - fi
4838 -
4839 - mozconfig_add_options_ac "${key_origin}" \
4840 - --with-google-location-service-api-keyfile="${S}/api-location.key"
4841 - else
4842 - einfo "Building without Location API key ..."
4843 - fi
4844 -
4845 - if [[ -s "${S}/api-mozilla.key" ]] ; then
4846 - local key_origin="Gentoo default"
4847 - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
4848 - key_origin="User value"
4849 - fi
4850 -
4851 - mozconfig_add_options_ac "${key_origin}" \
4852 - --with-mozilla-api-keyfile="${S}/api-mozilla.key"
4853 - else
4854 - einfo "Building without Mozilla API key ..."
4855 - fi
4856 -
4857 - mozconfig_use_with system-av1
4858 - mozconfig_use_with system-harfbuzz
4859 - mozconfig_use_with system-harfbuzz system-graphite2
4860 - mozconfig_use_with system-icu
4861 - mozconfig_use_with system-jpeg
4862 - mozconfig_use_with system-libevent system-libevent "${SYSROOT}${EPREFIX}/usr"
4863 - mozconfig_use_with system-libvpx
4864 - mozconfig_use_with system-webp
4865 -
4866 - mozconfig_use_enable dbus
4867 -
4868 - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
4869 -
4870 - mozconfig_use_enable geckodriver
4871 -
4872 - if use hardened ; then
4873 - mozconfig_add_options_ac "+hardened" --enable-hardening
4874 - append-ldflags "-Wl,-z,relro -Wl,-z,now"
4875 - fi
4876 -
4877 - mozconfig_use_enable jack
4878 -
4879 - mozconfig_use_enable pulseaudio
4880 - # force the deprecated alsa sound code if pulseaudio is disabled
4881 - if use kernel_linux && ! use pulseaudio ; then
4882 - mozconfig_add_options_ac '-pulseaudio' --enable-alsa
4883 - fi
4884 -
4885 - mozconfig_use_enable sndio
4886 -
4887 - mozconfig_use_enable wifi necko-wifi
4888 -
4889 - if use wayland ; then
4890 - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland
4891 - else
4892 - mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3
4893 - fi
4894 -
4895 - if use lto ; then
4896 - if use clang ; then
4897 - # Upstream only supports lld when using clang
4898 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
4899 -
4900 - mozconfig_add_options_ac '+lto' --enable-lto=cross
4901 - else
4902 - # ThinLTO is currently broken, see bmo#1644409
4903 - mozconfig_add_options_ac '+lto' --enable-lto=full
4904 - fi
4905 -
4906 - if use pgo ; then
4907 - mozconfig_add_options_ac '+pgo' MOZ_PGO=1
4908 -
4909 - if use clang ; then
4910 - # Used in build/pgo/profileserver.py
4911 - export LLVM_PROFDATA="llvm-profdata"
4912 - fi
4913 - fi
4914 - else
4915 - # Avoid auto-magic on linker
4916 - if use clang ; then
4917 - # This is upstream's default
4918 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
4919 - else
4920 - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
4921 - fi
4922 - fi
4923 -
4924 - # LTO flag was handled via configure
4925 - filter-flags '-flto*'
4926 -
4927 - mozconfig_use_enable debug
4928 - if use debug ; then
4929 - mozconfig_add_options_ac '+debug' --disable-optimize
4930 - else
4931 - if is-flag '-g*' ; then
4932 - if use clang ; then
4933 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
4934 - else
4935 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
4936 - fi
4937 - else
4938 - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
4939 - fi
4940 -
4941 - if is-flag '-O0' ; then
4942 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
4943 - elif is-flag '-O4' ; then
4944 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
4945 - elif is-flag '-O3' ; then
4946 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
4947 - elif is-flag '-O1' ; then
4948 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
4949 - elif is-flag '-Os' ; then
4950 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
4951 - else
4952 - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
4953 - fi
4954 - fi
4955 -
4956 - # Debug flag was handled via configure
4957 - filter-flags '-g*'
4958 -
4959 - # Optimization flag was handled via configure
4960 - filter-flags '-O*'
4961 -
4962 - # Modifications to better support ARM, bug #553364
4963 - if use cpu_flags_arm_neon ; then
4964 - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
4965 -
4966 - if ! tc-is-clang ; then
4967 - # thumb options aren't supported when using clang, bug 666966
4968 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \
4969 - --with-thumb=yes \
4970 - --with-thumb-interwork=no
4971 - fi
4972 - fi
4973 -
4974 - if [[ ${CHOST} == armv*h* ]] ; then
4975 - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
4976 -
4977 - if ! use system-libvpx ; then
4978 - sed -i \
4979 - -e "s|softfp|hard|" \
4980 - "${S}"/media/libvpx/moz.build \
4981 - || die
4982 - fi
4983 - fi
4984 -
4985 - if use clang ; then
4986 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
4987 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
4988 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
4989 - local disable_elf_hack=
4990 - if use amd64 ; then
4991 - disable_elf_hack=yes
4992 - elif use x86 ; then
4993 - disable_elf_hack=yes
4994 - elif use arm ; then
4995 - disable_elf_hack=yes
4996 - fi
4997 -
4998 - if [[ -n ${disable_elf_hack} ]] ; then
4999 - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack
5000 - fi
5001 - elif tc-is-gcc ; then
5002 - if ver_test $(gcc-fullversion) -ge 10 ; then
5003 - einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..."
5004 - append-cxxflags -fno-tree-loop-vectorize
5005 - fi
5006 - fi
5007 -
5008 - # Additional ARCH support
5009 - case "${ARCH}" in
5010 - arm)
5011 - # Reduce the memory requirements for linking
5012 - if use clang ; then
5013 - # Nothing to do
5014 - :;
5015 - elif tc-ld-is-gold || use lto ; then
5016 - append-ldflags -Wl,--no-keep-memory
5017 - else
5018 - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
5019 - fi
5020 - ;;
5021 - esac
5022 -
5023 - if ! use elibc_glibc ; then
5024 - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
5025 - fi
5026 -
5027 - # Allow elfhack to work in combination with unstripped binaries
5028 - # when they would normally be larger than 2GiB.
5029 - append-ldflags "-Wl,--compress-debug-sections=zlib"
5030 -
5031 - # Make revdep-rebuild.sh happy; Also required for musl
5032 - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
5033 -
5034 - # Pass $MAKEOPTS to build system
5035 - export MOZ_MAKE_FLAGS="${MAKEOPTS}"
5036 -
5037 - # Use system's Python environment
5038 - export MACH_USE_SYSTEM_PYTHON=1
5039 -
5040 - # Disable notification when build system has finished
5041 - export MOZ_NOSPAM=1
5042 -
5043 - # Portage sets XARGS environment variable to "xargs -r" by default which
5044 - # breaks build system's check_prog() function which doesn't support arguments
5045 - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
5046 -
5047 - # Set build dir
5048 - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
5049 -
5050 - # Show flags we will use
5051 - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
5052 - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
5053 - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
5054 - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
5055 - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
5056 -
5057 - # Handle EXTRA_CONF and show summary
5058 - local ac opt hash reason
5059 -
5060 - # Apply EXTRA_ECONF entries to $MOZCONFIG
5061 - if [[ -n ${EXTRA_ECONF} ]] ; then
5062 - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
5063 - for opt in "${ac[@]}"; do
5064 - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
5065 - done
5066 - fi
5067 -
5068 - echo
5069 - echo "=========================================================="
5070 - echo "Building ${PF} with the following configuration"
5071 - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
5072 - [[ -z ${hash} || ${hash} == \# ]] \
5073 - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
5074 - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
5075 - done
5076 - echo "=========================================================="
5077 - echo
5078 -
5079 - ./mach configure || die
5080 -}
5081 -
5082 -src_compile() {
5083 - local virtx_cmd=
5084 -
5085 - if use pgo ; then
5086 - virtx_cmd=virtx
5087 -
5088 - # Reset and cleanup environment variables used by GNOME/XDG
5089 - gnome2_environment_reset
5090 -
5091 - addpredict /root
5092 - fi
5093 -
5094 - local -x GDK_BACKEND=x11
5095 -
5096 - ${virtx_cmd} ./mach build --verbose \
5097 - || die
5098 -}
5099 -
5100 -src_install() {
5101 - # xpcshell is getting called during install
5102 - pax-mark m \
5103 - "${BUILD_DIR}"/dist/bin/xpcshell \
5104 - "${BUILD_DIR}"/dist/bin/${PN} \
5105 - "${BUILD_DIR}"/dist/bin/plugin-container
5106 -
5107 - DESTDIR="${D}" ./mach install || die
5108 -
5109 - # Upstream cannot ship symlink but we can (bmo#658850)
5110 - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
5111 - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
5112 -
5113 - # Don't install llvm-symbolizer from sys-devel/llvm package
5114 - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
5115 - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
5116 - fi
5117 -
5118 - # Install policy (currently only used to disable application updates)
5119 - insinto "${MOZILLA_FIVE_HOME}/distribution"
5120 - newins "${FILESDIR}"/distribution.ini distribution.ini
5121 - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
5122 -
5123 - # Install system-wide preferences
5124 - local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences"
5125 - insinto "${PREFS_DIR}"
5126 - newins "${FILESDIR}"/gentoo-default-prefs.js all-gentoo.js
5127 -
5128 - local GENTOO_PREFS="${ED}${PREFS_DIR}/all-gentoo.js"
5129 -
5130 - # Set dictionary path to use system hunspell
5131 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
5132 - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
5133 - EOF
5134 -
5135 - # Force hwaccel prefs if USE=hwaccel is enabled
5136 - if use hwaccel ; then
5137 - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \
5138 - >>"${GENTOO_PREFS}" \
5139 - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
5140 - fi
5141 -
5142 - if ! use gmp-autoupdate ; then
5143 - local plugin
5144 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
5145 - einfo "Disabling auto-update for ${plugin} plugin ..."
5146 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
5147 - pref("media.${plugin}.autoupdate", false);
5148 - EOF
5149 - done
5150 - fi
5151 -
5152 - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
5153 - if use system-harfbuzz ; then
5154 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
5155 - sticky_pref("gfx.font_rendering.graphite.enabled", true);
5156 - EOF
5157 - fi
5158 -
5159 - # Install language packs
5160 - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
5161 - if [[ -n "${langpacks}" ]] ; then
5162 - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
5163 - fi
5164 -
5165 - # Install geckodriver
5166 - if use geckodriver ; then
5167 - einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..."
5168 - pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
5169 - exeinto "${MOZILLA_FIVE_HOME}"
5170 - doexe "${BUILD_DIR}"/dist/bin/geckodriver
5171 -
5172 - dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
5173 - fi
5174 -
5175 - # Install icons
5176 - local icon_srcdir="${S}/browser/branding/official"
5177 - local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg"
5178 -
5179 - insinto /usr/share/icons/hicolor/symbolic/apps
5180 - newins "${icon_symbolic_file}" ${PN}-symbolic.svg
5181 -
5182 - local icon size
5183 - for icon in "${icon_srcdir}"/default*.png ; do
5184 - size=${icon%.png}
5185 - size=${size##*/default}
5186 -
5187 - if [[ ${size} -eq 48 ]] ; then
5188 - newicon "${icon}" ${PN}.png
5189 - fi
5190 -
5191 - newicon -s ${size} "${icon}" ${PN}.png
5192 - done
5193 -
5194 - # Install menu
5195 - local app_name="Mozilla ${MOZ_PN^}"
5196 - local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop"
5197 - local desktop_filename="${PN}.desktop"
5198 - local exec_command="${PN}"
5199 - local icon="${PN}"
5200 - local use_wayland="false"
5201 -
5202 - if use wayland ; then
5203 - use_wayland="true"
5204 - fi
5205 -
5206 - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
5207 -
5208 - sed -i \
5209 - -e "s:@NAME@:${app_name}:" \
5210 - -e "s:@EXEC@:${exec_command}:" \
5211 - -e "s:@ICON@:${icon}:" \
5212 - "${WORKDIR}/${PN}.desktop-template" \
5213 - || die
5214 -
5215 - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
5216 -
5217 - rm "${WORKDIR}/${PN}.desktop-template" || die
5218 -
5219 - # Install wrapper script
5220 - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
5221 - newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
5222 -
5223 - # Update wrapper
5224 - sed -i \
5225 - -e "s:@PREFIX@:${EPREFIX}/usr:" \
5226 - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
5227 - -e "s:@APULSELIB_DIR@:${apulselib}:" \
5228 - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
5229 - "${ED}/usr/bin/${PN}" \
5230 - || die
5231 -}
5232 -
5233 -pkg_preinst() {
5234 - xdg_pkg_preinst
5235 -
5236 - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
5237 - # does not need to be forced into the LD_LIBRARY_PATH
5238 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
5239 - einfo "APULSE found; Generating library symlinks for sound support ..."
5240 - local lib
5241 - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die
5242 - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
5243 - # A quickpkg rolled by hand will grab symlinks as part of the package,
5244 - # so we need to avoid creating them if they already exist.
5245 - if [[ ! -L ${lib##*/} ]] ; then
5246 - ln -s "${lib}" ${lib##*/} || die
5247 - fi
5248 - done
5249 - popd &>/dev/null || die
5250 - fi
5251 -}
5252 -
5253 -pkg_postinst() {
5254 - xdg_pkg_postinst
5255 -
5256 - if ! use gmp-autoupdate ; then
5257 - elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
5258 - elog "installing into new profiles:"
5259 - local plugin
5260 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
5261 - elog "\t ${plugin}"
5262 - done
5263 - elog
5264 - fi
5265 -
5266 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
5267 - elog "Apulse was detected at merge time on this system and so it will always be"
5268 - elog "used for sound. If you wish to use pulseaudio instead please unmerge"
5269 - elog "media-sound/apulse."
5270 - elog
5271 - fi
5272 -
5273 - local show_doh_information show_normandy_information show_shortcut_information
5274 -
5275 - if [[ -z "${REPLACING_VERSIONS}" ]] ; then
5276 - # New install; Tell user that DoH is disabled by default
5277 - show_doh_information=yes
5278 - show_normandy_information=yes
5279 - show_shortcut_information=no
5280 - else
5281 - local replacing_version
5282 - for replacing_version in ${REPLACING_VERSIONS} ; do
5283 - if ver_test "${replacing_version}" -lt 91.0 ; then
5284 - # Tell user that we no longer install a shortcut
5285 - # per supported display protocol
5286 - show_shortcut_information=yes
5287 - fi
5288 - done
5289 - fi
5290 -
5291 - if [[ -n "${show_doh_information}" ]] ; then
5292 - elog
5293 - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):"
5294 - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all"
5295 - elog "DNS traffic to Cloudflare by default is not a good idea and applications"
5296 - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5"
5297 - elog "(\"Off by choice\") by default."
5298 - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
5299 - fi
5300 -
5301 - # bug 713782
5302 - if [[ -n "${show_normandy_information}" ]] ; then
5303 - elog
5304 - elog "Upstream operates a service named Normandy which allows Mozilla to"
5305 - elog "push changes for default settings or even install new add-ons remotely."
5306 - elog "While this can be useful to address problems like 'Armagadd-on 2.0' or"
5307 - elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security"
5308 - elog "concerns prevail, which is why we have switched off the use of this"
5309 - elog "service by default."
5310 - elog
5311 - elog "To re-enable this service set"
5312 - elog
5313 - elog " app.normandy.enabled=true"
5314 - elog
5315 - elog "in about:config."
5316 - fi
5317 -
5318 - if [[ -n "${show_shortcut_information}" ]] ; then
5319 - elog
5320 - elog "Since firefox-91.0 we no longer install multiple shortcuts for"
5321 - elog "each supported display protocol. Instead we will only install"
5322 - elog "one generic Mozilla Firefox shortcut."
5323 - elog "If you still want to be able to select between running Mozilla Firefox"
5324 - elog "on X11 or Wayland, you have to re-create these shortcuts on your own."
5325 - fi
5326 -}
5327
5328 diff --git a/www-client/firefox/firefox-92.0.1.ebuild b/www-client/firefox/firefox-92.0.1.ebuild
5329 deleted file mode 100644
5330 index 8a5dd42b120..00000000000
5331 --- a/www-client/firefox/firefox-92.0.1.ebuild
5332 +++ /dev/null
5333 @@ -1,1148 +0,0 @@
5334 -# Copyright 1999-2021 Gentoo Authors
5335 -# Distributed under the terms of the GNU General Public License v2
5336 -
5337 -EAPI="7"
5338 -
5339 -FIREFOX_PATCHSET="firefox-92-patches-02.tar.xz"
5340 -
5341 -LLVM_MAX_SLOT=12
5342 -
5343 -PYTHON_COMPAT=( python3_{7..10} )
5344 -PYTHON_REQ_USE="ncurses,sqlite,ssl"
5345 -
5346 -WANT_AUTOCONF="2.1"
5347 -
5348 -VIRTUALX_REQUIRED="pgo"
5349 -
5350 -MOZ_ESR=
5351 -
5352 -MOZ_PV=${PV}
5353 -MOZ_PV_SUFFIX=
5354 -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
5355 - MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
5356 -
5357 - # Convert the ebuild version to the upstream Mozilla version
5358 - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
5359 - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
5360 - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
5361 -fi
5362 -
5363 -if [[ -n ${MOZ_ESR} ]] ; then
5364 - # ESR releases have slightly different version numbers
5365 - MOZ_PV="${MOZ_PV}esr"
5366 -fi
5367 -
5368 -MOZ_PN="${PN%-bin}"
5369 -MOZ_P="${MOZ_PN}-${MOZ_PV}"
5370 -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
5371 -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
5372 -
5373 -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \
5374 - llvm multiprocessing pax-utils python-any-r1 toolchain-funcs \
5375 - virtualx xdg
5376 -
5377 -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
5378 -
5379 -if [[ ${PV} == *_rc* ]] ; then
5380 - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
5381 -fi
5382 -
5383 -PATCH_URIS=(
5384 - https://dev.gentoo.org/~{axs,polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET}
5385 -)
5386 -
5387 -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
5388 - ${PATCH_URIS[@]}"
5389 -
5390 -DESCRIPTION="Firefox Web Browser"
5391 -HOMEPAGE="https://www.mozilla.com/firefox"
5392 -
5393 -KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
5394 -
5395 -SLOT="0/$(ver_cut 1)"
5396 -LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
5397 -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free geckodriver +gmp-autoupdate
5398 - hardened hwaccel jack lto +openh264 pgo pulseaudio screencast sndio selinux
5399 - +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent
5400 - +system-libvpx +system-webp wayland wifi"
5401 -
5402 -REQUIRED_USE="debug? ( !system-av1 )
5403 - screencast? ( wayland )"
5404 -
5405 -BDEPEND="${PYTHON_DEPS}
5406 - app-arch/unzip
5407 - app-arch/zip
5408 - >=dev-util/cbindgen-0.19.0
5409 - >=net-libs/nodejs-10.23.1
5410 - virtual/pkgconfig
5411 - >=virtual/rust-1.51.0
5412 - || (
5413 - (
5414 - sys-devel/clang:12
5415 - sys-devel/llvm:12
5416 - clang? (
5417 - =sys-devel/lld-12*
5418 - pgo? ( =sys-libs/compiler-rt-sanitizers-12*[profile] )
5419 - )
5420 - )
5421 - (
5422 - sys-devel/clang:11
5423 - sys-devel/llvm:11
5424 - clang? (
5425 - =sys-devel/lld-11*
5426 - pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] )
5427 - )
5428 - )
5429 - (
5430 - sys-devel/clang:10
5431 - sys-devel/llvm:10
5432 - clang? (
5433 - =sys-devel/lld-10*
5434 - pgo? ( =sys-libs/compiler-rt-sanitizers-10*[profile] )
5435 - )
5436 - )
5437 - )
5438 - amd64? ( >=dev-lang/nasm-2.13 )
5439 - x86? ( >=dev-lang/nasm-2.13 )"
5440 -
5441 -CDEPEND="
5442 - >=dev-libs/nss-3.69
5443 - >=dev-libs/nspr-4.32
5444 - dev-libs/atk
5445 - dev-libs/expat
5446 - >=x11-libs/cairo-1.10[X]
5447 - >=x11-libs/gtk+-3.4.0:3[X]
5448 - x11-libs/gdk-pixbuf
5449 - >=x11-libs/pango-1.22.0
5450 - >=media-libs/libpng-1.6.35:0=[apng]
5451 - >=media-libs/mesa-10.2:*
5452 - media-libs/fontconfig
5453 - >=media-libs/freetype-2.4.10
5454 - kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) )
5455 - virtual/freedesktop-icon-theme
5456 - >=x11-libs/pixman-0.19.2
5457 - >=dev-libs/glib-2.26:2
5458 - >=sys-libs/zlib-1.2.3
5459 - >=dev-libs/libffi-3.0.10:=
5460 - media-video/ffmpeg
5461 - x11-libs/libX11
5462 - x11-libs/libXcomposite
5463 - x11-libs/libXdamage
5464 - x11-libs/libXext
5465 - x11-libs/libXfixes
5466 - x11-libs/libXrender
5467 - dbus? (
5468 - sys-apps/dbus
5469 - dev-libs/dbus-glib
5470 - )
5471 - screencast? ( media-video/pipewire:0/0.3 )
5472 - system-av1? (
5473 - >=media-libs/dav1d-0.8.1:=
5474 - >=media-libs/libaom-1.0.0:=
5475 - )
5476 - system-harfbuzz? (
5477 - >=media-libs/harfbuzz-2.8.1:0=
5478 - >=media-gfx/graphite2-1.3.13
5479 - )
5480 - system-icu? ( >=dev-libs/icu-69.1:= )
5481 - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
5482 - system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
5483 - system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
5484 - system-webp? ( >=media-libs/libwebp-1.1.0:0= )
5485 - wifi? (
5486 - kernel_linux? (
5487 - sys-apps/dbus
5488 - dev-libs/dbus-glib
5489 - net-misc/networkmanager
5490 - )
5491 - )
5492 - jack? ( virtual/jack )
5493 - selinux? ( sec-policy/selinux-mozilla )
5494 - sndio? ( media-sound/sndio )"
5495 -
5496 -RDEPEND="${CDEPEND}
5497 - jack? ( virtual/jack )
5498 - openh264? ( media-libs/openh264:*[plugin] )
5499 - pulseaudio? (
5500 - || (
5501 - media-sound/pulseaudio
5502 - >=media-sound/apulse-0.1.12-r4
5503 - )
5504 - )
5505 - selinux? ( sec-policy/selinux-mozilla )"
5506 -
5507 -DEPEND="${CDEPEND}
5508 - pulseaudio? (
5509 - || (
5510 - media-sound/pulseaudio
5511 - >=media-sound/apulse-0.1.12-r4[sdk]
5512 - )
5513 - )
5514 - wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
5515 - amd64? ( virtual/opengl )
5516 - x86? ( virtual/opengl )"
5517 -
5518 -S="${WORKDIR}/${PN}-${PV%_*}"
5519 -
5520 -# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
5521 -# overridden in the enviromnent (advanced hackers only)
5522 -if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
5523 - MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
5524 -fi
5525 -
5526 -llvm_check_deps() {
5527 - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
5528 - einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
5529 - return 1
5530 - fi
5531 -
5532 - if use clang ; then
5533 - if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
5534 - einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
5535 - return 1
5536 - fi
5537 -
5538 - if use pgo ; then
5539 - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
5540 - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
5541 - return 1
5542 - fi
5543 - fi
5544 - fi
5545 -
5546 - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
5547 -}
5548 -
5549 -MOZ_LANGS=(
5550 - ach af an ar ast az be bg bn br bs ca-valencia ca cak cs cy
5551 - da de dsb el en-CA en-GB en-US eo es-AR es-CL es-ES es-MX et eu
5552 - fa ff fi fr fy-NL ga-IE gd gl gn gu-IN he hi-IN hr hsb hu hy-AM
5553 - ia id is it ja ka kab kk km kn ko lij lt lv mk mr ms my
5554 - nb-NO ne-NP nl nn-NO oc pa-IN pl pt-BR pt-PT rm ro ru sco
5555 - si sk sl son sq sr sv-SE szl ta te th tl tr trs uk ur uz vi
5556 - xh zh-CN zh-TW
5557 -)
5558 -
5559 -mozilla_set_globals() {
5560 - # https://bugs.gentoo.org/587334
5561 - local MOZ_TOO_REGIONALIZED_FOR_L10N=(
5562 - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
5563 - )
5564 -
5565 - local lang xflag
5566 - for lang in "${MOZ_LANGS[@]}" ; do
5567 - # en and en_US are handled internally
5568 - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
5569 - continue
5570 - fi
5571 -
5572 - # strip region subtag if $lang is in the list
5573 - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
5574 - xflag=${lang%%-*}
5575 - else
5576 - xflag=${lang}
5577 - fi
5578 -
5579 - SRC_URI+=" l10n_${xflag/[_@]/-}? ("
5580 - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
5581 - SRC_URI+=" )"
5582 - IUSE+=" l10n_${xflag/[_@]/-}"
5583 - done
5584 -}
5585 -mozilla_set_globals
5586 -
5587 -moz_clear_vendor_checksums() {
5588 - debug-print-function ${FUNCNAME} "$@"
5589 -
5590 - if [[ ${#} -ne 1 ]] ; then
5591 - die "${FUNCNAME} requires exact one argument"
5592 - fi
5593 -
5594 - einfo "Clearing cargo checksums for ${1} ..."
5595 -
5596 - sed -i \
5597 - -e 's/\("files":{\)[^}]*/\1/' \
5598 - "${S}"/third_party/rust/${1}/.cargo-checksum.json \
5599 - || die
5600 -}
5601 -
5602 -moz_install_xpi() {
5603 - debug-print-function ${FUNCNAME} "$@"
5604 -
5605 - if [[ ${#} -lt 2 ]] ; then
5606 - die "${FUNCNAME} requires at least two arguments"
5607 - fi
5608 -
5609 - local DESTDIR=${1}
5610 - shift
5611 -
5612 - insinto "${DESTDIR}"
5613 -
5614 - local emid xpi_file xpi_tmp_dir
5615 - for xpi_file in "${@}" ; do
5616 - emid=
5617 - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
5618 -
5619 - # Unpack XPI
5620 - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
5621 -
5622 - # Determine extension ID
5623 - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
5624 - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
5625 - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
5626 - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
5627 - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
5628 - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
5629 - else
5630 - die "failed to determine extension id"
5631 - fi
5632 -
5633 - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
5634 - newins "${xpi_file}" "${emid}.xpi"
5635 - done
5636 -}
5637 -
5638 -mozconfig_add_options_ac() {
5639 - debug-print-function ${FUNCNAME} "$@"
5640 -
5641 - if [[ ${#} -lt 2 ]] ; then
5642 - die "${FUNCNAME} requires at least two arguments"
5643 - fi
5644 -
5645 - local reason=${1}
5646 - shift
5647 -
5648 - local option
5649 - for option in ${@} ; do
5650 - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
5651 - done
5652 -}
5653 -
5654 -mozconfig_add_options_mk() {
5655 - debug-print-function ${FUNCNAME} "$@"
5656 -
5657 - if [[ ${#} -lt 2 ]] ; then
5658 - die "${FUNCNAME} requires at least two arguments"
5659 - fi
5660 -
5661 - local reason=${1}
5662 - shift
5663 -
5664 - local option
5665 - for option in ${@} ; do
5666 - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
5667 - done
5668 -}
5669 -
5670 -mozconfig_use_enable() {
5671 - debug-print-function ${FUNCNAME} "$@"
5672 -
5673 - if [[ ${#} -lt 1 ]] ; then
5674 - die "${FUNCNAME} requires at least one arguments"
5675 - fi
5676 -
5677 - local flag=$(use_enable "${@}")
5678 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
5679 -}
5680 -
5681 -mozconfig_use_with() {
5682 - debug-print-function ${FUNCNAME} "$@"
5683 -
5684 - if [[ ${#} -lt 1 ]] ; then
5685 - die "${FUNCNAME} requires at least one arguments"
5686 - fi
5687 -
5688 - local flag=$(use_with "${@}")
5689 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
5690 -}
5691 -
5692 -pkg_pretend() {
5693 - if [[ ${MERGE_TYPE} != binary ]] ; then
5694 - if use pgo ; then
5695 - if ! has usersandbox $FEATURES ; then
5696 - die "You must enable usersandbox as X server can not run as root!"
5697 - fi
5698 - fi
5699 -
5700 - # Ensure we have enough disk space to compile
5701 - if use pgo || use lto || use debug ; then
5702 - CHECKREQS_DISK_BUILD="13500M"
5703 - else
5704 - CHECKREQS_DISK_BUILD="6400M"
5705 - fi
5706 -
5707 - check-reqs_pkg_pretend
5708 - fi
5709 -}
5710 -
5711 -pkg_setup() {
5712 - if [[ ${MERGE_TYPE} != binary ]] ; then
5713 - if use pgo ; then
5714 - if ! has userpriv ${FEATURES} ; then
5715 - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
5716 - fi
5717 - fi
5718 -
5719 - # Ensure we have enough disk space to compile
5720 - if use pgo || use lto || use debug ; then
5721 - CHECKREQS_DISK_BUILD="13500M"
5722 - else
5723 - CHECKREQS_DISK_BUILD="6400M"
5724 - fi
5725 -
5726 - check-reqs_pkg_setup
5727 -
5728 - llvm_pkg_setup
5729 -
5730 - if use clang && use lto ; then
5731 - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
5732 - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
5733 - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
5734 -
5735 - # temp fix for https://bugs.gentoo.org/768543
5736 - # we can assume that rust 1.{49,50}.0 always uses llvm 11
5737 - local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }')
5738 - [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}")
5739 - [[ -z ${version_rust} ]] && die "Failed to read version from rustc!"
5740 -
5741 - if ver_test "${version_rust}" -ge "1.49" && ver_test "${version_rust}" -le "1.50" ; then
5742 - local version_llvm_rust="11"
5743 - else
5744 - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
5745 - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
5746 - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
5747 - fi
5748 -
5749 - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
5750 - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
5751 - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
5752 - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
5753 - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
5754 - eerror " - Build ${CATEGORY}/${PN} without USE=lto"
5755 - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
5756 - fi
5757 - fi
5758 -
5759 - if ! use clang && [[ $(gcc-major-version) -eq 11 ]] \
5760 - && ! has_version -b ">sys-devel/gcc-11.1.0:11" ; then
5761 - # bug 792705
5762 - eerror "Using GCC 11 to compile firefox is currently known to be broken (see bug #792705)."
5763 - die "Set USE=clang or select <gcc-11 to build ${CATEGORY}/${P}."
5764 - fi
5765 -
5766 - python-any-r1_pkg_setup
5767 -
5768 - # Avoid PGO profiling problems due to enviroment leakage
5769 - # These should *always* be cleaned up anyway
5770 - unset \
5771 - DBUS_SESSION_BUS_ADDRESS \
5772 - DISPLAY \
5773 - ORBIT_SOCKETDIR \
5774 - SESSION_MANAGER \
5775 - XAUTHORITY \
5776 - XDG_CACHE_HOME \
5777 - XDG_SESSION_COOKIE
5778 -
5779 - # Build system is using /proc/self/oom_score_adj, bug #604394
5780 - addpredict /proc/self/oom_score_adj
5781 -
5782 - if ! mountpoint -q /dev/shm ; then
5783 - # If /dev/shm is not available, configure is known to fail with
5784 - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
5785 - ewarn "/dev/shm is not mounted -- expect build failures!"
5786 - fi
5787 -
5788 - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
5789 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
5790 - # get your own set of keys.
5791 - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
5792 - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
5793 - fi
5794 -
5795 - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
5796 - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
5797 - fi
5798 -
5799 - # Mozilla API keys (see https://location.services.mozilla.com/api)
5800 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
5801 - # get your own set of keys.
5802 - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
5803 - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
5804 - fi
5805 -
5806 - # Ensure we use C locale when building, bug #746215
5807 - export LC_ALL=C
5808 - fi
5809 -
5810 - CONFIG_CHECK="~SECCOMP"
5811 - WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
5812 - linux-info_pkg_setup
5813 -}
5814 -
5815 -src_unpack() {
5816 - local _lp_dir="${WORKDIR}/language_packs"
5817 - local _src_file
5818 -
5819 - if [[ ! -d "${_lp_dir}" ]] ; then
5820 - mkdir "${_lp_dir}" || die
5821 - fi
5822 -
5823 - for _src_file in ${A} ; do
5824 - if [[ ${_src_file} == *.xpi ]]; then
5825 - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
5826 - else
5827 - unpack ${_src_file}
5828 - fi
5829 - done
5830 -}
5831 -
5832 -src_prepare() {
5833 - use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
5834 - eapply "${WORKDIR}/firefox-patches"
5835 -
5836 - # Allow user to apply any additional patches without modifing ebuild
5837 - eapply_user
5838 -
5839 - # Make LTO respect MAKEOPTS
5840 - sed -i \
5841 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
5842 - "${S}"/build/moz.configure/lto-pgo.configure \
5843 - || die "sed failed to set num_cores"
5844 -
5845 - # Make ICU respect MAKEOPTS
5846 - sed -i \
5847 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
5848 - "${S}"/intl/icu_sources_data.py \
5849 - || die "sed failed to set num_cores"
5850 -
5851 - # sed-in toolchain prefix
5852 - sed -i \
5853 - -e "s/objdump/${CHOST}-objdump/" \
5854 - "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
5855 - || die "sed failed to set toolchain prefix"
5856 -
5857 - sed -i \
5858 - -e 's/ccache_stats = None/return None/' \
5859 - "${S}"/python/mozbuild/mozbuild/controller/building.py \
5860 - || die "sed failed to disable ccache stats call"
5861 -
5862 - einfo "Removing pre-built binaries ..."
5863 - find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
5864 -
5865 - # Clearing checksums where we have applied patches
5866 - moz_clear_vendor_checksums target-lexicon-0.9.0
5867 -
5868 - # Create build dir
5869 - BUILD_DIR="${WORKDIR}/${PN}_build"
5870 - mkdir -p "${BUILD_DIR}" || die
5871 -
5872 - # Write API keys to disk
5873 - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
5874 - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
5875 - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
5876 -
5877 - xdg_src_prepare
5878 -}
5879 -
5880 -src_configure() {
5881 - # Show flags set at the beginning
5882 - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
5883 - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
5884 - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
5885 - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
5886 - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
5887 -
5888 - local have_switched_compiler=
5889 - if use clang && ! tc-is-clang ; then
5890 - # Force clang
5891 - einfo "Enforcing the use of clang due to USE=clang ..."
5892 - have_switched_compiler=yes
5893 - AR=llvm-ar
5894 - CC=${CHOST}-clang
5895 - CXX=${CHOST}-clang++
5896 - NM=llvm-nm
5897 - RANLIB=llvm-ranlib
5898 - elif ! use clang && ! tc-is-gcc ; then
5899 - # Force gcc
5900 - have_switched_compiler=yes
5901 - einfo "Enforcing the use of gcc due to USE=-clang ..."
5902 - AR=gcc-ar
5903 - CC=${CHOST}-gcc
5904 - CXX=${CHOST}-g++
5905 - NM=gcc-nm
5906 - RANLIB=gcc-ranlib
5907 - fi
5908 -
5909 - if [[ -n "${have_switched_compiler}" ]] ; then
5910 - # Because we switched active compiler we have to ensure
5911 - # that no unsupported flags are set
5912 - strip-unsupported-flags
5913 - fi
5914 -
5915 - # Ensure we use correct toolchain
5916 - export HOST_CC="$(tc-getBUILD_CC)"
5917 - export HOST_CXX="$(tc-getBUILD_CXX)"
5918 - tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
5919 -
5920 - # Pass the correct toolchain paths through cbindgen
5921 - if tc-is-cross-compiler ; then
5922 - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
5923 - fi
5924 -
5925 - # Set MOZILLA_FIVE_HOME
5926 - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
5927 -
5928 - # python/mach/mach/mixin/process.py fails to detect SHELL
5929 - export SHELL="${EPREFIX}/bin/bash"
5930 -
5931 - # Set MOZCONFIG
5932 - export MOZCONFIG="${S}/.mozconfig"
5933 -
5934 - # Initialize MOZCONFIG
5935 - mozconfig_add_options_ac '' --enable-application=browser
5936 -
5937 - # Set Gentoo defaults
5938 - export MOZILLA_OFFICIAL=1
5939 -
5940 - mozconfig_add_options_ac 'Gentoo default' \
5941 - --allow-addon-sideload \
5942 - --disable-cargo-incremental \
5943 - --disable-crashreporter \
5944 - --disable-install-strip \
5945 - --disable-strip \
5946 - --disable-updater \
5947 - --enable-official-branding \
5948 - --enable-release \
5949 - --enable-system-ffi \
5950 - --enable-system-pixman \
5951 - --host="${CBUILD:-${CHOST}}" \
5952 - --libdir="${EPREFIX}/usr/$(get_libdir)" \
5953 - --prefix="${EPREFIX}/usr" \
5954 - --target="${CHOST}" \
5955 - --without-ccache \
5956 - --with-intl-api \
5957 - --with-libclang-path="$(llvm-config --libdir)" \
5958 - --with-system-nspr \
5959 - --with-system-nss \
5960 - --with-system-png \
5961 - --with-system-zlib \
5962 - --with-toolchain-prefix="${CHOST}-" \
5963 - --with-unsigned-addon-scopes=app,system \
5964 - --x-includes="${SYSROOT}${EPREFIX}/usr/include" \
5965 - --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)"
5966 -
5967 - # Set update channel
5968 - local update_channel=release
5969 - [[ -n ${MOZ_ESR} ]] && update_channel=esr
5970 - mozconfig_add_options_ac '' --update-channel=${update_channel}
5971 -
5972 - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
5973 - mozconfig_add_options_ac '' --enable-rust-simd
5974 - fi
5975 -
5976 - if [[ -s "${S}/api-google.key" ]] ; then
5977 - local key_origin="Gentoo default"
5978 - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
5979 - key_origin="User value"
5980 - fi
5981 -
5982 - mozconfig_add_options_ac "${key_origin}" \
5983 - --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
5984 - else
5985 - einfo "Building without Google API key ..."
5986 - fi
5987 -
5988 - if [[ -s "${S}/api-location.key" ]] ; then
5989 - local key_origin="Gentoo default"
5990 - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
5991 - key_origin="User value"
5992 - fi
5993 -
5994 - mozconfig_add_options_ac "${key_origin}" \
5995 - --with-google-location-service-api-keyfile="${S}/api-location.key"
5996 - else
5997 - einfo "Building without Location API key ..."
5998 - fi
5999 -
6000 - if [[ -s "${S}/api-mozilla.key" ]] ; then
6001 - local key_origin="Gentoo default"
6002 - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
6003 - key_origin="User value"
6004 - fi
6005 -
6006 - mozconfig_add_options_ac "${key_origin}" \
6007 - --with-mozilla-api-keyfile="${S}/api-mozilla.key"
6008 - else
6009 - einfo "Building without Mozilla API key ..."
6010 - fi
6011 -
6012 - mozconfig_use_with system-av1
6013 - mozconfig_use_with system-harfbuzz
6014 - mozconfig_use_with system-harfbuzz system-graphite2
6015 - mozconfig_use_with system-icu
6016 - mozconfig_use_with system-jpeg
6017 - mozconfig_use_with system-libevent system-libevent "${SYSROOT}${EPREFIX}/usr"
6018 - mozconfig_use_with system-libvpx
6019 - mozconfig_use_with system-webp
6020 -
6021 - mozconfig_use_enable dbus
6022 -
6023 - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
6024 -
6025 - mozconfig_use_enable geckodriver
6026 -
6027 - if use hardened ; then
6028 - mozconfig_add_options_ac "+hardened" --enable-hardening
6029 - append-ldflags "-Wl,-z,relro -Wl,-z,now"
6030 - fi
6031 -
6032 - mozconfig_use_enable jack
6033 -
6034 - mozconfig_use_enable pulseaudio
6035 - # force the deprecated alsa sound code if pulseaudio is disabled
6036 - if use kernel_linux && ! use pulseaudio ; then
6037 - mozconfig_add_options_ac '-pulseaudio' --enable-alsa
6038 - fi
6039 -
6040 - mozconfig_use_enable sndio
6041 -
6042 - mozconfig_use_enable wifi necko-wifi
6043 -
6044 - if use wayland ; then
6045 - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland
6046 - else
6047 - mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3
6048 - fi
6049 -
6050 - if use lto ; then
6051 - if use clang ; then
6052 - # Upstream only supports lld when using clang
6053 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
6054 -
6055 - mozconfig_add_options_ac '+lto' --enable-lto=cross
6056 - else
6057 - # ThinLTO is currently broken, see bmo#1644409
6058 - mozconfig_add_options_ac '+lto' --enable-lto=full
6059 - fi
6060 -
6061 - if use pgo ; then
6062 - mozconfig_add_options_ac '+pgo' MOZ_PGO=1
6063 -
6064 - if use clang ; then
6065 - # Used in build/pgo/profileserver.py
6066 - export LLVM_PROFDATA="llvm-profdata"
6067 - fi
6068 - fi
6069 - else
6070 - # Avoid auto-magic on linker
6071 - if use clang ; then
6072 - # This is upstream's default
6073 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
6074 - else
6075 - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
6076 - fi
6077 - fi
6078 -
6079 - # LTO flag was handled via configure
6080 - filter-flags '-flto*'
6081 -
6082 - mozconfig_use_enable debug
6083 - if use debug ; then
6084 - mozconfig_add_options_ac '+debug' --disable-optimize
6085 - else
6086 - if is-flag '-g*' ; then
6087 - if use clang ; then
6088 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
6089 - else
6090 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
6091 - fi
6092 - else
6093 - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
6094 - fi
6095 -
6096 - if is-flag '-O0' ; then
6097 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
6098 - elif is-flag '-O4' ; then
6099 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
6100 - elif is-flag '-O3' ; then
6101 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
6102 - elif is-flag '-O1' ; then
6103 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
6104 - elif is-flag '-Os' ; then
6105 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
6106 - else
6107 - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
6108 - fi
6109 - fi
6110 -
6111 - # Debug flag was handled via configure
6112 - filter-flags '-g*'
6113 -
6114 - # Optimization flag was handled via configure
6115 - filter-flags '-O*'
6116 -
6117 - # Modifications to better support ARM, bug #553364
6118 - if use cpu_flags_arm_neon ; then
6119 - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
6120 -
6121 - if ! tc-is-clang ; then
6122 - # thumb options aren't supported when using clang, bug 666966
6123 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \
6124 - --with-thumb=yes \
6125 - --with-thumb-interwork=no
6126 - fi
6127 - fi
6128 -
6129 - if [[ ${CHOST} == armv*h* ]] ; then
6130 - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
6131 -
6132 - if ! use system-libvpx ; then
6133 - sed -i \
6134 - -e "s|softfp|hard|" \
6135 - "${S}"/media/libvpx/moz.build \
6136 - || die
6137 - fi
6138 - fi
6139 -
6140 - if use clang ; then
6141 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
6142 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
6143 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
6144 - local disable_elf_hack=
6145 - if use amd64 ; then
6146 - disable_elf_hack=yes
6147 - elif use x86 ; then
6148 - disable_elf_hack=yes
6149 - elif use arm ; then
6150 - disable_elf_hack=yes
6151 - fi
6152 -
6153 - if [[ -n ${disable_elf_hack} ]] ; then
6154 - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack
6155 - fi
6156 - elif tc-is-gcc ; then
6157 - if ver_test $(gcc-fullversion) -ge 10 ; then
6158 - einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..."
6159 - append-cxxflags -fno-tree-loop-vectorize
6160 - fi
6161 - fi
6162 -
6163 - # Additional ARCH support
6164 - case "${ARCH}" in
6165 - arm)
6166 - # Reduce the memory requirements for linking
6167 - if use clang ; then
6168 - # Nothing to do
6169 - :;
6170 - elif tc-ld-is-gold || use lto ; then
6171 - append-ldflags -Wl,--no-keep-memory
6172 - else
6173 - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
6174 - fi
6175 - ;;
6176 - esac
6177 -
6178 - if ! use elibc_glibc ; then
6179 - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
6180 - fi
6181 -
6182 - # Allow elfhack to work in combination with unstripped binaries
6183 - # when they would normally be larger than 2GiB.
6184 - append-ldflags "-Wl,--compress-debug-sections=zlib"
6185 -
6186 - # Make revdep-rebuild.sh happy; Also required for musl
6187 - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
6188 -
6189 - # Pass $MAKEOPTS to build system
6190 - export MOZ_MAKE_FLAGS="${MAKEOPTS}"
6191 -
6192 - # Use system's Python environment
6193 - export MACH_USE_SYSTEM_PYTHON=1
6194 -
6195 - # Disable notification when build system has finished
6196 - export MOZ_NOSPAM=1
6197 -
6198 - # Portage sets XARGS environment variable to "xargs -r" by default which
6199 - # breaks build system's check_prog() function which doesn't support arguments
6200 - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
6201 -
6202 - # Set build dir
6203 - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
6204 -
6205 - # Show flags we will use
6206 - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
6207 - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
6208 - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
6209 - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
6210 - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
6211 -
6212 - # Handle EXTRA_CONF and show summary
6213 - local ac opt hash reason
6214 -
6215 - # Apply EXTRA_ECONF entries to $MOZCONFIG
6216 - if [[ -n ${EXTRA_ECONF} ]] ; then
6217 - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
6218 - for opt in "${ac[@]}"; do
6219 - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
6220 - done
6221 - fi
6222 -
6223 - echo
6224 - echo "=========================================================="
6225 - echo "Building ${PF} with the following configuration"
6226 - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
6227 - [[ -z ${hash} || ${hash} == \# ]] \
6228 - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
6229 - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
6230 - done
6231 - echo "=========================================================="
6232 - echo
6233 -
6234 - ./mach configure || die
6235 -}
6236 -
6237 -src_compile() {
6238 - local virtx_cmd=
6239 -
6240 - if use pgo ; then
6241 - virtx_cmd=virtx
6242 -
6243 - # Reset and cleanup environment variables used by GNOME/XDG
6244 - gnome2_environment_reset
6245 -
6246 - addpredict /root
6247 - fi
6248 -
6249 - local -x GDK_BACKEND=x11
6250 -
6251 - ${virtx_cmd} ./mach build --verbose \
6252 - || die
6253 -}
6254 -
6255 -src_install() {
6256 - # xpcshell is getting called during install
6257 - pax-mark m \
6258 - "${BUILD_DIR}"/dist/bin/xpcshell \
6259 - "${BUILD_DIR}"/dist/bin/${PN} \
6260 - "${BUILD_DIR}"/dist/bin/plugin-container
6261 -
6262 - DESTDIR="${D}" ./mach install || die
6263 -
6264 - # Upstream cannot ship symlink but we can (bmo#658850)
6265 - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
6266 - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
6267 -
6268 - # Don't install llvm-symbolizer from sys-devel/llvm package
6269 - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
6270 - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
6271 - fi
6272 -
6273 - # Install policy (currently only used to disable application updates)
6274 - insinto "${MOZILLA_FIVE_HOME}/distribution"
6275 - newins "${FILESDIR}"/distribution.ini distribution.ini
6276 - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
6277 -
6278 - # Install system-wide preferences
6279 - local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences"
6280 - insinto "${PREFS_DIR}"
6281 - newins "${FILESDIR}"/gentoo-default-prefs.js all-gentoo.js
6282 -
6283 - local GENTOO_PREFS="${ED}${PREFS_DIR}/all-gentoo.js"
6284 -
6285 - # Set dictionary path to use system hunspell
6286 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
6287 - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
6288 - EOF
6289 -
6290 - # Force hwaccel prefs if USE=hwaccel is enabled
6291 - if use hwaccel ; then
6292 - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \
6293 - >>"${GENTOO_PREFS}" \
6294 - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
6295 - fi
6296 -
6297 - if ! use gmp-autoupdate ; then
6298 - local plugin
6299 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
6300 - einfo "Disabling auto-update for ${plugin} plugin ..."
6301 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
6302 - pref("media.${plugin}.autoupdate", false);
6303 - EOF
6304 - done
6305 - fi
6306 -
6307 - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
6308 - if use system-harfbuzz ; then
6309 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
6310 - sticky_pref("gfx.font_rendering.graphite.enabled", true);
6311 - EOF
6312 - fi
6313 -
6314 - # Install language packs
6315 - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
6316 - if [[ -n "${langpacks}" ]] ; then
6317 - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
6318 - fi
6319 -
6320 - # Install geckodriver
6321 - if use geckodriver ; then
6322 - einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..."
6323 - pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
6324 - exeinto "${MOZILLA_FIVE_HOME}"
6325 - doexe "${BUILD_DIR}"/dist/bin/geckodriver
6326 -
6327 - dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
6328 - fi
6329 -
6330 - # Install icons
6331 - local icon_srcdir="${S}/browser/branding/official"
6332 - local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg"
6333 -
6334 - insinto /usr/share/icons/hicolor/symbolic/apps
6335 - newins "${icon_symbolic_file}" ${PN}-symbolic.svg
6336 -
6337 - local icon size
6338 - for icon in "${icon_srcdir}"/default*.png ; do
6339 - size=${icon%.png}
6340 - size=${size##*/default}
6341 -
6342 - if [[ ${size} -eq 48 ]] ; then
6343 - newicon "${icon}" ${PN}.png
6344 - fi
6345 -
6346 - newicon -s ${size} "${icon}" ${PN}.png
6347 - done
6348 -
6349 - # Install menu
6350 - local app_name="Mozilla ${MOZ_PN^}"
6351 - local desktop_file="${FILESDIR}/icon/${PN}-r3.desktop"
6352 - local desktop_filename="${PN}.desktop"
6353 - local exec_command="${PN}"
6354 - local icon="${PN}"
6355 - local use_wayland="false"
6356 -
6357 - if use wayland ; then
6358 - use_wayland="true"
6359 - fi
6360 -
6361 - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
6362 -
6363 - sed -i \
6364 - -e "s:@NAME@:${app_name}:" \
6365 - -e "s:@EXEC@:${exec_command}:" \
6366 - -e "s:@ICON@:${icon}:" \
6367 - "${WORKDIR}/${PN}.desktop-template" \
6368 - || die
6369 -
6370 - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
6371 -
6372 - rm "${WORKDIR}/${PN}.desktop-template" || die
6373 -
6374 - # Install wrapper script
6375 - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
6376 - newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
6377 -
6378 - # Update wrapper
6379 - sed -i \
6380 - -e "s:@PREFIX@:${EPREFIX}/usr:" \
6381 - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
6382 - -e "s:@APULSELIB_DIR@:${apulselib}:" \
6383 - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
6384 - "${ED}/usr/bin/${PN}" \
6385 - || die
6386 -}
6387 -
6388 -pkg_preinst() {
6389 - xdg_pkg_preinst
6390 -
6391 - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
6392 - # does not need to be forced into the LD_LIBRARY_PATH
6393 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
6394 - einfo "APULSE found; Generating library symlinks for sound support ..."
6395 - local lib
6396 - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die
6397 - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
6398 - # A quickpkg rolled by hand will grab symlinks as part of the package,
6399 - # so we need to avoid creating them if they already exist.
6400 - if [[ ! -L ${lib##*/} ]] ; then
6401 - ln -s "${lib}" ${lib##*/} || die
6402 - fi
6403 - done
6404 - popd &>/dev/null || die
6405 - fi
6406 -}
6407 -
6408 -pkg_postinst() {
6409 - xdg_pkg_postinst
6410 -
6411 - if ! use gmp-autoupdate ; then
6412 - elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
6413 - elog "installing into new profiles:"
6414 - local plugin
6415 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
6416 - elog "\t ${plugin}"
6417 - done
6418 - elog
6419 - fi
6420 -
6421 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
6422 - elog "Apulse was detected at merge time on this system and so it will always be"
6423 - elog "used for sound. If you wish to use pulseaudio instead please unmerge"
6424 - elog "media-sound/apulse."
6425 - elog
6426 - fi
6427 -
6428 - local show_doh_information show_normandy_information show_shortcut_information
6429 -
6430 - if [[ -z "${REPLACING_VERSIONS}" ]] ; then
6431 - # New install; Tell user that DoH is disabled by default
6432 - show_doh_information=yes
6433 - show_normandy_information=yes
6434 - show_shortcut_information=no
6435 - else
6436 - local replacing_version
6437 - for replacing_version in ${REPLACING_VERSIONS} ; do
6438 - if ver_test "${replacing_version}" -lt 91.0 ; then
6439 - # Tell user that we no longer install a shortcut
6440 - # per supported display protocol
6441 - show_shortcut_information=yes
6442 - fi
6443 - done
6444 - fi
6445 -
6446 - if [[ -n "${show_doh_information}" ]] ; then
6447 - elog
6448 - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):"
6449 - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all"
6450 - elog "DNS traffic to Cloudflare by default is not a good idea and applications"
6451 - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5"
6452 - elog "(\"Off by choice\") by default."
6453 - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
6454 - fi
6455 -
6456 - # bug 713782
6457 - if [[ -n "${show_normandy_information}" ]] ; then
6458 - elog
6459 - elog "Upstream operates a service named Normandy which allows Mozilla to"
6460 - elog "push changes for default settings or even install new add-ons remotely."
6461 - elog "While this can be useful to address problems like 'Armagadd-on 2.0' or"
6462 - elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security"
6463 - elog "concerns prevail, which is why we have switched off the use of this"
6464 - elog "service by default."
6465 - elog
6466 - elog "To re-enable this service set"
6467 - elog
6468 - elog " app.normandy.enabled=true"
6469 - elog
6470 - elog "in about:config."
6471 - fi
6472 -
6473 - if [[ -n "${show_shortcut_information}" ]] ; then
6474 - elog
6475 - elog "Since firefox-91.0 we no longer install multiple shortcuts for"
6476 - elog "each supported display protocol. Instead we will only install"
6477 - elog "one generic Mozilla Firefox shortcut."
6478 - elog "If you still want to be able to select between running Mozilla Firefox"
6479 - elog "on X11 or Wayland, you have to re-create these shortcuts on your own."
6480 - fi
6481 -}
6482
6483 diff --git a/www-client/firefox/firefox-92.0.ebuild b/www-client/firefox/firefox-92.0.ebuild
6484 deleted file mode 100644
6485 index 6f11db5bf68..00000000000
6486 --- a/www-client/firefox/firefox-92.0.ebuild
6487 +++ /dev/null
6488 @@ -1,1148 +0,0 @@
6489 -# Copyright 1999-2021 Gentoo Authors
6490 -# Distributed under the terms of the GNU General Public License v2
6491 -
6492 -EAPI="7"
6493 -
6494 -FIREFOX_PATCHSET="firefox-92-patches-01.tar.xz"
6495 -
6496 -LLVM_MAX_SLOT=12
6497 -
6498 -PYTHON_COMPAT=( python3_{7..10} )
6499 -PYTHON_REQ_USE="ncurses,sqlite,ssl"
6500 -
6501 -WANT_AUTOCONF="2.1"
6502 -
6503 -VIRTUALX_REQUIRED="pgo"
6504 -
6505 -MOZ_ESR=
6506 -
6507 -MOZ_PV=${PV}
6508 -MOZ_PV_SUFFIX=
6509 -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
6510 - MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
6511 -
6512 - # Convert the ebuild version to the upstream Mozilla version
6513 - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
6514 - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
6515 - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
6516 -fi
6517 -
6518 -if [[ -n ${MOZ_ESR} ]] ; then
6519 - # ESR releases have slightly different version numbers
6520 - MOZ_PV="${MOZ_PV}esr"
6521 -fi
6522 -
6523 -MOZ_PN="${PN%-bin}"
6524 -MOZ_P="${MOZ_PN}-${MOZ_PV}"
6525 -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
6526 -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
6527 -
6528 -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \
6529 - llvm multiprocessing pax-utils python-any-r1 toolchain-funcs \
6530 - virtualx xdg
6531 -
6532 -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
6533 -
6534 -if [[ ${PV} == *_rc* ]] ; then
6535 - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
6536 -fi
6537 -
6538 -PATCH_URIS=(
6539 - https://dev.gentoo.org/~{axs,polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET}
6540 -)
6541 -
6542 -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
6543 - ${PATCH_URIS[@]}"
6544 -
6545 -DESCRIPTION="Firefox Web Browser"
6546 -HOMEPAGE="https://www.mozilla.com/firefox"
6547 -
6548 -KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
6549 -
6550 -SLOT="0/$(ver_cut 1)"
6551 -LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
6552 -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free geckodriver +gmp-autoupdate
6553 - hardened hwaccel jack lto +openh264 pgo pulseaudio screencast sndio selinux
6554 - +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent
6555 - +system-libvpx +system-webp wayland wifi"
6556 -
6557 -REQUIRED_USE="debug? ( !system-av1 )
6558 - screencast? ( wayland )"
6559 -
6560 -BDEPEND="${PYTHON_DEPS}
6561 - app-arch/unzip
6562 - app-arch/zip
6563 - >=dev-util/cbindgen-0.19.0
6564 - >=net-libs/nodejs-10.23.1
6565 - virtual/pkgconfig
6566 - >=virtual/rust-1.51.0
6567 - || (
6568 - (
6569 - sys-devel/clang:12
6570 - sys-devel/llvm:12
6571 - clang? (
6572 - =sys-devel/lld-12*
6573 - pgo? ( =sys-libs/compiler-rt-sanitizers-12*[profile] )
6574 - )
6575 - )
6576 - (
6577 - sys-devel/clang:11
6578 - sys-devel/llvm:11
6579 - clang? (
6580 - =sys-devel/lld-11*
6581 - pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] )
6582 - )
6583 - )
6584 - (
6585 - sys-devel/clang:10
6586 - sys-devel/llvm:10
6587 - clang? (
6588 - =sys-devel/lld-10*
6589 - pgo? ( =sys-libs/compiler-rt-sanitizers-10*[profile] )
6590 - )
6591 - )
6592 - )
6593 - amd64? ( >=dev-lang/nasm-2.13 )
6594 - x86? ( >=dev-lang/nasm-2.13 )"
6595 -
6596 -CDEPEND="
6597 - >=dev-libs/nss-3.69
6598 - >=dev-libs/nspr-4.32
6599 - dev-libs/atk
6600 - dev-libs/expat
6601 - >=x11-libs/cairo-1.10[X]
6602 - >=x11-libs/gtk+-3.4.0:3[X]
6603 - x11-libs/gdk-pixbuf
6604 - >=x11-libs/pango-1.22.0
6605 - >=media-libs/libpng-1.6.35:0=[apng]
6606 - >=media-libs/mesa-10.2:*
6607 - media-libs/fontconfig
6608 - >=media-libs/freetype-2.4.10
6609 - kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) )
6610 - virtual/freedesktop-icon-theme
6611 - >=x11-libs/pixman-0.19.2
6612 - >=dev-libs/glib-2.26:2
6613 - >=sys-libs/zlib-1.2.3
6614 - >=dev-libs/libffi-3.0.10:=
6615 - media-video/ffmpeg
6616 - x11-libs/libX11
6617 - x11-libs/libXcomposite
6618 - x11-libs/libXdamage
6619 - x11-libs/libXext
6620 - x11-libs/libXfixes
6621 - x11-libs/libXrender
6622 - dbus? (
6623 - sys-apps/dbus
6624 - dev-libs/dbus-glib
6625 - )
6626 - screencast? ( media-video/pipewire:0/0.3 )
6627 - system-av1? (
6628 - >=media-libs/dav1d-0.8.1:=
6629 - >=media-libs/libaom-1.0.0:=
6630 - )
6631 - system-harfbuzz? (
6632 - >=media-libs/harfbuzz-2.8.1:0=
6633 - >=media-gfx/graphite2-1.3.13
6634 - )
6635 - system-icu? ( >=dev-libs/icu-69.1:= )
6636 - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
6637 - system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
6638 - system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
6639 - system-webp? ( >=media-libs/libwebp-1.1.0:0= )
6640 - wifi? (
6641 - kernel_linux? (
6642 - sys-apps/dbus
6643 - dev-libs/dbus-glib
6644 - net-misc/networkmanager
6645 - )
6646 - )
6647 - jack? ( virtual/jack )
6648 - selinux? ( sec-policy/selinux-mozilla )
6649 - sndio? ( media-sound/sndio )"
6650 -
6651 -RDEPEND="${CDEPEND}
6652 - jack? ( virtual/jack )
6653 - openh264? ( media-libs/openh264:*[plugin] )
6654 - pulseaudio? (
6655 - || (
6656 - media-sound/pulseaudio
6657 - >=media-sound/apulse-0.1.12-r4
6658 - )
6659 - )
6660 - selinux? ( sec-policy/selinux-mozilla )"
6661 -
6662 -DEPEND="${CDEPEND}
6663 - pulseaudio? (
6664 - || (
6665 - media-sound/pulseaudio
6666 - >=media-sound/apulse-0.1.12-r4[sdk]
6667 - )
6668 - )
6669 - wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
6670 - amd64? ( virtual/opengl )
6671 - x86? ( virtual/opengl )"
6672 -
6673 -S="${WORKDIR}/${PN}-${PV%_*}"
6674 -
6675 -# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
6676 -# overridden in the enviromnent (advanced hackers only)
6677 -if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
6678 - MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
6679 -fi
6680 -
6681 -llvm_check_deps() {
6682 - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
6683 - einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
6684 - return 1
6685 - fi
6686 -
6687 - if use clang ; then
6688 - if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
6689 - einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
6690 - return 1
6691 - fi
6692 -
6693 - if use pgo ; then
6694 - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
6695 - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
6696 - return 1
6697 - fi
6698 - fi
6699 - fi
6700 -
6701 - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
6702 -}
6703 -
6704 -MOZ_LANGS=(
6705 - ach af an ar ast az be bg bn br bs ca-valencia ca cak cs cy
6706 - da de dsb el en-CA en-GB en-US eo es-AR es-CL es-ES es-MX et eu
6707 - fa ff fi fr fy-NL ga-IE gd gl gn gu-IN he hi-IN hr hsb hu hy-AM
6708 - ia id is it ja ka kab kk km kn ko lij lt lv mk mr ms my
6709 - nb-NO ne-NP nl nn-NO oc pa-IN pl pt-BR pt-PT rm ro ru sco
6710 - si sk sl son sq sr sv-SE szl ta te th tl tr trs uk ur uz vi
6711 - xh zh-CN zh-TW
6712 -)
6713 -
6714 -mozilla_set_globals() {
6715 - # https://bugs.gentoo.org/587334
6716 - local MOZ_TOO_REGIONALIZED_FOR_L10N=(
6717 - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
6718 - )
6719 -
6720 - local lang xflag
6721 - for lang in "${MOZ_LANGS[@]}" ; do
6722 - # en and en_US are handled internally
6723 - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
6724 - continue
6725 - fi
6726 -
6727 - # strip region subtag if $lang is in the list
6728 - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
6729 - xflag=${lang%%-*}
6730 - else
6731 - xflag=${lang}
6732 - fi
6733 -
6734 - SRC_URI+=" l10n_${xflag/[_@]/-}? ("
6735 - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
6736 - SRC_URI+=" )"
6737 - IUSE+=" l10n_${xflag/[_@]/-}"
6738 - done
6739 -}
6740 -mozilla_set_globals
6741 -
6742 -moz_clear_vendor_checksums() {
6743 - debug-print-function ${FUNCNAME} "$@"
6744 -
6745 - if [[ ${#} -ne 1 ]] ; then
6746 - die "${FUNCNAME} requires exact one argument"
6747 - fi
6748 -
6749 - einfo "Clearing cargo checksums for ${1} ..."
6750 -
6751 - sed -i \
6752 - -e 's/\("files":{\)[^}]*/\1/' \
6753 - "${S}"/third_party/rust/${1}/.cargo-checksum.json \
6754 - || die
6755 -}
6756 -
6757 -moz_install_xpi() {
6758 - debug-print-function ${FUNCNAME} "$@"
6759 -
6760 - if [[ ${#} -lt 2 ]] ; then
6761 - die "${FUNCNAME} requires at least two arguments"
6762 - fi
6763 -
6764 - local DESTDIR=${1}
6765 - shift
6766 -
6767 - insinto "${DESTDIR}"
6768 -
6769 - local emid xpi_file xpi_tmp_dir
6770 - for xpi_file in "${@}" ; do
6771 - emid=
6772 - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
6773 -
6774 - # Unpack XPI
6775 - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
6776 -
6777 - # Determine extension ID
6778 - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
6779 - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
6780 - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
6781 - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
6782 - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
6783 - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
6784 - else
6785 - die "failed to determine extension id"
6786 - fi
6787 -
6788 - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
6789 - newins "${xpi_file}" "${emid}.xpi"
6790 - done
6791 -}
6792 -
6793 -mozconfig_add_options_ac() {
6794 - debug-print-function ${FUNCNAME} "$@"
6795 -
6796 - if [[ ${#} -lt 2 ]] ; then
6797 - die "${FUNCNAME} requires at least two arguments"
6798 - fi
6799 -
6800 - local reason=${1}
6801 - shift
6802 -
6803 - local option
6804 - for option in ${@} ; do
6805 - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
6806 - done
6807 -}
6808 -
6809 -mozconfig_add_options_mk() {
6810 - debug-print-function ${FUNCNAME} "$@"
6811 -
6812 - if [[ ${#} -lt 2 ]] ; then
6813 - die "${FUNCNAME} requires at least two arguments"
6814 - fi
6815 -
6816 - local reason=${1}
6817 - shift
6818 -
6819 - local option
6820 - for option in ${@} ; do
6821 - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
6822 - done
6823 -}
6824 -
6825 -mozconfig_use_enable() {
6826 - debug-print-function ${FUNCNAME} "$@"
6827 -
6828 - if [[ ${#} -lt 1 ]] ; then
6829 - die "${FUNCNAME} requires at least one arguments"
6830 - fi
6831 -
6832 - local flag=$(use_enable "${@}")
6833 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
6834 -}
6835 -
6836 -mozconfig_use_with() {
6837 - debug-print-function ${FUNCNAME} "$@"
6838 -
6839 - if [[ ${#} -lt 1 ]] ; then
6840 - die "${FUNCNAME} requires at least one arguments"
6841 - fi
6842 -
6843 - local flag=$(use_with "${@}")
6844 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
6845 -}
6846 -
6847 -pkg_pretend() {
6848 - if [[ ${MERGE_TYPE} != binary ]] ; then
6849 - if use pgo ; then
6850 - if ! has usersandbox $FEATURES ; then
6851 - die "You must enable usersandbox as X server can not run as root!"
6852 - fi
6853 - fi
6854 -
6855 - # Ensure we have enough disk space to compile
6856 - if use pgo || use lto || use debug ; then
6857 - CHECKREQS_DISK_BUILD="13500M"
6858 - else
6859 - CHECKREQS_DISK_BUILD="6400M"
6860 - fi
6861 -
6862 - check-reqs_pkg_pretend
6863 - fi
6864 -}
6865 -
6866 -pkg_setup() {
6867 - if [[ ${MERGE_TYPE} != binary ]] ; then
6868 - if use pgo ; then
6869 - if ! has userpriv ${FEATURES} ; then
6870 - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
6871 - fi
6872 - fi
6873 -
6874 - # Ensure we have enough disk space to compile
6875 - if use pgo || use lto || use debug ; then
6876 - CHECKREQS_DISK_BUILD="13500M"
6877 - else
6878 - CHECKREQS_DISK_BUILD="6400M"
6879 - fi
6880 -
6881 - check-reqs_pkg_setup
6882 -
6883 - llvm_pkg_setup
6884 -
6885 - if use clang && use lto ; then
6886 - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
6887 - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
6888 - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
6889 -
6890 - # temp fix for https://bugs.gentoo.org/768543
6891 - # we can assume that rust 1.{49,50}.0 always uses llvm 11
6892 - local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }')
6893 - [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}")
6894 - [[ -z ${version_rust} ]] && die "Failed to read version from rustc!"
6895 -
6896 - if ver_test "${version_rust}" -ge "1.49" && ver_test "${version_rust}" -le "1.50" ; then
6897 - local version_llvm_rust="11"
6898 - else
6899 - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
6900 - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
6901 - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
6902 - fi
6903 -
6904 - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
6905 - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
6906 - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
6907 - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
6908 - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
6909 - eerror " - Build ${CATEGORY}/${PN} without USE=lto"
6910 - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
6911 - fi
6912 - fi
6913 -
6914 - if ! use clang && [[ $(gcc-major-version) -eq 11 ]] \
6915 - && ! has_version -b ">sys-devel/gcc-11.1.0:11" ; then
6916 - # bug 792705
6917 - eerror "Using GCC 11 to compile firefox is currently known to be broken (see bug #792705)."
6918 - die "Set USE=clang or select <gcc-11 to build ${CATEGORY}/${P}."
6919 - fi
6920 -
6921 - python-any-r1_pkg_setup
6922 -
6923 - # Avoid PGO profiling problems due to enviroment leakage
6924 - # These should *always* be cleaned up anyway
6925 - unset \
6926 - DBUS_SESSION_BUS_ADDRESS \
6927 - DISPLAY \
6928 - ORBIT_SOCKETDIR \
6929 - SESSION_MANAGER \
6930 - XAUTHORITY \
6931 - XDG_CACHE_HOME \
6932 - XDG_SESSION_COOKIE
6933 -
6934 - # Build system is using /proc/self/oom_score_adj, bug #604394
6935 - addpredict /proc/self/oom_score_adj
6936 -
6937 - if ! mountpoint -q /dev/shm ; then
6938 - # If /dev/shm is not available, configure is known to fail with
6939 - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
6940 - ewarn "/dev/shm is not mounted -- expect build failures!"
6941 - fi
6942 -
6943 - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
6944 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
6945 - # get your own set of keys.
6946 - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
6947 - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
6948 - fi
6949 -
6950 - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
6951 - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
6952 - fi
6953 -
6954 - # Mozilla API keys (see https://location.services.mozilla.com/api)
6955 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
6956 - # get your own set of keys.
6957 - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
6958 - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
6959 - fi
6960 -
6961 - # Ensure we use C locale when building, bug #746215
6962 - export LC_ALL=C
6963 - fi
6964 -
6965 - CONFIG_CHECK="~SECCOMP"
6966 - WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
6967 - linux-info_pkg_setup
6968 -}
6969 -
6970 -src_unpack() {
6971 - local _lp_dir="${WORKDIR}/language_packs"
6972 - local _src_file
6973 -
6974 - if [[ ! -d "${_lp_dir}" ]] ; then
6975 - mkdir "${_lp_dir}" || die
6976 - fi
6977 -
6978 - for _src_file in ${A} ; do
6979 - if [[ ${_src_file} == *.xpi ]]; then
6980 - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
6981 - else
6982 - unpack ${_src_file}
6983 - fi
6984 - done
6985 -}
6986 -
6987 -src_prepare() {
6988 - use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
6989 - eapply "${WORKDIR}/firefox-patches"
6990 -
6991 - # Allow user to apply any additional patches without modifing ebuild
6992 - eapply_user
6993 -
6994 - # Make LTO respect MAKEOPTS
6995 - sed -i \
6996 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
6997 - "${S}"/build/moz.configure/lto-pgo.configure \
6998 - || die "sed failed to set num_cores"
6999 -
7000 - # Make ICU respect MAKEOPTS
7001 - sed -i \
7002 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
7003 - "${S}"/intl/icu_sources_data.py \
7004 - || die "sed failed to set num_cores"
7005 -
7006 - # sed-in toolchain prefix
7007 - sed -i \
7008 - -e "s/objdump/${CHOST}-objdump/" \
7009 - "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
7010 - || die "sed failed to set toolchain prefix"
7011 -
7012 - sed -i \
7013 - -e 's/ccache_stats = None/return None/' \
7014 - "${S}"/python/mozbuild/mozbuild/controller/building.py \
7015 - || die "sed failed to disable ccache stats call"
7016 -
7017 - einfo "Removing pre-built binaries ..."
7018 - find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
7019 -
7020 - # Clearing checksums where we have applied patches
7021 - moz_clear_vendor_checksums target-lexicon-0.9.0
7022 -
7023 - # Create build dir
7024 - BUILD_DIR="${WORKDIR}/${PN}_build"
7025 - mkdir -p "${BUILD_DIR}" || die
7026 -
7027 - # Write API keys to disk
7028 - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
7029 - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
7030 - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
7031 -
7032 - xdg_src_prepare
7033 -}
7034 -
7035 -src_configure() {
7036 - # Show flags set at the beginning
7037 - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
7038 - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
7039 - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
7040 - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
7041 - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
7042 -
7043 - local have_switched_compiler=
7044 - if use clang && ! tc-is-clang ; then
7045 - # Force clang
7046 - einfo "Enforcing the use of clang due to USE=clang ..."
7047 - have_switched_compiler=yes
7048 - AR=llvm-ar
7049 - CC=${CHOST}-clang
7050 - CXX=${CHOST}-clang++
7051 - NM=llvm-nm
7052 - RANLIB=llvm-ranlib
7053 - elif ! use clang && ! tc-is-gcc ; then
7054 - # Force gcc
7055 - have_switched_compiler=yes
7056 - einfo "Enforcing the use of gcc due to USE=-clang ..."
7057 - AR=gcc-ar
7058 - CC=${CHOST}-gcc
7059 - CXX=${CHOST}-g++
7060 - NM=gcc-nm
7061 - RANLIB=gcc-ranlib
7062 - fi
7063 -
7064 - if [[ -n "${have_switched_compiler}" ]] ; then
7065 - # Because we switched active compiler we have to ensure
7066 - # that no unsupported flags are set
7067 - strip-unsupported-flags
7068 - fi
7069 -
7070 - # Ensure we use correct toolchain
7071 - export HOST_CC="$(tc-getBUILD_CC)"
7072 - export HOST_CXX="$(tc-getBUILD_CXX)"
7073 - tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
7074 -
7075 - # Pass the correct toolchain paths through cbindgen
7076 - if tc-is-cross-compiler ; then
7077 - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
7078 - fi
7079 -
7080 - # Set MOZILLA_FIVE_HOME
7081 - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
7082 -
7083 - # python/mach/mach/mixin/process.py fails to detect SHELL
7084 - export SHELL="${EPREFIX}/bin/bash"
7085 -
7086 - # Set MOZCONFIG
7087 - export MOZCONFIG="${S}/.mozconfig"
7088 -
7089 - # Initialize MOZCONFIG
7090 - mozconfig_add_options_ac '' --enable-application=browser
7091 -
7092 - # Set Gentoo defaults
7093 - export MOZILLA_OFFICIAL=1
7094 -
7095 - mozconfig_add_options_ac 'Gentoo default' \
7096 - --allow-addon-sideload \
7097 - --disable-cargo-incremental \
7098 - --disable-crashreporter \
7099 - --disable-install-strip \
7100 - --disable-strip \
7101 - --disable-updater \
7102 - --enable-official-branding \
7103 - --enable-release \
7104 - --enable-system-ffi \
7105 - --enable-system-pixman \
7106 - --host="${CBUILD:-${CHOST}}" \
7107 - --libdir="${EPREFIX}/usr/$(get_libdir)" \
7108 - --prefix="${EPREFIX}/usr" \
7109 - --target="${CHOST}" \
7110 - --without-ccache \
7111 - --with-intl-api \
7112 - --with-libclang-path="$(llvm-config --libdir)" \
7113 - --with-system-nspr \
7114 - --with-system-nss \
7115 - --with-system-png \
7116 - --with-system-zlib \
7117 - --with-toolchain-prefix="${CHOST}-" \
7118 - --with-unsigned-addon-scopes=app,system \
7119 - --x-includes="${SYSROOT}${EPREFIX}/usr/include" \
7120 - --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)"
7121 -
7122 - # Set update channel
7123 - local update_channel=release
7124 - [[ -n ${MOZ_ESR} ]] && update_channel=esr
7125 - mozconfig_add_options_ac '' --update-channel=${update_channel}
7126 -
7127 - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
7128 - mozconfig_add_options_ac '' --enable-rust-simd
7129 - fi
7130 -
7131 - if [[ -s "${S}/api-google.key" ]] ; then
7132 - local key_origin="Gentoo default"
7133 - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
7134 - key_origin="User value"
7135 - fi
7136 -
7137 - mozconfig_add_options_ac "${key_origin}" \
7138 - --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
7139 - else
7140 - einfo "Building without Google API key ..."
7141 - fi
7142 -
7143 - if [[ -s "${S}/api-location.key" ]] ; then
7144 - local key_origin="Gentoo default"
7145 - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
7146 - key_origin="User value"
7147 - fi
7148 -
7149 - mozconfig_add_options_ac "${key_origin}" \
7150 - --with-google-location-service-api-keyfile="${S}/api-location.key"
7151 - else
7152 - einfo "Building without Location API key ..."
7153 - fi
7154 -
7155 - if [[ -s "${S}/api-mozilla.key" ]] ; then
7156 - local key_origin="Gentoo default"
7157 - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
7158 - key_origin="User value"
7159 - fi
7160 -
7161 - mozconfig_add_options_ac "${key_origin}" \
7162 - --with-mozilla-api-keyfile="${S}/api-mozilla.key"
7163 - else
7164 - einfo "Building without Mozilla API key ..."
7165 - fi
7166 -
7167 - mozconfig_use_with system-av1
7168 - mozconfig_use_with system-harfbuzz
7169 - mozconfig_use_with system-harfbuzz system-graphite2
7170 - mozconfig_use_with system-icu
7171 - mozconfig_use_with system-jpeg
7172 - mozconfig_use_with system-libevent system-libevent "${SYSROOT}${EPREFIX}/usr"
7173 - mozconfig_use_with system-libvpx
7174 - mozconfig_use_with system-webp
7175 -
7176 - mozconfig_use_enable dbus
7177 -
7178 - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
7179 -
7180 - mozconfig_use_enable geckodriver
7181 -
7182 - if use hardened ; then
7183 - mozconfig_add_options_ac "+hardened" --enable-hardening
7184 - append-ldflags "-Wl,-z,relro -Wl,-z,now"
7185 - fi
7186 -
7187 - mozconfig_use_enable jack
7188 -
7189 - mozconfig_use_enable pulseaudio
7190 - # force the deprecated alsa sound code if pulseaudio is disabled
7191 - if use kernel_linux && ! use pulseaudio ; then
7192 - mozconfig_add_options_ac '-pulseaudio' --enable-alsa
7193 - fi
7194 -
7195 - mozconfig_use_enable sndio
7196 -
7197 - mozconfig_use_enable wifi necko-wifi
7198 -
7199 - if use wayland ; then
7200 - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland
7201 - else
7202 - mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3
7203 - fi
7204 -
7205 - if use lto ; then
7206 - if use clang ; then
7207 - # Upstream only supports lld when using clang
7208 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
7209 -
7210 - mozconfig_add_options_ac '+lto' --enable-lto=cross
7211 - else
7212 - # ThinLTO is currently broken, see bmo#1644409
7213 - mozconfig_add_options_ac '+lto' --enable-lto=full
7214 - fi
7215 -
7216 - if use pgo ; then
7217 - mozconfig_add_options_ac '+pgo' MOZ_PGO=1
7218 -
7219 - if use clang ; then
7220 - # Used in build/pgo/profileserver.py
7221 - export LLVM_PROFDATA="llvm-profdata"
7222 - fi
7223 - fi
7224 - else
7225 - # Avoid auto-magic on linker
7226 - if use clang ; then
7227 - # This is upstream's default
7228 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
7229 - else
7230 - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
7231 - fi
7232 - fi
7233 -
7234 - # LTO flag was handled via configure
7235 - filter-flags '-flto*'
7236 -
7237 - mozconfig_use_enable debug
7238 - if use debug ; then
7239 - mozconfig_add_options_ac '+debug' --disable-optimize
7240 - else
7241 - if is-flag '-g*' ; then
7242 - if use clang ; then
7243 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
7244 - else
7245 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
7246 - fi
7247 - else
7248 - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
7249 - fi
7250 -
7251 - if is-flag '-O0' ; then
7252 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
7253 - elif is-flag '-O4' ; then
7254 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
7255 - elif is-flag '-O3' ; then
7256 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
7257 - elif is-flag '-O1' ; then
7258 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
7259 - elif is-flag '-Os' ; then
7260 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
7261 - else
7262 - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
7263 - fi
7264 - fi
7265 -
7266 - # Debug flag was handled via configure
7267 - filter-flags '-g*'
7268 -
7269 - # Optimization flag was handled via configure
7270 - filter-flags '-O*'
7271 -
7272 - # Modifications to better support ARM, bug #553364
7273 - if use cpu_flags_arm_neon ; then
7274 - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
7275 -
7276 - if ! tc-is-clang ; then
7277 - # thumb options aren't supported when using clang, bug 666966
7278 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \
7279 - --with-thumb=yes \
7280 - --with-thumb-interwork=no
7281 - fi
7282 - fi
7283 -
7284 - if [[ ${CHOST} == armv*h* ]] ; then
7285 - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
7286 -
7287 - if ! use system-libvpx ; then
7288 - sed -i \
7289 - -e "s|softfp|hard|" \
7290 - "${S}"/media/libvpx/moz.build \
7291 - || die
7292 - fi
7293 - fi
7294 -
7295 - if use clang ; then
7296 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
7297 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
7298 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
7299 - local disable_elf_hack=
7300 - if use amd64 ; then
7301 - disable_elf_hack=yes
7302 - elif use x86 ; then
7303 - disable_elf_hack=yes
7304 - elif use arm ; then
7305 - disable_elf_hack=yes
7306 - fi
7307 -
7308 - if [[ -n ${disable_elf_hack} ]] ; then
7309 - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack
7310 - fi
7311 - elif tc-is-gcc ; then
7312 - if ver_test $(gcc-fullversion) -ge 10 ; then
7313 - einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..."
7314 - append-cxxflags -fno-tree-loop-vectorize
7315 - fi
7316 - fi
7317 -
7318 - # Additional ARCH support
7319 - case "${ARCH}" in
7320 - arm)
7321 - # Reduce the memory requirements for linking
7322 - if use clang ; then
7323 - # Nothing to do
7324 - :;
7325 - elif tc-ld-is-gold || use lto ; then
7326 - append-ldflags -Wl,--no-keep-memory
7327 - else
7328 - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
7329 - fi
7330 - ;;
7331 - esac
7332 -
7333 - if ! use elibc_glibc ; then
7334 - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
7335 - fi
7336 -
7337 - # Allow elfhack to work in combination with unstripped binaries
7338 - # when they would normally be larger than 2GiB.
7339 - append-ldflags "-Wl,--compress-debug-sections=zlib"
7340 -
7341 - # Make revdep-rebuild.sh happy; Also required for musl
7342 - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
7343 -
7344 - # Pass $MAKEOPTS to build system
7345 - export MOZ_MAKE_FLAGS="${MAKEOPTS}"
7346 -
7347 - # Use system's Python environment
7348 - export MACH_USE_SYSTEM_PYTHON=1
7349 -
7350 - # Disable notification when build system has finished
7351 - export MOZ_NOSPAM=1
7352 -
7353 - # Portage sets XARGS environment variable to "xargs -r" by default which
7354 - # breaks build system's check_prog() function which doesn't support arguments
7355 - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
7356 -
7357 - # Set build dir
7358 - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
7359 -
7360 - # Show flags we will use
7361 - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
7362 - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
7363 - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
7364 - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
7365 - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
7366 -
7367 - # Handle EXTRA_CONF and show summary
7368 - local ac opt hash reason
7369 -
7370 - # Apply EXTRA_ECONF entries to $MOZCONFIG
7371 - if [[ -n ${EXTRA_ECONF} ]] ; then
7372 - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
7373 - for opt in "${ac[@]}"; do
7374 - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
7375 - done
7376 - fi
7377 -
7378 - echo
7379 - echo "=========================================================="
7380 - echo "Building ${PF} with the following configuration"
7381 - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
7382 - [[ -z ${hash} || ${hash} == \# ]] \
7383 - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
7384 - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
7385 - done
7386 - echo "=========================================================="
7387 - echo
7388 -
7389 - ./mach configure || die
7390 -}
7391 -
7392 -src_compile() {
7393 - local virtx_cmd=
7394 -
7395 - if use pgo ; then
7396 - virtx_cmd=virtx
7397 -
7398 - # Reset and cleanup environment variables used by GNOME/XDG
7399 - gnome2_environment_reset
7400 -
7401 - addpredict /root
7402 - fi
7403 -
7404 - local -x GDK_BACKEND=x11
7405 -
7406 - ${virtx_cmd} ./mach build --verbose \
7407 - || die
7408 -}
7409 -
7410 -src_install() {
7411 - # xpcshell is getting called during install
7412 - pax-mark m \
7413 - "${BUILD_DIR}"/dist/bin/xpcshell \
7414 - "${BUILD_DIR}"/dist/bin/${PN} \
7415 - "${BUILD_DIR}"/dist/bin/plugin-container
7416 -
7417 - DESTDIR="${D}" ./mach install || die
7418 -
7419 - # Upstream cannot ship symlink but we can (bmo#658850)
7420 - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
7421 - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
7422 -
7423 - # Don't install llvm-symbolizer from sys-devel/llvm package
7424 - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
7425 - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
7426 - fi
7427 -
7428 - # Install policy (currently only used to disable application updates)
7429 - insinto "${MOZILLA_FIVE_HOME}/distribution"
7430 - newins "${FILESDIR}"/distribution.ini distribution.ini
7431 - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
7432 -
7433 - # Install system-wide preferences
7434 - local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences"
7435 - insinto "${PREFS_DIR}"
7436 - newins "${FILESDIR}"/gentoo-default-prefs.js all-gentoo.js
7437 -
7438 - local GENTOO_PREFS="${ED}${PREFS_DIR}/all-gentoo.js"
7439 -
7440 - # Set dictionary path to use system hunspell
7441 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
7442 - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
7443 - EOF
7444 -
7445 - # Force hwaccel prefs if USE=hwaccel is enabled
7446 - if use hwaccel ; then
7447 - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \
7448 - >>"${GENTOO_PREFS}" \
7449 - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
7450 - fi
7451 -
7452 - if ! use gmp-autoupdate ; then
7453 - local plugin
7454 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
7455 - einfo "Disabling auto-update for ${plugin} plugin ..."
7456 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
7457 - pref("media.${plugin}.autoupdate", false);
7458 - EOF
7459 - done
7460 - fi
7461 -
7462 - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
7463 - if use system-harfbuzz ; then
7464 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
7465 - sticky_pref("gfx.font_rendering.graphite.enabled", true);
7466 - EOF
7467 - fi
7468 -
7469 - # Install language packs
7470 - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
7471 - if [[ -n "${langpacks}" ]] ; then
7472 - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
7473 - fi
7474 -
7475 - # Install geckodriver
7476 - if use geckodriver ; then
7477 - einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..."
7478 - pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
7479 - exeinto "${MOZILLA_FIVE_HOME}"
7480 - doexe "${BUILD_DIR}"/dist/bin/geckodriver
7481 -
7482 - dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
7483 - fi
7484 -
7485 - # Install icons
7486 - local icon_srcdir="${S}/browser/branding/official"
7487 - local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg"
7488 -
7489 - insinto /usr/share/icons/hicolor/symbolic/apps
7490 - newins "${icon_symbolic_file}" ${PN}-symbolic.svg
7491 -
7492 - local icon size
7493 - for icon in "${icon_srcdir}"/default*.png ; do
7494 - size=${icon%.png}
7495 - size=${size##*/default}
7496 -
7497 - if [[ ${size} -eq 48 ]] ; then
7498 - newicon "${icon}" ${PN}.png
7499 - fi
7500 -
7501 - newicon -s ${size} "${icon}" ${PN}.png
7502 - done
7503 -
7504 - # Install menu
7505 - local app_name="Mozilla ${MOZ_PN^}"
7506 - local desktop_file="${FILESDIR}/icon/${PN}-r3.desktop"
7507 - local desktop_filename="${PN}.desktop"
7508 - local exec_command="${PN}"
7509 - local icon="${PN}"
7510 - local use_wayland="false"
7511 -
7512 - if use wayland ; then
7513 - use_wayland="true"
7514 - fi
7515 -
7516 - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
7517 -
7518 - sed -i \
7519 - -e "s:@NAME@:${app_name}:" \
7520 - -e "s:@EXEC@:${exec_command}:" \
7521 - -e "s:@ICON@:${icon}:" \
7522 - "${WORKDIR}/${PN}.desktop-template" \
7523 - || die
7524 -
7525 - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
7526 -
7527 - rm "${WORKDIR}/${PN}.desktop-template" || die
7528 -
7529 - # Install wrapper script
7530 - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
7531 - newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
7532 -
7533 - # Update wrapper
7534 - sed -i \
7535 - -e "s:@PREFIX@:${EPREFIX}/usr:" \
7536 - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
7537 - -e "s:@APULSELIB_DIR@:${apulselib}:" \
7538 - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
7539 - "${ED}/usr/bin/${PN}" \
7540 - || die
7541 -}
7542 -
7543 -pkg_preinst() {
7544 - xdg_pkg_preinst
7545 -
7546 - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
7547 - # does not need to be forced into the LD_LIBRARY_PATH
7548 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
7549 - einfo "APULSE found; Generating library symlinks for sound support ..."
7550 - local lib
7551 - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die
7552 - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
7553 - # A quickpkg rolled by hand will grab symlinks as part of the package,
7554 - # so we need to avoid creating them if they already exist.
7555 - if [[ ! -L ${lib##*/} ]] ; then
7556 - ln -s "${lib}" ${lib##*/} || die
7557 - fi
7558 - done
7559 - popd &>/dev/null || die
7560 - fi
7561 -}
7562 -
7563 -pkg_postinst() {
7564 - xdg_pkg_postinst
7565 -
7566 - if ! use gmp-autoupdate ; then
7567 - elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
7568 - elog "installing into new profiles:"
7569 - local plugin
7570 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
7571 - elog "\t ${plugin}"
7572 - done
7573 - elog
7574 - fi
7575 -
7576 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
7577 - elog "Apulse was detected at merge time on this system and so it will always be"
7578 - elog "used for sound. If you wish to use pulseaudio instead please unmerge"
7579 - elog "media-sound/apulse."
7580 - elog
7581 - fi
7582 -
7583 - local show_doh_information show_normandy_information show_shortcut_information
7584 -
7585 - if [[ -z "${REPLACING_VERSIONS}" ]] ; then
7586 - # New install; Tell user that DoH is disabled by default
7587 - show_doh_information=yes
7588 - show_normandy_information=yes
7589 - show_shortcut_information=no
7590 - else
7591 - local replacing_version
7592 - for replacing_version in ${REPLACING_VERSIONS} ; do
7593 - if ver_test "${replacing_version}" -lt 91.0 ; then
7594 - # Tell user that we no longer install a shortcut
7595 - # per supported display protocol
7596 - show_shortcut_information=yes
7597 - fi
7598 - done
7599 - fi
7600 -
7601 - if [[ -n "${show_doh_information}" ]] ; then
7602 - elog
7603 - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):"
7604 - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all"
7605 - elog "DNS traffic to Cloudflare by default is not a good idea and applications"
7606 - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5"
7607 - elog "(\"Off by choice\") by default."
7608 - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
7609 - fi
7610 -
7611 - # bug 713782
7612 - if [[ -n "${show_normandy_information}" ]] ; then
7613 - elog
7614 - elog "Upstream operates a service named Normandy which allows Mozilla to"
7615 - elog "push changes for default settings or even install new add-ons remotely."
7616 - elog "While this can be useful to address problems like 'Armagadd-on 2.0' or"
7617 - elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security"
7618 - elog "concerns prevail, which is why we have switched off the use of this"
7619 - elog "service by default."
7620 - elog
7621 - elog "To re-enable this service set"
7622 - elog
7623 - elog " app.normandy.enabled=true"
7624 - elog
7625 - elog "in about:config."
7626 - fi
7627 -
7628 - if [[ -n "${show_shortcut_information}" ]] ; then
7629 - elog
7630 - elog "Since firefox-91.0 we no longer install multiple shortcuts for"
7631 - elog "each supported display protocol. Instead we will only install"
7632 - elog "one generic Mozilla Firefox shortcut."
7633 - elog "If you still want to be able to select between running Mozilla Firefox"
7634 - elog "on X11 or Wayland, you have to re-create these shortcuts on your own."
7635 - fi
7636 -}