Gentoo Archives: gentoo-commits

From: Joonas Niilola <juippis@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: www-client/firefox/
Date: Tue, 08 Feb 2022 17:28:20
Message-Id: 1644341283.d6780881606b271e948ee1f1bdbcd2d38dec1498.juippis@gentoo
1 commit: d6780881606b271e948ee1f1bdbcd2d38dec1498
2 Author: Joonas Niilola <juippis <AT> gentoo <DOT> org>
3 AuthorDate: Tue Feb 8 17:22:03 2022 +0000
4 Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org>
5 CommitDate: Tue Feb 8 17:28:03 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d6780881
7
8 www-client/firefox: add 97.0
9
10 - introduce fakeslotting.
11
12 Closes: https://bugs.gentoo.org/828531
13 Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>
14
15 www-client/firefox/Manifest | 99 +++
16 www-client/firefox/firefox-97.0.ebuild | 1258 ++++++++++++++++++++++++++++++++
17 www-client/firefox/metadata.xml | 1 +
18 3 files changed, 1358 insertions(+)
19
20 diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
21 index a93d8448dd3a..4606157598c2 100644
22 --- a/www-client/firefox/Manifest
23 +++ b/www-client/firefox/Manifest
24 @@ -392,3 +392,102 @@ DIST firefox-96.0.3-xh.xpi 424482 BLAKE2B 992b037fb299c6fb9a4336e5f0c42180e31db8
25 DIST firefox-96.0.3-zh-CN.xpi 576718 BLAKE2B 5f3f90d0b882284e7792837fdf69a0013318a1f620f2ee6cc808b8978073a939e62082050876ae84c553470b699fef04994a37436db1b7b1bb3578ee0cf84823 SHA512 ffdba2148ddda29ce31a5bc550cb1a520de5e3b4be21a324d28ae5259175dc034293380b84bb1cc89a6b3dc2aa866aeed916f1785029bb861ed538225721b43f
26 DIST firefox-96.0.3-zh-TW.xpi 577835 BLAKE2B 6e7dcd8ee056afd73f3270d1d337b4900134241fc14ba1f0c0850f61a7196912b0b7de59869fd6bf7712aabcfcb043c5e161d159bc4c72b2b22b2242b4c8d966 SHA512 aaa2b1cfec87e2fc6450b427ebbe4474320acd6a54b16a15a9d8118528f7856155e01acca884afedf75b9b98e13fab81f10c2fb85d9f899f417f5cfdcc02acc2
27 DIST firefox-96.0.3.source.tar.xz 406721708 BLAKE2B 93f5f6258fb76323c45b21d15415d30069bcf2347d37b939b90d0f51d592224bd811972844848f1e1f9dab0f055e140b07693b4d9bb9e9f375358d2a56d00fcb SHA512 3dd5fbc96e369d5f4fb3eca778c2bd3e2313d089f867de9fac3556810a797e9b5629ef1b8840fb2f22a18df7de95ea1993eee052f691d861a555cea544b05966
28 +DIST firefox-97-patches-01j.tar.xz 16772 BLAKE2B adc0370358cfee820a8a74f81aca35591f6e61e7795b786f357fb93b1972c8b5f4506224a499560cb4d7ba3adee88a8b46a64aa411b4eef80c6789df25d69be9 SHA512 f82996a07d6218f9a507a42fb079d8d8e0c3ca661d8ea554b50f7a08989e130f42082b57b248eecfd6bb6a25febcf67657c6a31df89883031463053e9cc6ae8c
29 +DIST firefox-97.0-ach.xpi 453065 BLAKE2B ae6a2ff0b39659d8b6367388bbbeadef61ea7cf91ae85fe594a87476a2402af5500d93f07d6bf1edf24da22de0198050b8fd44bd905cb840e971099be64a0c25 SHA512 82ccb67bfca8e402467d7cfe3b0c95e5eece0b85625a2232cb8c21df8ec8d6a91c9643736dac4cbcac8a54de87b7bf7a22586e1d89a798a7c4b1246d60870361
30 +DIST firefox-97.0-af.xpi 419749 BLAKE2B 6efd866c643327868539d500aa51ebe0a044033a9be9cf1465f63c60b6e99a4c090574379b6f7fb917b4b3348696e47c640fcea37a4e90866f09753c4aa29715 SHA512 f1e3e016dd880f65600c3c161dd56a3d1cf9014c7eaee87eb58e294213df30aa12fbb65745861418bd05bb71098db42264cfd7e3f2314dbeb98fd07ce930b4fc
31 +DIST firefox-97.0-an.xpi 499584 BLAKE2B 8696e412eb40458a90a590247ebee524a8713091277f2d4c8fe8a8fbd74b7ffe97cca85993435ef5b8eee6ef724b14004762cc8033391627699dd061d27afa8f SHA512 0651eb1b317dba01b5954741bbe3319a693e58be91216b730423c6fb4b9ab2a7463900bfe007e9b232daaea17e5f9bfbadde3fa1e87ff8db1555060cf9f462e3
32 +DIST firefox-97.0-ar.xpi 569029 BLAKE2B 6719c5be0d4c76b4559de1672759ace41e208f36fec419d6b5d795cb1cc007e99332080f0c89bd42457812bdf2b07bf706f87616ad08b5e62d1d3bd8bb2f2b49 SHA512 582c7df3daee36bfd2637b54747fe412e9323b994fd9dcabe442dbba7a3a6384919f9d9bc632f2a65f010ed5c54bcbece95688f008ccf35042d703b695ec5c16
33 +DIST firefox-97.0-ast.xpi 497672 BLAKE2B 0d756dc86ab9bb8218751ee80a2687922019232f129c1fcd3b8db72506b7bf8af66cde179e8f26fb9f7c6a69a9e8a454a26211290bb20f0e4aae5921f8818201 SHA512 81e4225ff247675de82288786572a3d65871d39b248673c5f01e83608927e89023e5cf48f56902f2aca817e72b35d5bbb1b162f7a2d51f7d278be7206154b88e
34 +DIST firefox-97.0-az.xpi 488624 BLAKE2B 9684e4eb042522ae620c8f4d9882277491f9ad6d799a4443a076f77feb53b962a17547fb2ef0ec96d84165f50423ba70ae46c6cca344140cc759ea8606ea37a8 SHA512 c9e61fdda00029e11178e0ef204755bcbb5635ba811bf1789892672493c9931cd79e2f0f527b4695eb9de1368efc33c225ed61f4712816735b053b0529f6154c
35 +DIST firefox-97.0-be.xpi 624017 BLAKE2B 6876f9516e316532b23e058499b87a6e04122c14956c8cf60416ae3c04f23fb860a7292d08d6db242f477ed1de3bcd3424629be9780effe025c69ac31fbf34b0 SHA512 5604080a203ddef03e826be69eb417b5a0e3cba36070f77f7a9930ccafb2d37b616b4b37b69b72ab0e4f8b5547f8552a66f791775ea6a8d511159af32b4e56a3
36 +DIST firefox-97.0-bg.xpi 568838 BLAKE2B 1f34c9fe80fdb0600303092d54ad33282f71a3ef3a4f92d5d86d92959b5e0927dede9aea013d624620860122599f50dfff4f0f266ed3386cdaaf21a18524b26c SHA512 0e9336ce561e33c3ce81ea7bc67e8218f573a62c9ef87588620b435c2b6a8eda6e7c4a3f63a7026858d7181f5b598bf2b2b0a506dce875e4b7b59110fca12b53
37 +DIST firefox-97.0-bn.xpi 558302 BLAKE2B f0b14f06ec35cace4634b342bfa29d68077e521340f48f31540aafd1d2e74fd295154f73383fe369fbceabbb9e8c904255dacdb844814bf0f3060940b4035649 SHA512 dc08a9c564dbd3f3b99f3bdc7e7e52a7ee83d77685b256405f4374b8153e9e0d3a4179498a98cfa78dae62f065f9e961fd378a9e696be20c9df66fe998d56176
38 +DIST firefox-97.0-br.xpi 529039 BLAKE2B 153ec9e71882cba266d7c9aa91a424a756e18c4766b366fe0696938a62caed913e253c5d930bc3d0317fa6c9e995267d02b9f5adca6c2417404111f2a17a82f3 SHA512 1247ca06d7d79b5556b9acf1b7b2e9891c89d1d28ef05796f916632083ebe9ecf9d88e9abb4d59dd2a3cf45d289c77b5e7f5e78900f0880c5769e586a13eda08
39 +DIST firefox-97.0-bs.xpi 463040 BLAKE2B 7cf38458fb9b44f599391eb9a698381b967d96547d96b519779921f9c11f44ef752b66f90a4b3db262ad0667e132fa47b1513f3b7cd55de6b4335d39c5df9748 SHA512 cc4e7bb5e48dfb7e3410d17fdb35bb7b63133d99732033c60089002875433731f01730769e5e118e7457ca983febf8f9c1d6922c0de13896040fdcc6ccb9f5e8
40 +DIST firefox-97.0-ca-valencia.xpi 540654 BLAKE2B 7b9aeb13e9b256f5f5b24a28b7fb10118b8603c0ca624efb60784d040230011bfc97caeafcf441de8c6e4ac0533899f7843f5615c0ec3ca932e46ac836ea2bd7 SHA512 53c8f3df7a3fafa3a9368a123aa28c6874c6a2b827172db57db3a7a0e48415205938e73dc95c4a06367f3fe88c9ecc60ae267a8ffdc7f7c84f9b0426ebf09e33
41 +DIST firefox-97.0-ca.xpi 533300 BLAKE2B 4fbf70176010f4d2a8ad43f25d0ca6bd89f52997c72263c5ebb371b2ac01a4904addb9bfd03490d9b84e7272412769ddee84c50484b5e2bdff4816cde326a90c SHA512 9b2ecdb9f968ce0cd803850daa03bac62f13c0545e83550cdd2084e616b470441242b2d7ae4d0c926deaf2e8c3b8d3bd6d35866d990f3d3c81a2d195248accad
42 +DIST firefox-97.0-cak.xpi 555523 BLAKE2B 5649cfa49217b63fdc447186696c7170b88be28fdd87ed516880d8d32c7ff41c69ec5c9a4cea14f83ea9e54b6b74f76fa4da0b67e50f9a3186b2136dd23dd62b SHA512 ff315ad0bbcfc9d3b1ac5ceabaac5f242701715ba136dfb094bf6b3ea3a0c94b17b9a024e508c6c6c6ee320e96ee7998f4943e1e060f8bf48c148dc4ab432be9
43 +DIST firefox-97.0-cs.xpi 568011 BLAKE2B 621df808f3928691c168a6ae7bf828328e3813ad3be5284b5295146f956ebd8befa0a9f7939404f984d82ad14bd1c860f226848229c67d6dfc0cc4cdc3ce40f0 SHA512 da12087ff1af5a8fca38640496d67cca2332a09b7e5ab260d8f1574ac9b786c1fe484ab1d1be89dc00f29454dbb79f3a9c70178d1477980a23652e8b6b0727da
44 +DIST firefox-97.0-cy.xpi 546995 BLAKE2B 801f43fecdbf54198d96c21c75a47817ded97ccb2041e96f2cc5f034bd9fdb471eeda15d050026da886dab788f961e170cf7c6c600fd9a5b45bf383775557751 SHA512 d2a45a7df72ce7ff10707c4b267d730f41c6448cde78f55e99e13e6e5863aaaea8ce5ff709ca37d7791c6bb7ce7765b5fac8bea71b97b77c430542e9cffa892e
45 +DIST firefox-97.0-da.xpi 539040 BLAKE2B 360462da1e5e1c39ab4f0b3113bfce3254669b0cf2af84593ade1ba5debba0e9c8c4eb52b5d81f526d2baa0177fe22a2b8bf5d213f4fe1053417a0ca2132789d SHA512 05ef491c2d3d2361f4e5976b6027a3e7daef5a3d5a27d9c6be6962f6ce337b7d19a7a21fde81b352110421ab94f8d4dfada90efdc30dc3ef396f3229d1de9e46
46 +DIST firefox-97.0-de.xpi 558369 BLAKE2B 97d61ded19872f3ce5abe6cb224dfd5e2e6b5f757edbca4c84014d4dbcf315f3ccdc09cebfd0b523b172f23fb30c540d9dac43ac92eee03d2a6f481e148ae166 SHA512 1d54fe09a2a25ae24de3370f5b1fd1e906500a2798615ccaad553c7fdb6b78b784c6ffe3bab69290e59f316ae44200440540d356c7dc36dfb674dbf574f54085
47 +DIST firefox-97.0-dsb.xpi 571311 BLAKE2B 267b19ff30750aacf3cb1c21c903aeb82988df90fed1f44fd246428b751dc0cfd688c83953ca82020fccc14c8508924f41d500bbde6b76c6b01fe161658c67e1 SHA512 1136f6fcc2ea6bf9f9d542e99ea4f205eda3fce4223dcb7d9574e69627a59d8fbde2bf57864ac963b509fd9cd9028d2ea67fbc61b6a47f38d6729bd20f5304ac
48 +DIST firefox-97.0-el.xpi 642645 BLAKE2B 7848ace736dfb168c1338d85f20c433b83059f687a5ebca0fd97e9afa7f74f76fafc8a8bf1463da47da4754be75afcd221bd9e244aa2c6c65692a173ca0db614 SHA512 ed22fa8a72b16b8144e2480f9c461cba06f3b82a3d3cfed96785cf2fe36966e0b6841329a8e1bc77a4a7f86b596c9e9a423366f30758ace67bfd040f308cf115
49 +DIST firefox-97.0-en-CA.xpi 513687 BLAKE2B 285c96a0d1192cca54a15e78cbb340c112f0dfcbb409d79c9b79f6e48e38f2fb3f6a23978bbb03c38db2e3e73a33c3c7f0a940ab1cbe66ef3162d156e99da767 SHA512 b15dbff7c29465fa9d6348d2620169b8c953fec16d559c3d1c3c632160449d027adf6001035b7bf7dcdc91e4983e0d402b2fdf1140d581104740821ed3f66e86
50 +DIST firefox-97.0-en-GB.xpi 513964 BLAKE2B 079ad97030cdf7b5ecd25458682be3cd28575b1c81f46293185845cdacb38248a50f9fa64a0659cb50347ed73d282d69d519899ab0b27de5fce813432566736c SHA512 576a4b2909fcbe0508a4c94fbe4cb57974edbb9639e480867545e6bc6125c00ff1744442b712e34003bdbbe4dde4760489b5d579e8e87329a71c7869d1e4d320
51 +DIST firefox-97.0-eo.xpi 538655 BLAKE2B 4aa5a22c0db586eb56bb05c80c374d1e244cdce4d01722bb0f8643c0dc3eaa32c4a2b83cd46e0f64e498bdb43b787f0471c7ebf5456f5ef4796f68f55a495972 SHA512 5a2a5a9b3ab463c7fb2434e4fc7473a74daafb8ff060ef34e7a29a935a36b3097bc1a1bf11e4ba0208ed4571fdfcf6717c1dd70daba072eb72a37647a3457279
52 +DIST firefox-97.0-es-AR.xpi 551660 BLAKE2B 12c8caa1050d10a8dea7da74615c424bea70a38580408a1c265fd47f1ec8f7ebc3d881d0f7c4f8fb606255374654e525da41d8cf896f1342bc5a8ba1927b8645 SHA512 42f17a158e5f69e95b270d51acdb1dfd84719401e7ca23de62f40ed818e400fd4aa7b1b2a84b2b9225db3577bcbfbcd3cb59b0bac642e7a1a218230113c5961a
53 +DIST firefox-97.0-es-CL.xpi 551002 BLAKE2B 97994b59cead4cb9dd5a72c7efb12c5cbb4dea73a32533aa5a70c7c9449b8f06dca840b4db5513f133fd6738ee5d3bff2f7f45ecfecadbf30be6971d5fb50b38 SHA512 8c0a2914a625d389ef27f104c52d1c2e2721fad1b87773c6bc1eef123b573689d6996c53812c7cb6f30e48a14accdbee070350cf2d8611e63fa255cc1013d466
54 +DIST firefox-97.0-es-ES.xpi 540521 BLAKE2B 98c800d4cfdbfa58659f230bcd03a88a446bd3029da469f4da886235069c856ce204a970f3e1889e2c98ed868099e46683c0f1d5b72a50c0a88e4d2d5cf30b00 SHA512 9c1261b6c3f9fc2cb1d758cad1cc52c1e88a478f6af52539c907c38d40cbe852c4c443bbf648be1ebd525413d67e5be976b11150c772156af57927ec2e9fc28e
55 +DIST firefox-97.0-es-MX.xpi 554840 BLAKE2B 74e27fe393d8f8e96ace24604c415ec2a684d3e7811ab314ca34d923dcbaa1eb5722a6e21417c69499b598b4746cba8cf84e2c6c382570648fd6391c23d58b2a SHA512 0938ab36d92c168886a422d7126cdd809ee32e3e795bfdcd24db58a044036d4df1018e651d05d093d0f936202e246b30768940dbf38e8bd7569c25253e08439d
56 +DIST firefox-97.0-et.xpi 532788 BLAKE2B 469cbe1e371ed7c5eb850db6e7694b8552e2e41144a3cd2df2b227d663375562ff2eafe1b26b6ae7a551518b742bb2105cf2f2550ce74cdea1cbb222c7376f15 SHA512 85a3d5e19163c179f61476ecb023d874b8fe5a3034cc52b81a10cf92dfa7d921a6b77908a013a933bdb08f5fbaa491621c2d1afb160f46769411f95d13a39afa
57 +DIST firefox-97.0-eu.xpi 539919 BLAKE2B 2ad3bff9ab5b900cc0f61a0941512f3d6cbe7ae9742afb5e2b01d807526b2348630ea32db628f36349b15449d067f2eb8367edb42eb32c7fd9281115e6d7bcc0 SHA512 01a14fbc94e4d9739aa6821ec3966fde1f784c0738711f640c68b06a41106db4deef1ebdd87df5e7bdbb09ace5c46e878e9e97d7b0349cd0acbda5cf4205a0fc
58 +DIST firefox-97.0-fa.xpi 565531 BLAKE2B d458575f7d142fff9ed21093b8302dfec4f9fa0f04973ffba053058be8abd7b4187349017e01b6c9c5af9b27d64931f063acc519987a56e725462972dcb95935 SHA512 a34300013ec8a4faf9c52815d8dc69f9260697c27d002479039efbca545c895f52423130a5858ecf0a728cb5a8433809315d9c899c4f65451cf8dce02c5ee0d6
59 +DIST firefox-97.0-ff.xpi 472273 BLAKE2B a30a7d53dacc055c504409e6520737434430dcdb5300460c8e6f03b233535fdb293f57df49295bc89a920662ba8734452ba953cc2a24b3f476b70b85ef6b2096 SHA512 11f93b0ed19d37166ea0dcd586bc7a43a702565221ca9f5f52db447d8b3f307304153a3a67a8ecb4f761e7884f68c68ba80f2303f225c2963d8bbb78c093b2f0
60 +DIST firefox-97.0-fi.xpi 535272 BLAKE2B 7456ef49a75075cda9f76ceed148e8dbccf0ce353dbba24c8aa60e4eb74cef046735d99cd17c0644b83d2f5ce3816494fdb865064685ed3ccb3524b6c6baf3a8 SHA512 609d4816726136b72a02cefc35eca873830c5b7172b81ff93478e53d6cdd737dfba6ffc6a91f43d9b1aa98df2c504bb50bf02a69b27c417a0b0ba0b9ad18a7a5
61 +DIST firefox-97.0-fr.xpi 562714 BLAKE2B 6172f3cd74ce7261508ba790c31a0489f3071ab3913fec6a2354b8aafb6562e9b445ca6d9c1af763c2d312905d243950d5f5ddb0d064d06e5c62ef23e9f21fff SHA512 e33dbc14fdda631f50e09518291e76d084cbb1bb3900bda2f8aa872a79fd620e66ac0705c4b5d21d6ca68792f9c31ce2ee2df34de8b0b01ceb3dff088b56378b
62 +DIST firefox-97.0-fy-NL.xpi 547812 BLAKE2B 4012ef00786209a24d8573e7e3ce2c5b5f2992231d153f966d93decb43c50cf54f03163f533cdcff1b9afcd15f368134e05eeb2e0afb308fc4c3b64132f77f8a SHA512 fcb44d016df8a4d56e602c45d828a53e6afc5489c639d9f34e8bd53885524a8f5751300b77c6954d00407857a572f93a5d2d54d58298e0d212a3662399fca598
63 +DIST firefox-97.0-ga-IE.xpi 469910 BLAKE2B 8aba38b00a593eec157030246c7b18d7c59b7c9e799b7aebf60c4ea4450ac539b833e543dd02a06224af345e400e280569160544a7d43388ee574f98084f6f7a SHA512 1f68277d196637255981f78be6b6261a7b629557ef6eb4949e8a940611962a18fa78f685267c5a9306a22c1c198a76446437c2cb7969799d5b74c24e71011740
64 +DIST firefox-97.0-gd.xpi 532942 BLAKE2B 086d27797a2d75b98c28f95d80ca029a0103aefcebacf08a13e51f0d7610d88e6e1de3a81e9ece2199ef48c2419688181e42b5e87935ce6b839b53467c0739bc SHA512 6411fba21208bcce2bc3707d859edb677e0a6cecc2af423c35cceb2a85828b059170596e3b760d73f3ed9ad8c6d5172544ca1dc9b0d896bf32b1f50876957d7a
65 +DIST firefox-97.0-gl.xpi 545744 BLAKE2B 0c51c5f2626fc4eb46c9ca0efd53b64d7ca4ca1484368a1a3b18a77400cfca42c047632c61833c8fbdfc4db52a3efa5fbcf52a89bafc4912b5c8b0f22fce8629 SHA512 531f4bec04d6d58d08c8e89eec7d314cfd3cfaf6459e83533697ba61782555e6315b74bc197449b31c28d17bab8c444015946a562283b152d80e436740789cce
66 +DIST firefox-97.0-gn.xpi 561804 BLAKE2B 69e85994ce75ff1c6e5d38479cf47380e82d76c8b77e65694b975f5f6602e8b7021b7cb1aea1180eafafb03a51c4878a916026e65c60309631df5824421b67a6 SHA512 2cf68b9f6a29046ad0fa186eb5f6fb821d8c4690a77c756a98b411cfc91a3761379533da700e5939cf27eaa0a6b08ce2586650ecefc18e7339810323ff6667a3
67 +DIST firefox-97.0-gu-IN.xpi 529514 BLAKE2B 7d59b6ca7a9f297d5da835bb34cce04dd0363df3c9ddc0b83929bdd858800d310d96a3e94a485992ca5e5166ba73da909e08189fac596db8c089a2634fac9b65 SHA512 f186ad49ecae60e959336f1386e997f55cb20264d72b0be80cb044cca3c80f75ed4909567b532eed68ad8c657a14c10579ef2e767be0163ee776e59467913422
68 +DIST firefox-97.0-he.xpi 561796 BLAKE2B 1cf24c4ebcfd78dca4dceaae58fc4bf565ad124fcf95ebddbbc45ae0b2d25317cebd9d6543398830d9cba51a6425fd30d04be670cf6e586cce525a41e11ee3af SHA512 68e33fb9829189fe50ce8dd2c7937a6c8ff4a4249098dd589139bcb44b09bb11a9ec1c644c26a20818c883e68aa6b63fb3f7801164ff0ac2e42f1ed5f7968e51
69 +DIST firefox-97.0-hi-IN.xpi 559936 BLAKE2B 3cb369e151a708cf69f5fe390b7b0fd018715d367f6abe7e49a31352699a01a1736e1571daeaa6cb17cad21007a21f135ff2463308eb9b78720b3c27ee2bc2cf SHA512 ab9980d10de8a64bf91111792fb8914d61915320ba354233fb75be45fe05305408addd5d3b79bc2b15ff64572f0ca4a3b95e3be100f1c0d510a8788f5a3e11a8
70 +DIST firefox-97.0-hr.xpi 534053 BLAKE2B 65c2af1f906c1d8b1af353ec1cd95c7c866570db3e3ae2264aa4a990f33be68221e27e429f06f987bd897a8153a7e0d53a5c93963345a0092060321dd782ce7d SHA512 5c8cb5d9a2e66073e7cc54de4580c447b438fe77762589d3d1274f0d2d77c3c3defb45c63bf6f61637b8462ff175ae5f765630d9e43b41bca0d300a12d4383be
71 +DIST firefox-97.0-hsb.xpi 567414 BLAKE2B 45560caed5cc31396bdd5c47d848a58a81d16824337ef4b4792d44bcda04523c53cc5b3256700ab6fc6ce9535521545c7c3102e04ef3fc1368df041809fedce6 SHA512 62d9e07916619cb5378780f32b96b385dc8f18d7e1921269ae488d83412fbcde1c68adff1f3a07ea1290615e4fb485d7a299da0861fc3e36ffa56629e9a07a77
72 +DIST firefox-97.0-hu.xpi 570773 BLAKE2B c807271a72ee5018dc1a87d994d5592235929357e8c3d1c8fb47da142dedf3b22dd74225685bd01ff2405740221b51ff12ba2888de7e4378ac1f59b7d2540591 SHA512 f8a5d5d2db0371e1d21b986f3e17912d3e5fa18e5027e479a30247209fd62d64f1ffb258845303b7786028bc5d53b2cde9a07159c7cfa04f6cef9560a15cfb38
73 +DIST firefox-97.0-hy-AM.xpi 582909 BLAKE2B 84bdcde61cee38fe533e016a54afffe5ff851484b0c44e8d7b24facf8aebf2ec622741260e2d571da8746325cea26ad004d4526699927991554b4d751d63c6ac SHA512 885df010674df68f6e06fa9e5f0a1c53249ec605b5f76dcf538039c4b94427eafde072e9adac7385080cc8e4226ab7cab0132fdb664dc901df7eaad44232f37e
74 +DIST firefox-97.0-ia.xpi 537045 BLAKE2B c209a047221db3e5b39c36496260fdd52c2084609ad52b86c8346807c851733e2d139e88c480fb8bdc9c34cdc5be25395c73e39b78c20d222dfa49e879930686 SHA512 de3707a3c5e9f1b46fd135ce0b0c4d7d2c5957f02258082a86cdb2cd9074425778360a765a7ca86cbb95cbf27e707ae96e5b4910f1cf0f9b4210941aae36c110
75 +DIST firefox-97.0-id.xpi 527121 BLAKE2B 5685af79d6f084af07b06063805d7e35533d54b683723058f1b4ad0714b8bd902013915b3a50ca7bff8047d1c777f1f5be932f1f1d098a5894817ff46d9ab432 SHA512 32799839ed8c860280890bcc1209544a96fd2633d71c0c5179e378934574d36af1585dcbf44a3ec1b1951e7ef73258a3231001372424f33d6cd5794a115ba31d
76 +DIST firefox-97.0-is.xpi 539888 BLAKE2B b88727a15758458ca58d31ca4a5d66e5dcc5eb31ff7defc37651ceb57bd60063406b099ffff1872aef6d9478eb98da6b687cc0be0239844067dfd067fcc0c7ec SHA512 bc1800e54efdff3e5a2e80e2ee9d71342eeb3307c5ea5dbe92e70d76a4afe4d6327e071b0d86af3f80a33039c67682d1e2a706c476862cec8bd81a7b5d8bd718
77 +DIST firefox-97.0-it.xpi 463943 BLAKE2B 60aaceff485eff963c088b424dc57cbb56d630656086cd1e34ab3b69e5834033e5666a123d593a9feb775f6ac32d0980aafc86c68f341ee4d8fd4bb45fd1038d SHA512 f8706d95d47f508c910a34f520fb272140e4fd0ddb3b4dd2d34e9dbad606a86302588263697be60e5be16b8ef87324cd9a2a16dd41839ea780f031c07cd66ddb
78 +DIST firefox-97.0-ja.xpi 589741 BLAKE2B 50c226f69fe3171247cbad46b54fdc38fa193f1c4652d2e0f976b6200fa9b2db044ecdb34142d0f89f9e473765d73eb2afd6dae5b05b30e5d66cd12c781056d8 SHA512 c3dd650a72c8c6c98e10f9fd4ed25e145c171512307d45d2c7c2411d1812bbd88f6f0183924ff7e329bfd673519df5be3c700eb597229adb1324c06cad885871
79 +DIST firefox-97.0-ka.xpi 596049 BLAKE2B 59e64ea8d645e9530d746f1008729dc3540a73cf7343fa1d9f3e7d8a31d2849f039151bd0b85b28d148b5c43da9306825d283709d544147c32ea4878e5d29175 SHA512 7cd0bc58ae7fe56908a83a45bc42d3a0fb6d9aeec05f2050c7bfe2b82c89277b30d66ddfced953bcc469d66975804ced90845e9a2baf230f3542764a1bcad0e7
80 +DIST firefox-97.0-kab.xpi 548566 BLAKE2B 825c23e9f8e33c18ba60ba137b0127d4ccf720078d1e1f184b35918a1e895a5ed223a68410b42a70213047c573ad4cbdd9b0917994710587d8818bd03cae6e72 SHA512 42eed915aab219185370b12cd247e8800bf474a428cf21c7a2be96813779e9bdba6ca302acd1f0234248093ff1387eef1fb68a67a8216464587a9ba8ce9caecb
81 +DIST firefox-97.0-kk.xpi 618275 BLAKE2B a306a8a1c4d2953d462b7709ffe1d2eb155e09c15e39336fe92cce487a4e9d31491fc408c1139f04bd7b9ab322e46ffe9d6ec9e7df88b6040fb5a0bc959b7b6d SHA512 4069cfe09f440f6c57c272a203e2c8db630629a9e30da95e9d77eb3e40bd24cd031f96e0c0ad7ea66d6731fb7c08f0b877c9ea386943fb8a22193f75942b063b
82 +DIST firefox-97.0-km.xpi 529562 BLAKE2B e17fb1c06085c2e2658bfb3354dbc34038ad2adb86e22d04899d66c66796c1665accb4bca639b5f56a17023bff21e23ce542cdab04eb27f0c1a53abbc10c06c7 SHA512 347920ad96d4bbb6aa290daec8273b82f4b0876e1465dfbba4e5857ff0c2537146de4892b705b350ded86ff872f90fa69c42962495c346958cd9d184c20d896d
83 +DIST firefox-97.0-kn.xpi 495351 BLAKE2B 31c777292440e7e1732f2b71a8edf1935fa2b6332effb61f238ebc76e206361814ac7e2ca690a2947001866a756bce1966db6a1b82f36986d5fb04cd398d8eca SHA512 cd0800c66d83df0082d237a555b9202e0b67e79f5517eac9d9071d01ed46aecfae8d18ee13bea3fe68815fe3f9f7ed51d5c10b5eb8c74e8ec354115164377fca
84 +DIST firefox-97.0-ko.xpi 584130 BLAKE2B 4cc8a780c1e1fbda86d4c7d9db2a6a390f0a7fc76a7087f427321202330f52dd25fa0df87e21bfe52b404d978e89dbdd1e59272c072fbc80d07f19a0749cb214 SHA512 826e818544009c70aba323e92704a091a73649ac4cc3ac4f08dd90774d0f8f5547e141a9018f91002e64aa9e8641eccd8516fb58b62ae9904115510bd69e5c83
85 +DIST firefox-97.0-lij.xpi 470921 BLAKE2B aa2d2b25076e8ca212e0c739dce9d99f00b5b0d1defcc5025a028281cf79787ef14ac98e944cd7c155c4ec3ac246450f60fff55ab519e539fcc0636a1aadb9ba SHA512 059641faeef17308439c6875fef58c39c29e3cd3ae73c4b7e3dcd2f073ce3df98125c39414a645bb1428e0d195fbd40a9e19556100bc48751f8c095918ef638c
86 +DIST firefox-97.0-lt.xpi 563955 BLAKE2B ee0538f4e7b049fddc942fce0205bb44cf0fb48b3eaf7320815ac6a88c54ea7a947c05d7436cef1fe4202fa845bbc8b2e8957d5f537f27e8726f33d5bb020a39 SHA512 2db02bd38572795b0d364711da3cae92046578c0637179521e023f32c63831f2935c6b951350776cff0151a1dbef9154865d5be5abeec3f9084ffa1f882d6631
87 +DIST firefox-97.0-lv.xpi 463069 BLAKE2B d6a3d73d369ed7bb27546001209007028f64b5cdd5e03ae90aa1f37881113b2ffd8643b23b15f6d640d3d021d9d428ba5e6fd8098d1ce284b5809fa59e5e1adf SHA512 33c5da63cff130d71130bf11e89698ccf61e500103f31b5e41109922601ba42423061359c948820838ea62b47d3c0b8089d5a2d7f3bc560eec529902a4f894f2
88 +DIST firefox-97.0-mk.xpi 463235 BLAKE2B 53945eb66b3604a5fc3bde625ae77d92d732811b1c4a03d9ab0550fd253271cf15061cbb562a4658f154290e405327df6e619d49c2b851874ff9ca95a7d5a87c SHA512 f13c4d466d49b7fbcb3bd3d29eaebf2025b30b4966d28a0f1c9912a60dfee8322dc60c76e4674b3fd683c285a044e7dac27ba8b6aece1935534221da4eeb4493
89 +DIST firefox-97.0-mr.xpi 532298 BLAKE2B a41fcc10beb5200eb4544628c1a2a465791364d9d7a5a97cb1cde5752c9fc501ca9e47e5aaaa61a1ff9a481475c5756580ca5b567eb824875f053182514ab659 SHA512 9b9dec6b916178eca740f357e610f6181fa1c9ab78d42ea79446f4779a4e782495a09bb821d22f857ddef8d4529fdc9663d8197a539469c45559821fedf656eb
90 +DIST firefox-97.0-ms.xpi 448089 BLAKE2B bf629efcde8d07743ff4b8895f4c38dac3d1a2bcd8b8a11c77cb3cafb8a466b72d7a7e5c41ba359199865e2eb586b7902b5d6cd410b3497ffa81eca657c39bb6 SHA512 7901808fd8b84721c07686f0247394c168e2ddcc6802e8cb2d0c253bb6765c29a2e3180a0a5d15b4740205d73a06c7c0f4266f32364bde94fdb981aeb88e496e
91 +DIST firefox-97.0-my.xpi 511626 BLAKE2B 1fe7b65e09213f1bf2e116dc17f4cad0a60862d1e73f9caeb6a576772b582738f027a283db597fcbd6806f021284b507db8bc5e5a7338f405b5d55fd5eb52429 SHA512 6269489d0d4351a6d4d9c7475b35eefe929b5b4aacdd692922b06a7c408864f07d165c4944d6e8fd097055261d6c1fa89aa4f8af2f4602c18ba7ad8facb0f51d
92 +DIST firefox-97.0-nb-NO.xpi 531850 BLAKE2B a2e8ac47c4a0e297dc4509055134cb883879ffbe1e9349d6af59f360c5d49e8abc4c69cd6d464a6dfe59acad46c7f3b025aab75f0001fa7883c1b5850ca2fa59 SHA512 cbef2a1f7dd65ffe0e41e755efe99eb9a60f51260bcf472cf8773bcd9d36c265cd42a7d5b160fff6262ec55eaf95199c2fe38c25875e02903ef9824c67e16808
93 +DIST firefox-97.0-ne-NP.xpi 482244 BLAKE2B 69ef2c7f0b5b02468f2081c01e07cc8983314a1fb9d7d783a213248b596fa5d01abd07f9aff4fe5951ff17567154d6c370b3f918b52453257bd5abb79748e571 SHA512 b70f2734f96195b73b0b3fc6f8dd5491ae140fa09f72fc19af56af33dc96877d01e781b2e1cfed2c6a8b23ea862a1d0134a29b2638b984ec44b0d41b5b296f7a
94 +DIST firefox-97.0-nl.xpi 542060 BLAKE2B f69bc49e8dece9f225bf16077b82c1c469b288713c050b3a76d758722a6f184f7e96ca36d4691855cf272c9c89590298fab7487c58f4f58101ceed3a717489f2 SHA512 cfa7910b4153e93d5766ef7dab91d7414ea75cc0e17c6a84598c23d3a2446b20ef22d6c3294445c5b8b9c35e40d4d4fe71a64a36951c8be65a3191082d2d7399
95 +DIST firefox-97.0-nn-NO.xpi 535957 BLAKE2B 93c3a6b6cf2cca6c7f98aada2adb861e56a8b5212421d79628d9b0dc60ddefb56058a36219adfd22edcbb559d3ae195d1b3f782593fb0842bb480cd63043e6b8 SHA512 f4acbacacca16ae4d2b5b061c2dd0be473359278f81043bbb95cad070af656543ac873dda35ef48a6e3551e9abdd2569b22d4355735ea10fa8c60d0e0a7ecdb0
96 +DIST firefox-97.0-oc.xpi 556533 BLAKE2B c23cad3bed8e87795fa37f06a5a57165869b41fa8f952c67e716582230cb8c55c20a4b21b2511d6db2197a57ba7afe0f876416081de7b8dc32f20c9e44bd38c0 SHA512 b6f50ac3c4e342e4fcf8692956bb544f657f48bfb4aaf0889a122bbd97f32b29cb8492a806f4987f90fd5d32fc558eced35cf6fdb3c0e0781745b2da744908fb
97 +DIST firefox-97.0-pa-IN.xpi 596715 BLAKE2B 199f9cec6f15a4e3c4fa8a1d1a2ade5ae02d92b01190c1873a9b0e01770f7e2b2c4aa296ccbe7d3efeae94e5f64ab8872fcf0d60c70583b9156ada2e7364d9c2 SHA512 5ca30bc58af212732e054613ca9879973c3b52bf64325d9357de3a9f51f2d0961b7f8cdd1a240508b9e07f1f0b01130d512d1f44766f048baefc20cedba25f5a
98 +DIST firefox-97.0-pl.xpi 561556 BLAKE2B e7fb01ef63c92fe0ebfdbba0fec6114493940e64a5caafef356334c62056f0de00e28f56df4a39932997a029c1426b859012e45e8212f3b60e5699cecd59fafc SHA512 b91f9bc59cc05c28d7d3894ccce027d8b2b1c05b58c7a153c9d86a802882410bb550763805898ee5394f6fd7be5edec07a163006fe00a9160bf27a7b6137a57a
99 +DIST firefox-97.0-pt-BR.xpi 547455 BLAKE2B 7298afddfd047b5eb16a3c5cca15bcfdf7d874dde8f9ea1b40914d958707553866f334469a8fe0e65d0c4155ce03a75da815925673dd0992ea7b4288eeb53486 SHA512 b6963e12a9776fc3ab932ff5ac387cbce08ef261aae8b2fb3187e970503ddafaf08934059422d181cdc25a9bbceac2e776de0176aeae5c7298b5ddf910fc4e08
100 +DIST firefox-97.0-pt-PT.xpi 548428 BLAKE2B 4305a7675b786afe42e59a789845592573dcca07741cc84fedcc4ab54248989e3b379dd8a9e9e26a68748ecd63189a83dcd4ae0bd26108eb904cfa49296b355a SHA512 bf96197003298fbaddccb5fc8597339fa4712368325ed434da8344382aedcab7cfbdcb99acfcb70cd59f01eba83ddf24badc61fa15727681b0fc0af53fa102d2
101 +DIST firefox-97.0-rm.xpi 540397 BLAKE2B 17ccf09aa50eacf965a9e858e97f3bc59ffd18e89872675c47cb82aa657eb92ca59878eee33b316bbd3215c70f33139117f9690a2eb6df41b44168909480cc93 SHA512 a12eed018bfca40c92c3279d00e4b0b904d73b511142b16d6d1108a7ab9a4389f2af863a280f888cd7ed5f7ca7f119063e1b47b95e861517cf19ecfd94e8e84d
102 +DIST firefox-97.0-ro.xpi 531991 BLAKE2B 600e9101a314870012ac07f3d54ddcc1f67c6eeca8facd88581e33205bd42305497cec890b2a11adc23f79115d5074d22ea1aee12f3c7c341e88c8f830fb5d36 SHA512 5ab9ef72615073127d4a8e505fab70cd388f94476b073d364b04640a69e7fc51dba672d57bdffce817d3d2298c8623f8975fed873d0a99f4f48f7ac741588be1
103 +DIST firefox-97.0-ru.xpi 631037 BLAKE2B f39d789bfbe13cd1c6689c12d9edc541a325af8e730d7163ad91c5da16703d2176ca0e9faab68d302dd8e7f3ba7981fcb4b845a0b03debc89cf830fc55ecdcd4 SHA512 c2ffbedf78ff634bd0bafffead7fbc95697476e2aa3817571622aebbec10d38e02d2f7e948ecc537aa3196b87d80a83941ecfb926e341ff3b06b54faa35318a2
104 +DIST firefox-97.0-sco.xpi 504850 BLAKE2B 84b8b460b7188afd39bacf99f2caca3f06432936aee279621b7d2a8abbbe8369e122a4f5414fde55b993992f85ade0e002b9e7192d18409078ec6700726da912 SHA512 426db0f056f4edc3b68a345b59806510c66d098c87eeaa35978b4380c3995ba1623a6c662acc18035cba691544d31e6a649064cd0e3eae944e4fcaf27371d3d7
105 +DIST firefox-97.0-si.xpi 485686 BLAKE2B 22d158058cc760117457e935dd5f64689eef79bc2b948627b330eedc0c9d5783d808692d290648e189204f7a8e267d5d803f3183585b10a663ffdba98b2d1766 SHA512 870ea484a947313658bcf1c996a7e6c0a1d9e8160ea8cd3b881da90279068f0389b7ec25f0043b2dac4b55de16202ba3e1b079ac5467fb517d6a760de07b1699
106 +DIST firefox-97.0-sk.xpi 571522 BLAKE2B f5dc617455bb543b70151ccbafed1a5631527ddca337dcc21e4082aad63413f3186980baeae5368689c41ae9aa4f1a102a1affcc56e5bd4674de03a51217aba8 SHA512 35db3798e1b73a4c33e8caaac1336a51bc6c88b67ff1c0fefdabfe2c36452a81ded42158de9c6c3fcfc37dbc4035ab62d888e02d7e7f5e3faac093f3da5e6486
107 +DIST firefox-97.0-sl.xpi 542151 BLAKE2B e0f2fe761e43db2acf8c5f2dd3fb876bbf00a7d55cd7d41f9442d30956623618287515e1023ca1ce61b092a82fe91dc9cf964fdb0c2c0d1c86ea86d2fa2c90ba SHA512 b1afa5665cf37c8b5e3e981b81b372fd9dc299155c4dcd03342857db244c4cb574317d3cbb9090e22e0e4bbb280430d3f75b41746be2e229f519a291e181b9d5
108 +DIST firefox-97.0-son.xpi 420986 BLAKE2B 708fd373f632bc19f09b7e6e5fe1b85e02c9acc0bc6470dbaf3cdefedec95b7b5d0f11ed6ccb3d5cc4aee113cb9a4a1b89311bfdbc87083fbec4e9f3c8567bb6 SHA512 91ade0d2a7748016fb1b5272859259c8652a97adc89d1bc0f192078872918ed8f37c5c41ea3ae3fa94dfd1a6fa95b2bef624b1e681b5d97930ca366535422e6e
109 +DIST firefox-97.0-sq.xpi 557396 BLAKE2B 0dcd2e8cd579e14a5634ebee25441da6c1f0ef73d6446b8c5f7af9126d05a5849ee07e393398f74db8ba56c5abfd7e7bfec4be13c5559354df62548061cdb4bc SHA512 0346a77d73d3d584dd993d8d0b491eba99b4ed2911c3f543bcef132989099ca597bf95b32b3ad3c015977aacfdef3af3cca103a5aa807bd3a3d60656ba4e5081
110 +DIST firefox-97.0-sr.xpi 588247 BLAKE2B 3225ddf0f1f1e68bc247916887c6c7b599125de8c3b652d7fb1ee988c84efd1a6b65bec019798987a02db6eb83740a1ed687a9911f69b201379bf072a8cf2912 SHA512 dcf920565546033c879e5f4cfc7811ffdf1ed1cf3cbc10b856eebb3a89e4fba83fe159e48dad34f426c553824d3d47fa1d4b3252656e52f8f3df5290909c2433
111 +DIST firefox-97.0-sv-SE.xpi 544771 BLAKE2B afac0f04dd7182e7fad466cc37b84c45f81358a31f720168981551c4fa59ec11a3ad08f892ce41f458842eb28b25790fcadf86430b519a479074a8a4768eae1d SHA512 70225ee1e222279574a4f9950008a89b9f36087e667c3209f1a823721512009d0b0f5c4b75b3bb029b02205396d80019f54abb1b344b03ecefc5e635679c5917
112 +DIST firefox-97.0-szl.xpi 507754 BLAKE2B 07b5065de3b7de05f9a2264c72ca8164a817b4a9e12147620d2bf23bf582ebc5e3447357432ca466246b29e93066e6792e3be0bbf243cb523329ad14e27e12b4 SHA512 87adf8cd184e0b7a3ff70470d3a84fb9c9d1561c1406828480a1a318d177d1f9a85c5c75a58cf1a291de2c657b564d6e5d721013026b8a02eb8173a15c6e1d58
113 +DIST firefox-97.0-ta.xpi 512316 BLAKE2B f1dbe3d92c8af1e180c0ab76f8293eb30f3ddcff267851bcdb0513aaee26147b4617632e161c54e013229faf132625b011f50adc8be09ee52b6c2dfbe2603238 SHA512 39a3457de2f162dcc69393491c8540af31a785761d9334c30c233ced89269d97dfc36c9b56d3a23a5d24620df676462005905bf6c5babe762f1d8a7cde081598
114 +DIST firefox-97.0-te.xpi 550168 BLAKE2B 25fcc5dc1f80f46a55f0a3ca9c0ab882fb18436c6a969caf71e71b1ba38f5bdb7024ca26dbe6a5c39b074d0e8dfd86a7cb369c79d8278fbe7be74a0e35ec047a SHA512 e13c673f9d6d760d2940cc78db561687268ccd43bbb8bca0c1434b9177d3aa2d5d99c2e3867a8098c0b9ce331b4404837c676cea666bd2acf4c5f30946e30b27
115 +DIST firefox-97.0-th.xpi 608239 BLAKE2B bc94b5aeb4ed0efe5d42a14044fb58149d4feee5a96c13623bd3c3803b87e57bf4be154947c4667d3e2ce66b53b01e9442a0e310fafa150016ae8ba03c126fbf SHA512 35116c3bcb748666092f2f05af39d0f50bf9203e2cfd4b243ec29588deec2f79428dc8674b48cd46ed261ec9f896bdc11e7a4be5421a3bc44e19b6339e48c5bb
116 +DIST firefox-97.0-tl.xpi 521861 BLAKE2B 39686cd54e4b0f10ee8cd834875a65c9d8848cf7837963f5a9fd8b5bb9cc4ad13e0a2ceaf31871602a93cac739af027b972da90c369c35dc0b946be4b7e616ea SHA512 de8421fd92658fca68aab1780b8038ac464b7004583e94351fe4851397d96079dac1d7dccdee1a111f8bf9a568becdad0b6449c0b26742c5375d6f17fde37cc2
117 +DIST firefox-97.0-tr.xpi 557025 BLAKE2B e885d70c57befbf433095a760fc502b283f3f57aac9c4559a476458c1fccb2206621271bc6dad22c83d5d3fa5707dc9c3c0967654c68ecd3e33a59171d22aaf9 SHA512 287cf0f812ebe2905e0de0224663a6149dddc742fd407c34124ad49dbe51aa02f12400e53827899010b48bf62a573cb5746b52fe0473b4dc6204c84a84d047af
118 +DIST firefox-97.0-trs.xpi 491176 BLAKE2B 48e9bfb303f922af99e3fb44977699e971e67d9d30a8ec596cb43f23f4cf709322cf62fbd225f8199219fa1aeaacd3d5e9c02cffc913d74e461f2c50338f2645 SHA512 6b58ff7afa187e742537869756b55f34f0469ad2cd96a27da48ab285155b562bd8773a9e2c4281b5263e4dbe36a8e59c2300af58a44b31933a9886b8696c1e34
119 +DIST firefox-97.0-uk.xpi 626071 BLAKE2B 895d5243f7c6a578a991af731976b27a85f1cf1a0a378cd7b7e028248bd95e90754b66e65e0153090ca5541ccf928d03c154d751c012ecc7e4731a9a024e4f61 SHA512 44afe15085ebaae6605cdcfb2a5d62a9a108bed52e15557c277c7c0fff6cdbb3367acd2a8ea43e8d97611d898457fd4f8e44afb6de0153f361f0bb50fe9ca673
120 +DIST firefox-97.0-ur.xpi 559315 BLAKE2B b3a3d7636552a689a20378331a59a7901680ba7a17a167c9f64e80912ac34a5526a3eaee947e96f33390cabfb02949585e753c9e3263cad604a834f7ee75d62b SHA512 1a79d1b8abcf56b5aa41062c5a949fc2b8248d72375e06a7ab51f97fd21efe00840d2e84978321b9e89436904651e1ddddabb1baa8c51c14776bb8d8c6d74350
121 +DIST firefox-97.0-uz.xpi 476979 BLAKE2B 87cc51a063263740c942c396cc5f79cb734ec0d5ae70c70514139f652f16f8fc350692056a4dedd68488c34c559942ec3e178742a3c8e3c6ac2ef5a42665a1a0 SHA512 c56f234bc7bc8e9d79e3dcee40ebe06f390c1e0c3952c362eff69d37e383facfc4dd28ac6298dbac3825e3473cde426322009b523d07aa77d8630bd9eafbe304
122 +DIST firefox-97.0-vi.xpi 577913 BLAKE2B ff36bb7e4fd89f487f53efb220e507e7237641de21e4b19f77881cf672d7f0e24fe363508e65affa069ed794eb525ac1681a4e9563399e3701dd96bcdad4466e SHA512 81520e5a9f29ac1c53781651e908b295772d0605fe68e0f3f5c0e891326e00d287ce52e7dfd50ee6984c4398e47270422c04d76f2ec4474ed224877af89b7162
123 +DIST firefox-97.0-xh.xpi 423165 BLAKE2B ff4128e5ed65771ad5dec76237a354a4d707dee9695b155cdbf58451cd5adc608c464bc99a7718d33b4be5915d0bab0d345a5256e53caf2612e361924d46d68d SHA512 c5c7bdfea6689ea1c099de45d752fcce69e4f9dbaf21d3dc0c13f99efb15dbf224b1d4018db9ad334b56904d635524e068f0e1b4076bf702b4e98c9016a4f4ce
124 +DIST firefox-97.0-zh-CN.xpi 580060 BLAKE2B 03d4ec821d4956dace05bd20955fb245277a2eda8d7c427233aeea205413ad9ab64fb96a587f6b72d0727e3a5820cf7e792695aee1fd12619d606ecec5a57e17 SHA512 fa58f6675d7fdb0271450acf160dd18f7c338671f85dc3a38846c68ac08c9516d1d6d89532b7ed4ed21a0f3d4decf5085b5c2b9156f6185b2842a4c8e14f1fa8
125 +DIST firefox-97.0-zh-TW.xpi 581193 BLAKE2B 282b68de21d3b9700bdb1faacb14b70bd68b0e4cb14d940181c0d9c348b7df8211fd6352a5bcb975c598696ed2b5fdd9481d665a78cfc5d4499f4004735bb011 SHA512 70aaed830ce6651575790aa09cf4a9ad99f16e1a09acab32245b1d62ea28ac0740a3f3568118bb351436ecffb8921b5d727e90bcef944a3d8d2a3824deea192c
126 +DIST firefox-97.0.source.tar.xz 481365988 BLAKE2B 70667ee5c59cd4f62ad4e1d69f08ba5faf9a2d952db0a8261de199f80190e484456329e28abc29058eb2796d817dea4de94153a7a0fbbb65d8ec27501c03e1b0 SHA512 a913695a42cb06ee9bda2a20e65cc573e40ca93e9f75b7ee0a43ebd1935b371e7e80d5fc8d5f126ad0712ab848635a8624bbeed43807e5c179537aa32c884186
127
128 diff --git a/www-client/firefox/firefox-97.0.ebuild b/www-client/firefox/firefox-97.0.ebuild
129 new file mode 100644
130 index 000000000000..065a1f5c089e
131 --- /dev/null
132 +++ b/www-client/firefox/firefox-97.0.ebuild
133 @@ -0,0 +1,1258 @@
134 +# Copyright 1999-2022 Gentoo Authors
135 +# Distributed under the terms of the GNU General Public License v2
136 +
137 +EAPI="7"
138 +
139 +FIREFOX_PATCHSET="firefox-97-patches-01j.tar.xz"
140 +
141 +LLVM_MAX_SLOT=13
142 +
143 +PYTHON_COMPAT=( python3_{8..10} )
144 +PYTHON_REQ_USE="ncurses,sqlite,ssl"
145 +
146 +WANT_AUTOCONF="2.1"
147 +
148 +VIRTUALX_REQUIRED="pgo"
149 +
150 +MOZ_ESR=
151 +
152 +MOZ_PV=${PV}
153 +MOZ_PV_SUFFIX=
154 +if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
155 + MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
156 +
157 + # Convert the ebuild version to the upstream Mozilla version
158 + MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
159 + MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
160 + MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
161 +fi
162 +
163 +if [[ -n ${MOZ_ESR} ]] ; then
164 + # ESR releases have slightly different version numbers
165 + MOZ_PV="${MOZ_PV}esr"
166 +fi
167 +
168 +MOZ_PN="${PN%-bin}"
169 +MOZ_P="${MOZ_PN}-${MOZ_PV}"
170 +MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
171 +MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
172 +
173 +inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \
174 + llvm multiprocessing pax-utils python-any-r1 toolchain-funcs \
175 + virtualx xdg
176 +
177 +MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
178 +
179 +if [[ ${PV} == *_rc* ]] ; then
180 + MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
181 +fi
182 +
183 +PATCH_URIS=(
184 + https://dev.gentoo.org/~{juippis,polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET}
185 +)
186 +
187 +SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
188 + ${PATCH_URIS[@]}"
189 +
190 +DESCRIPTION="Firefox Web Browser"
191 +HOMEPAGE="https://www.mozilla.com/firefox"
192 +
193 +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
194 +
195 +SLOT="rapid"
196 +LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
197 +
198 +IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel"
199 +IUSE+=" jack libproxy lto +openh264 pgo pulseaudio sndio selinux"
200 +IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx system-png +system-webp"
201 +IUSE+=" wayland wifi"
202 +
203 +# Firefox-only IUSE
204 +IUSE+=" geckodriver"
205 +IUSE+=" +gmp-autoupdate"
206 +IUSE+=" screencast"
207 +
208 +REQUIRED_USE="debug? ( !system-av1 )
209 + pgo? ( lto )
210 + wayland? ( dbus )
211 + wifi? ( dbus )"
212 +
213 +# Firefox-only REQUIRED_USE flags
214 +REQUIRED_USE+=" screencast? ( wayland )"
215 +
216 +BDEPEND="${PYTHON_DEPS}
217 + app-arch/unzip
218 + app-arch/zip
219 + >=dev-util/cbindgen-0.19.0
220 + >=net-libs/nodejs-10.23.1
221 + virtual/pkgconfig
222 + >=virtual/rust-1.57.0
223 + || (
224 + (
225 + sys-devel/clang:13
226 + sys-devel/llvm:13
227 + clang? (
228 + =sys-devel/lld-13*
229 + pgo? ( =sys-libs/compiler-rt-sanitizers-13*[profile] )
230 + )
231 + )
232 + (
233 + sys-devel/clang:12
234 + sys-devel/llvm:12
235 + clang? (
236 + =sys-devel/lld-12*
237 + pgo? ( =sys-libs/compiler-rt-sanitizers-12*[profile] )
238 + )
239 + )
240 + (
241 + sys-devel/clang:11
242 + sys-devel/llvm:11
243 + clang? (
244 + =sys-devel/lld-11*
245 + pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] )
246 + )
247 + )
248 + )
249 + amd64? ( >=dev-lang/nasm-2.14 )
250 + x86? ( >=dev-lang/nasm-2.14 )"
251 +
252 +COMMON_DEPEND="
253 + >=dev-libs/nss-3.74
254 + >=dev-libs/nspr-4.32
255 + dev-libs/atk
256 + dev-libs/expat
257 + >=x11-libs/cairo-1.10[X]
258 + >=x11-libs/gtk+-3.4.0:3[X]
259 + x11-libs/gdk-pixbuf
260 + >=x11-libs/pango-1.22.0
261 + >=media-libs/mesa-10.2:*
262 + media-libs/fontconfig
263 + >=media-libs/freetype-2.9
264 + kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) )
265 + virtual/freedesktop-icon-theme
266 + >=x11-libs/pixman-0.19.2
267 + >=dev-libs/glib-2.42:2
268 + >=sys-libs/zlib-1.2.3
269 + >=dev-libs/libffi-3.0.10:=
270 + media-video/ffmpeg
271 + x11-libs/libX11
272 + x11-libs/libXcomposite
273 + x11-libs/libXdamage
274 + x11-libs/libXext
275 + x11-libs/libXfixes
276 + x11-libs/libXrandr
277 + x11-libs/libXrender
278 + x11-libs/libXtst
279 + x11-libs/libxcb
280 + dbus? (
281 + sys-apps/dbus
282 + dev-libs/dbus-glib
283 + )
284 + libproxy? ( net-libs/libproxy )
285 + screencast? ( media-video/pipewire:= )
286 + system-av1? (
287 + >=media-libs/dav1d-0.9.3:=
288 + >=media-libs/libaom-1.0.0:=
289 + )
290 + system-harfbuzz? (
291 + >=media-libs/harfbuzz-2.8.1:0=
292 + >=media-gfx/graphite2-1.3.13
293 + )
294 + system-icu? ( >=dev-libs/icu-70.1:= )
295 + system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
296 + system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
297 + system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
298 + system-png? ( >=media-libs/libpng-1.6.35:0=[apng] )
299 + system-webp? ( >=media-libs/libwebp-1.1.0:0= )
300 + wifi? (
301 + kernel_linux? (
302 + sys-apps/dbus
303 + dev-libs/dbus-glib
304 + net-misc/networkmanager
305 + )
306 + )
307 + jack? ( virtual/jack )
308 + selinux? ( sec-policy/selinux-mozilla )
309 + sndio? ( media-sound/sndio )"
310 +
311 +RDEPEND="${COMMON_DEPEND}
312 + !www-client/firefox:0
313 + !www-client/firefox:esr
314 + jack? ( virtual/jack )
315 + openh264? ( media-libs/openh264:*[plugin] )
316 + pulseaudio? (
317 + || (
318 + media-sound/pulseaudio
319 + >=media-sound/apulse-0.1.12-r4
320 + )
321 + )
322 + selinux? ( sec-policy/selinux-mozilla )"
323 +
324 +DEPEND="${COMMON_DEPEND}
325 + x11-libs/libICE
326 + x11-libs/libSM
327 + pulseaudio? (
328 + || (
329 + media-sound/pulseaudio
330 + >=media-sound/apulse-0.1.12-r4[sdk]
331 + )
332 + )
333 + wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
334 + amd64? ( virtual/opengl )
335 + x86? ( virtual/opengl )"
336 +
337 +S="${WORKDIR}/${PN}-${PV%_*}"
338 +
339 +# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
340 +# overridden in the enviromnent (advanced hackers only)
341 +if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
342 + MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
343 +fi
344 +
345 +llvm_check_deps() {
346 + if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
347 + einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
348 + return 1
349 + fi
350 +
351 + if use clang ; then
352 + if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
353 + einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
354 + return 1
355 + fi
356 +
357 + if use pgo ; then
358 + if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
359 + einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
360 + return 1
361 + fi
362 + fi
363 + fi
364 +
365 + einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
366 +}
367 +
368 +MOZ_LANGS=(
369 + af ar ast be bg br ca cak cs cy da de dsb
370 + el en-CA en-GB en-US es-AR es-ES et eu
371 + fi fr fy-NL ga-IE gd gl he hr hsb hu
372 + id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO
373 + pa-IN pl pt-BR pt-PT rm ro ru
374 + sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW
375 +)
376 +
377 +# Firefox-only LANGS
378 +MOZ_LANGS+=( ach )
379 +MOZ_LANGS+=( an )
380 +MOZ_LANGS+=( az )
381 +MOZ_LANGS+=( bn )
382 +MOZ_LANGS+=( bs )
383 +MOZ_LANGS+=( ca-valencia )
384 +MOZ_LANGS+=( eo )
385 +MOZ_LANGS+=( es-CL )
386 +MOZ_LANGS+=( es-MX )
387 +MOZ_LANGS+=( fa )
388 +MOZ_LANGS+=( ff )
389 +MOZ_LANGS+=( gn )
390 +MOZ_LANGS+=( gu-IN )
391 +MOZ_LANGS+=( hi-IN )
392 +MOZ_LANGS+=( hy-AM )
393 +MOZ_LANGS+=( ia )
394 +MOZ_LANGS+=( km )
395 +MOZ_LANGS+=( kn )
396 +MOZ_LANGS+=( lij )
397 +MOZ_LANGS+=( mk )
398 +MOZ_LANGS+=( mr )
399 +MOZ_LANGS+=( my )
400 +MOZ_LANGS+=( ne-NP )
401 +MOZ_LANGS+=( oc )
402 +MOZ_LANGS+=( sco )
403 +MOZ_LANGS+=( si )
404 +MOZ_LANGS+=( son )
405 +MOZ_LANGS+=( szl )
406 +MOZ_LANGS+=( ta )
407 +MOZ_LANGS+=( te )
408 +MOZ_LANGS+=( tl )
409 +MOZ_LANGS+=( trs )
410 +MOZ_LANGS+=( ur )
411 +MOZ_LANGS+=( xh )
412 +
413 +mozilla_set_globals() {
414 + # https://bugs.gentoo.org/587334
415 + local MOZ_TOO_REGIONALIZED_FOR_L10N=(
416 + fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
417 + )
418 +
419 + local lang xflag
420 + for lang in "${MOZ_LANGS[@]}" ; do
421 + # en and en_US are handled internally
422 + if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
423 + continue
424 + fi
425 +
426 + # strip region subtag if $lang is in the list
427 + if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
428 + xflag=${lang%%-*}
429 + else
430 + xflag=${lang}
431 + fi
432 +
433 + SRC_URI+=" l10n_${xflag/[_@]/-}? ("
434 + SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
435 + SRC_URI+=" )"
436 + IUSE+=" l10n_${xflag/[_@]/-}"
437 + done
438 +}
439 +mozilla_set_globals
440 +
441 +moz_clear_vendor_checksums() {
442 + debug-print-function ${FUNCNAME} "$@"
443 +
444 + if [[ ${#} -ne 1 ]] ; then
445 + die "${FUNCNAME} requires exact one argument"
446 + fi
447 +
448 + einfo "Clearing cargo checksums for ${1} ..."
449 +
450 + sed -i \
451 + -e 's/\("files":{\)[^}]*/\1/' \
452 + "${S}"/third_party/rust/${1}/.cargo-checksum.json \
453 + || die
454 +}
455 +
456 +moz_install_xpi() {
457 + debug-print-function ${FUNCNAME} "$@"
458 +
459 + if [[ ${#} -lt 2 ]] ; then
460 + die "${FUNCNAME} requires at least two arguments"
461 + fi
462 +
463 + local DESTDIR=${1}
464 + shift
465 +
466 + insinto "${DESTDIR}"
467 +
468 + local emid xpi_file xpi_tmp_dir
469 + for xpi_file in "${@}" ; do
470 + emid=
471 + xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
472 +
473 + # Unpack XPI
474 + unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
475 +
476 + # Determine extension ID
477 + if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
478 + emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
479 + [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
480 + elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
481 + emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
482 + [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
483 + else
484 + die "failed to determine extension id"
485 + fi
486 +
487 + einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
488 + newins "${xpi_file}" "${emid}.xpi"
489 + done
490 +}
491 +
492 +mozconfig_add_options_ac() {
493 + debug-print-function ${FUNCNAME} "$@"
494 +
495 + if [[ ${#} -lt 2 ]] ; then
496 + die "${FUNCNAME} requires at least two arguments"
497 + fi
498 +
499 + local reason=${1}
500 + shift
501 +
502 + local option
503 + for option in ${@} ; do
504 + echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
505 + done
506 +}
507 +
508 +mozconfig_add_options_mk() {
509 + debug-print-function ${FUNCNAME} "$@"
510 +
511 + if [[ ${#} -lt 2 ]] ; then
512 + die "${FUNCNAME} requires at least two arguments"
513 + fi
514 +
515 + local reason=${1}
516 + shift
517 +
518 + local option
519 + for option in ${@} ; do
520 + echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
521 + done
522 +}
523 +
524 +mozconfig_use_enable() {
525 + debug-print-function ${FUNCNAME} "$@"
526 +
527 + if [[ ${#} -lt 1 ]] ; then
528 + die "${FUNCNAME} requires at least one arguments"
529 + fi
530 +
531 + local flag=$(use_enable "${@}")
532 + mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
533 +}
534 +
535 +mozconfig_use_with() {
536 + debug-print-function ${FUNCNAME} "$@"
537 +
538 + if [[ ${#} -lt 1 ]] ; then
539 + die "${FUNCNAME} requires at least one arguments"
540 + fi
541 +
542 + local flag=$(use_with "${@}")
543 + mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
544 +}
545 +
546 +pkg_pretend() {
547 + if [[ ${MERGE_TYPE} != binary ]] ; then
548 + if use pgo ; then
549 + if ! has usersandbox $FEATURES ; then
550 + die "You must enable usersandbox as X server can not run as root!"
551 + fi
552 + fi
553 +
554 + # Ensure we have enough disk space to compile
555 + if use pgo || use lto || use debug ; then
556 + CHECKREQS_DISK_BUILD="13500M"
557 + else
558 + CHECKREQS_DISK_BUILD="6500M"
559 + fi
560 +
561 + check-reqs_pkg_pretend
562 + fi
563 +}
564 +
565 +pkg_setup() {
566 + if [[ ${MERGE_TYPE} != binary ]] ; then
567 + if use pgo ; then
568 + if ! has userpriv ${FEATURES} ; then
569 + eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
570 + fi
571 + fi
572 +
573 + # Ensure we have enough disk space to compile
574 + if use pgo || use lto || use debug ; then
575 + CHECKREQS_DISK_BUILD="13500M"
576 + else
577 + CHECKREQS_DISK_BUILD="6400M"
578 + fi
579 +
580 + check-reqs_pkg_setup
581 +
582 + llvm_pkg_setup
583 +
584 + if use clang && use lto ; then
585 + local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
586 + [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
587 + [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
588 +
589 + # temp fix for https://bugs.gentoo.org/768543
590 + # we can assume that rust 1.{49,50}.0 always uses llvm 11
591 + local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }')
592 + [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}")
593 + [[ -z ${version_rust} ]] && die "Failed to read version from rustc!"
594 +
595 + if ver_test "${version_rust}" -ge "1.49" && ver_test "${version_rust}" -le "1.50" ; then
596 + local version_llvm_rust="11"
597 + else
598 + local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
599 + [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
600 + [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
601 + fi
602 +
603 + if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
604 + eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
605 + eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
606 + eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
607 + eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
608 + eerror " - Build ${CATEGORY}/${PN} without USE=lto"
609 + die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
610 + fi
611 + fi
612 +
613 + if ! use clang && [[ $(gcc-major-version) -eq 11 ]] \
614 + && ! has_version -b ">sys-devel/gcc-11.1.0:11" ; then
615 + # bug 792705
616 + eerror "Using GCC 11 to compile firefox is currently known to be broken (see bug #792705)."
617 + die "Set USE=clang or select <gcc-11 to build ${CATEGORY}/${P}."
618 + fi
619 +
620 + python-any-r1_pkg_setup
621 +
622 + # Avoid PGO profiling problems due to enviroment leakage
623 + # These should *always* be cleaned up anyway
624 + unset \
625 + DBUS_SESSION_BUS_ADDRESS \
626 + DISPLAY \
627 + ORBIT_SOCKETDIR \
628 + SESSION_MANAGER \
629 + XAUTHORITY \
630 + XDG_CACHE_HOME \
631 + XDG_SESSION_COOKIE
632 +
633 + # Build system is using /proc/self/oom_score_adj, bug #604394
634 + addpredict /proc/self/oom_score_adj
635 +
636 + if use pgo ; then
637 + # Allow access to GPU during PGO run
638 + local ati_cards mesa_cards nvidia_cards render_cards
639 + shopt -s nullglob
640 +
641 + ati_cards=$(echo -n /dev/ati/card* | sed 's/ /:/g')
642 + if [[ -n "${ati_cards}" ]] ; then
643 + addpredict "${ati_cards}"
644 + fi
645 +
646 + mesa_cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
647 + if [[ -n "${mesa_cards}" ]] ; then
648 + addpredict "${mesa_cards}"
649 + fi
650 +
651 + nvidia_cards=$(echo -n /dev/nvidia* | sed 's/ /:/g')
652 + if [[ -n "${nvidia_cards}" ]] ; then
653 + addpredict "${nvidia_cards}"
654 + fi
655 +
656 + render_cards=$(echo -n /dev/dri/renderD128* | sed 's/ /:/g')
657 + if [[ -n "${render_cards}" ]] ; then
658 + addpredict "${render_cards}"
659 + fi
660 +
661 + shopt -u nullglob
662 + fi
663 +
664 + if ! mountpoint -q /dev/shm ; then
665 + # If /dev/shm is not available, configure is known to fail with
666 + # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
667 + ewarn "/dev/shm is not mounted -- expect build failures!"
668 + fi
669 +
670 + # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
671 + # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
672 + # get your own set of keys.
673 + if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
674 + MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
675 + fi
676 +
677 + if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
678 + MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
679 + fi
680 +
681 + # Mozilla API keys (see https://location.services.mozilla.com/api)
682 + # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
683 + # get your own set of keys.
684 + if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
685 + MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
686 + fi
687 +
688 + # Ensure we use C locale when building, bug #746215
689 + export LC_ALL=C
690 + fi
691 +
692 + CONFIG_CHECK="~SECCOMP"
693 + WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
694 + linux-info_pkg_setup
695 +}
696 +
697 +src_unpack() {
698 + local _lp_dir="${WORKDIR}/language_packs"
699 + local _src_file
700 +
701 + if [[ ! -d "${_lp_dir}" ]] ; then
702 + mkdir "${_lp_dir}" || die
703 + fi
704 +
705 + for _src_file in ${A} ; do
706 + if [[ ${_src_file} == *.xpi ]]; then
707 + cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
708 + else
709 + unpack ${_src_file}
710 + fi
711 + done
712 +}
713 +
714 +src_prepare() {
715 + use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
716 + eapply "${WORKDIR}/firefox-patches"
717 +
718 + # Allow user to apply any additional patches without modifing ebuild
719 + eapply_user
720 +
721 + # Make cargo respect MAKEOPTS
722 + export CARGO_BUILD_JOBS="$(makeopts_jobs)"
723 +
724 + # Make LTO respect MAKEOPTS
725 + sed -i \
726 + -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
727 + "${S}"/build/moz.configure/lto-pgo.configure \
728 + || die "sed failed to set num_cores"
729 +
730 + # Make ICU respect MAKEOPTS
731 + sed -i \
732 + -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
733 + "${S}"/intl/icu_sources_data.py \
734 + || die "sed failed to set num_cores"
735 +
736 + # sed-in toolchain prefix
737 + sed -i \
738 + -e "s/objdump/${CHOST}-objdump/" \
739 + "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
740 + || die "sed failed to set toolchain prefix"
741 +
742 + sed -i \
743 + -e 's/ccache_stats = None/return None/' \
744 + "${S}"/python/mozbuild/mozbuild/controller/building.py \
745 + || die "sed failed to disable ccache stats call"
746 +
747 + einfo "Removing pre-built binaries ..."
748 + find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
749 +
750 + # Clearing checksums where we have applied patches
751 + moz_clear_vendor_checksums target-lexicon-0.9.0
752 +
753 + # Create build dir
754 + BUILD_DIR="${WORKDIR}/${PN}_build"
755 + mkdir -p "${BUILD_DIR}" || die
756 +
757 + # Write API keys to disk
758 + echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
759 + echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
760 + echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
761 +
762 + xdg_src_prepare
763 +}
764 +
765 +src_configure() {
766 + # Show flags set at the beginning
767 + einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
768 + einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
769 + einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
770 + einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
771 + einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
772 +
773 + local have_switched_compiler=
774 + if use clang && ! tc-is-clang ; then
775 + # Force clang
776 + einfo "Enforcing the use of clang due to USE=clang ..."
777 + have_switched_compiler=yes
778 + AR=llvm-ar
779 + CC=${CHOST}-clang
780 + CXX=${CHOST}-clang++
781 + NM=llvm-nm
782 + RANLIB=llvm-ranlib
783 + elif ! use clang && ! tc-is-gcc ; then
784 + # Force gcc
785 + have_switched_compiler=yes
786 + einfo "Enforcing the use of gcc due to USE=-clang ..."
787 + AR=gcc-ar
788 + CC=${CHOST}-gcc
789 + CXX=${CHOST}-g++
790 + NM=gcc-nm
791 + RANLIB=gcc-ranlib
792 + fi
793 +
794 + if [[ -n "${have_switched_compiler}" ]] ; then
795 + # Because we switched active compiler we have to ensure
796 + # that no unsupported flags are set
797 + strip-unsupported-flags
798 + fi
799 +
800 + # Ensure we use correct toolchain
801 + export HOST_CC="$(tc-getBUILD_CC)"
802 + export HOST_CXX="$(tc-getBUILD_CXX)"
803 + tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
804 +
805 + # Pass the correct toolchain paths through cbindgen
806 + if tc-is-cross-compiler ; then
807 + export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
808 + fi
809 +
810 + # Set MOZILLA_FIVE_HOME
811 + export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
812 +
813 + # python/mach/mach/mixin/process.py fails to detect SHELL
814 + export SHELL="${EPREFIX}/bin/bash"
815 +
816 + # Set state path
817 + export MOZBUILD_STATE_PATH="${BUILD_DIR}"
818 +
819 + # Set MOZCONFIG
820 + export MOZCONFIG="${S}/.mozconfig"
821 +
822 + # Initialize MOZCONFIG
823 + mozconfig_add_options_ac '' --enable-application=browser
824 +
825 + # Set Gentoo defaults
826 + export MOZILLA_OFFICIAL=1
827 +
828 + mozconfig_add_options_ac 'Gentoo default' \
829 + --allow-addon-sideload \
830 + --disable-cargo-incremental \
831 + --disable-crashreporter \
832 + --disable-install-strip \
833 + --disable-parental-controls \
834 + --disable-strip \
835 + --disable-updater \
836 + --enable-negotiateauth \
837 + --enable-new-pass-manager \
838 + --enable-official-branding \
839 + --enable-release \
840 + --enable-sandbox \
841 + --enable-system-ffi \
842 + --enable-system-pixman \
843 + --host="${CBUILD:-${CHOST}}" \
844 + --libdir="${EPREFIX}/usr/$(get_libdir)" \
845 + --prefix="${EPREFIX}/usr" \
846 + --target="${CHOST}" \
847 + --without-ccache \
848 + --without-wasm-sandboxed-libraries \
849 + --with-intl-api \
850 + --with-libclang-path="$(llvm-config --libdir)" \
851 + --with-system-nspr \
852 + --with-system-nss \
853 + --with-system-zlib \
854 + --with-toolchain-prefix="${CHOST}-" \
855 + --with-unsigned-addon-scopes=app,system \
856 + --x-includes="${SYSROOT}${EPREFIX}/usr/include" \
857 + --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)"
858 +
859 + # Set update channel
860 + local update_channel=release
861 + [[ -n ${MOZ_ESR} ]] && update_channel=esr
862 + mozconfig_add_options_ac '' --update-channel=${update_channel}
863 +
864 + if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
865 + mozconfig_add_options_ac '' --enable-rust-simd
866 + fi
867 +
868 + if [[ -s "${S}/api-google.key" ]] ; then
869 + local key_origin="Gentoo default"
870 + if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
871 + key_origin="User value"
872 + fi
873 +
874 + mozconfig_add_options_ac "${key_origin}" \
875 + --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
876 + else
877 + einfo "Building without Google API key ..."
878 + fi
879 +
880 + if [[ -s "${S}/api-location.key" ]] ; then
881 + local key_origin="Gentoo default"
882 + if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
883 + key_origin="User value"
884 + fi
885 +
886 + mozconfig_add_options_ac "${key_origin}" \
887 + --with-google-location-service-api-keyfile="${S}/api-location.key"
888 + else
889 + einfo "Building without Location API key ..."
890 + fi
891 +
892 + if [[ -s "${S}/api-mozilla.key" ]] ; then
893 + local key_origin="Gentoo default"
894 + if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
895 + key_origin="User value"
896 + fi
897 +
898 + mozconfig_add_options_ac "${key_origin}" \
899 + --with-mozilla-api-keyfile="${S}/api-mozilla.key"
900 + else
901 + einfo "Building without Mozilla API key ..."
902 + fi
903 +
904 + mozconfig_use_with system-av1
905 + mozconfig_use_with system-harfbuzz
906 + mozconfig_use_with system-harfbuzz system-graphite2
907 + mozconfig_use_with system-icu
908 + mozconfig_use_with system-jpeg
909 + mozconfig_use_with system-libevent
910 + mozconfig_use_with system-libvpx
911 + mozconfig_use_with system-png
912 + mozconfig_use_with system-webp
913 +
914 + mozconfig_use_enable dbus
915 + mozconfig_use_enable libproxy
916 +
917 + use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
918 +
919 + mozconfig_use_enable geckodriver
920 +
921 + if use hardened ; then
922 + mozconfig_add_options_ac "+hardened" --enable-hardening
923 + append-ldflags "-Wl,-z,relro -Wl,-z,now"
924 + fi
925 +
926 + mozconfig_use_enable jack
927 +
928 + mozconfig_use_enable pulseaudio
929 + # force the deprecated alsa sound code if pulseaudio is disabled
930 + if use kernel_linux && ! use pulseaudio ; then
931 + mozconfig_add_options_ac '-pulseaudio' --enable-alsa
932 + fi
933 +
934 + mozconfig_use_enable sndio
935 +
936 + mozconfig_use_enable wifi necko-wifi
937 +
938 + if use wayland ; then
939 + mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland
940 + else
941 + mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3
942 + fi
943 +
944 + if use lto ; then
945 + if use clang ; then
946 + # Upstream only supports lld when using clang
947 + mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
948 +
949 + mozconfig_add_options_ac '+lto' --enable-lto=cross
950 +
951 + else
952 + # ThinLTO is currently broken, see bmo#1644409
953 + mozconfig_add_options_ac '+lto' --enable-lto=full
954 + if tc-ld-is-gold; then
955 + mozconfig_add_options_ac "linker is set to gold" --enable-linker=gold
956 + export MOZ_FORCE_GOLD=1
957 + else
958 + mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
959 + fi
960 + fi
961 +
962 + if use pgo ; then
963 + mozconfig_add_options_ac '+pgo' MOZ_PGO=1
964 +
965 + if use clang ; then
966 + # Used in build/pgo/profileserver.py
967 + export LLVM_PROFDATA="llvm-profdata"
968 + fi
969 + fi
970 + else
971 + # Avoid auto-magic on linker
972 + if use clang ; then
973 + # This is upstream's default
974 + mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
975 + else
976 + if tc-ld-is-gold; then
977 + mozconfig_add_options_ac "linker is set to gold" --enable-linker=gold
978 + export MOZ_FORCE_GOLD=1
979 + else
980 + mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
981 + fi
982 + fi
983 + fi
984 +
985 + # LTO flag was handled via configure
986 + filter-flags '-flto*'
987 +
988 + mozconfig_use_enable debug
989 + if use debug ; then
990 + mozconfig_add_options_ac '+debug' --disable-optimize
991 + else
992 + if is-flag '-g*' ; then
993 + if use clang ; then
994 + mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
995 + else
996 + mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
997 + fi
998 + else
999 + mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
1000 + fi
1001 +
1002 + if is-flag '-O0' ; then
1003 + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
1004 + elif is-flag '-O4' ; then
1005 + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
1006 + elif is-flag '-O3' ; then
1007 + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
1008 + elif is-flag '-O1' ; then
1009 + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
1010 + elif is-flag '-Os' ; then
1011 + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
1012 + else
1013 + mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
1014 + fi
1015 + fi
1016 +
1017 + # Debug flag was handled via configure
1018 + filter-flags '-g*'
1019 +
1020 + # Optimization flag was handled via configure
1021 + filter-flags '-O*'
1022 +
1023 + # Modifications to better support ARM, bug #553364
1024 + if use cpu_flags_arm_neon ; then
1025 + mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
1026 +
1027 + if ! tc-is-clang ; then
1028 + # thumb options aren't supported when using clang, bug 666966
1029 + mozconfig_add_options_ac '+cpu_flags_arm_neon' \
1030 + --with-thumb=yes \
1031 + --with-thumb-interwork=no
1032 + fi
1033 + fi
1034 +
1035 + if [[ ${CHOST} == armv*h* ]] ; then
1036 + mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
1037 +
1038 + if ! use system-libvpx ; then
1039 + sed -i \
1040 + -e "s|softfp|hard|" \
1041 + "${S}"/media/libvpx/moz.build \
1042 + || die
1043 + fi
1044 + fi
1045 +
1046 + if use clang ; then
1047 + # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
1048 + # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
1049 + # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
1050 + local disable_elf_hack=
1051 + if use amd64 ; then
1052 + disable_elf_hack=yes
1053 + elif use x86 ; then
1054 + disable_elf_hack=yes
1055 + elif use arm ; then
1056 + disable_elf_hack=yes
1057 + fi
1058 +
1059 + if [[ -n ${disable_elf_hack} ]] ; then
1060 + mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack
1061 + fi
1062 + elif tc-is-gcc ; then
1063 + if ver_test $(gcc-fullversion) -ge 10 ; then
1064 + einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..."
1065 + append-cxxflags -fno-tree-loop-vectorize
1066 + fi
1067 + fi
1068 +
1069 + # Additional ARCH support
1070 + case "${ARCH}" in
1071 + arm)
1072 + # Reduce the memory requirements for linking
1073 + if use clang ; then
1074 + # Nothing to do
1075 + :;
1076 + elif tc-ld-is-gold || use lto ; then
1077 + append-ldflags -Wl,--no-keep-memory
1078 + else
1079 + append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
1080 + fi
1081 + ;;
1082 + esac
1083 +
1084 + if ! use elibc_glibc ; then
1085 + mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
1086 + fi
1087 +
1088 + # Allow elfhack to work in combination with unstripped binaries
1089 + # when they would normally be larger than 2GiB.
1090 + append-ldflags "-Wl,--compress-debug-sections=zlib"
1091 +
1092 + # Make revdep-rebuild.sh happy; Also required for musl
1093 + append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
1094 +
1095 + # Pass $MAKEOPTS to build system
1096 + export MOZ_MAKE_FLAGS="${MAKEOPTS}"
1097 +
1098 + # Use system's Python environment
1099 + export MACH_USE_SYSTEM_PYTHON=1
1100 + export MACH_SYSTEM_ASSERTED_COMPATIBLE_WITH_MACH_SITE=1
1101 + export PIP_NO_CACHE_DIR=off
1102 +
1103 + # Disable notification when build system has finished
1104 + export MOZ_NOSPAM=1
1105 +
1106 + # Portage sets XARGS environment variable to "xargs -r" by default which
1107 + # breaks build system's check_prog() function which doesn't support arguments
1108 + mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
1109 +
1110 + # Set build dir
1111 + mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
1112 +
1113 + # Show flags we will use
1114 + einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
1115 + einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
1116 + einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
1117 + einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
1118 + einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
1119 +
1120 + # Handle EXTRA_CONF and show summary
1121 + local ac opt hash reason
1122 +
1123 + # Apply EXTRA_ECONF entries to $MOZCONFIG
1124 + if [[ -n ${EXTRA_ECONF} ]] ; then
1125 + IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
1126 + for opt in "${ac[@]}"; do
1127 + mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
1128 + done
1129 + fi
1130 +
1131 + echo
1132 + echo "=========================================================="
1133 + echo "Building ${PF} with the following configuration"
1134 + grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
1135 + [[ -z ${hash} || ${hash} == \# ]] \
1136 + || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
1137 + printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
1138 + done
1139 + echo "=========================================================="
1140 + echo
1141 +
1142 + ./mach configure || die
1143 +}
1144 +
1145 +src_compile() {
1146 + local virtx_cmd=
1147 +
1148 + if use pgo ; then
1149 + virtx_cmd=virtx
1150 +
1151 + # Reset and cleanup environment variables used by GNOME/XDG
1152 + gnome2_environment_reset
1153 +
1154 + addpredict /root
1155 + fi
1156 +
1157 + local -x GDK_BACKEND=x11
1158 +
1159 + ${virtx_cmd} ./mach build --verbose \
1160 + || die
1161 +}
1162 +
1163 +src_install() {
1164 + # xpcshell is getting called during install
1165 + pax-mark m \
1166 + "${BUILD_DIR}"/dist/bin/xpcshell \
1167 + "${BUILD_DIR}"/dist/bin/${PN} \
1168 + "${BUILD_DIR}"/dist/bin/plugin-container
1169 +
1170 + DESTDIR="${D}" ./mach install || die
1171 +
1172 + # Upstream cannot ship symlink but we can (bmo#658850)
1173 + rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
1174 + dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
1175 +
1176 + # Don't install llvm-symbolizer from sys-devel/llvm package
1177 + if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
1178 + rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
1179 + fi
1180 +
1181 + # Install policy (currently only used to disable application updates)
1182 + insinto "${MOZILLA_FIVE_HOME}/distribution"
1183 + newins "${FILESDIR}"/distribution.ini distribution.ini
1184 + newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
1185 +
1186 + # Install system-wide preferences
1187 + local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences"
1188 + insinto "${PREFS_DIR}"
1189 + newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js
1190 +
1191 + local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js"
1192 +
1193 + # Set dictionary path to use system hunspell
1194 + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
1195 + pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
1196 + EOF
1197 +
1198 + # Force hwaccel prefs if USE=hwaccel is enabled
1199 + if use hwaccel ; then
1200 + cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \
1201 + >>"${GENTOO_PREFS}" \
1202 + || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
1203 + fi
1204 +
1205 + if ! use gmp-autoupdate ; then
1206 + local plugin
1207 + for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
1208 + einfo "Disabling auto-update for ${plugin} plugin ..."
1209 + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
1210 + pref("media.${plugin}.autoupdate", false);
1211 + EOF
1212 + done
1213 + fi
1214 +
1215 + # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
1216 + if use system-harfbuzz ; then
1217 + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
1218 + sticky_pref("gfx.font_rendering.graphite.enabled", true);
1219 + EOF
1220 + fi
1221 +
1222 + # Install language packs
1223 + local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
1224 + if [[ -n "${langpacks}" ]] ; then
1225 + moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
1226 + fi
1227 +
1228 + # Install geckodriver
1229 + if use geckodriver ; then
1230 + einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..."
1231 + pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
1232 + exeinto "${MOZILLA_FIVE_HOME}"
1233 + doexe "${BUILD_DIR}"/dist/bin/geckodriver
1234 +
1235 + dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
1236 + fi
1237 +
1238 + # Install icons
1239 + local icon_srcdir="${S}/browser/branding/official"
1240 + local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg"
1241 +
1242 + insinto /usr/share/icons/hicolor/symbolic/apps
1243 + newins "${icon_symbolic_file}" ${PN}-symbolic.svg
1244 +
1245 + local icon size
1246 + for icon in "${icon_srcdir}"/default*.png ; do
1247 + size=${icon%.png}
1248 + size=${size##*/default}
1249 +
1250 + if [[ ${size} -eq 48 ]] ; then
1251 + newicon "${icon}" ${PN}.png
1252 + fi
1253 +
1254 + newicon -s ${size} "${icon}" ${PN}.png
1255 + done
1256 +
1257 + # Install menu
1258 + local app_name="Mozilla ${MOZ_PN^}"
1259 + local desktop_file="${FILESDIR}/icon/${PN}-r3.desktop"
1260 + local desktop_filename="${PN}.desktop"
1261 + local exec_command="${PN}"
1262 + local icon="${PN}"
1263 + local use_wayland="false"
1264 +
1265 + if use wayland ; then
1266 + use_wayland="true"
1267 + fi
1268 +
1269 + cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
1270 +
1271 + sed -i \
1272 + -e "s:@NAME@:${app_name}:" \
1273 + -e "s:@EXEC@:${exec_command}:" \
1274 + -e "s:@ICON@:${icon}:" \
1275 + "${WORKDIR}/${PN}.desktop-template" \
1276 + || die
1277 +
1278 + newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
1279 +
1280 + rm "${WORKDIR}/${PN}.desktop-template" || die
1281 +
1282 + # Install wrapper script
1283 + [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
1284 + newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
1285 +
1286 + # Update wrapper
1287 + sed -i \
1288 + -e "s:@PREFIX@:${EPREFIX}/usr:" \
1289 + -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
1290 + -e "s:@APULSELIB_DIR@:${apulselib}:" \
1291 + -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
1292 + "${ED}/usr/bin/${PN}" \
1293 + || die
1294 +}
1295 +
1296 +pkg_preinst() {
1297 + xdg_pkg_preinst
1298 +
1299 + # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
1300 + # does not need to be forced into the LD_LIBRARY_PATH
1301 + if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
1302 + einfo "APULSE found; Generating library symlinks for sound support ..."
1303 + local lib
1304 + pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die
1305 + for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
1306 + # A quickpkg rolled by hand will grab symlinks as part of the package,
1307 + # so we need to avoid creating them if they already exist.
1308 + if [[ ! -L ${lib##*/} ]] ; then
1309 + ln -s "${lib}" ${lib##*/} || die
1310 + fi
1311 + done
1312 + popd &>/dev/null || die
1313 + fi
1314 +}
1315 +
1316 +pkg_postinst() {
1317 + xdg_pkg_postinst
1318 +
1319 + if ! use gmp-autoupdate ; then
1320 + elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
1321 + elog "installing into new profiles:"
1322 + local plugin
1323 + for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
1324 + elog "\t ${plugin}"
1325 + done
1326 + elog
1327 + fi
1328 +
1329 + if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
1330 + elog "Apulse was detected at merge time on this system and so it will always be"
1331 + elog "used for sound. If you wish to use pulseaudio instead please unmerge"
1332 + elog "media-sound/apulse."
1333 + elog
1334 + fi
1335 +
1336 + local show_doh_information
1337 + local show_normandy_information
1338 + local show_shortcut_information
1339 +
1340 + if [[ -z "${REPLACING_VERSIONS}" ]] ; then
1341 + # New install; Tell user that DoH is disabled by default
1342 + show_doh_information=yes
1343 + show_normandy_information=yes
1344 + show_shortcut_information=no
1345 + else
1346 + local replacing_version
1347 + for replacing_version in ${REPLACING_VERSIONS} ; do
1348 + if ver_test "${replacing_version}" -lt 91.0 ; then
1349 + # Tell user that we no longer install a shortcut
1350 + # per supported display protocol
1351 + show_shortcut_information=yes
1352 + fi
1353 + done
1354 + fi
1355 +
1356 + if [[ -n "${show_doh_information}" ]] ; then
1357 + elog
1358 + elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):"
1359 + elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all"
1360 + elog "DNS traffic to Cloudflare by default is not a good idea and applications"
1361 + elog "should respect OS configured settings), \"network.trr.mode\" was set to 5"
1362 + elog "(\"Off by choice\") by default."
1363 + elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
1364 + fi
1365 +
1366 + # bug 713782
1367 + if [[ -n "${show_normandy_information}" ]] ; then
1368 + elog
1369 + elog "Upstream operates a service named Normandy which allows Mozilla to"
1370 + elog "push changes for default settings or even install new add-ons remotely."
1371 + elog "While this can be useful to address problems like 'Armagadd-on 2.0' or"
1372 + elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security"
1373 + elog "concerns prevail, which is why we have switched off the use of this"
1374 + elog "service by default."
1375 + elog
1376 + elog "To re-enable this service set"
1377 + elog
1378 + elog " app.normandy.enabled=true"
1379 + elog
1380 + elog "in about:config."
1381 + fi
1382 +
1383 + if [[ -n "${show_shortcut_information}" ]] ; then
1384 + elog
1385 + elog "Since ${PN}-91.0 we no longer install multiple shortcuts for"
1386 + elog "each supported display protocol. Instead we will only install"
1387 + elog "one generic Mozilla ${PN^} shortcut."
1388 + elog "If you still want to be able to select between running Mozilla ${PN^}"
1389 + elog "on X11 or Wayland, you have to re-create these shortcuts on your own."
1390 + fi
1391 +}
1392
1393 diff --git a/www-client/firefox/metadata.xml b/www-client/firefox/metadata.xml
1394 index ac687a3eddcb..34498adf31a1 100644
1395 --- a/www-client/firefox/metadata.xml
1396 +++ b/www-client/firefox/metadata.xml
1397 @@ -12,6 +12,7 @@
1398 <flag name="gmp-autoupdate">Allow Gecko Media Plugins (binary blobs) to be automatically
1399 downloaded and kept up-to-date in user profiles</flag>
1400 <flag name="hwaccel">Force-enable hardware-accelerated rendering (Mozilla bug 594876)</flag>
1401 + <flag name="libproxy">Enable libproxy support</flag>
1402 <flag name="lto">Enable Link Time Optimization (LTO). Requires Gold linker when using GCC
1403 or LDD linker when using Clang</flag>
1404 <flag name="openh264">Use <pkg>media-libs/openh264</pkg> for H.264 support