diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2021-05-11 19:55:43 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2021-05-11 19:55:43 +0100 |
commit | 185fa19bbf68a4d4dca534d2b46729207a177f16 (patch) | |
tree | a8a537b82fda83a0799c2ca9887f212558363aa7 /www-client/firefox | |
parent | c8fd0d84af0bfd1949542adc2cbb735b1d28f9ed (diff) |
gentoo resync : 11.05.2021
Diffstat (limited to 'www-client/firefox')
-rw-r--r-- | www-client/firefox/Manifest | 202 | ||||
-rw-r--r-- | www-client/firefox/firefox-78.10.0.ebuild | 1175 | ||||
-rw-r--r-- | www-client/firefox/firefox-78.10.1.ebuild | 10 | ||||
-rw-r--r-- | www-client/firefox/firefox-88.0-r1.ebuild | 1164 | ||||
-rw-r--r-- | www-client/firefox/firefox-88.0.1.ebuild | 10 | ||||
-rw-r--r-- | www-client/firefox/firefox-88.0.ebuild | 1165 |
6 files changed, 20 insertions, 3706 deletions
diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest index 430cc92d54fb..750b9bcd9619 100644 --- a/www-client/firefox/Manifest +++ b/www-client/firefox/Manifest @@ -7,102 +7,6 @@ AUX gentoo-default-prefs.js 620 BLAKE2B b78720a71b86f69a8d23b34aa47ca1c6e7c616f8 AUX gentoo-hwaccel-prefs.js 162 BLAKE2B c5f2dfb727081e2d538c262f12c0cfdda31cbda58c77f4024d820e1d1915203d1fb8ad2671f88ff0eb2b019bbf44079a8b1114e240b74f815680e5c28eccc295 SHA512 f1847f11e7059a83f09c3c7494aadcb04512cdf2ccf6616ebe3ec02fc46de66fd35cf83d81e08013c0e594b73e4dffcb67a32288b6949ce137669715583fd0a4 AUX icon/firefox-r2.desktop 8137 BLAKE2B 5d0ce737c0e0969cb1a61de7989f5ca1ca0dff413d6d98bb0c93e0fed510b4e075a88fc117d3713e5e11ee7471ceaeffa9bc9dfd4282f3ddb1ea837d823e4887 SHA512 749a50b11d89c1329a52d13745ff8d5f801e565038cb5341319b4b515f36baf1c0c740003d6d01188c27e31d7ddeff58310e7b2420681292d0f2522bc5bd34b6 AUX icon/firefox-symbolic.svg 7432 BLAKE2B 33a552ffb9850f6b9cd3cb8d9f7f80268ac08f00a0bd5eb15d892c6fbb950f8cacf6058b9c838f5be1ae1b53541f143a1ec0c1302ae85b49100b166fcbccdce6 SHA512 ba7db9a7c95a051bcd84e4c09c802fc55ee3c0d1d06ec1b169b04e414259b75bbe92fe584aee41a1e3f71e71c160df8bedf5393449e5024110ed27dbc0579ea8 -DIST firefox-78.10.0esr-ach.xpi 460293 BLAKE2B 13deceefd45a28cfe2ba70c7580ba854340fa2555b7ee265a79cba83a551f254432b4ae415ec979d7a422f961d307c149e59fca3863e7d88c9dc9fc4b5396501 SHA512 efc180185a707e726210c73af8eb7916df665867e71ff4363cfe7f0f71a5b78c0dee52c8839e85ee4dab2c3f1ab466e79784d6f092e0b34158cc55cb981ef6d5 -DIST firefox-78.10.0esr-af.xpi 428355 BLAKE2B 16cb77dca5a6412992dba2efc21c3a8d81ce5bf7603a93a5c7b1c3d3293bb285f27c011ff39199fd5ab549f555df3ad8bab14bf920d5740170d3d1e8ad707585 SHA512 30dedc4ef44fa5dfc465dd327c212a492a04e41fbbb3f9f99770019b79e219fa4a2026e0007a38d165343a926ca456fbbbaab2495e02d8d719036f5131df5a11 -DIST firefox-78.10.0esr-an.xpi 508376 BLAKE2B e8bae71464b33a7f0c7b6271d314b90569da15275aceb0c8b2e30fcecd2d82eda04b85a528a0fb1566f9386ddaa614168cebfcca299d393f86d9b08f12c54d07 SHA512 fdc36212038ffa3d435627e7a0e6569c268b4f93f378aee464bb5347be54d7b603c12e53b8d806d84d989c5590ba0f36d58adfb988b15d5fc20bab3d141a8ff3 -DIST firefox-78.10.0esr-ar.xpi 560962 BLAKE2B 2185edd73ddf9a3c50be9884f85262c4a7743d86d47f6676601e10b896d028036c4720d1538b9603df4946d67b27dfdef8b15e5d8ce3a10270603119fb846e4f SHA512 a099cb6d770fe30d9b05a85d11bec641ccf6fc340f81f8a78e94cd14c58219a62cd26ecd070fe65acbdf727a351fea6bd9136e06143e06279ea6adbb46ff0103 -DIST firefox-78.10.0esr-ast.xpi 456394 BLAKE2B 87d61f3f96516cd5b22341cd86671e045e39c4b7323101a672eff089533654247bf974ea145d376abbc02c2454798481f416325331b27062c05830da4da6abfb SHA512 05c155fc3f56f4374cd5791d4e2506a2805f9bfd18d26a23c9ca6046d789aa771e19f49131bc96bb4a1d4d064b0dc1f5dda364be69e67fed20ed7d308a0f2cc8 -DIST firefox-78.10.0esr-az.xpi 497447 BLAKE2B e91f2bc901a9370848b403c25027eddba89b58214392f8acaa94cb940a7572e9e1751d6b461bdbddd0209e8cbc62adfd6896ebd2431eeb528e39c5ec6328c124 SHA512 d1f727ed19a0a4592b52c89b12b6e022f6b64163c14eb86b472fa229b66abc5452bb836127d813313e9124b53c1b0d7f2c324b1e8c2d6cfb60038610972cc55e -DIST firefox-78.10.0esr-be.xpi 608648 BLAKE2B 5f6ff2a6f95d982023520460b1b613a52c5092da92c4061736a41502e15cd8cee14464408472797f8b8f42b9f43e5d8c94000672d9170d08efa022861e489cc7 SHA512 116eff9b3b79e1691b382b7e83ce629be0d9f01830cd6177707c08934468a3a6e85fc8e1b4fb2c612b5821068995244a0ee153937a8a74d6144a80a2b0bbd88f -DIST firefox-78.10.0esr-bg.xpi 553979 BLAKE2B a6447b2d93c59eb7d4a6a82f6ee48dd9f548246d8358492991f9a4bd61b44e71c1f547bc4e5d706b74ffdb77aaae103be90e65808ab9a2b76bcd3bdc7a83c6b6 SHA512 e9dbf605712325e3ab26092809f1f35af257093fd6d948ca533d672b91384398d3a96835a34976bd08019bf76cab3f6ba5a977c7b9f2cbe2740371fac5c76cae -DIST firefox-78.10.0esr-bn.xpi 572614 BLAKE2B 487a8e16ceb36cf1ed9116680e77d0c82b7da4e37a401fb70ee3f37706096b21207dd54c3253bd350779af4c271d268962b9c0f70a9b0209d88a622930afb4b5 SHA512 e129f87009f0dbdd8b255ab5cc648c3648fedf226c4ddf5918db00da4cc0e364d8a3ce37765d6588314a0819e011a4a8992ce5b3fc7c9cc52fd5efc410577a15 -DIST firefox-78.10.0esr-br.xpi 507125 BLAKE2B ccd43864152ae512bef5ed32bbeaf974138d2de7bb20afa3c2be174d0fd24971df3ffb4ea181eb0379184cee8313071a3d9cdce2c5e1c5cc3de8279f59106f3f SHA512 536c2288c0f81ccca56def3a23fa699a66948f0c2dea61158988f0adfa960ad16a7423f8177efc23c0a60e696268242ce440084403f2e7da50b0ca23bbdc4564 -DIST firefox-78.10.0esr-bs.xpi 463800 BLAKE2B 87b96c7a7666adc333b7063b7fab7b6ada8083946f68ec38ec03c987d4a98dc21f35b0f4028b221c960650ff31cb1f0bcfda24ec12f3dcd069d66c06baaccdd8 SHA512 a4a8d25a515cdfb6b4dbc9f81b609e4f3f4cd9ba5b5db73fc4358832cb73392e89b72ffee4a438c9e0523171b4499a5f0f12f965be6345cb56eda4afb6ecdb92 -DIST firefox-78.10.0esr-ca-valencia.xpi 517189 BLAKE2B e7d6f05f7407836fc31bb141775a69b6df9bd9b2f43efb56035a7545883fc9dfb8a8aca99d481cd74412711189be63f8b096e2eb425e75e66d7ea4477bc666aa SHA512 d667cfae6f91f649b016bb07cc8bff0817b32a23f87448eaf021124c5c00159cdf89725cad29dab1aeaf072196196a4176d7642f467b06b3f77e285af57169a6 -DIST firefox-78.10.0esr-ca.xpi 514166 BLAKE2B df60a61e7f78bf717d2c5dc8f52252c8aa890441faebce17604db5ae744785d7306324f39f68285a102ef28a36dda963eebdd6362db8b9dbfc16c7d60aafed7e SHA512 e1e8d1efa70a80915f0d8a7aff1b01406abb221953b1a89f5b1c53ec6cc341b342d09d2723071123b49779166b24ab9c173e87539b866df92ae6a4997218440b -DIST firefox-78.10.0esr-cak.xpi 551543 BLAKE2B c2adad794a20995b4cf7811e8d0eacb64bfa158dbd42e1884927933394aca318c9772a93c5d2c6018a1db6f2d7113885f82b92e89689b66e97def5d468c44a60 SHA512 ec878899bb481ac1cb25d396c0b4fb74e8c2b1bff8cd70df828ec14bf210b5a1907208469c0dfd0fded32ed1283a1e5eac2fe73b1a2948c66f79da56849c4c89 -DIST firefox-78.10.0esr-cs.xpi 540322 BLAKE2B e65b98c01f830ba0b113b68b8f853d4a98b7092ff6209d2a2836f6b2081ec3fc2a28f94e408734501ca355fddb22ed4123349b34e83c64c8d5e8cc28ed2fe2e3 SHA512 e77b04c7539ccd212b17f35689d1dfc03848c7b8760d59c78a701a7d011ca8db1c81c754a1baa03e9fcc82e21ffdb85ecb8fa3079b880b58cc4ff7ce7a3cbe5b -DIST firefox-78.10.0esr-cy.xpi 530709 BLAKE2B 21e876dc3a4db063aa117bf62f0d7d2ebf3c7a53db57d7068894aa8573fc54d78c73aaa5d05ef200c43f17f055a7068f86b14610a2bd3e5f4443b239ec36ac65 SHA512 b121d6837fd7b5a1bbb0b4c76851372343562dffe17037cd9cd1a365338b5d8318d557b343ad1dfabf6fbbe511854dd4a4841710e826d50214a5ce87f10f7619 -DIST firefox-78.10.0esr-da.xpi 520273 BLAKE2B 5c9923f64420dc31010d6a19fce9813e162631adbce5b4a8c1d936d6d5066ed0cd34a68d08900408b96c505873b260cace169a63be9e36fcc1d2e90df187d975 SHA512 799cf74bf3b6fa7a611389c7b15e3f5297c9012f753f6e441bad01efd46f95a2fe81044b0a601c5014c801822528cbc322196f9d48b2c7d833ea4cdc9a28cdea -DIST firefox-78.10.0esr-de.xpi 542852 BLAKE2B 5162252c0a30cdcd60291300da305a206c816c38ec57fca71707eb596363da60000107c2ee8ad504b519d9b01267519fdd69b498f4613e6a148615424b4a1b87 SHA512 4036e78072a4c90904e364a8572d57b081818aea70fad3f2e29df2898a1fc7234f812e2bc392b725b9f17226fdda54cefc3a9678f44d6a2765329cc55487bbb8 -DIST firefox-78.10.0esr-dsb.xpi 554272 BLAKE2B f4502c4ddf3d1ece61738fc940ff784ab3d78b83cdc713ecb58a9c405fc56cab28e23b5adf41a775aacebb8bb068dcb8237cbc046f42089bb781ad77739eb61d SHA512 92eb488a471e99c9ac0f19ae8f97f4bfc1b3b65e05438bb529a11f6b85c87c6fce9cde0e92c065ed07dac83eff0c2e356fc289bcbecddcf1421366da92b8239d -DIST firefox-78.10.0esr-el.xpi 626565 BLAKE2B cffcaaa58afec242aa2caf2829323fc6397bca385ef31327313f7e86d72104fde774b9412419739629f0592c9f512a3e9c4a984921cd760c84fe10d4002143db SHA512 be625dbbb5a76988e961055fa523c3720456ddae63e9a44f7f25e97970353c8858c651ff48693275877f7f26902873ab0ea7f6fb1e99f2887b1d48520071f87e -DIST firefox-78.10.0esr-en-CA.xpi 497735 BLAKE2B 71fa4d7f04b0638d5a92c08af31d57602c99add6d9c8b7561cc6d7ad2cba1d2ad41791b2f67442983b1e669d21897c995bf7eb8c00e0085baced235034cf1689 SHA512 7e97dfac0eb22d23aef01d1d642e92e29437d776bc67963ec2666ac9ec8de51d4d02a990c19f50a05481d7676d3ae6f6e4b23ac940ac15443aec2174935284fa -DIST firefox-78.10.0esr-en-GB.xpi 497581 BLAKE2B 77e35e7ac1ce4c21bb47983a707682cb26599e08e7012b7edde441a2f5ecabb06e9dc6cc0ca2c1e3ddef7648b37073dfa72e254b647d5b2975da6581aff0323c SHA512 8092e30bc71e17eeceb3183b238e341bb1d6ae53c46346448cb7e6d7c9cecd02635330ce3c44225ff0ea7f006690091a3e8f6bb6da05ed4ae53050e6e71d62ae -DIST firefox-78.10.0esr-eo.xpi 525739 BLAKE2B 195f56921d57e9ca3bc428d4b2c3da72ee60c64107ee46d4c77d67608d2f85bce4ef05a129b2d241202f0d06138eadb38e0444f14149a60ed16b2b614d71b9b5 SHA512 805b808139a4a2411746249c0794c75abed1e14420244abad5c17d0985d2e18ef1df918091493f2721dbb00169a4a40933832815acc667b6d50ac1cd6996e5c0 -DIST firefox-78.10.0esr-es-AR.xpi 535809 BLAKE2B 57e944e9b96da53d86efcfd38293ff77b2035ba167b85b091419e02bf947a3a99b17f75aa7aec36b222e1134377fb2d6e95ebbaac452fff6414f438e06661677 SHA512 9d344837c5b3b14eb62373450214c3d5a682359b0cf9223b23014930771cf0f1bd1658f3d532a33154c19dec26be5fd49bb831012bfd68af41b22c4aadd1336a -DIST firefox-78.10.0esr-es-CL.xpi 535345 BLAKE2B 528df1fecafbf259374fd48ba4f0e7396c4e66278e336763f88b7f416ffbeedf88d32f1ad8730b0871744b8de5ca0d6d3bdf0612f54c993e51c71798bd29409a SHA512 4da7d8468c943dfc7b553c9021db33f6f08fa5682f9b09f5881a6638ec9fbe743be3485617987a8be99e2ad8e5263944935af59395d505541f6b774f13a9afa5 -DIST firefox-78.10.0esr-es-ES.xpi 522706 BLAKE2B e251b1c261511ef630d81927d3dc72fc8914e8c33d61de89b8c65415fe0ddb935edc4cce7fb43616fca3e552d812dc985aae6928344127fe820b44dc6f460788 SHA512 8985163f6a3c812f764ee3cb8db48e6a12b4f1956c1fdcc2d03f64163751b1a2a4d439aad9bb7f6de9e646cead288778e44dfbdce8a15e85e868d417470bc0d9 -DIST firefox-78.10.0esr-es-MX.xpi 532297 BLAKE2B 2f8fee5d668784594a897cbd40815307e466bd715511a85cc2b47c4a132d067ea9696070b84834770a6aaa365e6d67677b1a31cd8257c215a83d8ca04287ace2 SHA512 7e0eb148ec7d2509cd88ec36d8dc589315b8ad5f93005932ac7b0e67d1377f54225662e15a578c3ff277c6d961d65133f2056dc11a9e317bbb90bb28dccd3207 -DIST firefox-78.10.0esr-et.xpi 485234 BLAKE2B c8cd5bf20135b70cf84e47c03e7d479528ee9401365819035ace8e3924e0d0b26abf6c613edffd8493ffebe5e9901315146bd0b6f13ab41aa09a4412c7e295a6 SHA512 8115d6c0570777670030b275490936e9731c813b37941fa3d7e6f87581219f1fed888821953874201729bf7e071f9c6644c0cc3630f9d2fa335a757ab82018e1 -DIST firefox-78.10.0esr-eu.xpi 505876 BLAKE2B 5547a3d095536530f0710f967aad0d92017a07a649f57dc7b81e74104ae9970eeb07a41a4ce9fca8cd1e7bfb7ecdcd16b9d7d8a8b778069b726cddcaea28e1a8 SHA512 3ce51facebafb531740aa1b7f5a966453f957b049584381e4dd4cc58e0d79fbcc99e003b24c92e8ee08ded71ef4e5e5b39b63e0e9b0c5b2c1466402b7dfefb95 -DIST firefox-78.10.0esr-fa.xpi 538921 BLAKE2B ee517bb90b2ad1e8ffb034d425009b485302e06c2ad327f1a3545fccd8408f60a92ed46991be23ecb438a14caef235fcbc929e64e13a4efe6db02d7438405c81 SHA512 aa27943cf0d7a0958ca2412d6fe57aa65519356d3b57e67157001f4ee3e62f87ac4861b52f36c39427dccffdd4ddee7076487cc5464ed7da89c5216e42ff7a37 -DIST firefox-78.10.0esr-ff.xpi 481614 BLAKE2B b1e993ea1d62bd2d7d686db98c1e6b1b9734bacc0616bbdf037dc1332952881b58f18286fc572c9032b1268c413f060f54798e620e1dab0686b81da7e8fad007 SHA512 2e908e57894d5df0a2d7f65f6aff205ba35dd0c0faa713c96f7712cccfe82e52d3731f2d88089db12bbed8efaaec135cd16848c5e66bca3569a375f540aed0d6 -DIST firefox-78.10.0esr-fi.xpi 517920 BLAKE2B 08495e3bf03606a9e422672a42241e3b16f5ef7aa569abcc114b8058dd1f00ddb88b25fe586037071d3b46fb0398be3ac534f3492f007651e91e58e1d1d3de90 SHA512 addfe1b5201286e55db8a1d862750efe883b264f5eb561e2909aebb9a8839607deb5ea593aa8830634708d66e0b71ca2c0e5979ad0913bbd9e85dc2141e47e17 -DIST firefox-78.10.0esr-fr.xpi 545898 BLAKE2B 6601b69bf1976a07264b8c3ed18d0124d10c428fc00a4393794fbb631eeddafac469b69ee340312ef62d4d0bf73553c67bd2c79aaefb2cf8a3d846b8af76b88f SHA512 d754548b8cd3c51d77a55fa49a24653f45ff9d27bf5bbdc4365702b2959150a7a3b7956d90f6c30dc125a61c3e6dc8f465ce3de8b02c424c87cae67e1e7edb8c -DIST firefox-78.10.0esr-fy-NL.xpi 532492 BLAKE2B 0050010049fa222f00385ab8e9e45d3c39c901abe744cbf3620bbc325a33d68c0f499c0ce2eacf191fd734c81462e1f7292c8e5ac01404e2b7b8f988bc0a708c SHA512 80be04a48156e51d6bf8891c105f3e16fb718974355cd2dabb9d0a487d99d379d9f131466c4281d9c691d27f79f0ed7896eceb88f2de47dae300ad1fb448dabb -DIST firefox-78.10.0esr-ga-IE.xpi 466897 BLAKE2B af56da2055b2a77076aa74f04a65149847d63146b0741f3004c36a22e92c6baa677142bac128edd0ef69a3d01ccb00b9330badbdb429fe666f70af3becc3393a SHA512 dcc4a393502bf26fea482ec0ffad4500683e3149da406424fee86a435393c661a0d842be8859b12400368dc2e3120dc4b4923dd98793adc9b642d6b06091478a -DIST firefox-78.10.0esr-gd.xpi 491865 BLAKE2B 19cceedf020f52415a8ec64b39175de484369725a93e71403309d17b5bc177ae9e1a17e6ddb38ca4c835cacc0f57c087124c44c1951aede7f77f7211435c2922 SHA512 26fe4da7ae225453164ddb7a3fe58330e4ee162a416754c72e0e9325bbdd46e06123c1ae613a0f72db3af86ec0a62d83c53ea4ba6353b74246aa5a7890940489 -DIST firefox-78.10.0esr-gl.xpi 528414 BLAKE2B d812fe85b5d17cbc9fba63429fed9694ea53b9627488777072630f8b3cbdd92f2fe34fe89e13a5ad726c53af637ee0ff0789a19655188fa5167b25d64f3224f4 SHA512 987c853592946f184368c1bbd06e9bc5df4d431141fe77987ab761f0c2e0faed1bba2b183ea436c38348cf0dc393b77b7823e39b32079ed4c3cbb51e47c62af6 -DIST firefox-78.10.0esr-gn.xpi 546460 BLAKE2B 7be54fb95572aa6584f7e73346a0673904d41c63688055303c84efebb60b5a4008fae6d703cd95b0271d7ff5d5dc6e12dc29b1f7193bada9756eae41b2856159 SHA512 98137efdca1daf8b6cda06d8834a0e4bf446efffa0813b20e64c7b6420b32fd4a12259985801b912a956ecbbc5a76945488c71c8eed3dd1f27e4e120315ce941 -DIST firefox-78.10.0esr-gu-IN.xpi 541435 BLAKE2B e0ee1f02808809d52df916b636fbac7d0c826e82170023bb20a90d1e419eb830257b2e0f366e92f5712e5831fee8232357c67f06c2e034d80409a7aa053e857b SHA512 7b1705a77150495d14c1e049f114d39bf6e9ab8b845c40f94688204487a4acc596450223738a2583dc7b83f0d663aef23ffde1b983aa3b914ad7ab4a513aaa13 -DIST firefox-78.10.0esr-he.xpi 545593 BLAKE2B 436887deb06f2d78254e8518a4bda0907c610b77a4231d76b55e0a62e6e96ba61f07f24a7b2040cd62ed045c67eae0df5fb2509a1614b5f70327729c52ecd56e SHA512 d75f8e92f8f3ba9396ab0e16a00baeb38ed9b5c5b331352d8b6ebdc2b2d6332c63393fcc78f65b2ef30b520c792dc34db9412ece9699e6015c4c940fb966df40 -DIST firefox-78.10.0esr-hi-IN.xpi 567857 BLAKE2B 0c067d616fbd97699218834b0926f180e453f2ad65d5e3a37270af76020efa765de39839e8ab35a03b43959124333579162cf47b4ef4a69a5b6d4038d25770cf SHA512 f100f63c92c8c07ae78a57fac0cd1bf9ef164af7ea4e85b13d57a08766cca9e397280f5f4c559f2c81c2091e7c1a600bba5f08bdde3a1d56399259fc6de000b6 -DIST firefox-78.10.0esr-hr.xpi 522694 BLAKE2B 8a9608b66a3ae3128ff2fec4faf80849afcd300026c29937cbe86f4693ee9e7e0f019a304694dc8098cb64e5346d182f6fa9b1ffac803f3ae4149cd03c76a86b SHA512 d16e4f39ea354292d74859b0ab9a07d33fb5d0146d1f2812816e44e0f7c19117e2a624a712b70ac25367368046e59d7171159c6dc848a9a2fb25d68935c0231f -DIST firefox-78.10.0esr-hsb.xpi 550663 BLAKE2B 1003cd1c5e7b85597f4be662a84ed0e7079450f4e18508417ec20295594544bdc0a8b61d2b4bc232c7644d5207ee642a9d3ad03bb66e2f1f8d141374f8b3b118 SHA512 2b773f619fc2224b322c39f1b15eb226e70d75c8b1298572db4644c440bdf3f3e2ae96fcd4fb78133ea5922abd324dc0b12dd664e334438cb219f87904e7685c -DIST firefox-78.10.0esr-hu.xpi 554890 BLAKE2B 1a31fc6012b483a42eee52a5394e708e9ee32d1c49616fe3ed3020b75831786307580dbd89f30104c48185e90384f63aa8d5ab4aec192c48e0ff252278f0fcd4 SHA512 48527324856e1adab129f507807250a1be28073bf0094263a7ad64303eb498fa2d6ccf03c37d7ac37e50fe80bb5ee1a635398bbd04d20b5fd2be42c501ef1526 -DIST firefox-78.10.0esr-hy-AM.xpi 588994 BLAKE2B 29c5a852f42c3fa997b45ceaf4a5262b9e88da14183920c42a72a8de02507d53c214f8fb252050a5ee3b5c2dfce615f22ef924cc2f1700d3bc886c4f41091d5b SHA512 42e12af07ec3a12140b9eaf524bd990609ba61dfdaefe3892477af7b1a2c42930c077dd3e5a6090ca9fbeb8e90d3eabd4b3ecb6d0239b67a85d14df3acbd8c21 -DIST firefox-78.10.0esr-ia.xpi 518821 BLAKE2B 1a7e7c7c2210f568affad9cc81d6ba2371724b6db1cf882eff1b31160ce2da7308e05969ddd6d9c10ff3413c34414d4ab3af2b663598a0d125806fb57472c591 SHA512 1fb132dda3a8dbeaf4d496be93cc84370bd22c7385bd2fa8ede468ccb277f3fc935d67b001cd437888e4c5dbb7c68fcf11e0a227359faead0ed291244760bc7c -DIST firefox-78.10.0esr-id.xpi 509564 BLAKE2B 0a774f9ea791f71bebf86673b0d927bf6f8a8c0056bd3568d9642685f0e78aada66b13e07ca36dc29257fab6b4a6897c21fc609b4b9e87b867b6b2eb21f583c7 SHA512 11c4f8f374a5c2de5870939686acabe25ff0d92b3dda6c86b62ded9059b6b4d5882abb8b3238f021f3ffa7cbd3fe6367eeedf93a25d01f5113df9a1fa13ab5c4 -DIST firefox-78.10.0esr-is.xpi 477026 BLAKE2B 5742fa7577e2180e3f83b4d6b38bdd52794740bb5e651247fef8b2be4a13d46839d5ef2611959d0653c1448c8f671eb2559114a09fd4999cea07311f277722ea SHA512 287e2c2be0d6b57f99ae3c4fc53d8541689fa2171c0bc6ffd7ae2f32353b7035827724bc6b2cb8bfe87610a87234915f3d83a7e6dfebf45d1a28144f2bcfcf80 -DIST firefox-78.10.0esr-it.xpi 449812 BLAKE2B 66449c80926ce22cb73c9c987a4f6f30ccdaa415bff1aeeed113e60693f9310dd4ee8b00570922411e4c6b74dfe854d16e5d90b7dac51ffab946919253e947ff SHA512 9060310d729c928cb184ab6fd0bc84d10d4d790ff69253e5aecbbd619082511e106248a820862b215c04cceb79c0c6dcc71ef739b5b772082db033c92edf6b2c -DIST firefox-78.10.0esr-ja.xpi 578208 BLAKE2B f1368fb97378425d86a9516e14ee27ada89f392d65079a49c6adfdca99520bad6c6854cad45147b3bfbda8239926603c77facea4a96b185d5bf147ac207e6fad SHA512 2897b7c7281da91c04944d2d69164162264fda801dec7f150284d58bb89ab7998fe4ba834a92a17529c5539172a22b2900b1a43d15458861e5f127a22ba8ff44 -DIST firefox-78.10.0esr-ka.xpi 579096 BLAKE2B a3dda3d201c365bf7309ff400b1e83909e580cef895063d8d1d717eec2820c357719de5b78474d25b404a35740c445d1771f72ab71a3c9d6a655767eb5273a3c SHA512 8a018b96dcf599a730f7a0689bc7ba6a7058e9fbe6a9992c489aaf3aa135972279c1c2a622480fdd29e2053e113a97dd45fdd4bba08083c3fe48f9448f1282e4 -DIST firefox-78.10.0esr-kab.xpi 539733 BLAKE2B 54bfb365cb938b1fb64b5c1ea7d621196da07ae3b0f80498fed636119aa7aa9db953564cd4bc60eb0666752aee88134ddee079d5f58c3ca883d2cceade673e62 SHA512 f06b1ed41cc7e2ee99261a1c04d40b3153e1d7eeb8c46881220ed245f890fba6a52b4db76757d9a924dde368184a48dff87cfc5cc3fdae65c897e077ccaf3bc3 -DIST firefox-78.10.0esr-kk.xpi 593252 BLAKE2B 9bb637dccfe47c70fbe7ad0c931195532ecf7e0850905d00eecb4c77cb901dd61c53bd825fdc4badf482e253fd3ed7d25e8d4bf3a8efd22d1d8c53ee3dd5f69b SHA512 c27ad693f56bd890c1f1bb8ac57f721209249f52315a41d4ec62e2a71f6f524a8a400e4661851e6f46d0ec019ad7815aa01e423a78922ccc40760910b71beab5 -DIST firefox-78.10.0esr-km.xpi 527364 BLAKE2B 85ab44f0cd7b622c7a7c84dc9d68f35085e3c40826a85f8af2dabc2493ddea243a7d02287d304a18ba46ad3a57e9d966afb8565e2fd091aea192b8568b5e2c4b SHA512 9546fa1b502ba491b4d028ffef49c6311687b3ba21c51a47540e2c585e3b077bf10814e0ad3138dff1dba809ac384ce04b572b5bd443cac3b4743864a1017834 -DIST firefox-78.10.0esr-kn.xpi 506763 BLAKE2B a4cc90df1eabf3895612c5716a299dec2452504ac716492afc57e96164f4f9375f2a1d85fc91e962b38192f163702cdd715a34729f3d771533f73ecf874e8f6e SHA512 2ca507a74d1cd9f5bd002a4b3ef91cd9fa9ffbe63dab041becb8d6c1e4a77120d3cc4c235c607edce5b526d7d2741ffb138af6960c60fe4a2c99e87311236969 -DIST firefox-78.10.0esr-ko.xpi 567538 BLAKE2B 9a9143bc7fbe657a864222b1431b1fa58fd0b8783ae215375142ff312b4b5f0af2489a32c194547ed820b7d74665abff1b048767cf9b35a07dec721c019f3c34 SHA512 498659cd5468c17a43cd3bcaffda845e542c41688a9e3945fd0186c2f2efe7984e6fb853670f34fc6b4be8a232f029b72231e361156e6bd1366a424506b03369 -DIST firefox-78.10.0esr-lij.xpi 475234 BLAKE2B 45087c71935422b44fecb2eda329ac6a2fda2ce06979ea4a17bcf3d7241918ce3153f880efd8d8348a96a559a075fb77e01d72fdea4740282733b7ac24481a3c SHA512 8eaacfe3fa798d9843b25685092c62035164c6595cee4d4ba2c7fe3001c0276b0166158b374a825f2add6393d3a03851e74b8f2f82d9d2f504168b6b461a6991 -DIST firefox-78.10.0esr-lt.xpi 540694 BLAKE2B c521f8a7613c571f7262aa547ea0eea662831bf7671835bf931b9efadee5f41243fc902bf48f23fc759496535acf1878cee547e8be11b0d8e67ddc27579da82e SHA512 e963c45635092367af1437ce5c099005aff8e5758a69b95399673eaf93923d01acf856e597bab8488a8bf0f49492f909525756eb621ddd3c7dadf71ea74a0717 -DIST firefox-78.10.0esr-lv.xpi 467475 BLAKE2B 3288591b4c4d7a2301ab44f87574ce009a86c4f58ac82aa4571282ac5a76c440c98451ba1cdc0517ca4f619306c80291f9e837246467e5bb43c16fc4dadee535 SHA512 fc78622d8e2fd70ceef5ad012277641763abe5693038b912869753ae2fa943467baeada0741d75e7ae7e98e71a44b0348224914d066cf23f42de70fad9a86583 -DIST firefox-78.10.0esr-mk.xpi 460023 BLAKE2B b943db3b590c5059c09883b17ebcd04f5e8382cbca7b8df0d1c4a4163e4818f6e8ded96ab48ac98ee4f0f52e544dd3093c4a0dd8d1e46d1a4fd2255ed940b4fc SHA512 3dc37a9638817879bc1360fc1ab3cde828e685f50574c55d086a44ae251087a4ed795d539ba4c2837f5a6ac9eb75a8a5b85e263b1d52b911ed5b148aa7791621 -DIST firefox-78.10.0esr-mr.xpi 541564 BLAKE2B 81d4e4ec7589ff26fc0ce00b014d29e94dcf946506b671f43d0ec81af596e078df3ef0c57ce4319f6849f7a308bd5aa01554cd40951ed1ba74205138c12da0f7 SHA512 8719915652affc767f944cf2b3d6262d5f5662cf68ca15d543687e9ee89b815f4ab8883c61ef7cb5ee32ecd6cb9e9e708fe197854937315b669e94eca2d3b4b5 -DIST firefox-78.10.0esr-ms.xpi 453066 BLAKE2B 995f7074991dde770667b7985858dc1152fdd221d38ac4a4cd1b47f60a3d67b1f5305a33fc14ee99451c9281c4e2594007b9ec1a99ce7269fac7bb006ec4452b SHA512 6889dda432af1f809ed168c5221893ff7afc1476407fb5b7370093cdba231627787d3b7376e11b6e4523b5bb672a86bf9849058023f73a80ffad4262e58d7f0f -DIST firefox-78.10.0esr-my.xpi 526330 BLAKE2B 1977094faaaef3e0d600cdae559d0025284f697b4d91fd115d5278912bb03cf339b4d96c23fa112ed55e75bf4caddc6d2902e9eb7babbbc0ce5ac5d4febdf246 SHA512 e41a8635a409e0185aeab05635e4040810bc541db212a9cce86526fae4afe5b7dd1e8738cd83fd98fcbd920314fec4a0361b6a7d219330a1a66ee2fbe6cdcb75 -DIST firefox-78.10.0esr-nb-NO.xpi 518515 BLAKE2B 450588e48d97945d4d10ce4b7cded2e21ca6dac37a2fdbb0b39e43891c7ce033cbce8a3c82792229f3357067658880084779100617d2ab74adf81f88f1f0b603 SHA512 14dadd8818362d28e164ba31c4e29ffea15408887d8a1d2cd3808281d8c0eeb0f192168a7a16bbc7c786267c149d3254b9daff65e8bc26e1e3f82afc7658588f -DIST firefox-78.10.0esr-ne-NP.xpi 483420 BLAKE2B 7ea0d5bcf245e293676f3405b9db79c2448d36c9f0d9699364075ceaade72e6b2f2615b0b4f255a4fc1081403f34b6c81a7a56b818300c554c8f19bced86c517 SHA512 da7cde5b3eb0cd7cafff194bf11792253d209e0d4304137c3f671a6b8cf1a3b4f53c39f7bf403b25bca7e13521f31de10956e7ba19ac2fc0ba6b1aa60c8dc596 -DIST firefox-78.10.0esr-nl.xpi 526199 BLAKE2B 30bf1f4455b85555629027169b4bfa86c846036ded6515e473bc5c7dec64a94647411e7bbd6ae62c8f78163f477552a18addb9af515235105da358a33faaca48 SHA512 65601e13220d9687d37ee468b15776c3c1ce137ee2b72f2d249805be791155c086e080ef6cb26c313d0a65a1ed1778145440e734c24e3636b747bf64df69f3a2 -DIST firefox-78.10.0esr-nn-NO.xpi 520167 BLAKE2B c9554ac50044824ac1cc8a015a839999b847a563521634771569f563fb1c334fdf278ee4053d3ff75ddb44e2141f7ca5233d14e0c773d55859920cd64ac84927 SHA512 7a704182a47b89a6f8093750e3e60bbe933c1bd8f01697800777398f7c9a1f5107d7530890716b39c19af3ca8069e03e26a451483d9830d0ffd932d1bd9a0c07 -DIST firefox-78.10.0esr-oc.xpi 542156 BLAKE2B 2144c83e26d189337566f4c6318744c8bb55ff4e242c0a2189798b1b7906397caf5eecf180ce3a6715168d172847df749878c99e517487492787b1ee64a00f5a SHA512 5a1a14e0104d3f2b756ece91acbfb8639495930fa8e3e7906f434a6170dfb0f9f9b4c48d3787f6bfeb8a63a9d34a499128c8a60b1b8c1051caf1f9a38e0a8faf -DIST firefox-78.10.0esr-pa-IN.xpi 580377 BLAKE2B d019beb2512100f026037ef14cc4adf31461d1795af12cabca9a1de7baf04733d215be687506ec3fc0752b4c51796b4e38cedf395e175cc48840b17ed2166cc5 SHA512 ba538baa9966af0ebe882197b0dd86f368d4ee673700cddf1774e1dacf86129afc5f956c20fb1d8ab571b77713c3b80827ba8caf49ddd2caa4c306a7936524ce -DIST firefox-78.10.0esr-pl.xpi 545604 BLAKE2B cf4a5cf862b8e8e4ffd28dcadae41ffa2a7ab400f09cc8acab2eccf462535e0736a53ccaa8cb2d20c5bae505313d602c09e630b91cdff64a4586aea8e5ba1792 SHA512 46d8f001437eb1e771bfba8e2b3a872ab77b46db46425e808d3f88d266d2e0679294b041397a09ceb849d457f0801e8a8c32ca8fda5adacbfad5652b782f790e -DIST firefox-78.10.0esr-pt-BR.xpi 527574 BLAKE2B 71c07079c154efe31cf8909e40a64fd5736185788810f48ba03d281040c7eb6fa6bfbc950ea4f8e9f5fa285aba5366c6e5631332919b28a308fd1c62a3e5beb5 SHA512 6d1b595fc03248101661412d7ed53385c2a500674df45e82bcdcf3d96d2a81f2fb2eaa927e0b02bd4bdf4b90f2902a3f5855324543fe997baaa47f7fa1cdbf2a -DIST firefox-78.10.0esr-pt-PT.xpi 532053 BLAKE2B 93e4e5525a0e7d86fc0e78b8986df7763f49ecf4dc624d3cd25171949228c07a2f19f7b61a9d3f6ee36787968f865a0bbc70e0bbf476b74dd235fe778a573f4e SHA512 dad11a401ad530f37fd9d757bc4087538e4e139573dadb15f761304c59e29176f16a6cb763df84e5c5802e63db346ce531a59643069aab37cff7b666778cf0cd -DIST firefox-78.10.0esr-rm.xpi 526716 BLAKE2B dfef97757e295d67afe63b4e86d0091c368e2f41cdd5b0a62199fa3a4e584119e6cac77290d76ac288315890ed0e6597a5e533a6828ad9516dcb791fcc3b9a21 SHA512 55be5df9eeb7ae2fc2b88535c6dc84cf3846187959d1051b97a1a92ec92c03a0978f00994bbed0891fc1dc1c423761395ea9a78c7818860f1e48b61d338ca1f6 -DIST firefox-78.10.0esr-ro.xpi 535576 BLAKE2B 21eda6986447b333fe49109b3da0a403b38b5b2019b3c37b2d19370c5fdc4e306da507b904dadef93bf8f76d01246f7ade58c28493e594e4f528e8c267738385 SHA512 f1b7546916d072edde2169e0160ece45ee062f9a59ef407b63342e4b7b6a9da18d8919d204f361d9f79c2424724a1dc86eb5e703468fb56cee107d574a3dc8c3 -DIST firefox-78.10.0esr-ru.xpi 614607 BLAKE2B 7864f9208e04adad7bb686d4bc44bf2308c34387c11d05f5ae52aa0462435e33b331ef4c6999bc7c91de04a81d3908fbd093bf12eeb3ebb614bcca930775e5e5 SHA512 ff26fa4d58eaaa6ce76544cf72c8b691bd338509b7837e00336d8ac19c2c8d6bc647cb9f7df14f8a01eb209e49b18620cd571fa74b3db024e41bee19fb1b6b18 -DIST firefox-78.10.0esr-si.xpi 492525 BLAKE2B ad1c2f20a7c1ab50721b8e17b90f309567f98ce2e6eb5edf17f564d36ebbb2d58428f777839dfdbbfb4eec51a41ed3ca81a8be72b651cc3441b68a0fa6c3b63e SHA512 69aab6404998784dd3dd2cf9eaf0bbaadd7342e7d3a6794ebb1c9f94bba65bc16ecb7b3d0e0dc9e738c42f5997fcf3a76ed7280ec5fed65c7d1ae611e98da6db -DIST firefox-78.10.0esr-sk.xpi 534234 BLAKE2B dd57d10a73121dd6f7f802d7defe4615b11a25c16c8dd8eff55d192d36252bf9aaf7e9f73176e9f72f92b2d6a5cc295b8c629b2da1a19d2b8f78664ee4b9d038 SHA512 80e20d27e06fe289ba2c2009d4a4f39accd9ca1a66bde289a8c6cdedf59fdc79c5cd32e6a7fdf89a315e35770e44fb210c6aa89b2c2ef90353f89c47f516a06f -DIST firefox-78.10.0esr-sl.xpi 520943 BLAKE2B e1d17b7872b4799d762cdcadab3a79b6602bdf446efdd1735c73bd1f7a5b0e149e48f28264d64f8452ab607c9fa78fd31f067a2556248080e753ea9c095a68fb SHA512 6eeaecfd990493cccb4a7b349e54c41ff28dc031a8024163cbf9d05dba42c41ac35fd8d8f6599362d5cca3d9162438524902024f632b968676820dacb787768f -DIST firefox-78.10.0esr-son.xpi 424577 BLAKE2B 60e941d1346876f80f0a06a5ef592b88415a9658312bc399b12333b691de2c029577ee1e59f157eafa0901ea66a994fbc76fe8a448281d0487d0935a4ca2d95a SHA512 f9f1eda27302535a7637c62bbe254a9ea76f5fc81109162befaed53e46c56b4b066e846a54a2b636b78a1cb83e4a1ecc7b6401357f48ebeb71fdd7ec8ee53287 -DIST firefox-78.10.0esr-sq.xpi 544914 BLAKE2B e80499801bc53e5673e5af3765027e0d94e69a1472c247ef37cd2f1422b9b451942fe94907c6c9131e288678591490833d66313deeaaa8f43c24d588c0a8ed3e SHA512 947ff2090a54378b33da054c77bce986b39ff211c50bf82cadce5526910f5ad3493a4188c802713ecd7965acaf39ef4fe876330c77e3ef9be7ebd352973ea8e7 -DIST firefox-78.10.0esr-sr.xpi 561390 BLAKE2B 1ad5f25015435f36af2167162827775598395a6b059778e798a020fe8044bf1be0576354a45a1bf9f22184ccf692bcd64bf9bf71d052f2511299f17d92c9c7ff SHA512 eb389907df91ced5e6c5ea483adb1f92b1eb919fc6d2efd66a1dfc1e1f8857db4980feec2894ce68b6a00004c26d2476ed9849a141c94b0f94605f957cb0b4ab -DIST firefox-78.10.0esr-sv-SE.xpi 529703 BLAKE2B b96aa4f2c69e29b908fc710a45022c221926391f848b3067e0617cb14578c0425c66167123f31a47c000b899f104cabd6a0800442e8b199e4eab7b0d8433e037 SHA512 e59988cb6f7559c6025a12f00aa1389d2f19f5aa38386b711f0774eedb03d842f878a5993f7ec1b375c6cf5e9f257230c34f76813a8b8347d3263a85b5754ae0 -DIST firefox-78.10.0esr-ta.xpi 521543 BLAKE2B de47d30120d970dd6757515ad1be926826f3dc25c152f75bccff595763b2a5a9e7ef8d437581f368dc95963e724a84ab9bb2ebd9d844da54850db0e0deaf815c SHA512 5b42bb3a0006998e76245ef4c9797b3f7e502d6d5a1458304c5cd2c19230c91f18e4376d94ed456857a99ea3a4a955af15d0aeb13c5641d49b7465f4a944fa91 -DIST firefox-78.10.0esr-te.xpi 558392 BLAKE2B 2711645d3fb983a6c4f239b047f8f8a6d5ede125a7b1be450c052c55e9f1163b8c2d31cb875267f3c41be704c3ceeb995f8a46c55464d9e0d68d8467dbff4d0a SHA512 de5c0c9b39e415adc2eb782c30914e379f8a8b463dfba2a3416f8e37557cab2a2adc41ad592a98dda2ac62b73e4e9d9b7925730cb43143d2be08fb8ca9c042cb -DIST firefox-78.10.0esr-th.xpi 592235 BLAKE2B 219a57181f70e534dc7f20b79ffe8aa68c58e38075137b1aef51b5b3b53a5bd4f3e49c3bef19125f6ece293ccfcb8662323746dd4f2f80c8896d0b8e955bb984 SHA512 a84cfee38a839a10457b4b25b5b07a55189869ee8dd0849abd0cef7a3e0555148504cb43bd0c8074717bd2916212ff9c2d09dbda5e871929c1107c27e18f64f0 -DIST firefox-78.10.0esr-tl.xpi 521115 BLAKE2B c0bead89dc6ee1489b1ca8a3d676d6ef21b9ce4a179369d45d63002e65536a49561a856dd6f8cae7c3cb23de6c88f416d71cce82bd85dbf32100340a8472ad88 SHA512 45a09822bc8fa986f5c2f78cc2652daa719fa7deeda054b571adeaa0d40a9da90fddaba2d780ddcba8e372aa6e9d1f2e00c1e5672b13ac13c968caa12f6aa3b8 -DIST firefox-78.10.0esr-tr.xpi 539877 BLAKE2B ae0363cd315a85ac0921fa5ded34b0d75a47cd338a22ddfeb8d7dac138705694978ebadb345a147b4418ca1a1996c58dc4730b832dc074f0efd3050d0d0e1ba4 SHA512 7b96f266a576af3de86e7937759c13cae85e6556803fc04f002f411a3c0617f52ae52a18c49a62d432e2815df53f33a4de68ab96e3b663b6370537e3820609b7 -DIST firefox-78.10.0esr-trs.xpi 501214 BLAKE2B a3d4183af2ae534a5594126bff329df35f95dc65043c312f5c0f5c64bd0316c7ce40db04d3c6544024b2dfa256e514060fd53d38f3e0ec947780cf7debeb7b4e SHA512 3875ddce95129f54d079db06d145aa51c0421a92bbd93c7870a8b86d59d68fef591b347135793ca826d14ededf940eff1873a9c708d091ece5366af517efdb17 -DIST firefox-78.10.0esr-uk.xpi 608593 BLAKE2B 7829253656c3235fe8653f443a524dcfe2b933be094392f4fe4f07b447eb04d486c2ac6d0ab69e21fe507b5616129828fada5846829e65a1e5e63862644f4825 SHA512 85811f92fec1408bab25d351622f87ad99155214b74fa7c4ece93b64297941f76278f76f4d24bf65541f2aa270f0629030e1667e0aaa959e79c5500c8641cc1c -DIST firefox-78.10.0esr-ur.xpi 557950 BLAKE2B 8c6df7b8322c32cbb23073b2455ee3eb687cc8df4c78f087c3bab79a2b20da93d930c47dba50576f7d7df507ec4bd0778594ce9f3c6893b34dba395144e51f9d SHA512 3c5490c23d7ba657ddf251dc23db3e58dfbce3cdf175de6b4c16c081dd587f28ac777343cbf79e130b1f309ea98cfa97f63b2d35d1c23036445230ec69b1dff6 -DIST firefox-78.10.0esr-uz.xpi 477560 BLAKE2B 87ae5dfcbfa8d84cadb1c669af3d3ff9ca57e6653b6146108f5ef00c98311f5ee4a71afc0c1dfd22619caed24d9c2958a52a48e35661776f9be09f6424e395c5 SHA512 f4b4379ba99252dd03d8df2a18fd36c8ef5058a253aa2be24eb99ef01d6387fe27725eda080ed35869a65ccc16108694ef68adaa92baba50350f866e4db03f6e -DIST firefox-78.10.0esr-vi.xpi 562862 BLAKE2B 64cb00ddbbdfd31c015d0f9ace366927df38ddb369b5dde36c61f5eb5d015e2a8a5721b0335f7c6c20e32a288c28e8042ed69ccca54f61340206ff0d96ecc927 SHA512 c9bad78afb82af4f02c6535bcaeb435d55afc65349b94808400e0d29b85b6054594cda706f9856b5c841a23aca85b66b28873bbd086e853962f2f7ae3dcef179 -DIST firefox-78.10.0esr-xh.xpi 427850 BLAKE2B 72d4821a3bd389f4a9577f72c6b03e5bab1ca8990bda078574fd26415449d19b5c472c1ce8d22a81aa717d9e53d2ffcb32af6aea36eb28db0bbe59e614685d0b SHA512 4eceda18e5f19839894c5db6438a6dd041e1ab9e28e20a2d0da6c3dd38af917283f7746a7546b4ea23aa798cd1437fc2fb8373d15536dec9337b70b8f3ab2b44 -DIST firefox-78.10.0esr-zh-CN.xpi 564772 BLAKE2B bb36091f3062e3dafc6fd5e13255def73fbcffb32a71109386a6b51675b849621220803a43fc5f9a7afbb9b352b6ffd01e0ef19f8b8f935d062841736d9dcb58 SHA512 f3f0da1a79ad7ac5b0fdbc8b32f3c572c78627965ca4b08612b5b658267f726e831b502c63641ba88b0dcfb395317e1e98c76cb7deba03d98bff5a33769f6db5 -DIST firefox-78.10.0esr-zh-TW.xpi 564736 BLAKE2B 102c5584ac0f8268e7db3431bb37c3b73e279a83f5aff8cd4c468fa321795676142bc75a031a07e913305d524155db43aa7b09c513ad7831ecde452f8c62de3c SHA512 0e300cb71c12ee2c3e861d077bb9658a995369274cf93d6f5122246be9dc871de710935547e9722251585618543f1e302d44f744b68d0d586ac1f307fb9baca8 -DIST firefox-78.10.0esr.source.tar.xz 334642452 BLAKE2B a57e39e5f8d5bab08359957017bb44369598b49987b561176bcbb88b0bc10cd05214fd084faed872f4006e90e1b84a2f9b6f46049da763ef554d235c00d07519 SHA512 5e2cf137dc781855542c29df6152fa74ba749801640ade3cf01487ce993786b87a4f603d25c0af9323e67c7e15c75655523428c1c1426527b8623c7ded9f5946 DIST firefox-78.10.1esr-ach.xpi 460302 BLAKE2B ee0481573067f25ca05964c9cca588cc56eb144d5942f0523a46ac97b8654403f0ecdaed9bd7645ee960a9bd6d758b326efaec6417e7f7e278995cee98dd610d SHA512 5f7872431bd06156edd436d0f2480e19be0282053d473667788c2519752c5d1d3d0e7816404478cc30524ece2075cc665d3c03a51d11ebee97c631742110788b DIST firefox-78.10.1esr-af.xpi 428353 BLAKE2B e6dbc7e8dfa4cd872472dbb0e588dc908270f53f3119d34bf42d1ed520726f787d5cac6e7434cd73e33be374d9ec37128adcced6c7bfff376f30713d99a084fc SHA512 d82d33cd0c9c79b27b6acf7d134f2ace43c7647ac6fda831d36a1ccd855fda3dd6b0d07b11692ffefb61a2f82d4e5f2423ba0f0f7853ca88aa59674eb82cf28b DIST firefox-78.10.1esr-an.xpi 508382 BLAKE2B b6d3364ae48ce0cd9de236c0fda9261793d2524060c53b6416a239d9f7d884bf1fa83c9394495507d9f12219803b4cd36291def2deed0b17e8a4d2d5ce25251f SHA512 207fe0d279866c726a8620281b05592daa98306f80a0ca628f78890c3da560fa0f5db20f44e0827d81d6d40c20749f8447c186550408cb450000f604ba29c3ce @@ -200,105 +104,7 @@ DIST firefox-78.10.1esr-zh-CN.xpi 564762 BLAKE2B c8da00eb046e32d468f8ec626a2bc6f DIST firefox-78.10.1esr-zh-TW.xpi 564732 BLAKE2B ff88fe6d855fa1c1aa41d69490ade25b1676f2b92cc1b01855551455d7a4bc312b56c1594d1c74359b75914a08d48894986ce67d38da31a071ac7fa8d8635fc5 SHA512 7f6d87c8070a35d70b111454b8978e0c7c43e787541607af966a74223434a51043cd7522c102d1d285bb88b86d361fb6270782f3e7040e79bec8e1878584aa2d DIST firefox-78.10.1esr.source.tar.xz 334444960 BLAKE2B 76f9bae7f9fddbf3ab14293d1ec9e51b173961d0d5e0e1ef98b65328294f520369b89fb300a91d9f502b93215a15c228925a469b7b14ec576c9a9be874a6561a SHA512 a22773d9b3f0dca253805257f358a906769d23f15115e3a8851024f701e27dee45f056f7d34ebf1fcde0a3f91ec299639c2a12556e938a232cdea9e59835fde1 DIST firefox-78esr-patches-12.tar.xz 67840 BLAKE2B d85abdbb54a252852badac50866cf5b5009c050ec4aa80ae2454eef2719e80f3442f5a74ec58d3c36531539042830427cd85507b708c1d5b36ea44dd0cef60b7 SHA512 4445c0880fc234c3838394483ce986e4e222260a99427069ba9c55b56fcd49a485ec916ee6aa2629f922390e92bfcd78028e30cc2e62fad9bc080ae45b26ba2e -DIST firefox-88-patches-01.tar.xz 22344 BLAKE2B b4c1a96fa339dc5ccbd631a1ce03ccdea2bc5598644f331a14db061c5cc94168ee51ecc61a62f05bdd4f7eebdb41bbb646ec1a56e1570572ebcb892a4273be3f SHA512 6688e2e918530d3ff3fce9b2ce233356d7409c293fd4465afebc5e6886ced1d9bdcc48405ac3c4b7524a26a225919cfcf1accd3c14a01c073feb6dd1ae73cd45 -DIST firefox-88-patches-02.tar.xz 37656 BLAKE2B 74e77ef98522686b27398aad6369603f3f62dfdd58b6d396ccca26a732b333912d9e37d53374b051c990798e3353ec29d6cfc512f77f117f861974ff041e9c2d SHA512 401c72e6c510e50bf0030f7366fa0a5643dfbe630a131e584ba09240660344a611c956b70381c5320ceaae92e7cc3c207431938b53fc0286c88942d4f9d75771 DIST firefox-88-patches-03.tar.xz 38572 BLAKE2B e6d68129ac731898a78d015f8f44bace45a403ab5b06376b3cde9f06285858a1e901e0ef8c079c9473e0fc3c5e3fb5632873eddbb6a49bb673da445aceec51cf SHA512 5492d7fea03321887a328b024e1b7b0a2bf5d70d3c82d4215052ca0d4f0d59a916bb8be92d0056efa1f046c3e14deb986ac7a0a2873e14d4d6c3376059330c02 -DIST firefox-88.0-ach.xpi 466425 BLAKE2B 571f2d86a1535d58b32b3647166fdf86014af4ec1cea5369f73d0b0991bd3b4c9940f77d1833b0f260885c663c9915171124495958ddbdc887e7d5fe3564ee56 SHA512 0cef9516afd5907b206f4b467de63d0bb51414d5cc86c49c6e3f0d6fd8964f66790b441b34ca37ccc5a8d333b9d42fc602a2bed8bd81bc1c9dd5f5ad29eefbd7 -DIST firefox-88.0-af.xpi 430681 BLAKE2B b7930a70b8eaf3f09bd4be9d34c698672b7f09fe643a50e6d04f8de3be5591beedbc651a9a85de45e1a2052ee80f279e4c1b60d37fb03f6ab7fa0f8c0d3ce96a SHA512 7d7292d6f258328318bb7d09b1053618a9b304fc5884de769db4f909b49438156d2eac8f3f8cf62fbfa115190f143713b350aea529d07e0a6a5c3da626096eeb -DIST firefox-88.0-an.xpi 514139 BLAKE2B 925eab38b565d0e3aa53d34df5170945c2319a41ad2e3bc5e452dee4ea44e8f8dbf2044a29dc68e8e8a48187af9013fe098757a0d03029b863d8676b44c94598 SHA512 6c2a7360f89083b989ca0e9465dbcc1ce0920608dfeacb720273989200c4e2d4838836a53a192fc366b21941d7c2ed9811c8d8ce507f80d3db8778874103da71 -DIST firefox-88.0-ar.xpi 577347 BLAKE2B ccee800af58aec19c1966413eb78ddc88f9001b59965d68a59f01fceed690e45e26a4fbeefaa0f6ec37f5bec00c8f63c1330cfc60d97408de21504895633087b SHA512 195747125837292d984802db4a50e3a95003be5c4722b4d85a2db5d2c1520dd4fc9ea3fe98cd909bb0f3c3f7ad51d10623bbacbf8c6543dd08696cc65bd9f8d2 -DIST firefox-88.0-ast.xpi 497101 BLAKE2B 25f7f2da55b2d98e2e3949c631ac2acaffb457eae6b6e9d9ce2d04ab0c43ace5d36fd1fc9739d7452a1a5c196a0c48c2624ca8de39edfe0a8f2c8f951067a418 SHA512 44cd2fe6edacabe0f87873589abea5bc13d14e916b2b175f86e584889f7082a331658414bc9929ebba43584db76332a8ede9ee3e3ac65d962c527996e720f3d6 -DIST firefox-88.0-az.xpi 502505 BLAKE2B 35fd08743bc6e989d8cb7cace553b187d7650143b68edc21e4c604443202d1f0362a7ba2997275643782b6eb096ab9c4084f13384dc503c7cde116cd9cb3fb0b SHA512 7e2459d62a9f86afddfae3305e0e9ebb9028053233c1c6e7544cc4f97f01aa0f79d0600280f14d758d0f0ac55fc57fc7c0132d58e4311a3ca822f00debae4759 -DIST firefox-88.0-be.xpi 625939 BLAKE2B e11601e6fdad6c3ec1717420a274b3b2c679b0b765ea6f8dcf631fe041b421bf702ebea0455de4f31cd2170b3ef0234f60461dca60d95c95f716bdc05f5128eb SHA512 bca0659fdfafee8debadce7fc5f38748fdcd6854638154196cba966e03526c21412036a092fbaa7b66d7deb0b494023e00aa16f506b31b451b3512f2bff876c7 -DIST firefox-88.0-bg.xpi 570446 BLAKE2B 2e78e10e12c5906acf22a71dfe7078dc24e2bba914b63aca108e3c9ad6701b42bb16571c4876c26259b0e50c6158d6803bbad8fabd335839d4e00f872c1ae1be SHA512 1c335ac924c2589a68817f24cfa647f853825501143754b1814fac321c6a4913a14ca78b47de2fca92b0b47db1ea90dfd7405de249f373fa35c939387cb2b5f7 -DIST firefox-88.0-bn.xpi 578195 BLAKE2B 8d9eef6e777c82327570b1296687d64bc5488f1df4f1327b64264229ebcb0f744e8befbf0401de8445e459ccb75372090dbe60dbb131f5ebd12706133a6ba5e0 SHA512 9ed7c72d3a91d93d2f77ec0c790c30fa4f2ba5927597e7224b3c86adcd0006c5b3222962d3511861fc106a6ffeb9ccdd9ea62bfbbdfde53192e9df64ab71dd17 -DIST firefox-88.0-br.xpi 520137 BLAKE2B f8dfaaa6ef5c732c21c2eebb09d4149470feafacce5088c701b59b24c14e95d544231314998bd637863818727e0d2692e1fdef6fd30680e0347150191212ec14 SHA512 8970e29d8a72eb39f0bd28f48c4aa72db9182583a93e6c737d036ca03f1a381d8ba788029209d9613b194319ce58d5e8bae1eea8c1b7e70b0593e84344211256 -DIST firefox-88.0-bs.xpi 471193 BLAKE2B 2c099595f02a94c830fedd694f65416d5ba4ce8de245ffa01f55c8e7debd1bb20f24138573c2f54132c79fd9ca8750540f7fe140832bc4c63a71c6533ca1ad0e SHA512 a76c90d0ce6a5c92018af4c2cb14c27736f57719bd8125a37fa4446e0fd9f4618d6aff79833c7a47915f106f8ab1dd29cb75c70dca6859ee22840db2180d2e12 -DIST firefox-88.0-ca-valencia.xpi 530880 BLAKE2B 3358e4f2026d1077a3d712a7ea8aec9b2fdaf38d9212d87e43138a10d744616fc53692462399cb872c2d3e571932f253e0cb57cde6cc903357822421a0958410 SHA512 3ce32523a7eeddb34e8af9ef0d5569b1b56baea92e72fa8b0dcfda4cf23d16ce174b3fb9b3bda7685674174c0535121669cce9946ca751bc67a47796e7db7b30 -DIST firefox-88.0-ca.xpi 539383 BLAKE2B 489d18578499976c2f70770ff82f6e2a139d9ab19a6ae18608638d0155644724d423258e5a1aa119f222a00256311fdc91e4fd4f54c24ce36df9160a744569c8 SHA512 6130c7920658c5c1bd031bf465c523f8ee6cd808a247a8afdd6e59cd61c40fff5fab088265aec56bb3619f093e9b91c1cfaca02727dcc420083ac35f0bdf08de -DIST firefox-88.0-cak.xpi 565770 BLAKE2B ba7956984d98abe537f36fe9e2105e6914b592188dbab3d0c83415f6adadfc6203ad62410069477e9f28d93c50b2518ca586f091eefc0610619aa48b6a358b81 SHA512 8da97e28ad92fd051fd0804f8201f669ae4d2e8bac15e2e2fab0519dbe9d40cba6af98e668590ee91861330ab34da33168023a03fd545f4dfe8a61381215ed43 -DIST firefox-88.0-cs.xpi 568034 BLAKE2B e264e844ad1f97e584db7de9dc80cd951074063fb5af29c76d2c4ada81bd2a99a62ec46e102b8714575cd8597fbb3b1c4e1fac2255e507683100feae3066532c SHA512 d09a60dfa70003d98228501ab6e95fb2bd301258ad6a8fe73289013465c50420b85cf5c14503a14d771ba0934bc9771968ba6cabd0db1115b6c5d5ddf5f39759 -DIST firefox-88.0-cy.xpi 545903 BLAKE2B 0b0544ddb5615e8a76718697623138b68bb3e262b8aa6f8d0a485a401874228176d054bb4f022333c6e45f1b9f8feb85ce378cb50801964714761d17bddc6eb4 SHA512 8f4dd06f31967c6800060e88cf8dcc0a9f5312aea3d26d67eadeca6e15f35bd02a5f26d2d754f35abfc8b11eea869d1a941effe82128513ea2108a1ace2f1f55 -DIST firefox-88.0-da.xpi 539196 BLAKE2B ac756f700370497389b70d093d35a4b6e85425827f24095b2c12773b0cb086f9dbb30432a1e797ab098b73008ea175b0faf609c1b08c23013a9dac569d30eb43 SHA512 825fa827168b17b3bbefe97a04de12e23090205b444217ec83a428fa996026bef3cb26be9781ed06ef94feab2b6a3b00aa956b7d0dcdce1238a6f8fb2dbfe652 -DIST firefox-88.0-de.xpi 557923 BLAKE2B e42e3ea779fe682fc0078cfd56422dc1ea8f07b2b2f0a15da065d0a581ed865ca51bce181cc04930140f48f89ed50a4375566ccd08e3a7fb11126c7a8bf1d026 SHA512 9b0be0df2a12c9e3e9d0c784ee42cb3ed59d3338c2f427f2a6f53b7cd4f9e54490c7cde981484ad2b9a5e8b00fa3bdabfa57a48c14abd70cd9284cf6320ff95b -DIST firefox-88.0-dsb.xpi 571052 BLAKE2B 0ec4310fd9f98b09f94292d2b064c45ce00cca56908b252582ca300650208697949d62eeb507fc43c3325abf7b42bc19685daeb6f1fcf3f9b40ba186e86b507e SHA512 a39ad324635a0fcafad956b9cb3828949c06bce70c489965e818d1300eec066bd47d4663ebce0275cd72c00733bac335f55691d6749d40cf93dea0147c59d26d -DIST firefox-88.0-el.xpi 644741 BLAKE2B ac2d305a36a63f50c3793ee930584d7ae456d4839f27d1c5609478e74e209c06acb72aa7a3f71da6df9399fd31589e2127fce494905b5eeb4c0c85898a26ab22 SHA512 61909dec9b574ae4c3c86e7dc0643813ce1542260f37f39a35aa0cc433cb4cba2a72f1caa58dc309eaf9efd66d6f5765b9d7ba326fde8d80fd9034bc5df60989 -DIST firefox-88.0-en-CA.xpi 514525 BLAKE2B e4776fc1b4b068528aa82a046fe03d6a2b63bb9aba4dbcb2f5f81758d0127d781e2c04217d53034297f9cc2d9bc231839a92df76971942d5ab3b8b20ebc2c68b SHA512 e36778d4dddd7c52302b6c157bd1c35465ec876bc5481c2924e77fcb2834246c553229156a590db2b4d922fab86b64d67748e6f484883bf2c3a98483ac9a1f00 -DIST firefox-88.0-en-GB.xpi 514847 BLAKE2B 2b714b2498c614c5b2f23f43c9dc364f58ae8e65e1d05470b754aca5790c30a9e02f0b3b9efc47c33b21db893f5a20d9a60bda81055bae2529856b4bf72e6120 SHA512 c3c92ce0875d485a01a99ec50c4569507b86a26b458071dc44f3a9f3c23f38df662e410f3783a7e0e68026980b4b0a27db73b11343d7c4885f03c325b6f57369 -DIST firefox-88.0-eo.xpi 541269 BLAKE2B 26bc938b4cc57fff783e4d4166a730dafce3963fcf91d919e2afa597a0fa0acc882e7bf5a7dbc2a7e935355aa24ff2584f94952ce868c10f527d7257889a5bff SHA512 2077ea1a7d9d74dfe915a68202020eb9015237e39e0b04144ed29957a4c484fa09ff950c022b315d00041842921aa7e4f0901e1d883881d12cff567a6e0c514a -DIST firefox-88.0-es-AR.xpi 551099 BLAKE2B f00ce2c92d567f564e11c457dd27ce05b375424cef96f7c38da043715215d0bcdff2f722f51a48508f55652f481c170f2f6ba338ffb642b038d2d891d146a7c9 SHA512 019a9453bf2a6719ec2c5db320bc8abdb83c3a6c1e77212e2db4065058284313f14bcf6ffbed919535ed421aeec458400bc6f3f3a07910834dac520f12214a9e -DIST firefox-88.0-es-CL.xpi 550765 BLAKE2B abfa53e96462167dfc9f8548401a384d2b3293f2db162d327f5f046ebcf44eaec3a808615c9c765b32c1e0c679937c911f0ffc46ad25a66b4213b9b647480724 SHA512 222edbc9f63298f900c128e03b62c270388960e7fe89b489b4b441b1af0c68c69fd657de7795c017e82771092f31568fbe403504c1fb983acb0d5e1aa13af168 -DIST firefox-88.0-es-ES.xpi 541150 BLAKE2B a02028d0a01f265bc7e674632a95fc5935820d60907e1c34cfebeab67bb7eca95ef5f231eb0816398a8ec9921e1621bd4e6158cc45d80492c2c0294be71316b4 SHA512 c565a073082e3addd8446c55e01a46061f33ed304bfdced095528ba9bf5f0c61965f2d8eb2d6df16c77cddd8854582f3b3c91a230cacb4125cf425af02d0d918 -DIST firefox-88.0-es-MX.xpi 544416 BLAKE2B 90b51a9de0ecd54a9bd4ba8ac81cbec2e073fbab713343ebfd2dd4903a5c59e92eb6dff793d3192e63411cbb6005e580da5a177b774c8d1fd0e05cd0125f2ffc SHA512 3ea3dcba023bb0c225c4e49b740be272a4e9a723b10a90493fcb5e8790d848733c13a148a92032b3d609937b1cf767c5d30b968b7bacb6eb0d3a725acc50837c -DIST firefox-88.0-et.xpi 495382 BLAKE2B 3137ce44b3d104f209d3e8e673f83f741f6c6adcfc46ae60784b8911e1afe4c00de902e4b7d0f5e2b962dfe7922e2e4baa204c2efc286b0038299ef05262aaaf SHA512 ba809525be7a1365efd03b3c5729ef6ae5fc1424cb824235d069b02b9b1d5e8f8ba28646e7e96c9618460c9141d26162a1bb712ff5344d4e489610be3b72b04f -DIST firefox-88.0-eu.xpi 529565 BLAKE2B f1b8cbb39d5a2853377eacffd2634e98f2374f6ed99ae354e6bea4d49457f2bbd097acd1f36f971c303c4605b312a55b427e359cadaa81caf1fedf2d7a82e433 SHA512 c4f14dc8d10b59ec3a9e34f24042f1c0701c9a18cb98980b66d6662405b85fd585c9ba849d4fd2714702059e3cfc3429f13760646b96f3e4bccbc5c201b417f6 -DIST firefox-88.0-fa.xpi 558244 BLAKE2B 2f9a822fb7aeebea0c7689272cefb4629be8d4b103e397bc291488d644072593e3da10ba17386b82959b7865b2e6a071ffbb55a91ad6e7d30a76e6bcc0e0e7b8 SHA512 c0577fac91b3654ec12ffa2a3af1cf5b89b39f446712702b8f853d00c0e4a59a1290dea591b84a22a658847afdd2d75587a798a21467472c888a1178d5608903 -DIST firefox-88.0-ff.xpi 487074 BLAKE2B 403d9e8d6b93021115f6d92ed1899d3cf5ac5984007cd92e8e327da19a45075a459355941d514f10b04525e3b3de72257b602313c0ad551df8e124c42b38ee4a SHA512 f83078a0bfba6c21d6521c9afdb7f478c55c1c80ccba92958fa02e2062732d803d2fc409abfb4da4b8f85d7d0c3ca1d3be695fda863fb42c3d50c6101c98559f -DIST firefox-88.0-fi.xpi 535879 BLAKE2B 8fcc01e0d50fdb7a86767167ea93a1402bf90337e2952a6f29c9a141c39ec4e6dd14920c10a9e42c0be9662e1448724a0e53cdd32ac13215daded58641de3db7 SHA512 2a848fc1785a21b682462b2ee78a04443e5b60d812f7d0584d01db7703e89058a5796612441fa42f15d51a614cf20a91b64169f10e5f8b2480f69dcc19ddd175 -DIST firefox-88.0-fr.xpi 562822 BLAKE2B 06b69fd27234a8ad94aecbe8715bb25aadebdbc017d97f17ef9b594c7f7ec86bdfb2d3ba2c8e5397e750ca6d2e41994e0585423858cc36b8be54309e315cf412 SHA512 cfd1c171d249297cb87ccf2a3ee08a56ccda7a61c0f51f299fe7878c2586b7ff7f0a1c25b92dc1ac2349f654e7cd45cfba81b21244d4d65e844bf6b0bdb51bc8 -DIST firefox-88.0-fy-NL.xpi 547927 BLAKE2B f5f3a911702de3a2ad6fefb7d1e2486971398a84fe176371502d96c461b01595b11fafe8123f3f9bba6c7502c4acdf3f7e95bae75c404e9003019961bd5c9c40 SHA512 be03282a71f80c074e8035c86cc44ca9c035adb53b511c2e4496f1ef864496fb692a3a1d8ddc4d76a3dd85de1387579206ab67752f9532fc3e973306334a1e73 -DIST firefox-88.0-ga-IE.xpi 472046 BLAKE2B 3783b55c4e95bf2e77ac90a5bcf0f3e9830c77838aff5961e6ab4b9583aef65d32c217858006f00ea937df47dec0f29b301e003efc8c0c5fbb8bca24ab43b171 SHA512 16e5d9883a7dc9d9b39a2829b360b065f33f197f829232d0daa1338de65dd153a1d353a755807c5e3887d4c8c17725b1ef12272bc9bd88755088b1c7ec2a7ab0 -DIST firefox-88.0-gd.xpi 500183 BLAKE2B eb973a03f03e445a9bd73aa12037b4496aa892155df358f2c30ce0dcae2bb30e7a2a38ef170cf94fb1aaef40b8a2c552fb39926113732d4646593eb1275d1d0b SHA512 08d77e691c70dff8a26088a6806df01fc6b3cf37130bc7c6be03d5091c645e00e9dc70623a236fd10fb8bd3f8c2d2e95bd1f06a93b9d44f5881f06f475fd4ee7 -DIST firefox-88.0-gl.xpi 545149 BLAKE2B 2ecfdf07b7437da9d5bf15e8e42089c441d2681eaffc42bca36399d2b30bb80c820a3d040693a15d759ecdc27689221761e8c5c77577706c320cb285b35f6d2c SHA512 3e2b92dfec4e72600b51cc504e90f8974f3991b21c029572b7842402d45c1de524ca9ac400a422420d65ba533157935a30a1faf78853ae578c1daea6771a696c -DIST firefox-88.0-gn.xpi 562570 BLAKE2B 78f443af27d9c1b1bed3f76332fd9e90faf5b21338b6b716e814b91d95388b54f5c7d29fbd24ee5c403b09929489d09284dca7c22b07b8d2814c7c1abb926cfe SHA512 ef5039a416b3834a557afd2cd49d5add3296a6f49d8447a026092de0a318e4a5f447cad7c6d88b4477e04d6678b127834327943f2699bb31c7af50da8f3a3192 -DIST firefox-88.0-gu-IN.xpi 546303 BLAKE2B c1844d3a7e34488b5bfc2450a8fb7573e96de7f90cec7305cdaa10a98c7a21c6ac22352c67629a8e012f8ed71dd723f9fa1db2179a75d4760455072160b7d4fa SHA512 2dca31c90e101653739a6e2abb36bef0f2847fb578638514b2ea1c0516b2f63ce782d223085e8da1c87d5b65b616e4a2d308b75a97f09e365ebabfa4b40f67de -DIST firefox-88.0-he.xpi 561745 BLAKE2B c7b7ec7095fc549405ad0dec7078f38678fa091f1edda0f7ef14a223bc11604fcebc4107843e5ae0bbed31222d91379be041ac51be42514be42a866a7d8bea10 SHA512 18390cd7c32b354fb0de2b70de76d03601faa8546267a8b1d18d42f049f3a083414d7dbc69867fac077e79a5276b5c10f3051ed5742aab9542bfbd4fb8458c97 -DIST firefox-88.0-hi-IN.xpi 577980 BLAKE2B 28ba6a96ad14c4a8ca4bd7cde9a31198fb84c20690dcf3620c3e1fcd1c9a018ed0d665208f572284d16d6759234b376ca97ab260d24fa54724de608278f08616 SHA512 01b22403b2ce956490eef6823aa01582fcb7ade1807118ce62cd92d74768dd0ce6b287bf09ad21f161f28f8d954ef7d0c715a05828e178775bf522892fc496bd -DIST firefox-88.0-hr.xpi 542106 BLAKE2B d61353c1853e0785b43339f58ec4d1d643bb0a1e088b1106d453162b4799154c692715069df19882b4c91bf592b45a9e3a0cb0de7061684d2afc67ab0abceb86 SHA512 d84bb0042e9edc3d6c88369e6f72abe590a71b9f192b7b44efaca2595d9679cc0c0318fa1ad201659f5db7a3e9ad4be50ae2316ab9537d3fc569bfc8dcb2994c -DIST firefox-88.0-hsb.xpi 566434 BLAKE2B 5b8a9b3394571708fcdf47f4a95d965b85e045fd74c17da877c195200f450e89e3ab8d8629a60243dac440b05d3751dc16265ae4519083ec38f9aefc3d6c1e1c SHA512 a3edcdf29728768d8b88b4c08737abde463dfbc93e04609143138c8765a248d5f5c558ba722eed83e051b5e2ff4c8d204765e1a8802c6bc88f6532f134a39cd6 -DIST firefox-88.0-hu.xpi 570098 BLAKE2B 296e6639464d22481ba562798ad253666ac25d3a939f33f7416d463cc0d83e8db159ecd1996df61944d07f6100daae0e19907b7a64323a676af480aa01fd38b4 SHA512 e0c227358ec585a8409e7a85bddebf7576d659641e88e9599b897fb94adc9dae5faedd2f83c331f7444f9d42b7ce10275b53c67a34a05506c1f912432d932aa1 -DIST firefox-88.0-hy-AM.xpi 596026 BLAKE2B 824150ec0d2981ae6d9a08c04a130078bd90e28503426ed4257b6ec5c165ab66e247e8e85775bace7f57d8626c4dc0be78ca4a1bc3c6881e0328916f24c5d269 SHA512 8dbc3e10b9ea46d686c81acfbd311a605e38b796bc3d6d6830796db041b7bc426b11c765c5f0eabc1f60cf9dc53d5f7596a2b32d59e25d51646ca7855349087d -DIST firefox-88.0-ia.xpi 535791 BLAKE2B c844221491587a7eeaa60aca94a11385c91cef045221d305b822d0df24a538b1ced611d2e1d31af3fa9cc289041c632a92fb22340f07d35728bc44b076784254 SHA512 a9acf73fcfeeb1c39a03a4c707d831c6c893406d166735104ad170177a9be6ba62d3c6fe8ca4dd90d32a4f5004e3e0a367a1c3756d05b25bbe6e26d83fb23772 -DIST firefox-88.0-id.xpi 530588 BLAKE2B 6e62899a858a05f421fc737147dc3d3a55c48fd62134dfb44db109f56d18cad9e05fb6d0cbf6c723a1e916c56713095fd6de1cad3b2ffcb18078900d68fdefbb SHA512 856f3dfe2e7f832b00a32a746a852cd48c0905f3b44c276dd49b8f5777b6d673d6f70d91a1ae67f6d021fa9206a3d67428e04b360ef822cb13583ecc7c91cb55 -DIST firefox-88.0-is.xpi 482593 BLAKE2B a2f05fcd9a39b4f2c4b8bc35124fd33bb1e95adf70ec3466ee0354b59f3bfb63c81fc801aedc365a2badb4f372c40e0805c6f0766ad0ab3861d239935ed3be2f SHA512 41e52dbf1d35b9251332a579f04dcfa7e1ea3ba5580fe6f4d08880815c412e399aae6f079abbf9a11e36ddde7669dc8a3868d83a46a4f196296a647a7d0cc9a1 -DIST firefox-88.0-it.xpi 465211 BLAKE2B 8ef8b611281b337e39b53364e534da91fd234e5fb4eab3a18031992cff22e619aee57c010a2f52b52d167c41bde799e46b26ff74031d14ec71250f8ef26cd143 SHA512 58a5ba4e49ea069a845f0c1387233921f095dc30d926c6cb5a955f51025a39353af34afceb733374ebf51722926e13baf500d28df95d3358c9c2a780fccbaf18 -DIST firefox-88.0-ja.xpi 595888 BLAKE2B fc03c2c4b0ce5e0e5f0adffee62fd9f1a00df2523f8ac7d5f9af2514a527bc3fd8cac03a18cebf4a9405ccbf692b123959bee7f691540f12adec602082d662c1 SHA512 5abcc7643b8266e938a6f4cafe46e57c9b32bb39ddcaa424fa1faffcead24f46daf5efb7d9683c2d3bd717fd6084657ece7356fc61a5ff19c1116acac97e26ea -DIST firefox-88.0-ka.xpi 597393 BLAKE2B 4ed7704acfb4d46380483e6630bfa8469fb7050cf99244ccdd77e8778d6e1b824ca42d5ea75d1a747b5a6d7da2761a623edf65b5859cc9d92f519612bc257bf9 SHA512 91d47e276c0c5c6d720d57c849a5e60eeefca1d584e1c9e4aed8703b5d4682a96dfb099bd62eb0d9f67aad6873b93c420ab1192efbf1b4b2f7c2585af9edd170 -DIST firefox-88.0-kab.xpi 555978 BLAKE2B 80cea0cce9bfadc383c0237392e844749d9b231eddfcc46ca3aafb29e1db9712381257decec3b8950e7f8bc2feb607bb7a555d11144fbf03cfa7595071f0d047 SHA512 a91fe870cf667794dec92eae775c9bc651fbca380980f2035172045ac9102a8ddb01772c56da2fe52740fbf8a2255cd534ba189a136cc3d6fc13ff216c99a1b3 -DIST firefox-88.0-kk.xpi 615084 BLAKE2B 09f4abce2e39c58f88cc443bb42c80b523a4117030949656635a14264dc23a2cecd2bff5214d691102fd42d28e64c434ff0d95f052cd6378efce2fded8a9aaaf SHA512 da5ef0047b71f15053a4655afab59a35c84a8f5bcd73e4d6428dd8788e52c2c6e4c5879396fea52f685462e32a2a5b5449f3234437b148b7284bd3074c4ccffe -DIST firefox-88.0-km.xpi 540184 BLAKE2B 61c1a13a5aff66e85d7e81ec79ddde22283437fbe77bad3f4e04199bfbeb58ac0330c473861c488d78c39614be214f36c868644f3509b6d1ff0815ea99891d72 SHA512 a528d8cd04e9c899eb4522bca0c76ca97ee3b4219ab9889bb9582afae3386071cc36f8de7954723de831ccb7af211270b9ce32cbf56646d7759c316fa899aa9b -DIST firefox-88.0-kn.xpi 509554 BLAKE2B ac3ba0ccc008304203679012b74d77294626bab3954e34aee33f76f716a12134577f6a57c7687c770143afc3721d575899f259c0cece2dbffcb84eda3f9a0b23 SHA512 2fa2cbbdd0ede4e91282dbac3b67f411827cec2fa59fae2b7ffe0d5ab81458b6620b6f990595ee6bc9c668de1153877d1c09529b822bc9d967b17c946010334f -DIST firefox-88.0-ko.xpi 581947 BLAKE2B ebc1eb19865fe8eb8410f0480d8135fcb06daee36d0fb87872b33cf89525dbd4fe2768bba9d01c725284032d527d4a6b0e23d2c9bd2894373605c2e0f901514a SHA512 110a2f45b5d0f49c99147cbebd758ab426952a744b2e4ca0db165f308d24efc99cd822edb2ea884d030552d2b4a107e312981e349a528e93c702db2939d94406 -DIST firefox-88.0-lij.xpi 481071 BLAKE2B 7ca1544e798d24602ca0598df5a9e2bf897572b9dabd883a894cf2aaf21f8ba623b91ad31837f697c359903078f8fc5e2ede044acefdd11b8f6fb1cfa495c0a4 SHA512 ceefce0c6a884cc885ade4708bb9d6c3553ebc6c1bad3c8c460bd26c48d91f71c83df27e6a3f7fa62041b3f9056a04053d7464c7df34c3028ce58cfc4765fdb7 -DIST firefox-88.0-lt.xpi 565816 BLAKE2B 981cf11b3bf4dddedd143ecbce529ae89503a67b1ffd191ad7077c945f9a5160d7ffe2cce3c4bbf1fbb94565caae571ebdd316ed82eb897d1bee956099af20c7 SHA512 90684144075835fad26398f243a88bab7d2b30506f484b89cdb0d7598b131eea818eb835a6c1fac04843fae41e48bb21bb1e8ce429921e239c8c8bd991ec83f8 -DIST firefox-88.0-lv.xpi 474630 BLAKE2B 75ce19ccc02d788b75e24125e2b99ff7d64781beca322c862f9c9bd776dd910dd0b7007feda4c767854c705753c5e2d7b1c0e9ac13f853df42bf5f20abbb3af7 SHA512 96bcc4291bf2b3c40fa580942af6d3f4f2503291cfda4669037d835824f95c483f2baa9a99866026707786f23b8e196e0d19bde17f4545a99f3892ef220415f4 -DIST firefox-88.0-mk.xpi 460665 BLAKE2B af9a3ef439ff9a07fcc378700b38507527b981d6abd126281fbd993ba57ec0ae7b7681f77fd4925f5a01a197a7369b7e1dea60b4378561ddcba7955d25939757 SHA512 4c3c620a1b886bc3769d0bb79328fa3dc5293522af76a39ae54fb04d4a4be7e9fab1c692e7165a2d10ff7d48ab292db6ce6709b42156b9a9b29792e8ff69ab12 -DIST firefox-88.0-mr.xpi 546370 BLAKE2B 51e8c84462f9bc1e548580468fef5acb2dddf28719d2a5a6a9d28f2c6e51c81469e944abfb9e765c9e5b7e7f504dbc0fd9bda8ab4aa3b147a97f85dbf6aa349b SHA512 86ce549d17aa85851ca71ed800eb5ad619471289a1821a014fa464e507ab9af4d4aba0d8fd4691daa51bdbe522d2c4005d55e3f80c657d790bfb4ea73ed0deaa -DIST firefox-88.0-ms.xpi 458294 BLAKE2B 2a92c903df419dbb04196558efde1d0032b2b5ede58a669c60235768a38039747003acb3f1fde6d56c23a71e4794472c865410f01a65da1c5d5bf4b6721a0402 SHA512 9f2a84c7438c1de3c945705873b7d450116881636b598e59854b96c34520fe7c8dc8dc77e467832c10a8ceef2b40386ce2334a1aa0a0503403c00ebfdbfdb9d1 -DIST firefox-88.0-my.xpi 530057 BLAKE2B c3199356855deb24c095b50399833c278e812ae848fe5e5b16a5e3c27dd4eb26a01c8ffec3977b99d61417781f86d3ffc6138f23649b8e07bdfa0725e56ef735 SHA512 685867102487b48ccd0c93e508ae552c9bebbe3a876fe461d1451ff54528fe2ba34f84e784a4e2bbae433f9a81fd97e01f0051245ba61bcebb94df69d9a061b0 -DIST firefox-88.0-nb-NO.xpi 533696 BLAKE2B 025be4ffb68565b537bad1ea3bdd9bc98f20da638617ef3f4e118ae76ddcc48f8eb5e2c36ce86939639c62008806ec21632441a6aa92ccde33a477623308926b SHA512 7887bdc1920cce6a2ffb2138ffdb6bc6f13b62844ad88a9c997ee8b4a8b960aa6cbdd8f3cc33582211f2486a9a1a46a5105fac3a8f57b1950378aa8983ffb94d -DIST firefox-88.0-ne-NP.xpi 487088 BLAKE2B e643274aff49c772adb18994a8aeff6f5985c4c49e6fd10ed231a92a1f1d3360c39338ecd2bb2bbed70ed7b2b0468b85cea89ec6e4246c15fe93107cc08ed738 SHA512 1553d7779636cbf9de3b89ff3ed89a45a17ff4ed2e9ab8b2f6d07edfb8f567072fd79c93429fa3441286f845a9513e160eba6b3c20cf47ffb6338924fbd9e1d5 -DIST firefox-88.0-nl.xpi 541705 BLAKE2B 6a8e31957e3de3f72f9450b87c5f942231e6d486236c7d0e528329d2f3a9b7ec2014a69aa860eb6d226f1359aae954c9ba347cd4fe300e82c01c0b0c95b16d70 SHA512 757072e340a1d0dd1b56055d0a3a02439422d83b2512ef4e81f5313c925af1a4ee151dcbfedd74ff6dde43b7b4a9f6d06d027d6be4d8b61b9c8bb94658a1d6eb -DIST firefox-88.0-nn-NO.xpi 536542 BLAKE2B b5547276fb03621e4d3d9bb524e07cb57c7d8b78beb0546208837ba2abc5dd8c5568e0014ed423d4733bf971a75ee68c8873299cf377f35725ddcdcc888ec507 SHA512 f6609d8fdc843b80a5a2c512459f0e155333b8fe9dbd84b0d65db10392f8c93905e1a8f69262f9dd07a6aa492adfa962f2569089777b65d87c4a3f18cdaa5949 -DIST firefox-88.0-oc.xpi 557515 BLAKE2B 1c7adcb5eadd12f8e22558e8a88b3f2ee828d7d486d8ee074a44bf94d9d39730b09454c22256669db2fcd400a3b023b2c75ae3acbd54a180d827598cc9776d45 SHA512 44750969967d56a1d74ef512c447478f6f5fe81b11976d24c22d7ed0aa2cb053ef7c54c20e42583331f7c52ef3dbfbdf88caba232290b2f9aa06213533774942 -DIST firefox-88.0-pa-IN.xpi 602776 BLAKE2B 38271d40eabd8be7b2da096cee58348507de1d4404dfa6483ea287244f9e5468a8076dff4c3702c12184ef49a22733f559a35fbbccfcef49ed6cc65a4a15bc70 SHA512 30285d3a6e5fbf557cab814b13411f3e76e75fa406be26f8d3e1c60732f93840eae5b77e891b4e1dcccf101375bee6ef06582767857f165bd5f1cd5a16ea81b6 -DIST firefox-88.0-pl.xpi 561331 BLAKE2B 6832222f38ace5577dca18d8039322d0b94d2755c4702b1786445a6fce35e949900f8ec4b2702bc5f767a495c0728497e2f1d601ee6924da18efd390db2ef7ca SHA512 1686a83e93fd666db8e19e12a60f0f0eec3bdc06af4f6f89c5b066deaf46fb36ea2f3ec8d12b57cf9886696c32506b00062c927b000939264b0fb2de6e77a740 -DIST firefox-88.0-pt-BR.xpi 546366 BLAKE2B 71af5bee40b520d79b34e4b0743f85ea9253ed54c790a0e609a0baa819f11711edc60346ab0d9da37083a0e725cbc2638c667eaae44e488776efd7ca79e507f8 SHA512 1d384f36881595e0ae59caf458dcedcb1343d45cf427a555c816abd74b91ee6626e27a21ecf90f40965480f649600f6cc2ee9e3dd1f6d500776cdc6798d946ec -DIST firefox-88.0-pt-PT.xpi 550505 BLAKE2B 0baba4e80eb860d0d157f4ab4980598dc708bc64b7d6a03f487e0cedeb49ac7026cb5083c67809fe34f332f3dd9af4dc9d6a874b5dfea88888642e389f2ecab6 SHA512 0f101489bb927f23e407f04ed7535bcc5bfd8a28508b0fea55458b029d0fda0b555527b293ba43db7ea73b83e5d2b781c4da6ec67df3c66eaa0be7c2501655fd -DIST firefox-88.0-rm.xpi 542259 BLAKE2B 7b82670f7455c7e17f94ed5bae6e6ad22486183548b56a72f41d3fa3610d352d25318b2924d287bdb6792b26c50fa555d4037f38d1e33d5cf963e260f368e03a SHA512 8b53368962a3fe8b5c0f220951c5b02fe1d01985a4ef5b65b04d80c99857fb5eb6106c48134dcbd151777a973092562db75cd39b2595d72bc941a61cf4b418cc -DIST firefox-88.0-ro.xpi 538636 BLAKE2B c4fcb2557ee381b6a8877c3e38476727a5937477d7125fd64fb446f45cb165b1210fc82a740547567a70af0a1e1024f7e8e06cba9469a8fd4509d464f3a48327 SHA512 4a3f27c3ce2c4d5a913db99fc8db7a44ff3105e6a3bc516f1f951594a5d0cc8db6d34e815bdf66e91bb7b36aa3cb73c16d7cd4500a5972cb102cefd94843b37a -DIST firefox-88.0-ru.xpi 631979 BLAKE2B a4814f39b22c8acc9bfdfecd3621b2777e894eef26a6f3ab7ad24c5c7c0982c1d5931a88b7e6d56c0c107514006afbb60bc5713493a0ac5b8609f0f89f5d07b7 SHA512 6bafe1f65f048a11fb9855f9fcdb1bb55f009354c5e952a3ced54c01b5219deda3caff1b981a86aa9a342f4b59013b754e551eacc56bb06c7466fd331b99310b -DIST firefox-88.0-si.xpi 496157 BLAKE2B f485ec34a1da7e47ce262dd627e4a5f56a837f0026aa4a6227e3cfa39f44ed51130bee9b292627c65df5f61be84b85bf533ae3e509d66f9d2070bf14c1cbdd9f SHA512 5177fbc86aacff0336667b2b0aff8e8dae0abd1e9c5d1a519d7eb542d04426348fb22f2af7458537f3133fb7ae72e66913376811ec71ae665f6b5f78f38a3ad3 -DIST firefox-88.0-sk.xpi 567060 BLAKE2B 730b4cdfd33f8161af9d2c60c5685f39fd1db2767b78f369ffe2729d789e7b98a7f649b1dd075334f6ad1023b799b7fde028817035243061b20bda86b4de9ae8 SHA512 a7f228af05d118d4b74463ca3a86dead7a27ab8237b046ea0a2e8685b9211778666eefd8569abaa8695231f9dc2046bdaf8a4825db28d0c65d833aae04439338 -DIST firefox-88.0-sl.xpi 537671 BLAKE2B 011d138c9c01a225268f92a42777214a7e9ba362889809cac16d68d78bb96527bebd945995f9ac266ad8440361ffe8cf9179a27a6204f95546f418f46c43bafb SHA512 a19ef73bb21dbe6dbe6ef6bf7418fec935d032e33a4c55eea65deb6b86e9054be9717649166febe084ab41a73dc226260a20c5e54fdcc10dd537742290cb9862 -DIST firefox-88.0-son.xpi 427895 BLAKE2B cb8fa15ec267b218466e92b48c75d09cbd0ca6eab170509bab6c7f90a1bf7e46d81412f175d16bc8ad8dc5cee539dd2843c53022e210e26c9f1906907a184bbf SHA512 7079277a912ca8b1d16f6013359c4efba8b75d93d80cbc8414f705d9294a3cff67cbf02e561d0a83d7be9ab560af9ed2470f28669c73c3708e5d3c5ad4201d65 -DIST firefox-88.0-sq.xpi 560805 BLAKE2B 215e43c54222d2aaa031ec33f7839ff3b7c0414d9c2047270c70d3de92d7e82788ea7c5dafc898cc02aa1d2390872ea8fea54437b1f817f68417ac646aa09b61 SHA512 88b6a15d0e481a853ae847794094c2d8770f7e586e25ce6a8bc1da53441532bd43fb925c0c8f356b44fecba6044190ce6ab11dec62ca98965854d2f32896a78a -DIST firefox-88.0-sr.xpi 589834 BLAKE2B 3dfc4313274890cbfc182bbe9cbd36ac859c2e6be68ca44eb056440ceb156cfdfb3c4c09574587672e50fb10c0a5d31feab341b94d6a0340f7ed3e4362530fec SHA512 76f05aeaa0e8c32fd10a501bb8e788212f774f6ae6f452d37ca90aa6a4a83941ffbe1f4bb78b607fa7a51aa7c36ce5063989a80e9059a4481cde76dd640939e5 -DIST firefox-88.0-sv-SE.xpi 544123 BLAKE2B 9a2c2ff3e266beca22c0fc3ca26c7c6598da85ac037a8926ba2aa7562a284c6d93b2b3112a91486e52ca2f3780ab269a67b0cd35cb8e6a3f64a7046cb3eb87a3 SHA512 52fd1e82514020e70a75258c8c411bdbe74895dcff0a1137c3fd633a38ecdf9b02d77b72c68fcfc874e8efeddcbaacb20feae8f03250f85e632b831fa7fecc14 -DIST firefox-88.0-szl.xpi 520480 BLAKE2B 0d83873746183c14436cbfd937d787af635791a1593b35628f41b114e06832fa3259cb7ce764d93c9f89682603519f92f77a12a72634cf202fd8e478eedd2a75 SHA512 3313eae9c3af2abbd538c6531f078eaf411467b37cae18cf1d9e227c55a012470e5f8cddbabe14ae6405e9d57283a480b85dc3028fd161965864e9fabbcbed68 -DIST firefox-88.0-ta.xpi 525366 BLAKE2B d5caf97152942e543490a50f1c3c2eb46d861f7c6c978f573b46dabca4782eb3f147f76c3e70ea7a214074f5195705e002ba8b5ff7600e994ca1c4072bffaa86 SHA512 bc154f03f9a3970d83fef03ca2e533564cd62671eddecc85971c00c1a56a0ba8d55d9c6c09b72e1623a613ce9b88a43683782cc06a3d86cb6c19aa7ba2a52119 -DIST firefox-88.0-te.xpi 566052 BLAKE2B d24a306e51e79f4e0c886a39f8b98b7b0fbc6410ec278c0f8d13e51f16edf39c40fb6d38422119c89c649a4f9cdee72207c009e3b40a67d29f6941e0e39ac228 SHA512 859b845458d6fcc9ffdaa2226ffe2529954e370120011956e9af2f071f9e087ac06eac917e5dde41994cd38830fd8e78f1915cac31775c2278b129adf9b77d36 -DIST firefox-88.0-th.xpi 612281 BLAKE2B 927e97079f94677b6770d0ff2d915ca517f96f3c13686661991127f73368cbb4e673e3a27be4931ff3f4555bf18d330fe104bb60a99c188e7a899cc022551cae SHA512 646d793225a50306f6a04529a69009338a43803f69831d8a4c24fb85162bec2ae2f9b59c4342912d2a758acb7addd2fa2f972401372f676a9d3d640abee56bf0 -DIST firefox-88.0-tl.xpi 525589 BLAKE2B a34758c244bd0048d1cf99bb11a193d8e76d29479ad68f6aa8b1f5dda2da4248970b5a029d5505297db8c8ceda60cf6bf3e4bd5b15126268bf0799e1c0d5271c SHA512 7092bf99c0c6a3387ab236782ef5c263ed617ee2b5536e8a4c3372722159ff78c8d1173ad1eb66c2216f2e35ce405a633456c26a55f92d90f18d61fb069dccb5 -DIST firefox-88.0-tr.xpi 555664 BLAKE2B 2505d2c4cf9ed2f039f227b21f28424615ef588436e31b0fd0185efeca6f79243be31aded5eceac8df622f1fbb7ec5b59cc1adc82401c929cfd82e473ed61df9 SHA512 4f1fe61a0f6dbd5fe36a2c502e92ced6c7ae94fde0cce972a9754d20bed5a02aed9d1a429f3ac773646e2c8c612b7d6f5f781e4f170a1c707ffebc5bff5ff598 -DIST firefox-88.0-trs.xpi 505353 BLAKE2B f19a4837efa05e1c24af9b7e2459c4ac2a74cfeabe58cf13b5091e9ab1a8599eb71f899b3d6e55f4544fa792effd72f4c1a2348b4885ae79bd4349011dcc2350 SHA512 a65ea8c944c6dd637873e96afd60c05e20036ea1b5e7a433a2b1a51af6c17470de675af7c1fc7cece365d796d8046c7d8fcd2fb906f84dc3031a3d7956a1845f -DIST firefox-88.0-uk.xpi 625682 BLAKE2B 41bb4aa38f07fdd2b9b31dd7971f30d40161c5841327bc8dbce9619b509d9f44c5389f39f078064649c63674c2e6d006705e5d03378bf91b33001a4f99d25f6b SHA512 973c1183df6af2ef0946c14d8b7a5683e8c5c5237a5399f8896119d6e1094995207ca387e16338569c606835bff5823fcf9c565b68a25de51e76889a5474cfbf -DIST firefox-88.0-ur.xpi 567603 BLAKE2B 57f36a3b59f8a7796b830ef041b5e947651f47887c8adca375fd8f227d1fd0cc027ab820aa821291b330543ae5634dcdc784b889019a5078096a3aa4ea817568 SHA512 b146791df9f52e43d7851b5bc8d6746e28840c7c4b530e9abc5e8f840c8f931638aa6531ff3fa2c83c640b8120787e7dabbca812191427be0080ba16404e3d29 -DIST firefox-88.0-uz.xpi 482023 BLAKE2B 6a080dda2a2a0b754d4d374523d0f1b819798666a82fc3fdcd7b9972bd7748e0cb2e24d9cd5fdc9522e1945b4aa0d653c83e71cad3d9bc9159c8bb556df18afc SHA512 0eef799cd7336704b528a61396aa918c73c298679a1a4303a390ac316b3a01246c9c891794c7e296d21f49197e71d3f5cf4be2592e4b36c7fa8b7073ad0c795a -DIST firefox-88.0-vi.xpi 577871 BLAKE2B 86e5d5ca3c23ab4b1b81b4538d6407cb008c6326610a8c77b6dee3b40408e83a87e51faa92d6c19f499624e61d9653f3471074ef378e79f60a30640bfe7b5385 SHA512 d5b32330d47417359c2e78f3216be5011906cfa93afc89715a40dafb656933acbdee844d1a95de9c15780570dbb835a4d5bc72ded88e49927ec2d3a30b8adb90 -DIST firefox-88.0-xh.xpi 430064 BLAKE2B 6b94c5c0b663b7b725ac8e0d3fb0cd06e72bfee17ad38f1d61c3d840e906a79a82932fa09b45b483e07344b159efd40a568e803e7a99fa49f948e63f06c48814 SHA512 0f59fff08fe3d727e3e53399df36678e5cb3530f7437d30b2dcfa370424bfd36fc14471c98d7cc2cbcd531de944f9caa5c3c1809ed8bb155947996cb3947078d -DIST firefox-88.0-zh-CN.xpi 579523 BLAKE2B 996493a9857012eed8e6674d55cfa7633be052b9e51f334834df239794f96afa9e60b2988c2a8155469fae2aac3fc31a4e8b016fd01ed9e07b67f355dd52fcb8 SHA512 16cb42109504e120621dae89db8973df7b6fa44ca1455917831d3cd1baa4666c87e1a5822513eb94632f216a73f775665b89ce5d3d1fa52408e74348491adb69 -DIST firefox-88.0-zh-TW.xpi 579885 BLAKE2B 0529b6b29dfdd592075c1a30c6333a6730d97ae569e0844399f2f7f1f06640a1b67592664b51d0aa99b66af6c3645ca5adbe05188e69a1aec3b239680163f874 SHA512 7cadd4dd3a16dea32bdc5fac540f7fb75107d8bcecbf015ccb688ef482d3a37e3a7f4454596dae1703092902cfa6e777b5ade53a6cb67ba9552f184c494a18b6 DIST firefox-88.0.1-ach.xpi 466413 BLAKE2B cd7a1259e6f3ea39f0cde6d6beb8786295940920e9af5c20fb806a6d80511d714a8074004e6d26dc7ac08ce0df34a63508f91dbb91c787ddfe7335af8219f218 SHA512 2913040f9c40c5baad160fdc3493422e90d355931cdc9e06eae054c59ea347489a54bc848fd635e59806f01bca63a82e9c609259c6122bcded790ed341a10baf DIST firefox-88.0.1-af.xpi 430683 BLAKE2B 835347e89d33da6c851c90d507ade8321b56da00a77f115804b9de9e6fdccfc867e103e1f97f42814809a41ddf8b5e76472080815a9f53f5b25f7f10631ca94c SHA512 d6a62347b7826fbe7305915c6e2b0ef1c984fc06ba614a17b341e18c0146061b647821252e2aaace33eb389a28bd59a3e98d2f7e902424aaa3c1c87075cbe479 DIST firefox-88.0.1-an.xpi 514150 BLAKE2B 40468628020cbf40810ebd521188f8eeef849ce3204330e47bdc43019493caba23d0fa5033e89ee66d9e6e01d0680491ff9a163a391b1db8460bd5aecb655edf SHA512 8b73c11f96de06608db99e0e81adf739bb6c8bd4b468c7d65da3ec64d8e983969f4cf13c1011572a53f847ba9a0e1bed9c73b3ca914ee3b486b5da3d19078946 @@ -396,10 +202,6 @@ DIST firefox-88.0.1-xh.xpi 430063 BLAKE2B d06a30f4e4e56bad91f5b689ebe134920f77e1 DIST firefox-88.0.1-zh-CN.xpi 579525 BLAKE2B c00b2a37cf63d48d6e5a3cc56989f48c8247a4df934d7c3607e989edf8af11a485cc7027abfb1e1b07679a5da5a66f189be47a5bcd77fcd486e3ba984903a531 SHA512 9ed9be70f776759f607fdf1f6f28b410763b9cdbec9520779aec8c48840e75742aa743396e5390df83975df4d99f4a62fd2d5375308648e3eaebe263f7bea991 DIST firefox-88.0.1-zh-TW.xpi 579882 BLAKE2B 4ed4a8014104df8c6c3e8664f758ec71912269f7932aa3e628df463f3753001ca0cf52a6150f3dbefa515f54acee9d1c45e2974088d97f13715d301a5601c366 SHA512 80b202347ad89aad7e8dbccab0120ec1774a60f081503fe24902106f9ef15bb2493640fa5f68ef17b60f8857d2fbaff9df458635df9da10ae55e4a4d3e893701 DIST firefox-88.0.1.source.tar.xz 376465316 BLAKE2B 9a5f5b77e927de9a2bd6a448d1037438e2481b252c28398ded19e01ca4f371595c089a215144b010d35a16437d4e54e2055c176bc47e63492b6bec87ca621f99 SHA512 e2d7fc950ba49f225c83ee1d799d6318fcf16c33a3b7f40b85c49d5b7865f7e632c703e5fd227a303b56e2565d0796283ebb12d7fd1a02781dcaa45e84cea934 -DIST firefox-88.0.source.tar.xz 373744508 BLAKE2B 2ce5a9e21f51d78e7dd576805d9b0d56308d5a7a99aaa4f7ef85746d0bd1b6b420b5b35adc850721ca89ffeeadd69bf3fe10de66ffe7b88f99a34fa18346b610 SHA512 f58f44f2f0d0f54eae5ab4fa439205feb8b9209b1bf2ea2ae0c9691e9e583bae2cbd4033edb5bdf4e37eda5b95fca688499bed000fe26ced8ff4bbc49347ce31 -EBUILD firefox-78.10.0.ebuild 33920 BLAKE2B 0b9be399bbc89cde2dead9a1f7d7ed02c1f77a3a70882fddfa1d4d58b077a80763e0cd3c97a1b84829d3d0006680adf63b5c324f630a5cd85f639faefd4cf1a8 SHA512 b6212532361669c36d2504a60d4f0a091c4c8d7f11aabe51ed4f5e4d2f63d439407f36a30704a4e404947d698c453b08d5ff7d0acf2f0d409f55ee1712c5aa33 -EBUILD firefox-78.10.1.ebuild 33920 BLAKE2B 0b9be399bbc89cde2dead9a1f7d7ed02c1f77a3a70882fddfa1d4d58b077a80763e0cd3c97a1b84829d3d0006680adf63b5c324f630a5cd85f639faefd4cf1a8 SHA512 b6212532361669c36d2504a60d4f0a091c4c8d7f11aabe51ed4f5e4d2f63d439407f36a30704a4e404947d698c453b08d5ff7d0acf2f0d409f55ee1712c5aa33 -EBUILD firefox-88.0-r1.ebuild 33639 BLAKE2B 7d95f1f2909907428be5d216c699e80210f3ac8085a342f1b65ad61732830b12e9391bfb3d5c4c1aa595e9071d000ed119f243ead7b10bd5cb22c1bdb94b1c56 SHA512 18f2e4a13ed60f769017ef4b34bc5a9908228041bb9374878951b4f5e1be1534a7c41596e8f01eb2c7e958ab7708d858a02d5b32b00be32e9e617b570353bd57 -EBUILD firefox-88.0.1.ebuild 33639 BLAKE2B 8149ba3eb94f87b770ba1f662797979965b5f411d0d1c7d0ec47127139e2d77a404ca976ee429a526694186f0e6405e6aef4b585cee4296945360d5565493bfa SHA512 efa067a9ef5ee65db225dd8e31b0f6fcc35f6f3294c2901b895c55125934c3ed005e1814e6c8d0eb3ca38a486fb757de6621b34afdb69475cd2b3176827c2072 -EBUILD firefox-88.0.ebuild 33657 BLAKE2B f3c1146baeca1de4126273b813c17b9362f06328316fdfd7b88ec28c5684ca288d63512c07c6b41c997f88ef048630beee14c3c4c0958563ab88a833b50a6523 SHA512 ccda49595592542b906a5f34bc8af2ca89c16ae7330baa65cc7398399484bfa661ab0e0193d082523ba9cb3413fbb23deeae437327f6d223d552c5c11fbc1b50 +EBUILD firefox-78.10.1.ebuild 34070 BLAKE2B 84c67b1ff7b6181cf5d85b1109c8f59e3041cbce8ea8089bc75c453efaa3d39be1dd76c3b23b201f1c3da647e409db9cbc8ecad819f2dbe067006a01a740e84f SHA512 bcc15eee13e4134661e143234cc123b0738369c88f6d21787322dc3813017ceb625d3f15430025038bd49451a7336fada27376efbf8114e00e08671ebefab6ca +EBUILD firefox-88.0.1.ebuild 33789 BLAKE2B 949bde21c78201f5cb27be64aa9f35013221f498f88f03cceeee86f29ca51628e146995620dee1fb1d05ffe2f2ba95b0f54f13cc60dcd26435e06847581bc9f9 SHA512 4907fd8b5f195a2e5424c459f865bad589437ff43d661057b56b07a1a51671108244010cd4135487622cfc4b8dcba1b47dd7bdbede3c20b9c3bb5ddb236dceb6 MISC metadata.xml 2150 BLAKE2B cd105f3b1d98b1fde124c6362c2e23563c03086a507bdc0eb0e4944f2050787f96967c4cba6f4605e4adcdb200d0c0fded6cc2bcda7ea7720d270e1fd6f33525 SHA512 a588a09ad3481522b44097b3c5e51211d5fc918a6733f3b6f1b1cd7994523894917fa737de944c235d45bfb9b57def205ce645ff1ac62ef7d6c3f3c51d387556 diff --git a/www-client/firefox/firefox-78.10.0.ebuild b/www-client/firefox/firefox-78.10.0.ebuild deleted file mode 100644 index 0668b5cf9276..000000000000 --- a/www-client/firefox/firefox-78.10.0.ebuild +++ /dev/null @@ -1,1175 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -FIREFOX_PATCHSET="firefox-78esr-patches-12.tar.xz" - -LLVM_MAX_SLOT=11 - -PYTHON_COMPAT=( python3_{7..9} ) -PYTHON_REQ_USE="ncurses,sqlite,ssl" - -WANT_AUTOCONF="2.1" - -VIRTUALX_REQUIRED="pgo" - -MOZ_ESR=yes - -MOZ_PV=${PV} -MOZ_PV_SUFFIX= -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then - MOZ_PV_SUFFIX=${BASH_REMATCH[1]} - - # Convert the ebuild version to the upstream Mozilla version - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI -fi - -if [[ -n ${MOZ_ESR} ]] ; then - # ESR releases have slightly different version numbers - MOZ_PV="${MOZ_PV}esr" -fi - -MOZ_PN="${PN%-bin}" -MOZ_P="${MOZ_PN}-${MOZ_PV}" -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}" -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}" - -inherit autotools check-reqs desktop flag-o-matic gnome2-utils llvm \ - multiprocessing pax-utils python-any-r1 toolchain-funcs \ - virtualx xdg - -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}" - -if [[ ${PV} == *_rc* ]] ; then - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}" -fi - -PATCH_URIS=( - https://dev.gentoo.org/~{axs,polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET} -) - -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz - ${PATCH_URIS[@]}" - -DESCRIPTION="Firefox Web Browser" -HOMEPAGE="https://www.mozilla.com/firefox" - -KEYWORDS="amd64 arm64 ~ppc64 x86" - -SLOT="0/esr$(ver_cut 1)" -LICENSE="MPL-2.0 GPL-2 LGPL-2.1" -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free geckodriver +gmp-autoupdate - hardened hwaccel jack lto +openh264 pgo pulseaudio screencast selinux - +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent - +system-libvpx +system-webp wayland wifi" - -REQUIRED_USE="debug? ( !system-av1 ) - screencast? ( wayland ) - wifi? ( dbus )" - -BDEPEND="${PYTHON_DEPS} - app-arch/unzip - app-arch/zip - >=dev-util/cbindgen-0.14.3 - >=net-libs/nodejs-10.21.0 - virtual/pkgconfig - >=virtual/rust-1.41.0 - || ( - ( - sys-devel/clang:11 - sys-devel/llvm:11 - clang? ( - =sys-devel/lld-11* - pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] ) - ) - ) - ( - sys-devel/clang:10 - sys-devel/llvm:10 - clang? ( - =sys-devel/lld-10* - pgo? ( =sys-libs/compiler-rt-sanitizers-10*[profile] ) - ) - ) - ) - lto? ( - !clang? ( sys-devel/binutils[gold] ) - ) - amd64? ( >=dev-lang/yasm-1.1 ) - x86? ( >=dev-lang/yasm-1.1 ) - !system-av1? ( - amd64? ( >=dev-lang/nasm-2.13 ) - x86? ( >=dev-lang/nasm-2.13 ) - )" - -CDEPEND=" - >=dev-libs/nss-3.53.1 - >=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 - >=x11-libs/pixman-0.19.2 - >=dev-libs/glib-2.26:2 - >=sys-libs/zlib-1.2.3 - >=dev-libs/libffi-3.0.10:= - media-video/ffmpeg - x11-libs/libX11 - x11-libs/libXcomposite - x11-libs/libXdamage - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libXrender - x11-libs/libXt - dbus? ( - sys-apps/dbus - dev-libs/dbus-glib - ) - screencast? ( media-video/pipewire:0/0.3 ) - system-av1? ( - >=media-libs/dav1d-0.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? ( - sys-apps/dbus - dev-libs/dbus-glib - 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} - pulseaudio? ( - || ( - media-sound/pulseaudio - >=media-sound/apulse-0.1.12-r4[sdk] - ) - ) - wayland? ( >=x11-libs/gtk+-3.11:3[wayland] ) - amd64? ( virtual/opengl ) - x86? ( virtual/opengl )" - -S="${WORKDIR}/${PN}-${PV%_*}" - -# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or -# overridden in the enviromnent (advanced hackers only) -if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then - MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm ) -fi - -llvm_check_deps() { - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then - 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 -b "=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 -b "=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 "Using LLVM slot ${LLVM_SLOT} to build" >&2 -} - -MOZ_LANGS=( - ach af an ar ast az be bg bn br bs ca-valencia ca cak cs cy - da de dsb el en-CA en-GB en-US eo es-AR es-CL es-ES es-MX et eu - fa ff fi fr fy-NL ga-IE gd gl gn gu-IN he hi-IN hr hsb hu hy-AM - ia id is it ja ka kab kk km kn ko lij lt lv mk mr ms my - nb-NO ne-NP nl nn-NO oc pa-IN pl pt-BR pt-PT rm ro ru - si sk sl son sq sr sv-SE ta te th tl tr trs uk ur uz vi - xh zh-CN zh-TW -) - -mozilla_set_globals() { - # https://bugs.gentoo.org/587334 - local MOZ_TOO_REGIONALIZED_FOR_L10N=( - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE - ) - - local lang xflag - for lang in "${MOZ_LANGS[@]}" ; do - # en and en_US are handled internally - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then - continue - fi - - # strip region subtag if $lang is in the list - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then - xflag=${lang%%-*} - else - xflag=${lang} - fi - - SRC_URI+=" l10n_${xflag/[_@]/-}? (" - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi" - SRC_URI+=" )" - IUSE+=" l10n_${xflag/[_@]/-}" - done -} -mozilla_set_globals - -moz_clear_vendor_checksums() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -ne 1 ]] ; then - die "${FUNCNAME} requires exact one argument" - fi - - einfo "Clearing cargo checksums for ${1} ..." - - sed -i \ - -e 's/\("files":{\)[^}]*/\1/' \ - "${S}"/third_party/rust/${1}/.cargo-checksum.json \ - || die -} - -moz_install_xpi() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local DESTDIR=${1} - shift - - insinto "${DESTDIR}" - - local emid xpi_file xpi_tmp_dir - for xpi_file in "${@}" ; do - emid= - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}") - - # Unpack XPI - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die - - # Determine extension ID - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf") - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf" - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json") - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json" - else - die "failed to determine extension id" - fi - - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..." - newins "${xpi_file}" "${emid}.xpi" - done -} - -mozconfig_add_options_ac() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_add_options_mk() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_use_enable() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_enable "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -mozconfig_use_with() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_with "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has usersandbox $FEATURES ; then - die "You must enable usersandbox as X server can not run as root!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6400M" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has userpriv ${FEATURES} ; then - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6400M" - fi - - check-reqs_pkg_setup - - llvm_pkg_setup - - if use clang && use lto ; then - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }') - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}") - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!" - - # temp fix for https://bugs.gentoo.org/768543 - # we can assume that rust 1.{49,50}.0 always uses llvm 11 - local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }') - [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}") - [[ -z ${version_rust} ]] && die "Failed to read version from rustc!" - - if ver_test "${version_rust}" -ge "1.49" && ver_test "${version_rust}" -le "1.50" ; then - local version_llvm_rust="11" - else - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }') - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}") - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!" - fi - - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}." - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:" - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version" - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version" - eerror " - Build ${CATEGORY}/${PN} without USE=lto" - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!" - fi - fi - - python-any-r1_pkg_setup - - # Avoid PGO profiling problems due to enviroment leakage - # These should *always* be cleaned up anyway - unset \ - DBUS_SESSION_BUS_ADDRESS \ - DISPLAY \ - ORBIT_SOCKETDIR \ - SESSION_MANAGER \ - XAUTHORITY \ - XDG_CACHE_HOME \ - XDG_SESSION_COOKIE - - # Build system is using /proc/self/oom_score_adj, bug #604394 - addpredict /proc/self/oom_score_adj - - if ! mountpoint -q /dev/shm ; then - # If /dev/shm is not available, configure is known to fail with - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py - ewarn "/dev/shm is not mounted -- expect build failures!" - fi - - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please - # get your own set of keys. - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc" - fi - - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ" - fi - - # Mozilla API keys (see https://location.services.mozilla.com/api) - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please - # get your own set of keys. - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005" - fi - - # Ensure we use C locale when building, bug #746215 - export LC_ALL=C - fi -} - -src_unpack() { - local _lp_dir="${WORKDIR}/language_packs" - local _src_file - - if [[ ! -d "${_lp_dir}" ]] ; then - mkdir "${_lp_dir}" || die - fi - - for _src_file in ${A} ; do - if [[ ${_src_file} == *.xpi ]]; then - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!" - else - unpack ${_src_file} - fi - done -} - -src_prepare() { - use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch - eapply "${WORKDIR}/firefox-patches" - - # Allow user to apply any additional patches without modifing ebuild - eapply_user - - # Make LTO respect MAKEOPTS - sed -i \ - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/build/moz.configure/lto-pgo.configure \ - || die "sed failed to set num_cores" - - # Make ICU respect MAKEOPTS - sed -i \ - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/intl/icu_sources_data.py \ - || die "sed failed to set num_cores" - - # sed-in toolchain prefix - sed -i \ - -e "s/objdump/${CHOST}-objdump/" \ - "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \ - || die "sed failed to set toolchain prefix" - - sed -i \ - -e 's/ccache_stats = None/return None/' \ - "${S}"/python/mozbuild/mozbuild/controller/building.py \ - || die "sed failed to disable ccache stats call" - - einfo "Removing pre-built binaries ..." - find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die - - # Clearing checksums where we have applied patches - moz_clear_vendor_checksums target-lexicon-0.9.0 - - # Create build dir - BUILD_DIR="${WORKDIR}/${PN}_build" - mkdir -p "${BUILD_DIR}" || die - - # Write API keys to disk - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die - - xdg_src_prepare -} - -src_configure() { - # Show flags set at the beginning - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - local have_switched_compiler= - if use clang && ! tc-is-clang ; then - # Force clang - einfo "Enforcing the use of clang due to USE=clang ..." - have_switched_compiler=yes - AR=llvm-ar - CC=${CHOST}-clang - CXX=${CHOST}-clang++ - NM=llvm-nm - RANLIB=llvm-ranlib - elif ! use clang && ! tc-is-gcc ; then - # Force gcc - have_switched_compiler=yes - einfo "Enforcing the use of gcc due to USE=-clang ..." - AR=gcc-ar - CC=${CHOST}-gcc - CXX=${CHOST}-g++ - NM=gcc-nm - RANLIB=gcc-ranlib - fi - - if [[ -n "${have_switched_compiler}" ]] ; then - # Because we switched active compiler we have to ensure - # that no unsupported flags are set - strip-unsupported-flags - fi - - # Ensure we use correct toolchain - export HOST_CC="$(tc-getBUILD_CC)" - export HOST_CXX="$(tc-getBUILD_CXX)" - tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG - - # Pass the correct toolchain paths through cbindgen - if tc-is-cross-compiler ; then - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}" - fi - - # Set MOZILLA_FIVE_HOME - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - - # python/mach/mach/mixin/process.py fails to detect SHELL - export SHELL="${EPREFIX}/bin/bash" - - # Set MOZCONFIG - export MOZCONFIG="${S}/.mozconfig" - - # Initialize MOZCONFIG - mozconfig_add_options_ac '' --enable-application=browser - - # Set Gentoo defaults - export MOZILLA_OFFICIAL=1 - - mozconfig_add_options_ac 'Gentoo default' \ - --allow-addon-sideload \ - --disable-cargo-incremental \ - --disable-crashreporter \ - --disable-install-strip \ - --disable-strip \ - --disable-updater \ - --enable-official-branding \ - --enable-release \ - --enable-system-ffi \ - --enable-system-pixman \ - --host="${CBUILD:-${CHOST}}" \ - --libdir="${EPREFIX}/usr/$(get_libdir)" \ - --prefix="${EPREFIX}/usr" \ - --target="${CHOST}" \ - --without-ccache \ - --with-intl-api \ - --with-libclang-path="$(llvm-config --libdir)" \ - --with-system-nspr \ - --with-system-nss \ - --with-system-png \ - --with-system-zlib \ - --with-toolchain-prefix="${CHOST}-" \ - --with-unsigned-addon-scopes=app,system \ - --x-includes="${SYSROOT}${EPREFIX}/usr/include" \ - --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)" - - # Set update channel - local update_channel=release - [[ -n ${MOZ_ESR} ]] && update_channel=esr - mozconfig_add_options_ac '' --update-channel=${update_channel} - - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then - mozconfig_add_options_ac '' --enable-rust-simd - fi - - if [[ -s "${S}/api-google.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-safebrowsing-api-keyfile="${S}/api-google.key" - else - einfo "Building without Google API key ..." - fi - - if [[ -s "${S}/api-location.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-location-service-api-keyfile="${S}/api-location.key" - else - einfo "Building without Location API key ..." - fi - - if [[ -s "${S}/api-mozilla.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-mozilla-api-keyfile="${S}/api-mozilla.key" - else - einfo "Building without Mozilla API key ..." - fi - - mozconfig_use_with system-av1 - mozconfig_use_with system-harfbuzz - mozconfig_use_with system-harfbuzz system-graphite2 - mozconfig_use_with system-icu - mozconfig_use_with system-jpeg - mozconfig_use_with system-libevent system-libevent "${SYSROOT}${EPREFIX}/usr" - mozconfig_use_with system-libvpx - mozconfig_use_with system-webp - - mozconfig_use_enable dbus - - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme - - mozconfig_use_enable geckodriver - - if use hardened ; then - mozconfig_add_options_ac "+hardened" --enable-hardening - append-ldflags "-Wl,-z,relro -Wl,-z,now" - fi - - mozconfig_use_enable jack - - mozconfig_use_enable pulseaudio - # force the deprecated alsa sound code if pulseaudio is disabled - if use kernel_linux && ! use pulseaudio ; then - mozconfig_add_options_ac '-pulseaudio' --enable-alsa - fi - - mozconfig_use_enable screencast pipewire - - mozconfig_use_enable wifi necko-wifi - - if use wayland ; then - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland - else - mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3 - fi - - if use lto ; then - if use clang ; then - # Upstream only supports lld when using clang - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld - - mozconfig_add_options_ac '+lto' --enable-lto=cross - else - # Linking only works when using ld.gold when LTO is enabled - mozconfig_add_options_ac "forcing ld=gold due to USE=lto" --enable-linker=gold - - # ThinLTO is currently broken, see bmo#1644409 - mozconfig_add_options_ac '+lto' --enable-lto=full - fi - - if use pgo ; then - mozconfig_add_options_ac '+pgo' MOZ_PGO=1 - - if use clang ; then - # Used in build/pgo/profileserver.py - export LLVM_PROFDATA="llvm-profdata" - fi - fi - else - # Avoid auto-magic on linker - if use clang ; then - # This is upstream's default - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld - elif tc-ld-is-gold ; then - mozconfig_add_options_ac "linker is set to gold" --enable-linker=gold - else - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd - fi - fi - - # LTO flag was handled via configure - filter-flags '-flto*' - - mozconfig_use_enable debug - if use debug ; then - mozconfig_add_options_ac '+debug' --disable-optimize - else - if is-flag '-g*' ; then - if use clang ; then - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*') - else - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols - fi - else - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols - fi - - if is-flag '-O0' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0 - elif is-flag '-O4' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4 - elif is-flag '-O3' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3 - elif is-flag '-O1' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1 - elif is-flag '-Os' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os - else - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2 - fi - fi - - # Debug flag was handled via configure - filter-flags '-g*' - - # Optimization flag was handled via configure - filter-flags '-O*' - - # Modifications to better support ARM, bug #553364 - if use cpu_flags_arm_neon ; then - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon - - if ! tc-is-clang ; then - # thumb options aren't supported when using clang, bug 666966 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \ - --with-thumb=yes \ - --with-thumb-interwork=no - fi - fi - - if [[ ${CHOST} == armv*h* ]] ; then - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard - - if ! use system-libvpx ; then - sed -i \ - -e "s|softfp|hard|" \ - "${S}"/media/libvpx/moz.build \ - || die - fi - fi - - if use clang ; then - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64') - local disable_elf_hack= - if use amd64 ; then - disable_elf_hack=yes - elif use x86 ; then - disable_elf_hack=yes - elif use arm ; then - disable_elf_hack=yes - fi - - if [[ -n ${disable_elf_hack} ]] ; then - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack - fi - elif tc-is-gcc ; then - if ver_test $(gcc-fullversion) -ge 10 ; then - einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..." - append-cxxflags -fno-tree-loop-vectorize - fi - fi - - # Additional ARCH support - case "${ARCH}" in - arm) - # Reduce the memory requirements for linking - if use clang ; then - # Nothing to do - :; - elif tc-ld-is-gold || use lto ; then - append-ldflags -Wl,--no-keep-memory - else - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads - fi - ;; - esac - - if ! use elibc_glibc ; then - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc - fi - - # Allow elfhack to work in combination with unstripped binaries - # when they would normally be larger than 2GiB. - append-ldflags "-Wl,--compress-debug-sections=zlib" - - # Make revdep-rebuild.sh happy; Also required for musl - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags - - # Pass $MAKEOPTS to build system - export MOZ_MAKE_FLAGS="${MAKEOPTS}" - - # Use system's Python environment - export MACH_USE_SYSTEM_PYTHON=1 - - # Disable notification when build system has finished - export MOZ_NOSPAM=1 - - # Build system requires xargs but is unable to find it - mozconfig_add_options_mk 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs" - - # Set build dir - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}" - - # Show flags we will use - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - # Handle EXTRA_CONF and show summary - local ac opt hash reason - - # Apply EXTRA_ECONF entries to $MOZCONFIG - if [[ -n ${EXTRA_ECONF} ]] ; then - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!} - for opt in "${ac[@]}"; do - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--} - done - fi - - echo - echo "==========================================================" - echo "Building ${PF} with the following configuration" - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do - [[ -z ${hash} || ${hash} == \# ]] \ - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}" - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}" - done - echo "==========================================================" - echo - - ./mach configure || die -} - -src_compile() { - local virtx_cmd= - - if use pgo ; then - virtx_cmd=virtx - - # Reset and cleanup environment variables used by GNOME/XDG - gnome2_environment_reset - - addpredict /root - fi - - local -x GDK_BACKEND=x11 - - ${virtx_cmd} ./mach build --verbose \ - || die -} - -src_install() { - # xpcshell is getting called during install - pax-mark m \ - "${BUILD_DIR}"/dist/bin/xpcshell \ - "${BUILD_DIR}"/dist/bin/${PN} \ - "${BUILD_DIR}"/dist/bin/plugin-container - - DESTDIR="${D}" ./mach install || die - - # Upstream cannot ship symlink but we can (bmo#658850) - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin - - # Don't install llvm-symbolizer from sys-devel/llvm package - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die - fi - - # Install policy (currently only used to disable application updates) - insinto "${MOZILLA_FIVE_HOME}/distribution" - newins "${FILESDIR}"/distribution.ini distribution.ini - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json - - # Install system-wide preferences - local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences" - insinto "${PREFS_DIR}" - newins "${FILESDIR}"/gentoo-default-prefs.js all-gentoo.js - - local GENTOO_PREFS="${ED}${PREFS_DIR}/all-gentoo.js" - - # Set dictionary path to use system hunspell - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref" - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell"); - EOF - - # Force hwaccel prefs if USE=hwaccel is enabled - if use hwaccel ; then - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \ - >>"${GENTOO_PREFS}" \ - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js" - fi - - if ! use gmp-autoupdate ; then - local plugin - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do - einfo "Disabling auto-update for ${plugin} plugin ..." - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin" - pref("media.${plugin}.autoupdate", false); - EOF - done - fi - - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it - if use system-harfbuzz ; then - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref" - sticky_pref("gfx.font_rendering.graphite.enabled", true); - EOF - fi - - # Install language packs - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') ) - if [[ -n "${langpacks}" ]] ; then - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}" - fi - - # Install geckodriver - if use geckodriver ; then - einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..." - pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver - exeinto "${MOZILLA_FIVE_HOME}" - doexe "${BUILD_DIR}"/dist/bin/geckodriver - - dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver - fi - - # Install icons - local icon_srcdir="${S}/browser/branding/official" - local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg" - - insinto /usr/share/icons/hicolor/symbolic/apps - newins "${icon_symbolic_file}" ${PN}-symbolic.svg - - local icon size - for icon in "${icon_srcdir}"/default*.png ; do - size=${icon%.png} - size=${size##*/default} - - if [[ ${size} -eq 48 ]] ; then - newicon "${icon}" ${PN}.png - fi - - newicon -s ${size} "${icon}" ${PN}.png - done - - # Install menus - local wrapper_wayland="${PN}-wayland.sh" - local wrapper_x11="${PN}-x11.sh" - local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop" - local display_protocols="auto X11" - local icon="${PN}" - local name="Mozilla ${MOZ_PN^}" - local use_wayland="false" - - if use wayland ; then - display_protocols+=" Wayland" - use_wayland="true" - fi - - local app_name desktop_filename display_protocol exec_command - for display_protocol in ${display_protocols} ; do - app_name="${name} on ${display_protocol}" - desktop_filename="${PN}-${display_protocol,,}.desktop" - - case ${display_protocol} in - Wayland) - exec_command="${PN}-wayland --name ${PN}-wayland" - newbin "${FILESDIR}/${wrapper_wayland}" ${PN}-wayland - ;; - X11) - if ! use wayland ; then - # Exit loop here because there's no choice so - # we don't need wrapper/.desktop file for X11. - continue - fi - - exec_command="${PN}-x11 --name ${PN}-x11" - newbin "${FILESDIR}/${wrapper_x11}" ${PN}-x11 - ;; - *) - app_name="${name}" - desktop_filename="${PN}.desktop" - exec_command="${PN}" - ;; - esac - - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die - - sed -i \ - -e "s:@NAME@:${app_name}:" \ - -e "s:@EXEC@:${exec_command}:" \ - -e "s:@ICON@:${icon}:" \ - "${WORKDIR}/${PN}.desktop-template" \ - || die - - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}" - - rm "${WORKDIR}/${PN}.desktop-template" || die - done - - # Install generic wrapper script - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}" - newbin "${FILESDIR}/${PN}.sh" ${PN} - - # Update wrapper - local wrapper - for wrapper in \ - "${ED}/usr/bin/${PN}" \ - "${ED}/usr/bin/${PN}-x11" \ - "${ED}/usr/bin/${PN}-wayland" \ - ; do - [[ ! -f "${wrapper}" ]] && continue - - sed -i \ - -e "s:@PREFIX@:${EPREFIX}/usr:" \ - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \ - -e "s:@APULSELIB_DIR@:${apulselib}:" \ - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \ - "${wrapper}" \ - || die - done -} - -pkg_preinst() { - xdg_pkg_preinst - - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse - # does not need to be forced into the LD_LIBRARY_PATH - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then - einfo "APULSE found; Generating library symlinks for sound support ..." - local lib - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do - # A quickpkg rolled by hand will grab symlinks as part of the package, - # so we need to avoid creating them if they already exist. - if [[ ! -L ${lib##*/} ]] ; then - ln -s "${lib}" ${lib##*/} || die - fi - done - popd &>/dev/null || die - fi -} - -pkg_postinst() { - xdg_pkg_postinst - - if ! use gmp-autoupdate ; then - elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or" - elog "installing into new profiles:" - local plugin - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do - elog "\t ${plugin}" - done - elog - fi - - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then - elog "Apulse was detected at merge time on this system and so it will always be" - elog "used for sound. If you wish to use pulseaudio instead please unmerge" - elog "media-sound/apulse." - elog - fi - - local show_doh_information show_normandy_information - - if [[ -z "${REPLACING_VERSIONS}" ]] ; then - # New install; Tell user that DoH is disabled by default - show_doh_information=yes - show_normandy_information=yes - else - local replacing_version - for replacing_version in ${REPLACING_VERSIONS} ; do - if ver_test "${replacing_version}" -lt 70 ; then - # Tell user only once about our DoH default - show_doh_information=yes - fi - - if ver_test "${replacing_version}" -lt 74.0-r2 ; then - # Tell user only once about our Normandy default - show_normandy_information=yes - fi - done - fi - - if [[ -n "${show_doh_information}" ]] ; then - elog - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):" - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all" - elog "DNS traffic to Cloudflare by default is not a good idea and applications" - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5" - elog "(\"Off by choice\") by default." - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences." - fi - - # bug 713782 - if [[ -n "${show_normandy_information}" ]] ; then - elog - elog "Upstream operates a service named Normandy which allows Mozilla to" - elog "push changes for default settings or even install new add-ons remotely." - elog "While this can be useful to address problems like 'Armagadd-on 2.0' or" - elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security" - elog "concerns prevail, which is why we have switched off the use of this" - elog "service by default." - elog - elog "To re-enable this service set" - elog - elog " app.normandy.enabled=true" - elog - elog "in about:config." - fi -} diff --git a/www-client/firefox/firefox-78.10.1.ebuild b/www-client/firefox/firefox-78.10.1.ebuild index 0668b5cf9276..c2e05bd89ee6 100644 --- a/www-client/firefox/firefox-78.10.1.ebuild +++ b/www-client/firefox/firefox-78.10.1.ebuild @@ -5,7 +5,7 @@ EAPI="7" FIREFOX_PATCHSET="firefox-78esr-patches-12.tar.xz" -LLVM_MAX_SLOT=11 +LLVM_MAX_SLOT=12 PYTHON_COMPAT=( python3_{7..9} ) PYTHON_REQ_USE="ncurses,sqlite,ssl" @@ -79,6 +79,14 @@ BDEPEND="${PYTHON_DEPS} >=virtual/rust-1.41.0 || ( ( + sys-devel/clang:12 + sys-devel/llvm:12 + clang? ( + =sys-devel/lld-12* + pgo? ( =sys-libs/compiler-rt-sanitizers-12*[profile] ) + ) + ) + ( sys-devel/clang:11 sys-devel/llvm:11 clang? ( diff --git a/www-client/firefox/firefox-88.0-r1.ebuild b/www-client/firefox/firefox-88.0-r1.ebuild deleted file mode 100644 index d8805e8f672a..000000000000 --- a/www-client/firefox/firefox-88.0-r1.ebuild +++ /dev/null @@ -1,1164 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -FIREFOX_PATCHSET="firefox-88-patches-02.tar.xz" - -LLVM_MAX_SLOT=11 - -PYTHON_COMPAT=( python3_{7..9} ) -PYTHON_REQ_USE="ncurses,sqlite,ssl" - -WANT_AUTOCONF="2.1" - -VIRTUALX_REQUIRED="pgo" - -MOZ_ESR= - -MOZ_PV=${PV} -MOZ_PV_SUFFIX= -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then - MOZ_PV_SUFFIX=${BASH_REMATCH[1]} - - # Convert the ebuild version to the upstream Mozilla version - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI -fi - -if [[ -n ${MOZ_ESR} ]] ; then - # ESR releases have slightly different version numbers - MOZ_PV="${MOZ_PV}esr" -fi - -MOZ_PN="${PN%-bin}" -MOZ_P="${MOZ_PN}-${MOZ_PV}" -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}" -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}" - -inherit autotools check-reqs desktop flag-o-matic gnome2-utils llvm \ - multiprocessing pax-utils python-any-r1 toolchain-funcs \ - virtualx xdg - -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}" - -if [[ ${PV} == *_rc* ]] ; then - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}" -fi - -PATCH_URIS=( - https://dev.gentoo.org/~{axs,polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET} -) - -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz - ${PATCH_URIS[@]}" - -DESCRIPTION="Firefox Web Browser" -HOMEPAGE="https://www.mozilla.com/firefox" - -KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" - -SLOT="0/$(ver_cut 1)" -LICENSE="MPL-2.0 GPL-2 LGPL-2.1" -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free geckodriver +gmp-autoupdate - hardened hwaccel jack lto +openh264 pgo pulseaudio screencast sndio selinux - +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent - +system-libvpx +system-webp wayland wifi" - -REQUIRED_USE="debug? ( !system-av1 ) - screencast? ( wayland )" - -BDEPEND="${PYTHON_DEPS} - app-arch/unzip - app-arch/zip - >=dev-util/cbindgen-0.16.0 - >=net-libs/nodejs-10.23.1 - virtual/pkgconfig - >=virtual/rust-1.47.0 - || ( - ( - sys-devel/clang:11 - sys-devel/llvm:11 - clang? ( - =sys-devel/lld-11* - pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] ) - ) - ) - ( - sys-devel/clang:10 - sys-devel/llvm:10 - clang? ( - =sys-devel/lld-10* - pgo? ( =sys-libs/compiler-rt-sanitizers-10*[profile] ) - ) - ) - ) - amd64? ( >=dev-lang/nasm-2.13 ) - x86? ( >=dev-lang/nasm-2.13 )" - -CDEPEND=" - >=dev-libs/nss-3.63 - >=dev-libs/nspr-4.29 - 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 - >=x11-libs/pixman-0.19.2 - >=dev-libs/glib-2.26:2 - >=sys-libs/zlib-1.2.3 - >=dev-libs/libffi-3.0.10:= - media-video/ffmpeg - x11-libs/libX11 - x11-libs/libXcomposite - x11-libs/libXdamage - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libXrender - x11-libs/libXt - dbus? ( - sys-apps/dbus - dev-libs/dbus-glib - ) - screencast? ( media-video/pipewire:0/0.3 ) - system-av1? ( - >=media-libs/dav1d-0.8.1:= - >=media-libs/libaom-1.0.0:= - ) - system-harfbuzz? ( - >=media-libs/harfbuzz-2.7.4:0= - >=media-gfx/graphite2-1.3.13 - ) - system-icu? ( >=dev-libs/icu-67.1:= ) - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 ) - system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] ) - system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] ) - system-webp? ( >=media-libs/libwebp-1.1.0:0= ) - wifi? ( - kernel_linux? ( - sys-apps/dbus - dev-libs/dbus-glib - net-misc/networkmanager - ) - ) - jack? ( virtual/jack ) - selinux? ( sec-policy/selinux-mozilla ) - sndio? ( media-sound/sndio )" - -RDEPEND="${CDEPEND} - jack? ( virtual/jack ) - openh264? ( media-libs/openh264:*[plugin] ) - pulseaudio? ( - || ( - media-sound/pulseaudio - >=media-sound/apulse-0.1.12-r4 - ) - ) - selinux? ( sec-policy/selinux-mozilla )" - -DEPEND="${CDEPEND} - pulseaudio? ( - || ( - media-sound/pulseaudio - >=media-sound/apulse-0.1.12-r4[sdk] - ) - ) - wayland? ( >=x11-libs/gtk+-3.11:3[wayland] ) - amd64? ( virtual/opengl ) - x86? ( virtual/opengl )" - -S="${WORKDIR}/${PN}-${PV%_*}" - -# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or -# overridden in the enviromnent (advanced hackers only) -if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then - MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm ) -fi - -llvm_check_deps() { - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then - 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 -b "=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 -b "=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 "Using LLVM slot ${LLVM_SLOT} to build" >&2 -} - -MOZ_LANGS=( - ach af an ar ast az be bg bn br bs ca-valencia ca cak cs cy - da de dsb el en-CA en-GB en-US eo es-AR es-CL es-ES es-MX et eu - fa ff fi fr fy-NL ga-IE gd gl gn gu-IN he hi-IN hr hsb hu hy-AM - ia id is it ja ka kab kk km kn ko lij lt lv mk mr ms my - nb-NO ne-NP nl nn-NO oc pa-IN pl pt-BR pt-PT rm ro ru - si sk sl son sq sr sv-SE szl ta te th tl tr trs uk ur uz vi - xh zh-CN zh-TW -) - -mozilla_set_globals() { - # https://bugs.gentoo.org/587334 - local MOZ_TOO_REGIONALIZED_FOR_L10N=( - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE - ) - - local lang xflag - for lang in "${MOZ_LANGS[@]}" ; do - # en and en_US are handled internally - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then - continue - fi - - # strip region subtag if $lang is in the list - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then - xflag=${lang%%-*} - else - xflag=${lang} - fi - - SRC_URI+=" l10n_${xflag/[_@]/-}? (" - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi" - SRC_URI+=" )" - IUSE+=" l10n_${xflag/[_@]/-}" - done -} -mozilla_set_globals - -moz_clear_vendor_checksums() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -ne 1 ]] ; then - die "${FUNCNAME} requires exact one argument" - fi - - einfo "Clearing cargo checksums for ${1} ..." - - sed -i \ - -e 's/\("files":{\)[^}]*/\1/' \ - "${S}"/third_party/rust/${1}/.cargo-checksum.json \ - || die -} - -moz_install_xpi() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local DESTDIR=${1} - shift - - insinto "${DESTDIR}" - - local emid xpi_file xpi_tmp_dir - for xpi_file in "${@}" ; do - emid= - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}") - - # Unpack XPI - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die - - # Determine extension ID - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf") - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf" - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json") - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json" - else - die "failed to determine extension id" - fi - - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..." - newins "${xpi_file}" "${emid}.xpi" - done -} - -mozconfig_add_options_ac() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_add_options_mk() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_use_enable() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_enable "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -mozconfig_use_with() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_with "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has usersandbox $FEATURES ; then - die "You must enable usersandbox as X server can not run as root!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6400M" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has userpriv ${FEATURES} ; then - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6400M" - fi - - check-reqs_pkg_setup - - llvm_pkg_setup - - if use clang && use lto ; then - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }') - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}") - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!" - - # temp fix for https://bugs.gentoo.org/768543 - # we can assume that rust 1.{49,50}.0 always uses llvm 11 - local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }') - [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}") - [[ -z ${version_rust} ]] && die "Failed to read version from rustc!" - - if ver_test "${version_rust}" -ge "1.49" && ver_test "${version_rust}" -le "1.50" ; then - local version_llvm_rust="11" - else - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }') - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}") - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!" - fi - - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}." - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:" - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version" - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version" - eerror " - Build ${CATEGORY}/${PN} without USE=lto" - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!" - fi - fi - - python-any-r1_pkg_setup - - # Avoid PGO profiling problems due to enviroment leakage - # These should *always* be cleaned up anyway - unset \ - DBUS_SESSION_BUS_ADDRESS \ - DISPLAY \ - ORBIT_SOCKETDIR \ - SESSION_MANAGER \ - XAUTHORITY \ - XDG_CACHE_HOME \ - XDG_SESSION_COOKIE - - # Build system is using /proc/self/oom_score_adj, bug #604394 - addpredict /proc/self/oom_score_adj - - if ! mountpoint -q /dev/shm ; then - # If /dev/shm is not available, configure is known to fail with - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py - ewarn "/dev/shm is not mounted -- expect build failures!" - fi - - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please - # get your own set of keys. - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc" - fi - - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ" - fi - - # Mozilla API keys (see https://location.services.mozilla.com/api) - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please - # get your own set of keys. - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005" - fi - - # Ensure we use C locale when building, bug #746215 - export LC_ALL=C - fi -} - -src_unpack() { - local _lp_dir="${WORKDIR}/language_packs" - local _src_file - - if [[ ! -d "${_lp_dir}" ]] ; then - mkdir "${_lp_dir}" || die - fi - - for _src_file in ${A} ; do - if [[ ${_src_file} == *.xpi ]]; then - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!" - else - unpack ${_src_file} - fi - done -} - -src_prepare() { - use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch - eapply "${WORKDIR}/firefox-patches" - - # Allow user to apply any additional patches without modifing ebuild - eapply_user - - # Make LTO respect MAKEOPTS - sed -i \ - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/build/moz.configure/lto-pgo.configure \ - || die "sed failed to set num_cores" - - # Make ICU respect MAKEOPTS - sed -i \ - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/intl/icu_sources_data.py \ - || die "sed failed to set num_cores" - - # sed-in toolchain prefix - sed -i \ - -e "s/objdump/${CHOST}-objdump/" \ - "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \ - || die "sed failed to set toolchain prefix" - - sed -i \ - -e 's/ccache_stats = None/return None/' \ - "${S}"/python/mozbuild/mozbuild/controller/building.py \ - || die "sed failed to disable ccache stats call" - - einfo "Removing pre-built binaries ..." - find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die - - # Clearing checksums where we have applied patches - moz_clear_vendor_checksums target-lexicon-0.9.0 - - # Create build dir - BUILD_DIR="${WORKDIR}/${PN}_build" - mkdir -p "${BUILD_DIR}" || die - - # Write API keys to disk - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die - - xdg_src_prepare -} - -src_configure() { - # Show flags set at the beginning - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - local have_switched_compiler= - if use clang && ! tc-is-clang ; then - # Force clang - einfo "Enforcing the use of clang due to USE=clang ..." - have_switched_compiler=yes - AR=llvm-ar - CC=${CHOST}-clang - CXX=${CHOST}-clang++ - NM=llvm-nm - RANLIB=llvm-ranlib - elif ! use clang && ! tc-is-gcc ; then - # Force gcc - have_switched_compiler=yes - einfo "Enforcing the use of gcc due to USE=-clang ..." - AR=gcc-ar - CC=${CHOST}-gcc - CXX=${CHOST}-g++ - NM=gcc-nm - RANLIB=gcc-ranlib - fi - - if [[ -n "${have_switched_compiler}" ]] ; then - # Because we switched active compiler we have to ensure - # that no unsupported flags are set - strip-unsupported-flags - fi - - # Ensure we use correct toolchain - export HOST_CC="$(tc-getBUILD_CC)" - export HOST_CXX="$(tc-getBUILD_CXX)" - tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG - - # Pass the correct toolchain paths through cbindgen - if tc-is-cross-compiler ; then - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}" - fi - - # Set MOZILLA_FIVE_HOME - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - - # python/mach/mach/mixin/process.py fails to detect SHELL - export SHELL="${EPREFIX}/bin/bash" - - # Set MOZCONFIG - export MOZCONFIG="${S}/.mozconfig" - - # Initialize MOZCONFIG - mozconfig_add_options_ac '' --enable-application=browser - - # Set Gentoo defaults - export MOZILLA_OFFICIAL=1 - - mozconfig_add_options_ac 'Gentoo default' \ - --allow-addon-sideload \ - --disable-cargo-incremental \ - --disable-crashreporter \ - --disable-install-strip \ - --disable-strip \ - --disable-updater \ - --enable-official-branding \ - --enable-release \ - --enable-system-ffi \ - --enable-system-pixman \ - --host="${CBUILD:-${CHOST}}" \ - --libdir="${EPREFIX}/usr/$(get_libdir)" \ - --prefix="${EPREFIX}/usr" \ - --target="${CHOST}" \ - --without-ccache \ - --with-intl-api \ - --with-libclang-path="$(llvm-config --libdir)" \ - --with-system-nspr \ - --with-system-nss \ - --with-system-png \ - --with-system-zlib \ - --with-toolchain-prefix="${CHOST}-" \ - --with-unsigned-addon-scopes=app,system \ - --x-includes="${SYSROOT}${EPREFIX}/usr/include" \ - --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)" - - # Set update channel - local update_channel=release - [[ -n ${MOZ_ESR} ]] && update_channel=esr - mozconfig_add_options_ac '' --update-channel=${update_channel} - - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then - mozconfig_add_options_ac '' --enable-rust-simd - fi - - if [[ -s "${S}/api-google.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-safebrowsing-api-keyfile="${S}/api-google.key" - else - einfo "Building without Google API key ..." - fi - - if [[ -s "${S}/api-location.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-location-service-api-keyfile="${S}/api-location.key" - else - einfo "Building without Location API key ..." - fi - - if [[ -s "${S}/api-mozilla.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-mozilla-api-keyfile="${S}/api-mozilla.key" - else - einfo "Building without Mozilla API key ..." - fi - - mozconfig_use_with system-av1 - mozconfig_use_with system-harfbuzz - mozconfig_use_with system-harfbuzz system-graphite2 - mozconfig_use_with system-icu - mozconfig_use_with system-jpeg - mozconfig_use_with system-libevent system-libevent "${SYSROOT}${EPREFIX}/usr" - mozconfig_use_with system-libvpx - mozconfig_use_with system-webp - - mozconfig_use_enable dbus - - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme - - mozconfig_use_enable geckodriver - - if use hardened ; then - mozconfig_add_options_ac "+hardened" --enable-hardening - append-ldflags "-Wl,-z,relro -Wl,-z,now" - fi - - mozconfig_use_enable jack - - mozconfig_use_enable pulseaudio - # force the deprecated alsa sound code if pulseaudio is disabled - if use kernel_linux && ! use pulseaudio ; then - mozconfig_add_options_ac '-pulseaudio' --enable-alsa - fi - - mozconfig_use_enable sndio - - mozconfig_use_enable wifi necko-wifi - - if use wayland ; then - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland - else - mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3 - fi - - if use lto ; then - if use clang ; then - # Upstream only supports lld when using clang - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld - - mozconfig_add_options_ac '+lto' --enable-lto=cross - else - # ThinLTO is currently broken, see bmo#1644409 - mozconfig_add_options_ac '+lto' --enable-lto=full - fi - - if use pgo ; then - mozconfig_add_options_ac '+pgo' MOZ_PGO=1 - - if use clang ; then - # Used in build/pgo/profileserver.py - export LLVM_PROFDATA="llvm-profdata" - fi - fi - else - # Avoid auto-magic on linker - if use clang ; then - # This is upstream's default - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld - else - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd - fi - fi - - # LTO flag was handled via configure - filter-flags '-flto*' - - mozconfig_use_enable debug - if use debug ; then - mozconfig_add_options_ac '+debug' --disable-optimize - else - if is-flag '-g*' ; then - if use clang ; then - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*') - else - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols - fi - else - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols - fi - - if is-flag '-O0' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0 - elif is-flag '-O4' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4 - elif is-flag '-O3' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3 - elif is-flag '-O1' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1 - elif is-flag '-Os' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os - else - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2 - fi - fi - - # Debug flag was handled via configure - filter-flags '-g*' - - # Optimization flag was handled via configure - filter-flags '-O*' - - # Modifications to better support ARM, bug #553364 - if use cpu_flags_arm_neon ; then - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon - - if ! tc-is-clang ; then - # thumb options aren't supported when using clang, bug 666966 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \ - --with-thumb=yes \ - --with-thumb-interwork=no - fi - fi - - if [[ ${CHOST} == armv*h* ]] ; then - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard - - if ! use system-libvpx ; then - sed -i \ - -e "s|softfp|hard|" \ - "${S}"/media/libvpx/moz.build \ - || die - fi - fi - - if use clang ; then - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64') - local disable_elf_hack= - if use amd64 ; then - disable_elf_hack=yes - elif use x86 ; then - disable_elf_hack=yes - elif use arm ; then - disable_elf_hack=yes - fi - - if [[ -n ${disable_elf_hack} ]] ; then - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack - fi - elif tc-is-gcc ; then - if ver_test $(gcc-fullversion) -ge 10 ; then - einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..." - append-cxxflags -fno-tree-loop-vectorize - fi - fi - - # Additional ARCH support - case "${ARCH}" in - arm) - # Reduce the memory requirements for linking - if use clang ; then - # Nothing to do - :; - elif tc-ld-is-gold || use lto ; then - append-ldflags -Wl,--no-keep-memory - else - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads - fi - ;; - esac - - if ! use elibc_glibc ; then - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc - fi - - # Allow elfhack to work in combination with unstripped binaries - # when they would normally be larger than 2GiB. - append-ldflags "-Wl,--compress-debug-sections=zlib" - - # Make revdep-rebuild.sh happy; Also required for musl - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags - - # Pass $MAKEOPTS to build system - export MOZ_MAKE_FLAGS="${MAKEOPTS}" - - # Use system's Python environment - export MACH_USE_SYSTEM_PYTHON=1 - - # Disable notification when build system has finished - export MOZ_NOSPAM=1 - - # Portage sets XARGS environment variable to "xargs -r" by default which - # breaks build system's check_prog() function which doesn't support arguments - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs" - - # Set build dir - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}" - - # Show flags we will use - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - # Handle EXTRA_CONF and show summary - local ac opt hash reason - - # Apply EXTRA_ECONF entries to $MOZCONFIG - if [[ -n ${EXTRA_ECONF} ]] ; then - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!} - for opt in "${ac[@]}"; do - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--} - done - fi - - echo - echo "==========================================================" - echo "Building ${PF} with the following configuration" - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do - [[ -z ${hash} || ${hash} == \# ]] \ - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}" - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}" - done - echo "==========================================================" - echo - - ./mach configure || die -} - -src_compile() { - local virtx_cmd= - - if use pgo ; then - virtx_cmd=virtx - - # Reset and cleanup environment variables used by GNOME/XDG - gnome2_environment_reset - - addpredict /root - fi - - local -x GDK_BACKEND=x11 - - ${virtx_cmd} ./mach build --verbose \ - || die -} - -src_install() { - # xpcshell is getting called during install - pax-mark m \ - "${BUILD_DIR}"/dist/bin/xpcshell \ - "${BUILD_DIR}"/dist/bin/${PN} \ - "${BUILD_DIR}"/dist/bin/plugin-container - - DESTDIR="${D}" ./mach install || die - - # Upstream cannot ship symlink but we can (bmo#658850) - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin - - # Don't install llvm-symbolizer from sys-devel/llvm package - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die - fi - - # Install policy (currently only used to disable application updates) - insinto "${MOZILLA_FIVE_HOME}/distribution" - newins "${FILESDIR}"/distribution.ini distribution.ini - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json - - # Install system-wide preferences - local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences" - insinto "${PREFS_DIR}" - newins "${FILESDIR}"/gentoo-default-prefs.js all-gentoo.js - - local GENTOO_PREFS="${ED}${PREFS_DIR}/all-gentoo.js" - - # Set dictionary path to use system hunspell - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref" - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell"); - EOF - - # Force hwaccel prefs if USE=hwaccel is enabled - if use hwaccel ; then - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \ - >>"${GENTOO_PREFS}" \ - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js" - fi - - if ! use gmp-autoupdate ; then - local plugin - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do - einfo "Disabling auto-update for ${plugin} plugin ..." - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin" - pref("media.${plugin}.autoupdate", false); - EOF - done - fi - - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it - if use system-harfbuzz ; then - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref" - sticky_pref("gfx.font_rendering.graphite.enabled", true); - EOF - fi - - # Install language packs - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') ) - if [[ -n "${langpacks}" ]] ; then - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}" - fi - - # Install geckodriver - if use geckodriver ; then - einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..." - pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver - exeinto "${MOZILLA_FIVE_HOME}" - doexe "${BUILD_DIR}"/dist/bin/geckodriver - - dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver - fi - - # Install icons - local icon_srcdir="${S}/browser/branding/official" - local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg" - - insinto /usr/share/icons/hicolor/symbolic/apps - newins "${icon_symbolic_file}" ${PN}-symbolic.svg - - local icon size - for icon in "${icon_srcdir}"/default*.png ; do - size=${icon%.png} - size=${size##*/default} - - if [[ ${size} -eq 48 ]] ; then - newicon "${icon}" ${PN}.png - fi - - newicon -s ${size} "${icon}" ${PN}.png - done - - # Install menus - local wrapper_wayland="${PN}-wayland.sh" - local wrapper_x11="${PN}-x11.sh" - local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop" - local display_protocols="auto X11" - local icon="${PN}" - local name="Mozilla ${MOZ_PN^}" - local use_wayland="false" - - if use wayland ; then - display_protocols+=" Wayland" - use_wayland="true" - fi - - local app_name desktop_filename display_protocol exec_command - for display_protocol in ${display_protocols} ; do - app_name="${name} on ${display_protocol}" - desktop_filename="${PN}-${display_protocol,,}.desktop" - - case ${display_protocol} in - Wayland) - exec_command="${PN}-wayland --name ${PN}-wayland" - newbin "${FILESDIR}/${wrapper_wayland}" ${PN}-wayland - ;; - X11) - if ! use wayland ; then - # Exit loop here because there's no choice so - # we don't need wrapper/.desktop file for X11. - continue - fi - - exec_command="${PN}-x11 --name ${PN}-x11" - newbin "${FILESDIR}/${wrapper_x11}" ${PN}-x11 - ;; - *) - app_name="${name}" - desktop_filename="${PN}.desktop" - exec_command="${PN}" - ;; - esac - - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die - - sed -i \ - -e "s:@NAME@:${app_name}:" \ - -e "s:@EXEC@:${exec_command}:" \ - -e "s:@ICON@:${icon}:" \ - "${WORKDIR}/${PN}.desktop-template" \ - || die - - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}" - - rm "${WORKDIR}/${PN}.desktop-template" || die - done - - # Install generic wrapper script - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}" - newbin "${FILESDIR}/${PN}.sh" ${PN} - - # Update wrapper - local wrapper - for wrapper in \ - "${ED}/usr/bin/${PN}" \ - "${ED}/usr/bin/${PN}-x11" \ - "${ED}/usr/bin/${PN}-wayland" \ - ; do - [[ ! -f "${wrapper}" ]] && continue - - sed -i \ - -e "s:@PREFIX@:${EPREFIX}/usr:" \ - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \ - -e "s:@APULSELIB_DIR@:${apulselib}:" \ - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \ - "${wrapper}" \ - || die - done -} - -pkg_preinst() { - xdg_pkg_preinst - - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse - # does not need to be forced into the LD_LIBRARY_PATH - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then - einfo "APULSE found; Generating library symlinks for sound support ..." - local lib - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do - # A quickpkg rolled by hand will grab symlinks as part of the package, - # so we need to avoid creating them if they already exist. - if [[ ! -L ${lib##*/} ]] ; then - ln -s "${lib}" ${lib##*/} || die - fi - done - popd &>/dev/null || die - fi -} - -pkg_postinst() { - xdg_pkg_postinst - - if ! use gmp-autoupdate ; then - elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or" - elog "installing into new profiles:" - local plugin - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do - elog "\t ${plugin}" - done - elog - fi - - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then - elog "Apulse was detected at merge time on this system and so it will always be" - elog "used for sound. If you wish to use pulseaudio instead please unmerge" - elog "media-sound/apulse." - elog - fi - - local show_doh_information show_normandy_information - - if [[ -z "${REPLACING_VERSIONS}" ]] ; then - # New install; Tell user that DoH is disabled by default - show_doh_information=yes - show_normandy_information=yes - else - local replacing_version - for replacing_version in ${REPLACING_VERSIONS} ; do - if ver_test "${replacing_version}" -lt 70 ; then - # Tell user only once about our DoH default - show_doh_information=yes - fi - - if ver_test "${replacing_version}" -lt 74.0-r2 ; then - # Tell user only once about our Normandy default - show_normandy_information=yes - fi - done - fi - - if [[ -n "${show_doh_information}" ]] ; then - elog - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):" - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all" - elog "DNS traffic to Cloudflare by default is not a good idea and applications" - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5" - elog "(\"Off by choice\") by default." - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences." - fi - - # bug 713782 - if [[ -n "${show_normandy_information}" ]] ; then - elog - elog "Upstream operates a service named Normandy which allows Mozilla to" - elog "push changes for default settings or even install new add-ons remotely." - elog "While this can be useful to address problems like 'Armagadd-on 2.0' or" - elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security" - elog "concerns prevail, which is why we have switched off the use of this" - elog "service by default." - elog - elog "To re-enable this service set" - elog - elog " app.normandy.enabled=true" - elog - elog "in about:config." - fi -} diff --git a/www-client/firefox/firefox-88.0.1.ebuild b/www-client/firefox/firefox-88.0.1.ebuild index 85f03db61e8f..9f488363331d 100644 --- a/www-client/firefox/firefox-88.0.1.ebuild +++ b/www-client/firefox/firefox-88.0.1.ebuild @@ -5,7 +5,7 @@ EAPI="7" FIREFOX_PATCHSET="firefox-88-patches-03.tar.xz" -LLVM_MAX_SLOT=11 +LLVM_MAX_SLOT=12 PYTHON_COMPAT=( python3_{7..9} ) PYTHON_REQ_USE="ncurses,sqlite,ssl" @@ -78,6 +78,14 @@ BDEPEND="${PYTHON_DEPS} >=virtual/rust-1.47.0 || ( ( + sys-devel/clang:12 + sys-devel/llvm:12 + clang? ( + =sys-devel/lld-12* + pgo? ( =sys-libs/compiler-rt-sanitizers-12*[profile] ) + ) + ) + ( sys-devel/clang:11 sys-devel/llvm:11 clang? ( diff --git a/www-client/firefox/firefox-88.0.ebuild b/www-client/firefox/firefox-88.0.ebuild deleted file mode 100644 index 55bcd16a48b0..000000000000 --- a/www-client/firefox/firefox-88.0.ebuild +++ /dev/null @@ -1,1165 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -FIREFOX_PATCHSET="firefox-88-patches-01.tar.xz" - -LLVM_MAX_SLOT=11 - -PYTHON_COMPAT=( python3_{7..9} ) -PYTHON_REQ_USE="ncurses,sqlite,ssl" - -WANT_AUTOCONF="2.1" - -VIRTUALX_REQUIRED="pgo" - -MOZ_ESR= - -MOZ_PV=${PV} -MOZ_PV_SUFFIX= -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then - MOZ_PV_SUFFIX=${BASH_REMATCH[1]} - - # Convert the ebuild version to the upstream Mozilla version - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI -fi - -if [[ -n ${MOZ_ESR} ]] ; then - # ESR releases have slightly different version numbers - MOZ_PV="${MOZ_PV}esr" -fi - -MOZ_PN="${PN%-bin}" -MOZ_P="${MOZ_PN}-${MOZ_PV}" -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}" -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}" - -inherit autotools check-reqs desktop flag-o-matic gnome2-utils llvm \ - multiprocessing pax-utils python-any-r1 toolchain-funcs \ - virtualx xdg - -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}" - -if [[ ${PV} == *_rc* ]] ; then - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}" -fi - -PATCH_URIS=( - https://dev.gentoo.org/~{axs,polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET} -) - -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz - ${PATCH_URIS[@]}" - -DESCRIPTION="Firefox Web Browser" -HOMEPAGE="https://www.mozilla.com/firefox" - -KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" - -SLOT="0/$(ver_cut 1)" -LICENSE="MPL-2.0 GPL-2 LGPL-2.1" -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free geckodriver +gmp-autoupdate - hardened hwaccel jack lto +openh264 pgo pulseaudio screencast selinux - +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent - +system-libvpx +system-webp wayland wifi" - -REQUIRED_USE="debug? ( !system-av1 ) - screencast? ( wayland )" - -BDEPEND="${PYTHON_DEPS} - app-arch/unzip - app-arch/zip - >=dev-util/cbindgen-0.16.0 - >=net-libs/nodejs-10.23.1 - virtual/pkgconfig - >=virtual/rust-1.47.0 - || ( - ( - sys-devel/clang:11 - sys-devel/llvm:11 - clang? ( - =sys-devel/lld-11* - pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] ) - ) - ) - ( - sys-devel/clang:10 - sys-devel/llvm:10 - clang? ( - =sys-devel/lld-10* - pgo? ( =sys-libs/compiler-rt-sanitizers-10*[profile] ) - ) - ) - ) - amd64? ( >=dev-lang/yasm-1.1 ) - x86? ( >=dev-lang/yasm-1.1 ) - !system-av1? ( - amd64? ( >=dev-lang/nasm-2.13 ) - x86? ( >=dev-lang/nasm-2.13 ) - )" - -CDEPEND=" - >=dev-libs/nss-3.63 - >=dev-libs/nspr-4.29 - 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 - >=x11-libs/pixman-0.19.2 - >=dev-libs/glib-2.26:2 - >=sys-libs/zlib-1.2.3 - >=dev-libs/libffi-3.0.10:= - media-video/ffmpeg - x11-libs/libX11 - x11-libs/libXcomposite - x11-libs/libXdamage - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libXrender - x11-libs/libXt - dbus? ( - sys-apps/dbus - dev-libs/dbus-glib - ) - screencast? ( media-video/pipewire:0/0.3 ) - system-av1? ( - >=media-libs/dav1d-0.8.1:= - >=media-libs/libaom-1.0.0:= - ) - system-harfbuzz? ( - >=media-libs/harfbuzz-2.7.4:0= - >=media-gfx/graphite2-1.3.13 - ) - system-icu? ( >=dev-libs/icu-67.1:= ) - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 ) - system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] ) - system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] ) - system-webp? ( >=media-libs/libwebp-1.1.0:0= ) - wifi? ( - kernel_linux? ( - sys-apps/dbus - dev-libs/dbus-glib - net-misc/networkmanager - ) - ) - jack? ( virtual/jack ) - selinux? ( sec-policy/selinux-mozilla )" - -RDEPEND="${CDEPEND} - jack? ( virtual/jack ) - openh264? ( media-libs/openh264:*[plugin] ) - pulseaudio? ( - || ( - media-sound/pulseaudio - >=media-sound/apulse-0.1.12-r4 - ) - ) - selinux? ( sec-policy/selinux-mozilla )" - -DEPEND="${CDEPEND} - pulseaudio? ( - || ( - media-sound/pulseaudio - >=media-sound/apulse-0.1.12-r4[sdk] - ) - ) - wayland? ( >=x11-libs/gtk+-3.11:3[wayland] ) - amd64? ( virtual/opengl ) - x86? ( virtual/opengl )" - -S="${WORKDIR}/${PN}-${PV%_*}" - -# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or -# overridden in the enviromnent (advanced hackers only) -if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then - MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm ) -fi - -llvm_check_deps() { - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then - 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 -b "=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 -b "=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 "Using LLVM slot ${LLVM_SLOT} to build" >&2 -} - -MOZ_LANGS=( - ach af an ar ast az be bg bn br bs ca-valencia ca cak cs cy - da de dsb el en-CA en-GB en-US eo es-AR es-CL es-ES es-MX et eu - fa ff fi fr fy-NL ga-IE gd gl gn gu-IN he hi-IN hr hsb hu hy-AM - ia id is it ja ka kab kk km kn ko lij lt lv mk mr ms my - nb-NO ne-NP nl nn-NO oc pa-IN pl pt-BR pt-PT rm ro ru - si sk sl son sq sr sv-SE szl ta te th tl tr trs uk ur uz vi - xh zh-CN zh-TW -) - -mozilla_set_globals() { - # https://bugs.gentoo.org/587334 - local MOZ_TOO_REGIONALIZED_FOR_L10N=( - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE - ) - - local lang xflag - for lang in "${MOZ_LANGS[@]}" ; do - # en and en_US are handled internally - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then - continue - fi - - # strip region subtag if $lang is in the list - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then - xflag=${lang%%-*} - else - xflag=${lang} - fi - - SRC_URI+=" l10n_${xflag/[_@]/-}? (" - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi" - SRC_URI+=" )" - IUSE+=" l10n_${xflag/[_@]/-}" - done -} -mozilla_set_globals - -moz_clear_vendor_checksums() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -ne 1 ]] ; then - die "${FUNCNAME} requires exact one argument" - fi - - einfo "Clearing cargo checksums for ${1} ..." - - sed -i \ - -e 's/\("files":{\)[^}]*/\1/' \ - "${S}"/third_party/rust/${1}/.cargo-checksum.json \ - || die -} - -moz_install_xpi() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local DESTDIR=${1} - shift - - insinto "${DESTDIR}" - - local emid xpi_file xpi_tmp_dir - for xpi_file in "${@}" ; do - emid= - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}") - - # Unpack XPI - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die - - # Determine extension ID - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf") - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf" - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json") - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json" - else - die "failed to determine extension id" - fi - - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..." - newins "${xpi_file}" "${emid}.xpi" - done -} - -mozconfig_add_options_ac() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_add_options_mk() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_use_enable() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_enable "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -mozconfig_use_with() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_with "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has usersandbox $FEATURES ; then - die "You must enable usersandbox as X server can not run as root!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6400M" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has userpriv ${FEATURES} ; then - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6400M" - fi - - check-reqs_pkg_setup - - llvm_pkg_setup - - if use clang && use lto ; then - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }') - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}") - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!" - - # temp fix for https://bugs.gentoo.org/768543 - # we can assume that rust 1.{49,50}.0 always uses llvm 11 - local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }') - [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}") - [[ -z ${version_rust} ]] && die "Failed to read version from rustc!" - - if ver_test "${version_rust}" -ge "1.49" && ver_test "${version_rust}" -le "1.50" ; then - local version_llvm_rust="11" - else - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }') - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}") - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!" - fi - - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}." - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:" - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version" - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version" - eerror " - Build ${CATEGORY}/${PN} without USE=lto" - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!" - fi - fi - - python-any-r1_pkg_setup - - # Avoid PGO profiling problems due to enviroment leakage - # These should *always* be cleaned up anyway - unset \ - DBUS_SESSION_BUS_ADDRESS \ - DISPLAY \ - ORBIT_SOCKETDIR \ - SESSION_MANAGER \ - XAUTHORITY \ - XDG_CACHE_HOME \ - XDG_SESSION_COOKIE - - # Build system is using /proc/self/oom_score_adj, bug #604394 - addpredict /proc/self/oom_score_adj - - if ! mountpoint -q /dev/shm ; then - # If /dev/shm is not available, configure is known to fail with - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py - ewarn "/dev/shm is not mounted -- expect build failures!" - fi - - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please - # get your own set of keys. - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc" - fi - - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ" - fi - - # Mozilla API keys (see https://location.services.mozilla.com/api) - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please - # get your own set of keys. - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005" - fi - - # Ensure we use C locale when building, bug #746215 - export LC_ALL=C - fi -} - -src_unpack() { - local _lp_dir="${WORKDIR}/language_packs" - local _src_file - - if [[ ! -d "${_lp_dir}" ]] ; then - mkdir "${_lp_dir}" || die - fi - - for _src_file in ${A} ; do - if [[ ${_src_file} == *.xpi ]]; then - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!" - else - unpack ${_src_file} - fi - done -} - -src_prepare() { - use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch - eapply "${WORKDIR}/firefox-patches" - - # Allow user to apply any additional patches without modifing ebuild - eapply_user - - # Make LTO respect MAKEOPTS - sed -i \ - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/build/moz.configure/lto-pgo.configure \ - || die "sed failed to set num_cores" - - # Make ICU respect MAKEOPTS - sed -i \ - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \ - "${S}"/intl/icu_sources_data.py \ - || die "sed failed to set num_cores" - - # sed-in toolchain prefix - sed -i \ - -e "s/objdump/${CHOST}-objdump/" \ - "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \ - || die "sed failed to set toolchain prefix" - - sed -i \ - -e 's/ccache_stats = None/return None/' \ - "${S}"/python/mozbuild/mozbuild/controller/building.py \ - || die "sed failed to disable ccache stats call" - - einfo "Removing pre-built binaries ..." - find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die - - # Clearing checksums where we have applied patches - moz_clear_vendor_checksums target-lexicon-0.9.0 - - # Create build dir - BUILD_DIR="${WORKDIR}/${PN}_build" - mkdir -p "${BUILD_DIR}" || die - - # Write API keys to disk - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die - - xdg_src_prepare -} - -src_configure() { - # Show flags set at the beginning - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - local have_switched_compiler= - if use clang && ! tc-is-clang ; then - # Force clang - einfo "Enforcing the use of clang due to USE=clang ..." - have_switched_compiler=yes - AR=llvm-ar - CC=${CHOST}-clang - CXX=${CHOST}-clang++ - NM=llvm-nm - RANLIB=llvm-ranlib - elif ! use clang && ! tc-is-gcc ; then - # Force gcc - have_switched_compiler=yes - einfo "Enforcing the use of gcc due to USE=-clang ..." - AR=gcc-ar - CC=${CHOST}-gcc - CXX=${CHOST}-g++ - NM=gcc-nm - RANLIB=gcc-ranlib - fi - - if [[ -n "${have_switched_compiler}" ]] ; then - # Because we switched active compiler we have to ensure - # that no unsupported flags are set - strip-unsupported-flags - fi - - # Ensure we use correct toolchain - export HOST_CC="$(tc-getBUILD_CC)" - export HOST_CXX="$(tc-getBUILD_CXX)" - tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG - - # Pass the correct toolchain paths through cbindgen - if tc-is-cross-compiler ; then - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}" - fi - - # Set MOZILLA_FIVE_HOME - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - - # python/mach/mach/mixin/process.py fails to detect SHELL - export SHELL="${EPREFIX}/bin/bash" - - # Set MOZCONFIG - export MOZCONFIG="${S}/.mozconfig" - - # Initialize MOZCONFIG - mozconfig_add_options_ac '' --enable-application=browser - - # Set Gentoo defaults - export MOZILLA_OFFICIAL=1 - - mozconfig_add_options_ac 'Gentoo default' \ - --allow-addon-sideload \ - --disable-cargo-incremental \ - --disable-crashreporter \ - --disable-install-strip \ - --disable-strip \ - --disable-updater \ - --enable-official-branding \ - --enable-release \ - --enable-system-ffi \ - --enable-system-pixman \ - --host="${CBUILD:-${CHOST}}" \ - --libdir="${EPREFIX}/usr/$(get_libdir)" \ - --prefix="${EPREFIX}/usr" \ - --target="${CHOST}" \ - --without-ccache \ - --with-intl-api \ - --with-libclang-path="$(llvm-config --libdir)" \ - --with-system-nspr \ - --with-system-nss \ - --with-system-png \ - --with-system-zlib \ - --with-toolchain-prefix="${CHOST}-" \ - --with-unsigned-addon-scopes=app,system \ - --x-includes="${SYSROOT}${EPREFIX}/usr/include" \ - --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)" - - # Set update channel - local update_channel=release - [[ -n ${MOZ_ESR} ]] && update_channel=esr - mozconfig_add_options_ac '' --update-channel=${update_channel} - - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then - mozconfig_add_options_ac '' --enable-rust-simd - fi - - if [[ -s "${S}/api-google.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-safebrowsing-api-keyfile="${S}/api-google.key" - else - einfo "Building without Google API key ..." - fi - - if [[ -s "${S}/api-location.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-location-service-api-keyfile="${S}/api-location.key" - else - einfo "Building without Location API key ..." - fi - - if [[ -s "${S}/api-mozilla.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-mozilla-api-keyfile="${S}/api-mozilla.key" - else - einfo "Building without Mozilla API key ..." - fi - - mozconfig_use_with system-av1 - mozconfig_use_with system-harfbuzz - mozconfig_use_with system-harfbuzz system-graphite2 - mozconfig_use_with system-icu - mozconfig_use_with system-jpeg - mozconfig_use_with system-libevent system-libevent "${SYSROOT}${EPREFIX}/usr" - mozconfig_use_with system-libvpx - mozconfig_use_with system-webp - - mozconfig_use_enable dbus - - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme - - mozconfig_use_enable geckodriver - - if use hardened ; then - mozconfig_add_options_ac "+hardened" --enable-hardening - append-ldflags "-Wl,-z,relro -Wl,-z,now" - fi - - mozconfig_use_enable jack - - mozconfig_use_enable pulseaudio - # force the deprecated alsa sound code if pulseaudio is disabled - if use kernel_linux && ! use pulseaudio ; then - mozconfig_add_options_ac '-pulseaudio' --enable-alsa - fi - - mozconfig_use_enable wifi necko-wifi - - if use wayland ; then - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland - else - mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3 - fi - - if use lto ; then - if use clang ; then - # Upstream only supports lld when using clang - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld - - mozconfig_add_options_ac '+lto' --enable-lto=cross - else - # ThinLTO is currently broken, see bmo#1644409 - mozconfig_add_options_ac '+lto' --enable-lto=full - fi - - if use pgo ; then - mozconfig_add_options_ac '+pgo' MOZ_PGO=1 - - if use clang ; then - # Used in build/pgo/profileserver.py - export LLVM_PROFDATA="llvm-profdata" - fi - fi - else - # Avoid auto-magic on linker - if use clang ; then - # This is upstream's default - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld - else - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd - fi - fi - - # LTO flag was handled via configure - filter-flags '-flto*' - - mozconfig_use_enable debug - if use debug ; then - mozconfig_add_options_ac '+debug' --disable-optimize - else - if is-flag '-g*' ; then - if use clang ; then - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*') - else - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols - fi - else - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols - fi - - if is-flag '-O0' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0 - elif is-flag '-O4' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4 - elif is-flag '-O3' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3 - elif is-flag '-O1' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1 - elif is-flag '-Os' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os - else - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2 - fi - fi - - # Debug flag was handled via configure - filter-flags '-g*' - - # Optimization flag was handled via configure - filter-flags '-O*' - - # Modifications to better support ARM, bug #553364 - if use cpu_flags_arm_neon ; then - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon - - if ! tc-is-clang ; then - # thumb options aren't supported when using clang, bug 666966 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \ - --with-thumb=yes \ - --with-thumb-interwork=no - fi - fi - - if [[ ${CHOST} == armv*h* ]] ; then - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard - - if ! use system-libvpx ; then - sed -i \ - -e "s|softfp|hard|" \ - "${S}"/media/libvpx/moz.build \ - || die - fi - fi - - if use clang ; then - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64') - local disable_elf_hack= - if use amd64 ; then - disable_elf_hack=yes - elif use x86 ; then - disable_elf_hack=yes - elif use arm ; then - disable_elf_hack=yes - fi - - if [[ -n ${disable_elf_hack} ]] ; then - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack - fi - elif tc-is-gcc ; then - if ver_test $(gcc-fullversion) -ge 10 ; then - einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..." - append-cxxflags -fno-tree-loop-vectorize - fi - fi - - # Additional ARCH support - case "${ARCH}" in - arm) - # Reduce the memory requirements for linking - if use clang ; then - # Nothing to do - :; - elif tc-ld-is-gold || use lto ; then - append-ldflags -Wl,--no-keep-memory - else - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads - fi - ;; - esac - - if ! use elibc_glibc ; then - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc - fi - - # Allow elfhack to work in combination with unstripped binaries - # when they would normally be larger than 2GiB. - append-ldflags "-Wl,--compress-debug-sections=zlib" - - # Make revdep-rebuild.sh happy; Also required for musl - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags - - # Pass $MAKEOPTS to build system - export MOZ_MAKE_FLAGS="${MAKEOPTS}" - - # Use system's Python environment - export MACH_USE_SYSTEM_PYTHON=1 - - # Disable notification when build system has finished - export MOZ_NOSPAM=1 - - # Portage sets XARGS environment variable to "xargs -r" by default which - # breaks build system's check_prog() function which doesn't support arguments - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs" - - # Set build dir - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}" - - # Show flags we will use - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - # Handle EXTRA_CONF and show summary - local ac opt hash reason - - # Apply EXTRA_ECONF entries to $MOZCONFIG - if [[ -n ${EXTRA_ECONF} ]] ; then - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!} - for opt in "${ac[@]}"; do - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--} - done - fi - - echo - echo "==========================================================" - echo "Building ${PF} with the following configuration" - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do - [[ -z ${hash} || ${hash} == \# ]] \ - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}" - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}" - done - echo "==========================================================" - echo - - ./mach configure || die -} - -src_compile() { - local virtx_cmd= - - if use pgo ; then - virtx_cmd=virtx - - # Reset and cleanup environment variables used by GNOME/XDG - gnome2_environment_reset - - addpredict /root - fi - - local -x GDK_BACKEND=x11 - - ${virtx_cmd} ./mach build --verbose \ - || die -} - -src_install() { - # xpcshell is getting called during install - pax-mark m \ - "${BUILD_DIR}"/dist/bin/xpcshell \ - "${BUILD_DIR}"/dist/bin/${PN} \ - "${BUILD_DIR}"/dist/bin/plugin-container - - DESTDIR="${D}" ./mach install || die - - # Upstream cannot ship symlink but we can (bmo#658850) - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin - - # Don't install llvm-symbolizer from sys-devel/llvm package - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die - fi - - # Install policy (currently only used to disable application updates) - insinto "${MOZILLA_FIVE_HOME}/distribution" - newins "${FILESDIR}"/distribution.ini distribution.ini - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json - - # Install system-wide preferences - local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences" - insinto "${PREFS_DIR}" - newins "${FILESDIR}"/gentoo-default-prefs.js all-gentoo.js - - local GENTOO_PREFS="${ED}${PREFS_DIR}/all-gentoo.js" - - # Set dictionary path to use system hunspell - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref" - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell"); - EOF - - # Force hwaccel prefs if USE=hwaccel is enabled - if use hwaccel ; then - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \ - >>"${GENTOO_PREFS}" \ - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js" - fi - - if ! use gmp-autoupdate ; then - local plugin - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do - einfo "Disabling auto-update for ${plugin} plugin ..." - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin" - pref("media.${plugin}.autoupdate", false); - EOF - done - fi - - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it - if use system-harfbuzz ; then - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref" - sticky_pref("gfx.font_rendering.graphite.enabled", true); - EOF - fi - - # Install language packs - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') ) - if [[ -n "${langpacks}" ]] ; then - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}" - fi - - # Install geckodriver - if use geckodriver ; then - einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..." - pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver - exeinto "${MOZILLA_FIVE_HOME}" - doexe "${BUILD_DIR}"/dist/bin/geckodriver - - dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver - fi - - # Install icons - local icon_srcdir="${S}/browser/branding/official" - local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg" - - insinto /usr/share/icons/hicolor/symbolic/apps - newins "${icon_symbolic_file}" ${PN}-symbolic.svg - - local icon size - for icon in "${icon_srcdir}"/default*.png ; do - size=${icon%.png} - size=${size##*/default} - - if [[ ${size} -eq 48 ]] ; then - newicon "${icon}" ${PN}.png - fi - - newicon -s ${size} "${icon}" ${PN}.png - done - - # Install menus - local wrapper_wayland="${PN}-wayland.sh" - local wrapper_x11="${PN}-x11.sh" - local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop" - local display_protocols="auto X11" - local icon="${PN}" - local name="Mozilla ${MOZ_PN^}" - local use_wayland="false" - - if use wayland ; then - display_protocols+=" Wayland" - use_wayland="true" - fi - - local app_name desktop_filename display_protocol exec_command - for display_protocol in ${display_protocols} ; do - app_name="${name} on ${display_protocol}" - desktop_filename="${PN}-${display_protocol,,}.desktop" - - case ${display_protocol} in - Wayland) - exec_command="${PN}-wayland --name ${PN}-wayland" - newbin "${FILESDIR}/${wrapper_wayland}" ${PN}-wayland - ;; - X11) - if ! use wayland ; then - # Exit loop here because there's no choice so - # we don't need wrapper/.desktop file for X11. - continue - fi - - exec_command="${PN}-x11 --name ${PN}-x11" - newbin "${FILESDIR}/${wrapper_x11}" ${PN}-x11 - ;; - *) - app_name="${name}" - desktop_filename="${PN}.desktop" - exec_command="${PN}" - ;; - esac - - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die - - sed -i \ - -e "s:@NAME@:${app_name}:" \ - -e "s:@EXEC@:${exec_command}:" \ - -e "s:@ICON@:${icon}:" \ - "${WORKDIR}/${PN}.desktop-template" \ - || die - - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}" - - rm "${WORKDIR}/${PN}.desktop-template" || die - done - - # Install generic wrapper script - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}" - newbin "${FILESDIR}/${PN}.sh" ${PN} - - # Update wrapper - local wrapper - for wrapper in \ - "${ED}/usr/bin/${PN}" \ - "${ED}/usr/bin/${PN}-x11" \ - "${ED}/usr/bin/${PN}-wayland" \ - ; do - [[ ! -f "${wrapper}" ]] && continue - - sed -i \ - -e "s:@PREFIX@:${EPREFIX}/usr:" \ - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \ - -e "s:@APULSELIB_DIR@:${apulselib}:" \ - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \ - "${wrapper}" \ - || die - done -} - -pkg_preinst() { - xdg_pkg_preinst - - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse - # does not need to be forced into the LD_LIBRARY_PATH - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then - einfo "APULSE found; Generating library symlinks for sound support ..." - local lib - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do - # A quickpkg rolled by hand will grab symlinks as part of the package, - # so we need to avoid creating them if they already exist. - if [[ ! -L ${lib##*/} ]] ; then - ln -s "${lib}" ${lib##*/} || die - fi - done - popd &>/dev/null || die - fi -} - -pkg_postinst() { - xdg_pkg_postinst - - if ! use gmp-autoupdate ; then - elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or" - elog "installing into new profiles:" - local plugin - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do - elog "\t ${plugin}" - done - elog - fi - - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then - elog "Apulse was detected at merge time on this system and so it will always be" - elog "used for sound. If you wish to use pulseaudio instead please unmerge" - elog "media-sound/apulse." - elog - fi - - local show_doh_information show_normandy_information - - if [[ -z "${REPLACING_VERSIONS}" ]] ; then - # New install; Tell user that DoH is disabled by default - show_doh_information=yes - show_normandy_information=yes - else - local replacing_version - for replacing_version in ${REPLACING_VERSIONS} ; do - if ver_test "${replacing_version}" -lt 70 ; then - # Tell user only once about our DoH default - show_doh_information=yes - fi - - if ver_test "${replacing_version}" -lt 74.0-r2 ; then - # Tell user only once about our Normandy default - show_normandy_information=yes - fi - done - fi - - if [[ -n "${show_doh_information}" ]] ; then - elog - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):" - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all" - elog "DNS traffic to Cloudflare by default is not a good idea and applications" - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5" - elog "(\"Off by choice\") by default." - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences." - fi - - # bug 713782 - if [[ -n "${show_normandy_information}" ]] ; then - elog - elog "Upstream operates a service named Normandy which allows Mozilla to" - elog "push changes for default settings or even install new add-ons remotely." - elog "While this can be useful to address problems like 'Armagadd-on 2.0' or" - elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security" - elog "concerns prevail, which is why we have switched off the use of this" - elog "service by default." - elog - elog "To re-enable this service set" - elog - elog " app.normandy.enabled=true" - elog - elog "in about:config." - fi -} |