summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Deutschmann <whissi@gentoo.org>2020-07-27 15:50:06 +0200
committerThomas Deutschmann <whissi@gentoo.org>2020-07-27 16:23:55 +0200
commit498422e8179bb736ea857c9626ea35844bb3821b (patch)
tree90af4210a8e96ce7d6cb7d5c904a33163ae3564f /www-client/firefox
parentx11-misc/xsettingsd: arm64 keyworded (bug #332695) (diff)
downloadgentoo-498422e8179bb736ea857c9626ea35844bb3821b.tar.gz
gentoo-498422e8179bb736ea857c9626ea35844bb3821b.tar.bz2
gentoo-498422e8179bb736ea857c9626ea35844bb3821b.zip
www-client/firefox: bump to v79.0
Package-Manager: Portage-3.0.0, Repoman-2.3.23 Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
Diffstat (limited to 'www-client/firefox')
-rw-r--r--www-client/firefox/Manifest93
-rw-r--r--www-client/firefox/firefox-79.0.ebuild932
2 files changed, 1025 insertions, 0 deletions
diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index c4d8b2177adf..f4153710f21b 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -184,3 +184,96 @@ DIST firefox-78.0.2-xh.xpi 458898 BLAKE2B 1357c2a37ea0d5a6eb3b25b79793a3be744c51
DIST firefox-78.0.2-zh-CN.xpi 600177 BLAKE2B dd3909d4c3777a5259f92ab499b354a3ae97839cadb504edadfaad92ac9af12bf5cb637775765f0d24c50c435ecad4621a53ac105165d8ff013ef6350c208513 SHA512 1f56ef51b8a5226477d623f886ba5622fe6ccc3e1e99abeab64a60dfd656920aca248fc80efc58d71f7126076f3ecca07f3b135b40d922686886ffa6194a17b3
DIST firefox-78.0.2-zh-TW.xpi 599268 BLAKE2B 5f2d2ac97f146f13ff3a16756c5d2208a3fb5f37277f0037c3f13dbb0530ff44478c290afcff4d2312167cf75915f65af1ec1c60480853a1d5ac3683d4c9df7e SHA512 03152b433cb8c80960b081f9ecf97447e492c1f2e8719397ea2dbf9865d0b60f8b24d653c7564dd866ca38068b92c6aa4978bfe78450989522dac160c125e43d
DIST firefox-78.0.2.source.tar.xz 334406116 BLAKE2B ecddeee641a61409cf603afe97c3e97854700d3858bef8ec0d09c58b39023162e2939a3619481c1b9ac7f5b98bf6c7082108db3c9736332f2e30a6ac14b34b2c SHA512 4aa753fb51459301379d186f3c93e15755530e5e1ea17795d620cc9da56eb5e76cce483ca57f4af339b6f17e47101dff772ca01fb1b469201a09283f14f567be
+DIST firefox-79.0-ach.xpi 501458 BLAKE2B e41935776700da89d2ec8708ba551437568dda906013c75eda6126fea7d189942a36d7506c68e9241edc657fcc99c6aced6ea6b0e3aaf8c4249b1ae1060c9dc3 SHA512 bc48232adca3b5807518e55f0dc4786a172b1b31da54ac2e452b4c8935a3b70c9aea0caaec3ec7598af71dcf0862fb042bca16a3cb22f61f27244b8ff846f56a
+DIST firefox-79.0-af.xpi 443588 BLAKE2B 8f46481dce7f1ce8c1874d595cefcb806a4b43db305bfa9ffd63b4fb2deb3e3c04a6200df8f61663eddc530a823b68883bf135dab23c7152aa5fb75ae457dd9a SHA512 14466dc1e229d0a659ac9183c3e3b72ab49af50649782286351038dc20709392d34175bb0aa2784f90c97fb1aa66e149b11b00930185ce5fddd6df05c1c68c7a
+DIST firefox-79.0-an.xpi 529847 BLAKE2B 1587ccb7a835fc351b970575db2d37bdc4260c507a8036a91528c3766325d17400bac3528739f7de5ed694bf87c1310ab09729277b2eee8a2ec134f3e0502d3c SHA512 c9e19f4f5032f732a582a941ceff4d507bb12ab1215594188b2d0915b9db376ce0d652ffb95162d66879386720c0cfb0b9efea7835cd979f7477c8807c623544
+DIST firefox-79.0-ar.xpi 591072 BLAKE2B b76b530aecfaa99dc7cfc98d7b1c31cadfa8bf30b0e06170bfd98bca0269c1b6153601be8eb8c20b3ddc6993d23b322b38674e57b963e9f19208a2036e182827 SHA512 49360b5f8518087beb56e50d503a5cdaa2de03e73b41c0169422f00c29aa9412a00ef9e6ba37f79c7c968ad6d16ebaff8919337141580d2caca3a460810a3a58
+DIST firefox-79.0-ast.xpi 501400 BLAKE2B 137a0a1d10e2ab7a0da223bf82ad40afc01514ca039cb5d5ba1a8d94f5dc9f19765076131257a831dadb60d426adc6a2dcc2f6d3fb40c296b50ec32693b9ac31 SHA512 84c7e9641f9953e3e345021fef8d9b6ef3f8a710bdd3e60eb15b597826fe1867e45252382d49e0fe1b8a4c0c399c9a6e406d05af5937618228e276ede931191f
+DIST firefox-79.0-az.xpi 538649 BLAKE2B 2bccbf11a6e7336c46c797605c707ab0960d5739ead8caf27d98f3b25e9f676ae56647812565d6df6f1321152a54111e469331a898e52d037a5add00b4f4a8e6 SHA512 3f2cd8c206996c0c5f9b4afd31906f5648383421df290c03f7df22bb68d2dff4f0e657a0988d56150e4c25f2415318d09a38e0b9868ddb7aa5dbca3c76b4210b
+DIST firefox-79.0-be.xpi 647941 BLAKE2B 05f6c412818f87039e588276e4972b73a6404987c18b40428a01a7888fca4247b851d768be381af3ae98d90d2c892deef2c4dd2e637e739377b1c2e920d38e32 SHA512 acb5ec46cc477ad059e4bc98199960666e37c65860b1ce98c2a380e546a7462bd26cea2193c07e3d86837160e56f42d85066f7729a32f6d3cd1db2cf5035ba19
+DIST firefox-79.0-bg.xpi 614022 BLAKE2B bf6470726a895180ab3356b145a603a455f82b14a6a56ecb7dafbbf40c5078fc947616bd65a9f35243f3ecbc3ea41471bc1e81be9963ee20bb2fe72a2c2e1247 SHA512 4272374637b239fc9f6ac04491b1cb11d5392d02e6d5e3cd4e1cbebff59bbb80d77274992679afee9da2c07d6f5543c85fa4d87174c61cc3a285e93bc28de63c
+DIST firefox-79.0-bn.xpi 634641 BLAKE2B 0da5793a45e5c6b564ab84493b654260f337a3eb9a5d0f33d82ccc1282d441d98d6bb142a2e786b71212c6e8c78c3b836b5657ffb67943cd96b77e956ee9d067 SHA512 ace10efcaa824fd608e759f4c94e6aaa217546965dda45fdb58c8eceb1b8357149944e62f8a87dc993df15c37147f2ecb39b5d0632ea2cd8d869458f8f1eb00c
+DIST firefox-79.0-br.xpi 553813 BLAKE2B 2b9c8e819ef6c1c07f767eae279c204b338d2b43c7fbe2923e8293ad2696c77b73a117862258c84a54eb5b030a8cc3b7b97f0f12d0d6961afb04c25a9f427eda SHA512 c1a2375e23d50285d2905aefb9542ef8f15cae2be7176e51c178c421142e0fbf0bb8e195752a3a151ad08e20f2ac16008b071148b5760b5366047cc707e318e8
+DIST firefox-79.0-bs.xpi 507657 BLAKE2B d0679ac2f9a9955b2b1a245f45328a4825d86bb9eade53754831ce4953c4c351b6d169470facaec023bc9c33974bf2439d47c2c9c5ef7f6c5c10370f57ab45f4 SHA512 4184b29ce6d9c66ac6e57947a4a3e3c5e0761de97184b03e9c91e062ce98e70d5a25d3595a28602a3a41ec10556cf2f34fea502441c493f7089f93377b611f4a
+DIST firefox-79.0-ca.xpi 555954 BLAKE2B 63ec773ff316245be0db76bf25eed284686707a0bad9f3815c3d01e646206d3b15a651b0434e47918c90d14d817afa1dd8a02d4f62968a67c3a551efd9a657ca SHA512 37dcb81d97a71aea9088f7d85ce5f7e2ef28074273fc8bb4d53fefbdb934c20f8b314ddfb5d43c0345e47f746e75e25da2a2037164cd40dc871e42f31a9542ce
+DIST firefox-79.0-cak.xpi 586979 BLAKE2B c2c4daf2833c299be81a0ffd5ff2107c71fd4466799332302a4ffea52cc555cac817918cb51ea0bf107ee6f8e1bd1de16504c8c5994ac9886eb1bcd3a04dabab SHA512 06eac59d1117b65805dd2deda18ada8625e4711edecd29566d17bee5df595f488d66c1fa998d1faa3f74fba4681132e1a7db8a6b7bb5690b71f5a3c13a9ab093
+DIST firefox-79.0-cs.xpi 585546 BLAKE2B dbaaf22f621fa104976d7072cc1e3555c71953007e8ea3eb30bd645dfce33fec32372d6f2b678d45bf5d32e9fbff57ad0035a3db44f601c5fa0d23d98e2805c5 SHA512 3deabb1f5148a78bc821fd9ef9de6f9982d5cb741977eb06011a6f71883604a3e6f5ea03fe6545f121d2726667f377f8f8ea1a98604173a91d7042cea3ba4e53
+DIST firefox-79.0-cy.xpi 565223 BLAKE2B 09d66a5683c593902a125728e9c25485ba394d2874acb8858823c75760a41484841d2a0a1485803f070433f6c78d794f5ab016cdfcde0d15bbfde1fb1c77d0d1 SHA512 c073082f93f90232f2056c31d28b16ab07cb8ff50419ceed8524a732d793c1cbc14e6729b67cae2edfc6e5b39a55986dbc89ccb1b5f11b1159b1c140f7ccf563
+DIST firefox-79.0-da.xpi 558035 BLAKE2B 99cf13fcab4da6648f4f56bd799e67be07c6738fe6de360e7c829aedbc08683eca368ae070d244b34a8107c256eeae11574ab7dfa6bbf6cf5af740e37c8645d5 SHA512 21d7202c44c27dbb0ee4929ce97603f5ed0f79943453fb1a92a83c35acc48633be7d0979f406d38a9eb2c112c9a941f437edf9309fbe53a2c647781bcb634d10
+DIST firefox-79.0-de.xpi 578643 BLAKE2B 85269dbd2b3e76a30f8e663a4296c9002ed170501241575203ac8f84fd4da66ff69178c476c346fe1b6c1a445a834b984c2483b72069c19deb47ecba7f63a019 SHA512 570e4b1f35576d9ff2116bef7972d1e15b44975ceecefaee6a348b71c00045119d0d029ad1ee3c522093a9e7fcc88f3c8d6fefe9c9e72cc8ea55fe563e3642d1
+DIST firefox-79.0-dsb.xpi 591825 BLAKE2B c8873ba590fd80fd5f5b5f9c02c8588e2580f3a18ea4dd6ef6b8e4561ec6f7a7d4ba6f672f5b632708ca02f326fc714df62c4517e1c6ee1fe9c6271ddf88c04c SHA512 01a54a5f1b5a4787f08ad0f1db8ece71136e9ef9850a036357fbc4d16ff5ef1daf4f6155654468984f18826457ad2c97406a013b1d38b0af4f05dae60357d2a1
+DIST firefox-79.0-el.xpi 666129 BLAKE2B 2178e33cbbe88f11010fd29e4bdd2737cd54312a8c81d9b4611681014c735073f7570c7022a5d6890963d417a218289be255290cca2405f99e447c01d89036b3 SHA512 b500c0162a27e88e87c4c5904bd5adb65da7e97ad7b79d0cc3c6bf3aeb0cc93a4f73a29433b5f2bf8a9215bcf249e0b93b1c0db7e9e84137b5fb6a2a2f7c65c2
+DIST firefox-79.0-en-CA.xpi 533669 BLAKE2B 8e2071953efc06922e5144a6517aa19a14ff0a13aca1bb97b4552107eab678a78c63d781493719062b9cdfaabdf1b7d5e096266657bfd0962e8c3056aaa0670a SHA512 0f629f8253208b7152ec9a7adf712ca8724df65b7df63fcf7f191ccffe8c3da83df31cd5af75605edcd37c77a61b5bd23d121092c11e70bc491f63fb71743b05
+DIST firefox-79.0-en-GB.xpi 533471 BLAKE2B 9ad8e8b393712742db3a7c571835d00be8d452657f0474462b918fcf5d7b8d7eee4301a742dc31af2935a8b61ecdcd422bce8ca42667e8e0333efccc751c680d SHA512 107df1dc98a1dfce5e72730458e961820055d6e40862879722cedcdca32ab47aab4bb00e1ad3b815d93e5ebde1bd3d30ada7175447411fd56ecdd82e76095192
+DIST firefox-79.0-eo.xpi 557786 BLAKE2B bba6bf88e55addc6a3b50021e06137e9755d82c939b8b2dbdcd1cb26a15d60949131ec2ddb8b7863465e04843a0abbf491af4bfdd9057f047cd0f4bc1da742fc SHA512 de2e8dc2943a55b121a9cfd09b77fed8cd775bc8db77dc894a515bfe577179262be34099d468deff794ebdd5fea538ffcd46e5e731400dc5ac4767421babd4c1
+DIST firefox-79.0-es-AR.xpi 571116 BLAKE2B 2fe806da707541239430e758409109b47a95ceb232a1124c8aae97a276f4ee8b638673ca3d6d684d8f7d2a258d8eb524264a1f03b0c51cd2d51b1fd8b555aa9e SHA512 be9c6d5aa52755b43501d2f173b379e0b976ea96cb52c0b182213a5180501b5c87712257c80c4033f6851215fdff56d952d4f6205e7258af283472e35ad912f1
+DIST firefox-79.0-es-CL.xpi 570373 BLAKE2B 8219be39bc63cd89a7de8976e826962f70b3ec6756d32b19ff256f874b41372a63e2bb29a995c034968a7a956d0537f1290053c9d4d2df3b3ab6660263df6721 SHA512 a1451b1fcbb335ed3ea1d8dc4773207f595300f712b5699167b470eb96bfcd7357f2500fddd68aade3377c2a52a781ae360105117894f01e8a975f8fd4938a22
+DIST firefox-79.0-es-ES.xpi 557411 BLAKE2B 732b7a834588150be86ed0787c68b9fc5dd9a5dbc040a7a1086d923383b1e4b2f7a48e38c7014f753e1b9246e038ca0177fb9446d23f435146d018a85a1a29c7 SHA512 2c2326637325f0ac280c620ccf2592b6637c1f438fb703c38cfe8da0c5501d04b06e59b0a30cd554a048bd8d95bb98e9351c8c27452a6818c3d0068172f0d1b6
+DIST firefox-79.0-es-MX.xpi 574154 BLAKE2B a4cdc2695202b3bf33fdd2e78ee400c7a7dd16e2ef464448143a3fab7121c5923a22e09102ec170b2d827c5670e91d58b586067be35bc515ccd410070a0487cf SHA512 b57738d8bc462773d81351a8da199c69fda15ba8e5b7d67e4b0e58ef1f50931f806436960eee2bc69c1aa3b8844140e43c837cd6352bfa27e6e447a245ff4bd2
+DIST firefox-79.0-et.xpi 536814 BLAKE2B 1de5821bd0997ae1870f263799282b5de5e923321cc3ddf156ec19c437d97f7cf15b3a2b803166958e9cb7665bd215fa80f7a60f4f763842b84eb72303f9ef9d SHA512 cf6b8b0f92d71d554c63e9aefef07f67548ca503ebd14c4af0ff51b82d0e62dc2dd214055f438812434eecc1ae0fd737941948a5b7f7eed6ab5d0e6dc1424971
+DIST firefox-79.0-eu.xpi 557193 BLAKE2B 43bbefb31f9b76e4d0b661214462c51aab812ac5081bce297c1796688d15fd065037a91428b8ffc475600e2c29cc673265bcdee24cd0a6de2fe0fbcb276ffb41 SHA512 f24428e6b2189da510d828788daa92e416df87b7b33cbfb6a73735b6d7814eaecda4cd2f87d215a418bd8ebc5565c729562a43dd13d5a45170390d1392ba1281
+DIST firefox-79.0-fa.xpi 594710 BLAKE2B cf73235cdfae0ea1da5bc0e091a1c220705718b24186e7f63b35ac6ae16837214f10cb714f5ee5bc9027ad283f3dddea33fd6cd07639a876fa1fa705e6aec890 SHA512 db48c59c8f3f78b90f34c3d3bfdbb76b6bd1ffabff39fad48c03a17eb66b6b4ecbf1aa727f61185b45e23552050178267e296cb2d908f98cc643181a6808466e
+DIST firefox-79.0-ff.xpi 532782 BLAKE2B 1986083102c00854ba8ebe7af9ae7add7b79911361adeb0fec16567eb59fc1b188d77fa14259dcff985ef06251bc824b409d314dd3b0941e3790b8843f0c8b42 SHA512 7375c73966d8e4bead0439dcd8971ddcbe7c6a80197d121b520118fd830511de10a59bb7956255f62d23521d1f6eadda05a00e609ec8e5074edc33d48bfbd0b2
+DIST firefox-79.0-fi.xpi 556441 BLAKE2B 2c372a931c4b2bd9f1c1d36e865d6bdbffd95d56fc539b3c76d4a34564fc41aedd946eea5a8b31541b6b9dc81c781cd7e530701ee929f9405ac36c17c38173f1 SHA512 4b8420ce2198255364c25ef3fc6f678e1eb74435fe97645b83ec10bd59e2cdd8eb288047589d98f2bdf2fc03c76ae287eb732655b99c0740673be113eb61691d
+DIST firefox-79.0-fr.xpi 582980 BLAKE2B d99038a78e67a7eae7a3f38b5ee04f67dcf68e2d603c53e55f4441ec3274d3bbd0adba0277b39a72e9fcab00ea0ecdd80c4821ef193683da66c0c83898cbe84a SHA512 5011a545684165f9ba221ebed36645f7d8e24e7411049bd447f389621da67e1c9a9a381c4d780ef02ea0a5487ea36eda1c1b4ed77614a8bb21fc3d232d731d86
+DIST firefox-79.0-fy-NL.xpi 568112 BLAKE2B 1524f9094d3bd73bcd868954940b123f6bc157be76bcac82972ab31d4472810efa7f91b603c9fffb9096237ee1ac4684b39cf2743536126dd378eede3a2f30fc SHA512 3b782ef205bdd845e20c9d2648dd0e005ebb6445f2ab6d101cc424469d15af926fbedaf6eb3810449407ca7496f11324542137d8ac065d88f174682d3bff89c1
+DIST firefox-79.0-ga-IE.xpi 515523 BLAKE2B 9c995ee79640fa83c7c7106bd5f5e5e35dad2b63198287ad6fcb7662734bbe2e580bf0874e313548d6eddcb8eb4ee30bc649c8afdab406ed0164e7f93e894860 SHA512 cae13285717997d62909f3853ef20460edddedaabdc944c10cdefc92c7a60f1c1ee65fc7b4af4c7bf06dd12caa9b009d8259a9bc2f55e44940a83723775e550d
+DIST firefox-79.0-gd.xpi 545532 BLAKE2B b6278e8e731cad4f01d77fb36b15dcc5300a52f89c4670dcb1a9458b05e5d703953b21c8d7d6cffac2b5da0d03d83f11680292bfe6aa2dc494af8ca974630c13 SHA512 e0fa16ce42159f108026e3549c90e8378d84f2210a6dc31e824d7c67f2c3ac11d6f0f97d44abff19914b81e2dd948ee032546d2e9f120b00339a71af33d38cef
+DIST firefox-79.0-gl.xpi 509456 BLAKE2B 004683080daf3aae63dcd52792b87fb219d8941f4a78977f588304394c3d018d2e39fd02562fbabd48b9ccb8491c620e5aaccc9f6e7514e75eb302d6b0c785b7 SHA512 4afd6cde92a3c5fb39cfee32bcd7d2f2096b1582d89bc61e6d012eceefaef45e0619a823ecec48d74c4202673fdd7b25b08ea8890b099a47b2043c7154b7da23
+DIST firefox-79.0-gn.xpi 583046 BLAKE2B d1645a3d504ae3b44dcaddaac12e2ecaf764e563593349d3554ea0b1e0d4cb33c5f9a91ed36bed122e0aee10ce6cbf3ea78b89ef2002ac874fce25b334eca715 SHA512 99dccc8af561e6d516f12bc893348dd5282de9e53f62505f838ca63bf2f9ea36f23b417517317c832b73ab87d8c19452425fd92d7b781d308db44d180b33d41d
+DIST firefox-79.0-gu-IN.xpi 603768 BLAKE2B 906dfcd9bfb6a48c77aff87fd91cc6947e2e244766e2521d2c8e6eac227ba1c99076e4501e8545934988f17c86bbc02ec2eec316a4fc986c1661c4b9113e13fb SHA512 129d31c2b44f84aed1fe76ba68de23746d4f97ff982747a33c4d1b34780d8e7ef4dc3defae3f8806691f7ccb9f4e0b71f641ee66dac72cc43ab1c7c8f84bed0e
+DIST firefox-79.0-he.xpi 585807 BLAKE2B 077331fe67bca5f4b6bfeb03207515b8e39529d370ad2a698384a750c2e2ff577341ee8eb1f86dbca5d1d072ba056be550a355bbe009f222f598f83f44b3ad30 SHA512 c1fecefd1803f7050ac41726130f617a1626b0474b12ba5232ba55795f87fa96c88e2ac3036475b10f680afcfa6fa2add3da05e5bf6cf83999f4ebc35c3656a0
+DIST firefox-79.0-hi-IN.xpi 624880 BLAKE2B fce5456bb080413f11541c97aba6865fcad4458c4a5021f4d1c8869995a47d6ee0c899faf68d54a0ad9a23cc4c197e703866aa7d4461c19a5cf843fd15d8dad0 SHA512 f7b22435001c917d1a228804b293653d6ac7b4f97773b0b82192b5b303d3c530faf4899525d8aa2c62eacc594b17a1f3e7c49c1ae17c80d7ae980544a8f6c339
+DIST firefox-79.0-hr.xpi 562866 BLAKE2B c99c6795a6fc6d76ad87d0d2b40261a759236e64c1457c1c8ec1d70daed275c94961650de95c11c7a47bbb03c7b64a6f596fa77b727558ef20fcdd074e6f90c2 SHA512 fd0ffd513d0ca7627e0a1638fe0041998f56436cbe86df383e651d5ae9085e3230e9261c0b7c718de6c55ff46ec67a6fdc3b88e8817eaac6454f3d73d6ddac7c
+DIST firefox-79.0-hsb.xpi 588070 BLAKE2B d3ac13c241706c49fa3b7b6ba62aaa6b9b74b393f19cd23a137d94554660cf982063c48b5bc158be9244bffe30b7ed8e86fbd4b61c6601fbacf29d4caabe862e SHA512 a708ca74671d06cbe6a1db8f7870c0cefe1fd6bd64460f4d8f2d0860f6d8e03990462ab6120dfedf7a9923ff73afaa22463fdab47460631e16aae05fde61c6c7
+DIST firefox-79.0-hu.xpi 591575 BLAKE2B e0f0a4f0b06f349cf0a469f782edf88e5ed1193d76552a4856e825061decc971c81fc64b6ce598f3a60603c56b4893467049af759bec0b51119289572f3f70f7 SHA512 68750429f627814fd25bbe3bcec750c44b33a4e4767d37429fe064e2e3d683df4d351221c71eb484dad7a13f4e77469a7f01e020721fd89a24612448ea19a378
+DIST firefox-79.0-hy-AM.xpi 650449 BLAKE2B 34bf461300ca9d2eb29d11e3a2520ceb2f5ce6b81178a8fd300a195f9293567ea917fffa505d62205299efbdfd763cda62c896a9a8c8469b1b0136fbe72e66d0 SHA512 8de8a33b5385214b8fb4ae91ab688d07108d2ea44fc41e6aa7425b23936928401ea52a968ef93be659d3dbc5494493544bb53fef879bb951dc08113acc5bf6d3
+DIST firefox-79.0-ia.xpi 555959 BLAKE2B 717f6beeb14d1840b31b951f05ac20ce0edc6f97b9a741a67aa71272a6126fc1b67c7acf971e8027fdf44d96867d9fa81eb28c65cd4f7fa29bf14e643bc4e8e9 SHA512 12e4ca0bc0a2ff65fba22a6db82b299e7d58c33eeb473be7e1634e098ff8b91a417959c3209d1877cc1038833a4694dbe6c0df2982b1c038529af4951fd5d93c
+DIST firefox-79.0-id.xpi 553987 BLAKE2B 143584e7511b9ac3493509a772c87c13e1381169b33f4cc36249d914d4f8b23ab6f0ea82e1b075291dd72db12f730e23e5714244c45a18ebe1013b12b99a5216 SHA512 31d7e69ee0a6ff25a772b947a15cab8fc2de3e7cbb9aaef28c716fdca97431b93f4a2b54720e4211cbffcd45d84056473d37e24fc9b84f19a7fbcb229d80f13a
+DIST firefox-79.0-is.xpi 528742 BLAKE2B 51112b6bc7bf0c7b6ba0f0c11e8861c52d81cc75ea85e7042bebe65f80a838fcbe2abbc2b1a47b2a847c19b1dc446f4e69917d65419e6bf94fbeb7f9c56506dc SHA512 0c1fca36be6b0ff65330d78fba97707104a95a56741dbf0bafead4605806b7d863e7d5da9155050a5e64ea9b5963b5dad869c0cbd6ed7cf338252c83ed8594b5
+DIST firefox-79.0-it.xpi 456253 BLAKE2B f68f65c2869d313a15f3c5f96587ae3c516626deb2ce8cc836a7c00c07caf201dc56defde6c32c9c9d2eaeb1fd3a0c594c78cf9fc9b666efda181510683db9a8 SHA512 0c9565c0cb92c413d79bad9d6e0e5f0a175d3da3bb1a5f8167517ee0c14c797b1168a1b92758d6c4b98f89d0d6d229913cf868ee165cc8b5b9dc905cc0122113
+DIST firefox-79.0-ja.xpi 619905 BLAKE2B ae99ead3a98eb4fa3716df362fd53326ec7559963dd62fbd4feb80a25f4b71f04ecb1a28cbc91f681125bb8ff4cacc98596e3ac72879bb2d0057e0e2a52d6197 SHA512 c9b3ae6ebe7a97a20f086ade4b394620a5a7ef31c85c7bbc72973f32ca08033c0c2fe912d6afaa6d51ec2297878a3f11b9d1ba3c70499b2223ca9661af69b9d5
+DIST firefox-79.0-ka.xpi 617507 BLAKE2B 668af897fbbb670b3afae842f57c270a8406520ef849066352536627b78a9c2815755032d337f9443e12b7f5ad851fc45b01d1be11efb36250c67963322d5f78 SHA512 36cd79e546249a52eb1efabcb8bd625696848a53b9d89037ac5ecb6f1d01374048dbe890a46340ce0f1b347fccd1416c8d033e07f362b5fa4a1536f628b0a6aa
+DIST firefox-79.0-kab.xpi 575652 BLAKE2B dd4e813c1b589569a475bce95b4eae3ce29264c876bc8c4093a310e1b28250763aac6cd18e8bcc52a31e95250500e1be483184468e1c428eef652652820a0c35 SHA512 221c586a388434c25c0b3673dffb1c9bed11241f63b6976b373037715ed6105ac2d67ecd124cd385f405f5adf76b729d26e5bdbe0a18603144e1e0af06968310
+DIST firefox-79.0-kk.xpi 645054 BLAKE2B 0551cabcafcc5fdba2baf741b7e5a17c73cf9d3a91e215afabec3f46e4ef5de6ab3e8d326854c90c9791563de597b9eea1c7c8ee31a6fb1e32a0a3e54fa7e9a8 SHA512 0a756a5bacc3afee15fe4f9c18ab7b6dc4d8fcf296f1545d977aa7bbfb87ffdb1a645d65506666dd51ce93f73c60a6e45bee089c24a6ab3647465e8aae967f4b
+DIST firefox-79.0-km.xpi 566274 BLAKE2B d6ace322dc9da4819609cc27ee599a561d73a84f865322e8aa6c5075d2a758514842b08d1810fc991aa8e2269d34f2c4ba9679796ab03645415ea2b7d5865c72 SHA512 4ae0dbeff1bd2833ae5d0547e1f31c9fd4b889c165a924e943c289ab816439cb900c930c946bd10492da202b5854ba90f194b2a17a718223cb6901e2304fb8bb
+DIST firefox-79.0-kn.xpi 559053 BLAKE2B 9b2d2ff36c6ff85cc2027a619c3ca77c897bc817cfed381c9ce46f20d2a237a21931ee9da3bedfb981d8f20bf95e99f29ad277a50ab2a047292153a0236d1726 SHA512 aba0d2559a93c78f89bcaad11ec0d3331ebcaddf9f8fee744754304625de990b60ccaf137b8a40d79890d54982525930f281a731c62ed69b50ecc3f13ca7bfc9
+DIST firefox-79.0-ko.xpi 605614 BLAKE2B c7cb03377f65c836f04b735eb2a3ba1345f8a1af83649dbc1c988439e19fe83f2292eadd97fb179f71479b83678ee8f1a8b1b1a227b8e6775d7c095f16267914 SHA512 0641c7b604f167d8b942657750e6f803d46d0ad874d73c2c40eb557e2adf6e0e9391bf058f037ccb15410d160841f9757a34a1b6c1834b07920f6f517cfc03a0
+DIST firefox-79.0-lij.xpi 528207 BLAKE2B cb83cf98b1ee6cc20a24542ddfe926b51dbe5c35286e2713734e20f93af78855a0ae94660cc437de786de969a4a1521836c61a598b7bcabfe960140cc2b1efca SHA512 5b7f9a2ce3d69ad390a935d44be616397b7486966538481cc5f9670e82d821f1b7ba87e4cd58c394b8e1b5bcf66881940a49b6319ba6deedfff2c41cfb72f75b
+DIST firefox-79.0-lt.xpi 585966 BLAKE2B 7511ca1cd608a68df77235d68bf1f794cb4491d26a642f49b8c1ea17171f57b82ffd265200891cdd3c00088b205176da7d03b9643588bcb90fca7e9995ac5d32 SHA512 7a65845ed818bd2314453fbd207fcf3fb664b22daf6b037531191cac9bf331f55fcc91fdc8031fb01610b4cfee23de1b0c14de35647811f450c8cd19e3222519
+DIST firefox-79.0-lv.xpi 518055 BLAKE2B 5cdaa2bc1e570f917e9bb06c1018d115a3a38437b863c121e43d70f1ed4681141a0c71348a1ecaa4a52be10362e6d59330f1d4a5835dc580fe8747ee214359f8 SHA512 c61cb47bb2323f60f0ea37b3d7b70c248265d772585b8f9be025a0148a3227a70068dc50716297be19a9b250fa05cbd838532bdefa417baf32f85c42b325fedd
+DIST firefox-79.0-mk.xpi 481913 BLAKE2B ddd8675b685be70e45f458fa4dd5925050427a632d9c012a4fc368628761f0b25bc9fee5768d7ba0d90bc3ed3bf48fb474f8ce3fc71a5c7bbb233c5326c0f033 SHA512 c16f02b1ccb1bbaeb08f65a9e445496aec970a67e582019fb42c94d646891b6e183c56d682e8702239e1e9206c435513efc6dcfcfb5139e92814598bd1bfbf6d
+DIST firefox-79.0-mr.xpi 600646 BLAKE2B 614ff917e0203c706328db4170313c1067ed4e56fbf898d7e1915b21b7f6c00c865791e45c6e7fa1a2317b7d41fbf87d5a4b1fb08d003c98b0d92d21706dfd53 SHA512 6b945bf6cdeb3ad003f46ef45679c71c4c21a95cd4d5395e4d2ff6ce72ef5e6334eb237d56f065114c589ac73bd6306f7b1b32aba61d390e14963ba11d8705a7
+DIST firefox-79.0-ms.xpi 502180 BLAKE2B 8cfc1345fd8685d571565bdac82e6145d54fc5bb2653c2a33bcf9d1bd5e2544a6bc57e551e78f74c4ca1d354be0156733105b1699ac121c38268755e5f1cd8d6 SHA512 c4dfc63b11298cb7122f16f6978da15a5036921bf93109fe06169580dab03218104f85bf95b822eb444dc3dbe2d3430cb3df14c5a00d933b788a09465dda6325
+DIST firefox-79.0-my.xpi 556403 BLAKE2B 6e0cea6dc2d302a7ae7dd06338822cf68102dfd3edd38bf00d974707a5cd29bcb176ed8fe59ae05a1c619fee8ac5ea55003b613b686c94b547ea0942a7405e7e SHA512 a28211b16414724976c6b96642cd9d3f1d28cb101ac98ff9fc9b924df742e527a2f68327fa001b7b892522d3d62e2c280e5258a5f310bcab6d00a35608846f07
+DIST firefox-79.0-nb-NO.xpi 552094 BLAKE2B a0217c30c3bc79a30b3acebda9069ee8f56bba9c5dc4124329c4b56abe5ae42d3fe4d29e8f2405a71d6fbf08071dc004cb07c95164435cfcf216633d4d673be4 SHA512 8aa2e33687d194bb6ba11e3618a54f3bafc0ec90739bfddd585a2627038c1ce6e2e478e89302b621d93a5725ef4c932644f696d9747cb78f2103c1f3ccf9a119
+DIST firefox-79.0-nl.xpi 561368 BLAKE2B 0cacbd96399ff81b5afd1179d382aced721f8089ad9d343c11ad5f01298c414b687cb165c00e9f2dc940771b1bfade24938f25a7dc8f9aab6f01a21ffc3ada8a SHA512 f194137a118804fca6b5e4f0698a0d9bf52cbb07e828115d1de43d02f702e4c70f91c386b36908b850449ca49ee9bfdfbb4e721d90afe348d2acc6100b000b76
+DIST firefox-79.0-nn-NO.xpi 554121 BLAKE2B 388e62f7f4e63238f05bbd51f2f073c51f615ec366c7447b7addbe5f467761a7f8a569e8191ee0fd257fc5fe525d1cc21039313c7626008aef6d938cbc7c5fe0 SHA512 158c2445dcea631a6ebd8a3017ca1ee57c4eb3c2d8d4666003992441230ff5b12073ee9af6722f58f1c124903c3f851090d57a6d0b7d3a4794990d89d64c81a3
+DIST firefox-79.0-oc.xpi 578492 BLAKE2B 0c8ee3976952a76742a758fac1d900857028b4f96b812cff70e0028f35835b184a8ddfbdadfd24bea08a30ab27b0c63e7bff7e63bce177836c75be55581ff745 SHA512 3ecad0e58192b179c6295772a89f40300a548c5bcdd490111cffda8d97199d469a4a21f75e1b2881a9c2a0bf28037cb77deeaa4534ef7f8d8ad725f5724717a0
+DIST firefox-79.0-pa-IN.xpi 606794 BLAKE2B ae3f3398912e9306d02b36b1dc4ca311fc6a5f3a47b0b869a1abf729fc8b89eae11258bf0153d4e25428f6557039f6175c122adbcfa3fd6f6a648a9b35324ba3 SHA512 5ced6b8bc0f25de9d7b36b5a0ce61811593cab7cadef01a128a038b69991b7b5e535ba7b8e0133e002d1e6ea5e94d778bab98707b659f19ffac93f8e0e630327
+DIST firefox-79.0-patches-01.tar.xz 29540 BLAKE2B 314410bd662250277947ada5599d87c7ac5aa0b17825f0c8573c86599d833620751d6088bc4af80e4ebbb74fd21daa5765b4b3975c63de9b2bf21a59bb984902 SHA512 b50807f421b17af537ec5bf0329647721bebd030e5165d31de687df5a46631e028d53f5347dc8289a7a4077455d2c9d771f0aeb10db0885556850b4ac987afb5
+DIST firefox-79.0-pl.xpi 579919 BLAKE2B 4eb70a8aea36699ecf9d40c8c8a3a79ab1488bcd31773778f76c0f0e595cc1e983429588c7be5179b17ab156c27631162fc644eec762d5669e994fcfd17de47c SHA512 6906b3c3eda87a98f7ecda498153b4302810d1f63620b337f1157bd7e8a3b3bd5dee1b703e3a04a49fdc198258c4a7378c6fc57320f76f1313433d17e73f70c7
+DIST firefox-79.0-pt-BR.xpi 560599 BLAKE2B 06e39db4f62e7fba56d92cdfa2f49c0b74b51892bf7807eab8ecec8b3a164d5b21fee40c494993fab5f89499c19f9b44475e62d2ead8c2652874aef073ed6ce0 SHA512 07719e83c62556ddd08bd8d47a625a7635cf2dcc8b3faa3325537170c2eac94b1ff15cbef09474d4e6777e4764825930bf19ceaeda5410a455489803fed90bcf
+DIST firefox-79.0-pt-PT.xpi 569372 BLAKE2B f2d5c53743a23a4a4feb2b01ef81ba42ca0c2c06dff8561a2f7e7f7f281c84e733c7b94673d8715450ef4700eb99cac654ec340a7421f819f3c95b659a49ce66 SHA512 b232f8d0d821e348b3591f3d2f932a16f4f0e227a4f92f78ea859a7b2df17e1ae73ef88f22ac7944798b0b859adc80cac6fcbcf4391d9df5436dda49425e19d9
+DIST firefox-79.0-rm.xpi 557883 BLAKE2B ebbd60258f32a304d78fb8974257361c19417ec7e0a82dac96713dfe064d1b8b944fd9c34e69c6fe4a9c985da6f943f45becee11e46e2b5406afb20ecfedab1a SHA512 1a3300e6dd3d117901c79e2d4816cf7ec1a1c2e1f24341af850e162e2892b4ff633c3f9cfb19a086e7e039a56c17594254fc3279e50ab91bb13f6c577b880174
+DIST firefox-79.0-ro.xpi 570889 BLAKE2B da9c7d2a2e072f4efec8e845189a36f29724f1376a712f420494448c187c327877dd751d75cac723759ab159c9c55095590421e0c4d042c21cb1de12d4b72bec SHA512 2204d3f56e6bb4d3212d38898e125faeb6a02c9cbf67b31afd9efb49322e27c80932721d774f6fd6a4f4ee956f19d38e56340e7fc8a4d7fe7e5418b0da34351f
+DIST firefox-79.0-ru.xpi 656375 BLAKE2B a7371c8bfc9c554b24f822cd761808e4594bc08745e4f5a5eede4a11608cbcfee506793969c72f17d49df33ac39293eb7b6c2aba29bf5ad4ae8a9af327354b30 SHA512 314a9b49c5691c6ebf32125929eecef480c91f1b02ce0e00d1517ae450c730d966255a31b4240af828ef10552e2b694cde36cb3757993b2cfd76a09d3758d3ae
+DIST firefox-79.0-si.xpi 533394 BLAKE2B 9b5e4e60d0d440c1d1daea86b6fbe40d1c9b573109dd24d4557308343c612c2e26b395afc268607a1de53d5d4fdcf9337f61425e0e215c06a04b01f3cbaedd66 SHA512 1c20930843c0de3ac535ef4a6a7274779406436ed0d13e6174158750495e11e8514da8518dcb5c146b387468ce30a308ac26405c506d0f57189617cbf622c346
+DIST firefox-79.0-sk.xpi 582489 BLAKE2B 2eae50ef0c9cfa2c1f2ba9859ac4b7ba79ea8755c3a29d5837bed37f4e575ed318b7ed2c9532bc13f0e41bf58c0358350c738086026e119abffa0eb19e998f72 SHA512 490fc701c56d3617eb56bd4b02787b2807f0dbc348b6d02060ed5a960524c6d81ba4b31ed4b47636de357bc78b05ed409552273c4da202712a8e74058da724f0
+DIST firefox-79.0-sl.xpi 565161 BLAKE2B 696652a848bf6944063d0c626a2a94b3f46d6199787248445edceddcbcb19ef9b5e38cb4b7d6284d60cde706aefcf037e249ca4cbef7cfdcf1363661f186e50d SHA512 f5b1a55858dbc65fd2526ea9b93c5db3a436961e7ea55512356c23f05a8cd53328f09aa09500b428303820178d7d13ed4c4f4fc2a642f1aa635230c68572c18e
+DIST firefox-79.0-son.xpi 453855 BLAKE2B 1539533d7987415928761b647e9e657954ad886b78911ce6803e55c614b18aac17ac79f15d172b80e4278ed380f74497b03ba6afaac9e2c032cbb69889460cc8 SHA512 447e9f42f3f9e6e1870fe8b5390191739fa3c6f91332860aa0ad3883d233d4cb69b317f6c69d6df029e7c2235436ef9d91e8cf6c5670a1b123e135ca4701ce68
+DIST firefox-79.0-sq.xpi 578902 BLAKE2B fb736fd916089ca4794550ee0169c1208dec372f6c475af0c94fe873e9e3ad868b73b98c4122d25f7664956829b44db72438fd30b60bd6d897ce1038c8896be2 SHA512 1bede3107795f39d49a08cdf598f28878d6c3d4daf7aad6188195fc73af67d59fddc47e1e31563ee28f555b99fad20a7622355b3ede407ccf6a04c2551d5c4d1
+DIST firefox-79.0-sr.xpi 611622 BLAKE2B c3f3af7ca06764d6546622ca61907db0269abcea21418e659fbe5845838324a23cb0d9c6fcb05b12fcd37b39eea87014156f8a282b2eaf7530f5a0b43bb45a02 SHA512 7ba2837c5e3bf39d67c49b8b1efaa7ae2c87ce2492587f2bc29305e6d54cbc00978aed8c0c47bd6b4188226c36df631c2dc9e29535dd91320e6fb9e2f3daebea
+DIST firefox-79.0-sv-SE.xpi 564578 BLAKE2B 8c963b3cf6c38d3a5691325b23edb91a7b9ace994e7900c468c1978dcc3b99d74e4a20c4efaf1606859fca98d17fe0e3b33a3f88e3872911ba9ff710d82d4cee SHA512 1725ac4962a55465415e7f7073d007b31e7c601d110707289ed3b4453da2f3d435af32f72152a9536aaac0131eda78228c740637a4adb1a636b4c5bc042100e8
+DIST firefox-79.0-ta.xpi 573276 BLAKE2B ea6cc63f691854fca089c5e006b5c74750eb45fcae75fc370bc3e9d08a3912bb14047aed26c43a38b02aae0b07093ae0a7a53238fe6ee66b4399b3a98947e3f7 SHA512 dafa951b1c71a980f8efffd4b28026ef9e618932b5836d31fbf68cd0d18c329ade3421e1a9f4d30c35ef0f04ce30b37dbecb172d1725719831480f43014c1d15
+DIST firefox-79.0-te.xpi 594508 BLAKE2B 0c10d787cf86e9a3d7df0ca2f0e32eeac5a2bbd00691ef705dbd2951a0c026e96ab120d62a56c09b82748f29b8894107f92fa61480eb44aec746e30597250848 SHA512 5e78255bc196529c9ea73c91b9c456bd113aa62e22cc65c8fd0438f97a8806c0c5ae3f7cfd43f62283fb96d39ee4e7ad7b59a307b0b3cce65209df2844efaaea
+DIST firefox-79.0-th.xpi 632226 BLAKE2B 508a44259565f024484eac6b850e1c4727c7879579e6c26e3b94d9df3cd6c9e591a1219a72d2f43906fa04e94093b979c55d6f4001c27f29bb1a895cc0f9195e SHA512 a8524dc34bacaa30c423a8db1c7014564f41c32d05b9a7801a18bfb4ac0ee65be4bf1eb1e1e2b2d15f85cdd8da8a8913dd867f19b1645e687bbfae1a6e5680dd
+DIST firefox-79.0-tr.xpi 577777 BLAKE2B 5d26f9c8c1f37a52e059adab212ea1b1b4ac3215e129adf8940c5798b86906b6d0f6bb3e00ffaf0302dd1494078ee34f45f911d49c2e8bcb17994f3574c401ad SHA512 2a0258d71d262fac29ac187d9e88acfec82542e7f6897c5d223850bd5a2f0e0d57dbc3dfe15decedf8366dd86088ec5a7f75ec5f1d467de526a0e3a8dd2d883f
+DIST firefox-79.0-uk.xpi 649709 BLAKE2B 66b7dfec65a1b175ff568b0e6bfddc714e57df126b51e9ddf53819e97a9f91b452079d3afeb750688ad56893bdce208ba63145efe6ecda9133a2b3bc5f640a08 SHA512 38bb42c95cf41976bd66bd52ad84ee71b54200003121f24fe8e2220cf990dbbed26b8bd73fe9f64953bc6c17c952121b809474f7e3a0b05aad08cfd399bbd784
+DIST firefox-79.0-ur.xpi 610605 BLAKE2B c7143d5a862399098b64801645cda3d5e5523f82ae7522d135745f6adc799ba676b953c95136842b9b2ea90c6959063ce51d51284f1b03652728019da819ae00 SHA512 f86d3c12cdb0111d0b74c132e1c8623c8e177b6fcfa49f4c00492e0f802d1257a0bdf17b20c085c8b66a72d9a5916171223a2ed5eb5e3e34f04e96f28c60cd43
+DIST firefox-79.0-uz.xpi 521811 BLAKE2B ed7ae24711b0384a4943ae484599ede40898d8d41d64795ff06eb7910efd2d7b1215c4c96170ad1afb26716d232336da13a8a667247584f5c550063495303cab SHA512 8ee677626aab29fe00e9a57d9d92f2012ff3f8954a4d379c4e30445e0ce4011f210316b9f2a028e33f39b15f82e9ae520e3928c3f5b49758ab56df5ca9e02ffa
+DIST firefox-79.0-vi.xpi 599747 BLAKE2B 7d1cd2be0aac516eb4073e83126a41361dbfca497ca638132e3b7ee4c3b4a0fa50c0ff2a8c0ad42734c0ecc0844e447bb0b5e3b81cecd6d4d76c34eb2f54d070 SHA512 7887339af2c16086ccea2fa9d079998d7520e159ecb582981ee22e25f0194b99465fb15f237d5f5cd61b65bf82ef4a019567700ede270f98db1f88a8acadcbdd
+DIST firefox-79.0-xh.xpi 457461 BLAKE2B 239a5f60677f7d45168108095d226f11501051106c340d92a2f2049e63c38380feac1a8f8caf97d349184ba26af54c8ef298d29a21fb12f44b71ad82b8afcb50 SHA512 9fd8c80368f25b194a0fe26b93dce69a7ddda475288ad5ceb9028a79e65a330302ed87d4d79e8a5dc30d6e60284844af471d3bf307b0367418fe739128ae28cc
+DIST firefox-79.0-zh-CN.xpi 602955 BLAKE2B 23c97e5674936cd97a15da63a32aebbc896d583be98c8a8dee50d1df5c929aac92f45a5e43ef66898ad9a796f1359b55cd72b69667dfefab7f55db06346c1ef3 SHA512 2ef7a733bce5e3487f9ce252869da6266442e2cd6ed5ad0833e9088b1ddee017c894734a89755fc3ff086e8325df556399bb828208eca67fa0f2645a326f8753
+DIST firefox-79.0-zh-TW.xpi 602114 BLAKE2B e3ff99ff0d3a6087d1a0040a02659578c241ae705cdef43e737f6e8cb1f01915b6fb5053552985c2ed578b713c31a3f7bf946f11960e3834646a185d6301425f SHA512 f75de79c5dc19b90d321eeae7b0cfcea4ece8c12d29d5755fc899bbd3e27e142ed53369eeee4a847248d9aa95db93d802e45ea7c359457e341a7c5a5c5186e70
+DIST firefox-79.0.source.tar.xz 333220776 BLAKE2B 6a21cf8b0d53db067b020b969180a04233171113c0a4d64e5c3599fb2c991705e4faf7995acab578c7683f30dc074c834e36d23a84c5869ef7f015f86eebb871 SHA512 19b068446757fca1247efe4135635c48c01f445a724ffb2a34c20b8b63f9bd920e9a78849f268997434d1863ba091eab8a99a02b2073f08d2891d2678d1ff73e
diff --git a/www-client/firefox/firefox-79.0.ebuild b/www-client/firefox/firefox-79.0.ebuild
new file mode 100644
index 000000000000..1e7c29a12c4c
--- /dev/null
+++ b/www-client/firefox/firefox-79.0.ebuild
@@ -0,0 +1,932 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+VIRTUALX_REQUIRED="pgo"
+WANT_AUTOCONF="2.1"
+MOZ_ESR=""
+
+PYTHON_COMPAT=( python3_{7,8,9} )
+PYTHON_REQ_USE='ncurses,sqlite,ssl,threads(+)'
+
+# This list can be updated with scripts/get_langs.sh from the mozilla overlay
+MOZ_LANGS=( ach af an ar ast az be bg bn br bs ca cak cs cy da de dsb
+el en 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 nl nn-NO oc pa-IN pl pt-BR
+pt-PT rm ro ru si sk sl son sq sr sv-SE ta te th tr uk ur uz vi xh
+zh-CN zh-TW )
+
+# Convert the ebuild version to the upstream mozilla version, used by mozlinguas
+MOZ_PV="${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
+
+if [[ ${MOZ_ESR} == 1 ]] ; then
+ # ESR releases have slightly different version numbers
+ MOZ_PV="${MOZ_PV}esr"
+fi
+
+# Patch version
+PATCH="${PN}-79.0-patches-01"
+
+MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/releases"
+MOZ_SRC_URI="${MOZ_HTTP_URI}/${MOZ_PV}/source/${PN}-${MOZ_PV}.source.tar.xz"
+
+if [[ "${PV}" == *_rc* ]]; then
+ MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
+ MOZ_LANGPACK_PREFIX="linux-i686/xpi/"
+ MOZ_SRC_URI="${MOZ_HTTP_URI}/source/${PN}-${MOZ_PV}.source.tar.xz -> $P.tar.xz"
+fi
+
+LLVM_MAX_SLOT=10
+
+inherit check-reqs eapi7-ver flag-o-matic toolchain-funcs eutils \
+ gnome2-utils llvm mozcoreconf-v6 pax-utils xdg-utils \
+ autotools mozlinguas-v2 multiprocessing virtualx
+
+DESCRIPTION="Firefox Web Browser"
+HOMEPAGE="https://www.mozilla.com/firefox"
+
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+SLOT="0"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+IUSE="bindist clang cpu_flags_x86_avx2 debug eme-free geckodriver
+ +gmp-autoupdate hardened hwaccel jack lto cpu_flags_arm_neon
+ +openh264 pgo pulseaudio screencast +screenshot selinux +system-av1
+ +system-harfbuzz +system-icu +system-jpeg +system-libevent
+ +system-libvpx +system-webp test wayland wifi"
+
+REQUIRED_USE="pgo? ( lto )"
+
+RESTRICT="!bindist? ( bindist )
+ !test? ( test )"
+
+PATCH_URIS=( https://dev.gentoo.org/~{whissi,polynomial-c,axs}/mozilla/patchsets/${PATCH}.tar.xz )
+SRC_URI="${SRC_URI}
+ ${MOZ_SRC_URI}
+ ${PATCH_URIS[@]}"
+
+CDEPEND="
+ >=dev-libs/nss-3.54
+ >=dev-libs/nspr-4.25
+ dev-libs/atk
+ dev-libs/expat
+ >=x11-libs/cairo-1.10[X]
+ >=x11-libs/gtk+-2.18:2
+ >=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
+ sys-apps/dbus
+ dev-libs/dbus-glib
+ >=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
+ screencast? ( media-video/pipewire:0/0.3 )
+ system-av1? (
+ >=media-libs/dav1d-0.3.0:=
+ >=media-libs/libaom-1.0.0:=
+ )
+ system-harfbuzz? (
+ >=media-libs/harfbuzz-2.6.8: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? (
+ net-misc/networkmanager
+ )
+ )
+ jack? ( virtual/jack )
+ selinux? ( sec-policy/selinux-mozilla )"
+
+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}
+ app-arch/zip
+ app-arch/unzip
+ >=dev-util/cbindgen-0.14.3
+ >=net-libs/nodejs-10.19.0
+ >=sys-devel/binutils-2.30
+ sys-apps/findutils
+ virtual/pkgconfig
+ >=virtual/rust-1.41.0
+ || (
+ (
+ sys-devel/clang:10
+ !clang? ( sys-devel/llvm:10 )
+ clang? (
+ =sys-devel/lld-10*
+ sys-devel/llvm:10[gold]
+ pgo? ( =sys-libs/compiler-rt-sanitizers-10*[profile] )
+ )
+ )
+ (
+ sys-devel/clang:9
+ !clang? ( sys-devel/llvm:9 )
+ clang? (
+ =sys-devel/lld-9*
+ sys-devel/llvm:9[gold]
+ pgo? ( =sys-libs/compiler-rt-sanitizers-9*[profile] )
+ )
+ )
+ (
+ sys-devel/clang:8
+ !clang? ( sys-devel/llvm:8 )
+ clang? (
+ =sys-devel/lld-8*
+ sys-devel/llvm:8[gold]
+ pgo? ( =sys-libs/compiler-rt-sanitizers-8*[profile] )
+ )
+ )
+ (
+ sys-devel/clang:7
+ !clang? ( sys-devel/llvm:7 )
+ clang? (
+ =sys-devel/lld-7*
+ sys-devel/llvm:7[gold]
+ pgo? ( =sys-libs/compiler-rt-sanitizers-7*[profile] )
+ )
+ )
+ )
+ pulseaudio? (
+ || (
+ media-sound/pulseaudio
+ >=media-sound/apulse-0.1.12-r4[sdk]
+ )
+ )
+ wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
+ amd64? ( >=dev-lang/yasm-1.1 virtual/opengl )
+ x86? ( >=dev-lang/yasm-1.1 virtual/opengl )
+ !system-av1? (
+ amd64? ( >=dev-lang/nasm-2.13 )
+ x86? ( >=dev-lang/nasm-2.13 )
+ )"
+
+S="${WORKDIR}/firefox-${PV%_*}"
+
+BUILD_OBJ_DIR="${S}/ff"
+
+# allow GMP_PLUGIN_LIST to be set in an eclass or
+# overridden in the enviromnent (advanced hackers only)
+if [[ -z $GMP_PLUGIN_LIST ]] ; then
+ GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
+fi
+
+llvm_check_deps() {
+ if ! has_version --host-root "sys-devel/clang:${LLVM_SLOT}" ; then
+ ewarn "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+
+ if use clang ; then
+ if ! has_version --host-root "=sys-devel/lld-${LLVM_SLOT}*" ; then
+ ewarn "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+
+ if use pgo ; then
+ if ! has_version --host-root "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
+ ewarn "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+ fi
+ fi
+
+ einfo "Will use LLVM slot ${LLVM_SLOT}!" >&2
+}
+
+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 || use test ; then
+ CHECKREQS_DISK_BUILD="10G"
+ else
+ CHECKREQS_DISK_BUILD="5G"
+ fi
+
+ check-reqs_pkg_pretend
+ fi
+}
+
+pkg_setup() {
+ moz_pkgsetup
+
+ if [[ ${MERGE_TYPE} != binary ]] ; then
+ # Ensure we have enough disk space to compile
+ if use pgo || use lto || use debug || use test ; then
+ CHECKREQS_DISK_BUILD="10G"
+ else
+ CHECKREQS_DISK_BUILD="5G"
+ fi
+
+ check-reqs_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 \
+ XDG_CACHE_HOME \
+ XDG_SESSION_COOKIE \
+ XAUTHORITY
+
+ addpredict /proc/self/oom_score_adj
+
+ llvm_pkg_setup
+ fi
+
+ if ! use bindist ; then
+ einfo
+ elog "You are enabling official branding. You may not redistribute this build"
+ elog "to any users on your network or the internet. Doing so puts yourself into"
+ elog "a legal problem with Mozilla Foundation."
+ elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag."
+ fi
+}
+
+src_unpack() {
+ default
+
+ # Unpack language packs
+ mozlinguas_src_unpack
+}
+
+src_prepare() {
+ eapply "${WORKDIR}/firefox"
+
+ # 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"
+
+ # Allow user to apply any additional patches without modifing ebuild
+ eapply_user
+
+ einfo "Removing pre-built binaries ..."
+ find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
+
+ # Enable gnomebreakpad
+ if use debug ; then
+ sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \
+ "${S}"/build/unix/run-mozilla.sh || die "sed failed!"
+ fi
+
+ # Drop -Wl,--as-needed related manipulation for ia64 as it causes ld sefgaults, bug #582432
+ if use ia64 ; then
+ sed -i \
+ -e '/^OS_LIBS += no_as_needed/d' \
+ -e '/^OS_LIBS += as_needed/d' \
+ "${S}"/widget/gtk/mozgtk/gtk2/moz.build \
+ "${S}"/widget/gtk/mozgtk/gtk3/moz.build \
+ || die "sed failed to drop --as-needed for ia64"
+ fi
+
+ # Fix sandbox violations during make clean, bug 372817
+ sed -e "s:\(/no-such-file\):${T}\1:g" \
+ -i "${S}"/config/rules.mk \
+ -i "${S}"/nsprpub/configure{.in,} \
+ || die
+
+ # Don't exit with error when some libs are missing which we have in
+ # system.
+ sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \
+ -i "${S}"/browser/installer/Makefile.in || die
+
+ # Don't error out when there's no files to be removed:
+ sed 's@\(xargs rm\)$@\1 -f@' \
+ -i "${S}"/toolkit/mozapps/installer/packager.mk || die
+
+ # Keep codebase the same even if not using official branding
+ sed '/^MOZ_DEV_EDITION=1/d' \
+ -i "${S}"/browser/branding/aurora/configure.sh || die
+
+ # rustfmt, a tool to format Rust code, is optional and not required to build Firefox.
+ # However, when available, an unsupported version can cause problems, bug #669548
+ sed -i -e "s@check_prog('RUSTFMT', add_rustup_path('rustfmt')@check_prog('RUSTFMT', add_rustup_path('rustfmt_do_not_use')@" \
+ "${S}"/build/moz.configure/rust.configure || die
+
+ if has_version ">=virtual/rust-1.45.0" ; then
+ einfo "Unbreak build with >=rust-1.45.0, bmo#1640982 ..."
+ sed -i \
+ -e 's/\(^cargo_rustc_flags +=.* \)-Clto\( \|$\)/\1/' \
+ "${S}/config/makefiles/rust.mk" || die
+ fi
+
+ # Autotools configure is now called old-configure.in
+ # This works because there is still a configure.in that happens to be for the
+ # shell wrapper configure script
+ eautoreconf old-configure.in
+
+ # Must run autoconf in js/src
+ cd "${S}"/js/src || die
+ eautoconf old-configure.in
+
+ # Clear checksums that present a problem
+ sed -i 's/\("files":{\)[^}]*/\1/' "${S}"/third_party/rust/target-lexicon-0.9.0/.cargo-checksum.json || die
+}
+
+src_configure() {
+ MEXTENSIONS="default"
+ # 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.
+ _google_api_key=AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc
+
+ # Add information about TERM to output (build.log) to aid debugging
+ # blessings problems
+ if [[ -n "${TERM}" ]] ; then
+ einfo "TERM is set to: \"${TERM}\""
+ else
+ einfo "TERM is unset."
+ fi
+
+ if use clang && ! tc-is-clang ; then
+ # Force clang
+ einfo "Enforcing the use of clang due to USE=clang ..."
+ CC=${CHOST}-clang
+ CXX=${CHOST}-clang++
+ strip-unsupported-flags
+ elif ! use clang && ! tc-is-gcc ; then
+ # Force gcc
+ einfo "Enforcing the use of gcc due to USE=-clang ..."
+ CC=${CHOST}-gcc
+ CXX=${CHOST}-g++
+ strip-unsupported-flags
+ fi
+
+ ####################################
+ #
+ # mozconfig, CFLAGS and CXXFLAGS setup
+ #
+ ####################################
+
+ mozconfig_init
+ # common config components
+ mozconfig_annotate 'system_libs' \
+ --with-system-zlib
+
+ # Must pass release in order to properly select linker
+ mozconfig_annotate 'Enable by Gentoo' --enable-release
+
+ # libclang.so is not properly detected work around issue
+ mozconfig_annotate '' --with-libclang-path="$(llvm-config --libdir)"
+
+ if use pgo ; then
+ if ! has userpriv $FEATURES ; then
+ eerror "Building firefox with USE=pgo and FEATURES=-userpriv is not supported!"
+ fi
+ fi
+
+ # Don't let user's LTO flags clash with upstream's flags
+ filter-flags -flto*
+
+ if use lto ; then
+ local show_old_compiler_warning=
+
+ if use clang ; then
+ # At this stage CC is adjusted and the following check will
+ # will work
+ if [[ $(clang-major-version) -lt 7 ]] ; then
+ show_old_compiler_warning=1
+ fi
+
+ # Upstream only supports lld when using clang
+ mozconfig_annotate "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
+ else
+ if [[ $(gcc-major-version) -lt 8 ]] ; then
+ show_old_compiler_warning=1
+ fi
+
+ if ! use cpu_flags_x86_avx2 ; then
+ local _gcc_version_with_ipa_cdtor_fix="8.3"
+ local _current_gcc_version="$(gcc-major-version).$(gcc-minor-version)"
+
+ if ver_test "${_current_gcc_version}" -lt "${_gcc_version_with_ipa_cdtor_fix}" ; then
+ # due to a GCC bug, GCC will produce AVX2 instructions
+ # even if the CPU doesn't support AVX2, https://gcc.gnu.org/ml/gcc-patches/2018-12/msg01142.html
+ einfo "Disable IPA cdtor due to bug in GCC and missing AVX2 support -- triggered by USE=lto"
+ append-ldflags -fdisable-ipa-cdtor
+ else
+ einfo "No GCC workaround required, GCC version is already patched!"
+ fi
+ else
+ einfo "No GCC workaround required, system supports AVX2"
+ fi
+
+ # Linking only works when using ld.gold when LTO is enabled
+ mozconfig_annotate "forcing ld=gold due to USE=lto" --enable-linker=gold
+ fi
+
+ if [[ -n "${show_old_compiler_warning}" ]] ; then
+ # Checking compiler's major version uses CC variable. Because we allow
+ # user to control used compiler via USE=clang flag, we cannot use
+ # initial value. So this is the earliest stage where we can do this check
+ # because pkg_pretend is not called in the main phase function sequence
+ # environment saving is not guaranteed so we don't know if we will have
+ # correct compiler until now.
+ ewarn ""
+ ewarn "USE=lto requires up-to-date compiler (>=gcc-8 or >=clang-7)."
+ ewarn "You are on your own -- expect build failures. Don't file bugs using that unsupported configuration!"
+ ewarn ""
+ sleep 5
+ fi
+
+ mozconfig_annotate '+lto' --enable-lto=thin
+
+ if use pgo ; then
+ mozconfig_annotate '+pgo' MOZ_PGO=1
+ fi
+ else
+ # Avoid auto-magic on linker
+ if use clang ; then
+ # This is upstream's default
+ mozconfig_annotate "forcing ld=lld due to USE=clang" --enable-linker=lld
+ elif tc-ld-is-gold ; then
+ mozconfig_annotate "linker is set to gold" --enable-linker=gold
+ else
+ mozconfig_annotate "linker is set to bfd" --enable-linker=bfd
+ fi
+ fi
+
+ # It doesn't compile on alpha without this LDFLAGS
+ use alpha && append-ldflags "-Wl,--no-relax"
+
+ # Add full relro support for hardened
+ use hardened && append-ldflags "-Wl,-z,now"
+
+ # Modifications to better support ARM, bug 553364
+ if use cpu_flags_arm_neon ; then
+ mozconfig_annotate '' --with-fpu=neon
+
+ if ! tc-is-clang ; then
+ # thumb options aren't supported when using clang, bug 666966
+ mozconfig_annotate '' --with-thumb=yes
+ mozconfig_annotate '' --with-thumb-interwork=no
+ fi
+ fi
+
+ if [[ ${CHOST} == armv*h* ]] ; then
+ mozconfig_annotate '' --with-float-abi=hard
+ if ! use system-libvpx ; then
+ sed -i -e "s|softfp|hard|" \
+ "${S}"/media/libvpx/moz.build
+ fi
+ fi
+
+ mozconfig_use_enable !bindist official-branding
+
+ mozconfig_use_enable debug
+ mozconfig_use_enable debug tests
+ if ! use debug ; then
+ mozconfig_annotate 'disabled by Gentoo' --disable-debug-symbols
+ else
+ mozconfig_annotate 'enabled by Gentoo' --enable-debug-symbols
+ fi
+ # These are enabled by default in all mozilla applications
+ mozconfig_annotate '' --with-system-nspr
+ mozconfig_annotate '' --with-system-nss
+ mozconfig_annotate '' --x-includes="${SYSROOT}${EPREFIX}"/usr/include \
+ --x-libraries="${SYSROOT}${EPREFIX}"/usr/$(get_libdir)
+ mozconfig_annotate '' --prefix="${EPREFIX}"/usr
+ mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir)
+ mozconfig_annotate '' --disable-crashreporter
+ mozconfig_annotate 'Gentoo default' --with-system-png
+ mozconfig_annotate '' --enable-system-ffi
+ mozconfig_annotate '' --with-intl-api
+ mozconfig_annotate '' --enable-system-pixman
+ # Instead of the standard --build= and --host=, mozilla uses --host instead
+ # of --build, and --target intstead of --host.
+ # Note, mozilla also has --build but it does not do what you think it does.
+ # Set both --target and --host as mozilla uses python to guess values otherwise
+ mozconfig_annotate '' --target="${CHOST}"
+ mozconfig_annotate '' --host="${CBUILD:-${CHOST}}"
+ mozconfig_annotate '' --with-toolchain-prefix="${CHOST}-"
+ if use system-libevent ; then
+ mozconfig_annotate '' --with-system-libevent="${SYSROOT}${EPREFIX}"/usr
+ fi
+
+ if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
+ mozconfig_annotate '' --enable-rust-simd
+ fi
+
+ # use the gtk3 toolkit (the only one supported at this point)
+ # TODO: Will this result in automagic dependency on x11-libs/gtk+[wayland]?
+ if use wayland ; then
+ mozconfig_annotate '' --enable-default-toolkit=cairo-gtk3-wayland
+ else
+ mozconfig_annotate '' --enable-default-toolkit=cairo-gtk3
+ 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-libvpx
+ mozconfig_use_with system-webp
+ mozconfig_use_enable pulseaudio
+ # force the deprecated alsa sound code if pulseaudio is disabled
+ if use kernel_linux && ! use pulseaudio ; then
+ mozconfig_annotate '-pulseaudio' --enable-alsa
+ fi
+
+ # Disable built-in ccache support to avoid sandbox violation, #665420
+ # Use FEATURES=ccache instead!
+ mozconfig_annotate '' --without-ccache
+ sed -i -e 's/ccache_stats = None/return None/' \
+ python/mozbuild/mozbuild/controller/building.py || \
+ die "Failed to disable ccache stats call"
+
+ mozconfig_use_enable wifi necko-wifi
+
+ mozconfig_use_enable geckodriver
+
+ # enable JACK, bug 600002
+ mozconfig_use_enable jack
+
+ mozconfig_use_enable screencast pipewire
+
+ # Enable/Disable eme support
+ use eme-free && mozconfig_annotate '+eme-free' --disable-eme
+
+ # Setup api key for location services and safebrowsing, https://bugzilla.mozilla.org/show_bug.cgi?id=1531176#c34
+ echo -n "${_google_api_key}" > "${S}"/google-api-key
+ mozconfig_annotate '' --with-google-location-service-api-keyfile="${S}/google-api-key"
+ mozconfig_annotate '' --with-google-safebrowsing-api-keyfile="${S}/google-api-key"
+
+ mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
+
+ # allow elfhack to work in combination with unstripped binaries
+ # when they would normally be larger than 2GiB.
+ append-ldflags "-Wl,--compress-debug-sections=zlib"
+
+ 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_annotate 'elf-hack is broken when using Clang' --disable-elf-hack
+ fi
+ fi
+
+ echo "mk_add_options MOZ_OBJDIR=${BUILD_OBJ_DIR}" >> "${S}"/.mozconfig
+ echo "mk_add_options XARGS=/usr/bin/xargs" >> "${S}"/.mozconfig
+
+ # Finalize and report settings
+ mozconfig_final
+
+ mkdir -p "${S}"/third_party/rust/libloading/.deps
+
+ # workaround for funky/broken upstream configure...
+ SHELL="${SHELL:-${EPREFIX}/bin/bash}" MOZ_NOSPAM=1 \
+ ./mach configure || die
+}
+
+src_compile() {
+ local _virtx=
+ if use pgo ; then
+ _virtx=virtx
+
+ # Reset and cleanup environment variables used by GNOME/XDG
+ gnome2_environment_reset
+
+ addpredict /root
+ fi
+
+ GDK_BACKEND=x11 \
+ MOZ_MAKE_FLAGS="${MAKEOPTS} -O" \
+ SHELL="${SHELL:-${EPREFIX}/bin/bash}" \
+ MOZ_NOSPAM=1 \
+ ${_virtx} \
+ ./mach build --verbose \
+ || die
+}
+
+src_install() {
+ cd "${BUILD_OBJ_DIR}" || die
+
+ # Pax mark xpcshell for hardened support, only used for startupcache creation.
+ pax-mark m "${BUILD_OBJ_DIR}"/dist/bin/xpcshell
+
+ # Add our default prefs for firefox
+ cp "${FILESDIR}"/gentoo-default-prefs.js-3 \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+ || die
+
+ # set dictionary path, to use system hunspell
+ echo "pref(\"spellchecker.dictionary_path\", \"${EPREFIX}/usr/share/myspell\");" \
+ >>"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" || die
+
+ # force the graphite pref if system-harfbuzz is enabled, since the pref cant disable it
+ if use system-harfbuzz ; then
+ echo "sticky_pref(\"gfx.font_rendering.graphite.enabled\",true);" \
+ >>"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" || die
+ fi
+
+ # force cairo as the canvas renderer on platforms without skia support
+ if [[ $(tc-endian) == "big" ]] ; then
+ echo "sticky_pref(\"gfx.canvas.azure.backends\",\"cairo\");" \
+ >>"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" || die
+ echo "sticky_pref(\"gfx.content.azure.backends\",\"cairo\");" \
+ >>"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" || die
+ fi
+
+ # Augment this with hwaccel prefs
+ if use hwaccel ; then
+ cat "${FILESDIR}"/gentoo-hwaccel-prefs.js-1 >> \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+ || die
+ fi
+
+ if ! use screenshot ; then
+ echo "pref(\"extensions.screenshots.disabled\", true);" >> \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+ || die
+ fi
+
+ echo "pref(\"extensions.autoDisableScopes\", 3);" >> \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+ || die
+
+ if ! use gmp-autoupdate ; then
+ local plugin
+ for plugin in "${GMP_PLUGIN_LIST[@]}" ; do
+ echo "pref(\"media.${plugin}.autoupdate\", false);" >> \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+ || die
+ done
+ fi
+
+ cd "${S}"
+ MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX}/bin/bash}" MOZ_NOSPAM=1 \
+ DESTDIR="${D}" ./mach install || die
+
+ if use geckodriver ; then
+ cp "${BUILD_OBJ_DIR}"/dist/bin/geckodriver "${ED%/}"${MOZILLA_FIVE_HOME} || die
+ pax-mark m "${ED%/}"${MOZILLA_FIVE_HOME}/geckodriver
+
+ dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
+ fi
+
+ # Install language packs
+ MOZEXTENSION_TARGET="distribution/extensions" MOZ_INSTALL_L10N_XPIFILE="1" mozlinguas_src_install
+
+ local size sizes icon_path icon name
+ if use bindist ; then
+ sizes="16 32 48"
+ icon_path="${S}/browser/branding/aurora"
+ # Firefox's new rapid release cycle means no more codenames
+ # Let's just stick with this one...
+ icon="aurora"
+ name="Aurora"
+
+ # Override preferences to set the MOZ_DEV_EDITION defaults, since we
+ # don't define MOZ_DEV_EDITION to avoid profile debaucles.
+ # (source: browser/app/profile/firefox.js)
+ cat >>"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" <<PROFILE_EOF
+pref("app.feedback.baseURL", "https://input.mozilla.org/%LOCALE%/feedback/firefoxdev/%VERSION%/");
+sticky_pref("lightweightThemes.selectedThemeID", "firefox-devedition@mozilla.org");
+sticky_pref("browser.devedition.theme.enabled", true);
+sticky_pref("devtools.theme", "dark");
+PROFILE_EOF
+
+ else
+ sizes="16 22 24 32 48 64 128 256"
+ icon_path="${S}/browser/branding/official"
+ icon="${PN}"
+ name="Mozilla Firefox"
+ fi
+
+ # Disable built-in auto-update because we update firefox through package manager
+ insinto ${MOZILLA_FIVE_HOME}/distribution/
+ newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
+
+ # Install icons and .desktop for menu entry
+ for size in ${sizes} ; do
+ insinto "/usr/share/icons/hicolor/${size}x${size}/apps"
+ newins "${icon_path}/default${size}.png" "${icon}.png"
+ done
+ # Install a 48x48 icon into /usr/share/pixmaps for legacy DEs
+ newicon "${icon_path}/default48.png" "${icon}.png"
+
+ local display_protocols="auto X11" 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='firefox-wayland --name firefox-wayland'
+ newbin "${FILESDIR}"/firefox-wayland.sh firefox-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='firefox-x11 --name firefox-x11'
+ newbin "${FILESDIR}"/firefox-x11.sh firefox-x11
+ ;;
+ *)
+ app_name="${name}"
+ desktop_filename="${PN}.desktop"
+ exec_command='firefox'
+ ;;
+ esac
+
+ newmenu "${FILESDIR}/icon/${PN}-r2.desktop" "${desktop_filename}"
+ sed -i \
+ -e "s:@NAME@:${app_name}:" \
+ -e "s:@EXEC@:${exec_command}:" \
+ -e "s:@ICON@:${icon}:" \
+ "${ED%/}/usr/share/applications/${desktop_filename}" || die
+ done
+
+ rm "${ED%/}"/usr/bin/firefox || die
+ newbin "${FILESDIR}"/firefox.sh firefox
+
+ local wrapper
+ for wrapper in \
+ "${ED%/}"/usr/bin/firefox \
+ "${ED%/}"/usr/bin/firefox-x11 \
+ "${ED%/}"/usr/bin/firefox-wayland \
+ ; do
+ [[ ! -f "${wrapper}" ]] && continue
+
+ sed -i \
+ -e "s:@PREFIX@:${EPREFIX%/}/usr:" \
+ -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
+ "${wrapper}" || die
+ done
+
+ # Don't install llvm-symbolizer from sys-devel/llvm package
+ [[ -f "${ED%/}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] && \
+ rm "${ED%/}${MOZILLA_FIVE_HOME}/llvm-symbolizer"
+
+ # firefox and firefox-bin are identical
+ rm "${ED%/}"${MOZILLA_FIVE_HOME}/firefox-bin || die
+ dosym firefox ${MOZILLA_FIVE_HOME}/firefox-bin
+
+ # Required in order to use plugins and even run firefox on hardened.
+ pax-mark m "${ED%/}"${MOZILLA_FIVE_HOME}/{firefox,plugin-container}
+}
+
+pkg_preinst() {
+ # if the apulse libs are available in MOZILLA_FIVE_HOME then apulse
+ # doesn't 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_desktop_database_update
+ xdg_icon_cache_update
+
+ 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 "${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
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}