summaryrefslogtreecommitdiff
path: root/www-client/firefox
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-04-06 22:33:41 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-04-06 22:33:41 +0100
commite68d405c5d712af4387159df07e226217bdda049 (patch)
tree009ab0f3d427f0813e62930d71802cb054c07e30 /www-client/firefox
parent401101f9c8077911929d3f2b60a37098460a5d89 (diff)
gentoo resync : 06.04.2022
Diffstat (limited to 'www-client/firefox')
-rw-r--r--www-client/firefox/Manifest99
-rw-r--r--www-client/firefox/firefox-91.8.0.ebuild1241
2 files changed, 1340 insertions, 0 deletions
diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 9de3796bbabc..e9d4689d0867 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -203,6 +203,104 @@ DIST firefox-91.7.1esr-xh.xpi 428176 BLAKE2B 1770bfc825bc71fc40a2413af25a9d27294
DIST firefox-91.7.1esr-zh-CN.xpi 575379 BLAKE2B 44cf2c4c0f180c9c5652214d45070a0a1cc2f3b0ec107d18be4746af1bfcbd8c56b5093d44f104406530e201ba2c40f5f0bcb624d3524ef955963e0b59f5f46b SHA512 0671755771eb94414da55ec0539ee950d24093c8acf2b17add5c895bb24b4e83946f8769b1913553e3d7bcb286b5b129e33aa64af391137c225c138246edaea5
DIST firefox-91.7.1esr-zh-TW.xpi 576227 BLAKE2B 08196cddca48b3a68154ead26522a84be085a6b777f43bd11cc918efcb3b12a711869911736972cfb5b26e77f14f3b7a8da6e15a73eb32d7663102a26c1b6635 SHA512 3030828799207a4c37a06591f17636412b55042ee61bd9f42a01204ddbf148ac6176f64639eb83e3313958db3c36860fcbafb136e5e7ede70a588104690bc531
DIST firefox-91.7.1esr.source.tar.xz 380937836 BLAKE2B 15995930be6b377c46e3932b56eb18b45c350c948f11afac4458c0ee3f2aa45e70244718872b101a560a155514dd479f38ed5ee58ff258c4e9f9f7070595f1e4 SHA512 c56aa38e9d706ff1f1838d2639dac82109dcffb54a7ea17326ae306604d78967ac32da13676756999bc1aa0bf50dc4e7072936ceb16e2e834bea48382ae4b48c
+DIST firefox-91.8.0esr-ach.xpi 453230 BLAKE2B 1fdc80d15961c175e220f08da45e7d020815deb74a9bb1ee4d64e91f57ca8aace009af1f908f0e9a9d33abd790801404436bbaf859cbc7a5711972a09c2583b6 SHA512 d7b2a3f5e2901e1cfd6970a1a57f2c5730c262e0e87b8e969122864e2c053ece36bb0c3b1ce550f227caf9196ee628fb079af71155dcb09d7946ab41f78318d3
+DIST firefox-91.8.0esr-af.xpi 426924 BLAKE2B 8b456a253fbca60931ef7357307721656423869726df147df8a0ba687fae9eea70576f9cf92a6b2ba700ff5b7d2a0cbc3472781248813e58a17a7acd5f20735c SHA512 23454f657059a95318c0cdfbea3da7bff5e87c97a2e6bb7bd7cf58517e8e7d2d1657cddc48ebf8351827e68e79fb797c1428ffab2c4afe73b4b249bbd2115131
+DIST firefox-91.8.0esr-an.xpi 499890 BLAKE2B 66b739ef571b483739573b37eb7d5f10efa158a26633dad70e61719ce4447a7817758f175e57f8fc4d5a7461b18acce5f41230d33da5e6c45d280adaa467c752 SHA512 c63ee6f7b31387f6b8dee901ca07896ccd4664a3193c357f9f1e9b46e5673e93c23b5dbc3c264211845be929e9e6b80e702c3f38967b94011157dee947760237
+DIST firefox-91.8.0esr-ar.xpi 559667 BLAKE2B 6a8b237ad7fbd70657a0c82993be172bb9b932280d1cb09249f29cc9430c7931a25991d1a86c6532589d1042ac78ee49ae587b26b1251bbd2808b70bcc4cf84d SHA512 b6fdda853ae16b94184f6b39d7f1f7066d316ecdad6ddf8e399c77786fc872720266eb74710420354aac5747498eb93f6a2c187417f5930947802b4fa785869f
+DIST firefox-91.8.0esr-ast.xpi 498574 BLAKE2B fa3f909054be79ab3e353b88da7dfe1bed3865f89bc52104c3d7494b7d6acfc3a18d7f92731e3835a74b2952938203005ffdd32ef96a43cc3e58269cdcfb256c SHA512 516805046096e63268599e9178b2562ec60df7e0f280f6ebf6bc7c7ecc1074b5dab5f6a11b1825939d1794efb4ff1f2177dba9a710609069028cdfef34ccb00d
+DIST firefox-91.8.0esr-az.xpi 489440 BLAKE2B 453fa4da9658b5057f4c67993406d0ec5867a4cd127a711d0b8deca6267a88a750757040afe3e2943f454ca0509b07deae393ec81861d42b893f399af3710183 SHA512 4068d9581120a086917db00587b995bd31c97cbb61e92224ece4b58cec07776853c4b3695af62f05a9751b07042a40982f98c6369838561645b25668e2e057f1
+DIST firefox-91.8.0esr-be.xpi 622616 BLAKE2B 6e6694fca767cbf516ff95d94bd40b7205ba70bd85885bb4138ebd0180040bc99fe898bca6f67dde29e07ad9dcebf8666052d96e376a0178387fca3d5a9a62fb SHA512 34f2281a26b6547c5b3a04df1ce624f3826932962bcdaf24110c1ed6d58f7b3ae79c38eaa6d9037cd0e12c01c80c7b9912a6bea4b33dec5dd46a1527732da3a4
+DIST firefox-91.8.0esr-bg.xpi 567642 BLAKE2B 48aabdfae85f01942305e50c71e097300a365cb9be20495a31c52adf31b2705648689e20d3130e89bf4e9774de6e1cab103b5d33a40251b23950282e7d0b2aa5 SHA512 14b83787ddfe3c488221de45f6d9794a108f1f708bee50c53f7f3181d5ed960c4d9c90755b4868e043709140ac67c34de85899245bec942722e42d6ec9b90607
+DIST firefox-91.8.0esr-bn.xpi 556827 BLAKE2B 77ec29ff651395ec393dd0c504256d7721df104cde637950a3723be7468cede4d9f8a34045a36c35cb3c583583924b50ef72ae10a9f47780fca6186f4142ebe5 SHA512 5f9439d432767b54085fd9c8a2518089eeeaebb643071fbe7165454a98f6b424d03fb0712ce6ec41c4395f29ec78fd4e470bad4e96bd3e8ebef4b34c72f0f983
+DIST firefox-91.8.0esr-br.xpi 526245 BLAKE2B b16d8fa629fd9afec7960882092bb69496f5811a8824105a2520858822f088ca59c51d75aafaa156647a99b33e236a9b845761436cfc14ca4e14128e4262cc6b SHA512 8914e41ceb7afd35009c56baf5259c4e7c15b8575477aa424b81008e78d7f65cc8b39c7a74848800ecec80e64461f2ec49e16cd43c23dfd521dfa064bf2fcd9f
+DIST firefox-91.8.0esr-bs.xpi 463552 BLAKE2B d0bbdba1ec970601de6667f41c07f71e4c28af458d2b27c63873ffb9ef46ff13c86bda752bea60f4d6805f56b7def696de437141d346595a9b592feefa934896 SHA512 cee5da1e7848d2daf6e69af853d436a4f3cb56bc4cc84fc83601eb31c854d5680a140be64c4cbaf5b14fe3b121550a42fae6e773d5c8fc9914eb5cd4a5a07427
+DIST firefox-91.8.0esr-ca-valencia.xpi 529396 BLAKE2B d148c236ffb62e3dc07e4d4fb4c4c31a627590b8c27391ea1c47c19f9812cc793d3dea055bf4540a771984f3f5ab6512fa60ac009d20631eebf3b62529c2c6f3 SHA512 0d74359fa35e23ee044e9ce0024e63680e134233c43b4c43b0a0990b1058f7b0c4ab1c7ae5fbf53257d9ef2262ceb7f956eaa97ae98c24e3bedbf8513dd09b16
+DIST firefox-91.8.0esr-ca.xpi 532465 BLAKE2B 3ee874126d20244fdb12df3d230f4aea1cbe2fca5aaf3c7fbad16ba58210cd7f119b83abf6076486e6e1f9874d70fe1e8c497fa71824650f1e7e9b299429d42d SHA512 dd2a46d9a7ddba96a3db69b92bc633dc44db65d2216f683bf1add1f0abecb6fc577b1b833ed0410d413207f167452f3eef026c3f470f7619a13a987ddeb280ce
+DIST firefox-91.8.0esr-cak.xpi 552604 BLAKE2B 517525e43f7aa1b28f3b4ed1f486b1bd397d677c37507442ac65db3208678b7a0b081033d804d9bdb0999b0e98f35f3611e6d0c0b364f4b75d90cf6dc642e739 SHA512 bc86bafb0d5273b8b0c7c973b1cdbdd8b27853ed10865df1731fccafeb078ca6311a9bd760b49e5643a8c82c9ccbebc6e0a10784eaa2d4acfeead4c66e938f53
+DIST firefox-91.8.0esr-cs.xpi 563176 BLAKE2B 21f5dc5a094fb00a701fa74813af6d9dcd2ceb04ca042e4b813d71f799c9a8b8add32d041c43c2f80bd35babba5a49e3e2ac3abb6027e6c86c7434c136295783 SHA512 5c255830588de8963a9a096a64b3e2717559a7df6a2bf268c5d6a590948fa2c86422faecfc47c953893e738d3e3515ba29b121a3106f8edfdba8073c525ab3fa
+DIST firefox-91.8.0esr-cy.xpi 542220 BLAKE2B 4b9effcd8b4e77a3ad321b2fa6e87b244e790e3564083eca2f9c5e5fb9730741185a60e0ba028b4d9b46d281b14d1918629b3474e6321847be319800ffc3268a SHA512 76f768cc1a2a7a38531bfde343e122adefd756d5e520ce51a847dc0d00ad9377b47159b5198a163b542ee6855b5ad9bca50116552f3890b04a75cc37508f1c81
+DIST firefox-91.8.0esr-da.xpi 534154 BLAKE2B fa754662cb637597eb90457f4c2cf79270744fc1cd398ac9b69f1859df11829b1647f9676418f0a3504c6fe866218f0e6247c4541344a07632e487b8a42067f6 SHA512 d273fc87499512b6a029ef832f6f61239efb08acee663e4279702fe0045d64ec0ed6b094b48882bfac3e579d707f500a263a6502c11b40f0c2f66faa88b410ff
+DIST firefox-91.8.0esr-de.xpi 553589 BLAKE2B 330e27ebd299beedba55c158beb9176016c4560ebe10d980fa7dba96459209c7951874be578def22c39eaf90365cafca93f00f4e105dea245a0be71df747f61c SHA512 a3a30961c270f524136250f8753b0dad91697c577bbfd940e85f4507df4ab775081c4f84143e2f98439ca026007420cffcd97436c45ffe6e6f67a2e4465e81b6
+DIST firefox-91.8.0esr-dsb.xpi 566487 BLAKE2B 5e91b9c9221283784aff3c13e436ff0d0a40d70ebf7de723260c3ac94a08e561635d1d1c0b8dfd77f8a6119da43e146849f0fb0305a5ad0354513644fad71a3f SHA512 c53d712a1f22311d6b64af0f7bbc1483b338d02c90adde41f8001e0aff39398b1169c92b8cb93ebabff2a4d4d7adc67ee866540a1d08f645befb1709c6a9b8a1
+DIST firefox-91.8.0esr-el.xpi 639152 BLAKE2B 2eeaeb0bb1295e40f427e551022e1a1673a186f9aefbf33031976fca48fb3117063589646c23c289644eb10f4ff6870e537189a8915f435763dc5768a53b1e47 SHA512 c6a73722d224c39ec1dc2473d41aafbee5c893942ede415ac2eab01234af5748677a49e3d4016ebad87fc61f16b1fca9c40c35482c557a29ebdf74039eb50992
+DIST firefox-91.8.0esr-en-CA.xpi 509587 BLAKE2B 172645996bbffc8bb88f56858920ee837acb61fa755742b9ece0ca13d699af5989ce44cdb40506d0835e10c63471b5705d3ceff55459241d0e87f3d259bca0ee SHA512 8131bfbed17c6df8f41bd605f85c1f212ffcdd790c9b53b9bee1cc8d7490ff1dfa7507e86ac7c4122c1794cbeea42735ac530fd4ef8b7cdee3cf4a3f901ad2c8
+DIST firefox-91.8.0esr-en-GB.xpi 510585 BLAKE2B f248f3e96e6b4f8446de3fe3186a9ee05a12a3b42b10c34e7fa9cb3b873facaadbaa4618eab575d99827c6e3d8c12daa198b6af151930defc3f4729f020d7798 SHA512 b73f249b44ecac451ac9fab14a277f8b6bf747776b82fbf1af77090d806d8cf90ae1586bd957d32dcfc4fa9cccb59bdcee66d3ef1c48e18366e83d7c3a6db1a9
+DIST firefox-91.8.0esr-eo.xpi 534796 BLAKE2B 1a797c34b3a4132a96277de26a894212398244a3170db35318a90f88e073644102184ae8ced258f7c22e9807729b78587f3ed1c07813177e7f94fe7e9a738a4b SHA512 aac1afcc85d998a21c47c5305fa9b054212991832cc8b47c95296b8b4e20c67b15fc6a43953f8589e5f82576c682dcfe127b24dafdf928d6de2406786d40fe80
+DIST firefox-91.8.0esr-es-AR.xpi 546689 BLAKE2B b83fcfbff361929699fd841792521105a925c55af578aea4f8d660cb4411bf859dc7fce9fde129a3d26fe50834f123abcd7f139f515926330ae8c32a50158a1a SHA512 61c2dd68bffeaba9dd271d84de65425b3fdbc69f9c4a1789b20c8e06073d10debc74f6f41ebdf81d9f014a8747d5caa197340b112dbdd8dd108e24d633fc220c
+DIST firefox-91.8.0esr-es-CL.xpi 546375 BLAKE2B 1951d543bbab2fc35b4c0ad2061fd2f12012716613377d569d43a8dd5a4920296cdc681cb56ba11af4bedb1bc3fd700a24913f53c349775731bfa65414b0fc3c SHA512 1972ada130e47b2b8d4c554aff4f9d643e9f7b74777c2720435f0f8fecb92931b54d1e26a2d958b92468d5fa2ea27b2f6353ffc1503026020a93d460d05968e0
+DIST firefox-91.8.0esr-es-ES.xpi 537067 BLAKE2B a44298a4319636bdffbd87b10b0b424c4e4a42cf37d4094ace849f4b92f8dd7f07574b286e290386f9c50778074860d2eb09eb15760f5d94b6589aa7e4c84446 SHA512 17a6225b08d7ef6740c9faed796f05a8a7ebcbab9f330d1e056d5a5fabd9d22b680331ad02dce9a8cbd0a6103de78051ea5e17892faee8a720747178da3f0420
+DIST firefox-91.8.0esr-es-MX.xpi 550001 BLAKE2B aa5dc2fc2da50935163623b1316846fe7bdd892b5e472ad11cd64e96db2d2ecec521fbc2280f90872f8feb1de403f43da23442f76654c94d758408c98090a69b SHA512 f2a93b444f50b632d3f785df69d20b973771b8497c2d1bc34998255a8b48553f70b297b17ab5635e4f0e35eaeda2c50bffe6ae3d4c4908f6ec52f5a85ba648fc
+DIST firefox-91.8.0esr-et.xpi 506667 BLAKE2B ee4121b80d596557a0c1ef9d2e25b479a7fbac0d129b6bcc01643185093a4f74b43eebf08a0481ae10b215dc479f8e6d2b29396fb47a39f830adad2bc0003efd SHA512 d19037293b94d763842afd8b15b587322a52faaf8b45d48d27227876854c5d3a2440d0b1778e12e7f0ef2704275cbb65efa98a35cd97f1c6f02bb260dcddd354
+DIST firefox-91.8.0esr-eu.xpi 536331 BLAKE2B 1a404cbbc8167018e8030b6cc5b37d95b14d452ba5f2e82d852fbbb260de7470b52a7eb0441dd4fb3242bd5874a9157e64cf1d0440014bdd8edf8bf31a5aaef5 SHA512 bed42f32a5171d4105f9016d63fd1e0c2f4b773edc077640be6a2441b545fb9423264f197b003caf331f25ffc890ee3f695c91b7f5151c7769dcaa6dee0318b5
+DIST firefox-91.8.0esr-fa.xpi 559386 BLAKE2B 729adae67f6901c29cd74089ca7140c6651c2434c5a22c4bb7cc6fc5116db966857ec7bc19cda1951df1987b826038e09813c9ba68d23a983c56ea0d825f6453 SHA512 9ff37a47fba8c397f29cbeae514250b161cf7ba594c36178ce06514c00139e25237ceb5864abe472f4a0e4b744c4a3e3c36641fb32f2a62650faee5e5f41faa6
+DIST firefox-91.8.0esr-ff.xpi 471856 BLAKE2B 2b16576f152efcdc86bdc9045b31ab20581443983416d7c4b468d6a121f50dd259d01ce5abdc5308a4c3f7852d7b4d74643cc6ec1d53b76d00ff3361a3ce9aa4 SHA512 36a44207672608d201f177fee37fd5edf4c346e22852870fe956cd268ddd83cd5b9cee4df942f6ece87495a94d93ed7a8f0c94c5aebaf93fe7d8b8be67e99452
+DIST firefox-91.8.0esr-fi.xpi 531491 BLAKE2B 536d13e3375a7268f34f76da00687503adf6d56744619c685598c7c8989020cc358b5e0d42a301e82944a8f39491957cad31c6b70e1f713ff73c8775e403279b SHA512 233c2b302a854e8966cf9d2628d82db71f67f08b7e42cd6444b9e62afc306333a78b0668a0fa30ddfce6a404e5952289962b0d93c92481c75c3d813bc53a6a29
+DIST firefox-91.8.0esr-fr.xpi 557629 BLAKE2B 79eacfffa81f6ec4fc3b06b68c859efb75d14ad720bdfc729afbcc1e2ff1daa518c9e67c46881aba7c7051e417f558a26e2823df02226df42991dcb56a79fd5d SHA512 593194f5260ff08521c2f4608fe87fc0dd127bfbaf68d760aa56279d953f9c60a9afb6da8c9b1ff37b95ee78d0ca94552795937abe94cb76be9ba30336a32c7f
+DIST firefox-91.8.0esr-fy-NL.xpi 543304 BLAKE2B bcbac9fd73b081aaf91d0fe0d36807aad983dff25fd21bb4b6667a97a5a40f3bc0151dfd8c4d3be7ba32e450ebd9a21b27bcc16eb7b95cfc334f957d0cdf5c89 SHA512 bd8a4e69fd0dfee2a7797312307470e07ba1a476f708f48cdc6b5d08029da4b5d63fb507cf48230bacfa99d4ca38e328a2422615c0b965f952f7feec71da7361
+DIST firefox-91.8.0esr-ga-IE.xpi 459837 BLAKE2B c771f52246f6bf32d99f6b3316f0ba098afbe2dd687b908c46c06e2161e3392e13aa916bafd31675964c64e5d771d8476eb672b4f5a8ab892e464752cd200b7c SHA512 01f2c2699415d7cbdd0b48549963d76ad7fe27c3f533ccfada7cd9dba1869b1efc565480dfa432b2e490fa0b5c77b90b189386bcd596147b1027640a241cf945
+DIST firefox-91.8.0esr-gd.xpi 530859 BLAKE2B 16023a811a2b25cbe2eff0c6359ae92b58bb992e30848080e78b02ca31f2fa535b97ac9645e6e9eb7117e484da119151e4b16c239e21edafc7892c0712e4553f SHA512 339186921ae75baab8e2787444e13e8787a6051cd248d372d1d4be327c59e13ffcf7cfb02d392df6c77624283d4e09fcc4cbf3f7fcb2a6a7152b4190ca08db11
+DIST firefox-91.8.0esr-gl.xpi 541302 BLAKE2B 9eb0ae0836e231515b41f78efd95dc4da29828e4e4c4690534f5ce0e41722bca6057b2466a9f2d753194959cef83bed9bda4b0f2ef5fb390741eb6080d1ae84b SHA512 3204531aafdb7a78c5b285ba66d89c5a0a5d0377b62afbafc48bbdbb2577b6f637f996ed3ce43d053aeb604ce57b6b42676fbabb2dda0a4e698c44e7ef847165
+DIST firefox-91.8.0esr-gn.xpi 557609 BLAKE2B 9da91c2f499dcf8e48bc4c877a4807ca84a49fc6721528a7803a4a6dc99159a2ef25ce46ab0b12987229498f66e551523c66b68c2827e20d179cd297864175d5 SHA512 8eb777431c0d040a340c121d611bb55a3474a84867018fa26a03e52c998ddc7e5b46414689ba4b322f78dbcae75fe7776c20e1eaaf66b073e4885751a209527a
+DIST firefox-91.8.0esr-gu-IN.xpi 529544 BLAKE2B a577ed8de4f0608e7b1e21ef7adba2badee56a720359f8bfd682dd4cc3ff78de7b170f919cb93eb20e99e330ad778eb09bbff9ca1912279ff508e2fc47530aec SHA512 527746eb8b17e351250dd357fa95ad5ced89024621eb6bb6a59cd5d9a1bfd586709bfa7f0bf7169d5267fcc9c56f93f9adf532d9012dcfe7cb2e4d24fd848d45
+DIST firefox-91.8.0esr-he.xpi 557197 BLAKE2B 247730cced8422276b7139b2b9ca05e8a5e138b541773d9f8834027476cff1bab1dbb7f5ddbe11a4b861f842dca2946acca461dae1834a219e5dc2ef4b1eecef SHA512 701d90460995f4a5f1678108c170d3e7b3b9c76ac8cb829c4385cd969269e26c2c3cca328e328b65bc20c6656437d24209356a04474bfd054644a7e7b0430252
+DIST firefox-91.8.0esr-hi-IN.xpi 560654 BLAKE2B 8274693804baa555fd18389c4fd0e1f9b5cc041e4adb983d8af69ff49bc80f61a16f493c9a501673a469d986d8f5a9373d9a4ad6d3dac839d4fa115d4b9541db SHA512 12754e6d766bb6c9c534fae7e0fd770df67081cf705a6f03f99c772f8d0c47d886d2711596135ac739fa44bffad67d9b3b0cd3626fb5766f9f98d7198f89c6a9
+DIST firefox-91.8.0esr-hr.xpi 530050 BLAKE2B 3dec41f4fe2f1150c5f7c0ed95eb6a631fe1f5cc18371500194fffde0153a0ef4aa5f30510ddba25037d7aee5e1335ca3f171e00775a2ebec12131441b222a42 SHA512 150efe1984a7395edeee193f57954f671bff9c807a785fbdb2a0123681015067ab46db48164c50cbd9798cc29a7179d4271b2dac2d4747e58c8d82aa40ea9179
+DIST firefox-91.8.0esr-hsb.xpi 562637 BLAKE2B b6b26c8093df4af8c203acb0314d6bfb9eed76b73d237a8f38cb3fc5fc579df081a770cef87db5e96a0fbd0cecf5e49536ddbe468a3bccb5a3c79e2a94b8364b SHA512 752ad73879921f4a6839b7945d1413f3fdfe9bb1b7f309ed69522d4ae233f998dc0fa658d89d733c30ef1fb4ff8afd3a5b5fd5c83afdecfa0d0ce3c963b46cdc
+DIST firefox-91.8.0esr-hu.xpi 566077 BLAKE2B c597d465b2b2955ff8f33f024dfde166471a7e57b39e8eb9b6db0013190121addbb0d433e197ac4e643e7c39d14c8fdf8b33d24301e11d447b980b3009c2c907 SHA512 9f8ec5a46e4599bb234e420895848ea2d583ecce173a7cb56ddbef86ee6ed6edf518f79bf85275a0a1b65efc6d6565a6cb29a61de38354efbd5ecc45838c04db
+DIST firefox-91.8.0esr-hy-AM.xpi 579765 BLAKE2B 53d997f5902cdce44a43aece964b75262bf2099515b601b1e095128eb678807ab88c2ae9f9b3771084b64384b4ad6ab203e7d36cc68e54309a0df805fea0cdd5 SHA512 68f6c358764c5294cd7b7e1bee9f97f8bd259582dbc2d2fc68b46034b4b0cc77aa8322b20bec6652b39a4e105c0c5981f1ed46e9cca89d3b243929afef645006
+DIST firefox-91.8.0esr-ia.xpi 532139 BLAKE2B 9a726990ea5e58e7a9a868ba6dd6a1474c25501eaf34bd33d5ba6edddc1021f02792d27c63632f06912163b558e1bc93f17404d4f7673c09f9ab55411d13236c SHA512 75a19a7e7679b666f069612139393f2718e4b839e850891edce2c78fb2ab066ea084ce5882a7f8b39a5e2ffb9b9878764a03dda2c248de3de76f19a628ce0d67
+DIST firefox-91.8.0esr-id.xpi 519832 BLAKE2B 94b0bd003ed23ff087a56e46fde70adc17ac78aa908cf2eb45c1e05c23050c1212d5b00905a1ac88cd8ca6375d4774e5d4d126539196f5764c11eb5c6df80f5e SHA512 e899b9bd2eb534adb497f4c1d935402b1b832c23d3352663ed45f8a932128167c4bd3e9fce5511e78b8c47514d520b55c522fa46662d2cc66a9cbfc47003dd4e
+DIST firefox-91.8.0esr-is.xpi 470234 BLAKE2B 87bf9e1a88aeb5d0d18874e2ea800b340508cc564f38954eeae2f5f3d059349f884d6f4c5bc1f259c2760090a701470bbc401a4977f3f9883757d148d7691f46 SHA512 4e4ad3a2b8064a41bb7ad5f005917b778269a2c9d67128ad416ff9517ac36b873cb69cd75b690d003ebc6602651091a9f1614c94db0b047e3079fd7a4226878f
+DIST firefox-91.8.0esr-it.xpi 459082 BLAKE2B f7e95555f4665af196e7ddd723e2fda1d21333412cee0e8f1ad9bbc19094e1fc994d1b0ed547f49dc3e41f200d8ff9121dfdf9615a790e82cf287a9df70087cb SHA512 21792c4df7fb2b745cc5d488714013b1b37ec231f66e49cb448d4dfee302e6925e5c9a2fab5a51dec5bc5035397a9ea43c6df6f62c86ca9dba651e91ddfd7627
+DIST firefox-91.8.0esr-ja.xpi 588079 BLAKE2B 40ff83d26e96089e5de58f836b7f2df2bfff65f2f7b14c8720425bb0fe87fd7a1b14b9753d9f95b90388d7601bccccb5f1d0ec17c51f367c33c65a2a579bed65 SHA512 7890afccad06813cba0ee76429cd32988dd5b9b65537789d93607410d841a200a0d569e8a46e205f1cf70ebcb6f107caf9893735c82d81c45bb6ba47d41e8ef6
+DIST firefox-91.8.0esr-ka.xpi 592258 BLAKE2B 2d02e6fc9c5c444f2c3b7c24922c326a686a0537050ef6c50605dd3889bb23722ebf499c7d39e0e076e9896315c29a638e2ccdf1b564deeb4564ff4c7b1f2339 SHA512 7cf8fb5432530aad07a002c3e19bba46fdb34a6e03f8fd96e464c608d1e0f54a3512b8e4a7a6c876e2d94cbc5c29ee00c821946dfe1fb8ad5e57342cbef10aa8
+DIST firefox-91.8.0esr-kab.xpi 545019 BLAKE2B 9d12456a8b03c3fadc7f5cf9562cf96ebf950890de8615c4f9eafa1a20cb6670006c1cdc324667963b4a357eefdc1537299126ec70bbb2ef8feee7a903a4f8bc SHA512 f808137137f7d33fdd3439685be314e2c2e022c580dc46d9f36bf628cc33e1db61b07d669e10a8b6355ba6b62ed55ef14615915aaeb02cb7992080509de3be29
+DIST firefox-91.8.0esr-kk.xpi 605562 BLAKE2B 8e9563ca9fa3d4f482e5e6537514cd1aad93f18d33ac9f3899ecea8a785bd388f83d4a440088a9ebf2a2e7ce126a247e6e89bb4e919761bd969f4a8bcc3768c5 SHA512 10c91d927fad34d6ed04364c3bd068b81e5691d8ac5e7d1d7fede1544a47b3ae1ae68f15b1774de078321b08809481b4b9d07186936685a2656623af10b4629e
+DIST firefox-91.8.0esr-km.xpi 533121 BLAKE2B 17c2fd90c92d01b303a2fceb646a4256176d37f9ed007d45705939da9fe2c233d3747910051cff3adbeb151887f7c2b4f515494f838ea1253ff92af949f36dd4 SHA512 66136359377d00bfd07e2b9c64b57140a12da5bbe362c2d0b685eb695bdffc4dbf9f907c291acac44063d6e048739700e8386bef829786715527501326bd66b6
+DIST firefox-91.8.0esr-kn.xpi 498975 BLAKE2B 0b562c7eb44972eba090bec4e638a0d4c2350894599025b55a330205d26047cd9d8f75783e835aab26621ac46976fe44c5f3b2120c9c425f3616e4a509737875 SHA512 5b5872d21251f55c6198ef5a24df424454fd886e0d00cdb8f81d4b45a674da7581d7628d25b85c15fe9b9fea5daa07d4eed8a514c14b11519f4fe366cd14c89c
+DIST firefox-91.8.0esr-ko.xpi 579065 BLAKE2B 7dc6ad02b92d09f7434af85ad4274ed74edd63da276bca4ebc6aadc22e9980b7ac9541f8b7594400c8d7babe5533a79d5798537360e369e055c0d5e3e34884d3 SHA512 03e4eaf9a86dc586b1b77250f34498b3330e105a9ed39cc9150bec1503ccedfc1f27a6ab4be27f84fa34ba58aed3d9c8e7ecfac26f1224fe32927132167e884b
+DIST firefox-91.8.0esr-lij.xpi 470184 BLAKE2B bfd4ff179fd4972f5c4ed93b0135d4c6a7818dcdeb79a3261aaf3166527f2c5231041114ae81827212fa6c101420e9831517a881487f1c34a8b8bac765d60224 SHA512 3f3c897593b22cf1b59cff76c90f1edae3d4fb5990b231165b3cb013c1a155d03eafc1964ff243666b6af109183e1b35af16982d1c45d5f07b91d1af69ac4673
+DIST firefox-91.8.0esr-lt.xpi 560118 BLAKE2B 91005af61dbc03b1af1c9c28bc09e3d92c09449345b29c59789e10168ab42e75379ed901f583db5f731af063cc7a510aff1d566a1b4cc5b3700dd07db424faf7 SHA512 a2c89d8234babe068a998bdb8f3c694083dce238940ca5214afbff923cdae8e599af4285048bb9d460ce9f122a4cb29e8cb513a1da39f3150fec6400c32f0b46
+DIST firefox-91.8.0esr-lv.xpi 462459 BLAKE2B ca88a2c2ae79e102babec047d90f13c7e7585e19fd160ae1d9f05d93c30271035fff7f8008dc5442c7b184f8b0c2e668a6705e8784352503a9d4e466b928a81d SHA512 0dfc05b81829197184faac702f9f4dfbd65ed488b4a7069cd9a6a2f7a9a734d33ba17c1b33d4e1b4cc30a0cb59f2fda6c1e8263ec3f31d26e16c8fe8fa26193b
+DIST firefox-91.8.0esr-mk.xpi 465356 BLAKE2B ca863b1b243042fa137678d9169f2aef7f94aeefefe0dd465c79121282c0f5af72f472e4c1e6f81a07ee43986791a38952166665b3f931cef9195f2c9c0a8f0f SHA512 06ba84bcec7d9a1ff3bcf12f7002f20d396fac585f9e5d9b9d1833c061d814a747120fccf576616bc606f74126d78e1baae34ed3812488f870f40b17cd3532b1
+DIST firefox-91.8.0esr-mr.xpi 532134 BLAKE2B 6da17633ee67af0e51f379b3f14ca530f8c8510f94fb50d611b76ea1d1b7ba0e018db2c24a861960c1c6dcbd9325d2887f63539abb2a857ac18348a61124456f SHA512 c97020f7bb02f61504bdc59a2300c7c6272324575f129cb81f5e6992c350e0c0f0f5ebfb5d6636a02830682f599150f111a6f2336fb8e6c59d80ff9febe81124
+DIST firefox-91.8.0esr-ms.xpi 447351 BLAKE2B 1da8dcc8ca5b9b4e59d366fb4e35da791e0139ff4c221576b5e644a5eae874ebf96b0c463136a81ddbc696de96e46a2b23ec4900118bdd42da4e38d256154321 SHA512 d7cf4e07e61d9b941dcd692f4d7668c2c20967d2cc1335b207711398538ab3cc3e1ef9c9934f2005ba6cb5df7f358cbf288252827e8752c08e2c2909af7a10a1
+DIST firefox-91.8.0esr-my.xpi 516303 BLAKE2B c9a4405476deebf515ab2981e2e1fbe2bdd42aeaf7bb34aae342a8113d2807eda44925113889413e19c8d669f47742dc27e8d6cadfe84e4c3d32858affc0f010 SHA512 0d16ce383e2fddfa226c3085fd3000e5b7e0556ebd9829eef6b80ea9c5e1844b5cce494539d8e45b3e81c9cf2090443187db640fabdaa9f9126b57aa7d9656f2
+DIST firefox-91.8.0esr-nb-NO.xpi 529437 BLAKE2B 8901fb9ef256ec8fa703bcb4767104ec33d72ff33447d232278e7cb4fdd14f9436928aaa1dbde90fc33ca6a514d66cfa4ac5506eaedf921bdd0ad16962f9cb47 SHA512 49ac3719240e19acb11e625dcc3add8db1367d264ff243bcbfdd431d5a951b095a6545b491af63275daf70bd257c77065e77b6dfff0250f0ae6dd297c4ec10f1
+DIST firefox-91.8.0esr-ne-NP.xpi 485214 BLAKE2B 4b082249929344ddf13496c272dfb1c083d5e21e8752e166853f665354b65c3d83593567f208b42c966d0227e46aa7cfd32c601827d96b96726456e8d7806119 SHA512 562172ade9c8fbf971969f06cf95d9bc60dfd81a46308a6de7febe8dbddfa81744a935eee9284851431099daf0a3db248f9bcd6dff05f1575c8fd1b3d998bbca
+DIST firefox-91.8.0esr-nl.xpi 537394 BLAKE2B 1e2b05feea71763ad4960678725a90cf6806895e7b92df7f0a265e6c94322277c76f36bdd9fca5ae1b57d753bb50599da708fe016fffa1abda67bb7dc9e512a8 SHA512 123e11e09f09d1a76f58bdfd0b884885ecf570f2a04fd45e9c6add06dc7889124e09a69fbeba88c0aa2e23571234816762adfd93a8867f55faafed2e239af512
+DIST firefox-91.8.0esr-nn-NO.xpi 531686 BLAKE2B 77f561d7155e2ba999ce7050c6a34aac288777f331cd3cc9f2b3d98acdd1c6c19336fb3e62f06228d77ba6479f3be356769c50833424c9b3e37aad3d8bcaf75e SHA512 5ed5d308f4537581ba8ce045391991977786f7d2546f89b12923d102c79c43104e2b25391ad74a301d7950a3965aa96aaeaeebb6509893f1280d26244feebf83
+DIST firefox-91.8.0esr-oc.xpi 552956 BLAKE2B c63515f7ba1e5927177fd1c431dae148ca0177d8c7f64bbff75d36501744eaf8b7b790bb6089c737cee6f9288490b02d2a8965cad20395445f7af541d48c3c12 SHA512 4f96c3f377e8894b824339d29a08ae25022e70dfc8b40a34acda1da7dbe1176f164eeba8d0d23927407cedc5722a027dee64d8e27647784bf337f1271c25d1ae
+DIST firefox-91.8.0esr-pa-IN.xpi 595976 BLAKE2B 9c73eaad13c43bf22bd11515ce126709b55999c08c90ba07340779c983a76ce88cdb99542d9d94902498b45e7bbfb4c88caebd621bc148e9bd26024632219c52 SHA512 879163889b967238addf3f28ebd9abd735dedc518bf2b6521b3205184b3b2a919ba37b3ede297fd6c2c87bfe1a91c5dc91695a16bec3a2d4a0017b05c1d04cfb
+DIST firefox-91.8.0esr-pl.xpi 555623 BLAKE2B f878abb29885685306831071f39bbf360c3351613ed2ff1aca075fdfb72d373f1e9edc4ca3615fe47679af11938bfe8350a9146cc6205a442d3d59217b3443eb SHA512 ec96c1016d7656d07b12db642262f14ae1490263992e2dffc896af85b8b23480c1de657747e1f2520702445b56f787c371bf5a1fdfdfc53d8bd78c9605a46282
+DIST firefox-91.8.0esr-pt-BR.xpi 542613 BLAKE2B 56ac2a6caa61c5ca98000caa9f4c36a8afae9d6664acddc94aadc4fe70716b099833350a9358f02983159c1084df07311ba0815f994785f56e398d60a9fe5969 SHA512 4cad2b093542f341bf9997a2e4568d31b3983c400547a4cc42cc94bcea6dfa4861471ede0d2d65b0123fa0c0f800331fb5d10611fcac14f9d1ef2f8721d3f916
+DIST firefox-91.8.0esr-pt-PT.xpi 546352 BLAKE2B a62508ddd7068c5e913cc063c2d4cb9a04fbdb0ade233d292d4316eb2330928ec5f419baadb90299eaf4be08e5951caf173ab7b7ec08d9f51ddc26791fd828d7 SHA512 c202f7b2920e95f9ad3a5f91e7327ed31a4cec8817c03aaddc358be6a1d9df3e16c141c199e578fb20223cb083b35e6d59289a13f0775646781cec1d8e5ee673
+DIST firefox-91.8.0esr-rm.xpi 537368 BLAKE2B cc625d8dedceaa342c609f4fc2a66b0af5efead4c91cc84c7bebc9194872d3f2dcedfef6e79612b4a5a593462e87e0637ed75fa29f0d2fd29f103b791f8914e7 SHA512 9e5fe7b0d4f48772a9a56343a1c6e122f7ef3496a6cf217ac37458254c789f726001a61e2b8590376c9c3b7ea17e0d1111e3ff47b4ed1ed6d4d2ea1aa3315835
+DIST firefox-91.8.0esr-ro.xpi 529330 BLAKE2B b3f387de90fc4d7e1f1ce7b2f4e461f29a7d42f2f4f5e084a363e843b89ce345ed18f3ccfa96ae9f9d005c1c3bdc7c48756d4613152b48500fcdd351033984f2 SHA512 800fdca29789e9909454931702431449fe966b755fc1cfabe11dade41117d63d794b6bd8f0f231d37ab307dac237a3194ac5e674afe6f076254dd149ae3274c7
+DIST firefox-91.8.0esr-ru.xpi 627111 BLAKE2B da3059b8d165ced48c0098b9e5f1c5e76aeb539ed9dfe6653f0890aad18925f785086c2c6f4129e6cd0443e46a857154a9cf92ad7dbb6f608f11154dd0f7ae48 SHA512 f86ae72304daca30bf70f6363b8bc1f76f701213619005cefc68698d81c3acb85a4c50ea1114542503cc0dfee3c6dd0af92174780d396b4d9c87c501f2a59632
+DIST firefox-91.8.0esr-sco.xpi 504858 BLAKE2B c801d258ae23003b844a4d6ff83159ac8ee54511e2620965c4c78d3b5edfc65094dd1d26ecdfe77689fde5d28ad3225e632106fadf255036283c29f477ff65c9 SHA512 6bfc6257a30a5a935c76d254cb851fe953dac6c7396018eb1acb17782efbff07081f4095f5077f60cffe78e5786c8774131ee1e4df343e2fe80e7539396ebfc9
+DIST firefox-91.8.0esr-si.xpi 487961 BLAKE2B eb0caca09e2d696f6a82f8039e37039c06367058208bd1bff83095ddbf07afd26d24a75bd6b2da82dfc624bfa7cf7151427c8ed2979d44d8576c673135cd2c1e SHA512 8ea4d3913b7736e34cc3a073974d45b56feafd900e74edf2c284be6aa3ed1c62812f6c3ded61326d6e2550ab049c7300647d4ee2257fb28d6c7cdbb63dea7c89
+DIST firefox-91.8.0esr-sk.xpi 566487 BLAKE2B 39045f031bae73c3bbfb0cc55de4e2751c621ee51d37649c38c8209805b60d5c07d2081c16b95464de7259ffd3d88062fa614b7e806b141fe4ea8a23a9f7ce85 SHA512 2bfad4c510394c54a7fb7a19625b899bd0ead4097dea0a4a9725f21eff7702abb06b6c041ab6c6439e030a125d5760849e7a33be018d19b62c8d6bf4e8d70534
+DIST firefox-91.8.0esr-sl.xpi 538005 BLAKE2B fbd5aef6d5c8fb13d28282b4e35798616ef79a38d94a278c2efcfbb9fddf37ff5fae401a79e8519a18afebdf89fb4c74b7d8d46b42da03504dd8e39935b08390 SHA512 c964cc0e69e4c959667ebb698305bd2c4aca618cbbb115b0f4846737fee73d06169cc263e589f4a068e174e7ffc7fe457dc4ac5e6a53efb0ef54eaf469f6a9d6
+DIST firefox-91.8.0esr-son.xpi 425991 BLAKE2B 4b1cf9a9bbc96a57d907046d37ebaaf3c5396176cfdd662cd091d18ffbbdd2d903f6e95088f6851a18d4c3619a4d7ffcfb2af347f8d1b78f6196dd1ccbe57790 SHA512 6a861e74452e8c9ec74067e1137e18033ac00b7cc8153f2c8b0ce3967a94ab1be1959f92e65e0a87b357476521c23f6de6b1a76f2f44a4be7f75d874e57265cc
+DIST firefox-91.8.0esr-sq.xpi 555998 BLAKE2B ad173fcdfdd17aae33f77e210ff60da971df4927f543c9e9f97948570348c42a2b6a94ec86714000beeffc40f28d050c88144d7d389e201db58cc3922ab6e0d0 SHA512 52da677aab6747c90a52c9f63790ec5d653472617f2154aa21f618131f71926272e85087013f3c275d58c105b6d0fbc06d519d168970f9a75c7eb13165c248e2
+DIST firefox-91.8.0esr-sr.xpi 586083 BLAKE2B 8e7bc836028a4a3d52b4a4c08db4b6aa1f0460f466434cd93f046681ec1ed4b0ac4bf2a0c305290cdfa1a0d23a9e6e908005df0d16c2f26e8d0effefe1766dfe SHA512 c635d4acdf2342b0e0a4159cfba00f78d8d9eea72abd4cad42b32e02c38df54383f56b63cbeb3798432732fcf89b104bf9eb51833fea922774d8488609faffbc
+DIST firefox-91.8.0esr-sv-SE.xpi 539966 BLAKE2B cd8ea0d2a17bf797dbcf654a8978a79630333561751141937df6b6e545554489f78cb6e1290ce73e2f03c18d3b5c8614d824cb3b185ac888957533dd3cf2fedd SHA512 ef99f5949da49648749834d589595b3c8b1d2f4132a88732eb3e884e8281033691036f8cb417f4734556eca12b2c7cc5402cb00298ebaaa2862d180576884784
+DIST firefox-91.8.0esr-szl.xpi 509815 BLAKE2B af862e3a703d39c5387f3478c4a375679bae818e8985198c1adf24328a16e91b2fc2ef9d5775ec139bc967b53653f3f4afa1d65f94ca8400184025e6f933171e SHA512 fa27a3946179f11959c2a04c6363b3015b7e98023b52dc76383b78f2ca2ee0848b39658bfac94f59505b0fb4b34d7f876f6ab43e51f0e2a4147303a5c4b521c9
+DIST firefox-91.8.0esr-ta.xpi 513810 BLAKE2B 0e4fc5189297b12286c289b5e2b6e5913f1f3135da4a52148392f14fcda90ca8d3922f1e5cd8061e92a7ab8a8e229ebda77b5e5847fd737856ad302005bdc95e SHA512 91be6c2e8f03d3526bceed3b8d51e15f4675ebb52f84e9e3f9a8e80c9ac4f7bc25f8604ebc46600db9b3e6495f6818912af015c3abea4c85c82124263206efe8
+DIST firefox-91.8.0esr-te.xpi 549966 BLAKE2B b1aab69ccc690baaf264731971682dde4948c0dcd3302c18989002c6b2b24beb4efeb267979dd1461de46968355190b6c542ed2c50305e1b4dd34b821e790588 SHA512 a838dc5aeb39fb21d305d44cf958754234ad72d9e2102096b2adf11a94e6271f5cb77c39be734ef4ad8e8846eb8aa6df6ea3918a2eb342a0f4075785a37eb445
+DIST firefox-91.8.0esr-th.xpi 607080 BLAKE2B 66d8ce0eb88661039387304a24e0ce3b3f0d6cce52b3e9dfa47227e821672ddc8223d961df4e953084fc54c3015559323c975803771961a42ba92ba38414993f SHA512 4f75012d0a041fb03b7cd95828e235ba3a8b7fd07f36ab745c7258993598d5549e2bcc2924a4d7362fa9e5f3b3ac1b67ed7443dcbd80c9c173c87c9507125031
+DIST firefox-91.8.0esr-tl.xpi 516123 BLAKE2B be09955aa2e1a7ec8e801773570e7ecab7e7ff2e06ad3523882f039e8e10e62ae107c04a5660c97588c4ef7ae0d1d7e7f0753b32c3d71e60f7e02807933160d7 SHA512 ec50571f2f3e5a7bc47aeb5a310481414751158260728c6fe3c26dad691b785fef9584d1fffe3f0f75cb0e821678bfb6b0b9342ce5f90aea9c187b09f9403e86
+DIST firefox-91.8.0esr-tr.xpi 553682 BLAKE2B fca8b1bb87f9a06f863eabd5d2cf0fcc4b0133bc62593d185fc8bd99d6467807911043731ee993e6f3cc56d352d9667f9a995d4710e6ecce7558bdb80573ce7c SHA512 6750cb930eb737c5d353d9a84d66d933151870b90786da27546abb4ad6d7fc848725b28414c5dc398500436f158432ced4a6020981488c6e83969b3ac7876d5e
+DIST firefox-91.8.0esr-trs.xpi 491083 BLAKE2B e95d15155b148b0d7fd4f1001a06ece273efb0455b3308016ae9e44438f65cb0acc7e7c2878d7e345403d2590da9d64e8d4ab53b26f6ebd907b0476220715aac SHA512 51a58ca8ef56d66d3d60dc6d5cbaf969d4e618d1ad4193e0376e7069ad92c240513a34f758ccb18e0292ba6651d6399e5ddf42ce495befdc3acd9e8c556c8790
+DIST firefox-91.8.0esr-uk.xpi 620516 BLAKE2B 45c8b914847e593233d176f011de41315f6dc4badb36850ca6c25e08454a42d01106d4570b2752cf1c66a5b8cf1147786e698ec769e7795d24a7f015b0f005bc SHA512 b24abf08bae8559d3194d4977f7229f32f1237efac1065e051e6c173452727833072b7f935b69974db71b0fe84c6997f0bfc6f019b0911402380675eb106b7fd
+DIST firefox-91.8.0esr-ur.xpi 557307 BLAKE2B 7bc39e32bfb2dc61b2204bedbcb2cb81b52af3da01a4c1ef3ee5bf0e3d04fef687def59fc72a94fb528bd04ff5af5fb953d0c624818eac3b6d3f7fa502b4816a SHA512 71ec8d7fe25ebe3c8521c2f6b1d59efae7ccd769f42f7f2b3f1664ec7eb8747edfb131760ba77e5404607c7a97e9c69dea893f0803cd50381b07288dc6fefa75
+DIST firefox-91.8.0esr-uz.xpi 466870 BLAKE2B 0698a101ee3f4261b23f852f43a343c0a3f0b2e9c9bdf4f91da4213ae416d4914148796b2fbdd7e09dff8b79b2f1b628821ad8db960c94bae4461eef1e3eb05c SHA512 38df254ec0ee1255bb25b93897a8bda1e636ed9bd018d2c77d491bd14223e48895b31836b979680bfb717f8d4fd3eb6bb76b8816b204bef73754c0bfc5fcbc2e
+DIST firefox-91.8.0esr-vi.xpi 573490 BLAKE2B fd86564c360d5abcb904346f17ff3d710a43c3fd2b65911246c72054eaec103193ad2adbd46d34d19525494420ab940923fca476317f4a38819871c8bc67cd50 SHA512 e7dcff7df3e14f87d22de6ea38acc955003635b8d2097c694ba9199a2d33a2b88d926b7876fa5b9e8e11a07b65ae5e5a8c5984d17c2018c6c88d96d0df88cace
+DIST firefox-91.8.0esr-xh.xpi 428174 BLAKE2B 5b8783a6d95f54b6661f1498a5829de69dc8e0fad587ceb554c1580d00251f7c438f91bdf321bf95ce59d20cc935f9c75cf5e80b3874c7ddc5f3beef938d69be SHA512 4cf3ffdfd21a6666a7b761853813f5897f5fdc9f904231ca185cfcd06e50b496bf22b232bc88e91898e5b76855e1d939f15b2067421969b606a30742e2681b6b
+DIST firefox-91.8.0esr-zh-CN.xpi 575374 BLAKE2B cc5798a6e5c143bc5a58dff2ceab883c2635461b31a7785b031e4254da2b13fd2d6c095a1da54025443dcabb2ec6ecf661800fc1ab410195dd3be57430a821b1 SHA512 2056f9543a0692246b47a32d5d030734dceb9d8d109c94a7960a1f367ff3ee85ccf73d839492a57abf286f09a7e5bb43cb1d50a8be990b1a7e8b1fc1802a626a
+DIST firefox-91.8.0esr-zh-TW.xpi 576235 BLAKE2B 83c9bdb83050a7957891571f49b8baba78eddca780f9362fc86f761b61f6840b14395941214391438f4db4e9a07689c486baf2c32ff3d249bad9e35f8bc22cf4 SHA512 efac8090ffd8d5661df24a0d5f6726b5c15969dd349a28ab716e7ae059daf62605dde41df13b4c253c2b2bec5201554b4e06b490d9066188ad9d65b42548ab15
+DIST firefox-91.8.0esr.source.tar.xz 380325092 BLAKE2B 9bc470d0e8c65517d67f4075be2aece6e82af7dc89c40018359d3dd53d45d67424db8ed4614dd3dde430e08ec6ffff29f4ecc81e1990e05abd05804c6a2b5891 SHA512 edea2c7d4d3d0322091b20b623019ef041090d9f89f33c8e3140f66a54624261f278257393db70d2038154de8ee02da0bee6ecf85c281f3558338da71fc173c3
DIST firefox-91esr-patches-05j.tar.xz 17116 BLAKE2B 5db6d2d3d5432369d2cfcda1a2b542d70ac18c1af7013d91984054c9658d7e3f989527c3a248de53f2e8dc51a852a46477f9ad75e98db28f50f8609fcafe547c SHA512 42080a8e28014d5f8de7ff45e0128ab71747faad7a92f0f7094686125835c168751794bd0229f77290f075502c271af0171ffae2863325d10cc6e8a853a90d3e
DIST firefox-91esr-patches-06j.tar.xz 17668 BLAKE2B ebe51e06197b70b0f0661724e1ccf2f2aaf0e0eb4576e795963c6a0f9c32f293825b8d2a487dcadd8e5e1cb5db7c756016c50f34e6bc6df451b44e54ef76686e SHA512 3af533a49c5e4a6fdb5be2225256655d402055332ba98f3aa159fcc78c4a9901a541b63d68cb02440f55ede04858388881118f655efebc75b18c316e0ab522a7
DIST firefox-98-patches-04j.tar.xz 17532 BLAKE2B da525840a0850a504d69dd8d758bd32c0146653450e5ca1023f43909fa3149424f48abfa98e8152875e44d72852a0310afbb42dc2684e3eecf666cdf6d84223d SHA512 db1b352c61ac784d44e197280b33e9088286571a66df6415ba28e5c910c67853053f56cd9c27faff2de77e13939e5d3e221ec4384e34881127e43a5cc315d357
@@ -306,5 +404,6 @@ DIST firefox-98.0.2-zh-TW.xpi 577898 BLAKE2B 271fb14f82b014f6d9705380df3eaa739d4
DIST firefox-98.0.2.source.tar.xz 479907760 BLAKE2B 41b0237acbc061366927612472aece6559ba48b8073eae6b0f79a5f00f21a232e092ef0a332cfded1ca5cf4b6bcd9cddc1ff78236ff3fe883960092e98a9497e SHA512 b567b53fcdc08491063d535545f558ea56ec5be02ca540661de116986245b79f509e0103cea5661faf9f4b3d30b67758ebdb4b30401e260ee27cbb300203f36e
EBUILD firefox-91.7.0.ebuild 35120 BLAKE2B 8d1371f84ea72d17533a28b04685d0215f41ce760f93f26b5608a0aca3152ead53089bc622724f9e4b63ac2df4078b3d095210d6671ef2a3c27af0379642601f SHA512 a707b35fcb6ec9d0bb6b2aafb8762dc7dcde47b9bc7f354faa68a4fddd901b0cce2906bded2fc2d5b99139e7f79c929b7395d1a4a40ddba85396dbd07d027d69
EBUILD firefox-91.7.1.ebuild 35372 BLAKE2B b262d911d8d87cd6443f57fc83091890172c9b3403fc190fdc73f3529f740a27cc1a0e41dec5d09d0cf38b11c354a2d3c880e32c3929c167b67ba4684d41e886 SHA512 0935f1e91642d1b7e766a6f40182890f74d5283006b9a4497e9096c071ce3d1ebf7ed84abe30f4f8739f4a8628cf65edb67a51e0812786b9d0b4193a43152e1a
+EBUILD firefox-91.8.0.ebuild 35558 BLAKE2B 2d01628fa9504d964f4551e5c2d534a7168f6f8b7e1481c3e33d8042df337ea91b697b75ce14656abe66ce591ce92e2502f8a64a7ba7d4e826d57620c40aba60 SHA512 4539e88c7fc69b02e0a034ea976ef0f84d149b9ec7e51c48c956441a753cf363ac7e56677b6cfd68a7dd590adbae0b8cb02d48d230ac56e7f6b75480ac78f916
EBUILD firefox-98.0.2.ebuild 35858 BLAKE2B d47fa979a940610418e4395d156357a2463bc2f3607f9552cae65f1424406be5cb71044096bf987929cf0a91f26b3f42e5fd01fc31fc97172af67e56b371d793 SHA512 fd2ac8e087edfd54d063cf3fc4b20b6b7e9a29889c5ee821faf148edfcaba694863d1cf2d452926e8141994d9c9b3cbe6ea98b83ee9ffd4faf3d9894ccec94df
MISC metadata.xml 2332 BLAKE2B bd6315f382245e703161d0e7f6627695a5e12a9905fffa0a24c47976ac0abb6ae3e52450cac757c2830bab918b02e42f16972e2784ef4b51b9cf4db342532839 SHA512 78953e7162c905b2b0f481a2193732c91dc582da4c694093bc2fee77b35a9a01a9b13c0b67c530dcb867d5049c4d045bc90e244f31755bec561b33fd9efabdaf
diff --git a/www-client/firefox/firefox-91.8.0.ebuild b/www-client/firefox/firefox-91.8.0.ebuild
new file mode 100644
index 000000000000..6412ad54f692
--- /dev/null
+++ b/www-client/firefox/firefox-91.8.0.ebuild
@@ -0,0 +1,1241 @@
+# 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=13
+
+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: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] )
+ )
+ )
+ (
+ sys-devel/clang:11
+ sys-devel/llvm:11
+ clang? (
+ =sys-devel/lld-11*
+ pgo? ( =sys-libs/compiler-rt-sanitizers-11*[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"
+ 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 <gcc-11 to build ${CATEGORY}/${P}."
+ 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
+ # 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() {
+ if use lto; then
+ rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch || die
+ fi
+
+ if use system-av1 && has_version "<media-libs/dav1d-1.0.0"; then
+ rm -v "${WORKDIR}"/firefox-patches/0033-bgo-835788-dav1d-1.0.0-support.patch || die
+ elog "<media-libs/dav1d-1.0.0 detected, removing 1.0.0 compat patch."
+ elif ! use system-av1; then
+ rm -v "${WORKDIR}"/firefox-patches/0033-bgo-835788-dav1d-1.0.0-support.patch || die
+ elog "-system-av1 USE flag detected, removing 1.0.0 compat patch."
+ fi
+
+ 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 target-lexicon-0.9.0
+
+ # Create build dir
+ BUILD_DIR="${WORKDIR}/${PN}_build"
+ mkdir -p "${BUILD_DIR}" || die
+
+ # Write API keys to disk
+ echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
+ echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
+ echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
+
+ xdg_src_prepare
+}
+
+src_configure() {
+ # Show flags set at the beginning
+ einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
+ einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
+ einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
+ einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
+ einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
+
+ local have_switched_compiler=
+ if use clang && ! tc-is-clang ; then
+ # Force clang
+ einfo "Enforcing the use of clang due to USE=clang ..."
+ have_switched_compiler=yes
+ AR=llvm-ar
+ CC=${CHOST}-clang
+ CXX=${CHOST}-clang++
+ NM=llvm-nm
+ RANLIB=llvm-ranlib
+ elif ! use clang && ! tc-is-gcc ; then
+ # Force gcc
+ have_switched_compiler=yes
+ einfo "Enforcing the use of gcc due to USE=-clang ..."
+ AR=gcc-ar
+ CC=${CHOST}-gcc
+ CXX=${CHOST}-g++
+ NM=gcc-nm
+ RANLIB=gcc-ranlib
+ fi
+
+ if [[ -n "${have_switched_compiler}" ]] ; then
+ # Because we switched active compiler we have to ensure
+ # that no unsupported flags are set
+ strip-unsupported-flags
+ fi
+
+ # Ensure we use correct toolchain
+ export HOST_CC="$(tc-getBUILD_CC)"
+ export HOST_CXX="$(tc-getBUILD_CXX)"
+ tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
+
+ # Pass the correct toolchain paths through cbindgen
+ if tc-is-cross-compiler ; then
+ export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
+ fi
+
+ # Set MOZILLA_FIVE_HOME
+ export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
+
+ # python/mach/mach/mixin/process.py fails to detect SHELL
+ export SHELL="${EPREFIX}/bin/bash"
+
+ # Set 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="${SYSROOT}${EPREFIX}/usr/include" \
+ --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)"
+
+ # Set update channel
+ local update_channel=release
+ [[ -n ${MOZ_ESR} ]] && update_channel=esr
+ mozconfig_add_options_ac '' --update-channel=${update_channel}
+
+ if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
+ mozconfig_add_options_ac '' --enable-rust-simd
+ fi
+
+ if [[ -s "${S}/api-google.key" ]] ; then
+ local key_origin="Gentoo default"
+ if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
+ key_origin="User value"
+ fi
+
+ mozconfig_add_options_ac "${key_origin}" \
+ --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
+ else
+ einfo "Building without Google API key ..."
+ fi
+
+ if [[ -s "${S}/api-location.key" ]] ; then
+ local key_origin="Gentoo default"
+ if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
+ key_origin="User value"
+ fi
+
+ mozconfig_add_options_ac "${key_origin}" \
+ --with-google-location-service-api-keyfile="${S}/api-location.key"
+ else
+ einfo "Building without Location API key ..."
+ fi
+
+ if [[ -s "${S}/api-mozilla.key" ]] ; then
+ local key_origin="Gentoo default"
+ if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
+ key_origin="User value"
+ fi
+
+ mozconfig_add_options_ac "${key_origin}" \
+ --with-mozilla-api-keyfile="${S}/api-mozilla.key"
+ else
+ einfo "Building without Mozilla API key ..."
+ fi
+
+ mozconfig_use_with system-av1
+ mozconfig_use_with system-harfbuzz
+ mozconfig_use_with system-harfbuzz system-graphite2
+ mozconfig_use_with system-icu
+ mozconfig_use_with system-jpeg
+ mozconfig_use_with system-libevent system-libevent "${SYSROOT}${EPREFIX}/usr"
+ mozconfig_use_with system-libvpx
+ mozconfig_use_with system-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
+}