summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoonas Niilola <juippis@gentoo.org>2022-02-08 19:21:06 +0200
committerJoonas Niilola <juippis@gentoo.org>2022-02-08 19:28:02 +0200
commitb6fb6c28b1aa3b4c6d7e989cf5e75982e2d45d2c (patch)
tree89d1ecea67c28fad67c1fac514c2d24816910884 /www-client/firefox
parentsci-mathematics/lean: drop old 3.35.1-r2 (diff)
downloadgentoo-b6fb6c28b1aa3b4c6d7e989cf5e75982e2d45d2c.tar.gz
gentoo-b6fb6c28b1aa3b4c6d7e989cf5e75982e2d45d2c.tar.bz2
gentoo-b6fb6c28b1aa3b4c6d7e989cf5e75982e2d45d2c.zip
www-client/firefox: add 91.6.0
- introduce fakeslotting. Bug: https://bugs.gentoo.org/828531 Signed-off-by: Joonas Niilola <juippis@gentoo.org>
Diffstat (limited to 'www-client/firefox')
-rw-r--r--www-client/firefox/Manifest98
-rw-r--r--www-client/firefox/firefox-91.6.0.ebuild1240
2 files changed, 1338 insertions, 0 deletions
diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 5abc08c38086..a93d8448dd3a 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -194,6 +194,104 @@ DIST firefox-91.5.1esr-xh.xpi 428168 BLAKE2B b1b4ef6efe7ae557864377d4c741c70e2d3
DIST firefox-91.5.1esr-zh-CN.xpi 575375 BLAKE2B 73d230d6b56665ffa9557905d8d07005a018a7451dcee4026b123f49a108b7f5ac6019f0e8513b47d2c437c7cf989df783e625550654b980700ab3f05d6ee499 SHA512 a94e57d1c088bfca1b020ebe39ddda6dbffe60ba2f091090d6e459a088a0de82b3ea09c513ad5aca36383e15768b5115f8e925be4b1776760fd0228e19769e9c
DIST firefox-91.5.1esr-zh-TW.xpi 576231 BLAKE2B 42603360a18e3726c8153ff4d567ede683559eedf63e6a30d90d0cbd3436ad9f6ab1c00b2b5603edefe20370f5ab6a61c772a0407371f84b75a5f0f4f28f6a0c SHA512 8afc163b90c720d88a202b7774047a6ee9cc20a486cfe09e06af78dd910e8f2991f91ab5aea4d30cb4d6cd34ae4c1d2bfbf8e07d8e0820a649ab6bf9c5021c1c
DIST firefox-91.5.1esr.source.tar.xz 388976720 BLAKE2B 5ade6b402af1ad14438eabefe3d8249b8e0125968b7d6950f29747ff3a41f9f1b02c52a417756b07b68bacdde43549768d1b999b15ecdca237be9c0363d13b0c SHA512 26239e7a94b79f1e24a6667d7cf1c398d75992e8850144affbc5d3f34f04b91f0c9b020cab662b2cd4927924839ff2ddd2f3605c537bb5494fd9ac0d951b14fa
+DIST firefox-91.6.0esr-ach.xpi 453222 BLAKE2B b98360f0823647892109090d22524b081bfa5fa3c317bda509d613e45638aee819167a7c50acce318b042e5deb7c8dcd9d70507c4af1f31ebdfaebbf0fde1c70 SHA512 8ebf70889de9ea0f28f168d92f8566660ffcc733a6341059a97b62a1057cee966a1eae496070fee1fa8a1a5ded77c8b6bb822d55d8121de948432473b72a7777
+DIST firefox-91.6.0esr-af.xpi 426925 BLAKE2B 674668df214b0d1dff711574c4b84d0aa7aecd6dd23ad8443a48c7c663a98e97a948e87b4949c8d6a0da51fb7b86376e132b8b0e3540bcc345728d653877448a SHA512 b7fccb807f21bacfec680338acbdf8fde18ca77ad027d5af4351385fad2c241d1f95e88454a451ab02a1913d774688d653af0cb9f7b59cd9196c9ab536554d65
+DIST firefox-91.6.0esr-an.xpi 499884 BLAKE2B ff5959685f1dc8633403150cf3246f1c988356629ce65b270124c07143f55060eb460a1a51edee8a0d02e159527acbbdcee7a5e0d4effaa9ba1e08be3fb9a2ed SHA512 8567695652fad39f14872f9a9fe863c8fa7ae543235c90f6694f6367da895de3248a55d577b4b2743f4a10f116a5729d49e10e5c8974d41f15e037a43cb233ca
+DIST firefox-91.6.0esr-ar.xpi 559674 BLAKE2B 345d0f741b4a2f5477b6206753ff2ac89c842e94be9744424db802a7d31aeed9b1a51970f65487c423cdd5122c201a19734a5582b4933cc827974d8c9b15b7bd SHA512 cba6068bed0a1c3967b5d6a79fe24a8419ed4e55ab26dd558cfc1916cf6fba90debd56d49b01258e1edd0ade6096802493a4ff00518f8bb13779439d94502db1
+DIST firefox-91.6.0esr-ast.xpi 498578 BLAKE2B 4a12c7a47ff3a0acf935f5075b7cf9b30d7f32812c2986c048e8f4440d9c5156cf584c30fd1dd33e4921eea382a77b89d045884bd24ea5c9a839e995e9576a83 SHA512 c03ac55e758e0068d54163dbe0798c8326d685679ae054d1bb10bf13f3f01656fa9bdbf8d13855af85a80061117a43ff40443edfdae4335ebcb07f1181e5aa4e
+DIST firefox-91.6.0esr-az.xpi 489428 BLAKE2B cd25724c059fb48f6365212189d058b33f6f6c4fc06e60ed76fbead69bc961ac67f202cbe75aeffd872ea13fd1b673d9975a3bc192500dd59f1d571ce345790c SHA512 30f54464cd5ad600a9f2130ae068c524fd441fc624e6926f32f302adf13a658bf8581d45ef9ba008d5f70987cc838265bc3deff75e41e84e7521846684027b92
+DIST firefox-91.6.0esr-be.xpi 622615 BLAKE2B 2123cd451b4666ca75d745f9f5f8eaf30a7693f1ceba2956f66e6eeef8f5a72a7593f06ff95e38fce3a80413431fe8a1432a5704af764c89f98e417be2498532 SHA512 1ac548a820901f37183a8bae233e20c0c6f3a05fbfb4e8adedcf84607a786fb26d8832e549eeaf6f82f49e46f7f6f6eb82e090fc5692d294806a2a49ea0d7c67
+DIST firefox-91.6.0esr-bg.xpi 567644 BLAKE2B c36fccff1eab5cda72d166c26cf690f85df60094ce82241bb7ed3211c9a724b403d272caf9f4c6880cfe5040e7b82fe1f13067553bfd3e86f9316b2cf54ba08d SHA512 3eb18c887cb20b7d4abf89d0bd1deac3a766dfa80e05b13d9bb702b47005bd0cf9bf6945df7ae01d386a01bf8ff71f86b3578f9e2cff0459da924918ce4b6dab
+DIST firefox-91.6.0esr-bn.xpi 556818 BLAKE2B dccbb447fd8d4c5cdd4968bb2b4444282fbf93ee60daa8af5efc6ed026a8e76ae3a09b8819a0700b982c3f7315c292ab3238edcaa6304c3efe8383b9e3971ca8 SHA512 1843b8a788089006da67a9d0c614af0d8f3de08ae51225655293deca1c8446d0949b6f2456f096d17c826b4ec95ced01889a84807cb86b6893d37ef286102400
+DIST firefox-91.6.0esr-br.xpi 526254 BLAKE2B 95285fb47698acee04af75b4e6a1959b5577e649d2b390a9c8141c7c69c55c9ddcbb2bd9c00af697dc7a5d793bf4d979870731c776820561749e13b4f115cf4a SHA512 0ecedcc9e24c7fed6cdd334464924015871676a944ad71d77a88547e6a3c6def9fc8ec991cf3d79e777c82e3c0b5ed72287fa03f5b10442596c39d24bb3d1614
+DIST firefox-91.6.0esr-bs.xpi 463554 BLAKE2B 48af008162b55a2cdb24cc96f37b07935145090b0601bc51c135dae2fda3959fa4f7b494e910eb5955bcfb43a48dd8056c708b33ba148467de8898697f725ad6 SHA512 d80253532b207b6adb2873037d13d2b2d9ea4560d9a42a3e937c7ea377059706a86bf99dc22c56e46fee5b7e1163217f569cb87f4305f41639f7b21ed8f56ee6
+DIST firefox-91.6.0esr-ca-valencia.xpi 529401 BLAKE2B e309a2f9e1c4984d95a5a4f4603e472930af291946dfb364c2400aa2b5d079c90673aad97c0849354f9482bfccf890336e77cb809caf976a77c4ccd738becdd4 SHA512 3ecdc95dcdc367d77f0698baa189a6336b960a054c97d585d6c61f97b6ee01c93ed90dee3bf95f6f30758de122afd64dc194d346767e821b6f22a0077498c12f
+DIST firefox-91.6.0esr-ca.xpi 532477 BLAKE2B 692755ef6d9cfe13f1603e87511ea8b6eab5146ed22ac56b3e51e65e9b5a8c38c6d488144c2f9ba96e7ea0f4f420e0b4d682b4abdb960a3b91230641e07b40f3 SHA512 94181bb27e8ef20ea57e24b807e1ee5d0a1c0c5d1abe23c04ad07e7247c6266d348438f36ddc60504b58b855fb549d2dcbc1689be26448730c36962229290012
+DIST firefox-91.6.0esr-cak.xpi 552604 BLAKE2B 358e06e11a7175899e34fc594de865fe4bf1639aebe572551f1472d8f5fd39046d3d15f2dfda082c6f60d4f35dca06b746ad3da9abbc1f4283ef6f8247d92034 SHA512 df1caad1db4c3449ade9ddb53f6e047a5e206159ed0b2089d851264d1f688373b616b7a3aa5d3d25f49db4a99cd0963af1a3d863ea868d5f637fb8f2c711230b
+DIST firefox-91.6.0esr-cs.xpi 563177 BLAKE2B f57550485f44ddc2bd67a9ff46164a2180fe62823f9a4f72fb5de6b62589edf2927d2b9be319d66dac8c3aeb4359903df4c375ec91c811dcaaa523aea06e6b9a SHA512 ca5186b1b3ce09340238da254e78be8943efd017e29110b4d87ad3bb810539bb3832509d2722f304c2f12563d6f42f051fe37d44af0dbcadbca0d3b58794de62
+DIST firefox-91.6.0esr-cy.xpi 542228 BLAKE2B b7b269ce6de516b8570a453bac618d8e7a2f00f46e37f07c0a141e1ecd6741ec0786db37de895477dfd79fdf7811b3145f08f117ad85590a16bc99d747bb38d8 SHA512 6a6e953e171a2cb1ac6c11d076c849dd5b767a1ece6bc1da3842a4cb89fedbd6eb8be1dd0663e8ef966fc315dfce1d12dddcb9b5011ce7af3d2b1a2dd4df7050
+DIST firefox-91.6.0esr-da.xpi 534159 BLAKE2B 5820b3c605d4bbcbaab002e4e8edc7a3b7b42387b5296ad94107dc7f36e3648b8cff31842226c2712867d4efae55ef94dafe00a6460b46056aa1a632a8fcd844 SHA512 32cfc62ebd1624cd64a562b1065204e47e505a426703ad482100496057c70a039bc07051fec41840412979c289b0796d8d0f9af450099572203604959def343c
+DIST firefox-91.6.0esr-de.xpi 553594 BLAKE2B 89f189523bade78085e6998f5e936ed7024124bf6d961a98c9dd2325bb98866aad00473ec14cae2e661ad2d5c9cb742c1ef02ed58aecefa6e33dc99633d936ea SHA512 74178e91979c36c33c6aa6312511dcf5c60a7727c5f5d2993d8acc34d45ded472495ab35c1abc077b864e246bc39864c090a46a1ef7888820cef40649adcb1fc
+DIST firefox-91.6.0esr-dsb.xpi 566481 BLAKE2B 4f5921a00709b69e7d2036967d5bd9be10f28f5ca98c0aae07365e299c921c901fdc5bbeafc393805ab5b3b47f0dee011502a8c4b8c8a89ce4a1baec06689bb0 SHA512 0dd410f6fbac05ac471cf5f24f7e4c3483554252455d979a065242307d3b0e7948daf16e25674728e92da547578627460d23fbc5b8b95760444a6bd7307a0ae9
+DIST firefox-91.6.0esr-el.xpi 639146 BLAKE2B 1bab3dd333d64ad7bd2d143997d10e6c1e79eba2fe80fc066206257887e96b890f4db9f29bd9682f406c53dd9239a4ef25a79875451936a8596bb262df3b62fb SHA512 1b8910a16175da11e98779e3e5f35009dd1f691efef18086f86b20dee292cd50d72372eeab51dda4f465da6e9b66e1784b3b4343b8bb292b43fb82f24bf57b98
+DIST firefox-91.6.0esr-en-CA.xpi 509586 BLAKE2B 0c2227ee24a1ca5232a3e7e0205072f32e45190a41073eade908c67ff181facdaa97fd52d33ebf45df112cebf1badb50ee06ba992a2a593a92e5271288a0edd4 SHA512 eb0941e3a44ee7d08705abcb364944cf785392dd4b6fc0ffd00426ea28029beabb355b3dc3670ba154dd486fe04f463a147f94cf3092ef26646f316b53000c59
+DIST firefox-91.6.0esr-en-GB.xpi 510584 BLAKE2B fcbd7c7b15ad562d5382d98c93d6005b4c9b474a07428fdb5e0d76e5eff58964a1bebe08a8dbd99d04ab96568593278e48af69ca094e051f6ec51c5c23445569 SHA512 a8aed210f5f324a146f4c4a78ce6228281eb2a5c475a2c88fe921b037cc9ccf4557998c8c396aae59f9e630135f78da610a1ec392203597fef84480ad5fbe4db
+DIST firefox-91.6.0esr-eo.xpi 534798 BLAKE2B 40de4d9723874612fa85a8a85d77762e5b93b464a32321c45ddceee6219c3e0cbf07fd09374081fe778d73eb6173ee31ed69d4730a5158dd9ac4c28a6e1e2315 SHA512 326ee63fbbb0a4035bf826665f9c4d831424148f3e2aa57eb8601122745eaa69552dddcbae2c089e2049261ad30b57f4ad69aef2f8495194d3ce6d5ca887c7e7
+DIST firefox-91.6.0esr-es-AR.xpi 546689 BLAKE2B bccb21ad46a7c75b655de0fac1dd051c036a22436c90707a27b5db894401f929260d27bfee4e2755f984eaa9d63d0497c053e0163fe66ef911d6ceb8e15bd856 SHA512 5a0f1f503e06ec3080ea14f1c23036dd9d3eb0b24a0f3a442a30ad53125b7a660a9c5d901b12f08f03009597c7c36f836d0ba7fe7c38bb1ae137170c374ca65c
+DIST firefox-91.6.0esr-es-CL.xpi 546383 BLAKE2B 8c64b17732df0034d722e0b2cfb937b173040159640bc919af0ff6ffde286a4e75cbec9534d1f4f0544410d6bb3bce16479a5b6272537163d234abad44a65d00 SHA512 b6befdd1c661901921d559458f719780ee8842867541dc71b3285798614de9ff1762ddb8af0e2aee57835480e7b84ddfb197a126da39743b5adb7225bbaa8979
+DIST firefox-91.6.0esr-es-ES.xpi 537072 BLAKE2B a78482bea581afd042312934e9fa226f1f929b097bbe20aaabc7c57fb47c2b3fe1f0af5eebc9e22feaffc2a97a86e6bb7043a5cc6c2be30af5ab14227b01856e SHA512 cb75f9a4a7788dde9ee6ca4863edaea0b17126e800829b867a0def5fe04c91f720266499e0a50bd23e7679926a9ceea33e5086b65e14e9fe8c95bf377b84e1fc
+DIST firefox-91.6.0esr-es-MX.xpi 549994 BLAKE2B cb0179f634e71e02f2420dd79abf144b73aebd1d2e04f40cfcad4f37574536ac3a193ac3dae5de9296706b1913e9fc32699de56406c403cd5e4cacb89d09e0eb SHA512 41c7f88f2720346c06edb89650e2d807c63e46ad57e564e61396007c7dc6ff11de4d7c57a3b5e9a5084c756dbe1ffea00105f99e2c549b2d767c5a9f2726d508
+DIST firefox-91.6.0esr-et.xpi 506677 BLAKE2B 66479dbd830da5e22e4e12f1c27987cda33f6c463044fd47604e4a16088340360e3920f0d0f42adcb9a7cfd98d4bfa8d3a87f02343da64b73be878d5d538b03a SHA512 97c47b9d0c28eba37467e67843891b4c9b0a2f738ce8a6038358b10ff9e693670f0e5f2aa6bf18750ab92efd7373bd8bb57e1af41b3e72c9ea46b75a7d8431f3
+DIST firefox-91.6.0esr-eu.xpi 536335 BLAKE2B b0788fe1c08f2ddc2fc86994983b7f1ce8dbd593db37a6b39291f32f762e352f09ddd2f92669ec297b1944f07b75435b459cf78623e750d14c6bea1c4d57837e SHA512 c462cfe0e9efa9ab0c31a370c821f186684627737dcc033973876caaa98313675503c28b80f98bba9863df25e3c78f4e4e9a27a555658fcb5c8f4fb665018098
+DIST firefox-91.6.0esr-fa.xpi 559372 BLAKE2B c3dc062f9d50ea24e3be971f9ade75a53dce58e856ce4ef13f223b364f33607131dbea7e7314059136825ca0abe9f12170d214168c69202acb4701b3e997c96c SHA512 077c6ca9d7bacd2d3e970b479f2c43604011327c6933470c9d06acbc606f498a0d82b960b672d073fe673d840dd40809059340b7652a22d817f5cf39983c0984
+DIST firefox-91.6.0esr-ff.xpi 471866 BLAKE2B 42879836a296dc7b65068e00f070b1047f9555bde8fdd356e25450739d9476cc5f738989e15be8553e245b520ebb36c2621f09c9f37e5f0b44107d956cbf4d1c SHA512 915882bf44f47569391afbd8208016a0c6beb887fc92030a538a1b31b8d6c22ae6a3d04c4c28718ab4101665c07dba60bbd1d86db63331d7862cdea533299018
+DIST firefox-91.6.0esr-fi.xpi 531489 BLAKE2B e8b4a29d3df28803d907b5ba58c4ba7d17867e2aa80da52b610146eb5da83503aa120d7775d2f112d2167ca91c1d13e7b48edd7a2464a4b03ed9f1e79a3eca17 SHA512 df878005baed0ed8d5f9c318cfabbd395911f507c4b41929d41397c71427242f5294ef6082ae044b479e4c15d424275fc5060cbbba01065431b39a88cc3f8472
+DIST firefox-91.6.0esr-fr.xpi 557617 BLAKE2B a83b5d48dc6c30d74c566c8b54592967ca6f5dd297ff3935aa24736813d51594abc270d3ed41b5e2cffc36a66ccfc9e2da9fda64e641f70a7e6f72ec3eb8b083 SHA512 a60576d8d506a25bcfa5246d29143da938b1fc7ab17e6819c3975ac731058d5323d76fc45f836bac44c964d9423acb87962c1f94cafa12f7f419b0413657035c
+DIST firefox-91.6.0esr-fy-NL.xpi 543302 BLAKE2B ad680dfee889b5fd8051634ef7bfe8ce0a7fe3557a046314e95a75abaa9856882cb535699ea5b93e99ca2628cf0f5a28afe384938457d3c0d56b930ab904ca8f SHA512 9ae6ccf235209507ea5848518d469d6e017a140e03d6ceb71764fa1d77c6a7075f24deb881e5cb196c015ddc1b664a11a5f2a02f6bdd54be2c033f43304bb224
+DIST firefox-91.6.0esr-ga-IE.xpi 459832 BLAKE2B b75dfc3fc520c9a66c1a328c14fcaec537852acdb9c7fc242f18412d817bae623516538d74be65c9ed7ab99810bc09374b32eeb14db4ce9478cf7147c5e87df8 SHA512 6200dffb91bb47113ed1fe64ffb4eaa4d297952418387bad988c69b01e277c16909c77ad7c9f4d74a92586296e87933ece5bd49f06cb6057b5e7ad9df20de991
+DIST firefox-91.6.0esr-gd.xpi 530850 BLAKE2B cc99e4a88643d13a1c071496dde2ebdffeddd3b895f07277a128b21695b2c61e18d5fa38cab5b76712a6c721c28d5bbccbb91c02416d45f22d36c26225300a47 SHA512 cf3a47eaec4d4ad9ec6229414dcd957b01b5e287f15a75dfe1c8bcee13a131a15ca9e740dd15a9e2fef2ef4f193181135407088a7665a766787b4801660ab910
+DIST firefox-91.6.0esr-gl.xpi 541296 BLAKE2B 740c1070db79d1e6bb2069c97e85ae43df6297f86c455484907e06c4c137ac356f9890dda101f0188b257f2333ed4f5595548817aae8c01ff070487b643768d6 SHA512 d630130ac000c5eb0fd353058537728456539997736fb1109401cb76149ad67dcb4d392b86ff8c30472d867c94636223f0267c266520723e3106f4e1d0896016
+DIST firefox-91.6.0esr-gn.xpi 557604 BLAKE2B 47549a4c600eb2528412ea766bf9053f3de3cc84caf1a03075e6174041928072fc1f7368cdaa33d28c2385294e45bb8bc73ac865a9021062570c9158dc8d2429 SHA512 d396d193c585e684afa2a10c17d649bd8ed284b5ae4d8b98bd044081f7cf78c2ce9605b4a9c3e245113e72ced4c07fda980647fe6e9c33ca3e4b35d5a2ca83f0
+DIST firefox-91.6.0esr-gu-IN.xpi 529547 BLAKE2B 10b1f5524dc12a0a3907c0320dc92bf770dbc9062d44bf303ae7aa7a3311f4d3c9ff79b751d65f5ed18b41e882eba0d5a6d4244c65e1ed571a543734c0173e14 SHA512 86952d325f91051ac05ee189b12d188fe877b4418fa2abb34865dfb38a0cc73c489c7ab42c096556bdccab80912db3cdf9c4d40b307509cb3b5917c064c3537b
+DIST firefox-91.6.0esr-he.xpi 557197 BLAKE2B 604252201e0fab48e109ff64454a088e0fac79152f7617abcf7989e62f4afcce4ad366195a9e02cf1f4aa30789f59f88413b8ff816d9e92e9796d4b752b8c60f SHA512 a274caa7482a821c97aca4aa2d2d4205e2b624d85a2707c364ccbbe8bde88051c3fa6832a805a185bec21f2c820ad4374aada5f813b73cd816099b253645a71e
+DIST firefox-91.6.0esr-hi-IN.xpi 560648 BLAKE2B acec032c3e4101ae0fa70f3e8ae98a46418790cca36ea7ef2c98857d5eca07e91d7dc35aa9c4389b208c78606596cb59ea4b976f038fea06bff16dac48992375 SHA512 6143f9a09eda31847f3a10f5e7b4e6dc072010a70e6c0efa2b95d95cab2cf6762c2b421d5e56bdcaf4981354c502c5a9e0159bd3a8a357543587f61ffde17a03
+DIST firefox-91.6.0esr-hr.xpi 530052 BLAKE2B 541c1e5ef80f1af0534303cd2611b7c15feeb8e6fb32eec80af15a9de6d9f70a8188720ea7450618023cb5cdc621644cf9c1ac3ac4b6ad227c196b6dcf4c8ba2 SHA512 272a6e69b8ceffd4af4231150cbbd621f8223621c009eda7ae20fbbded43bc0b939c2b1766aab25e46e4bc2f25d71bf9a9be2e0025e1dfa9939ce13910fee7e8
+DIST firefox-91.6.0esr-hsb.xpi 562627 BLAKE2B 820a793eb87f99366956e5123acb670e7f7ef7e432daaf70541d9037d3c74b677d9ddefbdda18d3ca98484279161cb8fece19fcb1b1bd70cc5ecc6b12bd7c501 SHA512 694810888e287f821757123d7189b8f8dd077242a770683935803b7206ae96bf4d4a51683b20f469b385c5c3e83593dadc215b87f355808d328b192cfc6ab4c3
+DIST firefox-91.6.0esr-hu.xpi 566074 BLAKE2B 26a89edb7bcb089017ae59899d0b81348d12184b3511f1ef54bc8381ce96d94d728e9ee2600cdf2fb4da4f7ad1386171dfed5bb75be0444f4820ecd3cbf48674 SHA512 749459b66780461b3d87a6511fcb9618774aa8a57624bfba2339d57afe07e14233edd00469f3b82559def60501fa8c2a3ee1b852e46c45f57c54463c0baa508d
+DIST firefox-91.6.0esr-hy-AM.xpi 579762 BLAKE2B d9f71c2afbf5cdd8b80f7101f396de7e2a108461128c2d074218563f0db0220cb6d6bc01de1bfc12bc00598a5784ded480a9542118c40e761e318ed9b1482ce5 SHA512 66f147165cd67f58db78563dcf12acd353aeb78366fe7a721c0899165f85269c68063cbc4d5d071c25c801f600cdc87ac04d98876f7d7c5884667d1f6f7dce42
+DIST firefox-91.6.0esr-ia.xpi 532142 BLAKE2B 5cc49dade1d81284971569f95416cf226b3038b10385be6e05dd6b5de00c0420a4cde78d938cd20c0f434b868de077349a60bb304a7e413dcd9e80f4190b0f73 SHA512 ec49088a150b980fa196d0efae3158a0e0a1508af7e13e7ffb4a6ee723d185e942f1fcfbe5dd621bb7e842d70785e3928055217a80c44384062418863ecbb552
+DIST firefox-91.6.0esr-id.xpi 519826 BLAKE2B 39f2d79df894f4b54a517b72060c92070e416deab787b9202bb3e32f794831c29abf24bc3e59d036ad12f545a5b58dd45a14f1d887bac6e1428de81fadefb275 SHA512 0df35a8aa7a780c652be998a42a0b035aff4028fb905763f6a0340d38a60f2ac232181136b3fbd91eb13ac3830acfb227b48240e465f0e6532b474521b9355d7
+DIST firefox-91.6.0esr-is.xpi 470229 BLAKE2B afeea5d4bc81a03799653ff068cbea55fdc604f3c52621427f5ac1f332160784c8b04315b0faf05853520449e939cf60b87b5996a6b0878ecc8b17d1311de6f3 SHA512 d957bc0fe59b1acc9f401edc8d5fa7237609a7ed7e07062d441c143e53cb678fa9edd97c4627ec3338cfdd1dff831b09fa8e02b6dc935cbb4a32784bf7a70a69
+DIST firefox-91.6.0esr-it.xpi 459076 BLAKE2B 6ca0f1197521ab693b6dacc657fe4d8673400df3d2b529779bc06eacf55275812ff6aa080c2347785f12e350f062136b246195c5c971d23303cb03cffe9eff63 SHA512 fb452f77bd5fdf971c3a497eeb810ebbaed1b19d197c76eeeb7baa40838507e80902128861a423a757793c07940b1f9ee5495ef2af0297d17f924235d9e5fef2
+DIST firefox-91.6.0esr-ja.xpi 588076 BLAKE2B 27050cbec8dfaa0b1e719feaae41744c93c5020657e96a60df403d18e5c6b30ab2c8701ce6767e33647753aaa5b202dab708a2d42920d9bb0f9cc8df88c97a37 SHA512 7fdefb117b42682b659766a55cc5e894b5776bb5ce23f360a7309877f22eb5301a0b75d93f718040acf3fdf9a5b2a0c90de215a5809547306b737ede875564d7
+DIST firefox-91.6.0esr-ka.xpi 592244 BLAKE2B ffbc87ef2084eac30fbfdd54aff24124317f1568b212c4a2c0cdb2b63c458e5316b6abad83f282f18cdeca3472c4180266e9cf889f0ab6c960d4af9794e54b88 SHA512 3bb8959edeb16f490241d7eec919846ad61a0a3aaa264ffcef9db214e68c3e205e261e8c8d4ec61107a639edaf5392ef7ffa2748c4d663dad9941076693ee76b
+DIST firefox-91.6.0esr-kab.xpi 545021 BLAKE2B c1833c05c77988c93bc3f74b4edb5ee632fe699458deae2932ea2ba61ea0eb34c2120df9fba1f0b6337de81d66fcb970b26da37eefe8c5d8819ce0a2b5d8f1bf SHA512 acfdda7aa473c1b26dfdf1af83e781cac11f763ae28980b4528139d0a388a3bfcb65b1c6a3aea4d3424498ff3950cc2416b1563298b0168011dc57c6cd5bceae
+DIST firefox-91.6.0esr-kk.xpi 605554 BLAKE2B 86bee2a0333cbbe5c5acf6baac1703527773fb925f0ab448d89b6ee165ff867452f80dd6678578310b1846b5715ad64f9f24075305b98f6235b59c37dc3a4c8e SHA512 13bed5231a92c18042ea869f724b9f826589e2d3befc2cafaab904dffe5a7c7ac005193330bec995e4b8471ca84d5dcbf7edf3a88cf3b1790357b0603f163250
+DIST firefox-91.6.0esr-km.xpi 533114 BLAKE2B 05b5b121f4e8b9358732d79cdad32e24cebe0a55c263c11e4c600b2f10bbaabbd2fb2dc91da989546b1473c7017abf417dd2a195f6025b2867c8983dfbe728f5 SHA512 d54e08db12476b68f5905181ff8bd1704627121f03315a5e6b23c8dfb5f68914fe8ef7deffb0048c181bd2700e51bdee775bcc952a7d0b88d2aa0ec96ada3de9
+DIST firefox-91.6.0esr-kn.xpi 498976 BLAKE2B 2060ed861d8af370eb0907ef8cf032f6c7186bae88a10baa5a3ce77ff888d66bea0049d0274f2454e4d4f0fb5b8c4260501aa3c64f6fbc21ac88a0b87852e284 SHA512 c114ea6c13e302a9669e45d52f606fe548069857d591738cbdd4e09a6d95fda3ee3e22ee109758cfddd195c9450df918b77321d4ceec49fde7f7ff9c7784eff0
+DIST firefox-91.6.0esr-ko.xpi 579069 BLAKE2B 48df2f1bc2cf6152cb5c299e39c26204f6d2b88a744e5517986db0410f423341c0813b0b695b19562940d39ce70a62e355db6cd7c02890bac229885e02fe14bd SHA512 7d777c4470f7b5ba68c7be2554b949699a4315fc79cc2d2f7b90a14649f6a00a55f37dfe22565297d58e5098ef4a93f1a0b3d44699a73f46214f30470303a66c
+DIST firefox-91.6.0esr-lij.xpi 470174 BLAKE2B 467759c7fdccd9f3f4c720d07b2ccfbf4a70214b4f6c40fc15f0f78ad75db2950cdbac8818958b5a64f2e1c06f3d4217e817740b7dc56a74f72aa3610e80211c SHA512 ec7fb78000d9b625d677901501e8a12636fba74cef19f6a1327130a7511667276ac7e27895dec8ff001ea13597f8ce6372846a0db33c7b8306886b5870439f9c
+DIST firefox-91.6.0esr-lt.xpi 560114 BLAKE2B feb3fdb7779ec9986decd5cafa212fea7aefd1ecbcc2c3d175c594b02d21c8d463b1f801789c73bd08325054b593a171377a84b4f0e9f5c1d833faaa60df9f3c SHA512 1ca4b5cd5c297310318049a374585b952d6411ab0cbfc6d4537f291187d9e0c0d5d10dc1162454866c86ffb5cbf9fdcf8a687592fd8ce7e9bd71a5e31d852d50
+DIST firefox-91.6.0esr-lv.xpi 462464 BLAKE2B 8f7a08ca215156aeacfc224ca6280caf3fdf7f9f51326c2e06d11ea2f9603a446e38fa566446d5eeb45c47fadc932340770f7c11e29ff43cbbdc05c18b3a04c1 SHA512 1f76e5b577ea7a12d39478c51cbfb5e4345c7b22e29442f47cefa1c3421c003e2f2a2bd71848bd9ee7a3b1d10a91b4ac8fe35a40d7423bce498b5dde49aa49d6
+DIST firefox-91.6.0esr-mk.xpi 465343 BLAKE2B 5f1f5360b6631d31dedb9e07e27c1cb5f12fb0a3a1ebcb7c17ccd959e7785f9b7ae0a537035a9c8c409f5d5dc27552a3579d791e83c0846f078703f8a9c7eec6 SHA512 ac7e6a05496595294412c94cf769d904fecd35a6b15fa9da3d6da9f0e5c8f62bc680d1ae7469302817d3f9560fcc0d6297c973addc3275b955a693efb3bd0df8
+DIST firefox-91.6.0esr-mr.xpi 532123 BLAKE2B 77705ff51c2514a5da7045b292d3e7b06433ba33c340c84c7c6da565bcf81d8a12b3329d7e6a025db562b1d7088ccfc4ab5d8df8603c0c4fc4b45ded22b70fd0 SHA512 4df54f4a5e1f039c7e5c7bf797b4af09e09b375fd4b5adca890c272255d080b7247d45a04402c7ef5527b71a8dcb5631237b9cb340cd6b1d16a27bef87f4e7a7
+DIST firefox-91.6.0esr-ms.xpi 447339 BLAKE2B 504487240c42b8fd57066279a68ccc4cf4324138731ffa46d0886722a2cbc41f4500ca4a1d624d6ad8f3ccd8c8e1a0351ee4aff9587751e6e8dcedb8aa924936 SHA512 9867b9c0c469d3c44fa75f451b1284f1a293e9565d52598115be598d036c67bbad8971e6bf13762a696ececb5adf780c5f71c04299f14493a587daeb78da2fb5
+DIST firefox-91.6.0esr-my.xpi 516302 BLAKE2B f0a32fc95e65ee2e7c37e1f652f21ffcbb3951fadd575311b3487804640602b88779710192552fd76abf4d7e62ffd3fae56024304d32ecda0eda45f8f44efaa2 SHA512 6207170b194c1fe95c55c4782172447bf4d9ec198bc187f2dfc8e2f49a046f77bcdbc786d04069059adff4b7fa9bf41151c848498cdd54ebb3de0afe2e185d0c
+DIST firefox-91.6.0esr-nb-NO.xpi 529425 BLAKE2B c1cb486918a7b075d86f5b5f0a8454364354b0a0b9d446e042a753d1a53d980488b2826b265790f0e1961d9714191ad6f67485efa9665282db3928292b2f28d9 SHA512 2a7b2f13f7531842cdec618cad60a67f78f277df07b3cf2ecb658fa893542c12b2cb57817b34a6516aff990fd394e6bdb3e255463d1988c7029070f28168ca82
+DIST firefox-91.6.0esr-ne-NP.xpi 485213 BLAKE2B 8caf550968c5a4f7f67028219391dd173ecf04087115bbd20a72960774ededb2a99c0346a4685ffe5a2a83a2d53432f99009faac3775b799997a2820f8782ec1 SHA512 81266aa479d8cb5f8f0484faf72aff202d5be0bc9610ec44ece8e15715211c854aa52f16d4cd662c774fc27b9a8a1363a54ab7176cffb962726180e7cfc434fa
+DIST firefox-91.6.0esr-nl.xpi 537388 BLAKE2B 4199fdbb758a2cf35239fd182273c09e8c74f2c16c77e33347bb2d892458e60ab3b9410abbfbf160920f9603bf113b63f132577eb41c109385facacb616696c9 SHA512 c65f5e1412bdfe712a2e81b79449349b0ae3c3b41923fd88ef676efcfe109ad026dd47d1ba152bb8d9ff49fb21085aa95792ffd17a560d0a55129acf20a5b284
+DIST firefox-91.6.0esr-nn-NO.xpi 531683 BLAKE2B ffc3b2170669dc8018538e63fa5626ec02c3b2d360cac7139fd72f37ddeda4d8bd2f3004fe846a58b5bf06f6ed69729f0f7b121321cf7f044ed0b754a4bac173 SHA512 115253ba5abab032f034141255fff1a1b271702306bf03def0283d17e04d85f3701627cd659d9d3bfdc2553a9257cd568547061a97c135a986c75246b755a851
+DIST firefox-91.6.0esr-oc.xpi 552953 BLAKE2B c0e5c57cbf71d05605181b7a0382992ce373c673fe6cf7c3af312893e1c6517a0b42819cba4bbaf5fd8b5aaed16aef98f342cfedb1e54be53055dae798023dfc SHA512 4817a933357e15249e913bd32303b433d77dec82ea11797abe3d0deff5c0adeb02037aab46928ad33c5f029c93d6f94b20198fb7dd9c9991aace1742474b772b
+DIST firefox-91.6.0esr-pa-IN.xpi 595982 BLAKE2B 9421d43593f545728d0af5f677b86bb9ba890519fdc59f0d007a5de091820cb6e96a93bc34c75ed64e33cc64f3c21d2ff7458f090ee67a20b276b59504ab8b06 SHA512 9e14212177893ea37b682098b915672d5d070bc1baa832d2f1298d9d7eb6c70293fdc4c49aae6748c0c1dbd5d1dac26f670f581d810af29646a527326a17bc00
+DIST firefox-91.6.0esr-pl.xpi 555620 BLAKE2B 3dd2b0150b0ff4ace83c6d8e53ba6cd4ca8d42dd66f1399d91114489c49cb1972d8f16c50355e8138779aaf3f76f0ee93f843c8d466176cd668f72e5bcbef243 SHA512 34d3d6514fbc200780147fb711331c1064feab9f30213487ca374ace91f58f5ed6405502660f6b79bf199e3bd8c5bc34ab2b6e3917881812d9c887589a6a5475
+DIST firefox-91.6.0esr-pt-BR.xpi 542612 BLAKE2B b84dc6b8838b3dc3bc73ba331a10c1e9d1207a20275be9c08183f03ff5f55d6b2c4cebcd61c0733356c153460491b740195a44f96e98d20289bf71e82491ce08 SHA512 9b214d6b6244f7d637204a1be38ea1e42b28e15ef334b545f06e8d24db763d5b15111b391cd64d46c8f49a5ce43c115e4fa81f3e53ea27e472bff51073975357
+DIST firefox-91.6.0esr-pt-PT.xpi 546349 BLAKE2B 77c9c89740818adc3832323a33ee03740ee88ee48fc2f4753020ce2cc8bbe44549ba1b02b8981f2a4a7fcfc36f7c30201dd2eb6a9d5df0f4cc7dd7681beddb32 SHA512 d16eb52dff9529a79ea47d4f0af412eb9a62c6d2949d4eed19a41570b85b4024e262d93e51cd6ac596383dab0f3508744fc861e511ad6186161729d400f140a4
+DIST firefox-91.6.0esr-rm.xpi 537359 BLAKE2B f491216e0052210c0f2714f5ee7e1de49fdc24dfa41b72ee3e38055d450c99e00d86b572039763e8788f6c6191bc4f83a5d9a2d8c44b9b1e04824c1dd08c76c0 SHA512 c2ae9c3e8b2aafb63e955b1958d1389831234f463ceb00b947b4a34f413b62cc5eeecdf6568389d213cdeebf226335788ff7da193652d4fb58a0b110f1864bf2
+DIST firefox-91.6.0esr-ro.xpi 529321 BLAKE2B 0db0cb45a9a9cfd1cd608e7942447bb57c99637e559de485b1c275a3331356530f821f58cb7c49b76f3212b49b0cfc36eaef87540f03e526c789d2c05ccac30b SHA512 0ec67b699681a9a8c2c453398a0a989a028138591c984fbc5049119fca81d90aab00c1f4ab0b96ca97dd911a9c48dab616af872d916ef46b95e223135d2ad555
+DIST firefox-91.6.0esr-ru.xpi 627115 BLAKE2B c41cf5181f20472de24b0fe79040ec9eb1c85a15088eb868c2d9f9065dd2493621343ee87267bf8807c4cc314d8725f6878f98301c748a3cd7b8df78b019cd8f SHA512 d9e827f9b6ea0f4879a8a5f2a7d309ae331e3f016c118f1e5d8989e48ba4d16704bbbb30fde9da24497ec7e3bc57a207201b7490a6ec58177d81e690a6a7597f
+DIST firefox-91.6.0esr-sco.xpi 504856 BLAKE2B 50ed5a9f4ce982ff4306a1b41910f0213429598a19210ead50a9bc12e2673f464ba72fb4dd98f52d13fc28bdd7331597780e80738fefaf4b8dacad8f6dea271c SHA512 a0b9178ddbcc0c22f7862ef12e5707a8a662f82eff8dff7a0e719bd21bef87467ad6a4e514c6fce0837a20c90961b9711667ba0d09aaf8bb6eadc9212913afe9
+DIST firefox-91.6.0esr-si.xpi 487960 BLAKE2B 9b859977c594b4d2baac5b09ca379821ce6dddac6d6358fa7c0794b120662088f11d536097739d9bc0eaf84f3150baf188d1361a55e0293e79b0dc04f67cf2ae SHA512 4b86a50c106eabeaeeca14753110107ba7b166f5662abdb35f9bc898f556b03c8953a71409ac08a97a0a927c54288643926b0f887b91a1d276ecbe4782e8590d
+DIST firefox-91.6.0esr-sk.xpi 566484 BLAKE2B d89a315891a17d220f0593c66e42953474ea7f7949a46927094cc4b6b158bf46b77188b786200e256cccff79bd582ba1546fe99a7ce95c1ead320e97e09189d8 SHA512 7a85c9bd3db744e927ba184f17e74e865491f8313e52bb83806c5e069f476c3d4313e8ca85148fbfc7799298d9f656c96b35a4fb5e33392a215acc292fa394ab
+DIST firefox-91.6.0esr-sl.xpi 538009 BLAKE2B c1b5b063bd3ab42b63cb128e4c0156a1bd2c09276c1cb972a3b551501bcd964292f7fa992cad58e9849ec97ac3648ed22b2f3ce415c8f3f686d6858e97c76c20 SHA512 7a953bd6790d58670565aaaa7f9ac5e7a70c01bfe391b8450110c5e97744832cb73a08b66e779d9fbf6127e7f438a79ffcd9f9a9a5e667e27f93bcf4deb8f00d
+DIST firefox-91.6.0esr-son.xpi 425987 BLAKE2B 502e763a89dcddf1b24f054eee3f5a6c9ff5ae59ed50b30d1312036b8b5e5a8ab295b65fc169e9fdfba01c384e22825a3e1c059f5cf394a63204225a0b103f04 SHA512 11bcad664d4da210ada2ea2a5354ea96f0afb3b7ebd1b23267c9a44a3fc2f87ddbd0bbc446317b6dee95b436990c4f4d4369b26f7c221b286167128efb906a90
+DIST firefox-91.6.0esr-sq.xpi 555996 BLAKE2B a1ff346e842d17c1db7c194a891be6d7c97ac597e7ae2c8b310083156fd098cca235bf9c24a2fd20775007039b9aa0ad26f126216393e9178cd5d9ea5b1c0e3e SHA512 adda5a6109faa9703bbbd9ad0cc5289679bb48eefddbe249436820de2b669793aaa38640beff3fdf81a2f5229adb137a135c7b8f6ba5d116f3a4a3741e66bdaf
+DIST firefox-91.6.0esr-sr.xpi 586076 BLAKE2B f517567fdf9cd7386e498d204748d089e45e50e1d8d12efb9cbe370500ef7078b690fe872d89718f7d30b67ba42aa4fb2a0252833707d2a2f5e50c55cd6edff5 SHA512 3faea9ffb6dcea84d2a348ac87dd48a53151b5fdd9dccaa607c3cf80c26e7a294be73ea561cc1cebc9fc0a6356f66d9332077188db243c9153118381b6c9d19c
+DIST firefox-91.6.0esr-sv-SE.xpi 539956 BLAKE2B 42ee1235322c1b6dab75b77e113c5472d31ef9d9c8d437afeb61e3da6fe62bf498a9575ab755fe20ed841eb2d39da8417a044f592b1d85e10af56944d5646116 SHA512 c3e9abb4ea5ee49d5ee6d60a452fb9a2d014d57dc1be544d433cca998f3602d66367486b2c12fe4ed331d686f427f8aeb1f7d6ae43d019c063d64d17b5569261
+DIST firefox-91.6.0esr-szl.xpi 509822 BLAKE2B b0107d58a9671a026cdb8b6c326f3114e20f40d779a2f0ef89dc4d5c63b2107f0b44a3b972f205655f6885210491d1e1a201132e3aba3e007d91b24b8f2272ad SHA512 caa73177467c0339cad2bf6d77eb41b8ffaba913b2fda8508263f1fc8a84cda3d61ab324fa31ea53ba3459d66aacbb2b2fdd44f27cb67d1a080e74b89b4a9cd9
+DIST firefox-91.6.0esr-ta.xpi 513807 BLAKE2B aee33be417b769c97c91942f2b210ddf787d5379f39789b18d1d66a1c630683e274e736582cc0a7a98c0b8936db778e0460539f8a1bd001f656fccecd27843c4 SHA512 3e99afe3913e6f359c4c2c9de41eba16ba26ebc4e6c049675cf495209fb48f45727c12508a6282b18316be2c1d9b33ec9e07c4d7b45926de501f2efa8bc086d3
+DIST firefox-91.6.0esr-te.xpi 549964 BLAKE2B d0754ef17ec722750d248ed9581f619e6b7ec7204f971403855c8569a86dfdddb3011cc4cc13c9b189bbb811d8b616318a1d34d05179ebd84c8288cee5c5f9c1 SHA512 5342e6fe1ff887c0be819353671284d1eed06cb756b7c3d7be542976e9bb6eb91d765ab3228c222127e7d27399b1836ecf9f90c48388fc8c2731b1601dc4fa8a
+DIST firefox-91.6.0esr-th.xpi 607073 BLAKE2B 5e8cdf6ad619d7abef8a35b23b0424f1af9adb8057971eb6c328c103a35f4167522ffdf27ad3d5d42d353c663f5fca6400685e006d5ac28368bdfbb7a379feea SHA512 6b0bb6e4897e4605273928437ae702d26ddfd06351fa39d7f7bc368a4ca5d4dd6ce04563866c9aba813005044fb8d57722909c58d781bd240da671e8b7d78652
+DIST firefox-91.6.0esr-tl.xpi 516126 BLAKE2B 74d9ecd964ddd729c1a4264eee3a859977219195b030770e112c5d714b669b104889274ddaa11f96676b7a845e21c4d318d0cfcdd317c7a40a8441fa7e465ef9 SHA512 36bbd4f497bea11a8bfae4b696a30d3fcddf0a89db8a74a3827fbc0fed9ce777d12b9ddf5f11de153307816229f94d79cd3174975ac2a4fac78df2e7a1fd8821
+DIST firefox-91.6.0esr-tr.xpi 553670 BLAKE2B b884fcb83c1f454394f8e5c1724c3ea8ade7a6962bd7427236ad0c7781f4d20faeda8afc2fed125091069429da4ac45e7ca5d9f01be789e9bb0db7ef7f9615e1 SHA512 f8f3c31380a093d389ae5cb0a7fb2ea3877cd13878973f86cda787e3d58035f4c1ea6aaf1774899f3bf69a6d27dc7c8dc86fd5ab8159b1efcfb1e861d5232f66
+DIST firefox-91.6.0esr-trs.xpi 491087 BLAKE2B b84f6e0fb279acbe37ad7a2c671ad409778fbf7360c6a5270eb84c823172e206cce38817d43d8d47305721d8519442480a57e286cb094ad48a2b0eb702c2d8ad SHA512 1175bf2baf43f8768b54b501032f4fbb3f56e93e5f9d05b9b859e1eda6dcf8dc3e153f17ec3d31610de902f23d43898641417d1e8e2559ea34964d40b57e8eb2
+DIST firefox-91.6.0esr-uk.xpi 620502 BLAKE2B bd3b9a21375c94cf7b5f8e9cbf250612ff9dc2bb662791f2dfd2d3abfd8ed8d525a30226817e0b875015091640f94352e3e4130c4876754ce20fdb2a77126450 SHA512 8a905f243b38672e9e12a287a4081f37d826e2f0bf274dcfde9b6f21e1a2a2ab3624d3ce6b3dd2a764c03cbddd3d609475c1514a20e191f75adcc8b7e9256d06
+DIST firefox-91.6.0esr-ur.xpi 557316 BLAKE2B 3095918aefc05c8c43b1cd595428f1e0e541d8c2b2a201b19ac91edb8bdc78be29592cede212fb26931341a92fcadb45398b0507f301fdb69ac66ff290c8f051 SHA512 05297f948b035c3c565daf39ed2b3d4576bed31dd035d66b541b87f155b310e2142410aa910a6c5beb05a7fbd4d78da103db1ae01f03de5f5bb80bfc0589939d
+DIST firefox-91.6.0esr-uz.xpi 466861 BLAKE2B 3998495cb5d93ecdfe1ffd7e726befceb70fd57a7bc9fd99dc62604146351c8308ce4f1ef6555387d55d5b4285b2a07fecc41e317081135bb2cd7b92eea14980 SHA512 7744e59eed7465a6074e6b8785146e427ea82ee10f37301dc1aecf0fd9eb6f6475f7f3243413350975ea99946944762805106ddc8e3077d3f136b344cdcc6179
+DIST firefox-91.6.0esr-vi.xpi 573490 BLAKE2B fd1a3db78b8ce5bb93e83a789affe722570206a29b1b7da60b0ffe0b4323d4b6c0ec5402d857fc90cf5c94ac9d301759ae8ba596391884e600ee493ec2557a03 SHA512 b0fdc313da1eac6aba4b56eb240472d34f9fd03e819ddf4058b442ca90014c473588cb0c63df6286d5b6a10de94abde1b59c0626656a4908af297ddccd91a3f5
+DIST firefox-91.6.0esr-xh.xpi 428179 BLAKE2B 3f3480f844684dc681961e390cdf02cc6fef238a963aa241eb8745f7c8ed483593a9cbfda9019cba40340180027c19d8524ae509564e3e3dc7633f4c4c76e8db SHA512 e43e2b8502a1efd82d658b3d2cd559b5f624dafbbf7b5a327f9689fae0bc4db716e2eb5739890e8eaa18c8ae3c806420872078da8969960e48c515dd90de21f3
+DIST firefox-91.6.0esr-zh-CN.xpi 575379 BLAKE2B 081ca8ec51d6da8357ee7fb4ee1f3f66b7f2084c177a5c2c94d8de06cd2a5399bb4f3d66f4c4ca557c0b5c6df31f520856b13f141757dae2cacb7112fb431429 SHA512 6a770336e06755b77006542151d748a482876b112e91307d98b06585e846a54889ba6957d409b6a68981be419dd1798fb2961d09a638186cc047f5b4536c125c
+DIST firefox-91.6.0esr-zh-TW.xpi 576228 BLAKE2B a04e5857e6ff2707a1000fb554a4e2ee78cb02ea4c158b375872a77e1e938c1f4b9598c576b32f8ba38b96c279708b2885ce6300a566773171d3ee26e4dc687d SHA512 58d462c901bb5a892eb3f6924cf6ce9cd6a6d140b0ec47973981bb731c8e7f98dab1ac3f9d6d59a32d8c00bcdb394f5a3236e346fcc408abb5924198d7d8f9d8
+DIST firefox-91.6.0esr.source.tar.xz 386869628 BLAKE2B d06496790b1421db2e0d9419ad29cc44b53b4140b85efedb8fc16e61c4e2320eb85441fae2af3678cd8f15f04890cb0d156bcc79a324e56eafcf3a61530aefb2 SHA512 3dd1929f93cdd087a93fc3597f32d9005c986b59832954e01a8c2472b179c92ad611eaa73d3fc000a08b838a0b70da73ff5ba82d6009160655ba6894cf04520e
DIST firefox-91esr-patches-04.tar.xz 17460 BLAKE2B 305d8b0bc8a4115a76e459afd8bc7987bdde2e76d4564faf664a92a4c6a95c975ce599c5ddde9bdafc3c37ca5c8758e0ef815364d0ce4dd5fd452ddae73a77eb SHA512 6073b31bb898fe61d72435b11deacb5e93a1744227e4704bb3012e0cb363792f3a965d72e7769c4aae3a25f0c81247b287ce145c81bbd0a87470a5438fede11e
DIST firefox-96-patches-03j.tar.xz 17128 BLAKE2B 1da0bfd0f85ec11f2ca3fbc053f0a11c2c434159b96e832997ad58df95587985a69ac8e3c7930ab212733a8166fac4b74f529c6cb4cb54e5b67380d9f040edc8 SHA512 88c33c2a8a1cdf65b3e7c458bc93465bd1c9aa71327617f234a76e63e9cb3c78bec25f8a171e3240692e3a50997a579593f3f21028fd8402b530ee52c8d886aa
DIST firefox-96.0.3-ach.xpi 452228 BLAKE2B d23eba2f4715d101bf2ecf8dab0c46bc44a80c1090645cfd2a09864293abc6fd2000b8c018f6cf6cb290795c4338ca16252aee8b9cb85ca422016a82ff817d7c SHA512 887f910a26ccf94be836b8f031b21a275b4791d64c33e6a0c0a7786a2961a336ec9bb0d3590003fc9c394e78a1fcfb0d048a4954b39bbc5ac08e04fbe53c501d
diff --git a/www-client/firefox/firefox-91.6.0.ebuild b/www-client/firefox/firefox-91.6.0.ebuild
new file mode 100644
index 000000000000..e99253141e4b
--- /dev/null
+++ b/www-client/firefox/firefox-91.6.0.ebuild
@@ -0,0 +1,1240 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+FIREFOX_PATCHSET="firefox-91esr-patches-04.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!"
+
+ # temp fix for https://bugs.gentoo.org/768543
+ # we can assume that rust 1.{49,50}.0 always uses llvm 11
+ local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }')
+ [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}")
+ [[ -z ${version_rust} ]] && die "Failed to read version from rustc!"
+
+ if ver_test "${version_rust}" -ge "1.49" && ver_test "${version_rust}" -le "1.50" ; then
+ local version_llvm_rust="11"
+ else
+ 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!"
+ fi
+
+ 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
+}