commit:     074f035c1c83bc31e27296d2a77380c9d8d21ba5
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 22 23:27:39 2021 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Thu Jul 22 23:27:39 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=074f035c

www-client/firefox: bump to v90.0.2

Package-Manager: Portage-3.0.21, Repoman-3.0.3
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 www-client/firefox/Manifest              |   97 +++
 www-client/firefox/firefox-90.0.2.ebuild | 1182 ++++++++++++++++++++++++++++++
 2 files changed, 1279 insertions(+)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 7664d9a5286..17e4c9362f8 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -679,4 +679,101 @@ DIST firefox-90.0.1-xh.xpi 430169 BLAKE2B 
0a312479f39d55f26f65dc169cdb781a72a392
 DIST firefox-90.0.1-zh-CN.xpi 587656 BLAKE2B 
56ece7e539135c2002cd52f222aedaed17f7b2c4adccb2001a9595f572b837b3a273e2a5a0124a5b005e695ce476e32ff39c06b2e760eaa1878855e7aaaac3e9
 SHA512 
0ce6b36c395aa9182b882f46e80d7958a478326b7db5d2c18b33ea44a419da7ab2700b3222a2523d16ddd46a31152953ebbf2533ecb26bfda4b693a9ed4ea9ac
 DIST firefox-90.0.1-zh-TW.xpi 588101 BLAKE2B 
e15b3fef7649e09599aedb4e154737bc6bfa819fd0266d81579ae9b34a733db3f232cfdc7c8cc2955dc9a3b12bacdb840ac14f6e081cccae0c8883fbf68aeb4a
 SHA512 
40f1c9d93e73e570bd423101ea07c8b23953d52a641466d7c6376b6875b28ec59bb1f1c2dfa1c6c20e582fb57e74fe354b845f4ca0573eec91ea244fbb6c1434
 DIST firefox-90.0.1.source.tar.xz 378978080 BLAKE2B 
f512781f5ef51cef5f72234c54622602f8f506c03f68ad2436f28b0e3ac9ba6a8bc35f840437c23a6ca989dbace4290d6ac5632c71cfcefeee2267bf4b64ce8c
 SHA512 
9f87c3f3dad33e42a7a9d2161d7f23ff2e7184b2274f9081511c7982957ae9954784bd844a2348ff4744231415aac195d1f12971392db90be0375b4738acb590
+DIST firefox-90.0.2-ach.xpi 467582 BLAKE2B 
eb20fc04a512be8d1eba219f7541af93dda781080337d76bce276a5583bab5db1938bff037a238377250b6810232b77534bbcf835362ee385b4b1bb6aad60067
 SHA512 
2f726bfe18bc7e6aa3cde436e9c142382513a1175269b710449cbf7481dc3d91171d21ca1bc30563901bb35eb31befa3c2aba115ac596951d3d6aeb5b94bd1ed
+DIST firefox-90.0.2-af.xpi 430709 BLAKE2B 
05cc8dde801efd97dfe56d1d102fa48e1b6e62b3e905648007dc488149628ad3eb297445319f0f1b620f2549d7830c16b81c53e06fdff1d43fcc70e815875256
 SHA512 
3865c9e96b66def2e640d747cf73ec97127b58e15e0fa01d5374d2ebe35a91d16a8176b68f4025122af56648415b47d03fe6a4a1e007a64da8a9ff4e1eae8ef8
+DIST firefox-90.0.2-an.xpi 515453 BLAKE2B 
fe5487cceed1fe4f941adf78760cbfa313f58408a5034eb72809e82b3a404e6515222058ae0fe8e7b18807eff8baa72a7ffcfe80798ce4ef9213be7bd52fc2f5
 SHA512 
1958e46092c05ba266896dffa83af98adad83572a31e769219b88a044ae132f2d2625154a20abbe997147188033f4924ef50e678d435aba9fdf0d8a291c89ed8
+DIST firefox-90.0.2-ar.xpi 580224 BLAKE2B 
0ce2771752d9c3e6a2bb4d39b4eb4da5ba9ce4d530b04fe11b7775cc08107a78d3cdee033cd2a564523481cf69954fd07fc6adbcdc56ac0abea192be98fad91e
 SHA512 
eaf2335811cf451dfff085efdd0256a3c72d08c59b1d31dbb08a968d40d5c20d45e590479e10738726bdc597a523c036a2b26bdbf41ee469a6bc3dd3254f0ea2
+DIST firefox-90.0.2-ast.xpi 508002 BLAKE2B 
74158545d969e4181c4a80e3a1a2d9d2dd0e4d358c7846b9c426b25a00fac9d11bf10f8dc39e594ad9fc8395fa0e427d06824e3981a7dd7e59db1bbe4b0930c3
 SHA512 
7a5b98e537ea3a930016884fe13c1bc91ebb6f13267f759aa1c689a80f9e3243eafcbd8de16060bdacd6c59295b6a6fa5ad419cea3328acb20be5fd53f909b5e
+DIST firefox-90.0.2-az.xpi 503461 BLAKE2B 
15c7e6b13ab47639c611df6c51ebdddc2a365b6f0ff0e93285e17f9de8b85f91d028467c3f80ffab4a1ba0e28d8f16543db994b5b6970c5a22a8d4e36713a6a3
 SHA512 
18f759e63ad51e9719b3e5f4695f8e592360e612835e9f9ea5cfc616bbe07fd46bf110f881b42663d0e2384f12d34ad3a9207aa62247e582b1cfc62065205210
+DIST firefox-90.0.2-be.xpi 637220 BLAKE2B 
1e10160eeef6b14da9431ffbdb6b94b244477d23f9b38ecec6dc8a40a188461624cf5fe9395f93c41cb2701eb2e18367db1ee991debdf3927fb44db33631cb31
 SHA512 
c9eeece43756e020e39908ce1d99f238c3d581cfa66b9accf8ad23fc0691d461b976ffe7027e29cc21914a07c9b009c19d5a7d17013b70739d5cb13dfe20ae8a
+DIST firefox-90.0.2-bg.xpi 590496 BLAKE2B 
df82040f0991b69549e5983a6d3988bd71bee2aa367bfa2552d571cd1702e555ba0c488aed195f16541eff54a4b714e3d54ef6c99da573d451a69af44967ac85
 SHA512 
0429124d8eff17ba6cdb5b1f3b8107f1e37e8fba9445ad88532b5780db1e139d527bdf4bde37a1287657828a68357ee47e9d308b540f1130eaea65332ecfb3a2
+DIST firefox-90.0.2-bn.xpi 579586 BLAKE2B 
d989d0ffb3b396eff5f4cb3b42e503e52395715c371af60f7437e7c05d5153c1641c67ebd68870f019458ea9f9f32c888c7ffa8522d18403823571bbffd7835b
 SHA512 
49d2b6d9bddb60140dabc91d7566318a7a33cc96664459fe75b29d07238a22056db615e6964b9cec9b0390cbd482bdedf4362acf144f752a8d82e7aeee76c360
+DIST firefox-90.0.2-br.xpi 539710 BLAKE2B 
0691c6011c853e856577e7d2faf320b3d5cc276c360365f63f97fa03860ae1eafc02a31cda92506bfb3182a1eb2f345fc9f8661cd3446dc4dd11bafc09d587ac
 SHA512 
