summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Deutschmann <whissi@gentoo.org>2020-08-30 01:18:51 +0200
committerThomas Deutschmann <whissi@gentoo.org>2020-08-30 01:19:04 +0200
commite39ee0b63420121f05861c86ad0612cccdb98b45 (patch)
treee1bfaa0ade22d96d16f88d10a9badde48b01bece /www-client
parentapp-emulation/containers-storage: Bump to version 1.23.3 (diff)
downloadgentoo-e39ee0b63420121f05861c86ad0612cccdb98b45.tar.gz
gentoo-e39ee0b63420121f05861c86ad0612cccdb98b45.tar.bz2
gentoo-e39ee0b63420121f05861c86ad0612cccdb98b45.zip
www-client/firefox: bump to v80.0
Package-Manager: Portage-3.0.4, Repoman-3.0.1 Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
Diffstat (limited to 'www-client')
-rw-r--r--www-client/firefox/Manifest93
-rw-r--r--www-client/firefox/firefox-80.0.ebuild927
2 files changed, 1020 insertions, 0 deletions
diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index afb7d06d6b61..471a1e84bca2 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -276,3 +276,96 @@ DIST firefox-79.0-xh.xpi 457461 BLAKE2B 239a5f60677f7d45168108095d226f1150105110
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
+DIST firefox-80.0-ach.xpi 504733 BLAKE2B cd52c95165ccf00c0bc995f869c65cc4d3b5ed8b5cb698b1343d1cf6272a0d749cb4d9cf5e05dee39d57bfffec13955b4176422d22995387cdbfaa1014e4e73b SHA512 235c396fb2a45e4e18b0834196565498987bedf63d3b8968f983b994c660d71400fd1966aa2cdab3bc1fa24ccc82384e079ec9db0ea12b4fa447e6f58233661b
+DIST firefox-80.0-af.xpi 444437 BLAKE2B 3b40f0ff49e4e2d4c3780f1312db9ae2cd7c0c93dbb23ae667a9f9d0183a31e9db423e69abff43da5cedd9abed0b4be654b24bf125cffa6a2072c4338a436bc0 SHA512 5381e4cfdac44d088fc6c9c778b03780d79ab39f440e6beece40c4e62c0077fb461397059484318520a55ef4d9a6637efc2b2f2599ed3e7311900409d7b638f5
+DIST firefox-80.0-an.xpi 542574 BLAKE2B 33c2539310261ecdb6ea354d6acd93d2f14eaf66c978f595f0808dd36a4baa1ec6f11b3d76cb2d848a5756373eb01a6813c4fcb994589b1adb95504a2f36f5be SHA512 85b189ceeb0837d58536242f15c04c0f4eced857f95e8f299426cd2a98ca0bbc5a106e5fab8c4e42c8ff245905e65103f09f2db4dec0cedb73f94c7829c87dd7
+DIST firefox-80.0-ar.xpi 591968 BLAKE2B d928bf7801c3980b20385737e20d1642c55586a7b29825e9e75f74414cbe38adf0f454b38ec5e001b1e511098c5c2015da5e1221ce759a97a341885c913bfd19 SHA512 9ecdb8a4fc807d6a53c3007bd66e587556fcf11d2393d568ceb089307384ee709d9b86620a8b85b9cb53fc0d6ec34c0cdaeef279a24abde2de8229b1fd2d9f5a
+DIST firefox-80.0-ast.xpi 502295 BLAKE2B d4b10d387a0b204635b9a8edd15d676092b95f50405671846931c31dfc8a1d2851543b4414f431fd04049586be48850fe9b2aa548e3e42681b6a4f68fa61e655 SHA512 838d8965a611cb4987bf2f947cf8fda4eaa5bc65582c9e0f1c319c3cb1573f0da18c89db72d3606c588175836eafcd2e8daf0fd378553b8e26c2f35f19ed5f23
+DIST firefox-80.0-az.xpi 539500 BLAKE2B 19f4c01bd8b92e5ba3ceff935984577ebf790150fb0339a40cdb6324c5a77894f2a54e8f5be3f5007d9f1f244fbdd0cef2b69b2657e9cd117c294a25b625b1c0 SHA512 fe4fef78143fd4c0050b871e54249479344f6dce786040aa018ebe2aa9409d7e4f6085defa246cc9090c38c8c6d2c1c275feac403196d94f8dcca3c1e9ed7b25
+DIST firefox-80.0-be.xpi 652456 BLAKE2B 23d70fa63cb47d40fc99318ef73f4c2a2b5ba0e815de87132617cd9fb58423ce89a0fa9e590505637ce2796bb7c3e6c88ad2309d8f3b25edbc1a2b6585a8d583 SHA512 87d8005bda12d19a21a6a8d7bb13c2594756829a61cbba94adbe3a4d756f6d5b592ead1ea90720ac291402b7c04eef7395ab8d48ff97a921417768a2718d197c
+DIST firefox-80.0-bg.xpi 614842 BLAKE2B c9d963d5961bb7ccb150415db8c683f05d61905968f6a32d723747765de34a6c1cb75ae679e0d493d7eb7f0419c286ad9595c1048218dad17f032f54e06220ef SHA512 381a1307e119c03b5af27af701956a3c5b9f4fdbfec50fa68b932e9701608f551a78d75121263c20229d6b38f76f980ccfc43ee70ac47e7367127149c2b982ef
+DIST firefox-80.0-bn.xpi 635449 BLAKE2B 61ffc9681126b50090ad1fbfd8f6484aeb532b537689f8539fddf79f7512a7a37293a53f2b16859194b70bf6ae83e6e126240ba3ee17b0c5ba94275a51fe0274 SHA512 0a1830c46aee8440471e3d75ffc3728c2f2bf55abb31082acc8b127e2becbfb8b7e2d8e6cb7675d058e95389e72066f634dbc48402d09a0cccba303c9770ee5d
+DIST firefox-80.0-br.xpi 555980 BLAKE2B 0a76b7eeaebdf369670ff1128b2a488552dbef75d06359e20d46c7404aa69cd6af3a70a08a7b542c533cf8d4ca6b2c40c50b5634cd02168cb875bd819c57fe46 SHA512 526a6e409a4991b00f7e84367463e7168c8e884980e293bb8c10ac9c73b098eabd13606fe6e0137987cf88f474671fb782daa3a0b6a80c7c6d829a02771197c9
+DIST firefox-80.0-bs.xpi 513558 BLAKE2B 8b1615856551badeaa2a331243c944e9eea783d16fee34fbf3895e66e31d218684b58294be7011073a5d2e6c9bd0a4b773d69765bda1893b85af3eafaf3d39ab SHA512 d9b871fd4cb201f597e33c807921a93865c8591eed0ab985b1b3ffc9ef41c239a3b327cff98ebb4c9cd39e3bf5c1c79749357645bce9c09b1cd664f3463c132f
+DIST firefox-80.0-ca.xpi 564409 BLAKE2B 8edde4a068715a481e2a4968e1637b9a56c228be7fa75b36c7700eda4e9305be9eef53e859a3e96a89ab74f6cbfbeb84529f3d93355f030088c1d913af526c4c SHA512 5c229deca5b45c7bb4807f220775eb11ce34ba2b63eb168f502074958fbf60ecee851996298fef9e392ef47b45d393f7b129d7da317ed3fe064dfc9d2dac6bce
+DIST firefox-80.0-cak.xpi 589689 BLAKE2B bee590ae342c4d581ab75c6d7b5c91a366efc67bc9ce54d0ad5bc86af0c4508fa663156c330a7ef0aba2baebbdc303e16010cd7a1dd5fc6e994a224f0b27903b SHA512 7304602473f61281db8126fa03384fdb077397173564936c4c3c703c3477b276cd6ef425011b3b5d6da9795de1472abf735e271a63d70403e7f03f3b51aa1db3
+DIST firefox-80.0-cs.xpi 590458 BLAKE2B 2bd29730192843aa41b3b5a39daa3841e42a36e6212e80820cb08720ab6884be4e74186993eeb22b0c256ed1591d734e43b4c7a516430095c338fcd09f0c7604 SHA512 9f8e585a4eaca727e0ac0a7767d11fd6e795d2e041b3d86d28fad4772ea3b32634e3a5ec8b0a20f3eba5706882771544fb0b798edc1ea8b0f664a1cab2fa89aa
+DIST firefox-80.0-cy.xpi 574417 BLAKE2B 342d364fa946aad52d4902bcada88072e8cfeaf92dd7332b442e71be378ee1b2912124efaab5aaeea2a724f66c099e130b1f7f11f098e9b0076c483c136b7db8 SHA512 c25a80cbac5383f10c1c0aeb279b2a8799fed2b8074188e534d8e8177e78cbb3e1d1dc476263802f807c188311c989bca8cad99b9c9b4b4b2bb2b0d97f5c7d2d
+DIST firefox-80.0-da.xpi 564796 BLAKE2B 7a1c859722d437232675866b25e5fa7f62d6299f8c4a9ad51c5713fdaf0a2f8c521e692b8b47da1d243bfd41a3a3a0b49aeae3b15e68970537eb2e9f2e712103 SHA512 3bbcbb0c1f13d33e304a8898f70e6ce57c687bd6045e3b137914cb1d142b0a08ebb3067e1a25d1c136b0c2f2e580b4d5ba1b2fcdb9f48f468f9c079eb13a6cfb
+DIST firefox-80.0-de.xpi 588397 BLAKE2B f4fe0ac9111f851a29d290c92feba3d2e1f954e4f71ecbbae8e4e9fa16dfd67ae9f2d731c3e7d4a1544887086e34027fa4f6d288b28e756f31522cb925276f7f SHA512 e5af7c4c3240e5074e7bcc0a6165ba60cb5dc5d57063479f900570cd4361ef93308e9e3d37d9a413526c25805e8f6239ba4ab0d13c20a9931ddd75b566f5946a
+DIST firefox-80.0-dsb.xpi 598524 BLAKE2B 3080e318bad0fd9e64ccbbdd2a65cb27953eae75d04b6342c9083936ba186916f21805c2899a1732c4e294446059bd1d9fcc9e05e3febd0a1ae8ce247e8d4131 SHA512 e58640c1b7922a808536d0d785faae6dafa0d61a6b222e4e38b805443383f5782cc80f83aec6cef056207b1f6789674d0e20f57e608093ce147b4c484ef5e573
+DIST firefox-80.0-el.xpi 674078 BLAKE2B 51b8f4d3f45b030d525a4e88b9817932d68dfbb524cde4416d79712ce440ffbdf477537488b401a38afa8d9ec951f4014ce0b3652ab5de05a91982ba53d4d75c SHA512 8e4b01e8155fada8998dd4b312f542ffcb28d4c4893ee8961cd9d8a1fa2c1dfb0735c43677496c9ef3a277e16b5bdf54d7e5474b004367da61f48fee9cd321fb
+DIST firefox-80.0-en-CA.xpi 541624 BLAKE2B 9fd3eb9a714eaaa46e38d61eb79c1f619aa19929510ab4fd7ddc0c6b2789c509a74b80a459591605a1a6c431e0a3848c2d9a8943a2234752eea59f6df82d4055 SHA512 27feb3f1f8d150bbe220562bee594bb4b8a0c9d50a1641a68b21b739926d1deaffb2f56917d8c3bf3306991be5d9c2ce89a91581b1b0e836e672a94ccd8216e1
+DIST firefox-80.0-en-GB.xpi 539418 BLAKE2B 6962aa53d86894ac5d5e5e3b70c7cf567b886abd3c20805ddf6ccecfb922c5efec7ea6fcd059dfa3aedddd0cdb32c171e76924a6ce84a7e68dfa8768d7a6c66e SHA512 adb065201294e25a1e3b38294648555e8761a1dc69d04d83d1f3b4256b635a10dc17cd791b1455854caf9e56e46d117bd3101e8cdf00d920d8e599e9c6717120
+DIST firefox-80.0-eo.xpi 566779 BLAKE2B 066bfe363b812f458cf469d91e4e1915b99b094aa5a107442a752000bd97821ab4387e7abaf7309ef7427ebedfb3d9a739f1b744ba990b4a6fd34bf8c0503f8e SHA512 978d206e69089f556ac735bedb5b1c8b56752ec42064da678217cdbb00eda0d0ea92b324b260c1564d8d22f42e0d8a1c18431e895584674dcbbb6b16fef0189c
+DIST firefox-80.0-es-AR.xpi 579746 BLAKE2B 9ba5e77fe01b56fd9413255a5845388b9b8cf3b99083e07f238a0979c018e293cae431675a8fca42254c277f5159928da3e66c856bbb112ee412d0c1d4a098a0 SHA512 cc216aa4367b99c34f7c665a8f3e5e2736c1ed90e8a07e554ac5b91b570a0aed6f4c5f02625d3100f653d037e162fc7e19e968e744ddb0477942eab56c09d7f4
+DIST firefox-80.0-es-CL.xpi 577776 BLAKE2B 02170a2da7727dd3f70b52ec61b18cab7c72d4a7346ab7802e6e730cfe0a9e246f051dfb6441ff1a4a6477f065b03e11951a4e15b09c367154744462b75ff154 SHA512 6a656985d043fcbdcf44ca82fff15e98ff03698315a8c9000ebc15d7aee8aec3121a728babcef3be08918a9a5ef8f534ee14f8c2ea1139508f4537f215a324b0
+DIST firefox-80.0-es-ES.xpi 563139 BLAKE2B e5189f2e302c7d0f2a9d6135402f05097cd2bf51a5df15b57eeb248935f71d42985112611f95a5f7fdb915e343bd7dddcc12cb5bbd5aa8a6f045bd0e228a4427 SHA512 5fd3f8de7e5f696a468eb59c1bdef1ddb39b171480b5e95821bdd799f9ab814bd4bfcae3168fc223ab564e9f374372259849e440333a448d370eb19b25554ee6
+DIST firefox-80.0-es-MX.xpi 575194 BLAKE2B f6e51668701120f5d6bb09f5b43fe93e7d0edf857e20ce9134c676c15b5740525a6e6f2f959a2767a82399231f18c23f8aa4163e8784e969cd425ef215505037 SHA512 0897ebd9ceaa01c50a56eda33b5a074e7d68fa1bfb6ae0532c9c8abdc7bfc341232d1692528d44de0e337242384d7aca2b5d455d9f3638813539f77b9e2d784d
+DIST firefox-80.0-et.xpi 537739 BLAKE2B 470fa5c9065b21e0a904e5d6c057b3825612a9ce28b189d7acc22514f832da858653b01cd90091cae46077d568781d9bfafd37da96118baca217898030bdb8ab SHA512 dfb6a11512cdd36b960d92bc4533ce9d75e298e2aab90e6f18b5d4d9a57d14e60fd412093a6b14cba5a10cfeb22f03ca0a4b60d568046270c1b711aa20d708df
+DIST firefox-80.0-eu.xpi 558710 BLAKE2B ec466ad75e958674bb6e48ed95d938a9de5c877394d5f0d52f0dda7fdf65d624ab520c776f5f4475236b845de78d175aeb88663aa4599d7778b3c21ebefc0e3a SHA512 797e056b5fdb54ac844a2173fd3cd18a0c5adc656500d4eda18adf5a863b7b9d309ed87352f48e5e717419b832d7e807081cfca433918cb483ea856464afec33
+DIST firefox-80.0-fa.xpi 597295 BLAKE2B cc6e733346be6a25f497262a0b94edc105882248f6e9b3c92231c8f0a8e73b16b95e467e5ebc1b6b5c31f1a850aa9a3615f8f692916d9b3271360a0c1dd7ee1b SHA512 f1920b3b2a0b25d6c0ee204efa0421ff1dd7737ca78174fefa343b42b10f4d7fbc3269127ee951a081b13fa38ded195fc16c032f833b457f4930e0418f1f2920
+DIST firefox-80.0-ff.xpi 533670 BLAKE2B 3e931d0365d52dde9803ac5867c45dbe0df79e22a3ab036c2c65afddfd17331dbf155e54d64d14234ddb9d396330b95e81e18bc0f2274fb99b777305c6350f72 SHA512 45d83a5e3e1cc65a792748638c96412e538f02d7568036070bcb866b10e71eecc70a5f77669e277154c8e9c2e287e35a5b57357a151bccd3f86c4ce9013ea69c
+DIST firefox-80.0-fi.xpi 564428 BLAKE2B 4e13fe913f7c25a3de7e5190456ec15daff91fc3e8a7b57dd018de7f601ad9367e25d6338eb26c958aa2c01cfce7245b4f8d0064b21df30334cd5611a05071d7 SHA512 b4384519931c133e33e0d8217fdc337a9d79de43d1db8b5e18d1a2f9b7d253c4022b62efbbbb7a88647674db8b01fc5053f92ffc922a05f4455c4cdd7653e741
+DIST firefox-80.0-fr.xpi 588795 BLAKE2B 5f9b9827ecb2acecaf62d74e3822c161a09fa5837a99c4e305071d2977c7cce18c385351abc2ff38b095f70ec34b504ecd6943ed2c12f10e094ff84bfe1c01d2 SHA512 d2043279f28b1c17b5f3ec55eab4b93f073fea76ad8a9da5217c0abcaf47b286ae1ab27b61c5b29b09c9e98e33491e923c90597988cdfded2791d86d3b9ac741
+DIST firefox-80.0-fy-NL.xpi 574021 BLAKE2B 6505e12eb43bbb2f30c5fa5756cd5a2280c07ddaa90c88baf511d146d9a51717a97cf8dbf8848ce733556d61ef411cb0104ef912047b1739a39524883660cd39 SHA512 ec8d5abc481cf4a993526a89117cc335455728e15e377f2715119cbaf024c3c0e81d17e800b459d5d690d01f8bff2da00b47f08d2f9a37901d258e7c867b570f
+DIST firefox-80.0-ga-IE.xpi 516393 BLAKE2B cef98ce0c810866f1c52a836fc66c89df1548bc26f3dd2149601525be74490a46ec3cddbfad61d642f4f9d2d1df245c664bd0b826476040b84a3013e5ca6ca4b SHA512 53f581fcf35821e8059a98970456705787a00798df59af3cf62ff65fcee79bb947b07240cd365f4251b8c83f26e8b0272a89d4135b523635c55d0352cb787552
+DIST firefox-80.0-gd.xpi 546420 BLAKE2B 378ebf5b7b3c2ec9f1fcbb47a135c75b2ca243d9e9636dd39650ac1201ca956c7650f99f842ec60943f7ac5b27c16178760ed25410053a0072ccf9e828d82d8d SHA512 18bbfd8de7641c15b792597d28ee31c0f4426f50894f747498611cf4530927335fc901fee999316879a92bf8e8539ac18fc4a30ba691379bd57f1db3b6110981
+DIST firefox-80.0-gl.xpi 510330 BLAKE2B da4196910965fe075f023dfc23c5adc82b2cd1f12b7726867519e2f1b0714db99bf84050903f6f2aea2bee6ec2225074228094ee6a7f8bdeaf1d62d78c5ff503 SHA512 843f80f4f8b5b4fdc08eb3ec98e9ed25f5dc100ca5a011e1605d3904abdbc6b883a0c1d98d13e1c53f0b3e9619d67ff75747e9b63ff9c04df6a7f7e487489b36
+DIST firefox-80.0-gn.xpi 590942 BLAKE2B 3a97481ee3c2a86963379d25fd220844548c209dceb8aa31bf4b537db9a9dcff26317efc1bbc82455c95bbf1486a7ba58d5fa14bc6b77cf4fb3ef9b923492b48 SHA512 ad76a5d1e8d7638796964d178387e9786ddd2e4f8b831ec5e7d16e6377acb5f0a370796d18677cd0105b95391f482d960a4a24c13fc5b6982e05dd38de2c5934
+DIST firefox-80.0-gu-IN.xpi 604613 BLAKE2B dba5afa8f274a906fe53cbfb6e2c016a4c98ff5eaa13b0252f67e14be978c2b9beb90207793ee4870cc0ca6ab12b88868450903302972a2535770dc40e92786f SHA512 86e4b63784d7cd54136194fcc6d91d04302616d96f2a2a3d8d2ba700b20ad695c9b32ad8f0f3047400d4c04da06df634bd41b87283036f87e3f7e9ab60c1983e
+DIST firefox-80.0-he.xpi 592241 BLAKE2B 5bcc9f4b50898483536713d063a8fecaeaa4a02f631e5d1b767e415348ac4b27125b0e451a9039fa0f6b61589526d5c59c88c5f7ca68c6e6ffbd38809f4823d5 SHA512 72a0676523d115d25de173bab362b8e2f683deb7e61036dfab33784a17e95502346a4b576d511655b5ecd80bf0dea50e8331492aa581e886d40a2c5de117e79d
+DIST firefox-80.0-hi-IN.xpi 626040 BLAKE2B e0d54b35da0cf59ad7c6af7287615cff1da6c70d7b6a6d85cfd4e897f1922d9476e0439628166139ea1165906b2ba6e63f8847d000f49f220de1276e04f7e027 SHA512 c545f8cad38a281702c846982a4901b3014c7c21c9acf64264a8cbc7e9e38a7b53cc52a5199111b2595035ae4167a8fc007aa81c9ed4ed4d24e53726e5db524e
+DIST firefox-80.0-hr.xpi 570157 BLAKE2B 5adc5d7f77cb3a66f8513f0739807934b4537731291b6bd15f2b4b2b8488c9fc601c599c32e4e260bd1cafe27190f53f882884b0f00adb95c3284bfde1ac8ed5 SHA512 c2df2413d66da2ebffcbbbfb9845fd16ad34da8b02884f9955fb824b04b66b68146d190f8bc01faf358d228d9c75b9443484ba822b70a7f82d62b7e30abe228b
+DIST firefox-80.0-hsb.xpi 596070 BLAKE2B b539c32bb8e8c4d88cd8c930b6af45f8edc2b67b2dd3e0250da35a61aa69ce9c1c0e74a09c5d2785ead05a8fed9566197f085f4a84118d7ff8d545a53be59ff1 SHA512 bc99e122b9a55a2740a3ded8e1b9cda674e83632a1e16439b6acf7cc42fcc68053220fb7b053dbf8ddf8aca6db286ea50720f3b7d9d4b690a6dc7c1a98a4abb7
+DIST firefox-80.0-hu.xpi 600886 BLAKE2B 15af42cf5f330e70c5de446dbd43014f6a1e869132527a92ec0a97a9435f565c45e00135ae31c16b140a580bef139ca62451b0664afa35a96dc9ac2b706075f2 SHA512 630ced3a7e92b624ceddbb73d29f02f5b7144ab03664188fa54649ec675aadca2239c6f045414c70ab321192a64585deb7ea0589fb8cb501bfc94f2643cf8c0f
+DIST firefox-80.0-hy-AM.xpi 651933 BLAKE2B 8a57b02484fadb67a08ba7cfb5590981ce57c4558ef51a1b9e188d3fe7ab3127a1b0addb81fd0d4931dbddb12d279ab69bbdda0ffef0d90b15ede96795b7ed04 SHA512 1eb973be9d6aa104dc4f3a0fd5838081afd4794203440738d375da6b15ad73a210806c211908af88924862bd1cb8a9b9334605a97048e44b3b389e6c73501272
+DIST firefox-80.0-ia.xpi 565441 BLAKE2B f6dcabda9d21180e31b7a9c9a19731c3a7aa388be1b34aaa1e2c1671aee2b16e2b026f80195b1729cbc95a78ba8011e38391f475d59ce4015696df5a61ba5f30 SHA512 b218a2b16418e0b9bc75214939d5883eb7a0c080a863faa9f0794c8456186bae10643bee85d1e6b5906325fe37f495ba903f7d0c068d5f95d01f7929081b4651
+DIST firefox-80.0-id.xpi 558580 BLAKE2B 08545ca1926a3de19fba919ef84067bd2612b4d8b78b1610ff529c15e58a954733463c7b628f1c009ab3b7a33928505eab9c52b4038cbd43bdbe864bd821ab82 SHA512 6952e9e1a71224e00c3b811fa68328a264ed0e92ef7292a8a74ff2aafcaa020b94b7ddb69763e6b8e0fe7600bc5a639f987d097aa9413635e5e3c08326554bad
+DIST firefox-80.0-is.xpi 529650 BLAKE2B 4f5b9e15575bab77dadaf30ae2e8d217cc5222840fdf6015fbee3d7a50002b6ad183a80ac7d843f954b69a22f00e8b9f2e27ef89c8dbdd0b56a660b9966cb1e0 SHA512 b4403b4c87c5d8addb07ef40725ea2b6449f70de7cfb91d6eded5a0dd5195074f392e66b3ef2544fc2a40050b4ef58ceacc4ecea8d64308102e6b5624cf0cbc6
+DIST firefox-80.0-it.xpi 463726 BLAKE2B 1e3c935d51a96002810ca83665d85aff3812a4da3a15ed58e1486db77ad742bec2e0548f2e4ddcbfb28c8193bf5fca8c047726991254f8cabe1fa54a513ca166 SHA512 d06910e707156dff22045cbf3b2d04314039bdab998528cfc73d29bfc31fe00c69aa7b6a6da9aec74e5b75b8efecc392d039250b5a329df8f7de7d3cd2f0cf29
+DIST firefox-80.0-ja.xpi 627644 BLAKE2B 82cdde1367e3a3a782c882f6f674a4be85d239bf04970fb4ee2fdac97d22aa41e75244c760b6a979a71c47e7a2561822cb07599f63c197f01c884f4641689abb SHA512 44439db8da3925d074bf716234ebb9425d7dbe5edf6cdbf916687bdd46b16b15470683fd46fb2546e1035a8c54bcd10be3cd83249aa9059fff273c4e91ed9d54
+DIST firefox-80.0-ka.xpi 626549 BLAKE2B 8cb5de31d59284dfb03bb898debe44bec9797f569d7cab03cc860ad185e1f51ef36e1b57860d5a394fe6c4f8fab81ecaed344f2b25316cebeede607d3e15c61a SHA512 60e8b01afd76523d43c2fd1f3713c8844a51abbb6e50ee2341725d15cd4845e2624ba9ab5e8be6f611847e364d13a20da57909e64b68d2c56b714ece9d3ef5cd
+DIST firefox-80.0-kab.xpi 583779 BLAKE2B 4a06e4f97ccf2863aa359f1ead05330a9d85caae183e592d86aa93b444c0b36c9c4f7ccaae3ba399a7944d69e6035426783c45ae64d464c3cc578d0b5dd55a39 SHA512 7cdef01b2b6136a94d841b1362a06835523d9d9ee6e2e6ed9bca356248ab6bcc5166e93ceab51acf2c1472ec304da42ec657ea0978a0f7c211933d091829ffb8
+DIST firefox-80.0-kk.xpi 649823 BLAKE2B 6927402fd82a28ae2e9bea2caaa9f7841f6b5debc7098fa6bac8f90ceab470c3300af012fb75d500dd01c71f663f53637c00dc9b0072564f203935e4dddf721f SHA512 5afffc78d8dd254a895515dfc2609fdc1317e09173863717255d343605a093dd38a377e06fdf21887f11c9aca515a3c2004e42cca3f5ac9dfbefb0f2f343d489
+DIST firefox-80.0-km.xpi 568620 BLAKE2B 2510031ae8ede92ea5a667714f9d09dbb88f31229ce88f5d245c7c2dd506a2c0169eba78c6456fd437203a2070027cf4cec913842a14864d7902cccc746fcec5 SHA512 93f4ab94c10af2b12a4d627efd648399b6a35f171720221dfdfc30cc1069f95e89353977d429ef5e424fbeb72879e39483d62c82480bdcf62dd4b8fee28638a4
+DIST firefox-80.0-kn.xpi 559852 BLAKE2B 0929da059a1f2c4c54403f0bab631c8f9d5199a5553e09e888fe7cac781debfa8fd3029832d8ad49af624473d5297af4e5dd2791cd0f6912c926c9698807f2df SHA512 4eb13c48ecc55cd725a1c4566afacddc840eb362a4de5ca85ebd8bedc3c1af111de3029e525830db4a73deda8c1746f3f246b32acc0340d1e05c54790a99513e
+DIST firefox-80.0-ko.xpi 614540 BLAKE2B cbf7e4dbf957d8163b6dd616385380120819aeacf991c1de00b0865cf2f48f6033771163f1dbba2fdee6c855cd52f4e9363460bd4d079c6cf03693cd69fe70b6 SHA512 dd6060dd0f89b7d3429b9a1af14b1c27196866f8fcb12676265b1f392b8d2855d5ff649ec9d82b8a281fd55f85ea0c69a1c95ff006af60ab7a3dc7e466d46d71
+DIST firefox-80.0-lij.xpi 529109 BLAKE2B 1aaa0b985558f9d3b561a2b28eeda90c30e47e1edd8d97fef8572588427d1f95eb09eee84c70a99d38664add0bec60766f495c0c54560513e8e12d86c256514f SHA512 b22c9e80d73fa21cfbd9a9ece532d3b61d8ee1c8d65ea3394224e0b194c20f86ab3b5c953114e842a7220cb626ce046beb14b1cd9a4bcd25208bf9779f97a8b2
+DIST firefox-80.0-lt.xpi 587980 BLAKE2B 2ebf088f9674a3f3fbb0be3734b5c2e790f9a8d62b5737e1755c003491bd2d3345307a7844c21d9b603171890b9b1cac79cda226cb41286eb9d6fd4fec85e340 SHA512 31b6311f6b17868816a2fd72588dc49eac9f087b26bb00c7698bbcdfe91b7d069ac4c3507d8cf3b48f63c7b5e332e02d709caf07ca13bde0a8d3d465834bba70
+DIST firefox-80.0-lv.xpi 519967 BLAKE2B 3b57879b21536dd6bc99d1d926c68bdf449a6929a41f3b78544b1007e6f931932f174da314a3423f877361207caaed6e20d25c3d5e4721f7ae85ab54a784c35c SHA512 09bf86bca7887d26f58a80f6ca04d3ce6f71af9c484b626e345b97b66b1349557410aa496ed559252e6e3b5081564921b22cd9ae330c2824a580bfab19c99aa7
+DIST firefox-80.0-mk.xpi 482697 BLAKE2B dbceeac0bb8f22b69d9a53d585efcc0a980d191058dd79bf55e8976cae1ab01746f20c245163bd817c5dc4087b4f6b37ecdb22e29e0df3400d457c9a586fc339 SHA512 b6ead5d0368891a4ce6465798e6b736489c6b0cdef30b406dffcf74cd683aadb3a9f726b08cba321995c63d0f1e4bd3b8055a0ea16ba977144fc82e7446c2faf
+DIST firefox-80.0-mr.xpi 601406 BLAKE2B 7cac680a690be2ee66d2ba5fc8b74670ccc66815009846c0308fc82178f642d7db3f56e1f7f79df3ab988b6f1a9e41c368b5361a541b89870abab33f11dc23af SHA512 3fd8c0f9cb8fd53713aa37d86bda1e547745645a7cb87d7d84dd1af33e9256fe92435011020437bcb013ebcf30b7b5099c59f8b318b1983a8fb61add607a5a8c
+DIST firefox-80.0-ms.xpi 503046 BLAKE2B f8a18d59fe52d7ede861d461a7bfbe183159985230e37d0938802ffb977a45466d0b6f3a240aa34df729a20245b1d26d74b3ec427b05a3ff8765b8ac83c61cf8 SHA512 b41cece57f805f6e61bb3c73f23ad46d715b514622782c8e5d861a5084e1875f2d22e0c47dcf11aa899cfb4689fa74facd72a1b88e308afcec16af855c8a50d2
+DIST firefox-80.0-my.xpi 557293 BLAKE2B 11aa8d0d236220759761aa7beb262673d050100946f44845954cbc037d7993f800940436c1c93bbda28fc76561ce8ceecb1a737652b7846b71e5c986f0a90679 SHA512 717947855d5bdbca668a4d38898c3b86cd1b069d23321e98d495c62ef5d79fc6daf66ba819ff20e3e0fa9a450a560333de78917968ce7b10da8b926ac51682ac
+DIST firefox-80.0-nb-NO.xpi 559823 BLAKE2B 306d7bb615376728e997ff55e8958fe69f521237e9dedc626506ea51f969e603fd4a7e9a0be2f1bf7e1c0def6b835d74261950cff77e50361ed077e7dc0a8613 SHA512 16f04c14e83848d3a2b41c379ea3a5139ff28033c6d402c8aea6993624e43795f57cd21d88f72db8b594ecbf5bb80813fe7b270f5db30c2ed714187351df6c88
+DIST firefox-80.0-nl.xpi 567738 BLAKE2B 40a3235eebae26ffdc291052482b155cef8e9a478d21d98ead633bbbec6115215ec13e75ea270e773962067ccb7d259e5d25f5469c7eced99b14778b9c26e10f SHA512 ea592f8a91a09768ec7bdd27f2b4d54fb240ac7295c1e0384c6d5e895951b8a0f41118fcf6cb1c88c4f784c5c77dace3b89de30260f7d7e94b857602fe6e77f9
+DIST firefox-80.0-nn-NO.xpi 562633 BLAKE2B b529c4764a15a88915ec7c30711467c0741b8365100f32559eaa1851b9ac13a3085bca1b7d23a0e4e7ed733645be1c080ec91fead2c051d9cda194e1a80938f9 SHA512 acd881e26f95f723fea317f6b55a2553bba938c8c787b5611ac63e2a4eea932a9524cee2ff5515f6bbc42cbf5aa0901fd6cc91331e5d0787aebb3e0ffa87d0b7
+DIST firefox-80.0-oc.xpi 584396 BLAKE2B b279c3302fa988a8816100c575d650140b2c43a71a295a520b132bcb37df47d8cb456da2aea103bb6dcde7f310c456b357282820eb637da9f059b1082ca1f6fa SHA512 e1c7674269b1939530304dfcf707f06ecef95c31050276b713fefd554c15f2d266a8866605edd732a0cdba6477bc38dbd5109ef4e8c43aa116541ae5c685afc2
+DIST firefox-80.0-pa-IN.xpi 613993 BLAKE2B 0f543b581c0d9928b2119c4e091968542865830cbb6258999a29018cb7e4d025b8fd6bcf8c21bf6e7b760a37fed07f0bea088debdf157026188dffc02d65366b SHA512 e80d10daf882dcbe01add70105081be50feb26178ee2ab6cf576afb4c2e4fa9f9868b694016ec006e7f6134e1f6ef40d8f9875661a479f57498d3bb451f0378c
+DIST firefox-80.0-patches-01.tar.xz 26296 BLAKE2B 8d68d8ae062f76931c4f0f80967c57deb846c64ce8e6630baf56fd0cae05a946342a38bda7ab8c039a672c0b7f475bfed056c31c80ee11afc83d9475ec9a9f9e SHA512 d338c71a74f4aacde31f30d5a4e321dabcdb4fb87240776f525f6c4a8511e0ad94d8fd6f5e86bbf8dda75605b623930a7af5171e7cdd7ab780551b3ffc162bf6
+DIST firefox-80.0-pl.xpi 588790 BLAKE2B 690ea2bce21714412ebc64fe353354efccd96041721ff4d6d73282900bd69c349a264c61923d3026ff5c39412e04a1be59a864a2b2607c6602b94dc255516824 SHA512 5f4b739b379fdb019fab043277f32b798cc317caae96b11f76228d5c2045907ad44f0b40649b42d66b5b2b1970fb6201fc47393eb4e2bbd86422d1ad4335b62c
+DIST firefox-80.0-pt-BR.xpi 569559 BLAKE2B d3964f5460e4eb24797fda4bfa4c101103634056fc5df39ea362114f27407a0f5fa1d4a4724391c8b6b8249ce2a0619c2a3fe914c111450c0b5f3860ad291afe SHA512 821aaed6238d01a583bd71dff1d014ff3fa8b2caa5c4478b12e54b011dce561b0ca88239774c8e59479b4488993c4dd2877e68c7e658b310fc490c826cf48d35
+DIST firefox-80.0-pt-PT.xpi 579329 BLAKE2B 774aab81cb5e10c053c1b383bd10941c62352af26098c742c323eeceab3a509bd8d6ae582545cc7dfd7fe5dbc9804227ba338fd004eaa0681a17be7f050ecdbe SHA512 639bf10dab4fe118ccc58c2d42b0ea4bd78be3edb9d77ce142c7a3a4a84e8ad55dd50ca56db7a7a94570186fdd2ded88bd99d727dd8d9dabfc30259f006643a0
+DIST firefox-80.0-rm.xpi 566515 BLAKE2B 1bd72dbe1df18c9f52d2e8e6ab1e137871390e77191bc68da66dcc8575dc8afc9354186d472cf1777dcce6bfdc61a3cee53cfcd17f86e1e9c04649105778bbab SHA512 4e66e37fcedda0d19801f6c4f8066601427954eb06492ca19e77c08dceddda46ee99be57d7a2056753c4a1d0e5095342993aef5c6f8d63ca9862e6f5e4c286ec
+DIST firefox-80.0-ro.xpi 587062 BLAKE2B 27317e326c15b8cbe63fde8f331c927ee827d6d0a4f3783eb2e7df488808f1af27ffbe8fdc41a81e3247066d9269ca5658a891c4848f26396cfda7cb5f2145b6 SHA512 0ad87bf7de8c1c3349c8fd20955df9c5fdf79be4cb80443b093e105b380337247f0dcbae12d1c72aa00700938d21cd0563232ea0479cca0bb9a9638d6d84bfc3
+DIST firefox-80.0-ru.xpi 666370 BLAKE2B 247bae4c23995a48dcf4db179f27f113a06505767352fcacb1435eb2e6bc6ee6dabb2776ac9ee4fa250359acb3dfda50e32486b890675235dd95fa66d397ba95 SHA512 978bd23224ebafd6764a170e6a5c1c99f242b3d9c1df765467ea8936cc9f6e36954c872399fd743de089b92a3bf965e61e4ad0c1c0088d67b04871b71d397d0e
+DIST firefox-80.0-si.xpi 534258 BLAKE2B d2d0dbb183e118954bd4ba66f98652ace43cd96b34e23d0485b255fc81c599316e563d075976c5f671ed08bbb76596e7f4bb6d2bf54bf7d9a55500ac7cc452fb SHA512 48904e0ef4dff84f128907f03b9f8b9246ff821d3a41bf7535024cced0d156edc5f88fc1a16d6a7c7bca70852b2dd77d72b6992805d0a241a78613024d4d48f6
+DIST firefox-80.0-sk.xpi 588132 BLAKE2B 64cf5f913f107294708cf91400c3084f0edd3112122bfc806a1d6388876376f776591ffd03357ffeb2eef95841c1d38001c9a9967707a5f855e40281c68d9be4 SHA512 14fc92562a8793b05410de817bfb13726db6bd635281da155b91d6f3752887f34385dab4b0aac5d85646e1a3430c6bf016124c08b301e6f132ed8f42c5742ee4
+DIST firefox-80.0-sl.xpi 569927 BLAKE2B ec978f158491a229f1b3e2265cc7305bb2a96141052e44ecd7931356f1c80c26f5aa626cfe7217287f20de4272444d6f6c9933544ef9059a87e225993a1d7665 SHA512 838de8514d1d762b01aa00fd22ae92388eee5d853c68b1068c6a68d6f3cca07c2ad90a21e18031d6eb546c73cd22527b07e6d27671277204e4ba43fa6a6183b1
+DIST firefox-80.0-son.xpi 454741 BLAKE2B be472bc1ac9a93041ed496bf3370d0e463fbd01772475dc22119449c22fd7c92fd650602d1562fcff929f56ae6a1acc0e72d83cf191f586b7bcf54ae9b5962f5 SHA512 d48e7520e9476fa2ebd9d9c6e0a2e4eb995245aa0cf7ad7ce26096c066dd2ee34a9363bb26d76ff80e26132d4523bc9a88cfc16c4b2b860782b8b4ac1ab81e3c
+DIST firefox-80.0-sq.xpi 580371 BLAKE2B 40111f7d2f97dc86463570173719360efb56b3bf41835666e64bcbbd0a803ed42acfb33062c2f0ff9e5cdacf87adbf5d3f6d5cf36b59fc76fcc821751135f780 SHA512 04588be952b543a8eb4d8d72dd9916fb3da96063e47166719a55d68d6c4b146268c0fede237c5214872e8cc4e2c0b44db5f13ccffc0113812ba3bed87a820cea
+DIST firefox-80.0-sr.xpi 614419 BLAKE2B a1f35336a0f0bd6c1e07b5c0b92e1d3ac3b10a6cd030beaac9440ca5d9cd42103c21395bd848ae7529921d5fe8cabdb06505d94306c688657a52e75efed5e58b SHA512 e752524ba848f11966ced0929cd47819fc9254428db5878103154b938ed7c8bf0fdd7b4bfef989b9f5e225a419d79656cde2e89151e7d00b029cc09255f3b508
+DIST firefox-80.0-sv-SE.xpi 573275 BLAKE2B 1d56192539141d8add3c0bc229d0b34e5d3c614ad55d5c29b40d392d55a231e67a4ca35f9b3e9cfb7eec7128f7e59f98800242914d2328cdd6feac2774d648b5 SHA512 eae9eff9525d80bb925452f1918fdd457cea447b1813c0744f09ab25094da599ba35aca8b61e6e4adb3e05cd9d24c12491c7e2cb3a414084e337e2550c2177a7
+DIST firefox-80.0-ta.xpi 574122 BLAKE2B 5a52c3787a8a7de48c7882bc5c9277c512eb371392be9a68520932f249e4497c64bb4c2747d3e698d607596adad1db3876088dbab9091117a54ecda88cdf5aa8 SHA512 a2f7b169c91eff2817cf3a577921a64b3aa26631e7815ce85d7e20d62873f6cf3d02cfd4751f90f983eafddd1aba851f24b0a5ce48e3d84a85ad09f62201eac6
+DIST firefox-80.0-te.xpi 612693 BLAKE2B 5093647a76f0106cefb5546168904fdf6be65cbb48308595377acb3bb8eec206d094ea3cd7f5f7833a47e3210a1bde41cae618152874646e749fb7cb2bd5716e SHA512 c8d85743853d9af641a3d8005f07306a8efe0dc31ead67205d683ae675ebe4600f3f5d0758baaffaf7f94f56f0a68fbc9742af016fdb9a5093450ac29ad03484
+DIST firefox-80.0-th.xpi 639190 BLAKE2B 77498bc8ec6529d0c858f604c5aff7777a3e322a1be7761735e9609863cac6a87b3f5e02d77d68cf36db14ba65fa3df651821a1ced9c0b5a0855792b8420616d SHA512 b5b2e1d6ef8ad75e4011868e48c062fac021fa92352263eebf37bf9dd9191eb39266e90647475de36384f53ebc4ef1a2faf7fff9d5cb510bbba07b57257efea2
+DIST firefox-80.0-tr.xpi 584787 BLAKE2B 09baa88c0af63f9f48b25403ec3f26b0832340abe5d8473cab0f95bda6ab23231ebf45edec010ff55bbe1792797fb7ac7a1211a56e8808474ca74e98f20be910 SHA512 95c4dc8f43c31c69e6691fa1e8f083439889e0b87c1c9642fe26509e4873f211b8819602369907b46198e366818c78e2685af6fb154e851a3c49f015ca5ef9ff
+DIST firefox-80.0-uk.xpi 659566 BLAKE2B 7835e456e2b1a51b800bf279516fe262d67b7260e3b8b5e9cdc9fae7c9411a7221e2db40059730d642e802005fb4ffe0e96d60dc04eec339e631438650acff8d SHA512 164bf2671721c452caa8b9724baf91af03fc861932f73ceaeac607b7ff5df1ee34fea0570ac04d89b9a134b85b5d3780ca7961eb5abc26941cc5120f65303489
+DIST firefox-80.0-ur.xpi 615500 BLAKE2B 7ac991d2813edffc7fff72d3072b43e643e7814288c02f54055d0c4587234136c26f0bdc3e539d0b9ea9c3a27c0aa6193322444ba0eda3b5fee85499357cef78 SHA512 ecc0ce2f772bc5e221b7dd7b5a58a9d5a9c240ef92101f148bb479c37272c71e68092ed8a8ccaa23d9cad6f81e6d35665e3d7aacc9ec090b32e2cea2c1559a0f
+DIST firefox-80.0-uz.xpi 522708 BLAKE2B 32a5a0aa8c5604ac174db873003d1891ac6682b3b3ab877cfc94ddb112063a1ab2214b488f7b44845a6e8c505590608450a5be34aa37fe05f46a3ac4c03a48dc SHA512 9b54bddb8ae92eec2840d88b5686e60b810f1a6c7bad465b42e99a0cf56dd17f474e3736a697fb583ed74c5f8c95f422abc57f2768559cd7c8a0a9ec0c0269a3
+DIST firefox-80.0-vi.xpi 609535 BLAKE2B adb15635aa7b2c42a1de3e89f784383103832bb37cffcb6f7348411484d78f1625919da240f5c74bd9752e7fc6ab268db11ec9f49a0765aaa3ab6af57bbd20e9 SHA512 6594a2b3572d409bfbd9d5a4f542b9fbddbe3f56336b9394d2ecfc972c8019fb07178e05be4b21b6951dadee8a3784bce22a76d9c51053d0dba6324854bf8da2
+DIST firefox-80.0-xh.xpi 458348 BLAKE2B 983dd5aed7d16e331240873ed36c9b73d03354d2338b9480df83e3c31b011b4c38d3a1d713cafb12782b4c1b0ca4245620a9ee05fe3c7f0085327139ab42aed3 SHA512 b7ab801f1ff042da2d5e83fe6182a2c0f348df84e9dc95059adbc9e79c3df0b0f090a0fbcbf980f8bd24322712d47e644f377cc47aa2bafeb127c8cae1d1326d
+DIST firefox-80.0-zh-CN.xpi 611773 BLAKE2B 2094fbe9ceff378fbe0d0d071eedf3e73bc725276b02aff5c364017c408017a3ed49799c28fcc9c6a8f25f26970ef2899c0524f3f2b87d8376eae0aa852b31a2 SHA512 09248fa1df87505305e65da64997295b230a0c90f82b1b6b90bdb4fa8b1dbb2fc30e314368fbb0cc8f1ef6994f13d04a0a2fdabc4bd63558fee61311cd5841a0
+DIST firefox-80.0-zh-TW.xpi 611316 BLAKE2B 4d9c031cb520ff965d7bc22d389b94dd7d43e330e8253e2bcda344863539f1c6f39be4d1eaf343dab0506efa76e439add4d286c618f4f61ac4e180fa236f2078 SHA512 79a95419904e573d3d41f746e65182343b755bf926f5777138e7993959e430058c9bc40d0349b76c0e931f7fb8c1eba2f6c21a8d854e23a9c293e33a56956289
+DIST firefox-80.0.source.tar.xz 335316448 BLAKE2B 3099426b27cd3c89b63be7d796c8c5a87d0ee9bd8252e5bde23ed3a61f71d611e7427ffee506224e81a88ef109eefe944f2cf3367bd636a6ed46b7351d0a4b1b SHA512 6cfba55615d032e77f973ffdb1d4bb27c3c00d1ef642521284afa3e01a1bd29c6db963181e9ebefb0a44e49b96c3f93e57ce49541eae7e5a54d3360ffa81c1f3
diff --git a/www-client/firefox/firefox-80.0.ebuild b/www-client/firefox/firefox-80.0.ebuild
new file mode 100644
index 000000000000..33ee8b00b080
--- /dev/null
+++ b/www-client/firefox/firefox-80.0.ebuild
@@ -0,0 +1,927 @@
+# 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}-80.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 )
+ screencast? ( wayland )"
+
+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.55
+ >=dev-libs/nspr-4.26
+ 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.43.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="11G"
+ 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="11G"
+ 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() {
+ use pgo && rm "${WORKDIR}"/firefox/0032-LTO-Only-enable-LTO-for-Rust-when-complete-build-use.patch
+ 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
+
+ # 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
+}