diff options
author | Thomas Deutschmann <whissi@gentoo.org> | 2020-10-01 01:45:25 +0200 |
---|---|---|
committer | Thomas Deutschmann <whissi@gentoo.org> | 2020-10-01 01:49:16 +0200 |
commit | 3bb541a27df6c4aa94d45db5808c4cf7fe206cda (patch) | |
tree | 5e5a5ed10f7e0cde2c34a9606c0ddea1710f9cbe /www-client/firefox | |
parent | dev-util/cbindgen: bump to v0.14.6 (diff) | |
download | gentoo-3bb541a27df6c4aa94d45db5808c4cf7fe206cda.tar.gz gentoo-3bb541a27df6c4aa94d45db5808c4cf7fe206cda.tar.bz2 gentoo-3bb541a27df6c4aa94d45db5808c4cf7fe206cda.zip |
www-client/firefox: bump to v81.0.1
Package-Manager: Portage-3.0.8, Repoman-3.0.1
Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
Diffstat (limited to 'www-client/firefox')
-rw-r--r-- | www-client/firefox/Manifest | 96 | ||||
-rw-r--r-- | www-client/firefox/firefox-81.0.1.ebuild | 1055 |
2 files changed, 1151 insertions, 0 deletions
diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest index a014c26b25f5..729f839a763a 100644 --- a/www-client/firefox/Manifest +++ b/www-client/firefox/Manifest @@ -469,5 +469,101 @@ DIST firefox-81.0-vi.xpi 553760 BLAKE2B 7247d2684658cfdac8023ff53ed0b47d8a32a091 DIST firefox-81.0-xh.xpi 427846 BLAKE2B 753beea068254a3b528a94c90331fb19f347d552eb09abbdacc4f688b186c76044aa5ccb4dace268794d74e80f7c7e72a3282be5078c6ca8a70aeea1d3ae3e9e SHA512 55d7cddb69a6db09b40e8bc5506db8237a229d7ffc48c589ff99f4adcd648fff8e938cea091a159f6f561916fbb90809a592893a87c23e34dcef0e4d47032426 DIST firefox-81.0-zh-CN.xpi 554382 BLAKE2B 568ae2cd0ab490b552dc26c60714747c3cff4a572cc81dcb9aa9c026882e20b5a64fd677e3496fbf077d4cca4ab4c2a1c498ed18f776d1b3eefd1381fd37e19b SHA512 436e3ee03d1eee0b0e2a3cb88495148e1efa1d4e8787ac27e1951c9d3cbbc4e1fc8bc3cdefa94db583669c215edf423f398987821d53dee152b9cbe195fdc7ef DIST firefox-81.0-zh-TW.xpi 554145 BLAKE2B 718a02b0c906fbcd0fb39141a41e8b0c427b50c120b18a6d496e36f10c3fbc39269f02bcde7218a515298f37494027e1fe6bfcae0344a524a16e948920d5d583 SHA512 31b8f7651b1b575eb231325dfd0223f0c84706cc4d5a60d2c3a65f29ffd36f73fa17ef5821f2928f500076737f72dc0b66c9c1078c19c3aa0a41b3a2a287df1e +DIST firefox-81.0.1-ach.xpi 458702 BLAKE2B bc2bbb8174556aa91d8fe9149b5e7debedfbd8682207c62c8c1ca3ad86355bd522a2c08915094871ccb46c3c9b7a0a6dde4cc1a8dd296890176003a7eb349274 SHA512 04a2e8146fce327dfbe19a583c2d1ac45289a14dff7f29af17246d6bf8ae0c61363151cbea50da2a0ca06257c9b1ab4ef1b4d26086cea48b2121f059ca97d977 +DIST firefox-81.0.1-af.xpi 429009 BLAKE2B 529a751d6b4ff4e9e1c693cd3c409d199ba5db53f499200718f1dd17c726b4d45b9c4e9a2d4b0fa418afacfc4c2917dfec09f55e5b12db39353e0759b68a4101 SHA512 c704334d07496c5cb0fb7a9755bd53ecc9fcd447772f8d40ab1d601c5a8e7d9ef99a366f3dda287b4a0e11795b5b4b3e06e0da9cc5e09bdedab3ccb3979c32b4 +DIST firefox-81.0.1-an.xpi 506886 BLAKE2B 72b0b6d8aeabd3c0db9bdd3bd2e7015bc7245250c450a4844807c320228b3c3fd8423a0677c3b93f913e3acd2cc2d8752ab22a2fb78a5b8a62d4dc03e3e8edef SHA512 3da113ccdb5c219e1fa07b678056460687a2de57f783c5056e1572cbad0b2238fe1fbd5d36d463bebb1ec0ad2842bfd440a2995185e862ab51cb23ed5b1a8d3f +DIST firefox-81.0.1-ar.xpi 548501 BLAKE2B 1518ba4f14f0609b5cf80b5f17545a0039256aca01fbcee0a0cfb1030539868421c118b0e4ca9171abfc3a261a831ad179f00fa115ba56624f827d5499730a4c SHA512 a6c66508dc002014ce6717b76c00cf9795f2e22930e5cb4d115aed08b64180d392fc9beb779c34732b5cdcfe1b96a0b4e82c1e3ff85c1d811a7180e595937634 +DIST firefox-81.0.1-ast.xpi 457248 BLAKE2B 8a1c0a8a5d2a6bd65c7e31f4e3551bf046f87ad5465f53331a8ce8d2f06ad1bd8bc698ac24fd0195d3e32295abe32104c3ac827df8ae929a931b47233254cbe8 SHA512 df0ebac9cbc3c5c2fa69339b0ced969fe9b799abe7ded20f796edf1498dc00c0fb0bf82cdf4018f15471cb0f50986d37ae6a287fa59d5361cc7f46b97ffd8127 +DIST firefox-81.0.1-az.xpi 492773 BLAKE2B 8021216cdc4407da8afc49e405eab70d744aeb84e312c31ae22a543889a54fa40e8d39fe588286663017db5b9fc8fa1a28cfa94427270f420baae16436733dd8 SHA512 ba1f3ee265e9995dd548e0be422a9c84a61cfaa763a99d5f34a1730f9a1eb5b5df9fd1bfcbb03e99a5377424cf8108d1734cd76af3da4ee5ffe591f3270f80cc +DIST firefox-81.0.1-be.xpi 593034 BLAKE2B ec6524a976ea6e660420f529ee3262242f49e95a1e43273930516bbee0f393b00889a1914a15b7dd261b39ba93f95603fcc7d62834f4be4c8476ea0f27eb3b36 SHA512 34ed88ebc199494f664142d6bb7d7b25f6c708ce32b48b49932475321eee72f3d471e81d73903e4e5cbedf1d11e201cc9f83c334b1995079ade34ab475dac070 +DIST firefox-81.0.1-bg.xpi 554716 BLAKE2B f79bdccaa1aab3f2d951d20a720fcd6c3014e23851023c4d8158f471a8cd50597ae858fa423e5355a4b6d8947bfcbcaed7d2b3001ed59d2c398acaa139e7f2d9 SHA512 798122fe558a9eff34102a0cc828c0fa27094ad2d662a3399efd0d640ddad061c75fb5a2a2b8e9fe09fc97fec35d0846a41cbcf616f810d490b27b36b54a6c59 +DIST firefox-81.0.1-bn.xpi 572612 BLAKE2B afae8944a2cbd85b5610f9a536ca7e932a52fbe018162c9d2445ac831d10bd73ecda3c4400474583fa0357bbf8e2d4af95c2ed1b3a50229f140104809b3d71bd SHA512 4d10a170927dfa5d1e18d97519421f049aba3588f3c799a0eac67cdb01fe3250313bd9a3a1e99f02ad12afd150808a8117894179735b844e53c1cba08f400ec5 +DIST firefox-81.0.1-br.xpi 506642 BLAKE2B ccae77a0b63f89a5ea22a68480422ca290a6e91efbd9fddbf66a609af1e0c2fc80b719bdcd5723b66cc14a55c0dfb6d096d3c4247fcd894f5a6b286eb1f73886 SHA512 cfe6fee1dc52623956b42500a0b9715c6ae80e5cf86f42421706cddcd7e1dfcf54ae3984622c15477c39e805fc81b0125e54fecdf0f3bb22f28daf0b97b28bc9 +DIST firefox-81.0.1-bs.xpi 465225 BLAKE2B 01fef14022114da2dddfa7571584bad8505ec1889da64043a1d67ad137f25d4728d6d8e5d7cd38d8336eb49ee8d21918747b678ccf34eaaeb9c723aacc9ee83a SHA512 d0602fcb06ccc3a1ffa7209b5fa5ef3eeadbecad07ad078f4a83783c61590db7afbd60522129245b00784d10f94f272d589d5292d0ed38994a8ee30b8a4d3a40 +DIST firefox-81.0.1-ca-valencia.xpi 517388 BLAKE2B 8b999a86791d610875f6ad9289471d6eee3cf0ace1d26c3ea185a4161d06422265c4ccca149337362a00fecd63ee81d220cb14694a2b63e0dbe588578de569b5 SHA512 2661fbaf175acb30d09a284e7b7e6fddc320103daee7c58e9df669c5e9ae114a3c8302d8f93f245f345744e890a5c132e63b103f38bbb9d67bfdca4531a7c248 +DIST firefox-81.0.1-ca.xpi 513585 BLAKE2B e5d34ac74e0c0275ee87ae97af7eb3cc85fab68d44d89696a287df0b45264d57aee160ea652e19dde7caead65398f17a44ec26602595708ec4965a38c25afa77 SHA512 302c21e161097c465a099ce1fbb133f5a677823ce77dca5815086f379cbe8b1d0ce81dfa2000bff66fde9dfc61077b295a3778e187740e5dacc0a051564ae9f9 +DIST firefox-81.0.1-cak.xpi 541573 BLAKE2B 012ff816f64207594528f0558fde3351393d5b04dc96dbde0605f8ebdae628bb7e534cca663ddab101e0eec879664428fe413f86a36c8d99d7fee3c759331222 SHA512 ec34cf75ab27cb27a89cdc2496a75121c462e024660fdb7dbcc5fdb56088e94f204d9b125753bec13bc343d661298b40d7a324028c898341e8f147706cc64248 +DIST firefox-81.0.1-cs.xpi 539054 BLAKE2B 3bc5093f1d054f45165b485e3139bcf36533897c3ff7728f254d93ac10ff0f121658fc441a7d4b4c8a89348e5a41df0242e1266e9f32511fc44956ef1bde5f3b SHA512 3bc59aa13a7f2c1f78902f3fe47b0ae32ecbfc31f00c6fe4ad872e495a787869ed0832993ce15f5545cc4ac579bf3d66d90a5b752f774bd759e2470288d548da +DIST firefox-81.0.1-cy.xpi 520847 BLAKE2B 7a6a826082bcedafceccb5133def527e109c276654bc4923243ef5601c04f10ebcce99497e1c8834b82c3c2c32de2621271b6a3ec0023f71e2313923f518d0e9 SHA512 224ab7db8d517e2ca65f28f0c4fe6f0c441196bc276427e6c47e4328245521565f188ec344c8ef40ef0bae32b948c9616ed8e6244de330d7e644f330d33c97ee +DIST firefox-81.0.1-da.xpi 514314 BLAKE2B 928f3dca604284593bc5b18abc8f63e9cafffde66e7156a0ad3b00d9d27d48be66ca08d68f0c3e34c3386a08215d489be9a7566c7e36c360f3991e5ee1dd15b8 SHA512 a18dd8f49cf3bc6a8746f96ff9baa77128b309e53bc06be3c18ce5237aa08a09c8f2b589c3563c3d11ce77611f494b3cc8b491dbabe633b9bcb7f83b8e95ed89 +DIST firefox-81.0.1-de.xpi 533129 BLAKE2B 316284f7f65493529a6b490f70b5584c6e7f07aa4af861cd248d84c5f8c260b33f22ef2adde86fb9acac7badb0773113b5803ed683afde4653049a941e597656 SHA512 1d4d3fa8ae8133c4778fad07ef1d1a7d2942ecb6fd0a43ff457c3938767c36f182b5d84b508ae2bd189e5a6dcb0a509e4190e362c5fb73e5b54332324294faff +DIST firefox-81.0.1-dsb.xpi 544444 BLAKE2B 0d8fe73c26f3f9520ddd4af85f9661a364be00c34837aa29076b8658cae356dc893ea0d25bb5a0318171daa6ff6d60d218c1ea2898b2be7ca0cd5714fe5f41bd SHA512 a74bce6d3109944e1ef585eeb4ea5765aff189ffad4cb8f454dfb54657ff25e3eef83bb301002298122f7aec26a213a099b1951002da9c5e11f8dbdb70ac953e +DIST firefox-81.0.1-el.xpi 614652 BLAKE2B 51e840861b06c1cea025f03aad67ad3a457badf8e2e9d9dbb70843c2a72df926f1f96cc026f4d1d1e708c12c0849a03d77fab52357cb87975557dbc75f4509e6 SHA512 e4487d028c9540e206549adb2d336c931b4f01aa2b481366f8547638dc7aa93b2b4b4669af719b3e56a456da2df7499f96441413b6760ff1277a8d1cb36497f1 +DIST firefox-81.0.1-en-CA.xpi 491835 BLAKE2B 3dbe4a31f0175f18bafce95d01e6a4f0e3b98fa5c4acbd97d09de189c3cb1067f5d7d8b98f1c2688f4bd71d0de64376c7a7b7b7a7b8a5f2ed68c088d85fb3e3a SHA512 75f4c7cb61a1c02f5027c1e69a3565de876f120a9bba8d1e7440a6de40197cdd92df0fd8ec47b29f6b3121bc0b7fbe3f6aa64f4651a1460e319901d10f4976ce +DIST firefox-81.0.1-en-GB.xpi 491772 BLAKE2B dcbe440e497a75f896c36388c1b12f4fdfa09692b587bcfbfd048254baa369bde989efc5b00940b50431f87e53bea008180700cbafb098d1dd143ff335f99d99 SHA512 222d3f7c3f802a023a9515a689b1983bb134552558379137934d91b68eb86c9990632e1f6e1b57051d85346bf067e8677dcf250b1796676a5dd0038b589c9cdf +DIST firefox-81.0.1-eo.xpi 516401 BLAKE2B d10f37d42ed35001e9529823bae247886e29ccba2f31e627cf7866089135bade02a45ca19e014b3fb45a289ddf6672d9ca8205757c1a71382a16da66e43ce962 SHA512 3da9516ef83165770e197dd11147ce20217dd82e3ef56504f799c8b2e804b4db0be6f295c28d01c5998895caaeed04c31f233305c6ae98a7a1b77ef8fbbd0473 +DIST firefox-81.0.1-es-AR.xpi 525970 BLAKE2B 86559133e0e9398a15f65cbab35f6c5189eb76a4b5904aedadd9f399da3c801907c30e37380e4b08e413d646de04336dde93f0942c266b613a83e61a83fd0d1b SHA512 bbe60c6e2898f0702235c76429887e17cda1e44ffc9a212ad044c7080e7d4cd85159235b5965e782d82a35d772d698cebe06f4a8e6280df72bcd5395bb54b56b +DIST firefox-81.0.1-es-CL.xpi 525527 BLAKE2B de52b7f04d91d3274a037a22ea31ad3876a6d79e4dc9ee96623e3f9f5d2584a9e7e3b250027275ae7286e4067284604b27b6264a0bb78795cecebf2dc3ae3c83 SHA512 75b09c5f64d7a4944eb8aa5a610ea60528e9d44f2e84bb6094e9d7a1a66d0ba7b885a0dc1077b011c18a77e36e16975be2775bc78cde69c5d44fc25a742a48c2 +DIST firefox-81.0.1-es-ES.xpi 515152 BLAKE2B 5b8fae1593b549c0e4de5b5274d1454bcdf95e8559350119043f4973e629e59ad64e6d9829202e2a59033fb0dcd509970699692ddcab90d45e514e6f7f487e0c SHA512 d23cd6c07d70826ceb432d392d23e46c2a76a070e08017ad472a9a0eb4bdeec154b69216d47c37212615f846897eee0fcc4327e3209a9cbfb26caf7eee178479 +DIST firefox-81.0.1-es-MX.xpi 529399 BLAKE2B 5b50fb38abbb1414039968e667e23c94d720ad9ed3a18a7d34012f9242b822d0a8265af91c9814271ce613b9655658e376d37cb7afa678d1be7be83b4a096a32 SHA512 8d8b2e4895ca05ebffbd3fac94ae3c9044cc9f616d99bff8395eee34ece06c6acf34d600f80ca0095eddf28bd46aa67ba82eba2fea6e77d51b297fa51fee1d5a +DIST firefox-81.0.1-et.xpi 486326 BLAKE2B aee0e68886e077ea7f20a176286a6c0f2ff4ebe2cd42f1bf38ab6ca7c250657f1796ddd96d8d3c46ca6efd466ad3c0e5a9ee475282669a5893e7231387ee01bf SHA512 b497ac51558c0104a1363284e5bc3236c13b5c0b94be0205c22d874cae6c83f6623285dfeb94d67057264dc9a8e65109b0c2246b8fb4f1c74681c4d9dca3d50b +DIST firefox-81.0.1-eu.xpi 505708 BLAKE2B c6bf2c29f643b13758590bdb51ebefdaedd4589cf6b5153e0bb077042f63745519f465555a6e47f533541ea9ea6959126e8bffe5bd860d95e3e0a023892c2c9a SHA512 87d0865c630f6efd4ba185f8c40f148eb621a2589b7848cb241952c7a8c51aae24a6c09ebbd5025455ea5db37f64bab6ac24910140bf2f7b00bbc7a1d9b2a6d8 +DIST firefox-81.0.1-fa.xpi 539095 BLAKE2B 5f1aef406f5083c0928fac013ae2a3577db7401405eb5dffcf475e146a50662a86d90c11383d35d16ebed29377f69b04b4d152c907008c2baeb8dfa0551be87d SHA512 c0092a7c4c3e952d91c902aab7039d5136946b972a7a208a6dacbab70f75ebca793f30bc51be6bf918d04f3cac2b7130cbb09dd398902db488a116c97e490d6f +DIST firefox-81.0.1-ff.xpi 482665 BLAKE2B e128c7ce26c08cad2d82ff8fbc5d95e28735d5dec77b2fc548be383ad5d5e97ed2c901d276cf555d1d2dd1017a18315b09c90d0c28e658e54894cd25f97197fc SHA512 1856c318030d6c85af9c425699543d7fefde5e78c43781256ea8c28f9768ec11067dd38ad9ba1cf21c6d24d2823cb74c74aeb2dfec26c68e71e618b74b3bf523 +DIST firefox-81.0.1-fi.xpi 512552 BLAKE2B 9aee6fc63d300ff654c5aa923c02ea2a46b0c9f93d097946f76aef873b229a506aa31f0c44dd30295d434b7096aedda5f0e13369a645cf3a5db00bdd344c30ba SHA512 ac7c6a614a99d8527e7f910c9de1b21bcd7fed4fd4db309460dfec3f669a0fe2be3f3b2947a60ed667049334c041cacb4f898f0ee252d7ca143fe1272183e3ee +DIST firefox-81.0.1-fr.xpi 536853 BLAKE2B c4f76a040daf7acfbf10c37942b053e4efc9f3b868bfb70e6da59f9ab6d4a793d558d239caa5ee7e846a9f9bf11c5ea946ab521c460f9b2ec5c529fa40234e82 SHA512 6b97f5f70d94dc9a4dd86c788635417b51f59b648a825ae2fbb39af4639d438c18e43f4e64c2032d666152a26c5995c937c8f005fa5ded07e754bb28e21411c6 +DIST firefox-81.0.1-fy-NL.xpi 522611 BLAKE2B 360be8d09b1179b1c31e730b4218c3c9096566d8b6f789d4cbb7f2b993592d243aca4221263f96b2413c99b0bc716de9cc74e988ec61482cb6aa2acbe0ed185d SHA512 be45706a1e5ca3884f18f3e33a455d00daf3b5e922d925b7bc1b7dd88998c969a7f3ead27c86d8f16c2130724c96a954a36765eb51da8f67d84fd6110b600650 +DIST firefox-81.0.1-ga-IE.xpi 467826 BLAKE2B 601d2ecc55e41ff7d90018e09b6f293dc81feb5d0f0570acf15478bb2940d82184780bd04c07a7242d8608249d71a3e85ce38e65e230320c4ae18a9c59f028fa SHA512 e1c5a404f8de0d196ddfaac4b0939585879100d066a3209b96e090a9dd727471af0f8b195ecf0345aee0f490a0a63f2e010d633f95022bed8c14f2a1313b79ba +DIST firefox-81.0.1-gd.xpi 492745 BLAKE2B de6031d7dda197adcda0e5b877642c798ac316b1a6a67ed5b909ffde4158b2d183701447d5a9ef60d603c0f49e777432855a64fefbcacdd9ee919e7c28a849ce SHA512 23914d557d4a6db568d5de71071cf7607b6f4fab84a58407049201b6856155407dbaece0261b209fe4decfc490420d886c681dd7a958c6e549cc39b2d5f00706 +DIST firefox-81.0.1-gl.xpi 521910 BLAKE2B dbe72bbccbcf1a824469cbf41a0d4a3840e2c6c497762b0732d9db1d81d967ad94d210b1e184f9c335492d4e206f2fabb2e9fa032728dbd4bd828fe24f15a736 SHA512 513aa0f43df4dbe9a081d41f61f1b033914cb2c6252b11a4d5b7ebbcd14da4c1d84a628a542f29c96a768a8396d614c5e7a2556c31414639d97b5b4585319ee4 +DIST firefox-81.0.1-gn.xpi 536987 BLAKE2B f46e23a38a41c3f575f1ae58a93b4b3c0e743ca3f365656bd1ae772d2e03b1de3bd905ae05645c91e911acc516cc1adfc1b0e4c4e981c833f127be329f4ed950 SHA512 94564d60847a344c5d9db8cfa46fa14506b6bc880e4774930609ca051800f307d2a459d39ac39cade4ab8cd9fbe79723829f1c860f13c6a8abb751ece426924f +DIST firefox-81.0.1-gu-IN.xpi 541540 BLAKE2B 2a0d63e5aad1072c4a2e7222c118cd048e7fbc8640e2a69b9ac252ee2f299e59bb5bcbb5774bc596fce7d485b56c4243e51f5bbd9b25fc17c050853f18e10787 SHA512 9f03c8f67b8b64f9d3bdf12cb307adfbd7feb2ed5833fd8048f1351e3cb7b3912b326d4ebc861ca591c0d2bfa72e8c081162a83d045553e7e0fd079a70839ba2 +DIST firefox-81.0.1-he.xpi 537118 BLAKE2B 25ce23cc590338dac97ce63e333ab080978baf11a0e3e69ed059e2f9fad074ae3c1af5f0fcc714fbde3c79822b7211ad94b765ba42f935af877896f94b740938 SHA512 aef21fda28ea36ce44e31adffb9aa1c9069eaca0269b5ef48aa697c80be2a3bc2248d9c33b9af90d912ff572858f35a4b4870b8f4bf7356bc6c4f932d81ce1fd +DIST firefox-81.0.1-hi-IN.xpi 566851 BLAKE2B 04fcb8c218e041da12265fedd5acd452af2dc6d5c07057bce03b3676d0743742c77c7b922fd60fec021d852d07ef4d4a2d1b5700a569502d66a4d7a9471e7442 SHA512 49a94d7d5e82e9ecb74a576ac7cb69687c4d5303a7a569f709c1b1fc2b0a6ebca8ea7e6c31283c89ec1c2439137ee6da020671b64ff06469eee791ebab020771 +DIST firefox-81.0.1-hr.xpi 516898 BLAKE2B d31517e4e0e5ee7b01398f61a7322b4fc242a781baf841b19136d1cbfc58f6cc727a0fcea850e7d0fcc5f00a20aa75af02d41d81d8d63096cb44455ed73a31f7 SHA512 cc3222833590787bb3f0f10cd8a754e1e5df0c792de68c78b557b6140de934e05c6ee1fa6f6c589d865894ae3084243690e0a70a965af4da8e67ae194586a04b +DIST firefox-81.0.1-hsb.xpi 540872 BLAKE2B fc38ca5be4436f7c23fb0e3dbebccf622cd8d56778249daa3d3cadf7d77636904e77d451400024f9fd8c5a25c1dd1177066ba924437020185bd36667479d4a70 SHA512 541b44b30e81582d503c79d34882c54677100b9dcf944b32704f8aef71129d353cd74eca0d7eb376f9005328d41a931e14611ada61808a912ef06b509d626459 +DIST firefox-81.0.1-hu.xpi 544582 BLAKE2B 97f2aa6eec8414b5ce751e611d6dc941011dab4976dac09df28b254df9150816eef292d664c41b8f21ac6db75cf93a579a7f192d358ce57a944fcbac6f00c514 SHA512 e798f4c57da00c54af68fbd82c3730e1dd7002b06180da05d23213d4d7709bffebda5b429a49436ab88a40dc83657f805e773299dbe86793c51acb4a586f6d15 +DIST firefox-81.0.1-hy-AM.xpi 588084 BLAKE2B 9bc4e79435b26d35c41a96c60341915583a748878505438ee94991d2449e0e85d1c9ccf07a369547bc2136bc9fbdf6c9dd5fc6efb8d5bd52800a75026d680801 SHA512 5e32707a16f4fffc3a9da188e903f5f5f25421416da246c4e4776d5756db3d8b2fb7b197aa2514392a5e9cadf01ce8343e48abc60587b4cd4eac5f19c246ed22 +DIST firefox-81.0.1-ia.xpi 512468 BLAKE2B cf56ccef326d914bb7ffe2d4c0112ae191fdc717d22350ea993fb891bbbc9931ae8126242af3fa1463fff37f64c9455e78acc544921bf40fa8b5a0cf758e86f9 SHA512 2c155a3c812aff94fb0613eb47a4aeaface23d6873d69f5d886d3251cecea90689fadfc9046b485d6d8491bbdf067c0923d3edf12b5a6114fa82ba82aaf481ad +DIST firefox-81.0.1-id.xpi 506711 BLAKE2B 94bb8d6a710dc72832c7356d44d18e50ecc98105602dc96783849f4439ed970a48ef6f88b44af31d073f642fb2b04fdd8d8000f6c71b8db8ce97b6eed862ba2f SHA512 1c9c9fa588922f27c65740f5f4a778b09d847c61599bc1d69ebbb81b8d8c1eee3e704eddd89858dda3a8783237958b82cd86fc754818fa3cb54cd59b6f3de9f7 +DIST firefox-81.0.1-is.xpi 478162 BLAKE2B 4fb50ed266c98f2966b878d42d568728915840267f8a449175f43bd03474d77c2b6d767acc6e778149f57cd8cd49c3f8b8a9a0a946d22c8dc37d0de7bf038c40 SHA512 d2fd008ed985b5ccd3202cc990beabc8b4266091f01b7ebe9c4e4071497d79e38e61b35e7f15be6a4c2db5c400e9b4aa8f402594333e7af136829544346b97e6 +DIST firefox-81.0.1-it.xpi 441437 BLAKE2B 37e3263c7fa5b64a5516d5dec26269abf7245244d14b92041e59cc53c8c8c5ab3ffca95cc95964db6f491550ade0040a4783022e8e4fb67ca570bf270c01e353 SHA512 f62e2146eba0eb66dfb613e6008917a4c20fbd1f1c7edd6bc7fd8d2f42e3a63b0ffe8763e491d7ef851e111bef322d6f52e4ce449341eb4958e720d9b36afa63 +DIST firefox-81.0.1-ja.xpi 571738 BLAKE2B 373ae89fd2a959d2cfb4ec2af0ac2b7786199a790b3242e01b60be2b4e36e8ae0bc95a6d40891d1f9a59a52e1bedec155dd9833701b65e15ca05597718d5370e SHA512 6ebd0621d18074867c70f2427b9c55a3139cd73fdda35ca83f477116bad1b05354e8eef0b9b7ee505f26054f500a5dbc85a3451a75ed39c845339801fa410963 +DIST firefox-81.0.1-ka.xpi 570420 BLAKE2B 956ecaebb33b23d13fd0f5e202eff57e445e6d2479aec6f5f1c6558e3b1f890140246c66260f26797bf4f57116d67679d5ad28efd56ed36025edde415d79c969 SHA512 33fce8c610f92be9cffa91173f4a66e54b7ec1b0aa356b0c6b26a0b09481ca0fc6cdcd8956874580d5c5a087bbcdcbde1b7dbf5d417bfed2d0763bb08177b294 +DIST firefox-81.0.1-kab.xpi 530540 BLAKE2B 1037a54c2abdc16ffec491d6f54e4093bd553635e73590bef48391809035e197d5436c7814b3b2f46a8d7dadbfdf816e06dd64f73e2d4546414285640ee735dd SHA512 1acd42f4e31fb4b17c83e4d232a80ebd4932b786d4df16a4c7dfa4138f60cc099ffa185a08b80ca15c9e798e9eb948dbb3f18319c6341329452d567fd3d051d3 +DIST firefox-81.0.1-kk.xpi 588944 BLAKE2B 5ba27f74dd8662236365d9c2e4c6bcadea71b6706fe4f3b1e4f672a14ac838eeb25abe67ad240eb03174f45cc83d8dfff2a0c9e86dbeccf7f7c8e0feeb84f3f0 SHA512 f40eea64edd2381a2104d42929ec8cc28c856db7b22e36d5927ba0243826ddb5f4083e7a5f177dbb7ea3c12b29081848199cc39dc8299b5f8dcab72b240bb5a5 +DIST firefox-81.0.1-km.xpi 525939 BLAKE2B 1fcbdd14702e3665d32dc92c34b53fdbd2eff0903292dfbf35e07f8dcf664883a5449ee63a6e21353048517fccf923bda1ff1c09f2c9faa67187fce46e3bab86 SHA512 e0469fa0286f12bd57c5b0d0bc1bb6e55fd2a5d181053d235b98ca7d2c494e81d53d93cf1a1f30a5a59d5d14a42050300ad1b953343c975419d69336358b9ab6 +DIST firefox-81.0.1-kn.xpi 506728 BLAKE2B 863cb89c76409f3e272a2958654af3a5e2d3e9e3aa56bee0664b180160722fc0791ad53f12258d302968697f0c5d18bc16e422ed7d29cd7b1068b915c4bc5f81 SHA512 9ea9c6d27091d613c44cd86917f8015d107a8a8de647b8810e505ee31099618a589f0caa44fc199ca02d69acbce8dd348932b6b02fd989b78df82ff89dccf1cb +DIST firefox-81.0.1-ko.xpi 556937 BLAKE2B 296810ce473a086b872d9b1a21a22d9603e55d7509ef15be91cb5630fd42759d4c2271c248e1c6a20f007b3d758c1817109bae40b347837de0a9204b25aee639 SHA512 1bf460c1aedc6390061779e00a0f0f054824192c742a121f21ad71731a1f7373a468aeff97f45517965264abfa540e882bde2105b551087b4e0c4d9b7522d6a6 +DIST firefox-81.0.1-lij.xpi 476222 BLAKE2B 52ed2823cc33514df7cf8445f24b6d04db7d70e15e7cc435e320864833ad01d1136923fc43cb20fb7f9eb6158d6c6fc21892307a2cb1affadef1d8422f72193f SHA512 e44c8b17520f300d4c2dcb8b62e90fbf60d56fbe78e4057cca4f7c3b75bee22cec7b6e1f1a6805ab74ee96e2a11b6d71705c884aeb2954ac22e04fb853e121b2 +DIST firefox-81.0.1-lt.xpi 536134 BLAKE2B c82d91a676e10bf5adfc6a7d8573386806644e37796b9358efe0f97e6291d555543daf625a7c01a0f65ff8798a01769351cdc91e6c99e0f2f55e6d9c64909b32 SHA512 488bfac1f9b64579ac5cb762e2b5cc1f2448922169470a97f5b5420b95e21b694ae0da5b4fd59a5da95b61ec42aef920bee45479efbc148552d3b14b3123bc71 +DIST firefox-81.0.1-lv.xpi 468500 BLAKE2B f03e10b997d21596cd137ac19faf43f0845c0a88aec5cf99e3d318f6ab12741331a097866332dbb67fd0cfbd43dc016bad125de1017304e3bf05c4bbdda34310 SHA512 5d7f182ac0346774b5f6b745fe639e10e3d65df4ed7a128ef0bc4455e5424058c8bfa949a58375551e721b09e476eb29c0ed999d35bc811b33ad6849b17f070e +DIST firefox-81.0.1-mk.xpi 459801 BLAKE2B f37e404c0a8d42a4e34592842c72377819896387355b0235b003236b2fea85a2255638d2ca6611e8a0e4e953f928c8b4114922022fd39172856fe06a697a5f39 SHA512 a45f69ba548d99b90c63478ee1bc87ca0e440d3a29f0b55489ec66260e59649fa0eccb15c365b604904b4435e36dfbaf8dc50fa8de7737bfd77acb681aa96edd +DIST firefox-81.0.1-mr.xpi 541693 BLAKE2B 90efc9faf145f826b1f49004b7e4cbca9b97f08afdb2dbdfe4331ce01b834c1eaa8c5570c51346fd936a5142b6b2db3ca084c2bd9de77533950064ad0916e902 SHA512 23acb81c4797dbe11a045f782e3bd28b5acd933ab8e7c155b442ccb4023826b7728380f7417b2ec71c2a45968d96fcef78e666859bd29c5853c581188bd35326 +DIST firefox-81.0.1-ms.xpi 454306 BLAKE2B d0931c26977f17d0742d737470bfaab274157e78594fef37fa68ae7ee792db0594277f582958ff9eaae6b449e5ac474d6f3259bb80d9fa3c2ff3e81e2242d9f7 SHA512 e7d8e8a974bc35e66a69e896979b3e5f073384969054ed4c31e7a62d341f74192a5001a48516161e9b1bd487aa7f16c29a614e73b10ce0630c441f7815d57180 +DIST firefox-81.0.1-my.xpi 526288 BLAKE2B 8329effee0e3bae49c9784183c3a94dfdba070bf50975abb72d630a34028542db87768c20abb58c802cb27dbe1eb6427423e1f05d61b878118920fb7d83007fc SHA512 f8a2d06643fca3f0fd72154596381f4c3b66f1437ad2a777df9e272a97610a40630fd6c912f44047d311c4c0a7d0f14ee291f640c3bf001e9657628600f3718a +DIST firefox-81.0.1-nb-NO.xpi 509495 BLAKE2B 4232520ee84fcc923788293b76e6a0753c95a01607959e36695f698ed110eff493326fd98405804ec0b8dab19e55b0949817640a35cc08e0f1e74f137d32124a SHA512 353e054065cb3c8acd9ed2d16eada1c79d743de3df290f3343c4e9303aac0d9dc6c3c80b1f7cdff25c49600964e2d923b6123105b0570b8f0dcbd3af7a8dd044 +DIST firefox-81.0.1-ne-NP.xpi 483416 BLAKE2B eb74010d3e1942e0e3b99dd70503dbcbfd9b7fcbd12d029f4de4012b78e091827d0f63eaa461afd130acf239f62e5b5cd0aa0b4c1ab0e63f8de567cea9669bd4 SHA512 ae896009b470368a280f477a24d96d394605c51b2b2c934219e34077bed4b17e315d78c920b49e81cd11c61ff4277bfdd223a757c2bfed7ca2a89df858089c51 +DIST firefox-81.0.1-nl.xpi 516616 BLAKE2B cdacc46c3e006b3be536eaed0dcbe398728fb84b04b63c8b23e60de82995fd9c92a673cc0fc03e5c0d5d27c914a7eb9b88fcb0233512ac851141649cbf0f26ba SHA512 8447ec5b2e52b21e7ec5c51fd30e45c1b209f7504dbcf41444359650442ed92560d8b3a0c45f0cc483c893c3bab33cdb3280df0c67c2a486d7826a515bb0b23e +DIST firefox-81.0.1-nn-NO.xpi 511950 BLAKE2B c39300d9b41aa7445748c9e2b6a387c52a64669ab365fb6b73b0b7b41ad8df42c941226894a920be01f25d0fee566accd4da7195dcb5b9f2b52731d1ee7ec96b SHA512 7b741eab3f41135428a83c8f63c911e3a1f1964c59a0f814ef01eb11fa3a24fde33eea05462eebb7b7ed0ce5f5bdf17b49979d9ef11284b68579056192669d28 +DIST firefox-81.0.1-oc.xpi 529763 BLAKE2B bbd95b55f0a6a0fe88ce56a968a891d8e521a25053c43cb916fbaa77a4f82e2514bfe0b76ff8a6ad88b521b4ca3499dbe1e849e4e20b61a1d9ee586eb39a5845 SHA512 cef97777a24f56048f33ef11e6d7370ed0b2187a8a5093a0077cdd413289ca4e2d3717200d2f9fda65a7585aaa348031a820cf1397996753466368871b242a7d +DIST firefox-81.0.1-pa-IN.xpi 569872 BLAKE2B d303c4f77c94764739eb2bda3ef9528419a98e837f82a388cd3d47c2631dd6a0f4acc5f09774866a2c11329d81e67ef284e333ef8591a59ed45527771c5d85b5 SHA512 89420ab239c286e8d932549622b41de4428ec9784e981703ede5d8a9451107717c8e200957f33143a5f6f9128a7ca22794804757fcb02110154f5d2190a4227f +DIST firefox-81.0.1-pl.xpi 535546 BLAKE2B 275c58a9b639dd4f348f57b90a38929c3f7519237919bf69adc7a377736a7b61d2063d96b411c3c91129530c9dd2575941af51b43e89dde899d97c73442d1f18 SHA512 4976f00a575ddb267a4244ce04fec0d0d7363865f9e5908d70750a13df361d73e9e66cfe5baf4fe0e0f09cb859d44115e6ff2139a365a5c5ca629b553b755f3d +DIST firefox-81.0.1-pt-BR.xpi 517607 BLAKE2B 0438e442ea7c06bb333c71012badc935eec6c82b698e2c826ec64bf7d59bafec8ccb4b9eebf961c82af136dfe54a849c39767b36197c0f0872a7f6b5b995400e SHA512 3bde15eb790b29cd4aab7c448f102f4562456630ed152d535030f44da549d991b9cf2d37ecc63476c90ed37eabae0a33085d8f2ef669fd9f20b4e5ca0c72e530 +DIST firefox-81.0.1-pt-PT.xpi 525637 BLAKE2B 84674cfdd28f3ffe35d16adab4e18bec396130290c9e4c64ee874e113b025a8e487f70c7c419042afca30b1982e4f8d5b48f2e255f0a25e061558500e175936f SHA512 06e89b74a7ce531294353b3145cb54150abd353450e02a91281818403e28cfd0b6ab231215a026fc894db27ee9344d4e7610578fddcd7024bffefcb7a9292bfa +DIST firefox-81.0.1-rm.xpi 514442 BLAKE2B 627b1b4c3ff2933536a45cacc269fbcc57eed74a5dafbe1f6718f607194319fe31466471f1022dc658afe41f6790b56d1057e7370c3dfe5706c1935d054c9025 SHA512 14960df5a447818c9a2de03e5df91afb0225a7985394691bc9e9e0fa4503957b854e4f4f2ba1c1790df87940d41b89349c643b11ebf3dfe62b2c5990fd0c7f16 +DIST firefox-81.0.1-ro.xpi 532727 BLAKE2B 5f30731a074af1ad8e17061b4d43edbe88dc5ab357bab71d8a8a668c600fe1aaa6186117d5bab5878a278db955665a1e9222812ea858a81404627f5cf8acdd7e SHA512 67365ca4e827a4d32d84e260755ec5cbbe766d2b1694e841fa6b9bcbffe79ccdd9e9c848bca9325fe260122c108df9909d325f7de85c54316f9fa7045e40bf13 +DIST firefox-81.0.1-ru.xpi 603110 BLAKE2B c61efe86700ea1a119948c24a4e33184cdf07bcb1ab3abc702fac9e39547dfc8a7c4a9778df457dda3b7bbee9d5dab40967323ea631ca52d3f86725dfa482949 SHA512 f3a9b32e27db07953002d337e9ff62569a3c9181e686ac3b7796d56165ca0425be9d1aeb08e174a291fa4518917929b859815a71d7a90bc3a5097ae904269693 +DIST firefox-81.0.1-si.xpi 492878 BLAKE2B ea771bb82692a7fdf0cde1e0ba64bae3bd512bef3ab01f9a3255e01a659eb67856b47e6b89ed93e52036c5a04f5cd49462958e709eed6b63fbe3cc5a3bf22df1 SHA512 0db46c780c78d0747685361bd47561ecdca2a5fd0b428b07af621d85de6680412a95ba6d663a56296464ea09e8660ba6405321ae6a9157c4588d524009dd598d +DIST firefox-81.0.1-sk.xpi 533668 BLAKE2B 4e1c92b1016c2afb5bc547429f720921cf72e840ca1ece323e2dc7a2897ab3bc5c3f45cae4e29d58a4025fbc86a035af7d3ec30b811bc55290865302d66d4039 SHA512 b55bd2c23a132b9a0f799b40a593a8bd19075aecb6bd1a5844b76f724a889395d3b7af2a27b899f8b46253a1d0392a1bb149305acfab59342a465589140db207 +DIST firefox-81.0.1-sl.xpi 517961 BLAKE2B f51a79ce54cd07c0eab372dac9e64ac10a5a0b65ba556afee7ddf235f4cb3f272958cc95861f81caed4a46629f15ced2105aa4eb3a589bfa1a0b66f4495727ff SHA512 1a14ff1421fd368c0254077ae95a4a38c631273fd5924d54c245633b3a5e1ee7d64ed3d06211726c33d7feba80150ca97d21812936a88846c180604c3f0d8692 +DIST firefox-81.0.1-son.xpi 425677 BLAKE2B 5e8fad04c70b7a13a389ae4ef91e01773a2cbf35be0f7ff1bc2b1ba11728a078d7340b994251f98db85b0175ac1a64d2223d2808cbd60b054c80f467110696ee SHA512 d7bdce747856c32d144775d584c3cb1f68c8e6ecaf78520dc8a4177050028ddb25b1abcf941c30028f4f005ca0c2418c9e2092daca45260d40747dc582d82fcd +DIST firefox-81.0.1-sq.xpi 533950 BLAKE2B 4aef947fce24f56157a41d5f59b19d045625595ba8322ec43cf0eefc547b621458a65e48fa3a77972a2f47a6de018c270376855dbf6473aa2a38f1e3e8122ecc SHA512 54d1fd54da5777a58ebbe8f7232f9ebe8c2bf35936215a1946dddb6cd77154b6bc6dbaf7f9aaa85ee4aa91565a5604b70a635ab23380ea05b39831fc2b952f2a +DIST firefox-81.0.1-sr.xpi 561060 BLAKE2B 68444ec8d7aaf857459b92da19bdf0a0fbc190085a5b1f9b0d014a7df71422412f089a50ecd3e82274399abb8d665a665af94af4ea4334f36f10455af9a592f0 SHA512 76bfe7eb7e0ebc2adc1491753f507db21894520b28d53127bbb34f3de59e74187bf48f19e714be3610feb62f423e7fd4dfe3fe4efb0c74b0605fa5284d518da5 +DIST firefox-81.0.1-sv-SE.xpi 520267 BLAKE2B bd23047ca38dbaa1099b52816f4c88cf4291fe0e5d36b258185d46fd6357dab68ae1e48280cf633629f1bec005f792f10aa3642ae0b8949c2b39f186891f285f SHA512 fcee8ec2d3d9c6078d187f54700eb0ef4f2b8bc65a3594296631eb5141a7014dd3c71da4185c2ac7b3a915cddf610c431463535c725b4af70949774484b6648b +DIST firefox-81.0.1-ta.xpi 521451 BLAKE2B d67134ea7819bd71da97827335c59adb88081c9eb8d84392c6883504aa2fbce1a05d0a763f43d674547630c7227c152709dba50731f4c8e3311a86d7e13cabf8 SHA512 8482c1d8c441869745b8e25e03f04f30dc68fb0aa5e7009e6622af374dc68a416876319f70f2ff2216295fd1de2dfc79023ab7f74fcac0853aba1baf1a20a574 +DIST firefox-81.0.1-te.xpi 557699 BLAKE2B 3348dbf4b3b9594c8950c576ee8350c434bbbc368ea12518395428cd71c492e27eef89858e5c7566a8ca2664a8bd0f86cebf9de2a063570686e7b61c04787f3b SHA512 6349bf3ca204dac215f0d4a5b66cdfe3caab924e9a141ea6422f318318fcec1be8b80e27ccc9427842ebcfce6660e68b75060271506306781597ed67590472aa +DIST firefox-81.0.1-th.xpi 585295 BLAKE2B 294c9c2b3cdf00183222f5ec8107554177451685827ddcffe8987468c4807bf09c0b6440a928fe517ac8bfe97946ab62ba2939459bca603c3d90213d720ec210 SHA512 060ac92bc5ca3ed87ef0cc94262152dee10af458ddf7798dace799563732f4d9591641eb3746ac5c55b3ffa603badcbfbfbef3f119ef3b35038b06712a237970 +DIST firefox-81.0.1-tl.xpi 505740 BLAKE2B 057e7792629ae85204f47ffff48a9b06d8f0200ccdc71d4700cfde26523200522dfb9bf346de58f6a303cadb81eaef66951012282070700a2305caaaccc45b85 SHA512 9737ee804a016e23e01a1417b35a9268be9f76d84dad6484b328fbacef32f127c6f2476647ffa370fa7d3c3b00ad5c1b7cdd29c49a6d26d443108029a37c62b5 +DIST firefox-81.0.1-tr.xpi 530261 BLAKE2B 246dc5acdd204a434138263d4aa1f7e3a19bfef1a993d5c227b8274718ba5cb06c6cf37d22966fc2eb3d016a1175d904d4e539011c9a937da0d11127402ccd4e SHA512 05795f2f2a13dad8a2d9323ecee19d7255c9248c6f04c27172065a0aedd46820e9d2d07e084e8d0613d4444f8be1380365f99ac199363c8a88efd5e9d5859048 +DIST firefox-81.0.1-trs.xpi 500281 BLAKE2B 76d8e829536012dda64c078ba90b76c3ab124cd5ffcceda72261d36b5bb7ac3d7a7f11439e8250d54b6f9243a957552f235de3b561689498c8cabe6e57451a71 SHA512 b09e8ea2d4d6506569b15ba37707865513c2c999a916c1ab57ffb187826214b6eb10bbe65ba021e54884cc622b1735e7676a5a42a1a01f54bc9e364ae9ecfc4b +DIST firefox-81.0.1-uk.xpi 597216 BLAKE2B f4412d0f7f4691e15e97943229e9673cf9c903c2e12b2c7f7c0c6b68d35c13564e6d961fb911299c76e2d9fb7c40088659fa837161126e1887c14ce0526b6019 SHA512 f23e01eba8f8cdda0025bcdbb58e94497a3e79d1d62b4a0db633739f7c59b1a96cf3020daeb4762451d96b84b4969f19febdd70e49b757e809c366c4e497503f +DIST firefox-81.0.1-ur.xpi 558287 BLAKE2B 9a5a7ea7b8852799f0187cf1a145dd043e7cabef10020137bc2a78875ae4d8c18e76f2676e062c819553619e96dfbc2ed1bfa967c03ae01f8e7266b728a13d61 SHA512 d91e22c40b31c710ae1f0cb46d394d8355f827a4e487f8fb1a129ca458b67f0e74a6a09990bf66f4c109ef437ba07fb7e1bd69545b545c969b0cd166e2faae90 +DIST firefox-81.0.1-uz.xpi 478098 BLAKE2B 094792a7d5ab5201b198278277bcf0abf63298f1948fa3e8616715d4386eace40e5092fd20f1f3efb37e79a71077f718f2bdbbc2ca7925810b2baf379f58b772 SHA512 57fbbef092ce6b66246ca58a1e1f7f6e5aa4bba47fd7f42551ac99886241bea71e1b274003048726053a880f6eced2a1045fa68ccacfc785f4f40b3845725da8 +DIST firefox-81.0.1-vi.xpi 553764 BLAKE2B 5ce9ee4bac293989dd3841f429a13d4c6facbab5ae48f3048696e4b1a8da85558b68f495388878059ab66527a796725162a1da635c62a738c087a63a61cea13e SHA512 fe7fb5c6f045759b257cfb6b012cc320cd47a6ef50db91081ae2c21d289a86f00181326093b09c276e3556a493a22ac43c71d3d82144322e9bd25dac17f3ec6e +DIST firefox-81.0.1-xh.xpi 427852 BLAKE2B 74955a6277dde525b39e9e851ad71eec5ddf4a5809d42c09dcd5b097d36ed7d20a51e204d5f7b819c6c351a81670073f11c1517411b97d06c68b8f643222d3cd SHA512 cfa51a01577b5e06fca1784633b029333cb4fa3e53e6d2843131088d1dcfe1123c7d3ed2a54608d41fd57e4fc6924ef96a848be0e5982e557e101138d64d1e6d +DIST firefox-81.0.1-zh-CN.xpi 554382 BLAKE2B d58a750a62ac62c3f9ffd9807e2294d6140651b4d0984ef60f768902ad3e220a8df4f5f3a62a0b5f6f669ad0bc3903b8b721121ab67a4ee19637f707a86df192 SHA512 0a19521bdaa79dcb6693c397f0a35aba38a93431f747df50a71550943ffa886ce77390de8a5e82b5404050717c749a8659e357dfb2a0e1178fd80e3978c06a02 +DIST firefox-81.0.1-zh-TW.xpi 554155 BLAKE2B 384f9b2aae9c6e15155b9cea2c8680fff3bab2b7118551b51a084e3def1d7b9c49c8c8ca990441a98dae9af1017ae3c4ab817815e9d19059f349b1d1e34aab6b SHA512 c68e1a34e2899f45d576351debac6135a46c304732ae2a1b2c02386caf52404cb10b3f5975e841299444fa92c8b1eed3aa726541bccba93a34b44c6f96dadf33 +DIST firefox-81.0.1.source.tar.xz 338268036 BLAKE2B 47b4bcd59c90d28df89afb168c4cf2376b12ba020dc2ec6c3a899e9f8627eec2312ff5eb9ac07193c5487674e03c21a67f4a6927de9533da58a25ecc3a9b84f5 SHA512 3e7c4b95872d46fc21f4c55691a159fd2c245537e4e59072f7699da10eacd44fa4bbbab08a028e421bee46356bd02d157620ea040900305a93d6c21bbd695608 DIST firefox-81.0.source.tar.xz 340347916 BLAKE2B 0546bad15aa89a7e4d2ca0cc000fed2170b9529f8f2cc1c1c4907649ffbcf72e8ee800083b63a767fc07b643cacb298b424ebc1ce827de209f366716e3a5135b SHA512 29e0af4c53a09451c3b8e6850c3f19538530035fb576ebe99b3b3a7ed55c37f51bdf44d6c02704e0cbb05ef4ce8278c9b47877643e64c68cd594d626e5d86e5b DIST firefox-esr-78-patches-02.tar.xz 36288 BLAKE2B f177027ea550b4f41616c104865a4d1a99fa0a84ca431176b5191107f23b2fcdd8361ad97493d3182d01dfeb7f2805caf16725b8a81bf1f7847cf400f87018d6 SHA512 7eff0a4f5d2b4abcb0293877b3fe562b5fa2581f46b4905ff8ad839559049e4d903dcca4aad6a7196720cc7b3cd93ae88ca0093da51f70e56609faaadf646c78 diff --git a/www-client/firefox/firefox-81.0.1.ebuild b/www-client/firefox/firefox-81.0.1.ebuild new file mode 100644 index 000000000000..72041321a73c --- /dev/null +++ b/www-client/firefox/firefox-81.0.1.ebuild @@ -0,0 +1,1055 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +FIREFOX_PATCHSET="firefox-81-patches-01.tar.xz" + +LLVM_MAX_SLOT=11 + +PYTHON_COMPAT=( python3_{6..9} ) +PYTHON_REQ_USE="ncurses,sqlite,ssl" + +WANT_AUTOCONF="2.1" + +VIRTUALX_REQUIRED="pgo" + +MOZ_ESR= + +# Convert the ebuild version to the upstream mozilla version, used by mozlinguas +MOZ_PV="${PV/_alpha/a}" # Handle alpha for SRC_URI +MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI +MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI + +if [[ -n ${MOZ_ESR} ]] ; then + # ESR releases have slightly different version numbers + MOZ_PV="${MOZ_PV}esr" +fi + +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/${PN}/releases/${MOZ_PV}" + +if [[ ${PV} == *_rc* ]] ; then + MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${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/${PN}-${MOZ_PV}.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="screencast? ( wayland )" + +BDEPEND="${PYTHON_DEPS} + app-arch/unzip + >=dev-util/cbindgen-0.14.3 + >=net-libs/nodejs-10.19.0 + virtual/pkgconfig + >=virtual/rust-1.43.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] ) + ) + ) + ( + sys-devel/clang:9 + sys-devel/llvm:9 + clang? ( + =sys-devel/lld-9* + pgo? ( =sys-libs/compiler-rt-sanitizers-9*[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.56 + >=dev-libs/nspr-4.28 + 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 "Will use LLVM slot ${LLVM_SLOT}!" >&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 -> ${PN}-${MOZ_PV}-${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="13G" + else + CHECKREQS_DISK_BUILD="5G" + 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="13G" + else + CHECKREQS_DISK_BUILD="5G" + fi + + check-reqs_pkg_setup + + llvm_pkg_setup + + 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 + 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 pgo && 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 + + xdg_src_prepare +} + +src_configure() { + 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 + CC=${CHOST}-clang + CXX=${CHOST}-clang++ + elif ! use clang && ! tc-is-gcc ; then + # Force gcc + have_switched_compiler=yes + einfo "Enforcing the use of gcc due to USE=-clang ..." + CC=${CHOST}-gcc + CXX=${CHOST}-g++ + 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 + + # 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 + + 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 + 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 + if is-flag '-g*' ; then + mozconfig_add_options_ac '+debug' --enable-debug-symbols=$(get-flag '-g*') + else + mozconfig_add_options_ac '+debug' --enable-debug-symbols + fi + + mozconfig_add_options_ac '+debug' --disable-optimize + else + if is-flag '-g*' ; then + mozconfig_add_options_ac '+debug' --enable-debug-symbols=$(get-flag '-g*') + 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*' + + 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-location-service-api-keyfile="${S}/api-google.key" \ + --with-google-safebrowsing-api-keyfile="${S}/api-google.key" + else + einfo "Building without Google 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_annotate '+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 + + # 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 + fi + + # Additional ARCH support + case "${ARCH}" in + arm | ppc64) + # Reduce the memory requirements for linking + if use clang ; then + # Nothing to do + :; + elif tc-ld-is-gold ; then + append-ldflags -Wl,--no-keep-memory + else + append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads + fi + ;; + esac + + # Allow elfhack to work in combination with unstripped binaries + # when they would normally be larger than 2GiB. + append-ldflags "-Wl,--compress-debug-sections=zlib" + + # 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}" + + # 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/firefox \ + "${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}"/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-1 \ + >>"${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 ${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 + rm "${ED}/usr/bin/${PN}" || die + 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:@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 +} |