630169e5a074099a3d965da66253c3707a3fc898a9b5aa3f5f5830c948c589e2f260ab6a50795417d19e63528658daadbeec2ef3117dc3c30d026cf9adb684ca
+DIST firefox-90.0.2-bs.xpi 475430 BLAKE2B 
a6fb2a37cd6517c5816e036eeb794ff0de0c71f75b620b795a463ab33a6e47c8982c060ad128f012972a8c6759a6ec5cc178f31f2d242b86949597fae59e372f
 SHA512 
44208f322553d88e59fea067a1216f8795a0359d330ff26762b420031bf8f31ae87d3fa1579153e5e6dcb53058c048b1df49eda74deace4bec8262ea6fd0d20e
+DIST firefox-90.0.2-ca-valencia.xpi 548479 BLAKE2B 
ccda2b43e7ca3ccc3cb2bcdcc78e668d51b940d571c2c7a7dd117ace3cbba8696304aacf9dedaff9d3655e3dea96d0c694a4fe1788e8c0eb6c7e9d7595786c65
 SHA512 
64b6e4854cc9e1866a6ee7218d499dfa66a62680d36b2ba5973bcb99cdf09ce9664f078f0f93946575e4daeb872fbdeef28d7bd302113f83668be2376a1d4602
+DIST firefox-90.0.2-ca.xpi 546603 BLAKE2B 
4a73a815709f2c9fd30be7bd282cd889d3babf08af0513e022999fc4ee789fa7ebc57a1b5798a465d46bc530830edceb1ff9b1e09889a139c25364436b32e09a
 SHA512 
7b3d1f509dda3e9adaa8e15d12d1bb2a33c16356e7eebf99a0cf73fe2611bce6d84a9b7c328704dcc6caedb60fb9faffd9773e6e099f7379f5020b9c9263aaf2
+DIST firefox-90.0.2-cak.xpi 574164 BLAKE2B 
442b69ff8957b047591f21ea22ce9d04a5d2ed88d870b321eecdb527c95dea94806ad76b8d88127548e35fd87f647b15c21e9a5c2f9ad7a7ff4582c94e500d48
 SHA512 
05a50ad71449ff9828fcbd4cb089d23c27fe885c43bb7f02bde303c0223f0e64036589e52049140fcdc1b92180d4f8fde430f2d984fdfbc3e0a0dec7bcf33bcc
+DIST firefox-90.0.2-cs.xpi 577720 BLAKE2B 
ddc2062e0bd2642236266c47bf763121d2581ab0cb99da04860fb33d688b26c4c887760feb7356c5808ce889497fd62b12e01f00b55131ca45031a9e977bf153
 SHA512 
7e277710908892964749f446b48a8624c199d5d45f780608ce0ac6a7a5f7cbf57cfd4ae986f79f76a46ef2a0b41828104daf97028b54a2d83f6f134597ec28a6
+DIST firefox-90.0.2-cy.xpi 554650 BLAKE2B 
a8b3f9879534e4f59763adc1ae6ac310d14223faaa23056cf7248130489f993228083fca854d15ee3392761c33fd37d506402fb657b51dd1a607432e9a1d19cb
 SHA512 
c18522048efc7edbcba01c1bee79e43d5db7b9816ac32d91f4441d3a0cd65155581966372101f14264fed70eaec881d5a099995a5b4beb9c6a3af54c88045212
+DIST firefox-90.0.2-da.xpi 546288 BLAKE2B 
580541804a971226172c4a5405c2d97e57b0a8f6eada7d0658cffd79bfd5e4b915cf29c8ca58887f328a2601103b52b328ce5fca67d5e7a261a09dbeea347d76
 SHA512 
41beb225ae75c34dab6133f98464f10e9b7faa6405a15199272d05039a4c0417f7bcb67c0b4d058b716c010b9afba7508779aab664fa9acfcdeaf8a12b336a6e
+DIST firefox-90.0.2-de.xpi 566471 BLAKE2B 
de4bed3a835be63460e938cfeb73ea00d3db1170a83fcddc7d67c7031028547205f1d9c016d46927bca1040ce9dde1a6dfe091647ea89d13425e559980baab67
 SHA512 
5dff86f82a0ae5dd86180d1bbb50af329a8d753905464728eb608e67db7cab66030d76617d119807642cbe16362498fef67658f07eda7ad7edc76a59093db3cb
+DIST firefox-90.0.2-dsb.xpi 579297 BLAKE2B 
24b04ee03cbba2269150674c994c073c5f114cc56e8703a1f993b2572a64ad9c78c49c65bd4b064b785faf2f95c3676a978cd01b54bfb0b5a36fe9b8273c4a09
 SHA512 
1d2e7a9b4f701d05ce9af4420c3458872cce5e8be2ecf1644bedfac5dae294f13056ca649a112bd2d7d0fdfa5a50574a107cfc51eae3cbc3bccceadca94f78d4
+DIST firefox-90.0.2-el.xpi 652899 BLAKE2B 
00d52fd1ac72f2ef57958b02cccc7270dc7f565ba3844dd0be495930eb7a26cd72c0f1c289961aa940fbf5dfe4b070159fe6f511df78ee26e0fc793e245a5227
 SHA512 
dd9e5a59bf81ba93ffb131fc4dff873e557cd252941c2986d37730752258a2034db44e53672e7e2174c6f5467fd784ea22538e8e2334b441aeae8e99a326ca96
+DIST firefox-90.0.2-en-CA.xpi 521250 BLAKE2B 
0db675cf883e92fc41c640f9c599b7fca295ae4f28f686440ea2e2b9a4436445b9eee2c2fe6eb625b1cf96db87642c341084696b35911e52239486fe11d3ce6e
 SHA512 
c1f4a0e29e4e7313b0ae8efea43cd436f199fc249dcd6fd15d6ad7b2be106a90e83f49083f7d1a018be580f783fae5bb07ed5c01012b5adc59526dabba72fd30
+DIST firefox-90.0.2-en-GB.xpi 521806 BLAKE2B 
1a04f7c7953f1f32e11484ef2b21559428f37ae00911d5560a504e42fd2bffdbef8f18ca55f924ff19f62679e74f6886b4901bb3027a25f85ddb525c38416315
 SHA512 
42690b90fcedd3f42ef373c8bd987b0bf2fb19d30071e451c33ffe3f6baa9c089ff870dce41274841a06a6d126ad09364b399f2d44f96b69441dc9dfae2cbf35
+DIST firefox-90.0.2-eo.xpi 548059 BLAKE2B 
cd513f81964c574fbb8436d28e6af185c74009466ce843f18d7414a730b709b26c8c8588e5e9eaa3ed3c057ffe16ddf56b179f048fa180760155e04151946c90
 SHA512 
8a02dae10df6d178fc32cc71df44b85bc7f9645dcce699a67a0910f4a91e058e99d05464b62a00fda32d7e1d43c629d2b6401e89288d1532fc08cd4868b5916e
+DIST firefox-90.0.2-es-AR.xpi 559628 BLAKE2B 
3d253e9bd11b29a3dd5783bad9e8b3e5f64b10baa3f497369c8175d295827159ff61b5a46abd4a0a6792838d18fdfb363316f64600bd4d786035e11fe4066129
 SHA512 
