commit:     a865bcf90e9cee50b4d07b6a20f809dfdf2428b4
Author:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
AuthorDate: Tue Mar  8 07:50:35 2022 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Tue Mar  8 07:53:34 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a865bcf9

www-client/firefox: add 91.7.0

Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 www-client/firefox/Manifest              |   98 +++
 www-client/firefox/firefox-91.7.0.ebuild | 1230 ++++++++++++++++++++++++++++++
 2 files changed, 1328 insertions(+)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index fb13a18c5b55..1cc5da841bc1 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -96,6 +96,104 @@ DIST firefox-91.6.1esr-xh.xpi 428172 BLAKE2B 
7eab4443fc766bda5891a8e422417a7ca77
 DIST firefox-91.6.1esr-zh-CN.xpi 575372 BLAKE2B 
1d4785b546084f2eb7540d5d9496414d0b639483a18cb55db515ca5ce3523fea7f16230fa36a049b73bd67fb91010579e3f8f8fab64c337c25770bb433bea031
 SHA512 
4625336530f19f800aebbd5b957beeee4620a16b33aa7e8e197a65d71376484ebede0bd147920281fc81c004359b89ef395ce3620659e8f89f02e049aed1b49a
 DIST firefox-91.6.1esr-zh-TW.xpi 576227 BLAKE2B 
aa72e97cd81e9bf930719999d6ec17c9708d3acb840882a9eb465ed6301b124c9ce86013a3b2d21aa872f07ba22380cf2486f8cd7ea6cdf04f644e29632abcba
 SHA512 
f9822c1c3285f7fdf4f8f5a0f343cdf731d7773884265646d7e01a8c1f23cb2b7bbd29fe55ec89d050da0aaf2e0f02cae50007d9f9691da32566e2f5ab9970ae
 DIST firefox-91.6.1esr.source.tar.xz 383294340 BLAKE2B 
7ec034839a633b1309bf226e72dab69c4979982ab3babac287eec23b20b211f708b732becaae27d83ca4e801592b37f0117180fcdcf17d64d388edb5e8c8eed2
 SHA512 
e72ff7114e251ec3558f47bb45e4017fe4c665a95e0a108d5818c628b3de44c92f57cfb3dd9f5a25b7abad889be228f89dda838bc20fc9617c90655694184ed5
+DIST firefox-91.7.0esr-ach.xpi 453214 BLAKE2B 
8c25467fec589b7f4a51bbbac582a3a522145b639e9b6660fd36b76855062a8c41733efefbb4f22eb055ce5b476e2f3a67a2ace0b62af18d929a22e229a79239
 SHA512 
b306ab4462da37e348eb6f2ff116da344e30f7cd59bce6e70fd69e539a451b9e2cc55e6fa6e3b8d1e223c1a21cab9a406bc96a16810e217160a33d4b5156f3f5
+DIST firefox-91.7.0esr-af.xpi 426915 BLAKE2B 
fc2d1e56af0bb2889f689d35d888b366f137f4756a2972a3ff0bc9b6cc1269753d497d69dbd64ef0fa7730097729d4acc3ccddaee6fb868d9dea0f29e9c66669
 SHA512 
110f3d593db204aff1b93904452d9d166948eeabbd7e6476297a462053b8096236181ea5d15c4734002cbd3ca8f5881be6574806349444b586829cf629e98774
+DIST firefox-91.7.0esr-an.xpi 499891 BLAKE2B 
890d7bce3e82300b12f87e30ffdb89dcfc861cad49a42824ed7862603c2a40a212cd56366b9ed440869ef03ce8958d76f8e7a969da1ac624c853e4282ba5880c
 SHA512 
569970d7aa033ce2cb8bae7184ae2bb70a0ba8d0c6ee899e695fb0d3aa6ddf129314adb78b847ecec4e0d2b8afc2ce7045368f1933ee6d285814cea962a0ce4d
+DIST firefox-91.7.0esr-ar.xpi 559674 BLAKE2B 
fbaa7cd7c3a5694e7124be26496295f3d317520afaa5f394ecf5bcb346e0e4a99bfe2c9f7c99be8db37382d9126ef77cbcfa659600606df196e7397372859786
 SHA512 
0264ebaa5feb343610ae4f8cbe6e8a1fa6627ace74807176b33daf5e97fafc1852b4431a1960025e7e797fc1b43c9bbf48e12c6bd88e8ba9c398d06db39f00e1
+DIST firefox-91.7.0esr-ast.xpi 498579 BLAKE2B 
abba4aa5288534264609f5da57a8542d50d249a405f184620492343379479f51f13d0f14aacd1d99cc6c925b3ccad3fd3fa64e69b1fa1029b334ac3b192f0291
 SHA512 
eeb8cdb65bf6b165faf3b84fa7fbd84e18e6360cf507c3a7b50e632094332683c4a9a8fa29b4ac36018a53fdb91246c2c13a30eaef28320e80d31d331d97647e
+DIST firefox-91.7.0esr-az.xpi 489435 BLAKE2B 
783fe990f5bf2bb7398756bfc6330096df8fd97bf9cfd8f934c407a5045241e05c68d6c4954c938d82d2af0a5ee5f108d80fe1099bda5760f09b6e7e655f0ebd
 SHA512 
d20a75ffbc16ed6db6e8240e1bb093ebfd33f49240e86bf2feb7ad4aaec0c3a7cff82eca97c31c39f80289065ba5cf593a8fc3b48f35569f9b5089af04ad6499
+DIST firefox-91.7.0esr-be.xpi 622609 BLAKE2B 
deb09addf833e2286e933ce01d337a07a1ca4c8f2f247f38b905c64af1da1b9d3144dc6bce4ac1e80a52a644f1f307de5b7dcb5115df508f28d0de0e1f4a5430
 SHA512 
928eab1a9097ea37c2b37a7f126d422c3e99c39e5089cb93acf615ae36d5a590a810eb5b489923c122bed654d9781d68139fae6012ee177e4f74bfda0f16ffee
+DIST firefox-91.7.0esr-bg.xpi 567638 BLAKE2B 
d8f8fb2a891539ac769f58a60762a89264f09e49eb975b563351296f7c5f1b3907aac1a1d76d0271bca089a82f53788aca54f6b14d9dca27d571cc00dec8dce7
 SHA512 
dc9b3d2e77da127bfa8226c7953016a19ac918b715e62195e9ba689722ebf018ffab899e6d8bacd48b2c294ad55f7e67e9be6be2e983296d33295417c8f0985e
+DIST firefox-91.7.0esr-bn.xpi 556819 BLAKE2B 
f82e26ea715c66484bd5919277a7e0798dbcf99a922d0c59ed20b922f44179ebb924af26bb3ba2990d223dbc54f1323c812f1743d381b10c21adaec4dc35e473
 SHA512 
cd12939477e0fbf139d0c7cf341c30f5e069dd0640e3ad632f40c877de8bd7905b9d082ae60a40b378cf34ee78b2347ec2bb913185c52f18a439ce80e26b39f7
+DIST firefox-91.7.0esr-br.xpi 526265 BLAKE2B 
76e88ba5cbf8ae6bcacc8a2367d5517f1df83af7e9f3fdf2b03a017ea13bf41e1043a22a6cdf6a6d275d9f22adf0f01a529fa80723ae74d7e24aff1e202912b1
 SHA512 
fa66b787704ab31be8f3916c96b3838c8dc9a471840cb5d0481726c5e481c3731b919922838ac0031dfeb557c0f214145e4f0cc3a7904900935ec8f518e861c8
+DIST firefox-91.7.0esr-bs.xpi 463557 BLAKE2B 
15ad82cdd25aab32c2aec00822354ffc936911184e1dbaf55a6ea0f25ab23ec546efae4e341e348fe372d479a4b2cc8ae9e5373ddca80fd643cab10fa43684c5
 SHA512 
8e62d0682ca09394ea5279ba9ea8456fac6273a2c55fc18ced8a96e91c40ce807ae20a6d7f71916f1f86c58d6774746f84edec351115c2c527e70fb716724ca2
+DIST firefox-91.7.0esr-ca-valencia.xpi 529390 BLAKE2B 
b5acda8b1aa5f93d4ac703c05591d806264931c7b7bdc248514299c883d9be59a83a5b7abbd322e516b88a12054852a1481b453dfe5c01504d8228c3a67dfe71
 SHA512 
95ae48232bb883f1cb946a917944768146576e1c12d58ee503d74d527895e1f49da3be5400a2cbab87344f640781c98d34b737b090e2c5846d6a8bb7178b0025
+DIST firefox-91.7.0esr-ca.xpi 532477 BLAKE2B 
7788034bccc797792171e354b0e63f70df48ce78e4665ab7ab2789350f9b7f6a07fb4a58235e8568ec1be45b4fd878e09c73a3a24851d1bbd6988d6fc21d142d
 SHA512 
16c2fcd378e3cb3c63f1a5f44332e40e36a5e179e7359831b99eb6128c127efcc43b4e2c5ffcfd8a641008a97d7093d909ee30ea9b49e617b1062476a2bedfa1
+DIST firefox-91.7.0esr-cak.xpi 552607 BLAKE2B 
a29851d04d5be164b6461d9715375493d62cff6d5eec89dcd071a977b041d4688458cf62fed08b51e5dbec38b72bf02069892637c69a72c7118e06d651553f85
 SHA512 
4f0b225d81461132be3ee8c4376283ba2d7382d131e760ecafadeb3ffaeae53a91ad08bac48e01ba25daeeea8a82b362bf8424fa8ded4edd3715db80384db17c
+DIST firefox-91.7.0esr-cs.xpi 563181 BLAKE2B 
8c601f18f69493cad242615f29dd1f2b9b26219a831069fbd2eb8cbda4af754e3ae46db6a4510468e6435cf9d6c3f64804d07f7bbe48a516b0bedabd24ab55cd
 SHA512 
6149c11ff18d0b4855d36b7f55c97477aa8d5c2f5be337900a36245f7e34a3e213699257c2b9b985681ec0c201c97c9c5802e01b953c79c4150332ebc3a96fa0
+DIST firefox-91.7.0esr-cy.xpi 542213 BLAKE2B 
65ecde5fff596a858685add7a6af104c010f245a9b2c5a6d1fe89c34d15f594380442cede215a24f5779a2c8ca43e884bae79d4d9b00dc3c15edc8b0ffb184af
 SHA512 
f364d240c9c72120ba7659adba2ae41f89fdb94b7c307423c9ffdf285bb7be49ffaa918d5d2b588097d1b2c63d302952f02002e331a72fceb9bf689c8f6901df
+DIST firefox-91.7.0esr-da.xpi 534146 BLAKE2B 
e6bca5e9f28ade3122d88a7bb1bd3c97dd9c252bcd3a7772a495cd74db25b527a2f9f9a341ca6e5c4e6c207e1085930633b3ad3348b886561cde8c7902dbf611
 SHA512 
c75df5a10e65205724fd32f12c863ab0140581b32a3c8d34410c2d20ecbe06da47d09317cc74766acd359d1f7fd18ab82f95a619b4da62a6d1c04d5c3491f86b
+DIST firefox-91.7.0esr-de.xpi 553591 BLAKE2B 
65471c43a9c2897022a449bb3fbc2cc196e24b46970c23f34b071656d9bd7c5836ba8c34c0fbaac138c8ad6010e2f348344c0cbaa7b68dfb69e53b5e089bde4e
 SHA512 
05f84b8e7e336af5c9e18df65a052b9de79156e48524d6be7933c21be11f5cd73a9f07bacb96f8fcdfd4260f0ab39cb6a952ca76d1ef56256b08f6eb758837da
+DIST firefox-91.7.0esr-dsb.xpi 566485 BLAKE2B 
dcbd86cf161f852a33dd35dc734b2fd09955b7a6a42b4ef65ff87901bb9ed6a8b09f3848d0d9e829660ac1adff88e252beea29fd2c1001d86da66a73d1c44cc3
 SHA512 
