summaryrefslogtreecommitdiff
path: root/www-client
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-09-23 17:30:18 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-09-23 17:30:18 +0100
commit0e7ef53ddcc33809bcb2644d3649617113b78ea3 (patch)
treef1665ac62e9addb6b2c3663e7f7507b84c82a43e /www-client
parent55a7866dd6169a108d3a9e8d6696a970dea8a0b6 (diff)
gentoo auto-resync : 23:09:2022 - 17:30:17
Diffstat (limited to 'www-client')
-rw-r--r--www-client/Manifest.gzbin6216 -> 6214 bytes
-rw-r--r--www-client/firefox/Manifest100
-rw-r--r--www-client/firefox/firefox-105.0.1.ebuild1287
3 files changed, 1387 insertions, 0 deletions
diff --git a/www-client/Manifest.gz b/www-client/Manifest.gz
index 8a939ddbf170..69873bffe2c1 100644
--- a/www-client/Manifest.gz
+++ b/www-client/Manifest.gz
Binary files differ
diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 2f557052618e..b48a68d4f97b 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -304,6 +304,7 @@ DIST firefox-104.0.2-zh-CN.xpi 587664 BLAKE2B 0c210fe7c503a579b860ecc328033b3e54
DIST firefox-104.0.2-zh-TW.xpi 588467 BLAKE2B 67bbf28ecb6f4a8305c551893fde3e4a8771c47d02928fb06e003c8e6badc1af9bbec131759446c76da571084857c27566e90b5bf99dd6f5d024398b5bc66163 SHA512 8421fd070afd584f933b0912e74cfa9f62ee5c007749bbea44ea0a20ece130570a2450463da136ff9b00bea010872dedf47e21aff51de9e21bf87bbae2f911cf
DIST firefox-104.0.2.source.tar.xz 478270500 BLAKE2B 1a8317a2880fd412449f18868b0ed7b5a757083a7622ec06fb48c01314774e5645527a217e38a98279494f3140d55414bb3fbe3c0731690e383aa5b617607dd5 SHA512 bf0d972add11566f5ef6402a22abd82122945de9fa9aab6ed7bb7e41d0843d41948a6d95c0769b0b704c066c8ff6e3f3bf26fcf288c64cd3b3f09a13d4dd467d
DIST firefox-105-patches-01j.tar.xz 18160 BLAKE2B 2acbe25186abb4830db69af6aafee4b63c84e22ba5114d111439f7cab6c49884ab96ce0c62d619d0e8892c84a1fcba7d5e6f0700c0ad45cd7307393b42c14fb1 SHA512 77adbf56f48ba0da5b0e790765a5a1399151337f7945359b861c96bea5e6e4429fcade52a337c04ae2e7dcbf296658ef8c835d48c15ea19491f43137a2159784
+DIST firefox-105-patches-04j.tar.xz 18812 BLAKE2B 13457e8abc4f23b85e651d8ffc9b8d76ea802428b26818e9d969ae432ffd4d941226044e31c54717533b2a531996755aa81ec55414704a7037c81788e4dd37f0 SHA512 c0ef77a99866b26d74a8c789bc70d0519cc587585bb5d32457e0f179d1fb251a0e5f9f8368900f3f14306426d3cc9d68fa6f07fd21639bfe1dd9d8035bfe3205
DIST firefox-105.0-ach.xpi 462391 BLAKE2B 518b3592cb9fbbf816850c04a6ff88646a588cc9e611d8e2deb035b0ba1f0ea54f838cc0315b932e3ac0b3890a5c5a2ac0dc66246d9dec2f502d43d6a274b0a1 SHA512 b4ee588178257cc2bb3a4a782680a00697fe0caf5e5751be3aee3414df08c20ba8feb0514dd0fe53c0d9fee335c38d5eaad226fbe2dca048b83203baba23030e
DIST firefox-105.0-af.xpi 426869 BLAKE2B 31ab4be151e5d7a11fc6ea6ab4434932d795b6440490fa8f68869dffa4c55dbf0f9bbe9ca85e0d71a26f86e34fdeb4bfc11d647bebd60080c274015234012be1 SHA512 ccedfe2193f0dd2b4d895851742b00cdca7d347ca10522a5f1bd32dafe89a4ec030f271eaa22b1f9e7029012ea4c11fcc798cdd6d8f540783aa72336517b4522
DIST firefox-105.0-an.xpi 507324 BLAKE2B 24b911cb0f68c0e0b354fb915ba81d14c1c7c57d7252c50563145b25a9a1f8cb921c83c6a9f58821b7465e9aa168e5c2af9c9fdb51005699b83e8a6c09e063a2 SHA512 e6220b2d71503c5e131ebeffbeb0a573ce48d15cb9714524de970ce52925c40adca7f2829b615924421a8d4185da03b892613c63107bbc7d8a9d9d6e2a31686f
@@ -401,6 +402,104 @@ DIST firefox-105.0-vi.xpi 595124 BLAKE2B c27899ee403a140819545214ec94c76511b0329
DIST firefox-105.0-xh.xpi 435737 BLAKE2B f879915c310fd039863708758ec14da34d38ae5f4db79f03e054a626f2a9214394131f4e2caf4b5a899e23a97aaf14e5f6b338c80333cf648ee9a5b7f58ae8af SHA512 a7256f6529f3b60ba3807f0ed02fd5089aa81b7972ab0918c2822717c672ef3946d236c55dd03292c88a871c9fca665b6d0d2ffc75d173304348d07b56426339
DIST firefox-105.0-zh-CN.xpi 596363 BLAKE2B dfd583934ee29157fb45212dc842135f945b0a05a246982d49c11a1e044c7d75fd501e7ce449336936a4a8115b7e9bd1d3570ba57bd3cb9d5275009c7ac2572e SHA512 0ea263baada245adb5bfa850a83018ef42e9d4f8b0ac4bb8459281d5f179a9dc0a2d2a64505e115ffc15ea37243411b8630d3c83a885c4b84c922e128b48cf4f
DIST firefox-105.0-zh-TW.xpi 597428 BLAKE2B 7fc6a94076a5031292c52de3bbe3bffd463d7ce8ac0ab2fe08df38ceb2c7fe011c91171fe569ffd79c4eaf1d0b1b11688f6c64db55f204d735c43908f2db4f15 SHA512 dba7949b44d3429f6b14525862f4ac7aee43e90c8f9b8485db7d1eef82d37da38c817873cdf56f555481999b0ed32264a76e4430cd65c112768b072226506df1
+DIST firefox-105.0.1-ach.xpi 462395 BLAKE2B ce1c579e09fca70c69e12120744c4c8064fb4c341237cb9dbaab65f0ae7b506d51325d9319694e010d8deb9d882def54e2796f3fd268833823c88471990414e4 SHA512 802acfdb41cf7f08aef47280c4c9c371c5e445c53b95d1d66b59f94d4ce4b60420d468af9efa9d30530cec411b931759b7eb057fb49396bb12897a5ee05df662
+DIST firefox-105.0.1-af.xpi 426884 BLAKE2B 869356a1a29749128266ff2e206310fa8cb3acd88b4b4fa31d0a1f23b1e1f0d13df6b824f4a14522582babb50862ecd04ebf2acc9d9dbe3d35f4a1939bc2fd47 SHA512 a650df3751203592574e358b9f591a8b7e01db86bc3e3ae95765024a42a1afe6c009f6b22d18243bf4e7e976731cc412e972ce6d60b79d2a48badee4e6970880
+DIST firefox-105.0.1-an.xpi 507329 BLAKE2B f6e6d5a3663dd81de2abb949ed8ab04cce2797d36cb7d34c42efe7136a7ee7cb3495ce139508c8704d58c9216a4fc9288710160b71198bedd32008b6e653a319 SHA512 93eb1cd05cc575581ce5fe344564053e6d6cf328952f85b9b5937f5b8af047eec4b322a94c5de254bce4f240cade090591a48372ff402b77562adbf53b422a2a
+DIST firefox-105.0.1-ar.xpi 571517 BLAKE2B 19dc855c7e2a2ec712278858ac98b4101d36ab5cf8fb26c1bb5b7dce8cb7ff5e56b274a32d136cbbe202a7ff5a7c5677a333be68e769f5a2053d2cf4ac106639 SHA512 26324ca59ee6b607c3c811a0722772e4152688ff8e70fe32efc3e15b396f5164ec9594e5d54515d1be98e3b01357bed9f54affdccceaa17fd90b8ea2f278d23f
+DIST firefox-105.0.1-ast.xpi 502223 BLAKE2B 9765d684c3e2b37e1640a73c382eba64351fa99232fae2528bcd293c7ef74695aa16d3fd10412cfb60495d4aa7c5bdf07f118257510da3884413600ac558a679 SHA512 61afc9a174b95ac085b75c39e092976e49d3bfcd10bdac24263494f48e75d6b199988a4aa82227cb23bad11e207e55d84ccbaa58abd9a886141b68fb09c5ba50
+DIST firefox-105.0.1-az.xpi 494479 BLAKE2B 0fb8e49e0c3ef534aaec2c26d18433a984bdafd49059c36490334b6266de452554d0d54515c94220d04ff4dfc7154efd28b2fc5d35b863b6e00a6cb100edda3c SHA512 d623dc143d20b8d3a0eb66833b2373702221d673b4a2ecefa145096d4fbbf0d871770cbea6d2086126a43c55294e6a9af90430d3a4684409e07d22ad1bceb8e3
+DIST firefox-105.0.1-be.xpi 647131 BLAKE2B e33f9263e56b6566adedd496dde6ba3d5f1a48ad8ac13bb841165d876db555a150c57843b95d2c8a0fa0bba898f6b69e9c2dbf3fbc1795f2d327d72664d58d75 SHA512 ad832b9afceec554f6fe89e93b4b98057d13acc235d98ff7aae7596936f070f9fad6da65b2f396bebfc527667cfec7926c8866c65f732814f1fbf334472bd153
+DIST firefox-105.0.1-bg.xpi 587141 BLAKE2B 1e144c7ba8a464e61ebab0f18e03241e5402f34465e7cfc448293b49dee60f4bb01c4dd6078ad173f9231bbbc5a2c562cd21e8349f954811bcad937460025127 SHA512 5ee951ed2a477293d7cec42e76ca38248250bf747c2b0564418b0533ce66f35a78e0bfae261adf132772c3bf7e9e80b9b7f891519d7c3a4e0e35e7dfc713c552
+DIST firefox-105.0.1-bn.xpi 585359 BLAKE2B 17dac7fbe9579bc677b7c4884c54e420d569197750b2642707ea5ffb7a8361726e3d51a2a133cbd1c5285a3961dd0d9d2a3ee31fc85adb69e5f777ebdab28913 SHA512 cbb09aae1383e4627fe6ce14392506ceaa9bb296f94f341b62baedca154671b2679a37f76961ecdada55af123df45b4a859a1693506d6f3e6065b68313c4bbbb
+DIST firefox-105.0.1-br.xpi 539953 BLAKE2B cf605b3ae5e1c13454c720a57b8b3eced0310ad44eb5fd333f0d5cd18d938d5f6db86e31f3a46d73d20df548f1b6ec6b10f9a437e76fffb4061cde278503d401 SHA512 12163f2e7bd0ec958bd70f95948aac07cfe47b71ad6906728f8f0b8a9cf921d26a92aac0faa520d23e09980a127e45b1453ada2a20c054626852ed8a2553159f
+DIST firefox-105.0.1-bs.xpi 470942 BLAKE2B f2fc66ede3a0a5e26b0684d1e76fbaf4f4a6864b448cfb5bdd786ace9435faf11d3a521df243f6d3a103133b3463b8a6190784edb9fb8310e36a855918df666f SHA512 a488009bce63393aa4c967f39f1132d1ad19da7ff0d07d400560d38c2d788e0c4e24b2b1917aa86ed6f1f83a3c6532ad6201d0297d935ab5238019a857b3f846
+DIST firefox-105.0.1-ca-valencia.xpi 546422 BLAKE2B 6bc88951bf265c3ad447b830d050c5f16f5a87f5a67790c79ec35b0e1c377471ce3cb630d2d272714c008588d5c677b507c9c7f903ef4b7a4bdb7eabdf518cc9 SHA512 069fd4dbc76494d958c3f26fcebeed3912ae042e904aba59cce55f02944d2ebe31799e7237638d097562871f12667d34790649447abf47517599c16c595670a7
+DIST firefox-105.0.1-ca.xpi 549866 BLAKE2B 9b725b12677248a9adc693c665b4f9751508df8b3fde58408806d126cd7e744eaf83c0e9bf75eb42ab4c78d9b060c81e79a4bd38cbe3a19269ae0f40c1a4653a SHA512 30ae7eb14f1ca7aec631df450c89cd7d6c36437fdffd140807ac28347b131807a98fc4c7dae50fd3208f37972db287fc2e1d1c2ff303c855b4eb4c8a00165d9d
+DIST firefox-105.0.1-cak.xpi 559990 BLAKE2B d3245f05776a40b3367d4e3d7a20861bb4b62f00b5ac4781573d6401cf89ad4feec8d20a024444f6dfb454fec81a73adf2133fae78178a7281db1af16ef67f42 SHA512 9371eca6655d8c5cb769f1b7009a1d730f52da8ff5b118108933a3097750ce261db6bcd597d226358e8582bfb8f95bc9fc9bf970121b74a752589099e5ffbf5c
+DIST firefox-105.0.1-cs.xpi 581742 BLAKE2B 0a768cb4562bd5060ae3d6f52cf0e48cddcf52ef0e74ab86bd817511f092ded28bcf91e97454316bc02f2f056683a7b208b07639f7e26616975843f8d586fc27 SHA512 bb0d3ba875ecce7992fe799a072f8f97d429c00bafb2f32671a3c84422369275a6939bf7f4dc88746cd2e461309eda798866a287615289a023c072a293258ce7
+DIST firefox-105.0.1-cy.xpi 562733 BLAKE2B a1318a7e76b497219bd7ec4220fa41225b731c504a5358faa32ff06271aae65b34ff9ac2cd7b697122c965cacdf4c9b80499f32993bdae92c70f748ddca3c0f8 SHA512 b4383ee24139d6f956f5da0db7ab35df9a2904b058d232bacc3407222ed04ada530b5abafefad1a75105f1f77ac6bf260b8d50ba528a82764154b9f155466c52
+DIST firefox-105.0.1-da.xpi 553598 BLAKE2B 0e06d83eb66a95b58e950c3e624aa9c36b775760667cf8d3a2a5c7e2875333fcf56cb9b09105422379dba01aedd1b7d0b2ce3cab67e46c6e3524ef7b7bfbfc54 SHA512 639de62d0f0e9cd7e5ed6fbe1de259c863537b09cfb829dce2e68261767c066551762ccb222f9217c86b3c98ef99eb55a17c79f4b7623156ef6870d87be759a8
+DIST firefox-105.0.1-de.xpi 574355 BLAKE2B adc3dc57f9c819f7fdfb7c33f3cabac3efd8f7c898ef1cdfa032d23c74de17ff809e6f9d1e63de2948b975638ba30312e59c17b9507cc6d948e4742bc2591ebb SHA512 834fcf649728c04d9d7c8ef515853a97f5508e9c9e92f3bd8db0c9f2e69d4c573c3058fd1c8212b604b4e75cc9b6c6530ea47e627cfd1dfab44cf37377c53868
+DIST firefox-105.0.1-dsb.xpi 587698 BLAKE2B 004a88885b3a2eecac82217f8fdf648958b94af1ac244521197fe915f649fd09126babdce38f2f31413f888c98e46a2a8a158c7f609307c01c4c3514d52f47df SHA512 8664b259c63bcd564577f5aeaf831e0bfdeb4ec535059d3414b044191f4ae511712772b50e0d60be443096c66c644aa636b38d19407515ad71e140ddc6983473
+DIST firefox-105.0.1-el.xpi 663193 BLAKE2B 93bacd2751ca07ea77816cc8bf38a1746465b50d807afd4101e29e01a79e12848bfe6fd3d31f8ef2eef5f68bbfa35579a3fcb559d4c89b0c080cbc4cd1f1f6d7 SHA512 9393a336b9fec3142c3cf63c4dddd3165840927847ef9066e091ebe43082414226626052a58c099888347eb1f47158a4c0d93e85a5f3bf0e080ad09d240d56e2
+DIST firefox-105.0.1-en-CA.xpi 523068 BLAKE2B 294d1d32bf08dad370c94d0550b8e4710e8580f5bf1714bc45728de010c2a192dcdb768e932d61b5a8cc7a2831ea71737eae1c32101b3529ccd51e6d608cecd1 SHA512 35ebd07c00ef0e9823797d3521b6972609ec4a6012e56fcbb13dd68eee6ca36ad77a4385f76ee702dd50fc099113a3a3bd58e96561b16ea38dba3fd7f1fea6e2
+DIST firefox-105.0.1-en-GB.xpi 530694 BLAKE2B c70d854e3cbf1fa5fcee775d87df4a4a2b9fda239b00c81456dadb277efd04de4f03f010f2fa562ae40b29109aa41235986279d96f18e8b10262d1bb5e28358d SHA512 db90f6c84aef3d184581764e3dd7e87c62f68c51a7312a3d05928568b4c61fd8d9fd543632cac1aa41e7acd46b265dcd4c8689b893203f681013e57ef2c0e734
+DIST firefox-105.0.1-eo.xpi 554048 BLAKE2B 39d7d977234178c67ba8bfb1a923699d12af5d9d0882e4b45af77548df8d64ce6f7ec91efbf998a5bc6862e813d893436d66f0f5d9659deb472d5394203f5c07 SHA512 fabd89263f0f7d65d3f7448f2af14c342aaf668f3a582aa6f26219a3b79218209e35f81ee6de61cf346c6c0f61c9841ab43922209573240f1c9dec266f697062
+DIST firefox-105.0.1-es-AR.xpi 568709 BLAKE2B 6e5dff0708a8011a9e984d131558ebeeafc2cfa8b420733af4bb1decb136c1df40951e30e9e3bb261d1c1f289cff55bf543c88182006778d72693736dff1fe37 SHA512 d3d9e5827e1aab3057ec9d9f79ca62ce5bc32f76d886212e6b64034076c9747fa8f3d75d88ffaa1996a07f93fe0fc35277d2a1f5b5025fdd194d57ef4a51d27e
+DIST firefox-105.0.1-es-CL.xpi 567814 BLAKE2B e84282536a52a066e09d847a8cbdd713c243415fbd8536bb3230b2aa37d55380e85260f3fb0bb9d3539105cfac60f8ae40f5b3a7a4dc3dcd61a125e522263b28 SHA512 2b7c85383640b57b544084b8041f407be622d2a32b16c618ba2af55e36e27e1d2f5da4aab5d5434dd7c258234a06e2e54f403ce310486d71d26157ceacc44353
+DIST firefox-105.0.1-es-ES.xpi 553322 BLAKE2B 76b58f3e513b0a7de60aaaf6aa4de3e1de4959c5a41a244f90e557bd160590e99e26321109972b29fe105c05fe29d6c08fb8d158fd96d7975a1f1b09e45e7b60 SHA512 0b06f97b9fe7623ad27d78a18a23818e82c8632619c33db18e02570d36d337d9aabcf7ce0c5b9674a251d0d455fa65741940d6406cce9a57b726466850cfcaac
+DIST firefox-105.0.1-es-MX.xpi 571860 BLAKE2B 2d587e09c001dbfca85b3f4cb037e6cce01f4a8076f125a2e0a1583a3869a1912b5174fa1f379ae6db5ef5f129aa86f8fe2308d71da1833b9694464e2efc930c SHA512 fde5903d934cc43bd02619026b8a6847f6db9403cb7fb7e4dd89dd5a1c6cbae696e71a60a3d5b5b00e89b5278d33ab03176250643641981bfbdda7f5a408dc06
+DIST firefox-105.0.1-et.xpi 539886 BLAKE2B d886e47dd809fa5f6bc893455a8b3fd766a9ce6c702c2896a4333c5681cecf5b43001a73e64cbe81c220c679ca60bb07a8eaecdc42cd90d616954ff335c169a8 SHA512 5183f68f69588d3c8aba7264be6381c298975eeb93e83b13f98daf8622f8470ff4c0617b4c2f626457fbf5442d4ad13baa3d600057fd86d8fe3b2e37d5886d75
+DIST firefox-105.0.1-eu.xpi 556245 BLAKE2B 161fea54c446be16c08118a31574dd670ccee1da25fc0ec362b20ea039a32d843f3894c8de3739609b71e49cbe5c6b2d319d46306e29475dce84474cc071efbf SHA512 a0d1e937038dcdddad0293f6b9304d7e83381857d0d846e5010b5b350918723cd8c67d5291553fa3926f360d3687a5243a5e6bfadee53eb3fc2edd7f9d0c0cc8
+DIST firefox-105.0.1-fa.xpi 571118 BLAKE2B 5219fabd543b2abc0caf3996f939e2aca4efc2a1f03c924dcc5309595987e2902a21d6a690cc4eaa7de3dee60f8975276c1f93dfe0ae1c7b25eebbf8e34feb4f SHA512 f0ed46bc6d877d257a473149fe4e3b828a8cabc86d4f77c8f1345f4844db3ffd3249757bcecafb96fb2bf2e22a4d345ef0b717be4bcd33f29ad2a83be7156c2a
+DIST firefox-105.0.1-ff.xpi 481136 BLAKE2B 51ee4f4c829cf5ffea7468205b4040a8ca0b4dc8d23f2c499552f590654d379abbb4b74662b8813dd22b1dbdf7adeb26517d7b31ad9668e4e2cf81bc1a057449 SHA512 957a34430b53a4b30acfff228d7457889bbc0b70110e205258a908fc0c7166e9648b32d15243621b2804e0a59841ec955c54995c9d1ce4963ed6c0f3ef9f39ea
+DIST firefox-105.0.1-fi.xpi 552065 BLAKE2B 2fe6535f51ac585a9cd2573a8ad346a62ee6b2645288f38e641d8cda85a7e3fec4b528211ac4c27c91a689d585fc84e1769ac3965a3dd0ecef6f8d1050bcbff3 SHA512 1fe97855000585886931d6f71d01c7f45c191595a3f9d3ebfd342da925a896712682bb17bf488a150fa92a7c20ea62965881173938c0cdcb2a0b7562f2ea2de1
+DIST firefox-105.0.1-fr.xpi 580216 BLAKE2B 25646a99b5dc3fb813ffabb73df1e35acaead0df40216773334b248f48d2ec229f864db6e712162ebbd3e04c4e4a1a3b26adaf01f0dd727457f16bcdb6f82060 SHA512 8ec98573c52bf05baf8d69957d58952a13c10fc8cc96029439a061ab14a3016968ae50e849837f05bc29897dbddeb179f66a4953e9b4bb0e4f606d5d88cb65f7
+DIST firefox-105.0.1-fy-NL.xpi 564511 BLAKE2B e341da66506a4a673a5a005f7e7e27496f776b97e1e563ae4d7a2211b883ba75fe95459b17ee709eb50b683af1c361802424c023c10583d1436d6dcc1eea3e39 SHA512 7392b48fa7c96471bf68390c7d7a00600e442165b20e1b7f8349b2c4ad7917f5c8084057e36dd5238f4064556a4eefb02c978c16715c475183bf2818827ab50c
+DIST firefox-105.0.1-ga-IE.xpi 479303 BLAKE2B 059d5c8a08d42f4defb6772866d47d962d2a318fa5805385d308d3d1a09459455d91d474526ff68914905e5d761f586c7506656b2588dd5971105aaa7afaa250 SHA512 b219078eee2ec8ae9fde1b3f68ad19b4e99542b0f46e91fb59ec15c97d088ba4b85b967fb2c9ead9a882ee0cb9ef7b0c28b59aa6281b60bc8b118389bd55b37a
+DIST firefox-105.0.1-gd.xpi 552652 BLAKE2B ab9c81b8c058bc0d4a6456bee85bcd7fbc23a83323f9a78ba6637dc8806f7ddc2c2c157643471d9b4618f5308a957678e9c8e2c5eafcfaa35cce6e7ea1fb159d SHA512 503e75cfc778ee05072dad305c7fe93dac159d3ed2c041c5f4d296894e9977265a51f8af586b5f22dbab7a2d2ed529674c567f6fa68a3e767d16540b5c2e7457
+DIST firefox-105.0.1-gl.xpi 548786 BLAKE2B cf96dfa6814e534b607ac211641c44fb0c90a883b5ba5597799da216e766604a9ce803d9ef85550cd91a86fcba6683a3b0109b34f67b39dbb6228e02d9a426d2 SHA512 57641eca1b1f30070a8bb6b49e8893c8df22cb0e3764799595b791ad55bc499a88e3c5af68af63cc95b5b70816e1b0e7ac0ae591245b3d7e8d11886bfd218671
+DIST firefox-105.0.1-gn.xpi 579010 BLAKE2B 6a73fca69d57b447b8906b1f300c61c9344db18454ac35b4ce226b20a9dc2af297dd10ebbec2bafbcb6a735f3f734ed4fd4e5a0d8a601f937fb5cc531d23dca6 SHA512 e112e22f3a1cdae8328f55d8bfbf51db26f01cd160b6ada3a0d3cd22a8b5eba6d54e843004b6d88c9e7ccfc40e2ad0d221e74b1cc3be8a041ed6eb2e7ea1635f
+DIST firefox-105.0.1-gu-IN.xpi 536348 BLAKE2B 0de946a1a403d9b8d659725c22512b14a7e40a9967c10663f81e8b89cc46c05f168ea4288944f4ce035e09a7f1e7d731acf1715d30ee498bc92b8e562d55b76d SHA512 4a7fe0b54cb74cebaefde042ebbeeb27db9277fd3cd4fd3ec66221edffbc57766edbe18f5cc968a85d4d37d659a73005f138dbaa0e4e596c09052f2690c03740
+DIST firefox-105.0.1-he.xpi 575466 BLAKE2B 2429e79512023a3d77fc56a543a2634eb991742f45be29ecfb3211a557b60162cc27cc26a3ab86585c36a8ae0d5cb527d80a8643a3bee95cedf4ce678339b248 SHA512 d0dce1ee96e7472a552690f1f58cb87debe531166303e5e975b99be1a1709455c62206020bb4c0f16eba29802d5970d8d6b0a9d046b47838f3a690b8a7171474
+DIST firefox-105.0.1-hi-IN.xpi 566805 BLAKE2B f67a2d781d258bd98cdb1d016893ae6498decf8bf18f86a4a712d96908d92283b13c13b51be8373c6f3a3496fd0255b55c9035b2d33d4aa367afe4d1a0e61f5a SHA512 4b45e6c35471624926be986eb96b6a27f51b851517af69c0bd6e70f13f70c69c4fc159dc96ade081ec2bedb20daf5775ec27dc507bbbba98caeea54922aa2f64
+DIST firefox-105.0.1-hr.xpi 539462 BLAKE2B f881ca413bf77008400a233a659f9eafcba5b38512cf5d9bae3e9e1701cc76635609691fe4c435bd01674c506527c7c63f9934ff1e8780902ec10677a5bc5c33 SHA512 e66af46cda0392b465f9482cd969f871e3600415db573b186c0433957022b7ed67c1117c90fb66f0311dae2b70374930bb17912d23fe34d51ba60d39c85e9b50
+DIST firefox-105.0.1-hsb.xpi 583868 BLAKE2B 351b9caf490e0e76eb18c39c656308d129cde9bbf4df71ad52ceb0d1b3e3342961410fb3999802f8c7ca1646b108f563e5a86f36dfe073b56c8aad74f429bb5c SHA512 0f4e8e1b18eabc8a3f0f02ac1de4dc9c3e3b6b7ac138a7a9c25c5b7b6aa3a5a4bafa0a8d0101b3c4577fd5cfa1f015114b02f25245006a170d212d85e59a9e44
+DIST firefox-105.0.1-hu.xpi 588455 BLAKE2B a593e84c2104937266227b806b910e7b2730e8bf792022e93a6cb3f2f8c999c8547dc3f638ae4d63df179115f14f127ed7f005eafbc85aa34268192574e0ea17 SHA512 15465694c0376210d7656c32c50cf52a0e1c490bf1732adf5ef32c56ed5420b5163874ff905224a77f4a00b504bd960355edd25804fc5be4c3c06b0a4554876d
+DIST firefox-105.0.1-hy-AM.xpi 591360 BLAKE2B 612c3adc14956e41c0e8bfb83e0b4181544678fc08c507aaf2f2a1eb480abfbfbfbb40f99488439687133dabe8917616acd710d14e733a87c726bdf95c537343 SHA512 1bba630b0a145ad58c687f9b24cd627aa95ea3d1520196187829c983112477eee514284a3452dd7b6ad3ebc79130fc78c101c49687a2223e42fbce2278e3756d
+DIST firefox-105.0.1-ia.xpi 553263 BLAKE2B 74fbd55452d514f9b04f119ed17b2ad7d1268ad3f96f1550495e2ace0dbf079c4403b71a997d2158fdfcd864a497db0edc705432abe3fce9599713c09bf89cc4 SHA512 fd4251f058d4ace91e63bb3b276325bef572552ff2502d95e5c302a33fb6d41c497b3cb300430835d164d68233d60b404bbe0146c9db1087ed6fa45a287f18a3
+DIST firefox-105.0.1-id.xpi 550328 BLAKE2B cc5672391fb4b94d498aaf5879c64ca958664fa5b65da829ba31019b66f2d0c9a1e85d2f77dac831f14defe8b3fed4e9a1ba07eb687f78e943e00f23712f5293 SHA512 8566e3d58949968be49c56b8cbd0a065770791693ceb0431a66d4a6528f600e2885cc9f4fd38a163b29532a7539c7dbd143d182076ced080de1e46268bd2e3d7
+DIST firefox-105.0.1-is.xpi 560804 BLAKE2B aeefaafdd1e10ae7d1fd1cb496ca0dfd6778581a2a970a3d8fb33da673a50e830109ebf66fb372eb04c04cbac92408e38b36be2e238d48ce0ffd5028d95c4a98 SHA512 5fe9d1b543f592364d8e5487d7f6096c202304f9bbe211f407866e56ecd88425616c3078890e3722359f156928680ba80b508fc4647aae5cde349cc2344faa67
+DIST firefox-105.0.1-it.xpi 471261 BLAKE2B 053974af8ca970443c3d2a41c16d4e49d0e9ea87f556f950e9ae45a77232367608f41b3f4071316f2287dbe76428bbfd29025b1552d4654776fca17fa3433b77 SHA512 a7c1525046707a14529b2e133eee7de6295c75399f901d94fa66fec535f29fab5185ed20462c7b411f26a30200204c4a054a3f107c2c711731cf778a3835ada6
+DIST firefox-105.0.1-ja.xpi 593772 BLAKE2B 0b7c8ef62406df4818bad282f379d1f5299afbecbb766aed95e02e3383f4e2b3f28cebf8e32335025b1b38832ec1a43e3cd781a929611207369b541a25286d2e SHA512 bc049b6c1c69388fd9fa2c34480980d94cd9831749061b335cb9a1531b294d135a9a3f88fc5cd944e13c20eb38b264e8a162151d99ecd39df2350a0a4aca5902
+DIST firefox-105.0.1-ka.xpi 614607 BLAKE2B 7ec15482e4eb615dc1af5345713bd41ecef79b1c3d1cc9ee89de95bf5be223c2be8b229a4a13bc5524bd0b2ff0afc2631f71c8bf9095b9c30ad09a8f7461af1a SHA512 f5c2c998e4a925c102a8d6951237e5735c6974e74a83a5b34c65db54072fb90365be1910b014455e16a51c77950068591713b15635e83b72449580ac39a8c870
+DIST firefox-105.0.1-kab.xpi 573731 BLAKE2B 3ec28b0dfd59120d57dde3d4b1bcc5a747f75a18ea03b9172ac6cb2c238abffae0f251525e8405812c798c6c85befcca501de759d4875984108409ed55d58fe5 SHA512 0c7e866eef184194739011131d509cbe281e5a063f338e0a0ca9fc230d8eb77549a6331664f2d5ee39f0f37144c82b90bc62cb9cfd90638f821ffac5ac2f5da3
+DIST firefox-105.0.1-kk.xpi 631195 BLAKE2B 30452ae407104d16e4c422896938b5d62dbb622e47a3a00437ed99665a525f61ea45911fee8ca47b66d316a08b0b6365ce69a4b482ccb442652ef622d78c8f59 SHA512 3edb981b56c23880f7f352aa1a48cfdf60e982bc2e219203803bd51444e801d631828f2846f28e771a6b6d9d64edecebeaa7f260244d6d107f5f6b0a6b71d2ba
+DIST firefox-105.0.1-km.xpi 540646 BLAKE2B e66705fefbba13cc4d9196b6302cd079ef80f4707021b5e052c9cc70048cb9f7fc9c83eb6ae6d5137faf69c23aeb944292a855f36abc37a567ab51ad91eb4719 SHA512 5af76916d9006af7c8726e94c7cb710c883fd3b1603c28c4ea82fb3c1e1602cc17b98a3dbd45fe9d26a3a1bd553b29b9a7454679c1b12a06fef969345dd720e6
+DIST firefox-105.0.1-kn.xpi 506462 BLAKE2B 33bbe6086bded85da62940ff916e4f4fd0da12463973d47e51fe226033de4f93aeb3562ab040e66738f04165ce9c3f6dbce005982acdab4e163926a93b58f2a4 SHA512 7288924a7bbd54d306c63ad42479b123ecffe73085114863adaed8c7b9d3fe16bb5774284b8b3cc498ddce6312ba7c97e019b73c7bc39c3ef46243f140ce90f8
+DIST firefox-105.0.1-ko.xpi 600512 BLAKE2B 16b703d8da64a0b39f6de9afa888f5f3b2054760b6364ed88857ceadc7053c1c0256a175fcfc1aafce4e5df4aee0fd1d8e090e3f9e7d10f08d0db22627dc66a3 SHA512 5a7a0d9511abb46f172264378ee0c19b6e54f55193ac3091b285678ea13974cee66680d5d431e61949df5e13b5fb1fc00635331d0802aba4229b3e706a1b681c
+DIST firefox-105.0.1-lij.xpi 479007 BLAKE2B 00f1e3ba54e049a1f9bafd2f00d2011ffbd0c14cdff60f46b4a38607483963a754f52fe0aaaacc2655bed8be50926056912188d355cf21b82b67f35279cb8a5b SHA512 ed1ac7cbd981e580aafdde9d20d71aff4a6a738bc2002a8eee60fbf487b482a3815aae12fae7f59afeeeafde007739f43ae14f4955e7c9d143614fbe8367c462
+DIST firefox-105.0.1-lt.xpi 570049 BLAKE2B 0c4364974255272a2e79e83e173437efff25dd408edbcfaa70e8e8c0d2f5df03d9d86b20fa5c73ff867318b8c56415c4445b3567fad7e5ea0816468e2e982b82 SHA512 bf38944e0381ed7295ea579a668a3baed97660ad9e6cd7a1c26531756d924dbdccd357e63641af76712170638905a60479c0d3bc78f953a0e4fd650832228428
+DIST firefox-105.0.1-lv.xpi 472212 BLAKE2B 104a30d12d21231d3c252c4b6e231ee1ce27455adfa73b942506797ec51e756725ba753ac7ebe0105db6aec9769175d6e0259a28894c26b121c6fbffa6e79272 SHA512 25c64f81d25f0869355db649942f48b26e55755310060ac4225ec1a7d8e4bd5cdeac11ef44d0528788b32e0dee75cd4212285f0f4d9aa410ebacb9a91065e2db
+DIST firefox-105.0.1-mk.xpi 490872 BLAKE2B 145380cae47cfbef653a99516be2ea65dccc9dfce30a2c3929d4585f751982c183c4efcdc480b0defa30af541bcc51c3492e4b6f943d649444560714adff9c0c SHA512 2f0e0c9ad415fe413a1c82416116eb99cf99dfc51f2b979578bb8828aeff240837e52696b452225ae6be89ac46445bfeaff24a313cf1231c2c3033898cd69201
+DIST firefox-105.0.1-mr.xpi 539882 BLAKE2B ff817d83caae25dda54c60b3f59dde9c950bb6774942b160746fd63026bca189ca5611330f641bdb627d49aed65515662b7e22dffd5a64bee6e02395b4826833 SHA512 5a459091441310d22075586589f85fa5350622ca4321f6aeeedd57e9ac91f497e6218a7b1ceb46db69fb8e81483cfde984f8c922135a4edeeb6298f41a9163d2
+DIST firefox-105.0.1-ms.xpi 457111 BLAKE2B 20f52d2c649607c6ddc2b7a554b9e3e58c0869e8c75fef3a19e5c7a809397d5f84395b87d102ac084c7b96182b0bef82a1efd4a8ff227d289894d55f6a8a8448 SHA512 0b9012f5ce8b724bf6178d1260a06136a6e04a0c595e53b178cfa1dbe31e978ace6c5203d82cb344aafd4e907c33be5e120e08a53de322609aeafd25bf5bc3e0
+DIST firefox-105.0.1-my.xpi 520853 BLAKE2B 611ddaf0a8e19c0571c5c757db8640f9cb43b34a8f975663c1eb02262e418a7f9dcbf40c5405380dbb12bb247973e7bd5c5451ecf30ca3df06dda0ccf28908fe SHA512 fe2fe095dd6c21103815aea2a03b08257af4220bdc5356c4c7c0c0cfef418c40710ab7b19101086ad484d7a2f0ba91ff5e35f7960d42839db45e0369e7042fe5
+DIST firefox-105.0.1-nb-NO.xpi 549448 BLAKE2B 1175fe9b8fa2e73d116acf211fa40466b24e66235414a7b2da77fd92ec047741602eb6284906a52722260f2d52233de2acaa9dc529f7ad9b409622e9f6ea81eb SHA512 bb59f1f89a88e81f52cb2a0ee172ae0ceb04a3cc355db5ff6c5a50786e71830b281b03505349ea910b2d7b2cd7c36d7d71172cd931e230e392c723bad5d6710a
+DIST firefox-105.0.1-ne-NP.xpi 498110 BLAKE2B f9762022db47c1e1c306a8be75df1b70fd0666c4b6d081d98df9b72a334d26934ea35ba08c98cb417015e11e50fc820b7ea54d11bd0a2bc6d46e6bdf2dcc75ba SHA512 7a734c12bb08a751ffa57c23f3d6bb0ba13b2ea1750e7abbecda29cca663725ec0a88aa4b834b3d496b2bd555b754fbc0a391e7201da3067a7a73b0e1325f83c
+DIST firefox-105.0.1-nl.xpi 558694 BLAKE2B 1233697b72e10bb5d7bbc0dc1eb2a3fb44223e75ec24eddcc7d3ff5dd6d69199fc086cc720e2525cf2431f34f95ce96a4557e08016e97afd6eed49332403f160 SHA512 ebaf57c1141c6aa571fd4306436a58f9d6c35db2b7c1ee81012b508e7ca6a0b635824e81f8c28241ba3a5ac4e6dac36a92ccfa39a85d3d7c717ecc7d5bc43b1e
+DIST firefox-105.0.1-nn-NO.xpi 549963 BLAKE2B a95731f9ddc8a4c05699f4cbf96aeda1d7c81dbfdeb0a9b277a8a39f401f3e5a63358023821cc8ab9fb384c88432a10fc13d8801792cd80b247625902f138d41 SHA512 0095f6701319a43a0a63dda3c0b2025e1da5fdf34e869ee438b764391a4b0727e69388491d0fbbb46505931614f1aa3877bb3e8d0858f1235d3a38d1dda334e8
+DIST firefox-105.0.1-oc.xpi 569615 BLAKE2B 72ed4104daf5048582a2d7e3ba0090187aa1d897e9cfc259ff75236d79760aa8d37f175e4decfef3d3476bc8f0c283b218107bf62f9fa4b64e3a14510ce6c709 SHA512 cb83daef5d00393e943cef6b321da957f53fffa1dd614955f2b772cb69317b758fdc5494f72380b0d5901ba35578c2b0cf1f0784eacb9ce5d20243b858612d51
+DIST firefox-105.0.1-pa-IN.xpi 621215 BLAKE2B acb33a45b1aac57f18fd38198548b2fe4eea9a4c0a3e8515247d4f59356d7f715c9af1e5359fae6576d374ba014e53750b411694fe8d9215b41444a60c94238a SHA512 636c8799c6bc61e3492fb74b3314f574a65c5d7b414b1bd00ca745e86f62ffa36de9c992d5ad4601a00b7bf2d2333cc056d579f47c38db297b23971de2c4adc4
+DIST firefox-105.0.1-pl.xpi 579341 BLAKE2B 5155069da06df120cf91b2f74a56a89a41113cde7e9bf06e0f7a24c441bf5bc46ef7abf6892aa877ee197f035c9440a6888105abec592e110aed4b2f778eebe3 SHA512 b2d7ac86172c964d78005a05b1eafed2e2b21afff584768c8686c048f2505c8c8591b8105810c3ef152340b3ffaf46e03fbda5f77b505f71a85fc447208a9c8c
+DIST firefox-105.0.1-pt-BR.xpi 563717 BLAKE2B 1911060723eb8df959f514e4dec63307c3e662bdd3b74c729eec63634bf284b0391a2f4d0cb1f1c4290ca639e5f9d7e5692988ad990f68343d096987913af80a SHA512 ec41c51a7f61266c05a4395424bcf7b3331e04fd79b9a0aae575bb37cd21a8fe11cd2678b164bbd070b5b8b63a917f54a594502b362413fbc20dd0c608d7fce7
+DIST firefox-105.0.1-pt-PT.xpi 563884 BLAKE2B 2317a7e95606a5c3581c5acc75aaab5f6a4b77d03e7cf318bc623a4f6ae8df826bfc21299cd51f652738f2517c2160678b6d233e80be35ff66fac775baad1a51 SHA512 8067bda5d2bc69ec9b2326b906249b9f478c35f3ad59d3a5576fb157396cb5123ccc153610c4d754a7bed45cb64b57b319aaf8c93f3ab4e637a71f68c66931a5
+DIST firefox-105.0.1-rm.xpi 547530 BLAKE2B 30b61933d1c7d2446199ff0a62f9c9f89da6fd9d850e7d195477dcd1f99a73d8ee88f7b1d6164e5b51879022986a1116b6d1ed38b0cb0269ed5db1ff4897c85f SHA512 42a83b322ebc33597db7d03c7fdb84168887c27621658e707651231e770b2dd3da3117dd21b313c66f44b74abfb9836696c873737a9e6bad3c40be3f8c4a3c6a
+DIST firefox-105.0.1-ro.xpi 537786 BLAKE2B 26c79e9ed2f902390b86dc0d29cc94966a3393c286267b80509de7d309eefdf3e206bb022a9b9bde5471b9cb8e11cff694bbb90303167960bb393d81f0e062b4 SHA512 8a86d6f33a480d4ee6d576ec240da5196d6542d0f83163a382a14edf361c1c9687cdc13a96e10ff5df157c04608c6e0e1c77e5b0b7237d65ee7e3e540015c83d
+DIST firefox-105.0.1-ru.xpi 651159 BLAKE2B d8e555d1d30fe299fd91e230191a5aaa54f3139d05a8d9042bb7eb2a5eb9f052b8a71d919feeb8245c6fccff505f1a2eaec16080a41e5d8c454190d3fad99293 SHA512 c74d078295c2343af5f7eb5fd824381b135504afff0f50cd2f14e1b02ea1aa4e94edf553d72580c0ae9b96c1722867c2df3d9bf1170a943c8b63563ee618563e
+DIST firefox-105.0.1-sco.xpi 505207 BLAKE2B 0dd0d97d9d108e7d70274a8c6573d9215045bdb2b804b2d793aed8dd5a3b6831bf5c080a536992beee2d9fdc007b40978ac6ef4d4f84721c75e7c2ed86d3f4d4 SHA512 63c4bda75f29ab1cdc83e6723a7ae42977b345208211efa5198e11e52799664026fb36a92673e382860468e1f5f6b3583f9e02fcabf33d37d3c311a9ad0fd4b4
+DIST firefox-105.0.1-si.xpi 573138 BLAKE2B 3057034ec4a2ae31381c2a58766640e45ee9b6cae9144eff21aab4b779c4a81fba10141a87285565beaed85bf188a9dcdb61a34d336cb9e6e359367d2f7d5c5d SHA512 97c026bc8ce5cb9f01d3a5642a3142d116674e792bc2b10eb9270959a46c1d3c39ed43385ab44d589a1c46428fb8e346130988ea8a17ba07247a15463a01fb0d
+DIST firefox-105.0.1-sk.xpi 588225 BLAKE2B c6dbba67c914b797aff727fd2d6d04c95b888c14c97d2a1afecc2095517fb05e8290e6ada9f82101d4135fbd2289ea19835f86d94593e51d77a90bc4ce650ea0 SHA512 e1cb37b88c8c6bc78225df39903f48e8b34e731eb5775bd9329cf41dea9b0ce7332ddb71ef41fdd4840d66a17b55e319027fe50795ccce51ea97e6e2732902cd
+DIST firefox-105.0.1-sl.xpi 561128 BLAKE2B bec6290725b2c8f91dc21ca880fefd03f8a2bbbd1f5522625565f89075e2469648f5ae4e43edea16cc00b0c147f0f87c1fc3a9e301c3cb867ac552ee5f9e2543 SHA512 f3e30eda30f29fdee94339d06cb27bf4308303e9c4ded7840a7e98502baad7ca4d31128744bc753c7962e29bf85cb81e9cb58b4d9161dfd6e24466a78fef846d
+DIST firefox-105.0.1-son.xpi 433327 BLAKE2B 0ff68e70a8753837a487ecee9aea7c95a7f912af5050cd1c7d79438c63d7becba0ff31790db48b80caf064df8e55d1d8a0bd6b8715545e90c0f930b8a6e38031 SHA512 2254e6578bf2d646a533aa91d0a371a0cdf9b6affd366ded96a70887db6ed8f0f095dd1663658818d64f34fff4ccdefcc9449de7ef3f28357e9b28e3ef99e9d3
+DIST firefox-105.0.1-sq.xpi 565444 BLAKE2B f605539724883ba39d05feb941188223b91a2e5fbc9c1ed2c8c66638e5480c59ef00b6e66997defbaa2e2869d0e0e9a3beaf15def95dac9abbbd56d5e3eff357 SHA512 802b3e109450ab64809e971ee15424f2dda2d9e1023797472d1e6faebfd0d77e93f140ab841dc985e191698e6a18a9b63303b31a6c35826a4c944d67d970449a
+DIST firefox-105.0.1-sr.xpi 604656 BLAKE2B 80453225ec2941d6b492ea42e356bc3f59d8c8b83dc7cd83954440fb4f8b0f1dfbf908ffc4ed8bbecb7d11ddad984c08b293a8da2b86d2eae76bdea8b88c9763 SHA512 294e56550105c32c29a73fc1130fd127a4872ac309fbb148c6fd7d07372dcde6617b37c77205a588e5135ebad10d652072cd5398d76df96aefd2e556e2f27d28
+DIST firefox-105.0.1-sv-SE.xpi 560615 BLAKE2B 9be16630ca720fc406fa68c16302b47c06ea4fb78ab91c826a7afa4a63cb87242c4eda4f1312796cd8f5985e6a57d17d360c878dc3025f61a77a8b280a819b63 SHA512 f97008efb6eb8352677860363e40f1ac308916b476b4183e1e4b26a21811159ed588ee49628b752961a63fdc4481efcc514ae6caf10821a11a0c7bfe7c9a126b
+DIST firefox-105.0.1-szl.xpi 520752 BLAKE2B 9f61912b630ffc38ddfe8183c4898dba59550da1523ed3a712d044c403c989108541b630db68f36e694f528eb95ba852e8ec62f15007f47dc9428b830ba62862 SHA512 fb898ed0e039396124f6aad5ac9ee5e744802e902dad769072746d1a9e9b15b93570b9f282f190e7b5e9fd3cb5fa8828fe5603e2fbfdfcdbfeafab15cbc4b542
+DIST firefox-105.0.1-ta.xpi 519025 BLAKE2B cbf63da461c775c06630795d8634ebda4f53f9f1a305aba74fc1a510d0f838474037d7c084099945ee36ca86ca9de2ae6888bff477df50b05daf529423e3077e SHA512 3b74ac701f72696268951fc513cc4e0b2bc6af7a31b32ba60ced948f15a6e8e9bf4d136d5c335a6ed153ed43486d61104f15b5d3014f0a0ddcc63d869fed9ae2
+DIST firefox-105.0.1-te.xpi 560557 BLAKE2B d0a3422beca894c110e646e140bec441bb203b6610232ba568f84a1d0577d880a6c22c7259c038586f49a41a72c271e7e724b4f8671b517ae1f238b5ccaea256 SHA512 06131f674d56ce01b51dfeef18a8a99bbd5e624d85410ecc0247f702b396f9cb6a5cc504559a05d93c83ca06185343092e7793b93c1578539e55cc471c2a74cb
+DIST firefox-105.0.1-th.xpi 621826 BLAKE2B ede1d44f710372b8f76f3c3feefcca647faecc045a8e2e31ef20c60458d78ca71d688741003df243c3763fa6eacaacf7cb4babf9b42c3380dcbc8b1ed880b37a SHA512 5879c00c0f069138893656e69b32a860a3379eb9dc7244ce78203bec187cdf27614e6f1c0bce57194af99dcebea23f5be35c24eeb5690f7ef5c5d2f15269d1d6
+DIST firefox-105.0.1-tl.xpi 527995 BLAKE2B 4bd1776d8103baa63065a099c1815c9252aaab4686841c04197cb02948ca8a1418a37fc8cd6bb3fadcdabd0de1555535a5b77c4f9d8ac49a19e979c5eecb9364 SHA512 4ef538668822107b5b85c94a6c6390c5638034bf83a8a342a427434a32c9de379a6c39be069ad638db5455529123e02b531d2cba950366a56714afdf5fb6d3b1
+DIST firefox-105.0.1-tr.xpi 574332 BLAKE2B 026e1ae8badd160aeb4e3f4a052fb769d747fdaf704670fdd82ee6e29d65ebd2ef0cedc1c5840e30eb3b7d484648f49ac4f3aa383c9272933aae5994c2ee5034 SHA512 bd8a521088db01d9f6fd06a785833e19c548557704ff874f0ba28b30cc08fe77565d36a4d3d0d19d93afda52cb0fc7a7cb9621c62cc44be2b1b62654cc889e66
+DIST firefox-105.0.1-trs.xpi 498809 BLAKE2B 27f9f3161595f74dd1d6376d803270fbcb7068b36172d8f5bb5965535023efa6061edfe9c23fd3f064cda5227527d1be75ea17c42adcf9563d826470be54fae4 SHA512 6ddb519fd12023f1769b4d4c79ec7e0c6d74d1c00979b096676cff7cf350f65e9a3ab4f5bf8c858ecb367b6120bcf484db6bbc552efedefee01cb7f593d54838
+DIST firefox-105.0.1-uk.xpi 644349 BLAKE2B ca8e445436c0d6f7cac1cc601fc52814998653248c0f5dd45ec0f686cf2ac5a06a19fb92aadc4dfb62490a7a0b8d289041ba7a91763313645e2f275b08c0bec4 SHA512 0db821e82343020aa020176605b5ea99a6d8f8b3366e8c38ea00920c741f01da9d64e54cd65e8c3420cfb687fe7114835e26542ad9fecf5229f68c3af16bb077
+DIST firefox-105.0.1-ur.xpi 566537 BLAKE2B aa3d98f429baf0bbaa00181a9fb4492b9d2341bd2aea5aa60f6b934038e814a18c4214940ea706999548144bc76390c4e2e5072a3f0fe437972c026e7dd3dd41 SHA512 57590cb75e0e71eb7f974c5979902b797011775928cafa2dff2220319e728880269354b464299647f68fd8ea9e0c56c38699411dcc662796da297a85eaa8513e
+DIST firefox-105.0.1-uz.xpi 486876 BLAKE2B 49daedd12980f3c51a23708b6c765b8449df9f8b2965450dc7de0120605433b823399cb689319ba37c47b89653573b418a1d86b47fc7ad19dd03ec7ba3c52433 SHA512 40134507decb0ce395597c58c99c12a52d234bf273f686d8960135bdcc80e2ebed62b4536eb6da6a5eddf9bac28326f8abd630dd395b2fdbd70b2502c9542418
+DIST firefox-105.0.1-vi.xpi 595135 BLAKE2B 7328350b96c64a83c9077bbc71d42f7d8825835460b25226e61b35ebe39ebff2ed4032f7208d7bcefca2798327cef911098a4c5704e3d4e819ef24dac022e878 SHA512 d3c690da21315a4262b41d36c6c25c276cbdc1118ae116d021b5306e7307b4368d9aa5a99efab910ee992d350ec891e9c5b68a341474c4d164d19907b4ad92e9
+DIST firefox-105.0.1-xh.xpi 435741 BLAKE2B 4cc4ab55df561b95948dd6b5e389bf6a1e3575574d5a7d0072968bfc4548a90e0e507848f1f7161a84c2d9c3dd115bf2699713ec9900361224b23cce0a19f61f SHA512 0a67fb125fa6c511ffa5f1f7772f2679d959be04ae98f65726b1491756678cd8e6be6c9a43495f3bb78a67a00edc2464104c4397553a34bbc6a9bf90c32eab01
+DIST firefox-105.0.1-zh-CN.xpi 596364 BLAKE2B 18c80655c480efedd506922bfc0d4430eda525a1b4a15db66851032c25dd0e103efd8e246003699996a01137972ceff1b60ca50cafa8ee8c9ac8b2657726654f SHA512 51a8bcd726e46f28e404f3866abb8ef36b01163ffaa42e23ff73cf596b920b7225f0bafa2f587389f585577aca379c4ab1805c808dedb36ddf05dc90468417c7
+DIST firefox-105.0.1-zh-TW.xpi 597433 BLAKE2B 904ba9a3e987c3cde42aec94017000d5744e69195dc7382891f6443aa748f26f670bcc7c6e9da8f1954da8bc295c2f469fa666ca02141caa71fc467d5b4715f7 SHA512 c39cf3d846c43a1942ced5ead5c70610faa6089b8d87dd32a16d7d5909a28e051b122699947a8117e2ea34a8ba463d5b481f68fb231b33872b5c4b4d70e25024
+DIST firefox-105.0.1.source.tar.xz 475536540 BLAKE2B 9ee260d5fbebf48fa3158e917e04707ceadf21961623b323d7f3c598ae754bf7cb9280d9cfe009c48ca52e9dd2d6c40d1b788f429bb0e3e9d620163dad3b2b4b SHA512 66ef7cd5028953e7da9d55e127135739c9d85be68ec633b71c52d6c9427edb0bd8a38504148484cd322adcefb57bfefe6e57cb15855f195508fe438864f4322b
DIST firefox-105.0.source.tar.xz 487471648 BLAKE2B fb911cfb117433994927bfc0b05cd31ea86993be0b728d3b9dcda7dd3608c8b8a3a6eb6b4dada643abd2e109e9c551495a7bc92909bbb6db93763c0a66ac465a SHA512 a48f323f874b538402630a9094daa83189b3ca319feddc80fd66d087eca13f21c8b2d85be9c29e948c18cb7c524adac44e135adcde4d4592738e104ae9c1a734
DIST firefox-91.13.0esr-ach.xpi 453223 BLAKE2B 88b43c79620d3e0263f7e251a41c8ee88f10798982d8a0db3d8d545b83aa4e3da75140f5d9bf879f2229ea831668344cefddf6c67ee45f3169c7d854cf53a90d SHA512 795ca4fced227f29861de8fe2e93acb339d41de8b09c941244f4b62c8e7835971ec4366bcb3a35aaa75e779087248df459364c262f2fd7b294a6d7176b74e1ef
DIST firefox-91.13.0esr-af.xpi 426921 BLAKE2B c0a89908f46ba666c9d3c9e916636e5aeff7564a0f2132213aa443c5dfed474006dd65dc8f47d0e0fa30d5435c810937da98536b3408dae62c428a5f1f4bbe78 SHA512 8c8a40cb2117479c08c13077eeffcd3473b4e2fd9164269da58a68b3c0e77c339184a2edca79ae80480f2b7e41c42e598a9350f01061b424cef1aab35a7480bd
@@ -504,6 +603,7 @@ DIST firefox-91esr-patches-10j.tar.xz 18320 BLAKE2B ec882411eed19bafab8676e3d79f
EBUILD firefox-102.2.0.ebuild 36709 BLAKE2B 8b3e44c2fe8b19658b8d3ca685af6d07d95cf11aaf1c6845227901fb05848d8db877142eedd3954dd4e9fc84fdc6c97018ec810b7c3e973633556363e2e3d53f SHA512 091200b8bbe29a5d2195176df491b74c87fdda493cd1518bed76da86abcc9a1c0994737bf5d08152b036f9512697dac3eb5f93c9f50bb6f4bd27c31957c0c69c
EBUILD firefox-102.3.0.ebuild 36201 BLAKE2B 24fd333a2d6588d0733e46483dc540076e5253a38c6f757772de0d888ed50fcc3445501ff933ca4964ffb2e748ce395a6e2a0c9bb86728d1fd637334131f0cb7 SHA512 d93344de30dfdc8e0b4fb58fc4d920bb279634e43858f79e6ea5ccd346ff840d43ae2e268dcd8fdcc87b2441b9e271d2d1294d7531561ebd771e6db160a365ee
EBUILD firefox-104.0.2.ebuild 36861 BLAKE2B daa636ff61415754cd6927143b070414e501a54e48d141ed3710e97f68e828a9b2578f1130aaccc2fd48a54688f2b4432dd82bfa27a83db240fe9d924a6f36a7 SHA512 bd6d882552ecfd12d3d1a9dbc544d7523ff86a6d6c6a4ef1b82a3058bf25768f0c78a39c547e085366d9c0a3126bd971da8b070cf92be9233c1af0c5ca7b1e16
+EBUILD firefox-105.0.1.ebuild 37220 BLAKE2B 1bbe97e90cc599bd6fcf23b96ea489adb0c6fa01e2017fc9ba5d6e7a489b3afc16dfdd4083ff4f4a633645643d21850bd2f860af3af01bd0d4721a5417a1ce11 SHA512 2ec55e6032a04a7107027520759a311364b2cc2f7751bdb8da5f5fc5c2e4ad1b321b99b35d413f44c65077a2b668a03aef2645e85908c2f1847f16935f9a57be
EBUILD firefox-105.0.ebuild 37220 BLAKE2B 5bcea464ccd1fabddff052bc489a6e8b3b4d8a5b09b892b7b233bf4b6c05f332c741d5e1b10f8b6ee93aa32c5b7fe672d939b3c723d25c3b3de5d015b6fd05c8 SHA512 c290a0c4b930cb1425acbd21449f0773214e6270acdf6a44e17a2360d354b5b230d8c6c1161f0b0151f30ab1fc0f6b8ce3a1099b718665dd11f147a856fce47c
EBUILD firefox-91.13.0.ebuild 35569 BLAKE2B 19154ecc4e0a2583554ced081e5c00c844926b5ec520aced40ca69aac814848804e0931414916f34822abcef11372ceb5efc3a20e4277ad7cc62ff0a42535503 SHA512 e22cc0a89e6d1fb8269720f9cfef0f305834786cb3e69ce4e122c681d3c1ea138deb1793bcb80eba029d981c819022709a2946d2a55ca2ddeb5917eff7eaa227
MISC metadata.xml 2219 BLAKE2B 064f486eecd2a66ef4c9cccef46803f877039bf16bc40b699a48e28e04e816d0ad434ce65ae2e056e1a4126a67a7dd7eff16040276159c1f5aa8966b1c0d7b6c SHA512 522b09ffc2857553e240b1e7c82c11ccc281dd87c720c6292ec9314b91319e0a55ca2838f17e878f5c1e58e4f22caa1b0c3b90506b65b350beff06f3f397d897
diff --git a/www-client/firefox/firefox-105.0.1.ebuild b/www-client/firefox/firefox-105.0.1.ebuild
new file mode 100644
index 000000000000..cda48c99705b
--- /dev/null
+++ b/www-client/firefox/firefox-105.0.1.ebuild
@@ -0,0 +1,1287 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+FIREFOX_PATCHSET="firefox-105-patches-04j.tar.xz"
+
+LLVM_MAX_SLOT=14
+
+PYTHON_COMPAT=( python3_{8..11} )
+PYTHON_REQ_USE="ncurses,sqlite,ssl"
+
+WANT_AUTOCONF="2.1"
+
+VIRTUALX_REQUIRED="pgo"
+
+MOZ_ESR=
+
+MOZ_PV=${PV}
+MOZ_PV_SUFFIX=
+if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
+ MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
+
+ # Convert the ebuild version to the upstream Mozilla version
+ MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
+ MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
+ MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
+fi
+
+if [[ -n ${MOZ_ESR} ]] ; then
+ # ESR releases have slightly different version numbers
+ MOZ_PV="${MOZ_PV}esr"
+fi
+
+MOZ_PN="${PN%-bin}"
+MOZ_P="${MOZ_PN}-${MOZ_PV}"
+MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
+MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
+
+inherit autotools check-reqs desktop flag-o-matic gnome2-utils 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,whissi,slashbeast}/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="rapid"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+
+IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel"
+IUSE+=" jack libproxy lto +openh264 pgo pulseaudio sndio selinux"
+IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx system-png system-python-libs +system-webp"
+IUSE+=" wayland wifi"
+
+# Firefox-only IUSE
+IUSE+=" geckodriver +gmp-autoupdate screencast +X"
+
+REQUIRED_USE="debug? ( !system-av1 )
+ pgo? ( lto )
+ wifi? ( dbus )"
+
+# Firefox-only REQUIRED_USE flags
+REQUIRED_USE+=" || ( X wayland )"
+REQUIRED_USE+=" pgo? ( X )"
+REQUIRED_USE+=" screencast? ( wayland )"
+
+FF_ONLY_DEPEND="!www-client/firefox:0
+ !www-client/firefox:esr
+ screencast? ( media-video/pipewire:= )
+ selinux? ( sec-policy/selinux-mozilla )"
+BDEPEND="${PYTHON_DEPS}
+ app-arch/unzip
+ app-arch/zip
+ >=dev-util/cbindgen-0.24.3
+ net-libs/nodejs
+ virtual/pkgconfig
+ >=virtual/rust-1.61.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:13
+ sys-devel/llvm:13
+ clang? (
+ =sys-devel/lld-13*
+ pgo? ( =sys-libs/compiler-rt-sanitizers-13*[profile] )
+ )
+ )
+ )
+ amd64? ( >=dev-lang/nasm-2.14 )
+ x86? ( >=dev-lang/nasm-2.14 )"
+COMMON_DEPEND="${FF_ONLY_DEPEND}
+ dev-libs/atk
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/libffi:=
+ >=dev-libs/nss-3.82
+ >=dev-libs/nspr-4.34.1
+ media-libs/alsa-lib
+ media-libs/fontconfig
+ media-libs/freetype
+ media-libs/mesa
+ media-video/ffmpeg
+ sys-libs/zlib
+ virtual/freedesktop-icon-theme
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf
+ x11-libs/pango
+ x11-libs/pixman
+ dbus? (
+ dev-libs/dbus-glib
+ sys-apps/dbus
+ )
+ jack? ( virtual/jack )
+ libproxy? ( net-libs/libproxy )
+ selinux? ( sec-policy/selinux-mozilla )
+ sndio? ( >=media-sound/sndio-1.8.0-r1 )
+ screencast? ( media-video/pipewire:= )
+ system-av1? (
+ >=media-libs/dav1d-1.0.0:=
+ >=media-libs/libaom-1.0.0:=
+ )
+ system-harfbuzz? (
+ >=media-gfx/graphite2-1.3.13
+ >=media-libs/harfbuzz-2.8.1:0=
+ )
+ system-icu? ( >=dev-libs/icu-71.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= )
+ wayland? (
+ >=media-libs/libepoxy-1.5.10-r1
+ x11-libs/gtk+:3[wayland]
+ x11-libs/libdrm
+ x11-libs/libxkbcommon[wayland]
+ )
+ wifi? (
+ kernel_linux? (
+ dev-libs/dbus-glib
+ net-misc/networkmanager
+ sys-apps/dbus
+ )
+ )
+ X? (
+ virtual/opengl
+ x11-libs/cairo[X]
+ x11-libs/gtk+:3[X]
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libxkbcommon[X]
+ x11-libs/libXrandr
+ x11-libs/libXtst
+ x11-libs/libxcb:=
+ )"
+RDEPEND="${COMMON_DEPEND}
+ jack? ( virtual/jack )
+ openh264? ( media-libs/openh264:*[plugin] )
+ pulseaudio? (
+ || (
+ media-sound/pulseaudio
+ >=media-sound/apulse-0.1.12-r4
+ )
+ )"
+DEPEND="${COMMON_DEPEND}
+ pulseaudio? (
+ || (
+ media-sound/pulseaudio
+ >=media-sound/apulse-0.1.12-r4[sdk]
+ )
+ )
+ X? (
+ x11-libs/libICE
+ x11-libs/libSM
+ )"
+
+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="6600M"
+ 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
+
+ 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 use pgo ; then
+ # Update 105.0: "/proc/self/oom_score_adj" isn't enough anymore with pgo, but not sure
+ # whether that's due to better OOM handling by Firefox (bmo#1771712), or portage
+ # (PORTAGE_SCHEDULING_POLICY) update...
+ addpredict /proc
+
+ # May need a wider addpredict when using wayland+pgo.
+ # addpredict /dev/dri
+
+ # Allow access to GPU during PGO run
+ local ati_cards mesa_cards nvidia_cards render_cards
+ shopt -s nullglob
+
+ ati_cards=$(echo -n /dev/ati/card* | sed 's/ /:/g')
+ if [[ -n "${ati_cards}" ]] ; then
+ addpredict "${ati_cards}"
+ fi
+
+ mesa_cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
+ if [[ -n "${mesa_cards}" ]] ; then
+ addpredict "${mesa_cards}"
+ fi
+
+ nvidia_cards=$(echo -n /dev/nvidia* | sed 's/ /:/g')
+ if [[ -n "${nvidia_cards}" ]] ; then
+ addpredict "${nvidia_cards}"
+ fi
+
+ render_cards=$(echo -n /dev/dri/renderD128* | sed 's/ /:/g')
+ if [[ -n "${render_cards}" ]] ; then
+ addpredict "${render_cards}"
+ fi
+
+ shopt -u nullglob
+ fi
+
+ if ! mountpoint -q /dev/shm ; then
+ # If /dev/shm is not available, configure is known to fail with
+ # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
+ ewarn "/dev/shm is not mounted -- expect build failures!"
+ fi
+
+ # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
+ # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
+ # get your own set of keys.
+ if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
+ MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
+ fi
+
+ if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
+ MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
+ fi
+
+ # Mozilla API keys (see https://location.services.mozilla.com/api)
+ # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
+ # get your own set of keys.
+ if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
+ MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
+ fi
+
+ # Ensure we use C locale when building, bug #746215
+ export LC_ALL=C
+ fi
+
+ CONFIG_CHECK="~SECCOMP"
+ WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
+ linux-info_pkg_setup
+}
+
+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
+ ! use ppc64 && rm -v "${WORKDIR}"/firefox-patches/*bmo-1775202-ppc64*.patch
+ eapply "${WORKDIR}/firefox-patches"
+
+ # Allow user to apply any additional patches without modifing ebuild
+ eapply_user
+
+ # Make cargo respect MAKEOPTS
+ export CARGO_BUILD_JOBS="$(makeopts_jobs)"
+
+ # 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 audioipc
+ moz_clear_vendor_checksums audioipc-client
+ moz_clear_vendor_checksums audioipc-server
+
+ # Create build dir
+ BUILD_DIR="${WORKDIR}/${PN}_build"
+ mkdir -p "${BUILD_DIR}" || die
+
+ # Write API keys to disk
+ echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
+ echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
+ echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
+
+ xdg_environment_reset
+}
+
+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
+ AS=llvm-as
+ 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-gpsd \
+ --disable-install-strip \
+ --disable-parental-controls \
+ --disable-strip \
+ --disable-updater \
+ --enable-negotiateauth \
+ --enable-new-pass-manager \
+ --enable-official-branding \
+ --enable-release \
+ --enable-system-ffi \
+ --enable-system-pixman \
+ --enable-system-policies \
+ --host="${CBUILD:-${CHOST}}" \
+ --libdir="${EPREFIX}/usr/$(get_libdir)" \
+ --prefix="${EPREFIX}/usr" \
+ --target="${CHOST}" \
+ --without-ccache \
+ --without-wasm-sandboxed-libraries \
+ --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
+
+ # For future keywording: This is currently (97.0) only supported on:
+ # amd64, arm, arm64 & x86.
+ # Might want to flip the logic around if Firefox is to support more arches.
+ if use ppc64; then
+ mozconfig_add_options_ac '' --disable-sandbox
+ else
+ mozconfig_add_options_ac '' --enable-sandbox
+ 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
+ mozconfig_use_with system-libvpx
+ mozconfig_use_with system-png
+ mozconfig_use_with system-webp
+
+ mozconfig_use_enable dbus
+ mozconfig_use_enable libproxy
+
+ 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
+
+ local myaudiobackends=""
+ use jack && myaudiobackends+="jack,"
+ use sndio && myaudiobackends+="sndio,"
+ use pulseaudio && myaudiobackends+="pulseaudio,"
+ ! use pulseaudio && myaudiobackends+="alsa,"
+
+ mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}"
+
+ mozconfig_use_enable wifi necko-wifi
+
+ if use X && use wayland ; then
+ mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland
+ elif ! use X && use wayland ; then
+ mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only
+ else
+ mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3
+ fi
+
+ if use lto ; then
+ if use clang ; then
+ # Upstream only supports lld when using clang
+ mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
+
+ mozconfig_add_options_ac '+lto' --enable-lto=cross
+
+ else
+ # ThinLTO is currently broken, see bmo#1644409
+ mozconfig_add_options_ac '+lto' --enable-lto=full
+ 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 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
+ PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach
+
+ if use system-python-libs; then
+ export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="system"
+ else
+ export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none"
+ fi
+
+ # 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
+
+ if ! use X && use wayland; then
+ local -x GDK_BACKEND=wayland
+ else
+ local -x GDK_BACKEND=x11
+ fi
+
+ ${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-r2 \
+ >>"${GENTOO_PREFS}" \
+ || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
+
+ if use wayland; then
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel wayland prefs"
+ pref("gfx.x11-egl.force-enabled", false);
+ EOF
+ else
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel x11 prefs"
+ pref("gfx.x11-egl.force-enabled", true);
+ EOF
+ fi
+ 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
+
+ # bug 835078
+ if use hwaccel && has_version "x11-drivers/xf86-video-nouveau"; then
+ ewarn "You have nouveau drivers installed in your system and 'hwaccel' "
+ ewarn "enabled for Firefox. Nouveau / your GPU might not support the "
+ ewarn "required EGL, so either disable 'hwaccel' or try the workaround "
+ ewarn "explained in https://bugs.gentoo.org/835078#c5 if Firefox crashes."
+ fi
+
+ elog
+ elog "Unfortunately Firefox-100.0 breaks compatibility with some sites using "
+ elog "useragent checks. To temporarily fix this, enter about:config and modify "
+ elog "network.http.useragent.forceVersion preference to \"99\"."
+ elog "Or install an addon to change your useragent."
+ elog "See: https://support.mozilla.org/en-US/kb/difficulties-opening-or-using-website-firefox-100"
+ elog
+}