bbc319566de8dcb9911f76d5edaed504bb24bf5d65af518a5645f4941e8fddeab4e1fcc750d6a2ecb223b41c9746a5192822c99c7a30fd4e913d9177ac34f26f
+DIST firefox-90.0.2-es-CL.xpi 558527 BLAKE2B 
bd89d7e8cfdf892115438b7fc92a18c48b633e9f856c9a4821ea2a7dfb90120e1b6dd233854ea96c2f1cb7dbdadd71aa369a7c879092ab6b0b109ae21864ec25
 SHA512 
b70799b720dc11a06c641f8bc21726d16e1979a2bbc9bfa8ed3fce019c24298ef0539ea47bf497663971d6de5a8d7e42edd73eecf259e4af966f41dcfd1827ba
+DIST firefox-90.0.2-es-ES.xpi 548794 BLAKE2B 
f0320caafcc35a4e71abab33ae4a35f341d7f869661f7f7e2c8eec9fd68ac1d5be0502c9fae795005365f6d4e8d6024c86bb932ec3baf9b538b9595ee8ca06ec
 SHA512 
5d2840475edb3659e7bf5428ddd92cf4929bb94a76884686a3c3271a6a4053e1bfe623d803488ab058b0b9860d9f4d659d36701eb6b90aaf5ea1723b3d83a0c0
+DIST firefox-90.0.2-es-MX.xpi 562244 BLAKE2B 
be7fbfe6d4780a871dea7127a786820ced8b139cd5ffd61989cf003ceb5d333910a9b7421a40008bf0290140a927a5ccdb0e389f9078f9b2a031cde00b5789af
 SHA512 
b7fe64cf33d7be4ac13b66891a7b6ae350b5a8177537e321bfe1b8da2a1234980d0bfbc819102dba975d169baa9b26a356c80f41b41751d36e1ddf1defe5911d
+DIST firefox-90.0.2-et.xpi 496662 BLAKE2B 
31829a9cc3c809b6a0d91a68671f44e197db7f5b9b10426dbf4722f74b577de1db4be84f11f48eaae0d1152ac82af5f9d86922dcce2cf75738d3322485c0de52
 SHA512 
906f6f819baf2a96dfe0189ed322cb25e046d38dec7037cf5526da71cfbf3d1c0de600baf31c511d08eb18067beb4bfdd35ce5f7de91364847d0a0a7b21c7a3f
+DIST firefox-90.0.2-eu.xpi 544791 BLAKE2B 
e8df641b3d57ec9d044f80c274de17e23e216257e0d78cd0e86450ba5fc39b18839896b3d3976e3be0ebf394b0d966d6ee4af0dafa2e3ca1a9751b3370d775a9
 SHA512 
920522a5fd26a53d27f15533f40c5972bd330037656b1c1f94828c4d7b87e33a446f49c4f311cc15dba16a931c73255887de25b91036a1057422a25727e6f481
+DIST firefox-90.0.2-fa.xpi 565155 BLAKE2B 
1dc2ffd9990b923247d487670dd734c67db0ca5703834fa052f21684597de0bfc9902062d5c7f6fdfb4d68c85684fd93db5e060091af220c3c2ab74f4f9138aa
 SHA512 
a929bfc80b3c217da3eae1773898a646d9c2c06d7e13578d1b3147a7497155953ca2a297156b1012ee7f8630b7764d2953ec25d610f958ee7a19965859666455
+DIST firefox-90.0.2-ff.xpi 488049 BLAKE2B 
751ff1cc8b0cdb51af4f0cd42db3d1c96662d9994fbe5fd2e4a1d2a1ab57a9b4b5ae8bd8c3e5d3454de83365c6a1391be3e07ecfd58efcfa4ae7b412c402a826
 SHA512 
0b6e0b583f97722a57f9d28caa14aff4fe7d342e4f1b188a1b0186e865eaad3b1b5ab0d911a9187c082760e85b9f970c71be6e44d84827a575b102f28a7011f5
+DIST firefox-90.0.2-fi.xpi 545936 BLAKE2B 
1d992fda4a9cbe8ff43c786277c55ca005888eac771095d037d595974ad6430994ce7c0f741acf96f175a816e800bc77496e318290914912ceba8a82e3c6ae68
 SHA512 
2143f3b989153534f61a394c94e9edc74f0070e8d6d389b455999d4cb4cb0597322871c100a1114adaf1073ef29d7cc5ff6c13e8f59de5f4064683dfe1f12fd5
+DIST firefox-90.0.2-fr.xpi 570078 BLAKE2B 
75cf2bd14e3e8b67053aea83d492033ef46ddd88ab69a902f17a4e21c36e1fffd72d855d48be825da3928717eb726447435bf345f26b9edb5cbf949f08b19209
 SHA512 
a03b42c77585f70136aaaa3e102ab53550ec441933814e817f10a5ab846a47f5b1203738c22fdc07fbd7968421aa3be07fd3966f54a3d7a1f564e5733a4f01e9
+DIST firefox-90.0.2-fy-NL.xpi 555597 BLAKE2B 
3508589c747154ebd7a9b712b58d38776990b8d9d2fbc6f83209a3e395b844a0bbc7ff0c62afbfefba58d509514fe0614bef7f711b1b44bad0605beffdd7c07d
 SHA512 
5dac5d2c758eedfe7d351ba5185bf2f680d1816ab74256c9821b7846140130908976a979563438f910ddb51294ac8045e86620f9b35fc58e30ef4d9e3bc8cfae
+DIST firefox-90.0.2-ga-IE.xpi 473120 BLAKE2B 
d72e1ccb36942bdf00b337efd0231ae5b338a28e17eb6a5bc51e613df4658c27da61486319ac08d4f9a0373dd2f42e7358afdb29da680bafcb97b9a96f61a7f8
 SHA512 
9826db654e10053ebad1b78caa2bca440ec8ef2eec30e1d3f70b04679c5a89ae8eb9098531b13aed6957a2c4fc7a885e0ac7afa36d0f98d40fe0d95574c7ee55
+DIST firefox-90.0.2-gd.xpi 550980 BLAKE2B 
19032850535ac7c4d5129ae61a901cefbfd14b7c0ecc6acc22ad29422290775c61f0343442f823dff4039f99a40428ce138987e178471190515c91b509eab110
 SHA512 
86d69a91cfc1c836cf2b5d8b25ad509e32fd5d1d3732379009e50b8d2a9222371e287a3e00c0d9541165d79bed59732b8e144f3b638e43db9838bc29d62d4b20
+DIST firefox-90.0.2-gl.xpi 554486 BLAKE2B 
1bc91d2cfe2639d84dd080198d5129414c581ac3c02dce8b14aec1e6c4a169e9aa07d6ebfd8fa98dca4546fe85fd1a35054e561912c4744e07f0768f71c7aab6
 SHA512 
4f36662c5eab07f649aa21aa85dc57ec82c8ab7b961fcad80fe4f487c40a041b98c2102b4f7b96cb4259e931333db4ef357e4a69779412f4fabe7cc7f66f0b21
+DIST firefox-90.0.2-gn.xpi 571719 BLAKE2B 
37d4265185ec26a8ea8e86b57aa0aae529295e1ad54e5229e0e108872fea8b039acb4dfd85153e8a9218db46ea59288558d9c60cedf04554bde32faac85275e9
 SHA512 
937a9bf0c77e2d5a5f7d48c0aecf6b27bd6377ef05a82e2f674c38bcaa392a3f2d92f7b6eed97551eb26f39758f215bbc102b01314c3326e54c0d70abf91aa7e
+DIST firefox-90.0.2-gu-IN.xpi 547542 BLAKE2B 
c207abe6581170975581f1ec5f074fff4113be5eb19a3f6113c2c6d660d66474c21a46b73ec87e4afdb03c04b9d052c77732b676108b89decbf04f2ed7cf3f71
 SHA512 