708cc003d9c6f0d78e5f91f2d4105ebc3114d83c6bd5e482ab6f4f46878e894097866ef403354cb02920539100445f1a9019890101d2e448a3151fa4221a083f
+DIST firefox-91.7.0esr-el.xpi 639156 BLAKE2B 
efeeb71293cf39742e286cc883570f915c277fea51eda77db419fd0694b1adce3b67fe97841be7f973f88f4dfce490b382d7e37c0b095dc3b81fae795fcec6a8
 SHA512 
624587d7a451057d1935d3a71f03cff17a8d0c1328ea6717b8ac182a4b16c32d062cab675d80aa5ecea211e19e84f38cccf496d12f9d3adbecd3c986a9975d19
+DIST firefox-91.7.0esr-en-CA.xpi 509572 BLAKE2B 
6d3e0f4403a59cb4803f0a4eea428a7ff294f1549e1ed52f5d7df658b1918b7bdca0952e939c6332250e2972002078e85ac766e00dde8357f93bb057256e38d2
 SHA512 
220753e4b372107f94ad2e0731eab68777e69aebf7756f691e87b1ccacc6292e77a0de13c6d127325f0e76dbef1641cc024a0f62c8b763ce76803ca84c77a982
+DIST firefox-91.7.0esr-en-GB.xpi 510588 BLAKE2B 
860208880f1704d5ceb6fe76f198ab280d5777c28cb16c3ecf42645ccf86896370e31070092bb5b922992e06006b78c3e4e7d94faf5ba1fc514ddf4197d153fc
 SHA512 
b89fbcbdb157eed266d8e82ce348c126294fd2ffd7cfa36eeae07cfae482784b67ef6768aae6024d9653dc1ac58047eb590e822ff170b4bd0d7912cd4bca3ea8
+DIST firefox-91.7.0esr-eo.xpi 534799 BLAKE2B 
13a36fa6301a6ff97979d8e5eb15d5400953e0b54c046b00968a4209cf339c27963c8cbc4578e7199de531cfe339a9b97b6efdc4c5277cb4d364f3ae0d9e6a10
 SHA512 
9cc726b0d621be9116d2065d25964e15dfd0c9169a89ad982973876c71cbe72ed98f9d55158e3be23ba15ea86d68bbd95033ee3aa2e57770eff919bcdef651ed
+DIST firefox-91.7.0esr-es-AR.xpi 546683 BLAKE2B 
b6e4c31f8594a8834dc79ebe6b82c3c12bf449d64a02248b46f576cce22a1c3265749f23dd378e2ab4141f1910aebe7916efde6a9eaa0abc16e971b17c5e93b5
 SHA512 
6ef0e19b01a6a6729fb9da1d7b108cb6250acdf0590b52360e92a9ac55887b24d998b98bd58f1336f0f6f50ca77659daf0ab1d4c957d27b8145000ea70ffdaa6
+DIST firefox-91.7.0esr-es-CL.xpi 546380 BLAKE2B 
89ac357e742d2f14cf978f657a392d6aa1388771f689d9bbb79bb2ab4aa15bce4576ac53c2932feceb6347e2378d99042e448a87e0c3681d814dcdc9f451bb9c
 SHA512 
0a349b18f74d1dc3f6b0c97269f07b895a2d6b83f6790a53e30d4007a3feb403790ac1bbce364f99ecdb700f9ba535bcecfe2f50590f609eb3e9ed5a63f98d94
+DIST firefox-91.7.0esr-es-ES.xpi 537061 BLAKE2B 
7daad97d7e50816732f7e7ea634adea322d27ee8c54c22a93ee197dca2f989fb5c67d803c3efe91bebcf148ede7e940d325a7b4156e1c4255168269048e67213
 SHA512 
dc95e3183a6e10523949376608a6615222e1f79a9e2d14135ba8374b4e9294a8bd445a164042befc9f13e4046fb3a8378195ba625e47ad2d4a6baa225ffb29a4
+DIST firefox-91.7.0esr-es-MX.xpi 549995 BLAKE2B 
8d53b0802a6353026afb02bff0768657c7d8df3d8bdffe3d857db9957b73da1762efb1ee99aac1200fafda266b743bb6cb109369f80cde9b87c4a4aba1b4e24a
 SHA512 
ea8c9eaa05759a9622a2e0b7ebdb60791fcb2baee84136f1689071e52d941de02adc91356cb973dc7bd558d2a45a7a0c75f85becf859fa6f8f69a07e7d910958
+DIST firefox-91.7.0esr-et.xpi 506671 BLAKE2B 
a52cec5346d72efa811534b2ce5bc56a0954a091597f0418f2037282baaea67a327028b625381b8017c32b04c687087bca1915113570742da280c4e4ffcd13ad
 SHA512 
75843bc1655254e821d9add5ff1bee9eb067766106a7f6bf6b65275123072605da0bebbc0b7db244711f45ac243b9f134faebfa380b2329fcb411dfc1a19dd45
+DIST firefox-91.7.0esr-eu.xpi 536331 BLAKE2B 
3222c72e099276fcb501646a44f6e644dd1815bb30b053ebec6f03e65cdcb7aec4cf00f656886606081967d29967a8ce984b3104015c033569beafe4304cb1e3
 SHA512 
2de343414bcc0fadb37ca3a0ac4158edcee215ecfc1c232cd84ac6961dceceda0947d809c7437bc9546312b08bfdb644540b39ab45c5dc3c58369900eb26e642
+DIST firefox-91.7.0esr-fa.xpi 559377 BLAKE2B 
2fd11177e33944f22df6d708e16b93dc31a367ed5c74aa7cbb1791c374c7fd81a938965ea9c110c33005fbf7b2ba57b76425abe93aa6c1ffbd9badc93ecfbe69
 SHA512 
24c08553d6328d257e41079950f1db3e6605ad35777b4585b26e6b02f51479332260812d84d0997ab59908705c3490feeda063ba8c82b7514c3b112c612f189e
+DIST firefox-91.7.0esr-ff.xpi 471867 BLAKE2B 
ba9f51d082e7d7ba566bfd4d56e1d3205b83750555ec77bf68e706f50ca7ec3e71b5b74c14f975fb5b0c19ed0c8416417381b1e14deda0b51ef0fa6601d15cf0
 SHA512 
adeb46385b186649ba7c329d2881d81bb73211e2fefe83a41971a1dacc2ea08d84d108c5270236803b8d82518299084f8ffca8541e64a2da7c7bcf3fc7e0706a
+DIST firefox-91.7.0esr-fi.xpi 531483 BLAKE2B 
2aa9dca7c428d3fd2a18c0c2e02504769e5154ae4cb9334efe0aa6e5092161f686b23a69b7480ba04930807cf48d0f59c03b5c22dcdc2c1718aa7e75e5bf4b33
 SHA512 
2733805aaaa6d7e6b3417e7e1b2c32dde0eb8bc79a76cfc0668aad76c5e9493fbf1cd2f64b5280451b2efe89c16d3db8c937cf6e2592b63ef48bdac572b6e9e0
+DIST firefox-91.7.0esr-fr.xpi 557616 BLAKE2B 
78d2cb1308b843da5f48cbf8b5bb94e832c2b4ac4cc8db1d486d8a2a02a935d04063027717f1386050acc1c4fcd8e738f67854e58ce89c07b00a8c7aea53ce92
 SHA512 
229c0bcb841b43f0d27018accd3eeb03d4838078102435407bdd43d4f66eb6175ef0d294004ecd448980e80e3706ac9532833f81cf5d1bb856915bb5fb368a42
+DIST firefox-91.7.0esr-fy-NL.xpi 543299 BLAKE2B 
b52724e7ee6ba10c0ee43a8107c79e7c7fa82ba503f6c6409c77c66c21d467f4384992cbedf836d464eb531769519f8cfb32641d8406b95f098d45360e55e1b0
 SHA512 
6589925046dd4cf8df0a221554d5897d773f349e1ed14635444dfed635572bd3badd5fad80737dd7bbf0fd0a4249042a4ba4869cf9540c9e7d0f413311651e81
+DIST firefox-91.7.0esr-ga-IE.xpi 459835 BLAKE2B 
9738482ed116157c352d89d31aef4ddd36faf39a6c127b2dfa68725194c616003a987f627d890fe5dc924168bf2ea0006ad4cb7ff907c8eda0a89e3f1d01ce2a
 SHA512 
1604a44d861c56d5379a20696f6f4d97c348df8e4939a584ad7c7f5fb72c6fd46dc825ae367430f44c92b7aadf84e92340bb8e4d8ad521982fe2e7006806db48
+DIST firefox-91.7.0esr-gd.xpi 530853 BLAKE2B 
fab38d06e4a11569b5ff1637ac256b8deff68f88eb658c1566f22adbeec092f17f7e865211bfe719f85853d451d2f4aceaa2db7ef26225660be81a9b762da4c9
 SHA512 
0cdf8d262a8e7c94dd129733938936648f67746217cbce85e7746efbd97985e4931a4109c09ac78d1ee596b619d86dd4e06b8c7500726de9001e79a9ccd39d19
+DIST firefox-91.7.0esr-gl.xpi 541298 BLAKE2B 
4a09bbfb9e99d5e4ab6604cf94eff6d569c6337f2a7357dd1096420d8b561fc9f69506a618617ab5b048cc2f7564d8f891bc2fa7c07fc06297feb49e9416a512
 SHA512 
733a00e62c68b942f76d95505611bc04e9fb52e0d8ef9b687abddede34a5762d6b2e861f7e0589308963385d5d4db9cb7e0c5fe12a0dcb6086bade7c67fe1e3c
+DIST firefox-91.7.0esr-gn.xpi 557600 BLAKE2B 
acb2895c4364e34cfff4db972c1f039512fe5f8bdc57f23a308076b2e56a6f24bb77f6dfeb41819cb9472a6dbd1b880fc8b0a7104f9c42e7a3a5366100f0b840
 SHA512 
25e9bd997cc2bc53f01d9e7491627320eca091427932a679f73404d743f373e338f643bdd14211d39d16f8b5048401926218977e37acbe3c2a6b52d4ef18c636
+DIST firefox-91.7.0esr-gu-IN.xpi 529555 BLAKE2B 
64f135a86022e26e789785888f2b25cf51045a83e5c39a3ddf7b7e33095b83327463afc79afecfacb29d5863c356e8fa25491bf382d70534d34c498768203df0
 SHA512 
09a3328756e1449e9cdf366936681497c08948028fb811835a95476e50213dd3cd7756e29114d655a79faf5b5ea8bd28952a8ea3f1cb0b76fb9f5f3e845c70b0
+DIST firefox-91.7.0esr-he.xpi 557193 BLAKE2B 
ba4c56b4b3329c568fb9dc3f599db77b936b53036d705bb450905efc5a8aef65843ae4bae3c4eccec08a22d58b605e0c6e5ef0feffed6926eef061fc3ae7cc79
 SHA512 
8a1744b4cccffb1966ddbbce06ef5138fa219555a41862f9073d1396a855a1f18a3cd866a40202b3cd607c9c8d95a086e831c173df6d94a27b5b1213f9385e0a
+DIST firefox-91.7.0esr-hi-IN.xpi 560650 BLAKE2B 
2d9bc96156698726db2c7557896acad524c673eb2f7a3d0d8c01b1c0044df673be95e21fadd4a4f05e01398e1f6a5b51a15af5232079d335524bcfdaba4ca84a
 SHA512 
5bf55ab40a1b20385032cd243c9155b3d490bb484c60f2fca0645632386ae6a48a36635d75b82d480039a28ea69b28bd14c9231e358a62f4c4b383db0779a35f
+DIST firefox-91.7.0esr-hr.xpi 530058 BLAKE2B 
613a5745ac290418f687859561e83e0aab58f2c822bf75c7a5473c2fa93f86335a409efedb99542bc2e2630301325e94a9f60cf33f64ee5937da0e8e730b5b14
 SHA512 
