Gentoo Archives: gentoo-commits

From: Thomas Deutschmann <whissi@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: www-client/firefox/
Date: Tue, 24 Aug 2021 13:17:54
Message-Id: 1629809525.250bf9a2b6905ed3c1ee7440c3215cf350671e2c.whissi@gentoo
1 commit: 250bf9a2b6905ed3c1ee7440c3215cf350671e2c
2 Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
3 AuthorDate: Tue Aug 24 12:15:13 2021 +0000
4 Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
5 CommitDate: Tue Aug 24 12:52:05 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=250bf9a2
7
8 www-client/firefox: security cleanup
9
10 Bug: https://bugs.gentoo.org/807947
11 Bug: https://bugs.gentoo.org/808927
12 Package-Manager: Portage-3.0.22, Repoman-3.0.3
13 Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>
14
15 www-client/firefox/Manifest | 293 -------
16 www-client/firefox/firefox-78.12.0.ebuild | 1187 -----------------------------
17 www-client/firefox/firefox-90.0.2.ebuild | 1182 ----------------------------
18 www-client/firefox/firefox-91.0.ebuild | 1149 ----------------------------
19 4 files changed, 3811 deletions(-)
20
21 diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
22 index 320fb5f86c1..268b3baac2b 100644
23 --- a/www-client/firefox/Manifest
24 +++ b/www-client/firefox/Manifest
25 @@ -1,99 +1,3 @@
26 -DIST firefox-78.12.0esr-ach.xpi 460283 BLAKE2B a00bee0c7f0ec9c27454f618c0402721db074b6319c1b0964a5ccde3710175a20f9a6727eef881d8d3db7205b2f7bf5bcbf5c050c39cbd20f95cf23c6ee480f8 SHA512 6542b5683dd352ecafecb42a9bbdc438cdd927deb9e1c8f55f52a1c12690d1ac1281c379ed7dcedd6a62b4ff37b816b5a7870b0aa9a725444640a87b1e6749dc
27 -DIST firefox-78.12.0esr-af.xpi 428351 BLAKE2B b4f671687a03ed5e12e5c805b501ad3a975090168a60d4549326cfae17d0e31cbb7458e8118a8f85d566a75de97cd2b7a0f92f77f21e9b4a5cfd57163a54b163 SHA512 fa91d12158cf7d41000c3cb4beb0290c4fe760e5dcd27cd23d77b228f509558830ff4d2c29248bfc08f69c0a8592302cc6aa59fccb5b16f292e290bf9801f7f4
28 -DIST firefox-78.12.0esr-an.xpi 508377 BLAKE2B 63f4678044c1ff6088279a5fe25bc7a0eb0fb8eb8c2ca326c14ffad242be91892e8277bda016e852d61834bd095408d9c822e329918748248e4f8f0864c64718 SHA512 b1cbcf41150858ec827d485ca819490907d5604ceac758d478a5f39a20b1f204dfc674fa5563c25e8fd93d85f83faab3673e4d08becd6c628d1d8c118c22bbee
29 -DIST firefox-78.12.0esr-ar.xpi 560954 BLAKE2B 625905b86f9a7b9b8063873f7ba91d59196abc95a27b15764fbdd3bfea24d7aa69c7a9c4934fa9b0d8f210ff90b9782d981221bc8d892b5fa83b1c355166d554 SHA512 c0b09fe41708f1cab137a270ac848627ec98fc43e47c6a405d32db7e01a13338516cefb2f3cdf1a8590af00e75c3d4bec782646d6d143d2b103c7e5eb861dfdb
30 -DIST firefox-78.12.0esr-ast.xpi 456387 BLAKE2B d8a5fd537ccbbfcd654ac58ba963123380363bc5acc3261fcc5f4051d93e254a9f9cf2929de1dbb9c2092e2494c9744c973e1b8a2a12650655f8d25fba7fc749 SHA512 ec5e717088863808fe34f088336f13add49035ea8d7f323fc3c094316cf8044772d5ced904904cd170f471186028c0ecca21ea52cacffcff185548172f0abd69
31 -DIST firefox-78.12.0esr-az.xpi 497433 BLAKE2B bec0f0209a6f5d9043f4789df51c34519c5f33c08a2f6620041f591599929514658bfc7a5ea2cd457ded405f58e000861b6c9186972ee4390555d7fe0c5fb489 SHA512 49e2fc648e30e419407714677b59194196404c50c92e4d1affa01d66cb7719302979f3d4b74c7fca83fdbfc7ec5c406cf876b1fd342384870c39e08f72346d48
32 -DIST firefox-78.12.0esr-be.xpi 608650 BLAKE2B 0ab6829a8f7d49678d905f99e53375946a733e12ed46cd693fdae3da19aade621b572028f938d33c91da3e69280b53c6ab6a19690648a414127bf55a3279ea7f SHA512 de62c7f2e5c8ef8323eac321ff3c735cc165fcc53ecb044dbeec35a2196c52fe9cc083c95ce755b97c320f123500565e471fd8b0edcadee2b998d005402e6b84
33 -DIST firefox-78.12.0esr-bg.xpi 553973 BLAKE2B af6c0b0aaa207b9714269c2844eaaf4b7bbdff58350022bc816001711517f50e30b3eee62ed8dee53b906eb990373cd462d45b62cd112d44ac04e047638b5afc SHA512 3f50b3a300270a12b220ed903ba79738e807d71d731bb8755a543984b84272a7f67e1e4a05fc5ed7c87f391de69e9ede628f50a4f8faede4acf224adf0de4f7e
34 -DIST firefox-78.12.0esr-bn.xpi 572610 BLAKE2B d54b5abf4704b472537badef7559170f3663cabf6c7a48563fbac1b1f12f16bc048cc28e382f66aaa064fe5ab25b57e9ed58e94e9b285184d5a8ee1c2adc526c SHA512 3b116f3385d67f6901a801a758a02c834a9019696c498d085b7c0dec28d723b66f6485063db1ce7024e8b53793a3f146cac7337c130afd060c810d1e39ccd652
35 -DIST firefox-78.12.0esr-br.xpi 507129 BLAKE2B 19172ffbdc74639390d9beee945183e4f3ae068200af8caf697839774b942d251f36970f95b1ee17ea5726a4050a3ae77f22182810cb10668a17574aec522b4b SHA512 fc0c7f25f3b8a08052d5880e6c18df752b650c349411e464938d64850c7f8c5a471f5a7048fc13a6c7e8a0ef1b3bf7a7bec9da3b70bc4ca101f24288a09979d4
36 -DIST firefox-78.12.0esr-bs.xpi 463802 BLAKE2B b151773b4bb7e1c51566205e645c8a65a996bfcbd3a60f0648977f8a0784a6dae69ac799efbef5ba9daac906e48cc218e55d7c9a89181d8bd598930be5aac4a6 SHA512 85a7cf7f28c984f1330ef0e2b964d446bacb4f3369d1800031cccb61c43e10e990726af3d8aa8478af6eb416773c9e66f50793c87528435bbbd7b0c50e4d3b91
37 -DIST firefox-78.12.0esr-ca-valencia.xpi 517178 BLAKE2B d1574689812e3c1b01323d9eec83475d89e333e7ab8bdbb2b4cc11eed3cf7c56088adc3d1da7731c5ae65f3b9c0a76ab0743f50f3529dcd38d62be55c2862a9c SHA512 20b4b91a5e69975479a92f563042128d66d319843a71f7555f7fc53a1b9296d8eb8c60a3c647176a70408b616b5c5e44b901ed67bba46670dbf6cc31edc84e53
38 -DIST firefox-78.12.0esr-ca.xpi 514183 BLAKE2B 297626859bcd85f1e77f0eb37fb9c98175f8a7e6b45bf072405746b9428c2b789318db2f65fdb5dd906f8e21f7678d39efa62f031c4e884a689de5c7c2d7f3ea SHA512 24bcab6bb8d1e16d6098ace8502703e33e2c88c9d31a695c0783b103dc0212dbc48178a488a35b54fdc0a70675f0e37244cc4ae7bfa39d13614ff89fb2b2f7d9
39 -DIST firefox-78.12.0esr-cak.xpi 551556 BLAKE2B dfb1d7f88d2ceefd923f4af7239079ce2b1d0336cef47f26e35d5aead93351b05b26317875adf870acc817b71e02cfbf39e322377b3f89f93707182da13ed8d0 SHA512 1a1be2a52f85d06ddded2077ae330767c4629c363f7c11a1e4ac104d36ee4ae8640ae10d3dca1c94018c3cee6d94bbb241de6aacc49440479d5725074742fc75
40 -DIST firefox-78.12.0esr-cs.xpi 540329 BLAKE2B feaa6692d66d57084cedeacec0f3a49a5f175d59699af6980a12880ed3cb615fa5552f53a660adf9125a90703be743be15d6cdc651a68456ea22c4ac81a388ab SHA512 fa25f5f1cbe7dcff4e78fa02fc6996d1503c35b5b0a581172c6c111c86e1c65ef00dbac01372a33d929f03b15371545bb99801138afb26e39181248e663087f5
41 -DIST firefox-78.12.0esr-cy.xpi 530698 BLAKE2B 1e6cf6f9ac920a03315fd6901d79942cfc87387b00930b3a1feea7680d62a0683737463ba034530f65e9f85d1d99a3e2afc927cb6e221fcf1b1b9afe61d98919 SHA512 9456922b7291077fe26db1e4515742be7f860d294610022d384fbed1d5adf2ac973870e48e9695781fa82eeb92b431fd03dd15ff31a2f31082e340653c7a93f7
42 -DIST firefox-78.12.0esr-da.xpi 520269 BLAKE2B 3dc9ce7d730472394c3b237d5f9eef4b92dea1490cba2e73286aa48de477986ca6afe8a8a9f697ade06569f7ccb507a35ced025276b69d86b8ee7f0043ec1362 SHA512 6535bbd10493833c9f490806ebfcc7a02a122bd17c82468637e1e6c67f1f09aa207d5ee7a00f79796a70defe5ee53486db4e6f5ed9a712f06072ffe103948f9c
43 -DIST firefox-78.12.0esr-de.xpi 542853 BLAKE2B c52079da5fd96cc7a9f6636200764544c8d0c082cf9bb7dc3878740391b1b4eeca39721ae7a313e8614b71a80e856f413e79546b2cf62555f03800812759ce44 SHA512 1c66836985c31b6d46d4898ff6a73f2920d09d487f7deb4e5e0556cd84c7878da4c4ccd3131bee5ad8740bfe3b248c62e220d9a6c157dd5800111b288c339e9f
44 -DIST firefox-78.12.0esr-dsb.xpi 554280 BLAKE2B 3d14eaf320d18d7daabc8a0af83a34f52a616ed66f454ff2f8441cc776af604ddc90830f5bb6e1f777070607c73f25b522ca0c11faa34907ad52120e41ac56fa SHA512 4a05f52721ce363f4d977f92475029fa5a86445742acb1d3e4f023ba7875e9cc4b4ed290f75f3263c276066344e8d5af49fff4feba38485980b664c4f2bc93db
45 -DIST firefox-78.12.0esr-el.xpi 626568 BLAKE2B f89bfc615907dcfe53d870d6bab773f086c84e03d7632e826983da5271504528d3b453295d3edd1e5a9ce887af338f5fdc226c4fa7155f3fa9fc08c0ae09d378 SHA512 5997b04af48084cf9087110a42740e4e71d48ac4e0d52984e2e4dd62045001f14fb41105a693fb81a423bd985c464402a27d0217d0aef9efbb2e5fe975d74b33
46 -DIST firefox-78.12.0esr-en-CA.xpi 497732 BLAKE2B d7a74ba343baa1910eba123f801b82e18d9fdd1054e0df87ae234dc97ba5daa6a81d5b7dcd6fa403e0c52e884459c807b335094b4a8dbb09793a37d3731a4809 SHA512 78c05aa972db64a70980ea967f87edfd1edd08935313f70a43c0918c693e372dbff6f3ff1d233ca96268747e3f950e4666f23971d5d380f05a144d1be75d30b0
47 -DIST firefox-78.12.0esr-en-GB.xpi 497581 BLAKE2B 166282a2040172f9e8d209b9a8b098d4f56d1a4888ebc9b7ecd937991305827bf5f8bdafc75bf85effe97d4f809ca7a233b6f5ffd345e893fa3a5bc15fbf6445 SHA512 af372200fad2cfa9f653ac349289f0c20937f5ec798832e0d202f2f330fcba5fd04168b5960a5b8a534a1904bd5206f6745102e73ed6775dcd5120a120ba421c
48 -DIST firefox-78.12.0esr-eo.xpi 525738 BLAKE2B fa6cfd49fcda4fdfb54c93295978512a016f115cc0da9e54cc82f0da9c4fac90b2e2ea52d3ea41ee6b0654c90656b17d33ce316dee349da0dbe719eefdd6c6cf SHA512 8b11970ac93265c61c6518fa06eea0749f15f3cb94058e4f4c0db166fdde7261bb5bd9eca1e5f54db271570bf63d7f84d1ff5e141b20ec23ba09aeb9f30ab1e1
49 -DIST firefox-78.12.0esr-es-AR.xpi 535801 BLAKE2B 60688df3b040e8b17738c5c8f60e29bd9bca88f8d272e09ea9db60af859981ada067ab5ab7418153805a730e9fab1afcc0df2d55601c4d1dbc334d8ad56e42a4 SHA512 6567391847b866c5c4d53bc628259e69ca1038c468f0030536525d1bc5df19fab8654015f6404684156521a664422d41fdd341d8d4324e0ad8ecad1a96e759ca
50 -DIST firefox-78.12.0esr-es-CL.xpi 535347 BLAKE2B d31a9937488d728c9142f774a230f82fe955f4e735b9c4c71ba063e4c0fe80fc13a1227876dd14fec6bfe069cbe07e10e8ed93577bd214f5cd27581eeddd4b02 SHA512 49c96e3e2e79cd8b57d47e62a9f023ce52cf3b2ca82cd3d7f03d26f3c7433f080e915d4b0d0460af6d7f287ebdb8307e20a395ffcbcf926add14b31814f488c9
51 -DIST firefox-78.12.0esr-es-ES.xpi 522691 BLAKE2B ffdc2051ae8566d8320aa5cb100fab84df2e5ee1686353f21bffaeb15b7058e8920c46ac1a86f014ae2535435542e410b9464501d2306bc8215678eed917439d SHA512 754223da264548ed628611da8deec195ae5ac978c9f6244d2f132a7449c6693a09e0c808023dc3e18413e6372ea9957a8ed3d584fa06795b8355aac2823288c4
52 -DIST firefox-78.12.0esr-es-MX.xpi 532295 BLAKE2B dcc9269f6c4a5f55c871f11f81d29146d83c4e97b33ab509419b598d6716ce097760bbd677f7a5f0367323f31273837552db505c88920994a5e42f85616d84b6 SHA512 b3fd9d7fa72e730a215f3ef8b9cf45be999b5c393dd9a7f9a460bf83c52f10ca1057c52763f336dd3c5db3ad70bf9d0a6583a227b4403a4eb0137d33d0dfa24c
53 -DIST firefox-78.12.0esr-et.xpi 485252 BLAKE2B 181287684643149c2256a4c33c9486b947c8fcd973aa8bf76870082ab61ae735e997293abc852ff98611ecb1ccb9ee2f6f091604d3e7a67bfa570d741143ab93 SHA512 7661ba4923fbfda802225135ff2df04f5e6ea731bc8e3268dfef95749023b810997932efab11453f8b470d27372887e41d0231fd9a82936d376ad5a66705b4bf
54 -DIST firefox-78.12.0esr-eu.xpi 505876 BLAKE2B df642126d782f09639ea28f7cab53173f2039b0455f35589ecf9a1f07ec12331e555661c550bcb79391cb8203702312a36ec7385341ddfb487efa2cb218bd00f SHA512 905a1f112d2d5dc5e1ac465a4234ff64d08f44394c609c7dc11a895aa203b69bf9dfbf381b204b025d09a6a0db2eb95ceecb61d3b8f01014a9b003863480dacb
55 -DIST firefox-78.12.0esr-fa.xpi 538927 BLAKE2B bdab40593d23214daac28c7f6a2e4fda159b9af828158132354077596402dee1a09806ec8a699390f75dae82e548639b81a43ab4fbcbb331d9c2dce5309f4331 SHA512 34d8d6ed8aca43b5b70f595fc866390e389cdc79d7b48b8e66eb179c76f6cc09919b66fdee485b7646f386b79a1aaa6998f7b7c672ed7c286e646058484cc79b
56 -DIST firefox-78.12.0esr-ff.xpi 481609 BLAKE2B d076044f29ac3dcad8fe8dbcbcf2a8e8c6c52611d3cab47bc1a9341a42030c3cd48dfa595b8277933a4d038d81979a4cfc002d9a84c6203b2257126bed5e624f SHA512 620194c07b9a6eaaadc99617111c602d05ee573c8c3b95ed494e8322508b39d1e548d77f9014dd8ba3a2c2340239e1fab86a2788e1ade99b4dc6e16a205f7ee5
57 -DIST firefox-78.12.0esr-fi.xpi 517919 BLAKE2B 598654771e21d1c9964288f3c4fd53d2de6eb61cbe56fb6c0794904e8b12fcc0736191767658e9d5395ee99cdee0de56c2a7b07de16295573a4b7062d3703924 SHA512 a01cd7389cbb0a6adf05683a80b43b32119970181b0c32bec0383374e2fb4a5f767c3eeffff669a563fd6ae908ba431f67449d79433adc0c89133e59e6e67a22
58 -DIST firefox-78.12.0esr-fr.xpi 545884 BLAKE2B 1741066c45d77d6dfd4c33efa22cd04c343050a02e3f977cec5914729af87fd8cef2a2aea73afff9c9ab6b953d528bea7360b987ade059514ca03e72b937941b SHA512 4657093bf73e284491811cb3b98fde6b3b6fb47793a962700945f86091e677dcbb4431efa6a84b6f58320ab57ee88c0d8735a74c740ae6f21b76105740b26c1f
59 -DIST firefox-78.12.0esr-fy-NL.xpi 532485 BLAKE2B 8f3a639b2259781068c75163ed1a09ec9d11cfc0e07151caeaab881f75c551b1abebcc36a9c2373c5488ceac53762b911f348ff3781de598ee93e914f3c0bd5f SHA512 e816b480705a9e2ac5b46ec5e781ee15a5096f0ab78376599bbd447fc87007623b4324d675509e0115d20257d1efb03d66ee60d72530aa5c28db8d9a9afae4e9
60 -DIST firefox-78.12.0esr-ga-IE.xpi 466890 BLAKE2B 1642e6587825a9220424de58c5f7933402713cc8b43173247ad8bf47bcc1fe56feb5070616e29d6fcc4af66a2ff4023850d2873958082c6257656624daf73769 SHA512 fc1a6f74877ad6beb275b836f6ba1ed2b66e26170c15ecbd50a40d7cfa35b8e77b7eaea851e308213c73f57538a1fb32deadb44dad5a9d9bdec9de261c9cab08
61 -DIST firefox-78.12.0esr-gd.xpi 491887 BLAKE2B 86bb50326f52ec809777b1aa6dcfe3c5df6436eb0855ffc0ee7946a2266d4e70b8c596e4743be66c0d96d2e78eba74cfaacc044a4dff75dfa143899b964f3bb1 SHA512 41fe61ff05a39220faffb5c3cf131a92e00eda26f41bff0c61f8802abea179e0fb757ff74a2855921f2523cd1dd2bea4cb03589fc70210f7c6f25bdab321b726
62 -DIST firefox-78.12.0esr-gl.xpi 528408 BLAKE2B 7700bde64cc4ef05bbe29de4c7f066ca064c4f557787119e8bec5097ec947846d57f0a4494bc4bacb05d9044d8433db899840c7181f60b0d258290177530433d SHA512 9120e09f38178c72aa190ec1a78e1f750c748b1b5d62cea5abea3d7767cf7cd14000ae83dffba272311daecd3b811e00728f125d301de5a3fa7a78c1520e87ff
63 -DIST firefox-78.12.0esr-gn.xpi 546465 BLAKE2B d55ec543e9a8b4192e3d2b28f75305f9ee04d5dbab51a23edd216e20c70fd752e94567cd573eacd1727654a1e48ddd6c4640f43abd784f31aa4406769a25b7f1 SHA512 43c83e5bb7bb3d95856c05fd3a962eaf4cd01bde39576f43da4bc35e49b571c81f7baf4c84a8836d2bbfe5b50ce1c21bdf97c702511d74562e138bfe9c0e3b9a
64 -DIST firefox-78.12.0esr-gu-IN.xpi 541422 BLAKE2B ba3a82771dede3eb4a6971dd6c28a248139428dca3977df7a4279bd5a2028a2d01f3d078b748dc0c86923fa8677b2ebdbcfc1b99598b93d89d9688957404b3ca SHA512 62cd42cee8dc8531e1ddedfcb27e17d06f46ada4ae7be3c402badaa57fd84a3fcc70f6dd6afb1a2eb8b6ceefb979899aae1a67e08d73db073fd8f0d29a9a19c8
65 -DIST firefox-78.12.0esr-he.xpi 545595 BLAKE2B 8b2c65e9ecb12a9bca63694c4fa3ef6cd1cd04093e9f4da42bbf0b2bedbf90feca27a99d66652fd735f84c3f5f85e57b55734fddeaf748a8bac8212975343ed5 SHA512 209f3f6b1b2dd176fa340c65d3d880cbf7f02a850969ee333f0d98b7bf69bb2ea5a1c0dd434c0bbe06fa1ff74170f4bbb57112af072c5a045486ad9a3331e436
66 -DIST firefox-78.12.0esr-hi-IN.xpi 567860 BLAKE2B c6a65ab10c21bed41dc7eededef8092ddbdb0b09c6c4de87d4f0558c69c6d063595aa9c97ef3b7fc7f6fc88393609421cf5048b3e1d8130fd5c4e8361f70040c SHA512 cc2e2b370c0eabf2892993c1b97f0481f515b981c7f1fb4cbed8068fd13ffcc7ec0a3707dad53f691b5cf77816e24a8a04eadd88995daf572e34ed16ff95cb12
67 -DIST firefox-78.12.0esr-hr.xpi 522698 BLAKE2B 13c644feb97ebd9a5f0a0469bfb766a541fffd127fee2942cb9514404b9583c9d1ffb5eae668e2dd73190a82147fb304235f91c84fbe57c0cb359ccaed032bc1 SHA512 d5efdd70d10dd0a401d3d80976be737d5012ef33d95332b73d773793ffe567a7a447c8a65b9a2d931a4e6273c7623771b2c50a0c9424ada6dfc25b0722fe9911
68 -DIST firefox-78.12.0esr-hsb.xpi 550669 BLAKE2B 3a4224cf17d1faa79eb19c33922a1189604d8bbe206dd837931df509b0eab67d46ac90cc8a3464114c694037ef8896bff197d8fb0a74372093de70f765414810 SHA512 17e8bd7d8ea4e9b36ce32313792f2125f78db679218d530c4c226e8c86711a3bc79dc1ba40b66c04741a2601b4fd6bdad5d5eb732e365219fe2f2518256338a1
69 -DIST firefox-78.12.0esr-hu.xpi 554886 BLAKE2B 3ffed6828c76c5c51d6774653ad61777ee89943625c8ce59643f1af0df6e2a4d5dc918778c7c1bda9b3f72cce6fa534221d9b895ead11818348f9c7a0fa1bdfe SHA512 df432acbf507eca5bea458ce545de7521719ef1392a91e9717d538dc29d83135c9c5aa8bace1ca08788672eab7974d35883a4064d443aa6404cb408db784d77e
70 -DIST firefox-78.12.0esr-hy-AM.xpi 588981 BLAKE2B 7ff31af1fa503573f59ba57d072a24cd7ba8185a28256dd66c3e176ba21619b4175d4b40e3787c76ffd7944a8da059da588167cd773e3d8d5643e95e1fb33930 SHA512 3169381fbb21cbedd115613fc9ec96b1fa4fc9e6bc819a3e94134a05a8ac14ad5f2241426cf928d3ebdb3a48db8e49fd1596ead5a8cc40b9ad12385e6cdfe604
71 -DIST firefox-78.12.0esr-ia.xpi 518808 BLAKE2B 769860bd1a8940bfa4cff65682501db93e653facbe4c1ab1ebc4068864885266c0e203bbefe58f477e1fb3e397cb5ed7b0a1fdbd840bca9b89f7e2bda5bff705 SHA512 4d02668a8e6c30fbffe327692a0dda509daffd1f5eec08026f9b3944825333b0a38d3f71810220369b0bbee5f4c0082eb6d2fbbeea2aec873de720c4538e49d4
72 -DIST firefox-78.12.0esr-id.xpi 509561 BLAKE2B fcb2f7a558f6592260bec964de149001be7078e338f4d09446b01f1fa0d196252d2ce2fc1d2ffa4ea0de45d492323b4e9bd94ab268baa7f2f3f9c91aec7514e1 SHA512 098bbe019415541975e375f02de131af3a50b6ebaa3c39399b14b907e67740a28dbcfe4b15f0755011c5273504ecf74828c65c5d219b7a3dd7d9b9bd9de19179
73 -DIST firefox-78.12.0esr-is.xpi 477012 BLAKE2B 5bf1cbea09a85303ef4d3e25798c94a3a3e23d770536ad08c645490c042fad85f1254946aebe85c5388d54115d5c9bbc30c9c1ddf2e34ef40bc2b4b4c8642760 SHA512 fb385a03d574a8d280a54c977be14996d33d46d5b5495368e4226ecefb12e479bb57b21e28f3c23c14f4d1f0353c725cea3ea5e3e3498e4ade2a91ad59e0f847
74 -DIST firefox-78.12.0esr-it.xpi 449807 BLAKE2B 0b2b52d50fd220c7d250701bfa12ebeaa5863c78e8759948e481e22ea76cb10a406b2b32135a73f23155dd4c594002db777ca9ff4c4a64c0b87e642bdaf68c81 SHA512 b586eda2043774edc5008bfceef5f779d2e468f7304eea9bcf2d956078d95f04dc6dc49ce996496a131bbd366bb6b588d20b914ee393f175c94bfc52713af199
75 -DIST firefox-78.12.0esr-ja.xpi 578200 BLAKE2B 5178f4003c7ae8806b52223d1e1b599a693519f9daeacd5532c8dd6fcebc7cc82cb5539873eb4395dbb2a22ef6da5d09a9d9f9b0d395c7365fa1e6fe45e1b0b3 SHA512 268afcab72d2a5406b77d992ce005e336520f957bb81dac3491ea74b2d9e2906aa34dfb7f7ebb70b290737382237481bcfea0ce9f4c3316bd3c76f9698661e07
76 -DIST firefox-78.12.0esr-ka.xpi 579082 BLAKE2B ef8c55d39a2aa255eff85a7eb66f2a2d5c267948887fb9e975ba86d323518d863122bd5d48b2de158f35b084f54d6621189f4cb7df44dc271e85ab494fe113d4 SHA512 8db2582ed315e846e6eba468fb804cd7940984edf29a7b992a96eaebdca35110465457d55eeb5ba2557b4e868a0b0b600ccbb2023603104d7c934f80e022d951
77 -DIST firefox-78.12.0esr-kab.xpi 539732 BLAKE2B 8f5a140b2d2abf4958c6e437f26d49e6ce06511ac798505a2a7573010bde510ef523fa92d809e6dbe7dafe1e370932fd5db039099b2c619908d095d94b470ea5 SHA512 e4455e2031b86ae7b0b76da7b90f68cdec247ef9cadda2cbb7b86b85b80f296418cb3a034c6c630c9d62c056a35f0010b0f58ad53e634f7db68e4a4cdf09fa6a
78 -DIST firefox-78.12.0esr-kk.xpi 593260 BLAKE2B 68eea4cb0f257d4e1d0771d3e06324d4a556ba0c063a3d17f641330b289cd85c677f01c644713a882fdf3a94650d4824957dbebea37d0d87628c872c8f77a7c6 SHA512 e216c3727e7c1ef3c04862c207a9b22ee18202ace5dae589d19735e82496fa10560ca7c5e97750829ba7b9df57f0695778dc60794c837710be2509f139783fa5
79 -DIST firefox-78.12.0esr-km.xpi 527366 BLAKE2B d166e62391f2a93ee7ed06801bb1ea0d702ae4977c610aa013dbe7e21d2f7d243ed969370a8815a4173b5ed691b375804632222367e8b9c537ac7a03c3768e39 SHA512 ae50dcd81d874cd8802270903f4db23d7fac0ae9e913a674a2b487062cc901102723b3155e83a423ca07eb814f75fe5ab39b83ef36e203842c96af7d0bc587c6
80 -DIST firefox-78.12.0esr-kn.xpi 506748 BLAKE2B d753d31da106fb6857dddb21b95f755d8d8cd24f02e58a8d3b189530c568bbc94942d62afcaf49f3c82b209baeb455252a97892482538564c0986408c1fff3f9 SHA512 5134e70ab4ebd1b121a063e918924139a601c86af006d9e8f3a5025c68a6af550319511b4f032eda1c2a45fd7e857577d3ad4b7a6f86753b3f84c065e200ebf7
81 -DIST firefox-78.12.0esr-ko.xpi 567527 BLAKE2B 14b9d67c582ce2cacf1196ccfaa9f612e98547f30f321000650978422a2a0cd33f9c6f9f135b289baee75f28f3c30675ab486d37d4b028c39da9b26466a36837 SHA512 36bfd233884dff29ef3a41370df17cdd1f306b1b35bd81e8d2881c09a5f73536f834c6bce7f0b81b3b89862b19fdd507ce321e2b467de20586e829189a74f90b
82 -DIST firefox-78.12.0esr-lij.xpi 475236 BLAKE2B 89d82e8b109a625ad2b7440a908fce782b43e7bbc1b58b3c60a652334f25b2896640e1b97bf541c59cade8c6840425d6ef0cd9c8d8fef3224f77184f5515b5e8 SHA512 78b62ae948e65b53573c1c393b52242129e12e1a30dfff36ef2d435be0466c14cf09f28dca92b7d6ce67430a6c5f057178bb601d3378036db0cbd1ca13b5cc5e
83 -DIST firefox-78.12.0esr-lt.xpi 540687 BLAKE2B 36f07f0bd85470537f06e6f2a40ad5ff5143c256a44f6ee332caa4ff77f2dd87990c18368bd85ece775558f9312f3201bc30ec3b354ce3d25e822e6c98f6c938 SHA512 1df7b888852aa29de0de945e1d901a18b35537e4ab9ff9807e9efd3ff2c385292873862836bd40ad8eef1cfd5f6aa6b2fe7288334e2ee295ae12cdf29e6a3eb2
84 -DIST firefox-78.12.0esr-lv.xpi 467454 BLAKE2B 2eb95094f103059c77dcdad427394b70c26033b8fe9c2867750829b90deea9d1ffec738770fc0fa23ce2f84b8c92775307fc3ece15d2749419270ac1787e2d27 SHA512 4517bf89ecf9fdab3b68b58ae53709b327b38f6c546aec85ca339427e1e2f4e846b91f680d7dd59bdb935ad9c81dc2a85bb5e2803fa70a077a10fe082388def4
85 -DIST firefox-78.12.0esr-mk.xpi 460012 BLAKE2B 01b91f2059dea0e6aecebd98daf280a1d299a80d7777cd0e363b60cebc1f6bab04ae8cf6c666bedef33b9246cf623e8074ac9eca26d7a325451b5e1c673e9eee SHA512 641986710a8da7c4dd334039e403a8f42f0f143752555af72079246e001e8a4d7b8d013e900fb2b755ea60a2df2a748cd802398f694d6fb9e2c1cc61ee118f28
86 -DIST firefox-78.12.0esr-mr.xpi 541569 BLAKE2B ac084f640e23cdd07f93dc3b68d61eda67815c70f13d616d8440553f06d4f831d7815e390c88466d5fdff4767efc61196971bed750080b7940ca53ca76e5b26c SHA512 98282c85887e71dcdc08be45c46baf8893e9818880ad7096c57d946c2e08808fad74222c907c593a6f1d67f50f1cf6fa65e158f2379b3ff2e45c641c8975ab34
87 -DIST firefox-78.12.0esr-ms.xpi 453061 BLAKE2B 0fe96bd6db5f8f0fb9423a659a052a51a1bade98d9ec613efa29db87b6483e792ddbb6d6b6368cb7d9a1f52be42099d3fb927a4a438cb4aac32968089fac2376 SHA512 122da1a5bd6c521fbd93657afb26a734082f23b9e6e3d32c28345692c86665fe1310c74bebefdf65715451632e4f03bb3a0697e010712da7b90251e3e7a4c9ca
88 -DIST firefox-78.12.0esr-my.xpi 526323 BLAKE2B acd832cfa37ea57d3f475fc7d83747dedf76a81d3d783b83fc1dce42949e0cbbe905390945df314b14d67a4ae8a685abf8c20258bcb85bd04104faaebf18bfa3 SHA512 92b0fe9a657e3ca85d9b1c81d3435d94028e041098b7e1b52a26d4e9f378319cf70e9649585fdba5dac919c8189289394347466dd8be0492f05239ecfc4e5ca8
89 -DIST firefox-78.12.0esr-nb-NO.xpi 518519 BLAKE2B 3acb4ebe5add5433b603729a4afd3d07b5c611b14996f4723c865a4e4f77e77c7ab7b0a00c697190ad52733323a8d9807be5cf273bf4767b0b823fb0efc1be43 SHA512 9f1a0bfcd1c668ddcb7ce1ea52ce25ea3c490fb16ee8e4e475668b1e3a7e2e10db7dc36fa118b911f7b3b7e71054b664589763cb760232028552ea2220415a48
90 -DIST firefox-78.12.0esr-ne-NP.xpi 483409 BLAKE2B 24bc0e9eaca3055f2e6ed764b5ab230b161404694a7cff3c0d61de5d742fca558d894f72b00d8b9c2d7be5b96ea88eaf1656e90843f62afc325044fdc80bbd4d SHA512 ee4af731da6b770ea503aad20900da86aad7ebfb9e4509035a0efafb658eb62ef6633ebd6facdf38404dc2bf6e656eceeab6c4e358e472b7a220d7419ec28bb3
91 -DIST firefox-78.12.0esr-nl.xpi 526209 BLAKE2B cc7926d00063e84f4a9bfba8719d276c4c847152da283f0b36dce24cc1ab1f0ac0bffe29ce574362286c664564380e88f1575b19af5121f54caeca02f79a132a SHA512 5be0868df240c3f2bc5f62d62e33557bb5899d4afb8f775270a2a7e8d3cedd62b06f1bbad6ee4b42efe47faa974d2af684a629b910ffe3aa11877f0f0e772515
92 -DIST firefox-78.12.0esr-nn-NO.xpi 520165 BLAKE2B 5c730388fd83f76227e016a0cec35db136d4549105c7c55182125bbad7ed7b6797dab79d5a56cc1edb06d04cc6cff6734b9fc45db7c20b2efeee201f654d8247 SHA512 571606c967cc2d8343a9cd144b4c2b4f8739d43a899a60674d38822a8d8c488a6f4f38a3d7fe79b32a0e2c70b8d358ee0b6229bff4eeb16ad75e452629d78df6
93 -DIST firefox-78.12.0esr-oc.xpi 542161 BLAKE2B 56862a01dc976698fc1fa822cd4a540040cce2a98dbd8c68822d4d02daca9c30c785f2df4a4efa525f971aabbe90aa2f8d499b4b60ecf7fe064e4902a710742d SHA512 ebe47b83828bb15fd17829d5a741adaefba99702ea6642d0df89767ac0567905e0ba4d7c5014b453bb0ad235c317d1d9908fa9f3c956221d2330adab6ff09d06
94 -DIST firefox-78.12.0esr-pa-IN.xpi 580361 BLAKE2B 5708b864aa5bae9961c5aaeb75bc2d82e118e9ed4e5ce60b2202aeecb2ae9a55f3c2e5ea497352c7c5a5310be08c42ea7099199ccaa6ba5de5bd3ffce26f7406 SHA512 3a539f44c67f97f2e4a1c9cc29934e5135e241fe0adfd579571305baacfa545e602f78a2ac183086add7df444256eabee7e3ab32a626bc8d3ccb46d668831094
95 -DIST firefox-78.12.0esr-pl.xpi 545587 BLAKE2B ede715662416623631f16a1f3ded4a9beb8483a6155d541ab0d316902748295025fcc5a58a376d437ce496a0e23bb67772acf83b6477f70b0d0006c2ef58f5f4 SHA512 426b6385cee5ec7e1fdc97f8ebab31d9d3e7c7228cd791f2653a6e153c9c210e25ccb9040fdea89779664e8469958a3fce2036e31c00a51d48ef97eb1709cf85
96 -DIST firefox-78.12.0esr-pt-BR.xpi 527570 BLAKE2B 51dc9cf77c2f98cf5ed9045d355f8045dfa9bb3008dcaceb820b6df22d15e3fdf2d7fbcad986d17a93541051e863360786a3063d87233a9986f3a51cbcb821ea SHA512 9475a182f30f5124e9480def4c4d481ef744e9a57dd44418d9219ac464a9c52c35b50d713420b5957d3c18ac0b278ff0e9fd7ebbc8e7d723e3e54b697bf44786
97 -DIST firefox-78.12.0esr-pt-PT.xpi 532051 BLAKE2B 0296ef68afc434d5f382fae28f7d196fe535370fcf3aad8381fd485d52337e1655e7e175a73f69bea8f4ec9ea51c81f616fe6e01d893d43f37ff15a32e72c5bb SHA512 63cdc360ce7a950285c9ad2a8fefb15e1653db6cf03b5dc7ef94113be7a9abb79277e7a483a9969e317df5a80c0a780b480e36ec4b54b81e061eb6f8d78228f7
98 -DIST firefox-78.12.0esr-rm.xpi 526719 BLAKE2B 06fa9e1e88a49dff5b9e2d3a8257aa04f07f53761f9786b41f837315605c7df7d65c99a1d7faefa9d70a205801ef3a6de5e6037c3ebe740bbc848d2cec29526a SHA512 0562f349ff89dc6d58449ea84be5b7a3729b6a0a9da10eabe3e33ae0fdd67a356022e416a9164a76ee2b6ee53dafc683a5005709674a78c9b533c66cc45d0275
99 -DIST firefox-78.12.0esr-ro.xpi 535573 BLAKE2B 6873bee12b50838cf27b91c1d6bdd63a9e1cbe3c63e89c79ad2b8828f33c29dd95915cceec5fe42a3be12f8c1f59dd0225a9ace3bbef0d4e8cfcadf9724fe6f1 SHA512 73abbb7242568011eb39662e15ec2d63fc43fe269b21f82227d4b9a7eb89e9b3a7cc6ed9617600365360636a8df968cec87c966fd501ef1b4b12d276dd11c5f6
100 -DIST firefox-78.12.0esr-ru.xpi 614597 BLAKE2B 736786d92085cbb194dd371aee0a517ca6a17d9f6fc0db45e653af2052c5f5f39fe267b7ea826d102c68f699e991473474b0398175db17e3dcd58963a680d5b3 SHA512 432e4594e3c6446d9cfd24089a70960da19876b1e79e30f736471ac32f5772bce10c6c58be70237963174e828bb0f9ddbfbed2a314376d248fda9fe7d1d33f50
101 -DIST firefox-78.12.0esr-si.xpi 492527 BLAKE2B 1972bbf48b423af6d7642ab712affd8be3d2d9f22ee6fcd4d0ab5d79b34338d73bbd0f53f3809cf9a9c4adcb7a65a30ad5c751a8281efde29396e5eccdf49b20 SHA512 d223b49e703f2e4a0f26dee7353bbff6e865659abcb1e13dec3d2904e3c6a6d3d8c83216c038e425a65752e82b0ebe96368292f7d1229abe77994558394e439a
102 -DIST firefox-78.12.0esr-sk.xpi 534223 BLAKE2B 2b5e1c5e6013b69a7fd7bd47036c87fc12c4c53b8c3a8c2620dabe82594f4316dd71a038a47c3135a0b87a87cdf702ae0540f58906c0f6e0b181e0b9f68c2c4d SHA512 a3db60cc1d983eb7d1a3e3db671d82b80c657f294628a7d22652de82ed95ae3f149b7ff1e196d25fd6e25689c75c62b3027431fb33682ee9e7cfa5ab5ba529a7
103 -DIST firefox-78.12.0esr-sl.xpi 520944 BLAKE2B 9b4024810e61b3af52c866ab4abbcd660cd5da7a36245cfc134afa00e5e503edb22987c72a3d4180fee4aaee30549614063b297dd1a9db510705a665e4c59096 SHA512 69c1f56fcc966b29746f85a180e331c0646dd430f53cdcfcae3c958077d0bdc0d6332dc3c15910fa2e9dda6809fbe1c3982c9aa1f7bd7db6fcecd9d2fa4d99ac
104 -DIST firefox-78.12.0esr-son.xpi 424572 BLAKE2B d36a4002006b7c7f2a259e6b40bb4f385a2740b4e8ba9d3bd7b278baa24b0a1e62243982f34819f17a6824cc66f5ca4e7f32a355291ea33d8865172eda58cb69 SHA512 3a412d3ff10a11b9aab2751f7b15617cdfc4297d77301ed054119d4bf8746ebc132067e3dbb4100884de735d83f16ad326b4a7b4cabe150da609d8cafdade4a5
105 -DIST firefox-78.12.0esr-sq.xpi 544911 BLAKE2B a06a917f6dc1c3d0ccd712b3bd2ec1ce54c801c212c15da968282a7e169399690e7530b5b553dd11d3548df95e676c4882d54d394e593385a42c631d128be9ab SHA512 749552c95096d15e7c7eebd680dcd31d2565383222e4ccc8cc3fdf30b4536749726a5a6813c4ac665b57711265b1686073464743ba788d30f3b832c5107388e7
106 -DIST firefox-78.12.0esr-sr.xpi 561391 BLAKE2B c34eb03fcc556e2db09496931bd2d08ba9dc8a4ecff89ca03e19e8679deb0f4d03ffcea9f7d67eedb292a0dd4c65a66345eef45d5a284c72663c33b1bfb1d50c SHA512 8b5110e43de2c7afa4e6fe152c768ce1eeb3e21938abe34e27d9dce69f890ce3b3d90144639642afcb5c3a348ded6c412c7e48594c95657ee33275b056754868
107 -DIST firefox-78.12.0esr-sv-SE.xpi 529708 BLAKE2B fbd72399195f0824350510000c07ab0b8595d3315ba7ad983d4147aa86955a0843b5086046cf6d80bd8769ee7a21240d368b2ffa88194c2c07cfef55aa6adb98 SHA512 efdfa3f39ac1ec45d736590fbd5a36b81c5b6996e30129d2a7bec93f8d90fd6db31f997fe28f6dd430e10d9333edf5f5f2bbd72116ae73368b52522716f62b19
108 -DIST firefox-78.12.0esr-ta.xpi 521544 BLAKE2B e776dc5d8b1e01021a99ef84c94721342322a44399b689101d230881f9d212211e10a842a68675f2e11ae016eac93f061abd553998531b3c0d8a4f9e9f163680 SHA512 86c6631376f95e6c08d4e1d3bc0a2d5adb89cac885909d1f6a3b6ba8753d8d432784442aff27c71a673b9e0392b687e952284cd8ab3e36d06ac52e8a2ca55779
109 -DIST firefox-78.12.0esr-te.xpi 558391 BLAKE2B 2e0b60ebb90905fc49a2a2a5813aecc763ff598fa96f5af9f3f89ecde2914fff793d9029df1970cacc18a9b078b473ce62b0885df7f4832abeedda8cc03e520b SHA512 9058cdb3773e10366bac36dc77a122f4e6e83b84374c9d00861d40d28eb241425426644270eb31eea8098f8fac8b17da8db67b7f266bc7f6e86eb4e94863ea8d
110 -DIST firefox-78.12.0esr-th.xpi 592243 BLAKE2B ab688f807db0004f9e0de221079b1d107f5202686316c4a3c9bb7e899b057ca8682f29873039aaf9ae2f6cde0bd9141efc51eff00be1292df6ae43263dd80ff7 SHA512 310a04fbfa68f4f93becaf6baf10c98741f802556228076fe332672131b04903d35ea5354719a6b05a672e3b0b5ddee984abca97c62bbf198ac42b8ab2ed6995
111 -DIST firefox-78.12.0esr-tl.xpi 521109 BLAKE2B 4410a08723fbe30017adce09bb067712dc81580b6718ea6a9ae59222243d279f7418803fd624572cd5b543dac8922e5cb4d1613c70fc68f7ca9e09268c98ce97 SHA512 f7ab25435fb1a5c0550f7d15bca7ca93a8866c549756240ff6f7aabb843b7d780caf3b6fae8ab20685c03c65e419f88b3b4f6551d6524dc9ddd1d7cb857b92c9
112 -DIST firefox-78.12.0esr-tr.xpi 539884 BLAKE2B b2e56de6ae0ad00cc7c52d102d291d8d978bf0c24c88cfd5a6a9b856b9b31b40bfb6a26f709d51c848422c9925924bcb94f513a97d413cc33b0046d4cca42d64 SHA512 2eedae3645dc963a6016120007a634a0cfc4f1b38d27dc530340b6e8b8312c4d3a53de1529924688dd9d17b735cfeb27c6df10942dd72c2d138d35c27508bc25
113 -DIST firefox-78.12.0esr-trs.xpi 501218 BLAKE2B d9a566f1c0f5a5dcdc99e9c6b8e5fcd2b778b7589a3e2b5139b082189185d97f8dc7d35edf4a6980c964624d600495e902b2788dbd6b4359ec6aa45cbdecc744 SHA512 5faf29b0ee329c6dd2822491debe57c4f6ea8e6ec4275f25229a074d4274a6a843fd71c51d2714f44c07067dd92ac641548666fa017da644c300ff51ecd67588
114 -DIST firefox-78.12.0esr-uk.xpi 608585 BLAKE2B 96dcd88731f6ea3c9bf8cb1c0a6c10e37bd3dc5a8610a9e52b8bdc493bd898cd28c098e0850563d775f4f9c9e596f4b368baacea8eb9848d6aa3e428fed52676 SHA512 8d1176dfed8fbe3023fc850b2171e386ab6f2e1c38d3480fc7664291d8d59bfb8da90fc25562652e724de08454d3e2a57f537e3217c6540b75acb85db2de141d
115 -DIST firefox-78.12.0esr-ur.xpi 557951 BLAKE2B 201bec421aee0cdb63d211de89da044e5b6250c318831d1284dfbac2096404b9ba77b0ffd2b99c08653f9cfad3770b4045e90404eaa0e5587720c2adb8455fcb SHA512 d1bda9bb3207dbe654027175883c11cb9a82c11c23adee9a978ad5a6e9d5317cfaf0e87b4896c3f8ede86dcbb525b43be03218c2768b646023dad9a0c5ba6049
116 -DIST firefox-78.12.0esr-uz.xpi 477555 BLAKE2B 986bb748a2faa8b9a0aaa5ec874eea0a410502643ce71ebaafaeb184b97d4c4badb818a280339cedf6f401b34f79166c14dca08dbb8e714367f674b17bdee34a SHA512 1770757a2c1c3d9197ed08d6dc6514e8565292e1153c2c6d810ef299c5e070df1b67fb5996195541e880c71a63bb254905cd217f2532cbc7e75369241530494c
117 -DIST firefox-78.12.0esr-vi.xpi 562863 BLAKE2B b0c80866ab862e0d9d43306e897c8b3a06df6a03d62de0cb186b08ffc9307a68d17b361614046eb15388258af87938c93df9517e59b8736af2114e46a7a8cd2f SHA512 ea8aebe03949c8a364d0b47196bff4dbeff1eff1594f8b36dace7c6d401c3c353ed80bc89bdaf505f2b40abcb7c9c5ff13d38748f194629663f6e1cccb7c783f
118 -DIST firefox-78.12.0esr-xh.xpi 427839 BLAKE2B b6cf89388e45ca74b4d3042f9bf30535cd26a42aeda03b03340f2779ec0fe177653f43ffc3a6fad9a3ed98049950ad18b05a76b043d91ddad40f311e065fede2 SHA512 c146d9d5140ee3023a749d21bf4645e07f0ceae8f8b9d6ba91dd776c57e69b1c56e402fa3ec2b1d8da4918ee60e82b423c9994737e288d8a799c8c5ab1119116
119 -DIST firefox-78.12.0esr-zh-CN.xpi 564771 BLAKE2B b745ddf8c8ad7686e5ca7142338ef4b2f2e362874d9b087c4f4980f4d9e96f076bb318e0782c8c2404c00e71f585aaa76b26da0e369fb02b9121402b5471fa06 SHA512 cb707c11c8c0554e6255e725ab5c68f3b15c2d34d85f84fc6ab4ee7eae83fa91b35be282d592b845f09539ec43d1dde8167bad1eb24b86adbbe236c72854764a
120 -DIST firefox-78.12.0esr-zh-TW.xpi 564742 BLAKE2B 3d4b211b35c9aabe2c610b621c175bcfa4fb0f1ba4af607407b9002a475407f53cb8f2e7250a96fa93abd5ee74bd3ee5b0aff01a91e45ca7211fadb2b03e5e1c SHA512 a241c3af98170e0885b63ec0c140fb1ad7749a5bc762b7154b77282d33bbcf7926550182d261e3ac4b0084d4b8d98b30111dc459f3cbf2d9ccdf9f6b811222b5
121 -DIST firefox-78.12.0esr.source.tar.xz 333737488 BLAKE2B 775a55511a48f4210807d2648833bca6f95d9f4cd48b5d0de8cf0bf2609590c1615fca7ff855ae3643a25466d131e15dc293e6a57aa05e1d91d2cf819b0b89ca SHA512 646eb803e0d0e541773e3111708c7eaa85e784e4bae6e4a77dcecdc617ee29e2e349c9ef16ae7e663311734dd7491aebd904359124dda62672dbc18bfb608f0a
122 DIST firefox-78.13.0esr-ach.xpi 460301 BLAKE2B ca4cd3d8d2384de6fd855bb6bf2b6f4a5bae9addb51e7a092eebd8e6f4de1b5cb7f452c58636679e68f58c89ae816eca6108813df8bea4272553602b65a40630 SHA512 b93d460f80a2403946c0daa8a083670b3f95cd91d5b9d9620b1ccd71f4a2eeaa6d9ee9acf73517e6efb56b39d8a4058f66e328b058df5c143006d18fae2d647b
123 DIST firefox-78.13.0esr-af.xpi 428367 BLAKE2B deb1463defa2b2567b7f1ac2e6a12cdbd7b723ce1d1242d55fe34d3422ae52651bce6e785347647b59ab75bd9c8e42ab75fa6bbaf74ca5449844873077a826e6 SHA512 777c8f15e6a004e2fe1a48011187fe6d7d7ff2c8372885043e57e646a9c4913ded02695d970cdf0660adbd90840ea791008c342f33eca77b92e8809f1b659c38
124 DIST firefox-78.13.0esr-an.xpi 508374 BLAKE2B c1c02f6732ea63a2692b2f82540c61a50a661c681f433299acaeca1008be387f489e58fc3e776762e0fda1799b956b503b3b941974bf2f03835c59cc2b724d89 SHA512 138363db07e7e2972cfb59ae76134f6604494659b0459596a1af56c37b33d0713c1632e34d239486c7b8adf46bb86aa84e9db3bc9ba428862ab075de76056451
125 @@ -190,205 +94,9 @@ DIST firefox-78.13.0esr-xh.xpi 427848 BLAKE2B c31909945f72dadee041eb3bcb4042ea97
126 DIST firefox-78.13.0esr-zh-CN.xpi 564769 BLAKE2B 2771f27244e43c48075f9f6babbbd362ef02ae6aa4ff344affc84fc96cd69427ba2f9650ede1aa27ad8c4e240030855df06f5d5ba133cf1f42bdc22ef7e049fb SHA512 9ea0f86c5529e9d069e1066974be9c50b93325be653711159215e06dcd4b0ad76c7e4a8ba954ec3e104b424918226c2b4999c7328638d352ff389b0e24b44b65
127 DIST firefox-78.13.0esr-zh-TW.xpi 564747 BLAKE2B 0aeef4fb1a7f1290f84f7f18d4f1ad63dd267a2b7f472dd7c2aac55851776c9308457ea9d6abb297c661d18b8aaff274d50ee1f8b39ec36de9a804b62bb419bc SHA512 73e873090097c1021c34e4e063b9bbc729023279b94a451307332ae70fb5f60b9cec6b515d3366550d126368f913c574200664322ca20b95279f7171595120d5
128 DIST firefox-78.13.0esr.source.tar.xz 333506484 BLAKE2B 1922e2f6b2ada46e581e4eaaa388873d31c6a922e5165ba225eeaccde5c1c6d7369a57ecf8e89371a34f692dca5754a461abb7d1c9bfda9cbc4f021d39549439 SHA512 78a5dc8713ab879ebfc3b8fd7a8219844d06f0d897342fdf9a11471633d98e148ff85cf10e561899df4910b94a33b57709b64788df4621a8c0b83eb9a7102cef
129 -DIST firefox-78esr-patches-15.tar.xz 65604 BLAKE2B 86e421e555ffd5f7f201d0f1a1c446c649739c67cdf8dca536efa115e09d9c357ce1551b7270c77e8bfe7dd53e0f3e6386496283879cf5e0c59b3c864951ebb3 SHA512 b229e895f083a0404cda1da0d8ae937429d5975ac52ab20e8b15611d9c737381a1076ebfa8c8a127dacac0e12a2a905ffd579facde2d80c6facc911e5739e34b
130 DIST firefox-78esr-patches-16.tar.xz 55964 BLAKE2B 79d3a465c69656bb55ee7c1e9060606464b6404435b92f534db275521ac2343e045feae1fff6166fde9e2599a82cd982b0b2395271b1033f0f784e745e2c6965 SHA512 3aa971c726646cbf37a14a0dba6c4ac966b88db655cd8b730c5572543bfbf682991ee7c139889541e4f6936c13f27233dc1837fbdb9ee340b33ebb2cec59b01f
131 -DIST firefox-90-patches-01.tar.xz 33084 BLAKE2B 943f5f9f87c6ce110dbc52e78a58ca64ab11cbf3af01bed8c0d6f537baebc0ef89455f01b966f9f052f62ec7124fd0b4019e27e410ffaa0530874e5dda73b01f SHA512 90689ad703de17c02581a6b8aa1c013b9ab96da22a17dbb8e06fc9a5fb04d00358df9e44285b5350708b366b32a7e6c6130ef8dcdb74b0f2b5c0dd44293ba825
132 -DIST firefox-90.0.2-ach.xpi 467582 BLAKE2B eb20fc04a512be8d1eba219f7541af93dda781080337d76bce276a5583bab5db1938bff037a238377250b6810232b77534bbcf835362ee385b4b1bb6aad60067 SHA512 2f726bfe18bc7e6aa3cde436e9c142382513a1175269b710449cbf7481dc3d91171d21ca1bc30563901bb35eb31befa3c2aba115ac596951d3d6aeb5b94bd1ed
133 -DIST firefox-90.0.2-af.xpi 430709 BLAKE2B 05cc8dde801efd97dfe56d1d102fa48e1b6e62b3e905648007dc488149628ad3eb297445319f0f1b620f2549d7830c16b81c53e06fdff1d43fcc70e815875256 SHA512 3865c9e96b66def2e640d747cf73ec97127b58e15e0fa01d5374d2ebe35a91d16a8176b68f4025122af56648415b47d03fe6a4a1e007a64da8a9ff4e1eae8ef8
134 -DIST firefox-90.0.2-an.xpi 515453 BLAKE2B fe5487cceed1fe4f941adf78760cbfa313f58408a5034eb72809e82b3a404e6515222058ae0fe8e7b18807eff8baa72a7ffcfe80798ce4ef9213be7bd52fc2f5 SHA512 1958e46092c05ba266896dffa83af98adad83572a31e769219b88a044ae132f2d2625154a20abbe997147188033f4924ef50e678d435aba9fdf0d8a291c89ed8
135 -DIST firefox-90.0.2-ar.xpi 580224 BLAKE2B 0ce2771752d9c3e6a2bb4d39b4eb4da5ba9ce4d530b04fe11b7775cc08107a78d3cdee033cd2a564523481cf69954fd07fc6adbcdc56ac0abea192be98fad91e SHA512 eaf2335811cf451dfff085efdd0256a3c72d08c59b1d31dbb08a968d40d5c20d45e590479e10738726bdc597a523c036a2b26bdbf41ee469a6bc3dd3254f0ea2
136 -DIST firefox-90.0.2-ast.xpi 508002 BLAKE2B 74158545d969e4181c4a80e3a1a2d9d2dd0e4d358c7846b9c426b25a00fac9d11bf10f8dc39e594ad9fc8395fa0e427d06824e3981a7dd7e59db1bbe4b0930c3 SHA512 7a5b98e537ea3a930016884fe13c1bc91ebb6f13267f759aa1c689a80f9e3243eafcbd8de16060bdacd6c59295b6a6fa5ad419cea3328acb20be5fd53f909b5e
137 -DIST firefox-90.0.2-az.xpi 503461 BLAKE2B 15c7e6b13ab47639c611df6c51ebdddc2a365b6f0ff0e93285e17f9de8b85f91d028467c3f80ffab4a1ba0e28d8f16543db994b5b6970c5a22a8d4e36713a6a3 SHA512 18f759e63ad51e9719b3e5f4695f8e592360e612835e9f9ea5cfc616bbe07fd46bf110f881b42663d0e2384f12d34ad3a9207aa62247e582b1cfc62065205210
138 -DIST firefox-90.0.2-be.xpi 637220 BLAKE2B 1e10160eeef6b14da9431ffbdb6b94b244477d23f9b38ecec6dc8a40a188461624cf5fe9395f93c41cb2701eb2e18367db1ee991debdf3927fb44db33631cb31 SHA512 c9eeece43756e020e39908ce1d99f238c3d581cfa66b9accf8ad23fc0691d461b976ffe7027e29cc21914a07c9b009c19d5a7d17013b70739d5cb13dfe20ae8a
139 -DIST firefox-90.0.2-bg.xpi 590496 BLAKE2B df82040f0991b69549e5983a6d3988bd71bee2aa367bfa2552d571cd1702e555ba0c488aed195f16541eff54a4b714e3d54ef6c99da573d451a69af44967ac85 SHA512 0429124d8eff17ba6cdb5b1f3b8107f1e37e8fba9445ad88532b5780db1e139d527bdf4bde37a1287657828a68357ee47e9d308b540f1130eaea65332ecfb3a2
140 -DIST firefox-90.0.2-bn.xpi 579586 BLAKE2B d989d0ffb3b396eff5f4cb3b42e503e52395715c371af60f7437e7c05d5153c1641c67ebd68870f019458ea9f9f32c888c7ffa8522d18403823571bbffd7835b SHA512 49d2b6d9bddb60140dabc91d7566318a7a33cc96664459fe75b29d07238a22056db615e6964b9cec9b0390cbd482bdedf4362acf144f752a8d82e7aeee76c360
141 -DIST firefox-90.0.2-br.xpi 539710 BLAKE2B 0691c6011c853e856577e7d2faf320b3d5cc276c360365f63f97fa03860ae1eafc02a31cda92506bfb3182a1eb2f345fc9f8661cd3446dc4dd11bafc09d587ac SHA512 630169e5a074099a3d965da66253c3707a3fc898a9b5aa3f5f5830c948c589e2f260ab6a50795417d19e63528658daadbeec2ef3117dc3c30d026cf9adb684ca
142 -DIST firefox-90.0.2-bs.xpi 475430 BLAKE2B a6fb2a37cd6517c5816e036eeb794ff0de0c71f75b620b795a463ab33a6e47c8982c060ad128f012972a8c6759a6ec5cc178f31f2d242b86949597fae59e372f SHA512 44208f322553d88e59fea067a1216f8795a0359d330ff26762b420031bf8f31ae87d3fa1579153e5e6dcb53058c048b1df49eda74deace4bec8262ea6fd0d20e
143 -DIST firefox-90.0.2-ca-valencia.xpi 548479 BLAKE2B ccda2b43e7ca3ccc3cb2bcdcc78e668d51b940d571c2c7a7dd117ace3cbba8696304aacf9dedaff9d3655e3dea96d0c694a4fe1788e8c0eb6c7e9d7595786c65 SHA512 64b6e4854cc9e1866a6ee7218d499dfa66a62680d36b2ba5973bcb99cdf09ce9664f078f0f93946575e4daeb872fbdeef28d7bd302113f83668be2376a1d4602
144 -DIST firefox-90.0.2-ca.xpi 546603 BLAKE2B 4a73a815709f2c9fd30be7bd282cd889d3babf08af0513e022999fc4ee789fa7ebc57a1b5798a465d46bc530830edceb1ff9b1e09889a139c25364436b32e09a SHA512 7b3d1f509dda3e9adaa8e15d12d1bb2a33c16356e7eebf99a0cf73fe2611bce6d84a9b7c328704dcc6caedb60fb9faffd9773e6e099f7379f5020b9c9263aaf2
145 -DIST firefox-90.0.2-cak.xpi 574164 BLAKE2B 442b69ff8957b047591f21ea22ce9d04a5d2ed88d870b321eecdb527c95dea94806ad76b8d88127548e35fd87f647b15c21e9a5c2f9ad7a7ff4582c94e500d48 SHA512 05a50ad71449ff9828fcbd4cb089d23c27fe885c43bb7f02bde303c0223f0e64036589e52049140fcdc1b92180d4f8fde430f2d984fdfbc3e0a0dec7bcf33bcc
146 -DIST firefox-90.0.2-cs.xpi 577720 BLAKE2B ddc2062e0bd2642236266c47bf763121d2581ab0cb99da04860fb33d688b26c4c887760feb7356c5808ce889497fd62b12e01f00b55131ca45031a9e977bf153 SHA512 7e277710908892964749f446b48a8624c199d5d45f780608ce0ac6a7a5f7cbf57cfd4ae986f79f76a46ef2a0b41828104daf97028b54a2d83f6f134597ec28a6
147 -DIST firefox-90.0.2-cy.xpi 554650 BLAKE2B a8b3f9879534e4f59763adc1ae6ac310d14223faaa23056cf7248130489f993228083fca854d15ee3392761c33fd37d506402fb657b51dd1a607432e9a1d19cb SHA512 c18522048efc7edbcba01c1bee79e43d5db7b9816ac32d91f4441d3a0cd65155581966372101f14264fed70eaec881d5a099995a5b4beb9c6a3af54c88045212
148 -DIST firefox-90.0.2-da.xpi 546288 BLAKE2B 580541804a971226172c4a5405c2d97e57b0a8f6eada7d0658cffd79bfd5e4b915cf29c8ca58887f328a2601103b52b328ce5fca67d5e7a261a09dbeea347d76 SHA512 41beb225ae75c34dab6133f98464f10e9b7faa6405a15199272d05039a4c0417f7bcb67c0b4d058b716c010b9afba7508779aab664fa9acfcdeaf8a12b336a6e
149 -DIST firefox-90.0.2-de.xpi 566471 BLAKE2B de4bed3a835be63460e938cfeb73ea00d3db1170a83fcddc7d67c7031028547205f1d9c016d46927bca1040ce9dde1a6dfe091647ea89d13425e559980baab67 SHA512 5dff86f82a0ae5dd86180d1bbb50af329a8d753905464728eb608e67db7cab66030d76617d119807642cbe16362498fef67658f07eda7ad7edc76a59093db3cb
150 -DIST firefox-90.0.2-dsb.xpi 579297 BLAKE2B 24b04ee03cbba2269150674c994c073c5f114cc56e8703a1f993b2572a64ad9c78c49c65bd4b064b785faf2f95c3676a978cd01b54bfb0b5a36fe9b8273c4a09 SHA512 1d2e7a9b4f701d05ce9af4420c3458872cce5e8be2ecf1644bedfac5dae294f13056ca649a112bd2d7d0fdfa5a50574a107cfc51eae3cbc3bccceadca94f78d4
151 -DIST firefox-90.0.2-el.xpi 652899 BLAKE2B 00d52fd1ac72f2ef57958b02cccc7270dc7f565ba3844dd0be495930eb7a26cd72c0f1c289961aa940fbf5dfe4b070159fe6f511df78ee26e0fc793e245a5227 SHA512 dd9e5a59bf81ba93ffb131fc4dff873e557cd252941c2986d37730752258a2034db44e53672e7e2174c6f5467fd784ea22538e8e2334b441aeae8e99a326ca96
152 -DIST firefox-90.0.2-en-CA.xpi 521250 BLAKE2B 0db675cf883e92fc41c640f9c599b7fca295ae4f28f686440ea2e2b9a4436445b9eee2c2fe6eb625b1cf96db87642c341084696b35911e52239486fe11d3ce6e SHA512 c1f4a0e29e4e7313b0ae8efea43cd436f199fc249dcd6fd15d6ad7b2be106a90e83f49083f7d1a018be580f783fae5bb07ed5c01012b5adc59526dabba72fd30
153 -DIST firefox-90.0.2-en-GB.xpi 521806 BLAKE2B 1a04f7c7953f1f32e11484ef2b21559428f37ae00911d5560a504e42fd2bffdbef8f18ca55f924ff19f62679e74f6886b4901bb3027a25f85ddb525c38416315 SHA512 42690b90fcedd3f42ef373c8bd987b0bf2fb19d30071e451c33ffe3f6baa9c089ff870dce41274841a06a6d126ad09364b399f2d44f96b69441dc9dfae2cbf35
154 -DIST firefox-90.0.2-eo.xpi 548059 BLAKE2B cd513f81964c574fbb8436d28e6af185c74009466ce843f18d7414a730b709b26c8c8588e5e9eaa3ed3c057ffe16ddf56b179f048fa180760155e04151946c90 SHA512 8a02dae10df6d178fc32cc71df44b85bc7f9645dcce699a67a0910f4a91e058e99d05464b62a00fda32d7e1d43c629d2b6401e89288d1532fc08cd4868b5916e
155 -DIST firefox-90.0.2-es-AR.xpi 559628 BLAKE2B 3d253e9bd11b29a3dd5783bad9e8b3e5f64b10baa3f497369c8175d295827159ff61b5a46abd4a0a6792838d18fdfb363316f64600bd4d786035e11fe4066129 SHA512 bbc319566de8dcb9911f76d5edaed504bb24bf5d65af518a5645f4941e8fddeab4e1fcc750d6a2ecb223b41c9746a5192822c99c7a30fd4e913d9177ac34f26f
156 -DIST firefox-90.0.2-es-CL.xpi 558527 BLAKE2B bd89d7e8cfdf892115438b7fc92a18c48b633e9f856c9a4821ea2a7dfb90120e1b6dd233854ea96c2f1cb7dbdadd71aa369a7c879092ab6b0b109ae21864ec25 SHA512 b70799b720dc11a06c641f8bc21726d16e1979a2bbc9bfa8ed3fce019c24298ef0539ea47bf497663971d6de5a8d7e42edd73eecf259e4af966f41dcfd1827ba
157 -DIST firefox-90.0.2-es-ES.xpi 548794 BLAKE2B f0320caafcc35a4e71abab33ae4a35f341d7f869661f7f7e2c8eec9fd68ac1d5be0502c9fae795005365f6d4e8d6024c86bb932ec3baf9b538b9595ee8ca06ec SHA512 5d2840475edb3659e7bf5428ddd92cf4929bb94a76884686a3c3271a6a4053e1bfe623d803488ab058b0b9860d9f4d659d36701eb6b90aaf5ea1723b3d83a0c0
158 -DIST firefox-90.0.2-es-MX.xpi 562244 BLAKE2B be7fbfe6d4780a871dea7127a786820ced8b139cd5ffd61989cf003ceb5d333910a9b7421a40008bf0290140a927a5ccdb0e389f9078f9b2a031cde00b5789af SHA512 b7fe64cf33d7be4ac13b66891a7b6ae350b5a8177537e321bfe1b8da2a1234980d0bfbc819102dba975d169baa9b26a356c80f41b41751d36e1ddf1defe5911d
159 -DIST firefox-90.0.2-et.xpi 496662 BLAKE2B 31829a9cc3c809b6a0d91a68671f44e197db7f5b9b10426dbf4722f74b577de1db4be84f11f48eaae0d1152ac82af5f9d86922dcce2cf75738d3322485c0de52 SHA512 906f6f819baf2a96dfe0189ed322cb25e046d38dec7037cf5526da71cfbf3d1c0de600baf31c511d08eb18067beb4bfdd35ce5f7de91364847d0a0a7b21c7a3f
160 -DIST firefox-90.0.2-eu.xpi 544791 BLAKE2B e8df641b3d57ec9d044f80c274de17e23e216257e0d78cd0e86450ba5fc39b18839896b3d3976e3be0ebf394b0d966d6ee4af0dafa2e3ca1a9751b3370d775a9 SHA512 920522a5fd26a53d27f15533f40c5972bd330037656b1c1f94828c4d7b87e33a446f49c4f311cc15dba16a931c73255887de25b91036a1057422a25727e6f481
161 -DIST firefox-90.0.2-fa.xpi 565155 BLAKE2B 1dc2ffd9990b923247d487670dd734c67db0ca5703834fa052f21684597de0bfc9902062d5c7f6fdfb4d68c85684fd93db5e060091af220c3c2ab74f4f9138aa SHA512 a929bfc80b3c217da3eae1773898a646d9c2c06d7e13578d1b3147a7497155953ca2a297156b1012ee7f8630b7764d2953ec25d610f958ee7a19965859666455
162 -DIST firefox-90.0.2-ff.xpi 488049 BLAKE2B 751ff1cc8b0cdb51af4f0cd42db3d1c96662d9994fbe5fd2e4a1d2a1ab57a9b4b5ae8bd8c3e5d3454de83365c6a1391be3e07ecfd58efcfa4ae7b412c402a826 SHA512 0b6e0b583f97722a57f9d28caa14aff4fe7d342e4f1b188a1b0186e865eaad3b1b5ab0d911a9187c082760e85b9f970c71be6e44d84827a575b102f28a7011f5
163 -DIST firefox-90.0.2-fi.xpi 545936 BLAKE2B 1d992fda4a9cbe8ff43c786277c55ca005888eac771095d037d595974ad6430994ce7c0f741acf96f175a816e800bc77496e318290914912ceba8a82e3c6ae68 SHA512 2143f3b989153534f61a394c94e9edc74f0070e8d6d389b455999d4cb4cb0597322871c100a1114adaf1073ef29d7cc5ff6c13e8f59de5f4064683dfe1f12fd5
164 -DIST firefox-90.0.2-fr.xpi 570078 BLAKE2B 75cf2bd14e3e8b67053aea83d492033ef46ddd88ab69a902f17a4e21c36e1fffd72d855d48be825da3928717eb726447435bf345f26b9edb5cbf949f08b19209 SHA512 a03b42c77585f70136aaaa3e102ab53550ec441933814e817f10a5ab846a47f5b1203738c22fdc07fbd7968421aa3be07fd3966f54a3d7a1f564e5733a4f01e9
165 -DIST firefox-90.0.2-fy-NL.xpi 555597 BLAKE2B 3508589c747154ebd7a9b712b58d38776990b8d9d2fbc6f83209a3e395b844a0bbc7ff0c62afbfefba58d509514fe0614bef7f711b1b44bad0605beffdd7c07d SHA512 5dac5d2c758eedfe7d351ba5185bf2f680d1816ab74256c9821b7846140130908976a979563438f910ddb51294ac8045e86620f9b35fc58e30ef4d9e3bc8cfae
166 -DIST firefox-90.0.2-ga-IE.xpi 473120 BLAKE2B d72e1ccb36942bdf00b337efd0231ae5b338a28e17eb6a5bc51e613df4658c27da61486319ac08d4f9a0373dd2f42e7358afdb29da680bafcb97b9a96f61a7f8 SHA512 9826db654e10053ebad1b78caa2bca440ec8ef2eec30e1d3f70b04679c5a89ae8eb9098531b13aed6957a2c4fc7a885e0ac7afa36d0f98d40fe0d95574c7ee55
167 -DIST firefox-90.0.2-gd.xpi 550980 BLAKE2B 19032850535ac7c4d5129ae61a901cefbfd14b7c0ecc6acc22ad29422290775c61f0343442f823dff4039f99a40428ce138987e178471190515c91b509eab110 SHA512 86d69a91cfc1c836cf2b5d8b25ad509e32fd5d1d3732379009e50b8d2a9222371e287a3e00c0d9541165d79bed59732b8e144f3b638e43db9838bc29d62d4b20
168 -DIST firefox-90.0.2-gl.xpi 554486 BLAKE2B 1bc91d2cfe2639d84dd080198d5129414c581ac3c02dce8b14aec1e6c4a169e9aa07d6ebfd8fa98dca4546fe85fd1a35054e561912c4744e07f0768f71c7aab6 SHA512 4f36662c5eab07f649aa21aa85dc57ec82c8ab7b961fcad80fe4f487c40a041b98c2102b4f7b96cb4259e931333db4ef357e4a69779412f4fabe7cc7f66f0b21
169 -DIST firefox-90.0.2-gn.xpi 571719 BLAKE2B 37d4265185ec26a8ea8e86b57aa0aae529295e1ad54e5229e0e108872fea8b039acb4dfd85153e8a9218db46ea59288558d9c60cedf04554bde32faac85275e9 SHA512 937a9bf0c77e2d5a5f7d48c0aecf6b27bd6377ef05a82e2f674c38bcaa392a3f2d92f7b6eed97551eb26f39758f215bbc102b01314c3326e54c0d70abf91aa7e
170 -DIST firefox-90.0.2-gu-IN.xpi 547542 BLAKE2B c207abe6581170975581f1ec5f074fff4113be5eb19a3f6113c2c6d660d66474c21a46b73ec87e4afdb03c04b9d052c77732b676108b89decbf04f2ed7cf3f71 SHA512 ec9de8cffd0ffc3828d69fadcf8c2a42215aa1d84474b08b3eab42d1466324cf2f5d5a035fd9f17b90230b3778eec7d229ea2d0fbf4aca6d652930249255a2c8
171 -DIST firefox-90.0.2-he.xpi 569407 BLAKE2B 7e69b976f53760242da74042d85573159082d3edd5e1d3ef1fd185b09c6863f8c275214d9a2fd420ca559f83099b393c979b701305e3c2c02bfb63aa8e0194fc SHA512 1094fd8b6d6435ba094d0ec2ed70a5b1d911059c1bb4850033209604521d21d8ff579e829224c494ed4046da16ab804381138a1d3893ad5b0e14787442136b3d
172 -DIST firefox-90.0.2-hi-IN.xpi 579616 BLAKE2B fbd00e727022b20e0bdfe3adea70558b5e992fcf40805d0ae3407ffc49b41db5579cbff3780bfb05825bcb7d2b5cd7265dc5fd18f6be934806ea461d3c2a2629 SHA512 209bbac0799e13114ce20f3ae853dfed6c4e4c56efe71a78d765b6c1f725a52b0e88b87d6cef6efeccc1391413f9d322f60f0fcf79b197a1ca2256ab7861dd88
173 -DIST firefox-90.0.2-hr.xpi 549998 BLAKE2B a051f4591139d4e51114b39df0089cf970f6cecd368785c36592b5f3d4d129850510044f6e3b48ad7298ede1b2765ab502de75530616195d7d636599b8c275fa SHA512 8d77ca7fd7dbca5926ed4f8becd356a8bd31b8ecea36fe26b8641ce9d02daac2268e71e19968ff9f3338b379e943f041a4518207491a170bb629ea4045e2a0f5
174 -DIST firefox-90.0.2-hsb.xpi 575410 BLAKE2B b952d82e59ac118efb537453ebe7a87c15792c52b005da779d7d06f7fd665e8dea05984ab07b9dde17371828fe6f44212aef4dd492a32e7f9d6ad87c68369be9 SHA512 b59caab36be18ffd000a9976e3703e9e8d520c523494f080ef020f49ca239af17ca97dfbfb7dc70d36a32bdb51388c8ba2e8d4c4195d6b15c0f6ac57895df6cd
175 -DIST firefox-90.0.2-hu.xpi 579113 BLAKE2B 206d00a85161b6aa2f2422d825a54fdb8a77c856f5da5a92c707729d078ed7a020d6f0b6e288bc117cdcddeded316811eabea264198633f11a27ec35e7a592d5 SHA512 8cc740c1454279b9bd20d78abf4ce352db596e85e879eeb335b79b00c0160de6b2a704f3c6c44d4231c80d2d40b58d676def68cd77bc2ed916eb617cbb0ad964
176 -DIST firefox-90.0.2-hy-AM.xpi 604422 BLAKE2B f49a46b07e6bd9aff619d6ecd142d53da4366899bfaa0cc13051b4132cfa8c81c16d0a1cb999b190373e64fda1434df9ce965c91969956dc1d4fd64c35fc5bb0 SHA512 737b37f8a96eeecd920297911cfaed9664c0327f7498cce5d0c0dd942335498cf7b15c203226dd3128b60a08a176556cfc8abdb434a77fbd5a846948faf4044d
177 -DIST firefox-90.0.2-ia.xpi 544431 BLAKE2B ef3eb4e133074467183d3a54f2cc6af6ded4e8edb618868115fa6366d61c2d379a3903c0eadad8ad2a0d0e2d9eb57539d317a04b784a41b45a2cab8d73e64a56 SHA512 e3a72c94be0f03c93f85ea9b7ea1b37542f759d5de9a0522003abff9c12f30ff377221794d351d82c2b23afc07631b7fbdc0c0e629655877714e0ea3f9e49c47
178 -DIST firefox-90.0.2-id.xpi 540133 BLAKE2B 52d47167ec02bb0917c0b84df77e34694594ed3f7493d1790fe036268f304b1efa1097ebcaf2eaa9347e73d07faf4fd46e97da1d8961c9b1eeb68e13b222a1f5 SHA512 c510bc024f902e795fc851b0709570f5d493cd9bfac12ecb6f552144dd8c96c1ba607e6fd05f765e0f0425792859e86e661579b89b700320c044d18b28171cfc
179 -DIST firefox-90.0.2-is.xpi 483713 BLAKE2B cae0f001ab5767163706140ca2ecf6e15c6db37a147882586d40073d2598fad2e5fcce962d4d51d0af5a925e634ef59117f5f93f70347237470f047d727083f8 SHA512 22da40eb5089e2a267a66c17c9ee8ee400753f0a9cd7337d8eebbb0d1e66f1ac31316ab875a6645107b7cabe884308f2a1d1d0a64ea96449c984ec74963d85b1
180 -DIST firefox-90.0.2-it.xpi 470917 BLAKE2B 2b8ad1812676dbca90ea2164e4b534a3f246bb883bb3db7dfdf90c324733563903ddbe4345803e77085fd37c5a099d9b787f94e01a413349c744ca67b25f519d SHA512 018de01e7aab5f3f8319ec1f1c74ffc5a77d9b6fb2e410f700785448d3c5cb267b095edb9c9cd69ed08ad529295a859086a7f5d4ba53c39e464716e206098606
181 -DIST firefox-90.0.2-ja.xpi 605314 BLAKE2B 34739e38a812f92c8579a226b36f2c7622eb758f2942069193715143f0d63e9f0b85e08ef4ecee75d1006a97304a6905b15e0e76c65b55d7e1d3cb29c45cbea8 SHA512 7687014e78fe50b692e97bbb22bb08c8c1e25b54aeb104b766587428aeda8fea935ccb089320e72dc1efaae7656c0de5485fc3905b98127b45f59e38ee58276a
182 -DIST firefox-90.0.2-ka.xpi 606361 BLAKE2B 618a913593b9ef7832fd810ffd769cadb47bb93ef9d9362b86539a3d6da86957aebe412364f32ad4c77974cb97fb801edb3938a29c2326a66796bdc0d3e1fb54 SHA512 2bd7a719dbcd9cf2d7881260d5c0ae0892882983d7d07c7e7348c6c82b2e2f861236afaf5f9ee4f60940f3a2a6d9d3865949c5e2e92b6f26c09c4081f752c412
183 -DIST firefox-90.0.2-kab.xpi 562888 BLAKE2B 96890638bab2d4acc87390ee56c4c26c93d5514c32ebbc1c833aebab51e793a2e3d336e2076912edbe68843f83c8f02559a3f36feeab56329eea8ee9dd0fa320 SHA512 c8397002c9027ac7786957076c202a6db069ec1eee58fe0623291b5a72821131007ce2eeecde1d522d06af571e4dfa87694977d25fddb0e3c76d84768cbab447
184 -DIST firefox-90.0.2-kk.xpi 621558 BLAKE2B f57a4466136e3ed9adb06d0b693e7a653d4a06cd25153f42cb35ec6387530b6029d6d6d08b5b9dd0d7a5bf6a17f6e46992b443491ef23fcbe0d05347788351cc SHA512 6ad921f93a0e788aa0f2d59a422643eb48b85f54eab32066e6eac1338d0e73e0a6882f73f562c3011e4f53db8f00f92817a3539086d8c97f4f3a7940290257ea
185 -DIST firefox-90.0.2-km.xpi 546445 BLAKE2B 0b5eeb9fb63549f3f9ff6c875418764e8191317bd8a167c2102face45b88dcb569c2df47fba209c5935e2fa7c8952b9f200de43cdd49caa0418b413b22ab8f93 SHA512 760431880427fe5abb65fb0a351fe80bc1ce84368c90b454594d6b13185254a19e88eaa2b095c38b9338c88230254df0fc0d1929fa24875458a1d7a8076ccd6d
186 -DIST firefox-90.0.2-kn.xpi 510724 BLAKE2B c24388d4c872b798ed62e83c6d15d8f9bb33be6d258e16af43f34d94d05df348df09295a2d9c2b7ea54ec876cd4a84570648f3d0c964ee3c628b246ca145a15d SHA512 4483428d7a968f259b13787e94b845e0a9ffe55be1fe83b5fdbda01a7bbb970c959d7b24acaef729b9814a0e54b32be7967191936671d0224e92bff35570699e
187 -DIST firefox-90.0.2-ko.xpi 590731 BLAKE2B d5178a54243b80c34dd3221fb0f9447cc9933ca03b7231ed13a006682f38a2f9b60734284a015326dda508c1801d50bcaa5fb6d299d13548012ab8c3bc89867f SHA512 7678485b6588e369067467250b5dc4a8009009850d3d63d8e2340d989b7ef383e81ea6af2f305a8b70115bdedcac5fabaf8a201eeb2b254de938bce818462e83
188 -DIST firefox-90.0.2-lij.xpi 484766 BLAKE2B 382c5ff77eb58e58e5c8e32ed0d7fe135d61974adaac1c990d514a1683c75d45fc68048a22f2d66ba0edc12e3ae119d9f75a217eb37cfee1180654c1288bd7f0 SHA512 3eca5e9266846d6b3c7ac108986da092dee5178e321aa8bf6892d4ffe009c2ab205ff86bd3d16076f8b9214b55578f81d0907bed9043c2c41e64e4316478de29
189 -DIST firefox-90.0.2-lt.xpi 572555 BLAKE2B 63f4b6095ed7e5cee86a4a25eefabea77a1c3ddc0562d7bfda0bdf08de5ffe90c9020e106d729572177386cff9461bf0427ecbc13368ea3dd8d6bb21388e18b2 SHA512 579ee64b4b3683a433b265b6c4c71d6c1006aa7c81e850b3b7f4d1ec7f3376c2bcfb89db76a5ced145343f11010fba24192f3fde365421b3e855b66755630e9b
190 -DIST firefox-90.0.2-lv.xpi 475696 BLAKE2B 2675056a88af23b89dbec450aa2ed11621f6de09bdc21f0d06bcdf662c1421d517660f30d7648debbd588ce23651f525bf2f5255af6305c27defb40bdb770d4c SHA512 d48159a8e812bd321db05e8a865a8f680feafb0e4767e0d35d74795eda5a889fea5e2d8745bb0d2b438594aa72bd73981c2c2474e0ec089a29e0eafab13f550a
191 -DIST firefox-90.0.2-mk.xpi 472368 BLAKE2B 91a36844e99016d7e2e4aa7d0d99680fa8d83e6a1e9282f6c3eda916e4cbaf826e8d66349eee4d905ab9c15eb6af7ccb7599bc0710e5a11d3dcfc39a0ca0a259 SHA512 408884c11556fca1371cb211a61f63ebda6df8df56ce02df0eedcb82d9e6ce72d77436bd9e2202d1e07e244ef08a62d2c7eb41ace62b813a8d80f6c134143102
192 -DIST firefox-90.0.2-mr.xpi 547715 BLAKE2B a1164b4b71eb42057bf0361e06cf2338f201c6926d7c6547ab256285a6fe7686d64a5674c909c95a31e920940b50c858b179f1607118cb19323e1c01cc075a28 SHA512 74abb04ef83fae4c570e82697ca2353a9e76772650a87e4e5f7c99f7591a8a84c1e5761a21cc2952a5846bfe873ab50339b958c9411141d2e636d1573e776b28
193 -DIST firefox-90.0.2-ms.xpi 459315 BLAKE2B 9231c3e855cf744e053e84978c97e071dbea39046434d7e6d1639e985ee5422ce71fa07f3189594873c3ef062fa9b1edc42bb3df1f6d8cf77ae456490f1938e1 SHA512 4dbeda882792988e58d6b6df7f2f7bc8b9ebd9ece288bc83f92561c62366ed8c59043528fbbff14fc4856188b22878a0bdc146ac95aa1a3e840a4f543ffa087d
194 -DIST firefox-90.0.2-my.xpi 531263 BLAKE2B abcc403d73d5fb9ba0f6e8baa8b01a0547dd4e94a809b66bb6a2dd30f2fbd0bd55bd16b6ea6d353140802d415b894e607f4a79a0be4468121c2cf7c9363c9cdd SHA512 11679d0de73764b3efa6578b858394b941d7e45587b8e46adde984b60db349981086855cdb67721b477853e19806efff54c2c2f1cab1ce11f395e6833fbb62e9
195 -DIST firefox-90.0.2-nb-NO.xpi 540211 BLAKE2B e73bfe5862495669d645543576b64b3d66534e3d9bf3b41dfd871dbfa4146bac3ed46a6f58ae369e237d76f9024e7b462c60c2afe0fe91c0d2555bbe92abbf66 SHA512 8b13a9a28c36fe4438c52d85c3948b5cedc6a68fff0e7968a952fc5183b69104df5b9d74b71ca43cf3018cbab184f019b556b30075bcf67cabd04549cfd22fe7
196 -DIST firefox-90.0.2-ne-NP.xpi 488264 BLAKE2B 25f40a5eb34b4aa07d3852f0967cdc37c4cb0dc58524bd5c3cc773d4db4c73bb9ba8969f4e8d70d43282586b479cf09e62af1aa823a77c656968ae824f31e847 SHA512 80ff7b32a58e631b88a46588039774c258d02312d0e2fd98589725b882e481e3ea9b48923a0b9b37dad3c777dccc8395608f20aea6d757d7be1b0f9170033659
197 -DIST firefox-90.0.2-nl.xpi 549132 BLAKE2B 61413733011e4fc81224f223f570027f2ae60b8fdd89acc9ea1bee2940a26c28a4ef18425e12182cec9ca40f7dcc829eb885193a9ea7cb10cf9b10e4c27d62ef SHA512 544abdd3cb7b19076ab96365c63dc521b3658420472d7afd83ea4d199bf9399652bae7a1945dcdc89262902b3060df75984f573cafe69ef2dfdb2d9cd2e32173
198 -DIST firefox-90.0.2-nn-NO.xpi 543785 BLAKE2B 851daaa399a7e15fb795365c3e81ba09e6ffffae19968c18b686e74f92cb7d8fcc84fce0383e791a59ac001790123c00791a5a763ab3e601bfdb7467f5928c47 SHA512 59ca8671c752e5a0d399166f8a4ce52cf20d158358d65810e85498bb00982a90a5fff86382f155d63f2060447d9e9119773bed41f389a88341d3034f10e4cf7a
199 -DIST firefox-90.0.2-oc.xpi 565026 BLAKE2B 63786a9a4c8a11828ca2e00d5eb718d9ed5171f1f5ec8554002d966884d5d2c7cd14ad89286537bf93b1e79255df5f191b9e9a7ba4fe238d6d083092706a4bfa SHA512 2bccaece0b3a0c0e8e3d9bc978c909fadae0d032a8a2e4df9778580cac0c60efb6228534ed8f1629281330e0532b0ded70118e9456995e6d43d9970cf41d4c68
200 -DIST firefox-90.0.2-pa-IN.xpi 612507 BLAKE2B 03d21a09f80ff1b4a7e6f5fcdad46036fb8c91f1eb46d04b7e7ea8bd84888a94e05a3b49004d1cd8b4d2b711287beea6f0c4a3dc2f8cebd772d6f5ccaa896e0f SHA512 da912c4ee934f2d44714ea31c139c1c794949466281a377c7fcfc314c6eac78fd85d5e795b11d8c24a131442c125b80fffc4c173b8e7fb08064db75bd3480cdd
201 -DIST firefox-90.0.2-pl.xpi 568488 BLAKE2B c9056f7a8569d435781e3a17983fbd7889ee2e87acbae27bc79d78cb129c08da9b3d623d746cedb12282f8668fad1f5929050bbb5a1cc066358147d5b74ec4fe SHA512 bcbfe1b6975ec1ae940b08be4f45d7f04f4f30a80536e1cf912fddd6cb899d4aceb470e8dea8424bc0cc36435d75a8e865ba91f04ae87b293f6119e9cbd6f7e8
202 -DIST firefox-90.0.2-pt-BR.xpi 554982 BLAKE2B fcc2d465fd7f5a15ea861e5c1150888a308851b5fe0cb62847a5c6ef83d059ed5c80c1cd5720665525f17d3fad512b7fdbbd82f28a206df2a5224e9e3ff3cc9a SHA512 6d1e85376bfeb12558617f710671c31473707d738d839e78e107e93711b80c975191210dc293f7837795ce8d2e0acfeb9af09796ecf491a701adf932a78b9ab6
203 -DIST firefox-90.0.2-pt-PT.xpi 558862 BLAKE2B acec5024cc929b4e29e624b00db49d108535e2d270967c1b60298badbfb5f424a133da648c995fb00afc828fb03389af9e2a65d3fd57fd7aad038283109996bd SHA512 2fafd35e5c0106f9a3bfe54f032e826a37e6b7cd98941a8ee0255bf56116b1d65bb31fce8f711f8f7d1431d0b97bbb94f53c5ec3910864fbcf6e8e774f70e0cf
204 -DIST firefox-90.0.2-rm.xpi 549899 BLAKE2B 9df12c0b8c193e33ba5822f909e9a1c91594f15baace3bb146b3e69ea93a526a37ff2ae72f65e4acf094ed08ea81b5f7541853f60dd4c819944b081dbcf89c83 SHA512 04858971ce69fd2d219a3d0ba97a5d72a5af88b6725f66aab79a8806a192cd6c6f4f17d0e5804abb937aac921e40a9494cdf41badc5ce6a96ec1d64ddf3d6470
205 -DIST firefox-90.0.2-ro.xpi 548131 BLAKE2B e6a19832c5252abdfb07a74374cf8604d0357e025d9093f9005c7ad252d162a99eb9cea38bb10f3a1554095747b8e7a3f950174f60fa219a9561ba9b861672a2 SHA512 9d65785acac5a8767960744a569aaf4bd9aace691376771415e6de9b6a3f392c70c406cd9837d7c6504931306132c0aa884dca83d785ea6fc66afe8cd7b4df49
206 -DIST firefox-90.0.2-ru.xpi 641994 BLAKE2B 9124781768996090200198864e0b24ca72d10c36e371b9631fc03a3a336a2a2cbd8a227ed12f8d3282c14b06b7a31efaad98f185b65cf29f602d8b958c695395 SHA512 8455deef343028d99810c01b3dcddff85bbcd31307dfd0aa461b0b66b194eea2d915be1abac7902b10bfa18e09bd16880c3b22f3e78a7bc62a7bc580c9e6b89f
207 -DIST firefox-90.0.2-si.xpi 497038 BLAKE2B 1b5bd85f054bdac7d3bad8e64f3a9d8fe2ca2912cf0231ec92213c9ab80f68bcf48109567115a8e6b5ec02ee5bff759a1a3a44496e19045da6871045ee392027 SHA512 6c1712c1f282ce5ff842aa39203f4fee5aa38df79c49f203dab0c3269b2b43c7d1a350da76d435de7b995fed1559784192137bb8b703ab08eea652481142917a
208 -DIST firefox-90.0.2-sk.xpi 578642 BLAKE2B 30fb46e4287edd81e32625926e3b8e510d6f4faa84247e4ce4646078c9e7c407e275a3e35473d530c2c425c351096e867ae1e88422231afb2729287cf52737c5 SHA512 742afc3b57cec29e12f546acbffc50dc34259655b934b7edeb0a431fad9f69a76891f4a3d504bd68325bc11af8eb090931f9c681041f26b4dafd330388b73dc9
209 -DIST firefox-90.0.2-sl.xpi 548456 BLAKE2B 7c47551255551b2fcab86fc8a0a75d7b3a86f1ddd17ca0dce53945b18290191f221b3230bfd8063573e55f42be9f6204583db1d2c960e0c3cc4db5aa569594d4 SHA512 85391db88fb1b87836a9509abd8b635562280b79ec6a501b7fe0a5da685028e5331d77168307a3cf395dd314cfeb61bc68405ae46ae70e6a6d724d6f46a1c73a
210 -DIST firefox-90.0.2-son.xpi 428012 BLAKE2B 0c1d466b53f148b315e4b4e1a621e4b0dac3f8ed789514a335940f8d1a48d5be9df072e7baa3b6c0ee79446834f2606ae4420cf8121c5423cb6b5a9467eb12ca SHA512 cbd2db587f7b2e94bb888d0649754c2a8f9b423f7ad88577cb629e5b4ea2a7ad203ce755003a3ccb2a6551910617bd4f62c8bef84775873cec7410f39c3bd1e2
211 -DIST firefox-90.0.2-sq.xpi 568627 BLAKE2B cd6dab95c8ae6f597ac62ca649e8037624a1c91768587d574eb5762bde10ef58e6c23d8ce5da9d5731a009c65d9fc901f602db435b8986c2b9f9bd8ce53d0d0b SHA512 66e7251f67f43340a8f9df2a45748032e8b859057993eb834cafc663146b594e25d54af81dcbdcf402b05a84512198f3f50205c73a45da9f4aab738aa03e08f8
212 -DIST firefox-90.0.2-sr.xpi 603101 BLAKE2B ef378fac2d8a5ba7df6753620a4bb0b28c9cd53861f4f15001707fd1517942c1e40e8911d10e830808490abcd131f9d7c36f8636d4f647a9af1750be0b192e58 SHA512 e7c5767d77ef0f705aa1d1c567bed89fc2b4da24d669faba9d60beb0bd12d9f8b45ebe0b0027d84e8194fa1000e63bd10a419b649e8e3c47eb045b4d1d220f40
213 -DIST firefox-90.0.2-sv-SE.xpi 552226 BLAKE2B 5114b1443f8ed57b05ad9bab185ae3fd4831f6c0bc434401721cc11bb5fc11e5e42a09b8da76d8f2a280dadfd5af6bfdd18081b43c3c17915dee34d1e506e102 SHA512 6986de8362530f0db5903d277f70188ff7e7e53e41c44c1f01ceac640b53262dd8bf92c9c967d8e33ce7c31cb39d9089c7d493ea6c28a9907c1ba67795d2607a
214 -DIST firefox-90.0.2-szl.xpi 525937 BLAKE2B a5c7eb4385823339d56ada2771a8cf130c8c29ccf7d60a65f0e88a7e1ede5413b663c6429efb92770ffbeb55f271f6df6b09b13c158332bddbfcd48b01ac2808 SHA512 6e0b0b0d20c19db95699156397d71bf5719c9f92b44864942bcbd5f1b6226f57998d92dcf8817f8030c09227dfed1780ad5671b4edff40e7270c7d3ce2c4e769
215 -DIST firefox-90.0.2-ta.xpi 526631 BLAKE2B d4b8bbf41992fbbaba840bfb19d62801a8b6d3921fc5c92379ce5baad6d5a45f7b730250cad9e90ee41220b7fc7ab3f360c0aa5b609cad2660965e69065ab6b3 SHA512 d88eb96df7bff317df242a8eec99140eae0eb121e1ed6ffa9242a9b540064666c0db9af36a4fa729e23bfd8fab9abbd32a2c5c3ff85b6ad2723be8da6ccfa956
216 -DIST firefox-90.0.2-te.xpi 568744 BLAKE2B 401da427b76f0c455aa880ef64721a8bc8d3ad25093cd67b48d4d37a65bef7aa6c02db37c94bbd7190ad036a49255351756f12f7c7bfb3894bdd8566cd4b63a5 SHA512 4388b917725a32522c0c50e72a4ff2e96eb61a4514bc6311adf8b99f386691720c78168007661790698d1aa14bdda9e28e0a24d35995460ad0f3ba642e8a20e8
217 -DIST firefox-90.0.2-th.xpi 621169 BLAKE2B 20bc114e791056e866ca87fa717270afec022ece33cf3568f445f460c690e5d98aaeb409744298d94b17b2655f6ea39165c0b4d2de7b1b87d94691e832f43b5e SHA512 b775f9b6235dd154a7f26ff194ea6de858c5c8d98698afe9eb2173e3ff388726572583c9f4b3fc4c762e244751c623151baaf0effd8a12056ecde7236e3ce0c7
218 -DIST firefox-90.0.2-tl.xpi 533288 BLAKE2B 9d2b4fe2251c08621b0fccc7492d8dd9879a80cccf64e7096e97e3125f5dbc06ea82e57fa52ef975c2da28d4226bd8a3cf77860140b3f5eb0055b476326701f7 SHA512 eb47c4a62a2b51131d0da056ac6ade774f59e8610fced36fad3cb64fa661c1eafa8e6fa8e6b53508ebc6a190cb45c68e17485310c215b96af2938a588452e57e
219 -DIST firefox-90.0.2-tr.xpi 564703 BLAKE2B f70afbf4ffb27efa5ed52cd102449a9a853afbe16271b431739e456f81a5603ba29b8faf8de16978c0f9dc41d554c2b4f5cbf7c74e454e8bed1d46639babed7e SHA512 8242f1173f9e3f3c596591bb6d14801d72870123619148087fca33e5ac7d74b52850c5ba772727a2c831009d36d975c0f3826bcc01846042f21531b0f7ddc8e4
220 -DIST firefox-90.0.2-trs.xpi 506694 BLAKE2B 00fb05e468dfa0e3c1ba6e572189be68118a45e17d9a5b929821b0bf063bbf114935f9ffb2fa12ff13ab3e0050de62f6c893b324d29df8922096bbe1f609042c SHA512 f174dcadfbf38d413040543bff026ff940448fb39337379cbd15c4254b12115329c682618d6d62850c62ae0b9607a83bf5182b0b16ddeeb6109605ea10fd277d
221 -DIST firefox-90.0.2-uk.xpi 635684 BLAKE2B 79f8a22184a62e25d52219fb662d8bab2e6844579b593d56ccf9036156e52111ee28219b1d6d25c8b959bba80104b560ad4679083a9a048284b780cd7e262859 SHA512 9289e74724069d8e3a881d5694a394da908b1c781df37a9bb163249a9730e157f34df91c290a6c2019980934b386da5e7037a3471117b41b08f3bd7c0e53914c
222 -DIST firefox-90.0.2-ur.xpi 577991 BLAKE2B 4f0cabc51071c71a1b0c88de4b699f16940136240a5d8a9f273434c4d56d69eddb4b04fbf1420bbebc85c0f00df031c15e4b21b66f19342b02e9348e0ecf3ec5 SHA512 80cab1941a57798914be843899e7c1164c28df0f293ec70efa00536221c3cb49a72ce327595085747367220bf399f681f1066018c7530b14bb42cc6fd0ce340c
223 -DIST firefox-90.0.2-uz.xpi 483022 BLAKE2B a125d2b044afff77a72e426ac1554465907a306139c1b602502d2ca77c03eb9768bbc3f90c3c2cc445d93d57fda97d164209a235e92bb7b606e4c6c9e5746ca0 SHA512 b799b862fb047ef0c48b351c8a7b42bf372dc6785beceb977ff4aac6933e3958f972706af77a74464a105d10a6ffba8be3cac5d9e1813575e04852af2800845c
224 -DIST firefox-90.0.2-vi.xpi 586903 BLAKE2B f1b143163e443d76a213e7c4aa57a5375adf809f9a8d2c246d036be9d67ab7678e1eaddf27a0c386935327bc44e4e21df1716c0f3dc2ea24a50b1077e31dcbc7 SHA512 3bb4186633e2b353266ac17fbd5277c4befe544e966d3d2d7312743966ee1f5407404f94542f25a3242521616a744108703d115a761a849832c9b0697b0bc406
225 -DIST firefox-90.0.2-xh.xpi 430182 BLAKE2B d849e34655c8b50abb2ce4d2197cdf8761b27129fe8fedfdaef04221ecd0300ac8a8ae998b07a39d21bf3a3187693e818846c92da0b5e7e3eeda522e536f86e9 SHA512 5bd4f80060e5b75f56b3a02489717f58bc39a33785c08bf3e308131f690437ab072860e3cc9cacc00eaa0f58da9cdf02491d75b31909f1d8f8423c1378d60ac6
226 -DIST firefox-90.0.2-zh-CN.xpi 588311 BLAKE2B 6656456291738d7b7651e14558a288eec053c1815fec33826e6db4c36058007d9131fb2c2847fda57f8ac75d8b5da9e7c0334db6c9cda0043c8bcb2a84db92c1 SHA512 6ee44936371e07a21903565bdacffb593a4a4fd64413bdc1f6998cb406afa11d934eea20e5ad5117468750d3eca53e80aa6afd9ece1c63ad4eae59a459a3b0c5
227 -DIST firefox-90.0.2-zh-TW.xpi 588723 BLAKE2B 295e5ebb3f810f1ab8b66f301ee5fcd67d147cc640daabbb12e481baf835a439992fc5e1d1195bcd8b28e91336281b2e94d207d77261ec1297c784fdc3fba5eb SHA512 a6b5747fc3986357f13db401dd93763f370e547e3fae61330108debd981fbc630f6af8003d6146e73cdcc948e4b79fc00614e6a257358155b3cfe0176d2e55de
228 -DIST firefox-90.0.2.source.tar.xz 380670372 BLAKE2B 782e548663d3538d834feeea54c9fa54ff5580472b967bb60be331e591b782fff2a6877f2e8db29511ac4b4b3dff847f30dc8f0a8333ece3d4156d6ac10a723d SHA512 4fda0b1e666fb0b1d846708fad2b48a5b53d48e7fc2a5da1f234b5b839c55265b41f6509e6b506d5e8a7455f816dfa5ab538589bc9e83b7e3846f0f72210513e
229 -DIST firefox-91-patches-01.tar.xz 22352 BLAKE2B 2761467fed0a288f5ed58a2806eb73a00ae91f35d62284b48adf39898603a1dade82f7fc9a98a6154ee580fa7b010dc4bc2e656e6505bf9e3682c23698d02829 SHA512 1149e413af3fea1756754fe7ce6a273b00f07918074e16576d25113408e9c5a99cebb7e3a5195ff8dda343b8249e90b2778186d103a88f117ca7a3ac50ffa968
230 DIST firefox-91-patches-02.tar.xz 22332 BLAKE2B d323054441c9383ccc88b0522cd2a8732df19af670aab6e57689a69f299ed97fe8cfeda0aff8dc7353d591705ce2c42957b21da1f449a58145d9343474d35f2d SHA512 f70665c4dcf19b67ee7305fc3d683c03817e7089188a5033a6fe9ee32074820876b52e0bd32f585e1e5cb14e2fa4bcd1cf9928dab6f74f6753b4bf18919537c5
231 DIST firefox-91-patches-03.tar.xz 22948 BLAKE2B b65585a1c84000872ce675cd531033522cd7ec7e3d3c4bb660269709f02944e8d88cc76c3b9b0059cf3ca85a3caad22168cf607aa1f4f2426eb0dd161b5ea249 SHA512 e970f8fda3257b871f3d8f1e185724ebdf5b4d91bfba6061a777242b7aee5a613fa4450af4f758c0f440d09483e65ca48ae79c91e040ba9c5e63d32d329a7187
232 -DIST firefox-91.0-ach.xpi 465289 BLAKE2B 5caa3a3103616976d61880b893e48c5d5e425b409702b8cbd327a1111e1e359fa0341894500351fe24cc73deb8e7228b009e36332642c12d3afa92f9bc79c76c SHA512 42ca4fa331f7a53171717831bc3309782f7cd91ff2a91a7d8169b04efa8896b200cb2937e4365f0413f74cac71c7c5a41085d4716beb9bf39b70f3f1993457c1
233 -DIST firefox-91.0-af.xpi 433157 BLAKE2B 054cf19dbe8bead4d2a88ad5e8a2c6ad21569af45a10be1dddf7d44b179017fcb5575fe26063740bdc59b6b411e5decf2658bdc266f6bcb642207abf543bd9e5 SHA512 a7d07c25cee103086992e106f1448d6a5f7b614755045e6cc8d7e165a289bc7675034dc85be171a3677739fb9d88c38b5f5cdec58f120a129a022369185f8492
234 -DIST firefox-91.0-an.xpi 511816 BLAKE2B 4ded8e0e43194412cd7641af85f238165a6b5a3d0d215ba913665efec8d172f940207320c75b4d38243d9a6a23d9ed9fbf01dd7ca78daf81dd7ebb480d34b396 SHA512 4edaa0cb4f24b0bf20be96f95fba5d9cacf29d47cd9f93b95c8a4314bae50901bdd4031277ac596a2a2b5077b52faccd21a73c4db1481c3501671f5c65c13922
235 -DIST firefox-91.0-ar.xpi 573966 BLAKE2B 0dca5dced622775462cd0a1995c2c533c0393b93755e3719780a90517d1936e044abef2bc9ae80896fad5db4333aca9649f6e0f7cdb2ee3fd8452e1e57629a4e SHA512 a8fe66283f9817e628443cacec970d817e169ec903e6cab8c360d65adaaefa86f5e511ca4336e02655c27d09f11af9bf02da0fd75c30b8f62ceefce807881aca
236 -DIST firefox-91.0-ast.xpi 502946 BLAKE2B 951da964221af2f004595b2ae73cea80dbd9e7941f9e3f1705c32e30eafcfd7a71d75531defe1ac04d2ae6e06f1b725dccdd85cb7b3f434fc1b8e6c02b6f1d49 SHA512 170a7f17a70671e7408454536549bb6075076edf322a1b269c2f63b89e52d8734c193aa3a5d853cbec7af45b4c944a298f55c37fa653fcb859411b89f4dfbf07
237 -DIST firefox-91.0-az.xpi 500890 BLAKE2B 635160c21c321ff882528882af81518a1c3201aa255b4099f7f388bd690160bec68706c9a533bd1e68b77b6ebc6c5898d09c2d1fb5d79aaa0ffeca43f8627714 SHA512 9fc084bb22205cce52c7e900729a781f516daa504a089f454e026c2f1e4bab57aaf66e467a2398a37bcd5b45c4eb17cb17073599ca2031a6fbd02b5139715f7f
238 -DIST firefox-91.0-be.xpi 630156 BLAKE2B 8134ec1b2f0a953c370f80f50d61141c8fda8f53cfadc717c6de7a15328952ff9c0d94b6a0b39497ead48892c24c34d615a085a3ac6c4488b6a278fd8af5db52 SHA512 78edc9ad3dba1938058ead00d24ea5c0a7fe566e42e42fdcb2c44dcc4dd05175b6660b375515e2261b9cd73f271b630db479b7dafa0566eaab083bfe4145da5b
239 -DIST firefox-91.0-bg.xpi 585083 BLAKE2B 4f9c2945e2d06d12d7ea87af65a3a17012f74bc1c2dcab36abff75cff295a7d1497a624d93fd17b5c8c94a776d6e0d47d9b0d66e7b6430ccfd285cd01ec96de8 SHA512 bef93bc67062febfbbcfe8e311de1f2f469a035b9a954d2cdd7af1c3c974fa49862636738b787c6ae75af0b300fc3318e31977fa080ffa44ae8f76e24c2b0108
240 -DIST firefox-91.0-bn.xpi 576492 BLAKE2B 5b5494475cc9b83c5648fcb947129e4d034783f5408449b4c24ea3800019fbe9351b67540783ed6e6a775059cebac645ae43de1e60a42917af2a7d3be631c3c1 SHA512 8a072652885a163ec0d52859222dc517d9c9781326e5c66749ed41cc53989a53924b55ef7c868f9181d603c5f99b342c8f88acd7fb8fcbdd50698fff85d78aef
241 -DIST firefox-91.0-br.xpi 534798 BLAKE2B ff332548e1d18b8542bbbc9b934b3c4bda2e98332781c2f2d7b340f2680bddf83267e91235b63b3f59d07865dc6c15fe07f17412ebd313ec1c9b4bf6750e2968 SHA512 cabfd979e9753c111af45cab45c588f760a948432c7ee0dd4b51f39084f86da9925494441ac8e28bb5983472ff594f1f00349a5ac3aa917a7cf125c3df0d04c4
242 -DIST firefox-91.0-bs.xpi 473109 BLAKE2B 3511606332aec32aba83e127fc720445cf93ccfe484131df1effed727daadddde779a987398d18f477745f07998c6cb81532c10c0853febba6b6af6ab55c5b6e SHA512 cef96b038b392241938d3c1b55ef28a589e900d4ce3f08b62ec16e0aa5944d7a5e91d10424707d48a65ccaf767d46da9945462d65432376b10582ae5b54c85ea
243 -DIST firefox-91.0-ca-valencia.xpi 543231 BLAKE2B d02783b71d9a22074cf2483c916220c73dc2a7c0d0488230dc034789a0564128cd91647922e1ce0486c57b27ac46f5d519b4718c8a78f3ef31b05558fa9d9377 SHA512 c0ba6960dcfb2242a1f37b5de636a2d4e503649db6660908b80ad9efce8e903acb46c59a7723e72a7f8656a0c443a8225166aff2a1ecc5fee56fcdfd92b31a59
244 -DIST firefox-91.0-ca.xpi 541002 BLAKE2B b6ff41c7f0a665bdc0ec5a31aa4bacb228967fd05ea3fe25afc3cca8b65be30bc3b9162102a881d897a9c72638ba73730a10bc119b0e4eb4eab04d4ddc033db4 SHA512 0e457a1e7740ecad698cdc3941aeef593e5418def7f75e56fb5ebd8a6159bcebbe573a32aa2058b367b1f2435dd7886f3440a041b2434b5da100acfb1a29b1f8
245 -DIST firefox-91.0-cak.xpi 568027 BLAKE2B 798700b46c0e9249d1a958b0d5cf112b9b59dbfa1d6d2e50c195ed158f7f1a8fa674b13407f43bfdaffc28955fdd621072802362ded7519a3c80a84a3f0bae20 SHA512 0d31367c46905f39e1ffe53833f4b23d6c4f31b6f0b6024a585573de234234a67f0b8ebdac47ea53e83bec5f36f82cf3330ee773903d00fead6b51b0990a55ff
246 -DIST firefox-91.0-cs.xpi 571502 BLAKE2B 9899c0b7694c4ecc90f791f7c1a4ebc5f5a39fd9ceaf2df537d00142cbd631225b7727a1b162939455f03c9fa7b2b815105cd57eb7afa9a95fbbfebc8e10726e SHA512 c0c118d39c2c52b674f1aff66c412cc9b4dfe44c93c46a0920e8dbb46458111c2bec977114438e505e157f38b8d5776af544542ef8eae589cfd0ed666e9fc3e8
247 -DIST firefox-91.0-cy.xpi 548299 BLAKE2B b7f2669ae8ddafbde2a47b41043e0ff003700475b2e52f58a6a7ff6287f76f8b369d420e814e383d16acec522883d90b35c1f283b7fa615337030eda2326f53c SHA512 b5cac20a52cce8c92d17982c2836ad6d13e7df1148d6d73ea9c89a8e59a734c24ee8748570badd23bbfdbaf1087a1f407305d7673cad19ab39f6e912a880d0a4
248 -DIST firefox-91.0-da.xpi 540526 BLAKE2B f636bfab26c458d19cf40dd923543bd6180ff41b0c2ec27d124cdb91c686c6def368f12622f226c6f452636a39ef1e61d767146ee4dab7e5c5239954b0da9d3c SHA512 23506c3ebaec29486543050bcbb4946b03f2a27b9d951c2702c785e5ad6bde34f16a4b676043a51d8addfb384d4c1c8fbccd7d49148627687fa27cb24551b197
249 -DIST firefox-91.0-de.xpi 560086 BLAKE2B ad0674c865a939b20272b919e941586806e6015dbfed780c75e39fdeff42e191b46cd245d433d3f4a76fb7472a2a10562747d15245b6c2d6c98cd0e3ab8b5b29 SHA512 13369fe4af14708d408f577980a98be9edba511e1fd18e5a5cb6b33a9ecb4837915853d76297b16276031ae24292510e83010bbc4c74706018c782d564e69991
250 -DIST firefox-91.0-dsb.xpi 572864 BLAKE2B 894cbca3eac24e94b3f0853ef274f4b7178d80825fb64db87b9be507a2ec195799e979a29be39a7a237ad953b779c0fb49981fbb3afc4359fe75e5ec5a0f1922 SHA512 d7d52841790252f97fb0f55e444d4e2d5dcb939497daebb7584444d4d69e606ab36074e022578579b125402a8a40146f0cbcf608e4ddb23860c70ecb1bdd8745
251 -DIST firefox-91.0-el.xpi 646570 BLAKE2B c293b47413c863655717c7534ca4d35f8ce8a10cedb9f7c62758303510710fbac2572baf700091f3b840ffe3f15592dae5b99ebbebc7afe84c3e85a50943fd35 SHA512 924e852a974cd095368413b6e70ff6fd77b9db4e8588cd6e3eb79224b16f2ac9d7bc67f8c81fc39b7b3fa000d29a5916f1e0623f57a01bb5dae8473b62e182d3
252 -DIST firefox-91.0-en-CA.xpi 515718 BLAKE2B cd987596e082ec2e7fb919b0891fde74e6e911e159e7aaecbd0c28da453e53fa0a5e224b1f43cc08e66c0babfd85778b69d76b914a6d3e97adb6ad5e74750658 SHA512 c7da5c36e8ff434db4065d2d8173c4cb6d367f72b28592d20919d30d361a4ec5eab8cb11da4ed214dba1daf820debeae99825f4ed958a4b674e94de019084307
253 -DIST firefox-91.0-en-GB.xpi 515983 BLAKE2B 74b6ba2a8e506bdad24c39c5a4eda6d146dae134f6acf76851d852a75537a667ca0312490ce2b5b113f66bb83921451518bdc8d85c682100454784c4203474ac SHA512 4bdbeec68aecf02a16963bffe80f2b7f63ff59fe3e9a12fd1ed18a9437447507ee5d8c54f53313f41dcc056cd66fe1d3a1a4091d631e45b960c1a2d141c2edfe
254 -DIST firefox-91.0-eo.xpi 542040 BLAKE2B 6706e2a3ac2524b4ca1f9616e28569e05ef6efcd0e88e7029da5206b1842593f206e9fb6202caab3ec4aba145ebf8152dcf0b33120d037fd4e1c95e7ae8199cb SHA512 ba5bd1c10bfc1846feced56e587bcfda9c2002f481b8b79bec1a5a501833d8f5fb2369701227da8e1b4f6518713bc7865c2b11bc62c97494c8a57e721cb3bf27
255 -DIST firefox-91.0-es-AR.xpi 553515 BLAKE2B f0da3acb9e615d76a6fdbdce625ba5bee2b346e2cfe827aef0d0e2a961be13019759adca530bc81ca8a9afe22083f3aa0a43c309f37869c7fee05a72f75edbc1 SHA512 930323c03bb7b610d1cfba677b6d23428ba675e6a1fa5365ea6bfac6a975e0f84537b07b5240628eb976a074738bb45abb46ed4ce9595159acc32fdf789fcd58
256 -DIST firefox-91.0-es-CL.xpi 552538 BLAKE2B cc9b6f067ab109423552477f93ffc219f0fc9bc45ed39ab6b4a03c997c47dec79dcf4e8f0fbc04dd961ec6c1159e099bd520a5d0f07f256ae806e6e5a4e53672 SHA512 99b42b5ec117f17b5a06b20ae4880f902dbd42fe05b5da6fd6ef734ee6720a10a9cd0993c4742e7bb6a03fb89d5695e4c0b35ec3375f5a87a952befc998a70c3
257 -DIST firefox-91.0-es-ES.xpi 542520 BLAKE2B 6037ac0d852618fb67ce12435bb789c31eb9565114f2c3f07395ab44f530aac2f5aab9c46b6fd499c10320012cd62c0299bd529181bf9432fcba6c3c1ed79e0d SHA512 8fd364d3ca28b0f7feddab8fac78c32c36868d3bfc05a8f986bf5c0c46dfc3e32435a1e129740014cd6af19717f14fdef32ba3688ccf79abd3b5fb3bda5f5d50
258 -DIST firefox-91.0-es-MX.xpi 556671 BLAKE2B 23950c4d58151a3c382dc7d2b5413cf584a25a27cce19d3cd827e8394742ef1f074a791dee5431ae2ec214cf0893ce62fe003e1aaf756989c6bdcf44ae0dc4ca SHA512 12584dcc7c7ef60ea27f0cc30b2b80fe86c29c54af36d05706cbacda15fa73e4b79ea5d3d39eab3b89a98eaf9d2d123505f73c5210c6014851d0e3706558c69f
259 -DIST firefox-91.0-et.xpi 494137 BLAKE2B b28f36710c19f400d2a42f3ab7fbcfad794a31a7dc2aa2ff60eab16f2664f31501145a65427900e0b3f2bef4a40f5ec62da8bd49f79325e7586e9788fa318caa SHA512 75e41f9accf57c8ee361df2391b49d3ff43159ccbfec48c9e67b9dae24012c7be78c525246b71ea78e7751f458746933f9212db7761e804556f9488c8c2e7531
260 -DIST firefox-91.0-eu.xpi 539054 BLAKE2B d2e88f54c308159ebc6d3da8256562b34d5b5bec6db0fc65c04a296f59bf388d5e6d82e798ac002c395114f17a0ad67142866e7cf1211e3eaef7a310de7e7ec3 SHA512 f35028251321707f2b4033f27fb4981bdf6f8ffed7ba3c616aae994c8767cb5681362b65df359133528223ef2e444f303cc3d0bf794a1d450a70a5ceb12db786
261 -DIST firefox-91.0-fa.xpi 561641 BLAKE2B acd8b361e2d2a4b3e18dfe7b997be1cfcdc30384012b370118e6684cbc13c0d7a4f30d7f13d370c1d3f235bfe701e830e8ce7bcffcad4fcb2ab4c513dbf3a27c SHA512 fd397bd20adc1bd89cf6ffa48186176e911a63258db7de1515de2af0f1b6a69d252a3e152c421a3ea7686a33f65e1a1e64bc5d33ba823453cd64037cee390e4c
262 -DIST firefox-91.0-ff.xpi 485698 BLAKE2B e4e30306a77a2c9d6540deab07f375b38c143d6c71678f032aed2c20967474eb9d822dbd63d128d4689329e6d3257d196f3165c239da111372321a1b5bc1b0f8 SHA512 9c4641708c37641311f11a93412d49dfb53809fbe349fb2fed6e4d05fe29734af1d6004f18344b40cdc3d3f72ea8106d6cb33029df38a75c9cc8d11d03d8069b
263 -DIST firefox-91.0-fi.xpi 539818 BLAKE2B 3a6ccea3fef665e9ccf1e58e23e7cc737499a0edf736d22f07b639f9b9c52478c18390fe7a8d4babbdc8fc06c613ea3c9d2ed10a84c63fdd1f4d333272816bf0 SHA512 043dc0af8f994de82f2ee6dd6ea944412ae0b30b2e2a1c22a5d78d065a406b35cf4d25a165996ee102b3017c9d2b310dd5c535ed5779237b70cc4d1a1885fc15
264 -DIST firefox-91.0-fr.xpi 564065 BLAKE2B 81f89f497651c117857e41992c37991128448a399df17add0ca93e225f1a2d1703e751cbad855da5110d2332b968403e3375e28e58452b3dbf2655214b6cc1c4 SHA512 e9b619f3a1f657d4bb05eae658d597243a5d0579db1c524637a16346f8c574d279484a79b23c691a2c04ba0b864cad64a055e13790b21fe9095a2e7e85d8bed6
265 -DIST firefox-91.0-fy-NL.xpi 549216 BLAKE2B 44dbcb8405a419a1a7826fb834dd7cdd2ebb75c2c979fccd978e4a8822714ea8b092834effd7a2801d8320934d5a64f3defa06560a03f658db89ca0f1dcb179f SHA512 543b769c0fcce6fb08892197e8e071bd34a6090a6909d02d1cd65d1d7245e8d307b534696985a3751efaf30b85b217aa2a6b23b3edcfb3d062afe232e7e75122
266 -DIST firefox-91.0-ga-IE.xpi 470708 BLAKE2B 33e16c7215da016ba38f650612758b53a4e90d441faf424d224501bcdbb27f57f69cc56dfba27da4015b364870fc7439718ea4da7b3ade860d18db8a06850651 SHA512 12ee445cf04d63206c00c472de89e0fcd289619e0e1267d43a552e831c17c6201f734f96dd179fc1ef196f3bc2029233bcab5f649f4f403bb27ac34dce8d30f2
267 -DIST firefox-91.0-gd.xpi 545681 BLAKE2B 70a801a71dbc71ba53a41a8d3f47ce053b67f076ccff55abcddcb00ea8fff6f5002c43542a1e5d1daa719605a542bce288bcaf3ae92bd9244c8de6efdf9b422c SHA512 b8ebbb02f6d253c763e86237c65acfdcd855678a195c6ab5160d89e696f69f3668048e082ca0002a509bb690eb9d4695195965dc734ff4377d793b615fa1710f
268 -DIST firefox-91.0-gl.xpi 548395 BLAKE2B 93b842d01c577fdfd551c9fa4ff0d4b4c2985fbe8bc07ff014b37e34845ebfdd32d1163149e1617e91432d5d5fc1d8a5096584cba16f2baaab7d0d77b02f248f SHA512 ff0f89c571da15a253ca312bf37073b47689c60b96c4f78742a7c7b2f5e580c33fb666dd93839e5990f1d9cc49a8ef58ac94d3b996b71374f5795548270b7632
269 -DIST firefox-91.0-gn.xpi 565280 BLAKE2B a39b3d17003e6f1217b2b251b21e49b91808d1c68b8632c035bc2ce6616b81219a90f539a95e148d59181a2ce40ac1564853b7eb24e6a24154e4eefe7dc9208f SHA512 63c0f6a80f0134c6541b684e24574684cad8d365a8fe4d30b46996ed2781fca9e24796def22f4a8bdf72360e080c2640c34a2bb1f02b55f802a6817a9c41ba7f
270 -DIST firefox-91.0-gu-IN.xpi 544528 BLAKE2B 73ce4f8b615affaf33ecf45b798d67f00aa034a467dd2d5edba1e5d97ff6dfe40de5bc13cfe6d6d1972704566459d71e3e789ce6237825c637477ca531505374 SHA512 c378380aba51d2c39b2fb074d6e5e810f7d20a5c4eccde237d880f9953dfa051e71808c9243b52adb4df1a8f80a3d35bfe96666d9822786c51d6113a25791f61
271 -DIST firefox-91.0-he.xpi 563141 BLAKE2B fcf2159b718fab7126a2b8cfe09cb0ba361f2138d872e3a55e81b10e30bf3349eb2988d3716569e4243bc7c0cfcbbfcef89ce60cbada0eec855a9a4e80cdf77f SHA512 9cf94c33e7fe9662237c750117601a868f6d4a65c9d7af8b67e5e03fa308c515e9b8be9fabaccbb9177c2cd55a08c1f1b94a60ef8556cac1287cab8486f3019a
272 -DIST firefox-91.0-hi-IN.xpi 575683 BLAKE2B 3dbca885603431e569d3e2e6db32a43da8642f832b0fcffe32928abacdc2af583d4c67095242fa7c67d912a8d53e76254c70496e51537acae7cf95be24f0205b SHA512 7e237c94a3ddb8be408a02e23251e9ed913686a6b649fbfa78fdeef3f7383e684e8636a71a61a7d5cdabd6cdfd4fdce2594ac57a552870ec51a42062bfe5bd44
273 -DIST firefox-91.0-hr.xpi 544093 BLAKE2B f5eda58802fed3f6b86f49d3a150df4cd8103cafd14b686435fcad064fea87cf98b70400bac75262beecafd4efe556bd1c3de72e5199212fe6e51b0ac72a1722 SHA512 42689ceb500dd877c861c0232664a4891c72eb000ecabfc7c1fcddad200913d5c70ddce30f2a1d17b0117e9ad75e4b12eb67d886c1ec21c81429eff6e52e53a6
274 -DIST firefox-91.0-hsb.xpi 568939 BLAKE2B c0efffd5ede68d6f77d92fe77f9efae9e95f8dfeaf7c178b71676d390ffd0f8c6f0f8d84a39abf5fe469b6452b578b81208ffff778b01ba56a90fedcebcc604b SHA512 8cbfecabdfc073f181a646cb63942b3933c555a553d6ff439bd7e7a32fca76495c999976e894074acbd3d1453a0e1360583813fccc65ed1c10332f77422720e3
275 -DIST firefox-91.0-hu.xpi 572762 BLAKE2B 527214a323d73161090256b10075ee4fcb70e23b8139c9199ef61fab56a38138b7ce905c1f02170aeeafc104d8de4a509a7bca78c3ea7be8e9cc20b4bcf8d565 SHA512 e12fc1a9def1b2fd2eef35f691b1e0b577d3116b08c45f2178b6b3be9ac6de5e60381f825e915cd4f88a686c39ff5b8b71710ecf433eed2a525aee0679b39132
276 -DIST firefox-91.0-hy-AM.xpi 599015 BLAKE2B 9483aaebb1da4e0f266948d03c6e37a3f046f8c4f983e412353bf5ee5eeeabce1e6600a1656f88375290b1bff218b3aca697f5b1b79c8fa45ea86f50f6cabac3 SHA512 a11ebb2f338352aca351b789a835db0222cbfeee6a053d21c66fc0203aa17a8280c9a7ab4b9519101259526e32f276305ce1364c3c40a49b1bdde10c96f22166
277 -DIST firefox-91.0-ia.xpi 538518 BLAKE2B abbdbc9dc6e443ddc5b13dd391a789641949a1ae366021ef26e8fd461bc11e8b49ea22ac5bf1658fb80792589f0ee6084e64cacc231678cef2cb36b5e83c4d2c SHA512 b06a9dbf2a7e3b23df9255d5a2760164e27494cf2c70d2b37747c25e7e9ae9ba9ecc961d290209c1cb9be0695b0785ca1f41a07568b24857d996ab430af1360c
278 -DIST firefox-91.0-id.xpi 533876 BLAKE2B b176f16b6dbbc9ae26ae172f5f6bbeaf8347964aa21da33916022e108b04daa0cc8701b7f3488c5074f59d47d4d87d397192a4fc75559c37462f7df580a24ba5 SHA512 a50be6a95d968befa539c568ed8c62fa6e96b8795faf8593afe24b54a4ccaf75ef71e283479793d2ca83892959f7145fb0fdff4043890b95c92ce74c2fa1885b
279 -DIST firefox-91.0-is.xpi 481332 BLAKE2B 4f20dcbf6673fbd03d91f384f36f6b6de5bf3f374d6121451917845cd4fb69394e88cda98ef83f9915954582f460bae6e0c0a9ff5549d22c6dbad02b02c4083d SHA512 6dc16097867d9d9744f1ce90e8df62c70f8d314299811caf1149758468ae274539754a1ac14f1a8ebaf08c801901f42589e61307959cd2d480a18e50069eed26
280 -DIST firefox-91.0-it.xpi 467045 BLAKE2B 475b1884e036d4606d9e4ea41dea6e8163f6e343469b83060b182026235b8ed2aa7295388621828653752c810787789d4c16fc15518507f4b54a0790526e2e59 SHA512 480500cab9415ec3f851e325d04c8e9fd90d9e19b84c04f0f66f2e12361151c70ea2fdf2ac7bbf0f219d6a2a9c25776b07f201cde624c9cf44811aa1fe65613f
281 -DIST firefox-91.0-ja.xpi 599317 BLAKE2B ef486f48c54e6d0f4cef51c8202dfc73072c7b860cdfbba785b25443c6737c71a73335fbb1baa516937c05a3b33098414c4adcdedd529226149466d9e9494b64 SHA512 6e3d9cb272764b53a62b7dff03cc944623be38d0fdc9b4aca91992d314e7befeddea42ab59d4aaf8a6a536531a027ade5e185c7e0557bbc955841cc257cc7fcf
282 -DIST firefox-91.0-ka.xpi 600143 BLAKE2B 7d0477d2aa144231546d917f31777a657a4c973acf3bccd9cc743394c0ca86634df8f4fa2bfb6a5fdc22cf9f67c95e44999df801cb2284d3f266872149bd7a43 SHA512 9a952a328f0cfe6b994ba293974fd3542cef2286dd4adf441e09c49ca236b4549785bea97890608d2cbcce32c217d6d6a81197d931d0e676b4c1023a5996fb75
283 -DIST firefox-91.0-kab.xpi 557817 BLAKE2B 1dd2a6d9d471a0fed234b7912e3266b4890d1954a4d9c0c39e7db28d949e0d0d3aaadde70aa4f74603f686735b738e1f31c0c05d2b764aa58693e1f4091cf756 SHA512 361d2082f6b815b02a61257161efd3ffdec63e259ac10f60f18ea5621112fbd7285434f1d8cfcce4859db6ce9c9ab78b3d2b28dc25ab144c49d5c4962781a027
284 -DIST firefox-91.0-kk.xpi 614347 BLAKE2B fa493a734850f1d15de1cca43b3f3ac219f03df23a349c52637646b37205e4d3549323b72094fb14fa3153f4a997eeb2d65e667271bedbe0ba58d7150a010948 SHA512 960284bd5cd82b0335eeb4c59acec2ed1cf3e2239d60329c746a99350f2a0748def8cfb6677cf6cd84fa3d96afafeddd7cd7c9e3eea1eb3017a0260af68472fd
285 -DIST firefox-91.0-km.xpi 544984 BLAKE2B 16b1f51f6815ed86ba2be8306e3c4701ac34170d9c9a4b44006517f9c143b47d051578f01788976ab9e0e98555b66cbbf94964c32542d0d26fe022ce5c59f25f SHA512 daf94d05f4557fa0a4c0592c047660d44a2570737d346e0b837913b2c23394098b940b8d41a6c50a49c20855cd848c391f99b8f99370885ccd5ba367dc3ba2d0
286 -DIST firefox-91.0-kn.xpi 508509 BLAKE2B f157df3345e91c4a0db8561b5036ac45523e449e60ce2f97cc46f637257053d5b999140d9ce9ae8d2e529b50394b7f6a875b8d913053f93872636cea6d437330 SHA512 148d10e63e3b8a04a4d524d4b079cfaee4e5bcdaeab30e1f0ecf0250b0dd22f94ee6ce0f312ba5268d6a47f4d298e70ccff8b0275d0a47431a8e0696b358e928
287 -DIST firefox-91.0-ko.xpi 584341 BLAKE2B cc307a9e2a59b6c5702a27334a4ba03ac3d1db17c217d781880bc071ff6e8608bd463cd6772f05ccf39e5d1c16bc0622da2f37349653e904535d37ea0638d6f8 SHA512 7c43611c2bb301fde4058be2013da705f4fce857bd5997686e8f8e5c8b23237b65ea3d7966b9713f9ee969976fe2a39f18b270b9301776aba1aa45554e7bca90
288 -DIST firefox-91.0-lij.xpi 481935 BLAKE2B b53684a60ca34ff8bad862cf24edf9f0d1da536693c3314fb50653a0dc6a337bb3da80d92033b60294f365a5235ac3247787dbc813265f6218299ad3760c7c6d SHA512 625bf884951645c2a4b271948cf19d9e03fd0d11682f7fdfa95efbca6a0a2a0434561df3136324577629d71ce68d48ee3cf8a249fb3f401268c196e317e8b88e
289 -DIST firefox-91.0-lt.xpi 567601 BLAKE2B ca2618e06647ff5a3541248d95b9b93c85f239669b75c5876bf539c0c07cb30a7923b0d3135a1417782bb3bb41b2e21688663db02abfdd9ef3c8cdfe6ed23cd5 SHA512 a7190f62eedd11625c9c1791865b463877c98bf73ac6ef3abd10a89daf85d4f966307ae04b525b761ca5c7b18c188075cbb858d4b8c8b2aa8ca871c249aef3f0
290 -DIST firefox-91.0-lv.xpi 473335 BLAKE2B 86097eb1233969278f691db92ecdf0d259208fc2709434f90e57a39157b75d7319b0e3fc0cd5cce534b31634e84a3fc96157d14390d829f63fc84b35d629237b SHA512 fcc238b564ce02773640222b3b8b9de44586440729f59a702437751b37c259a0d3613d3b6296cce1656f3d36ca097ea3534f26e43c040ae2e0decc2caf8cd5d6
291 -DIST firefox-91.0-mk.xpi 473482 BLAKE2B 5404c3c38aa07977d5b09d29ec6a0c396c08b4c706bb549a103f8c98603d8ca87c844faf82a0d40cde680c91528add2fed66081501f963d0069d2e477763b2c8 SHA512 92aa41a4acec82a0b466ae7ac57f339d0d68be8e1787107647fcc343b152f85319c2d7f15dbef3850e414a01492eeb869b733b4909ff47048e0a2c557824c7d0
292 -DIST firefox-91.0-mr.xpi 544857 BLAKE2B a071cb0b89fe4bb5fd9e17934ea6c81bcccf212e22d46886e71608417ddab17d6a50cf686226ca18d00d595d9a0fc01b26bd6d71f6b64c0a8de2787543691d76 SHA512 d62ffd4a68cfe3a79ea9d51bd257046e1d35318561c43bcafecbe5ced002113d9b747499d7875288c0c18f39c097dfbd563e58877985396aff023b5f66f3c75a
293 -DIST firefox-91.0-ms.xpi 457208 BLAKE2B 3262d30d2f35eb49ee6d0465669f6fa6aad3a39750af0b02f138a125cf0e4616aaa9387dcc3dd2bd1013a9d5d8845457f45737482cb4c414bf13aa60a9aaff1d SHA512 4a388951a188451f0eb8f6d2bb18cb7e082c0842d441781fb0fe22b22b5f3322ba3eff7e55834e7a62464d8b06c6d760fb0d2ad81d46cd38360579ba4f4173d5
294 -DIST firefox-91.0-my.xpi 530139 BLAKE2B b62a2cb6f9c1398d0b6b8e15ed6cb3ab332b2a12b016402eb27bccc83507a4b425ab72f448c3c6ab75b23e290116cb8b47071e6aa739786982011846a32c29bf SHA512 78f965a40ea515a6e6f1ca2af88cf8609c04210d7471524c64a2d359634668b091a06d2280c3376babb59b767cfe2b6bd63d429dba45781aa6640d890f8d3e8b
295 -DIST firefox-91.0-nb-NO.xpi 534995 BLAKE2B 9e7118327229f119913e8ed956bc97d9f55665e46d5233a48404428ecb2c4ecd8c289dc6883ec6e12c0a1298a25803d14515394bb1349a1b47277bf0def19a22 SHA512 b05e123b56d9f01e35c47dc74366d7580fc2535b80856407b91ef222f75eff944348588667446b59f962f2c35cceb03c72398d6c55a89deda857fc4d7fb607b8
296 -DIST firefox-91.0-ne-NP.xpi 486180 BLAKE2B 056bc4ddb87578f7e8608848fe2bffcfe949d1ce31cb7a037fe8e3abe6213e3593aabdd067cd196920f4dcdddf1985cf78acc5f1c737f9e1b2fdef5b28f76d4f SHA512 60c0468a0cfe5bbcaad0a6d7b91f9df7879ef8603a469f83504b464ac1356be28fe0b16e2ad81939f79455a608c7f54ffa3136e6d8bd7e73d4c96572857c7c67
297 -DIST firefox-91.0-nl.xpi 543377 BLAKE2B 2814dd33998f8b200e1b6104a223dde198ec710313c29253c3f00f8e1308b940dd9d82a7c1ce8a9df46f4539993f5eb2f61909de34af66b06bb105efb4aa6d22 SHA512 5c06170f33e0f73d3d87c9bee1803fcb69e89b7e258b5f003b7a45365db8511fbf2088b515224d2197c0cf16e2eeac9198b9cc3b2fc80bb9ec3bcad785d11d57
298 -DIST firefox-91.0-nn-NO.xpi 537549 BLAKE2B 1024e59210b1f6ecb7bd4f9087b1100ada72527bec9243ec1f4ff7e9b79a647e52e86e926c1d87a96d40854a983ec91eb8ba1ec3b8ab152bc4a4174e23cad8b2 SHA512 9f8f0729977b4c0ce78f4c4ab0561b665743d003c66c4d7af1da81cff2d1e1ec1164f97a8342e6000ec552f162bd1a75634a5298a90b9d5231f08405245a07ae
299 -DIST firefox-91.0-oc.xpi 559030 BLAKE2B 9bfe51ea062bed0af912c899983ad903634e0072afda8746d6b50f15c96c0544a0f6087ad1e90474e4b46759795893f016c8e25636cd75fe45f9b695db244274 SHA512 1cbe98fa36343932f06b36464b4fb4d59cf1cd85f42ec1eeba8ba0ac5c55f870a1929c65e001efcd609a7d274615ba5508512326743ab29c28322a1c13dc9b22
300 -DIST firefox-91.0-pa-IN.xpi 605084 BLAKE2B 4df145130801eae8f102bc97d13cf7a5401fa742d437092b29ceba218055539d7f7d7a42d6dd303c4ef8f138ff2c093b4a8767dc3a3ddd36b44b2d5e71341821 SHA512 302e58a8e055c46a02e9126033c0f2971e59f6909d33b6e0fdc44b95937ad51db8147b181e4a13d62aef075f0776f9a8059fcbd3ab70625a14a6420b261eae35
301 -DIST firefox-91.0-pl.xpi 562847 BLAKE2B b493355e4b22e81eda20001abf25b2faf72933a39849188dd7ddf033bb42dd95a45bb59834ccccf841e417e8b6454eacd5ddd27aabeec5df446674356b1ae601 SHA512 183b78b428e5fdab7136bf0650c41564efc813f12fea9b0b2de43a81a0f18e79c7b667be9aac8907a0ccffcdec13a4043ca61691ff658c99c47e23c46b1b0146
302 -DIST firefox-91.0-pt-BR.xpi 549008 BLAKE2B dc488c58d6a9aeb7cd01d0ffb6b8091749bb043e87a3a85f6606658c5e7aeb0c1d31fb98d01ddff6dabf5eb170e779538ef953b4a90a580023bea38e9d8bdaa4 SHA512 fa560ec92e6efc682f7ba53112a5459199d2f49f6a5532c8f4b98473ed1fc7345da57acfb44c81aa2d887be0aa9c3feab920957eef643d5bbe4a3e2e1b9bc379
303 -DIST firefox-91.0-pt-PT.xpi 552660 BLAKE2B 585bf88ac927ca885aabcff8a4f1ebe7dd5081cbcbcde45615f2aa3bc0046090ecae14edf4d20198d3741bd25a317c265072455036cfa026515313db07a13a7b SHA512 44aba25a7169225c9b6f49bbe75a49033db25a801214ce113c01cb23bef48b0676e7e16abbbbb85509c8895b55d18fee4fe9923723b97819bbacfdc25e328bd5
304 -DIST firefox-91.0-rm.xpi 543750 BLAKE2B dd52ee4014a32fd0139ef9c9ce6a52da5e73a005ddd9daf33ab08f2e5c4ee2de4bd3839d6ed18f35211eaf8d7be48fce9ca12d8428e69297f6aaceabc9cd1123 SHA512 340936ac955f88dba046810cb98faf97f2fd1e82fe29320bb423cff9cdaa14a56cc8b301161e73a3d6fdc799910ba0629ec440c60f2fb49b4fc162711f3923a1
305 -DIST firefox-91.0-ro.xpi 544861 BLAKE2B df223fa4cf02cdf9b10a318059a20af93587051b405b5564425392d9021a28eef55bac3960f9c8030fe791801918840d8a53f4f01fe410399c6d7c181750d8fb SHA512 b00c3c77238d6b6d20811fedbafc3261e69569c305894b9ef79887741bc4b922f7b4847752658e989a0c04393b73d99a52b0dbbf4c0a50ff33af0710dbf1422d
306 -DIST firefox-91.0-ru.xpi 635030 BLAKE2B a2e492f36079e46997228a3be1dc7c26a2128d97fde32b6119bacbc389885a197c28a7fabfd28e554dff753da3d6986d716782e8728129dbd8de31638947a6c0 SHA512 affdd9b7c04cfd358fe59978a18796d84f6488df4f16e6ccaab6b30a478a34f34fc50c9a0b84fdd44b7bf356e0b7b4a644944e7b7c6356c72d2a7901cbea34a6
307 -DIST firefox-91.0-si.xpi 496839 BLAKE2B aa1615830c25f27756d4742ca97da6cd752918894ad19570c03b9d18c1372f301cc4e0b5b0cbc0ba85d8f94d63dc9b0e8d4473a7efd982c021e238d929d5a5ec SHA512 60f2b66781bf1584bd5d28fe92689bf9a7c3d8b5fcecc4867ad794e109d440d099654d47baac38e030f6d24bb8be68c43b0db28e1ea35f6bf5eb48809d226990
308 -DIST firefox-91.0-sk.xpi 572081 BLAKE2B 5e872b8e610d44e05474c9b60e00dbf38262cfc17dc56c57b3608af616efff65f0b15c86e3ed3dcca0e9ff3de9e1575408651fe0867c65058765f68f441f6b58 SHA512 79789c47680a6f34113845add7cf8470124ab5dcdd171dea6dfdff2a8a114ea133d660be68f3551709a723feac1566635179cab48f11ba8fcfee6811a4316db3
309 -DIST firefox-91.0-sl.xpi 542775 BLAKE2B a0c8f588a1ecf684b5da0d592ea174dccdd471c70f7712e3d06d3190a36063bab2c42ca543fc42d24bdc7b2cc30e76a1c2fbbc2bf158ffe510f5ff2b16c3132b SHA512 37df4cf7c8cb1c7e09e0c95bd514f51979c595d2c65a36615d9a645cc31df5fbe18de2f16bac04cd0b7a479165610905968ae3ce8513f889272becea52ae90e9
310 -DIST firefox-91.0-son.xpi 432944 BLAKE2B e2a6a2b2e1046659f40b0e8dc85b99d2d19e19ae0670c87ebb5f60c0d799eca264912ef9be0c1125fa33f172e340f9243eddc64121858babb54cb87e3a6e5fb0 SHA512 03156f7974e940be06e2ebeb9715131009bb3d6fd2d39393e5b08c43b7a77ffa2f26bc93cd76639f3e33168adb2d6f7ed34cd57a9d8079f355a162dcad926a81
311 -DIST firefox-91.0-sq.xpi 562217 BLAKE2B 118e5f4f8fe7642183bbf71c1e5cfa874b923b85e9db4d429f0d5338434e9712bd6b4072f19f77c56213f81b992f3bd5b53dc63cd9c4ff5131c3c85ddf4cbfe7 SHA512 2257a1f266c8045d0323154a5d9e4cb3bd5ff2de5895871df422124fff0422aa23b4c69271301daf2f62c6dca4143c68c906188e65965a15c446e49a7db0f256
312 -DIST firefox-91.0-sr.xpi 596023 BLAKE2B 1cd0a25c8c549ffa2364aee8fec38adab4fd954c6c2fef55a1be2637af9a3d7385d26d346b2ef86d6e2cd72121ad44d9cec9c0675f52632231ad30ce154344fd SHA512 1736e357869d10fa43a2224242827525831bfbd663690727b2cc1df93d15429afd1f81efd73a0ef2d0ac9b278467cce6c0b60671538cf87b464ff1022302a039
313 -DIST firefox-91.0-sv-SE.xpi 546381 BLAKE2B 4cf1e08885cefd27ef193be88953202e9657ac88a79972d6ce7cca6ec375e738673074b5de364965e51c589a674b2f16674cb0e44879b37192652a75c97db2d4 SHA512 b42fe4ce6f43282235e5966578d227c75d36ca34358fa968a38b4b77cfef862f732a5e2740553808d3abdf666413740fe2bd5ed1490cac71273ff8f849cba235
314 -DIST firefox-91.0-szl.xpi 522367 BLAKE2B 053749a0877aafa4199765ffc28faa5dc589000b43729df663541189bfeac9886728001f8bdad57ab7303582886abd5dce0ee04c10ff8aaec976156f591fa8a4 SHA512 0c8a3c0a9ea5d7265404fff4da03cd3ae02ab4399695c632f39169d67cbbc3fc623a645a8076139a6010c15d131351eb23673306fe387e69660b8f021e34b17a
315 -DIST firefox-91.0-ta.xpi 523938 BLAKE2B 84d2fe504c115eae4d9eebcaa7f5aa30a5dd0da73a178fcfbd0a6806d48454db7edb3f73e5a7740450043548fa8ac951b90307ec95565e14f91a3e3eadfdcd1c SHA512 dfbb51e925b77663d69e07c122a96eb15b7dcc9a0d9f8210cb7568dfe491cda8b7a42f8bfca20d3edad30228ef23b697b115cafd7d7df92b4b5cd149fd1a4d75
316 -DIST firefox-91.0-te.xpi 564760 BLAKE2B c1bdcdb64f2519074b3204c7a37815ce3022af8aaf042e49eef3a60f51c9acdb65ac0ee769127284a26b9faf85d02ab8693cf508b4bb94eade46b1b02162e44f SHA512 655bbc6e1fd8a87a596d230a0a680da43db7e86270af93e7947dd7cc32fa6cfc1d0c6d4f4a24fbb1c0f27bd6ee8cf9230262fe59a1908badc54fca071aa6e1e2
317 -DIST firefox-91.0-th.xpi 614160 BLAKE2B c8b4524f2d81908f32f0815775e6f6145738384ee8ed9a51557a9d5baed533572484b77a07129c70f863d5ccf2d6b9df0f7944b95ce63c8bf4f8b71b228b33a3 SHA512 76c7613d8779a0197159c6bdba0c311fad3ea624b4de944e2d0fd25e03e9385145c2097b80ffe37452a0509b780c35b27e1ccd73e87ef26398e03db56d62d18e
318 -DIST firefox-91.0-tl.xpi 531314 BLAKE2B 0b4f982c9b7ecf422da6c3dd14d8a92b01000b61ad0c643f7268ed39635459f9ad4aaa489484d986908d32fad5d15758c3054d6ef8b5901f087f93b2f76938bc SHA512 3df710d6fdf2ebcf20e4012055e109564e5c7b44257f8183fdbb39f0a49f2a165904f16a3e199aa5fc68c516a14e18d34806537e9c9c024b563e01e3bf8f3798
319 -DIST firefox-91.0-tr.xpi 558465 BLAKE2B eecb412388348299dad551aa0b154427a8033a3a72bbf0a5213125f215062e0e3f2a1e166da6eab33b024668d7fff20f15cdedce7230acb1a88cc34f5e5bbd32 SHA512 aff6632794bed53331b459a4e860547dc24433abdb2e3ffa1c20356fe2c811b0d617814c49f3e50f204c38a74503f38e6a9db02344693c7818f5b36d38dcf4fb
320 -DIST firefox-91.0-trs.xpi 503654 BLAKE2B bcc134641064241e938dc54de465438e28ee02b9fd14a704d6ef34b4c57842667ccb8b98a957383e797c7f9bd37750b4b0ef0993ae371c1ea050f263a29f8b2c SHA512 a2fdd43966650398273f02e0296078ceb478b90ed48f3531525e63918a607627e5651c81dcf338c29c8b0fc825f8fdef70994f2377513e0f04ff66a42174367e
321 -DIST firefox-91.0-uk.xpi 628573 BLAKE2B 5c5fa5b70ecc57bcb3d2871525ccffb85d6f50d526305674292e687b4cd3fbb8fbbd75f31604e43b36e011231f508d6c4cbabd281f4d0743bc253f392f755aaa SHA512 e9ab80fc640986d309fa0e938279ddba8498493bd4a779516f60e5acef62e5776fa98a802b6b68a065b57f10ae3525821191bdc73c9a674ef670d22a0de04731
322 -DIST firefox-91.0-ur.xpi 572682 BLAKE2B 59813662712c2a4d237ce0c8b623240fe8d19576d77eef0489655bfce728296fd6cb13a92525358a18339f54d0a97cdd4a3ddbc21a7180e8213a3ebe96b6fb58 SHA512 10a062fca9ef824159a8ad40ac111ff4d9d87cd7a5de7f2a9342159b5a2ca6adfe076940a94f58a6fb0e6d099a12c45a8c3fd2ae4d88f8f503ccee78a588a220
323 -DIST firefox-91.0-uz.xpi 480952 BLAKE2B 9c81c2b7e32ebfce449c44e19b823d5536c1ec08b34b6db304c639f90cb180e3a697dc1883fe173952f5ef08253c533f4fb7a00e780d033320275310f65195e5 SHA512 4533906fe6854abc703639a9260f262a1a4a53a13e90ebb8916a8a52998935102b8be2b7d04d2176d47b3efef6960f31dc860c0aa6dd727ac26d70fb2f3e31e8
324 -DIST firefox-91.0-vi.xpi 580502 BLAKE2B 7c6886328396a24e164fdd9fe8d61a012c09dc1cdeb26c858b16e73acce75e8bd542017c620d25f8f111b6decf36db02588b62b653a112eb7d9f4c00887a9103 SHA512 83d85d88605f20180f3d9c70e215345d5e74e4100faf589a2934d4eaf6d46b15ab5139a8bacbfa7373fa45d9bac77cd111793420c725c1a67cd5da2babfaf0cc
325 -DIST firefox-91.0-xh.xpi 435046 BLAKE2B 39d8bbf73f7360899ff2e3e17ea76aa23096b090d1941c69df45b58e4ccd32ea44fb8ac6f7bc73e7ca61871aca9f94f2b815a5484c3e46adaae36afe02ae82fb SHA512 68ea88ed0116d662f08f7ce581cd3f14d3685e7a41b1fc0cf104204f09750e5b1b6e3f7884385498888b419091b991907f2fe159465e00313dcc4e69511b9a4d
326 -DIST firefox-91.0-zh-CN.xpi 581935 BLAKE2B 346ca8b1d7d99c31544e58e679988f0b53277c0d59dcc6be642a5fac863c1691c1e1ec66b815f7644383b907d04eb3481c850d0c5919dbabd159475cce1de831 SHA512 0456290e208fa190ea6e0a9f07a86c0ddbfbbfbcda7fe5c2d292bc6718de38838b30ad9412b8d26e57f56d7d42be76122a6d6b409d0c2ee298f738bbe3b98d4c
327 -DIST firefox-91.0-zh-TW.xpi 582117 BLAKE2B 0f39cab747215ec9ab3e3da043e8650ab654f5dcaf8c26e7f96b373f6fa101a7c8960f3873fb5cadaae879170dcf27d67d06791b7e25732964c3f5f830e7e137 SHA512 5e504c968fae303241b8ba475f030fd228d19deeb54df80520e32dfd005b626dc6fcc4dfc4c906d614b8e747094d474734d0a9c47baabd5121271f8063df4985
328 DIST firefox-91.0.1-ach.xpi 465287 BLAKE2B 2d45551393247fda1a64aa05e8491c52e476c033a457cdd8872b3cab88028692f360b2310174116b93437e6523d86c19150045187f1392fa2973cab0f9141a8f SHA512 560cf7a68510d55909a15524af17b3e49c3c6acd84d61c509545ca0661733779b563699952f07d8efd6becd569b204f7114aa7434ff8889184f5c2f0a71d4d07
329 DIST firefox-91.0.1-af.xpi 433153 BLAKE2B d7b7210a9dbe92e2e73493539e3245f265247a6a754461c96e3a29fcfdfc5714ddfb83025b08d862d76bd19fab03fbb9892665fc8987033a406cd6e0ed0be6d5 SHA512 65ac9bc81d3676b1dd7871596fb8ee3361bc1e6204571319adc2691c8969234c7c0a66c00a52244e1ff8bbf213f38ae4ea9c85a181d3c92039cfc47902305e8f
330 DIST firefox-91.0.1-an.xpi 511815 BLAKE2B 286a6e19f1a882942f187204a2923ec7e8ec38eded208acb0fe01b0c0f83f3b9cb30dc9bfe622d5a66ef327732ad8aebd415177716133abb074e8e85c1d400a2 SHA512 df6c249c5f0f572c4d128ff62e4c49d13dc6c2e4e3d450f290f4f9e55c18da2d1ffc4d04f75359e827b7a2b0d8d242c3f3f40f9e08d64e64e2d0c27a8e1390e5
331 @@ -584,4 +292,3 @@ DIST firefox-91.0.2-xh.xpi 435041 BLAKE2B e51f7abe34cd7e65be01e3a5c0288cced33e85
332 DIST firefox-91.0.2-zh-CN.xpi 581941 BLAKE2B 92ffe8fa9317e8240a522bf312333cf35359fc036e9caf6bdb8c56a4701163efbbe6f69145a0282963c255998c554a6f2f0876c31aa6c7396dc7bfd73f15ec85 SHA512 f09100f3d7555c00cdb33bc0b0a07488494baffe6bb8e7408c32196e91808625fcd9af24d4088bcbaa06637ccfc3f6e8772d29dc0c66b1335d09ca7a6e0ced55
333 DIST firefox-91.0.2-zh-TW.xpi 582124 BLAKE2B 962fe6182f240fa5f1bce94f7e1038c958aefa0736a1b3b36a3565d26acd6361d19dc31cd4747dd723e9069490b073b2b2fdd328af440efaeeeed6531bb00a72 SHA512 3315585c1cc781c2f8707f7f092e70374e93166884149ee9123ddd1cc5e6c4950ce6ea5050637181a79096544d3567f0c4c46dbd88ddb6eb1d3e06c2c5b7346a
334 DIST firefox-91.0.2.source.tar.xz 381193820 BLAKE2B 42e03ee63e9930a71716599fdeb538006e1a1404a81ecb0efc25511f4d2100b447c9c979d367c9f5fdd60c8ac667f50d36f250b1b755b8eb6eb8f7fdd909b612 SHA512 82084799524db6661d97d9942a01ca9edec2fae6b503c9dd2d79fca78bfef4ee0a888e5f5cf4cfa2b91d9c9392658bb8218bae2b9bec0fbcacfe73a174a4dbe7
335 -DIST firefox-91.0.source.tar.xz 380788436 BLAKE2B 14cbe36c19b9dc64d3903994681bc42f2fbca30b97413088155620ec2a93433898bb1d247b55701bda61c4144cb8f1e460f6c2d5d5cdb57081a760f291c1a0d4 SHA512 a02486a3996570e0cc815e92c98890bca1d27ce0018c2ee3d4bff9a6e54dbc8f5926fea8b5864f208e15389d631685b2add1e4e9e51146e40224d16d5c02f730
336
337 diff --git a/www-client/firefox/firefox-78.12.0.ebuild b/www-client/firefox/firefox-78.12.0.ebuild
338 deleted file mode 100644
339 index 816f26e3bd2..00000000000
340 --- a/www-client/firefox/firefox-78.12.0.ebuild
341 +++ /dev/null
342 @@ -1,1187 +0,0 @@
343 -# Copyright 1999-2021 Gentoo Authors
344 -# Distributed under the terms of the GNU General Public License v2
345 -
346 -EAPI="7"
347 -
348 -FIREFOX_PATCHSET="firefox-78esr-patches-15.tar.xz"
349 -
350 -LLVM_MAX_SLOT=12
351 -
352 -PYTHON_COMPAT=( python3_{7..9} )
353 -PYTHON_REQ_USE="ncurses,sqlite,ssl"
354 -
355 -WANT_AUTOCONF="2.1"
356 -
357 -VIRTUALX_REQUIRED="pgo"
358 -
359 -MOZ_ESR=yes
360 -
361 -MOZ_PV=${PV}
362 -MOZ_PV_SUFFIX=
363 -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
364 - MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
365 -
366 - # Convert the ebuild version to the upstream Mozilla version
367 - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
368 - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
369 - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
370 -fi
371 -
372 -if [[ -n ${MOZ_ESR} ]] ; then
373 - # ESR releases have slightly different version numbers
374 - MOZ_PV="${MOZ_PV}esr"
375 -fi
376 -
377 -MOZ_PN="${PN%-bin}"
378 -MOZ_P="${MOZ_PN}-${MOZ_PV}"
379 -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
380 -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
381 -
382 -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \
383 - llvm multiprocessing pax-utils python-any-r1 toolchain-funcs \
384 - virtualx xdg
385 -
386 -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
387 -
388 -if [[ ${PV} == *_rc* ]] ; then
389 - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
390 -fi
391 -
392 -PATCH_URIS=(
393 - https://dev.gentoo.org/~{axs,polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET}
394 -)
395 -
396 -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
397 - ${PATCH_URIS[@]}"
398 -
399 -DESCRIPTION="Firefox Web Browser"
400 -HOMEPAGE="https://www.mozilla.com/firefox"
401 -
402 -KEYWORDS="amd64 arm64 ~ppc64 x86"
403 -
404 -SLOT="0/esr$(ver_cut 1)"
405 -LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
406 -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free geckodriver +gmp-autoupdate
407 - hardened hwaccel jack lto +openh264 pgo pulseaudio screencast selinux
408 - +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent
409 - +system-libvpx +system-webp wayland wifi"
410 -
411 -REQUIRED_USE="debug? ( !system-av1 )
412 - screencast? ( wayland )
413 - wifi? ( dbus )"
414 -
415 -BDEPEND="${PYTHON_DEPS}
416 - app-arch/unzip
417 - app-arch/zip
418 - >=dev-util/cbindgen-0.14.3
419 - >=net-libs/nodejs-10.21.0
420 - virtual/pkgconfig
421 - >=virtual/rust-1.41.0
422 - || (
423 - (
424 - sys-devel/clang:12
425 - sys-devel/llvm:12
426 - clang? (
427 - =sys-devel/lld-12*
428 - pgo? ( =sys-libs/compiler-rt-sanitizers-12*[profile] )
429 - )
430 - )
431 - (
432 - sys-devel/clang:11
433 - sys-devel/llvm:11
434 - clang? (
435 - =sys-devel/lld-11*
436 - pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] )
437 - )
438 - )
439 - (
440 - sys-devel/clang:10
441 - sys-devel/llvm:10
442 - clang? (
443 - =sys-devel/lld-10*
444 - pgo? ( =sys-libs/compiler-rt-sanitizers-10*[profile] )
445 - )
446 - )
447 - )
448 - lto? (
449 - !clang? ( sys-devel/binutils[gold] )
450 - )
451 - amd64? ( >=dev-lang/yasm-1.1 )
452 - x86? ( >=dev-lang/yasm-1.1 )
453 - !system-av1? (
454 - amd64? ( >=dev-lang/nasm-2.13 )
455 - x86? ( >=dev-lang/nasm-2.13 )
456 - )"
457 -
458 -CDEPEND="
459 - >=dev-libs/nss-3.53.1
460 - >=dev-libs/nspr-4.25
461 - dev-libs/atk
462 - dev-libs/expat
463 - >=x11-libs/cairo-1.10[X]
464 - >=x11-libs/gtk+-2.18:2
465 - >=x11-libs/gtk+-3.4.0:3[X]
466 - x11-libs/gdk-pixbuf
467 - >=x11-libs/pango-1.22.0
468 - >=media-libs/libpng-1.6.35:0=[apng]
469 - >=media-libs/mesa-10.2:*
470 - media-libs/fontconfig
471 - >=media-libs/freetype-2.4.10
472 - kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) )
473 - virtual/freedesktop-icon-theme
474 - >=x11-libs/pixman-0.19.2
475 - >=dev-libs/glib-2.26:2
476 - >=sys-libs/zlib-1.2.3
477 - >=dev-libs/libffi-3.0.10:=
478 - media-video/ffmpeg
479 - x11-libs/libX11
480 - x11-libs/libXcomposite
481 - x11-libs/libXdamage
482 - x11-libs/libXext
483 - x11-libs/libXfixes
484 - x11-libs/libXrender
485 - x11-libs/libXt
486 - dbus? (
487 - sys-apps/dbus
488 - dev-libs/dbus-glib
489 - )
490 - screencast? ( media-video/pipewire:0/0.3 )
491 - system-av1? (
492 - >=media-libs/dav1d-0.3.0:=
493 - >=media-libs/libaom-1.0.0:=
494 - )
495 - system-harfbuzz? (
496 - >=media-libs/harfbuzz-2.6.8:0=
497 - >=media-gfx/graphite2-1.3.13
498 - )
499 - system-icu? ( >=dev-libs/icu-67.1:= )
500 - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
501 - system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
502 - system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
503 - system-webp? ( >=media-libs/libwebp-1.1.0:0= )
504 - wifi? (
505 - kernel_linux? (
506 - sys-apps/dbus
507 - dev-libs/dbus-glib
508 - net-misc/networkmanager
509 - )
510 - )
511 - jack? ( virtual/jack )
512 - selinux? ( sec-policy/selinux-mozilla )"
513 -
514 -RDEPEND="${CDEPEND}
515 - jack? ( virtual/jack )
516 - openh264? ( media-libs/openh264:*[plugin] )
517 - pulseaudio? (
518 - || (
519 - media-sound/pulseaudio
520 - >=media-sound/apulse-0.1.12-r4
521 - )
522 - )
523 - selinux? ( sec-policy/selinux-mozilla )"
524 -
525 -DEPEND="${CDEPEND}
526 - pulseaudio? (
527 - || (
528 - media-sound/pulseaudio
529 - >=media-sound/apulse-0.1.12-r4[sdk]
530 - )
531 - )
532 - wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
533 - amd64? ( virtual/opengl )
534 - x86? ( virtual/opengl )"
535 -
536 -S="${WORKDIR}/${PN}-${PV%_*}"
537 -
538 -# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
539 -# overridden in the enviromnent (advanced hackers only)
540 -if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
541 - MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
542 -fi
543 -
544 -llvm_check_deps() {
545 - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
546 - einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
547 - return 1
548 - fi
549 -
550 - if use clang ; then
551 - if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
552 - einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
553 - return 1
554 - fi
555 -
556 - if use pgo ; then
557 - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
558 - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
559 - return 1
560 - fi
561 - fi
562 - fi
563 -
564 - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
565 -}
566 -
567 -MOZ_LANGS=(
568 - ach af an ar ast az be bg bn br bs ca-valencia ca cak cs cy
569 - da de dsb el en-CA en-GB en-US eo es-AR es-CL es-ES es-MX et eu
570 - fa ff fi fr fy-NL ga-IE gd gl gn gu-IN he hi-IN hr hsb hu hy-AM
571 - ia id is it ja ka kab kk km kn ko lij lt lv mk mr ms my
572 - nb-NO ne-NP nl nn-NO oc pa-IN pl pt-BR pt-PT rm ro ru
573 - si sk sl son sq sr sv-SE ta te th tl tr trs uk ur uz vi
574 - xh zh-CN zh-TW
575 -)
576 -
577 -mozilla_set_globals() {
578 - # https://bugs.gentoo.org/587334
579 - local MOZ_TOO_REGIONALIZED_FOR_L10N=(
580 - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
581 - )
582 -
583 - local lang xflag
584 - for lang in "${MOZ_LANGS[@]}" ; do
585 - # en and en_US are handled internally
586 - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
587 - continue
588 - fi
589 -
590 - # strip region subtag if $lang is in the list
591 - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
592 - xflag=${lang%%-*}
593 - else
594 - xflag=${lang}
595 - fi
596 -
597 - SRC_URI+=" l10n_${xflag/[_@]/-}? ("
598 - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
599 - SRC_URI+=" )"
600 - IUSE+=" l10n_${xflag/[_@]/-}"
601 - done
602 -}
603 -mozilla_set_globals
604 -
605 -moz_clear_vendor_checksums() {
606 - debug-print-function ${FUNCNAME} "$@"
607 -
608 - if [[ ${#} -ne 1 ]] ; then
609 - die "${FUNCNAME} requires exact one argument"
610 - fi
611 -
612 - einfo "Clearing cargo checksums for ${1} ..."
613 -
614 - sed -i \
615 - -e 's/\("files":{\)[^}]*/\1/' \
616 - "${S}"/third_party/rust/${1}/.cargo-checksum.json \
617 - || die
618 -}
619 -
620 -moz_install_xpi() {
621 - debug-print-function ${FUNCNAME} "$@"
622 -
623 - if [[ ${#} -lt 2 ]] ; then
624 - die "${FUNCNAME} requires at least two arguments"
625 - fi
626 -
627 - local DESTDIR=${1}
628 - shift
629 -
630 - insinto "${DESTDIR}"
631 -
632 - local emid xpi_file xpi_tmp_dir
633 - for xpi_file in "${@}" ; do
634 - emid=
635 - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
636 -
637 - # Unpack XPI
638 - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
639 -
640 - # Determine extension ID
641 - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
642 - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
643 - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
644 - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
645 - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
646 - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
647 - else
648 - die "failed to determine extension id"
649 - fi
650 -
651 - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
652 - newins "${xpi_file}" "${emid}.xpi"
653 - done
654 -}
655 -
656 -mozconfig_add_options_ac() {
657 - debug-print-function ${FUNCNAME} "$@"
658 -
659 - if [[ ${#} -lt 2 ]] ; then
660 - die "${FUNCNAME} requires at least two arguments"
661 - fi
662 -
663 - local reason=${1}
664 - shift
665 -
666 - local option
667 - for option in ${@} ; do
668 - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
669 - done
670 -}
671 -
672 -mozconfig_add_options_mk() {
673 - debug-print-function ${FUNCNAME} "$@"
674 -
675 - if [[ ${#} -lt 2 ]] ; then
676 - die "${FUNCNAME} requires at least two arguments"
677 - fi
678 -
679 - local reason=${1}
680 - shift
681 -
682 - local option
683 - for option in ${@} ; do
684 - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
685 - done
686 -}
687 -
688 -mozconfig_use_enable() {
689 - debug-print-function ${FUNCNAME} "$@"
690 -
691 - if [[ ${#} -lt 1 ]] ; then
692 - die "${FUNCNAME} requires at least one arguments"
693 - fi
694 -
695 - local flag=$(use_enable "${@}")
696 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
697 -}
698 -
699 -mozconfig_use_with() {
700 - debug-print-function ${FUNCNAME} "$@"
701 -
702 - if [[ ${#} -lt 1 ]] ; then
703 - die "${FUNCNAME} requires at least one arguments"
704 - fi
705 -
706 - local flag=$(use_with "${@}")
707 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
708 -}
709 -
710 -pkg_pretend() {
711 - if [[ ${MERGE_TYPE} != binary ]] ; then
712 - if use pgo ; then
713 - if ! has usersandbox $FEATURES ; then
714 - die "You must enable usersandbox as X server can not run as root!"
715 - fi
716 - fi
717 -
718 - # Ensure we have enough disk space to compile
719 - if use pgo || use lto || use debug ; then
720 - CHECKREQS_DISK_BUILD="13500M"
721 - else
722 - CHECKREQS_DISK_BUILD="6400M"
723 - fi
724 -
725 - check-reqs_pkg_pretend
726 - fi
727 -}
728 -
729 -pkg_setup() {
730 - if [[ ${MERGE_TYPE} != binary ]] ; then
731 - if use pgo ; then
732 - if ! has userpriv ${FEATURES} ; then
733 - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
734 - fi
735 - fi
736 -
737 - # Ensure we have enough disk space to compile
738 - if use pgo || use lto || use debug ; then
739 - CHECKREQS_DISK_BUILD="13500M"
740 - else
741 - CHECKREQS_DISK_BUILD="6400M"
742 - fi
743 -
744 - check-reqs_pkg_setup
745 -
746 - llvm_pkg_setup
747 -
748 - if use clang && use lto ; then
749 - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
750 - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
751 - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
752 -
753 - # temp fix for https://bugs.gentoo.org/768543
754 - # we can assume that rust 1.{49,50}.0 always uses llvm 11
755 - local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }')
756 - [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}")
757 - [[ -z ${version_rust} ]] && die "Failed to read version from rustc!"
758 -
759 - if ver_test "${version_rust}" -ge "1.49" && ver_test "${version_rust}" -le "1.50" ; then
760 - local version_llvm_rust="11"
761 - else
762 - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
763 - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
764 - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
765 - fi
766 -
767 - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
768 - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
769 - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
770 - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
771 - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
772 - eerror " - Build ${CATEGORY}/${PN} without USE=lto"
773 - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
774 - fi
775 - fi
776 -
777 - python-any-r1_pkg_setup
778 -
779 - # Avoid PGO profiling problems due to enviroment leakage
780 - # These should *always* be cleaned up anyway
781 - unset \
782 - DBUS_SESSION_BUS_ADDRESS \
783 - DISPLAY \
784 - ORBIT_SOCKETDIR \
785 - SESSION_MANAGER \
786 - XAUTHORITY \
787 - XDG_CACHE_HOME \
788 - XDG_SESSION_COOKIE
789 -
790 - # Build system is using /proc/self/oom_score_adj, bug #604394
791 - addpredict /proc/self/oom_score_adj
792 -
793 - if ! mountpoint -q /dev/shm ; then
794 - # If /dev/shm is not available, configure is known to fail with
795 - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
796 - ewarn "/dev/shm is not mounted -- expect build failures!"
797 - fi
798 -
799 - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
800 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
801 - # get your own set of keys.
802 - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
803 - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
804 - fi
805 -
806 - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
807 - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
808 - fi
809 -
810 - # Mozilla API keys (see https://location.services.mozilla.com/api)
811 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
812 - # get your own set of keys.
813 - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
814 - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
815 - fi
816 -
817 - # Ensure we use C locale when building, bug #746215
818 - export LC_ALL=C
819 - fi
820 -
821 - CONFIG_CHECK="~SECCOMP"
822 - WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
823 - linux-info_pkg_setup
824 -}
825 -
826 -src_unpack() {
827 - local _lp_dir="${WORKDIR}/language_packs"
828 - local _src_file
829 -
830 - if [[ ! -d "${_lp_dir}" ]] ; then
831 - mkdir "${_lp_dir}" || die
832 - fi
833 -
834 - for _src_file in ${A} ; do
835 - if [[ ${_src_file} == *.xpi ]]; then
836 - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
837 - else
838 - unpack ${_src_file}
839 - fi
840 - done
841 -}
842 -
843 -src_prepare() {
844 - use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
845 - eapply "${WORKDIR}/firefox-patches"
846 -
847 - # Allow user to apply any additional patches without modifing ebuild
848 - eapply_user
849 -
850 - # Make LTO respect MAKEOPTS
851 - sed -i \
852 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
853 - "${S}"/build/moz.configure/lto-pgo.configure \
854 - || die "sed failed to set num_cores"
855 -
856 - # Make ICU respect MAKEOPTS
857 - sed -i \
858 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
859 - "${S}"/intl/icu_sources_data.py \
860 - || die "sed failed to set num_cores"
861 -
862 - # sed-in toolchain prefix
863 - sed -i \
864 - -e "s/objdump/${CHOST}-objdump/" \
865 - "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
866 - || die "sed failed to set toolchain prefix"
867 -
868 - sed -i \
869 - -e 's/ccache_stats = None/return None/' \
870 - "${S}"/python/mozbuild/mozbuild/controller/building.py \
871 - || die "sed failed to disable ccache stats call"
872 -
873 - einfo "Removing pre-built binaries ..."
874 - find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
875 -
876 - # Clearing checksums where we have applied patches
877 - moz_clear_vendor_checksums target-lexicon-0.9.0
878 -
879 - # Create build dir
880 - BUILD_DIR="${WORKDIR}/${PN}_build"
881 - mkdir -p "${BUILD_DIR}" || die
882 -
883 - # Write API keys to disk
884 - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
885 - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
886 - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
887 -
888 - xdg_src_prepare
889 -}
890 -
891 -src_configure() {
892 - # Show flags set at the beginning
893 - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
894 - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
895 - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
896 - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
897 - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
898 -
899 - local have_switched_compiler=
900 - if use clang && ! tc-is-clang ; then
901 - # Force clang
902 - einfo "Enforcing the use of clang due to USE=clang ..."
903 - have_switched_compiler=yes
904 - AR=llvm-ar
905 - CC=${CHOST}-clang
906 - CXX=${CHOST}-clang++
907 - NM=llvm-nm
908 - RANLIB=llvm-ranlib
909 - elif ! use clang && ! tc-is-gcc ; then
910 - # Force gcc
911 - have_switched_compiler=yes
912 - einfo "Enforcing the use of gcc due to USE=-clang ..."
913 - AR=gcc-ar
914 - CC=${CHOST}-gcc
915 - CXX=${CHOST}-g++
916 - NM=gcc-nm
917 - RANLIB=gcc-ranlib
918 - fi
919 -
920 - if [[ -n "${have_switched_compiler}" ]] ; then
921 - # Because we switched active compiler we have to ensure
922 - # that no unsupported flags are set
923 - strip-unsupported-flags
924 - fi
925 -
926 - # Ensure we use correct toolchain
927 - export HOST_CC="$(tc-getBUILD_CC)"
928 - export HOST_CXX="$(tc-getBUILD_CXX)"
929 - tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
930 -
931 - # Pass the correct toolchain paths through cbindgen
932 - if tc-is-cross-compiler ; then
933 - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
934 - fi
935 -
936 - # Set MOZILLA_FIVE_HOME
937 - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
938 -
939 - # python/mach/mach/mixin/process.py fails to detect SHELL
940 - export SHELL="${EPREFIX}/bin/bash"
941 -
942 - # Set MOZCONFIG
943 - export MOZCONFIG="${S}/.mozconfig"
944 -
945 - # Initialize MOZCONFIG
946 - mozconfig_add_options_ac '' --enable-application=browser
947 -
948 - # Set Gentoo defaults
949 - export MOZILLA_OFFICIAL=1
950 -
951 - mozconfig_add_options_ac 'Gentoo default' \
952 - --allow-addon-sideload \
953 - --disable-cargo-incremental \
954 - --disable-crashreporter \
955 - --disable-install-strip \
956 - --disable-strip \
957 - --disable-updater \
958 - --enable-official-branding \
959 - --enable-release \
960 - --enable-system-ffi \
961 - --enable-system-pixman \
962 - --host="${CBUILD:-${CHOST}}" \
963 - --libdir="${EPREFIX}/usr/$(get_libdir)" \
964 - --prefix="${EPREFIX}/usr" \
965 - --target="${CHOST}" \
966 - --without-ccache \
967 - --with-intl-api \
968 - --with-libclang-path="$(llvm-config --libdir)" \
969 - --with-system-nspr \
970 - --with-system-nss \
971 - --with-system-png \
972 - --with-system-zlib \
973 - --with-toolchain-prefix="${CHOST}-" \
974 - --with-unsigned-addon-scopes=app,system \
975 - --x-includes="${SYSROOT}${EPREFIX}/usr/include" \
976 - --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)"
977 -
978 - # Set update channel
979 - local update_channel=release
980 - [[ -n ${MOZ_ESR} ]] && update_channel=esr
981 - mozconfig_add_options_ac '' --update-channel=${update_channel}
982 -
983 - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
984 - mozconfig_add_options_ac '' --enable-rust-simd
985 - fi
986 -
987 - if [[ -s "${S}/api-google.key" ]] ; then
988 - local key_origin="Gentoo default"
989 - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
990 - key_origin="User value"
991 - fi
992 -
993 - mozconfig_add_options_ac "${key_origin}" \
994 - --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
995 - else
996 - einfo "Building without Google API key ..."
997 - fi
998 -
999 - if [[ -s "${S}/api-location.key" ]] ; then
1000 - local key_origin="Gentoo default"
1001 - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
1002 - key_origin="User value"
1003 - fi
1004 -
1005 - mozconfig_add_options_ac "${key_origin}" \
1006 - --with-google-location-service-api-keyfile="${S}/api-location.key"
1007 - else
1008 - einfo "Building without Location API key ..."
1009 - fi
1010 -
1011 - if [[ -s "${S}/api-mozilla.key" ]] ; then
1012 - local key_origin="Gentoo default"
1013 - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
1014 - key_origin="User value"
1015 - fi
1016 -
1017 - mozconfig_add_options_ac "${key_origin}" \
1018 - --with-mozilla-api-keyfile="${S}/api-mozilla.key"
1019 - else
1020 - einfo "Building without Mozilla API key ..."
1021 - fi
1022 -
1023 - mozconfig_use_with system-av1
1024 - mozconfig_use_with system-harfbuzz
1025 - mozconfig_use_with system-harfbuzz system-graphite2
1026 - mozconfig_use_with system-icu
1027 - mozconfig_use_with system-jpeg
1028 - mozconfig_use_with system-libevent system-libevent "${SYSROOT}${EPREFIX}/usr"
1029 - mozconfig_use_with system-libvpx
1030 - mozconfig_use_with system-webp
1031 -
1032 - mozconfig_use_enable dbus
1033 -
1034 - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
1035 -
1036 - mozconfig_use_enable geckodriver
1037 -
1038 - if use hardened ; then
1039 - mozconfig_add_options_ac "+hardened" --enable-hardening
1040 - append-ldflags "-Wl,-z,relro -Wl,-z,now"
1041 - fi
1042 -
1043 - mozconfig_use_enable jack
1044 -
1045 - mozconfig_use_enable pulseaudio
1046 - # force the deprecated alsa sound code if pulseaudio is disabled
1047 - if use kernel_linux && ! use pulseaudio ; then
1048 - mozconfig_add_options_ac '-pulseaudio' --enable-alsa
1049 - fi
1050 -
1051 - mozconfig_use_enable screencast pipewire
1052 -
1053 - mozconfig_use_enable wifi necko-wifi
1054 -
1055 - if use wayland ; then
1056 - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland
1057 - else
1058 - mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3
1059 - fi
1060 -
1061 - if use lto ; then
1062 - if use clang ; then
1063 - # Upstream only supports lld when using clang
1064 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
1065 -
1066 - mozconfig_add_options_ac '+lto' --enable-lto=cross
1067 - else
1068 - # Linking only works when using ld.gold when LTO is enabled
1069 - mozconfig_add_options_ac "forcing ld=gold due to USE=lto" --enable-linker=gold
1070 -
1071 - # ThinLTO is currently broken, see bmo#1644409
1072 - mozconfig_add_options_ac '+lto' --enable-lto=full
1073 - fi
1074 -
1075 - if use pgo ; then
1076 - mozconfig_add_options_ac '+pgo' MOZ_PGO=1
1077 -
1078 - if use clang ; then
1079 - # Used in build/pgo/profileserver.py
1080 - export LLVM_PROFDATA="llvm-profdata"
1081 - fi
1082 - fi
1083 - else
1084 - # Avoid auto-magic on linker
1085 - if use clang ; then
1086 - # This is upstream's default
1087 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
1088 - elif tc-ld-is-gold ; then
1089 - mozconfig_add_options_ac "linker is set to gold" --enable-linker=gold
1090 - else
1091 - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
1092 - fi
1093 - fi
1094 -
1095 - # LTO flag was handled via configure
1096 - filter-flags '-flto*'
1097 -
1098 - mozconfig_use_enable debug
1099 - if use debug ; then
1100 - mozconfig_add_options_ac '+debug' --disable-optimize
1101 - else
1102 - if is-flag '-g*' ; then
1103 - if use clang ; then
1104 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
1105 - else
1106 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
1107 - fi
1108 - else
1109 - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
1110 - fi
1111 -
1112 - if is-flag '-O0' ; then
1113 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
1114 - elif is-flag '-O4' ; then
1115 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
1116 - elif is-flag '-O3' ; then
1117 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
1118 - elif is-flag '-O1' ; then
1119 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
1120 - elif is-flag '-Os' ; then
1121 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
1122 - else
1123 - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
1124 - fi
1125 - fi
1126 -
1127 - # Debug flag was handled via configure
1128 - filter-flags '-g*'
1129 -
1130 - # Optimization flag was handled via configure
1131 - filter-flags '-O*'
1132 -
1133 - # Modifications to better support ARM, bug #553364
1134 - if use cpu_flags_arm_neon ; then
1135 - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
1136 -
1137 - if ! tc-is-clang ; then
1138 - # thumb options aren't supported when using clang, bug 666966
1139 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \
1140 - --with-thumb=yes \
1141 - --with-thumb-interwork=no
1142 - fi
1143 - fi
1144 -
1145 - if [[ ${CHOST} == armv*h* ]] ; then
1146 - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
1147 -
1148 - if ! use system-libvpx ; then
1149 - sed -i \
1150 - -e "s|softfp|hard|" \
1151 - "${S}"/media/libvpx/moz.build \
1152 - || die
1153 - fi
1154 - fi
1155 -
1156 - if use clang ; then
1157 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
1158 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
1159 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
1160 - local disable_elf_hack=
1161 - if use amd64 ; then
1162 - disable_elf_hack=yes
1163 - elif use x86 ; then
1164 - disable_elf_hack=yes
1165 - elif use arm ; then
1166 - disable_elf_hack=yes
1167 - fi
1168 -
1169 - if [[ -n ${disable_elf_hack} ]] ; then
1170 - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack
1171 - fi
1172 - elif tc-is-gcc ; then
1173 - if ver_test $(gcc-fullversion) -ge 10 ; then
1174 - einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..."
1175 - append-cxxflags -fno-tree-loop-vectorize
1176 - fi
1177 - fi
1178 -
1179 - # Additional ARCH support
1180 - case "${ARCH}" in
1181 - arm)
1182 - # Reduce the memory requirements for linking
1183 - if use clang ; then
1184 - # Nothing to do
1185 - :;
1186 - elif tc-ld-is-gold || use lto ; then
1187 - append-ldflags -Wl,--no-keep-memory
1188 - else
1189 - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
1190 - fi
1191 - ;;
1192 - esac
1193 -
1194 - if ! use elibc_glibc ; then
1195 - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
1196 - fi
1197 -
1198 - # Allow elfhack to work in combination with unstripped binaries
1199 - # when they would normally be larger than 2GiB.
1200 - append-ldflags "-Wl,--compress-debug-sections=zlib"
1201 -
1202 - # Make revdep-rebuild.sh happy; Also required for musl
1203 - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
1204 -
1205 - # Pass $MAKEOPTS to build system
1206 - export MOZ_MAKE_FLAGS="${MAKEOPTS}"
1207 -
1208 - # Use system's Python environment
1209 - export MACH_USE_SYSTEM_PYTHON=1
1210 -
1211 - # Disable notification when build system has finished
1212 - export MOZ_NOSPAM=1
1213 -
1214 - # Build system requires xargs but is unable to find it
1215 - mozconfig_add_options_mk 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
1216 -
1217 - # Set build dir
1218 - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
1219 -
1220 - # Show flags we will use
1221 - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
1222 - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
1223 - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
1224 - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
1225 - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
1226 -
1227 - # Handle EXTRA_CONF and show summary
1228 - local ac opt hash reason
1229 -
1230 - # Apply EXTRA_ECONF entries to $MOZCONFIG
1231 - if [[ -n ${EXTRA_ECONF} ]] ; then
1232 - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
1233 - for opt in "${ac[@]}"; do
1234 - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
1235 - done
1236 - fi
1237 -
1238 - echo
1239 - echo "=========================================================="
1240 - echo "Building ${PF} with the following configuration"
1241 - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
1242 - [[ -z ${hash} || ${hash} == \# ]] \
1243 - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
1244 - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
1245 - done
1246 - echo "=========================================================="
1247 - echo
1248 -
1249 - ./mach configure || die
1250 -}
1251 -
1252 -src_compile() {
1253 - local virtx_cmd=
1254 -
1255 - if use pgo ; then
1256 - virtx_cmd=virtx
1257 -
1258 - # Reset and cleanup environment variables used by GNOME/XDG
1259 - gnome2_environment_reset
1260 -
1261 - addpredict /root
1262 - fi
1263 -
1264 - local -x GDK_BACKEND=x11
1265 -
1266 - ${virtx_cmd} ./mach build --verbose \
1267 - || die
1268 -}
1269 -
1270 -src_install() {
1271 - # xpcshell is getting called during install
1272 - pax-mark m \
1273 - "${BUILD_DIR}"/dist/bin/xpcshell \
1274 - "${BUILD_DIR}"/dist/bin/${PN} \
1275 - "${BUILD_DIR}"/dist/bin/plugin-container
1276 -
1277 - DESTDIR="${D}" ./mach install || die
1278 -
1279 - # Upstream cannot ship symlink but we can (bmo#658850)
1280 - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
1281 - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
1282 -
1283 - # Don't install llvm-symbolizer from sys-devel/llvm package
1284 - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
1285 - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
1286 - fi
1287 -
1288 - # Install policy (currently only used to disable application updates)
1289 - insinto "${MOZILLA_FIVE_HOME}/distribution"
1290 - newins "${FILESDIR}"/distribution.ini distribution.ini
1291 - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
1292 -
1293 - # Install system-wide preferences
1294 - local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences"
1295 - insinto "${PREFS_DIR}"
1296 - newins "${FILESDIR}"/gentoo-default-prefs.js all-gentoo.js
1297 -
1298 - local GENTOO_PREFS="${ED}${PREFS_DIR}/all-gentoo.js"
1299 -
1300 - # Set dictionary path to use system hunspell
1301 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
1302 - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
1303 - EOF
1304 -
1305 - # Force hwaccel prefs if USE=hwaccel is enabled
1306 - if use hwaccel ; then
1307 - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \
1308 - >>"${GENTOO_PREFS}" \
1309 - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
1310 - fi
1311 -
1312 - if ! use gmp-autoupdate ; then
1313 - local plugin
1314 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
1315 - einfo "Disabling auto-update for ${plugin} plugin ..."
1316 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
1317 - pref("media.${plugin}.autoupdate", false);
1318 - EOF
1319 - done
1320 - fi
1321 -
1322 - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
1323 - if use system-harfbuzz ; then
1324 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
1325 - sticky_pref("gfx.font_rendering.graphite.enabled", true);
1326 - EOF
1327 - fi
1328 -
1329 - # Install language packs
1330 - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
1331 - if [[ -n "${langpacks}" ]] ; then
1332 - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
1333 - fi
1334 -
1335 - # Install geckodriver
1336 - if use geckodriver ; then
1337 - einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..."
1338 - pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
1339 - exeinto "${MOZILLA_FIVE_HOME}"
1340 - doexe "${BUILD_DIR}"/dist/bin/geckodriver
1341 -
1342 - dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
1343 - fi
1344 -
1345 - # Install icons
1346 - local icon_srcdir="${S}/browser/branding/official"
1347 - local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg"
1348 -
1349 - insinto /usr/share/icons/hicolor/symbolic/apps
1350 - newins "${icon_symbolic_file}" ${PN}-symbolic.svg
1351 -
1352 - local icon size
1353 - for icon in "${icon_srcdir}"/default*.png ; do
1354 - size=${icon%.png}
1355 - size=${size##*/default}
1356 -
1357 - if [[ ${size} -eq 48 ]] ; then
1358 - newicon "${icon}" ${PN}.png
1359 - fi
1360 -
1361 - newicon -s ${size} "${icon}" ${PN}.png
1362 - done
1363 -
1364 - # Install menus
1365 - local wrapper_wayland="${PN}-wayland.sh"
1366 - local wrapper_x11="${PN}-x11.sh"
1367 - local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop"
1368 - local display_protocols="auto X11"
1369 - local icon="${PN}"
1370 - local name="Mozilla ${MOZ_PN^}"
1371 - local use_wayland="false"
1372 -
1373 - if use wayland ; then
1374 - display_protocols+=" Wayland"
1375 - use_wayland="true"
1376 - fi
1377 -
1378 - local app_name desktop_filename display_protocol exec_command
1379 - for display_protocol in ${display_protocols} ; do
1380 - app_name="${name} on ${display_protocol}"
1381 - desktop_filename="${PN}-${display_protocol,,}.desktop"
1382 -
1383 - case ${display_protocol} in
1384 - Wayland)
1385 - exec_command="${PN}-wayland --name ${PN}-wayland"
1386 - newbin "${FILESDIR}/${wrapper_wayland}" ${PN}-wayland
1387 - ;;
1388 - X11)
1389 - if ! use wayland ; then
1390 - # Exit loop here because there's no choice so
1391 - # we don't need wrapper/.desktop file for X11.
1392 - continue
1393 - fi
1394 -
1395 - exec_command="${PN}-x11 --name ${PN}-x11"
1396 - newbin "${FILESDIR}/${wrapper_x11}" ${PN}-x11
1397 - ;;
1398 - *)
1399 - app_name="${name}"
1400 - desktop_filename="${PN}.desktop"
1401 - exec_command="${PN}"
1402 - ;;
1403 - esac
1404 -
1405 - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
1406 -
1407 - sed -i \
1408 - -e "s:@NAME@:${app_name}:" \
1409 - -e "s:@EXEC@:${exec_command}:" \
1410 - -e "s:@ICON@:${icon}:" \
1411 - "${WORKDIR}/${PN}.desktop-template" \
1412 - || die
1413 -
1414 - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
1415 -
1416 - rm "${WORKDIR}/${PN}.desktop-template" || die
1417 - done
1418 -
1419 - # Install generic wrapper script
1420 - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
1421 - newbin "${FILESDIR}/${PN}.sh" ${PN}
1422 -
1423 - # Update wrapper
1424 - local wrapper
1425 - for wrapper in \
1426 - "${ED}/usr/bin/${PN}" \
1427 - "${ED}/usr/bin/${PN}-x11" \
1428 - "${ED}/usr/bin/${PN}-wayland" \
1429 - ; do
1430 - [[ ! -f "${wrapper}" ]] && continue
1431 -
1432 - sed -i \
1433 - -e "s:@PREFIX@:${EPREFIX}/usr:" \
1434 - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
1435 - -e "s:@APULSELIB_DIR@:${apulselib}:" \
1436 - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
1437 - "${wrapper}" \
1438 - || die
1439 - done
1440 -}
1441 -
1442 -pkg_preinst() {
1443 - xdg_pkg_preinst
1444 -
1445 - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
1446 - # does not need to be forced into the LD_LIBRARY_PATH
1447 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
1448 - einfo "APULSE found; Generating library symlinks for sound support ..."
1449 - local lib
1450 - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die
1451 - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
1452 - # A quickpkg rolled by hand will grab symlinks as part of the package,
1453 - # so we need to avoid creating them if they already exist.
1454 - if [[ ! -L ${lib##*/} ]] ; then
1455 - ln -s "${lib}" ${lib##*/} || die
1456 - fi
1457 - done
1458 - popd &>/dev/null || die
1459 - fi
1460 -}
1461 -
1462 -pkg_postinst() {
1463 - xdg_pkg_postinst
1464 -
1465 - if ! use gmp-autoupdate ; then
1466 - elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
1467 - elog "installing into new profiles:"
1468 - local plugin
1469 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
1470 - elog "\t ${plugin}"
1471 - done
1472 - elog
1473 - fi
1474 -
1475 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
1476 - elog "Apulse was detected at merge time on this system and so it will always be"
1477 - elog "used for sound. If you wish to use pulseaudio instead please unmerge"
1478 - elog "media-sound/apulse."
1479 - elog
1480 - fi
1481 -
1482 - local show_doh_information show_normandy_information
1483 -
1484 - if [[ -z "${REPLACING_VERSIONS}" ]] ; then
1485 - # New install; Tell user that DoH is disabled by default
1486 - show_doh_information=yes
1487 - show_normandy_information=yes
1488 - else
1489 - local replacing_version
1490 - for replacing_version in ${REPLACING_VERSIONS} ; do
1491 - if ver_test "${replacing_version}" -lt 70 ; then
1492 - # Tell user only once about our DoH default
1493 - show_doh_information=yes
1494 - fi
1495 -
1496 - if ver_test "${replacing_version}" -lt 74.0-r2 ; then
1497 - # Tell user only once about our Normandy default
1498 - show_normandy_information=yes
1499 - fi
1500 - done
1501 - fi
1502 -
1503 - if [[ -n "${show_doh_information}" ]] ; then
1504 - elog
1505 - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):"
1506 - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all"
1507 - elog "DNS traffic to Cloudflare by default is not a good idea and applications"
1508 - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5"
1509 - elog "(\"Off by choice\") by default."
1510 - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
1511 - fi
1512 -
1513 - # bug 713782
1514 - if [[ -n "${show_normandy_information}" ]] ; then
1515 - elog
1516 - elog "Upstream operates a service named Normandy which allows Mozilla to"
1517 - elog "push changes for default settings or even install new add-ons remotely."
1518 - elog "While this can be useful to address problems like 'Armagadd-on 2.0' or"
1519 - elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security"
1520 - elog "concerns prevail, which is why we have switched off the use of this"
1521 - elog "service by default."
1522 - elog
1523 - elog "To re-enable this service set"
1524 - elog
1525 - elog " app.normandy.enabled=true"
1526 - elog
1527 - elog "in about:config."
1528 - fi
1529 -}
1530
1531 diff --git a/www-client/firefox/firefox-90.0.2.ebuild b/www-client/firefox/firefox-90.0.2.ebuild
1532 deleted file mode 100644
1533 index b2acecd2054..00000000000
1534 --- a/www-client/firefox/firefox-90.0.2.ebuild
1535 +++ /dev/null
1536 @@ -1,1182 +0,0 @@
1537 -# Copyright 1999-2021 Gentoo Authors
1538 -# Distributed under the terms of the GNU General Public License v2
1539 -
1540 -EAPI="7"
1541 -
1542 -FIREFOX_PATCHSET="firefox-90-patches-01.tar.xz"
1543 -
1544 -LLVM_MAX_SLOT=12
1545 -
1546 -PYTHON_COMPAT=( python3_{7..9} )
1547 -PYTHON_REQ_USE="ncurses,sqlite,ssl"
1548 -
1549 -WANT_AUTOCONF="2.1"
1550 -
1551 -VIRTUALX_REQUIRED="pgo"
1552 -
1553 -MOZ_ESR=
1554 -
1555 -MOZ_PV=${PV}
1556 -MOZ_PV_SUFFIX=
1557 -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
1558 - MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
1559 -
1560 - # Convert the ebuild version to the upstream Mozilla version
1561 - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
1562 - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
1563 - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
1564 -fi
1565 -
1566 -if [[ -n ${MOZ_ESR} ]] ; then
1567 - # ESR releases have slightly different version numbers
1568 - MOZ_PV="${MOZ_PV}esr"
1569 -fi
1570 -
1571 -MOZ_PN="${PN%-bin}"
1572 -MOZ_P="${MOZ_PN}-${MOZ_PV}"
1573 -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
1574 -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
1575 -
1576 -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \
1577 - llvm multiprocessing pax-utils python-any-r1 toolchain-funcs \
1578 - virtualx xdg
1579 -
1580 -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
1581 -
1582 -if [[ ${PV} == *_rc* ]] ; then
1583 - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
1584 -fi
1585 -
1586 -PATCH_URIS=(
1587 - https://dev.gentoo.org/~{axs,polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET}
1588 -)
1589 -
1590 -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
1591 - ${PATCH_URIS[@]}"
1592 -
1593 -DESCRIPTION="Firefox Web Browser"
1594 -HOMEPAGE="https://www.mozilla.com/firefox"
1595 -
1596 -KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
1597 -
1598 -SLOT="0/$(ver_cut 1)"
1599 -LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
1600 -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free geckodriver +gmp-autoupdate
1601 - hardened hwaccel jack lto +openh264 pgo pulseaudio screencast sndio selinux
1602 - +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent
1603 - +system-libvpx +system-webp wayland wifi"
1604 -
1605 -REQUIRED_USE="debug? ( !system-av1 )
1606 - screencast? ( wayland )"
1607 -
1608 -BDEPEND="${PYTHON_DEPS}
1609 - app-arch/unzip
1610 - app-arch/zip
1611 - >=dev-util/cbindgen-0.19.0
1612 - >=net-libs/nodejs-10.23.1
1613 - virtual/pkgconfig
1614 - >=virtual/rust-1.47.0
1615 - || (
1616 - (
1617 - sys-devel/clang:12
1618 - sys-devel/llvm:12
1619 - clang? (
1620 - =sys-devel/lld-12*
1621 - pgo? ( =sys-libs/compiler-rt-sanitizers-12*[profile] )
1622 - )
1623 - )
1624 - (
1625 - sys-devel/clang:11
1626 - sys-devel/llvm:11
1627 - clang? (
1628 - =sys-devel/lld-11*
1629 - pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] )
1630 - )
1631 - )
1632 - (
1633 - sys-devel/clang:10
1634 - sys-devel/llvm:10
1635 - clang? (
1636 - =sys-devel/lld-10*
1637 - pgo? ( =sys-libs/compiler-rt-sanitizers-10*[profile] )
1638 - )
1639 - )
1640 - )
1641 - amd64? ( >=dev-lang/nasm-2.13 )
1642 - x86? ( >=dev-lang/nasm-2.13 )"
1643 -
1644 -CDEPEND="
1645 - >=dev-libs/nss-3.66
1646 - >=dev-libs/nspr-4.29
1647 - dev-libs/atk
1648 - dev-libs/expat
1649 - >=x11-libs/cairo-1.10[X]
1650 - >=x11-libs/gtk+-3.4.0:3[X]
1651 - x11-libs/gdk-pixbuf
1652 - >=x11-libs/pango-1.22.0
1653 - >=media-libs/libpng-1.6.35:0=[apng]
1654 - >=media-libs/mesa-10.2:*
1655 - media-libs/fontconfig
1656 - >=media-libs/freetype-2.4.10
1657 - kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) )
1658 - virtual/freedesktop-icon-theme
1659 - >=x11-libs/pixman-0.19.2
1660 - >=dev-libs/glib-2.26:2
1661 - >=sys-libs/zlib-1.2.3
1662 - >=dev-libs/libffi-3.0.10:=
1663 - media-video/ffmpeg
1664 - x11-libs/libX11
1665 - x11-libs/libXcomposite
1666 - x11-libs/libXdamage
1667 - x11-libs/libXext
1668 - x11-libs/libXfixes
1669 - x11-libs/libXrender
1670 - x11-libs/libXt
1671 - dbus? (
1672 - sys-apps/dbus
1673 - dev-libs/dbus-glib
1674 - )
1675 - screencast? ( media-video/pipewire:0/0.3 )
1676 - system-av1? (
1677 - >=media-libs/dav1d-0.8.1:=
1678 - >=media-libs/libaom-1.0.0:=
1679 - )
1680 - system-harfbuzz? (
1681 - >=media-libs/harfbuzz-2.7.4:0=
1682 - >=media-gfx/graphite2-1.3.13
1683 - )
1684 - system-icu? ( >=dev-libs/icu-67.1:= )
1685 - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
1686 - system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
1687 - system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
1688 - system-webp? ( >=media-libs/libwebp-1.1.0:0= )
1689 - wifi? (
1690 - kernel_linux? (
1691 - sys-apps/dbus
1692 - dev-libs/dbus-glib
1693 - net-misc/networkmanager
1694 - )
1695 - )
1696 - jack? ( virtual/jack )
1697 - selinux? ( sec-policy/selinux-mozilla )
1698 - sndio? ( media-sound/sndio )"
1699 -
1700 -RDEPEND="${CDEPEND}
1701 - jack? ( virtual/jack )
1702 - openh264? ( media-libs/openh264:*[plugin] )
1703 - pulseaudio? (
1704 - || (
1705 - media-sound/pulseaudio
1706 - >=media-sound/apulse-0.1.12-r4
1707 - )
1708 - )
1709 - selinux? ( sec-policy/selinux-mozilla )"
1710 -
1711 -DEPEND="${CDEPEND}
1712 - pulseaudio? (
1713 - || (
1714 - media-sound/pulseaudio
1715 - >=media-sound/apulse-0.1.12-r4[sdk]
1716 - )
1717 - )
1718 - wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
1719 - amd64? ( virtual/opengl )
1720 - x86? ( virtual/opengl )"
1721 -
1722 -S="${WORKDIR}/${PN}-${PV%_*}"
1723 -
1724 -# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
1725 -# overridden in the enviromnent (advanced hackers only)
1726 -if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
1727 - MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
1728 -fi
1729 -
1730 -llvm_check_deps() {
1731 - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
1732 - einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
1733 - return 1
1734 - fi
1735 -
1736 - if use clang ; then
1737 - if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
1738 - einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
1739 - return 1
1740 - fi
1741 -
1742 - if use pgo ; then
1743 - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
1744 - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
1745 - return 1
1746 - fi
1747 - fi
1748 - fi
1749 -
1750 - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
1751 -}
1752 -
1753 -MOZ_LANGS=(
1754 - ach af an ar ast az be bg bn br bs ca-valencia ca cak cs cy
1755 - da de dsb el en-CA en-GB en-US eo es-AR es-CL es-ES es-MX et eu
1756 - fa ff fi fr fy-NL ga-IE gd gl gn gu-IN he hi-IN hr hsb hu hy-AM
1757 - ia id is it ja ka kab kk km kn ko lij lt lv mk mr ms my
1758 - nb-NO ne-NP nl nn-NO oc pa-IN pl pt-BR pt-PT rm ro ru
1759 - si sk sl son sq sr sv-SE szl ta te th tl tr trs uk ur uz vi
1760 - xh zh-CN zh-TW
1761 -)
1762 -
1763 -mozilla_set_globals() {
1764 - # https://bugs.gentoo.org/587334
1765 - local MOZ_TOO_REGIONALIZED_FOR_L10N=(
1766 - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
1767 - )
1768 -
1769 - local lang xflag
1770 - for lang in "${MOZ_LANGS[@]}" ; do
1771 - # en and en_US are handled internally
1772 - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
1773 - continue
1774 - fi
1775 -
1776 - # strip region subtag if $lang is in the list
1777 - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
1778 - xflag=${lang%%-*}
1779 - else
1780 - xflag=${lang}
1781 - fi
1782 -
1783 - SRC_URI+=" l10n_${xflag/[_@]/-}? ("
1784 - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
1785 - SRC_URI+=" )"
1786 - IUSE+=" l10n_${xflag/[_@]/-}"
1787 - done
1788 -}
1789 -mozilla_set_globals
1790 -
1791 -moz_clear_vendor_checksums() {
1792 - debug-print-function ${FUNCNAME} "$@"
1793 -
1794 - if [[ ${#} -ne 1 ]] ; then
1795 - die "${FUNCNAME} requires exact one argument"
1796 - fi
1797 -
1798 - einfo "Clearing cargo checksums for ${1} ..."
1799 -
1800 - sed -i \
1801 - -e 's/\("files":{\)[^}]*/\1/' \
1802 - "${S}"/third_party/rust/${1}/.cargo-checksum.json \
1803 - || die
1804 -}
1805 -
1806 -moz_install_xpi() {
1807 - debug-print-function ${FUNCNAME} "$@"
1808 -
1809 - if [[ ${#} -lt 2 ]] ; then
1810 - die "${FUNCNAME} requires at least two arguments"
1811 - fi
1812 -
1813 - local DESTDIR=${1}
1814 - shift
1815 -
1816 - insinto "${DESTDIR}"
1817 -
1818 - local emid xpi_file xpi_tmp_dir
1819 - for xpi_file in "${@}" ; do
1820 - emid=
1821 - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
1822 -
1823 - # Unpack XPI
1824 - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
1825 -
1826 - # Determine extension ID
1827 - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
1828 - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
1829 - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
1830 - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
1831 - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
1832 - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
1833 - else
1834 - die "failed to determine extension id"
1835 - fi
1836 -
1837 - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
1838 - newins "${xpi_file}" "${emid}.xpi"
1839 - done
1840 -}
1841 -
1842 -mozconfig_add_options_ac() {
1843 - debug-print-function ${FUNCNAME} "$@"
1844 -
1845 - if [[ ${#} -lt 2 ]] ; then
1846 - die "${FUNCNAME} requires at least two arguments"
1847 - fi
1848 -
1849 - local reason=${1}
1850 - shift
1851 -
1852 - local option
1853 - for option in ${@} ; do
1854 - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
1855 - done
1856 -}
1857 -
1858 -mozconfig_add_options_mk() {
1859 - debug-print-function ${FUNCNAME} "$@"
1860 -
1861 - if [[ ${#} -lt 2 ]] ; then
1862 - die "${FUNCNAME} requires at least two arguments"
1863 - fi
1864 -
1865 - local reason=${1}
1866 - shift
1867 -
1868 - local option
1869 - for option in ${@} ; do
1870 - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
1871 - done
1872 -}
1873 -
1874 -mozconfig_use_enable() {
1875 - debug-print-function ${FUNCNAME} "$@"
1876 -
1877 - if [[ ${#} -lt 1 ]] ; then
1878 - die "${FUNCNAME} requires at least one arguments"
1879 - fi
1880 -
1881 - local flag=$(use_enable "${@}")
1882 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
1883 -}
1884 -
1885 -mozconfig_use_with() {
1886 - debug-print-function ${FUNCNAME} "$@"
1887 -
1888 - if [[ ${#} -lt 1 ]] ; then
1889 - die "${FUNCNAME} requires at least one arguments"
1890 - fi
1891 -
1892 - local flag=$(use_with "${@}")
1893 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
1894 -}
1895 -
1896 -pkg_pretend() {
1897 - if [[ ${MERGE_TYPE} != binary ]] ; then
1898 - if use pgo ; then
1899 - if ! has usersandbox $FEATURES ; then
1900 - die "You must enable usersandbox as X server can not run as root!"
1901 - fi
1902 - fi
1903 -
1904 - # Ensure we have enough disk space to compile
1905 - if use pgo || use lto || use debug ; then
1906 - CHECKREQS_DISK_BUILD="13500M"
1907 - else
1908 - CHECKREQS_DISK_BUILD="6400M"
1909 - fi
1910 -
1911 - check-reqs_pkg_pretend
1912 - fi
1913 -}
1914 -
1915 -pkg_setup() {
1916 - if [[ ${MERGE_TYPE} != binary ]] ; then
1917 - if use pgo ; then
1918 - if ! has userpriv ${FEATURES} ; then
1919 - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
1920 - fi
1921 - fi
1922 -
1923 - # Ensure we have enough disk space to compile
1924 - if use pgo || use lto || use debug ; then
1925 - CHECKREQS_DISK_BUILD="13500M"
1926 - else
1927 - CHECKREQS_DISK_BUILD="6400M"
1928 - fi
1929 -
1930 - check-reqs_pkg_setup
1931 -
1932 - llvm_pkg_setup
1933 -
1934 - if use clang && use lto ; then
1935 - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
1936 - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
1937 - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
1938 -
1939 - # temp fix for https://bugs.gentoo.org/768543
1940 - # we can assume that rust 1.{49,50}.0 always uses llvm 11
1941 - local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }')
1942 - [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}")
1943 - [[ -z ${version_rust} ]] && die "Failed to read version from rustc!"
1944 -
1945 - if ver_test "${version_rust}" -ge "1.49" && ver_test "${version_rust}" -le "1.50" ; then
1946 - local version_llvm_rust="11"
1947 - else
1948 - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
1949 - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
1950 - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
1951 - fi
1952 -
1953 - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
1954 - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
1955 - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
1956 - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
1957 - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
1958 - eerror " - Build ${CATEGORY}/${PN} without USE=lto"
1959 - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
1960 - fi
1961 - fi
1962 -
1963 - if ! use clang && [[ $(gcc-major-version) -eq 11 ]] \
1964 - && ! has_version -b ">sys-devel/gcc-11.1.0:11" ; then
1965 - # bug 792705
1966 - eerror "Using GCC 11 to compile firefox is currently known to be broken (see bug #792705)."
1967 - die "Set USE=clang or select <gcc-11 to build ${CATEGORY}/${P}."
1968 - fi
1969 -
1970 - python-any-r1_pkg_setup
1971 -
1972 - # Avoid PGO profiling problems due to enviroment leakage
1973 - # These should *always* be cleaned up anyway
1974 - unset \
1975 - DBUS_SESSION_BUS_ADDRESS \
1976 - DISPLAY \
1977 - ORBIT_SOCKETDIR \
1978 - SESSION_MANAGER \
1979 - XAUTHORITY \
1980 - XDG_CACHE_HOME \
1981 - XDG_SESSION_COOKIE
1982 -
1983 - # Build system is using /proc/self/oom_score_adj, bug #604394
1984 - addpredict /proc/self/oom_score_adj
1985 -
1986 - if ! mountpoint -q /dev/shm ; then
1987 - # If /dev/shm is not available, configure is known to fail with
1988 - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
1989 - ewarn "/dev/shm is not mounted -- expect build failures!"
1990 - fi
1991 -
1992 - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
1993 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
1994 - # get your own set of keys.
1995 - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
1996 - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
1997 - fi
1998 -
1999 - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
2000 - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
2001 - fi
2002 -
2003 - # Mozilla API keys (see https://location.services.mozilla.com/api)
2004 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
2005 - # get your own set of keys.
2006 - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
2007 - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
2008 - fi
2009 -
2010 - # Ensure we use C locale when building, bug #746215
2011 - export LC_ALL=C
2012 - fi
2013 -
2014 - CONFIG_CHECK="~SECCOMP"
2015 - WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
2016 - linux-info_pkg_setup
2017 -}
2018 -
2019 -src_unpack() {
2020 - local _lp_dir="${WORKDIR}/language_packs"
2021 - local _src_file
2022 -
2023 - if [[ ! -d "${_lp_dir}" ]] ; then
2024 - mkdir "${_lp_dir}" || die
2025 - fi
2026 -
2027 - for _src_file in ${A} ; do
2028 - if [[ ${_src_file} == *.xpi ]]; then
2029 - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
2030 - else
2031 - unpack ${_src_file}
2032 - fi
2033 - done
2034 -}
2035 -
2036 -src_prepare() {
2037 - use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
2038 - eapply "${WORKDIR}/firefox-patches"
2039 -
2040 - # Allow user to apply any additional patches without modifing ebuild
2041 - eapply_user
2042 -
2043 - # Make LTO respect MAKEOPTS
2044 - sed -i \
2045 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
2046 - "${S}"/build/moz.configure/lto-pgo.configure \
2047 - || die "sed failed to set num_cores"
2048 -
2049 - # Make ICU respect MAKEOPTS
2050 - sed -i \
2051 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
2052 - "${S}"/intl/icu_sources_data.py \
2053 - || die "sed failed to set num_cores"
2054 -
2055 - # sed-in toolchain prefix
2056 - sed -i \
2057 - -e "s/objdump/${CHOST}-objdump/" \
2058 - "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
2059 - || die "sed failed to set toolchain prefix"
2060 -
2061 - sed -i \
2062 - -e 's/ccache_stats = None/return None/' \
2063 - "${S}"/python/mozbuild/mozbuild/controller/building.py \
2064 - || die "sed failed to disable ccache stats call"
2065 -
2066 - einfo "Removing pre-built binaries ..."
2067 - find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
2068 -
2069 - # Clearing checksums where we have applied patches
2070 - moz_clear_vendor_checksums target-lexicon-0.9.0
2071 -
2072 - # Create build dir
2073 - BUILD_DIR="${WORKDIR}/${PN}_build"
2074 - mkdir -p "${BUILD_DIR}" || die
2075 -
2076 - # Write API keys to disk
2077 - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
2078 - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
2079 - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
2080 -
2081 - xdg_src_prepare
2082 -}
2083 -
2084 -src_configure() {
2085 - # Show flags set at the beginning
2086 - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
2087 - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
2088 - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
2089 - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
2090 - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
2091 -
2092 - local have_switched_compiler=
2093 - if use clang && ! tc-is-clang ; then
2094 - # Force clang
2095 - einfo "Enforcing the use of clang due to USE=clang ..."
2096 - have_switched_compiler=yes
2097 - AR=llvm-ar
2098 - CC=${CHOST}-clang
2099 - CXX=${CHOST}-clang++
2100 - NM=llvm-nm
2101 - RANLIB=llvm-ranlib
2102 - elif ! use clang && ! tc-is-gcc ; then
2103 - # Force gcc
2104 - have_switched_compiler=yes
2105 - einfo "Enforcing the use of gcc due to USE=-clang ..."
2106 - AR=gcc-ar
2107 - CC=${CHOST}-gcc
2108 - CXX=${CHOST}-g++
2109 - NM=gcc-nm
2110 - RANLIB=gcc-ranlib
2111 - fi
2112 -
2113 - if [[ -n "${have_switched_compiler}" ]] ; then
2114 - # Because we switched active compiler we have to ensure
2115 - # that no unsupported flags are set
2116 - strip-unsupported-flags
2117 - fi
2118 -
2119 - # Ensure we use correct toolchain
2120 - export HOST_CC="$(tc-getBUILD_CC)"
2121 - export HOST_CXX="$(tc-getBUILD_CXX)"
2122 - tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
2123 -
2124 - # Pass the correct toolchain paths through cbindgen
2125 - if tc-is-cross-compiler ; then
2126 - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
2127 - fi
2128 -
2129 - # Set MOZILLA_FIVE_HOME
2130 - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
2131 -
2132 - # python/mach/mach/mixin/process.py fails to detect SHELL
2133 - export SHELL="${EPREFIX}/bin/bash"
2134 -
2135 - # Set MOZCONFIG
2136 - export MOZCONFIG="${S}/.mozconfig"
2137 -
2138 - # Initialize MOZCONFIG
2139 - mozconfig_add_options_ac '' --enable-application=browser
2140 -
2141 - # Set Gentoo defaults
2142 - export MOZILLA_OFFICIAL=1
2143 -
2144 - mozconfig_add_options_ac 'Gentoo default' \
2145 - --allow-addon-sideload \
2146 - --disable-cargo-incremental \
2147 - --disable-crashreporter \
2148 - --disable-install-strip \
2149 - --disable-strip \
2150 - --disable-updater \
2151 - --enable-official-branding \
2152 - --enable-release \
2153 - --enable-system-ffi \
2154 - --enable-system-pixman \
2155 - --host="${CBUILD:-${CHOST}}" \
2156 - --libdir="${EPREFIX}/usr/$(get_libdir)" \
2157 - --prefix="${EPREFIX}/usr" \
2158 - --target="${CHOST}" \
2159 - --without-ccache \
2160 - --with-intl-api \
2161 - --with-libclang-path="$(llvm-config --libdir)" \
2162 - --with-system-nspr \
2163 - --with-system-nss \
2164 - --with-system-png \
2165 - --with-system-zlib \
2166 - --with-toolchain-prefix="${CHOST}-" \
2167 - --with-unsigned-addon-scopes=app,system \
2168 - --x-includes="${SYSROOT}${EPREFIX}/usr/include" \
2169 - --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)"
2170 -
2171 - # Set update channel
2172 - local update_channel=release
2173 - [[ -n ${MOZ_ESR} ]] && update_channel=esr
2174 - mozconfig_add_options_ac '' --update-channel=${update_channel}
2175 -
2176 - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
2177 - mozconfig_add_options_ac '' --enable-rust-simd
2178 - fi
2179 -
2180 - if [[ -s "${S}/api-google.key" ]] ; then
2181 - local key_origin="Gentoo default"
2182 - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
2183 - key_origin="User value"
2184 - fi
2185 -
2186 - mozconfig_add_options_ac "${key_origin}" \
2187 - --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
2188 - else
2189 - einfo "Building without Google API key ..."
2190 - fi
2191 -
2192 - if [[ -s "${S}/api-location.key" ]] ; then
2193 - local key_origin="Gentoo default"
2194 - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
2195 - key_origin="User value"
2196 - fi
2197 -
2198 - mozconfig_add_options_ac "${key_origin}" \
2199 - --with-google-location-service-api-keyfile="${S}/api-location.key"
2200 - else
2201 - einfo "Building without Location API key ..."
2202 - fi
2203 -
2204 - if [[ -s "${S}/api-mozilla.key" ]] ; then
2205 - local key_origin="Gentoo default"
2206 - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
2207 - key_origin="User value"
2208 - fi
2209 -
2210 - mozconfig_add_options_ac "${key_origin}" \
2211 - --with-mozilla-api-keyfile="${S}/api-mozilla.key"
2212 - else
2213 - einfo "Building without Mozilla API key ..."
2214 - fi
2215 -
2216 - mozconfig_use_with system-av1
2217 - mozconfig_use_with system-harfbuzz
2218 - mozconfig_use_with system-harfbuzz system-graphite2
2219 - mozconfig_use_with system-icu
2220 - mozconfig_use_with system-jpeg
2221 - mozconfig_use_with system-libevent system-libevent "${SYSROOT}${EPREFIX}/usr"
2222 - mozconfig_use_with system-libvpx
2223 - mozconfig_use_with system-webp
2224 -
2225 - mozconfig_use_enable dbus
2226 -
2227 - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
2228 -
2229 - mozconfig_use_enable geckodriver
2230 -
2231 - if use hardened ; then
2232 - mozconfig_add_options_ac "+hardened" --enable-hardening
2233 - append-ldflags "-Wl,-z,relro -Wl,-z,now"
2234 - fi
2235 -
2236 - mozconfig_use_enable jack
2237 -
2238 - mozconfig_use_enable pulseaudio
2239 - # force the deprecated alsa sound code if pulseaudio is disabled
2240 - if use kernel_linux && ! use pulseaudio ; then
2241 - mozconfig_add_options_ac '-pulseaudio' --enable-alsa
2242 - fi
2243 -
2244 - mozconfig_use_enable sndio
2245 -
2246 - mozconfig_use_enable wifi necko-wifi
2247 -
2248 - if use wayland ; then
2249 - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland
2250 - else
2251 - mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3
2252 - fi
2253 -
2254 - if use lto ; then
2255 - if use clang ; then
2256 - # Upstream only supports lld when using clang
2257 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
2258 -
2259 - mozconfig_add_options_ac '+lto' --enable-lto=cross
2260 - else
2261 - # ThinLTO is currently broken, see bmo#1644409
2262 - mozconfig_add_options_ac '+lto' --enable-lto=full
2263 - fi
2264 -
2265 - if use pgo ; then
2266 - mozconfig_add_options_ac '+pgo' MOZ_PGO=1
2267 -
2268 - if use clang ; then
2269 - # Used in build/pgo/profileserver.py
2270 - export LLVM_PROFDATA="llvm-profdata"
2271 - fi
2272 - fi
2273 - else
2274 - # Avoid auto-magic on linker
2275 - if use clang ; then
2276 - # This is upstream's default
2277 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
2278 - else
2279 - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
2280 - fi
2281 - fi
2282 -
2283 - # LTO flag was handled via configure
2284 - filter-flags '-flto*'
2285 -
2286 - mozconfig_use_enable debug
2287 - if use debug ; then
2288 - mozconfig_add_options_ac '+debug' --disable-optimize
2289 - else
2290 - if is-flag '-g*' ; then
2291 - if use clang ; then
2292 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
2293 - else
2294 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
2295 - fi
2296 - else
2297 - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
2298 - fi
2299 -
2300 - if is-flag '-O0' ; then
2301 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
2302 - elif is-flag '-O4' ; then
2303 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
2304 - elif is-flag '-O3' ; then
2305 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
2306 - elif is-flag '-O1' ; then
2307 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
2308 - elif is-flag '-Os' ; then
2309 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
2310 - else
2311 - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
2312 - fi
2313 - fi
2314 -
2315 - # Debug flag was handled via configure
2316 - filter-flags '-g*'
2317 -
2318 - # Optimization flag was handled via configure
2319 - filter-flags '-O*'
2320 -
2321 - # Modifications to better support ARM, bug #553364
2322 - if use cpu_flags_arm_neon ; then
2323 - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
2324 -
2325 - if ! tc-is-clang ; then
2326 - # thumb options aren't supported when using clang, bug 666966
2327 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \
2328 - --with-thumb=yes \
2329 - --with-thumb-interwork=no
2330 - fi
2331 - fi
2332 -
2333 - if [[ ${CHOST} == armv*h* ]] ; then
2334 - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
2335 -
2336 - if ! use system-libvpx ; then
2337 - sed -i \
2338 - -e "s|softfp|hard|" \
2339 - "${S}"/media/libvpx/moz.build \
2340 - || die
2341 - fi
2342 - fi
2343 -
2344 - if use clang ; then
2345 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
2346 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
2347 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
2348 - local disable_elf_hack=
2349 - if use amd64 ; then
2350 - disable_elf_hack=yes
2351 - elif use x86 ; then
2352 - disable_elf_hack=yes
2353 - elif use arm ; then
2354 - disable_elf_hack=yes
2355 - fi
2356 -
2357 - if [[ -n ${disable_elf_hack} ]] ; then
2358 - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack
2359 - fi
2360 - elif tc-is-gcc ; then
2361 - if ver_test $(gcc-fullversion) -ge 10 ; then
2362 - einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..."
2363 - append-cxxflags -fno-tree-loop-vectorize
2364 - fi
2365 - fi
2366 -
2367 - # Additional ARCH support
2368 - case "${ARCH}" in
2369 - arm)
2370 - # Reduce the memory requirements for linking
2371 - if use clang ; then
2372 - # Nothing to do
2373 - :;
2374 - elif tc-ld-is-gold || use lto ; then
2375 - append-ldflags -Wl,--no-keep-memory
2376 - else
2377 - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
2378 - fi
2379 - ;;
2380 - esac
2381 -
2382 - if ! use elibc_glibc ; then
2383 - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
2384 - fi
2385 -
2386 - # Allow elfhack to work in combination with unstripped binaries
2387 - # when they would normally be larger than 2GiB.
2388 - append-ldflags "-Wl,--compress-debug-sections=zlib"
2389 -
2390 - # Make revdep-rebuild.sh happy; Also required for musl
2391 - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
2392 -
2393 - # Pass $MAKEOPTS to build system
2394 - export MOZ_MAKE_FLAGS="${MAKEOPTS}"
2395 -
2396 - # Use system's Python environment
2397 - export MACH_USE_SYSTEM_PYTHON=1
2398 -
2399 - # Disable notification when build system has finished
2400 - export MOZ_NOSPAM=1
2401 -
2402 - # Portage sets XARGS environment variable to "xargs -r" by default which
2403 - # breaks build system's check_prog() function which doesn't support arguments
2404 - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
2405 -
2406 - # Set build dir
2407 - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
2408 -
2409 - # Show flags we will use
2410 - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
2411 - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
2412 - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
2413 - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
2414 - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
2415 -
2416 - # Handle EXTRA_CONF and show summary
2417 - local ac opt hash reason
2418 -
2419 - # Apply EXTRA_ECONF entries to $MOZCONFIG
2420 - if [[ -n ${EXTRA_ECONF} ]] ; then
2421 - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
2422 - for opt in "${ac[@]}"; do
2423 - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
2424 - done
2425 - fi
2426 -
2427 - echo
2428 - echo "=========================================================="
2429 - echo "Building ${PF} with the following configuration"
2430 - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
2431 - [[ -z ${hash} || ${hash} == \# ]] \
2432 - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
2433 - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
2434 - done
2435 - echo "=========================================================="
2436 - echo
2437 -
2438 - ./mach configure || die
2439 -}
2440 -
2441 -src_compile() {
2442 - local virtx_cmd=
2443 -
2444 - if use pgo ; then
2445 - virtx_cmd=virtx
2446 -
2447 - # Reset and cleanup environment variables used by GNOME/XDG
2448 - gnome2_environment_reset
2449 -
2450 - addpredict /root
2451 - fi
2452 -
2453 - local -x GDK_BACKEND=x11
2454 -
2455 - ${virtx_cmd} ./mach build --verbose \
2456 - || die
2457 -}
2458 -
2459 -src_install() {
2460 - # xpcshell is getting called during install
2461 - pax-mark m \
2462 - "${BUILD_DIR}"/dist/bin/xpcshell \
2463 - "${BUILD_DIR}"/dist/bin/${PN} \
2464 - "${BUILD_DIR}"/dist/bin/plugin-container
2465 -
2466 - DESTDIR="${D}" ./mach install || die
2467 -
2468 - # Upstream cannot ship symlink but we can (bmo#658850)
2469 - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
2470 - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
2471 -
2472 - # Don't install llvm-symbolizer from sys-devel/llvm package
2473 - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
2474 - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
2475 - fi
2476 -
2477 - # Install policy (currently only used to disable application updates)
2478 - insinto "${MOZILLA_FIVE_HOME}/distribution"
2479 - newins "${FILESDIR}"/distribution.ini distribution.ini
2480 - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
2481 -
2482 - # Install system-wide preferences
2483 - local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences"
2484 - insinto "${PREFS_DIR}"
2485 - newins "${FILESDIR}"/gentoo-default-prefs.js all-gentoo.js
2486 -
2487 - local GENTOO_PREFS="${ED}${PREFS_DIR}/all-gentoo.js"
2488 -
2489 - # Set dictionary path to use system hunspell
2490 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
2491 - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
2492 - EOF
2493 -
2494 - # Force hwaccel prefs if USE=hwaccel is enabled
2495 - if use hwaccel ; then
2496 - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \
2497 - >>"${GENTOO_PREFS}" \
2498 - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
2499 - fi
2500 -
2501 - if ! use gmp-autoupdate ; then
2502 - local plugin
2503 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
2504 - einfo "Disabling auto-update for ${plugin} plugin ..."
2505 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
2506 - pref("media.${plugin}.autoupdate", false);
2507 - EOF
2508 - done
2509 - fi
2510 -
2511 - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
2512 - if use system-harfbuzz ; then
2513 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
2514 - sticky_pref("gfx.font_rendering.graphite.enabled", true);
2515 - EOF
2516 - fi
2517 -
2518 - # Install language packs
2519 - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
2520 - if [[ -n "${langpacks}" ]] ; then
2521 - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
2522 - fi
2523 -
2524 - # Install geckodriver
2525 - if use geckodriver ; then
2526 - einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..."
2527 - pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
2528 - exeinto "${MOZILLA_FIVE_HOME}"
2529 - doexe "${BUILD_DIR}"/dist/bin/geckodriver
2530 -
2531 - dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
2532 - fi
2533 -
2534 - # Install icons
2535 - local icon_srcdir="${S}/browser/branding/official"
2536 - local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg"
2537 -
2538 - insinto /usr/share/icons/hicolor/symbolic/apps
2539 - newins "${icon_symbolic_file}" ${PN}-symbolic.svg
2540 -
2541 - local icon size
2542 - for icon in "${icon_srcdir}"/default*.png ; do
2543 - size=${icon%.png}
2544 - size=${size##*/default}
2545 -
2546 - if [[ ${size} -eq 48 ]] ; then
2547 - newicon "${icon}" ${PN}.png
2548 - fi
2549 -
2550 - newicon -s ${size} "${icon}" ${PN}.png
2551 - done
2552 -
2553 - # Install menus
2554 - local wrapper_wayland="${PN}-wayland.sh"
2555 - local wrapper_x11="${PN}-x11.sh"
2556 - local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop"
2557 - local display_protocols="auto X11"
2558 - local icon="${PN}"
2559 - local name="Mozilla ${MOZ_PN^}"
2560 - local use_wayland="false"
2561 -
2562 - if use wayland ; then
2563 - display_protocols+=" Wayland"
2564 - use_wayland="true"
2565 - fi
2566 -
2567 - local app_name desktop_filename display_protocol exec_command
2568 - for display_protocol in ${display_protocols} ; do
2569 - app_name="${name} on ${display_protocol}"
2570 - desktop_filename="${PN}-${display_protocol,,}.desktop"
2571 -
2572 - case ${display_protocol} in
2573 - Wayland)
2574 - exec_command="${PN}-wayland --name ${PN}-wayland"
2575 - newbin "${FILESDIR}/${wrapper_wayland}" ${PN}-wayland
2576 - ;;
2577 - X11)
2578 - if ! use wayland ; then
2579 - # Exit loop here because there's no choice so
2580 - # we don't need wrapper/.desktop file for X11.
2581 - continue
2582 - fi
2583 -
2584 - exec_command="${PN}-x11 --name ${PN}-x11"
2585 - newbin "${FILESDIR}/${wrapper_x11}" ${PN}-x11
2586 - ;;
2587 - *)
2588 - app_name="${name}"
2589 - desktop_filename="${PN}.desktop"
2590 - exec_command="${PN}"
2591 - ;;
2592 - esac
2593 -
2594 - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
2595 -
2596 - sed -i \
2597 - -e "s:@NAME@:${app_name}:" \
2598 - -e "s:@EXEC@:${exec_command}:" \
2599 - -e "s:@ICON@:${icon}:" \
2600 - "${WORKDIR}/${PN}.desktop-template" \
2601 - || die
2602 -
2603 - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
2604 -
2605 - rm "${WORKDIR}/${PN}.desktop-template" || die
2606 - done
2607 -
2608 - # Install generic wrapper script
2609 - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
2610 - newbin "${FILESDIR}/${PN}.sh" ${PN}
2611 -
2612 - # Update wrapper
2613 - local wrapper
2614 - for wrapper in \
2615 - "${ED}/usr/bin/${PN}" \
2616 - "${ED}/usr/bin/${PN}-x11" \
2617 - "${ED}/usr/bin/${PN}-wayland" \
2618 - ; do
2619 - [[ ! -f "${wrapper}" ]] && continue
2620 -
2621 - sed -i \
2622 - -e "s:@PREFIX@:${EPREFIX}/usr:" \
2623 - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
2624 - -e "s:@APULSELIB_DIR@:${apulselib}:" \
2625 - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
2626 - "${wrapper}" \
2627 - || die
2628 - done
2629 -}
2630 -
2631 -pkg_preinst() {
2632 - xdg_pkg_preinst
2633 -
2634 - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
2635 - # does not need to be forced into the LD_LIBRARY_PATH
2636 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
2637 - einfo "APULSE found; Generating library symlinks for sound support ..."
2638 - local lib
2639 - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die
2640 - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
2641 - # A quickpkg rolled by hand will grab symlinks as part of the package,
2642 - # so we need to avoid creating them if they already exist.
2643 - if [[ ! -L ${lib##*/} ]] ; then
2644 - ln -s "${lib}" ${lib##*/} || die
2645 - fi
2646 - done
2647 - popd &>/dev/null || die
2648 - fi
2649 -}
2650 -
2651 -pkg_postinst() {
2652 - xdg_pkg_postinst
2653 -
2654 - if ! use gmp-autoupdate ; then
2655 - elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
2656 - elog "installing into new profiles:"
2657 - local plugin
2658 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
2659 - elog "\t ${plugin}"
2660 - done
2661 - elog
2662 - fi
2663 -
2664 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
2665 - elog "Apulse was detected at merge time on this system and so it will always be"
2666 - elog "used for sound. If you wish to use pulseaudio instead please unmerge"
2667 - elog "media-sound/apulse."
2668 - elog
2669 - fi
2670 -
2671 - local show_doh_information show_normandy_information
2672 -
2673 - if [[ -z "${REPLACING_VERSIONS}" ]] ; then
2674 - # New install; Tell user that DoH is disabled by default
2675 - show_doh_information=yes
2676 - show_normandy_information=yes
2677 - else
2678 - local replacing_version
2679 - for replacing_version in ${REPLACING_VERSIONS} ; do
2680 - if ver_test "${replacing_version}" -lt 70 ; then
2681 - # Tell user only once about our DoH default
2682 - show_doh_information=yes
2683 - fi
2684 -
2685 - if ver_test "${replacing_version}" -lt 74.0-r2 ; then
2686 - # Tell user only once about our Normandy default
2687 - show_normandy_information=yes
2688 - fi
2689 - done
2690 - fi
2691 -
2692 - if [[ -n "${show_doh_information}" ]] ; then
2693 - elog
2694 - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):"
2695 - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all"
2696 - elog "DNS traffic to Cloudflare by default is not a good idea and applications"
2697 - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5"
2698 - elog "(\"Off by choice\") by default."
2699 - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
2700 - fi
2701 -
2702 - # bug 713782
2703 - if [[ -n "${show_normandy_information}" ]] ; then
2704 - elog
2705 - elog "Upstream operates a service named Normandy which allows Mozilla to"
2706 - elog "push changes for default settings or even install new add-ons remotely."
2707 - elog "While this can be useful to address problems like 'Armagadd-on 2.0' or"
2708 - elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security"
2709 - elog "concerns prevail, which is why we have switched off the use of this"
2710 - elog "service by default."
2711 - elog
2712 - elog "To re-enable this service set"
2713 - elog
2714 - elog " app.normandy.enabled=true"
2715 - elog
2716 - elog "in about:config."
2717 - fi
2718 -}
2719
2720 diff --git a/www-client/firefox/firefox-91.0.ebuild b/www-client/firefox/firefox-91.0.ebuild
2721 deleted file mode 100644
2722 index 5cb81b5976c..00000000000
2723 --- a/www-client/firefox/firefox-91.0.ebuild
2724 +++ /dev/null
2725 @@ -1,1149 +0,0 @@
2726 -# Copyright 1999-2021 Gentoo Authors
2727 -# Distributed under the terms of the GNU General Public License v2
2728 -
2729 -EAPI="7"
2730 -
2731 -FIREFOX_PATCHSET="firefox-91-patches-01.tar.xz"
2732 -
2733 -LLVM_MAX_SLOT=12
2734 -
2735 -PYTHON_COMPAT=( python3_{7..10} )
2736 -PYTHON_REQ_USE="ncurses,sqlite,ssl"
2737 -
2738 -WANT_AUTOCONF="2.1"
2739 -
2740 -VIRTUALX_REQUIRED="pgo"
2741 -
2742 -MOZ_ESR=
2743 -
2744 -MOZ_PV=${PV}
2745 -MOZ_PV_SUFFIX=
2746 -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
2747 - MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
2748 -
2749 - # Convert the ebuild version to the upstream Mozilla version
2750 - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
2751 - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
2752 - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
2753 -fi
2754 -
2755 -if [[ -n ${MOZ_ESR} ]] ; then
2756 - # ESR releases have slightly different version numbers
2757 - MOZ_PV="${MOZ_PV}esr"
2758 -fi
2759 -
2760 -MOZ_PN="${PN%-bin}"
2761 -MOZ_P="${MOZ_PN}-${MOZ_PV}"
2762 -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
2763 -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
2764 -
2765 -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \
2766 - llvm multiprocessing pax-utils python-any-r1 toolchain-funcs \
2767 - virtualx xdg
2768 -
2769 -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
2770 -
2771 -if [[ ${PV} == *_rc* ]] ; then
2772 - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
2773 -fi
2774 -
2775 -PATCH_URIS=(
2776 - https://dev.gentoo.org/~{axs,polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET}
2777 -)
2778 -
2779 -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
2780 - ${PATCH_URIS[@]}"
2781 -
2782 -DESCRIPTION="Firefox Web Browser"
2783 -HOMEPAGE="https://www.mozilla.com/firefox"
2784 -
2785 -KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
2786 -
2787 -SLOT="0/$(ver_cut 1)"
2788 -LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
2789 -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free geckodriver +gmp-autoupdate
2790 - hardened hwaccel jack lto +openh264 pgo pulseaudio screencast sndio selinux
2791 - +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent
2792 - +system-libvpx +system-webp wayland wifi"
2793 -
2794 -REQUIRED_USE="debug? ( !system-av1 )
2795 - screencast? ( wayland )"
2796 -
2797 -BDEPEND="${PYTHON_DEPS}
2798 - app-arch/unzip
2799 - app-arch/zip
2800 - >=dev-util/cbindgen-0.19.0
2801 - >=net-libs/nodejs-10.23.1
2802 - virtual/pkgconfig
2803 - >=virtual/rust-1.51.0
2804 - || (
2805 - (
2806 - sys-devel/clang:12
2807 - sys-devel/llvm:12
2808 - clang? (
2809 - =sys-devel/lld-12*
2810 - pgo? ( =sys-libs/compiler-rt-sanitizers-12*[profile] )
2811 - )
2812 - )
2813 - (
2814 - sys-devel/clang:11
2815 - sys-devel/llvm:11
2816 - clang? (
2817 - =sys-devel/lld-11*
2818 - pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] )
2819 - )
2820 - )
2821 - (
2822 - sys-devel/clang:10
2823 - sys-devel/llvm:10
2824 - clang? (
2825 - =sys-devel/lld-10*
2826 - pgo? ( =sys-libs/compiler-rt-sanitizers-10*[profile] )
2827 - )
2828 - )
2829 - )
2830 - amd64? ( >=dev-lang/nasm-2.13 )
2831 - x86? ( >=dev-lang/nasm-2.13 )"
2832 -
2833 -CDEPEND="
2834 - >=dev-libs/nss-3.68
2835 - >=dev-libs/nspr-4.32
2836 - dev-libs/atk
2837 - dev-libs/expat
2838 - >=x11-libs/cairo-1.10[X]
2839 - >=x11-libs/gtk+-3.4.0:3[X]
2840 - x11-libs/gdk-pixbuf
2841 - >=x11-libs/pango-1.22.0
2842 - >=media-libs/libpng-1.6.35:0=[apng]
2843 - >=media-libs/mesa-10.2:*
2844 - media-libs/fontconfig
2845 - >=media-libs/freetype-2.4.10
2846 - kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) )
2847 - virtual/freedesktop-icon-theme
2848 - >=x11-libs/pixman-0.19.2
2849 - >=dev-libs/glib-2.26:2
2850 - >=sys-libs/zlib-1.2.3
2851 - >=dev-libs/libffi-3.0.10:=
2852 - media-video/ffmpeg
2853 - x11-libs/libX11
2854 - x11-libs/libXcomposite
2855 - x11-libs/libXdamage
2856 - x11-libs/libXext
2857 - x11-libs/libXfixes
2858 - x11-libs/libXrender
2859 - x11-libs/libXt
2860 - dbus? (
2861 - sys-apps/dbus
2862 - dev-libs/dbus-glib
2863 - )
2864 - screencast? ( media-video/pipewire:0/0.3 )
2865 - system-av1? (
2866 - >=media-libs/dav1d-0.8.1:=
2867 - >=media-libs/libaom-1.0.0:=
2868 - )
2869 - system-harfbuzz? (
2870 - >=media-libs/harfbuzz-2.8.1:0=
2871 - >=media-gfx/graphite2-1.3.13
2872 - )
2873 - system-icu? ( >=dev-libs/icu-69.1:= )
2874 - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
2875 - system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
2876 - system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
2877 - system-webp? ( >=media-libs/libwebp-1.1.0:0= )
2878 - wifi? (
2879 - kernel_linux? (
2880 - sys-apps/dbus
2881 - dev-libs/dbus-glib
2882 - net-misc/networkmanager
2883 - )
2884 - )
2885 - jack? ( virtual/jack )
2886 - selinux? ( sec-policy/selinux-mozilla )
2887 - sndio? ( media-sound/sndio )"
2888 -
2889 -RDEPEND="${CDEPEND}
2890 - jack? ( virtual/jack )
2891 - openh264? ( media-libs/openh264:*[plugin] )
2892 - pulseaudio? (
2893 - || (
2894 - media-sound/pulseaudio
2895 - >=media-sound/apulse-0.1.12-r4
2896 - )
2897 - )
2898 - selinux? ( sec-policy/selinux-mozilla )"
2899 -
2900 -DEPEND="${CDEPEND}
2901 - pulseaudio? (
2902 - || (
2903 - media-sound/pulseaudio
2904 - >=media-sound/apulse-0.1.12-r4[sdk]
2905 - )
2906 - )
2907 - wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
2908 - amd64? ( virtual/opengl )
2909 - x86? ( virtual/opengl )"
2910 -
2911 -S="${WORKDIR}/${PN}-${PV%_*}"
2912 -
2913 -# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
2914 -# overridden in the enviromnent (advanced hackers only)
2915 -if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
2916 - MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
2917 -fi
2918 -
2919 -llvm_check_deps() {
2920 - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
2921 - einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
2922 - return 1
2923 - fi
2924 -
2925 - if use clang ; then
2926 - if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
2927 - einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
2928 - return 1
2929 - fi
2930 -
2931 - if use pgo ; then
2932 - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
2933 - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
2934 - return 1
2935 - fi
2936 - fi
2937 - fi
2938 -
2939 - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
2940 -}
2941 -
2942 -MOZ_LANGS=(
2943 - ach af an ar ast az be bg bn br bs ca-valencia ca cak cs cy
2944 - da de dsb el en-CA en-GB en-US eo es-AR es-CL es-ES es-MX et eu
2945 - fa ff fi fr fy-NL ga-IE gd gl gn gu-IN he hi-IN hr hsb hu hy-AM
2946 - ia id is it ja ka kab kk km kn ko lij lt lv mk mr ms my
2947 - nb-NO ne-NP nl nn-NO oc pa-IN pl pt-BR pt-PT rm ro ru
2948 - si sk sl son sq sr sv-SE szl ta te th tl tr trs uk ur uz vi
2949 - xh zh-CN zh-TW
2950 -)
2951 -
2952 -mozilla_set_globals() {
2953 - # https://bugs.gentoo.org/587334
2954 - local MOZ_TOO_REGIONALIZED_FOR_L10N=(
2955 - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
2956 - )
2957 -
2958 - local lang xflag
2959 - for lang in "${MOZ_LANGS[@]}" ; do
2960 - # en and en_US are handled internally
2961 - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
2962 - continue
2963 - fi
2964 -
2965 - # strip region subtag if $lang is in the list
2966 - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
2967 - xflag=${lang%%-*}
2968 - else
2969 - xflag=${lang}
2970 - fi
2971 -
2972 - SRC_URI+=" l10n_${xflag/[_@]/-}? ("
2973 - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
2974 - SRC_URI+=" )"
2975 - IUSE+=" l10n_${xflag/[_@]/-}"
2976 - done
2977 -}
2978 -mozilla_set_globals
2979 -
2980 -moz_clear_vendor_checksums() {
2981 - debug-print-function ${FUNCNAME} "$@"
2982 -
2983 - if [[ ${#} -ne 1 ]] ; then
2984 - die "${FUNCNAME} requires exact one argument"
2985 - fi
2986 -
2987 - einfo "Clearing cargo checksums for ${1} ..."
2988 -
2989 - sed -i \
2990 - -e 's/\("files":{\)[^}]*/\1/' \
2991 - "${S}"/third_party/rust/${1}/.cargo-checksum.json \
2992 - || die
2993 -}
2994 -
2995 -moz_install_xpi() {
2996 - debug-print-function ${FUNCNAME} "$@"
2997 -
2998 - if [[ ${#} -lt 2 ]] ; then
2999 - die "${FUNCNAME} requires at least two arguments"
3000 - fi
3001 -
3002 - local DESTDIR=${1}
3003 - shift
3004 -
3005 - insinto "${DESTDIR}"
3006 -
3007 - local emid xpi_file xpi_tmp_dir
3008 - for xpi_file in "${@}" ; do
3009 - emid=
3010 - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
3011 -
3012 - # Unpack XPI
3013 - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
3014 -
3015 - # Determine extension ID
3016 - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
3017 - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
3018 - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
3019 - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
3020 - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
3021 - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
3022 - else
3023 - die "failed to determine extension id"
3024 - fi
3025 -
3026 - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
3027 - newins "${xpi_file}" "${emid}.xpi"
3028 - done
3029 -}
3030 -
3031 -mozconfig_add_options_ac() {
3032 - debug-print-function ${FUNCNAME} "$@"
3033 -
3034 - if [[ ${#} -lt 2 ]] ; then
3035 - die "${FUNCNAME} requires at least two arguments"
3036 - fi
3037 -
3038 - local reason=${1}
3039 - shift
3040 -
3041 - local option
3042 - for option in ${@} ; do
3043 - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
3044 - done
3045 -}
3046 -
3047 -mozconfig_add_options_mk() {
3048 - debug-print-function ${FUNCNAME} "$@"
3049 -
3050 - if [[ ${#} -lt 2 ]] ; then
3051 - die "${FUNCNAME} requires at least two arguments"
3052 - fi
3053 -
3054 - local reason=${1}
3055 - shift
3056 -
3057 - local option
3058 - for option in ${@} ; do
3059 - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
3060 - done
3061 -}
3062 -
3063 -mozconfig_use_enable() {
3064 - debug-print-function ${FUNCNAME} "$@"
3065 -
3066 - if [[ ${#} -lt 1 ]] ; then
3067 - die "${FUNCNAME} requires at least one arguments"
3068 - fi
3069 -
3070 - local flag=$(use_enable "${@}")
3071 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
3072 -}
3073 -
3074 -mozconfig_use_with() {
3075 - debug-print-function ${FUNCNAME} "$@"
3076 -
3077 - if [[ ${#} -lt 1 ]] ; then
3078 - die "${FUNCNAME} requires at least one arguments"
3079 - fi
3080 -
3081 - local flag=$(use_with "${@}")
3082 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
3083 -}
3084 -
3085 -pkg_pretend() {
3086 - if [[ ${MERGE_TYPE} != binary ]] ; then
3087 - if use pgo ; then
3088 - if ! has usersandbox $FEATURES ; then
3089 - die "You must enable usersandbox as X server can not run as root!"
3090 - fi
3091 - fi
3092 -
3093 - # Ensure we have enough disk space to compile
3094 - if use pgo || use lto || use debug ; then
3095 - CHECKREQS_DISK_BUILD="13500M"
3096 - else
3097 - CHECKREQS_DISK_BUILD="6400M"
3098 - fi
3099 -
3100 - check-reqs_pkg_pretend
3101 - fi
3102 -}
3103 -
3104 -pkg_setup() {
3105 - if [[ ${MERGE_TYPE} != binary ]] ; then
3106 - if use pgo ; then
3107 - if ! has userpriv ${FEATURES} ; then
3108 - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
3109 - fi
3110 - fi
3111 -
3112 - # Ensure we have enough disk space to compile
3113 - if use pgo || use lto || use debug ; then
3114 - CHECKREQS_DISK_BUILD="13500M"
3115 - else
3116 - CHECKREQS_DISK_BUILD="6400M"
3117 - fi
3118 -
3119 - check-reqs_pkg_setup
3120 -
3121 - llvm_pkg_setup
3122 -
3123 - if use clang && use lto ; then
3124 - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
3125 - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
3126 - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
3127 -
3128 - # temp fix for https://bugs.gentoo.org/768543
3129 - # we can assume that rust 1.{49,50}.0 always uses llvm 11
3130 - local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }')
3131 - [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}")
3132 - [[ -z ${version_rust} ]] && die "Failed to read version from rustc!"
3133 -
3134 - if ver_test "${version_rust}" -ge "1.49" && ver_test "${version_rust}" -le "1.50" ; then
3135 - local version_llvm_rust="11"
3136 - else
3137 - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
3138 - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
3139 - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
3140 - fi
3141 -
3142 - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
3143 - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
3144 - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
3145 - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
3146 - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
3147 - eerror " - Build ${CATEGORY}/${PN} without USE=lto"
3148 - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
3149 - fi
3150 - fi
3151 -
3152 - if ! use clang && [[ $(gcc-major-version) -eq 11 ]] \
3153 - && ! has_version -b ">sys-devel/gcc-11.1.0:11" ; then
3154 - # bug 792705
3155 - eerror "Using GCC 11 to compile firefox is currently known to be broken (see bug #792705)."
3156 - die "Set USE=clang or select <gcc-11 to build ${CATEGORY}/${P}."
3157 - fi
3158 -
3159 - python-any-r1_pkg_setup
3160 -
3161 - # Avoid PGO profiling problems due to enviroment leakage
3162 - # These should *always* be cleaned up anyway
3163 - unset \
3164 - DBUS_SESSION_BUS_ADDRESS \
3165 - DISPLAY \
3166 - ORBIT_SOCKETDIR \
3167 - SESSION_MANAGER \
3168 - XAUTHORITY \
3169 - XDG_CACHE_HOME \
3170 - XDG_SESSION_COOKIE
3171 -
3172 - # Build system is using /proc/self/oom_score_adj, bug #604394
3173 - addpredict /proc/self/oom_score_adj
3174 -
3175 - if ! mountpoint -q /dev/shm ; then
3176 - # If /dev/shm is not available, configure is known to fail with
3177 - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
3178 - ewarn "/dev/shm is not mounted -- expect build failures!"
3179 - fi
3180 -
3181 - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
3182 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
3183 - # get your own set of keys.
3184 - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
3185 - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
3186 - fi
3187 -
3188 - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
3189 - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
3190 - fi
3191 -
3192 - # Mozilla API keys (see https://location.services.mozilla.com/api)
3193 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
3194 - # get your own set of keys.
3195 - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
3196 - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
3197 - fi
3198 -
3199 - # Ensure we use C locale when building, bug #746215
3200 - export LC_ALL=C
3201 - fi
3202 -
3203 - CONFIG_CHECK="~SECCOMP"
3204 - WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
3205 - linux-info_pkg_setup
3206 -}
3207 -
3208 -src_unpack() {
3209 - local _lp_dir="${WORKDIR}/language_packs"
3210 - local _src_file
3211 -
3212 - if [[ ! -d "${_lp_dir}" ]] ; then
3213 - mkdir "${_lp_dir}" || die
3214 - fi
3215 -
3216 - for _src_file in ${A} ; do
3217 - if [[ ${_src_file} == *.xpi ]]; then
3218 - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
3219 - else
3220 - unpack ${_src_file}
3221 - fi
3222 - done
3223 -}
3224 -
3225 -src_prepare() {
3226 - use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
3227 - eapply "${WORKDIR}/firefox-patches"
3228 -
3229 - # Allow user to apply any additional patches without modifing ebuild
3230 - eapply_user
3231 -
3232 - # Make LTO respect MAKEOPTS
3233 - sed -i \
3234 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
3235 - "${S}"/build/moz.configure/lto-pgo.configure \
3236 - || die "sed failed to set num_cores"
3237 -
3238 - # Make ICU respect MAKEOPTS
3239 - sed -i \
3240 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
3241 - "${S}"/intl/icu_sources_data.py \
3242 - || die "sed failed to set num_cores"
3243 -
3244 - # sed-in toolchain prefix
3245 - sed -i \
3246 - -e "s/objdump/${CHOST}-objdump/" \
3247 - "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
3248 - || die "sed failed to set toolchain prefix"
3249 -
3250 - sed -i \
3251 - -e 's/ccache_stats = None/return None/' \
3252 - "${S}"/python/mozbuild/mozbuild/controller/building.py \
3253 - || die "sed failed to disable ccache stats call"
3254 -
3255 - einfo "Removing pre-built binaries ..."
3256 - find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
3257 -
3258 - # Clearing checksums where we have applied patches
3259 - moz_clear_vendor_checksums target-lexicon-0.9.0
3260 -
3261 - # Create build dir
3262 - BUILD_DIR="${WORKDIR}/${PN}_build"
3263 - mkdir -p "${BUILD_DIR}" || die
3264 -
3265 - # Write API keys to disk
3266 - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
3267 - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
3268 - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
3269 -
3270 - xdg_src_prepare
3271 -}
3272 -
3273 -src_configure() {
3274 - # Show flags set at the beginning
3275 - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
3276 - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
3277 - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
3278 - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
3279 - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
3280 -
3281 - local have_switched_compiler=
3282 - if use clang && ! tc-is-clang ; then
3283 - # Force clang
3284 - einfo "Enforcing the use of clang due to USE=clang ..."
3285 - have_switched_compiler=yes
3286 - AR=llvm-ar
3287 - CC=${CHOST}-clang
3288 - CXX=${CHOST}-clang++
3289 - NM=llvm-nm
3290 - RANLIB=llvm-ranlib
3291 - elif ! use clang && ! tc-is-gcc ; then
3292 - # Force gcc
3293 - have_switched_compiler=yes
3294 - einfo "Enforcing the use of gcc due to USE=-clang ..."
3295 - AR=gcc-ar
3296 - CC=${CHOST}-gcc
3297 - CXX=${CHOST}-g++
3298 - NM=gcc-nm
3299 - RANLIB=gcc-ranlib
3300 - fi
3301 -
3302 - if [[ -n "${have_switched_compiler}" ]] ; then
3303 - # Because we switched active compiler we have to ensure
3304 - # that no unsupported flags are set
3305 - strip-unsupported-flags
3306 - fi
3307 -
3308 - # Ensure we use correct toolchain
3309 - export HOST_CC="$(tc-getBUILD_CC)"
3310 - export HOST_CXX="$(tc-getBUILD_CXX)"
3311 - tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
3312 -
3313 - # Pass the correct toolchain paths through cbindgen
3314 - if tc-is-cross-compiler ; then
3315 - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
3316 - fi
3317 -
3318 - # Set MOZILLA_FIVE_HOME
3319 - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
3320 -
3321 - # python/mach/mach/mixin/process.py fails to detect SHELL
3322 - export SHELL="${EPREFIX}/bin/bash"
3323 -
3324 - # Set MOZCONFIG
3325 - export MOZCONFIG="${S}/.mozconfig"
3326 -
3327 - # Initialize MOZCONFIG
3328 - mozconfig_add_options_ac '' --enable-application=browser
3329 -
3330 - # Set Gentoo defaults
3331 - export MOZILLA_OFFICIAL=1
3332 -
3333 - mozconfig_add_options_ac 'Gentoo default' \
3334 - --allow-addon-sideload \
3335 - --disable-cargo-incremental \
3336 - --disable-crashreporter \
3337 - --disable-install-strip \
3338 - --disable-strip \
3339 - --disable-updater \
3340 - --enable-official-branding \
3341 - --enable-release \
3342 - --enable-system-ffi \
3343 - --enable-system-pixman \
3344 - --host="${CBUILD:-${CHOST}}" \
3345 - --libdir="${EPREFIX}/usr/$(get_libdir)" \
3346 - --prefix="${EPREFIX}/usr" \
3347 - --target="${CHOST}" \
3348 - --without-ccache \
3349 - --with-intl-api \
3350 - --with-libclang-path="$(llvm-config --libdir)" \
3351 - --with-system-nspr \
3352 - --with-system-nss \
3353 - --with-system-png \
3354 - --with-system-zlib \
3355 - --with-toolchain-prefix="${CHOST}-" \
3356 - --with-unsigned-addon-scopes=app,system \
3357 - --x-includes="${SYSROOT}${EPREFIX}/usr/include" \
3358 - --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)"
3359 -
3360 - # Set update channel
3361 - local update_channel=release
3362 - [[ -n ${MOZ_ESR} ]] && update_channel=esr
3363 - mozconfig_add_options_ac '' --update-channel=${update_channel}
3364 -
3365 - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
3366 - mozconfig_add_options_ac '' --enable-rust-simd
3367 - fi
3368 -
3369 - if [[ -s "${S}/api-google.key" ]] ; then
3370 - local key_origin="Gentoo default"
3371 - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
3372 - key_origin="User value"
3373 - fi
3374 -
3375 - mozconfig_add_options_ac "${key_origin}" \
3376 - --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
3377 - else
3378 - einfo "Building without Google API key ..."
3379 - fi
3380 -
3381 - if [[ -s "${S}/api-location.key" ]] ; then
3382 - local key_origin="Gentoo default"
3383 - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
3384 - key_origin="User value"
3385 - fi
3386 -
3387 - mozconfig_add_options_ac "${key_origin}" \
3388 - --with-google-location-service-api-keyfile="${S}/api-location.key"
3389 - else
3390 - einfo "Building without Location API key ..."
3391 - fi
3392 -
3393 - if [[ -s "${S}/api-mozilla.key" ]] ; then
3394 - local key_origin="Gentoo default"
3395 - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
3396 - key_origin="User value"
3397 - fi
3398 -
3399 - mozconfig_add_options_ac "${key_origin}" \
3400 - --with-mozilla-api-keyfile="${S}/api-mozilla.key"
3401 - else
3402 - einfo "Building without Mozilla API key ..."
3403 - fi
3404 -
3405 - mozconfig_use_with system-av1
3406 - mozconfig_use_with system-harfbuzz
3407 - mozconfig_use_with system-harfbuzz system-graphite2
3408 - mozconfig_use_with system-icu
3409 - mozconfig_use_with system-jpeg
3410 - mozconfig_use_with system-libevent system-libevent "${SYSROOT}${EPREFIX}/usr"
3411 - mozconfig_use_with system-libvpx
3412 - mozconfig_use_with system-webp
3413 -
3414 - mozconfig_use_enable dbus
3415 -
3416 - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
3417 -
3418 - mozconfig_use_enable geckodriver
3419 -
3420 - if use hardened ; then
3421 - mozconfig_add_options_ac "+hardened" --enable-hardening
3422 - append-ldflags "-Wl,-z,relro -Wl,-z,now"
3423 - fi
3424 -
3425 - mozconfig_use_enable jack
3426 -
3427 - mozconfig_use_enable pulseaudio
3428 - # force the deprecated alsa sound code if pulseaudio is disabled
3429 - if use kernel_linux && ! use pulseaudio ; then
3430 - mozconfig_add_options_ac '-pulseaudio' --enable-alsa
3431 - fi
3432 -
3433 - mozconfig_use_enable sndio
3434 -
3435 - mozconfig_use_enable wifi necko-wifi
3436 -
3437 - if use wayland ; then
3438 - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland
3439 - else
3440 - mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3
3441 - fi
3442 -
3443 - if use lto ; then
3444 - if use clang ; then
3445 - # Upstream only supports lld when using clang
3446 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
3447 -
3448 - mozconfig_add_options_ac '+lto' --enable-lto=cross
3449 - else
3450 - # ThinLTO is currently broken, see bmo#1644409
3451 - mozconfig_add_options_ac '+lto' --enable-lto=full
3452 - fi
3453 -
3454 - if use pgo ; then
3455 - mozconfig_add_options_ac '+pgo' MOZ_PGO=1
3456 -
3457 - if use clang ; then
3458 - # Used in build/pgo/profileserver.py
3459 - export LLVM_PROFDATA="llvm-profdata"
3460 - fi
3461 - fi
3462 - else
3463 - # Avoid auto-magic on linker
3464 - if use clang ; then
3465 - # This is upstream's default
3466 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
3467 - else
3468 - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
3469 - fi
3470 - fi
3471 -
3472 - # LTO flag was handled via configure
3473 - filter-flags '-flto*'
3474 -
3475 - mozconfig_use_enable debug
3476 - if use debug ; then
3477 - mozconfig_add_options_ac '+debug' --disable-optimize
3478 - else
3479 - if is-flag '-g*' ; then
3480 - if use clang ; then
3481 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
3482 - else
3483 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
3484 - fi
3485 - else
3486 - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
3487 - fi
3488 -
3489 - if is-flag '-O0' ; then
3490 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
3491 - elif is-flag '-O4' ; then
3492 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
3493 - elif is-flag '-O3' ; then
3494 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
3495 - elif is-flag '-O1' ; then
3496 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
3497 - elif is-flag '-Os' ; then
3498 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
3499 - else
3500 - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
3501 - fi
3502 - fi
3503 -
3504 - # Debug flag was handled via configure
3505 - filter-flags '-g*'
3506 -
3507 - # Optimization flag was handled via configure
3508 - filter-flags '-O*'
3509 -
3510 - # Modifications to better support ARM, bug #553364
3511 - if use cpu_flags_arm_neon ; then
3512 - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
3513 -
3514 - if ! tc-is-clang ; then
3515 - # thumb options aren't supported when using clang, bug 666966
3516 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \
3517 - --with-thumb=yes \
3518 - --with-thumb-interwork=no
3519 - fi
3520 - fi
3521 -
3522 - if [[ ${CHOST} == armv*h* ]] ; then
3523 - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
3524 -
3525 - if ! use system-libvpx ; then
3526 - sed -i \
3527 - -e "s|softfp|hard|" \
3528 - "${S}"/media/libvpx/moz.build \
3529 - || die
3530 - fi
3531 - fi
3532 -
3533 - if use clang ; then
3534 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
3535 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
3536 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
3537 - local disable_elf_hack=
3538 - if use amd64 ; then
3539 - disable_elf_hack=yes
3540 - elif use x86 ; then
3541 - disable_elf_hack=yes
3542 - elif use arm ; then
3543 - disable_elf_hack=yes
3544 - fi
3545 -
3546 - if [[ -n ${disable_elf_hack} ]] ; then
3547 - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack
3548 - fi
3549 - elif tc-is-gcc ; then
3550 - if ver_test $(gcc-fullversion) -ge 10 ; then
3551 - einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..."
3552 - append-cxxflags -fno-tree-loop-vectorize
3553 - fi
3554 - fi
3555 -
3556 - # Additional ARCH support
3557 - case "${ARCH}" in
3558 - arm)
3559 - # Reduce the memory requirements for linking
3560 - if use clang ; then
3561 - # Nothing to do
3562 - :;
3563 - elif tc-ld-is-gold || use lto ; then
3564 - append-ldflags -Wl,--no-keep-memory
3565 - else
3566 - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
3567 - fi
3568 - ;;
3569 - esac
3570 -
3571 - if ! use elibc_glibc ; then
3572 - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
3573 - fi
3574 -
3575 - # Allow elfhack to work in combination with unstripped binaries
3576 - # when they would normally be larger than 2GiB.
3577 - append-ldflags "-Wl,--compress-debug-sections=zlib"
3578 -
3579 - # Make revdep-rebuild.sh happy; Also required for musl
3580 - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
3581 -
3582 - # Pass $MAKEOPTS to build system
3583 - export MOZ_MAKE_FLAGS="${MAKEOPTS}"
3584 -
3585 - # Use system's Python environment
3586 - export MACH_USE_SYSTEM_PYTHON=1
3587 -
3588 - # Disable notification when build system has finished
3589 - export MOZ_NOSPAM=1
3590 -
3591 - # Portage sets XARGS environment variable to "xargs -r" by default which
3592 - # breaks build system's check_prog() function which doesn't support arguments
3593 - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
3594 -
3595 - # Set build dir
3596 - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
3597 -
3598 - # Show flags we will use
3599 - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
3600 - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
3601 - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
3602 - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
3603 - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
3604 -
3605 - # Handle EXTRA_CONF and show summary
3606 - local ac opt hash reason
3607 -
3608 - # Apply EXTRA_ECONF entries to $MOZCONFIG
3609 - if [[ -n ${EXTRA_ECONF} ]] ; then
3610 - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
3611 - for opt in "${ac[@]}"; do
3612 - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
3613 - done
3614 - fi
3615 -
3616 - echo
3617 - echo "=========================================================="
3618 - echo "Building ${PF} with the following configuration"
3619 - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
3620 - [[ -z ${hash} || ${hash} == \# ]] \
3621 - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
3622 - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
3623 - done
3624 - echo "=========================================================="
3625 - echo
3626 -
3627 - ./mach configure || die
3628 -}
3629 -
3630 -src_compile() {
3631 - local virtx_cmd=
3632 -
3633 - if use pgo ; then
3634 - virtx_cmd=virtx
3635 -
3636 - # Reset and cleanup environment variables used by GNOME/XDG
3637 - gnome2_environment_reset
3638 -
3639 - addpredict /root
3640 - fi
3641 -
3642 - local -x GDK_BACKEND=x11
3643 -
3644 - ${virtx_cmd} ./mach build --verbose \
3645 - || die
3646 -}
3647 -
3648 -src_install() {
3649 - # xpcshell is getting called during install
3650 - pax-mark m \
3651 - "${BUILD_DIR}"/dist/bin/xpcshell \
3652 - "${BUILD_DIR}"/dist/bin/${PN} \
3653 - "${BUILD_DIR}"/dist/bin/plugin-container
3654 -
3655 - DESTDIR="${D}" ./mach install || die
3656 -
3657 - # Upstream cannot ship symlink but we can (bmo#658850)
3658 - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
3659 - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
3660 -
3661 - # Don't install llvm-symbolizer from sys-devel/llvm package
3662 - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
3663 - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
3664 - fi
3665 -
3666 - # Install policy (currently only used to disable application updates)
3667 - insinto "${MOZILLA_FIVE_HOME}/distribution"
3668 - newins "${FILESDIR}"/distribution.ini distribution.ini
3669 - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
3670 -
3671 - # Install system-wide preferences
3672 - local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences"
3673 - insinto "${PREFS_DIR}"
3674 - newins "${FILESDIR}"/gentoo-default-prefs.js all-gentoo.js
3675 -
3676 - local GENTOO_PREFS="${ED}${PREFS_DIR}/all-gentoo.js"
3677 -
3678 - # Set dictionary path to use system hunspell
3679 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
3680 - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
3681 - EOF
3682 -
3683 - # Force hwaccel prefs if USE=hwaccel is enabled
3684 - if use hwaccel ; then
3685 - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \
3686 - >>"${GENTOO_PREFS}" \
3687 - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
3688 - fi
3689 -
3690 - if ! use gmp-autoupdate ; then
3691 - local plugin
3692 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
3693 - einfo "Disabling auto-update for ${plugin} plugin ..."
3694 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
3695 - pref("media.${plugin}.autoupdate", false);
3696 - EOF
3697 - done
3698 - fi
3699 -
3700 - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
3701 - if use system-harfbuzz ; then
3702 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
3703 - sticky_pref("gfx.font_rendering.graphite.enabled", true);
3704 - EOF
3705 - fi
3706 -
3707 - # Install language packs
3708 - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
3709 - if [[ -n "${langpacks}" ]] ; then
3710 - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
3711 - fi
3712 -
3713 - # Install geckodriver
3714 - if use geckodriver ; then
3715 - einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..."
3716 - pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
3717 - exeinto "${MOZILLA_FIVE_HOME}"
3718 - doexe "${BUILD_DIR}"/dist/bin/geckodriver
3719 -
3720 - dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
3721 - fi
3722 -
3723 - # Install icons
3724 - local icon_srcdir="${S}/browser/branding/official"
3725 - local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg"
3726 -
3727 - insinto /usr/share/icons/hicolor/symbolic/apps
3728 - newins "${icon_symbolic_file}" ${PN}-symbolic.svg
3729 -
3730 - local icon size
3731 - for icon in "${icon_srcdir}"/default*.png ; do
3732 - size=${icon%.png}
3733 - size=${size##*/default}
3734 -
3735 - if [[ ${size} -eq 48 ]] ; then
3736 - newicon "${icon}" ${PN}.png
3737 - fi
3738 -
3739 - newicon -s ${size} "${icon}" ${PN}.png
3740 - done
3741 -
3742 - # Install menu
3743 - local app_name="Mozilla ${MOZ_PN^}"
3744 - local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop"
3745 - local desktop_filename="${PN}.desktop"
3746 - local exec_command="${PN}"
3747 - local icon="${PN}"
3748 - local use_wayland="false"
3749 -
3750 - if use wayland ; then
3751 - use_wayland="true"
3752 - fi
3753 -
3754 - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
3755 -
3756 - sed -i \
3757 - -e "s:@NAME@:${app_name}:" \
3758 - -e "s:@EXEC@:${exec_command}:" \
3759 - -e "s:@ICON@:${icon}:" \
3760 - "${WORKDIR}/${PN}.desktop-template" \
3761 - || die
3762 -
3763 - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
3764 -
3765 - rm "${WORKDIR}/${PN}.desktop-template" || die
3766 -
3767 - # Install wrapper script
3768 - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
3769 - newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
3770 -
3771 - # Update wrapper
3772 - sed -i \
3773 - -e "s:@PREFIX@:${EPREFIX}/usr:" \
3774 - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
3775 - -e "s:@APULSELIB_DIR@:${apulselib}:" \
3776 - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
3777 - "${ED}/usr/bin/${PN}" \
3778 - || die
3779 -}
3780 -
3781 -pkg_preinst() {
3782 - xdg_pkg_preinst
3783 -
3784 - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
3785 - # does not need to be forced into the LD_LIBRARY_PATH
3786 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
3787 - einfo "APULSE found; Generating library symlinks for sound support ..."
3788 - local lib
3789 - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die
3790 - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
3791 - # A quickpkg rolled by hand will grab symlinks as part of the package,
3792 - # so we need to avoid creating them if they already exist.
3793 - if [[ ! -L ${lib##*/} ]] ; then
3794 - ln -s "${lib}" ${lib##*/} || die
3795 - fi
3796 - done
3797 - popd &>/dev/null || die
3798 - fi
3799 -}
3800 -
3801 -pkg_postinst() {
3802 - xdg_pkg_postinst
3803 -
3804 - if ! use gmp-autoupdate ; then
3805 - elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
3806 - elog "installing into new profiles:"
3807 - local plugin
3808 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
3809 - elog "\t ${plugin}"
3810 - done
3811 - elog
3812 - fi
3813 -
3814 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
3815 - elog "Apulse was detected at merge time on this system and so it will always be"
3816 - elog "used for sound. If you wish to use pulseaudio instead please unmerge"
3817 - elog "media-sound/apulse."
3818 - elog
3819 - fi
3820 -
3821 - local show_doh_information show_normandy_information show_shortcut_information
3822 -
3823 - if [[ -z "${REPLACING_VERSIONS}" ]] ; then
3824 - # New install; Tell user that DoH is disabled by default
3825 - show_doh_information=yes
3826 - show_normandy_information=yes
3827 - show_shortcut_information=no
3828 - else
3829 - local replacing_version
3830 - for replacing_version in ${REPLACING_VERSIONS} ; do
3831 - if ver_test "${replacing_version}" -lt 91.0 ; then
3832 - # Tell user that we no longer install a shortcut
3833 - # per supported display protocol
3834 - show_shortcut_information=yes
3835 - fi
3836 - done
3837 - fi
3838 -
3839 - if [[ -n "${show_doh_information}" ]] ; then
3840 - elog
3841 - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):"
3842 - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all"
3843 - elog "DNS traffic to Cloudflare by default is not a good idea and applications"
3844 - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5"
3845 - elog "(\"Off by choice\") by default."
3846 - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
3847 - fi
3848 -
3849 - # bug 713782
3850 - if [[ -n "${show_normandy_information}" ]] ; then
3851 - elog
3852 - elog "Upstream operates a service named Normandy which allows Mozilla to"
3853 - elog "push changes for default settings or even install new add-ons remotely."
3854 - elog "While this can be useful to address problems like 'Armagadd-on 2.0' or"
3855 - elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security"
3856 - elog "concerns prevail, which is why we have switched off the use of this"
3857 - elog "service by default."
3858 - elog
3859 - elog "To re-enable this service set"
3860 - elog
3861 - elog " app.normandy.enabled=true"
3862 - elog
3863 - elog "in about:config."
3864 - fi
3865 -
3866 - if [[ -n "${show_shortcut_information}" ]] ; then
3867 - elog
3868 - elog "Since firefox-91.0 we no longer install multiple shortcuts for"
3869 - elog "each supported display protocol. Instead we will only install"
3870 - elog "one generic Mozilla Firefox shortcut."
3871 - elog "If you still want to be able to select between running Mozilla Firefox"
3872 - elog "on X11 or Wayland, you have to re-create these shortcuts on your own."
3873 - fi
3874 -}