ec9de8cffd0ffc3828d69fadcf8c2a42215aa1d84474b08b3eab42d1466324cf2f5d5a035fd9f17b90230b3778eec7d229ea2d0fbf4aca6d652930249255a2c8
+DIST firefox-90.0.2-he.xpi 569407 BLAKE2B 
7e69b976f53760242da74042d85573159082d3edd5e1d3ef1fd185b09c6863f8c275214d9a2fd420ca559f83099b393c979b701305e3c2c02bfb63aa8e0194fc
 SHA512 
1094fd8b6d6435ba094d0ec2ed70a5b1d911059c1bb4850033209604521d21d8ff579e829224c494ed4046da16ab804381138a1d3893ad5b0e14787442136b3d
+DIST firefox-90.0.2-hi-IN.xpi 579616 BLAKE2B 
fbd00e727022b20e0bdfe3adea70558b5e992fcf40805d0ae3407ffc49b41db5579cbff3780bfb05825bcb7d2b5cd7265dc5fd18f6be934806ea461d3c2a2629
 SHA512 
209bbac0799e13114ce20f3ae853dfed6c4e4c56efe71a78d765b6c1f725a52b0e88b87d6cef6efeccc1391413f9d322f60f0fcf79b197a1ca2256ab7861dd88
+DIST firefox-90.0.2-hr.xpi 549998 BLAKE2B 
a051f4591139d4e51114b39df0089cf970f6cecd368785c36592b5f3d4d129850510044f6e3b48ad7298ede1b2765ab502de75530616195d7d636599b8c275fa
 SHA512 
8d77ca7fd7dbca5926ed4f8becd356a8bd31b8ecea36fe26b8641ce9d02daac2268e71e19968ff9f3338b379e943f041a4518207491a170bb629ea4045e2a0f5
+DIST firefox-90.0.2-hsb.xpi 575410 BLAKE2B 
b952d82e59ac118efb537453ebe7a87c15792c52b005da779d7d06f7fd665e8dea05984ab07b9dde17371828fe6f44212aef4dd492a32e7f9d6ad87c68369be9
 SHA512 
b59caab36be18ffd000a9976e3703e9e8d520c523494f080ef020f49ca239af17ca97dfbfb7dc70d36a32bdb51388c8ba2e8d4c4195d6b15c0f6ac57895df6cd
+DIST firefox-90.0.2-hu.xpi 579113 BLAKE2B 
206d00a85161b6aa2f2422d825a54fdb8a77c856f5da5a92c707729d078ed7a020d6f0b6e288bc117cdcddeded316811eabea264198633f11a27ec35e7a592d5
 SHA512 
8cc740c1454279b9bd20d78abf4ce352db596e85e879eeb335b79b00c0160de6b2a704f3c6c44d4231c80d2d40b58d676def68cd77bc2ed916eb617cbb0ad964
+DIST firefox-90.0.2-hy-AM.xpi 604422 BLAKE2B 
f49a46b07e6bd9aff619d6ecd142d53da4366899bfaa0cc13051b4132cfa8c81c16d0a1cb999b190373e64fda1434df9ce965c91969956dc1d4fd64c35fc5bb0
 SHA512 
737b37f8a96eeecd920297911cfaed9664c0327f7498cce5d0c0dd942335498cf7b15c203226dd3128b60a08a176556cfc8abdb434a77fbd5a846948faf4044d
+DIST firefox-90.0.2-ia.xpi 544431 BLAKE2B 
ef3eb4e133074467183d3a54f2cc6af6ded4e8edb618868115fa6366d61c2d379a3903c0eadad8ad2a0d0e2d9eb57539d317a04b784a41b45a2cab8d73e64a56
 SHA512 
e3a72c94be0f03c93f85ea9b7ea1b37542f759d5de9a0522003abff9c12f30ff377221794d351d82c2b23afc07631b7fbdc0c0e629655877714e0ea3f9e49c47
+DIST firefox-90.0.2-id.xpi 540133 BLAKE2B 
52d47167ec02bb0917c0b84df77e34694594ed3f7493d1790fe036268f304b1efa1097ebcaf2eaa9347e73d07faf4fd46e97da1d8961c9b1eeb68e13b222a1f5
 SHA512 
c510bc024f902e795fc851b0709570f5d493cd9bfac12ecb6f552144dd8c96c1ba607e6fd05f765e0f0425792859e86e661579b89b700320c044d18b28171cfc
+DIST firefox-90.0.2-is.xpi 483713 BLAKE2B 
cae0f001ab5767163706140ca2ecf6e15c6db37a147882586d40073d2598fad2e5fcce962d4d51d0af5a925e634ef59117f5f93f70347237470f047d727083f8
 SHA512 
22da40eb5089e2a267a66c17c9ee8ee400753f0a9cd7337d8eebbb0d1e66f1ac31316ab875a6645107b7cabe884308f2a1d1d0a64ea96449c984ec74963d85b1
+DIST firefox-90.0.2-it.xpi 470917 BLAKE2B 
2b8ad1812676dbca90ea2164e4b534a3f246bb883bb3db7dfdf90c324733563903ddbe4345803e77085fd37c5a099d9b787f94e01a413349c744ca67b25f519d
 SHA512 
018de01e7aab5f3f8319ec1f1c74ffc5a77d9b6fb2e410f700785448d3c5cb267b095edb9c9cd69ed08ad529295a859086a7f5d4ba53c39e464716e206098606
+DIST firefox-90.0.2-ja.xpi 605314 BLAKE2B 
34739e38a812f92c8579a226b36f2c7622eb758f2942069193715143f0d63e9f0b85e08ef4ecee75d1006a97304a6905b15e0e76c65b55d7e1d3cb29c45cbea8
 SHA512 
7687014e78fe50b692e97bbb22bb08c8c1e25b54aeb104b766587428aeda8fea935ccb089320e72dc1efaae7656c0de5485fc3905b98127b45f59e38ee58276a
+DIST firefox-90.0.2-ka.xpi 606361 BLAKE2B 
618a913593b9ef7832fd810ffd769cadb47bb93ef9d9362b86539a3d6da86957aebe412364f32ad4c77974cb97fb801edb3938a29c2326a66796bdc0d3e1fb54
 SHA512 
2bd7a719dbcd9cf2d7881260d5c0ae0892882983d7d07c7e7348c6c82b2e2f861236afaf5f9ee4f60940f3a2a6d9d3865949c5e2e92b6f26c09c4081f752c412
+DIST firefox-90.0.2-kab.xpi 562888 BLAKE2B 
96890638bab2d4acc87390ee56c4c26c93d5514c32ebbc1c833aebab51e793a2e3d336e2076912edbe68843f83c8f02559a3f36feeab56329eea8ee9dd0fa320
 SHA512 
c8397002c9027ac7786957076c202a6db069ec1eee58fe0623291b5a72821131007ce2eeecde1d522d06af571e4dfa87694977d25fddb0e3c76d84768cbab447
+DIST firefox-90.0.2-kk.xpi 621558 BLAKE2B 
f57a4466136e3ed9adb06d0b693e7a653d4a06cd25153f42cb35ec6387530b6029d6d6d08b5b9dd0d7a5bf6a17f6e46992b443491ef23fcbe0d05347788351cc
 SHA512 