d07e588d594510a3084ae5951211769f2842677137482702bd1febd15a86e2ac794af480ffd9f1e0bc0cff3d453b8768989ad2f05aff4f9731e2fca499bff876
+DIST firefox-91.7.0esr-hsb.xpi 562634 BLAKE2B 
2166e1b7ccea3ddff08be6489945951b4a43501fd62cc21bd28b74d874d1bee61900c594e2bd18f9349584dd3b2dc85ca60cf81557ee14e4cd69ee364753c2fa
 SHA512 
884362e55f3442d3a4a47884d88125197ab43bc262d431c254c9d29619f6d77cf4b8870e9ba21a6c784dcfe45eb1ca2fc889565d9c83b58af1654c5770f716a4
+DIST firefox-91.7.0esr-hu.xpi 566072 BLAKE2B 
84f7b22cbc44a58dba13dbb369c9c6ac3bb6218c092d5c97be2dd45a0c7df2e5771200dd63ccf8399f9115ada51ee7d4e2c8f7ebaf13849a84a92c961d7a23b7
 SHA512 
9fe49d6092fe15697398e8ddb81fcecd5334eaf702f56464372a502f9a6b5ae4b609daac46935ba76962767c70afead45eb6b20aa77918800e57ca4be0592c90
+DIST firefox-91.7.0esr-hy-AM.xpi 579766 BLAKE2B 
1a17af12a232cb9325e02facb3a6bce953c9f59a0d42e3311848030be343d9759d2f5ab6a08ea4a98237f2c09efb1efb0681e772883219f4b2668fc49a2a2864
 SHA512 
c9d7114487a6f8e34676a480221ff5bab55abfaf86f9f72e14670ca971758e05a3731c603eb895ea55e830ed4be4ef6f4d9bf0e826f38cdbd551c6c14f6897cd
+DIST firefox-91.7.0esr-ia.xpi 532146 BLAKE2B 
00eee9c824fe15b3983f4b8581139df2927848c4685bb1b87b9bc15eb50a0a8dfdc412169fa09b91d4ccf6438181c3788371b2b777df19efb28b736d59c77cd6
 SHA512 
c6965e4f59f4ecbb29ca0daf1a6af3473cfe04a0ca2d6e478e5920382e78160ddf264bb6ca7ea0bba960d6c8ba9080a034c1e94c048d2034aa204cef45395f1e
+DIST firefox-91.7.0esr-id.xpi 519834 BLAKE2B 
c1b5b2d4a742967f18f765b29d4fc1470e6f02d79a406340f732a2a4cc58cf4c6136095949a47cf34599f434b7afb29c5cd3905129b1b70f2e2e250a930ed8b4
 SHA512 
e38e8ea4a4f0aad0bf38e0114fbc6081ca122b05b67e13ad192fa1ced554f8c25818998d92eac54f12b3e97b422ec975dca56613bc79da16cf1875e82544ee23
+DIST firefox-91.7.0esr-is.xpi 470223 BLAKE2B 
a2f81908602ff4f311e805adc0834e367ffae4462346b5ee3108dcb58f31d5674b946de01984bfb10a19cda249171eb5167484406a1984fbc92633761448fd92
 SHA512 
04bc2f7c8fe4e12354120d8f981c6550986a4821850be2a761f00fd3f5bf02a6db17bc48b203eefd49bb69257b6a8be52ec5ee70baee6e5fd66d8614f258c61c
+DIST firefox-91.7.0esr-it.xpi 459087 BLAKE2B 
62d905aea1ded35e9115602e8803aa90f9e99789521d0448701d5d3588ceb96f3659ad3b84181db9174425ce8ceefaa5416db0ff4045eba19f47b945bd48f7a3
 SHA512 
04109783d45a5b2bc5ccfb5abfb17158931e87ec25eb233ab01bbdf22f46de8e361846d11030c5c29b1438a18c70a6ee789f91a576ca5e0b90768412441357f2
+DIST firefox-91.7.0esr-ja.xpi 588070 BLAKE2B 
3ea567921603bde264dc36d1683ac46c82087e6a9d3eed62f4ddc7dcd183b6bcef5e150e63940f23dce9fae8bd0d4775c2f1ab111ed95016decde8eeac8a052c
 SHA512 
b03aa58dd3acb79f025b455469df0540955c92331bb7e7802600857862f3151c0dccaaecb3c2b694d95416010004351ee9eaed72dab3a7c17145fafda82475f4
+DIST firefox-91.7.0esr-ka.xpi 592256 BLAKE2B 
23f2f9c35627dd60b76c84f6ef3973141b31762432e4092e51ea97e16a848b030ec1c16fbc9e4610ddc7e5e320e179bff7bafab44578f287fafd5c557acf9c8e
 SHA512 
5e41f2af4e17f26ab574befef3d1cea10b2dc486ccd314bc9745b5d4b777aead033b786a85f4978e7f5dc125b49fd98f135bdf55b08261d7166c127be22d21d2
+DIST firefox-91.7.0esr-kab.xpi 545013 BLAKE2B 
0aaf5ed426866aceba5ef870d81a4da97d5b636d8042862f104a4bd3b38da0b08973b4ba493c47ccff3669bc2dd483cf4266c6ea31e5a8f3a18db674e7aa6504
 SHA512 
9631d80ebf16b97b2a40ee2adf9d3a55efe96924fa89e36cfd43baa69da39960a84981d163b69d3320603a4473d02fc5dbc792cb5ab505a1e16028a6eac501fc
+DIST firefox-91.7.0esr-kk.xpi 605549 BLAKE2B 
0b74a881e0bf7cf4835bb012d5b4f9a9f14570b632d211feeeeddca4e0de70db98a16e92ef815594495e7ee2d362b1d0812ab5bbd1fd1985ed216701ec519818
 SHA512 
4ba83b80a3e420ffa4ec0d0ee1f03bbddd594055e7adb3a505a0806f5b16032d7a5f84f513c7cc437a97571044fdc2dec36364cdd75eeb91b7bb15e6a71065ba
+DIST firefox-91.7.0esr-km.xpi 533107 BLAKE2B 
aad6b2edaabf69fabb7588227b3a7e058b0fc195013284ce77193109db4095840baf151da29c322d23ea34240ac02241b7b576a17769d407a936889a7892ec39
 SHA512 
f6a4e954c5731def554897a790ae6cdc0373b71b22a461070e63892210c2e637499976d80d9f7ad70af394a4b7d1ea888a69b0b0a99a42eede97d03fb24dfba0
+DIST firefox-91.7.0esr-kn.xpi 498964 BLAKE2B 
831bb6bca1e785c8ae1d8beddf101f4eed50d6d20e340c5fcf49c4431838eaf428497cf41e754772a8d569804a3215024d615e29eb15462fcc75a6b1dad6728c
 SHA512 
838ba522a2a54ccac40d8091aad3e1201adec29ee1b4134d0231f7adcce922a026ce4f5cd0ebeb937dc99113fcbbddec46714b8e95dcfca1724d12d0f1733264
+DIST firefox-91.7.0esr-ko.xpi 579054 BLAKE2B 
3dfc299e01963e5524d7a06e7ed5f2b1bd1339712dfdba0fec8f33684a24b11b5cdcdc22208148943ebb3b060efc4b54ea8f3c943cf779569f16db25eebb5198
 SHA512 
b212992ad82a302763880dfab1e4739686879154f9380d07b554bc46850684ee36b3048dbb869a831b4184c063a5cc257e54acb33d2ac4a78a8af8ad7f14d428
+DIST firefox-91.7.0esr-lij.xpi 470173 BLAKE2B 
2d4ce2b94a498000228a162871b04bbf41a258b0b8e4e298a1498a32120e8fd9f6c729faf7c42566cdc2680b3a14ecaa4715680e5863647d2b60f23a9c531228
 SHA512 
6e0e221be7f1e7de0f2e7dc69c13d2e4a535bdea407e85e3a16ab353918765a66926149554d626c2861fea95512caf8094afb6a6d8547f434eee15ffb97afe27
+DIST firefox-91.7.0esr-lt.xpi 560107 BLAKE2B 
fce2af2097fb704283a6a835653f81a25764d4937c42eb5d7c9f709c46ab863025d11c173e71033117891d9ee57c2cd946317c63974bc3c1561c08ec1a1e3fef
 SHA512 
afe867e225f2fb83dc323e2d24bec513c3b57c6722084fe37997984672ed3ce83aeea791c7b4d40d1c6aa89b27ed34858fdf7b5fb94b67b94acc3ff18aeb1ae4
+DIST firefox-91.7.0esr-lv.xpi 462458 BLAKE2B 
02c10dbc71c1ac24255728b95445f35a17c28527f7f6b8a5fd816ac5d70a0a34607bbe245a4eba77fc7eac64584aba9b6d26d13a71ee8d041988431c7ffc635f
 SHA512 
ea220da1b812c1b99e2f147aac9f330d67b857061fd8b272b49b0f4d60ac7bf69597828628b8ae31ac0434ded39d4dde5a6d1a2f6ba737fe0a995e93e671277e
+DIST firefox-91.7.0esr-mk.xpi 465349 BLAKE2B 
283d5c3005e53630d9857f22d5c58884be3b5f45e7c26cf5abbdb19c245a1f9f92b07316de077278afd287294efbc5ce4ebf0999ba716d762a34a622455cbc3e
 SHA512 
e197f03cdd71a9ad5fdf41bd6ac3aad8343269899bd5fa17847c4224704ac90e35afa7d64986a89e194ae45226e0bfa70328c0b502e3d298955eba82a97b784e
+DIST firefox-91.7.0esr-mr.xpi 532124 BLAKE2B 
ae34c8939bde666fcc1ff9019379bb69974eff9d60a6aa8dd74d5edb7168f592bb45d11a8c3fbb0ed227378add456fd0774000698862ad36cb7d85db3933e971
 SHA512 
a88b39f8a2b353509ee869777742469d5addc1c642855a1e6232411bb92a21d37d152bb659438c491b1ef42d411b2fb42b65a790aa8ebaa7b25b941b1a51066d
+DIST firefox-91.7.0esr-ms.xpi 447338 BLAKE2B 
7f3990f892d8622f3cff197cf6b7571b8620d000805d97c18ed67602c4bd8dac71eb2dd2d097866518b2622e3201abd50f16acda9f33d9de9b65aec017238766
 SHA512 
80fbaf0d4424ad62c7858d2d58bedca7e3478f8f93577bcea1128fd9e56f2f6a0e6ad8c1db78cdf13634affa6bb9aeac21506a1f0048ba808f4570da0ba96831
+DIST firefox-91.7.0esr-my.xpi 516302 BLAKE2B 
fe8520ba6cbdbd2385a1e779cd2abb944226b1349b6a7b0bd6c263027e2dbe0b3c5ace7fadb04875e82369fb2c10dfd5c6d368bee3acf8cfa983a06884f32e1f
 SHA512 
ef58275eb4edacb9091d442cd186c6498cb19ba897d1f68156b2bfd79e0517c595ef1935f387687086d8b026339a2753be3456c873c89f204e8ec8cbbeaece23
+DIST firefox-91.7.0esr-nb-NO.xpi 529422 BLAKE2B 
0f145ea167ff8c25dffd1a7b5c6bbbf108f5eec3cbf7175a240a735461f58681a857c11557b61b35450a7cb160f165fc925f5013bef3241df63bde5b5f52c333
 SHA512 
b467b53af2d3a43b8e36bc5b5efd561f73cfb9af4b73e095475e238e50e54cc409500fd16f67070c46acb0daeff2217743a18bce9efe1762069709f3d97fc162
+DIST firefox-91.7.0esr-ne-NP.xpi 485209 BLAKE2B 
b083379db44fd312778fef03e64323053597198221e2713fd90e4ffc274f811cc36b2d464b9ae04a6d4291e3cd364f64af16286807402d1732df730140377cb0
 SHA512 
f6f6b506268df80974326a7ed053524f6e329dc6a2068e30ce79b5c10301f18477a2798223ba66b976f33440de22e43128840d1eae0f35c34306199e442b38b5
+DIST firefox-91.7.0esr-nl.xpi 537385 BLAKE2B 
415a3e2fb73be9f41a212bda2deaa838a11f34d85d0e071db0366e0a58ff8145b3902fae16c159feb4066de4284bc2d3491ed6a009c73800c2ddcc9f3e2b6a28
 SHA512 
