From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 138B2158090 for ; Sat, 21 May 2022 09:19:42 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 50708E08F3; Sat, 21 May 2022 09:19:41 +0000 (UTC) Received: from smtp.gentoo.org (mail.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 17BEEE08F3 for ; Sat, 21 May 2022 09:19:41 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 022B234139E for ; Sat, 21 May 2022 09:19:39 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id ACF78445 for ; Sat, 21 May 2022 09:19:37 +0000 (UTC) From: "Joonas Niilola" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Joonas Niilola" Message-ID: <1653124775.7c940dbb5bd63c49acf193b82a68ef21bd7d4aaa.juippis@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: www-client/firefox/ X-VCS-Repository: repo/gentoo X-VCS-Files: www-client/firefox/Manifest www-client/firefox/firefox-91.9.1.ebuild X-VCS-Directories: www-client/firefox/ X-VCS-Committer: juippis X-VCS-Committer-Name: Joonas Niilola X-VCS-Revision: 7c940dbb5bd63c49acf193b82a68ef21bd7d4aaa X-VCS-Branch: master Date: Sat, 21 May 2022 09:19:37 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 0e3862b6-7e6b-49a3-a4e9-5ae093a22c2c X-Archives-Hash: f1c324dd46f9941e8a02ecb6c168628c commit: 7c940dbb5bd63c49acf193b82a68ef21bd7d4aaa Author: Joonas Niilola gentoo org> AuthorDate: Sat May 21 09:18:13 2022 +0000 Commit: Joonas Niilola gentoo org> CommitDate: Sat May 21 09:19:35 2022 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7c940dbb www-client/firefox: add 91.9.1 Signed-off-by: Joonas Niilola gentoo.org> www-client/firefox/Manifest | 98 +++ www-client/firefox/firefox-91.9.1.ebuild | 1244 ++++++++++++++++++++++++++++++ 2 files changed, 1342 insertions(+) diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest index db2c66d32064..2a5b2ceb4995 100644 --- a/www-client/firefox/Manifest +++ b/www-client/firefox/Manifest @@ -293,4 +293,102 @@ DIST firefox-91.9.0esr-xh.xpi 428177 BLAKE2B 197dcfc2298edfa0b421322c275998dea40 DIST firefox-91.9.0esr-zh-CN.xpi 575381 BLAKE2B 662cf6768693e480184a7e789d1a823dd12aa7c710f5d8dae46398d78d2f827683c7d983ee31116937db841887f32acd4ddf75a34fdf29f8c9cb90b113a3f82d SHA512 ab6adcc8f1071aacda8452b0d58d26ee8f1072189b7459f9191e3a4c1b4a9f864ca3483fe6bf9f642f962d5f223d5f11364173349519a7ce7a4c7451c08d27cf DIST firefox-91.9.0esr-zh-TW.xpi 576235 BLAKE2B 643c0d43f76a30eb1e6b9dae66798a6c4bde081e95585327377c7890c06eb27f1a35bb886ed3dcb6ff42e8766d0429fe5c7129ad8df1fb8735bba86f1860223a SHA512 326ae088155fe30964ce58b564dfc0879d5f94b14c31173194e424f3a2862a4619d76852118403ac92ed61581e5419395f219cdb8bc9a3056beded03d3b83d96 DIST firefox-91.9.0esr.source.tar.xz 384516460 BLAKE2B 5b265ff907ff520edadb1211ceb9201419349555bc4ab9acbf1d50ce9f0a9bbd26b830f58aec899d882c25f8036bf4ea1df39c7ad144d0305c69826816eec48a SHA512 fd69d489429052013d2c1b8b766a47920ecee62f0688505758f593b27ae66d6343b9107163749406251aedebdf836147e4d562415a811b04d7ab2ae31e32f133 +DIST firefox-91.9.1esr-ach.xpi 453222 BLAKE2B 5550856eb82e8774104400f1da02d6c4da95ebf01867c4706603c05e0678c308f5452bf3beb89936cfd89679553871b0e54fc17ab18e47f132e1984b60c0392d SHA512 b781130b79e20ae9f69f92dfda2cd12da58af023a0d39b58cc53032f8ca99eb8e5013bcd3017886b4a8b725caeee2215fe3d5f6df2d287245911f01dff6a603f +DIST firefox-91.9.1esr-af.xpi 426915 BLAKE2B e069a50208c4f233d518ae91099e7f23b85f24ce0361f60372e07a2303a6235a06018429b0dbeb55bf601cd3255aa62301c4e762e2146591357d4ccc07aeff33 SHA512 9e1ca5c60675146b2b62bb7856582cd9d7cee81b8cda0efe57c631adaf0239f43c12aca7fc194e90742baf3de3313923d644a37281f7e09ab0f42094e35dd919 +DIST firefox-91.9.1esr-an.xpi 499887 BLAKE2B 662a8c02774140eaa890d42ee2308e71f5fbe14c1fc58acfae8a9fe3a8595b1593575521430bbd20ab251095d867b952a868d55378fbe08e1bbb3c94bdc39717 SHA512 c873a8f091a2f673b1bbb0b0c7718b4d41fa4ef4930190ce866ecca19f7ed10428f2c6080dd77f1c80fae2cbbc8123d835033cd2e3fcfd8a43942c0ba812ea27 +DIST firefox-91.9.1esr-ar.xpi 559677 BLAKE2B 968db49cadc2e3f98a8a789cb407f78d300848545f5dee231c99505e6bd9baaaf41c921f4152312fff78b050a38768fcd15a3c160f2c64490588002ad25b5486 SHA512 7bddc8e37d0bbd213af50f87c050e52b7908a8fbc7e60961d7bc2ae8d04bef0d4d759e369e7206537ff3456d45e9eb4257fe1c571e3bfedff3e17e3593438a34 +DIST firefox-91.9.1esr-ast.xpi 498573 BLAKE2B 4a6a71cee53a5ebf58552150f27fc915c22e020e6b286441930f1c465be5b38f37e3869b9ea1b0fc434156316c31e649e93d562e74efc778c186f02aab7c9d50 SHA512 67e4c9bfadb4d2b8ff9e12e89e0b500431de8f4f8dddec51384e5f01fae66e0b50a2522360481018467627524e682ecb4b93f601a8f3a5bbfcd6629d6b0249c8 +DIST firefox-91.9.1esr-az.xpi 489432 BLAKE2B 846a3ed39d26c80bf86794c80ae59b616f1af42be79fcb4c3e689f466c27540460d3569792bc7532e35fd254b58f1447d7ee32ea1bf7450bf1a110c539ffa840 SHA512 33511baba4e7b2d26ac690f68ffb71301b535da8c69a4653fc8fe19757987df23d31b5fce075b18dc61143c3f03d40503a41be51bd0821f2ef9546f5a71056f5 +DIST firefox-91.9.1esr-be.xpi 622606 BLAKE2B 0f82eee79d75e9c575f660ffef2fb8a913e5a9d83dd562419f0f326727ffd187546eb48ed8628d731704a98044d43bdeaa14cd2b0134e84eed5091fd0e226335 SHA512 57d5e45299d81da56e4ee7010796bb4d66775eda4eaa7b8f488861e11966d298d071b5b8b677629c3a3ac73b937e5555aeb0e4675cee38f3842c58bb62a4ed43 +DIST firefox-91.9.1esr-bg.xpi 567637 BLAKE2B 5730b6e43099a9dfdb3974b59cbf6402241714385f2094718f38a568b8cd0712ed26d026f5028480600875318538defbac6652199497d226f58d6237af153407 SHA512 6f99f08c8c6c6ff2e5e1f2384bd5bde7b92ca51ea60f6337f24196e7a1afe482137077fbb5b5123ec54a6665084771d77ee38614710a1e2db1421558a519dda7 +DIST firefox-91.9.1esr-bn.xpi 556821 BLAKE2B e9abdd49a51c0fcbd59b2874e7fcbfb8b083ad4af9bc220ab8cbec20cbdb7eb27db775f5a50420a332400b630c14f5a6b17e527e48d466e26eec627086c22024 SHA512 56d7ce8a8083723ec1a8b779f4c13c432c1c6624ccee509aa766b72d28be909631627d2a8353be85b1fb78eead99d79d379f2dd7191c4f2763621e2e036b3098 +DIST firefox-91.9.1esr-br.xpi 526248 BLAKE2B 85fd150812ea09da4ee969af0304dca74c20cb60cfb9da6f70ec129de908dc540f2dc058d694cc5f6ea940d9aa5d68f3fe0e892fee8dd9f5efdd40a59c8708f4 SHA512 376d1d606079434be8409f3f5503115cfe01962c86a6868b6a72b2d63cd09ea130f651c1a8a6e0ff61928ad8e513cfa9c695bc24ec671c1b2aa01174fdcfee04 +DIST firefox-91.9.1esr-bs.xpi 463562 BLAKE2B 5a53c90be2bbc928927fd2ae53e5b45c118b1e417da6036053e0aa3c2bc79978faf9906310b508f59cc147af1d1a1b84e2ecd9ab663c95e58eb4a9678c771ad6 SHA512 e18f4f4fe2e80824cae025be4f83757f73607037e4836102c9566395e174ed5c45c9a70690b618b54a8197b9c3700daad33eb6006fdb0f63c8557442032d883a +DIST firefox-91.9.1esr-ca-valencia.xpi 529401 BLAKE2B fd6ba308413455c43a8545c7a294db8696411c891f028a8ff3d7e0649f69e891b94a0d1c042ee2bfa2c411e8bbc2fa06a02968dbc421f14e9bd5c51f61eed54f SHA512 09b137a2d91e72e9bc0411bd3cda1ded17b2794475a19fda4e75c18b9504d4e4e732f85323da66f689c56d1b3fed214895513764dd7002ff382d4e7a09337c0e +DIST firefox-91.9.1esr-ca.xpi 532485 BLAKE2B b8aea4942c1670d79eaf26c3071ddf26dc7a511b9dbef05238eb268f59ad3fe63cedc43a1d9ee7f07f3392edc5f06842799728fc218f2e3ff36d1cda48dcef82 SHA512 e5899c96a65f174dcf91c55644114aec547c521b602ba59cdd469f8bca5e7e454e00074410887ed159fb6b3ae790fee1d6e31c071d23eb9061617b82f1b52bb5 +DIST firefox-91.9.1esr-cak.xpi 552604 BLAKE2B 54f8ff565e503d56b47a4dbd39f01768bf27e4cf93abb8ea0fc134437a1ee86005197d2e7477ac3592e1b2c2967065b0b0b202e67c6101a8a2a4802b4f008fff SHA512 9dd5b7d388c8761f28357abfa134b576960e5b6a4768ec2bc7b3e02018a731db6ddb9e40463f3c6cb696fa8ff6efa3a79e622dcbe904a70f4171a6d517ac8692 +DIST firefox-91.9.1esr-cs.xpi 563178 BLAKE2B 81e0c44a700f2279b5c25d7f7e12bd2b05e99a3dfb8f3d02a9f99ce1def663a2ec9818bfc6ec5c2609aa3433e5f56aeacee22e67b43dbc4ee9b7e0ad46bd5455 SHA512 746d1b6bd22384b9a4eb059da37715b0070cf426218c62be6a3c8a6d440972d389aea3584f0615af9d28d6df05a909bf55ab2dd6f2ff3bd370dabc1924fedc5a +DIST firefox-91.9.1esr-cy.xpi 542220 BLAKE2B 9b621a600c49d1b9976c91ad7841647d57454436a438e0fac80d07c633c2e3823c6ffe2164ebe1d7253a208998177f563b543580173e4138a573081b932d39cb SHA512 77663420b067c402ebe7e62d74a275511f46bc28cc9241ed8c20156fa51c6881c8faf5ab96cb37f56ddc808723cd48af100404442ac463c7a17dda6e7d58625c +DIST firefox-91.9.1esr-da.xpi 534156 BLAKE2B 03b76b9562b22258a5f672dfaede305ba2032224f3fcca26d54def02bb8a3512e72504ca2ef1f584b56d214041094eeed0a3a7d93b6a41f8f0670d5367a213cd SHA512 820b3dfa62476c672a48746f31b8483e04ebcb98982d493e5196766424877b3dddbd43c769b69ae3ca7fb144df2b9cae3afe402f5f97a6bb0d3c3475be9742da +DIST firefox-91.9.1esr-de.xpi 553581 BLAKE2B 4dfb1571da036e05d7ba8bdbe7dd55447d89dfda95170e788b03147a9b16daa7807a3f9e1820866e3880f0226370f91f77a4ddb928334c555c85d66ae067631b SHA512 8f05ab8c73933d8013026a057438320dc6550de35749a53bf8688b7ccd86004c24cb085af30ba8e117f1d58727eb96dc2cea8c49fa18bdcec63e393c1fa5d5e6 +DIST firefox-91.9.1esr-dsb.xpi 566474 BLAKE2B 064bfd378742726c87aa2eaa37c071caf8d130271c04f1e44e104c5518e62ebaf7a11fec78e7bd7db75e854d5ad41756d722f09ff0b61a4f9d60988f2bc30cb1 SHA512 0e4509f32f45bc2429eb5b8be813ac4e39b7b68ce6e8454551766763ffd344574700611a53c022b40a9dab46081b67447e956255cbc5851a92ed4e8e9bb471d7 +DIST firefox-91.9.1esr-el.xpi 639151 BLAKE2B 3089a6f0a85eedb2acaf2b32db4f043b5628af4a02a5b70722a8f46441ec12c4fb8cbc5d3fe915327d189c128468ca86fc4c6abd9c4eaca8a407239d01d47ee8 SHA512 027de93fa2db2143655ef5ec5868036b69f4062973a99b3a2036cc742fe275815cd809c44a9de085ef669b07affffa19460323a2589c7f7dc6b33c0a6942959f +DIST firefox-91.9.1esr-en-CA.xpi 509576 BLAKE2B f455e6cac08d3acb9e0a38ca77d20fa4aa4686f7e6cdca190ffd460c7bee0fa23357295bfb47491629811ce3d38730c18c21b2d054d51e8218a3ba836bd7e706 SHA512 158990ef837d3326ae926f4c024e759284c615ef0b289233538e931c9349ba6d9068db35496ac0a17a6936c0b7c555a6f0598e63ef7b6f9468bfa2a1a01e05c5 +DIST firefox-91.9.1esr-en-GB.xpi 510588 BLAKE2B b6dc5ce54aacaf1b1bcbda83e52ea9eec4c356079be6b1bec5b77feb1ab8087631a39a6a21e91471981ddd8dd945f3d1b9f34946e74d89a097083af7a7dbf3e1 SHA512 435931dd5cf36705bf3c52d55d8fa682db70314650f3c29fb4215e48717e2087f8a4fd3609f989c963c49dccc89882f1c4069b2cf3173d443da5275bc359465a +DIST firefox-91.9.1esr-eo.xpi 534799 BLAKE2B 2fee158dfa3dea6ef3abee975366c433554c0719cb4c558c16fcdcc02ca9345f1c7b7688f8323332939a20ab06a9949895582d713bb0686c18fb076b117e9884 SHA512 8e28b390e1f3d8c226a6908a80a4e36ed3aefdaa875c412d5cc4fd1fca8d864375b77a089deed703d74dc945dcd6a55368d090d3d5ec215bf528ec1211dce4fd +DIST firefox-91.9.1esr-es-AR.xpi 546672 BLAKE2B c4d6667677f2b6acecf55f1588923f5a89cce4c7b7b93a75ee4461cc783da74a8d5127370802c46457b792c5eef3ae11cf3893dbf525f50f83da74c9e78c6869 SHA512 9ceeb1abd3a3672aa52fa6ad1078a8e60e3cfab5f71a972384d3eaa5da7bf28cf60f94631fda813782acfdcc1aec0f6db185639f4c51297dc83417cdc0fd41bd +DIST firefox-91.9.1esr-es-CL.xpi 546372 BLAKE2B 5903a48a83f5524d350021719f8f195cebf24efc0e93d0d62a74e0f21bf26a6e5429e959a6fba3498221ee0e2e1b321abd151c95244cbbb39300081cde84e4a5 SHA512 14f2ee5d7b04540ba70b79b2d28b97540086c747f0c85270971cf0a1b09b8108fb1ffe809983c790f07df69e650dea642815ecbb9f030c13af5627fd6caafafd +DIST firefox-91.9.1esr-es-ES.xpi 537065 BLAKE2B e15aa0038b59a4ba1ef14fa5165a6ef6bfd38869daf70c1057d195f9d715e87108b5c2eced9996651cabb487f6acdd8df94eb67d96a9ec59d3625766116d90c5 SHA512 5fab44dd92453658c45875178dcb254e8b0525fbb0c80f203dea9d550cb8a56b6cdc170fcd393c519a23f1b98701e3cb42e9f4686ff4ca2efbccdf1aebf691b2 +DIST firefox-91.9.1esr-es-MX.xpi 549990 BLAKE2B dbe9dd632256c9edf5a047ee9b0ae989d7be4fbd53a3daed631292702f03cd30e871962dee18cdb6e649bf9271eed318ec27c87b9efce62a233c83bd6621e879 SHA512 9d093eda62eb4956eac6cc22407096c029a464339a4daf897ebbae58de5286930d3dfa06b1b292de8285f27033ab00f6cc9c9ab3a35a8befd33ce22c8df32d62 +DIST firefox-91.9.1esr-et.xpi 506667 BLAKE2B c98156cea556ece84a7975acc3e5946a02aaf2bcdebdf26794cab02e163d7421379e0489fa44fbd8d05c0319bda7971881d98a5f1d532fac32714aebccacb0f1 SHA512 d843161f279afa5b00a87b150e0aa79133e637847971078c375af74132b41f6c8d5a3cb0da7955cc7b58dc79b7722272d4bad9575f89a9d89729decd261efbff +DIST firefox-91.9.1esr-eu.xpi 536326 BLAKE2B 15824e5680c82e482b1a674371caa49466c505c9713b36159fa09f96e1058bc0f7977d0114ef3ea011c326f54dc2d6d434f46887b61dbd74ba6c9db2a828b70e SHA512 e5441778071e11b266fe1f8ca8acf2d2c7b0118ad2ed9c5ae73f8160be8ac336eeb7d327984e3582d7c12daee43cdd1889be98777ebb49a08f78a3bedddd0f59 +DIST firefox-91.9.1esr-fa.xpi 559381 BLAKE2B 33f299cdc791ba0d0b3c9bfda29925f5fa7da66f266318623247d02fe37aa18a9895c1b5ca5d22034572767f2e7b701b3496736a3526546b9594e5e62a9ae2f2 SHA512 e7797bdd7fc34900b5da8587fff6292870c72e3091dc276ea6a392b0cb8485470ec7a775f957d02390cc623c2ed6fef70ef6962543150666c18f15eeece866fe +DIST firefox-91.9.1esr-ff.xpi 471865 BLAKE2B 4b2629c6a6d16be4657245518213e05a985e22c6c3d49cf48c7898be055532eb37600212ecee9da0320d9609ca2eb71d9033c66d046db51f89776bae5b1d2eea SHA512 903affd8b0df0dbbdcc77a978fb3c51d6cab5607ebadc82336fc12be313afc82b4aeed6a3c5b865567c603b5576e94c0311e7b16a1c9c3c8ab46620c960adade +DIST firefox-91.9.1esr-fi.xpi 531480 BLAKE2B abeccd533f5790410e9367b96a9073f5afc4e19aa82e030a21694b1eb55e6a643c04a78ec41dd691a02f86de61d7b0347523e6e787b6a46778c83ba44b6dff30 SHA512 2c05cee8fa839854c6ea2aedbea12b9ffbf2747beb20f6ff6d5d61c9e4288fce4d7b4d81bb48d47501ddebf12a7c31df247013f29f541f4bb0e33475b3530321 +DIST firefox-91.9.1esr-fr.xpi 557617 BLAKE2B 885ba7b74f7f0aa9dd0f58308a3b20d19d915fac5b3e1ece262a7d5195c894048c0a5dc639156e68006f1eed5b18b15e7df0ce2eed6d8f1db0f2a78e2de4ed31 SHA512 c19ee76fb0eeb93fdb7e2f50e395324b4e545ef7adb707285f7799c754ee2b02163a593197e66f5b0c4ad04a1f83ac1cee68e5579039120f5d56eac954e16ce1 +DIST firefox-91.9.1esr-fy-NL.xpi 543307 BLAKE2B 9c266fd328450d473752e33613bff9a20745c79d84eac3e184b90ccb27026f56aa38f66ea8f6ef0853bd1187cb306a0838a8c4cb093cf8e3ee83d2245d558f18 SHA512 f8ff4d61303014371e8bfa3fe03aae0896038446ff92c026005d3945385da18acff3cecf3d2d105fc36a6abdb8310016236a0ad1099412305dec803ae2ab27d6 +DIST firefox-91.9.1esr-ga-IE.xpi 459828 BLAKE2B aa63e6a18ba74b0a7dc77fc882739356d1261a1b80afa57dfced0a558371a88db47134e2cfc9c03d590027b41b159ebdb0dec262b5f2cc6e6f0e27dc86765829 SHA512 f223c06ac8af6e78847d8c4cda932ec6512e46d8af6763fc2ef5d2bb83d523279ac6e9213eda79a807e7da69b8f9dc36d27f81a16fc9c56f202d64cd5870e34d +DIST firefox-91.9.1esr-gd.xpi 530843 BLAKE2B 4d28655cb29ce768d30ee31b18e5f108af8b330e402d5e9419baf517322325efad394f112e2aab2f3e696287bb15970b010e98437c60d8e18c6b49524938a21a SHA512 3c9f70cc62a43168d82d912f70928016f75129341a01c2bce9c710fe8028baefb989eda6903b1d647fe1fb6f2e6d2d65a6da257cb8270fc96519861de1928b85 +DIST firefox-91.9.1esr-gl.xpi 541294 BLAKE2B 7453533acc5886a09ad705ccbccbea86565fe4bba5f307239dfbf538e2668733009aa2d4fb188bf22ed6b3df8b66f0ea5da5b2d3cacab71ff7ea46e55c4777c0 SHA512 6473d9e11f2a887c43d89e7bb6480dd1830c3f28cf9f9c59d796952411d3d57b52b7570b737cea96b418969d8c64e41c4bc9cff110defa42f67bd345caafe07b +DIST firefox-91.9.1esr-gn.xpi 557605 BLAKE2B f145d4bcf4ad293b671570f783469b598d977f1faeb75c370cae15714c0800f98e285d7775413769b6b634943b5a34e593f813e099a19eb8859bb500d981987d SHA512 061aca44b5551af76d5c261aafe980b4e589dd8f4cacdb6facf93d62d0bb72f4b186ebe4badf55b19f1011464314e201b027eddec7348a04d131d5a7a844954b +DIST firefox-91.9.1esr-gu-IN.xpi 529553 BLAKE2B 790c509d8d863163464da7049a61040b1abb7f39713850d68565f14338066b3595fb8b721f40f0173d76740bae75377f244e960d8138c77e6e80293da4b1b212 SHA512 7efd3a293bced416799f2d58b668330d41f9b7af74cd7307652d3a459e596fe5032b39a5991f71b1a34a3fc73393fef0bb287ea26a6db02a3e0ff50564e6e28d +DIST firefox-91.9.1esr-he.xpi 557203 BLAKE2B bddd143ea31d68da53fd96b5cfd569b7d5111de3b388357f2cc4b083085a88a001640817f0a92d2793bc4555834cf821b164cacd62a520c9c3763a34d73bbfc4 SHA512 5c49ba571476c7b50270a76b8fa7bc1e55037a189387e4b9ef113b755a0acf8262dda17193f4ce7fe9a75e1b2bfa6cdbca1fc60b66cb09dcb3b0c89932899d25 +DIST firefox-91.9.1esr-hi-IN.xpi 560656 BLAKE2B e9d8b8c4cfa926b5b82f4d57dbe8f3e4d1b46befad05ad11dab7f179e31318a5cb289cd2772fb264fa02ce9c9372e9eefe93a875d61fed048e578eea85f6fc89 SHA512 76615c44b23ffbffd929734ade318e2bf339a92e0ac2f4196d547eb677e23230fd65996f7b3b6fbda9bbc0fd4b90727dba9385bbb0129eb7c7a3f37613cfdf8e +DIST firefox-91.9.1esr-hr.xpi 530056 BLAKE2B fe5dbfb8918c7ca02834deed5210ff332d92c40331e881eb0c08fda6f2c481e054079eeae9fa3e9080d36d12a233e3262d33d9dffefea9bc16464b15cafcb462 SHA512 c1bf048d5793872e73369b64e60776a2aea64904b330d92a32027948298465bb0950dc18928ef9878fa0b879b47dd32557865921107daed2a5bc7cee1031d514 +DIST firefox-91.9.1esr-hsb.xpi 562620 BLAKE2B f8b9f9b2db9c6df9aa8ac2f553e4b49721af1456d5dbfab4a04c60e87207ab1152684afae7db4a49fb5e6f716e16902eb1fcbb583f6dd40f5a0c7bb01d18245a SHA512 e37de9afa30e7f7bb7595de2277d059c9c522f79fc78a0e1fd2512b4dd1886cd45992b0b3d3656b53a52829ea6e0d72511d1af9231a4442ab0963e46cc2d8ffa +DIST firefox-91.9.1esr-hu.xpi 566074 BLAKE2B 91196be1e199d3b2b3bde0e8fa49dcf6c26cd2ad9266fad575482a0d24133de208b16095d075bd4ffa5cf23c5faad17cdb10966229d20afbf4954124e9bb2092 SHA512 b2844cbc1c82cadff2b8a30f10c65b8157cb60b49a9d16b7b318f2e18f1b29c98b9544666b2469403d3da3ccc51bf2c6a692b88522e7f47e1888dbe9b82e7b79 +DIST firefox-91.9.1esr-hy-AM.xpi 579763 BLAKE2B 32d76dd9d59a8063ef9576a4ea736a417ee16774d44199b67756c6de429d79e47d30544f4ca908127769c967c5b99ba3668ce0d803589c72ec6aa5c22ceb6ba3 SHA512 fa2f16d6f79aa59f046e10e0c0897ef2d077ef5082f782fd09159360c4a89d64504b63bfa8362c7e6db780c4bb6926e32b9caf352ba0ad6c7e270663a70382d4 +DIST firefox-91.9.1esr-ia.xpi 532145 BLAKE2B 6282e25ecdbedea796c91fc3d71697d21a08dd405a390e499f52fc339272aac6b61e5f0f580c5061902a2637757adc53d6e75762e397b6321f99d5fd9cd90fbc SHA512 d97daec38b31b1c86f3a2589713e33c08e574806ebae32d132e5579b9713abdf9d6cec77b2b8b687e36fe2451711d8ea58cd7974b5b5e7077db7cea591f53595 +DIST firefox-91.9.1esr-id.xpi 519823 BLAKE2B 38bc78d5b7f6fe5079e2a7e96d2d50b21320e895b7b83e9e5ef9c8ecd0ee36848afe28ee19fdd65ae81e34afe4a1754a43d4b3a3f83455333e004b9405b30271 SHA512 09af676cedc70d678e42ca19f4aa3cccc756b83abf0b8e7e49501c2d01ff803c61527850f6be054f1e04cf303ae0af8d874ff1720be16f6718901c93bdccecb2 +DIST firefox-91.9.1esr-is.xpi 470231 BLAKE2B 7d2ff1ae88799d66834abf798ff7e5d5b6cf1ffacec67c72fe65237af3dc00d3fb5b024934dfab2786d2d11bf157b39d975af5581336b3cba0ad81eea0922bdb SHA512 f686caf87fdf376589f3e123b6f8cf9deb834bf194e3daa69c02ab8f0fea3adc149ba743dec3b5b99cb80c145c35c448dda944925bdf2058e09ed544483f2706 +DIST firefox-91.9.1esr-it.xpi 459088 BLAKE2B 3b9587d1e5fd81fb1611f57b8ae128b4027193ee467bed3dea1321b4eca02a8d236b28bba7c1fee9e2ca67eb00b934bdc8239b9da51e12551f59013a036ddc4a SHA512 4bc7a22143fd625d86fbc29413012e3a5a7a02445c2a2475e318aca6a8f835f134b88aa6b3e96c955226524e8b0afbcb15daba0de23001b2cf63e62ef9a015a2 +DIST firefox-91.9.1esr-ja.xpi 588075 BLAKE2B cebc4be09516bb221b668e5534b6a76d5bbdc3b99ab5932911666aa7787bdb281eed3f280f76cdf2d3675453e2a691230fa13484593afe17c68225a44a72171e SHA512 2d02f6118beed171c89521140184028c9e435f825e7b060fbb918ef28eea066a949a2b6e279d1c688faafdc0792f714c087e8755e29c6bc12c1acdd8b69ff764 +DIST firefox-91.9.1esr-ka.xpi 592252 BLAKE2B 16aed9cf86bbac3766a8d6e0093657960b339fde38dc5087234b979e767309662faf0640b5b5a042ac45b96b105c3280b30bd607a8a1bfa40920aed5cf5e765a SHA512 2c4c5b0a8c7ea7dc966a35ef11db5d784fa73087646ec011900fb59a3b5c5de2617d8c5155b749097764841e1350fb0ef8bfe203722cee5114f6d807008b9ee0 +DIST firefox-91.9.1esr-kab.xpi 545030 BLAKE2B 59c13345e0a6bdebcf8bc038f77a67678aa3c4903af45a86dce6aafed90388fec171b7c99540f223bd795e4b836be64ff55f19572d6880afd6cdd50f56e449f3 SHA512 c752b507581dc83638a0fc996875d6d6cf65baa8a5bcbb4a1ca7b26f048eb7647266d00bee3dc96658c27cab303e01fce85c26e7db9024a5e1b6b8a1c2a7176a +DIST firefox-91.9.1esr-kk.xpi 605562 BLAKE2B b36b641309bfcd249b3089d7136f3134db59694fdb0c739f1c17d1793b095fd56a4c95b3c23827b127cb9b888845fea1f6c6024dbc047e6c593d802c2e1fd351 SHA512 9a44cec5bf6c8215ae31f378f78db6b46451292167b111caec08242da85d8e82868597bfa255390238bc032e22eb9bf3cc51a73cb72e515e0b39eb05f2e7c889 +DIST firefox-91.9.1esr-km.xpi 533112 BLAKE2B 3ae4a8845f25c8cf027652b64225398c77d7d6871b25e38b288117b6a34ba4223a7d1237dfc4c0011e3387d451fe98be7d55a48d68754034c95fcf0c43fa578c SHA512 b652f31ad1bc5c699e53b2cbc74ac5489c8a564e477a270f646a5587f854ef6da20d69955932291689ef64be5debdb79106b099f9437becba14ae93195dfe74d +DIST firefox-91.9.1esr-kn.xpi 498971 BLAKE2B 0bc2da3c752d1c65f46b476150eef74c80de90a41c52f4a1ffce2f9369635a5ae100636477049dfc20cb99a8b97dd2c68ca0ab94c252b8930b103f2fadc39d2e SHA512 88aa0a85af340af45233e317d5da9f541d12352e20775c35f0a1920be83308167db2d1bf75078fda88e48dbf15670c02125c62e6dfeae866ec15262049950175 +DIST firefox-91.9.1esr-ko.xpi 579067 BLAKE2B 5aed9fea4a2bac4bbccfc34725eca03619736a4a2a9f6dc57b23a6d7a8d295be32e21df0f9614e289a2d7d895d1b6d6e5842ef232dd89d369de6e72ebeccd4c8 SHA512 4408527acf84fc18a1c26aeed2317ddd28060c2d25d038264f913770485044e4cd2017eb5a5ef9d5092a8ccf4451ee8a4053a5b91bf5483ec83f9e63bb7910a4 +DIST firefox-91.9.1esr-lij.xpi 470170 BLAKE2B a3ea904016e490786916064c43d2bbb776af8f8091172d2980d7ef1f202aa17c063fbd687ef1f2157b0f818edf1fd1884641d270bb433e4bb295e1e60bb1a84a SHA512 dba8018f18d28245edaef1a0c4701d495c18462b6ec2ddaec6435277e7eb2feef070824725a1436ac27f00f6e9c2ec1b9081c6d14f6c38ee1bccafa59cd72d2e +DIST firefox-91.9.1esr-lt.xpi 560116 BLAKE2B 9aadc232586e23bd6919ccac383d1ff4871c878ce7cc0b7b9af6e3896e81b0645928fbc679e43a1391c5ba9ca98215b816a81af065401abb67c98ca051089a98 SHA512 59672597ca224c0132e99262edf6af64a6a81b96bbab0e4a5e04c981a2eaeb0b1c4ee142e5648fcbc3f69f666c318b5d3dae88a5b9e94b0901dcd22f361766db +DIST firefox-91.9.1esr-lv.xpi 462455 BLAKE2B 65995ae3c6c91f2003e4d87baaca922cc053bd0637c638f3ffed7b5910a937cb973f5df33cfe4b1246880807acb849225d22900c7653c676a4e31a8ad67efe7f SHA512 d2e891ee66a1205362c2fcc7035582358e0950d3a3643840662feeb9ddf4c51950357d56a018ac4c3962a237746aa19eb443a6fb691741c5cace65e3f3bde224 +DIST firefox-91.9.1esr-mk.xpi 465349 BLAKE2B a80cd7f156d0e4c49d0cf2fb4085726c60fb813e37f55e29f3f70b83cbd005e6d70142cbed84f0c4e2005fa30bb776b9003f8b894edcfd0cdc50da48cdd1f5b9 SHA512 c63a3911e551111d91d6e9202e15be504b807b26e0ff06e697171cf2d0dd1b75ba61b49366d499aa197b5ef1ced74006b0109c76fc2ac3d2af6b29069442d0d7 +DIST firefox-91.9.1esr-mr.xpi 532118 BLAKE2B bf2b584486f166c7573fbc755dd9d9db448e1f2cdab2d603e665c24df1c8215f1ac269a1d84a928e6653450bdbcd5623bdecaeb3b1ab56a30f858bdeb6abdb4b SHA512 6874d5d052f33f3dda355224326f1d5c67d0ed1412a56af90ea978bb28ef4c71b56ef3a2d8a5ce1d36c817e0cb925c597be90b541c1bd3582ecaa9f366fc314b +DIST firefox-91.9.1esr-ms.xpi 447342 BLAKE2B 5ceadaffb34b36637468bce4d11f65643b2e261582f641f39ad863d2fe35f80554e85cd4bac8ad58d97fd58306063a6e60d5226260c98e0611f3f3830a09ec54 SHA512 cec5236c5fe5b185c5f2e345997118d4f73720c63f3a2bd256e10f81fae3b9e5d7c6fd91221cbca49c04538dc975944e82683f93986a574e8dd5f197847fc2aa +DIST firefox-91.9.1esr-my.xpi 516304 BLAKE2B de84ab8fd66959d036ecfc64b5dfae1b35a03c626380004ed61bc64f71d115d07b782728dfd8312d36db1671521fb651ca518c5e4ae50c9c5572c9af0b4b170f SHA512 c943f9c09395121eda413a40fa57590f1e2f54e98d4674b380dfe51aa7c122ba9b662ddc71debd6444fb1a94436bae74a36fc62a36410e7229c95ddb29eba9cf +DIST firefox-91.9.1esr-nb-NO.xpi 529420 BLAKE2B c925b38c737004df912e1480e083f9ea0ecd77ca6ce66a1ff16d7c1c2476407e808d2992f666fa0cbe54062858f19dc4af46db6eb11f82ff87eb2f28a93ae6e7 SHA512 08b688dfbb92bb78ef56f94982b0292470a459f449bed084e1495ff3bfa135dded5b973d135af64840a473917e9aaccd35cdecfcd0477c761918c2238bdb3145 +DIST firefox-91.9.1esr-ne-NP.xpi 485210 BLAKE2B 24b85fbc2f42be9142ad8863b875e1223545010f845c842401964b2dd10368b8e2e7a6b72d7613f8c2f4f789840ee13d0a7a420a30d4513f08d7bd87290395f6 SHA512 c2f930c464990b78b2220cede3c10adb3412a17e781822a7e7774fda8508a70478b9cdafc11fb09042c6412f01355015855bcca8e6567cbd67897209675c4274 +DIST firefox-91.9.1esr-nl.xpi 537385 BLAKE2B e84e999c1087ecb111557492b0f328bc090f5017ed55712e346b4073da3aa85e576406ac8f172f9ca170e94741dcbabf9fbc3b1f4d3eb021cc95081cce6730bc SHA512 73426bc62d0698dee1925bfe38eba79cdd13fc547a3ba1f241e05eb7acd3367c1cdab3927223c9496f142bf01f56a9b9e6231b578f6628f548991f8009ec933b +DIST firefox-91.9.1esr-nn-NO.xpi 531672 BLAKE2B 50d75604b7a680e187c03d716fd818210879b4c75c0fd1e2dc37020f0afddb311c7fbf95ecbb5b792aaa72d7ab145a0ab4aa6b5ecdf23dad58e19979b203ebda SHA512 acf5b91d5d16e06c91309b64943f1333e6d0b3ce1471578760602865d676d7f82443e6390eaa44cddb9b90756ec7ad5ff16e61c61097880bc36b44ac60002d2f +DIST firefox-91.9.1esr-oc.xpi 552948 BLAKE2B 803acee6a14542099fccc29f9f05611783b45627babd73b5ed381eb29aefed03b1eeb3644b5a8c2a77650534dbe246d51724a70a2b42321d2b9cabec87461ab9 SHA512 9b78464ce4c4385506ea3725e083cfd6f897d8b538e356f1731fb8de4f9d8f0fae8b1ba24dba806a7a62f720775bada419a25977090d85febb59b0b660d07c43 +DIST firefox-91.9.1esr-pa-IN.xpi 595973 BLAKE2B 8b40e6e92e3f84ae14a841c2f80359de437b45bb41cfbaa957afdb8af5f619219b568cf2b207a71ae793f9e490b7d1f73bfffff683daee584a9f8c44e05627ef SHA512 8abd72654b7f6eda8437e6dadd28fb7d1bb728a44c132d3a79349fc3bfeb5fc771371034ef7f25743e695699f18431314566ba51ef377c26c420306d76ca0d79 +DIST firefox-91.9.1esr-pl.xpi 555620 BLAKE2B 66ad201404d3bf666df0c943eb114229a6284f6f018958c027f7893f2986955ead2b04493aa39bf2502822f8c0c0a6f91dfb5828abd9ba63e31db5618c0261a2 SHA512 c8b760307ff30eb66849a32894828e05430c1f015bba64259e17a04c86f8310622a97336b1764f2724f2fe572650995b454c1a34cf0fa9e06af3ead723c02cf8 +DIST firefox-91.9.1esr-pt-BR.xpi 542614 BLAKE2B e4611fffc38eaf573419e309ffe0ce2a7809c9cc3ef6c16a5a0c86dd79eeb97fe5f558f5f05d0c53823231e1a6c8f1d2e37559a495eb2aef5f3bdf4d9a16411a SHA512 edb2a0616aec6b66db75bfbc208113b4d365a8afcb5811fcd178774c27231326a5a239fa994f9d9c11bf3ff0d9307f826b28355039803e09e463ed055fc432df +DIST firefox-91.9.1esr-pt-PT.xpi 546343 BLAKE2B d8270e4685cc9bf95a395e6eff640358385b74b8e5edec0945b9ebba8ae0a511801a87fe2da94092b2abd5726c2c8ed41ad31f13ac688c70577ed9adcd5b4b3c SHA512 f1e6d2fe8f8faf8e584153c5c6a4320270876933acecea9e52af341cd21b17e9e34cb7ce7ae330e3c4312b9e44d4a689fc785c04cc1d454a693d46065f456a29 +DIST firefox-91.9.1esr-rm.xpi 537373 BLAKE2B 005c4fb619272a3fad78737a4842327af64b5882b0d22e541161ed4e0ea3d15d47734c37cfa533769e285a8e8e7d57288aea34e2f25fc7f243e03fa95b6ee6f8 SHA512 f74ab71952e7ab7dba7641b1ce37e2bd2de0d3f8de0ef2e30c57d85b1de763a301839a9401192e717068a9ac97e23d59815f73d1f4b1e1a57663c08622d3fd4f +DIST firefox-91.9.1esr-ro.xpi 529329 BLAKE2B a8941be0d66926dce3955d09367fa84d43910baf4d96a50a73f8a7bb4a83b287d13e79a991753a8bb2c19eb90a4b4ba7ec173aaf6befc3974b2b03488bd4932a SHA512 154a508357aac7ef127fc43bf09d35ecdebb93696f317ff8ebe5fe020ef489e09232316e993f575f8d6bdb4357a137bd5f88d0644e2e4f3a9a7beb9a2a5b6603 +DIST firefox-91.9.1esr-ru.xpi 627116 BLAKE2B 7a1657da615e62c58220b2c89fa7bf8e56dee3718503e267f0d6fcc91365d2a094ac4f62102883f3744131ae51eb2e98fb6e0befd9c522ffbac68cb18c2afb42 SHA512 1f3fc8e30eacfce4ef422882cb0dcf7f71a42135a80e8d8c62fdfe22dd76d6eaf717d1367cc60fd9804cdcffd417d3e0228f1715bcf375c6333009ea5dc1cd5b +DIST firefox-91.9.1esr-sco.xpi 504858 BLAKE2B a45797d067999eb63f2cb658b43418c6575caa3b87294cdd696cdc416426c5e3fff73ddeb2152ca20011af3ed6098dae8bfc24b92e6391086ffd2987d1fdc100 SHA512 21e88f7d60c19a8808ef64ff76c41f29f6a7e69d8c340206729bc8b2e73f1de1d7df74cc969de8a5e3aa5cb59533991631e051b653f94a96d1f7bc182920d493 +DIST firefox-91.9.1esr-si.xpi 487947 BLAKE2B bb8a8f31f28ebc61ace748912ad473607de504e85e64dd345b9b17c1877fd7805c804965275770f09efc52630ad6d4dc07663b58d23840001c275febc613c5a5 SHA512 700a2c09911c4282fa255a0954d6cd888fd75e7c9cfe73291705f99d66072946085dd152c9eb91787a8ca889ca4f5195f21cb078dacbdd18a204c19cd577c8b1 +DIST firefox-91.9.1esr-sk.xpi 566483 BLAKE2B a6072e81a755e4844cdc4023d09cbb46cb4c612b57bdaaa58d108fa9a8a7a784eeb58aaa11cae9e8a1b6a24fcc93da45f89d5117421d115d8a4feddf9843b3fc SHA512 3c53a19f2885b1095d205d1eb6c2bcb2d0970d23c0c6d458d5f7a2327fef8b04800bb0ed5bd196aaa179ea5d2859bbcbde91fbeb95d9dd6fc66a8938a41f71bc +DIST firefox-91.9.1esr-sl.xpi 538004 BLAKE2B af47d79db52e8c2a2dd785e504827a2186bae8703df68567e585653d64dea3167c7eefee6eafeb115a2fe1e7681741115990ced597d295b72999824c135c4120 SHA512 af1092970ea2bd7adbca1f8a84534e8bf64d77e9ae4c1615f9d5fdb6fa2e0788cf3a90c91edef106be2d8556d1371fc63661518132e5ce431256825a44a5dd58 +DIST firefox-91.9.1esr-son.xpi 425998 BLAKE2B 487df6aa909c87bfe92228f06d927bc6a8457620c8f22efb09bba602623d7580afa58601bf06fc5d78d195518d44366b73221cd6f65b4a324ec08e16edf9216a SHA512 f5b162ade2655ca6f287f7a9ef1407abe0cbefd30848bc25c3e30088bc44b98a44859a0ba25bd17d0dd229af0718b648e7bef83562ff4e8a4972fec3dea76dbb +DIST firefox-91.9.1esr-sq.xpi 555994 BLAKE2B bb821d5501db1c96dfd9c6ddfc991c87cf63a8f449ee01f1bf0ed2d61d40889450831de79d33bfb6f15561e4d20fc869149e0f5a7d1eb5fe48a6d0445a1d5626 SHA512 6c4b8d9cc05a4f755b842b6bcc1f2ca1458092e80423db463251887cc8190291a24ec8b2e559dee3c9e5fda85c0468d4b516b67e33150724d19e980c4a367648 +DIST firefox-91.9.1esr-sr.xpi 586082 BLAKE2B 354959cac670b32a5f5d2380c4114f35f1cb9b2c52b7df34db3d1dacca167c54da1f30a8f5606522bfa6d3e1b0cfa0a08ffcc137c9b0d8c6a1ef0e63e64ba37c SHA512 b4a34eaf37b48a52f6749c9fdbed0a9c41e2d4d84079703bc13e3a104640c45893b4c9174eea73108eda3a58a07857272d5bc540b9319bb06ec67d50c861b8ac +DIST firefox-91.9.1esr-sv-SE.xpi 539963 BLAKE2B 80ab209d720e76a174cfe41d5c7310a9b0ccd85cc57204c6e43a1430536e03da14fd76e0f8895fe7255c99d3f2d0278162b35c325c8b38fe6c496ba82ee214d5 SHA512 bcb2d7d96684017ea2eeca52f052abbd692d7cf103ab3459885760bcd2eb928a580a12f3b11e54ddd7a548204aa44939affe69025be81ff8fb523c5aff54e381 +DIST firefox-91.9.1esr-szl.xpi 509816 BLAKE2B 099c3960229cb3b5f8886fd2e86fe986fca70e154ffe24e3ed74551a53b93bb2e2e2a7bf8ff575f10a007cef1c9ea15ed36d91d309e902bafd6e3f27b521f11e SHA512 3bac1641db53469828d91d825e7cb02c699b97654410a57d8a021501643fe258a5e83c7aa25d09cb54ea915c0d41ad180a265009d103dae61e3a14311c153032 +DIST firefox-91.9.1esr-ta.xpi 513811 BLAKE2B 968aac9d23823537f5d377cb684ed8f95ae22a2d7f9807ee4b5d805ec51253c9f8962c1cee99c281b59684dd85cf8d8a8782554b0869fc19eafe70d462c92cb1 SHA512 3d6b2c63ccc2625ff32d0b2c5c4203f505f76cdee2a45c9188c15559ca738f026ce89c5611505e3ba399625b51d656f55a3ad249d81964a933b911e911184141 +DIST firefox-91.9.1esr-te.xpi 549966 BLAKE2B 015a03521d9affa8e49e9bb19179bfd51363ae049168ca5fbb8f290ceaeb5bcba2c116617c16f7c48e4d3a6603823b2da7e88883fe61eb86216b3b60765e1a5d SHA512 3bc521c96b83d2758546ba0610f90f7d61c109cfefda733e4a7c313c6a3be3bb9959af9c329c4946f919ef35feeb7d75cabd20b2c8888f6112c7f273db69b9a0 +DIST firefox-91.9.1esr-th.xpi 607071 BLAKE2B db26efc7d518b56a453c812274f541dac2dd60c93615bf41e9e4adbd177b7d8d5eb35ca0d5177a663152ece4228a4cc6d71fec86d95c7991e60f44e9914b2a2e SHA512 3f84af32a2541b7ac6c3bf3e0fa94f0f9571b7d87f6666edea74968b4756eb16d03896ac59ca9e1ace723f7a9b82826cfc0029ee6699a640b602c6cdf3da78c4 +DIST firefox-91.9.1esr-tl.xpi 516119 BLAKE2B 0573afd14e27855451b1d2535e3d2b6bf4abaa62b70104690c29fda2e6f123817c5c7742dccfe9254b5df1efc78064c8a066c828ab512487fd07831f573d14be SHA512 db2611e587850059f7ce3aa816bddd1a63690a3d8b7f8fad841dbe9c1320ea9e4ce0cf21b571a1e8275969b6bd20905a43939d49e637a4b0f37fa3911a3e81b9 +DIST firefox-91.9.1esr-tr.xpi 553679 BLAKE2B 6144533323d7829b0ff90735bea858bd072f3568bef8f3dd5b26632e1fd28384ce1d417b61601a9573e721071d2f4d6c45694197d132594241686c97b44779ce SHA512 f76ebf7635bd37069607a243302afc1352641b3e608fa636205f0fd95290eaad3eb759d335baf0dfbaf92a951ccb600d50464c40192a91fda6116969a618c5ee +DIST firefox-91.9.1esr-trs.xpi 491089 BLAKE2B 77e305b6b16feda88921b09b13e905fbe17d8eeff20d0bf751d7ba002e947d014df87057383fb9ea2ae08c4b7c476294c15e259f6bc283797f41511673025bd7 SHA512 1c7d345c07dbbce80421fceddebd354a5f8bbb022f0b6c5cbeb9017b8ec4752439da966126ffb3c8ce616c4a08a3442e34c47af77722f0af575b8b979079a548 +DIST firefox-91.9.1esr-uk.xpi 620501 BLAKE2B 34a9646628b8f6d4a1f702111ba1f813dfe58d7cd264db23b5c911f95fd01d1424f9b984a8006a0f58130c9e20c9c6bdb8acd69a9170fbb5052815ba4732f872 SHA512 2d1b27e661f9154f67b5716fe57599b3f5975a24a95bddc9e7f5c8569f279647754d1f6a96945edabc15a5f92298298047c3cfb486ed212483a8d9678b75e87a +DIST firefox-91.9.1esr-ur.xpi 557306 BLAKE2B 1a4f45153d2db372f59c07ba3fbe25ead2b8d07e63401166877d21b7a0208d923581df7ebd190247c601010c140279b85f59a304b6a15fd533de66e3fcec8963 SHA512 f2e39006b8eb1802659fb5e81f30e142e8b56afc69fb3b3552ccef590c1b0068436cc46604387df377c21325300bb9066168e7d21a5b397c630b19e70a63de65 +DIST firefox-91.9.1esr-uz.xpi 466870 BLAKE2B 85d035d8159620d674212b5d590e4f2682487816108919f2a4f92f654f6607bc9a63506cf85706397643d1a5124a5233cc96ac2b4b53344d31b984dc5a6649a8 SHA512 5792f04ce968a6700c6a3bbd227415c48e38ccff49f27a54b147e93a5a68629e438ef670c04047121a9d916fbf44461eb2e3f16006a11162bac50b60085a788e +DIST firefox-91.9.1esr-vi.xpi 573493 BLAKE2B 283d5c6f13dd0fb4263c44927b699298fb47acad8f9d12e6c3ce81ff81eb5cf1e16f1d178ec0c7bbe6dc75087a63338dd5bde533565c122fb91e36877d969874 SHA512 9b1ce6ae44fe4ea9d0999b144899e12ab9d1272a8a3254b97ae60a0730bf3ce5feec8c8242edd82a5a8fa936204a91f02e9f70a8da61b16317ecaecb9b24f75a +DIST firefox-91.9.1esr-xh.xpi 428175 BLAKE2B b445487874b3c2a3292803737c9ff9c30b6d01598ea46bc3aeb7187e633452ddd9e3b4434851fbb40fbfb33970eddf16751c67b35d863a7a297e1d050bd26adc SHA512 20dddc04ea84ad8c64b9f5b41b12cf79a880677a020ad7e65c43c246f580ffa654f4466919a83fc6a0798f3473266c91bf9166ef95f1b21eae59a9ec76e42f91 +DIST firefox-91.9.1esr-zh-CN.xpi 575374 BLAKE2B 648216d3c14cd32f083eff3e14dc9003e4bbfa1a3f0e042ab9d573c2d89c5d937fa3d013c33fb568a0b766189c1fd97e5a648db21b54d47c294571e3bf193b4a SHA512 5b759292e367b8987df8259bd929d5ce1f05517d9472e9436e6860c4a9a21369e70a0c38f601b9e09b94618e6f5290e33d2e45b2c29d0af748ffb5177f24cea6 +DIST firefox-91.9.1esr-zh-TW.xpi 576234 BLAKE2B 99295f79be73b1b50043e995c44848443a3c4d0441b1703c5c1821eb7c3d9c1f7deda75ffdef2cab4f6aca21dcf93ece6fd91356c26b9e9b87df4c65622dbf6c SHA512 96d15cd33e0a0d0b31c6a2b552f2295cbbf7aea2a74d704c4940149bee16fd94d99cb72e9cfc9555f439760aa86d02801f3d9953a9814110bc14a4d0af4205f1 +DIST firefox-91.9.1esr.source.tar.xz 378762560 BLAKE2B 6a29d262396ec63718d4569f37f14f496c46530a3997e05c41c69163e65f2deb382b983cac7adbd2246be9922a644af03a927328cb424bb1e138e87f49208b5d SHA512 d432d559f2c5f4b0bc66a755db7d61585e24a727cd8d18630854b3fb8633d54baf61ed65b580345b13d52b66288aa15ca8ca5cfcde8231e88108241f0b007683 DIST firefox-91esr-patches-06j.tar.xz 17668 BLAKE2B ebe51e06197b70b0f0661724e1ccf2f2aaf0e0eb4576e795963c6a0f9c32f293825b8d2a487dcadd8e5e1cb5db7c756016c50f34e6bc6df451b44e54ef76686e SHA512 3af533a49c5e4a6fdb5be2225256655d402055332ba98f3aa159fcc78c4a9901a541b63d68cb02440f55ede04858388881118f655efebc75b18c316e0ab522a7 diff --git a/www-client/firefox/firefox-91.9.1.ebuild b/www-client/firefox/firefox-91.9.1.ebuild new file mode 100644 index 000000000000..ebbc741090fb --- /dev/null +++ b/www-client/firefox/firefox-91.9.1.ebuild @@ -0,0 +1,1244 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +FIREFOX_PATCHSET="firefox-91esr-patches-06j.tar.xz" + +LLVM_MAX_SLOT=14 + +PYTHON_COMPAT=( python3_{8..10} ) +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 linux-info \ + 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/~{juippis,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="esr" +LICENSE="MPL-2.0 GPL-2 LGPL-2.1" + +IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel" +IUSE+=" jack lto +openh264 pgo pulseaudio sndio selinux" +IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx system-png +system-webp" +IUSE+=" wayland wifi" + +# Firefox-only IUSE +IUSE+=" geckodriver" +IUSE+=" +gmp-autoupdate" +IUSE+=" screencast" + +REQUIRED_USE="debug? ( !system-av1 ) + pgo? ( lto ) + wifi? ( dbus )" + +# Firefox-only REQUIRED_USE flags +REQUIRED_USE+=" screencast? ( wayland )" + +BDEPEND="${PYTHON_DEPS} + app-arch/unzip + app-arch/zip + >=dev-util/cbindgen-0.19.0 + >=net-libs/nodejs-10.23.1 + virtual/pkgconfig + >=virtual/rust-1.51.0 + || ( + ( + sys-devel/clang:14 + sys-devel/llvm:14 + clang? ( + =sys-devel/lld-14* + pgo? ( =sys-libs/compiler-rt-sanitizers-14*[profile] ) + sys-devel/clang:14 + ) + ) + ( + sys-devel/clang:13 + sys-devel/llvm:13 + clang? ( + =sys-devel/lld-13* + pgo? ( =sys-libs/compiler-rt-sanitizers-13*[profile] ) + ) + ) + ( + sys-devel/clang:12 + sys-devel/llvm:12 + clang? ( + =sys-devel/lld-12* + pgo? ( =sys-libs/compiler-rt-sanitizers-12*[profile] ) + ) + ) + ) + amd64? ( >=dev-lang/nasm-2.13 ) + x86? ( >=dev-lang/nasm-2.13 )" + +COMMON_DEPEND=" + >=dev-libs/nss-3.68 + >=dev-libs/nspr-4.32 + dev-libs/atk + dev-libs/expat + >=x11-libs/cairo-1.10[X] + >=x11-libs/gtk+-3.4.0:3[X] + x11-libs/gdk-pixbuf + >=x11-libs/pango-1.22.0 + >=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/libxcb:= + 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:= ) + system-av1? ( + >=media-libs/dav1d-0.8.1:= + >=media-libs/libaom-1.0.0:= + ) + system-harfbuzz? ( + >=media-libs/harfbuzz-2.8.1:0= + >=media-gfx/graphite2-1.3.13 + ) + system-icu? ( >=dev-libs/icu-69.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-png? ( >=media-libs/libpng-1.6.35:0=[apng] ) + system-webp? ( >=media-libs/libwebp-1.1.0:0= ) + wifi? ( + kernel_linux? ( + sys-apps/dbus + dev-libs/dbus-glib + net-misc/networkmanager + ) + ) + jack? ( virtual/jack ) + selinux? ( sec-policy/selinux-mozilla ) + sndio? ( media-sound/sndio )" + +RDEPEND="${COMMON_DEPEND} + !www-client/firefox:0 + !www-client/firefox:rapid + 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="${COMMON_DEPEND} + x11-libs/libICE + x11-libs/libSM + 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 + einfo "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 + einfo "=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 + einfo "=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=( + af ar ast be bg br ca cak cs cy da de dsb + el en-CA en-GB en-US es-AR es-ES et eu + fi fr fy-NL ga-IE gd gl he hr hsb hu + id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO + pa-IN pl pt-BR pt-PT rm ro ru + sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW +) + +# Firefox-only LANGS +MOZ_LANGS+=( ach ) +MOZ_LANGS+=( an ) +MOZ_LANGS+=( az ) +MOZ_LANGS+=( bn ) +MOZ_LANGS+=( bs ) +MOZ_LANGS+=( ca-valencia ) +MOZ_LANGS+=( eo ) +MOZ_LANGS+=( es-CL ) +MOZ_LANGS+=( es-MX ) +MOZ_LANGS+=( fa ) +MOZ_LANGS+=( ff ) +MOZ_LANGS+=( gn ) +MOZ_LANGS+=( gu-IN ) +MOZ_LANGS+=( hi-IN ) +MOZ_LANGS+=( hy-AM ) +MOZ_LANGS+=( ia ) +MOZ_LANGS+=( km ) +MOZ_LANGS+=( kn ) +MOZ_LANGS+=( lij ) +MOZ_LANGS+=( mk ) +MOZ_LANGS+=( mr ) +MOZ_LANGS+=( my ) +MOZ_LANGS+=( ne-NP ) +MOZ_LANGS+=( oc ) +MOZ_LANGS+=( sco ) +MOZ_LANGS+=( si ) +MOZ_LANGS+=( son ) +MOZ_LANGS+=( szl ) +MOZ_LANGS+=( ta ) +MOZ_LANGS+=( te ) +MOZ_LANGS+=( tl ) +MOZ_LANGS+=( trs ) +MOZ_LANGS+=( ur ) +MOZ_LANGS+=( xh ) + +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" + eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole " + eerror " llvm/clang/lld/rust chain depending on your @world updates)" + die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!" + fi + fi + + if ! use clang && [[ $(gcc-major-version) -eq 11 ]] \ + && ! has_version -b ">sys-devel/gcc-11.1.0:11" ; then + # bug 792705 + eerror "Using GCC 11 to compile firefox is currently known to be broken (see bug #792705)." + die "Set USE=clang or select "${S}"/api-google.key || die + echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die + echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die + + xdg_src_prepare +} + +src_configure() { + # Show flags set at the beginning + einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" + einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}" + einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}" + einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}" + einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" + + local have_switched_compiler= + if use clang && ! tc-is-clang ; then + # Force clang + einfo "Enforcing the use of clang due to USE=clang ..." + have_switched_compiler=yes + AR=llvm-ar + CC=${CHOST}-clang + CXX=${CHOST}-clang++ + NM=llvm-nm + RANLIB=llvm-ranlib + elif ! use clang && ! tc-is-gcc ; then + # Force gcc + have_switched_compiler=yes + einfo "Enforcing the use of gcc due to USE=-clang ..." + AR=gcc-ar + CC=${CHOST}-gcc + CXX=${CHOST}-g++ + NM=gcc-nm + RANLIB=gcc-ranlib + fi + + if [[ -n "${have_switched_compiler}" ]] ; then + # Because we switched active compiler we have to ensure + # that no unsupported flags are set + strip-unsupported-flags + fi + + # Ensure we use correct toolchain + export HOST_CC="$(tc-getBUILD_CC)" + export HOST_CXX="$(tc-getBUILD_CXX)" + tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG + + # Pass the correct toolchain paths through cbindgen + if tc-is-cross-compiler ; then + export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}" + fi + + # Set MOZILLA_FIVE_HOME + export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" + + # python/mach/mach/mixin/process.py fails to detect SHELL + export SHELL="${EPREFIX}/bin/bash" + + # Set state path + export MOZBUILD_STATE_PATH="${BUILD_DIR}" + + # 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-zlib \ + --with-toolchain-prefix="${CHOST}-" \ + --with-unsigned-addon-scopes=app,system \ + --x-includes="${ESYSROOT}/usr/include" \ + --x-libraries="${ESYSROOT}/usr/$(get_libdir)" + + # Set update channel + local update_channel=release + [[ -n ${MOZ_ESR} ]] && update_channel=esr + mozconfig_add_options_ac '' --update-channel=${update_channel} + + if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then + mozconfig_add_options_ac '' --enable-rust-simd + fi + + if [[ -s "${S}/api-google.key" ]] ; then + local key_origin="Gentoo default" + if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then + key_origin="User value" + fi + + mozconfig_add_options_ac "${key_origin}" \ + --with-google-safebrowsing-api-keyfile="${S}/api-google.key" + else + einfo "Building without Google API key ..." + fi + + if [[ -s "${S}/api-location.key" ]] ; then + local key_origin="Gentoo default" + if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then + key_origin="User value" + fi + + mozconfig_add_options_ac "${key_origin}" \ + --with-google-location-service-api-keyfile="${S}/api-location.key" + else + einfo "Building without Location API key ..." + fi + + if [[ -s "${S}/api-mozilla.key" ]] ; then + local key_origin="Gentoo default" + if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then + key_origin="User value" + fi + + mozconfig_add_options_ac "${key_origin}" \ + --with-mozilla-api-keyfile="${S}/api-mozilla.key" + else + einfo "Building without Mozilla API key ..." + fi + + mozconfig_use_with system-av1 + mozconfig_use_with system-harfbuzz + mozconfig_use_with system-harfbuzz system-graphite2 + mozconfig_use_with system-icu + mozconfig_use_with system-jpeg + mozconfig_use_with system-libevent system-libevent "${ESYSROOT}/usr" + mozconfig_use_with system-libvpx + mozconfig_use_with system-png + mozconfig_use_with system-webp + + mozconfig_use_enable dbus + + use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme + + mozconfig_use_enable geckodriver + + if use hardened ; then + mozconfig_add_options_ac "+hardened" --enable-hardening + append-ldflags "-Wl,-z,relro -Wl,-z,now" + fi + + mozconfig_use_enable jack + + mozconfig_use_enable pulseaudio + # force the deprecated alsa sound code if pulseaudio is disabled + if use kernel_linux && ! use pulseaudio ; then + mozconfig_add_options_ac '-pulseaudio' --enable-alsa + fi + + mozconfig_use_enable sndio + + mozconfig_use_enable wifi necko-wifi + + if use wayland ; then + mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland + else + mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3 + fi + + if use lto ; then + if use clang ; then + # Upstream only supports lld when using clang + mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld + + mozconfig_add_options_ac '+lto' --enable-lto=cross + else + # ld.gold is known to fail: + # /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.1/../../../../x86_64-pc-linux-gnu/bin/ld.gold: internal error in set_xindex, at /var/tmp/portage/sys-devel/binutils-2.37_p1-r1/work/binutils-2.37/gold/object.h:1050 + + # ThinLTO is currently broken, see bmo#1644409 + mozconfig_add_options_ac '+lto' --enable-lto=full + mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd + fi + + if use pgo ; then + mozconfig_add_options_ac '+pgo' MOZ_PGO=1 + + if use clang ; then + # Used in build/pgo/profileserver.py + export LLVM_PROFDATA="llvm-profdata" + fi + fi + else + # Avoid auto-magic on linker + if use clang ; then + # This is upstream's default + mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld + else + mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd + fi + fi + + # LTO flag was handled via configure + filter-flags '-flto*' + + mozconfig_use_enable debug + if use debug ; then + mozconfig_add_options_ac '+debug' --disable-optimize + else + if is-flag '-g*' ; then + if use clang ; then + mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*') + else + mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols + fi + else + mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols + fi + + if is-flag '-O0' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0 + elif is-flag '-O4' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4 + elif is-flag '-O3' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3 + elif is-flag '-O1' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1 + elif is-flag '-Os' ; then + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os + else + mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2 + fi + fi + + # Debug flag was handled via configure + filter-flags '-g*' + + # Optimization flag was handled via configure + filter-flags '-O*' + + # Modifications to better support ARM, bug #553364 + if use cpu_flags_arm_neon ; then + mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon + + if ! tc-is-clang ; then + # thumb options aren't supported when using clang, bug 666966 + mozconfig_add_options_ac '+cpu_flags_arm_neon' \ + --with-thumb=yes \ + --with-thumb-interwork=no + fi + fi + + if [[ ${CHOST} == armv*h* ]] ; then + mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard + + if ! use system-libvpx ; then + sed -i \ + -e "s|softfp|hard|" \ + "${S}"/media/libvpx/moz.build \ + || die + fi + fi + + if use clang ; then + # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204 + # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822 + # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64') + local disable_elf_hack= + if use amd64 ; then + disable_elf_hack=yes + elif use x86 ; then + disable_elf_hack=yes + elif use arm ; then + disable_elf_hack=yes + fi + + if [[ -n ${disable_elf_hack} ]] ; then + mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack + fi + elif tc-is-gcc ; then + if ver_test $(gcc-fullversion) -ge 10 ; then + einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..." + append-cxxflags -fno-tree-loop-vectorize + fi + fi + + # Additional ARCH support + case "${ARCH}" in + arm) + # Reduce the memory requirements for linking + if use clang ; then + # Nothing to do + :; + elif tc-ld-is-gold || use lto ; then + append-ldflags -Wl,--no-keep-memory + else + append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads + fi + ;; + esac + + if ! use elibc_glibc ; then + mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc + fi + + # Allow elfhack to work in combination with unstripped binaries + # when they would normally be larger than 2GiB. + append-ldflags "-Wl,--compress-debug-sections=zlib" + + # Make revdep-rebuild.sh happy; Also required for musl + append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags + + # Pass $MAKEOPTS to build system + export MOZ_MAKE_FLAGS="${MAKEOPTS}" + + # Use system's Python environment + export MACH_USE_SYSTEM_PYTHON=1 + export PIP_NO_CACHE_DIR=off + + # Disable notification when build system has finished + export MOZ_NOSPAM=1 + + # Portage sets XARGS environment variable to "xargs -r" by default which + # breaks build system's check_prog() function which doesn't support arguments + mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs" + + # Set build dir + mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}" + + # Show flags we will use + einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" + einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}" + einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}" + einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}" + einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" + + # Handle EXTRA_CONF and show summary + local ac opt hash reason + + # Apply EXTRA_ECONF entries to $MOZCONFIG + if [[ -n ${EXTRA_ECONF} ]] ; then + IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!} + for opt in "${ac[@]}"; do + mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--} + done + fi + + echo + echo "==========================================================" + echo "Building ${PF} with the following configuration" + grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do + [[ -z ${hash} || ${hash} == \# ]] \ + || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}" + printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}" + done + echo "==========================================================" + echo + + ./mach configure || die +} + +src_compile() { + local virtx_cmd= + + if use pgo ; then + virtx_cmd=virtx + + # Reset and cleanup environment variables used by GNOME/XDG + gnome2_environment_reset + + addpredict /root + fi + + local -x GDK_BACKEND=x11 + + ${virtx_cmd} ./mach build --verbose \ + || die +} + +src_install() { + # xpcshell is getting called during install + pax-mark m \ + "${BUILD_DIR}"/dist/bin/xpcshell \ + "${BUILD_DIR}"/dist/bin/${PN} \ + "${BUILD_DIR}"/dist/bin/plugin-container + + DESTDIR="${D}" ./mach install || die + + # Upstream cannot ship symlink but we can (bmo#658850) + rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die + dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin + + # Don't install llvm-symbolizer from sys-devel/llvm package + if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then + rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die + fi + + # Install policy (currently only used to disable application updates) + insinto "${MOZILLA_FIVE_HOME}/distribution" + newins "${FILESDIR}"/distribution.ini distribution.ini + newins "${FILESDIR}"/disable-auto-update.policy.json policies.json + + # Install system-wide preferences + local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences" + insinto "${PREFS_DIR}" + newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js + + local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.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 menu + local app_name="Mozilla ${MOZ_PN^}" + local desktop_file="${FILESDIR}/icon/${PN}-r3.desktop" + local desktop_filename="${PN}.desktop" + local exec_command="${PN}" + local icon="${PN}" + local use_wayland="false" + + if use wayland ; then + use_wayland="true" + fi + + 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 + + # Install wrapper script + [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}" + newbin "${FILESDIR}/${PN}-r1.sh" ${PN} + + # Update wrapper + 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}:" \ + "${ED}/usr/bin/${PN}" \ + || die +} + +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 + local show_normandy_information + local show_shortcut_information + + if [[ -z "${REPLACING_VERSIONS}" ]] ; then + # New install; Tell user that DoH is disabled by default + show_doh_information=yes + show_normandy_information=yes + show_shortcut_information=no + else + local replacing_version + for replacing_version in ${REPLACING_VERSIONS} ; do + if ver_test "${replacing_version}" -lt 91.0 ; then + # Tell user that we no longer install a shortcut + # per supported display protocol + show_shortcut_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 + + if [[ -n "${show_shortcut_information}" ]] ; then + elog + elog "Since ${PN}-91.0 we no longer install multiple shortcuts for" + elog "each supported display protocol. Instead we will only install" + elog "one generic Mozilla ${PN^} shortcut." + elog "If you still want to be able to select between running Mozilla ${PN^}" + elog "on X11 or Wayland, you have to re-create these shortcuts on your own." + fi +}