6ad921f93a0e788aa0f2d59a422643eb48b85f54eab32066e6eac1338d0e73e0a6882f73f562c3011e4f53db8f00f92817a3539086d8c97f4f3a7940290257ea
+DIST firefox-90.0.2-km.xpi 546445 BLAKE2B 
0b5eeb9fb63549f3f9ff6c875418764e8191317bd8a167c2102face45b88dcb569c2df47fba209c5935e2fa7c8952b9f200de43cdd49caa0418b413b22ab8f93
 SHA512 
760431880427fe5abb65fb0a351fe80bc1ce84368c90b454594d6b13185254a19e88eaa2b095c38b9338c88230254df0fc0d1929fa24875458a1d7a8076ccd6d
+DIST firefox-90.0.2-kn.xpi 510724 BLAKE2B 
c24388d4c872b798ed62e83c6d15d8f9bb33be6d258e16af43f34d94d05df348df09295a2d9c2b7ea54ec876cd4a84570648f3d0c964ee3c628b246ca145a15d
 SHA512 
4483428d7a968f259b13787e94b845e0a9ffe55be1fe83b5fdbda01a7bbb970c959d7b24acaef729b9814a0e54b32be7967191936671d0224e92bff35570699e
+DIST firefox-90.0.2-ko.xpi 590731 BLAKE2B 
d5178a54243b80c34dd3221fb0f9447cc9933ca03b7231ed13a006682f38a2f9b60734284a015326dda508c1801d50bcaa5fb6d299d13548012ab8c3bc89867f
 SHA512 
7678485b6588e369067467250b5dc4a8009009850d3d63d8e2340d989b7ef383e81ea6af2f305a8b70115bdedcac5fabaf8a201eeb2b254de938bce818462e83
+DIST firefox-90.0.2-lij.xpi 484766 BLAKE2B 
382c5ff77eb58e58e5c8e32ed0d7fe135d61974adaac1c990d514a1683c75d45fc68048a22f2d66ba0edc12e3ae119d9f75a217eb37cfee1180654c1288bd7f0
 SHA512 
3eca5e9266846d6b3c7ac108986da092dee5178e321aa8bf6892d4ffe009c2ab205ff86bd3d16076f8b9214b55578f81d0907bed9043c2c41e64e4316478de29
+DIST firefox-90.0.2-lt.xpi 572555 BLAKE2B 
63f4b6095ed7e5cee86a4a25eefabea77a1c3ddc0562d7bfda0bdf08de5ffe90c9020e106d729572177386cff9461bf0427ecbc13368ea3dd8d6bb21388e18b2
 SHA512 
579ee64b4b3683a433b265b6c4c71d6c1006aa7c81e850b3b7f4d1ec7f3376c2bcfb89db76a5ced145343f11010fba24192f3fde365421b3e855b66755630e9b
+DIST firefox-90.0.2-lv.xpi 475696 BLAKE2B 
2675056a88af23b89dbec450aa2ed11621f6de09bdc21f0d06bcdf662c1421d517660f30d7648debbd588ce23651f525bf2f5255af6305c27defb40bdb770d4c
 SHA512 
d48159a8e812bd321db05e8a865a8f680feafb0e4767e0d35d74795eda5a889fea5e2d8745bb0d2b438594aa72bd73981c2c2474e0ec089a29e0eafab13f550a
+DIST firefox-90.0.2-mk.xpi 472368 BLAKE2B 
91a36844e99016d7e2e4aa7d0d99680fa8d83e6a1e9282f6c3eda916e4cbaf826e8d66349eee4d905ab9c15eb6af7ccb7599bc0710e5a11d3dcfc39a0ca0a259
 SHA512 
408884c11556fca1371cb211a61f63ebda6df8df56ce02df0eedcb82d9e6ce72d77436bd9e2202d1e07e244ef08a62d2c7eb41ace62b813a8d80f6c134143102
+DIST firefox-90.0.2-mr.xpi 547715 BLAKE2B 
a1164b4b71eb42057bf0361e06cf2338f201c6926d7c6547ab256285a6fe7686d64a5674c909c95a31e920940b50c858b179f1607118cb19323e1c01cc075a28
 SHA512 
74abb04ef83fae4c570e82697ca2353a9e76772650a87e4e5f7c99f7591a8a84c1e5761a21cc2952a5846bfe873ab50339b958c9411141d2e636d1573e776b28
+DIST firefox-90.0.2-ms.xpi 459315 BLAKE2B 
9231c3e855cf744e053e84978c97e071dbea39046434d7e6d1639e985ee5422ce71fa07f3189594873c3ef062fa9b1edc42bb3df1f6d8cf77ae456490f1938e1
 SHA512 
4dbeda882792988e58d6b6df7f2f7bc8b9ebd9ece288bc83f92561c62366ed8c59043528fbbff14fc4856188b22878a0bdc146ac95aa1a3e840a4f543ffa087d
+DIST firefox-90.0.2-my.xpi 531263 BLAKE2B 
abcc403d73d5fb9ba0f6e8baa8b01a0547dd4e94a809b66bb6a2dd30f2fbd0bd55bd16b6ea6d353140802d415b894e607f4a79a0be4468121c2cf7c9363c9cdd
 SHA512 
11679d0de73764b3efa6578b858394b941d7e45587b8e46adde984b60db349981086855cdb67721b477853e19806efff54c2c2f1cab1ce11f395e6833fbb62e9
+DIST firefox-90.0.2-nb-NO.xpi 540211 BLAKE2B 
e73bfe5862495669d645543576b64b3d66534e3d9bf3b41dfd871dbfa4146bac3ed46a6f58ae369e237d76f9024e7b462c60c2afe0fe91c0d2555bbe92abbf66
 SHA512 
8b13a9a28c36fe4438c52d85c3948b5cedc6a68fff0e7968a952fc5183b69104df5b9d74b71ca43cf3018cbab184f019b556b30075bcf67cabd04549cfd22fe7
+DIST firefox-90.0.2-ne-NP.xpi 488264 BLAKE2B 
25f40a5eb34b4aa07d3852f0967cdc37c4cb0dc58524bd5c3cc773d4db4c73bb9ba8969f4e8d70d43282586b479cf09e62af1aa823a77c656968ae824f31e847
 SHA512 
80ff7b32a58e631b88a46588039774c258d02312d0e2fd98589725b882e481e3ea9b48923a0b9b37dad3c777dccc8395608f20aea6d757d7be1b0f9170033659
+DIST firefox-90.0.2-nl.xpi 549132 BLAKE2B 
61413733011e4fc81224f223f570027f2ae60b8fdd89acc9ea1bee2940a26c28a4ef18425e12182cec9ca40f7dcc829eb885193a9ea7cb10cf9b10e4c27d62ef
 SHA512 
544abdd3cb7b19076ab96365c63dc521b3658420472d7afd83ea4d199bf9399652bae7a1945dcdc89262902b3060df75984f573cafe69ef2dfdb2d9cd2e32173
+DIST firefox-90.0.2-nn-NO.xpi 543785 BLAKE2B 
851daaa399a7e15fb795365c3e81ba09e6ffffae19968c18b686e74f92cb7d8fcc84fce0383e791a59ac001790123c00791a5a763ab3e601bfdb7467f5928c47
 SHA512 
