diff options
Diffstat (limited to 'www-client')
-rw-r--r-- | www-client/Manifest.gz | bin | 6208 -> 6208 bytes | |||
-rw-r--r-- | www-client/firefox-bin/Manifest | 98 | ||||
-rw-r--r-- | www-client/firefox-bin/firefox-bin-91.13.0.ebuild | 389 | ||||
-rw-r--r-- | www-client/firefox/Manifest | 399 | ||||
-rw-r--r-- | www-client/firefox/firefox-102.2.0.ebuild | 1274 | ||||
-rw-r--r-- | www-client/firefox/firefox-104.0.2.ebuild | 1278 | ||||
-rw-r--r-- | www-client/firefox/firefox-105.0.ebuild | 1287 | ||||
-rw-r--r-- | www-client/firefox/firefox-91.13.0.ebuild | 1236 |
8 files changed, 0 insertions, 5961 deletions
diff --git a/www-client/Manifest.gz b/www-client/Manifest.gz Binary files differindex e78a3a7d0a4b..303ddcf08b0e 100644 --- a/www-client/Manifest.gz +++ b/www-client/Manifest.gz diff --git a/www-client/firefox-bin/Manifest b/www-client/firefox-bin/Manifest index 435da44b54ec..1d793734bb4b 100644 --- a/www-client/firefox-bin/Manifest +++ b/www-client/firefox-bin/Manifest @@ -196,108 +196,10 @@ DIST firefox-105.0.1-vi.xpi 595135 BLAKE2B 7328350b96c64a83c9077bbc71d42f7d88258 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-91.13.0esr-ach.xpi 453223 BLAKE2B 88b43c79620d3e0263f7e251a41c8ee88f10798982d8a0db3d8d545b83aa4e3da75140f5d9bf879f2229ea831668344cefddf6c67ee45f3169c7d854cf53a90d SHA512 795ca4fced227f29861de8fe2e93acb339d41de8b09c941244f4b62c8e7835971ec4366bcb3a35aaa75e779087248df459364c262f2fd7b294a6d7176b74e1ef -DIST firefox-91.13.0esr-af.xpi 426921 BLAKE2B c0a89908f46ba666c9d3c9e916636e5aeff7564a0f2132213aa443c5dfed474006dd65dc8f47d0e0fa30d5435c810937da98536b3408dae62c428a5f1f4bbe78 SHA512 8c8a40cb2117479c08c13077eeffcd3473b4e2fd9164269da58a68b3c0e77c339184a2edca79ae80480f2b7e41c42e598a9350f01061b424cef1aab35a7480bd -DIST firefox-91.13.0esr-an.xpi 499888 BLAKE2B 5a3bf70080e5ce5fee3a47955678a179e716474c4f341cff1ebffef0401b2b24d0e61b30c772b3863a9b3e62bad68a37ba4037b8fea332d40194ad905fcedad1 SHA512 8935e71639824517870e679bfe4edd8870b37c36a4ec6d5e4a93c9496c5df551fcac14dab397be12f80e0a3f5fa14253f1995d0ee2e4328dd05219901299898b -DIST firefox-91.13.0esr-ar.xpi 559670 BLAKE2B e3ef0c84a954ca2ccd7510c0c1f2055fb9803602175ebeb373a1c952d3fb1883753734347bd2deb22474bf16fe12a8c4a00712fee042be86004d7cf8fc09e03f SHA512 a2e2fa7c2cbbe42f8cffb45eea60084f1010a02e1b2c30cd7c03f09451cf7d49623860db3d892eabe4f5b68c445f005eb9cb063b91f3252b9040387b635b05ad -DIST firefox-91.13.0esr-ast.xpi 498574 BLAKE2B 4faa3cd0abcf640f509640c50d043d8039e8962be497186029543e1597f583b4d3fc68c5fcadfd31f8f56a75871e750b1bf261a6af092cd8672e3427ef01a34d SHA512 201cc367019ea28a9416ad06faa06ca25c956a9e5d125484b396968a81ed1e545961a664493b6e9ab840b5363eda7e43414957b6eeac3146f9a69c032ca9227d -DIST firefox-91.13.0esr-az.xpi 489442 BLAKE2B 4671332c5aa979bc7134b2b1464e1862ba892d727a4c7543fd5d581dbce62871737c8dfc38ee4e973d219200e80de024e67e39222a70c9144639a2a0775155ac SHA512 af752135f6ca035fa0ddc0ccb00f42652a93efd34573357d76777d3a513802da6a3ddbcf129f33b3f3c8909d37cefe9ac8f1146804462d3e8ebe65d032ef3c7e -DIST firefox-91.13.0esr-be.xpi 622604 BLAKE2B 4f574f4dbe34265ad6dec0d3a70523a0230a22bf8d0e86aa08ed943a4cfc4969c38dad07767d1c6663b8eb9c37a0f940db5d0b85facbf838c399b0043bb80209 SHA512 18c468fe5e132cbc856f1c64c07ca2dadbd26f15bf3316fbdde6a8c117acd9baffddd4a65c10e0fb3a62e6a6bedf5688a552d706ca02b40f5f4e7809de4500c0 -DIST firefox-91.13.0esr-bg.xpi 567637 BLAKE2B 5d36444dcd3cf055cb8e414195537b19da4094c5d525f5f738c205fb0ba75a739a520ce7646dea4a87cad078ad481eee34cc3a30ee91fb60e04a9e5d551f84db SHA512 b875720d537068d96701ac302b631859eaa06a39f42b037d5bb9298f83a21a1842a00aec8272ece26658bc188c2484576838966286bee811e3c3413866dd6418 -DIST firefox-91.13.0esr-bn.xpi 556817 BLAKE2B 3632c91e9175c4fa2efe27e26b39d617df6b354584b59432125363e92d041bfbcb0ffcc3706d5ffcec132fcc32cc678808d58b2c189747d6b6c1c28b4048c4ec SHA512 334fb0284d803458ee7b1599bc9ec93b7600e66b248857f26a84ab0cf4b8f24ef04799c6ece0ee417acf075bf29842276c4b9d6ba689ffbe3576c34994f7bba6 -DIST firefox-91.13.0esr-br.xpi 526261 BLAKE2B 6cf9f4fd76b1578d17b70cf442b51b69888f6c759d3e354db8300ca81c2ef50104a9830089ceff3c5af156ff10f7ea9f3b3e2071d66b32d07a951f6608a6675b SHA512 92f786fbe732cac4fae38a7b16aef064c79ba9f5c874b5364d33e9164e74fd1aa2f44e5363c0eb354c485ae226ea3b02f3d8423e3ee07a903f3aec95c006be1c -DIST firefox-91.13.0esr-bs.xpi 463560 BLAKE2B 90757f791bbc7b38b6108760bd1e9c56b05654a4af8a0eae7f3aaeb6522e7dd5a8c710f5857a04d0ad8ca43ac79f5fecb9db482a9e1c1427c0f7aa8c16632bda SHA512 b16fabfe09700a682aa94d2dad8bda3a9f2d7ab048cdb8d27c39730ecc7b8903b3ea7d81e7bca8e58591a227aeede6063da028f73078a09dd7a188a7d4b2f454 -DIST firefox-91.13.0esr-ca-valencia.xpi 529401 BLAKE2B 0bc1c37e4a08d9d6f7b02d36125ca8062b8f587e8028a4d97e472363d4c948097067dd98204ed88c3440245758f6ecf251cb114db2ed8f18b0a913cb55391dbc SHA512 686516e72f86480acf35534d18b9ad76853a439733a7d5b38c7b919417f9e68470f3b7fe4035926df1afe16585b0c783d505d259fd91405176ecdab7c9676583 -DIST firefox-91.13.0esr-ca.xpi 532471 BLAKE2B c8d996d5a27d1d5396bd2e7359e19a386047ebde3fe9a18687d6440c7fbd4fb59b8122de6055ddf8b9d44e120b516d849eafd016ade36b88dca00e774ca42e90 SHA512 a5c925e84227aa4deadca8a780bdef74a0bd4b4732e973bcfe5352e1b1932065547fa7807a4308d8993fb17034d7a445c3e993d77ae02874cd89e649a1f440d8 -DIST firefox-91.13.0esr-cak.xpi 552611 BLAKE2B c6ac62da8287654b3c7e1bc4f0941059e5981b1d99d35ee5af2c4ecaec6b26da6ffa8b58754ba1a48451a60bce279f257af05ed4615cd8bdfa6b4b00e59e4af2 SHA512 b9795c438b01ffd48a649fd25bb379b49d89afc084e1c2f9cbae4af92419bbc7387bf4cab82d284f1e277273c9d9a19abf444cdaf4635ce839943bb08484c0fd -DIST firefox-91.13.0esr-cs.xpi 563176 BLAKE2B 37181f88370addeb66315092bc82f1e8aaf5a399ee85c14bf94820e09b697094f89f4fb4ad33d117df79f06b5df4b36590f372eea473f36b3f3ff0511844a4a8 SHA512 10fcd15d8cc66fd0518869f84bf123f94fe04da379f062f0211d4403272f77e23601a9f10fa9b191ee1e7c6c15d32f28efb0d834856280f5ca8b78257eff4fbb -DIST firefox-91.13.0esr-cy.xpi 542220 BLAKE2B 03fb0aa335ef0ab6d144f6d99f53c4a1af389db8cf44c61b611a61021b15601c51b67d1e403d8eaef42e54e129cee4068e2a58c56ab006f6f73927af809d7668 SHA512 36edf842c83529e9174747449567258e7e459a3a51edd123d40c83d4ddce34038b0fbbf07665a5506ae8c2bc7724939fbfef5c8b743b1be383220a5321d657c5 -DIST firefox-91.13.0esr-da.xpi 534151 BLAKE2B a8fbd9e16183b57b942db75ecc87dee57973692936d1590911cc8752f142b366bb6f506c1f0e29cd5c463f760a88f3c176263f8da479ea5ca3142527298283f9 SHA512 204b67e53b2e023f0ae4282b6ad7a70f67d88ab817ccfadcae5084386d30ae3fa83bfdb2b254b0438e5a2824b16e3ce0e95c6029a19a0b16e3781f2e0a740cd2 -DIST firefox-91.13.0esr-de.xpi 553591 BLAKE2B 0f079748002df2ddcafad403c98a9811b9719feeb98fa339dbd0b747754947e31bc4633ae964216282c3c1d581f7617b3cd7fe879a02d40ca149d6328504aebc SHA512 ba6eafc9319ce239b20c5932978da01100b355b37e709429863ec4bd5f6cd9da4d36fb7e0e1e9877419e63aaea94e9e120471f6ae0105e734e82cb4b764d8403 -DIST firefox-91.13.0esr-dsb.xpi 566480 BLAKE2B 9db1a8ea575ff845a4967cd8e2cffde25d5d36781d6d227bfaf64df47456e393c1af7e9c21361d3e99580dba94c2fd3c0b56d20f508e95590550666a022b9ce3 SHA512 c53bf9302de4197dfcd003ed35b87b5b66a01314f9691197ab4a314590f70dc0132303a2a1ca3a7d62e4e667616dcc515296b468630df32ec142bee408ba7ee3 -DIST firefox-91.13.0esr-el.xpi 639147 BLAKE2B b48a02f6749b3b72b9642ce387c56572ce969ffda0f858cf2181d0e75f6a9e670c7370d291e417cccc6b2b20afce417fac78ecca087735c5b6b91566dedf03c5 SHA512 b0d8f4fa28d0f62ad130bc664f35ae29b0d9ef5092aa7d87cf577fb249f3fd4cdad93a88bebaa0f5a8f965fad8acfd22ba53440c6bc1c3d1e920e19036aa3991 -DIST firefox-91.13.0esr-en-CA.xpi 509575 BLAKE2B 0d0fa8c9b7a3f14ac5cd1228b819dd2d362f23c64579564312da62f73c27a750bd91034b8b5cf4976cbcb77abf5ad65afa267b638ea1fea0925716c5b12992c0 SHA512 c807b355617fc015d145469bae5eb8db5991d27362f6011b61e7c98ba66fa1cdd0c4e1ef0b9cd5eaaa7e39a015b7af9e83e92c9ad29b7a26d4091961ec8321f7 -DIST firefox-91.13.0esr-en-GB.xpi 510583 BLAKE2B ac97614588e269d6d60f41964706027cff6371980fcac1003474231cede283cdb4520d389a0bab3b597e708e41cec07b744374a5cbf5062f1704e4cbcee8132d SHA512 f7d6fcc931b3acbf1051a031d8904de3f8a0c3f490ab86ce6ad831cda435e1a47303a41632fd60e48dffd9b94c220c7eddc8e9b3de802f801e9408b4a93108b2 -DIST firefox-91.13.0esr-eo.xpi 534814 BLAKE2B 1f89e3fea148c1d82d8af66a7e8c613b3fcf773451639109166a6cba33d949e428d10f0e3b6c0fc2eeb4317b5362ecd096b32e30ea412b5e2b1b9e783bf4934c SHA512 2e0bfe6d7a08da837251e2b334142c06f597acc85e4e68cae79dc3e157ad39be3c85eddada5be2105eececd8648974156a5b24d71da3d22d0b24ebd4e40f354b -DIST firefox-91.13.0esr-es-AR.xpi 546684 BLAKE2B 1c40ee32574150ab515a38199ccf79bb561b930b94c12b442cc093ba54cd9911b3f8c0da8cd2f4d66a7fb96e0febe7396a430fbad220e95181cbe03dbfb2227a SHA512 73bbe6d696bc116871860e0498a15add1b10efd55574ddfecbca847e348dd98849db57bd70098879809fc820be65ed4b4230a02b9a3a2a6294c740f5b4e9e41e -DIST firefox-91.13.0esr-es-CL.xpi 546379 BLAKE2B 737de2228470868b8c2c7ed0d352d54a91e360889acfe0e7cf2e4c405301b17c643cd8246f018e9cd672a19c86e0e5630c56d779e137875d0618c140808873f7 SHA512 478509669d663bacfdec2c585c3b210a833dc5bd3a875ef13168727ce087121c643d8403bf834798ac5047169f878f45f0bcf1181c63402418cdde14b5bbea1c -DIST firefox-91.13.0esr-es-ES.xpi 537070 BLAKE2B a65eb8091b99a83e6a05e117ef59fa0b95230ffec88d14b6cd7109df5fd9bd5bd7221861731668085460dcd611cebb4395957f267353782b9ff89db381c5ae79 SHA512 ebc2ea63e8a423f0ee34f655d7b908ef0625ee2ffdae7ef910c06622d064aefded0cb1ab5aefcc25b5f7b6af7b2a62c02f5088dc8cea0ca95cc56737486bcaf2 -DIST firefox-91.13.0esr-es-MX.xpi 549997 BLAKE2B 22ee7ee40f56e4b9afbe1cd4d35c644d80b80796a392e59d312758dc82c7a03f761e48a408b3dd7e2ca4d6fc79cb28769f6fa91bb05d063b411639f0481b8310 SHA512 2afbf71292e173e9438c0aec5fc9ce50e6805d8857f6b93dc0b89918fd360c2af286b2bc222e15de3107d8682e408d1125378d050b7e33ab13cd89c1bba29121 -DIST firefox-91.13.0esr-et.xpi 506670 BLAKE2B 6fc6802509aa11bbe1bf1b07d8a0cde326fbf33f3fcc55c44b5a0fa2c9ef46bb1c27066dda4be1c1c844ae3b591c55dac3346a154227c46cf64d3ea9c9843d1f SHA512 d6b55fcbdfc6e887a739afc2b00fc61d9c0e5a31c019d2a179fb0076d821ca28f0c69c588bb7d75f415fc8d1a5a4ae5dd149a0cc7445da4cceebebf9da034ee4 -DIST firefox-91.13.0esr-eu.xpi 536340 BLAKE2B f2f2d832a0cfa7e421d7de682ae4d54393dfc7e5bfae6141a4ca8a189fbee60653bef8fb489a9d329615e2f48fdf928ebad00c6a5e74423e135024a113a750b9 SHA512 e08e799c0592f36011e56d531cc57352e84f4787be37951f7bbc8a756caf6ac0749a7bb7f40404f02cf93b78e7db94c34a53600cebb86d4c10527c082f6836d6 -DIST firefox-91.13.0esr-fa.xpi 559384 BLAKE2B c6ac0edd19bbcf76c6130260de629bb522770da0464f8623af73fa07e008ab164a9dcd52bdcd7767d0901364922fb4d0a8718ef40bb96d2f74bfaba778ef8401 SHA512 c691581530cea9f825421bdd052210f0e565ed09a68607419555e2c3500cb047a768a6786d390ab02474e7daf640d8c4f6f6edd28483f657d2a2eb0dcbb6adae -DIST firefox-91.13.0esr-ff.xpi 471860 BLAKE2B 5c38546863ae1aec216d2816472807e1b371beb295ca8ded203f90240dd3b3c5f202e8ce450083352a5c5b45372f7cd5e40cd40f89dc9d1113f5320f5d60f6fb SHA512 8027306193f313518993a67d7248d5a958b8c2199332cece7ad0f329e562837ec2f73310b13063344a1a9ba31f2444ce6935bb9cc24740badf2749c579b5df5a -DIST firefox-91.13.0esr-fi.xpi 531484 BLAKE2B c166b2d10cd22a87fa96033218188d3c79f1f8a4163c3e6d2afc581b47b588211590fc9acad2315d3133bca1927c90eead9a21a418ddc2a2333c88bc8afa98c9 SHA512 03746ffb488e09cf7b6b7b32f1c962bccbdbaf0dae433517a1cca1609210928f5f3fa438c9f9c7a86bebdb8502df420496f4b8e1cb07212b4d42046faeb99b96 -DIST firefox-91.13.0esr-fr.xpi 557617 BLAKE2B 3acc76017f989bc9e2aa8b2e9f310b39abbdee7c8b40c76691683f8b56887fa73bded6a5d0c3f93cebe8fb3563db256c30fa605e36847bc0ba53fb65ac732a06 SHA512 6d63ae25a96abfb61b31bc7d40c7544a748c4bc8b4d4184787f45b712d371b39813e2e3ed7027732902109a4861af68b433cd46ba3c70a562b369720c5f0b474 -DIST firefox-91.13.0esr-fy-NL.xpi 543305 BLAKE2B ee0719ae8a65a38ae8a2b3ea30f139e5d7fe1c5590a98b0f2be6eaa9976e2e40007e430f1ea3841aaf8b257bc192252d0f716dfb58aeeef73c64405aa2b5053b SHA512 56399b8596a100bc43f1ca6f5e84a78c3891ea61d0353863c44e1e0e5d161ad2b874ea3c991a4531a66007375a067a1f66dc825539e2b9f7a468877eb673d834 -DIST firefox-91.13.0esr-ga-IE.xpi 459833 BLAKE2B b6c09bf669e6f0cfee2e080b24ae24bcbdc954e77859d8ec93e92514d294d199681c992ace4b51482e288b429282193e3351d25ee92dfcee88f24692c2b01693 SHA512 6517f3db9ce1236fe95747695996d59dfdc249a28e8461b5ffdfc4e5bd6232fb9712199ac3c8d0b09a5ae12a19f222dbec08471b9a6ce22a15a6d05c13c5e689 -DIST firefox-91.13.0esr-gd.xpi 530852 BLAKE2B 75c49bb13c300b59041247860940092c4b3ef6fcf1d500cd8ca26e04fa75525a1f0e1e555a4be1010ead41caa280bfe09bdbb4e880ffd67021efe4287d6aa32a SHA512 9b72673c9899df87ed093d86e1505084e32055d9f6b9cf6c2c86ba72775937c7c155a240745115eb07d10605eae7ad8bfd4e99787ea82b77d689dc6656500ceb -DIST firefox-91.13.0esr-gl.xpi 541304 BLAKE2B 32a62771acba1bacd794758dc64a64e783fd0e046771714a1ea253d15f1d12d90066bc7a6223ff7b05c1922ad16288dea1090509cc4ab1378c066a83cfe8d7c1 SHA512 989b2ec058ffeb6d5bb9d6148e72469b8ef77a0dbed23fcac8310762abe54686cd129a357f6e9b8b03271b64b300fa581a5675473d95b34c6b37ba4deb7d0704 -DIST firefox-91.13.0esr-gn.xpi 557596 BLAKE2B 7e57206c1b09e29477179fa1ea6880b38f09c24efdb3ab30dbf70e8be083b8d0c749a502e63116e517c2540466b0b706c259b64291af6e012c966887535ba55c SHA512 2c00601715a706a7793318f182af6ebf988229680f4618dde818617ecf45e17ebbd65a1d746e373374ed8ee638695223a3de13472dd36579e99b6d25bdd4c220 -DIST firefox-91.13.0esr-gu-IN.xpi 529544 BLAKE2B 4eec19b70b20e188a819edfe412fe006aae41f38578bf64b225b05daeacd16716604be3a62cffd561ca76a17e01e919ce39fddfc160914813b22c26417510816 SHA512 621a348303a67ab1805c0c5ad5de73f824e841832a37c59b13fa87ed95bf3953584baa2e839047e21a453c8bd7efa241dca0d0afb351f69de3a42ca4a063dab5 -DIST firefox-91.13.0esr-he.xpi 557199 BLAKE2B 3a0a7bf4dc63efd5a4010b8dba490955c2cc8afcee4d3683287fb7be981c3d995f1c60922f0f7309c459650593bcc44753fb7433d0e6fd00f8cdae0967e7ff94 SHA512 76e860db3c88c438fbf712a497554276d489b42f9b0019464ad6519a5861472f465a8325e19efffc2eac040d7f10ec37c4ac0bf800937f4387bfe18f56cc4966 -DIST firefox-91.13.0esr-hi-IN.xpi 560656 BLAKE2B 0f1e52f755d17560d2e604a6320e392da8ab3b1d2decc13fa88bb9f35355104337e668e2cd28c7c47daf3cc18b98dfa5b186c37477ccd51ecde5ed49e1f20b69 SHA512 1d7576f43b18bcb2a50ff00705444cb695f180d4c718e6718d98e4bda59a9900a88da9cd7184098512bc4f5afc4f6ff859f172f4111e0f0cd754f45d68eea25b -DIST firefox-91.13.0esr-hr.xpi 530056 BLAKE2B 79ae53fb0f9b023d327100b4c40c0896e964d0d561516f5923a0a770811de35f678c9be655a1a0839e42cafdc638e505ccea499f72b6533075fe17eb5e5d947d SHA512 018d08acb39e9d6c472f58f7d502a995d8aef81cc4b3536e5aad94726631f4071cdab5330a2395e79fdd59df0160cee34b397d82fb1c2cddd9313868581121d6 -DIST firefox-91.13.0esr-hsb.xpi 562631 BLAKE2B 2e64d6e996839910d90f666606355e952c4bbc2ac6c5f73003ecd4ad0511370226a751f26238c8c5ee491496ecff99b995c32409508ecf2e389863bfe2023729 SHA512 b3891ec1a7066d6f8b51c4d3edd83390f9e82c6f6ed9d1fec6bdb8cf989fba0ba31dd409d58609db8825006d21409ca7649d79425faab2a8c8f1a84d2ee494f7 -DIST firefox-91.13.0esr-hu.xpi 566077 BLAKE2B 0f1ec32cb992f4310a1c2b9c75a020746094dd0ffdee1d4dfd100f28f3a87fb95cd699978782ea8db0518b4019e376d402fd041c1372362abedc5e0985a7fe1e SHA512 ff6978f6a908b58e0d25d4f2b605de743f2d3b5e18569904400e3bb521d77b6f5ea641d5b7125bbd52e9dad6c8d77ecfc19d0b0e96671de6b1801f628101efde -DIST firefox-91.13.0esr-hy-AM.xpi 579766 BLAKE2B bf7c7f5854dced733bda8d66a07b5bfb4217f0872f8bbb6d4949314da68969b798354e0d267f244654aa3316a7919cba51ce564c63d4a2dd7bffec2467c51a3f SHA512 7ca2a30c3b331e1c47f314d27430e30f042d7765dd82557cea2ad838555b4e5d41304bc251398865533c6dc02ce3e7238c881b3e0df6c1decd3181c09211e84b -DIST firefox-91.13.0esr-ia.xpi 532150 BLAKE2B 6a84af573de80a57e883ea08f5dcd39c07a1fb96a93948014ba3c1a6daee97d10def51de0817031cbd00b5a6f84c16cdc9351cc7797e3bc6efbcbf47fdfb24f8 SHA512 4c94b12bcb35900e588322dde1b77bfb1dcc4347d389b6ee896a73c0647f1c1d592d7cb8aebfe1a3947dcf3ca61a34dbc83dedef64e87a3a0c06b69a52997f59 -DIST firefox-91.13.0esr-id.xpi 519829 BLAKE2B 63bec85e56cc7d3794a7eac11a2e2ee1da2742cea3101b1a9ba67b6ab422c7ce8ba787ebc30869feeada692cc5c2b48125288a1c560b73ca991faa14bd880f50 SHA512 0cf09caeb860e8cf76ca30c74f1c27e0345b601617b6f1982e618f6f094c4d2f57bf81d2b91b2a8ec35f59ffde515f5616d60c12c27bea63737d2f334c1e094c -DIST firefox-91.13.0esr-is.xpi 470229 BLAKE2B a7801c61d1411918c4a24ed87f1102c9ff5e6fb69c60f9d811f5cdc1941929c569f56cb566b910459c0201ed58dda4daf9bcd348f424dc39d8c7a4e0565ef8bb SHA512 220d3bb7065102ae101ad48e8a4e069b8b0036ddf80f5c21b97709ec2625b71f3bf735af992d7c373f717306857757ecaba6426ba1b44ae633afca27193a4e58 -DIST firefox-91.13.0esr-it.xpi 459091 BLAKE2B c71b280b3e5da33873d3b35b69b7e981003d814cd3cc89bbc1aade3301d3440665c6ffaaf7d285b0ab2454ddee54f599df7bcc6c506b33e37765b26a8e72d7f8 SHA512 87041afcbef526c4c49609d7924c51802a39cddfa809843828dfe54c65a7079e76098ec816676c5015366204dd30f9fb70dd4726ac58098a971345a274696632 -DIST firefox-91.13.0esr-ja.xpi 588081 BLAKE2B f8fcd4e422fef752e45ef4808e32aa66670ab94fbe629e489410bae132d85425518b0e94ed3bf5be0ce4e5a549026ce16e3063fdec7ae93594444b62284a28c6 SHA512 5a9ebf1f8fe7ad3179bd643252cf3c4e63c0b9a591cbc068c6d02ab2aeec74cf5a72a59601e1dd2f3bce3f2f0ffca4f89799c1451dd767ac51ba2d824a4bca65 -DIST firefox-91.13.0esr-ka.xpi 592244 BLAKE2B b32f816643599cfa4ff8c8267200801535266475fec6ee9af6eea14d251e11cfd4b63775ab72d243050cf49a50deba3fce865b72882066f195976df8a10b5f43 SHA512 d73a3c14c28a3141fdecef71b2333ba937622d77cf99b14b30c22fe7ec92dfc42ffaf9310b61864caaec312830f2e63e3f9b9723abea8a8dbb5607f5f2d8ea0d -DIST firefox-91.13.0esr-kab.xpi 545020 BLAKE2B 192c91966c760d87b77521d4f614d73f7f36e1dcdc807a6790c668bbe1deccaac4b7b7ec4a060f0214117d500c74fba647da815774d873650910676d75c5a19f SHA512 23c90274e66dfafa1f451164cd7a657f5d3bd891c8a50b0d4371df7998c33a6c032af331a3277bc6f4cce44dac12fca71ca9c91f77604677728212b29da326d2 -DIST firefox-91.13.0esr-kk.xpi 605546 BLAKE2B 75fb7c7c409befa552001ce4f01d1b9dc483158c350bb25e199c923e960296f973124ed332b35d40f0fb6d0b70df8bef2c5896b2e748571b4b748b448ef98a11 SHA512 ea265a34f76af51f11b2dfbcdfbd909974fd2bb0309bdc48b3cb5000be477058772ad18630011facc8bb2f68e5930bd79325808251eb66381ba558eb9b92fd50 -DIST firefox-91.13.0esr-km.xpi 533113 BLAKE2B d3c2de9bdf3caa72e026aedaff3a5b9e209ad54c71921fae945a8694baf5309329087bdf32f09b3413d166e2d594b57e4c86cac718f0bb5c4dc033f499b0cba4 SHA512 7d043b5eb1124f63b89c6c5fdc76cbc3287879baa11e1428ca9d5fc06d9b3c7bffaec6c7ff798d1215574a268f89673e105eb465d7a754e73ac9698d1ce5bf68 -DIST firefox-91.13.0esr-kn.xpi 498978 BLAKE2B 8e5b676cbfad2f08ab5b1b688e65e799b10c0966e21404d36e39b632ef7bd11e3134fec6821f64112b5e619c616207291e6a505d07c251fe198dcde648b0f6b5 SHA512 e8bf3fd103b81f208740a8a934e3b941b0530334ec65cd653ab84af6c9509d5a1bac1a1be5eb983ddf69607c0172eee87f46104b179de9a0adb97a17b64a52d2 -DIST firefox-91.13.0esr-ko.xpi 579063 BLAKE2B 1b8a27020b23eb2958ddcfb596fb23f28c12bedaa7e3d9d73096e62e01c48dd93ab702e4c5a2fcc81f0fbd422f2031c8c44ff686e2f1c227ba009056b1c8e061 SHA512 78c1162a1ca76eaa7393088cd26e13a782e2d6cdd90f6bdd762e2fa2f4e77bf2f4fcfc67f25ecca44663c42997759a9242f5ed6ec68717bdb926cbcaba36d400 -DIST firefox-91.13.0esr-lij.xpi 470176 BLAKE2B 5762ba0e15386fcac487506e40bec130139f8ef373d2ac4b4a02b240dd64ce805c86817d48009338a722f60a2afb37348ca67d013260d7346e7b39cdf64b95b6 SHA512 3084b7301bdaec7cdc1bef9918e5a1066f98e2447f26d4798f837ad879d6029b43be73facc327121fe35512c557bfefcd7301b05699aeb721ac9b5c1b5efd35f -DIST firefox-91.13.0esr-lt.xpi 560119 BLAKE2B 6babe37fb047aa3b4dfec8c2d6e3c8a7ee94bbbf31d567e4f45f7f2c31f21e3a1b0c91c5586503c99bda1155078e973cbe7edfff6338973b9fc5055b0f342ef8 SHA512 015ea53316ae16b778af4efbae82fcf4df9ed794c7e39a5c5ccc7d7e9cc5b80872a15d876901760e47dab1461588dba5e9fb2c47abd5982c96c4b2f6103ab987 -DIST firefox-91.13.0esr-lv.xpi 462457 BLAKE2B eb8c5e6e65e54c6dd5c6d48607dab9a968568c878696b4cb67d1d5c57f8e495bac210dbde231cd59887c077f7de60423c7b9e5a7118b01483d4d3100fed3a1f3 SHA512 7dbf0ba338c4b0b237cc857e87c487126c20c6b8e547e4b4a6a688e6c5415121b27a101a15901818754d7899a8b69bb98160dd776761ed043b0881b59e492a55 -DIST firefox-91.13.0esr-mk.xpi 465351 BLAKE2B b2777a900b87a51102aafff3f06f10a0aa0d55d96ecf017407e3e91e30e734a9a4321f60601351cf48d491891d84914fa1e4c1a9bbbdd3e68ebdd6f510dc1015 SHA512 c711d748049541e8e625a6cc99a1922ea9aa74c1cabc560e2ea56a26cfd80b60b3ffe68a1348acf957aebc6e6532fb8f9fa9a82a8a1b8cb5df23cc4eb2795945 -DIST firefox-91.13.0esr-mr.xpi 532121 BLAKE2B 8be2589c99bf3aa4fa5404ad52d31cfab0612a7b79c9a07c10d067669ebc758b0d03eb2738656b1c723ff489c725993f2d396928d76154268a0139a31e1fd11e SHA512 96b5e75c334912604cbd0b7b1facce258fdac4423c26de57d85f286479b4f7a89d5b308b9c9cf1c730bbd8736770f908c62c6d9ae2a8692534191866f720c29a -DIST firefox-91.13.0esr-ms.xpi 447336 BLAKE2B 9d0d5b302c442bbec30c2de7d504e6379c739a0ef6d9a7009a6179ab1e5987ce2dee8058c94c59359afc186a56227bc96cf601f56a24cdd2e3d25988a269008b SHA512 47ab282d76ba96711944133508a8e3772895908b8201f635f76d4026eb90768f512ebd0b38110bd46f352fafd299061e8a67db855fe9590a54ce382e61650a17 -DIST firefox-91.13.0esr-my.xpi 516294 BLAKE2B 1f8dab25f5cb9473b1e5852a7c44322d9b264b057d65869b7423399aa82f9d15ae5e1d8adfbdf5f4d42547030a6f820bae8dfef1d25556fef9b5372b9cbb2b85 SHA512 4f38020879ba3d81105f9842ab7bee54f42a5661661dfd21c2dd4e7525b7ce8d772031f2308d155af6aa102222f3cfe97fef20ed70a8dc2e71184f83d2bd5401 -DIST firefox-91.13.0esr-nb-NO.xpi 529429 BLAKE2B 4a5c123c51378716c261fa8e0faea3295b38ed686948be02c807e4b18f31e07ebbe84be04dc95f09c49a95304bf949129d7f757f179ae237847d6b99e01c3234 SHA512 a2509c58d8f9c15e01c0cc63ce50aae51542330049cde6af229777648bdff61a7eafd41750ffad81d8fe1cc906da4da68a2996e03caf089c5faf785c9b974030 -DIST firefox-91.13.0esr-ne-NP.xpi 485211 BLAKE2B 1ad16fc443f6c69bbf324a69ae2cb133ba96f1315625daf6b4af75d670980ab8ac010c6a89da1aadde687323259f3f506dce544986013536675e01db876948eb SHA512 cb89fd53a3460c7ece9daacda242ec0c9995c7745d6159ab2f49ffc174eeeebbdca48094db2e3310515b4d8181135f052a3d5449b44003e7b067ab0c3704ca7a -DIST firefox-91.13.0esr-nl.xpi 537382 BLAKE2B 049a896deb0ac73a055224371b948929a810810033b4013c22e13d1c5caf57d63259ea6c51ce6c47b56b0884f6c76ed67779dc945957b3a4398632e3820f95e5 SHA512 698a8143b7d2239b0ccdf46a150937c2403ab68724b5ac3457210f465cdd4ee3e999f41c3af6c462c63deb083968c92eb7001fa9f1d9a0e2d1704a6dc9ba5903 -DIST firefox-91.13.0esr-nn-NO.xpi 531679 BLAKE2B ec2034022158a2f88fe368ec07be0d8dbbe40d9999b6a8ce31904092e5eba5c47c7069edfb7f165a2197a06d9d6c8dc3ec9102fc9e9157bea13f7618b32a0707 SHA512 7bd12e16ae9edbeba7ac56e7394bf60e0670d3eb4be1e5f22a7dffe6395b56e78b7caa08eb2127187ffd0f6c0277c6cf6d3b47682860e55412461af2719c3eef -DIST firefox-91.13.0esr-oc.xpi 552964 BLAKE2B 48f3dbf777e048f49b38054c9cdd3503b4db724ef0fbb6a5b13780febb31f9c2a8fe51a16d1ea9950172fcbd15c3aa41366605da54e8dea671235c9a7ef44a74 SHA512 26788f788cfd497b1ee6d649b68605702a7c2fa726488f7a16369287de14b9a81a6b2a18cdee7f7dbd5ac9257a566bd9f2e9293b742f76ad814b8f25294583a0 -DIST firefox-91.13.0esr-pa-IN.xpi 595974 BLAKE2B bbdad97825f71685a70db69e1af92a648dfccb62127a33366185af9b12f9f8f28026db1f007d952fd72f03db915f626d9fa4dcfc06a5cf17957852529ed3cc23 SHA512 32062c982bfe64890353221221f6ff06fa8f0751c789c958c11cf7931b0dd6ab9ceb764e4e0b78e90988beaa2a845880bd572d0f2565b8e131f266041bc58f29 -DIST firefox-91.13.0esr-pl.xpi 555617 BLAKE2B 00dae5d262805b77d78e409f301e07bdc225326515d93a372cbd199dfc4a44d6531ae85d8ab6283245c49e26d4b2869f7553b6e85a354a64470f08b82a4fb0ed SHA512 dd076f21fa72d5ed79be42977230c90e7f92b4e87e6c95a289fd7a1c148d695702828cf2571601a26d6f3364b5fcfaad057d4946cbe33029ad3efea283fa0f5d -DIST firefox-91.13.0esr-pt-BR.xpi 542617 BLAKE2B bb65fbac1e31a33f6596600e0b98aada3397c27d778903a5f276bd77f23f999d56fe2b5fb5f0c445deddc2f0c5bcaef956f42ea625cfb8e3abe9d6a400549958 SHA512 a416dd4963ed9132c2b2e0979b4795d32f06a9ba2d1af7ccf3bd207941ebc3e7f0766e1eedcfa36b888913e7f8c6d09f9ace1b44883379f7ffebdf5020f63568 -DIST firefox-91.13.0esr-pt-PT.xpi 546342 BLAKE2B fcf7fc7f82675ebcabfc3241cb6482dc9cc9c092aab5657d8d2b73c8ba437c4f830e58dfb57ca215bb4924376779eaf8f9fd6396229eed53a1f4caa6b1c39a29 SHA512 6cfa09c3e05527466711f18bf05ec43429881d74c449863c2e8faefe8f1145fe5155bcb9d09f50b0012ae9959ac2ce61c4539451879b50d4adb6053c0a4d1968 -DIST firefox-91.13.0esr-rm.xpi 537364 BLAKE2B 66503e95a8a312ec4c8687f228c068382031161651df03556246e380bc75ce88251e0fb2a8d34b74274075861e4eb2dbf32bdd461f2fe36c57479f9c59c62748 SHA512 3c3cb3d9db5a3cfaef2c8c15df8b5a5991733ef2587cceeb3f995ab6bffc4a26c4c724ca3a1ed96b7d2fc796e205c584c5f330888e9e955f7fcce1847290447a -DIST firefox-91.13.0esr-ro.xpi 529330 BLAKE2B 643ea3aa3f4cf17150e462612721b340d919c4b1b2b44eb7bf0950469b20ba61f94dfc6bdc52559938f73b2b4cd735805e9d43b2bca7780dc63b3d4c05a5a81d SHA512 eda93f9616867366c401789ab37ca54acbc964b601f9972957676c7d421a85715ff2bc0cc00e9bc694185c9df8fc09bd38784a922f72b02fedfbeca3b56d9a2e -DIST firefox-91.13.0esr-ru.xpi 627117 BLAKE2B dfd394807094b8c6fd3486f7037c6a5eba0f1dbb4bc0146d3046ecb34041e816b3f7894c72251419a74f857a680a25654c79222d5478db168acfef268661b69a SHA512 768c6da81031487d2d3fe3810f20ecb1d2b9ee634263e3f1ca209ef4433ed3b402e679cbacb0e96e2f9671003219283ad4a9fc2341ce0ac6c3d5c8eb5cfd6569 -DIST firefox-91.13.0esr-si.xpi 487964 BLAKE2B aab283c4a909ca5b98eb837e840e3cdf2d54b4f7d6b150917c57dbade5f3544be2246f33121876d51b7577bfd25337615c355da267d56a9872de00e93bac2edd SHA512 cc1af012f2af35a667763aa044221a8de16320ea3f8f9da3ad62f0b81867080929e838765ddada10f07113eaf4c486c051adb25daed849d21b72bca60a299dab -DIST firefox-91.13.0esr-sk.xpi 566484 BLAKE2B 920964bd1bc1545eb38114f589e6eec0c6df52bbc475a189b5b4176ba715e3c8b425b7324e8165bdd8282552a808bd1a45b032528e67bf1a9cfb1d53d5bfa461 SHA512 50b59da5b54cc13523124f6a7e58404d41b0ff2813c7d4e4adf5c31ae5ae4a762f1571967a396b60a5f3a61bf450d4603cb2a03372f9abaab322f2a6a4f90f20 -DIST firefox-91.13.0esr-sl.xpi 538008 BLAKE2B 6dad7f28266a1adc3826a5eb8f1c5c82bca15e84983b7188e69c9b80f15d306f76e907baa2b02a8d5c0bdf7998d743b0667c9fb2045aca8ec239311a6d5202b3 SHA512 bbc9cb54426b773d14042d01c692f246594c12e1db37fcfc3734a4932d676143d298d83ae08ad6784a8005b5c5258f6336f8ae314f5465c1e21d1fc839544f34 -DIST firefox-91.13.0esr-son.xpi 425996 BLAKE2B c0d2d4050d2ebf7f2d2a5ec677bb9e382873924f4f21cdd1943e030c284ddbb74c632e2ae7e108a98f6963539e851bb9180584791a3acd157e60ac05add502af SHA512 21cffcd75867ca519a3347e9efdd82ca3c468de247210a9e859192dcf6334c9b9899a060ea50770c227d1af7f05fbae4ee70d056ef0e105695069a3887692d09 -DIST firefox-91.13.0esr-sq.xpi 556001 BLAKE2B 22804052c6441a58a65f1bf57cf9fed6222f30c1a3b26af27f0de8face4042594b752eb3b05f584b3b47434cced38611066ead52716fdc3c3bc32a3a727b454b SHA512 4d29f7fced0982bc1c1c250e34c3fc50347a0da122256502aafca045217edb3db19a70682767b438a9886d79774eb821c2692810b781a8d74c67f6b0bba80f47 -DIST firefox-91.13.0esr-sr.xpi 586076 BLAKE2B b8f68b1dfbb01bf10ea7e0f43941967d94c6eade9a1fd08edeee528cb5f156fa1e84281d387cf551c1fc22e16abc9a1b97c1891e3707b08b2f6e7e986770621b SHA512 6335cc7fef789b791ce352fe1ca22d5faa7ad554245fbbdd696e23b7cbb6e7b3dfae04b826cd17f0d66207ffe9dea2740729fb6794e362543ccfc126281ac8ac -DIST firefox-91.13.0esr-sv-SE.xpi 539962 BLAKE2B 5cefd5aafaa0cae413290bd679286a7b7190397f953922f6e4cf3d10583557fb99b143ba1e8e135172418097984e3d8b5d2c30bc0aa897e1e3507573e6fba215 SHA512 a657a1ad738b64ac1e943e54e4434ed62a778e6082e91447da8f0a89bd67d1493f15dccc7a6dbd2b2d33d27834fe137921072959680f75dd217db67f60fa0880 -DIST firefox-91.13.0esr-ta.xpi 513819 BLAKE2B ea59af76cb7d02a6eff775dc46c075fd3cd6f33c6e4b880072714f87b0d08f7fb96584b699cf250c3d38e461881a38aa615cb18303ec1b1ef620fa0511dfd980 SHA512 64d18c128989c3906455d6e8398eceb4bbf2615efc7723330292ea3b43154a0cd630528f42a053435c749da69de3e9711c2d9c8739d3066f85f865d94df58d3e -DIST firefox-91.13.0esr-te.xpi 549962 BLAKE2B 636cd90f43fb3bd34a6b4e0517475b840ee4510d8d815b000bca09f540683cabb5a383a482e8b3264a9686a9d6568e4c5ff7e956217b312419a17d51aa706431 SHA512 b7b488aab7dffd34974cd32ada6debf43844c2c957361d728bb5776e0dba128191e22169210f18d0dd6541333bccb5220ec3eea5aa6c848ad46f2b06bab43606 -DIST firefox-91.13.0esr-th.xpi 607066 BLAKE2B 268b4bfc0b7bc1b9c5e2e8c7a39e5ceef2ce413648e57e72fcf46be4a29b53899e6bc0108d1006053b0009766c9231cb4fca1bc291e0552e787f4d04c84dc1fe SHA512 37a21a18b88c50f0e3524fa40e625d52e7b28c1dabebd4d75ec66b77774984079ae6317af074109fb652edfd765115135f10c1811a678e699ec7eeecda6c9d9d -DIST firefox-91.13.0esr-tl.xpi 516121 BLAKE2B d8c21f4fc3882f06162f6df8c443a5a3b8c36f75174508b84cfd9766c083bd72b8b1b958ad788dc299aa7cc8dff76daae5360abb66c4bb87d37ed45ad7998edb SHA512 92f77f91f0536600868182327ef33bde6e9d8cc16194818f3540e0721c652ddcc37f48969b3ed34e9b134f9b266ef975f0025c3e2e6bbe17b98a4be006afdb12 -DIST firefox-91.13.0esr-tr.xpi 553675 BLAKE2B 66dcd0eca6cfeae8fcbc733f08ec65d0e56a4c05caea28f0ee823ad90e9fbd14c36b950b40c081fd05a7a60f6c7f2e74492dcae1ead310ba9e2d7820a8934232 SHA512 f05f2bc52fc0a61f502fdb36eb098d15dec522098ae3991a44e5aa9c7aaf293cc67c288febf15908dce65696870dc0f68f5f52b8b14d76977b75f3ff0c2488ed -DIST firefox-91.13.0esr-trs.xpi 491086 BLAKE2B f6218f44a07ee2c54548dbab486fc0cbbc06334bc1b8b646870497d8efa41a80abc771338b26a7eb249f90fd6e613a2e03a31c76107158b1bbab532776908589 SHA512 fd69b897d000abab6de9ed67012de3cc9ed237c6067b6d30c17fe2786bbe447664f99fde7e203f62589410392e65c3adf310bc018129220b576087fdc9d1fb22 -DIST firefox-91.13.0esr-uk.xpi 620506 BLAKE2B 45112b82d28abfbf78aa9ded9e09bb530b370ef7832760b5d02d16f97792de5654f01810c9737580cbc7e0081012b8e4a0500d4c6cc12f5c7b24d031dfd1eebb SHA512 ebffa27fe6d4f8e1197a1d2b4f570cc8a64680725c33c3babf862a4b31430727db67b1281d3b88bcda8602adac5207ef9ee579f70dfdbc1c63ed8f6fb427beb7 -DIST firefox-91.13.0esr-ur.xpi 557309 BLAKE2B 48a1998617dba393690b01bba19ddfbec929d14421f27c3292f617edc3561f33a00cb62b19874d2b7c9ee1c2aff22e5bbca5b054fde8c5422da2fcc5d7c4d76a SHA512 890668f8b5062c98266d86817b9f8176d422b772b742b44323ff71b28672776e9dabefd94c1a917e2fd1fd8e58b7e705ef214d22bc05200bf8d8dd8354781c32 -DIST firefox-91.13.0esr-uz.xpi 466859 BLAKE2B a2c22d1497b51f1cfaeb8fc9b90fe51b3948f40d5afa6a75830a13f3924a874af166f604eaf5c1154b8792bba6b248dbb9edef8992c635c0dd309afe661fc87f SHA512 4e049105f284b880b174a0e148c21d7caf207c14a0f64358b111195937967b44a5870ba65f3cd3f5c4b3aca014d56304ce26548cabdbee41228b11ff1d035ab0 -DIST firefox-91.13.0esr-vi.xpi 573487 BLAKE2B 3b887c8550829640207e1e96deb1f40bfcd1a6a728199c9ee92d19dd5b742c8366fce0d449c54565caabda294643503a394371e04bde40165f07e656d8ec2650 SHA512 62472ad4f562f6d677338bae6a9a47ed8714af01deabd6ca501196c36dd316192f3095fb6525a3223a117638a7b2d5a856aca5c539d65268dbf946e8c5b9f0f2 -DIST firefox-91.13.0esr-xh.xpi 428180 BLAKE2B 20517a1e2631d00af75a30707773dd4a7201ae5f0f8460ec08eca93d874b541b3d0e67eb0073493404f5139713e50da8d9dd58f2021cbb876a970ebf75f505e4 SHA512 34632e068473a7c4c6c12fe5d7f390577e364c03371296a4839add1420960ce8be97e36347ea318ef1561cd143d513dbc50d94509369d33addb4b52fdacf9d34 -DIST firefox-91.13.0esr-zh-CN.xpi 575367 BLAKE2B eb11d145bf514a5c20fd8c8f9fa2b56abfffca3d8ba7bd9a17eed2a2bc9e41f4d2639d7de4c93bf0fa6db4af1c7924dd5a2ee8c9da78041f6d39388f0c0978c2 SHA512 209b0de0c33b1839852c15e3db17ef5f838f4d0943016528f45d9cd31b32af70fc60ddf4064529df33dfd74fb36141e9b11f3ced9b6f4287151e752b95aebb3a -DIST firefox-91.13.0esr-zh-TW.xpi 576229 BLAKE2B 44189d585fa0725a7aa1db911acc1d243a4fbe3bc69ef863fc3387b1d20b5e70f364dca850021b6a8532a8dc9651ce6b803a543ee5f4ab88cb0e14e263b97c57 SHA512 23b25460fbcd49921431c03b50aced2465181e7fbe7cd1595afeb5d9648a7736fa8d7b07f3215ef86f5d85b13b732d967aeaf9204f766b9ff60ce01e8fb969c9 DIST firefox-bin_i686-102.3.0.tar.bz2 80503830 BLAKE2B 0b1cccdb9a63a8dea59edc0c5a1bb36c8af4829ddb968a769d9caf230cc908292a7648a4672a81a649057a891b3ce9dbcb2e01fc5a0ca90952da822ad00887f5 SHA512 9741bfee4abf2dc7b251cbe35cc63a701d974b741ef42ee134ca16133690316081489c161b5762037d1f762baecfe4427474927c2d95f9b1e35a1e3e0d86df03 DIST firefox-bin_i686-105.0.1.tar.bz2 81446465 BLAKE2B 654d33b352a4e86ef2f8169a93c9856b14b52e20f96d011a7c2ca9ca87d33dc4cf47fa8524200cf3b6979c5062f44594905b2ed0f6aa7c1fdf6f83123da81f76 SHA512 41bb2a04ef3ddd9810a385c79871cd31a8ab21d61ac4629b70c7b213d063c5b3bd8220b77310d8e2fef13d76a8c1ca75764a4cf0dcb50d287542b6cbb13f71bf -DIST firefox-bin_i686-91.13.0.tar.bz2 78611444 BLAKE2B 6e127479d946548176de0dc27f81f0dd2826f4ae7a3bd08598fce2da27581fc8bb702407c81ae7a55af391b4b89b16ea278916b19e47756c5ae3a818c1b881fe SHA512 3e28644c3ffd21a5e7b2c738867bf024fdea4457092148cffd9bdbbb89751a4c1a8873f4def6b25b9b5045c8f482fb53d409575222eccde1a1dfcac7c1e8138b DIST firefox-bin_x86_64-102.3.0.tar.bz2 77273704 BLAKE2B 21342cfb3ced5bcbb66a86485d90ed83a639d7ca7b56126a16823f6a413133debdab7df4baa4bb8778ba8e226198c3a650d05800a86bdb96159b48c54186f604 SHA512 a0af5f7bc50341bc2ef6d90c325932f4cd4d2f2e909065f203cd47f6568aeca9f1b656935186b30b8c0c58a3eeab74ec42ab74b01fd84b8e4536100c50a865a6 DIST firefox-bin_x86_64-105.0.1.tar.bz2 78045123 BLAKE2B be064c4d9766f7cd9af2d5f115dc5478856f216730be639b5ac6b8c6038dff24e3e447d9f2570b2eb985e9bb1144cd14a4ff55f8d512670e8ecf08e3262c67be SHA512 2f6e284adf5338425474d699647e831fce60f4bc5b516dc903d13b1a6961bcb7ba9318feba86933d3427af0227c05099f2733111b73730735caa45f9d427277a -DIST firefox-bin_x86_64-91.13.0.tar.bz2 76064846 BLAKE2B 73e887074bb66b0f773405bb9ee6aa50eabacfb696bbb256249ac52543b4ec709617dae83e6c9255d502cd1c54abd4e1ea26edbd37d1eb0603bbc93fc1f728f4 SHA512 1fc851b1d9028e39c143f92ab755fedeb78ff5978407fe3eb3d946b42e508237ea2f4055399976aa392e51d3f5dfb39f9e28cc72c0d81b5dacb7d5f236b6a8eb EBUILD firefox-bin-102.3.0.ebuild 10832 BLAKE2B 2783cf41b02d072b13107a09b6fe1a335a5b4be16256557fc68f91707d9262ea0306dcd3d8ced68b5e71b8e516d32fd23247335d33a6b3e2ddc07c8bb45dd442 SHA512 d90fb56680941033b1b399a8946eae56281549cf506096b908ca0ea637dc3040561ebeaecc0f984346cb3ca79064f1175a55a7b179813c19cf77c1f5b4e087bf EBUILD firefox-bin-105.0.1.ebuild 10872 BLAKE2B 1395ccce1367e57d8e417103265dfe5d33f8b7b68b8a486b41b9cd9b8f744b95fac5937b086d175593fbc1c8d49a16b07b4256b19771dc2a9ffd9ed64aff6c9d SHA512 800e6a6a9a5f1ee6f4d9bae92b13f35ea4c1788dc65e1fe26aa61c29350dbff8edc1a7707f685a1ddb1c8016e9954641e64e3e10d7ae220c57cf271659a996a6 -EBUILD firefox-bin-91.13.0.ebuild 10990 BLAKE2B 0b2980043d6e811130ec880ba8a3883258cc978e45d8cc7ea01a8446896dbd70a258d391f7e7bd99d240e1ca11c71e032dc9710a3e4c92caa1c7f299fa9311c5 SHA512 2a99ff4d8924d1119843eba008e4c2579f992ea3ce250fe5946b3436740f8aa326c678fe59fa80c8368af3d93f765c5c143d94ee6b4e2c4033374f1d994afe13 MISC metadata.xml 520 BLAKE2B 4b540dd2d9ac3840061de8a73117f2859db156944826d22c1f74cbc0c35f6d305aa10ff45708eab016df725cfc741c99dec46f0078a29162982431892e86e477 SHA512 0c7183e35a4b0ca2ddd092786ebdeb5b41a431adf918f0c2e541a5ef1c235066586a46a50fa29c25e5a522930824f8662fa2fa7eed8c3895f74d85bef93cecb4 diff --git a/www-client/firefox-bin/firefox-bin-91.13.0.ebuild b/www-client/firefox-bin/firefox-bin-91.13.0.ebuild deleted file mode 100644 index e97dcf0d55ba..000000000000 --- a/www-client/firefox-bin/firefox-bin-91.13.0.ebuild +++ /dev/null @@ -1,389 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -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 desktop linux-info pax-utils xdg - -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}" - -SRC_URI="amd64? ( ${MOZ_SRC_BASE_URI}/linux-x86_64/en-US/${MOZ_P}.tar.bz2 -> ${PN}_x86_64-${PV}.tar.bz2 ) - x86? ( ${MOZ_SRC_BASE_URI}/linux-i686/en-US/${MOZ_P}.tar.bz2 -> ${PN}_i686-${PV}.tar.bz2 )" - -DESCRIPTION="Firefox Web Browser" -HOMEPAGE="https://www.mozilla.com/firefox" - -KEYWORDS="-* amd64 x86" -SLOT="esr" -LICENSE="MPL-2.0 GPL-2 LGPL-2.1" -IUSE="+alsa +ffmpeg +gmp-autoupdate +pulseaudio selinux wayland" - -RESTRICT="strip" - -BDEPEND="app-arch/unzip - alsa? ( - !pulseaudio? ( - dev-util/patchelf - ) - )" - -COMMON_DEPEND="alsa? ( - !pulseaudio? ( - media-sound/apulse - ) - )" - -DEPEND="${COMMON_DEPEND}" - -RDEPEND="${COMMON_DEPEND} - !www-client/firefox-bin:0 - !www-client/firefox-bin:rapid - dev-libs/atk - dev-libs/dbus-glib - >=dev-libs/glib-2.26:2 - media-libs/fontconfig - >=media-libs/freetype-2.4.10 - sys-apps/dbus - virtual/freedesktop-icon-theme - >=x11-libs/cairo-1.10[X] - x11-libs/gdk-pixbuf:2 - >=x11-libs/gtk+-3.11:3[wayland?] - x11-libs/libxcb - x11-libs/libX11 - x11-libs/libXcomposite - x11-libs/libXcursor - x11-libs/libXdamage - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libXi - x11-libs/libXrender - x11-libs/libXt - >=x11-libs/pango-1.22.0 - ffmpeg? ( media-video/ffmpeg ) - pulseaudio? ( media-sound/pulseaudio ) - selinux? ( sec-policy/selinux-mozilla ) -" - -QA_PREBUILT="opt/${MOZ_PN}/*" - -# 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 - -MOZ_LANGS=( - ach af an ar ast az be bg bn br bs ca-valencia ca cak cs cy - da de dsb el en-CA en-GB en-US eo es-AR es-CL es-ES es-MX et eu - fa ff fi fr fy-NL ga-IE gd gl gn gu-IN he hi-IN hr hsb hu hy-AM - ia id is it ja ka kab kk km kn ko lij lt lv mk mr ms my - nb-NO ne-NP nl nn-NO oc pa-IN pl pt-BR pt-PT rm ro ru - si sk sl son sq sr sv-SE ta te th tl tr trs uk ur uz vi - xh zh-CN zh-TW -) - -mozilla_set_globals() { - # https://bugs.gentoo.org/587334 - local MOZ_TOO_REGIONALIZED_FOR_L10N=( - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE - ) - - local lang xflag - for lang in "${MOZ_LANGS[@]}" ; do - # en and en_US are handled internally - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then - continue - fi - - # strip region subtag if $lang is in the list - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then - xflag=${lang%%-*} - else - xflag=${lang} - fi - - SRC_URI+=" l10n_${xflag/[_@]/-}? (" - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi" - SRC_URI+=" )" - IUSE+=" l10n_${xflag/[_@]/-}" - done -} -mozilla_set_globals - -moz_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 -} - -pkg_setup() { - 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 - - mkdir "${S}" || die - - 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 - MY_SRC_FILE=${_src_file} - fi - done -} - -src_install() { - # Set MOZILLA_FIVE_HOME - local MOZILLA_FIVE_HOME="/opt/${MOZ_PN}" - - dodir /opt - pushd "${ED}"/opt &>/dev/null || die - unpack "${MY_SRC_FILE}" - popd &>/dev/null || die - - pax-mark m \ - "${ED}${MOZILLA_FIVE_HOME}"/${MOZ_PN} \ - "${ED}${MOZILLA_FIVE_HOME}"/${MOZ_PN}-bin \ - "${ED}${MOZILLA_FIVE_HOME}"/plugin-container - - # Patch alsa support - local apulselib= - if use alsa && ! use pulseaudio ; then - apulselib="${EPREFIX}/usr/$(get_libdir)/apulse" - patchelf --set-rpath "${apulselib}" "${ED}${MOZILLA_FIVE_HOME}/libxul.so" || die - fi - - # Install policy (currently only used to disable application updates) - insinto "${MOZILLA_FIVE_HOME}/distribution" - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json - - # Install system-wide preferences - local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences" - insinto "${PREFS_DIR}" - newins "${FILESDIR}"/gentoo-default-prefs.js all-gentoo.js - - local GENTOO_PREFS="${ED}${PREFS_DIR}/all-gentoo.js" - - 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 - - # 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 icons - local icon_srcdir="${ED}/${MOZILLA_FIVE_HOME}/browser/chrome/icons/default" - local icon_symbolic_file="${FILESDIR}/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^} (bin)" - local desktop_file="${FILESDIR}/${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_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 ! has_version 'gnome-base/gconf' || ! has_version 'gnome-base/orbit' \ - || ! has_version 'net-misc/curl'; then - einfo - einfo "For using the crashreporter, you need gnome-base/gconf," - einfo "gnome-base/orbit and net-misc/curl emerged." - einfo - fi - - use ffmpeg || ewarn "USE=-ffmpeg : HTML5 video will not render without media-video/ffmpeg installed" - - local HAS_AUDIO=0 - if use alsa || use pulseaudio; then - HAS_AUDIO=1 - fi - - if [[ ${HAS_AUDIO} -eq 0 ]] ; then - ewarn "USE=-pulseaudio & USE=-alsa : For audio please either set USE=pulseaudio or USE=alsa!" - fi - - local show_doh_information show_normandy_information 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 firefox-91.0 we no longer install multiple shortcuts for" - elog "each supported display protocol. Instead we will only install" - elog "one generic Mozilla Firefox shortcut." - elog "If you still want to be able to select between running Mozilla Firefox" - elog "on X11 or Wayland, you have to re-create these shortcuts on your own." - fi -} diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest index a9814d687582..3ecd75072a4f 100644 --- a/www-client/firefox/Manifest +++ b/www-client/firefox/Manifest @@ -7,104 +7,6 @@ AUX gentoo-hwaccel-prefs.js-r2 265 BLAKE2B ac3053eb15e2dac446337c29184b5ec54fb30 AUX icon/firefox-r2.desktop 8137 BLAKE2B 5d0ce737c0e0969cb1a61de7989f5ca1ca0dff413d6d98bb0c93e0fed510b4e075a88fc117d3713e5e11ee7471ceaeffa9bc9dfd4282f3ddb1ea837d823e4887 SHA512 749a50b11d89c1329a52d13745ff8d5f801e565038cb5341319b4b515f36baf1c0c740003d6d01188c27e31d7ddeff58310e7b2420681292d0f2522bc5bd34b6 AUX icon/firefox-r3.desktop 8116 BLAKE2B 50b476a1be87bcca0bd6175b7a7f5e67ac5d3f40b0a5a99c2244036a9eea53fb518f59c1d87b18723c4ae6c261bfb692ef0b52c6714402b0a98da4b6867ab977 SHA512 07c9d89babe20fba9531396c9aa2b692aae77606be2b8a750481b6b8f9b3eab320fef313d1ed4b15d3fbc4cd94dfb56b62ce1a3e89ba7143c6aa9acc0f919bf8 AUX icon/firefox-symbolic.svg 7432 BLAKE2B 33a552ffb9850f6b9cd3cb8d9f7f80268ac08f00a0bd5eb15d892c6fbb950f8cacf6058b9c838f5be1ae1b53541f143a1ec0c1302ae85b49100b166fcbccdce6 SHA512 ba7db9a7c95a051bcd84e4c09c802fc55ee3c0d1d06ec1b169b04e414259b75bbe92fe584aee41a1e3f71e71c160df8bedf5393449e5024110ed27dbc0579ea8 -DIST firefox-102.2.0esr-ach.xpi 443117 BLAKE2B 2f51f80dcf1c375a8aa17bf3548c1dcbde77e8c5e2ddbd9cfa6442df190f4b82afd3dbb51671169563279f43906bdd637c3d84716bb624daa4224751c96f0574 SHA512 7845c5ff08d5393c84977fc53998b3fa85f33375eab75d5fe58a83b7baaa4e437908bbb87b26c25015b8a4f924edf8b03b8e2fc9977d60ae2ca98c813e2a8eac -DIST firefox-102.2.0esr-af.xpi 408454 BLAKE2B 10b406e9525dd2a8c95d2f54ee6b99f42821e74224ad95a72e41977bd57a40077b82887d7cb45718616ab92c34f921626bbf178d76c0c372d9132d31234bba74 SHA512 45cb00b40353169e8dea93f812bbe012698a2ef99cc9ba80e5f192ea0848e34bef4f511ed409d7a0c94a456a7315e0ea3a39877029bb05dd1c2e5b5fc536c60e -DIST firefox-102.2.0esr-an.xpi 486996 BLAKE2B e5c5fe85ccfb4f587af54a3e6edb3704daf3a85032294e81b6c783670b4780e675ff5fbf8803de69a66f74935b60e6739439585b9149d9e8bea8684208ec9d3d SHA512 aae8ee12e58888e3246918233ba2e08c48725e4d7d6fe6c2d8e3def23f34d0426211d7a8c144c8b936d3713456e3f510e4a0487922e7527df55d8ca1155cc978 -DIST firefox-102.2.0esr-ar.xpi 550925 BLAKE2B b8d307b2f5cf6a507f23f780bd084c151b9b51fcfa31e2157afa543bc5af33d190345e59a03fd33ba1756fa3b7ce286541881685429ad25474e18299fa7aa901 SHA512 4d21f00d42e37953982199fda14d24e608b14e26cedf08331f7d0d07f3b3e872e5490b79067d63ec23b795a13caf2e5cfe55dd30c9b2b1f2ce8917b59374f0d9 -DIST firefox-102.2.0esr-ast.xpi 483312 BLAKE2B 8eb1a459f7527c9c7d1450c684711a0ba948a1bd5b141e6441ddfa663ed471aa74ce8604523be28ca80cc72fd68af61009c4e05dd0914fe918a29898e36c0adf SHA512 d36ead76b77dbe37d886e66774a53c04411cb237441ecbcada40c4c08e1ca0303766f7eee1c0b63e15ef3cec63ecbf330c914ec90b895a2a8a059947c5758d6a -DIST firefox-102.2.0esr-az.xpi 474708 BLAKE2B 4892da38653ce4c6fa02239dbe717e5def960e7c31ae1def8e1b4e50b5dea9ec20e200871bcba88d9735920ee0f3c70cd3c68021165d62b7a88a841e388d9f7e SHA512 18f471be51f02abec75c7b67b16cd0493ad0afe36f6176c57ab002b073435d2fff072880ef44535a3f3f42449ccc3bf160b09f711d167d4a7befc9c5987f676c -DIST firefox-102.2.0esr-be.xpi 613482 BLAKE2B 8c82c4e655494feb47954f4fb7da0cc592fa6bd39f8a14f02ae2b2331d9c9b69c239ab25c7f94c6031871c6a0a7aa8db08160b6166e7200de84e989dde523234 SHA512 53f98f38405e3dbcdc93c7cb616b1272451cc1d588604fe5e0a888e7aa5c8273146de556a3662fb50b516ff15efd85f18c42ec10e85f0b68c0a0fc040b1a7685 -DIST firefox-102.2.0esr-bg.xpi 563645 BLAKE2B 92195668a613a78fe52a30e1a811d1516f1b163e3ece5565d4fced760fbe1a5e93b736d9506e46727ac2c2df2730c6831e61720e3d9623a1049fed6b1be47358 SHA512 2998c95d8497f999dd958564a596172d9b223f29a764b04d82d7336f7ad6626ae217e1c9f3c152472347823cd4e718d4837fc96c5b536f9f2f1056ae1123713c -DIST firefox-102.2.0esr-bn.xpi 565253 BLAKE2B 2d82b636c83a60b7a21dd78de4a049b0d3f7005840047c3cc45eab9930efc4010fa433a9569ba60b001a2ce739c30356b00f7216ac26ae8b459b14899456723d SHA512 a26bee769ecc8837c8da89a9047a81d4c6a5e4cca1ff4fcf687b7a36ad83802bc91ce983c1a12169c08fa6f843ecefb72c30ac40fd1b9eef443e1b3c3b30adb3 -DIST firefox-102.2.0esr-br.xpi 521036 BLAKE2B 83ed8ea0cdf36ff212bb6a9ac45f7ff2de40b9d3456d8a26d829ed9f6bd803768875ba871c55092f8f758c907f7606b4be0257c71f69d0da19c088e439de9d6d SHA512 20db78bcf2e3cd78492b04d4641e9a22809cc6c86e29a623227a54af9bfebac37c6be6b619b707736ac5f8f31a59889ba524989c9b60a0f24e21a1c6a8e02925 -DIST firefox-102.2.0esr-bs.xpi 451833 BLAKE2B 030a7348f92935db2493616bd5ff0a626a6af7d12c49a2efdcb2f74fce14764eb100394f42ece3a3e95dafe7a49ab8c48b4e9ad6e6a76c88be96b70497d78231 SHA512 c48931f47512d4b2c3668c8a175e8738d254361acca7afdb4dcce526ee429b0858a39b8cb1b4947c1c30fc60dffe2f61e72ddbe7eba05a57fd2dc379f32f22c9 -DIST firefox-102.2.0esr-ca-valencia.xpi 526181 BLAKE2B 7dbafb073a7097db3f9b8909cfa4cdab85f70984df26437bde8ace14315350a8a3a1ee6ae69184047bcec79f5e511946cbe533da9a2ca94fefe115dce25f2494 SHA512 8c7efe3791efdc847cf0071d72111b57a2fcced960309a55cd30f7e804458aecd5614fa77e98d8e46bcc582cee005588531c5446d11f2b53efe8899e51cb2f1c -DIST firefox-102.2.0esr-ca.xpi 522652 BLAKE2B 666c1cb2850681180ddc0a60b0de31b8768da260a607cb254b73523f6f25becf16331ae63e954370c3105eb2f31da6db04f79f2484f0c39a74c52a9c99bb734c SHA512 ab3e7bd92b04f458942b959ff9025ba899623a9ad51e56b3b7a8c7e3d1f60fcb83cacfd03fe11571836cfa329fe055bebd6f45b4a2475a1190622736a097be15 -DIST firefox-102.2.0esr-cak.xpi 539676 BLAKE2B 25f1a914903916f09daa28aca3f05d1a8b9ef7e4d0a160657a61b3718969b238454d2813f989adde7dcc1689d15bcc4487c6b7f8f2e44e6050a778bb25b97e61 SHA512 833b93b07bd732c4a21b63430e4520bc36008257e253fdd9f3289c171c5c033267d30d7fe7e2905dc2dbd64469d7c37e4ce081f2368e9ce8af9333ddd0c33e4a -DIST firefox-102.2.0esr-cs.xpi 556823 BLAKE2B deec630388eb9f68e08bcf1c527a7ffc4d9cb684d48c0ae6d7f1f6d23dae427d373a709e03c3322c87234921112fa1ee1691779d2c09d69403fc997d562c8c7d SHA512 f1ab9f205eb3859c5b2ac1a4247b6df8e626213ebac6d746f53a4912f9280165b28922fc2cef93f104f8cf318e3b9f7c6ebb5a2806846e0171d72f2ea9852fe7 -DIST firefox-102.2.0esr-cy.xpi 533753 BLAKE2B a6fb3f98bc9f25ea406d772cc2b37b578ec6bb7a011db0dedd7092a5f5407952b851001a2b208a166dec7c4f66e942056ac97be12be7f01b98ef7c3e178a0e9f SHA512 cd3b6bf72ec7dac40868f5cab69c63c23a6d0f0aa89a653584eb1d7e61b792d767410399718a415f96c8d0caa134e99c8982495b95a8e81915c297c390915d69 -DIST firefox-102.2.0esr-da.xpi 525909 BLAKE2B a0621e2c4461b0d3ce9052d717c8c4b473454878b18eb501d59372f85b7c471c9a4b7e2af99866de2bd9ffd0e964c02b61e059df174a9e4f483d19d37a06324b SHA512 d1bc8f217194f38467b4a1167151fa110bdef55e1440efc7e0fa21af7b7bcfda613f8ae6b5f4633930a925e54623f88b3c2d8adab3bb667191b876986836e8ec -DIST firefox-102.2.0esr-de.xpi 544846 BLAKE2B 56e6f3dc149b48f88c532be48580f7ec5f7ecc58f125ebce21caf0ae8f2adb00569bc8e7a580742df409d20e79fbf6f68830feab57a6ddcfe76d6ee25dde17a8 SHA512 cb72dc89683e9f788cb623a2c4757c23b5ab62bbab215495c9a8d2a87ff5d114070aca12990deba11b69b2abf615d8f21484af0ef7c3f765c0f5c732302ab987 -DIST firefox-102.2.0esr-dsb.xpi 557555 BLAKE2B c240ffb38301ba5e8ffbed510d1928ed6ab062a3f8ea80336077bdc6c44fbc39feff1c1a754490c5a0e7d327e394f83e34c26ff8b0817b33dee5b02dfa6b9760 SHA512 9f0f761084c505864d9c07958cdb3c534eb866dc736eddac91fe971c426334941e17000cff1322d8e8bcafbb1a816719b110f99b81b026e1820e1dd3f382bd6a -DIST firefox-102.2.0esr-el.xpi 628794 BLAKE2B 5f7f5243fc69d2161d8959e29c2b2fa86ab630d3f67a098cc258d627fa5b3dea49f0bb7aab6a902c4913971b7843f3d31a47fc2aedcb0f66203bad5603eafbca SHA512 dbb7689aa56ae0437b7438b0d8be3439b6fe7f96221245453a03ac11ae9d3fe71ec9da05725d818d73de157987f5040ae3171b8463c84c779b2b93fe6a88a63f -DIST firefox-102.2.0esr-en-CA.xpi 501972 BLAKE2B 5ee7f5ea9f4984084368ae63900a92632745d6dae9ae4f91281909bd53b95969d54010f76a8cdfa5c0309d5760cd70b37b444bc9b32faa01bdad2842f7f7b568 SHA512 27c84295d5295c9fe5bebc3c0bcf76da07c3020e7c6273d1c5576fd3f6164917505700ac985cd20b011b1baebe3ba5f22b047e0a84997ede1d7f396067972160 -DIST firefox-102.2.0esr-en-GB.xpi 502463 BLAKE2B 4d320926cf920937d5e94d3cffd87d8cbb13b5a88c609d9fcb7a90e2b78886bedd145560941055cc836ce75b6cadbf55ba13a6da2ce627a0c1bf2e607caa910d SHA512 7c27a189dc22e49a706c64ef614b4a3ec3bf9992484fb65a8ceddb2a73ec3b621bdd0d5f2e529bc47354fef19f942a7178a581f6a15e04c33c8a254e20dc22c7 -DIST firefox-102.2.0esr-eo.xpi 528420 BLAKE2B 0867af39981b0ab238a9c60d824a07ee068f939f57e6aed9a5c05fd04b349986080f1674ea1073e386ea5eac4517a9afa393d326ce042530d91f7dcbc5750992 SHA512 cd1e2c2aa3b7065686de386d095432b23243e19fc2abcd88faa8473043ef7bd8bb8dc7a5b4a9e8297365fdfe6dab9feddfb68b07c667f970b056b672651ea3a9 -DIST firefox-102.2.0esr-es-AR.xpi 538394 BLAKE2B d179f509ba60d9a90f2d16c0e2db740e48e29a4265fe4fd94a10f814bb5b8d226a59753ca11b75e28d840267d40b8889751f6775e6ffd58eb92b56355d273465 SHA512 5d61c6a7a5ec90e6e8daf68fedb657201b686808d052c658cd9e7f38a838fa413e000789f84729bb08b342641ce3a396b89069023054e6b24c78ac9e2c5d0e2b -DIST firefox-102.2.0esr-es-CL.xpi 537632 BLAKE2B 5832404ba8c3e51be5f0328be1be199e45c9b74d66eae8e3c45e4555938563a2f55678ab327cb31d1cfbf3b6ee9d55c8cb63dec41d9420f610d634f2aa4a20ac SHA512 aa22606a8e08f1617f68408e5e3f8f60993bcaaaedb1ac9969e342020dd3f2d3d86959d31cd12f2ff51c944b583baa003be597ef96f22c30c0bd5826ba362d28 -DIST firefox-102.2.0esr-es-ES.xpi 529045 BLAKE2B 0645ac996bad268c802589be11b7496a0fc55c5b2f03bc4adb8f94a6429ff638653211f0f62eb5b653778f9778bda66b6fb8e60e62fd5b8b14946f5d77e42264 SHA512 780262d84b1ae08dd17681a0a34805f9fd5f2429b7151b850ec55ad4a6fbcea431127d0b366aed64778536e3b73d0979ada41b81b369880114f61c697f27717c -DIST firefox-102.2.0esr-es-MX.xpi 541460 BLAKE2B 165958236e6ea6eac4fa0aeadbca566ee78f4d719b6cf95c41d3416e82b099d1dc6cf5aaabed210f1d1f19a83a85165034360f9677c39fa3ba834010ff8af4cf SHA512 66eb40301a41e698df33493df55c3926a5f8411e04df772eca0719aa38fc598d033a7675ed67b66cc058e92dc402634a46d4caf5f4fbb4a2f79b0558e893b114 -DIST firefox-102.2.0esr-et.xpi 520000 BLAKE2B 6c824205b933252188ae2a6b2e2e276258ee487cc708ce73460c30f71599e720078aedc8218afa4089aa31103034f0ad2d2118e3d0b1b228b65aaf140462b97a SHA512 741e2c9dd82c3f88a21a754f3438a00b5897841af134ef574b5a02e2ca72823a2fd0c2f1f258647c581604665fba7f5b4cc506f26a6f186cb7bb42ecd1fd28fc -DIST firefox-102.2.0esr-eu.xpi 528112 BLAKE2B 41c7ed67e2c1635733daf213d4c1b7a0d852c5a7a21eb878458fe3bf99aa37ca17dbf6df87a744501c912b96dd51286d1f269d650b2dc455e733f0286d7b78c2 SHA512 f67bfb3d645a8b1574a1fd591641ffd74048bb22c7b7acc86c6f3a483afd33457f5d881f7dd42bb69fae94a29439ba39183ccbb401e5118a0b3a601c9b43f56a -DIST firefox-102.2.0esr-fa.xpi 550809 BLAKE2B 6d9684d9707fe354f7a150319ea08fc2fbdd85a3f622629aed44077ae0e5e051bf83bc872d1211d9c8c95f7663ee4fc17d7c939cac67dc9afb9cdab241dd993c SHA512 2288e1e88b0b81534a5bf595e6994689f67bec3432dff15b59baeb70d7c877be5dc50182c7ba5a5c245f6cf00d8cdc9468aac6cb1f394ebb4e4c5098a2748c8d -DIST firefox-102.2.0esr-ff.xpi 460985 BLAKE2B 170f9aa47b1275c2d6da4d67618705d06394ca24a006e4a291b0c61c7e10ab7023dfbcffbf29e988596ba48d6b84a6ec0ccb0a5b94555b85e334008e169f845a SHA512 0efacf79a82b19b519ef1e33d31ceda9c6ae20aa6e8418ae6c06aa35ee9272e7d49d8594936b560bdcf455046e3314fbab1d1f5d3ffe9d4d5ac48d5954f980e2 -DIST firefox-102.2.0esr-fi.xpi 524260 BLAKE2B 983263ecc86b5193ab98268af915603925ba088d311a307af572d124ae7986d8a033812ee0ea2a4319dc41dd6171c0af19567549b7df347f3f1f73387d0c37da SHA512 45fe681d43a51b1d48a4094994926a96cc96f23aca08fcf39ea02d80aa32c69606e12b55ed9b518ef9d3565d7d92bcc71c348b42527c160ac1ab92b687071c1c -DIST firefox-102.2.0esr-fr.xpi 549036 BLAKE2B 942f2f1298a67e7149e769e4654b845795e63f0e03741e18c42f7f8aab3395ca8cae4562501ac135abb26f6f3d7a726146648677b8d71266b3383590ac4c8364 SHA512 5aa5e1addb1c6a7a6a981da31bc2dc3f760585a83cb3bcb0cdddbe8b58d355227c1db56e53066bad6b8833ac1827f3d66a59fe2c5c5882322986d02847164960 -DIST firefox-102.2.0esr-fy-NL.xpi 534938 BLAKE2B a790f8e3dae3c026e3e32c2ca7d5d76cf1e851dadded936f285fe584d690111cd685e0851c6888853b00ef693463f53a64511e4f193f25c92bfae16715de6a5d SHA512 6cff24008247f7694f766294b5595877a9b6aab936726db0083f231b6b76a463318969cd86764e2595c7a39447a3e94f776c69630bcafc081a8d8f5b30b01d34 -DIST firefox-102.2.0esr-ga-IE.xpi 460709 BLAKE2B 2c5e49b6ddad4e8ffe6a9ea3dec13e7d8fe93430458273e0ce08a38110b412f13f32a442411544d0fd4c66ece099f21931d6a98365bb29197749120f2ea1dd90 SHA512 6d60cd18f8a56be25df8148612053923171e978a1c1807ec5857f926b671efe4932424d4dec294b45ba214a14c48fb53e2dd19b85a01f1258b8a3457194ece9d -DIST firefox-102.2.0esr-gd.xpi 522594 BLAKE2B 4a0647e8bcabb10e76b6d37e34f7286dafe2935e94dba2af2dbbbb7a41305412f2f0a6103f26e033826ed0422203d7e07696239cf38c5bf6425798b3dc5ece5a SHA512 d782fb7183b21e85ef2bc31c8acabdee19cea1e5e7bbbb38a80966432f73827b3c95c955658f87a9126edfc035253d032f440874ef9c2ee2ce2e05c8f594183c -DIST firefox-102.2.0esr-gl.xpi 528497 BLAKE2B 4f8b9a8e742c497973bc81aca0fea30561cd01c58416983c5ece064a7c061f48206b272f193ca67e30b3b3e906343296be2c27d9724070a55fc00550558e46cf SHA512 56e825e036d907501d9306a14a852cb69ce7a21ef9fe8f361640ff8a15497a32406a4a0e01979a2b8a858335926691b26c97049a8d9661f82139ae2e2a53be32 -DIST firefox-102.2.0esr-gn.xpi 549557 BLAKE2B 6cc69add318c7e2aafae13450219f457943e2f765594aeb2622c670beb5a3a99f85c917a1ce98a9f386d7e6aeac78f581c7ed4245296a8c20698e4b27e8d2cbd SHA512 077c85e47d7d32b82fc67c9db61444c4d512249998111ae86cf24755ef7576e965e795f412fe1d63a780b0de64f074c39f2043fbed809228180f5bf7af07c5b8 -DIST firefox-102.2.0esr-gu-IN.xpi 516016 BLAKE2B 624fb2a75fe21e44d9c1fd211ee36d4b9517dbe67d6316211f0993a094f0bd5d0758bfcbac7fd0d181e1a438f111012e9330320891a4d8bbc0d7aa933c4ff115 SHA512 93f9930fa478909c019a5926e962cc994c9649b3b7dfe930fe4bb8e3072fec849e7f5699da3a334f3d1436d918eadef1f7a8c9e82b7bd238d9f9064fd2dc66fa -DIST firefox-102.2.0esr-he.xpi 548993 BLAKE2B 3fabe974de3b75f9be271896b54e78d684fedec05cd86619aa619638bb5fd199d58c11ee15ce126740e43119bc19b743a6591e1c53193d3e4046b77b61fcd819 SHA512 dc58db1cc35b2892b6ae47697ff411a76824506336eff2165240ec8ce93011afabcb56b4142e08c5560140c8e94773d891fe93ffc764cc69d71f467ebfbf9047 -DIST firefox-102.2.0esr-hi-IN.xpi 546131 BLAKE2B 6b024c31fb35f9910434029653a15c31a5eea89a136f6ad7c4f2d9f2c3af08d5e749e17d1b8359ada136b1e5cff59962a2550e71c9916230867a6bbcfbfb3cec SHA512 afedc5db2da35567f6ae8adbe39acf3c4a4692bc6c52c58620e3c9297263e09eb52841e1f25eb632b250c5f878dec02a9f743a78966c40f522001d936871bd84 -DIST firefox-102.2.0esr-hr.xpi 518893 BLAKE2B 4a602edf0fe16b9759dd7bf19fcfa1649974f39498e8e688a7c33f9b5bacca85f8e41e58adf2e27ffe57b56820100458f8e2a5b4530d06929825b598609a06ab SHA512 8d8e3490fe52deaa28c6eac3759f6c34775b829cd7102792eefb1ff57b5306eb7f315ee19828a9fbdacda117a350c3bf57b549e2209cee93b600f24dc648752e -DIST firefox-102.2.0esr-hsb.xpi 553797 BLAKE2B e48f7faac5bf91c9e54237619cfa05eedda8854c606830154b5800984e8e389fb14e19df7d8ddd25907851b915382ceb7f85280a0ce799f1f4e207ab33a37bc8 SHA512 0a365998fadd5edd308b786beae5b8dc0b2eba8e349dd0f6cc93c5c9d5255a021b4b20793d74c2828c72e149e18e0145cfe569b714b9c04656af5a7288a74c02 -DIST firefox-102.2.0esr-hu.xpi 556878 BLAKE2B f80694c8fa1202dd7ce58b80dad4e709427c2933570db01ff3e3766785841c75b51520fa37291ea979998f3c75b7071c13b44a3538beec0f79caa8cd3315cfc5 SHA512 5891a7176f08e8a73afa59701d309035eab802196456847fd41b1de4b6e8aa88d706f9536c55701ae7b187fc78db3a4890238a53967ed97cf9d0ceba1a5b70ed -DIST firefox-102.2.0esr-hy-AM.xpi 567857 BLAKE2B 4bce3927e4eb5ce839b642172b92d38d581c417802f3cbd25c709dcf8206b5bae73e1dfd020457950d756292bb1a61841b7a78f04cf0177dbde1d99c40c2fe02 SHA512 5c32cb8eccd65629f5087935d76cb63a1eb2fc13a436863a97f4363f7336f82fe4048b3dbec530fba0ac976c561d02cfedf63b20e433dcbfcc4cd7b83a561856 -DIST firefox-102.2.0esr-ia.xpi 523756 BLAKE2B b5c5f4b4868de6f07073aa285f7350a94ffc6bd1c0c1591f2964c839b26cb75efc669d35b0056fc43ab7501a977fa7cf271256f98ff27f012c1598469cf43967 SHA512 5185b52bf7f4f29070c5b2fb950b93e1904377ce4171958013f34ae7d7eb50f61084cd25666fb5d8b266a4de1be417d8eeb4d2d74be029e00f9408e3716bee8c -DIST firefox-102.2.0esr-id.xpi 521254 BLAKE2B b61027a76921aac7e3733e3ccf81ce5c5f1d915ee5916cc5a820c2a605c210630968453f6a00fef78a05539118a37c31b7ece046de27a20d8a1107aeaef36609 SHA512 d2de1289678f9b037bb357882a9ee3a66d3b2a11f2772f48cfedcb1e97dbe598ba48f898c69855b9fe561f111dbae2716da2ccdfdfc9df4091a4abc3df0ac196 -DIST firefox-102.2.0esr-is.xpi 528388 BLAKE2B ead72cdca02b263ca539d4cf35fa3494054c04b3909643c2f29f9eb0629df5492b8549cb1698e13e97d94dd9bf1cbdacd80ea6cda482a9ff133153c9af6dc6f8 SHA512 4b0e79a3b1187ec87f5d688f237ba9af3ef4f0879bde590cc95084ef5facf64ad195ee8a83f116fa34ed41267713d7288c8651e2dae023ce03aa032ab483425d -DIST firefox-102.2.0esr-it.xpi 449761 BLAKE2B b07586918ad875a7353c3b6b5abbd0c2867b80d4b9036394962ac5da78e23ae05693d24ccdd503693cf9b82a0c5ffce5257a69120f4720ae8315745d1224adf7 SHA512 5d7430c4af76a2db0b71d21f7bc78075618543edee177f14b2aebf81c17143e4605d033d8d6bfb1d53bccefee1162f4af526c42e4933e84f29f4f8d4aec0f005 -DIST firefox-102.2.0esr-ja.xpi 573753 BLAKE2B 6e2eb6ac96ef32ee864a85ce10a5be61c9238ae32ad94f39cb0b083c9015be03e6112f2742ee0213198e187840da07174b8baa304269765a554ca4fb17e27226 SHA512 0e416dab96fa1c4cb9d8ac988984b4a4c702a5760e9809db7f10d952340f8666c30ee7ff9b83eed4019a0f5ef0c58db1eb18e88eaaae10dfe2148b0e29246f64 -DIST firefox-102.2.0esr-ka.xpi 581247 BLAKE2B ad8fac22632cb0b50cc6b82d0c2dc9476a84de19bde2bd6e8415162919bd88b6d6a1d441a5cf2b016e3cd9de1f9101ff82473e7e33dda69aafa2bd44f8530b64 SHA512 ce0e8d128b8b1d01892475dc4d68412af2faa8303a75651738456d6f1fb5100eed0f021c5499fae7b5706ebffd23c367854e8032a92c1e4cba8ddff4ce37f353 -DIST firefox-102.2.0esr-kab.xpi 543022 BLAKE2B 57533e86fe636149c2c43ae40a6cecc3e00a2d22c8bd1d7a025fd81c0f13f122114da5de0ad77fbf61cc4aec2fd7ac9ca1f7e98b106e133940527421e60b2a6b SHA512 de7637d70360445575af2e62706ba91cc4472b2d7121659073c257e84ef8726d81fcfa3dfe8cf50c7661a3834df033d30f938b7cc149dc8921ef431f6daa8c6c -DIST firefox-102.2.0esr-kk.xpi 604865 BLAKE2B 61ee4a8116dd9ed9c482ac5b7c4f43d13c2a68fc11b1ed563b73f6a00e889e95b5eaaca11c6a089c2fd7149455ff275a6a306700004da61d18732fbbefab782a SHA512 d7ae8e6b4b38cff3be5caf57767cd56cea5b6cc5f66f61e88b80d969f9a9be20645ae022a3feff75e591bde8609eaf31c7c6ac7c9c43fbe36b25f303931433c4 -DIST firefox-102.2.0esr-km.xpi 519619 BLAKE2B 8cff62344198232bdc94b6ae33a7c30bea974b3387b276ffe47f1ab10c58dbae40784faed8435e2a9e4126c9a178c74cc655eda5e142c5f117d545ec4c9368e9 SHA512 a1e720ba9e6d066121ddf88b47aa0ed15576d6e7ebc38cbac2565000b2ddbd8c885f4fa4143df2d1cf47373e7122f2d5cf79d0436c68d6ad16b5f0e4e16fc298 -DIST firefox-102.2.0esr-kn.xpi 485576 BLAKE2B 63fa7fe94f65a7ec309dceac2bdca77401f91318d76f6f8e7b980137c566b82bbaf3574eaf57a6ead6097abf634705a6dc1c529d5ea5441a5ecc8f76b4986224 SHA512 02cee7c414ae6d1f51a98edd05cf731084e38c57db061a70fb6b2303105c17dcde290cdb1e6f123c8dd67bb3dc30b06dd50843fb8106faf9bdc617fb6ad5ee94 -DIST firefox-102.2.0esr-ko.xpi 570098 BLAKE2B e190edecc2f2f29e9c0ea983e1cabe0e61c2a846389b196a9fe8f9281edfad03ddedc20ed9c4198bd04ab176760137efe09159f73be16e73f592dfa1befb88e5 SHA512 f0b2a11a7badae6c0b97639969575579b212056897cb44d26fe5894200f1d5e75df1152d3c2cfd7a048f995b405a5c8d40fe5ec86805c48465de60d3fe592e13 -DIST firefox-102.2.0esr-lij.xpi 459204 BLAKE2B 97d6783b0df8b16ba750351448e54d0fce7c7ca8b68d89906ca87cd945df13e3cf353cdada7efac95e66e85bb844fc99107aea15e4b8c3b1aed7aba3a80f2c2d SHA512 13cb4625b80879ec58c1a5b9d971cf37885b4be9b7dc52d29bff168e90b43d5cd67513ee6a91c8d9b1ce92af6a8cfe6bd22d7e2fcb12283b26c0c0ffdf3735ad -DIST firefox-102.2.0esr-lt.xpi 549846 BLAKE2B b310c4deda11df8696ee059cc765b9b8f424822f3ce0045f1415c96c2884f2f709fbae71980a70087b34791b8a64c6e7cb9cde757e6fc5c44ebe5dbd2da06450 SHA512 cb455972603e27a68e0dd1d84a3ac6b049d848da865505745054bcadbbb9a51bf89704b80b0fdfbdfea5b94d4f8a0ddc49809bbcdc4d0abb4f2beb52f206848f -DIST firefox-102.2.0esr-lv.xpi 452075 BLAKE2B 2a09ee36053b2404a3f462368aaba8614cd8a79ee261642ff5b07847562486036dd86662d21704908433ac4976dd0ba9cda022b99aacd7d56a2e6714b0310c19 SHA512 58cf8de8822b02053a6e4427fa82ba848f7eeee2126ce172b4cf3e870feb3826275a718b14bf0a27dce8cd2387cd3f0874a198fb29522ee628c0428994e7e706 -DIST firefox-102.2.0esr-mk.xpi 458899 BLAKE2B 05482b9e20b9a37cf1b7b85665c8f2c618f07212ff12c95a4d554f9c8297a0c2270d919bd158a7453be87bc2ca0125ebffc8991123924868a3d1496da70020e4 SHA512 640cd99a0b1b419d576181c7bed9db50d41ce7665c5e0cfeba8700a71a7823eae0140a261b0aaca544e28a99e5d5a32eaed3b7a095b78dc1359ecd5d93fd4c62 -DIST firefox-102.2.0esr-mr.xpi 519586 BLAKE2B c61d2aa57ad4c35ce2bf54bb10b3e7978552b1de871b8c646ad095b79d020b187dc75730abd58ebd519178310879aa939b1f76cfa6cc278941ad09e87acea666 SHA512 c7765ebbf6838a92f560aa08ec2110d0e7ce9f24f3ddade3b8471d9d57bd2c0b74b8a535bd037e11f0a7ff5fa6910508578cc899ad3d5ba32741e7954f09bd8f -DIST firefox-102.2.0esr-ms.xpi 437308 BLAKE2B fc20942a113a56d06dd2883d21c46a9530dbfe36d53f61e46946f1362d138b0bc5cbeb488a98dd57adffaec546dd3c13eadf029c61980be908bbcb2bcf395ff3 SHA512 b0e674ea53b0f0bc9f0b77ceb18c6215df2e2397050b03c363ff4c1a11d584e03c04381cbf9d6f9c8bb7a8fdb0544beee5884728c7ed057026eeb3c36bf09d8e -DIST firefox-102.2.0esr-my.xpi 498767 BLAKE2B 22d95369f2fdc8b3089dce3af33b69b66032997730c542a89e0fa7dc3db3aa77a1a894612df50b98096b112140e46f5dcc9d471332f732b72c2765864689ca35 SHA512 753842f43580616d4c3cea461e1775a6ab24793adcc84a96176f0e04ea8edc3b8606c899608837e9a7ab2f4e8d81d2f8716e0a14e043b9edefc0c6246d1783a0 -DIST firefox-102.2.0esr-nb-NO.xpi 521322 BLAKE2B 4e22796207e61c6cc3aa54faed9688fd82cd6eec2dfe52e49bd359582bdc43e4adef16cc9be9114b418faa9ae968b9ff77498f229d9b3df0ec201c012d1e511b SHA512 94b5c9f624e45aff6b4ac48b3286807e8b01fe276fc2f5a0e416e326bf4fecedab6e82d2c114a8e6c9227cdabc98004d5bb44e22f228b759dcf819180d17beff -DIST firefox-102.2.0esr-ne-NP.xpi 477726 BLAKE2B 30cf0d17f1bb77495d834054a3adff88e268f04d280936f9bcaa5821a8f8fbe7cc59fc07802e47d79cfb2aa21fa3f51fd2056b20e16749588744aa6eea49d8ec SHA512 970d5761a33a8e68ba0d782571e9e0463017afe4bfb65485a54915c9bbb2c304d695921f007bbbe2b469a5a28dd2c6bca42091dac68144a021fea69158429b05 -DIST firefox-102.2.0esr-nl.xpi 528931 BLAKE2B b4d448b0dbfde84719234cc53a22c3383a411767dc858d4b83628ac8712a628c750b7466b2ced3ba412f8a5aca42c620f22d32111499dfc634477c797e60043b SHA512 158eacc4afe842df0bddd725d9c2941227d84e805763d8b313ee9fe1f065bcb4a8ce7ce493a362e257ad000c1b98e31a7604cd090a03cfcbb355a551e5bfb02b -DIST firefox-102.2.0esr-nn-NO.xpi 523254 BLAKE2B bc708dcd0a46ab2613f3a9720ead3676abfc82f152684c3f0ed66e687b3a53c07706db699adeb55dc1bf3f1fab3110a8a4ba2cca131c90bf0429ddfa91a78634 SHA512 0b2be5d135e5d9f04fce970085c130c87afc4c78963f9f64720fcdf73b59e0d1e9ad45868a864aaa34b7179c7def805d775d7471624f281ddd1aa09405747474 -DIST firefox-102.2.0esr-oc.xpi 544581 BLAKE2B 4bca4ec863b3ea9a897580d1d9fb5cf45a894a539619a86f9e8db6eac4ddd330495fb7adfb90ab6c15f3ac9dac338196b1654d07f449e385a0e7a372d8751f0c SHA512 2339d6b819fcb8b8f2d431f27c53e147004e0bf7e6148acd78a464ae60c3dae09d3ac2e9d2fc73e6beeb38e2d577b15b591ad164db5c5f7b244b54aa4c58a606 -DIST firefox-102.2.0esr-pa-IN.xpi 587402 BLAKE2B 0f64f3d54aba2f2d7c23ce5ab62adebc562c15b36bf628bfedf9d83e9e31170208564a404496aa46301ae5b583d4684a9d5b03ec0856ef8ab56d01dd45184db8 SHA512 8d4234b1aa7187b64cc7ee6eedc8fba0081c569eb2878ca9cde8f758b54f9761c4f24c9c7a75bb3c0e96bbfd1615ba283ef87b8a8b8cfc79f71e0d2ef229bdc3 -DIST firefox-102.2.0esr-pl.xpi 548922 BLAKE2B 319345618f30f1a463e47c3001e0d33ca08e8e5d10580e1d53bccbb517759b68b609d6f3e65127466717bf5b77a7a75cc9df10a5f1d676e9b93a316226d41b2e SHA512 86f370ff0d826c2a9c2aa318ff2bbe1fa06dc6c26f9a19d5261f41f5ded742d2eab1748ad9e4d61143b67451962921fc9ffa38afbd65b75d1714bd97dc782337 -DIST firefox-102.2.0esr-pt-BR.xpi 534190 BLAKE2B ca3d3af63b1d568321427be97074c0482478ce17f96661bc02f686019e7946f351dfdbf4c738ee5aa83ca464b240b14d8b1f177f8abb774265ff626cd2e8f72a SHA512 974229b833c74cccffbb0c7d29e43f6c4dfd7c38c9d578b93c7b551a648ba737cca5145fc11d88cd7f8b2c654725e8cf77aaef47adbbb80ac14f8588bec88630 -DIST firefox-102.2.0esr-pt-PT.xpi 538018 BLAKE2B c1a9dfc56c53f3797c37e2b0512d6a8f904dcac1f7a59abcce19305dd447822558497baf9729e6d27dc1bda78dd7f33ed0802ece499de407427a329955cef024 SHA512 dc7f2e53ace6344bcf79229b1923fba7ceb14259ba554a659fd2f7716d1c9292cd97f05c60017f7fa23594f6aeae03174e27bada7bef36bab8bc8909ef76f73e -DIST firefox-102.2.0esr-rm.xpi 528323 BLAKE2B eb7082866e30216f3bdad0a8eba32d41eb1d9d4860656b2af797255650a2f609f044886ba9e72442f30256cac4cdbc80ad67a6e923b27fd73c9119c0edbff155 SHA512 fc259606b15627de5930d380cc3c9aec79808ce71ce3ef147ec961a9ce8ac5a3996603fb5faa76138c5c5779bafef737ce788ac05e9da9255e4fa400d1aaba9f -DIST firefox-102.2.0esr-ro.xpi 515802 BLAKE2B 52cfaf43f926eb3a870a767fdde9d700abfb379974590c68c0d416b21d1861e4ddf626937e7f8dde4075af436cad0dd5a05e8f98a18197c02ab24ef5e6c3af86 SHA512 29f7fedd2c5ccdd197347c3c5fa550c528b55f78c9c2ac96d3980b284df4b7a0dfaf7b9688a13001bf7e0d766cd33577e589eb10380f838f2bdbdf2c743c091c -DIST firefox-102.2.0esr-ru.xpi 617124 BLAKE2B f14ac851cb617fa9fd788038c84c07d4836cf13e346487e46533da8c40e8738f3b40f6883b8de46b3b0683d1d68a311aa87b638634ed47fac0e81f4325f05b82 SHA512 e894d11924d4f2df65f67a4a5187185c54604b008ecd0d28efd268955d1c217652cc45db093e69fb42b473ee494b814669632f603e504ccb49f0616f43c0ae8d -DIST firefox-102.2.0esr-sco.xpi 485596 BLAKE2B 47a9d5b3cac50a4809eb453e48f89ff4b2a75dcf59ae721b3b855900cae8d5843f5cb75c85b1805b2a95e2593f18082718f795f28ce20cf51bb25fcdb9d4812c SHA512 8e786a5d0c650b98b861ffa5c915f9e869ef424f2e6aaf91d003375b3b78f57020ced95fa6066f463049d9264fe900a00887c9c8aac025a9f7d5fc132846d4c6 -DIST firefox-102.2.0esr-si.xpi 473408 BLAKE2B 9774022c40d5c7ed91c02f61167761c493d1ceda424d1aacb5b9fe0109d1e68ccb69b0e5114deff86664e15dc9cc4e131f1ae493f526e63fa6e74379f19f2b13 SHA512 d088ec6b5df8852f41388458dbba00c3a9ec23c3e0c6edbd6775355bd347a0a33aace032152f972b96b1f871f0d6ca8ed8a0fbb75beab5f69b2417b11f5f7515 -DIST firefox-102.2.0esr-sk.xpi 557523 BLAKE2B 60b7799b65c6e0c30e0b29b6e18b5f5e244e8fcb3cb4b8aaeb70621cc22c7b76cec3f99abba3c1b0b1f0378a3f4e532de56414e583a4de3cb60da3709ae2dc3d SHA512 8b6491c8fa8665a7fad7d12e4aa1e34c96512582576adef5f8462582bf2655e99c323c7a44d3ce9a0f4655d0bff52b92190a223a45beb9357838fb75003e398d -DIST firefox-102.2.0esr-sl.xpi 531190 BLAKE2B 5a254b1a400dc2c554783175c3702cd45ee0f1eb8b81738669980884adc919f9186c92831d7fe04e8e31bed8561d0e3a42a84e99bc4c4866ece689085789940a SHA512 3d15bda3e14b0d40970392a8069be1c331d602e34c2a5fa167102cfa7a19f546b73aa0450d7be3d9a213c6ec1b8652991c1de08b6b1063da54ecdaf4039f7a29 -DIST firefox-102.2.0esr-son.xpi 415193 BLAKE2B c6463a4633c6f9801ae4f67cb4bbf1f79a62147806d847306a0b2a30fcee7d0eacd6d74efac02374146f9960827b5eb3705e604553300486975d58aefd274310 SHA512 c25136462301491d348aa594c11db1ff2caa805522340a959aac9e95e6e6fe6af8ecbffa7403a86b3fa27d2b46ae94ea1406d3057c2cc7852a279d776ec05f76 -DIST firefox-102.2.0esr-sq.xpi 546098 BLAKE2B 42667ffba53b320e5116cd754ed0eb4eb68a0ac3e736db28a77b79e77eb16a7699c05e861bc91faa48b1dfcda935c5135c01e260c024a210dde943f1953f25c3 SHA512 5d1856269c5c9a7bd131ad1a53ef3c10a0e0794c3f1a342734a1ca7a960be0a0fd26387b30d83a7f8cffc0eb345bbc6858ca445932a00145864ce12fb6ad6cb9 -DIST firefox-102.2.0esr-sr.xpi 571127 BLAKE2B ec066162fd0b1093d9aa201482e70f4404a6c50c4f6adcc48962e41e35a06fad47b4eace4a43266b240ad863689d84cc94c0a98aa4c8530b9f9864fcb8835461 SHA512 770abf797de1b304fa7ce5118f46616030dc865df0b12e3f66f3241cb11bafb69c3769c6552e51eb4694bd9b7adc1d8fccc808ab476509902e341a14c88c1f9d -DIST firefox-102.2.0esr-sv-SE.xpi 531432 BLAKE2B 7161b592bccc98fda714dc79b89031fb86a285f48945f7ea7a948f16b100f35925070d189fc2d2fd2f88216db9e378609ee165094115f9e16f1444f8a277d460 SHA512 8bed5cf65cc108f4da9c703b43bb2292e50e01da8f572e73887e8f8b5fcf2b89bfd57a781c2a68546c64a788dfa39adcf0242928cb3d986aa9ae86d18b288995 -DIST firefox-102.2.0esr-szl.xpi 497440 BLAKE2B bdb15f0fc93ddc96ef4a9b9e615bd4627820e3500ebb6878983d759bc537eeb17e8965cf79b970351a59d85f77754ad03091d2faaec0d6159621659fc69d27bd SHA512 00a1e2ec15f1e57831a43c83609fa75cf613642ee12bfaec503fe66e2b4e44f88315b9f63e48ab0678e2b5c165d8268c007e5ba2f063c5d608d61804780be85c -DIST firefox-102.2.0esr-ta.xpi 499404 BLAKE2B 08d6aaabd78be656ffaed155ef40b0c82a969b0feec481606193c0d17d36c72653d7a24fa7dea5a94d94052aa6187107f2dd30e6db227a6b13d0ff31f0f6aaf0 SHA512 ee53902c32bf450535723a34a5d2f0bbd15d191e4a9af4d401f733629ddeb2225406a16b8dd9a0472ab7e11fc5d0c5639b949d5e0bc7d4213165a974ebca4c1c -DIST firefox-102.2.0esr-te.xpi 540276 BLAKE2B 579e7a0d37cac6de5a08ee872a4cd13445c6461037c757aedc4e0791340d40c4d4d306c39fad3d912c02941f3dab0e480633c6f91391237a212fdae3a07528e8 SHA512 6f03dc3efc6ed418fd660f4f003f0ba52030ec3c0f66f43a211bec11def28ba0babccd754593ec37fed386d79cd315c62f6d374eadc4bae3ceb322c3d4be5bdd -DIST firefox-102.2.0esr-th.xpi 598741 BLAKE2B 70f344a320e7d06a5e57b3319afc533869aeee5864cec6b5f278e313829448df40868cb297ef9e69ccb323121f94407596192925809d8d639d728a58257a3007 SHA512 bbc1dd9d4f54a36825105f6c9680beb2f28f2e86ea8a85ac83a18eb210f9c8cdd9bcf74c6c8413ec171a021246cd07866b27cf18e86595446d688fd30b6b3908 -DIST firefox-102.2.0esr-tl.xpi 505604 BLAKE2B 61e811cc002f3cc49c29a0cc96bdfdcbe0d049b18de099101588e0f5caf92310572903bb819803e3cd8c267a493f80c56a0b06a29a3e3bba0dce58ef3bad4e36 SHA512 e0660882f6246629d9998aa52d5bd6857cd20f198ed5b5430af1dc5309a422ffff136ebe5fc210c5d18e280d9d1ace0af01daa64c93365198186fea6e749642f -DIST firefox-102.2.0esr-tr.xpi 544809 BLAKE2B 9dd365210108ef3fb897facaa2035936f09682e11add793acbfbdff2327c471125b756c74fc5a338b0372eda4e773b20058a9776c08f85c69d73f72d09b25fa8 SHA512 0f780daca7f7c273054ac9101ad228a23a18735b4ac1df56e2d1b42299056c03aa44c337d53b564e36264b8c7d7fe362bc4096d62d467ceefff6491192dbaf99 -DIST firefox-102.2.0esr-trs.xpi 477876 BLAKE2B 8f862a3ece2995caccf8c517c159adee32a5d9fe798c1be13f49235bcecd950fce57f1890c9af06d1eae7a798755292d3fbd66c8f783fc1263189de44b64fdcd SHA512 c6d8ec6cd433e984d1697c381b0797ac8a2c4adc6fafc7d0a2a72076b1790d7cea694fc753b0a4dfd56acc806184327e0f3f39fb9e149a20cbc0565d13becd26 -DIST firefox-102.2.0esr-uk.xpi 610935 BLAKE2B 0560f6ad934344883de0c87d7a26346060405d8bea22550f0be0c61d4a82a9c86959823d9d5480e397df3885272ee60cc22bbb15fe669a21af8af8c4c27eaaf0 SHA512 f7fb1b15232ecac742c8715a4f55022498300bc4643b55c7df98e46f670da327aa3d3749e22507f9feea9b1b95789d3d6da4652a9f3f91868dce064dccda7bcf -DIST firefox-102.2.0esr-ur.xpi 547846 BLAKE2B 3dd838eb21ec5abbedd46de8592525e3b65d82ce38f1d8ddf3a966c78b52c8db85b48e1f9fad61b1cccf9787524bb86ff6b79c55eb5e8afcd2055f112e5bfb0e SHA512 1bf89153ed72314b79a5e919ed3911dd35b3c2f1c7075a7c11cd51778aca78b2521222e5b0e44b5ab4ad44760e0c92adbfc7c7ba65756471beb84deadb02b1df -DIST firefox-102.2.0esr-uz.xpi 467341 BLAKE2B 6567e0d6b498855560c86c18f77e43410a2f321f73517e967e6a6701f013fe2cb1a916c36014cff842c9bb35e8c73afe9bb59b5733d3fdd1303cb147ad8a4ac2 SHA512 ab4cd7aaf7dd400999efbcb575f54f696670e47641b20c4daa7d8465eccc0ae7f9bc64667b815088e64ba4fbe9c400c72147b551fa12439cb7e7c6d18fbd405a -DIST firefox-102.2.0esr-vi.xpi 563716 BLAKE2B af0ff48527f4ba9ae66ea09530e732abec0ebcffdad17901ba46d0b24503fca83e4b47e44e0dea27497ce3d8b52a38f9dd7030982b4cdf1d9c9faa47f97b99ab SHA512 d1ba9b6c9646c4d7f3928f212454dbe2f1bb64169583234d96568b28f667d8c4d7dd696e12c15b9dd47a8f73e4af689fa3c2658230a9890a91cd83d2da3a9b22 -DIST firefox-102.2.0esr-xh.xpi 418249 BLAKE2B d7001ce2c211a5d71590c9fcc43dbf479ae3d262839b8c5027e80286f7a30fdea36c1830f6aab0c8b51d154a88b23f96029779b0194fe53a65e09c7d3e61b81f SHA512 2295fcd3a8cfa5ff73cf9664b7690c6f06d7f0ad254588c4da8fdd555ad938dda4b47def44b54d8f94fcdec23615392505cb92b7b0b81065800c7c8e7cc87d92 -DIST firefox-102.2.0esr-zh-CN.xpi 566196 BLAKE2B 0d0443a0f98b6ae856eee288a56f4f56911182eaf9b919834eceec49c93015550ffcd1aa2c47bc8510c0e1b728ebd3d17740b313d23d84b434765bff5145df66 SHA512 4fda8beb539fd6217d56f2dff889056e5adc6e10b262faab1460653847666c8532d143f3837429c81d4868b830a2a8661407cb40c8924319b6a7b3a22f9299b8 -DIST firefox-102.2.0esr-zh-TW.xpi 567162 BLAKE2B dce18534fd98658ed8adcd4df78d2ef0830db508ebd23e0ea72b41c05d7e25519c25713826105840f3f4f401f540eaf26dd2c9348c80b67ec1266d6789b947ae SHA512 99125bed1cc36f1c409208c5e6476443328e5f5408d45989a99d90ccaec69fed87fd4febd74369589cf6f44f08c63a1fa6bd3bd1b3da21dafc51d627459554b9 -DIST firefox-102.2.0esr.source.tar.xz 479840072 BLAKE2B 00975ffc02a11619d971731d53fbd480e9e6940d2cb9bd77c529b790e9734db85cc48b4e70d5acf447d221620feb8e9d9b8d129d07f270acd0d388574b129ee4 SHA512 06d753867ccfe1b2c79148cc60bc816b47a2abfa98219808868e9028bef1763d982ef7012698d06b8959cce79163d7926baf5f9d5ca9daa18c51fbf0efc59993 DIST firefox-102.3.0esr-ach.xpi 453455 BLAKE2B b89f8b8b5a42f703b84a5f003c8d4c3ff9cb82e86ef522c6495664f4f6462ab25f650bebc362474641ae5749c7f8d4e2249f68c528888ac1b7c848c431aafcf3 SHA512 1c5bad68c11af14db55c2c950df243621538f3bc0341953482c4333929452e4fb32d4cb625c0a0969afdded17904e72b75276bde86470bdd45a06ad48f2b5c47 DIST firefox-102.3.0esr-af.xpi 418247 BLAKE2B 6c75efa232644b892aae95a73b6cc66b357610f6a32b1ddd82ca4078c5245f3228f506c809847a3bff0ae49b9b7acaef405fc19c000762d4611a3fbf53d29fd7 SHA512 e60e9753293086fc26684fc4e5932f14a3a7f4b65cf590a750dcd47b95bbba75605b31b8e5a3daedaf1177867de3e7ba90e87df256937c1d6f737928536ea3a8 DIST firefox-102.3.0esr-an.xpi 498403 BLAKE2B 4f7666361af01b53b4f5a046fc956cf72de668772c7cab5dbc841104c5526ade61fed2c577c0742c4841e2abd77dff6cb9e804698c5ad9f519c2740ea2991a13 SHA512 f55efa9f76df914ec8371ea902406d60f0ef6ac13825fe1d0e45c2e587d299dc2480b4df6536fda74f1f6f8438a2566a8dcb503c56ec41e805331684c3829065 @@ -204,204 +106,7 @@ DIST firefox-102.3.0esr-zh-CN.xpi 589094 BLAKE2B d496632b1f029535012ad3b43e93534 DIST firefox-102.3.0esr-zh-TW.xpi 590469 BLAKE2B 71323bfe2c05d01e38ad6629291a83f82eb2b5486a133d0836e5982d6ca8e2fda0ec11e66d874dfefff31b6b42237324b80146ac643b78d557102a8b693f6847 SHA512 3038339af3b2c01824c17bdcdfbe64354c63e4bc55b6bd463297c1f875c49980a747c5447f9f468ff567d6bb2b883b2cec91a1d716fed3245aa1a1bd840412fc DIST firefox-102.3.0esr.source.tar.xz 478260896 BLAKE2B c40ddcfefee874f6dff5d175331144461917269e912d959af20aa19cb8bdc57209403d1e5962311614be8fede33733f734c19bb0d32d881421fa1197539dce5f SHA512 35357791f4de8b474780083a22fb52b7846b8012cbf01403f2b9526151d11c196ce0f9fba8e0f16d8235d7259af6fba1bc3acbb5b7e79129a28f390467aa7556 DIST firefox-102esr-patches-02j.tar.xz 19688 BLAKE2B f26b8dd2613712ab49db34247c432769386ac066238b86c0eea367cebbd167334f822866129d0874efc35da4da686e6185881649b0b3095dede28ec8c658a3b2 SHA512 456cd2b7d9f907080afb5225d353154117624fa938f24dcfae7ada03f5b39572e5d6d6e1a4bba7825465b48f6d38b04e5c0f69556c82d4ebbe1463e11dc809d7 -DIST firefox-104-patches-02j.tar.xz 18596 BLAKE2B 9fbd9a901f956498375ee1ca4a237b8c24e4dcbed504debf8ba90e890628ae2c45a8dcb51efa8ff81b1f2f119ad51c235172ae3b2c31b97312cdbbb343f7e34f SHA512 43b345a5f2c1549695b1cc6faabd91e42dc859a24aad998bcbc38a5d68e550eeac412f7a342f3aa6061e308fad4230b80329c5d9a13dfae638a1eb1eb1a46357 -DIST firefox-104.0.2-ach.xpi 458326 BLAKE2B eba568e83dd1103b5e6ec2a955aca8c866526ea276f9da0279932c8ab531d3ac0ceb53bafd5ee93dbc2762c1b4a6baca31fa85f6328e6f8c8ec9419e4e9faeaf SHA512 4f28bceea0d5e74a777b77a460399bbc90012c3010ba3f663c0ebc122f8e8eb659518f9a696d547380e0210a4d47f8dce86f162c5174697537fb5ae9acc90ac0 -DIST firefox-104.0.2-af.xpi 423660 BLAKE2B 01af740806fc537f59476a761c468b9a388c9075c22f8aed4dc26362ccd9a276b5452c7294cf11776e4f16f5a584c8db9f0803647243bf237bc8dd5e5d93de6b SHA512 e57bad8e8f4292d0d4334cb3821ee99e1391b26dcf1f1fe3ec94a5e4a36240c74e0cbd6d7aba0b851d77858bfba7b9aab3e91c72aec6cc5a83a54a848feef4f5 -DIST firefox-104.0.2-an.xpi 502550 BLAKE2B 8388698af62217b8eb15f4f020702543556d5995b2e8ae3c70bfc83b1a4c54974fe13eca0ffac1eacb81c38bd02bfd44f1cf84bd5b46a2c84ab3326b25c37ec7 SHA512 08c2157844b28e5f4736744d163220d72daace953679a63e99d44cbcf0b186eb19ba7d30eab9e157852584fe98044926f2787e4a60134d3f4f1d5bc4a250a8d5 -DIST firefox-104.0.2-ar.xpi 565459 BLAKE2B a24c5d9771b06db7b83275e7303757dfec585817ad3f46cf8fd43c0aa3c523ccb1f9aad56a1e3b334bd8ef05d1768cdf8d4f75ec73071fa55436b63be78e8507 SHA512 5245d86cead3a00cd616db52e2ae45362e943ecff727962407789465b231e44f40462073ba7d9bdc87345fc135e2ef126b535e965f252f1f0df90502cfd7be27 -DIST firefox-104.0.2-ast.xpi 498361 BLAKE2B ffda33cb72504a9f21fdea8fe5a2656e6d43eecb8bc3c6c9ed39fea4702a8c7b7909027de23dc02ffeb124f1d178f161e19e2ac4a0615d6a8f4b6f5eadb98f79 SHA512 732993329e1368951935b61aeedb7796d453fa43824d010c31fbcb10c9c1f31064b3caadfe3ef6ebe37f84674eba79152aab29910cac95cf71b146ce22dcf5c7 -DIST firefox-104.0.2-az.xpi 489605 BLAKE2B c11b22540a8450e45f2d0c423f5a359428e47139451a1a4ec9519e145a29caedddcfa4d226951167cf9c7ad205df045c4b14bceaa1b9ffa31b6aaa53d8c42de3 SHA512 6e823109df3d34a16fb6fb60588d89651946fad16aa2cbb1fdfb071757d20dc75a024b82dd1318770815ae581749862a2e700df4b3c50e3271e40cc71f81be9b -DIST firefox-104.0.2-be.xpi 637262 BLAKE2B ef30f08cab2bd8bebe19f66a996b9a39d3467f93c423010b4388f9894352b933b1683fb7b04cdf37b44a8ae869e57fb1f33f56084182ec0b69b27bd2410e01bf SHA512 4ba3be25706e72d9b263f233e3bd4fad6873b0f391cf35f32f407b55df9affdb4a5e5c1fc68e8ae416127074d397f03ac4b5320860b93e20927b77fb88cf97c4 -DIST firefox-104.0.2-bg.xpi 581967 BLAKE2B 8ca3bb0173ac93dc9cb83fea951dbbda423daf39cd5b68e5bd9a9a36d965df24307f5315a5fa18ba0d0e05dbccda99996ee13422e7fd42e18231e90f6b142e88 SHA512 245fef211927dd71c8df1496b0f332c7a0b4fdb2205475f29321c153908a76b6761f2d36628b53fe8ff4e1522ad469477b75e8c95cba4040f44b71acaa1e0470 -DIST firefox-104.0.2-bn.xpi 580175 BLAKE2B a467e3f1e7d941599ab1d811228b3901797cbbbf87ee543e245ead92b5794c54db57ca126f7875239c2cdc5e72af2c0ba92cef2b96ac81ae4f96580e08a5b1a2 SHA512 2e0d0a8248ee33499f6c85a9c9b1d3fee77286ed6d2be2eb53449e85a4e6b89eec6e50c0e69462a8ea1371addf572a2436e52218e321b72344b197548090ed68 -DIST firefox-104.0.2-br.xpi 535106 BLAKE2B 6d7905c37b5a95f04f811aeb7f7aed270ae788ad58742d7afc684bcc48538ec4578ce66220c5c4486f8af86ae3764dcb605ab10ea276fa5e4c6608f494546ceb SHA512 ceb5c77cfaea5643440f28151adf46655f8006e18ccbe8ded35bdd7b0106b1dcb8ae1304d272c416f5fe44bf0418b993ae22e2a16fc4c56267ff96583786156e -DIST firefox-104.0.2-bs.xpi 466916 BLAKE2B f069399cba7841ef672fdfbbfc42508aa45d5a66ee8ffc9a56bbe088e639d35bb4c294ce98534de554f3fe42af181d4a04b535f93368d9716eb3aec3a234304b SHA512 45e31938a380b73d71ff00c83b207b96938b51ffa3a5b28a24e735a9fae448e3dfd4b1174a5f2593184204ed364135ecf898722ddf39dafe91ae3229bdbb1a61 -DIST firefox-104.0.2-ca-valencia.xpi 541640 BLAKE2B fbb73222bfb6536cdb14fd30706a88abdde731d77983b2d9708a357bfdf2f20990724ddbd88889f060a1e094474fcacad3a29b84752a52bb8a14df1dd6f20ab0 SHA512 9e3207aad59ae10a4e416662261f51f41f3e42b79213258551975075e61ecf138848f7722f67794e470991142cc2dc8bd84ddbdae071b7abc34aac8a6bea4693 -DIST firefox-104.0.2-ca.xpi 538207 BLAKE2B 0c4e285f208eb221735a52aad6206244d8d4a70b809251d8dd3baca8ec8256fc7203943c570841707046d34cf811ce4cdb2709464ddbd41b5621050b81d4e567 SHA512 ca0e1872f86fa6a01bc8e14d4f74d79ab28542e946f2ce9c93357be6782af762d8379b3f18440e92145a3c03a4ff9fc3439191ac2accf2fffbbb40fa0de9e257 -DIST firefox-104.0.2-cak.xpi 555062 BLAKE2B e41ad0653b236cff60f420fb6233fd87732248fad6b1cb973a6d4ccefef244c89468ff350a8c4ed28572e18422456f9998ae1b74eed9c0e65a9f166e08d7156b SHA512 14064209482c0014e3b6b370b6559724fcfe6c67f9156cb4425ad721eb71a33a882220c7bf265382efeddfa95973d02b316fd6068572c9f632bb0d043363b92f -DIST firefox-104.0.2-cs.xpi 575363 BLAKE2B 5c21b2a148b84a890a1e771576219ab57d2aa1b8c70ffa0589f564b0b90a6e232ab616a33f375c1ce0d6ac2236213e942160e04853b7ef63f9f819cf75811a57 SHA512 c94c5e06087f62a4bb8c5c834887d83e5d87d4317c00e36936ed74e6c4692ecde2fd79ea3abe6af1c65b048edc0f6366143422bfe6e0601efd258e76c618b6ff -DIST firefox-104.0.2-cy.xpi 551514 BLAKE2B 291fd2283f25f3fecd6437658643755d59fcf7e0aa28b5ccb9b0596613eb5b9373b1d382c55cd25781d614f3d2bd11453b467752f3fd9005b20d6431da6f3164 SHA512 fde532dc5f6e4fea2a319aeae3bf54136d11a2d7ba69ec9e48f90d95fa4e1eb7744361a64f73764f300a185b67bb6ecb3577e7dcf6a50f648b8651cf62a19f26 -DIST firefox-104.0.2-da.xpi 538915 BLAKE2B b10542146d5d3d5f8a39e69e7347fa9b60e334e795dfd2aa262f437c7f33a517196dc1a2f0693da9a5c2b6fc2d796fa1fd47db88f3de65e4ad301e809bb8bce8 SHA512 f62c96f743b451f24f5713b34822ef2c23289cb2847e288af50b81c972f4745c8f6f6ce8152f4fe272f22a9641b2d71386217e5f9b5821f5b20745a2fcfda663 -DIST firefox-104.0.2-de.xpi 565797 BLAKE2B ff7844e28c9a771472a9af322c8ca17c53895d0ec32d58f553fec9cb2c74d5bc5c6df65060bf23a0dd6edbac7c876dd0f4b1ec210e44f92c8d620dfa83d5d246 SHA512 d68771876497c2bf2734df0286ca300d7b1d0696a50be1c81328a79af83678d0e1cbe61e70cc7e26d218c11ccfa0b63e9175ca4947815d1975f17af0d2dff799 -DIST firefox-104.0.2-dsb.xpi 579604 BLAKE2B ba93063590990235bf4467b7b47fd8fdf19fe1b89add7efbd4a2827c352bbe5999ae0c1fd7f6843e23c6dff4cada84f5806edb6254d942a0e2a4d4e55ad14b0b SHA512 9ad92ee5cc7db646b41153e1c8ebddf825871a58a4defe67ee2e0653ddbb2a71633eeb93f119448537bbed06784154ea54ce4d1db8ad7a4c834d3d25d662b4e1 -DIST firefox-104.0.2-el.xpi 650587 BLAKE2B cf82f02d4623fcc813e900bb844de5c98faea8c438f5487df528a700b4fe3b6d6991f3d5ba602359462df10aedd167a846f14f6d163dba7100d58c1b401621c9 SHA512 e2088e9998e5b27a46961f81c44d67f32a207be82505a412f975acf42fa91498aaefca5d4089d2f4d89b971f0ff13991cad7f2b26a5f3f2ebe9104db2648602f -DIST firefox-104.0.2-en-CA.xpi 517610 BLAKE2B c281cdae8b2d1e523dbaef73926322713404f37068257e25f7da72f545ad6415d070a01ae3ede5414e6cb88b511a2920aa8a2a7875fc9ac6b648bb695f46cbe2 SHA512 5bbf9e621e015f011635444e9450ed670d85db5939c14254a8cb23249efc5d5f87d845a7b1b213b33958f382caf9ad75a0fc787ad1c3b133a88febf41a5c1955 -DIST firefox-104.0.2-en-GB.xpi 523106 BLAKE2B 8081bf809186e183545a7f0db03d7b27a97299797dbd655b34ffedf5346a3bcacf17bad7979c845b1db2e83a2c580890f74f27dd98773fa69cbe26e86153709e SHA512 13af7448ffb96ee8a12ad42045b8f87bc4e33b2c14b7bcabe54a2624f55e512ebfc668b1f53c26a0225b583a725a9f15c2f22e6f5185e5f9b6fe4a7c71574850 -DIST firefox-104.0.2-eo.xpi 549738 BLAKE2B e0289c88fa73b6c61cc19e570a12baaaa5612c1e818442cb8c798616553c7785e00e5896e9d516a427b744b01a5f3a12b3dd5d9716d00461601c06963922d7a3 SHA512 453557ea1206e9c845261e34245fbd3bbbced67fb1b3cbcec044fbfc0ff21a9ddc1317f1523b1fdbccf26a9ac5bd14f2ba44481639d3764631f6742dd17f7ef3 -DIST firefox-104.0.2-es-AR.xpi 560341 BLAKE2B bf87d49c6c90c66cb0f15f6deb9736a66724dbffaf1be32e21b8b838cc07c7c5723e6274fd26924867e80a115a7cd80c68a39bd8519eabe12dbf315a53a4a497 SHA512 24b2d56754009f88eeb2e27c2f5d58b3a770fb6fc58b9a584cdee9d6b4585279e2004551884970953b157b9a9863c49d9263b5aa1eaa4f9912228223f4f3a80a -DIST firefox-104.0.2-es-CL.xpi 558250 BLAKE2B 6e6f6b75b818b16a2fd9e563fa56ac8c258b3da9222ac75620e13ab08195cefa423cb59acf5ae73c6898263d0cf7e8d122f824631fd027c6e2dfab4779d4f2ab SHA512 c45defe8e990158dcc28866a8ce5d96efd84807747df554889cbc00f71c3a578f985b99498a6caa26416f929488d071e68b2cf01da3ce30c39d5c00bd324a203 -DIST firefox-104.0.2-es-ES.xpi 544276 BLAKE2B 559ee0364a9f148ec4ff23e10ae0f495dc864f771182994a9103a7468128f9b53ebcd01ebc7d5a4699546d363b804e8c346cf75327016a51c17c6d2fa5849623 SHA512 1375de6cba0f898cb4deb2b15e8ab38508ed9246281f201244c9646eb26e6a1817639ad56c5719b5bcdb0b388d9f7490464e11b10544c635982f1adea86009e1 -DIST firefox-104.0.2-es-MX.xpi 563474 BLAKE2B 74948a2592aed6c5c41f8ff3a60650c43c89e5200a751a5273f5ad614f9b969f8036c7ba58881c31f7e453f89226c1eab9ec6fdcec5dc21f241531d0b3da57f9 SHA512 f1b8ad1ca65d080af6927d26fcf68986238d33b535e42056a75105a915d9ef6090df25e3dee2b52a10bfef1b04fc8352c97c1f410704142bbf7946be78ede69a -DIST firefox-104.0.2-et.xpi 535031 BLAKE2B 8affb0c0f26a8147f9b520f9d636d530866aa7d557762e2db1c2b60c674a62aa77a82a30b4a649da678515adffd4daa514632d5f69389154e5d57e8321fd2dbc SHA512 4f29e2976c004fffff32427640759b7b2ffb207560085b164ffcbe8689e6428e5deb76e890b1bec503e90395454a48102192c77c5b1cdfa0524f09830344b556 -DIST firefox-104.0.2-eu.xpi 544756 BLAKE2B 553f8a7ded3842c8cca116734014cf7cef19c2749967a0be81b2caf26671fb9e1512439e9184831cabf4897da3bd829bed9a7da4b91775c8fdc1a0fc15b26538 SHA512 13942deeb6090f446000cfb99e9d46933cbc7cd7bd4a372eb17fca002e5d0edea87f13375ec8420a9534608f66a6f770db90923ef21b11ee0f1b83fc023784b6 -DIST firefox-104.0.2-fa.xpi 565986 BLAKE2B 03ade13b6d05c0df6c0ec427e0d25b3f4d7db56e4da0c170ba5dc17f0693b2368be8352c2886760f391af98be5d67dcbb3499ee1ed9c8e7c5588535dc459b4c5 SHA512 1d02176e74225461fd33fbdfd2dde29bf05ccff9a0b098181497cab666de6139b36a1728ef983e2c230b1547cafe5c8b4f2f5e7ae7023276e148da5509c14128 -DIST firefox-104.0.2-ff.xpi 476474 BLAKE2B 610623aa2f76a1ab752e3810a9a111e3ded2e2d9b254f03c6b14fbeba0dafcd670d99b8fbf9f9793f068329c2e6d0c199e11e1862c025f40207fe4ca03c49c52 SHA512 b9efac26d03a43f853b48a2a3df0f1dc52cfd850a6be8e53391803387d4d70dafcdae583d289c86703ce4e3afab217638b0a938195bb766d1d45ba9b664fdd2f -DIST firefox-104.0.2-fi.xpi 542875 BLAKE2B 23aac293dc2df258ef6cd22110857b0f6d719067e5cb752a896a5a508500fd59a5019be219ff64141739672ad1ef3914249dd7c697ddc7c743fbb3d783f0d2c7 SHA512 690c139b0fbf3b1a5c3bc933be07bd9e1b5e9dd255353e7581510e86400ddb2541f5c9648e54881bdce17c80cb94bdb68a145283e7a719c7cc1e5af887b22a68 -DIST firefox-104.0.2-fr.xpi 569002 BLAKE2B d12873b0918c77250187e74abf5fb10db8f141ccb2bf27a5450c5aa0ffddcf9889e08d352634cd62288689d6b17a8d99f69dcc5eba5da6185ba54a2e2bc35f09 SHA512 01f2a73af0513b02dec4ec6d5b1f66684840429d499a445b0fa5d407e97c2474d00b334ca2d83fb1379af90a7ec01114d15b13feeed252fe11d9c7a3e114ceb6 -DIST firefox-104.0.2-fy-NL.xpi 550629 BLAKE2B cf656d8602e617e11e411e169902503076325aa9be53d6f44dd1d84278830bc3bddc46f32889aa7c4f8938dfffa89d6dc2b8d1a1b9f81ab4ab20a4bc63617f00 SHA512 9814daab15dcb79926ff2071ffd1f53b317b9927e1474cd66b0115c2a4c8c29284d4fc4e9cbe805fc3a71bf107051b3648739549ae35d961c11e36ac756eb5fc -DIST firefox-104.0.2-ga-IE.xpi 475935 BLAKE2B f83456f09a923310e7c7235370bf6ef63029f7a4dc5bf0ee672d54c31f033f15d7dcf65cfdc2cedab34b3a2c7a7758ddd0e373880208b2a3675c439a33f9f073 SHA512 11f0867fb28fe4be0364075d010e8c40c6fcb7905343257aa52d8037be4902a427694c3788b5ce7d0d97f0e70fb2ca65a38dd3e05295a55fcc8c83a76a11fc90 -DIST firefox-104.0.2-gd.xpi 547851 BLAKE2B e5ed1ca5a2b7613f75779bc82af6b4c323b8d4d69e2af3e91b0f846472dfb7f282d84bc4f3aac6b0264bd5734cd77e9bb50b63980d3696ba1f6f28cba71fdecc SHA512 9fff6d8df73bca29335c6d77676dbccbeedc160ee04f7b7f180b719119eeea242bf08bf96f12c60e0f48fe31b6928e7f7306d3aae2a98c03d5a24c29f819b9f6 -DIST firefox-104.0.2-gl.xpi 543918 BLAKE2B c88cd2977f218804800cfd401289b682dba030be44a848a3f543f1075d26a4d803acbb3a585a34e607aed9b0eddc3af7158bed98e69ea74c2b4e6913b321929b SHA512 b9a7a46f0ccddaeb9d6ebd41132ca9847a0fe509a0e542016c58e5dcff56d82e796829b7b423bcfdd623a36601864e3fb85a930e0c49ced99eaa523f00f8e605 -DIST firefox-104.0.2-gn.xpi 570941 BLAKE2B e485a8ecb9d3394665d206b2be869d8c0ccab8a352cb7f95db8eabe9470e645b3b701de90125b32c6f21c4cf8caae0df904d476866414b958ca750baf61fa745 SHA512 53e28cd51314cffc1126cf764f187b623b857f4be25df672004a53c7ad2a915b55cf20a80fa2d4f1041326e8511cf95ade9593e2cf2820da6685126796214d10 -DIST firefox-104.0.2-gu-IN.xpi 531087 BLAKE2B 7d9c061782bf2e60ef1e0e6745cc07f29fce37c25941b93a3251a620b7e49e3341a8c22e41e9534717af9c39cf3be03444cec22796ab70695a8b449acae3345d SHA512 6a7e1f3c617e2e053993e9e849a5ac26468c45eb505eab17975d67189dffe71299de05b78b93bec3b0f72a4ed754bd8c755cebbae4a1300114c8c60bdd4baf81 -DIST firefox-104.0.2-he.xpi 568690 BLAKE2B 0c393e3e8dabf1fd45cd3f9e7d8ed93e98183381904c5810eea23cdcb176c7cfbe19efe2b9fb82a76215614e3850fa4c0de1873f56d6037b7f36ecbcb434033d SHA512 061b5f708124b6132e07a16da4f9eba721c1bfdef34d5d162264d7f5dd6dcc752cee85628140384e84828e27d7648226740eb3578099cc6df942fc86c715367d -DIST firefox-104.0.2-hi-IN.xpi 561058 BLAKE2B 5cb73acfdb6a385aff23b9fbe972cb1909ee0316029b9db7a138780cee09c74250ce4d9f89b0e1b7e0dc8e8bd732fee374fade181dd73aa098c6b72aedf1b84c SHA512 eb904fc4a4948622904b0305cf31a6cd6adb009986e781ada451fd5afc9e176dad55c9c4b4801f7944096fe1bc8fa1f9c4e0827a8baca6419246ff0114c8b5b4 -DIST firefox-104.0.2-hr.xpi 534657 BLAKE2B dd9787c2c9b31811473be927050c9b1c4fdb5e6f9a825dece3ea0b242d0ded54a463521fe28e161f57d35c2ff91c175c2397e290ce33d64ce9d69998402b97db SHA512 b33af66c484bd864e12c57819f81f1bd820c5ac7c4be2273004760f1cdbf1d60d18ed8d8eaec028d69b98b91499c7d54d5930d7f334a1169422f25b6c14d94a3 -DIST firefox-104.0.2-hsb.xpi 575816 BLAKE2B b64c30464f23a405d80af7f151604770d9e00311f032a07c3f5eeb2c9154a04af6f5b08d67524dfe0dfab8f8fbd6db25629ff035bd0432a8d5394f91de5ba98d SHA512 07cccd30c47061374c258dd1aa2dd108200f7fae1a71d9b4feca0f1e57a1388ab0df96aff5e1234dae61bbeea2ccd4dffe6be6cca8b75b607746cbcac678e80e -DIST firefox-104.0.2-hu.xpi 579195 BLAKE2B 3b2d8a291af5332a32512b77193ba0173c4ac71af179d9a2cf0142bcadbe50c10a3737e74a641b6d742148f3653ce9c8aa5a4ac40598df0ae9443d4225d0020f SHA512 8ab23f207768aac41b915207e4ad10ce08cc8176f12d6bbb48b5e1d60e8e58fc4d03bd66124505133fb7c9fe13db407a3c98517b043daecab713b8587cfae8c3 -DIST firefox-104.0.2-hy-AM.xpi 586082 BLAKE2B fd2b2e146d44eda1b29f34a484430b3c979247defc02fc38f33d50d8f05d7fbdded2bed1186ebb45a658e7c1188742d0d889b1fd0ad5288ddb78556ed44487b8 SHA512 7f551c7705a6f32af16130821752ffeed6377c0547841bf95025f5fd46d5fe6398ba81c5361368f918bf0542e56b3b000ca4b89bbfb4a025b0fc342e65b0fa71 -DIST firefox-104.0.2-ia.xpi 545112 BLAKE2B f235f35f103507e3e59a0233e5bd66ca67b0612bc9e963775f6df6d7b9fa1b26d8947b3ffe12addc142c3a3fbe5c1558e37580223658804ff6ec79bfbf16092e SHA512 41e3de0ae1b5400a5bf7010753ec35947d25d4c1c5d925ed38ee42c236ada7b3b55e0b29cea8d344dfc3001c2ccf24fdf6d340b86e330f5597a3a5f9461ce7b6 -DIST firefox-104.0.2-id.xpi 541012 BLAKE2B 15fe09f1af3d4ed75dd28e9adde2d52f773ea2cde0c182ee37b4323d741a3de01dcbddaa2a796440a0d694af2cfb189fb39ae7e5ddf037f29a7dc07a2e46f904 SHA512 0df2db48fa09b8abdc265d8827bc1c9a545322a92784936c177a1c99ce108dddc28b586ace4d179f3695cfdc586c50c3a7fd459bbdff632e5e6cf1b23c3202c9 -DIST firefox-104.0.2-is.xpi 549353 BLAKE2B fc7e0b8b35afceaaf96dfbd358e8670932a001376f1b219b33068882455f75477ed1f0e99fdcfd180f741230ece77d563ef4736798d7d88e970fbf11846e2390 SHA512 93b61ac3111377c50477d23504bd0bb609ab5601066c912568bba891648f6deba50ff2c55ff2a14258ce43e83c5f6b3709041035c5b139f46359468efed2de38 -DIST firefox-104.0.2-it.xpi 462409 BLAKE2B f2208d8c889d6937c8ce8a3925b7061d313463a45b31a59e4d6f64fdcdc67ffdb32da9a2fdd275423581d2b52065e5aa4c87d0d4fdefef1874f586c05ac1c018 SHA512 ab65d2d54bcb38a773cdac731c5db3a9ca0ac79e02eb6a03cf77bb899d20053192acd4eae69c0d6f842393280b5cc6770b97cd00266266b6f951f1c8a62209f1 -DIST firefox-104.0.2-ja.xpi 583511 BLAKE2B d769b895197a1b326969d458ae212ee99e605ccf6f9c2088f7df4695d44da2e856979331dbe00dbe66b1a9a04436edec88a236a5f1a6d19bcbafacd356acc64c SHA512 0144170739bb4d8eac58fc42e0a3eee96bd483b44c74589ff19b06e8c68ad9715d1b6c5ee7ed7f95ab52a1924ea3e5cf12335ff7cddfefcb50be0039a4e3898f -DIST firefox-104.0.2-ka.xpi 605075 BLAKE2B dacca3b949b763f00f5178f51e0c4dcad3c6e161b92385a35cc5413fb7b38f1d773da0d9c852104b59f1a13d9109e3ac3bd89476abb5cdbfcebc8e534f94fa83 SHA512 c9372d719c1253c2bc41a2b2c84639b450405c1d0453ac26113ca71183d12a91620b54d239ca516b3c663d4359b177ffd92fbdfccbb248d3b121120e01c35f05 -DIST firefox-104.0.2-kab.xpi 564774 BLAKE2B 73e5c096e428adb0671439aa793f72dd607f69a68d77d19b7db58284ed1dc12512cf3742a3cf2600b70ba29805710510bcb534a0a098ffa3e81817147b3b3730 SHA512 438fbcd104f57ba3a8387a107269ad94559826f42ff54d3bdebc74a89f46a5111ef86513b4433c9c98d9dca296d8f32b5d91360e642184f7affbadb8791ecafe -DIST firefox-104.0.2-kk.xpi 624338 BLAKE2B fdee3a760b4f5ef7f1e19bc252a39bb4e04a17bede17237efdc5de1d9b15160ea80736ef80c80c61dfac4bba768f2b2bed0ea68e9c70126ee84918119cad4058 SHA512 1c0e61c9e4e5aa317d89006d705b705bcf27dc5dc4d06b575b2c6eee8cca4c51cca5f247bdd21dd6b91deafeb0c7f6c7374e8e65a236a83fe38bb6ee8911f1c7 -DIST firefox-104.0.2-km.xpi 535678 BLAKE2B 55f09b663c4d494f20ed5abf2a4d370f18aa27d893ca4af0c3fcc2cc3d5d6df4e1beffeda77a0c010a3be12e0d67267bfc1684da7d6c6cc5bc4b806a5078b800 SHA512 4b0bb70ad8383295227a3c2dbd1f71a26be19d2f191d2441f847ecf446f3fc34e936365ad6f28aaf9d37e3cdd05f983247af40d18a20dd4d97b2f7525e99c843 -DIST firefox-104.0.2-kn.xpi 501811 BLAKE2B 91c10203ca612990d2cfa7c34da95b07fa6e4435e7bc47cb8fe960ee78c9e84162387663842a7f18e68f0ffb383bd9f2f6d40a13e099a5bd9f64eccb82debc42 SHA512 faa77ead49b2f23c4341121e6807e040bafecc944952fb23d5bdba13446b9abf945c845b94c4ccae43868bf9dad57e75299fe839476c18bbd0f4db9bdfd23ac4 -DIST firefox-104.0.2-ko.xpi 591407 BLAKE2B 0b527af5227aef906da4e1c45914b3a6bc4b66cd1937572d2b76304363f2f65a1e8b868ff024d908ceddfb2347abc6741e4dc61911fcd8192d9f6cc038cac651 SHA512 68814e14780df9a7a187e79be29fa1dd908857425b7380572d43e75e3ca6605af6bb76d3a9381111ed0092acdc9d60f0d5b0f1e5be2848de8667e7835129ea55 -DIST firefox-104.0.2-lij.xpi 474405 BLAKE2B 5a4c1bc5f8f7272cb9163480bbd8a25bc3d1c6340a1941bd0633336ca26ec60b38f18333929a205385fcf0a0df32b6e25c5c8598bf9fac5b845369ce5ad4c1a9 SHA512 ddfa714af433aa00c20d0e8e1b9fd62e574899b44e2d85b5d154b25f7821e64ac72dbd682405c9c69d557c4b8e173c347ff1eead667adfd20ed28e995727da60 -DIST firefox-104.0.2-lt.xpi 565097 BLAKE2B a89668e28b08a451f5c72b8915cf1bc412583e6a42347cf496ad2084f46ae240a738d4b5e2e361d50508255b2b4980290e47f37ff241e0cbd5cf17bd0e16a75d SHA512 fea77e6029978a87e0b2bc4e24765d08e4f7d5f24c23f7aac6e2fe12960bdba4ff1f57eb11135980410a60b86d37727b07f51b1a0107d49b7cbd83bb0f4e0ac4 -DIST firefox-104.0.2-lv.xpi 467541 BLAKE2B d7c089020c3d4e1c9636b2ff384f7ef8ab4ea103e9ad7f7e904a69376c464d89e15fc771621acd939abe976a53ea8143a74fbc6f9565e44f44cfe12bcc8aeff9 SHA512 918cc44d3186936af80b70af6f93af2f3369aeb02071aa821d3a84d5f3605a506710016be6755431ddbfe2d9dd3f4a11e267088fe806c1cf4820c2464aafc03c -DIST firefox-104.0.2-mk.xpi 479893 BLAKE2B fd1be429544a93fbc82cfb0debba56756280925b4be87f78cbacffa6a827d772a199ba5ec447fd140702441903dc35cd637404bb645c5cbb6274abade12974e0 SHA512 ca356f2914391d4f31bbf56ac1381e29e951a5de062d5f53b85f01ded9afd85ce9287cd6e77b44410210d3ba3416ad3459d56ff39ccba9734d5a5559c8f4fd33 -DIST firefox-104.0.2-mr.xpi 534736 BLAKE2B e8fd67730c09b788f3193da293fdb5df66e92a6cda85fc92619bd760d7a1ecf89bc9169cdd4de6d099b098e86cbe3758dba2b130624991a10dea13550b607cb7 SHA512 e7c449b3afe7d54a7c10fa7335223c28b514eb658224f19207110182d2157088ff305b68ae2929ea2cde6e6094e05f18c68073cd11b5bc1fc1d7537c19a6ef60 -DIST firefox-104.0.2-ms.xpi 452537 BLAKE2B 7aa8b23139abfbf7f331f2bf2ef4fbceba868507b596feee67e064d7a9d5e7402683361fa87616efcca23e27a192bd79f283909d4426b087cc21a7ab18e2a3b0 SHA512 f46ccc7a9ef8e0a279f4d97f99bfefd69a216eebff1204185ed3f097e4f21b34ae6e5864e5a4e3c37625d0833de22bdf84bc97076c91c480d4f2a0691544ca79 -DIST firefox-104.0.2-my.xpi 514693 BLAKE2B d1de9b5a1dfcba6f61628567006265f22bf377887a165ae50fb69b5561056af89264f9604493aebfe6e765d67dfa26b58a5f424c8fa2a852080045988ff88e5d SHA512 7f96a580f3bccdebba899c7b4b7dc663f935b2ed38432d7d2afa8284aec59064ad219de899d746c2608f7461ce8eeb1ca057cf1a5cceff16b964ec819c4600d1 -DIST firefox-104.0.2-nb-NO.xpi 542663 BLAKE2B 30e36f0df79f6dad882ca20b707a8aeaadd38b3d4d7de30a8f81daf1e7e375dbd1dd8be6f0e3abc65127463af6b6347c8d8d510e06c3b7f631e5be66de28c76f SHA512 24a34d18bcdabb2d3133f8bd33cb50cd8545e6888012dc3504978fc6253fcd02a59ef78fa06612ccd3f87c79bc550f02867ad903fba1cb0ab9818f77e416e1cd -DIST firefox-104.0.2-ne-NP.xpi 493556 BLAKE2B 82777d0afb5a6a3d8ab165b3ed87bd7f34e8eb6d2378d6e55ebc2d265badcbfac127c7f5e34db0e686e644f15f6893effa2176813bd19df89117b1d876e24410 SHA512 10cacea8ba5df7d544ef6981bdaaa73eb37fa9435f20209e950a24c7866a749429b37a40c301f78acb4fd3a219943c183cb232b6bdc7a78a858a39b504b996f5 -DIST firefox-104.0.2-nl.xpi 546995 BLAKE2B 5569b6043117a74ce0cc64c61cd29f336586d74dd63237a31fca4d6a0b9c7327833707d117b1a7d1f41edb674685d2fe920b3d754721836b343f2e9eede0ad4e SHA512 77b3b31d45e38b3a12e2c12ad9cf13728fa25bb190d05cd661d79055a52f0dc57677313e4b6cec0f9d4249626075c3bb4450833b35365368a3564cb8d83c1b68 -DIST firefox-104.0.2-nn-NO.xpi 544294 BLAKE2B 898c7c24d1de75ee1940a10f82df38682dfff5a2944f87786f61295a0bf97484ddcae2d0ed51ceb4868ba1b1dee8b5afa93c969e6c7b4b45e13cd42a8d8300b0 SHA512 8554e49a01b276f6435e93143671f9f56132c792bfa21211bacaefdcda7723cb041c23c0967ac3529cfcf31f55c00ae3794ce5335e1a2fa242281272a31791c9 -DIST firefox-104.0.2-oc.xpi 560766 BLAKE2B a4c1da0b761b873e6b6fc765c74daaeb215a5fbbe9a58299f357ce94c0e616914a8d080b8563fc9dcbae89f70c36b1cfc34796d134ac6860e9633f24de91f5a4 SHA512 66b4817308e4a2dc5b86b312228644ef5d17c6fafa28d550c15c454c44938609819fe4b6fb11130717adc82fddf3f71432e0591d0fc44d9acaf5aeb63a704efe -DIST firefox-104.0.2-pa-IN.xpi 611567 BLAKE2B a4780b8f89950b426218c9a4e1e3a9fe739dbaac580224f9c7c808ed68a21e6f54f70f2f8e030658dfdd37b99a5aa1a10ba947da66e4d5dd61b9605749eaafa5 SHA512 c8ddc7152ec400290ea15af4418be3f720952619360a1241effdd6dd9d02069b1ada1d8c47183e26f64ec9f48e4bb6a63ad3bd836a10cae5a3bacbb1575c4e9c -DIST firefox-104.0.2-pl.xpi 570618 BLAKE2B b4d9e8917c9fad9f60829e89f31c11e8d6f75a301ce78b3cecc9bc2146903f27f40f13217466ad1d1b57f04825a43e9cefd8b5c4237060156c94ec17f6abcc08 SHA512 a3f28c4b0d3ab945f12d98f7c940985964bffb1e242649d1454b48f9c56217082cfee908c4120fac724b171a60c18ace9a60c6d3b880b411a7a1069eacb6721f -DIST firefox-104.0.2-pt-BR.xpi 555651 BLAKE2B a77a3da9e06f66c7031d27e7ce026a8d19120fbd880761b8a02d85a8589ad4c361cbdfdf8f11d262f57393ad3613b74cc8b985e37ec12a99280b253b1be22a06 SHA512 c1901bf67af05d2cbeba3270b3f84d910e650ec87030da430060329159f1c06d8ac8127250cfa11c411d55e2937a2fcab8b398c7a7cf40992f8517accaf8bbb8 -DIST firefox-104.0.2-pt-PT.xpi 558703 BLAKE2B 38c4d74b99324709fa8814121e8c6a20a2c3871cdf96820b6239867666853782ea6818a21761a4cd46ab49f7f68e2b9e58789640839d73a4b9639b49ee868e75 SHA512 b040ebfc1d8154be8a25122b506ad5409b0ff3dbfdd6c6ee6f5e9c25b62b9f6f7106d2717393d1a626e05d8282272102dc407f754078a2567e20d5d722c63d73 -DIST firefox-104.0.2-rm.xpi 542682 BLAKE2B a9d16f598707c547fb22fd45a7cced5daf5aea54a5e5453a576100f90b79698d3eaf2d889b3831e363c19c9e1972766a3cd6e3be197f0ff15fc41cbf677092d7 SHA512 2d733da1d482116cfa873f9d21e3fe906adefc590916ac8c72fef87f4c1b84da64510f9aefb52b515d5f9d46685be0fbe3c81ef1030776edd2284f8827a0290e -DIST firefox-104.0.2-ro.xpi 532721 BLAKE2B 5910aa63fe13613e395a632f8b9e2211400c355832a7866f3f78c2e749ae8a213a1bc49332b97125cbd7419accb9a217e8096b2b9c05d0716077540a95ab8783 SHA512 11d8c4ab421bef3b0c6304aa0866996b286aa39fde990a8baef3003c321788fe45953253679accf7498d9e49630ecde7bfcd1404216e0588a3b84111fd903505 -DIST firefox-104.0.2-ru.xpi 641381 BLAKE2B cccf8741ad367d94e85b3306efaf5a73e579a7f280a69f5e349aad4ede74f8b7dc7401d86ba7a654e15f762e91ffcc887133c0076e145ea8e29859350f72218b SHA512 f43801dfb7b4b563076be332e4f0d94086eb4bd6fd0116e704b3c2c2ee02410229058d87679ed7a505b2d9a4c009044781c65608ca90bd82214ae350facb28c6 -DIST firefox-104.0.2-sco.xpi 500778 BLAKE2B a3a8b37151a4e468a46a422d2b3aa5de9e1bc90d280975b4540d62989f4c5a07e1e37361ee008969131a3dfe2d4e4f3ce1b9202ffe94aace28a4722de64cae0e SHA512 e3a97e2f80efc1b09ec7cebc1f7dd0feab86ff3158feb23d8c9bd6c360163156daac238ba13ae8ea809bc8420f36e5159a5cf988eb9f9993eb77c219b51bc0f7 -DIST firefox-104.0.2-si.xpi 489433 BLAKE2B 47fc22dae2bc5cfb82091dd4fe9657a23301a90fbb058ac822403aca5d19475c77a2f62f3c07ba473a388da3b991029868d8a7a1eaef74667ff037a34d8ab25a SHA512 31634d5905fc4b776b3d4748a66e18f4dbda4f4452bfde6fa0de6d9f14bb4997fdd56cc5760a6ac1deb9641cb6e7d3a546a3c203559ffda56c7a18a2f22f1295 -DIST firefox-104.0.2-sk.xpi 579412 BLAKE2B 4507728de2be1f116ca322952918c09c8274a625bcd87be97139ce0305bcd4213ade330eea88cd0887b7c4d373eb60920b82f7b4dcb3a8b2c7e501525d3fa44d SHA512 c1c7674a5a6695ebe5828fe4600cfe90b73a4336dc9d8a4b39a44717003c7bfa2a59b7a1def40a05dd7c1c625abc4475a42b75e319aa2c4b824f3549919dc289 -DIST firefox-104.0.2-sl.xpi 551989 BLAKE2B 45cc6aa904ff54bc622588a516145c11affcee1f101cc01961779df40c91d328a338084be1731ede3c98afd55505783cb258b1bc526514c1d26b5890ce0b25ad SHA512 35c5d429b5da09eeb25b29b5717baf1a217f08a8344fbf4ca3501ccb7ae3964e2f07eee6781c4ce54699cc7943e360396ae803ddc047cfb831979bf8946b34a8 -DIST firefox-104.0.2-son.xpi 430377 BLAKE2B 910c6e0d9c9dc5f190e8964bd57fa56a3dfe8f34f0c1931af622672def0a2e01509000f6d307522216a33ba321648f6bf5469e4dd80a566ae7b1c7330f164c4b SHA512 ffb2d40c57bb2a5be29034a7612787fc907e8521971ee6eea6773bce3ecd7d16c6bcadb87d50087c39fc2353df8a4308223f425c2b649b9824cec92170be5313 -DIST firefox-104.0.2-sq.xpi 560587 BLAKE2B 4837bc7591ceb25c7fb2a221bdbfd543e090b2ea8b5c44dbbcaf8688c21330e2b99daedce6dfce32d69dbc49c5396beddffaeab327af802083cbf0139e6986cb SHA512 f0933273ed4dd4aecd84aac240296a0abf81bf5ce7c7f2ff9e27c801a350e39878ba605e764016cff6beca075a4e7d6ca3c2f0a9d5e3a134414c8d3a2744b7c6 -DIST firefox-104.0.2-sr.xpi 586828 BLAKE2B 5398fd1f0836f0ad2e4676847e598c7c927cca1ccf2afef49aee8dc88dc6c5f005b8370acff10e12c62f6f7330f69c4c8c0c5d05aca5fc9c7c5bb73ab25d5d5c SHA512 41c5a081e29045c409e71607316586e32e57ec1deee123e1cd0350af286d4e2695ddda67b88c60a7cca85a6580fa5be2e762670be18d656f2edcd6b183a57f7b -DIST firefox-104.0.2-sv-SE.xpi 552457 BLAKE2B bdac1c06ba7bcd9f8c57137962c99d8cb4034a703a93e1dbf23f8c60de6d9b2e727d2bd4e70c286307bff01ca066553106d3fa90fea420eabea3facc30ef16a6 SHA512 66ff2db0d7c0831d059104bbc59e77baf2fb81ea9423dd37823b56015fbadcd832bed5de1fe8f920b89642cd8269852b8d8b2371b056ccb841d01c53c7d62ab9 -DIST firefox-104.0.2-szl.xpi 512566 BLAKE2B b1a1a7dbccc82d2e3aef0b25d8e54e98633378a8b1e9cb72dfce8cb73bdd1249aea4665e8bce4bf373a670531b83d49df9fda7a148890c55eeff40837d27b4ba SHA512 839961de70bfc74824b9361976a45e7d90e85169184d62dd68cb5a14e39120e8d5491374b61bbc5cbde77700420e07b2e6ff90b00e3f06231a5af72eeeceab9c -DIST firefox-104.0.2-ta.xpi 514626 BLAKE2B 24c84edab7c312d8dde9db6a96216691b3b336a3fd8c66f0a4c28aac6d01183e54e4d1f68154e8da415b29f3190a117b8297df2f7310eaf9df6e7abee7ffbca5 SHA512 e956d0cff374bd2150f2a6790908cc6b53959cb027286b9436560c7c5f722e99ca8f5f467501bb6fe48fa3ed2a84de4a6a26f9a24d8d65e5cdec26f595644e25 -DIST firefox-104.0.2-te.xpi 555351 BLAKE2B 6d0c4cb7f424c9e436f43b1d8a666e1f3567e96cbc6a193430015b5837c47fa6621359f1a2663a36182064b7cd3d19216d3ce14230e9465528102eb9ed745c56 SHA512 bbdcd6b22ad44e15341c14b4e306871fb7baf5a03f481b118452b1e7883116032fc319428dd2f9c2b4e21a1129d2d254d9b6c9ce4e8ca9e495042247e48a552e -DIST firefox-104.0.2-th.xpi 615063 BLAKE2B e0a59897d7a711e50683389dae6ca24ec4f3cf959d6170ecac8d28736cbf25c266a3d7b6f525c8be953d5e757a8554f596e41e43d8aefc0886119ca5f3299b48 SHA512 74e2fb4d02935471a3fa8834ccd17b308185fa6885d3dc96b89ef91f480725ce3f0ed02d497f080ffae26b0bc08a296d83e724ef95c20b4d0c79f2fb31608616 -DIST firefox-104.0.2-tl.xpi 522947 BLAKE2B 5ecbb3dfb7cd90ba0dca4ffc10d91b902eaa5ddb2f8be787dd55e76f57787b2f818a06b0a3306db7729ee56050e4a418b751fdaea1095d40716dc0342dbf6e57 SHA512 47c8e4bf7ba37533c2e847ded560a247030dabcae0c8aecab36f2629baf2e4ddf0312fd3ff67ba626847352c77f5648bd78a319bc920abe912eb62227fde476a -DIST firefox-104.0.2-tr.xpi 565840 BLAKE2B ec7cf17d980d3440b794b8844bb86486b592bf960b0310766046f565204b6a09350972ce7118337c38af451da1b56c61d1a56cbe3898ea24f23db201fd3a57e7 SHA512 bb35b12bb3061468a7962e36dc50d3ad816923547884e806a0885c037cb6ed295b4da3c7883632306284afc384924ab5d8ac2defb10efb79939c50564918d5c8 -DIST firefox-104.0.2-trs.xpi 493325 BLAKE2B 4468010a1636039dc8b145c0e8ab9a85d539d3057122c980fa19bef519e5fd28f9b5ddfd769140afea766f2611a8b2e221c9bcc949e2eb2b588ac0d2d4e460c4 SHA512 9fa625cf809e5b977bdb1ccc5b44a97a9069d0ddd42953a658fb611cf62bf454aef0664863fc8ca740b617b5e3b0192703a665cec25049ffd8a61aa55722822a -DIST firefox-104.0.2-uk.xpi 634724 BLAKE2B 58c27984a0f65ffb9b99b580dcffa1037e317273f40e7350959a41beb4eb2ebdba63bbe0cc7060ff351db5ebf2ff395475087cb2ba6063c4fa42df5f2bd53ebd SHA512 ebf9950f96dddf1ec631043eba76ab068eac495eca4f2f0c9b7841bc784d8c41b7583ffebd0ee2d0daf8dde60675ccfd9e8762f4bfb60e89a8b4f0846f5a4373 -DIST firefox-104.0.2-ur.xpi 561599 BLAKE2B 92b5e4feb21f7b55ce925cea694d807d35a4cb7fb6f2a9f13cada3247b13369e98a37ae650d804dfc7b267df9d2cde48a8b3b270ce50c5bc58871ed1e8ea52f9 SHA512 531b635f002fcbae5536073394cc7db0ee22360be611825c28d41c88dfd85aeb5a5c870e7ddd16da02c46f076c6a401a60817b6ce9caa1615dd50fd8ac443fc2 -DIST firefox-104.0.2-uz.xpi 482135 BLAKE2B eb48023485dcd1784b0b61089e532e8b97a81343ad640e2ee2c124d451857a9d3279e45c6533bfad75299451cb06114a9f28d74727cbaaed34ef12078b2ead4b SHA512 43f1ea76e556e3f3f3ef9e8641add09c6888d88f5852d04e8a9e0ba4f610642cd675b8b90c0ed82134553bb95e6c256bf892b05ff037b3c5ba9c29564a97e391 -DIST firefox-104.0.2-vi.xpi 586736 BLAKE2B a31bd0c4e7c92a0a6db1110c7cd04d38ef4560657eb517f06cea1685f9dd7c12af02d343c1f9ed4399f9ee5caad698e50b4211707a100758fe5e665f39e291d8 SHA512 6f0e0888769c35c635a290cf1bd7f130fdd0db17c891160e07d1c8ad6ecb0d568b5900610d352160fa300691f50aff0d9fc1be47ec5f9c8c2e29f47b03fb3b0a -DIST firefox-104.0.2-xh.xpi 433349 BLAKE2B 86121f6ba9e13baabd0e96217fd8518e8d14b955db8eda0ce06482eb457841038d9723000f3853670c4c5e3a65e6930d7b315c36badf46f124a8599bb1440e3f SHA512 ab33c67e838bf07564189d75102792b121e4428205d62d7fc482441cefea77e5f73162f95f044110955031cdf3de849a245d2904788965f434f79cc21e2f0031 -DIST firefox-104.0.2-zh-CN.xpi 587664 BLAKE2B 0c210fe7c503a579b860ecc328033b3e547a6717a384f1bac9e8483e859e9c8cf07dd40ed9cb7d7c2989097a6850dc2da6ae179ee5e5bf6288e1dd145126eddc SHA512 684ccf3095aacc200440b4b33b91c24a75c08f47fbd1be5704ad9d7ce95aeaa1169032efc0b5b692124047238b41dea617ae22c126a60dc5a788ba8a4acdb353 -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-05j.tar.xz 19144 BLAKE2B 61bdd5bde8fcb0f71f45595dfd289e3798ae9ae64e2c7bb3db54816a5ba494cfb0bcebbc42d47f4cc395260a01c6444588ebf0ccae481cbe0db5e3d42646cb78 SHA512 140da5d340ea38d0d431533961d7219414162046d6e1f6c0af582ebf5a92ed4b8a88a87991dc231434bf5a0e7250244283b2d36f519fbcbb62d5bf82d8f10187 -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 -DIST firefox-105.0-ar.xpi 571515 BLAKE2B 7986ec6af983f8aa48da55b12aa1446b22bd9b8781cd56d68d4f93c2658e907ffa8dfe67820b1bea251498bea7edd30cbfeef02e5943fa67cae00b7fd5d254c5 SHA512 3d7d6a5b17655ec63aa8eed367190eecf7e6ec6fdc50034f6c530897187d8a53bdbb1d25b968138ca10503dfb6674b3004f820b73d1a67a26a42e20d3a8820e2 -DIST firefox-105.0-ast.xpi 502221 BLAKE2B 322274a9a3f4081de8cbb49d194270f785399da6eb0fb015afad2ab02c9e2b261694fc2a3681632dcf429307c0beb212abe49afffb360b3641c67fef514aa2bc SHA512 bfcb39e7f99b0a769f18bcc6a19f3ca3185ab89dbe881d38991ebfa4b7eefb2cae5682bf9492edf2cceaa27a9fd3f78d73b6b7afc061d928bca5e21b0b0d7922 -DIST firefox-105.0-az.xpi 494476 BLAKE2B 90cf2183440fcf180630592d08da65ea8408cb3c40873fd0eadafca2a9cb06d6e5418be9a5f8140f724ae925cf8df3fbfb6b51022c0d6e6e9782253d7065ae55 SHA512 464da710136325c2969efd62f26c390b25733d806493edc943824b2816f0dcb8eeb88261e89048fbc1183b7e292f46400ecdc6f60b822495f0e237e813b9bb1d -DIST firefox-105.0-be.xpi 647118 BLAKE2B b5164bbb0b6b3c69220081dbe7e49c41f0de50cd366f347c042a32807fe41534eabd4d150b736d4f38eec70c24d12d4c6409fec35d09734cfe49e0b3a60bbedd SHA512 5139b62fa2ba825148a12f4379daa6cefc1ece69b4220c983c45f6e414a10bebea9c0ea0a1cea8e7bc0758723abc147c9150a5c2699ff8e6b542f179912312cd -DIST firefox-105.0-bg.xpi 587139 BLAKE2B 2f9047c7740781c41faebdd6764c69c17b1b7cdab13760fd56251191db6062fdb8af282e776cf4a0ca72c7fb517831b426e913c7fb3860a08a0085c0b790498b SHA512 2150eda7eecc111d2d9b01e2bf258405e11943cf84e513d8cbc63690c680dbdec3c5c87411d9e92d5e710ece46e686438260990c635078abd3285b5ce89e1e53 -DIST firefox-105.0-bn.xpi 585360 BLAKE2B 612e307b297a424356069b0e96dd7bec7dfca1a01afe04ea128968667a2b81cefbd85cef04a49daf16c0b5feeb82b68abc5e24da36673e2307df969a7f90fd49 SHA512 d3d4be2d7a1bb9b3c1fec8af9e79fb0af69024e432571079ed09b83163f09663e33e508709494584dd0050dc1c692d424dea0f7ccb0de83fa2754d65e746b1e1 -DIST firefox-105.0-br.xpi 539955 BLAKE2B 9780398c9c47d70707ffd6cbfc30eff20d5be4808df1675b8cbeeaa66ea58c15dfa995b7650db934c398157ec9b945756af74f5b586400b4fa8c4926099d5fa5 SHA512 920ccb7a2fa27392da378cca4ac4d85a1409b837731985bb70b997d3e495874755c8f9d4563b7b00ba2ce5279e4c3417b490d3a82d57294df8288f0574fc0470 -DIST firefox-105.0-bs.xpi 470942 BLAKE2B c448a0bc7b21db3f1cbbab3d39b19d48aa21a9eb60b4a56ab04f5231de3c8d11112a1c7d568e32a98b9b0e94bac511845295f713da31b4b9a6f72ff65823a554 SHA512 c035792c7209a8bdfaba460d3b0add9132de080de6fcc3cbda4e007c6e09af61a890acb2a8fb5630690dab1a782fe3989ae2c520cab7893b09678c1426ff2b22 -DIST firefox-105.0-ca-valencia.xpi 546411 BLAKE2B abdc3ad0bb4736fc5601d8c61e39956028585b45569ea6247c92648e58743e256daf1d3f24a9d31eb756d015d7bf8881c69e7ad38296bd0619b9d0ca18e41c0a SHA512 d9e7902212625c0452ec5a85d0b1bcebe2819ac0d58e98e4a2aeafd2a49a044abf76abf7f2bfd9371eaa54998d34697c9fefb026bd1e21a63f2ac88376dd9b7e -DIST firefox-105.0-ca.xpi 549850 BLAKE2B 7a888717d1af8c42009ce82800601f55e79d62f573b89b1caf0858614b6e22194decdb67044848b79e650d6a0be1cb373ee34942428ac2405952153b5ec0d8d8 SHA512 d5d79173acf0589d45e87e29736d02f75ed190d204417b77a392276369a9b757cece3740108f5829b1e48934f4cbdbdff712b2f78e2e65f3b879b895b6f586f3 -DIST firefox-105.0-cak.xpi 559984 BLAKE2B dd80d3110193e43c84d9da5154f923f87677872ea47b945897d05bde0d365f8858ae7b8f44c42d13a20d736af7a95e371f2f012b0acde0fc2a440b3dca0dd294 SHA512 1cd94db4d76622c55d4f7abdef34e7f91aaf5e353ed1816d7c9b80b8e3a2c8e1a5183cb0c30eaf1c90e381d9ee7e5ee6cde8cd811c6586fb93494bb6c7186482 -DIST firefox-105.0-cs.xpi 581729 BLAKE2B 666d15f6dce17d7525cd446780b69cd68e663be35162bb94ad84a739ecd6586b85abdd923cfcbcffb1d67baf0f843f861ad2c672e19397794bfe44fd6ec37896 SHA512 15bbabc1de218a372da7faa95a015ed5264df75143f3c3234854ee75144def6b22ed5ea5b30784c043ec0a0fff0bf8ac21e5db5f310d3911b73f60d70264feee -DIST firefox-105.0-cy.xpi 562725 BLAKE2B 79360272309b236f4246b8d83d4d83ba9a9a3ec19c46fa9c044e3a0f83ae143d784f61b647241c30d84ac5fcc99832331ec46dc90d0b0bd4e1536679f964b84a SHA512 ffbf678454c66e73ce5631dbe93efc9435b187d1703d5d2eb684111291768a75be186c71c0a112ffa4f7ed9a05311384dcd8d80781bb2d2845da19cb0615db14 -DIST firefox-105.0-da.xpi 553589 BLAKE2B 62fdfd8c6c0f8659459078289775b0dd1453404d1e5ae899b4d58de43d9a4622c83017e396962219f72389f22b32d10865203aece1c673eb8eda2f3415feab37 SHA512 fc1fa288fd0bf4638376c32062ebf117ac10a907fe36e9730f76956ce15f43d63e8ae1b9ed9b87980423b33cdbf59d936e01daa5e3add6954d7f5458d4aec4e2 -DIST firefox-105.0-de.xpi 574350 BLAKE2B 18e6bb652780fd13eea21b0f7a16e26601bdec7caadad2885d951193b9e80192c687937083f49710dcb7408d6be4829cef0adcad3c8b3ea838301c61f08d1a88 SHA512 b7f3bf6f68c43e8da47f1caeb9f48a16200c6aa33d9c1fbe88e9f2c566fc4e237a5315c4d31544681bf24749e37a4f162527d57a4922a47c31fe034900508c26 -DIST firefox-105.0-dsb.xpi 587684 BLAKE2B cb500a529baa29324d564472ccbc836c227900f0a141c70978e59f20673bd61d7e7139b1084abbf511fa4cb3861b6d694a96fca5e8e9737fd7bf048d0659db9c SHA512 944d69c3632e12594f61cf91eba407f71aae2e5bd483db8f261b2b64a599ff3b95a67aae6f2ebc9ff9dd4f79524ace480d99bf6ccfa4ee9664539462127bc298 -DIST firefox-105.0-el.xpi 663172 BLAKE2B acd710ed1178dfa20e7d54248f99941d6bbee580dd230455d7c8256ead07898b16a7d856054561457e24bdead14e0e4121f55e25255506e6cc51cedd63687974 SHA512 d4144295ea1929466f2efadaf833b44be2f9ac5b796cd2d4dfea51f134a3d5a6fe4db569c9c66c0be2123b208858cf1d14889a8d65deb18f276ddd05fd7048d4 -DIST firefox-105.0-en-CA.xpi 523058 BLAKE2B 75c34195de8e535e5fa85b601ec1ccccd010662ab0044246bb5211017223416173898dae8ee2b4d400d206619a2d423b508ade6f0ee56e5703395dcd07cbd7f0 SHA512 976ccb29f80980c5cf80543e650276f3e624787fe26758859f6bbaffbad2538d7db99dfa692fc2f9c8492a06d5b1fcf419c12e51b0a895114e584d36f729d3a8 -DIST firefox-105.0-en-GB.xpi 530699 BLAKE2B 858de4b72d6680f83604483c84edf5b656531c9e5dcc5e0331632c5645b50fbe4fa2e05183d032fea0f258e933400e9d124e940a0fd3a16fa8ac0f4564946f46 SHA512 9181ddafb4d03cfc7d1bcd16e4b92cfbcf220fab932f266b7c6c24bc98c3d90e9fa5b966fbe544885e9798f353f261d9a5ec1341b30219fc0937f7bea5da0e63 -DIST firefox-105.0-eo.xpi 554046 BLAKE2B b2220066890e47e08ba87f8b6886ac4eff2b88d8003ce8469bb3b104ec7fca2d7f84deb5a180f8538be4a79e82bec4b008ed40f1dbd00ded8befc157ef57caf8 SHA512 955d5b73ea8dd7edc501a385e707a376c48170cb19c69784b382d5b890a7d42bd613936190cc52f99c7d0ae0be9af62e111ab48c599ccb608d9c0816bf226104 -DIST firefox-105.0-es-AR.xpi 568709 BLAKE2B 0e152903bb46b13a22aa02777021cdc4e14141740283f2a52cf2ecd885ff6449e3cc266d92124cac6768b2a85c1dadcc057f6c8dd3c4ad85b334f661869ded32 SHA512 1fd92c2246df6a5320377f5f9983d4c098a0508226d8e866ae6c03c4c98935f2ca838e6de541bbec1b4ee1569e42a1d2416ff6489f16911ef79bd4d27411a75b -DIST firefox-105.0-es-CL.xpi 567806 BLAKE2B 1be487ab3f56aac176b337fa727964f500265bbf7c4bdbdef98444cdd2f032a4879cdfb58acfb58203ce409b7d6a3d9ab75df6a6eae1b0bcd58c289572da8229 SHA512 7d3881ccbb76349849812aad858f30cfdc468402249df77058230afde59297051d540b0d4d5a05db3209f0065558eb74da17f2f4cc0bd0b3966a2a967016b2c7 -DIST firefox-105.0-es-ES.xpi 553317 BLAKE2B 7c8ff9d42c9343c75ed4360aadb0704a4986db6d2165b6a8bd5e80562fa9ebd0bb5736098b8770f15ec13707eed05a29ba3132d5b17e6ced3a47377639fc8804 SHA512 08741a2a0f8ccd3a401d1743da174d41639ea5a541ef70170ab641acaa1688699565a0bbbd9557a0d8481a79b1d5af2582ae98dee9b7803b3bf7c9c8fc63ae96 -DIST firefox-105.0-es-MX.xpi 571862 BLAKE2B e86cc6d277cc50f687309398f1060109e2a80ba180495ce20f8568f8a15a50e6cabe3f3dc8548d59da5a19534d96aee8985880923d4447715d907bf9cdcbacdc SHA512 a1ca0c654f388e4fbd3888d1ddab6c0451fb5d46117aea76cfbc139cd24861f45e0c70348bd7c6b2a9b765f7fe19417d7a34be00e547bfef4112dd3cb0dbd668 -DIST firefox-105.0-et.xpi 539881 BLAKE2B b1063c03b9f37e5867eea4ba0e7f79a0056362aea929ded13292c937faecef21d4c7bbd923695972912920b22a7ab9c6735ffbe3c4738eacf572f4684e5dae63 SHA512 29f5c8242762fb28dfe944eb071cf6b4bba82cf300181da2817ac3d3b3c9da4558eaa2cf8357a4980d3024d10c1eab929a8112d1504035991c828e9f508900c5 -DIST firefox-105.0-eu.xpi 556228 BLAKE2B 93dd1796836d3a15b1f72ccdda4779ef06d344970718bc593c08e7b3832ae364cfc1a95e0a009a0b089bbe2f3757272002aad6642ac1609057e30e1da1cd19a5 SHA512 ecee6a561a51f59b9b7788942c5c6341ca112ece9db4edb69277b2f64c2e7652392640f3937c9a3c4f91bc270381d6597a16ff6b51d5cc4ee1067768f442f7f6 -DIST firefox-105.0-fa.xpi 571110 BLAKE2B 401844e080a74762f28f106c5c602d23ae6a07b0ba7cb25b147b2fb548efa630956f4fa547d26627865c2837d20e595af02b3d3f1072fd7747545aedddfa3335 SHA512 4be6922847fab0622c81b63e8e180035a364df5f120dc1d6a84fa85a5c852deb0197ab9f1d60a0db54b77f156e62f1dc2ef528711fdce26d52c11fbaee2f51e7 -DIST firefox-105.0-ff.xpi 481136 BLAKE2B 27fe9c34aa4d00285ed9a6035b8b921237852a7c5aded61855d95749cb377303409097a34eb667025d249f8bc06467a5389896376cc35e98ccd5b031ca4d21bd SHA512 cf35094cd2978bdd44660faf9a29e2ed5ef6ca8bbbd464499c82f193cf0c125f909785defba730aace1d789da88abd47ad3b8a9d0a76b29844003fc6a8063f99 -DIST firefox-105.0-fi.xpi 552062 BLAKE2B 8f52878f31e8a224b5ac06069007e25f606740f14eb37d6f24278ad45677fc8186b01b071ce5e571fdc206c83c6eee638303a08d62a2b3081542056804004f61 SHA512 7dac8adf410da53e1614ca2358ea7f3b06f66f019e58c94a15fb652dfe2135fcec1248ad5a2f1b56cbf8e174accacbf16d2190806c6597aead880b45bb9cad71 -DIST firefox-105.0-fr.xpi 580211 BLAKE2B be25a8e129d640fd8931b013d3ef79a0b2c10a8784eee5e72d7bb9e681a6d4ab3377799b5270da1a2ab0265a0e0b43cde56bc5a322ee791114f00591cc6582cd SHA512 10111f8792befd7069eccac01c91e648595f622fd7d17e37ce6f5c656d49c286c4869997b306b560bff696e30afbd15f6f85d7989290fe871bcb8c27c88e1862 -DIST firefox-105.0-fy-NL.xpi 564513 BLAKE2B e68e5fcf8d4b5bb4ba5d64806058ef87ed78675091638583b5ef435766c40b9c90b7191b20cbb542653e4af7a9cc5346b190851a7e8cf6072e6d5b4398f7f978 SHA512 31488b4bb233e76085b9a2462e81833bc9d7d46dfca73f35ec50a12ab881d217d031fda92fbf540275c2bebdbdbfce836eb22937fe8ed46c9d59df679bb27600 -DIST firefox-105.0-ga-IE.xpi 479289 BLAKE2B 12e16417e7fcb89b8ec60dcdb3e25397c904cfb272f58994551aad2f6c434825d70848af68087710cdab67cc4dcfa47c95b73a5d068abaaa0ff0097116c0d768 SHA512 0ceb64d5d4fcfe8e1c02b34d28305904ff1a330a1300882561b25af7a3109cd2e772f49f4ca83c818c6df37828ce8bf12bd7bbc2fcc27d6db11068a315a1e02e -DIST firefox-105.0-gd.xpi 552645 BLAKE2B 5476f373edcff5327de9285e8df600a7b4bad0770cd7b159cab6084e5c1944ca2f933b64858d4807f08bc9c6c40b44a8da98ff5d35659153689e1a376da7e43c SHA512 03faef5fa0ddbe50bae585d180100d3d668b26803de94ae526d23a3764df8bb6bdd6a30229c8a3f2e4da2440b2660ba3ec149384e21d96ed60830b228a65c095 -DIST firefox-105.0-gl.xpi 548771 BLAKE2B 96f99730a77cb0567a795749e9113d03a3f28d714bcc7aa9ffaa456e00749f60bf761e652179bd914930899adec40104be59d3cee99990a79406b7bf4d72ce09 SHA512 58107209fc005b44a683eac0489629a60913bf6405ce18e834ee43b5c533906df962edb23a574606e2dd5648501fbde93735e43d6bf499494114300564f225e2 -DIST firefox-105.0-gn.xpi 579017 BLAKE2B a24aa45193226265f20a8ab8c29c2111043689db07ce50008f573db406a569add2690556056f2e9e4c2a345ff0eb966a9398aa94f0de77d9a0fa06cf10a63a89 SHA512 80be6dfb2a2e7ce7e68991fc2f35a54a6249bd720adc06d0d913f8f465c5e97c958b051ab60b5c575f80320d1a880630558ab83d94eeb7460b1abd914c5982e8 -DIST firefox-105.0-gu-IN.xpi 536338 BLAKE2B b75b9a86b08834b4f8289cc82649b73e800e4f2d3cbe387e622c93d400b3e1450a18c4cb7eb29f52fe27b4acddb5ab18d2ab5f5103d91f049384bce6f931c25b SHA512 e0547cecea69ff88f396cef93283a360c747add582a470cd1f894ce036d224f3f73918cac92785ba38a9d0ee58f6c88892d3432f598cc6ef15142f66fda7bd6f -DIST firefox-105.0-he.xpi 575460 BLAKE2B db24f91d8496eb68eaf6ab3738634bc99d53890736f4e821f528607c8bb4564749cb6698116f48878246aaad6ce84af5b33226f6df23f3f7c1cbd699ab33c4d3 SHA512 9b238a9e9e04690f96cb8ac204d387b2d27effe706857093317e37d24140a79ec05f729bc20c2f7aa1a7e3e1259eaa942fbdcc35f00f68423243343b19d81237 -DIST firefox-105.0-hi-IN.xpi 566798 BLAKE2B c4beebf4d1469ebe7c44dde7714f4857f59dfc06e5f0c5671bee82f2e01c4f5e87b2f0c5f3dde5027977ed49f718529cd314cd9dae55c62e9e96eb80e5b10244 SHA512 30e2b3de8f6f68a9f53a386ae96b45c6cde45c512b247dfa2aafa29fdb564e9dbf342de79e4f1af28d67eacff87cc4783244c5507ee51add20340821a62021b6 -DIST firefox-105.0-hr.xpi 539459 BLAKE2B 6b39a370a07997a7e62f4248a7dbfa627f0aef1343362b35e221a6364e45d0ae54dfb57f37780452d8585ee5ca25d79cf7c4a4b30346862b02fc05b8c70390de SHA512 7e300696f256f4df213ed373ca6c7d47aa9256dd0caa6a10ffeafce2883edce15c0939461e5cba583ee309a030d100ade4a456e84efc295f790e2e9400bfc302 -DIST firefox-105.0-hsb.xpi 583863 BLAKE2B 93f82e33980547b5c57a67005176abfda4115b3a216302c1d14a66f73471eac409f44ecfa6258e54fd36ab1312c6166972a99984a62c1030a215037f1ad7b6da SHA512 d87a15be0e85a687cdb98313c3a7dde03f5c55a880eeb529a9a0b2dda4e3065eb1d1361834043549b1479a0b60b1b2e879eacdf65f553945d1681c8fdb2b4465 -DIST firefox-105.0-hu.xpi 588449 BLAKE2B a57997cd1cbac8e6391454c19a32bf5a993d4567af6bda8676ed1de70f428da0634b18e2b136527b2f147bcc0d83244318dbecbf7cb522a54af3fb9474307738 SHA512 6a3770f80402fea7e1efdebc2d6abf41a097c6909745b62dff0880da63529d6993bbab9bd2a15a96c51a282c43dd6ee060970b9559d486fcd315ef364aca8797 -DIST firefox-105.0-hy-AM.xpi 591352 BLAKE2B f23b8df6b56269fce491c3024e78c638b6f1e7d6c7c89e62868af3c2a5133bd4ee05d38b45854a2f177ee0a6c85564d8a0168e48652110ce4efa91b5d85c8ae7 SHA512 7b0b6088e57d8d16ad1315379572077c6d45619d530897f8473c9b8afd46ab9337a97c9b1627b6bd210d3ab2b776fd825f2953a0751fa6f3b5cb57b26c92f30a -DIST firefox-105.0-ia.xpi 553254 BLAKE2B d723d6f3009c11a51c216a90eed2e03675db55146ee7546e6fede2f6c72e3a065ccd7943b08b9a9802ee797bbc3989d3a90df264cd99823957b5baffb2a322fe SHA512 b46c013dd0d3f4b3bae3941421e913c594beef27c8d1f473150d1bec2d83fdd360e176693ac1fce6106dcceff1420badb45589ed5cfdf28a5b854725af685579 -DIST firefox-105.0-id.xpi 550328 BLAKE2B 3c8330f3f30b391d41160ced36a9e1624ec690dc9ea1cba5174a8f0db406329156e58f21e91ecfc585c1e823e29b8ef6d1ecf57990e93231a4091c2eb13b3d75 SHA512 b77f30e2e93d1823eff7654fc4683f29720e64a870d2b3f128ab2946267693a0b22a60a16fdfacd2d6e4ecacc876c6fae7f1af225edd5de37e8d004b2323ceaa -DIST firefox-105.0-is.xpi 560803 BLAKE2B 2f28b4c948d952598e17770b9eef2ecd6bc00c5ad05db33d59ced3239e5e82ff4cd35315b3324c5d381d79393327c8094bd0df57c50f2f022297bb79ad155785 SHA512 31771a373cac848a869d50ef6e2cf75d3fd1d4b7006c675952f44d2918d0a6332a901ca93c02c0e35a3a14c3d4bfb984c0c709921301d2201ea5a0b1a51cd834 -DIST firefox-105.0-it.xpi 471260 BLAKE2B 99638b000d56a7adc52173ec286c9398a3bc032f3f8d6d2fcda12d37a172aa4520f373588c53f3a84c21e3c3ed65f37e5a593810190594afc97e5fc6e9549fe1 SHA512 09ecbdcdc30e87613d2f87fbef4fcd39a2f41b351f917059004f92f9eeec7cd504ec79e5aeed7c9e674f652777639697f9a6ad973f213fa577ff1080a16fb0e8 -DIST firefox-105.0-ja.xpi 593770 BLAKE2B b9046c203e81892e11310ed46671d9f8f0227211aad441f8904dcb94d82c47f28daa87294df94d3c9a61722939c1fab65bb698751fcff790828d9a24fb70c13f SHA512 e031c6915862a5feb633cb39a2c72e6b9d265db231a6f3a64416ed6911ce1aa725f85b751366f613ac4903a75f090fd7a03dd5ec6dad7078f546d66bf33d73a4 -DIST firefox-105.0-ka.xpi 614606 BLAKE2B 91c8869a36cff0e8cb4e018222c4f5e207ab669daa59675a84ae32179058ac67ca48c0db817e670b965e3484b2dc3fd7f165f2ef94d943af5c8a46b5463ab58b SHA512 b944f7edfa5283674a3425a4b0130c74c4ee5a80494597b1f3a67cf65957820343326dda96daedb347757bb4e9f704c06fc3b8f839ee4439f0fd35df8fc90f47 -DIST firefox-105.0-kab.xpi 573721 BLAKE2B a1434c8e0c074dabaef2a34096123af3d0367c8cf625f60a144c746231711b54ce7af7fea44d840cb830cbd58cddfe2dba1cbc9b0ff7c22b0ce30e1c55c477fa SHA512 ad287eaef61903e040ab1900583efc268cf67f551eb35136a8eadf5208c840722c6d2fa2e627a7596902a0f304941ff33240844dd901f858c5460a1bd9281c16 -DIST firefox-105.0-kk.xpi 631192 BLAKE2B 40a7b08c2913b482d6a16c7bd043b6b88de4a9afd7cb96840d06761bd5fe58eed5d5d3e2f32b7511ddd3f7f362a19cbd7665ffcd6d79b2540592a3eaa6b5f6d1 SHA512 890a098495a80ed2069d8a85406d1309655f7f4b90e19b7fe75857138b86425b5cc19e85e58fb5cd43a10ddbf924c191c2164e395e033b4ec2b0baa90e77b8f7 -DIST firefox-105.0-km.xpi 540636 BLAKE2B 3cee1fe8f0fd605436c6a70480e82651c58ec9c85109f716f4dcfc3521af99181efba3702156033b20172c521789172053c410fdf95b83700cd864dbf52dc309 SHA512 d0c53c1b4994c8752b508f74593179284692fd3608a57ab48bd5f4aea762a3961603d20aa0a1948d459faf5fe38290da2666449dc91af5b692eadedc24bdec05 -DIST firefox-105.0-kn.xpi 506456 BLAKE2B 887f41af6106df63d038771e73a4a0ab630a6bdc895c51f7ac353baec9fa89f11867b1e46513201ccc180ac2160819a0d378ec60ef5157cb39de3ff624fa2d7d SHA512 d99a560226e96cafaab2170d69c098da127c62fcc6e162bbb8499a176dbebe16cdce983ef0ec204be8b3a3d426f685f6bcc18afc921a6e1a314a7e8d29375a6f -DIST firefox-105.0-ko.xpi 600511 BLAKE2B 17d0ba694c396d9147b0c42bb63e10fabf28cc5921cb46c8e1b5db318246e1271128d7247ff97de325ce38b4bfcac4cc5d195aa92afcfed10bc77212e2caf0a2 SHA512 f5d6b959fbdd4a51ca066bde5e3633d3c1af455ddcc6508f4c23c0591bd058e0220e356561130b95c61b87b751a4c7e6216c3e52d1b532f1d395e8ea1915bf13 -DIST firefox-105.0-lij.xpi 479007 BLAKE2B c3ebfa92f42b674c02574e90d10c2d64ece9fbe284f9c36fd5db18701ec862a18a19df6a6590ac657fc9f9690d891d6cb2e361ed092cf58d38d03d58ff2695d3 SHA512 dbc7136a1f1fc5705d2b02048fa8e1ebb1f052a3531bd7a87aad6bf83e379cc8c1b0f644a68c7b6ec25bffd2318e62a182863c63b04d623b5ae7687af23c7004 -DIST firefox-105.0-lt.xpi 570052 BLAKE2B 6ba0174c3deb84a0f3d8ad4558826f723b2fd15fafdab63e5eb9c8e8a15045d7b3375d84f426f69ac69c7b05210ff363474a05da501924e9e4bd2253a6b5ab60 SHA512 2545590f43ff0e3cdd027b0023e7d4677702151be3484600808988c586efeabf77e4e5b3b04b2f70221b6ba78e1f36d4de8a049cc5ec0208901f286e4fcf861c -DIST firefox-105.0-lv.xpi 472201 BLAKE2B 328fe46dafe89586a1f8eead3704f2ca65d83e3c2930a903f5ce91a5f1eb75ffa4d063489e4a24937bf95e5d6ab6ace242def6107de26a7b6116202518203a14 SHA512 ca09b9c5e13f803e081b181d5f65d06f2a58c763bb0a10511314a80100f4d7d2fce7131cf128b838839a05158b6f14141e1c7b26c53188ed4d7f57fc7fc018a4 -DIST firefox-105.0-mk.xpi 490859 BLAKE2B 38b9a5d250ee7c4cd7093dd6da3d3c289726d75cdbfdcd992f343d5cf9a783ca553a543593996baf3f03f697ea15a1392048da3bcae21de3a1da70a301a4a246 SHA512 0b83d8477fdbcdf5ea386cf4f9538e9d58d52793391dd4bde7271bcc90ae58bdeead3df184f88f17b54fcf7ac3fea584d5b5fee0ceb8ddd477660698009d8392 -DIST firefox-105.0-mr.xpi 539886 BLAKE2B b00ae908acccb3eb23ec6cae816b32d315f29e820d76d52b523e53325af8decec6b6b5acf467b5e994dc76fda9946336ad2895399d4e823ce07a871f135150b4 SHA512 c054444affed517f7507984498e84dc4f779d98473235cea864a7f7dc3b474f1121a9d6677eac85599e0b4ef186bb1c68fe8f37be72859f1f3edce9407015307 -DIST firefox-105.0-ms.xpi 457110 BLAKE2B 25cfebd14cbe0164252689a99b9ebc1a0991996b30626efc547a1c869e5de4a4a4707d1d356fda8f6469af67ec5a3f06f1a3c5092219101fa174cbafd8dfc9b6 SHA512 3279fa8016effaa64b61a51e843782972db118e21928d1105a381355304fbec41d163a35e02cb47d49d55584b5a86b1d3d34774f8ce24ac781d4118348d99a7f -DIST firefox-105.0-my.xpi 520836 BLAKE2B 278a46b4718f265c6e8442896f9a0e837dba0535df55fa85e4703a574dbab18d75ce548bca15df399381ea97637855f96d82bdd33227f4237d87384a3d99bb5e SHA512 3419279f6b1a05408ba547a01d4950803e7708d6dbda4b38f1788d6d450f18a920d09efa547168c43a67155da9bca18bab8569b871f2bb3f35a240e6d863a2b7 -DIST firefox-105.0-nb-NO.xpi 549440 BLAKE2B d776d923ccd85b33b8c686b60bea715c4fbdc10e2cd0f4f08fdc132625a4149d1fccc6947d532f1e67263c54cddd6cbf1a6ea7d2499e6133c7a1ed0eafc28c43 SHA512 cd8a90956635c01c729015949447c5d060e9f1e447b9290824e332efb953b5c0d31a601ce16f50dc6f15ed6467e383256613226195b2758d4a1168580fa46c3b -DIST firefox-105.0-ne-NP.xpi 498114 BLAKE2B 5e5573f549cc721c8a6e507da3cddf29df748d2e563837cd4f28135f153f844d9591c53b1738bf216c8194f62dddff1f555482ab53d481e2f7ccec8292d1a78b SHA512 b90e3f35d0c3cc249b95b9e0693221c14967fa07a20afa528b717884285b3c62ef2dde5d65058907f0ff8a264544eb9843c1ca44ee54380f79b81b413f1be25f -DIST firefox-105.0-nl.xpi 558679 BLAKE2B f0098d310b3d180abaa565e3fc55eb8d7f7b0a8f1b1cee8ffc9fca12fbbe5ec569b6e15912e880a7219e9783af2751ce342f43f37ce76dca400526c4cd3f1c64 SHA512 f984d5b81c24ee8f36d177051542ff8ce06b984a2ef837b3410aed75c7565c0bc309e19c32ea9a419c01dc58d755518708b39b7194cb5e279fa2be3470b3f8ce -DIST firefox-105.0-nn-NO.xpi 549946 BLAKE2B 7e4830e951881c9423a3ceee904a6b7848f7a78622841eb44eedc1d25a855e92a8621e3a37b63d14fe7d63417de2d90dee0cc153007b291864a843e4efb994ee SHA512 4734c8cf916c85d1c3342e2c1a561ec0680efe4e98a382467a4fb5fb514b14372d29c587ea0f5530881bdf314962b57ed6954472577d64372ea636673ddad174 -DIST firefox-105.0-oc.xpi 569592 BLAKE2B 9f2d041dfd06745506a31ef2b76025c7fa8d12f7d1750db148630582e21046fbab38e5b8764668731590a0e65f09ec97d0beb67d165a6dfddd944234422ea897 SHA512 3e1076ee5fa0531fba9fa5a37a56645f5ecdadbf27adb392dfd65dcfab5fbcd56fe0b9f08234c3ba192a827c33a5d493123411cd5809cf935090bb9223c206ec -DIST firefox-105.0-pa-IN.xpi 621200 BLAKE2B c36857c0214595febbc3fd1c9fc6a41b677d1c72d79dd6e67e9a55cdb7712f3dff9a90ab09fa9677a83f71c93d2eae1e9f09f18655edd9afda2bf282f9ff846e SHA512 7a3d0761a0736d0386cc658afd14946ddb843c8a380c79c1813a0eb093339ba342d1389ac16c5fda2951790622e276caa8e99cc6ef7d30e0edc7a397765e16b0 -DIST firefox-105.0-pl.xpi 579327 BLAKE2B 7364acda33029575189c4e84379320b96bfbf7343f0d6da45b15e66f61410bc190624f4b066c8e7cc00f2803fc6597e31714db41fe7f49d58d59178aa6f41f5c SHA512 151c63dded1a08c2316818f72236dc907de3b8f91b89595015cfd7bcee1a2b4d11830d5ca1cdb812de5c70f9c2d7b1b6a803c48ad02f7b12942185b028143ac1 -DIST firefox-105.0-pt-BR.xpi 563715 BLAKE2B 19ee561ac8f503519d4b4d323b542441dff0a7a60a22e1d76960adcf03bb2d46651274db0943cf01e802f22468dadf3911a668feafa51df9cee1a8265bece87e SHA512 445f31e9e5582ea911f9fa8bcf2d52735c48273da8e2c0d5df219ef1e23827b8a053e4a7f38107b78a580f76f75802275acd1228fbcec12133e6198fde1d2272 -DIST firefox-105.0-pt-PT.xpi 563873 BLAKE2B 27f3940da60991ca53b136e02c879c77a6a4a87791d4e3d74c69d79005f71107fb6ef84518f95994be6333944f431a69e7b4919b288b87d551dc23adaa0a5363 SHA512 34a669c09bc275e7b1d2e800c01bd527ad43bd837be4a16ae51df1920cd8a17a7d8e1743abe478df68d569ed4aba878d8627b35f93ae4ea3c5cad0a576c7dcac -DIST firefox-105.0-rm.xpi 547518 BLAKE2B 2c67c5e8bcbba1fae3760a3700863c49d147868ce1009f7e4d4076f2991cbd8d52aa3b97c385592e92a4fc965bcd2b4326099d4825360cb5c7726385e5041ec7 SHA512 ad6c601e038c893b2bfbfb083fc09534001f853d0d91807dd6b686cdb7139621ff6523a60c17d159b14759ef00a334ab65ba953f5e16f3f088305343793844b8 -DIST firefox-105.0-ro.xpi 537768 BLAKE2B 8a5f9a93f71f492a2b354cb66eb8775873594a28e6907d77bf21dbbbbd5a4bc03c5867ab38a5b19ce26a8c215957ae927833f4fd031f321cc7c4fe5974fb10ea SHA512 5234754893df799538d00c9bbc0509470ee0558cd7dceabd80fc8cd45be6f68c5e078b474e88c07d0cd28ac6b2329deba076da315e584f470cac02e6de971348 -DIST firefox-105.0-ru.xpi 651152 BLAKE2B c8b5ddaf3955daf81b1c3109a28bd5c1f9d789797932c65603ee2c9628abed1516b8010230c75ce83045c8233e7465ff8ab6579bf5460f6eec7866ab257637d3 SHA512 132d0fdd7d0027f364cddacde8d2858def95f3d27ed5fc76fcbe160c26944897ef345739bd709a7f4955bb4122e0d1b7c34ee8f69fedd434448858f6c1a93c01 -DIST firefox-105.0-sco.xpi 505203 BLAKE2B b831362c3c03eb46b1797b8481f7aa8e345cf1809d0ed055ed1051cb0a191a44704d7ae0eb041373b45fc8a22ad5ff5d1a8d16991070cea17d76ce9f5765ee82 SHA512 5c990fdda7f7a587344c7dfd2ac5fd40c303a0fd3525d271bc1588dddd7fb0d656954c789d171983a59ad8425a2b6f299fc0324922d39a0964785c155b722bbb -DIST firefox-105.0-si.xpi 573125 BLAKE2B fb53b2ff54316990eb3edd0c059deb6a08f62e55bf3b515ac4deb5498fc0e432b56815972b87fbccbafb7aa19a8628b7a8417b938ea98603a8f4d78632b29728 SHA512 3061c7e44c31c754a9608d22c0e02f1d0649df9090dcd91c7bbe607a16a1034b89d75a0a2812dd5ded3c5962862d6a0e729eb1fa0733d54624ca48f3ec472d36 -DIST firefox-105.0-sk.xpi 588214 BLAKE2B 212fb528898ab2447e9d09dee1db229adba4e67f63a78618e0064f858aa93484b0265084e1eabc1f715a5b3fc0a60aabe5d5699cd7151c2bd151730b2a4cdbaa SHA512 e9681134cd349d2a64c60beaee02d9fa9cd55d99b8a0d1296996db7e1f240c148ef62b34c9fdc1aa9fe3fe58ce0b3c4daef77ffb564c88b7dbf9445073f021ac -DIST firefox-105.0-sl.xpi 561108 BLAKE2B 9dcfcd71cce3fd0218875b71cd4984c5797f48bb1508ed46c1ca28d040011951043f62fdd2e1331bd3f044c551355850b6ce7b3a0a34a49402f8435e1456e283 SHA512 593d913f31cd62d13bbdca59ff2b3e54551d72d3e161c4c13a2f77937d95717cb78b201ef7c8af249b0d9162972c0161df783f64b071f8aebfe3e8080f0f195d -DIST firefox-105.0-son.xpi 433314 BLAKE2B d86b43f67b8156ca213c6d3c59ae0a1035a882dd65aaf497e853ea815d3cf487073b8e4030affb80614d1f79a6e3ef22d70f4685d5591e7c77d49cbe04c08d7f SHA512 437ef372ab79cb5bf36d7a1805ed4253955cd8293cc60512156baa679f22bce8b9a2c127e0038c226b6aca279e40a5597eeb891c6633e987e61b89009f25ec46 -DIST firefox-105.0-sq.xpi 565438 BLAKE2B c26483ceee5196fe31f7154e5b3a544e477add30c974a89b22205a9d07c2f38f8e10c65c18e103f4ad309e458e81462f520717c98c24fb8b2741ec14499135a7 SHA512 6fe64021f01ac8877cc30612fdf957277e2a2b0d77460d3a75b5d12be807330621f805d0ab4858ee217a07c22d662bf5c43f361daab3c6f52af58a319c06821c -DIST firefox-105.0-sr.xpi 604650 BLAKE2B 86cb703f3ac2ce2fd5260cfa4f72c2b5e18f651be839813debef827cf21285d031b6af18d756369bff848c46df8e5955a17f4fae0b008f42c96c160a740028dc SHA512 e5f07a3b9acf5f7103613ad0059ef1e9d6a8cb3930f3a6dabe807747f75dbc3e9c74b14104031b3795b01483e9bba7b6c7adbd8a6b6e1ca5f992465a4969f724 -DIST firefox-105.0-sv-SE.xpi 560616 BLAKE2B 0cb7eb69fc2831b7e31ae8cc724c0c20e234d32b431997f0ded1f4392b41739ff5addfc6ba55fed19cea7fd2874d8d9361f35dfd936b147df408387280bb4aa3 SHA512 3a4619f618d2bd47445b4acc16c065c34967eab09a891b1fd81f1ef2885fd4c350b871829d74beda2ae78ffb83598379a2b0037405b1d4931de7628fb68082a4 -DIST firefox-105.0-szl.xpi 520743 BLAKE2B c017823733cc8c7aa663ff0d2390d7713cb09765ccdabab8883ae6a8260e17e6a5e1ddb62dcde381faead167a226e2235b39797d76e2613bc29bd14d52503d46 SHA512 ad08c5bb2e6ff3da15900d43e6756ae51870b7aca91b5400888d2fc9780929f78605445fe32bce7cbf8a6051700658136213a705b2d36a445852a346788f246b -DIST firefox-105.0-ta.xpi 519016 BLAKE2B 6ef09bde897cf09f424b1c86f8f6f62bb1ab47bd864821399d2bbae2e310c8a2d38941d7ac1767d2875cb54aab4baa945da42087bb516abaf36f951fd9054f8f SHA512 3d9a2d7552479342a8bc8141619e95018ec738033d7b61e9b5d81a4ca9dd54fac9f36baaf24a4f1b3e86ac6dd399acc22ae325c0d7c48c7b538bf6538515e801 -DIST firefox-105.0-te.xpi 560549 BLAKE2B d59cff66c4026428eee5f7d6e00f09e4d27a25ce4443ae55659e6c3989ef5dec39ddbc3976a205b463de66bdcdf49888ab8894e557eb8bb1d2958d5efffb1c3c SHA512 79f0dcf66565b45e0c5c0a2910f276f8d32355b90c3f4d089a5a934fb1d77f15d3a1936baee51b0bf360c9670b88dce4905b311e0338d437c6c05414d1e9d9d6 -DIST firefox-105.0-th.xpi 621828 BLAKE2B 0cc3253d4573a32c15e6cd00dab4011f8881039bde1a4438f76b44b4a276b6fc00096c4cd5c80b337caa68a7f30ea58b5ce5980ab42119eb99e02f7287eff33d SHA512 b9b84266d1ac5f6f676dee29abfb07a4ca13690e45d0f04774bee6cad317b95110a80af9afb8d6c66e246e33c57015a5d41c6810583e96b1bcd5986c0ecd8190 -DIST firefox-105.0-tl.xpi 528005 BLAKE2B 26ae127c0a7189aa8a320c7c78a2f9fd30a5a99a0042428b9cf0825e4e4adb516d8c3c36341b49355f196dd4b47cd53568cc0f28a645429eba85046418ccefa5 SHA512 c449ed87ca56f18dc70bfbcfce5e737b00513ea2221a5cc0ec5e357b0372434058e4045d488b1723834468e29bfb1ad5a7b0f4f34691a5da82bb103047a033cd -DIST firefox-105.0-tr.xpi 574327 BLAKE2B dca8147b6b00d823cba9655daafda6938cd10990a5b43640001f55e8608cb54b32d3c66a623252b45e947761d703ef25c03a5d8c95bf287f536716f3ea17e8bc SHA512 b95162aab0e1c8530602dbbc7c26d798768085f10ad4d7d36e9934d956f4b3a1cd6529c48c9dd63a52098b88190dce2ab087b9a1f72691c4fcc82c659cc9cad2 -DIST firefox-105.0-trs.xpi 498807 BLAKE2B b95619ff1112814fad74979fe2556f65f218cb64d70f7d3270f02ba7f6ef8cc350cf1d04c0a7a3bd9b18f7e36310b215c1cca5ff15624ba2c89123fd5009abba SHA512 b8f1b2e23ce6cf9228c14ff7314e307021003983d0db7533e0937bdee102b41061e1c6982637730c797f20cdef9b89659ac3ea1eda9006241e19a11b1fac7f37 -DIST firefox-105.0-uk.xpi 644336 BLAKE2B 0af43ff97b71621eaf2f7d028af2fb27c446fd0d193ec5f7e7ad37bf591a5e23454df5ef8960081a7c0bb6d3cb89a4d07ec11c33244a72b395ad15919de225a5 SHA512 bc656f7f3b1f81471e446ee9b7e62b0cf80b466a55f23f3fa4d0147549f13f0c93272350b0b0ea433f91ba0c2bc669c373667a5d97d5ba7bb4d8a8102401289d -DIST firefox-105.0-ur.xpi 566535 BLAKE2B 97b2d3ef7d1560ace7445a68acc36ae529617b592197309a302d1476f7acbf3bb79cdb04ad45bb90ee4052a51006178e1b0be6b9cf1c8efd6789711f0b764a0b SHA512 4729113722992f47bba9aa95ee46d374fd5fe775a4033cc99b226c42a1b68f0177c280b1c921eb6865e4d159558c24ba4628659771c65d4001ecfb9150d17d90 -DIST firefox-105.0-uz.xpi 486874 BLAKE2B f7bcf82e4f33c452deee3d061718dff75a638b0b2cd77baed7d6011d46a8a4e87e2ab1d7e9bf9e1484d88e953c691731de068c7522cdca4bb3d736da434d17a0 SHA512 616812a38b878bf019252ce373e9a03965f646e0e1793f624b1f806af89065d2de981ba946afb9d697ee310d8948bc7062c917cc4f07ae65ffd0d320abf3aef0 -DIST firefox-105.0-vi.xpi 595124 BLAKE2B c27899ee403a140819545214ec94c76511b03293e818d012ab071f3f1f7608685cbf565771ff9d3c66cfe18970e7baf444256371b9a9d9cbe9462aa8000fec2a SHA512 c18a29b4ab803c33f1a7ea39e349208bc82312f38d5b037009b0b3bc71343f7e9b2807de396b074188f49d0e532be14571b88d456b6bdcf9c4f36133ffe63958 -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 @@ -500,110 +205,6 @@ DIST firefox-105.0.1-xh.xpi 435741 BLAKE2B 4cc4ab55df561b95948dd6b5e389bf6a1e357 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 -DIST firefox-91.13.0esr-an.xpi 499888 BLAKE2B 5a3bf70080e5ce5fee3a47955678a179e716474c4f341cff1ebffef0401b2b24d0e61b30c772b3863a9b3e62bad68a37ba4037b8fea332d40194ad905fcedad1 SHA512 8935e71639824517870e679bfe4edd8870b37c36a4ec6d5e4a93c9496c5df551fcac14dab397be12f80e0a3f5fa14253f1995d0ee2e4328dd05219901299898b -DIST firefox-91.13.0esr-ar.xpi 559670 BLAKE2B e3ef0c84a954ca2ccd7510c0c1f2055fb9803602175ebeb373a1c952d3fb1883753734347bd2deb22474bf16fe12a8c4a00712fee042be86004d7cf8fc09e03f SHA512 a2e2fa7c2cbbe42f8cffb45eea60084f1010a02e1b2c30cd7c03f09451cf7d49623860db3d892eabe4f5b68c445f005eb9cb063b91f3252b9040387b635b05ad -DIST firefox-91.13.0esr-ast.xpi 498574 BLAKE2B 4faa3cd0abcf640f509640c50d043d8039e8962be497186029543e1597f583b4d3fc68c5fcadfd31f8f56a75871e750b1bf261a6af092cd8672e3427ef01a34d SHA512 201cc367019ea28a9416ad06faa06ca25c956a9e5d125484b396968a81ed1e545961a664493b6e9ab840b5363eda7e43414957b6eeac3146f9a69c032ca9227d -DIST firefox-91.13.0esr-az.xpi 489442 BLAKE2B 4671332c5aa979bc7134b2b1464e1862ba892d727a4c7543fd5d581dbce62871737c8dfc38ee4e973d219200e80de024e67e39222a70c9144639a2a0775155ac SHA512 af752135f6ca035fa0ddc0ccb00f42652a93efd34573357d76777d3a513802da6a3ddbcf129f33b3f3c8909d37cefe9ac8f1146804462d3e8ebe65d032ef3c7e -DIST firefox-91.13.0esr-be.xpi 622604 BLAKE2B 4f574f4dbe34265ad6dec0d3a70523a0230a22bf8d0e86aa08ed943a4cfc4969c38dad07767d1c6663b8eb9c37a0f940db5d0b85facbf838c399b0043bb80209 SHA512 18c468fe5e132cbc856f1c64c07ca2dadbd26f15bf3316fbdde6a8c117acd9baffddd4a65c10e0fb3a62e6a6bedf5688a552d706ca02b40f5f4e7809de4500c0 -DIST firefox-91.13.0esr-bg.xpi 567637 BLAKE2B 5d36444dcd3cf055cb8e414195537b19da4094c5d525f5f738c205fb0ba75a739a520ce7646dea4a87cad078ad481eee34cc3a30ee91fb60e04a9e5d551f84db SHA512 b875720d537068d96701ac302b631859eaa06a39f42b037d5bb9298f83a21a1842a00aec8272ece26658bc188c2484576838966286bee811e3c3413866dd6418 -DIST firefox-91.13.0esr-bn.xpi 556817 BLAKE2B 3632c91e9175c4fa2efe27e26b39d617df6b354584b59432125363e92d041bfbcb0ffcc3706d5ffcec132fcc32cc678808d58b2c189747d6b6c1c28b4048c4ec SHA512 334fb0284d803458ee7b1599bc9ec93b7600e66b248857f26a84ab0cf4b8f24ef04799c6ece0ee417acf075bf29842276c4b9d6ba689ffbe3576c34994f7bba6 -DIST firefox-91.13.0esr-br.xpi 526261 BLAKE2B 6cf9f4fd76b1578d17b70cf442b51b69888f6c759d3e354db8300ca81c2ef50104a9830089ceff3c5af156ff10f7ea9f3b3e2071d66b32d07a951f6608a6675b SHA512 92f786fbe732cac4fae38a7b16aef064c79ba9f5c874b5364d33e9164e74fd1aa2f44e5363c0eb354c485ae226ea3b02f3d8423e3ee07a903f3aec95c006be1c -DIST firefox-91.13.0esr-bs.xpi 463560 BLAKE2B 90757f791bbc7b38b6108760bd1e9c56b05654a4af8a0eae7f3aaeb6522e7dd5a8c710f5857a04d0ad8ca43ac79f5fecb9db482a9e1c1427c0f7aa8c16632bda SHA512 b16fabfe09700a682aa94d2dad8bda3a9f2d7ab048cdb8d27c39730ecc7b8903b3ea7d81e7bca8e58591a227aeede6063da028f73078a09dd7a188a7d4b2f454 -DIST firefox-91.13.0esr-ca-valencia.xpi 529401 BLAKE2B 0bc1c37e4a08d9d6f7b02d36125ca8062b8f587e8028a4d97e472363d4c948097067dd98204ed88c3440245758f6ecf251cb114db2ed8f18b0a913cb55391dbc SHA512 686516e72f86480acf35534d18b9ad76853a439733a7d5b38c7b919417f9e68470f3b7fe4035926df1afe16585b0c783d505d259fd91405176ecdab7c9676583 -DIST firefox-91.13.0esr-ca.xpi 532471 BLAKE2B c8d996d5a27d1d5396bd2e7359e19a386047ebde3fe9a18687d6440c7fbd4fb59b8122de6055ddf8b9d44e120b516d849eafd016ade36b88dca00e774ca42e90 SHA512 a5c925e84227aa4deadca8a780bdef74a0bd4b4732e973bcfe5352e1b1932065547fa7807a4308d8993fb17034d7a445c3e993d77ae02874cd89e649a1f440d8 -DIST firefox-91.13.0esr-cak.xpi 552611 BLAKE2B c6ac62da8287654b3c7e1bc4f0941059e5981b1d99d35ee5af2c4ecaec6b26da6ffa8b58754ba1a48451a60bce279f257af05ed4615cd8bdfa6b4b00e59e4af2 SHA512 b9795c438b01ffd48a649fd25bb379b49d89afc084e1c2f9cbae4af92419bbc7387bf4cab82d284f1e277273c9d9a19abf444cdaf4635ce839943bb08484c0fd -DIST firefox-91.13.0esr-cs.xpi 563176 BLAKE2B 37181f88370addeb66315092bc82f1e8aaf5a399ee85c14bf94820e09b697094f89f4fb4ad33d117df79f06b5df4b36590f372eea473f36b3f3ff0511844a4a8 SHA512 10fcd15d8cc66fd0518869f84bf123f94fe04da379f062f0211d4403272f77e23601a9f10fa9b191ee1e7c6c15d32f28efb0d834856280f5ca8b78257eff4fbb -DIST firefox-91.13.0esr-cy.xpi 542220 BLAKE2B 03fb0aa335ef0ab6d144f6d99f53c4a1af389db8cf44c61b611a61021b15601c51b67d1e403d8eaef42e54e129cee4068e2a58c56ab006f6f73927af809d7668 SHA512 36edf842c83529e9174747449567258e7e459a3a51edd123d40c83d4ddce34038b0fbbf07665a5506ae8c2bc7724939fbfef5c8b743b1be383220a5321d657c5 -DIST firefox-91.13.0esr-da.xpi 534151 BLAKE2B a8fbd9e16183b57b942db75ecc87dee57973692936d1590911cc8752f142b366bb6f506c1f0e29cd5c463f760a88f3c176263f8da479ea5ca3142527298283f9 SHA512 204b67e53b2e023f0ae4282b6ad7a70f67d88ab817ccfadcae5084386d30ae3fa83bfdb2b254b0438e5a2824b16e3ce0e95c6029a19a0b16e3781f2e0a740cd2 -DIST firefox-91.13.0esr-de.xpi 553591 BLAKE2B 0f079748002df2ddcafad403c98a9811b9719feeb98fa339dbd0b747754947e31bc4633ae964216282c3c1d581f7617b3cd7fe879a02d40ca149d6328504aebc SHA512 ba6eafc9319ce239b20c5932978da01100b355b37e709429863ec4bd5f6cd9da4d36fb7e0e1e9877419e63aaea94e9e120471f6ae0105e734e82cb4b764d8403 -DIST firefox-91.13.0esr-dsb.xpi 566480 BLAKE2B 9db1a8ea575ff845a4967cd8e2cffde25d5d36781d6d227bfaf64df47456e393c1af7e9c21361d3e99580dba94c2fd3c0b56d20f508e95590550666a022b9ce3 SHA512 c53bf9302de4197dfcd003ed35b87b5b66a01314f9691197ab4a314590f70dc0132303a2a1ca3a7d62e4e667616dcc515296b468630df32ec142bee408ba7ee3 -DIST firefox-91.13.0esr-el.xpi 639147 BLAKE2B b48a02f6749b3b72b9642ce387c56572ce969ffda0f858cf2181d0e75f6a9e670c7370d291e417cccc6b2b20afce417fac78ecca087735c5b6b91566dedf03c5 SHA512 b0d8f4fa28d0f62ad130bc664f35ae29b0d9ef5092aa7d87cf577fb249f3fd4cdad93a88bebaa0f5a8f965fad8acfd22ba53440c6bc1c3d1e920e19036aa3991 -DIST firefox-91.13.0esr-en-CA.xpi 509575 BLAKE2B 0d0fa8c9b7a3f14ac5cd1228b819dd2d362f23c64579564312da62f73c27a750bd91034b8b5cf4976cbcb77abf5ad65afa267b638ea1fea0925716c5b12992c0 SHA512 c807b355617fc015d145469bae5eb8db5991d27362f6011b61e7c98ba66fa1cdd0c4e1ef0b9cd5eaaa7e39a015b7af9e83e92c9ad29b7a26d4091961ec8321f7 -DIST firefox-91.13.0esr-en-GB.xpi 510583 BLAKE2B ac97614588e269d6d60f41964706027cff6371980fcac1003474231cede283cdb4520d389a0bab3b597e708e41cec07b744374a5cbf5062f1704e4cbcee8132d SHA512 f7d6fcc931b3acbf1051a031d8904de3f8a0c3f490ab86ce6ad831cda435e1a47303a41632fd60e48dffd9b94c220c7eddc8e9b3de802f801e9408b4a93108b2 -DIST firefox-91.13.0esr-eo.xpi 534814 BLAKE2B 1f89e3fea148c1d82d8af66a7e8c613b3fcf773451639109166a6cba33d949e428d10f0e3b6c0fc2eeb4317b5362ecd096b32e30ea412b5e2b1b9e783bf4934c SHA512 2e0bfe6d7a08da837251e2b334142c06f597acc85e4e68cae79dc3e157ad39be3c85eddada5be2105eececd8648974156a5b24d71da3d22d0b24ebd4e40f354b -DIST firefox-91.13.0esr-es-AR.xpi 546684 BLAKE2B 1c40ee32574150ab515a38199ccf79bb561b930b94c12b442cc093ba54cd9911b3f8c0da8cd2f4d66a7fb96e0febe7396a430fbad220e95181cbe03dbfb2227a SHA512 73bbe6d696bc116871860e0498a15add1b10efd55574ddfecbca847e348dd98849db57bd70098879809fc820be65ed4b4230a02b9a3a2a6294c740f5b4e9e41e -DIST firefox-91.13.0esr-es-CL.xpi 546379 BLAKE2B 737de2228470868b8c2c7ed0d352d54a91e360889acfe0e7cf2e4c405301b17c643cd8246f018e9cd672a19c86e0e5630c56d779e137875d0618c140808873f7 SHA512 478509669d663bacfdec2c585c3b210a833dc5bd3a875ef13168727ce087121c643d8403bf834798ac5047169f878f45f0bcf1181c63402418cdde14b5bbea1c -DIST firefox-91.13.0esr-es-ES.xpi 537070 BLAKE2B a65eb8091b99a83e6a05e117ef59fa0b95230ffec88d14b6cd7109df5fd9bd5bd7221861731668085460dcd611cebb4395957f267353782b9ff89db381c5ae79 SHA512 ebc2ea63e8a423f0ee34f655d7b908ef0625ee2ffdae7ef910c06622d064aefded0cb1ab5aefcc25b5f7b6af7b2a62c02f5088dc8cea0ca95cc56737486bcaf2 -DIST firefox-91.13.0esr-es-MX.xpi 549997 BLAKE2B 22ee7ee40f56e4b9afbe1cd4d35c644d80b80796a392e59d312758dc82c7a03f761e48a408b3dd7e2ca4d6fc79cb28769f6fa91bb05d063b411639f0481b8310 SHA512 2afbf71292e173e9438c0aec5fc9ce50e6805d8857f6b93dc0b89918fd360c2af286b2bc222e15de3107d8682e408d1125378d050b7e33ab13cd89c1bba29121 -DIST firefox-91.13.0esr-et.xpi 506670 BLAKE2B 6fc6802509aa11bbe1bf1b07d8a0cde326fbf33f3fcc55c44b5a0fa2c9ef46bb1c27066dda4be1c1c844ae3b591c55dac3346a154227c46cf64d3ea9c9843d1f SHA512 d6b55fcbdfc6e887a739afc2b00fc61d9c0e5a31c019d2a179fb0076d821ca28f0c69c588bb7d75f415fc8d1a5a4ae5dd149a0cc7445da4cceebebf9da034ee4 -DIST firefox-91.13.0esr-eu.xpi 536340 BLAKE2B f2f2d832a0cfa7e421d7de682ae4d54393dfc7e5bfae6141a4ca8a189fbee60653bef8fb489a9d329615e2f48fdf928ebad00c6a5e74423e135024a113a750b9 SHA512 e08e799c0592f36011e56d531cc57352e84f4787be37951f7bbc8a756caf6ac0749a7bb7f40404f02cf93b78e7db94c34a53600cebb86d4c10527c082f6836d6 -DIST firefox-91.13.0esr-fa.xpi 559384 BLAKE2B c6ac0edd19bbcf76c6130260de629bb522770da0464f8623af73fa07e008ab164a9dcd52bdcd7767d0901364922fb4d0a8718ef40bb96d2f74bfaba778ef8401 SHA512 c691581530cea9f825421bdd052210f0e565ed09a68607419555e2c3500cb047a768a6786d390ab02474e7daf640d8c4f6f6edd28483f657d2a2eb0dcbb6adae -DIST firefox-91.13.0esr-ff.xpi 471860 BLAKE2B 5c38546863ae1aec216d2816472807e1b371beb295ca8ded203f90240dd3b3c5f202e8ce450083352a5c5b45372f7cd5e40cd40f89dc9d1113f5320f5d60f6fb SHA512 8027306193f313518993a67d7248d5a958b8c2199332cece7ad0f329e562837ec2f73310b13063344a1a9ba31f2444ce6935bb9cc24740badf2749c579b5df5a -DIST firefox-91.13.0esr-fi.xpi 531484 BLAKE2B c166b2d10cd22a87fa96033218188d3c79f1f8a4163c3e6d2afc581b47b588211590fc9acad2315d3133bca1927c90eead9a21a418ddc2a2333c88bc8afa98c9 SHA512 03746ffb488e09cf7b6b7b32f1c962bccbdbaf0dae433517a1cca1609210928f5f3fa438c9f9c7a86bebdb8502df420496f4b8e1cb07212b4d42046faeb99b96 -DIST firefox-91.13.0esr-fr.xpi 557617 BLAKE2B 3acc76017f989bc9e2aa8b2e9f310b39abbdee7c8b40c76691683f8b56887fa73bded6a5d0c3f93cebe8fb3563db256c30fa605e36847bc0ba53fb65ac732a06 SHA512 6d63ae25a96abfb61b31bc7d40c7544a748c4bc8b4d4184787f45b712d371b39813e2e3ed7027732902109a4861af68b433cd46ba3c70a562b369720c5f0b474 -DIST firefox-91.13.0esr-fy-NL.xpi 543305 BLAKE2B ee0719ae8a65a38ae8a2b3ea30f139e5d7fe1c5590a98b0f2be6eaa9976e2e40007e430f1ea3841aaf8b257bc192252d0f716dfb58aeeef73c64405aa2b5053b SHA512 56399b8596a100bc43f1ca6f5e84a78c3891ea61d0353863c44e1e0e5d161ad2b874ea3c991a4531a66007375a067a1f66dc825539e2b9f7a468877eb673d834 -DIST firefox-91.13.0esr-ga-IE.xpi 459833 BLAKE2B b6c09bf669e6f0cfee2e080b24ae24bcbdc954e77859d8ec93e92514d294d199681c992ace4b51482e288b429282193e3351d25ee92dfcee88f24692c2b01693 SHA512 6517f3db9ce1236fe95747695996d59dfdc249a28e8461b5ffdfc4e5bd6232fb9712199ac3c8d0b09a5ae12a19f222dbec08471b9a6ce22a15a6d05c13c5e689 -DIST firefox-91.13.0esr-gd.xpi 530852 BLAKE2B 75c49bb13c300b59041247860940092c4b3ef6fcf1d500cd8ca26e04fa75525a1f0e1e555a4be1010ead41caa280bfe09bdbb4e880ffd67021efe4287d6aa32a SHA512 9b72673c9899df87ed093d86e1505084e32055d9f6b9cf6c2c86ba72775937c7c155a240745115eb07d10605eae7ad8bfd4e99787ea82b77d689dc6656500ceb -DIST firefox-91.13.0esr-gl.xpi 541304 BLAKE2B 32a62771acba1bacd794758dc64a64e783fd0e046771714a1ea253d15f1d12d90066bc7a6223ff7b05c1922ad16288dea1090509cc4ab1378c066a83cfe8d7c1 SHA512 989b2ec058ffeb6d5bb9d6148e72469b8ef77a0dbed23fcac8310762abe54686cd129a357f6e9b8b03271b64b300fa581a5675473d95b34c6b37ba4deb7d0704 -DIST firefox-91.13.0esr-gn.xpi 557596 BLAKE2B 7e57206c1b09e29477179fa1ea6880b38f09c24efdb3ab30dbf70e8be083b8d0c749a502e63116e517c2540466b0b706c259b64291af6e012c966887535ba55c SHA512 2c00601715a706a7793318f182af6ebf988229680f4618dde818617ecf45e17ebbd65a1d746e373374ed8ee638695223a3de13472dd36579e99b6d25bdd4c220 -DIST firefox-91.13.0esr-gu-IN.xpi 529544 BLAKE2B 4eec19b70b20e188a819edfe412fe006aae41f38578bf64b225b05daeacd16716604be3a62cffd561ca76a17e01e919ce39fddfc160914813b22c26417510816 SHA512 621a348303a67ab1805c0c5ad5de73f824e841832a37c59b13fa87ed95bf3953584baa2e839047e21a453c8bd7efa241dca0d0afb351f69de3a42ca4a063dab5 -DIST firefox-91.13.0esr-he.xpi 557199 BLAKE2B 3a0a7bf4dc63efd5a4010b8dba490955c2cc8afcee4d3683287fb7be981c3d995f1c60922f0f7309c459650593bcc44753fb7433d0e6fd00f8cdae0967e7ff94 SHA512 76e860db3c88c438fbf712a497554276d489b42f9b0019464ad6519a5861472f465a8325e19efffc2eac040d7f10ec37c4ac0bf800937f4387bfe18f56cc4966 -DIST firefox-91.13.0esr-hi-IN.xpi 560656 BLAKE2B 0f1e52f755d17560d2e604a6320e392da8ab3b1d2decc13fa88bb9f35355104337e668e2cd28c7c47daf3cc18b98dfa5b186c37477ccd51ecde5ed49e1f20b69 SHA512 1d7576f43b18bcb2a50ff00705444cb695f180d4c718e6718d98e4bda59a9900a88da9cd7184098512bc4f5afc4f6ff859f172f4111e0f0cd754f45d68eea25b -DIST firefox-91.13.0esr-hr.xpi 530056 BLAKE2B 79ae53fb0f9b023d327100b4c40c0896e964d0d561516f5923a0a770811de35f678c9be655a1a0839e42cafdc638e505ccea499f72b6533075fe17eb5e5d947d SHA512 018d08acb39e9d6c472f58f7d502a995d8aef81cc4b3536e5aad94726631f4071cdab5330a2395e79fdd59df0160cee34b397d82fb1c2cddd9313868581121d6 -DIST firefox-91.13.0esr-hsb.xpi 562631 BLAKE2B 2e64d6e996839910d90f666606355e952c4bbc2ac6c5f73003ecd4ad0511370226a751f26238c8c5ee491496ecff99b995c32409508ecf2e389863bfe2023729 SHA512 b3891ec1a7066d6f8b51c4d3edd83390f9e82c6f6ed9d1fec6bdb8cf989fba0ba31dd409d58609db8825006d21409ca7649d79425faab2a8c8f1a84d2ee494f7 -DIST firefox-91.13.0esr-hu.xpi 566077 BLAKE2B 0f1ec32cb992f4310a1c2b9c75a020746094dd0ffdee1d4dfd100f28f3a87fb95cd699978782ea8db0518b4019e376d402fd041c1372362abedc5e0985a7fe1e SHA512 ff6978f6a908b58e0d25d4f2b605de743f2d3b5e18569904400e3bb521d77b6f5ea641d5b7125bbd52e9dad6c8d77ecfc19d0b0e96671de6b1801f628101efde -DIST firefox-91.13.0esr-hy-AM.xpi 579766 BLAKE2B bf7c7f5854dced733bda8d66a07b5bfb4217f0872f8bbb6d4949314da68969b798354e0d267f244654aa3316a7919cba51ce564c63d4a2dd7bffec2467c51a3f SHA512 7ca2a30c3b331e1c47f314d27430e30f042d7765dd82557cea2ad838555b4e5d41304bc251398865533c6dc02ce3e7238c881b3e0df6c1decd3181c09211e84b -DIST firefox-91.13.0esr-ia.xpi 532150 BLAKE2B 6a84af573de80a57e883ea08f5dcd39c07a1fb96a93948014ba3c1a6daee97d10def51de0817031cbd00b5a6f84c16cdc9351cc7797e3bc6efbcbf47fdfb24f8 SHA512 4c94b12bcb35900e588322dde1b77bfb1dcc4347d389b6ee896a73c0647f1c1d592d7cb8aebfe1a3947dcf3ca61a34dbc83dedef64e87a3a0c06b69a52997f59 -DIST firefox-91.13.0esr-id.xpi 519829 BLAKE2B 63bec85e56cc7d3794a7eac11a2e2ee1da2742cea3101b1a9ba67b6ab422c7ce8ba787ebc30869feeada692cc5c2b48125288a1c560b73ca991faa14bd880f50 SHA512 0cf09caeb860e8cf76ca30c74f1c27e0345b601617b6f1982e618f6f094c4d2f57bf81d2b91b2a8ec35f59ffde515f5616d60c12c27bea63737d2f334c1e094c -DIST firefox-91.13.0esr-is.xpi 470229 BLAKE2B a7801c61d1411918c4a24ed87f1102c9ff5e6fb69c60f9d811f5cdc1941929c569f56cb566b910459c0201ed58dda4daf9bcd348f424dc39d8c7a4e0565ef8bb SHA512 220d3bb7065102ae101ad48e8a4e069b8b0036ddf80f5c21b97709ec2625b71f3bf735af992d7c373f717306857757ecaba6426ba1b44ae633afca27193a4e58 -DIST firefox-91.13.0esr-it.xpi 459091 BLAKE2B c71b280b3e5da33873d3b35b69b7e981003d814cd3cc89bbc1aade3301d3440665c6ffaaf7d285b0ab2454ddee54f599df7bcc6c506b33e37765b26a8e72d7f8 SHA512 87041afcbef526c4c49609d7924c51802a39cddfa809843828dfe54c65a7079e76098ec816676c5015366204dd30f9fb70dd4726ac58098a971345a274696632 -DIST firefox-91.13.0esr-ja.xpi 588081 BLAKE2B f8fcd4e422fef752e45ef4808e32aa66670ab94fbe629e489410bae132d85425518b0e94ed3bf5be0ce4e5a549026ce16e3063fdec7ae93594444b62284a28c6 SHA512 5a9ebf1f8fe7ad3179bd643252cf3c4e63c0b9a591cbc068c6d02ab2aeec74cf5a72a59601e1dd2f3bce3f2f0ffca4f89799c1451dd767ac51ba2d824a4bca65 -DIST firefox-91.13.0esr-ka.xpi 592244 BLAKE2B b32f816643599cfa4ff8c8267200801535266475fec6ee9af6eea14d251e11cfd4b63775ab72d243050cf49a50deba3fce865b72882066f195976df8a10b5f43 SHA512 d73a3c14c28a3141fdecef71b2333ba937622d77cf99b14b30c22fe7ec92dfc42ffaf9310b61864caaec312830f2e63e3f9b9723abea8a8dbb5607f5f2d8ea0d -DIST firefox-91.13.0esr-kab.xpi 545020 BLAKE2B 192c91966c760d87b77521d4f614d73f7f36e1dcdc807a6790c668bbe1deccaac4b7b7ec4a060f0214117d500c74fba647da815774d873650910676d75c5a19f SHA512 23c90274e66dfafa1f451164cd7a657f5d3bd891c8a50b0d4371df7998c33a6c032af331a3277bc6f4cce44dac12fca71ca9c91f77604677728212b29da326d2 -DIST firefox-91.13.0esr-kk.xpi 605546 BLAKE2B 75fb7c7c409befa552001ce4f01d1b9dc483158c350bb25e199c923e960296f973124ed332b35d40f0fb6d0b70df8bef2c5896b2e748571b4b748b448ef98a11 SHA512 ea265a34f76af51f11b2dfbcdfbd909974fd2bb0309bdc48b3cb5000be477058772ad18630011facc8bb2f68e5930bd79325808251eb66381ba558eb9b92fd50 -DIST firefox-91.13.0esr-km.xpi 533113 BLAKE2B d3c2de9bdf3caa72e026aedaff3a5b9e209ad54c71921fae945a8694baf5309329087bdf32f09b3413d166e2d594b57e4c86cac718f0bb5c4dc033f499b0cba4 SHA512 7d043b5eb1124f63b89c6c5fdc76cbc3287879baa11e1428ca9d5fc06d9b3c7bffaec6c7ff798d1215574a268f89673e105eb465d7a754e73ac9698d1ce5bf68 -DIST firefox-91.13.0esr-kn.xpi 498978 BLAKE2B 8e5b676cbfad2f08ab5b1b688e65e799b10c0966e21404d36e39b632ef7bd11e3134fec6821f64112b5e619c616207291e6a505d07c251fe198dcde648b0f6b5 SHA512 e8bf3fd103b81f208740a8a934e3b941b0530334ec65cd653ab84af6c9509d5a1bac1a1be5eb983ddf69607c0172eee87f46104b179de9a0adb97a17b64a52d2 -DIST firefox-91.13.0esr-ko.xpi 579063 BLAKE2B 1b8a27020b23eb2958ddcfb596fb23f28c12bedaa7e3d9d73096e62e01c48dd93ab702e4c5a2fcc81f0fbd422f2031c8c44ff686e2f1c227ba009056b1c8e061 SHA512 78c1162a1ca76eaa7393088cd26e13a782e2d6cdd90f6bdd762e2fa2f4e77bf2f4fcfc67f25ecca44663c42997759a9242f5ed6ec68717bdb926cbcaba36d400 -DIST firefox-91.13.0esr-lij.xpi 470176 BLAKE2B 5762ba0e15386fcac487506e40bec130139f8ef373d2ac4b4a02b240dd64ce805c86817d48009338a722f60a2afb37348ca67d013260d7346e7b39cdf64b95b6 SHA512 3084b7301bdaec7cdc1bef9918e5a1066f98e2447f26d4798f837ad879d6029b43be73facc327121fe35512c557bfefcd7301b05699aeb721ac9b5c1b5efd35f -DIST firefox-91.13.0esr-lt.xpi 560119 BLAKE2B 6babe37fb047aa3b4dfec8c2d6e3c8a7ee94bbbf31d567e4f45f7f2c31f21e3a1b0c91c5586503c99bda1155078e973cbe7edfff6338973b9fc5055b0f342ef8 SHA512 015ea53316ae16b778af4efbae82fcf4df9ed794c7e39a5c5ccc7d7e9cc5b80872a15d876901760e47dab1461588dba5e9fb2c47abd5982c96c4b2f6103ab987 -DIST firefox-91.13.0esr-lv.xpi 462457 BLAKE2B eb8c5e6e65e54c6dd5c6d48607dab9a968568c878696b4cb67d1d5c57f8e495bac210dbde231cd59887c077f7de60423c7b9e5a7118b01483d4d3100fed3a1f3 SHA512 7dbf0ba338c4b0b237cc857e87c487126c20c6b8e547e4b4a6a688e6c5415121b27a101a15901818754d7899a8b69bb98160dd776761ed043b0881b59e492a55 -DIST firefox-91.13.0esr-mk.xpi 465351 BLAKE2B b2777a900b87a51102aafff3f06f10a0aa0d55d96ecf017407e3e91e30e734a9a4321f60601351cf48d491891d84914fa1e4c1a9bbbdd3e68ebdd6f510dc1015 SHA512 c711d748049541e8e625a6cc99a1922ea9aa74c1cabc560e2ea56a26cfd80b60b3ffe68a1348acf957aebc6e6532fb8f9fa9a82a8a1b8cb5df23cc4eb2795945 -DIST firefox-91.13.0esr-mr.xpi 532121 BLAKE2B 8be2589c99bf3aa4fa5404ad52d31cfab0612a7b79c9a07c10d067669ebc758b0d03eb2738656b1c723ff489c725993f2d396928d76154268a0139a31e1fd11e SHA512 96b5e75c334912604cbd0b7b1facce258fdac4423c26de57d85f286479b4f7a89d5b308b9c9cf1c730bbd8736770f908c62c6d9ae2a8692534191866f720c29a -DIST firefox-91.13.0esr-ms.xpi 447336 BLAKE2B 9d0d5b302c442bbec30c2de7d504e6379c739a0ef6d9a7009a6179ab1e5987ce2dee8058c94c59359afc186a56227bc96cf601f56a24cdd2e3d25988a269008b SHA512 47ab282d76ba96711944133508a8e3772895908b8201f635f76d4026eb90768f512ebd0b38110bd46f352fafd299061e8a67db855fe9590a54ce382e61650a17 -DIST firefox-91.13.0esr-my.xpi 516294 BLAKE2B 1f8dab25f5cb9473b1e5852a7c44322d9b264b057d65869b7423399aa82f9d15ae5e1d8adfbdf5f4d42547030a6f820bae8dfef1d25556fef9b5372b9cbb2b85 SHA512 4f38020879ba3d81105f9842ab7bee54f42a5661661dfd21c2dd4e7525b7ce8d772031f2308d155af6aa102222f3cfe97fef20ed70a8dc2e71184f83d2bd5401 -DIST firefox-91.13.0esr-nb-NO.xpi 529429 BLAKE2B 4a5c123c51378716c261fa8e0faea3295b38ed686948be02c807e4b18f31e07ebbe84be04dc95f09c49a95304bf949129d7f757f179ae237847d6b99e01c3234 SHA512 a2509c58d8f9c15e01c0cc63ce50aae51542330049cde6af229777648bdff61a7eafd41750ffad81d8fe1cc906da4da68a2996e03caf089c5faf785c9b974030 -DIST firefox-91.13.0esr-ne-NP.xpi 485211 BLAKE2B 1ad16fc443f6c69bbf324a69ae2cb133ba96f1315625daf6b4af75d670980ab8ac010c6a89da1aadde687323259f3f506dce544986013536675e01db876948eb SHA512 cb89fd53a3460c7ece9daacda242ec0c9995c7745d6159ab2f49ffc174eeeebbdca48094db2e3310515b4d8181135f052a3d5449b44003e7b067ab0c3704ca7a -DIST firefox-91.13.0esr-nl.xpi 537382 BLAKE2B 049a896deb0ac73a055224371b948929a810810033b4013c22e13d1c5caf57d63259ea6c51ce6c47b56b0884f6c76ed67779dc945957b3a4398632e3820f95e5 SHA512 698a8143b7d2239b0ccdf46a150937c2403ab68724b5ac3457210f465cdd4ee3e999f41c3af6c462c63deb083968c92eb7001fa9f1d9a0e2d1704a6dc9ba5903 -DIST firefox-91.13.0esr-nn-NO.xpi 531679 BLAKE2B ec2034022158a2f88fe368ec07be0d8dbbe40d9999b6a8ce31904092e5eba5c47c7069edfb7f165a2197a06d9d6c8dc3ec9102fc9e9157bea13f7618b32a0707 SHA512 7bd12e16ae9edbeba7ac56e7394bf60e0670d3eb4be1e5f22a7dffe6395b56e78b7caa08eb2127187ffd0f6c0277c6cf6d3b47682860e55412461af2719c3eef -DIST firefox-91.13.0esr-oc.xpi 552964 BLAKE2B 48f3dbf777e048f49b38054c9cdd3503b4db724ef0fbb6a5b13780febb31f9c2a8fe51a16d1ea9950172fcbd15c3aa41366605da54e8dea671235c9a7ef44a74 SHA512 26788f788cfd497b1ee6d649b68605702a7c2fa726488f7a16369287de14b9a81a6b2a18cdee7f7dbd5ac9257a566bd9f2e9293b742f76ad814b8f25294583a0 -DIST firefox-91.13.0esr-pa-IN.xpi 595974 BLAKE2B bbdad97825f71685a70db69e1af92a648dfccb62127a33366185af9b12f9f8f28026db1f007d952fd72f03db915f626d9fa4dcfc06a5cf17957852529ed3cc23 SHA512 32062c982bfe64890353221221f6ff06fa8f0751c789c958c11cf7931b0dd6ab9ceb764e4e0b78e90988beaa2a845880bd572d0f2565b8e131f266041bc58f29 -DIST firefox-91.13.0esr-pl.xpi 555617 BLAKE2B 00dae5d262805b77d78e409f301e07bdc225326515d93a372cbd199dfc4a44d6531ae85d8ab6283245c49e26d4b2869f7553b6e85a354a64470f08b82a4fb0ed SHA512 dd076f21fa72d5ed79be42977230c90e7f92b4e87e6c95a289fd7a1c148d695702828cf2571601a26d6f3364b5fcfaad057d4946cbe33029ad3efea283fa0f5d -DIST firefox-91.13.0esr-pt-BR.xpi 542617 BLAKE2B bb65fbac1e31a33f6596600e0b98aada3397c27d778903a5f276bd77f23f999d56fe2b5fb5f0c445deddc2f0c5bcaef956f42ea625cfb8e3abe9d6a400549958 SHA512 a416dd4963ed9132c2b2e0979b4795d32f06a9ba2d1af7ccf3bd207941ebc3e7f0766e1eedcfa36b888913e7f8c6d09f9ace1b44883379f7ffebdf5020f63568 -DIST firefox-91.13.0esr-pt-PT.xpi 546342 BLAKE2B fcf7fc7f82675ebcabfc3241cb6482dc9cc9c092aab5657d8d2b73c8ba437c4f830e58dfb57ca215bb4924376779eaf8f9fd6396229eed53a1f4caa6b1c39a29 SHA512 6cfa09c3e05527466711f18bf05ec43429881d74c449863c2e8faefe8f1145fe5155bcb9d09f50b0012ae9959ac2ce61c4539451879b50d4adb6053c0a4d1968 -DIST firefox-91.13.0esr-rm.xpi 537364 BLAKE2B 66503e95a8a312ec4c8687f228c068382031161651df03556246e380bc75ce88251e0fb2a8d34b74274075861e4eb2dbf32bdd461f2fe36c57479f9c59c62748 SHA512 3c3cb3d9db5a3cfaef2c8c15df8b5a5991733ef2587cceeb3f995ab6bffc4a26c4c724ca3a1ed96b7d2fc796e205c584c5f330888e9e955f7fcce1847290447a -DIST firefox-91.13.0esr-ro.xpi 529330 BLAKE2B 643ea3aa3f4cf17150e462612721b340d919c4b1b2b44eb7bf0950469b20ba61f94dfc6bdc52559938f73b2b4cd735805e9d43b2bca7780dc63b3d4c05a5a81d SHA512 eda93f9616867366c401789ab37ca54acbc964b601f9972957676c7d421a85715ff2bc0cc00e9bc694185c9df8fc09bd38784a922f72b02fedfbeca3b56d9a2e -DIST firefox-91.13.0esr-ru.xpi 627117 BLAKE2B dfd394807094b8c6fd3486f7037c6a5eba0f1dbb4bc0146d3046ecb34041e816b3f7894c72251419a74f857a680a25654c79222d5478db168acfef268661b69a SHA512 768c6da81031487d2d3fe3810f20ecb1d2b9ee634263e3f1ca209ef4433ed3b402e679cbacb0e96e2f9671003219283ad4a9fc2341ce0ac6c3d5c8eb5cfd6569 -DIST firefox-91.13.0esr-sco.xpi 504852 BLAKE2B a81bf7b33185f8156e04ccbb2e62444ff94d06516f4f5e7312a63f7480920fa3de4d6a13a105e3a68c02271df379bf8c8ec44b2c8cfd682dd4ef483562e3df4a SHA512 92630be148f598973f555982dd17747b7764c2653b31ac59e72108adf38923c33b6a9902c2dfab5c738919bb5e8c9c90ff56dbbc866ce2a71cb2dd1972fb39fe -DIST firefox-91.13.0esr-si.xpi 487964 BLAKE2B aab283c4a909ca5b98eb837e840e3cdf2d54b4f7d6b150917c57dbade5f3544be2246f33121876d51b7577bfd25337615c355da267d56a9872de00e93bac2edd SHA512 cc1af012f2af35a667763aa044221a8de16320ea3f8f9da3ad62f0b81867080929e838765ddada10f07113eaf4c486c051adb25daed849d21b72bca60a299dab -DIST firefox-91.13.0esr-sk.xpi 566484 BLAKE2B 920964bd1bc1545eb38114f589e6eec0c6df52bbc475a189b5b4176ba715e3c8b425b7324e8165bdd8282552a808bd1a45b032528e67bf1a9cfb1d53d5bfa461 SHA512 50b59da5b54cc13523124f6a7e58404d41b0ff2813c7d4e4adf5c31ae5ae4a762f1571967a396b60a5f3a61bf450d4603cb2a03372f9abaab322f2a6a4f90f20 -DIST firefox-91.13.0esr-sl.xpi 538008 BLAKE2B 6dad7f28266a1adc3826a5eb8f1c5c82bca15e84983b7188e69c9b80f15d306f76e907baa2b02a8d5c0bdf7998d743b0667c9fb2045aca8ec239311a6d5202b3 SHA512 bbc9cb54426b773d14042d01c692f246594c12e1db37fcfc3734a4932d676143d298d83ae08ad6784a8005b5c5258f6336f8ae314f5465c1e21d1fc839544f34 -DIST firefox-91.13.0esr-son.xpi 425996 BLAKE2B c0d2d4050d2ebf7f2d2a5ec677bb9e382873924f4f21cdd1943e030c284ddbb74c632e2ae7e108a98f6963539e851bb9180584791a3acd157e60ac05add502af SHA512 21cffcd75867ca519a3347e9efdd82ca3c468de247210a9e859192dcf6334c9b9899a060ea50770c227d1af7f05fbae4ee70d056ef0e105695069a3887692d09 -DIST firefox-91.13.0esr-sq.xpi 556001 BLAKE2B 22804052c6441a58a65f1bf57cf9fed6222f30c1a3b26af27f0de8face4042594b752eb3b05f584b3b47434cced38611066ead52716fdc3c3bc32a3a727b454b SHA512 4d29f7fced0982bc1c1c250e34c3fc50347a0da122256502aafca045217edb3db19a70682767b438a9886d79774eb821c2692810b781a8d74c67f6b0bba80f47 -DIST firefox-91.13.0esr-sr.xpi 586076 BLAKE2B b8f68b1dfbb01bf10ea7e0f43941967d94c6eade9a1fd08edeee528cb5f156fa1e84281d387cf551c1fc22e16abc9a1b97c1891e3707b08b2f6e7e986770621b SHA512 6335cc7fef789b791ce352fe1ca22d5faa7ad554245fbbdd696e23b7cbb6e7b3dfae04b826cd17f0d66207ffe9dea2740729fb6794e362543ccfc126281ac8ac -DIST firefox-91.13.0esr-sv-SE.xpi 539962 BLAKE2B 5cefd5aafaa0cae413290bd679286a7b7190397f953922f6e4cf3d10583557fb99b143ba1e8e135172418097984e3d8b5d2c30bc0aa897e1e3507573e6fba215 SHA512 a657a1ad738b64ac1e943e54e4434ed62a778e6082e91447da8f0a89bd67d1493f15dccc7a6dbd2b2d33d27834fe137921072959680f75dd217db67f60fa0880 -DIST firefox-91.13.0esr-szl.xpi 509815 BLAKE2B 5e37f22a5629d0c5eb5113b7906d7bfa4c98a4fa074a43d2193d3ee5a69030686d0f36eb89a96f3776e084f938717cd47ae85a3997244d94712d46da831bae52 SHA512 81d63f5179864736ee8f4243d125ab1f3359ac02cabb65e5d5cf5fa88b2064ccd19693b7d59fca8cdcd0c8516b56d057f63f5d8f034c1d9d13f39b8f61f60250 -DIST firefox-91.13.0esr-ta.xpi 513819 BLAKE2B ea59af76cb7d02a6eff775dc46c075fd3cd6f33c6e4b880072714f87b0d08f7fb96584b699cf250c3d38e461881a38aa615cb18303ec1b1ef620fa0511dfd980 SHA512 64d18c128989c3906455d6e8398eceb4bbf2615efc7723330292ea3b43154a0cd630528f42a053435c749da69de3e9711c2d9c8739d3066f85f865d94df58d3e -DIST firefox-91.13.0esr-te.xpi 549962 BLAKE2B 636cd90f43fb3bd34a6b4e0517475b840ee4510d8d815b000bca09f540683cabb5a383a482e8b3264a9686a9d6568e4c5ff7e956217b312419a17d51aa706431 SHA512 b7b488aab7dffd34974cd32ada6debf43844c2c957361d728bb5776e0dba128191e22169210f18d0dd6541333bccb5220ec3eea5aa6c848ad46f2b06bab43606 -DIST firefox-91.13.0esr-th.xpi 607066 BLAKE2B 268b4bfc0b7bc1b9c5e2e8c7a39e5ceef2ce413648e57e72fcf46be4a29b53899e6bc0108d1006053b0009766c9231cb4fca1bc291e0552e787f4d04c84dc1fe SHA512 37a21a18b88c50f0e3524fa40e625d52e7b28c1dabebd4d75ec66b77774984079ae6317af074109fb652edfd765115135f10c1811a678e699ec7eeecda6c9d9d -DIST firefox-91.13.0esr-tl.xpi 516121 BLAKE2B d8c21f4fc3882f06162f6df8c443a5a3b8c36f75174508b84cfd9766c083bd72b8b1b958ad788dc299aa7cc8dff76daae5360abb66c4bb87d37ed45ad7998edb SHA512 92f77f91f0536600868182327ef33bde6e9d8cc16194818f3540e0721c652ddcc37f48969b3ed34e9b134f9b266ef975f0025c3e2e6bbe17b98a4be006afdb12 -DIST firefox-91.13.0esr-tr.xpi 553675 BLAKE2B 66dcd0eca6cfeae8fcbc733f08ec65d0e56a4c05caea28f0ee823ad90e9fbd14c36b950b40c081fd05a7a60f6c7f2e74492dcae1ead310ba9e2d7820a8934232 SHA512 f05f2bc52fc0a61f502fdb36eb098d15dec522098ae3991a44e5aa9c7aaf293cc67c288febf15908dce65696870dc0f68f5f52b8b14d76977b75f3ff0c2488ed -DIST firefox-91.13.0esr-trs.xpi 491086 BLAKE2B f6218f44a07ee2c54548dbab486fc0cbbc06334bc1b8b646870497d8efa41a80abc771338b26a7eb249f90fd6e613a2e03a31c76107158b1bbab532776908589 SHA512 fd69b897d000abab6de9ed67012de3cc9ed237c6067b6d30c17fe2786bbe447664f99fde7e203f62589410392e65c3adf310bc018129220b576087fdc9d1fb22 -DIST firefox-91.13.0esr-uk.xpi 620506 BLAKE2B 45112b82d28abfbf78aa9ded9e09bb530b370ef7832760b5d02d16f97792de5654f01810c9737580cbc7e0081012b8e4a0500d4c6cc12f5c7b24d031dfd1eebb SHA512 ebffa27fe6d4f8e1197a1d2b4f570cc8a64680725c33c3babf862a4b31430727db67b1281d3b88bcda8602adac5207ef9ee579f70dfdbc1c63ed8f6fb427beb7 -DIST firefox-91.13.0esr-ur.xpi 557309 BLAKE2B 48a1998617dba393690b01bba19ddfbec929d14421f27c3292f617edc3561f33a00cb62b19874d2b7c9ee1c2aff22e5bbca5b054fde8c5422da2fcc5d7c4d76a SHA512 890668f8b5062c98266d86817b9f8176d422b772b742b44323ff71b28672776e9dabefd94c1a917e2fd1fd8e58b7e705ef214d22bc05200bf8d8dd8354781c32 -DIST firefox-91.13.0esr-uz.xpi 466859 BLAKE2B a2c22d1497b51f1cfaeb8fc9b90fe51b3948f40d5afa6a75830a13f3924a874af166f604eaf5c1154b8792bba6b248dbb9edef8992c635c0dd309afe661fc87f SHA512 4e049105f284b880b174a0e148c21d7caf207c14a0f64358b111195937967b44a5870ba65f3cd3f5c4b3aca014d56304ce26548cabdbee41228b11ff1d035ab0 -DIST firefox-91.13.0esr-vi.xpi 573487 BLAKE2B 3b887c8550829640207e1e96deb1f40bfcd1a6a728199c9ee92d19dd5b742c8366fce0d449c54565caabda294643503a394371e04bde40165f07e656d8ec2650 SHA512 62472ad4f562f6d677338bae6a9a47ed8714af01deabd6ca501196c36dd316192f3095fb6525a3223a117638a7b2d5a856aca5c539d65268dbf946e8c5b9f0f2 -DIST firefox-91.13.0esr-xh.xpi 428180 BLAKE2B 20517a1e2631d00af75a30707773dd4a7201ae5f0f8460ec08eca93d874b541b3d0e67eb0073493404f5139713e50da8d9dd58f2021cbb876a970ebf75f505e4 SHA512 34632e068473a7c4c6c12fe5d7f390577e364c03371296a4839add1420960ce8be97e36347ea318ef1561cd143d513dbc50d94509369d33addb4b52fdacf9d34 -DIST firefox-91.13.0esr-zh-CN.xpi 575367 BLAKE2B eb11d145bf514a5c20fd8c8f9fa2b56abfffca3d8ba7bd9a17eed2a2bc9e41f4d2639d7de4c93bf0fa6db4af1c7924dd5a2ee8c9da78041f6d39388f0c0978c2 SHA512 209b0de0c33b1839852c15e3db17ef5f838f4d0943016528f45d9cd31b32af70fc60ddf4064529df33dfd74fb36141e9b11f3ced9b6f4287151e752b95aebb3a -DIST firefox-91.13.0esr-zh-TW.xpi 576229 BLAKE2B 44189d585fa0725a7aa1db911acc1d243a4fbe3bc69ef863fc3387b1d20b5e70f364dca850021b6a8532a8dc9651ce6b803a543ee5f4ab88cb0e14e263b97c57 SHA512 23b25460fbcd49921431c03b50aced2465181e7fbe7cd1595afeb5d9648a7736fa8d7b07f3215ef86f5d85b13b732d967aeaf9204f766b9ff60ce01e8fb969c9 -DIST firefox-91.13.0esr.source.tar.xz 380053584 BLAKE2B 75d0daa512b3a2d41974a0169778be9ef19a100de2bd382add9831860ca93976585a41e760b6a7ec753268fb78f9f61049780fa7961834248bc8157cfdcc2827 SHA512 38b4cc52de21e76d6061e6ba175e1cbfd888a16070aa951f5a44283f2db9d7e94f2504621f0da78feac6e71491a6d0e7038f63dd0ae112dcad700eb02e9aa516 -DIST firefox-91esr-patches-10j.tar.xz 18320 BLAKE2B ec882411eed19bafab8676e3d79f4ae43947bb97c44571c1497bb93a44fcfec99de06ebacbdf8c4944dcecdf949e4f684908d7ce4226cdcec60241e62e75810e SHA512 670a14d852bb74b9074c3fef9310650f71ce1c56314109c49aea02a7a69acc836af60a8beab11da53e21b10a8e6da341fcfa18b68a1dfd33b26978dd63758e9c -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 e718bf6668eb296b5f43388a15d44f0d542c4a6412a81a087d0478f91ac307211a30b3de58a8f1b3e25291a0245acf6958a0cc97c7ecd6be35e2e8a254da8931 SHA512 b5b08c2e7ab448328bdb5efa7599fd9dd5f3b7e5bb69ddd23a8f65c6da04a9eebfe316e8a248f318169c50eaa556f37ce3935ae5779f71723a886537e6198504 -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-102.2.0.ebuild b/www-client/firefox/firefox-102.2.0.ebuild deleted file mode 100644 index eead7ebd749a..000000000000 --- a/www-client/firefox/firefox-102.2.0.ebuild +++ /dev/null @@ -1,1274 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -FIREFOX_PATCHSET="firefox-102esr-patches-02j.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=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,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="esr" -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" - -REQUIRED_USE="debug? ( !system-av1 ) - pgo? ( lto ) - wifi? ( dbus )" - -# Firefox-only REQUIRED_USE flags -REQUIRED_USE+=" screencast? ( wayland )" - -FF_ONLY_DEPEND="!www-client/firefox:0 - !www-client/firefox:rapid - 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.63 - || ( - ( - 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.79.1 - >=dev-libs/nspr-4.34 - media-libs/alsa-lib - media-libs/fontconfig - media-libs/freetype - media-libs/mesa - media-video/ffmpeg - sys-libs/zlib - virtual/freedesktop-icon-theme - virtual/opengl - x11-libs/cairo[X] - x11-libs/gdk-pixbuf - x11-libs/gtk+:3[X] - x11-libs/libX11 - x11-libs/libXcomposite - x11-libs/libXdamage - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libXrandr - x11-libs/libXtst - x11-libs/libxcb:= - x11-libs/libxkbcommon[X] - x11-libs/pango - x11-libs/pixman - dbus? ( - dev-libs/dbus-glib - sys-apps/dbus - ) - jack? ( virtual/jack ) - libproxy? ( net-libs/libproxy ) - sndio? ( >=media-sound/sndio-1.8.0-r1 ) - 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? ( - 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 - ) - )" - -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} - x11-libs/libICE - x11-libs/libSM - pulseaudio? ( - || ( - media-sound/pulseaudio - >=media-sound/apulse-0.1.12-r4[sdk] - ) - )" - -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 - - if ver_test $(rustc -V | tr -cd '[0-9.]' | cut -d" " -f2) -ge "1.63"; then - ewarn "Rust-1.63 is currently unsupported for building Firefox-102." - ewarn "Please use 'eselect rust' to switch to a lower version, then resume" - ewarn "building Firefox." - die "Rust-1.63 detected. Use eselect rust to choose <1.63" - 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 - - 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 \ - --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 wayland ; then - mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland - 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 - - 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-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 -} diff --git a/www-client/firefox/firefox-104.0.2.ebuild b/www-client/firefox/firefox-104.0.2.ebuild deleted file mode 100644 index 24cea78da335..000000000000 --- a/www-client/firefox/firefox-104.0.2.ebuild +++ /dev/null @@ -1,1278 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -FIREFOX_PATCHSET="firefox-104-patches-02j.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 - || ( - ( - 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.81 - >=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 - # 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 \ - --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 -} diff --git a/www-client/firefox/firefox-105.0.ebuild b/www-client/firefox/firefox-105.0.ebuild deleted file mode 100644 index 30bb5fdcd1dd..000000000000 --- a/www-client/firefox/firefox-105.0.ebuild +++ /dev/null @@ -1,1287 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -FIREFOX_PATCHSET="firefox-105-patches-01j.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 -} diff --git a/www-client/firefox/firefox-91.13.0.ebuild b/www-client/firefox/firefox-91.13.0.ebuild deleted file mode 100644 index bbb4a12b57b8..000000000000 --- a/www-client/firefox/firefox-91.13.0.ebuild +++ /dev/null @@ -1,1236 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" - -FIREFOX_PATCHSET="firefox-91esr-patches-10j.tar.xz" - -LLVM_MAX_SLOT=14 - -PYTHON_COMPAT=( python3_{8..10} ) -PYTHON_REQ_USE="ncurses,sqlite,ssl" - -WANT_AUTOCONF="2.1" - -VIRTUALX_REQUIRED="pgo" - -MOZ_ESR=yes - -MOZ_PV=${PV} -MOZ_PV_SUFFIX= -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then - MOZ_PV_SUFFIX=${BASH_REMATCH[1]} - - # Convert the ebuild version to the upstream Mozilla version - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI -fi - -if [[ -n ${MOZ_ESR} ]] ; then - # ESR releases have slightly different version numbers - MOZ_PV="${MOZ_PV}esr" -fi - -MOZ_PN="${PN%-bin}" -MOZ_P="${MOZ_PN}-${MOZ_PV}" -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}" -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}" - -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \ - llvm multiprocessing pax-utils python-any-r1 toolchain-funcs \ - virtualx xdg - -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}" - -if [[ ${PV} == *_rc* ]] ; then - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}" -fi - -PATCH_URIS=( - https://dev.gentoo.org/~{juippis,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.24.0 - >=net-libs/nodejs-10.23.1 - virtual/pkgconfig - >=virtual/rust-1.51.0 - || ( - ( - sys-devel/clang:14 - sys-devel/llvm:14 - clang? ( - =sys-devel/lld-14* - pgo? ( =sys-libs/compiler-rt-sanitizers-14*[profile] ) - sys-devel/clang:14 - ) - ) - ( - sys-devel/clang:13 - sys-devel/llvm:13 - clang? ( - =sys-devel/lld-13* - pgo? ( =sys-libs/compiler-rt-sanitizers-13*[profile] ) - ) - ) - ) - amd64? ( >=dev-lang/nasm-2.13 ) - x86? ( >=dev-lang/nasm-2.13 )" - -COMMON_DEPEND=" - >=dev-libs/nss-3.68 - >=dev-libs/nspr-4.32 - dev-libs/atk - dev-libs/expat - >=x11-libs/cairo-1.10[X] - >=x11-libs/gtk+-3.4.0:3[X] - x11-libs/gdk-pixbuf - >=x11-libs/pango-1.22.0 - >=media-libs/mesa-10.2:* - media-libs/fontconfig - >=media-libs/freetype-2.4.10 - kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) ) - virtual/freedesktop-icon-theme - >=x11-libs/pixman-0.19.2 - >=dev-libs/glib-2.26:2 - >=sys-libs/zlib-1.2.3 - >=dev-libs/libffi-3.0.10:= - media-video/ffmpeg - x11-libs/libX11 - x11-libs/libxcb:= - x11-libs/libXcomposite - x11-libs/libXdamage - x11-libs/libXext - x11-libs/libXfixes - x11-libs/libXrender - x11-libs/libXt - dbus? ( - sys-apps/dbus - dev-libs/dbus-glib - ) - screencast? ( media-video/pipewire:= ) - system-av1? ( - >=media-libs/dav1d-0.8.1:= - >=media-libs/libaom-1.0.0:= - ) - system-harfbuzz? ( - >=media-libs/harfbuzz-2.8.1:0= - >=media-gfx/graphite2-1.3.13 - ) - system-icu? ( >=dev-libs/icu-69.1:= ) - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 ) - system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] ) - system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] ) - system-png? ( >=media-libs/libpng-1.6.35:0=[apng] ) - system-webp? ( >=media-libs/libwebp-1.1.0:0= ) - wifi? ( - kernel_linux? ( - sys-apps/dbus - dev-libs/dbus-glib - net-misc/networkmanager - ) - ) - jack? ( virtual/jack ) - selinux? ( sec-policy/selinux-mozilla ) - sndio? ( media-sound/sndio )" - -RDEPEND="${COMMON_DEPEND} - !www-client/firefox:0 - !www-client/firefox:rapid - jack? ( virtual/jack ) - openh264? ( media-libs/openh264:*[plugin] ) - pulseaudio? ( - || ( - media-sound/pulseaudio - >=media-sound/apulse-0.1.12-r4 - ) - ) - selinux? ( sec-policy/selinux-mozilla )" - -DEPEND="${COMMON_DEPEND} - x11-libs/libICE - x11-libs/libSM - pulseaudio? ( - || ( - media-sound/pulseaudio - >=media-sound/apulse-0.1.12-r4[sdk] - ) - ) - wayland? ( >=x11-libs/gtk+-3.11:3[wayland] ) - amd64? ( virtual/opengl ) - x86? ( virtual/opengl )" - -S="${WORKDIR}/${PN}-${PV%_*}" - -# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or -# overridden in the enviromnent (advanced hackers only) -if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then - MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm ) -fi - -llvm_check_deps() { - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then - einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if use clang ; then - if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then - einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - - if use pgo ; then - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2 - return 1 - fi - fi - fi - - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2 -} - -MOZ_LANGS=( - af ar ast be bg br ca cak cs cy da de dsb - el en-CA en-GB en-US es-AR es-ES et eu - fi fr fy-NL ga-IE gd gl he hr hsb hu - id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO - pa-IN pl pt-BR pt-PT rm ro ru - sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW -) - -# Firefox-only LANGS -MOZ_LANGS+=( ach ) -MOZ_LANGS+=( an ) -MOZ_LANGS+=( az ) -MOZ_LANGS+=( bn ) -MOZ_LANGS+=( bs ) -MOZ_LANGS+=( ca-valencia ) -MOZ_LANGS+=( eo ) -MOZ_LANGS+=( es-CL ) -MOZ_LANGS+=( es-MX ) -MOZ_LANGS+=( fa ) -MOZ_LANGS+=( ff ) -MOZ_LANGS+=( gn ) -MOZ_LANGS+=( gu-IN ) -MOZ_LANGS+=( hi-IN ) -MOZ_LANGS+=( hy-AM ) -MOZ_LANGS+=( ia ) -MOZ_LANGS+=( km ) -MOZ_LANGS+=( kn ) -MOZ_LANGS+=( lij ) -MOZ_LANGS+=( mk ) -MOZ_LANGS+=( mr ) -MOZ_LANGS+=( my ) -MOZ_LANGS+=( ne-NP ) -MOZ_LANGS+=( oc ) -MOZ_LANGS+=( sco ) -MOZ_LANGS+=( si ) -MOZ_LANGS+=( son ) -MOZ_LANGS+=( szl ) -MOZ_LANGS+=( ta ) -MOZ_LANGS+=( te ) -MOZ_LANGS+=( tl ) -MOZ_LANGS+=( trs ) -MOZ_LANGS+=( ur ) -MOZ_LANGS+=( xh ) - -mozilla_set_globals() { - # https://bugs.gentoo.org/587334 - local MOZ_TOO_REGIONALIZED_FOR_L10N=( - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE - ) - - local lang xflag - for lang in "${MOZ_LANGS[@]}" ; do - # en and en_US are handled internally - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then - continue - fi - - # strip region subtag if $lang is in the list - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then - xflag=${lang%%-*} - else - xflag=${lang} - fi - - SRC_URI+=" l10n_${xflag/[_@]/-}? (" - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi" - SRC_URI+=" )" - IUSE+=" l10n_${xflag/[_@]/-}" - done -} -mozilla_set_globals - -moz_clear_vendor_checksums() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -ne 1 ]] ; then - die "${FUNCNAME} requires exact one argument" - fi - - einfo "Clearing cargo checksums for ${1} ..." - - sed -i \ - -e 's/\("files":{\)[^}]*/\1/' \ - "${S}"/third_party/rust/${1}/.cargo-checksum.json \ - || die -} - -moz_install_xpi() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local DESTDIR=${1} - shift - - insinto "${DESTDIR}" - - local emid xpi_file xpi_tmp_dir - for xpi_file in "${@}" ; do - emid= - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}") - - # Unpack XPI - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die - - # Determine extension ID - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf") - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf" - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json") - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json" - else - die "failed to determine extension id" - fi - - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..." - newins "${xpi_file}" "${emid}.xpi" - done -} - -mozconfig_add_options_ac() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_add_options_mk() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 2 ]] ; then - die "${FUNCNAME} requires at least two arguments" - fi - - local reason=${1} - shift - - local option - for option in ${@} ; do - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG} - done -} - -mozconfig_use_enable() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_enable "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -mozconfig_use_with() { - debug-print-function ${FUNCNAME} "$@" - - if [[ ${#} -lt 1 ]] ; then - die "${FUNCNAME} requires at least one arguments" - fi - - local flag=$(use_with "${@}") - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}" -} - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has usersandbox $FEATURES ; then - die "You must enable usersandbox as X server can not run as root!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6400M" - fi - - check-reqs_pkg_pretend - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] ; then - if use pgo ; then - if ! has userpriv ${FEATURES} ; then - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!" - fi - fi - - # Ensure we have enough disk space to compile - if use pgo || use lto || use debug ; then - CHECKREQS_DISK_BUILD="13500M" - else - CHECKREQS_DISK_BUILD="6400M" - fi - - check-reqs_pkg_setup - - llvm_pkg_setup - - if use clang && use lto ; then - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }') - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}") - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!" - - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }') - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}") - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!" - - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}." - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:" - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version" - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version" - eerror " - Build ${CATEGORY}/${PN} without USE=lto" - eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole " - eerror " llvm/clang/lld/rust chain depending on your @world updates)" - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!" - fi - fi - - if ! use clang && [[ $(gcc-major-version) -eq 11 ]] \ - && ! has_version -b ">sys-devel/gcc-11.1.0:11" ; then - # bug 792705 - eerror "Using GCC 11 to compile firefox is currently known to be broken (see bug #792705)." - die "Set USE=clang or select <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_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 - CC=${CHOST}-clang - CXX=${CHOST}-clang++ - NM=llvm-nm - RANLIB=llvm-ranlib - elif ! use clang && ! tc-is-gcc ; then - # Force gcc - have_switched_compiler=yes - einfo "Enforcing the use of gcc due to USE=-clang ..." - AR=gcc-ar - CC=${CHOST}-gcc - CXX=${CHOST}-g++ - NM=gcc-nm - RANLIB=gcc-ranlib - fi - - if [[ -n "${have_switched_compiler}" ]] ; then - # Because we switched active compiler we have to ensure - # that no unsupported flags are set - strip-unsupported-flags - fi - - # Ensure we use correct toolchain - export HOST_CC="$(tc-getBUILD_CC)" - export HOST_CXX="$(tc-getBUILD_CXX)" - tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG - - # Pass the correct toolchain paths through cbindgen - if tc-is-cross-compiler ; then - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}" - fi - - # Set MOZILLA_FIVE_HOME - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - - # python/mach/mach/mixin/process.py fails to detect SHELL - export SHELL="${EPREFIX}/bin/bash" - - # Set state path - export MOZBUILD_STATE_PATH="${BUILD_DIR}" - - # Set MOZCONFIG - export MOZCONFIG="${S}/.mozconfig" - - # Initialize MOZCONFIG - mozconfig_add_options_ac '' --enable-application=browser - - # Set Gentoo defaults - export MOZILLA_OFFICIAL=1 - - mozconfig_add_options_ac 'Gentoo default' \ - --allow-addon-sideload \ - --disable-cargo-incremental \ - --disable-crashreporter \ - --disable-install-strip \ - --disable-strip \ - --disable-updater \ - --enable-official-branding \ - --enable-release \ - --enable-system-ffi \ - --enable-system-pixman \ - --host="${CBUILD:-${CHOST}}" \ - --libdir="${EPREFIX}/usr/$(get_libdir)" \ - --prefix="${EPREFIX}/usr" \ - --target="${CHOST}" \ - --without-ccache \ - --with-intl-api \ - --with-libclang-path="$(llvm-config --libdir)" \ - --with-system-nspr \ - --with-system-nss \ - --with-system-zlib \ - --with-toolchain-prefix="${CHOST}-" \ - --with-unsigned-addon-scopes=app,system \ - --x-includes="${ESYSROOT}/usr/include" \ - --x-libraries="${ESYSROOT}/usr/$(get_libdir)" - - # Set update channel - local update_channel=release - [[ -n ${MOZ_ESR} ]] && update_channel=esr - mozconfig_add_options_ac '' --update-channel=${update_channel} - - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then - mozconfig_add_options_ac '' --enable-rust-simd - fi - - if [[ -s "${S}/api-google.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-safebrowsing-api-keyfile="${S}/api-google.key" - else - einfo "Building without Google API key ..." - fi - - if [[ -s "${S}/api-location.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-google-location-service-api-keyfile="${S}/api-location.key" - else - einfo "Building without Location API key ..." - fi - - if [[ -s "${S}/api-mozilla.key" ]] ; then - local key_origin="Gentoo default" - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then - key_origin="User value" - fi - - mozconfig_add_options_ac "${key_origin}" \ - --with-mozilla-api-keyfile="${S}/api-mozilla.key" - else - einfo "Building without Mozilla API key ..." - fi - - mozconfig_use_with system-av1 - mozconfig_use_with system-harfbuzz - mozconfig_use_with system-harfbuzz system-graphite2 - mozconfig_use_with system-icu - mozconfig_use_with system-jpeg - mozconfig_use_with system-libevent system-libevent "${ESYSROOT}/usr" - mozconfig_use_with system-libvpx - mozconfig_use_with system-png - mozconfig_use_with system-webp - - mozconfig_use_enable dbus - - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme - - mozconfig_use_enable geckodriver - - if use hardened ; then - mozconfig_add_options_ac "+hardened" --enable-hardening - append-ldflags "-Wl,-z,relro -Wl,-z,now" - fi - - mozconfig_use_enable jack - - mozconfig_use_enable pulseaudio - # force the deprecated alsa sound code if pulseaudio is disabled - if use kernel_linux && ! use pulseaudio ; then - mozconfig_add_options_ac '-pulseaudio' --enable-alsa - fi - - mozconfig_use_enable sndio - - mozconfig_use_enable wifi necko-wifi - - if use wayland ; then - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland - else - mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3 - fi - - if use lto ; then - if use clang ; then - # Upstream only supports lld when using clang - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld - - mozconfig_add_options_ac '+lto' --enable-lto=cross - else - # ld.gold is known to fail: - # /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.1/../../../../x86_64-pc-linux-gnu/bin/ld.gold: internal error in set_xindex, at /var/tmp/portage/sys-devel/binutils-2.37_p1-r1/work/binutils-2.37/gold/object.h:1050 - - # ThinLTO is currently broken, see bmo#1644409 - mozconfig_add_options_ac '+lto' --enable-lto=full - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd - fi - - if use pgo ; then - mozconfig_add_options_ac '+pgo' MOZ_PGO=1 - - if use clang ; then - # Used in build/pgo/profileserver.py - export LLVM_PROFDATA="llvm-profdata" - fi - fi - else - # Avoid auto-magic on linker - if use clang ; then - # This is upstream's default - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld - else - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd - fi - fi - - # LTO flag was handled via configure - filter-flags '-flto*' - - mozconfig_use_enable debug - if use debug ; then - mozconfig_add_options_ac '+debug' --disable-optimize - else - if is-flag '-g*' ; then - if use clang ; then - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*') - else - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols - fi - else - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols - fi - - if is-flag '-O0' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0 - elif is-flag '-O4' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4 - elif is-flag '-O3' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3 - elif is-flag '-O1' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1 - elif is-flag '-Os' ; then - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os - else - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2 - fi - fi - - # Debug flag was handled via configure - filter-flags '-g*' - - # Optimization flag was handled via configure - filter-flags '-O*' - - # Modifications to better support ARM, bug #553364 - if use cpu_flags_arm_neon ; then - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon - - if ! tc-is-clang ; then - # thumb options aren't supported when using clang, bug 666966 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \ - --with-thumb=yes \ - --with-thumb-interwork=no - fi - fi - - if [[ ${CHOST} == armv*h* ]] ; then - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard - - if ! use system-libvpx ; then - sed -i \ - -e "s|softfp|hard|" \ - "${S}"/media/libvpx/moz.build \ - || die - fi - fi - - if use clang ; then - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64') - local disable_elf_hack= - if use amd64 ; then - disable_elf_hack=yes - elif use x86 ; then - disable_elf_hack=yes - elif use arm ; then - disable_elf_hack=yes - fi - - if [[ -n ${disable_elf_hack} ]] ; then - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack - fi - elif tc-is-gcc ; then - if ver_test $(gcc-fullversion) -ge 10 ; then - einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..." - append-cxxflags -fno-tree-loop-vectorize - fi - fi - - # Additional ARCH support - case "${ARCH}" in - arm) - # Reduce the memory requirements for linking - if use clang ; then - # Nothing to do - :; - elif tc-ld-is-gold || use lto ; then - append-ldflags -Wl,--no-keep-memory - else - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads - fi - ;; - esac - - if ! use elibc_glibc ; then - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc - fi - - # Allow elfhack to work in combination with unstripped binaries - # when they would normally be larger than 2GiB. - append-ldflags "-Wl,--compress-debug-sections=zlib" - - # Make revdep-rebuild.sh happy; Also required for musl - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags - - # Pass $MAKEOPTS to build system - export MOZ_MAKE_FLAGS="${MAKEOPTS}" - - # Use system's Python environment - export MACH_USE_SYSTEM_PYTHON=1 - export PIP_NO_CACHE_DIR=off - - # Disable notification when build system has finished - export MOZ_NOSPAM=1 - - # Portage sets XARGS environment variable to "xargs -r" by default which - # breaks build system's check_prog() function which doesn't support arguments - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs" - - # Set build dir - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}" - - # Show flags we will use - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}" - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}" - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}" - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}" - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}" - - # Handle EXTRA_CONF and show summary - local ac opt hash reason - - # Apply EXTRA_ECONF entries to $MOZCONFIG - if [[ -n ${EXTRA_ECONF} ]] ; then - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!} - for opt in "${ac[@]}"; do - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--} - done - fi - - echo - echo "==========================================================" - echo "Building ${PF} with the following configuration" - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do - [[ -z ${hash} || ${hash} == \# ]] \ - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}" - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}" - done - echo "==========================================================" - echo - - ./mach configure || die -} - -src_compile() { - local virtx_cmd= - - if use pgo ; then - virtx_cmd=virtx - - # Reset and cleanup environment variables used by GNOME/XDG - gnome2_environment_reset - - addpredict /root - fi - - local -x GDK_BACKEND=x11 - - ${virtx_cmd} ./mach build --verbose \ - || die -} - -src_install() { - # xpcshell is getting called during install - pax-mark m \ - "${BUILD_DIR}"/dist/bin/xpcshell \ - "${BUILD_DIR}"/dist/bin/${PN} \ - "${BUILD_DIR}"/dist/bin/plugin-container - - DESTDIR="${D}" ./mach install || die - - # Upstream cannot ship symlink but we can (bmo#658850) - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin - - # Don't install llvm-symbolizer from sys-devel/llvm package - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die - fi - - # Install policy (currently only used to disable application updates) - insinto "${MOZILLA_FIVE_HOME}/distribution" - newins "${FILESDIR}"/distribution.ini distribution.ini - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json - - # Install system-wide preferences - local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences" - insinto "${PREFS_DIR}" - newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js - - local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js" - - # Set dictionary path to use system hunspell - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref" - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell"); - EOF - - # Force hwaccel prefs if USE=hwaccel is enabled - if use hwaccel ; then - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \ - >>"${GENTOO_PREFS}" \ - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js" - fi - - if ! use gmp-autoupdate ; then - local plugin - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do - einfo "Disabling auto-update for ${plugin} plugin ..." - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin" - pref("media.${plugin}.autoupdate", false); - EOF - done - fi - - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it - if use system-harfbuzz ; then - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref" - sticky_pref("gfx.font_rendering.graphite.enabled", true); - EOF - fi - - # Install language packs - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') ) - if [[ -n "${langpacks}" ]] ; then - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}" - fi - - # Install geckodriver - if use geckodriver ; then - einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..." - pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver - exeinto "${MOZILLA_FIVE_HOME}" - doexe "${BUILD_DIR}"/dist/bin/geckodriver - - dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver - fi - - # Install icons - local icon_srcdir="${S}/browser/branding/official" - local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg" - - insinto /usr/share/icons/hicolor/symbolic/apps - newins "${icon_symbolic_file}" ${PN}-symbolic.svg - - local icon size - for icon in "${icon_srcdir}"/default*.png ; do - size=${icon%.png} - size=${size##*/default} - - if [[ ${size} -eq 48 ]] ; then - newicon "${icon}" ${PN}.png - fi - - newicon -s ${size} "${icon}" ${PN}.png - done - - # Install menu - local app_name="Mozilla ${MOZ_PN^}" - local desktop_file="${FILESDIR}/icon/${PN}-r3.desktop" - local desktop_filename="${PN}.desktop" - local exec_command="${PN}" - local icon="${PN}" - local use_wayland="false" - - if use wayland ; then - use_wayland="true" - fi - - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die - - sed -i \ - -e "s:@NAME@:${app_name}:" \ - -e "s:@EXEC@:${exec_command}:" \ - -e "s:@ICON@:${icon}:" \ - "${WORKDIR}/${PN}.desktop-template" \ - || die - - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}" - - rm "${WORKDIR}/${PN}.desktop-template" || die - - # Install wrapper script - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}" - newbin "${FILESDIR}/${PN}-r1.sh" ${PN} - - # Update wrapper - sed -i \ - -e "s:@PREFIX@:${EPREFIX}/usr:" \ - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \ - -e "s:@APULSELIB_DIR@:${apulselib}:" \ - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \ - "${ED}/usr/bin/${PN}" \ - || die -} - -pkg_preinst() { - xdg_pkg_preinst - - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse - # does not need to be forced into the LD_LIBRARY_PATH - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then - einfo "APULSE found; Generating library symlinks for sound support ..." - local lib - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do - # A quickpkg rolled by hand will grab symlinks as part of the package, - # so we need to avoid creating them if they already exist. - if [[ ! -L ${lib##*/} ]] ; then - ln -s "${lib}" ${lib##*/} || die - fi - done - popd &>/dev/null || die - fi -} - -pkg_postinst() { - xdg_pkg_postinst - - if ! use gmp-autoupdate ; then - elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or" - elog "installing into new profiles:" - local plugin - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do - elog "\t ${plugin}" - done - elog - fi - - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then - elog "Apulse was detected at merge time on this system and so it will always be" - elog "used for sound. If you wish to use pulseaudio instead please unmerge" - elog "media-sound/apulse." - elog - fi - - local show_doh_information - local show_normandy_information - local show_shortcut_information - - if [[ -z "${REPLACING_VERSIONS}" ]] ; then - # New install; Tell user that DoH is disabled by default - show_doh_information=yes - show_normandy_information=yes - show_shortcut_information=no - else - local replacing_version - for replacing_version in ${REPLACING_VERSIONS} ; do - if ver_test "${replacing_version}" -lt 91.0 ; then - # Tell user that we no longer install a shortcut - # per supported display protocol - show_shortcut_information=yes - fi - done - fi - - if [[ -n "${show_doh_information}" ]] ; then - elog - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):" - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all" - elog "DNS traffic to Cloudflare by default is not a good idea and applications" - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5" - elog "(\"Off by choice\") by default." - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences." - fi - - # bug 713782 - if [[ -n "${show_normandy_information}" ]] ; then - elog - elog "Upstream operates a service named Normandy which allows Mozilla to" - elog "push changes for default settings or even install new add-ons remotely." - elog "While this can be useful to address problems like 'Armagadd-on 2.0' or" - elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security" - elog "concerns prevail, which is why we have switched off the use of this" - elog "service by default." - elog - elog "To re-enable this service set" - elog - elog " app.normandy.enabled=true" - elog - elog "in about:config." - fi - - if [[ -n "${show_shortcut_information}" ]] ; then - elog - elog "Since ${PN}-91.0 we no longer install multiple shortcuts for" - elog "each supported display protocol. Instead we will only install" - elog "one generic Mozilla ${PN^} shortcut." - elog "If you still want to be able to select between running Mozilla ${PN^}" - elog "on X11 or Wayland, you have to re-create these shortcuts on your own." - fi -} |