4a970842fb415639b4f81b24a2b293e918aa83d754354c2fb9c488600f2a150c89f068d1556f283a4158e5d8a27f5f9dd9cdfbd06b8fa0fff65f666dfae07ca8
+DIST firefox-91.7.0esr-nn-NO.xpi 531678 BLAKE2B 
fc868fe799ce516dcb484c706efeac4f7a5216037c93b4e9d936f72fded9746d604186d24d046b310bfbeebfd5c36ee9b71bf61ecbe412867539a18ec7770bf9
 SHA512 
c7f6eeb98e82c297b5f31d92e80f0c144f25bf5fbf8b84f41c35d448be87cee807730f535ec5e8f271011c8c0a88e6439c105073706ae3b9590ddee0085f00c2
+DIST firefox-91.7.0esr-oc.xpi 552953 BLAKE2B 
c3e1a52b06890fd681f71d146924685b263ee76f69c67c6a3ee556cba74c8d3b9551cf73d63e2f8f16c01aa94fd8f59dfcf32d0ac54c94719e9ae18d7f68c83c
 SHA512 
3189f5cd8611cb17df4c9547216ac6fddd8fd8b00f2de742dc3ba3506fd9220fe56969c9dc34d666b80195b1ce86eb303058ef8e98a08cefd0666b75309b3be8
+DIST firefox-91.7.0esr-pa-IN.xpi 595971 BLAKE2B 
9285d137b45e33e5c1b8f17948dffb0c9a4f9e727bd56e738316917e08c037176f818fd23029e00861cf7a4ba47a8563bf9ba89f05466a31276cd3b1d57f2f22
 SHA512 
7827eb66c389352b2a86a79c0d1fb7f789955407b242fc78387593fa94abac3c63fb568fcc9133e0a398dfb806bfcdaa8397d6fb45e9f2395ee64262641b3b2d
+DIST firefox-91.7.0esr-pl.xpi 555617 BLAKE2B 
2b7f64ea259e7a33951101135d9d7e4cbb47f354ef7cf855bde582d848ec1febdfd334af33a0fd7e968a7a8d6a1c8e5caf0dbdba40a48686f196079586bebb88
 SHA512 
3ba3abf8856664465c0614b327e0843e014c82ed17411dfca2dbce3a1083398f649ce74288fa49672ab9bc5b66255da89d47b2bc26d67344b207daba6e2b10c7
+DIST firefox-91.7.0esr-pt-BR.xpi 542611 BLAKE2B 
d10d6e7bc56d41fff82e779334368462364d878034afd1379745c0e551befe5473e291685301761406e008d4957f089608d9bbc5a91a6ac2560071deff61a654
 SHA512 
be091ae491bf8d6e34a8a378239da56e8a3d570fc392385a8cd893ab643e2221a79e14e7a71e09cdf5622f252ba679b23699557c1352e4883e2bf34e61a54458
+DIST firefox-91.7.0esr-pt-PT.xpi 546345 BLAKE2B 
63c3861e242060b6480b3b14e91882efeb2c9bd58cdcf8692f234c215196f8d0fbc651558f6821f01892a115bb205fb1e24279989f8d0fedf28afbffb605dcce
 SHA512 
97529b5dbd321a9ab7136fd13ccf0e7aed8650caf5659c7e26410180ebb7332244b67c0e3793630378a5ce5b103db956f02bc9cbbedb465cb6a26f6b20e119ee
+DIST firefox-91.7.0esr-rm.xpi 537358 BLAKE2B 
8394ea9914a01cc9eb1a6b52d42d6f3ad9859d9723f5f1d0372e0833d941189d94cd6fecb276d01a52e16136854d06661295f34fcc234227d92afc9b7f4e4ab1
 SHA512 
c74c9217bd7a87b8ebd5aaffa538fb76c37f4ef23945a57f2bba990dae95613f74a0c27642c5e0738a948e19cb30f2019db25b64d106d8c5fd2d943792feef8a
+DIST firefox-91.7.0esr-ro.xpi 529329 BLAKE2B 
baea3443ba7a3e7f9ace8b13f12d3a8e8ee67f89edc28b7833ee1ece0151c25730a75e8dd93503f0f7a6c7628a1dbdb562fd35ac60f1ae6a83a4bb517bb50bf6
 SHA512 
17f3984ead3d1c8685db83af199064c6d1efac26c0a054077f00df0a78c9918a1ac9098cccec944a422dbdb164046ed4645efa66df937c86e82a4c2f49177b12
+DIST firefox-91.7.0esr-ru.xpi 627121 BLAKE2B 
48b560dd0aec44359087cc20b890c765212cf4d798e969d2f9966add04bc6bffeedb1a5f24150d3aa1505ac4289fcbee029891e7bdc6de685de29af95ab0ed98
 SHA512 
4b38273007ffe93f48e65056a4a34373c03639552db4c0a672af215cbcebcc1e50834900cb408224371cafbb246b11b8d56640fde3129b4eed3c245ff01715c7
+DIST firefox-91.7.0esr-sco.xpi 504854 BLAKE2B 
041ca420090aba284a7db106d72f298ba872a512d98f28a9e0677db1b3c215b7abfad8254942b3aa4132d266954a3f5349b99bbd2e55f6a2dc2225421e59cd45
 SHA512 
4bda510810ef588659cdb6b9935d9b8b0d0ed5c75bda029eb6e56ac1608c4fc3883537a9fba14e46fe400e9fd083dced06860b37d3d4e1f8a27c26cc22d51766
+DIST firefox-91.7.0esr-si.xpi 487948 BLAKE2B 
d7c8c36ca2ee50f6d3d521e5b17aa34035b4ec0bc440887026f06164065590880e4b2a03e67324b83cf94cc4bae09cfb90c30e22bc4e587ca62252762d6799db
 SHA512 
71e01a4beafd83fb5a42db74b64a26f5c21c97dda48dbb2d9c017bc748ecab6b286e99cfdb3944cbd0b1116d95a11b8254be9fb18729e4e8480be6e9cd3831c7
+DIST firefox-91.7.0esr-sk.xpi 566483 BLAKE2B 
9404977a198b695e604ca4c5b9f2520a131142a9ab7a78ec1de1b3e30a21ffe74ab7c084a34c309193c0f0d377177d16da98bf957af16c539a22fdd0173a85b6
 SHA512 
17bd048dea7a509711780170d880d473ca3914dadf85d42d1271bf6121cfae4eb53582376e50ba4552657235164d8d445065d95550e1ed5f01cee2cd8d41ed94
+DIST firefox-91.7.0esr-sl.xpi 538010 BLAKE2B 
c95093c3a2d88fc9571f341dfc448fd322d3b293775a2c4c17ead8d2f8f700ed460589485779533416c11f6bf2cf68639d0ec0b1f8958332a6aba1be789f0c5e
 SHA512 
a154e7468c9a4b87276f58a86c11c53eeead86315e1dd0aaeff1039c1f28989dfb232e23916a43b6bd8a2f435f6ba25a01d03c03ff6dfaaae25aa23c4850fb4d
+DIST firefox-91.7.0esr-son.xpi 425999 BLAKE2B 
9f7f2973951e68ed0c8d0990f08d2bc4bd95a6a2e112682b98e0ce4bbcc5912a9854f1ac6d437ed1d7e03b411a1b2e4a88490a54ca0e1509a10505da1041eff2
 SHA512 
aa3ad07223c9efbc5ac3ee983fb62c88a2e7c8bd5d8e47024d2ffcb4fa6c132a3117e938c4fe778fee84b1fb74b417538fdfc6d65b3172b6686e0d1bbc844a9b
+DIST firefox-91.7.0esr-sq.xpi 555991 BLAKE2B 
8c09de5bfad85b6e6fa394643a2a66d709c2b5e54785eefd961afe5c9e1183372e40b0e141532ec1ab5bef1c770744e9cabff553680673b6e6dd1c1ca083e20b
 SHA512 
74f1858cb37bbeda955d6a02c25696cac2eec05d98e83a08c4eef67755c4b987ec9ea5302d733418c265cf4638c0821ce400399739891595f834956af886c93a
+DIST firefox-91.7.0esr-sr.xpi 586075 BLAKE2B 
5c2f6b938f8e9417703102c75154a45c0763250cac6efbbb201fe4e2621418d9bf7927f387a2cebe70fc825fc88d75a56304367c13f2972b400edec489b89ce5
 SHA512 
a6f526013a2ee0d35db0f0ba9910721980d1c080cfa15dde3eb25cc53943ca4dd3dda27a75daf52289ddeaa6a552dd6ff4cdd3c1b05857e67b1e4d5edaf6be69
+DIST firefox-91.7.0esr-sv-SE.xpi 539967 BLAKE2B 
7d82a1b8fb0b52fc4fb7adc4e31d332c7dfba3a7b845969300082deb05947414381ad99d03f5ff74be9d4ff73c3deab3d5571d9c569ff64b1f982b7ffd83c761
 SHA512 
e03d3aa874e008b8e23ee266b142d144b06d5e1606f710e0b852971dfaf68356592469dd7b97e364374cd37ddd8cd7142ec5112c6fc48f86ebe470ad5a880ee5
+DIST firefox-91.7.0esr-szl.xpi 509813 BLAKE2B 
cbfee7f5b61e09ab86aac78b614f19b5aa9dde84013cd776dbcba60c23638946e6cb53485fc9dae525b3cf428d6c23b54c945a14cb7abf30fc95b2fc8f75c18a
 SHA512 
70d144397c52d4e2253ccdd9a60965e6fb03f28ef2485ecbe5421c79139df14b537eb779b972f71d5b50d7c44a42bab014fb6b8acb5ef082cbb7db3eee9a4257
+DIST firefox-91.7.0esr-ta.xpi 513813 BLAKE2B 
e9d6c69ac15f24075cf2e7cd9ccff8d7967e3468e05dd1e5bc2f2986f0d8cd089e6e78731d0fbbdd7bb0340778608be14ec60937bc7e30bf779239d9dda6643a
 SHA512 
77c09703824fffcaa55065608fde30a5f6a4c01f8b78e068f8751f92af0ba4e59df6ee3f8f7b22bbd07ea29f3762b47d093d62915bb868bd74e414026a4da58c
+DIST firefox-91.7.0esr-te.xpi 549958 BLAKE2B 
ec6111d492d67eeda71cd264a53e8a0c1e93596869e13f53585da743a121b499c7deb9dffac1b7d140a304df3b38f30618895754c3bc3d924ed512c190da8ab8
 SHA512 
dc3be2bfc2be7c6959834a71ea8176bd14ac3ea78d235e70bdf40896953e1fb3e026d72452d55f58d8f57b2913cefdee902d96fc35c54f8282ab999dc9a0b633
+DIST firefox-91.7.0esr-th.xpi 607070 BLAKE2B 
2da72b81380e133cd637f4ba0e5defee707eaacfe7c981c34fbddbdc93919fc06015fafdaa63620370e6af86c83d77308228e67c5254c12d5bb89ddf797ef51f
 SHA512 
40f3c16c73595cbf7efe2be28595975432b604d2fe00d3b10aac9ec45f73787f592c4213177695b27da289688bad535775ae42b17cb743dbe3117da71c93f4b1
+DIST firefox-91.7.0esr-tl.xpi 516114 BLAKE2B 
fb20f2de867ed7d5c41235c6634c3f5eeba5245462e64e8870fd06a447ee9fa6fd121523a60d778e594a84132ef1e94265d0c96757a1c261d1b64005779dc9bc
 SHA512 
02f5e23bbcb1583c0ffb101bfc774cfa74287f4ade1db93f1fbc0ef8339967ed4d388b7d1e4723c6f6b59b754ef10114047278724f9b68df3c5e4c91420d5058
+DIST firefox-91.7.0esr-tr.xpi 553686 BLAKE2B 
b52569cae207020aea592d2e119413126344a3b30019affc4fe4b426e7472a579ccf3458990ecf878c4fb09e786c1011ab69e779da6e1b822f9d4186ce68e495
 SHA512 