59ca8671c752e5a0d399166f8a4ce52cf20d158358d65810e85498bb00982a90a5fff86382f155d63f2060447d9e9119773bed41f389a88341d3034f10e4cf7a
+DIST firefox-90.0.2-oc.xpi 565026 BLAKE2B 
63786a9a4c8a11828ca2e00d5eb718d9ed5171f1f5ec8554002d966884d5d2c7cd14ad89286537bf93b1e79255df5f191b9e9a7ba4fe238d6d083092706a4bfa
 SHA512 
2bccaece0b3a0c0e8e3d9bc978c909fadae0d032a8a2e4df9778580cac0c60efb6228534ed8f1629281330e0532b0ded70118e9456995e6d43d9970cf41d4c68
+DIST firefox-90.0.2-pa-IN.xpi 612507 BLAKE2B 
03d21a09f80ff1b4a7e6f5fcdad46036fb8c91f1eb46d04b7e7ea8bd84888a94e05a3b49004d1cd8b4d2b711287beea6f0c4a3dc2f8cebd772d6f5ccaa896e0f
 SHA512 
da912c4ee934f2d44714ea31c139c1c794949466281a377c7fcfc314c6eac78fd85d5e795b11d8c24a131442c125b80fffc4c173b8e7fb08064db75bd3480cdd
+DIST firefox-90.0.2-pl.xpi 568488 BLAKE2B 
c9056f7a8569d435781e3a17983fbd7889ee2e87acbae27bc79d78cb129c08da9b3d623d746cedb12282f8668fad1f5929050bbb5a1cc066358147d5b74ec4fe
 SHA512 
bcbfe1b6975ec1ae940b08be4f45d7f04f4f30a80536e1cf912fddd6cb899d4aceb470e8dea8424bc0cc36435d75a8e865ba91f04ae87b293f6119e9cbd6f7e8
+DIST firefox-90.0.2-pt-BR.xpi 554982 BLAKE2B 
fcc2d465fd7f5a15ea861e5c1150888a308851b5fe0cb62847a5c6ef83d059ed5c80c1cd5720665525f17d3fad512b7fdbbd82f28a206df2a5224e9e3ff3cc9a
 SHA512 
6d1e85376bfeb12558617f710671c31473707d738d839e78e107e93711b80c975191210dc293f7837795ce8d2e0acfeb9af09796ecf491a701adf932a78b9ab6
+DIST firefox-90.0.2-pt-PT.xpi 558862 BLAKE2B 
acec5024cc929b4e29e624b00db49d108535e2d270967c1b60298badbfb5f424a133da648c995fb00afc828fb03389af9e2a65d3fd57fd7aad038283109996bd
 SHA512 
2fafd35e5c0106f9a3bfe54f032e826a37e6b7cd98941a8ee0255bf56116b1d65bb31fce8f711f8f7d1431d0b97bbb94f53c5ec3910864fbcf6e8e774f70e0cf
+DIST firefox-90.0.2-rm.xpi 549899 BLAKE2B 
9df12c0b8c193e33ba5822f909e9a1c91594f15baace3bb146b3e69ea93a526a37ff2ae72f65e4acf094ed08ea81b5f7541853f60dd4c819944b081dbcf89c83
 SHA512 
04858971ce69fd2d219a3d0ba97a5d72a5af88b6725f66aab79a8806a192cd6c6f4f17d0e5804abb937aac921e40a9494cdf41badc5ce6a96ec1d64ddf3d6470
+DIST firefox-90.0.2-ro.xpi 548131 BLAKE2B 
e6a19832c5252abdfb07a74374cf8604d0357e025d9093f9005c7ad252d162a99eb9cea38bb10f3a1554095747b8e7a3f950174f60fa219a9561ba9b861672a2
 SHA512 
9d65785acac5a8767960744a569aaf4bd9aace691376771415e6de9b6a3f392c70c406cd9837d7c6504931306132c0aa884dca83d785ea6fc66afe8cd7b4df49
+DIST firefox-90.0.2-ru.xpi 641994 BLAKE2B 
9124781768996090200198864e0b24ca72d10c36e371b9631fc03a3a336a2a2cbd8a227ed12f8d3282c14b06b7a31efaad98f185b65cf29f602d8b958c695395
 SHA512 
8455deef343028d99810c01b3dcddff85bbcd31307dfd0aa461b0b66b194eea2d915be1abac7902b10bfa18e09bd16880c3b22f3e78a7bc62a7bc580c9e6b89f
+DIST firefox-90.0.2-si.xpi 497038 BLAKE2B 
1b5bd85f054bdac7d3bad8e64f3a9d8fe2ca2912cf0231ec92213c9ab80f68bcf48109567115a8e6b5ec02ee5bff759a1a3a44496e19045da6871045ee392027
 SHA512 
6c1712c1f282ce5ff842aa39203f4fee5aa38df79c49f203dab0c3269b2b43c7d1a350da76d435de7b995fed1559784192137bb8b703ab08eea652481142917a
+DIST firefox-90.0.2-sk.xpi 578642 BLAKE2B 
30fb46e4287edd81e32625926e3b8e510d6f4faa84247e4ce4646078c9e7c407e275a3e35473d530c2c425c351096e867ae1e88422231afb2729287cf52737c5
 SHA512 
742afc3b57cec29e12f546acbffc50dc34259655b934b7edeb0a431fad9f69a76891f4a3d504bd68325bc11af8eb090931f9c681041f26b4dafd330388b73dc9
+DIST firefox-90.0.2-sl.xpi 548456 BLAKE2B 
7c47551255551b2fcab86fc8a0a75d7b3a86f1ddd17ca0dce53945b18290191f221b3230bfd8063573e55f42be9f6204583db1d2c960e0c3cc4db5aa569594d4
 SHA512 
85391db88fb1b87836a9509abd8b635562280b79ec6a501b7fe0a5da685028e5331d77168307a3cf395dd314cfeb61bc68405ae46ae70e6a6d724d6f46a1c73a
+DIST firefox-90.0.2-son.xpi 428012 BLAKE2B 
0c1d466b53f148b315e4b4e1a621e4b0dac3f8ed789514a335940f8d1a48d5be9df072e7baa3b6c0ee79446834f2606ae4420cf8121c5423cb6b5a9467eb12ca
 SHA512 
cbd2db587f7b2e94bb888d0649754c2a8f9b423f7ad88577cb629e5b4ea2a7ad203ce755003a3ccb2a6551910617bd4f62c8bef84775873cec7410f39c3bd1e2
+DIST firefox-90.0.2-sq.xpi 568627 BLAKE2B 
cd6dab95c8ae6f597ac62ca649e8037624a1c91768587d574eb5762bde10ef58e6c23d8ce5da9d5731a009c65d9fc901f602db435b8986c2b9f9bd8ce53d0d0b
 SHA512 
66e7251f67f43340a8f9df2a45748032e8b859057993eb834cafc663146b594e25d54af81dcbdcf402b05a84512198f3f50205c73a45da9f4aab738aa03e08f8
+DIST firefox-90.0.2-sr.xpi 603101 BLAKE2B 
ef378fac2d8a5ba7df6753620a4bb0b28c9cd53861f4f15001707fd1517942c1e40e8911d10e830808490abcd131f9d7c36f8636d4f647a9af1750be0b192e58
 SHA512 
