diff options
author | 2020-12-14 17:16:42 +0100 | |
---|---|---|
committer | 2020-12-14 19:38:21 +0100 | |
commit | 059c637dd62930fd657f1f057b365f4c4a7c3bd0 (patch) | |
tree | 4df385d459d3d5ecae2d79b953ab0f4792167722 /www-client/firefox | |
parent | www-client/firefox: bump to v84.0 (diff) | |
download | gentoo-059c637dd62930fd657f1f057b365f4c4a7c3bd0.tar.gz gentoo-059c637dd62930fd657f1f057b365f4c4a7c3bd0.tar.bz2 gentoo-059c637dd62930fd657f1f057b365f4c4a7c3bd0.zip |
www-client/firefox: bump to v78.6.0 ESR
Package-Manager: Portage-3.0.12, Repoman-3.0.2
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-78.6.0.ebuild | 1122 |
2 files changed, 1218 insertions, 0 deletions
diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest index c093b3cc0ea9..c0edc8152064 100644 --- a/www-client/firefox/Manifest +++ b/www-client/firefox/Manifest @@ -94,6 +94,102 @@ DIST firefox-78.5.0esr-xh.xpi 427806 BLAKE2B 676da7d81426b40c2649b225733df74ff8d DIST firefox-78.5.0esr-zh-CN.xpi 564767 BLAKE2B b5c3e773c3bc58ba80180bd018467df1552b8cf355ca33d96fd4153e169acbdb64dd22f3b4b7449046a02835f406046d2847b161f6220edca6c087cc9e5a8c25 SHA512 489052281501ba642270d65ece7b6c4e5bf2e7ca5101b9dca4c657000e8affd06d838b7ca06d6d399b35d401d288b44d18da2661d3a2c96a04214fd8bf4a4bde DIST firefox-78.5.0esr-zh-TW.xpi 564724 BLAKE2B d55faedb630ecc2629d1e2b1adcfd4cde51d119fd4599d25ef0800e5875efea65db5102fec36366b6531791f16d0f94e8e0dee0bdc18868ad9bf5208471d65c3 SHA512 95e4fa378cf07927b13a9b0e9d37d6320c4cba26f26df6dfab65fcfe1ddd21d38cb5a387663c8c96b6b3e2015999af4d355c0b672848f874101c998abd117047 DIST firefox-78.5.0esr.source.tar.xz 333995288 BLAKE2B 35140afb6b4d15052858e7864753ca74099edb24ed5e459f1f48114f0946f5e007486b5561ba9a545566033d71a69f0e6163dd17204cab717c441323972f089e SHA512 0d16013342b6e8d67adb5c111177ea4796db4fb593da8aa254d0d95bdf33fad798c2dbb235d44db4177c32dd2d7b3ac26b938b476342753ee8d6c83d968d0281 +DIST firefox-78.6.0esr-ach.xpi 460291 BLAKE2B ce5b89a49f04126db1893c488a0d5c2d7b32ced7110526a62ba7254d872339b01de8d8fc4bbc842d2e4f5d074cd5d2975cae1239c31abcfb986e30ab35e121f5 SHA512 9fe7142739c19f7ff65963a70f22fb31d4da676b72ed1974571611d24c033ef1ba43dc0680ddbe4ff9c08860bd65be59842483018eae1fc9d7a03d949ee56af2 +DIST firefox-78.6.0esr-af.xpi 428364 BLAKE2B da06e67acd64ab7a8405325d7af12a3d546f8e0eba7ab5608857faebd900d7530efa024b137350ea447d986cf7f57cfacce0a07e2e577dd0b2c18af456234064 SHA512 d18f2c6915f5c21b59deee498b38bedaecfc31aec66048817ce853193f16064b86fbc6006351dd28c500a34446c67de6aeba8a32f612de8187667ec2bcc1f2ff +DIST firefox-78.6.0esr-an.xpi 508367 BLAKE2B 8ce5975d635260d0f7412c373b6cf24293bc88063d52a4022a0ce0b45ce0be5f80af43d203afbac148f5b24b8058b9b223a9f74ecf63f2931667093c7a0dc79e SHA512 293bcdc394a3ef88fbc696795934ff8b9e0a735c698c6536e27dd7051176f86e3a0686902c929672ef9ccbca9e7f48a0fc731e0745f7055b70e9c3913af15191 +DIST firefox-78.6.0esr-ar.xpi 560954 BLAKE2B 625419e32abecff7c394db3ad17cfb04fa5885beb3748b7e34501bf10598ec1770c3919a2f9747ab1b72bd765d1e6ab484ea7b965d0f7cb4ce6951b02292ac3e SHA512 60663351dcf501bd0153c5e739d903b59cd4ca2a84413f6eb109b7ed814ef9c5b156c46f53b1f540d830ef45cdff1de3d6a651b868f7d975f4d8d062904b7c18 +DIST firefox-78.6.0esr-ast.xpi 456387 BLAKE2B 89ebe475ffc4187cabfdce581d9d425903da40eb5851ccd736623ae4d892e13b7aead5b159393e47a5d26027fc241fae3abb1229eccf0013c0852667fc559ac0 SHA512 5cd6666a682a887d63bfb50256a065a678058eeda569b3642ecf44009971ce6a6b6c1c9a8febe4508f988c3e83bbd83defe579295ae099b9d23aad041ce0953f +DIST firefox-78.6.0esr-az.xpi 497439 BLAKE2B 0011bd73b1be903d23ec7761fb28db08275dbb3f30e20d746fdb5cb3fe0ff565a66aae4d8496e32df93f89aef1e9cbd824e99524deaefab25ca36c4e6ea9bb6b SHA512 2005f5c5d6095a3d5444db2a4ecfc09d471bc9b9dedf92f5dc8099cd7ad48a5e3aa6489679ff1ac726f974b9790618733ce8e27122fe776ccfdc982425354a4d +DIST firefox-78.6.0esr-be.xpi 608650 BLAKE2B b7e263175025c656ccd9cf78e9c599621fe2a3099e9cbf0c6717446e8eda93a8b747e7f024372b07b3f1801936221b12a3a2275c8c601de6486192a12f393982 SHA512 1dd3c679e61629aa0bb5954354875c43f297dba8be3316f481a55903908765a16a239399fd4b7147569b08f8dacbc8549229739e2e18125fc190e602380e6e43 +DIST firefox-78.6.0esr-bg.xpi 553959 BLAKE2B e17c935553a85c2dfccc90de399a29ae1fa3c515e3f2a113bcfc6f1bd0485d1e646617083764d5043395368000fb3dcf26472855160ed1cecf2f1459016e83d9 SHA512 0fbad857366bb0749c34b51d9a21852c371e31918f7fe93faaf3d7cedd382753d059af9a3d2f378933ce883eac3d44c6253fc4fed57165260b8964e4a238dbc2 +DIST firefox-78.6.0esr-bn.xpi 572603 BLAKE2B ccf925d9d930044f1b185e239aed584ccf92e9c82190ab32119d292efc85ca3d4763a083110e424d0ff43e422ce7b970ff8018e785a3ef685286d3513138a544 SHA512 1dc1855ba16215b7d24d4044f6a9a4bc8ee18d9cb3ebaccdd6f94a5123c847cbc79d340bbee973158e0c88a03d4f135f30dcc0f5eda43e8923503b75f5c96a9e +DIST firefox-78.6.0esr-br.xpi 507127 BLAKE2B a73881f1534850bbf8569127a94ef42617b4fb9a6f8960baa134db3a277ab5e15691992599b972aea7196d52f96e774b999da1f622a435e15f1a0ea3ec702c8e SHA512 5790bb75b86da42bf7760f88617abc91ed5aef99b9681e369b29d786d9291fd08bdda72f29c4b6596cfedb8f53f03f97caf1a547382f13666f2449bf592536a9 +DIST firefox-78.6.0esr-bs.xpi 463798 BLAKE2B be85edd662a1e79d35ed170f3470f61f665da491a426d81dc4cb29f1ee47a418ad4c7a20143339b8881cda4f8e866c797d19e16dac51ab8c00ee1dfd5a4b5e3d SHA512 6c4300276a0eeee8cfc5e6c63048c3205e411bedb7bf1b4ba885bf56bbadde4c413aec5d93a7affe65045c23606309f099677e6e2e5a8ef67489015f617cdb59 +DIST firefox-78.6.0esr-ca-valencia.xpi 517172 BLAKE2B 4a666894b4eb7e427f9b50ab5a1fbf3958ef75a5411f54f6621cf55d7f9e33a1be951cb7cd749e50b03bb5ef29a3c873ba0e63900c1e81e4b5bc70c8daa66b23 SHA512 1ded40253bcb409a40169099b8197c9f3d633d99a9c458e6cb9fdda25722a061764901fdb196d3585a81f4177e12b1e943ba980d9472ca898b0918a3a7a7de7d +DIST firefox-78.6.0esr-ca.xpi 514163 BLAKE2B b40cbb7056d6583ef12255addcc7764b515189086156f28a7095a575ee651e5ae41fcd133962d888d707a1586cd5b3f3eba6cce2adf020db08a57fc5012f743a SHA512 f3f58b859eb77615e61646fcdcd0de3497b9ac1e542dc19c9e9d6eb9cfe0668d68cc4a21412a9f0619c55689084525270256d4e4fa1ac62c379447c53ec55065 +DIST firefox-78.6.0esr-cak.xpi 551544 BLAKE2B 1f1ac280819812faefc59c22a62494acbd01d85c2f438ba108f77b33fdde12251286f6bf6c92a58de301a6c24c50f49530520df2fb6b459934fd65afbb27eb52 SHA512 292f68262d4414f71ec23b80cba96c5eef0a079c840f8b23d1c69edb6775817c39bb7541c67b9e18986e4e562bd0ecdcd4605b9ccc98f31000f4fdf0640260dc +DIST firefox-78.6.0esr-cs.xpi 540331 BLAKE2B d418167eaec2e0da368ea09c41bd3b7ca12fe90ed826ffbf824dddf6eb421f26bb06acbd33209db5d85ca543c7133590cca9d26c306af372116da2b9d23491f6 SHA512 f7116e25eadd13e6eae2702643d70b15701a6212b6ecb570ba919182b56a2ec36db7896f6390ed7594beeab22e7ff581705100896a837829c7a90c9c30a02263 +DIST firefox-78.6.0esr-cy.xpi 530696 BLAKE2B 082cd0ff23a006655d79f46612a5a7434ca1e716b72b0ec8b72fff23c0edecb0fdf2b01a2e8e5b535bfe4e51f0d56adf699f97a1e39e65dd55d26511e6b1f22d SHA512 6f6f7d34fbd88f83a36ac92f1e86a4a4050a79bc5a2706a5875ea7167abf3a2e57659a5c502f9fa7dd47cf88dcd1827b6f8db314528b6ce2e6ed81672835c1bf +DIST firefox-78.6.0esr-da.xpi 520281 BLAKE2B 70ca75b633922b377258ebc2f2946293276846294963755f59aed2bcb15fd80ac55a55aeb763281ac365ed9ee3f52bf1d5c9c16a06f7ce6b9203bb5c76081f16 SHA512 63738a26a7056facf12e558aded45ced60799184a2085a670491017266dbe80ea31266ad303688ac9a5f1dc8b75ac83487b703f0d8243681024715cfb81770e8 +DIST firefox-78.6.0esr-de.xpi 542848 BLAKE2B 54545fdcad3d6fd1fd3f85ca29ae66bae7027d7854103ade42858d42dd3ca8b62468ad435772e8b7569bdef4574703ff9d26e1bbbceee72de1c421ab3b9be01d SHA512 a1d92d4c068575365242ab89d737a4672a1fe0cc9b743d70b6e97a230df39d39e9b74e5cc7126e252af7c7734e15740c5471ca805dd4cfbdfed0aa9460cfcb4d +DIST firefox-78.6.0esr-dsb.xpi 554270 BLAKE2B f855baa0f29315d9bbb31c2a868ff792c688af83520df4eece94087b5022b3e30fa740bde79d622d22d7ea4bd6fa9264df0734c01722a805bc591cfdd375b136 SHA512 399cf0ae2e015e8301a869c3046c3d7e1e0fb526ba10655f2e3264722206897ef2f0c1d65907686bf14d148b52626b273dce0d840be345fefa8acc3eea04e9e4 +DIST firefox-78.6.0esr-el.xpi 626564 BLAKE2B 76a573fd004c872a549fa39db092b9ecc8316febc2ab31389e75edd605a14219f9c7837e986f97852c90dc016f078908dd772b38574a6d00805b4f8079d55f81 SHA512 28815e975294bd6ed7810ea904a8f79d938d7e4f07983367a836d5783206b3aa746347a51009a6bf0c3196b25ec9e713cb8c1d8891db0b4a5c08f90ee12593e3 +DIST firefox-78.6.0esr-en-CA.xpi 497727 BLAKE2B 863bb393fcda0ec1f99ff40a428b22173cfdf308617ab36e6b7b82d536bc26a15fcd7d23a24b3bb698c17c4748be920175f255afd152a2bc7ce9b18c50aeb6a0 SHA512 b1c02403845ce84536b3c3cdef3284fa609f9097311fd1a589b1b7b1d04f2bda5c666dc86aab1638d3b15ca3d26de6f2f27609300e3de400dee3f53683ff01f4 +DIST firefox-78.6.0esr-en-GB.xpi 497586 BLAKE2B 395482db0b64e2a2ab9db2b91287e431f74a71f264bdcff933b8b7ffb4bf5b1cad79d4c046cc82f4cd97dbf8b7b4332b243da77e7af418ce3ace115025c0aa69 SHA512 b38ed7de18a5748917ece600e8ad9a08df45da7a6155a0a874cd386540a679551d72acf15b91222297de36b63dd5ad9256fce98aa96ee4b15e7c396444816c39 +DIST firefox-78.6.0esr-eo.xpi 525730 BLAKE2B 2558a9c8000d92ab3d28fce8218c9be4e9057826ba85cba7a7f01c8dd4f83cd72c281e27ff0c51de6729e073579367e82566e51a169b8052908dd21090f11258 SHA512 40321da3b7b413b5acefe844cda4bdf6273e7106fb49f68c2b2beff7a351346cffb56202dc9e5a1f6c37886b888d2c918ddeb542aa887265da8c1cad2306c982 +DIST firefox-78.6.0esr-es-AR.xpi 535794 BLAKE2B 5791574b22602a133746147c8ca986818f35ec9e2a71e7869fe1665627418fe45d07b4117bc8267bb972b53e041c775da02d179800600090015ef288a216b2cc SHA512 d1d667b982efccf56ab0dcfdfa314f59db13f6057bc251459844a2a6a2eaf7edc68d991aede613a950351752f7eb0fb7ec9f90b79e122265ce7ebce9c83bb1e8 +DIST firefox-78.6.0esr-es-CL.xpi 535350 BLAKE2B 27a24e34ff1ec13df225bff43969692c399c3d2d220f52c278d0b04564d8660354e206686534f124d1fcb9087f34645f339228ff70064977c860d44775e21f1e SHA512 7dcb4c142b31fce28b9aab201ef4ce495fac9af162cd6469b582a9c17060edbd8f6d04346a28393d186cdfcdaa965dabd6af25b0b0eb4ec0ee7e21864ea9cbed +DIST firefox-78.6.0esr-es-ES.xpi 522711 BLAKE2B 94f4fe0bc5c275c0cc8e0541fbaf03878d12444895d14cf91957178d63bcfa84f7ce17d6ba095d2911a2e08b2e20937f753e515ff94b740ea32fd02ef9c06816 SHA512 04ecf3bf4d7514bb7912dae9b257f92e8fa1d61a1bfc8689d245a58121b0d4bc862e6a8acd4f3a22c73e68727120e700467b7e08b53f900a166dbb89ad14e9ed +DIST firefox-78.6.0esr-es-MX.xpi 532300 BLAKE2B 8f5286895393ad68a0dd7fb930e670ecc156badf1f4af626685db4bda84f8df5b2b2d40bafb9892672d9b2a94e7aadf7089bde0da2fac031d7d84b46315e0aa0 SHA512 191c839c6d7a76eb6068d6f6838287585f49ea80f740ca4a294aa9badd218ad938dd478f64bfaa5dde818aac6121e03f2ea2cf6a4ab866dd9ef45a3d2bcced4b +DIST firefox-78.6.0esr-et.xpi 485236 BLAKE2B ab6d46c9c8a0799f810dfb8b63c537a998cd52fb4c9a72449234ea95788fc2c55b1da7797b49c3d4d10ef8195904660339a4f31174ab45e342837b2cdf2b21ae SHA512 74db8193658bbbfc69ead89af2db2d295f923167ef402af83d5ffb436bddea422fbb5f3fd054bdb9ce2f4570f9c11b67d9793b973576a5d150044132144a81ec +DIST firefox-78.6.0esr-eu.xpi 505881 BLAKE2B 0d7d9a979120851d2a1a392887984bad0cc3f82d7fb1b5f960c5347cfc1894659195d325f82f6bc0eed47a4e3719b7fc160780b5c9391c051d6b62bf289f2616 SHA512 0df7437bfc8927c2287fd3d359555a64f2dd0eaff2d69d85d33f5c52f6756a111d77f1014bb08c0695f3d648866d83fbe9a8d95115d74e7fe7a7c4e73ef62ad0 +DIST firefox-78.6.0esr-fa.xpi 538914 BLAKE2B 2b31854e0b48d87c27455917d50314d5ae94f31d4a87760978956149f23701815596358f5d7209649bfc2227b3f3eb6a7fda62178e40bf89e00daeac22428248 SHA512 c401f5bf69419836d097b9f192fc8f45fe83dc76ac5778782d3fbac5d0bec260b79a53ae6a626bf07dd4a89eecc49d80047d989e674342ea63216c5dcb341b84 +DIST firefox-78.6.0esr-ff.xpi 481611 BLAKE2B 0fbd2e4b9769bd531cdd6240ed2afec4bb58e953393e68005ea4809d3e988dc0d20b42a78d1199fb9fcff0407897808ef17fed111de4745667e233e596232bcb SHA512 d280d7caac62c74b5f70e39b76b6e4b8f2aa6aac41ec1a2a09070ce98287fd40ccf9af45c94c239349fc54d1341d78ae6b36177eb25620f62e4051ef110c9578 +DIST firefox-78.6.0esr-fi.xpi 517921 BLAKE2B 8ab16cf64814e5a78cbf1ea987a674857709b63ba7ee8e31f2fc23910cce17b9b76baa920ac3b3172df7c53675b0a8552ca3ddbf8c1b6b5dfb66eca5a4253861 SHA512 77184bba0efcc224f798b87a7296f87524232ae06710bdb983bfd4de90e97de5aaf66cb5d2fa804b577dd2dd39e496a5429c537251bc544e0cb7902aa6102cdb +DIST firefox-78.6.0esr-fr.xpi 545887 BLAKE2B b020b71f046ceb1029621502276890ea73b1653ea66c2123c825e84cccd1b43527d98be31ae2ce1c59efc94ecfc95dc52cda30de0c919e1753e8eed3d8e8b515 SHA512 71c18e76dd13e21579385bd68df4426e33473549f5735a76abebbb1f34e5d8ffe082b85de6cd8fa635061bcb6721fd1c86c99524590a5b284b430ff7ee6c39ef +DIST firefox-78.6.0esr-fy-NL.xpi 532467 BLAKE2B 9e64a9b9716e587629600c55eee11c6d385c75f6255539388106b4eb1171280f8dfd13dec31ba0269deae801a700080ffbf617d4dbec029793759f5931dad6e9 SHA512 932e680407012387364d54442f46fe79dc0ded489dbd8204bc54ac6fe31ba80093cafdfe02351939edd533071a0ba50f7c36ab28162a8b1502378d32276b2f4a +DIST firefox-78.6.0esr-ga-IE.xpi 466891 BLAKE2B 48dda66a08aaabae1752679ec76f80bfb29facd827cf37550ef57d1325bb1abc98b501853c15c32d5ea6a483ab87f3c44b686e416d39b6545602dc448d94cacc SHA512 4a6e7548262517df7ec01d5d9c1aafb5885486fcc8fec5307df4988fe61061669ca4c9748986566105c1a4842cb73b3e66f728972f10f9a38ac7820da8570a14 +DIST firefox-78.6.0esr-gd.xpi 491882 BLAKE2B e90cd1218805056066079b8be6df9806de5c3c3f79f1f5fdc2c021910f41215508bb45975ba1a47e7d4c55e161450625dbf7221597e5c0807fcbec6282c44563 SHA512 9dfd25f2b1b6365ad6ef165feaf610b3c7bfbb8f62c3d50b72722ff8ee085384dcc2de756209d6dfac5556275a6ab154f2d30f0a175bbc8212fbc59db8e38bad +DIST firefox-78.6.0esr-gl.xpi 528403 BLAKE2B 7c4f9d965bf73e0d1329814ee599095e3d3da5f84c8f7d386b499c123038bfc64fff3fd9416d9292a1ba791f486eb92c734ddb21b8e31ba852456032bee52098 SHA512 27459340c305f99d3b51902ac7f61f26f2a4d598c45897407ad768135c243de74ca7d2fe87f66667b376e1f3dd68ad7afca514db21dd6441ffe669e722e05a58 +DIST firefox-78.6.0esr-gn.xpi 546471 BLAKE2B 55ca838b866f3a8b717b5c574cb7967309323aef02754d61a9c8d1d029227552361d20ff80c0c5f9c3296234c5f1b31bc64891cfd43566a74d2718deb702fc56 SHA512 3b4411e9caba2725139b6fb396972cc4fb650f7113b48034b71c32d919006b9a33843182626abd01b0a009f1bab63b5d369b98d593cb420cfac09318cfefba5b +DIST firefox-78.6.0esr-gu-IN.xpi 541429 BLAKE2B 43cb58d64b311adbedfe882d9494e4ec9fd2308261872bacc54f7f9b84e396d9db54c54df8169f978b39a255c5f97bbb51eafed803ab514f75c47e1f9ed71747 SHA512 b4cade1f0cb0a1d05eea109d53869f8ba3c4ce3267cee89761b8d95fe7bc6f81a78f92ea6f22c1d1f638881f13c3517e81a41c16d777f32ddf9575f43c820e5f +DIST firefox-78.6.0esr-he.xpi 545578 BLAKE2B af75950a65bcd4495c99de4730517392e5f86fdae25a5b7aac7c83a51999de30d9fd3a4c3bcf7bda83cc31e164938aeea7d18baf9a3fd0b7186d5b0fa590f8c7 SHA512 c839bbacb590b9efc88470938b1a464a11239a67fdd5d1c6aacee9c0e202aa492394b830feeafe83a4ba4cbe1a06bdbbdded8e41e9659e5ce70577a886f04b7c +DIST firefox-78.6.0esr-hi-IN.xpi 567842 BLAKE2B ec9a0106bc7ecc3b861af18fe94c180b22cb64e9443963498daddc8472e59cd10beff9bb344335cd2ba142cfca0690aeff478086492c00717c2cccf47e99f05b SHA512 45cbd2432a2f5fa3424fd4e26449a3e66c05b18491e2d5bbafebaaec7362c03fb9181857d8e5d24aa4774ca07df7a51ace584185882d566d60a4c544e276f441 +DIST firefox-78.6.0esr-hr.xpi 522694 BLAKE2B 84b07197e17a78f296d6e899ff44175c6e3999ca92664253c9d044df93da6691d0f7d1e2b16c7201e60d50d0c6e8264cc581725d0f6f80cf8ca69c614257efbd SHA512 f22a5c64622e1829374f67780519f2366c5087ba6b45807b8b4763ff161fbd37421b293a8aa76043d9ffd037c90ad80b4369128d988ada55ebd1aebc4e75bde8 +DIST firefox-78.6.0esr-hsb.xpi 550668 BLAKE2B 302f9998e1340bab35bcd56b202fea583217e631df21414b2fbdfbb4eb575af2e5c7684466d85dae64534260da74f024a37cc6fed5e8bfe9e0023f4cfd5e60ae SHA512 4c337e042e0ebb53b01499cbed1d563f88278275111936c0f4ce2a6b2db9672d8f6c4c17f74afe967c83018ad6357777fb7e3ee88bfe860f5bbba08d66e9abf4 +DIST firefox-78.6.0esr-hu.xpi 554891 BLAKE2B 025b34b4b8dd9f7eead2b78b7be62a8cf8a5f340d66d8b328c6d65919b8dd087b657dc4344877f1e267c038c94c2e96ec3afe7349f4e806eb006da6fb9fc878e SHA512 cd2bee59551d8ddf4cb112e1716e38a792d709fbd99cd513e7f1c85abee7af818f5b9f5592cd4530714dbeecff10f87bbe90696698f5c9b5eccf3541e3336728 +DIST firefox-78.6.0esr-hy-AM.xpi 588984 BLAKE2B cc3b816936acd93e4df72692d666376b9616493b77da4f0391336f20369bbe5a930736ea16f64235f36aeb85f5dc34349890bc1e78c2f1febe7f4861e077a875 SHA512 4f02afe20a021698af39bca6d25f474cb85a2ea9f596a42fa3116eee2b7ca1fd2b0a30d7bfb0011424f3f2233cf84dcd9236bf9d076635c120c856ac01f005c7 +DIST firefox-78.6.0esr-ia.xpi 518819 BLAKE2B b5125537942d1e6e4486c2e7822270f27a5f1b2c99f47bfc3a47127379c324f1473348361ce0ffd89b008a8fb0e0e68b64c93e70ba13655119ceb6fe478ce6d9 SHA512 58278c0112d1453b506aa49020254cda54da9ca98a277c2aee2f1deb920af73def43ad0ba5c67a666b328ef7679d8eecf9f794c0e2ceedb159b6982cb0de5c8b +DIST firefox-78.6.0esr-id.xpi 509561 BLAKE2B ea2cbcc04b9fdfed39cba912fd7c560feb8479cd8ce3bace9b04b86cb5b2c73d98c8873d100e19277101f127028ceda7bad8dba815effd60c68ed92f36107f0f SHA512 935be8c85dfd597a8c14cea8c5ef283fe3ec662f6b2acbe39937fcaab51ff10b4309d0ab0ec57de334e4b23737c2a0bd307537e5a158abaf71ff9be4c0a745f1 +DIST firefox-78.6.0esr-is.xpi 477017 BLAKE2B 0beb6e0369ea9a4e21d77c56bc248aa45dd08f0e3eb6dd47d2d3fface003ce6a55c3e46e5ed2dac56b4aaab96cff01e8ffb8f4e6616f1380e825441115267b8d SHA512 b5af6c290ae2c60ab2e3aeb30347fb79e933ae90f272fab4cdd167c2c4fc8129194c6b7a0dd1ef8012c27e39e653f4aa9b7d967cb35a4ccf9fdf4a0dd56eb7cd +DIST firefox-78.6.0esr-it.xpi 449818 BLAKE2B 0f61527e8900e68408672a86897006ee58416c93e6b8f6b6e91484c01ffa13f0b1f6d3d81892ac89c28aa1adf119389f8c65a10bb3c01846bd58f4534313d119 SHA512 0c6a637756b0d8254aa3dc248cf2bb7fa797d3248085567d864672e0520f6e84d561f415f9b5ae89d44bfb00b5ae331b99aade9566f7d566b2a11bb1507afff0 +DIST firefox-78.6.0esr-ja.xpi 578205 BLAKE2B 1672a0b835ef0e00fe3cbb883a4daa855c35e27508be5d64ddac9e458a2660c67b014edb576fa6d1ab7852a1b6d196b082fdcffb707505793e0fbbd6fc453d86 SHA512 1a71af096bd0014f8872f9a0d077fba71796230881dbefd8213720cfd7643eb0df4b1e7e6acfbfb4e657cfe077c4643ae6f2616bc3abab2ef6a4172e4dfc9ec0 +DIST firefox-78.6.0esr-ka.xpi 579077 BLAKE2B 3ea15b41b333748a502f21e04801663e8571197bc82ea1cd8dda4f8e1508d09b2c8b4d054aeffaee158204e8fb411599c82db8563154ee6b2da12cbf0514bec1 SHA512 e4281dec9a84908fe567db830ccf14848fbbe8f9a6a7d80ca6fdeb54786af6bc1000af686bda1e514d8e2ccbe41653f4309e1fc8d92fa2de86b940d774889cb1 +DIST firefox-78.6.0esr-kab.xpi 539737 BLAKE2B 9eaa5f7481f43671488f82593b6ead90c0954c0e03d63733454c08b186cdb525e8fc97b05b84a299d1e4be28d35bbd1cb0382d95408599b8b1f5cefeb7ae96ec SHA512 fe8ae4aef0b360813038036c3809ffe7d04aa64804f91b4e5ec5961c44ec1416edba28662c7593e8cbdafa55f4c64d8ebbe10b5e0cc1fbd5662e27546fc96119 +DIST firefox-78.6.0esr-kk.xpi 593248 BLAKE2B a4fcaac2e4d157aa7cd6c8a6b83de4947533e9191e8eb1c01d5dacb4f6d51de46a79f776462970525e77effbdb0405c147c1ce92abca819dc7d2df910f3e7996 SHA512 ad081eeab084160ab5040e70e5ec79c9ebd0fb274859dbb5ef7254d710288792bbaa78e6c0d88ec5626c3c33bbe10891e90dd6c0fad83c704d265ca2c4bf6ed8 +DIST firefox-78.6.0esr-km.xpi 527374 BLAKE2B dda77a434eb3436921fa3be7bad6d287966ad9c10471d2cee1632a145b869a9549e630d146a176c075dcd5e3c9798736560865d7bfbeb8d8d7236d2f6b62f6e4 SHA512 149fbc0e0758695f4960f05f0e66b06c48eecfbeaf9f5b6a0b0b12a7ce660483ede3dc749bb732d714db6728a742a2519e5db862fe9be3335569e502100fa7ca +DIST firefox-78.6.0esr-kn.xpi 506749 BLAKE2B 4128bfb925ebd8d61b7a442776bd70a3db2e4d6cd5b9674137ff6df8c853b8fc14ad94ecb74fa21de9af1781f9ab3d0558f3f320b869ed1bd27c227704cf3a95 SHA512 e7e781b0fb978583a0eec5378061fdf6e6a26bf879f04eb9fc02142ae84389b9298ace2a0151e6dabff6ed393498cdcfe5fdb558a19c6dafa99a81584ef50850 +DIST firefox-78.6.0esr-ko.xpi 567529 BLAKE2B d0fb575af603dd3a32d128375fa3d571cd724ab3914daa1d03963d93af29d7bcbd109f175be4454470a3c5dae905be9b357240c407f16b531e6e59abac7b6f65 SHA512 fe7474274194bbc0ceaba06ec5ee240ccc322488f1cccc41640925fa92716e4a053260ef68e85d12cc722d01fa82c3e9c5ae7c5fadab8cbb5e890ffb45fcc48c +DIST firefox-78.6.0esr-lij.xpi 475234 BLAKE2B 5422c34dd716b3fab1172788a7542e36cdf81c7650ec03546a60b1f6edc69a4e1b3d6106e91a9c4c828e30f8ea09118232a561833912d0b3802427da5f16e6ac SHA512 0cb6f671157a8f172df0abb2d5bc1c5c067e51f77292d319b0707175af01ad4498c1965814445ec95d763880a6f9515e654c5971ce85ba695d9af9396eaf0da7 +DIST firefox-78.6.0esr-lt.xpi 540700 BLAKE2B a59e1487a37b6287186d77b01b8a5eaac82c8c675163d5ac3eeac9f8fade6713fddae9bf367d3840ff3abea2766e54edd7fefb54513b236a722135537a85f3d9 SHA512 56b9fe83c696664219adf69982dc7218b22103bed3463a505cdc95badbb737472780325e1c80adc3f975d93ae750ade65981e0fbdbe5be29b1b569944b05a8d5 +DIST firefox-78.6.0esr-lv.xpi 467469 BLAKE2B 5c73c248c6a0b42db92e3ea50a0c48173408e934c8f7d0d6a4e6e6e66a69cacc94c9d1d0b3121c09f84fd8f9cefd2edde49bc9ffccd694b225eac41810fc231b SHA512 f67485f05fd44a285ea1bb19cd6f089d827803072ad6a941090c8d233e751e4044e51a2fc1acd7732752b3da9e8fd67380b0eab5dc9b73d1f94c50532a848a8c +DIST firefox-78.6.0esr-mk.xpi 460020 BLAKE2B a6fab7296ecd7f53affd5ba459c09d3fd60d97131d3e381621737cb44705493f93fadd526fdb7d0b71192216828a7d2c7354add19f160c58c5cc340f8ec46b3a SHA512 3743d9971b922448b86a9bf9d3eefcd68a73e8d554c49aaef580f9b4dcdd9b46fa8bcf21602938f51cae192aea16e9032a99a68ebdd890014c502e4f720a8b5a +DIST firefox-78.6.0esr-mr.xpi 541578 BLAKE2B 0864f309366387b3372e79a2a36a7705830637c73c7f588275cb423c41cc7a7ff58c55ed1fd85f704008e3972b24d50cfc582f850725138d282e23dc99caf3cf SHA512 65b62ca0746f1175d24c0f9fab649314be63b8d8e05fe5c14046e3bdf291b4d914f8cbb60350dfe7129101d1849a018349c2a9ffdd18e0e633406561fdb16140 +DIST firefox-78.6.0esr-ms.xpi 453061 BLAKE2B c06556eaf7f202fbedf9debddfb0ff3ed17102183ffc44f69586274b699fb2d3a5bd386e3df9fa8be11e54dd619b5854ba9eb3b1aeed1c3a683cdf513f89b84d SHA512 d29324a64871cc4d77b324709917256cdc42f0aaa0634639e658ce4c218d98c43d166e2bea5cf0b2239c688772cfbb0ce609f7cb71cb62fab6270190cec3d1b8 +DIST firefox-78.6.0esr-my.xpi 526339 BLAKE2B 9f780e87e2cd65ee598e6f75929446d2e376691db9fcf4af2d8a39d97c0a0a8721abeab3feaca5e453262b879614dd34f37dceb0ee2d8f220553205e96a5c3ae SHA512 d46ba89a2c7571b5e00f57cb6ec0087238cbd4e3f542e0c4425f3a82d3dc5797f064330fa732abceff8df37836f470de8517f9f994162a959d856f890efcbab7 +DIST firefox-78.6.0esr-nb-NO.xpi 518523 BLAKE2B 91b3c3e6403cc4f6a88cd9f06b15766fdb561f13a3187e1b46dbac05bac65348a3e13a67d5255b5ab73245b08d0b92f67638803e81a646eb6eaa34f1193a34f0 SHA512 edcedcb426fe0ca706806a33f19a0a7ccac32e8b5f61861ca5639c305d4d86b3b83eebae98e75af59d83033cb878f6444b589906837292d25a4846f1cb570146 +DIST firefox-78.6.0esr-ne-NP.xpi 483419 BLAKE2B e20a4c02103c76f10121fe029dc7385daa1c957bbb1ce26ebed0c0b8f6d02848845883d2aa389ea9015a3c750ca837c3b7bef0866587f033bb6911f8b8e3d86f SHA512 9d55ba17d8bf185aac2e45de6204ae903e33a5953cfef78e0f46bd5fe9c88182d70380d7d212a49e229d54d87c1b45d6b127c005165f0e94ac1314297ab1ca00 +DIST firefox-78.6.0esr-nl.xpi 526208 BLAKE2B 9c4e70888eb1929e653c2a020c81b0dcba736d16833da749bb7c9f45c2174b8593aa8111e9b1063d774c5bf0271dc202beb0c4390ba856732759ca1c80c3c53a SHA512 3122ea673a0f2d24f789076bef71848a7e1d90ac6b40b85904d7072a5c4c11e0876959e30e38c525ba2958e96095a63c788c8c2e81354954e9e9a3080a6e80cc +DIST firefox-78.6.0esr-nn-NO.xpi 520168 BLAKE2B f550fbc5c2cf1cd10f6fc60bb9379a5a89f53a144141a99b79d6410eb7fda71c4271ffcdf0968a9ba8ad105b55855aec3766f23c43dac6eec64508a9ade091f9 SHA512 8bcbb42f799b9f221954de65322b6e3a1bdd8e2ff91a624e9cafb28086573b0671b066b552e8a29f0f5213b367a33c9fb0d806038272f9dec6eb4b19c7ed56a4 +DIST firefox-78.6.0esr-oc.xpi 542147 BLAKE2B fbc94f5428e513b1fe37e4bd9bc883473e4bb4180eca53bd07115b5e3136f4ce7bfc4dd1d9516bb73a2373f8c775a413c981fb7c4b51ec61573486ddeeb4a9a7 SHA512 213536d1f14ad15d07eed1f991ad5c9e125f4f6e207ac70319393c56c1e4ca083c9bfbaef98f95407f1d30211a532855002f0cf2ed0f3ea90a958802fe06e338 +DIST firefox-78.6.0esr-pa-IN.xpi 580353 BLAKE2B 966537e3ea4bbfe6854197dc77fb83412e21acad194eb84ff263fcdbb964540afd583dff05589625821591b82100db551b82998fdc5743843174daba4937b068 SHA512 25706c4ac9867989cf4b86d3995947e1f343dbbc449cb60c0b254e6623bc3939138c27e473251f2c63eb879e46256e1d8d2634991458073c7d64babf27b62ef0 +DIST firefox-78.6.0esr-pl.xpi 545607 BLAKE2B 3bb2ca274c36e216eb0b961d70cac168688c616b1cbdd30e343b521b469e0b7134e2f613d8945a7cf8e8f0a311bf3d3e7edff93de8139a3083613a7a1d73f2e7 SHA512 eefd9914b003a5c3a0652e65968a2f7bae9e882f94bb4a4289a2b4a55a456f647b7cf8cc9c3182aa70bdd8b9b3045fc8a8dda0ca023f5cccd08d4d830a290f36 +DIST firefox-78.6.0esr-pt-BR.xpi 527569 BLAKE2B 4a45298aef23ec32925cfc995ba399609285f9692848865415f4d22042fd19529551acaeec96c0cda214f22dc055ac980932f55684ec26a20fcf7d64276cde19 SHA512 5fed281c22cd04c84c441fdb9625672a5659365fc5c6d12a820963b8451ab1b6a080162323ce0bb128e4a446dd75b154b6a4f86a71723f27f27465d6bc6d1cdb +DIST firefox-78.6.0esr-pt-PT.xpi 532038 BLAKE2B db14188ed6a1e8d4da0c3a1aa3516c2af0c0f79951118e519a30f26498948b4d8aae8caaf3fb1d6973c62b4f062b4cce6bddda2ff290347bf606ba43639b6b17 SHA512 2930c49b06d01c4d831e50137934ba8ffea5496ca3015eacc8e05c5bec408f84db0d021688c1abf4269243fa87e4675d7a6bd01c1d3f30957759f38c9308a2e5 +DIST firefox-78.6.0esr-rm.xpi 526718 BLAKE2B aa4be7fc1759a99e288daf232fe0fa8a46237a11ae52055d3ac276716145affc0dc928edd11124e40545b0eee2c8f32426feb43ad9468103e57dae9652de8d8c SHA512 96ef163bf5c6d1adaafcfd10927e57db92fdf8148cfdcb0b0cd90d275fcd4d197ce302bfa75af9a4e46fd37a97fabf41a6cf46de33e56b3566456f5daf8f1ea6 +DIST firefox-78.6.0esr-ro.xpi 535577 BLAKE2B 00864a60791b902b01afad88a459dac4210fadd5565bf5a640bdfe19ab1a7142ad92abd50283f2a47d35d0dcb206100133413cb90c195a9908d389f47d9f1e03 SHA512 0573c5ccdd4c2fc8705b2d8e2bbe296655367c634734d499cef15b20bb0aa797b9cae317208261a9edcc9d195b59c7e0b59e459efa5cccd722c17f7f42567ac5 +DIST firefox-78.6.0esr-ru.xpi 614609 BLAKE2B 3d4dd1130c4355c60cc4a02e2321b5dc9b227e9c01924cddb27bebd1c5ce932c495d351312f61b01c3dcaeea7be84ebd4da3ed5c075861d75d2d3923a86b4afa SHA512 a4f3b7a0c6b7db43f91918eeeb86a10a466ac8db31bbb482b420bcf0e873ae8252d9f1eec0da6de3b710fbc4d62922f7630db2bb1728d4d36d479d561ed32182 +DIST firefox-78.6.0esr-si.xpi 492524 BLAKE2B 9660f01ab1c17d4123d819c799b22f7ccf4209194981ff8a9f54686117d3c904f212a717ad5578787b5e83f2c6ff9f9e21880aebe2c7357f145ed58fb7708fdd SHA512 dbeeacc5f6d770b0ad1bd036bcf0cd4075ce29184f944f093d55e684928d384fba446e1a1b059977956325a8c391e9b80102034af41facb0fe68fb69822ec409 +DIST firefox-78.6.0esr-sk.xpi 534225 BLAKE2B ba6956a8b3b5c41697fba77a0aeaaedafc828024c8ff85b3766ddf74587066c0b3199e29dd610da4d10472828506c150a922ef0ae72f21462291fd0a3db4fa15 SHA512 142eb907535c78a83c16717d747a12182ebe94886e90f04ce5c174f606fa9065d5ddbf9a19dfd5037dc5907c7ce439e54b39fa7b9cdbbeb320823e7e938c7355 +DIST firefox-78.6.0esr-sl.xpi 520941 BLAKE2B d46077d22ce722822d6e95991e61b2d30ff4a058d4f0a215b9fe7fcec95503595123498317e61967bc89edf52b6b6a4e1097fbff0737ab5b9b1fd3911cb36727 SHA512 7c0ce61b7566dc0398c3917147011ce0d4024ffeeebcf1180050bb11a7ed94e46461b0ededa6b48fd5a15386deda40af72365aae5033b74337b1b7411f0a9c1d +DIST firefox-78.6.0esr-son.xpi 424586 BLAKE2B c1b6f14f988b592e7147d6317439bee8f6f5d1339b7c3d728d62be7a19bc4324ddae28321d432018daa53111348b449a56be5983124df8db995706d4e805fa84 SHA512 128aaa2aabd6d5583e55d2b382c4866a95bf7174a8f4398876f9deb63cc65d5e6a0d129300e559e345c2c1496797e38db065c05d14fc7bfef52fc5fef645b05b +DIST firefox-78.6.0esr-sq.xpi 544905 BLAKE2B 68104a44fff0ef8a702d63c6dec475c1606eaa17fd8a99e2a554a873a3544957d93d21744c0d42a2347153bec1e31d9ba52c403023306919a6a4a7a6f39500ce SHA512 c355101f27223651eee207e444c908a8f6e74369b18cb0f0711836cfbfb398e0332f31b45c42bd5e0be283c86b50dbe9c3caa45ee982a4927d015d57b44d4d13 +DIST firefox-78.6.0esr-sr.xpi 561373 BLAKE2B f45f471f4c2a53e8eb881e120385a4523941988da5b4358e36206af0b9b5532e4c389f8350121eb4119ef855165038b2def6b16fd12ff9d08474fb222d1f31e2 SHA512 cc76c135577b505b527d7c6c8dd7f2f98e0b80f24dc4c12e00bb2db9877ca5d9afb4a1168ceff484c2471c84de4c3d63a31621802bd43ff78da547daa252cb26 +DIST firefox-78.6.0esr-sv-SE.xpi 529703 BLAKE2B f52679a45466ce11cc99e05eeb64beb22063ea6e1c924e8a9e79a7669ee850f30b18be2a0860581599afba65df9ba23a648da3aa6af168044a43eb6957446539 SHA512 b54649a444c5431cf434495eda36c31ca3de952bd461917cc5e15a2f41232c78ca843b2eba3b7980c1947a6c7302ba91cbaa9d8608f53e30dcd1978c71b47fcc +DIST firefox-78.6.0esr-ta.xpi 521530 BLAKE2B c6743ce28e0649ada85862550d2df6e9e04ed171d9416c3d51511b1e3590eff42a3333a53e1219415fab245687ceebbd2ed9f9cea5c32b5676eed51591f9a212 SHA512 f52c85b6ca6b5eb285f79bfaef4321bb134d4a07143ffa0cb0b041e0491fed96dbe0777043c1b86d01c6ea4f951ee1f5515361c5a4651c5e494239bdd3786e64 +DIST firefox-78.6.0esr-te.xpi 558415 BLAKE2B 49ba51cb730bd7e5ed2aa5efa3c55f8bb35a7300edcbd52db442658b3d5628bc824ff860a9c16fb764580d26fd9940894dba21cf3fe402c08e39f06fc1094e5a SHA512 cfbe50e26f4a6f6da1398e07edc0b1565230d5fd7ba69b4e7e3f508d845be5d0d8fb3f4250e03d2cf9bd5b69ba1b2d4c54f759602dbb94a5540aeec51e5598fc +DIST firefox-78.6.0esr-th.xpi 592236 BLAKE2B f01aac98dc2b431f829b0a81119158f2dccb323c7ff7a094021c04c1a0411bd24d2affba9399e1b6768d89e576c555984f68dc7c16fae5fa1f8b9f74a002665e SHA512 76f2fd8c616d04aed8ac06918fa4292e796980c4f48130b6678f5d061a487598498c7c1da7b58abd99fc0a30e5bcf3c9958c332723e2ac5fe7a860c3292dbc16 +DIST firefox-78.6.0esr-tl.xpi 521106 BLAKE2B 42ee5a5f62b1c7f12f8aa26a8918fb9585ed7787bc560bf0f13684f67274e6aa0f55ec0d063f0d6a892bce42658bc3811aa51aca8fb8db855170461a4791f724 SHA512 082ec4a3c1dbed82d32871e85bd0051113b99553303c955a41e63965739b3ca679fa7f62c21f463614e78aef80048e30330ed152fbf8bdbd9154e22558e7245e +DIST firefox-78.6.0esr-tr.xpi 539861 BLAKE2B 601a0aae22103ee7637657b2f3e092bec8353b226b86982e82b98da8e1e9d80de17048f38567e7b3e49fde38d18e598cf07c23b9e804876053a7c89d7aad622d SHA512 4e23a5d4f97fb856b6c5dc4bdbdb444217926de8ffcd1d4a53000de77e858a476b9353bf941f33b2299cf2b4f9ecf63c0792e3c2373a47d276f1cad76895b544 +DIST firefox-78.6.0esr-trs.xpi 501215 BLAKE2B 1357d628a32cc0cc52d59af3bcc56bd7ccbe36868feef8d3c8ca6f9420c448d1fc7e689b0bd7369b7760040d16750317ab4deba7bda0c4c389ddc90bd6a1ac88 SHA512 3aef0dde430f4786ef03559b83fe633b82bb0413657c61e005e5a13672ee127ca87a77a125ea17c30e459aab66912e9a5c215665c1cb32c4c7e11723ba0944af +DIST firefox-78.6.0esr-uk.xpi 608588 BLAKE2B 3e2754d8b83713963b01cf277729c7b94c5b1d46e2756bc2b6e7846e3ecd6a7d203c0e8cb95bc80733923286fbadd46fc8e2c92733290c70b2b729c439316f15 SHA512 7ae8445b07a6a5bffebf6fc3ef1ee1b19bacaf2af0979408bcc0b143c1ee08d8d4a328835e1f030e047873fd35d4118a9fd4d63ccb6cd76de7b4580f4aff8dd1 +DIST firefox-78.6.0esr-ur.xpi 557952 BLAKE2B d2a58c7f780afbadbe19de5b991591cbc0dbc5a3b0bf49dbdd4f51bd7d20a0acc7234b281b033cf58b2f3b61ef52a0b5a7555e2bee0613e5b040b639b2a8e8b5 SHA512 af9efef7ee96b9d9cfb3d06e8c6f7bc81cc076e15edeb75d3b9f1d32b8e4e3de3cbcdf9e383e8e21960fb7e5e973274d280c9fcaa5e06a6703ba44da0a3211ab +DIST firefox-78.6.0esr-uz.xpi 477554 BLAKE2B 982b0c92785e86e2a74e6bb5fc16803d485d2dd4b99a65917d438ecdaf46478ac50ba8261043dd431519be1114c802ab32e917792132f8b1fb58e93242d24c04 SHA512 1ad034dacb33c57cd22e573c6742d03ddf71aef57ad93e5ab31ab456aef8794d2902e2f229cdcda600e604239b8241662b47af40438e8d2e8c095ba135f9becb +DIST firefox-78.6.0esr-vi.xpi 562855 BLAKE2B b044389a59b2f846596009f9eb7dfe08e6445d34a65e400e1e792cd9430a59b47d8dad19aa54b12fbfc867211cae166d582574976d78689cdf0cbb2782e31150 SHA512 aa61cda16ee1be44ab909ade183b56120fd713bd13014b9811775aad4fd9b5a530a0ef341b9522bffb09c6dc1d9b6358b260a00907b8e954f0af3a7c65ba137e +DIST firefox-78.6.0esr-xh.xpi 427847 BLAKE2B 4cd2c5e073201dea0c1b2163e3a9196345f6eb542790ed8b2147a148a294505f46437ee084b593be406ee26c008d89ecae37454334aac9e5ab66b6485d350957 SHA512 6dc63029388d03d3094146105fe31b2ca7feea2dfcc32ef6a0d3face10788806b6309210a6f7ac63921390a6972fcca1a0c034797d1c872ddda82fa96b12773c +DIST firefox-78.6.0esr-zh-CN.xpi 564765 BLAKE2B f275015ee431fb845dd6cd7e3d77c18362d889f5edc618fd24c78267871c284e7033dcd08894b8f0835393fd4fd4441b3c2bea109e3fd6e93f477ec5ba0e33a7 SHA512 1be7b1b28e0d6c5287b42f3c57c0576475140fe4e9d2a4ffc8075aa72a81b92a835c7c44b2ff8309719bf9e290f5447bf6676ead1efa911940437c407606c132 +DIST firefox-78.6.0esr-zh-TW.xpi 564720 BLAKE2B db85ce7cd1802a7b609638fbcf2254b276192dfe28f5ef874baf246786f9f55098f04c6260cdd7af1a5482dc2db0a202f879e8d59ae13d1c739d289eb19c65da SHA512 39fd8d7c16d608040f6e0823a2b221ab0d02a3265530ff1058707973904c6a92f8b76db6fe38d3a7ae7c8bcf834f9ed46418f92387f88b5466541e44b964e5af +DIST firefox-78.6.0esr.source.tar.xz 338098664 BLAKE2B 9d082b6104bffbd0d918dc1adf2a01ac32613d8048faf399177834c4949714a00c1f4383b778a21d6b6684296d8f9bd44fa547ee2507a8631d206e3764d2ceeb SHA512 a1e2d6af0020784d00ed3cb4d778c136685e7c2f6ae536cc270fbd331d51d483d17dff9acd7ad8e6b3b231b9df894c146092889357b23715814a080c6f08d11a DIST firefox-78esr-patches-07.tar.xz 66156 BLAKE2B 8f69883432dcbd484b1fb15e3fde1630b1424e502ba78d9ec3cbe70cb2676a6876853d3477c8bfe35e92bca91b200e2d14543de1778d895676a52d2608109af2 SHA512 b4a01d3499002bd33a7fb45a1a80e9e73ba27a0986b6bfa43b3482dd8d82a686a14ae0c5e013402c8c8f359a642632a40bf4c362a0e83a1f53b453914f42e3a7 DIST firefox-83-patches-06.tar.xz 152572 BLAKE2B fdb8cff136379320ee35b17300a91d800dd7a0cba938fcc9687a8b0da5bdfe04826d3cf7398ec8c3184a64f44d39fc44693c2cd6c3ebed138f84536be8e68ce3 SHA512 c195036f84071db1c6ba9a2f9b2044826d7e094bd2525dd149666df308e7ddb39c923ed13bde0812aec3904504dd913ef9fd3f443c098d86c6c0d51ce172c3c9 DIST firefox-83.0-ach.xpi 463987 BLAKE2B 2173c637ae155ec474d18250adf8cd67ff7732ed9ecc7533004296934f82dfdd2f83f5f59dbd6b095b519bf5d3caf888f5e07913004a27771a13376ac080978d SHA512 cb1644bb1451311923bcbbbafe727fe8b35c33cf9643dceac603e802b82a2684451f9005ef6bfdd1ddebde01548926eb62dcd511e1f8a960248ea5b74f5f72e0 diff --git a/www-client/firefox/firefox-78.6.0.ebuild b/www-client/firefox/firefox-78.6.0.ebuild new file mode 100644 index 000000000000..c2e869acd794 --- /dev/null +++ b/www-client/firefox/firefox-78.6.0.ebuild @@ -0,0 +1,1122 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +FIREFOX_PATCHSET="firefox-78esr-patches-07.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 )" + +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] ) + ) + ) + ( + 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.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!" + + 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!" + + 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 + + # 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 + + xdg_src_prepare +} + +src_configure() { + # Show flags set at the beginning + einfo "Current CFLAGS: ${CFLAGS}" + einfo "Current LDFLAGS: ${LDFLAGS}" + einfo "Current RUSTFLAGS: ${RUSTFLAGS}" + + 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 + + # 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-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_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 + 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 CFLAGS: ${CFLAGS}" + einfo "Build LDFLAGS: ${LDFLAGS}" + einfo "Build RUSTFLAGS: ${RUSTFLAGS}" + + # 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 +} |