4779b0bc77672aa5193a9584e4fee1a84d28f534c6222edeb87a5a44876dd2d2606b7aab674954adf94da21b41108f7f79174fa5a174df721a2e7fcfd56e1813
+DIST firefox-91.7.0esr-trs.xpi 491083 BLAKE2B 
61744e75694668b2b1c8ced0b181f2b65223735f7ec320afb648f3397df3e86a8458b207cc28e829b7cb2e0a2463db303aa7bcc5ea2b97289bac5976599575af
 SHA512 
340917b70a0f9d2e9853ba5e98866e234a0ee8f3b42e8c447459893733312f1593de59c690163ace7eea43c499726e40245e3bfd8a09289daf8b7dd533254550
+DIST firefox-91.7.0esr-uk.xpi 620502 BLAKE2B 
691a0572d93c9e2aeb9919c254b1af3e18ba63f921121531264b6abd3bdc3869a9f0cd0d0fbb15ae6d6d1da8485ca4549b2b5f3ea43cd2bef97e8bceb5dc1513
 SHA512 
ae9203639f3b9ffff9ed386456af9db10fec76bdf17ed8f460c3dc70cb4eeb1991b7530c8d4622f30582a81bd409469a616f32c5b3f5231abe608b0e4d9022e2
+DIST firefox-91.7.0esr-ur.xpi 557322 BLAKE2B 
64a02aef49158ebcddcc5927c4e522472316aa1808527532a95121fa4bbf1f92ad566c2491ec80c7138f9ab666e478f8578dc308fb497540403a5b5c27d6822d
 SHA512 
8b3913cab9ef3991495769c380b57d9a1f36de95ef6c48e4f5ac11b913e9da6c624e9336b777a287af3aabff2eab8533419a111c5bdfc1f5b403c7dda3105e24
+DIST firefox-91.7.0esr-uz.xpi 466866 BLAKE2B 
0ce38ee3ecc2e9cadcdf3a9322011c80491eb5da7cc82e198032b9cdb03ef367f8cafc1a325d6cc34d7952b474d3f35d02e2297409638c065f382d4d44431568
 SHA512 
3534b6a768f7bcec63e159bc50c66be2a81913f2ac3f1c0e59c00a97c0501cb026c77496ea8ea3719f823761d211042f2a4b19ade164047bf1cefdab656fb083
+DIST firefox-91.7.0esr-vi.xpi 573481 BLAKE2B 
9eccf31ff297b53285100aa2993f32453520879be86b9da431608710ba63f0e110d67d01cbc1c6eb1330dbcb1268b77536dd83ef4c8b26d238cbb5772275b268
 SHA512 
a7e593aafd7bda13d38474971b9acda8f0decb272e143c09a8e9654caac44d884c830733e08c8ec3381a0e50d76a4e53d8dc91e884635be5f716142a963a0007
+DIST firefox-91.7.0esr-xh.xpi 428171 BLAKE2B 
b649ea7ab56b50a72fe85c57191258ccfb33094a3917c85b138112250897b1aa51cb654e271e9725aa3a871d852d5b0144ba832d27eb911e3229d17b3c1ff451
 SHA512 
d811be845e77050cf8201a4cdd81d857c0c169e1daca54f9ed19eb2cefaccac2e8227d0a0bd14da03fae30fd994e6f73b01ecd3ddd1db80c93f161ae54de2afd
+DIST firefox-91.7.0esr-zh-CN.xpi 575384 BLAKE2B 
55c6dc2eb796b51590c2caed51055123ebec2a0c690c624804b9514a3f1ea6e657d6854aa32bc79de5ada3bd03c1c50ca50c5460dcc37c7808c4aec4e0579e73
 SHA512 
b226b3579ed1f9dfef85e3b9e312e53214f168a41e546370259e8d646ae8254973f09e1dcf983c53202ef9c7b4417a41e707e94eeff27330d25c5ae2bb0e2922
+DIST firefox-91.7.0esr-zh-TW.xpi 576223 BLAKE2B 
7829cefb68361a1953632c769fc5f05bd740f4464f038093d7582ce64f16dc7361c4d11f802e3b4457c51567174b9cd3144c3e712f808a80f7e499c3a7a3b832
 SHA512 
1ec45793166ba742d49e9e16807132f97807dca9d76558d86db48ae73c64cfc39b66e9974d0d98b9a550bc58f4321bd1722b856fa81b5a6e7fa58da87d7b618a
+DIST firefox-91.7.0esr.source.tar.xz 383133596 BLAKE2B 
374da61d89d4b7b24d01e8101926056d6819e7c34c80630694cd2d95193dd6662ccfe3195361e7cd5a4167098e74bb7018d02d5af715fdcf95228bf8f54cb1c2
 SHA512 
925811989d8a91d826ba356bd46ac54be8153288ec0319c28d2bfbe89191e62e107691159dd7ca247253e2a4952eb59a5b9613e3feea3f5351238d4822e26301
 DIST firefox-91esr-patches-05j.tar.xz 17116 BLAKE2B 
5db6d2d3d5432369d2cfcda1a2b542d70ac18c1af7013d91984054c9658d7e3f989527c3a248de53f2e8dc51a852a46477f9ad75e98db28f50f8609fcafe547c
 SHA512 
42080a8e28014d5f8de7ff45e0128ab71747faad7a92f0f7094686125835c168751794bd0229f77290f075502c271af0171ffae2863325d10cc6e8a853a90d3e
 DIST firefox-97-patches-03j.tar.xz 17340 BLAKE2B 
d1c9ff486510cfebc0cad708657203e3bdf9007e150af603a4625b29421f983ca1f3b1c6468d07fb7f1ebb967f4bd03ba6fa545a5ca420e957480a0b27c04632
 SHA512 
f4d9f95d7b88efd1b3f19957c7a1b1f971ce0f25fdd461cda701a4d8adf6d1733eaf055624342b79531f84ebc46c9c4edd4f0f23204b7fae9cdd6f9708c6ba41
 DIST firefox-97.0.2-ach.xpi 453073 BLAKE2B 
87cd31589ea0a9e5f48b690f7dea2971dd8023e4c0e55950d78c4898dabf54e326166a25c757b10ccc7f7177aa5e1d70f11c5fa1d087f35ff754f5fbfdadbc6f
 SHA512 
838d414785aa4dea5c2153ad4442bf0ce0eab40ce4dcbd651eba4ec56fa87c0479546e5b2dea62b5d3d953951ba50efe1fea86e45d96b7449cb7a75b5b8e4f71