e7c5767d77ef0f705aa1d1c567bed89fc2b4da24d669faba9d60beb0bd12d9f8b45ebe0b0027d84e8194fa1000e63bd10a419b649e8e3c47eb045b4d1d220f40
+DIST firefox-90.0.2-sv-SE.xpi 552226 BLAKE2B 
5114b1443f8ed57b05ad9bab185ae3fd4831f6c0bc434401721cc11bb5fc11e5e42a09b8da76d8f2a280dadfd5af6bfdd18081b43c3c17915dee34d1e506e102
 SHA512 
6986de8362530f0db5903d277f70188ff7e7e53e41c44c1f01ceac640b53262dd8bf92c9c967d8e33ce7c31cb39d9089c7d493ea6c28a9907c1ba67795d2607a
+DIST firefox-90.0.2-szl.xpi 525937 BLAKE2B 
a5c7eb4385823339d56ada2771a8cf130c8c29ccf7d60a65f0e88a7e1ede5413b663c6429efb92770ffbeb55f271f6df6b09b13c158332bddbfcd48b01ac2808
 SHA512 
6e0b0b0d20c19db95699156397d71bf5719c9f92b44864942bcbd5f1b6226f57998d92dcf8817f8030c09227dfed1780ad5671b4edff40e7270c7d3ce2c4e769
+DIST firefox-90.0.2-ta.xpi 526631 BLAKE2B 
d4b8bbf41992fbbaba840bfb19d62801a8b6d3921fc5c92379ce5baad6d5a45f7b730250cad9e90ee41220b7fc7ab3f360c0aa5b609cad2660965e69065ab6b3
 SHA512 
d88eb96df7bff317df242a8eec99140eae0eb121e1ed6ffa9242a9b540064666c0db9af36a4fa729e23bfd8fab9abbd32a2c5c3ff85b6ad2723be8da6ccfa956
+DIST firefox-90.0.2-te.xpi 568744 BLAKE2B 
401da427b76f0c455aa880ef64721a8bc8d3ad25093cd67b48d4d37a65bef7aa6c02db37c94bbd7190ad036a49255351756f12f7c7bfb3894bdd8566cd4b63a5
 SHA512 
4388b917725a32522c0c50e72a4ff2e96eb61a4514bc6311adf8b99f386691720c78168007661790698d1aa14bdda9e28e0a24d35995460ad0f3ba642e8a20e8
+DIST firefox-90.0.2-th.xpi 621169 BLAKE2B 
20bc114e791056e866ca87fa717270afec022ece33cf3568f445f460c690e5d98aaeb409744298d94b17b2655f6ea39165c0b4d2de7b1b87d94691e832f43b5e
 SHA512 
b775f9b6235dd154a7f26ff194ea6de858c5c8d98698afe9eb2173e3ff388726572583c9f4b3fc4c762e244751c623151baaf0effd8a12056ecde7236e3ce0c7
+DIST firefox-90.0.2-tl.xpi 533288 BLAKE2B 
9d2b4fe2251c08621b0fccc7492d8dd9879a80cccf64e7096e97e3125f5dbc06ea82e57fa52ef975c2da28d4226bd8a3cf77860140b3f5eb0055b476326701f7
 SHA512 
eb47c4a62a2b51131d0da056ac6ade774f59e8610fced36fad3cb64fa661c1eafa8e6fa8e6b53508ebc6a190cb45c68e17485310c215b96af2938a588452e57e
+DIST firefox-90.0.2-tr.xpi 564703 BLAKE2B 
f70afbf4ffb27efa5ed52cd102449a9a853afbe16271b431739e456f81a5603ba29b8faf8de16978c0f9dc41d554c2b4f5cbf7c74e454e8bed1d46639babed7e
 SHA512 
8242f1173f9e3f3c596591bb6d14801d72870123619148087fca33e5ac7d74b52850c5ba772727a2c831009d36d975c0f3826bcc01846042f21531b0f7ddc8e4
+DIST firefox-90.0.2-trs.xpi 506694 BLAKE2B 
00fb05e468dfa0e3c1ba6e572189be68118a45e17d9a5b929821b0bf063bbf114935f9ffb2fa12ff13ab3e0050de62f6c893b324d29df8922096bbe1f609042c
 SHA512 
f174dcadfbf38d413040543bff026ff940448fb39337379cbd15c4254b12115329c682618d6d62850c62ae0b9607a83bf5182b0b16ddeeb6109605ea10fd277d
+DIST firefox-90.0.2-uk.xpi 635684 BLAKE2B 
79f8a22184a62e25d52219fb662d8bab2e6844579b593d56ccf9036156e52111ee28219b1d6d25c8b959bba80104b560ad4679083a9a048284b780cd7e262859
 SHA512 
9289e74724069d8e3a881d5694a394da908b1c781df37a9bb163249a9730e157f34df91c290a6c2019980934b386da5e7037a3471117b41b08f3bd7c0e53914c
+DIST firefox-90.0.2-ur.xpi 577991 BLAKE2B 
4f0cabc51071c71a1b0c88de4b699f16940136240a5d8a9f273434c4d56d69eddb4b04fbf1420bbebc85c0f00df031c15e4b21b66f19342b02e9348e0ecf3ec5
 SHA512 
80cab1941a57798914be843899e7c1164c28df0f293ec70efa00536221c3cb49a72ce327595085747367220bf399f681f1066018c7530b14bb42cc6fd0ce340c
+DIST firefox-90.0.2-uz.xpi 483022 BLAKE2B 
a125d2b044afff77a72e426ac1554465907a306139c1b602502d2ca77c03eb9768bbc3f90c3c2cc445d93d57fda97d164209a235e92bb7b606e4c6c9e5746ca0
 SHA512 
b799b862fb047ef0c48b351c8a7b42bf372dc6785beceb977ff4aac6933e3958f972706af77a74464a105d10a6ffba8be3cac5d9e1813575e04852af2800845c
+DIST firefox-90.0.2-vi.xpi 586903 BLAKE2B 
f1b143163e443d76a213e7c4aa57a5375adf809f9a8d2c246d036be9d67ab7678e1eaddf27a0c386935327bc44e4e21df1716c0f3dc2ea24a50b1077e31dcbc7
 SHA512 
3bb4186633e2b353266ac17fbd5277c4befe544e966d3d2d7312743966ee1f5407404f94542f25a3242521616a744108703d115a761a849832c9b0697b0bc406
+DIST firefox-90.0.2-xh.xpi 430182 BLAKE2B 
d849e34655c8b50abb2ce4d2197cdf8761b27129fe8fedfdaef04221ecd0300ac8a8ae998b07a39d21bf3a3187693e818846c92da0b5e7e3eeda522e536f86e9
 SHA512 
5bd4f80060e5b75f56b3a02489717f58bc39a33785c08bf3e308131f690437ab072860e3cc9cacc00eaa0f58da9cdf02491d75b31909f1d8f8423c1378d60ac6
+DIST firefox-90.0.2-zh-CN.xpi 588311 BLAKE2B 
6656456291738d7b7651e14558a288eec053c1815fec33826e6db4c36058007d9131fb2c2847fda57f8ac75d8b5da9e7c0334db6c9cda0043c8bcb2a84db92c1
 SHA512 
6ee44936371e07a21903565bdacffb593a4a4fd64413bdc1f6998cb406afa11d934eea20e5ad5117468750d3eca53e80aa6afd9ece1c63ad4eae59a459a3b0c5
+DIST firefox-90.0.2-zh-TW.xpi 588723 BLAKE2B 
295e5ebb3f810f1ab8b66f301ee5fcd67d147cc640daabbb12e481baf835a439992fc5e1d1195bcd8b28e91336281b2e94d207d77261ec1297c784fdc3fba5eb
 SHA512 
a6b5747fc3986357f13db401dd93763f370e547e3fae61330108debd981fbc630f6af8003d6146e73cdcc948e4b79fc00614e6a257358155b3cfe0176d2e55de
+DIST firefox-90.0.2.source.tar.xz 380670372 BLAKE2B 
782e548663d3538d834feeea54c9fa54ff5580472b967bb60be331e591b782fff2a6877f2e8db29511ac4b4b3dff847f30dc8f0a8333ece3d4156d6ac10a723d
 SHA512 
4fda0b1e666fb0b1d846708fad2b48a5b53d48e7fc2a5da1f234b5b839c55265b41f6509e6b506d5e8a7455f816dfa5ab538589bc9e83b7e3846f0f72210513e
 DIST firefox-90.0.source.tar.xz 378743212 BLAKE2B 
5f70cd3a8b0ece81c332de6be85f7fdcace3936e4f67b4f3cf080766c28fb1f90694e157dbd4f6fa8ed8aed5550a899eee8f000c2bea228af4546cfb02757ade
 SHA512 
233ad59e4ab2f08d2253b49235b51b26fa32fb7c285928110573ccbe67c79965d9401a6c58a3af2ad22b8a58ca5d9b3154e3e8c9d29b153acd16152d9b75442c

diff --git a/www-client/firefox/firefox-90.0.2.ebuild 
b/www-client/firefox/firefox-90.0.2.ebuild
new file mode 100644
index 00000000000..b2acecd2054
--- /dev/null
+++ b/www-client/firefox/firefox-90.0.2.ebuild
@@ -0,0 +1,1182 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+FIREFOX_PATCHSET="firefox-90-patches-01.tar.xz"
+
+LLVM_MAX_SLOT=12
+
+PYTHON_COMPAT=( python3_{7..9} )
+PYTHON_REQ_USE="ncurses,sqlite,ssl"
+
+WANT_AUTOCONF="2.1"
+
+VIRTUALX_REQUIRED="pgo"
+
+MOZ_ESR=
+
+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/~{axs,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="0/$(ver_cut 1)"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+IUSE="+clang cpu_flags_arm_neon dbus debug eme-free geckodriver +gmp-autoupdate
+       hardened hwaccel jack lto +openh264 pgo pulseaudio screencast sndio 
selinux
+       +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent
+       +system-libvpx +system-webp wayland wifi"
+
+REQUIRED_USE="debug? ( !system-av1 )
+       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.47.0
+       || (
+               (
+                       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] )
+                       )
+               )
+               (
+                       sys-devel/clang:10
+                       sys-devel/llvm:10
+                       clang? (
+                               =sys-devel/lld-10*
+                               pgo? ( 
=sys-libs/compiler-rt-sanitizers-10*[profile] )
+                       )
+               )
+       )
+       amd64? ( >=dev-lang/nasm-2.13 )
+       x86? ( >=dev-lang/nasm-2.13 )"
+
+CDEPEND="
+       >=dev-libs/nss-3.66
+       >=dev-libs/nspr-4.29
+       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/libpng-1.6.35:0=[apng]
+       >=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/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:0/0.3 )
+       system-av1? (
+               >=media-libs/dav1d-0.8.1:=
+               >=media-libs/libaom-1.0.0:=
+       )
+       system-harfbuzz? (
+               >=media-libs/harfbuzz-2.7.4:0=
+               >=media-gfx/graphite2-1.3.13
+       )
+       system-icu? ( >=dev-libs/icu-67.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-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="${CDEPEND}
+       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="${CDEPEND}
+       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=(
+       ach af an ar ast az be bg bn br bs ca-valencia ca cak cs cy
+       da de dsb el en-CA en-GB en-US eo es-AR es-CL es-ES es-MX et eu
+       fa ff fi fr fy-NL ga-IE gd gl gn gu-IN he hi-IN hr hsb hu hy-AM
+       ia id is it ja ka kab kk km kn ko lij lt lv mk mr ms my
+       nb-NO ne-NP nl nn-NO oc pa-IN pl pt-BR pt-PT rm ro ru
+       si sk sl son sq sr sv-SE szl ta te th tl tr trs uk ur uz vi
+       xh zh-CN zh-TW
+)
+
+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 ! 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 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 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-png \
+               --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-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
+                       # ThinLTO is currently broken, see bmo#1644409
+                       mozconfig_add_options_ac '+lto' --enable-lto=full
+               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
+
+       # 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 all-gentoo.js
+
+       local GENTOO_PREFS="${ED}${PREFS_DIR}/all-gentoo.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 menus
+       local wrapper_wayland="${PN}-wayland.sh"
+       local wrapper_x11="${PN}-x11.sh"
+       local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop"
+       local display_protocols="auto X11"
+       local icon="${PN}"
+       local name="Mozilla ${MOZ_PN^}"
+       local use_wayland="false"
+
+       if use wayland ; then
+               display_protocols+=" Wayland"
+               use_wayland="true"
+       fi
+
+       local app_name desktop_filename display_protocol exec_command
+       for display_protocol in ${display_protocols} ; do
+               app_name="${name} on ${display_protocol}"
+               desktop_filename="${PN}-${display_protocol,,}.desktop"
+
+               case ${display_protocol} in
+                       Wayland)
+                               exec_command="${PN}-wayland --name 
${PN}-wayland"
+                               newbin "${FILESDIR}/${wrapper_wayland}" 
${PN}-wayland
+                               ;;
+                       X11)
+                               if ! use wayland ; then
+                                       # Exit loop here because there's no 
choice so
+                                       # we don't need wrapper/.desktop file 
for X11.
+                                       continue
+                               fi
+
+                               exec_command="${PN}-x11 --name ${PN}-x11"
+                               newbin "${FILESDIR}/${wrapper_x11}" ${PN}-x11
+                               ;;
+                       *)
+                               app_name="${name}"
+                               desktop_filename="${PN}.desktop"
+                               exec_command="${PN}"
+                               ;;
+               esac
+
+               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
+       done
+
+       # Install generic wrapper script
+       [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
+       newbin "${FILESDIR}/${PN}.sh" ${PN}
+
+       # Update wrapper
+       local wrapper
+       for wrapper in \
+               "${ED}/usr/bin/${PN}" \
+               "${ED}/usr/bin/${PN}-x11" \
+               "${ED}/usr/bin/${PN}-wayland" \
+       ; do
+               [[ ! -f "${wrapper}" ]] && continue
+
+               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}:" \
+                       "${wrapper}" \
+                       || die
+       done
+}
+
+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 show_normandy_information
+
+       if [[ -z "${REPLACING_VERSIONS}" ]] ; then
+               # New install; Tell user that DoH is disabled by default
+               show_doh_information=yes
+               show_normandy_information=yes
+       else
+               local replacing_version
+               for replacing_version in ${REPLACING_VERSIONS} ; do
+                       if ver_test "${replacing_version}" -lt 70 ; then
+                               # Tell user only once about our DoH default
+                               show_doh_information=yes
+                       fi
+
+                       if ver_test "${replacing_version}" -lt 74.0-r2 ; then
+                               # Tell user only once about our Normandy default
+                               show_normandy_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
+}

Reply via email to