diff --git a/www-client/firefox/firefox-91.7.0.ebuild 
b/www-client/firefox/firefox-91.7.0.ebuild
new file mode 100644
index 000000000000..3f52fa98446d
--- /dev/null
+++ b/www-client/firefox/firefox-91.7.0.ebuild
@@ -0,0 +1,1230 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+FIREFOX_PATCHSET="firefox-91esr-patches-05j.tar.xz"
+
+LLVM_MAX_SLOT=13
+
+PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_REQ_USE="ncurses,sqlite,ssl"
+
+WANT_AUTOCONF="2.1"
+
+VIRTUALX_REQUIRED="pgo"
+
+MOZ_ESR=yes
+
+MOZ_PV=${PV}
+MOZ_PV_SUFFIX=
+if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
+       MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
+
+       # Convert the ebuild version to the upstream Mozilla version
+       MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
+       MOZ_PV="${MOZ_PV/_beta/b}"  # Handle beta for SRC_URI
+       MOZ_PV="${MOZ_PV%%_rc*}"    # Handle rc for SRC_URI
+fi
+
+if [[ -n ${MOZ_ESR} ]] ; then
+       # ESR releases have slightly different version numbers
+       MOZ_PV="${MOZ_PV}esr"
+fi
+
+MOZ_PN="${PN%-bin}"
+MOZ_P="${MOZ_PN}-${MOZ_PV}"
+MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
+MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
+
+inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \
+       llvm multiprocessing pax-utils python-any-r1 toolchain-funcs \
+       virtualx xdg
+
+MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}";
+
+if [[ ${PV} == *_rc* ]] ; then
+       
MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}";
+fi
+
+PATCH_URIS=(
+       
https://dev.gentoo.org/~{juippis,polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET}
+)
+
+SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> 
${MOZ_P_DISTFILES}.source.tar.xz
+       ${PATCH_URIS[@]}"
+
+DESCRIPTION="Firefox Web Browser"
+HOMEPAGE="https://www.mozilla.com/firefox";
+
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+SLOT="esr"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+
+IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel"
+IUSE+=" jack lto +openh264 pgo pulseaudio sndio selinux"
+IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent 
+system-libvpx system-png +system-webp"
+IUSE+=" wayland wifi"
+
+# Firefox-only IUSE
+IUSE+=" geckodriver"
+IUSE+=" +gmp-autoupdate"
+IUSE+=" screencast"
+
+REQUIRED_USE="debug? ( !system-av1 )
+       pgo? ( lto )
+       wifi? ( dbus )"
+
+# Firefox-only REQUIRED_USE flags
+REQUIRED_USE+=" screencast? ( wayland )"
+
+BDEPEND="${PYTHON_DEPS}
+       app-arch/unzip
+       app-arch/zip
+       >=dev-util/cbindgen-0.19.0
+       >=net-libs/nodejs-10.23.1
+       virtual/pkgconfig
+       >=virtual/rust-1.51.0
+       || (
+               (
+                       sys-devel/clang:13
+                       sys-devel/llvm:13
+                       clang? (
+                               =sys-devel/lld-13*
+                               pgo? ( 
=sys-libs/compiler-rt-sanitizers-13*[profile] )
+                       )
+               )
+               (
+                       sys-devel/clang:12
+                       sys-devel/llvm:12
+                       clang? (
+                               =sys-devel/lld-12*
+                               pgo? ( 
=sys-libs/compiler-rt-sanitizers-12*[profile] )
+                       )
+               )
+               (
+                       sys-devel/clang:11
+                       sys-devel/llvm:11
+                       clang? (
+                               =sys-devel/lld-11*
+                               pgo? ( 
=sys-libs/compiler-rt-sanitizers-11*[profile] )
+                       )
+               )
+       )
+       amd64? ( >=dev-lang/nasm-2.13 )
+       x86? ( >=dev-lang/nasm-2.13 )"
+
+COMMON_DEPEND="
+       >=dev-libs/nss-3.68
+       >=dev-libs/nspr-4.32
+       dev-libs/atk
+       dev-libs/expat
+       >=x11-libs/cairo-1.10[X]
+       >=x11-libs/gtk+-3.4.0:3[X]
+       x11-libs/gdk-pixbuf
+       >=x11-libs/pango-1.22.0
+       >=media-libs/mesa-10.2:*
+       media-libs/fontconfig
+       >=media-libs/freetype-2.4.10
+       kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) )
+       virtual/freedesktop-icon-theme
+       >=x11-libs/pixman-0.19.2
+       >=dev-libs/glib-2.26:2
+       >=sys-libs/zlib-1.2.3
+       >=dev-libs/libffi-3.0.10:=
+       media-video/ffmpeg
+       x11-libs/libX11
+       x11-libs/libxcb
+       x11-libs/libXcomposite
+       x11-libs/libXdamage
+       x11-libs/libXext
+       x11-libs/libXfixes
+       x11-libs/libXrender
+       x11-libs/libXt
+       dbus? (
+               sys-apps/dbus
+               dev-libs/dbus-glib
+       )
+       screencast? ( media-video/pipewire:= )
+       system-av1? (
+               >=media-libs/dav1d-0.8.1:=
+               >=media-libs/libaom-1.0.0:=
+       )
+       system-harfbuzz? (
+               >=media-libs/harfbuzz-2.8.1:0=
+               >=media-gfx/graphite2-1.3.13
+       )
+       system-icu? ( >=dev-libs/icu-69.1:= )
+       system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
+       system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
+       system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
+       system-png? ( >=media-libs/libpng-1.6.35:0=[apng] )
+       system-webp? ( >=media-libs/libwebp-1.1.0:0= )
+       wifi? (
+               kernel_linux? (
+                       sys-apps/dbus
+                       dev-libs/dbus-glib
+                       net-misc/networkmanager
+               )
+       )
+       jack? ( virtual/jack )
+       selinux? ( sec-policy/selinux-mozilla )
+       sndio? ( media-sound/sndio )"
+
+RDEPEND="${COMMON_DEPEND}
+       !www-client/firefox:0
+       !www-client/firefox:rapid
+       jack? ( virtual/jack )
+       openh264? ( media-libs/openh264:*[plugin] )
+       pulseaudio? (
+               || (
+                       media-sound/pulseaudio
+                       >=media-sound/apulse-0.1.12-r4
+               )
+       )
+       selinux? ( sec-policy/selinux-mozilla )"
+
+DEPEND="${COMMON_DEPEND}
+       x11-libs/libICE
+       x11-libs/libSM
+       pulseaudio? (
+               || (
+                       media-sound/pulseaudio
+                       >=media-sound/apulse-0.1.12-r4[sdk]
+               )
+       )
+       wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
+       amd64? ( virtual/opengl )
+       x86? ( virtual/opengl )"
+
+S="${WORKDIR}/${PN}-${PV%_*}"
+
+# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
+# overridden in the enviromnent (advanced hackers only)
+if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
+       MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
+fi
+
+llvm_check_deps() {
+       if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
+               einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM 
slot ${LLVM_SLOT} ..." >&2
+               return 1
+       fi
+
+       if use clang ; then
+               if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
+                       einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot 
use LLVM slot ${LLVM_SLOT} ..." >&2
+                       return 1
+               fi
+
+               if use pgo ; then
+                       if ! has_version -b 
"=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
+                               einfo 
"=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM 
slot ${LLVM_SLOT} ..." >&2
+                               return 1
+                       fi
+               fi
+       fi
+
+       einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
+}
+
+MOZ_LANGS=(
+       af ar ast be bg br ca cak cs cy da de dsb
+       el en-CA en-GB en-US es-AR es-ES et eu
+       fi fr fy-NL ga-IE gd gl he hr hsb hu
+       id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO
+       pa-IN pl pt-BR pt-PT rm ro ru
+       sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW
+)
+
+# Firefox-only LANGS
+MOZ_LANGS+=( ach )
+MOZ_LANGS+=( an )
+MOZ_LANGS+=( az )
+MOZ_LANGS+=( bn )
+MOZ_LANGS+=( bs )
+MOZ_LANGS+=( ca-valencia )
+MOZ_LANGS+=( eo )
+MOZ_LANGS+=( es-CL )
+MOZ_LANGS+=( es-MX )
+MOZ_LANGS+=( fa )
+MOZ_LANGS+=( ff )
+MOZ_LANGS+=( gn )
+MOZ_LANGS+=( gu-IN )
+MOZ_LANGS+=( hi-IN )
+MOZ_LANGS+=( hy-AM )
+MOZ_LANGS+=( ia )
+MOZ_LANGS+=( km )
+MOZ_LANGS+=( kn )
+MOZ_LANGS+=( lij )
+MOZ_LANGS+=( mk )
+MOZ_LANGS+=( mr )
+MOZ_LANGS+=( my )
+MOZ_LANGS+=( ne-NP )
+MOZ_LANGS+=( oc )
+MOZ_LANGS+=( sco )
+MOZ_LANGS+=( si )
+MOZ_LANGS+=( son )
+MOZ_LANGS+=( szl )
+MOZ_LANGS+=( ta )
+MOZ_LANGS+=( te )
+MOZ_LANGS+=( tl )
+MOZ_LANGS+=( trs )
+MOZ_LANGS+=( ur )
+MOZ_LANGS+=( xh )
+
+mozilla_set_globals() {
+       # https://bugs.gentoo.org/587334
+       local MOZ_TOO_REGIONALIZED_FOR_L10N=(
+               fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
+       )
+
+       local lang xflag
+       for lang in "${MOZ_LANGS[@]}" ; do
+               # en and en_US are handled internally
+               if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
+                       continue
+               fi
+
+               # strip region subtag if $lang is in the list
+               if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
+                       xflag=${lang%%-*}
+               else
+                       xflag=${lang}
+               fi
+
+               SRC_URI+=" l10n_${xflag/[_@]/-}? ("
+               SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> 
${MOZ_P_DISTFILES}-${lang}.xpi"
+               SRC_URI+=" )"
+               IUSE+=" l10n_${xflag/[_@]/-}"
+       done
+}
+mozilla_set_globals
+
+moz_clear_vendor_checksums() {
+       debug-print-function ${FUNCNAME} "$@"
+
+       if [[ ${#} -ne 1 ]] ; then
+               die "${FUNCNAME} requires exact one argument"
+       fi
+
+       einfo "Clearing cargo checksums for ${1} ..."
+
+       sed -i \
+               -e 's/\("files":{\)[^}]*/\1/' \
+               "${S}"/third_party/rust/${1}/.cargo-checksum.json \
+               || die
+}
+
+moz_install_xpi() {
+       debug-print-function ${FUNCNAME} "$@"
+
+       if [[ ${#} -lt 2 ]] ; then
+               die "${FUNCNAME} requires at least two arguments"
+       fi
+
+       local DESTDIR=${1}
+       shift
+
+       insinto "${DESTDIR}"
+
+       local emid xpi_file xpi_tmp_dir
+       for xpi_file in "${@}" ; do
+               emid=
+               xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
+
+               # Unpack XPI
+               unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
+
+               # Determine extension ID
+               if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
+                       emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; 
s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
+                       [[ -z "${emid}" ]] && die "failed to determine 
extension id from install.rdf"
+               elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
+                       emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' 
"${xpi_tmp_dir}/manifest.json")
+                       [[ -z "${emid}" ]] && die "failed to determine 
extension id from manifest.json"
+               else
+                       die "failed to determine extension id"
+               fi
+
+               einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
+               newins "${xpi_file}" "${emid}.xpi"
+       done
+}
+
+mozconfig_add_options_ac() {
+       debug-print-function ${FUNCNAME} "$@"
+
+       if [[ ${#} -lt 2 ]] ; then
+               die "${FUNCNAME} requires at least two arguments"
+       fi
+
+       local reason=${1}
+       shift
+
+       local option
+       for option in ${@} ; do
+               echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
+       done
+}
+
+mozconfig_add_options_mk() {
+       debug-print-function ${FUNCNAME} "$@"
+
+       if [[ ${#} -lt 2 ]] ; then
+               die "${FUNCNAME} requires at least two arguments"
+       fi
+
+       local reason=${1}
+       shift
+
+       local option
+       for option in ${@} ; do
+               echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
+       done
+}
+
+mozconfig_use_enable() {
+       debug-print-function ${FUNCNAME} "$@"
+
+       if [[ ${#} -lt 1 ]] ; then
+               die "${FUNCNAME} requires at least one arguments"
+       fi
+
+       local flag=$(use_enable "${@}")
+       mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" 
"${flag}"
+}
+
+mozconfig_use_with() {
+       debug-print-function ${FUNCNAME} "$@"
+
+       if [[ ${#} -lt 1 ]] ; then
+               die "${FUNCNAME} requires at least one arguments"
+       fi
+
+       local flag=$(use_with "${@}")
+       mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" 
"${flag}"
+}
+
+pkg_pretend() {
+       if [[ ${MERGE_TYPE} != binary ]] ; then
+               if use pgo ; then
+                       if ! has usersandbox $FEATURES ; then
+                               die "You must enable usersandbox as X server 
can not run as root!"
+                       fi
+               fi
+
+               # Ensure we have enough disk space to compile
+               if use pgo || use lto || use debug ; then
+                       CHECKREQS_DISK_BUILD="13500M"
+               else
+                       CHECKREQS_DISK_BUILD="6400M"
+               fi
+
+               check-reqs_pkg_pretend
+       fi
+}
+
+pkg_setup() {
+       if [[ ${MERGE_TYPE} != binary ]] ; then
+               if use pgo ; then
+                       if ! has userpriv ${FEATURES} ; then
+                               eerror "Building ${PN} with USE=pgo and 
FEATURES=-userpriv is not supported!"
+                       fi
+               fi
+
+               # Ensure we have enough disk space to compile
+               if use pgo || use lto || use debug ; then
+                       CHECKREQS_DISK_BUILD="13500M"
+               else
+                       CHECKREQS_DISK_BUILD="6400M"
+               fi
+
+               check-reqs_pkg_setup
+
+               llvm_pkg_setup
+
+               if use clang && use lto ; then
+                       local version_lld=$(ld.lld --version 2>/dev/null | awk 
'{ print $2 }')
+                       [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 
"${version_lld}")
+                       [[ -z ${version_lld} ]] && die "Failed to read ld.lld 
version!"
+
+                       local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep 
-F -- 'LLVM version:' | awk '{ print $3 }')
+                       [[ -n ${version_llvm_rust} ]] && 
version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
+                       [[ -z ${version_llvm_rust} ]] && die "Failed to read 
used LLVM version from rustc!"
+
+                       if ver_test "${version_lld}" -ne "${version_llvm_rust}" 
; then
+                               eerror "Rust is using LLVM version 
${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
+                               eerror "You will be unable to link 
${CATEGORY}/${PN}. To proceed you have the following options:"
+                               eerror "  - Manually switch rust version using 
'eselect rust' to match used LLVM version"
+                               eerror "  - Switch to 
dev-lang/rust[system-llvm] which will guarantee matching version"
+                               eerror "  - Build ${CATEGORY}/${PN} without 
USE=lto"
+                               die "LLVM version used by Rust 
(${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
+                       fi
+               fi
+
+               if ! use clang && [[ $(gcc-major-version) -eq 11 ]] \
+                       && ! has_version -b ">sys-devel/gcc-11.1.0:11" ; then
+                       # bug 792705
+                       eerror "Using GCC 11 to compile firefox is currently 
known to be broken (see bug #792705)."
+                       die "Set USE=clang or select <gcc-11 to build 
${CATEGORY}/${P}."
+               fi
+
+               python-any-r1_pkg_setup
+
+               # Avoid PGO profiling problems due to enviroment leakage
+               # These should *always* be cleaned up anyway
+               unset \
+                       DBUS_SESSION_BUS_ADDRESS \
+                       DISPLAY \
+                       ORBIT_SOCKETDIR \
+                       SESSION_MANAGER \
+                       XAUTHORITY \
+                       XDG_CACHE_HOME \
+                       XDG_SESSION_COOKIE
+
+               # Build system is using /proc/self/oom_score_adj, bug #604394
+               addpredict /proc/self/oom_score_adj
+
+               if use pgo ; then
+                       # Allow access to GPU during PGO run
+                       local ati_cards mesa_cards nvidia_cards render_cards
+                       shopt -s nullglob
+
+                       ati_cards=$(echo -n /dev/ati/card* | sed 's/ /:/g')
+                       if [[ -n "${ati_cards}" ]] ; then
+                               addpredict "${ati_cards}"
+                       fi
+
+                       mesa_cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
+                       if [[ -n "${mesa_cards}" ]] ; then
+                               addpredict "${mesa_cards}"
+                       fi
+
+                       nvidia_cards=$(echo -n /dev/nvidia* | sed 's/ /:/g')
+                       if [[ -n "${nvidia_cards}" ]] ; then
+                               addpredict "${nvidia_cards}"
+                       fi
+
+                       render_cards=$(echo -n /dev/dri/renderD128* | sed 's/ 
/:/g')
+                       if [[ -n "${render_cards}" ]] ; then
+                               addpredict "${render_cards}"
+                       fi
+
+                       shopt -u nullglob
+               fi
+
+               if ! mountpoint -q /dev/shm ; then
+                       # If /dev/shm is not available, configure is known to 
fail with
+                       # a traceback report referencing 
/usr/lib/pythonN.N/multiprocessing/synchronize.py
+                       ewarn "/dev/shm is not mounted -- expect build 
failures!"
+               fi
+
+               # Google API keys (see 
http://www.chromium.org/developers/how-tos/api-keys)
+               # Note: These are for Gentoo Linux use ONLY. For your own 
distribution, please
+               # get your own set of keys.
+               if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
+                       
MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
+               fi
+
+               if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
+                       
MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
+               fi
+
+               # Mozilla API keys (see 
https://location.services.mozilla.com/api)
+               # Note: These are for Gentoo Linux use ONLY. For your own 
distribution, please
+               # get your own set of keys.
+               if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
+                       
MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
+               fi
+
+               # Ensure we use C locale when building, bug #746215
+               export LC_ALL=C
+       fi
+
+       CONFIG_CHECK="~SECCOMP"
+       WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to 
play DRM-protected content."
+       linux-info_pkg_setup
+}
+
+src_unpack() {
+       local _lp_dir="${WORKDIR}/language_packs"
+       local _src_file
+
+       if [[ ! -d "${_lp_dir}" ]] ; then
+               mkdir "${_lp_dir}" || die
+       fi
+
+       for _src_file in ${A} ; do
+               if [[ ${_src_file} == *.xpi ]]; then
+                       cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die 
"Failed to copy '${_src_file}' to '${_lp_dir}'!"
+               else
+                       unpack ${_src_file}
+               fi
+       done
+}
+
+src_prepare() {
+       use lto && rm -v 
"${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
+       eapply "${WORKDIR}/firefox-patches"
+
+       # Allow user to apply any additional patches without modifing ebuild
+       eapply_user
+
+       # Make cargo respect MAKEOPTS
+       export CARGO_BUILD_JOBS="$(makeopts_jobs)"
+
+       # Make LTO respect MAKEOPTS
+       sed -i \
+               -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+               "${S}"/build/moz.configure/lto-pgo.configure \
+               || die "sed failed to set num_cores"
+
+       # Make ICU respect MAKEOPTS
+       sed -i \
+               -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+               "${S}"/intl/icu_sources_data.py \
+               || die "sed failed to set num_cores"
+
+       # sed-in toolchain prefix
+       sed -i \
+               -e "s/objdump/${CHOST}-objdump/" \
+               "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py 
\
+               || die "sed failed to set toolchain prefix"
+
+       sed -i \
+               -e 's/ccache_stats = None/return None/' \
+               "${S}"/python/mozbuild/mozbuild/controller/building.py \
+               || die "sed failed to disable ccache stats call"
+
+       einfo "Removing pre-built binaries ..."
+       find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) 
-print -delete || die
+
+       # Clearing checksums where we have applied patches
+       moz_clear_vendor_checksums target-lexicon-0.9.0
+
+       # Create build dir
+       BUILD_DIR="${WORKDIR}/${PN}_build"
+       mkdir -p "${BUILD_DIR}" || die
+
+       # Write API keys to disk
+       echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
+       echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || 
die
+       echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
+
+       xdg_src_prepare
+}
+
+src_configure() {
+       # Show flags set at the beginning
+       einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
+       einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
+       einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
+       einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
+       einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
+
+       local have_switched_compiler=
+       if use clang && ! tc-is-clang ; then
+               # Force clang
+               einfo "Enforcing the use of clang due to USE=clang ..."
+               have_switched_compiler=yes
+               AR=llvm-ar
+               CC=${CHOST}-clang
+               CXX=${CHOST}-clang++
+               NM=llvm-nm
+               RANLIB=llvm-ranlib
+       elif ! use clang && ! tc-is-gcc ; then
+               # Force gcc
+               have_switched_compiler=yes
+               einfo "Enforcing the use of gcc due to USE=-clang ..."
+               AR=gcc-ar
+               CC=${CHOST}-gcc
+               CXX=${CHOST}-g++
+               NM=gcc-nm
+               RANLIB=gcc-ranlib
+       fi
+
+       if [[ -n "${have_switched_compiler}" ]] ; then
+               # Because we switched active compiler we have to ensure
+               # that no unsupported flags are set
+               strip-unsupported-flags
+       fi
+
+       # Ensure we use correct toolchain
+       export HOST_CC="$(tc-getBUILD_CC)"
+       export HOST_CXX="$(tc-getBUILD_CXX)"
+       tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
+
+       # Pass the correct toolchain paths through cbindgen
+       if tc-is-cross-compiler ; then
+               export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} 
--target=${CHOST} ${BINDGEN_CFLAGS-}"
+       fi
+
+       # Set MOZILLA_FIVE_HOME
+       export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
+
+       # python/mach/mach/mixin/process.py fails to detect SHELL
+       export SHELL="${EPREFIX}/bin/bash"
+
+       # Set state path
+       export MOZBUILD_STATE_PATH="${BUILD_DIR}"
+
+       # Set MOZCONFIG
+       export MOZCONFIG="${S}/.mozconfig"
+
+       # Initialize MOZCONFIG
+       mozconfig_add_options_ac '' --enable-application=browser
+
+       # Set Gentoo defaults
+       export MOZILLA_OFFICIAL=1
+
+       mozconfig_add_options_ac 'Gentoo default' \
+               --allow-addon-sideload \
+               --disable-cargo-incremental \
+               --disable-crashreporter \
+               --disable-install-strip \
+               --disable-strip \
+               --disable-updater \
+               --enable-official-branding \
+               --enable-release \
+               --enable-system-ffi \
+               --enable-system-pixman \
+               --host="${CBUILD:-${CHOST}}" \
+               --libdir="${EPREFIX}/usr/$(get_libdir)" \
+               --prefix="${EPREFIX}/usr" \
+               --target="${CHOST}" \
+               --without-ccache \
+               --with-intl-api \
+               --with-libclang-path="$(llvm-config --libdir)" \
+               --with-system-nspr \
+               --with-system-nss \
+               --with-system-zlib \
+               --with-toolchain-prefix="${CHOST}-" \
+               --with-unsigned-addon-scopes=app,system \
+               --x-includes="${SYSROOT}${EPREFIX}/usr/include" \
+               --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)"
+
+       # Set update channel
+       local update_channel=release
+       [[ -n ${MOZ_ESR} ]] && update_channel=esr
+       mozconfig_add_options_ac '' --update-channel=${update_channel}
+
+       if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
+               mozconfig_add_options_ac '' --enable-rust-simd
+       fi
+
+       if [[ -s "${S}/api-google.key" ]] ; then
+               local key_origin="Gentoo default"
+               if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 
}') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
+                       key_origin="User value"
+               fi
+
+               mozconfig_add_options_ac "${key_origin}" \
+                       
--with-google-safebrowsing-api-keyfile="${S}/api-google.key"
+       else
+               einfo "Building without Google API key ..."
+       fi
+
+       if [[ -s "${S}/api-location.key" ]] ; then
+               local key_origin="Gentoo default"
+               if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 
}') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
+                       key_origin="User value"
+               fi
+
+               mozconfig_add_options_ac "${key_origin}" \
+                       
--with-google-location-service-api-keyfile="${S}/api-location.key"
+       else
+               einfo "Building without Location API key ..."
+       fi
+
+       if [[ -s "${S}/api-mozilla.key" ]] ; then
+               local key_origin="Gentoo default"
+               if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 
}') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
+                       key_origin="User value"
+               fi
+
+               mozconfig_add_options_ac "${key_origin}" \
+                       --with-mozilla-api-keyfile="${S}/api-mozilla.key"
+       else
+               einfo "Building without Mozilla API key ..."
+       fi
+
+       mozconfig_use_with system-av1
+       mozconfig_use_with system-harfbuzz
+       mozconfig_use_with system-harfbuzz system-graphite2
+       mozconfig_use_with system-icu
+       mozconfig_use_with system-jpeg
+       mozconfig_use_with system-libevent system-libevent 
"${SYSROOT}${EPREFIX}/usr"
+       mozconfig_use_with system-libvpx
+       mozconfig_use_with system-png
+       mozconfig_use_with system-webp
+
+       mozconfig_use_enable dbus
+
+       use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
+
+       mozconfig_use_enable geckodriver
+
+       if use hardened ; then
+               mozconfig_add_options_ac "+hardened" --enable-hardening
+               append-ldflags "-Wl,-z,relro -Wl,-z,now"
+       fi
+
+       mozconfig_use_enable jack
+
+       mozconfig_use_enable pulseaudio
+       # force the deprecated alsa sound code if pulseaudio is disabled
+       if use kernel_linux && ! use pulseaudio ; then
+               mozconfig_add_options_ac '-pulseaudio' --enable-alsa
+       fi
+
+       mozconfig_use_enable sndio
+
+       mozconfig_use_enable wifi necko-wifi
+
+       if use wayland ; then
+               mozconfig_add_options_ac '+wayland' 
--enable-default-toolkit=cairo-gtk3-wayland
+       else
+               mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3
+       fi
+
+       if use lto ; then
+               if use clang ; then
+                       # Upstream only supports lld when using clang
+                       mozconfig_add_options_ac "forcing ld=lld due to 
USE=clang and USE=lto" --enable-linker=lld
+
+                       mozconfig_add_options_ac '+lto' --enable-lto=cross
+               else
+                       # ld.gold is known to fail:
+                       # 
/usr/lib/gcc/x86_64-pc-linux-gnu/11.2.1/../../../../x86_64-pc-linux-gnu/bin/ld.gold:
 internal error in set_xindex, at 
/var/tmp/portage/sys-devel/binutils-2.37_p1-r1/work/binutils-2.37/gold/object.h:1050
+
+                       # ThinLTO is currently broken, see bmo#1644409
+                       mozconfig_add_options_ac '+lto' --enable-lto=full
+                       mozconfig_add_options_ac "linker is set to bfd" 
--enable-linker=bfd
+               fi
+
+               if use pgo ; then
+                       mozconfig_add_options_ac '+pgo' MOZ_PGO=1
+
+                       if use clang ; then
+                               # Used in build/pgo/profileserver.py
+                               export LLVM_PROFDATA="llvm-profdata"
+                       fi
+               fi
+       else
+               # Avoid auto-magic on linker
+               if use clang ; then
+                       # This is upstream's default
+                       mozconfig_add_options_ac "forcing ld=lld due to 
USE=clang" --enable-linker=lld
+               else
+                       mozconfig_add_options_ac "linker is set to bfd" 
--enable-linker=bfd
+               fi
+       fi
+
+       # LTO flag was handled via configure
+       filter-flags '-flto*'
+
+       mozconfig_use_enable debug
+       if use debug ; then
+               mozconfig_add_options_ac '+debug' --disable-optimize
+       else
+               if is-flag '-g*' ; then
+                       if use clang ; then
+                               mozconfig_add_options_ac 'from CFLAGS' 
--enable-debug-symbols=$(get-flag '-g*')
+                       else
+                               mozconfig_add_options_ac 'from CFLAGS' 
--enable-debug-symbols
+                       fi
+               else
+                       mozconfig_add_options_ac 'Gentoo default' 
--disable-debug-symbols
+               fi
+
+               if is-flag '-O0' ; then
+                       mozconfig_add_options_ac "from CFLAGS" 
--enable-optimize=-O0
+               elif is-flag '-O4' ; then
+                       mozconfig_add_options_ac "from CFLAGS" 
--enable-optimize=-O4
+               elif is-flag '-O3' ; then
+                       mozconfig_add_options_ac "from CFLAGS" 
--enable-optimize=-O3
+               elif is-flag '-O1' ; then
+                       mozconfig_add_options_ac "from CFLAGS" 
--enable-optimize=-O1
+               elif is-flag '-Os' ; then
+                       mozconfig_add_options_ac "from CFLAGS" 
--enable-optimize=-Os
+               else
+                       mozconfig_add_options_ac "Gentoo default" 
--enable-optimize=-O2
+               fi
+       fi
+
+       # Debug flag was handled via configure
+       filter-flags '-g*'
+
+       # Optimization flag was handled via configure
+       filter-flags '-O*'
+
+       # Modifications to better support ARM, bug #553364
+       if use cpu_flags_arm_neon ; then
+               mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
+
+               if ! tc-is-clang ; then
+                       # thumb options aren't supported when using clang, bug 
666966
+                       mozconfig_add_options_ac '+cpu_flags_arm_neon' \
+                               --with-thumb=yes \
+                               --with-thumb-interwork=no
+               fi
+       fi
+
+       if [[ ${CHOST} == armv*h* ]] ; then
+               mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
+
+               if ! use system-libvpx ; then
+                       sed -i \
+                               -e "s|softfp|hard|" \
+                               "${S}"/media/libvpx/moz.build \
+                               || die
+               fi
+       fi
+
+       if use clang ; then
+               # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
+               # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
+               # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 
'x86', 'x86_64')
+               local disable_elf_hack=
+               if use amd64 ; then
+                       disable_elf_hack=yes
+               elif use x86 ; then
+                       disable_elf_hack=yes
+               elif use arm ; then
+                       disable_elf_hack=yes
+               fi
+
+               if [[ -n ${disable_elf_hack} ]] ; then
+                       mozconfig_add_options_ac 'elf-hack is broken when using 
Clang' --disable-elf-hack
+               fi
+       elif tc-is-gcc ; then
+               if ver_test $(gcc-fullversion) -ge 10 ; then
+                       einfo "Forcing -fno-tree-loop-vectorize to workaround 
GCC bug, see bug 758446 ..."
+                       append-cxxflags -fno-tree-loop-vectorize
+               fi
+       fi
+
+       # Additional ARCH support
+       case "${ARCH}" in
+               arm)
+                       # Reduce the memory requirements for linking
+                       if use clang ; then
+                               # Nothing to do
+                               :;
+                       elif tc-ld-is-gold || use lto ; then
+                               append-ldflags -Wl,--no-keep-memory
+                       else
+                               append-ldflags -Wl,--no-keep-memory 
-Wl,--reduce-memory-overheads
+                       fi
+                       ;;
+       esac
+
+       if ! use elibc_glibc ; then
+               mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
+       fi
+
+       # Allow elfhack to work in combination with unstripped binaries
+       # when they would normally be larger than 2GiB.
+       append-ldflags "-Wl,--compress-debug-sections=zlib"
+
+       # Make revdep-rebuild.sh happy; Also required for musl
+       append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
+
+       # Pass $MAKEOPTS to build system
+       export MOZ_MAKE_FLAGS="${MAKEOPTS}"
+
+       # Use system's Python environment
+       export MACH_USE_SYSTEM_PYTHON=1
+       export PIP_NO_CACHE_DIR=off
+
+       # Disable notification when build system has finished
+       export MOZ_NOSPAM=1
+
+       # Portage sets XARGS environment variable to "xargs -r" by default which
+       # breaks build system's check_prog() function which doesn't support 
arguments
+       mozconfig_add_options_ac 'Gentoo default' 
"XARGS=${EPREFIX}/usr/bin/xargs"
+
+       # Set build dir
+       mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
+
+       # Show flags we will use
+       einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
+       einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
+       einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
+       einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
+       einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
+
+       # Handle EXTRA_CONF and show summary
+       local ac opt hash reason
+
+       # Apply EXTRA_ECONF entries to $MOZCONFIG
+       if [[ -n ${EXTRA_ECONF} ]] ; then
+               IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
+               for opt in "${ac[@]}"; do
+                       mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
+               done
+       fi
+
+       echo
+       echo "=========================================================="
+       echo "Building ${PF} with the following configuration"
+       grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
+               [[ -z ${hash} || ${hash} == \# ]] \
+                       || die "error reading mozconfig: ${ac} ${opt} ${hash} 
${reason}"
+               printf "    %-30s  %s\n" "${opt}" "${reason:-mozilla.org 
default}"
+       done
+       echo "=========================================================="
+       echo
+
+       ./mach configure || die
+}
+
+src_compile() {
+       local virtx_cmd=
+
+       if use pgo ; then
+               virtx_cmd=virtx
+
+               # Reset and cleanup environment variables used by GNOME/XDG
+               gnome2_environment_reset
+
+               addpredict /root
+       fi
+
+       local -x GDK_BACKEND=x11
+
+       ${virtx_cmd} ./mach build --verbose \
+               || die
+}
+
+src_install() {
+       # xpcshell is getting called during install
+       pax-mark m \
+               "${BUILD_DIR}"/dist/bin/xpcshell \
+               "${BUILD_DIR}"/dist/bin/${PN} \
+               "${BUILD_DIR}"/dist/bin/plugin-container
+
+       DESTDIR="${D}" ./mach install || die
+
+       # Upstream cannot ship symlink but we can (bmo#658850)
+       rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
+       dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
+
+       # Don't install llvm-symbolizer from sys-devel/llvm package
+       if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
+               rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
+       fi
+
+       # Install policy (currently only used to disable application updates)
+       insinto "${MOZILLA_FIVE_HOME}/distribution"
+       newins "${FILESDIR}"/distribution.ini distribution.ini
+       newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
+
+       # Install system-wide preferences
+       local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences"
+       insinto "${PREFS_DIR}"
+       newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js
+
+       local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js"
+
+       # Set dictionary path to use system hunspell
+       cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set 
spellchecker.dictionary_path pref"
+       pref("spellchecker.dictionary_path",       
"${EPREFIX}/usr/share/myspell");
+       EOF
+
+       # Force hwaccel prefs if USE=hwaccel is enabled
+       if use hwaccel ; then
+               cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \
+               >>"${GENTOO_PREFS}" \
+               || die "failed to add prefs to force hardware-accelerated 
rendering to all-gentoo.js"
+       fi
+
+       if ! use gmp-autoupdate ; then
+               local plugin
+               for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
+                       einfo "Disabling auto-update for ${plugin} plugin ..."
+                       cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to 
disable autoupdate for ${plugin} media plugin"
+                       pref("media.${plugin}.autoupdate",   false);
+                       EOF
+               done
+       fi
+
+       # Force the graphite pref if USE=system-harfbuzz is enabled, since the 
pref cannot disable it
+       if use system-harfbuzz ; then
+               cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set 
gfx.font_rendering.graphite.enabled pref"
+               sticky_pref("gfx.font_rendering.graphite.enabled", true);
+               EOF
+       fi
+
+       # Install language packs
+       local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name 
'*.xpi') )
+       if [[ -n "${langpacks}" ]] ; then
+               moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" 
"${langpacks[@]}"
+       fi
+
+       # Install geckodriver
+       if use geckodriver ; then
+               einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} 
..."
+               pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
+               exeinto "${MOZILLA_FIVE_HOME}"
+               doexe "${BUILD_DIR}"/dist/bin/geckodriver
+
+               dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
+       fi
+
+       # Install icons
+       local icon_srcdir="${S}/browser/branding/official"
+       local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg"
+
+       insinto /usr/share/icons/hicolor/symbolic/apps
+       newins "${icon_symbolic_file}" ${PN}-symbolic.svg
+
+       local icon size
+       for icon in "${icon_srcdir}"/default*.png ; do
+               size=${icon%.png}
+               size=${size##*/default}
+
+               if [[ ${size} -eq 48 ]] ; then
+                       newicon "${icon}" ${PN}.png
+               fi
+
+               newicon -s ${size} "${icon}" ${PN}.png
+       done
+
+       # Install menu
+       local app_name="Mozilla ${MOZ_PN^}"
+       local desktop_file="${FILESDIR}/icon/${PN}-r3.desktop"
+       local desktop_filename="${PN}.desktop"
+       local exec_command="${PN}"
+       local icon="${PN}"
+       local use_wayland="false"
+
+       if use wayland ; then
+               use_wayland="true"
+       fi
+
+       cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
+
+       sed -i \
+               -e "s:@NAME@:${app_name}:" \
+               -e "s:@EXEC@:${exec_command}:" \
+               -e "s:@ICON@:${icon}:" \
+               "${WORKDIR}/${PN}.desktop-template" \
+               || die
+
+       newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
+
+       rm "${WORKDIR}/${PN}.desktop-template" || die
+
+       # Install wrapper script
+       [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
+       newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
+
+       # Update wrapper
+       sed -i \
+               -e "s:@PREFIX@:${EPREFIX}/usr:" \
+               -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
+               -e "s:@APULSELIB_DIR@:${apulselib}:" \
+               -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
+               "${ED}/usr/bin/${PN}" \
+               || die
+}
+
+pkg_preinst() {
+       xdg_pkg_preinst
+
+       # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
+       # does not need to be forced into the LD_LIBRARY_PATH
+       if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
+               einfo "APULSE found; Generating library symlinks for sound 
support ..."
+               local lib
+               pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die
+               for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
+                       # A quickpkg rolled by hand will grab symlinks as part 
of the package,
+                       # so we need to avoid creating them if they already 
exist.
+                       if [[ ! -L ${lib##*/} ]] ; then
+                               ln -s "${lib}" ${lib##*/} || die
+                       fi
+               done
+               popd &>/dev/null || die
+       fi
+}
+
+pkg_postinst() {
+       xdg_pkg_postinst
+
+       if ! use gmp-autoupdate ; then
+               elog "USE='-gmp-autoupdate' has disabled the following plugins 
from updating or"
+               elog "installing into new profiles:"
+               local plugin
+               for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
+                       elog "\t ${plugin}"
+               done
+               elog
+       fi
+
+       if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
+               elog "Apulse was detected at merge time on this system and so 
it will always be"
+               elog "used for sound.  If you wish to use pulseaudio instead 
please unmerge"
+               elog "media-sound/apulse."
+               elog
+       fi
+
+       local show_doh_information
+       local show_normandy_information
+       local show_shortcut_information
+
+       if [[ -z "${REPLACING_VERSIONS}" ]] ; then
+               # New install; Tell user that DoH is disabled by default
+               show_doh_information=yes
+               show_normandy_information=yes
+               show_shortcut_information=no
+       else
+               local replacing_version
+               for replacing_version in ${REPLACING_VERSIONS} ; do
+                       if ver_test "${replacing_version}" -lt 91.0 ; then
+                               # Tell user that we no longer install a shortcut
+                               # per supported display protocol
+                               show_shortcut_information=yes
+                       fi
+               done
+       fi
+
+       if [[ -n "${show_doh_information}" ]] ; then
+               elog
+               elog "Note regarding Trusted Recursive Resolver aka 
DNS-over-HTTPS (DoH):"
+               elog "Due to privacy concerns (encrypting DNS might be a good 
thing, sending all"
+               elog "DNS traffic to Cloudflare by default is not a good idea 
and applications"
+               elog "should respect OS configured settings), 
\"network.trr.mode\" was set to 5"
+               elog "(\"Off by choice\") by default."
+               elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
+       fi
+
+       # bug 713782
+       if [[ -n "${show_normandy_information}" ]] ; then
+               elog
+               elog "Upstream operates a service named Normandy which allows 
Mozilla to"
+               elog "push changes for default settings or even install new 
add-ons remotely."
+               elog "While this can be useful to address problems like 
'Armagadd-on 2.0' or"
+               elog "revert previous decisions to disable TLS 1.0/1.1, privacy 
and security"
+               elog "concerns prevail, which is why we have switched off the 
use of this"
+               elog "service by default."
+               elog
+               elog "To re-enable this service set"
+               elog
+               elog "    app.normandy.enabled=true"
+               elog
+               elog "in about:config."
+       fi
+
+       if [[ -n "${show_shortcut_information}" ]] ; then
+               elog
+               elog "Since ${PN}-91.0 we no longer install multiple shortcuts 
for"
+               elog "each supported display protocol.  Instead we will only 
install"
+               elog "one generic Mozilla ${PN^} shortcut."
+               elog "If you still want to be able to select between running 
Mozilla ${PN^}"
+               elog "on X11 or Wayland, you have to re-create these shortcuts 
on your own."
+       fi
+}

Reply via email to