Gentoo Archives: gentoo-commits

From: Joonas Niilola <juippis@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: www-client/firefox/
Date: Tue, 16 Aug 2022 07:55:14
Message-Id: 1660636502.bfd0d0ade689305a126c6ab306f0a076e5f347fc.juippis@gentoo
1 commit: bfd0d0ade689305a126c6ab306f0a076e5f347fc
2 Author: Joonas Niilola <juippis <AT> gentoo <DOT> org>
3 AuthorDate: Tue Aug 16 07:48:54 2022 +0000
4 Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org>
5 CommitDate: Tue Aug 16 07:55:02 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bfd0d0ad
7
8 www-client/firefox: drop 91.11.0, 102.0.1, 103.0, 103.0.1
9
10 Bug: https://bugs.gentoo.org/861515
11 Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>
12
13 www-client/firefox/Manifest | 394 ---------
14 www-client/firefox/firefox-102.0.1.ebuild | 1293 -----------------------------
15 www-client/firefox/firefox-103.0.1.ebuild | 1286 ----------------------------
16 www-client/firefox/firefox-103.0.ebuild | 1287 ----------------------------
17 www-client/firefox/firefox-91.11.0.ebuild | 1244 ---------------------------
18 5 files changed, 5504 deletions(-)
19
20 diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
21 index 50ede816eb27..c6d957b636c5 100644
22 --- a/www-client/firefox/Manifest
23 +++ b/www-client/firefox/Manifest
24 @@ -1,299 +1,4 @@
25 -DIST firefox-102-patches-02j.tar.xz 33088 BLAKE2B d3bebf929a6343915572db33120505b5e71fbad077a28cdf0f49edf3d97c881196dcce6cdb53803b468994f09e6e6d7085dd2318d12bfeed29dbe734ecfaea0d SHA512 9fc4a4b9338a1d0161f2238a5894eb63b000416c8e0131c2b70224447215598820cbc6f54c6d0222d4ecb08b57b55a52090e4952ec2cde5ea2233b752e6745d6
26 -DIST firefox-102.0.1-ach.xpi 443115 BLAKE2B bdbe6d960b55a4493bdf8ce7fdb7539d2da58d173ecc1546c7af04074d52a3d385252ee1bd38d54c62a04a1fc76cb209021dc33dd3c0108d6310edd5fe460d04 SHA512 d70333f2d6f537f5a00187a166a03e3a127e86b2761bb9c0dcf5325b43a778ac34cf596aaa4723cac41a0e8457149b20083a3ab262c1f6e4645893d93225040c
27 -DIST firefox-102.0.1-af.xpi 408456 BLAKE2B b97904a54ea7ec298b1abcc886cb3c4acc41d31c59e618cc42f46410a17022c770185e49e06d8d5a4fcd13f2b2958b95babab57b7486c0d03eb99e1efdff2f5e SHA512 3d6910b80f4fb70a199254ea775508af08fd3c981262047a812f782a44108a799150fdad37a7da05b1c7a23f5e27ff86812493f03ceaa6518faf9e62be8f5997
28 -DIST firefox-102.0.1-an.xpi 486990 BLAKE2B 42c0e97d1affa75b80744467140a30f2f08d5fdad6946f848f14e9b8f7a850270a0f3bcd74affd41c8dfcf3cd81e52e2b0222fef9e03b33171e7e60381e35ea8 SHA512 f3211edb5006176815fe92e2ad255ea66a5d58e2600c044c48a1c4b497654e897ea8693e7de580de731902f8ed5d52e96a41fa3a4169ac36acb8a9b604bd1442
29 -DIST firefox-102.0.1-ar.xpi 550929 BLAKE2B 96832fa813c4dd496e204899e68cc6798188832c09d4bea03ea026dd2fd3a73b7102366d119262420333a5ba5231d294f2ec11283b4b731b011613e75c2f6866 SHA512 5e8a154c931918981c0161443e0afcf57cd8f2b34a53cfc4d9f783da8a6dced6c827550432a86f32c9cd5aafec97ab5e743a7afb401da4f933c234fe8f5f4360
30 -DIST firefox-102.0.1-ast.xpi 483319 BLAKE2B 659eed9f9a62d567bcc9a56fdce315aff3c6b2667f6bcd48d8f7da94403bdae5161ca8eec4b317faee6412fcea01317fe6b41008b84017c48ccb13b3531d41bd SHA512 3e0a00041ff7ef96682cff5b77670658d507232bb788c82219b833a01452c79b3f5bc6f08ab8fab00ff1f49460174f0d500edb32feebadff6969cd80f7f17be8
31 -DIST firefox-102.0.1-az.xpi 474709 BLAKE2B 9a63ce3995d2a6011e0a87e6b1a57166b9a3ce37f482ebddcebd9dcaa6e191ab7a7e9c90b3f3103386d2c2d3c24cc22a745437357147cd980066b550672a9f3b SHA512 40eee97abfb3471d62ca28c4246f0f957b5e08c3984068f719acc5048c203b99c764f30a68bb14b3e7f980c8388a5c59f0da42c4eecbea51ee5c8e75f83af5ae
32 -DIST firefox-102.0.1-be.xpi 613479 BLAKE2B 90d0870b31feb7c4394f00b6ae9df045defb1189bb3f68a4ac382110d9708637e39de7f7781800988ae6aad1eabff8ab73434c557a13fc3ab158bfb10bd79139 SHA512 1529a59d0a126defa92f444301989de612cbc55776e4fd639315e3d705767d81ee0feb1a5769ed9da4c81f12cba340b06e381488579a5bcb94aa1f72f58345bb
33 -DIST firefox-102.0.1-bg.xpi 563643 BLAKE2B a0c5fe96bd35112d2815ac2ed25cdc2170a866b15109a7aaceb97808bc560077bdbf4dd2dbabdeaf23e20361d265713f4aae65e1808cd8649b9a0dc35a591e4f SHA512 dc0a1094879067adec4d4b8756bafc853375916175d28141edcecfeac56b822ac5a6132778be902fc23155797363700348cdce0faef64503ff0fc46df489ff72
34 -DIST firefox-102.0.1-bn.xpi 565249 BLAKE2B 2aae36d81eb3905eead903b1b992168d0729f54474c34aa235c0243573d128fbe0bcd06aaa18811c01e53b95fa93837bac713ab091799cd72e0d2ae943e25e9e SHA512 e29f6e0446822eb1e4d4826ce88905e35794fdfd35fc985a656a8e0a20bdccd0800ee36dcdaac72f3761a65acadcec3e76c5b49dc2cffb8c0281c09374992a3e
35 -DIST firefox-102.0.1-br.xpi 521042 BLAKE2B 357a298046c283e3dcc15f61ffeab53945d843d00736e4f35c68d3426887167bfdf6f02c0f791a3bcbbeb1552d6d502f497dbc322328f561b50d9cc3c941398a SHA512 3a8fcdeceeefb00602634db5fadd3970ae29bec3de125610d72f4cbc0322141ddd519872cd8df3a1bddfe16f0b40a80fba232fc7b9bdbdd065744624e04a1178
36 -DIST firefox-102.0.1-bs.xpi 451830 BLAKE2B 92edcd5eea1febdc1297c3c926d718a9aca09c42fa18c96f93254670c6a895f04356b7cd83620e737913a94ac275058aa5d0043c25a98e65288fb015024f6c9b SHA512 b64817605df3b4c4d1a7ce614cb37bdb38d1c3d70ea59bc726e6d5fda8a54c09308e3812c662c00306d873e68c3630d9ca2ad08a4f63ed077fad5042bdc08169
37 -DIST firefox-102.0.1-ca-valencia.xpi 526198 BLAKE2B 9ed0d28c23e66414b509502123e6fd6e37741f0d91bffe62374f549cfd1967ad20fb25e9cb4f83f269a5400ea6a5408d0ce77a51b53016cafd3216ea53d26d3a SHA512 b7ca6b7b63941af36f895951f59527554df3bd9258c6fde85b376c3657dfcd54a01bc187b2b40009824e33f2345a266056ae5092238c30f89ede55f1d75ce103
38 -DIST firefox-102.0.1-ca.xpi 522661 BLAKE2B f068d70f3a1a9e8d98e00a7ea5459411508d70e69ecc3046dd172e42a8b958ee3050ddbb59d04e34b109a88594c527bc680b226be5edccef43eb63c181d6390d SHA512 d3de95014ce68bdb942ee97c14e28590eb40aff0bcd126ee0fdf84e5a244498f1c4734995e09fed9abdf2454435ed59b231429787b177c4e820eef1f8428e778
39 -DIST firefox-102.0.1-cak.xpi 539685 BLAKE2B bf27985d0a7497515d2857582264dafcd43d008a19e575dd1d80449ba3a66913e651da6fda9e87fd44b8fd7ce8cef5aa1e3fd12a725ad473c71e64f50714b666 SHA512 eb4dcf9d7c62bfc0ba16654aa87018ce66ead1f72cbaf1013365ce248d74f364f680935bb814ef959d88cd0f8d304743691fb91f59c4178668f499883cf99151
40 -DIST firefox-102.0.1-cs.xpi 556817 BLAKE2B 5bde1a50af74361679844f9f010c9f9cb4c1757253120cde18879264276a4fa59c673333057e394a8357ce02bc980a17983acfe9dda9536118ba08e6affc88db SHA512 2aa5932918d013eaa85c5c8550b305bd26e9410918242dfd0d0bde9a853661c04fbf5801851eaf535aab355144a33bfe5fe0ce650d1c209d9aa3d861e74e8abe
41 -DIST firefox-102.0.1-cy.xpi 533737 BLAKE2B f38466e2c652734ea86a4281631a5664529ea64942c17ff45d15c4d858232bcba05ff15e01e48e2d7ea7a2af7ed0be48721f8843b79e43237f8db1dfd54f27ee SHA512 5ed7011f52f4572e6e1c9127d62c7def446e41768b3f0cad1a80efecdb8dafadda54440a7b33b3d21e60a0426b5c78414a3c04e11b90f04264be8693005c136c
42 -DIST firefox-102.0.1-da.xpi 525903 BLAKE2B 141a9e64778a7060203514341f5f67b19224dcb1d6d946ada6bf3bf0aac9a5c58b2dbd21b38894b1d6bfef8b0ee2517fad7b94c46bcfd64ce52827a964d3db0f SHA512 84bb989044e5c4d7bb48590aef036ce5fe6e9ea36aff6fc4f5fe20c5e7b55d94ec540fe21caed474c36a172c608a6560843b769a0dcdb37a7d7ddd4ee26b818a
43 -DIST firefox-102.0.1-de.xpi 544842 BLAKE2B 9aa588a063b6f2f6e91480e52bcc8dd1ca38994297fc14570c9fc850b3577d35a7cdf0187aaae958a5a0f6b175acb55dfb0bdcb28bc0f93ef06ba30287eac836 SHA512 c9a9ce63df57a170cee8949f8dad84cecb64499f03e5d0cf6425e8772d51d0e2bdeb987cb17cfbb136323cd91bf82126202f4f01915af5650cb986640215297e
44 -DIST firefox-102.0.1-dsb.xpi 557561 BLAKE2B 20dadccb1b406bd42972e377f1c18f0e0f0cde08084d5601bae21edb59b7beb875c57164f393b98ba2208e31d852d9d229c6118898825a909e8d21ebb3084645 SHA512 4b0a4f8096f5780ab56dd9eaa4d2a2f7246d02a9044648878280c9a6558d2f16a74731033af90b74617226c7a4fa0a437bd0ef23e813f0df9cebd4d9628bed1d
45 -DIST firefox-102.0.1-el.xpi 628792 BLAKE2B 8515b40d3dcda597b9fa6427bd7cfc71a6ad603104b99dfc3fd5c31b5cd709cf2a04f91f0d8c4bdb17497c7ac03960c6305de4ac5a688efe31cb4216c412f16f SHA512 0fba348e19549c64b07f611e1daf5f352c8953bbbba0230ce9e56466337da44b39269b4d275fe548be087a791b77f358590a53b45a4d2722c3d88aea1bc6c236
46 -DIST firefox-102.0.1-en-CA.xpi 501971 BLAKE2B fea1e20b416c630b118ea78009ad12172a3e3203a51f3ac1fb425bb3e10ba4a42f0544c6807be19c2e342a88447fffd9b478884efe2e20628dbbbb4482de4d10 SHA512 67d2feac02b1902f527b1b390250956778c51f985b269050f93018d2b885d03f4dc0183fca6c46f4778164a358712eff5712d4313ba4da466efebe2c07b29ca4
47 -DIST firefox-102.0.1-en-GB.xpi 502452 BLAKE2B 77fbad1b7ba0f1861f6f758c1fda33dc163e9d63145ad8c3e019992db1318b1df9b8d0b68ad23385c8998eb6a35b8761e9d38929a57265076eed0eb58d0f13e2 SHA512 6bf9160ae196ce96ea2c388c29c614305018551ee382543046c891a071451899e8164ded19b9766ce0e861cd0b558f396c39fcbf13cab81b499173ede7dc96a8
48 -DIST firefox-102.0.1-eo.xpi 528433 BLAKE2B 703f7bc9b03f33bf4e1c4aed5876d81411c417fd688b88efbeb067fe4917fcd55b1bfb2c532b615e2d0ee82ad766a230dddd576114424fd3babd9726210c4cb7 SHA512 f6601e8d0ac59cc92df4fd6015b20ca31f0dc9cc16d86896d655dccaeb41efd7a28c69be1e65f00a717ee8271df8cc81dede31d04c484e9ba7fe90b41e6c2b65
49 -DIST firefox-102.0.1-es-AR.xpi 538389 BLAKE2B affa9c9f8dae6a04705d3a2bd06691f70b1458e28ec2e7f5f53e17b3df1b4188f76bc835a4d398d267958cc39760d927b690d7209e567d9b325f2e0c8098c809 SHA512 9e3c2d53cc2217c987d0229fb91c7554dbbf59d4bf25bd679773f545762389bf2006e74be4eb454c36a4b5f762b2b93ad251547ca04f2dbb772fce55b575d252
50 -DIST firefox-102.0.1-es-CL.xpi 537631 BLAKE2B 8a4e951311a192bec777b901692225f55fd8bbf16cbcb7394c6cd4ae378db0c207667906ec4d40fe95d3e0c5af41e3a1de34836b30e4a4613415c3b937417abb SHA512 77c340c17b8e8201ebf0ddfd4fa63d0f88034793d0dd658f4c1654bf77f2bae6cd728cdf9679ea5de6a67230c9f8f38b2aabf69898a7adb06f17a8728f3cb7d1
51 -DIST firefox-102.0.1-es-ES.xpi 529060 BLAKE2B 34668b5a107d11ee0e0b6d951680f9150922f865029fcb595fae8c0ea797656ad3cfbb401ad0dd225900fd7af85e43f62376ec97564055c934aa92c274e41546 SHA512 5ed05c9b852bd5b0d4fe71f57ac6c9ee33a645823eca206ab78b7fe4195d358fda0a8367ffdaa719560e29d246290f3ea80080c77bf72dd8f8e2f7910fe9aa7a
52 -DIST firefox-102.0.1-es-MX.xpi 541457 BLAKE2B 3b752a8c5890a96b9e44831ca650c1b2ed238535c6607a48b243134557a78ea32c1ad9472dbf4480833a16996dae9b30722b587314496ca33f8de195506a5842 SHA512 a69db678a1ae7dcaf224c6e9b5bedd48884455cf10be27692680714ebedd88feb03a8cba24899d0a6c52da7d438ec91ccd588186bdcab0b51fbfbc6069a7d38a
53 -DIST firefox-102.0.1-et.xpi 520007 BLAKE2B 7a2469ae21a9c171c4021343cec7e86639bb7af5f8fbfb1a49163fedcf0d2124ab6e968988d4d9a50b438091e9e57c86a3a775dbb63110df3c66b97b459a8f42 SHA512 98426bfadac581d389ea04b02a90c71544051db3f10fb86eec70982bdc949ac6ea2511d5758bccb598d28b6176fa63a1161baf40e45a869feff30e3f99c6b26c
54 -DIST firefox-102.0.1-eu.xpi 528114 BLAKE2B 34c7f29fc87cf39c6916ec027b638ac2d75ef11f9d2f63b05bd9d5a07420252fb592aff3910c69467e8d894e8194b0106b5e999c00749fd4dc12e37dfe9fa805 SHA512 a174c07982d1329e255693ffe20f5a5008bc8afd2cf93b7a13444f5bf8895d63dbb570a5a79e9688fbdf4fad69b93f3e628fd9a542dd7ec79a0285a636eaad59
55 -DIST firefox-102.0.1-fa.xpi 550824 BLAKE2B e3cb2c105cd7553a6907804410bf2340a63fd28cf834de4b6a110e8bd310d9ef91a6397865ce97a3db642696425ecbdda878708c681bcf4e43f5e563b58a0b44 SHA512 b7e80e256b8c64806c32dbc0cbe067ae9ae0aaad4e08f36da61ca089c0d4025e99bcf590309660c1e36e0fafd1d72eba47d8541c767bd65c569767d55af8c5be
56 -DIST firefox-102.0.1-ff.xpi 460982 BLAKE2B 8ada7d15e53131f677bc29fd25a8ea84e54388054af38c8285efd991a7c00213ec0e9ea9e40f47034afea107f32ddb3bf33ff81c0ccc48cbcfb202bd1703ea60 SHA512 eed3cdc2d46b449ac128f48b89b334cd6bcac9eb6a0e1340e369d1b62257aee2e3109bf639a51a16e6c5cf157c34c0a71a3109d04ae0c379fd862bea24a0ce29
57 -DIST firefox-102.0.1-fi.xpi 524258 BLAKE2B 4ab947240ec26a3ad05a6a8e274988f9712cd632b28201385aacde2c463b9003f77c169a68b8bd2abdec49b90b7dd710ac72697d47b7ca1a5e20bf49216830c6 SHA512 e36413329e7ba9242094f3c5d96173562c1fea7b9b9c83d4df6b5d9158e678c9454383bf4b9734f2695651bc2e43fd7dbeb7f042fd9beaf4b3faedb4406275cf
58 -DIST firefox-102.0.1-fr.xpi 549040 BLAKE2B 0cb8979afa29b2bb57d00ab351c3995f5c75ac5a4a93ed0122f66dd90418bf5443894c446a96c43a4611d7ac24ab0e4bf99a5714742ac12133f887174a41993c SHA512 c058e419193d0076eff32bc1d59441fb943548dd8c254074c0526939a7cd6ac0d6422a95428dc7adabc1e5deed12ca428afc22fee68f3d911624ea0f7854b213
59 -DIST firefox-102.0.1-fy-NL.xpi 534933 BLAKE2B e69d7cc5eb7837dc924cad3447d579bd661485611aacbbf24744484adce075b253eb496c649c182b86767fd35428d25c6628e8c42f07982a0486a509096f05d9 SHA512 49e28f257595e17c6e0f570429659b3d5848e2894c7f386aa8c0110342d395afdccc4a41eb4d6fe6eee012be0a782e1e6a6b1b5269bb279cc6b6ada5f35710bf
60 -DIST firefox-102.0.1-ga-IE.xpi 460704 BLAKE2B 84aef85baf24510ee0e685f6629b2e44764fbddb331d2b4a827749971d9682400c2ebdf888e33687480d36f0edb408937496e0d540737036e72379d8f4150bac SHA512 cc6deec0236d63d84cbda1ee3872b2c8d30753172a35ee6741806ab446bbccbfd1787318cc2d949951e3bfed52c09090c1aec6c599367574e101cfe7702aeb13
61 -DIST firefox-102.0.1-gd.xpi 522582 BLAKE2B 6da9360c6c77acdf1c549d6afb96cf0ec5f982106c5de9b90bdaabd65243acc1a0c2afe7ca5db540444704f79eeb496da296ee9a752744563905622e75a80980 SHA512 3af727ec41ea27372bada01766525032b8b0200d65c7479ddc62ff5d984e8be9ca0ab65e6dc2deec483bc64e499852255991437457fe3b181b4bb7663361eeb9
62 -DIST firefox-102.0.1-gl.xpi 528501 BLAKE2B 0ae6b62414c3c46087b0403fec178b968ea630f6321c6d8017a6ba0d07e90c14fe8bdf64a508f0b79117861fa2815e9982064facec21378d6bc12a1354e63996 SHA512 78cbc67e6c184c748a35617fa960f2bea85a4de3e4ab013091362c49fb978ebc479794330c1f41ddb90678e701a6587c07f8d3e33ce1be1460733cd1299ee7cd
63 -DIST firefox-102.0.1-gn.xpi 549549 BLAKE2B 9b4ee0964beda6a95f937662c7706ba71613b648d94f5133ee7d0f594ab6c7c206604ffbf80a8aacf59fdd7922845daec43511c3026c7fdd2df879dd2abad954 SHA512 ff2d2db21b9278330fb8bb32a14669b46ca08764a60c1eefbb7e761ffbff42735c607452810538531b84bc40547dc424a13ac0ac092d6164794f6ee334851196
64 -DIST firefox-102.0.1-gu-IN.xpi 516025 BLAKE2B 90f7846bc240fdc0104df74fa5f41742642cf8e25b2193a62025d9bdfc91d07f5400c3a8f25d4674d2f930906e31bfb9989531f588b96717e27f573d139c29ac SHA512 96363a9bb3fe68d09bf0aa024334ca0e4694efb5432f8134023240405e12df1af710773c40c08bd7e2f57ee55bcd42977e5eb24a93c537de701d7a8c89b39cc9
65 -DIST firefox-102.0.1-he.xpi 549002 BLAKE2B 40cff58674c4616cea8c2487f6fccc137bd5323a6e9bedb5dc8740363748047ef7bfa847503faa4d0caef9aae30ef017168e01e5dbc921056ae0aa8762012bc0 SHA512 21a09b2a3b2ca9c48a2279cb531b560caac40821088cdabdbaded1b1f34cf7c18a0c021c0425df1e6280863a31ea97435806cfb738595bf5fc5c7076f6c08b0b
66 -DIST firefox-102.0.1-hi-IN.xpi 546135 BLAKE2B 9538def7adac70c7ec955752710c74ecbf6c9271533faf981b0bf478f34231708a2b2cb7f54719b814bc0244e0564b168748396c330358bd06a0bfa156a2393b SHA512 79818e74cab237266f3763a72672605979528053499d6d58410e5562187f19c7b1affc664e885c697c333778d2fce3c3ba9b57c33b206a37b6ff5847a5a0bbc9
67 -DIST firefox-102.0.1-hr.xpi 518888 BLAKE2B b16e9de15838ed237bd240a161c9b317c1e3a480c040debd05d173803cb333a81bb1d27d710d11e28f9e00d157ab4169dd3b3df36f841366ba4ed31ea2a91c23 SHA512 b0b9d7e1982182d3d3d50a00e8850876d17a8099357d07bee26139557264b293455dac3bff75b4a6f93c62d986d7cb77d6044a8abe73f05af9b53ba39bf2ea88
68 -DIST firefox-102.0.1-hsb.xpi 553793 BLAKE2B 41fbf62910131e0930520bf77943d00ec2e586d6db3e6b81ef0d7d70c0c4528f2bcf5cc33ae89495d241f21bda96373da3afd0321338901c38c5bf40824e1744 SHA512 2ad9b71d19e9c49b7eeb8de97935e13f34b1fb74797d14887cd066d57cd2a2b47f030e455814ec2c55caa4335ee40bcc2609d1e87ca144ca1d42012e729c130d
69 -DIST firefox-102.0.1-hu.xpi 556877 BLAKE2B e4899dd17ff3957d8d72630c92fa363805aeaedad035b5ee69a83cebaf8049619cd1ec2cabc90790a4dfabee17cf61b6f0891aa81401f8dc81da1aba4279ea3f SHA512 f360a9582e69f4c01463e3a01aa7f42b603a6402da34eb05348efc3e700c1a473d1fd59c49da6bf410ebf687e2e2800c7a00076e83ea61e9c8d54606c6e4df61
70 -DIST firefox-102.0.1-hy-AM.xpi 567841 BLAKE2B be1eafedc8aa7966dc20db98beee27ba32b03733bd20ebfb4a181be6981bc83ff66d37a099d8ca191d98dda4bc7f78c94fb6c1d2ae01261fe1b6be029d501e0b SHA512 160c71918ed1a29e4372d816e6fc2e8146863b8fd3d61578cc6e4d040de24c94e8a0d6ba03af583cd18684ec17b52588f09e3dfdc2faacd8aa3a7ac4d63c8757
71 -DIST firefox-102.0.1-ia.xpi 523746 BLAKE2B ed37baa30b7dcfef724f439abc31735108acefb9ca46b1ef6c8c4c1d03e7f7df80afe9973e9052f2bebd07d8b30cecfc8c89b477a564921ffefd82e4bee69040 SHA512 f57e2e05589aeb2b0b7c152ed9c59448c4f246e54848001f1cb989ebe115fbd2a5f5cc74dea67fbddf3bf1cad68ef57d1635118d48b5762304880af39f9ab3f3
72 -DIST firefox-102.0.1-id.xpi 521252 BLAKE2B 9cdcd98e648ef36240f6c047167ac14ebe44208b2bc846b9b67e73549e0ae052f3ec9aa3dc2f4715ede558ed8e22ffc4494bd6715f12ee428ef72dcf5c49014b SHA512 c390e6a2edcd2058469a44f404f81a79e9c69c78f7ecc312f6c3ee877b8342c5a11bb5befd733f932d012c35baf01ba3a5c3ce67b14045b2c6551ab42e2addb6
73 -DIST firefox-102.0.1-is.xpi 528381 BLAKE2B 8cdd9e1b6a793b90c5d7277ddf5f9c86e1007c45d66bf4a079bd481af23310a5bcff0b41ec38e4549223d03b270bef0f9f0c7d4fe1343de34ce3af9cdd5abcfc SHA512 fd3ef0533dfa670d6e92334480845662eccf681832c9e72bbaa3f5e72e35aaf72ed8e83e1c96095824e7e8e9d3bfe93616de2dac3a2143beae11b152d46670e4
74 -DIST firefox-102.0.1-it.xpi 449757 BLAKE2B 008892e6efbfdef16d12236517b901fef137ac8f974612d2abf69272c5ce58added6eea9ab847f086387f434877b19ba83f7c2b88ee50aa99eff595ad5e59d1f SHA512 80725de084a8dbee6a89f630257529b3b171a44a3c69cbb38a227cdce92fc0b7d1702e7837ee58f5c03cc516bd4f81202739dcb5a4236798bf01679163b306a4
75 -DIST firefox-102.0.1-ja.xpi 573750 BLAKE2B 35865568a1a4d5f052a943da24d5abde6f5ccc80ad04db31313f15b7c564a0839f61a427576a08492046ffc16f49de5f9880abe32744823aa9b6f74e66d3df1b SHA512 203c8293e1cd7f0beeda8ca392cdfae43b5ee7ab76fcf2be1cddcac4d8d686cb1bd26e82283019e5adfb6aee4ae8c7deb6f653f75aa989dff3ea4925aa7222ff
76 -DIST firefox-102.0.1-ka.xpi 581242 BLAKE2B ab1330c3e8ddf287bccd1c3b6bba86644056a1a1a71bd2b9e500e333cff41e82f6bb12ba9d67d93c686bd135776acb56f39bbf9af14bafc8f85db8fa6abbea1b SHA512 1398e193bef367390a2bcd97553616f06b9c07e3fef9ece1cc677c56a82b85f9d4c67746ccd215215d206e53c98790999bdf3f87334676a2a4a24583ff2f6e4a
77 -DIST firefox-102.0.1-kab.xpi 543020 BLAKE2B 7b08852638ebc9dd88c6a7c28c3818a74bae218234b1441ed1ec3643ed3dac08d92671a3f23615d363c005dfde076d3d8ae3a8821e99dc5f78458b10544e2857 SHA512 a7db631106b24adb5c0b546ad733b09f9f6fcf371d748a4241881e1e5288f52f96cef6e91eea97ae461801ebc3f6d61a3e076d99ac581064858361f318d18a83
78 -DIST firefox-102.0.1-kk.xpi 604865 BLAKE2B 026b8f4ad2d94b746924a4fe394f9ef2502495b371ea8aa6a760bb1a0da3143c49f13a22e93e92baec519e676fa5cbe4975c661e44ca613bfc0fc2980cfe357d SHA512 5dd3401f130ce83a8a1ddd77968e971710c3b76d5d7ed1ec453f2d7ba0ea3ed0416c429c1efaddae332f3d755d1e677402243e00fa53e737056e564e7484fba9
79 -DIST firefox-102.0.1-km.xpi 519619 BLAKE2B ee68832f27eafdbea215e426718d093f24b78e22f1187cee14fa976d33c1176639efdf2721ee37d6e83796d99525695944b741229ad2dbb3392077066909e0a1 SHA512 327e88abcdeaa4a1a2188fced1966cc5a8a508c2c12fe132f0e3e44af5339e24c12d52250995ba0b1b7604827e61cd565a3f55b2b41fc2bd560e27d1ee4d4755
80 -DIST firefox-102.0.1-kn.xpi 485573 BLAKE2B cb6bfeba97194fbbcdb89c744386bccb7735be06b46cd0daa94aaff54031bc1be64366f67e45804e86104cdfe6d07c8b038d0c1548a98a6c33c14c71cee2c17e SHA512 bfb59c50040bc7c6426fa673f2e4083e4b4d4d14abede9ab55a552901de75ac1f394bd7961314044f8f1061c34b1aad74eaf2a195b11d92615b03cd2e26a3632
81 -DIST firefox-102.0.1-ko.xpi 570092 BLAKE2B 8d8f736d57d38f25fbb21accccb8cfda50aaee5b91892005a6b451b00bd5d23d6f32dd2f42b12b582d7bab25dc150165b705886e4437432b6fa906a87734a4ce SHA512 30e0e2f7ffea65881fca6ca163a789e23dbafe39968c0790f8d50871893f5aa7c00d1e4eb70961467bb1a930753c6436f8e06e6a6f809dee08f1aa223daff07a
82 -DIST firefox-102.0.1-lij.xpi 459199 BLAKE2B 0528fe0f6ffbe00aee6b62a9f0d03cc07ce722b384b0bbaedee077b415a85a8eb11b5fbbf961c7ff335d86fb7171e8c7cd9b6405f9b4c543d552321eb166c99c SHA512 6ead3b0c12d2a18bcf272d01fc0f6330d001e8f82bbc2cd35fc15b41230cd6328ea60ca10eb3dd6067f9a0244bdeafa34f8865807d0ce85cabd25d66009a687f
83 -DIST firefox-102.0.1-lt.xpi 549840 BLAKE2B 99767dbce39b3160ae103d3a8f23d914d15d4bedca975f106fc7c0dcb93d567d38b3fb4000d0d40f64817dac19b36af9b6edbb24f0943677d75a4c6d9e5875d4 SHA512 180f8edf8e009659c5a2915d288cce9d395d83e15fff6bc26fbc63f9a7a1c99e7860238969d57c02cdae9d2cea82149786955ab21435b1b558ecf16a9fe7b4d1
84 -DIST firefox-102.0.1-lv.xpi 452074 BLAKE2B d106c7bd506e8d6a3375abb74e8d5cf8766b349dcd2b20db6ba684d158fe528af0adff4498bbc16a1aed6186410e07e2b1dc4c3435ea767107327824523eac1a SHA512 17fd78718eb84508d0380335ac1fa64827ee08e8677f3a0d945acb0606a6aa36c8032f331eaaccbe9e3ea7c3b0c902512fcef87f7fc46d686c066c143a880614
85 -DIST firefox-102.0.1-mk.xpi 458905 BLAKE2B 2f6e6359c7a078b5c086bdcb1f0b80bcb3bed64ad3ec7ef90c531378286a98d771f8a255c40d197142b2df4b59d6b6786f1eae2520bbb64291b455bf80de1eeb SHA512 300fab3a6de65339a14e0a36570ab78865f160a09afe6d795601c35df2186a48846af6258233e344570b427fa93562165cc46bbad9d2d1baae15b8a6f3de1697
86 -DIST firefox-102.0.1-mr.xpi 519595 BLAKE2B b1f5e5b501975968e01db8ef4f7166e71a408e20093a62a3ebcf161efd4c2f67819dc140088d0844d103c3c5a79ddf997668f14d1459e443c0e46ad24472e6c8 SHA512 8511c5c228490bf7e66f62128c7e2d8dbff659d5a72847a12869993458f52be43ac2b9819a00d5b03f6fe15a05ebc451e118e2df6bc710413e2322c1e3c191ad
87 -DIST firefox-102.0.1-ms.xpi 437314 BLAKE2B 18e8ac64eab5d9d751326922c64b3932b61f8196f13327a66b670f27127273ccf95a62b4ba2d2368a110fe276d5328dc296b587172d31090b8c47a4e991270ec SHA512 ddad66f6d354acc27d0e107ed6275c0d9b6653f06b217ead726fee58be110d49a33fa90fb8f62e69104758a8ecf4c65d40f32c169b1a60c895823509dacf9e9c
88 -DIST firefox-102.0.1-my.xpi 498768 BLAKE2B 2355beec7eafbf6f6c81a18f90803bc420bcb81f6eed4b23f247dc31ef8db75fa7394c4dbdb6d38ca8e5da4ff2f88ab7041ec44fe5d2c36c8fc66dc58733b045 SHA512 e67a04469797bf54951c5ee10b8784777d90a846c8c6de3ccb4a57ad2c2fde3d518a7b6a2ec26548045148f9366fe4701a1d2c9dfbe614fdbcd42396ce1e9139
89 -DIST firefox-102.0.1-nb-NO.xpi 521330 BLAKE2B db9dcbea29efe6ec8f8dc2be236a704e9322db28f42f30da8004d61153cc8f3330a6f7f0dc63fcb49b62bcfad184146e7b7f6f0717d2e239773529981331e7cc SHA512 3c68bcc96e38675b4331a4929da9a922c1b0bd8032f22915864955508a8c9e68af35eea9368937a80b0a2f039c14d8c2c2e370713b6e5b82508e20d231982d1f
90 -DIST firefox-102.0.1-ne-NP.xpi 477721 BLAKE2B b3cc96b96d6c43ff3590d9805409f6401b7d3ef332cde89ad09797abdf8173481b28561c9cc9a7903663d2f4673d47fe84eaa91b26612b6af351383e63bec2be SHA512 f9ae7435750e6459aa4c32d1e6683c47a195b42d529bd48e80656ce2e96a4feb6ed5d2c44cdb571ab1b41e109fd66350d4f76d70ccc04e2ca970425e5131603d
91 -DIST firefox-102.0.1-nl.xpi 528939 BLAKE2B 9dbf09eb48682c371fe7229dd0db54a2ebaffa1eff6b1e1a50cb8febfe6f4f73da3ad38999155178e21540000759292d890bed578e1da32a64e2b268dd07611b SHA512 7226df80563cd65593720af97be44750628fd0d3826dca3b510caffe39a88667505a6f9e04020365ebda5245a2b48cf224b97c5726598ab8f62d697dca002bda
92 -DIST firefox-102.0.1-nn-NO.xpi 523257 BLAKE2B d0bcfc7e2296a2c6cd95879bf3504b6a8093414b0e65a4f76a53f4eb3ae2003e2f5265962658f0bf52dcdbc0a81dd383c569fd95cd1f4e168421bd35201b930b SHA512 00b102d46cb3d34ffd575b210824f340ae3f976e6d6759570c8c82536e0341f2301f6511323b9a59e31834d47ef20d71597ab345ecad086efaa5a34b31483b64
93 -DIST firefox-102.0.1-oc.xpi 544571 BLAKE2B 8cc68f5a4aea28c98b7f748f43282734ad5fef46d68e089a8f2d46363eb102a249ca87fcbe08653e6f68b71edc471ac72b49375ad719e757d76bdcbb4415fe42 SHA512 1f726ee7b9209e1b9fbb69d24369a7096e12921b905c2563f59e022167322867bf4670f5b3a23e43c04c5f3e90e6671c0193d2a41b645addb6822602f3aa2ab7
94 -DIST firefox-102.0.1-pa-IN.xpi 587393 BLAKE2B 30e3f205a53defa3cf12dba4dd53517c5f6dfd1c4fb44ca9ce91bc64264c07bd6c6b5698f42f8092920326891a1c271643b13d260506ab40527f30b036d2ad0c SHA512 b7f2df8e1ad3a2b6fce4c6ed3d08abc94b85cb50a7d21d2bd1632c1111ccc4c6b98af2643344b4ce4917110038cc26fa23535ffa5028f30e0188cf7843c008a1
95 -DIST firefox-102.0.1-pl.xpi 548928 BLAKE2B b93acafb19168125678f0c28bb0de1c1168d5f468664e00087825b17659e3d721f7fcfa95245d67702884dc66fe801087698af772bd20e2a2cc3a02701470f20 SHA512 cd442939070af1de703d304d113955c6495cf084ab21770945c69ee8583bba68b663eb585b23c96fe40327796835b483b5debb63a2a5e505881333237c0a361c
96 -DIST firefox-102.0.1-pt-BR.xpi 534189 BLAKE2B fa548c6fa7d0c926293084914caded823f57444761be1dd7bddd47c33cf6e46a3eef280a7c84620fb216549cef1145504281041581101640c8912d6cef4d294f SHA512 162c07ebf9273790f1a7034b224d017e59fc6675de8232731a6cc06392f283a67ddd05cf1dd065e522cfed9cd00f0932fa9ca0a2946bfaf7acba698753a38550
97 -DIST firefox-102.0.1-pt-PT.xpi 538009 BLAKE2B bbe21992d62f3b7acb34c07a91813eb6a7ec45c982fd77a5b06209ee2f490de6f4af087fb157ed242132561d8e4fd899224f0761362109630d7b1ed030f37358 SHA512 ababf1a498e47cee462e0620f0fa2598d79807b678bdfd2d65ee5bb946e59e8c61045fd1d402121a7a55e7083b49693ef5c90d1d91c4218e58e4091f83228b5e
98 -DIST firefox-102.0.1-rm.xpi 528324 BLAKE2B d8df1a6a85c7ddeb5f84442f49f48cffb3898f8a7b339c98007737617e03c6d8c64414a2f93571530e9d6e76f3508c890fcd15a8b4a593791ebadb11e82a83d9 SHA512 609d68b262aa0ff2e6fbc6a795c7c6089fb2612f84dc24f12b52c1a1be7673b095b9b2a1fb7a66a3a88b1904477237b2f87ea511d10f3bd4eb507a08530455c6
99 -DIST firefox-102.0.1-ro.xpi 515804 BLAKE2B 6a1fb154f39444a1865b43de7f97025dfd8059faf2d9d0ca17f476083feb1a5757318643de8ec4a7875a9029f9f24783e7939963b1a699c9bcb6d309e8446ff3 SHA512 ca211518655932c6f0c4fc597ea490e9a7ee4bb9707ec364c0a6b517a9a7e695111e908981d17727c254facd49b337494a0c5a8566ea6fb8fa8a6951ea922f94
100 -DIST firefox-102.0.1-ru.xpi 617124 BLAKE2B ac3c50afd034cfc2a8a820fef179d436e8fa1a56cc3b4b2ccf998ded33e71618fd558d564a5b00e0d9b30f610e76ccaee1f8a5972ac2aa2955a6e8ec99630b06 SHA512 b24456cadc63b642392fe148a7efff14f1fa835b4ea1ada2155e34913c223b1aeeba7e66f4973fe2923eee4b49ce1513ee26ab7d7c8e58ab2fff936530fa3a56
101 -DIST firefox-102.0.1-sco.xpi 485592 BLAKE2B 395b4bb4e7b0b5395c2b61a815ed7cfc7b851e20f9ca2c8c1c4361ad48169bcc5614602f70bfc219d061f3be5e01b70384d772efb94d526c9e0ab1b71b4f83bc SHA512 54d5e8b88acfa7627452fd91b0571a6581778b69fac91781633e1c286fbb41d047149bbf9164b6dda91cf3fad9bfcbaea4939eb33210afba75f38e4753637630
102 -DIST firefox-102.0.1-si.xpi 473409 BLAKE2B 6edc0ea5272c3e65be8746b44fa3bd53aa6613192b8c57b01445235d4db3494c27957db160f7882830a009abf500b916ce5fe5c3eec23741ee9ae381fbe04c4d SHA512 52cc5fb2465a03de9d9f555b705ebdc6a08e5db26ae62310964d631f35d6f55f13f7b18630bab88425a9e2c4d051def0cc9e5f3efddd3ab6e7a51cc96e504f57
103 -DIST firefox-102.0.1-sk.xpi 557522 BLAKE2B e09ee8dc67f0387060c9d9d2dfd78defd401c90e6bfe5eeb8ea62ffa88fa3939eef7e6fdaea0dd16d6b5f8c3d319330381714273c73b518b22047e11158e693c SHA512 971fe15c6815f58e2e21e02d33c95a11ab5ada592c73ada2458a0c256cd8c9b11cf9c6602cbfe2233fc90decc461291f69bf34ee26ed00d6847becab62d04e00
104 -DIST firefox-102.0.1-sl.xpi 531182 BLAKE2B 99413d0e722b328324e8ff1abbc714c8220f6c22ea3d1161281bf788d7f01e3f691c994bb224fd44a800386470d1ab1afa8eb8e3e208e1b98cb27e16a4a57191 SHA512 3a37824a8826fe75f07187ec033f4087e44b0fa56771695319587c30ce16ef0985a44be6ba63c811dbe9f975fe87f922b1b14b74de2a6073ce9bc1861f32d215
105 -DIST firefox-102.0.1-son.xpi 415201 BLAKE2B d580deb09c319667aafe69facee4bd6da65571f14980b134ff2a29b1ed185aacdc328957c7cfdbd57d553840a29fac19d38a3548f9989b22dffd9303d1c2504d SHA512 ef51d79c6101373a43abbee08701887af9b5929a70bf13ae3c276c668974df5235ed0a7d27c4339dbb74ea98819f6d9081002ee0eb0be83d9349be19587747f9
106 -DIST firefox-102.0.1-sq.xpi 546097 BLAKE2B 40ccc6746e37f36c410efdbd0216a6064da941cfad1d6292e57dcd80f72d34b01496fcaddd11417b5191d3efa350aeaada0493546784e234bf202b7971e9808a SHA512 a842e7254c3d1e4dbfde07b363f97d94f23a3df5c3af3a8b83973915f029e740e9cdcfd580a486d8ef0693fbb58f28b7744157753946958d9454b730f654b23f
107 -DIST firefox-102.0.1-sr.xpi 571118 BLAKE2B 9370ffd53d4bc0df87607b62b1545c97e92d56a172425e93609c0c428a34cf60b6fdf31d70e351dbca29cbb4879f15a1626ea5b8f2231d81d18567c6f76a5de9 SHA512 9256d0f71474bf9bf6bba2df17e7df90eabd92adb8357c875c20cdced77471670f2a8f7e861f10d8c85127143a94cb08ef27057a7cac7771cd1169288a0356d9
108 -DIST firefox-102.0.1-sv-SE.xpi 531439 BLAKE2B 5ec979ed227044ce1724eaa366335e4e95c34c33f08abcfecfa62eeb21de3175ade7c4b4b9ab7e8e57dd3a0bb204397c7a6b57b70755bb63927a5628bc309520 SHA512 0f2311580440d36d9e1596ff287db6d019610d7842c85a0d625a7747079b49a9ce594d38c285e1319eb80f69c6ee4493bb263669eb4eba7f7e68e860dd078b1b
109 -DIST firefox-102.0.1-szl.xpi 497434 BLAKE2B c3bf26bd59377ac03de131af0aa8fd3c135f983379801644979dfe6c553a4bdb3322b6e8b23577606fb7762f8d47013a7412946adb5d92e24205f689e83c26f1 SHA512 dc306666bbd5331764e28f3896ea77fca898ab50b9e1187ae9351728e02aa71d36a459b7148234aaa4ecd1b664d778da364f34c6dcae83cd0f79d0d7624d881a
110 -DIST firefox-102.0.1-ta.xpi 499405 BLAKE2B 526affc4156c7ae00565990ff167e3011938142425616cf8a43049d9106b0c1e7c6923cd31bb7a0690e0ff3fd55f92bc50c12a67dd1f71db760593d05455d67a SHA512 ad7055af19724291c3c190e470aedea8ab942ea075b39a59337d08d5580bd487afd0a5211b6b87205434f2b60af1b3cc76af3fe9f4b8ca6cae21a1445e69a261
111 -DIST firefox-102.0.1-te.xpi 540264 BLAKE2B 0bc034e658a32474d0f6c8dc1c826aea228812501e75b356ed073bd04b9e87fce18a9b2a2c513ef83bf4e7e3e87dff3ee484571238859e5d0ecc5f8228c3ab0f SHA512 bbda164ad7f6e8814566c2eb7f02a9cdc49de561071d78a7eee085597aeb1e0492ac45dd5920c67ad49a78357d588bf10a50373d0e2ec394d09e8569b2a226f6
112 -DIST firefox-102.0.1-th.xpi 598734 BLAKE2B 3e9f25ade482a695e686a038c953b26022cc9bc022548c26b4c36e9d98854de0d176489c73559be73fc7723a3026bd30821d4a7b20edcb37b1945ad687e9e739 SHA512 2274bf0fdb9322d342aa8aca7d1f2e6e06b930045e3b2f1a5171986b769bfcab4ce5135599a90a05c0de0f59f56f61d60f8f76a47483edffa96c3ff547ba5c9e
113 -DIST firefox-102.0.1-tl.xpi 505603 BLAKE2B b6fba78a9d30c28b67f154cb89a861104ce04da99dceec62d2cc74d0d78d0dcb944f00f1f8caa91ee085d30fab15066ebb9e614ac54c2c2043b297d53c7be0a7 SHA512 4319ffd9cd39171f3e20c4888672ecffce2a00f919c7689b42edf74e929141c0e7745d7bf7163d3b42d8bd47f013e4cb7b157400ea5f259cffaac9ed30b886df
114 -DIST firefox-102.0.1-tr.xpi 544803 BLAKE2B ba2842cca390c9f12cf0c5ca8c08dcd85216452651ed448885321a83e3db4284809c7edcf82dc5a9c9ae50febd3502b29494b4b8cd59d3351fa8e91a26f6f261 SHA512 8418b8e531999653c681c0f13c2673d5cbf4fd6556653b91bf4defc67ce7b89ced86258a59595432f674c90ad84f4ad7ed417dc44bf8f578c69557f3c8ec50f2
115 -DIST firefox-102.0.1-trs.xpi 477878 BLAKE2B bdc2f8f7507b4d46aceebe1b6580ddee28c7f6f76b104370c281655512959d096ac9e06d5e85e7f1ee21537e249e6cfc6e7b6aaae3bfdf787a70a971059a36f3 SHA512 75ae2c20784f08bfb2f73ee0f4ebf8945941016823ac33019c720a675f1bfc22238b1a379714b8771e2e0bd8dc80f329b998fc5e0cf14e59be31a84c4ef789f6
116 -DIST firefox-102.0.1-uk.xpi 610931 BLAKE2B 65ffa288a52a150bbf07f613861a10841def29fdc10a419019117a15a2ced627604a3ca998d8f110002584ca2506a41386cb4a617095b0714521350000e002bc SHA512 d948c0b6e17ce43f209d35300827082a493be585a5490ca1b6c1148e626edb6850087a805b9ccb9f013d8a4d7b9ce5a0141a3651656afc7bc596ffa5444eb392
117 -DIST firefox-102.0.1-ur.xpi 547847 BLAKE2B bf7297c9f61f13f6982381a39bbb1b7a563f9fd78d24d5c275b007405f4a8915dec06845fab3e1da293f76e66d5bbdf502f57223dcf75ed3781bfb31103276e1 SHA512 cd63147c8dca534635e086becee91a1f618ab14df916804fd1355f2707bf928e7102110236348f1c12b9a9c4508f90b27f630b5ccdaa974af2b04173b3578882
118 -DIST firefox-102.0.1-uz.xpi 467337 BLAKE2B d91f549512e97716b83630c97da03368a86970ed18cb4712035f3e0b05c86893aaebee8d1a20770a89f2a7369b3c2a8ae39b8ae0e16d5675300005bc0b5d21bc SHA512 1bc34fd4f393d687723b977406355813f915b2e82b3cc6470d69a6ed507c2d5a1a19c4c9ac5a553f10079bbad4ba1403d188400d4e6fdfb17d8be617efb583ad
119 -DIST firefox-102.0.1-vi.xpi 563718 BLAKE2B 35c5e52eba1446e96c6d9663ce61bccba459e1b45440e74fb56754ebb3d7faa7ff43122fe85f1f18a28842c7830164e8149fdc8d5bfc8f3524a486d6880d9371 SHA512 51d32becec22ac976916dde9502e30be6530e262f1013499ea8f61af70c45d2f8aeb6685dfe858be31494ca45dceb5511cf8c03be9ca34524beb68b773d50350
120 -DIST firefox-102.0.1-xh.xpi 418245 BLAKE2B 98dd31f5e54089e623e9fb3f27be33b8e1fd26b659b30f37f69ea329b888f5e9aab39c8395eaf2a6af76337809fe19bd0a5bf8e5842c32a6f1bc50177be12fd8 SHA512 060bb32766ccf65122e3e03957d7661efbdf83aa6bf6de5cb8c675042346738006e94e8874274277cdcd8d86a7a15e01250cb6f0f947af1e8d5e18e62b83dd6d
121 -DIST firefox-102.0.1-zh-CN.xpi 566194 BLAKE2B aa405e8beb475726c1a041afc455858ecc52a2f9a26b98b730bc88d51f8067eec1bf9772c361de47d9c1a6147302c8e5f05f266417b49c6bbaad9d21fa8356e9 SHA512 f408b895ab5fbde63fd764a030ca6b54c387aab2bfd106eb146802378130a15fa867ede47e9e7afb5934488a648777b21eda493e9aa2189b3a03b3b4378f020f
122 -DIST firefox-102.0.1-zh-TW.xpi 567164 BLAKE2B ae898adb1bba36de80168f2a589affebc9e78c9db67cb3d26bade74686b5349bf214f2e7b1b7818f758c14c4ca6c10bea4beffc85ca9eaed40774808947f1bb6 SHA512 fd38490ebf8d4ce2479d943e840a30b246f54a8fc4cc804b39a7286355f37b55a20c857ad4752b71d1266784fff5a7cd196048a9447f9e65fdc2580c252cfa1d
123 -DIST firefox-102.0.1.source.tar.xz 477609884 BLAKE2B 20ff263286f5e14b3c69e09e40fd102a726b7396f5d04a5ae982a41212f4e1cd07d21435631fd655698bf03071118555a3dc53c4a889a323b9d11be2c993ec74 SHA512 a930d359fb81e473b963a93f6db5110871e9fd57f6d0f352513047d363d930dd4811e8dd786c2f6f3541c3871eb1c0169b718652d9ee076fd13a20f52af30417
124 -DIST firefox-103-patches-02j.tar.xz 18668 BLAKE2B c909724483a4ab1b5d143d29ddf18690128910fdebd46fa9014918ae73514800ee7d9de7c19c17ec1427596c72681d0c53e417721d1d4e843e09f2e7aec7dd2d SHA512 e6ff29bcb6150bd0cc7bc1fc6c5878acadbbec9eb58325beaf1ac7df41d455b765fa37d7cc95b8e1ee606ea15ac1bf80b9c4133e8b815b04b0637c741ee8153e
125 DIST firefox-103-patches-03j.tar.xz 19152 BLAKE2B dc4080f058bccfe3e092834501ee6210f44a02291d177b3aba5ebf6909d612411c622c794f30437136a8826c2bfe94f568dabdf05360f9a8f14dbe742404d195 SHA512 6edbfa089a0dd97a987065d63c4c2cba417cacdd45e9a6081193e87cae60c38e6327b0cdef0c1f272e082e985289d9bb6807caf262c272165362e696ca974010
126 -DIST firefox-103.0-ach.xpi 454180 BLAKE2B e67d540246e321dca27cc7bad4f7f7e537d1da2c8db5c54143045a47568f6dc0b298d2cbd07dd9a6aa2aeee62f00759e8cbefeb17fd34399bf5ff0ad33424b9a SHA512 9d0bc239526b0ecb4f920b184fdc7682ec8dda7fb43b96dfb199ae94db9041326598fafc2676ce8e9f48c49f459f4ad6bbc5ad4166f3deb465cd6673cac6f84b
127 -DIST firefox-103.0-af.xpi 419562 BLAKE2B 85518c77505ebfd1a038f811b69052454e7675f5ce99b7708532925b6a246d3e28fc35946a91e529da093b6e4f75665163e4a89841f65e4fa6167fe49895687b SHA512 c4582ef1254141aeccc5e93f6ff9b1405e7f742e5d766c6ea83ee68ac9f2cb4e9ff5960cda5b92ce9da6a933aa71ab00e40ee00e006640129e69463fd7f53e73
128 -DIST firefox-103.0-an.xpi 498026 BLAKE2B 13ac12f537bf2ad7762841dfb6da5fd0a33445b2e2e5043a02cde7a74fe802492849607516ac3529746865986ba14d156958a30d47454a5b0af737ae05688eed SHA512 7f4fe332a6b33c4da9aa20c3a51de759fccfd47e051751b32473b9803319587c7cb2593e6d6ed02d702e317d59efa3e255ec3a10671e3257d7299644dd66003f
129 -DIST firefox-103.0-ar.xpi 561675 BLAKE2B fc6a5a854c978447e14049f6634acfa42cb197945027c94d99289104a74d77d740199e25bffef6631e0ed284504217e5f9d351497bc73c9c1dc75457e35acb7a SHA512 147870082d90ca54afa470fb9397d98ea04f6106f9c7ff610395b4964f4707ed0a01b28a8893b2ef68a51e4219d042fea3e9633d0cb4f540b7d0b3bd3df79204
130 -DIST firefox-103.0-ast.xpi 494286 BLAKE2B 1e345030fb9ceea95f501524f65c23fb27c445974c28085f22e99a3e47008e8e6bcee3f78ab4275c5257109adfbc8bf4c1f70892654528a2de26da5dd43a9889 SHA512 2eba14b4c83bf55c1b03943e5bb25d1401c659809a4b5d186917274ba91a54a6801b05a18eb517ab672c7d7e2491573674e6c62d6b61426f0d0578c3217147c6
131 -DIST firefox-103.0-az.xpi 485452 BLAKE2B ae5246f5fec480702c88268f2249c6110d472f885e743923c5b11c4ea970c88d0d6bc75a17f42170a024636c15af6ae461571292c6a7ccfa42d7f79b6ff44a8b SHA512 de5807ea5e3c240691a63632bb6be5d30d7b1087a33230108a8a5041427cb1787d0ee45b2831399c600574ec5f208b076493804d8af8ee5e791090d4941d6502
132 -DIST firefox-103.0-be.xpi 625932 BLAKE2B 92f1450d7e3f59b840ed37b4fa6f433e5f393811288bfb42c8bc9fb7229696ce44cab476d6b018941dd1f9e7e28106233b7c747f365b3b4d406470ef5d46f1fa SHA512 0a29dddf1df17985016e180e2e6f12b137486599602a2eca7bd856ef0003b226d48a94163a97bbc6f7bf4cf271a29aea98ed9c529447ed9d9689079da19ea356
133 -DIST firefox-103.0-bg.xpi 574190 BLAKE2B a92ff339c6f6fcd7e9400e110db89162e7273d1389d3592fbc9b9bf0fb0c13d03984120cb796fa0398155b24a8c194307f0b3d8b8037ec7da9456c8ad1629c1b SHA512 90fc1140a9c50b5626d43574caa87db93449449411b00f25bf05ff3d63f4a4d718b3bab27b7edfa1474d3eb90b257c3cd6c784a0c7c06bd98705a8d83acb2096
134 -DIST firefox-103.0-bn.xpi 576225 BLAKE2B d5cd81a37225d644eb64e42404505de27b498688db48c5fbec1674079844cb2c12c61ab136e75499df32ef7c5378e9a90773ac6ad8eb479c5224807e5c5a5343 SHA512 0ccc915b43f3e93da06036a3fd87714436feccbe8a0f6a33bbcc52b6eb3be4c6391fe29a783515097e35632e24bd8bb075d22e5ee5330d935af5300354fd303c
135 -DIST firefox-103.0-br.xpi 532117 BLAKE2B 0dcc378b81b001343b422e6474162057fa9801883fc032c0052b66c16beaeecd4db39bced3858bcfd25447d1d21508b8d8916c7fdb5d663583ac80e2a1069ce7 SHA512 ab977195985135b55e975eee10402319b328b605deb9d70b7e13a13657aaefe80f5d69083b28b8d02c65322fc8d2ab4889d1b0214afcc98a4d6c2ae0f9d2ec05
136 -DIST firefox-103.0-bs.xpi 462888 BLAKE2B fe4b442c255492a9dfb8221263efe26055c1b271aa95f5d0e3046b3641f07be1b6c4f765df72d83aa1da3777852772b41cfb26f797484693e94d98014fe58adf SHA512 dc1c28187793c6096461b0095235082e73178aa3b5e12016f107351758a62c6598fc6557141408a80bb6212e0f5b19d3cb6c575f032cd1fcff501a522546ad35
137 -DIST firefox-103.0-ca-valencia.xpi 537345 BLAKE2B 73b92fd25e8b6285e06faab9f2de71aeb9d631ce4fdc103b4dbdc49f8b362ea5a2a586d0dae24339d289f5dfece3e063f548fec9c47a1ba858686f936cc60574 SHA512 9ad4c3f268d3c9508ae417a0b36c26532116a3dc6572cfd4382aafb540b3843d1c724ce79695d7110f03808d64642ef52d1a646cc121f25689ba6ff438ad0189
138 -DIST firefox-103.0-ca.xpi 534085 BLAKE2B 695a9fe0084b3d395f4b2a26a0c11f8a45008b7fa1cf6869a78a74e2ac8499f7b26b06591cdf167863f07d78891b3ca326c4038214b299832d7f5002bdf9ccd4 SHA512 d9d12048c87058bdf87c54400bdf286cb7c6b78debf69d45e35c67aeebbcbcbf8541db9ca2b9c0050d847b35121041ed5a06f384fcfe107a95a6cab3cf3be52a
139 -DIST firefox-103.0-cak.xpi 550800 BLAKE2B b7b165e902490ed79f6b25e7a2a63e40cfdb66f7080ef679ea98eaeba6a911ef4503342d7d892d25a6db7a50908cf4d2a3a31e527f8b0df9d2ef9e4c748a8a4f SHA512 fe47dbac7e41da05207b104fdff2535cd136194e0c53bb81ca3c63f9eddafd83128362c77f033d00dc31308881e896d53760348d41905714ad63385f183068e3
140 -DIST firefox-103.0-cs.xpi 567604 BLAKE2B 3b4a003cbbfa848562a84cd18c1b144089528fce57b2687ad2b25fdf60cc4f8084aa0bed30c17cadb4ab60333d333f28b18b4aa561b898007633b75f71052c5a SHA512 b8a0c94e903500eb37e51bd26e3f664707db5a15690a3a1dd66b6945c80662de82ca25c7f58bfb8cea3064b8b7456f8297224b30f66825f318bc873d378f270b
141 -DIST firefox-103.0-cy.xpi 545481 BLAKE2B b55d663b1fbd28a66c45ea34fd7cc67afc99f02e28330298d91bc37da81e876a9028019103a9f3e9745aae600812cff8488323eca70b8c522816f6a6679514a9 SHA512 24c415505ac11c632c383ead10223db392352f9501093e0b46f83861dea1cda23a27508da4990388e254d76c248e62aa42c1312af06988fb02afb1d1440d7df3
142 -DIST firefox-103.0-da.xpi 535882 BLAKE2B b377ee1c25c2d9d405080cd307e9f6db242d47b4468e8ae83c335961be312b87f37235d2465fc794c1794dc2f86e7fd89ef29008b0673877f675c988dbd3b2e7 SHA512 c05de859cbc20f1d68c5cc3361857000f9aaf31f358795ca8e6167263fe1bea9911a0acfc8a82352edbad940d9822b3d1d734c9760a3d4e208b0eb9a71f0777a
143 -DIST firefox-103.0-de.xpi 555983 BLAKE2B 7a3c54b5dfb20c1f87971ecf820ee42cd94ffd65666509fb8ee0a30e06dfd61e829c40330d74444f90b5379a7563d37eee7f1308a156024332035c1252da56f4 SHA512 72e7bc5e8f6e91e080a03849c781fbd21d580ad1629f700528defd62992e34a66f3fbc00be59cf5da2514587adb57dc375ec23d9fa000ff23f9a33c615acf8df
144 -DIST firefox-103.0-dsb.xpi 569470 BLAKE2B f52b4920e1e0d800bd77959656b74ddcb547de8fdbaee1c53a9c82eec6d3892c2929f4d146cef1c8110bdab88d963a0952a11b0e0e40f977c2a65603ae219f6d SHA512 7d3ca48b6a90689d7d103c0fbf376cb5b606eaac99d6e9589760929372ece770fa51bf88a12250191452cd48cf86916748febabdb65e4b0b25401c37a359d2db
145 -DIST firefox-103.0-el.xpi 640794 BLAKE2B 3c9f5443340d0e40834ea8d469ee52afd1e92742089ec696886e6a868240e787ba83c073c6126d1bb8daa9eeb28e770059d880acc6d21ffa56a029a01e9350f0 SHA512 e6e87c4cd6c4538397a735ce98f84a9fdd43a3eb1f6dfd56115bbe004d297032acc8011e1d8f1fcd20ae538b2b5ab49c6b047a4393e8395c475cd9381a6ebdec
146 -DIST firefox-103.0-en-CA.xpi 513837 BLAKE2B 4f7ec3418d14d8ed12ffb32be4dd28517db12228002f6391b4878759af828501ae1d4b61f3dc1b35cd9fa978b96252b3bafdd225ad23b6152aff121dccfa0394 SHA512 dd3de690ab566997fe566ad8c04f416f924d038e094c33e5d9c30eb18b3b848c74c89c7c4b47893a4e64196e724a1cf8c0d9ed5cfdeea2ddbf8439daebacaf07
147 -DIST firefox-103.0-en-GB.xpi 514045 BLAKE2B 312b6bc40c7e191cbd81844730f89c4a704b6cf8fd1e213a0294e346ab93af3c7422ab396c4fc2d61f3fc0b2899b29b468fe521cb353c096188298f1c865d698 SHA512 1b27aa14acd2280080e416dc41961f0d1793ae434561d030c415c8611d7dfb59dc1cedeed40dde36a1f4b0a8c47ab67ea66a6993008b5f858cc56dc228635eab
148 -DIST firefox-103.0-eo.xpi 540156 BLAKE2B f91e41612fee0788724573e8efc58c701efd5cb0e8e6f3a83651e986ab25968365576c70387c6dec479db8427b3cc9cc9d0ed3fddd3f384de075023b45a73048 SHA512 356b1bdd1eb8492c0ff468e90d248c2efe6804209e55ee1bfd8aeac4d746631492a6c83c6b9973450cda711937eff1f40d7dca8136266be6e6705b57552dc61a
149 -DIST firefox-103.0-es-AR.xpi 550478 BLAKE2B 41a9ddfd6cd8f8f713ecc294f0369fc32faa681f765f8f57443dab0c25b0bdea52e4c166a6c8eb640f4391581c5d08f1f3795abfa7ef834826ac2224b1311e87 SHA512 653de5a93825d88a5be1595b988e99ef07d2c381ffbe4b638cbc9329addfd8756129ced971242bee2c7daa8232092b989e46aee04e4361d25b504dfd3e0929c2
150 -DIST firefox-103.0-es-CL.xpi 549850 BLAKE2B d12ebb50e46e9535da5fb940a980808a3ba96539b14e2a4cf9893eff004edbda1fbfe40fc067a236eba99cd78b9c3df66ac919deb8f616974d810353b41a9ecf SHA512 34c3842f7d5d8ec80a7e4c18622e64371b2f5aa59c7e43b72885c96fa58c184896ed1f31e8d20be06184bdb6067e2a7a6bf987f17fd8cde4481f3654402d6d0a
151 -DIST firefox-103.0-es-ES.xpi 541257 BLAKE2B 300dec6f29c24d4b89e96be4f564faaa4b17473e81afc1463f606ddb9c49c2ca2cf0bda555f911c3eb44dedece7704999811cceaba50c4091e722a924385c522 SHA512 7c67f146ad6cc9e07dea938e77a07e7b2d3bb6e76efc93304c1fd4ff6bb62d111232b1a2949122572b00b4092de50dfb10e3a4593467c1c14a7e3901990eab33
152 -DIST firefox-103.0-es-MX.xpi 553698 BLAKE2B 64695b2e2cf0fe2e7b749eea46e7d7ed88651cd58511efae5de09a3e59c16cde9bb92e01fe9a8b6e4472010c067f4ce9b3d7d4f853b33fd3976863b320c49a86 SHA512 3c0c987d2452d0f0113ec804045e9e8e18fbc74907ea5b2d90420f509a8c393cd8b6923aff6c6c9df17d039d4127d405c92b4cdd64015ee7a8e0170f687bdae6
153 -DIST firefox-103.0-et.xpi 530726 BLAKE2B cc205ec3cd951b8533580d7c5a08d30c7fdaf47a57cbea7cc627c0ea86a24b06443a02841e4fe56423c7a838d42de69169cd1aea836cb7dd754250f31c27d840 SHA512 4292aed7788599d90d61fa90977e855a1a565d8dbe8ae7c524fd0c937bd1d724d3b16cf02430de7c59816bb0f66b251dd2c6592693127be8616526f196c2eaf5
154 -DIST firefox-103.0-eu.xpi 540016 BLAKE2B af25871d271d7dc1ae12d525dbb6b41fe8f67d9557d04c58b4fdf29c8a3836cc0947fc9fd17b0d47b4aba94232e8b0b2a818afcdb686aee05e84d19e0bc9bd7c SHA512 b0ee85a92e55d02716f6169b15402a8de671bad3ed9f18d01fb960009ab7b4cb19a99c84cc4483bc2ead90c953d28e54f29c7085b2cd036c7fdce89f4f8db396
155 -DIST firefox-103.0-fa.xpi 561838 BLAKE2B 8ddc0c3e21e89ab4b5766d53e8fba9fe597aefaf76d88a9b090d7fcb1421f304f9ad1e744060908dcb75d43c70e9860751b5c9e710d68929f501de4ff23b01cc SHA512 0c946530f45391661b9f38f7eb056c27b7b744843f8b51d0178862b575b1f5fe1c338c7ca27f40dbe49ef4a05056468d5495d47e6e39705d766a7de9b56b10cb
156 -DIST firefox-103.0-ff.xpi 472341 BLAKE2B 27c0fd7335ae606ede1fe6f21aaa340d21b2abd342e692b5d1f34d5b781c8128cab2d7a4bba98b4dee9ca081dd599f29b141cd9ba269acd69ed6f418dade4c3e SHA512 b5fb20b90c3c5468aeb32112e2cdf902bcffdad1bb45834db97a34d10fef2df1af5467b37729268c018cf3a2b715bf8b31312b9fdcc2046f2af620f691da9640
157 -DIST firefox-103.0-fi.xpi 534459 BLAKE2B b737b96e20151cbf722b400e63ceb22a9506168acd1359b750ba885743903b3fdfc816abe74834980fe3d05758dec1ef2c5a3910f4383d6f6c0824e97b4036ba SHA512 4a056b54f20943d9e7e41ecbefac43921ab39e4a80b0d272821b3d41e2229a102b4acf2633306bc2fcb7122c656f6fadfe369da6949d53ea3a7dbf8a9cfd8e01
158 -DIST firefox-103.0-fr.xpi 561671 BLAKE2B a31e688462d777e5f5d622130dbd626786e4cc718a9ef6025bc341c17527b0c3b94d1d30ed9fc8cee548a06d46d3d463adacafba3e3831a49cc1ed6be9e741c8 SHA512 a766ecf77d8806fe04253c4d3abb4c03b25c118d357b6bae5ccbfc47afe68ebdf03fab7342d1f34ac8d6e31557566852cc4e0e899f53eb0f947abc16ca2f099a
159 -DIST firefox-103.0-fy-NL.xpi 546740 BLAKE2B 78a2cbcf9925db0c1d22ceb365268e57c67b913ad0889d93cce63fa543923f3895b3802e9178c9f7db4a75c41a2d30a86d21880dfeec46bce3482c0dc6bfac88 SHA512 3c0a6eee201c68b3a0a9d3c199d8c3ca0136ee72d4ca81f9b1827ae3cf372edf97f852786a15599c89aacedaa188d08d35cc5f283be9ce7e3800e81a936e4efa
160 -DIST firefox-103.0-ga-IE.xpi 471798 BLAKE2B 952b792cddd7d3a29e9a263a6597a0a3a144905c26f5fe3e1d00ec7720936b77a3a706451c36e22b017c933af2e0f3013c27e33d02c37cbfffc82a0ee6f58bb0 SHA512 8fa4e6d1a56f9ea72197206995d02725b07ba92d0f75570ca082817e3f00795bd74709cf29f9ae660635897588d72ac2b8314bde816fc0218ae5db25f96b931d
161 -DIST firefox-103.0-gd.xpi 533651 BLAKE2B 46828b2f74ad2214620fd5ca21ed014817e9ea03c84d2e3d60626b8a72220717b6bf95088e624c5e87c8eaab9bc89eb3794feb7f8504c6db3a628c869858661d SHA512 d907598e8dc90f5253ced27dc113b41aecb9395a945ff2b750e9eb673bcfb0450120ab4e4b7b746fd97dd16d0d7a9549728839670b9d3185a5ea69079c39f6ba
162 -DIST firefox-103.0-gl.xpi 540047 BLAKE2B fa2c466c86e4f914685fc4379aa7a733bcd21360318acc7a350777380f82c4864410b29e84f8c6d42e158e363ebc79a54f57767b71cb48f8fb1077362a7bac4d SHA512 c6ee320a99ee02044f1a82cdc9b6e8fb4da859e96e9384b6277dd8f4ffe4b995c708f277fb8ce9957a754885cfe15712d15e7bb213c17a7b1ce074e6e8f8c737
163 -DIST firefox-103.0-gn.xpi 561557 BLAKE2B 0d6749ba29b5c863487a69cadbf2d6714e63716af9916a3a95f2cf759c2339c2655a91dca9480fb4a6f4a1e89efacd1bb47376e2e093b1b74dcc248e2255c013 SHA512 b1951cb10000b01f2112c4565ea6174ea8015d035cc61ee1c83e6a9c93fbfcb60a5c4f5c4a10649b47d8da5c9e15dc38488317e659862c9ae83535a06acc5642
164 -DIST firefox-103.0-gu-IN.xpi 526876 BLAKE2B 927890b272bce0398d94db6e235d1e2422313be87e3f7fbce20df750be936d48b55089a769d20486cb87ede4c04b690604ee003409b235a05300439b623abd2f SHA512 58b0fa54bc18ffc190b51647d364f55f9c863bc703bba1ff192c248d24db2c76d4caf4d06a2c9c103f69f0e12525d79f1160162b44b0a39927d9f52bbd24b93c
165 -DIST firefox-103.0-he.xpi 559703 BLAKE2B b47faa07309fd02bf180c817f2e2d8a68a313a00f8716d398d495dd560dbbb123424a3f25203f7973aea96dd3111c486222b28b11e4100a20364bbfe34d80d6d SHA512 b1bd5f66bf574280a62e7804f554c6dc3856110993a318bac54c4384b434ac328208df131d9a055a4a1acaafc6c53dfdd58b383f432fb9dba2f71a2a25c134b8
166 -DIST firefox-103.0-hi-IN.xpi 556912 BLAKE2B e5484dbbf59a07fee9114e4579a6c8d88c5c7a6b3972436c295debb67b67d1af15d9a317ecb6aa440f8f1bdaf44028350a9edc30c0f3e51c5fe667cd0f98e0f7 SHA512 cfb5d1daf75a6a6bac34660dd7481b3ff5e5be52fefc2430e3aa2a1ea44eda5bbfbbcfdda436df688fb1f236fc098d36236b6a7437eda088bf2dab828bcaf492
167 -DIST firefox-103.0-hr.xpi 530621 BLAKE2B 3a3e2fc003edcc1d50978aee740db6bc3659f4ee62d172fe0d8d89adaf96b0d63a78f3a62911f020af11e37a1a971c17adc350931cb3de94b62f7d5cc24fbfb5 SHA512 56d767e848ee25bff34940d32de802e988337f38fe96b2e382d44eaf70f4560f234bf56d5a7c0e5960a7a91d00abafc80d4e75eb9f6ef4a3d2c792894b4c44fe
168 -DIST firefox-103.0-hsb.xpi 565689 BLAKE2B 5d1d12e96b70369aab0ddd7124bbdd45f3753c8b8680b536cdd6f0d858e9fe1d696c8f28edbbbb8e2f2b24b45a30c2db265930a48344bf6d766284ddc80530ed SHA512 f5f24fa35977621fa2e7d77bdc0f09fdd0bbb1155b3cdef044ad3cc4fab2223e76e875a9fdff430f50080de15a8dcd200e81597436a17df213a3c931f043efe1
169 -DIST firefox-103.0-hu.xpi 568980 BLAKE2B 39c6c6c2e8c2d409cf8413065e431bc4400fb3598cec426c7a073d336a367ebe93f16cd014a7594ee0ff04854d7d1a594e8088a3c76b992da7e942d0ecee0423 SHA512 bba1a371adcabf60a8c12bd2f4357199b5119d369c220e002c8d123d96c65c9102a9bbeebd3d16b1246443f0f7c5c32ba04ad9025163370251d7a18430fc027e
170 -DIST firefox-103.0-hy-AM.xpi 581564 BLAKE2B ee4d4eed161ab315fffbe33d71470719e29ad45954a8f998d440fae0514952b648fb6772dc9e0534ca3cd33286edb9e28e6dfcc3c5e660deef149efa27b080b6 SHA512 e98eddc8f1103508b2989ba71261d62052aa8c27e22445976854fbb8a01af0eb7d09aafe35cdc18bfd978a50bc55ed393bc1b56ff0e5d8e2981c3cd13195edcf
171 -DIST firefox-103.0-ia.xpi 535623 BLAKE2B 346cc6a85b6e22b5a7df02dffaba86884e50ca2dd4907ff0b6f7fd1174f5e1e3d6f22c52482441fd582d6e28b6e26eee22f4fda1c3e769897d76cfa69c9abda1 SHA512 2bb51dee578c5de7b48fc4854b2747008aa15bd1b7a43405135992891ce8b5df8b7412cd520731ff73ef900c6a601bb42c392a7064c5c116d04cf52e26419902
172 -DIST firefox-103.0-id.xpi 532809 BLAKE2B 3da30cbde94c11227ddef07f9d7b70071a5759956fc262f1fc8f9b837b412006b7814655dbbe72378fc3e6e15cd015e500f7c9a8b8b74498bbad0a63f7e2e2f8 SHA512 4702d910e67f544087a0565b15c9c89b8758a923c9e465e7d00a4e3c3b65d978b9bd8386509f182ed5994715905bbdd2f4dc8ddf1c8b52daa5aba41632a7cf30
173 -DIST firefox-103.0-is.xpi 540838 BLAKE2B 523023110ff656f1dd9d0fabd3443d8a4fc31a5b1f3736b2ee2a688d7aa58934bab934069174ae24aed68de78de3032d41cec07b63aa4f2c37b9917c06f9bc54 SHA512 a0795f691c67f1cd049fce8b8aa531ad3b69adadc57f8ccca866e4f56c30bfc20187103dedc7223448bbb346166cc431d945196264d79abae20d54f0d35db61c
174 -DIST firefox-103.0-it.xpi 454424 BLAKE2B a2fa1d2f39e2bced7487fb9df947a290da17cb7d90ce10109e1601404a4d880dd49e1fbb2494dc76b8de67ac81cf2b8ae2ed7c5149492c055cc242a310f0c84e SHA512 8c7d3af04c4417134cc0c7dd9389710827c8f2f727449e1f3f288fffe20e32fa50e048733d5c69265c8b6513dcb7935f719aaef1ab3c7f4fbc622cbbd1604bf8
175 -DIST firefox-103.0-ja.xpi 574511 BLAKE2B 1f08655891bc86256e08c95354c14f43f4a4e74f31352de7bcf7caf79dd2caa897417ac541e98cfea86997f996ce7d3b94aff5193400cfe3d05cfd88a442172d SHA512 b6b643876d983513a40df16f7ccfde7a28cd01dadf812eb7e1d1cae74ba8c5148df294ba031d38e2c402850614df82f7b7626d526d55960bc16a979da6aa214c
176 -DIST firefox-103.0-ka.xpi 594026 BLAKE2B 60faf9dc9aaafdd108402daa8788d9dbe78596a68f7344c0a99cc9d07d78c5af32288d01a175addf026bfd95b8e0bad07dcd611bf0b3b61b9708aba846dfdc7e SHA512 2b68beda724ac86a87ca4dcc643166deda7f0273bb63bcfeb739a856f2852a6581c2c1fdcb02214fd80203e34e1d8dac305030ce29ebb236eb064ccc1dbfe4bd
177 -DIST firefox-103.0-kab.xpi 554258 BLAKE2B 5792132babd2ba98591d73b0e1e9d65a630e418e5315e4baadf57eda3b9e9fe998701245c723c9f6340708efcb8da4f695400997bacea59bf4b69174671e8081 SHA512 dc2610292133539e4872be1a9b43b8544cf08ffbb698d471898a35f073dda64024a50d67d88e676b1f2db365b98726ea3a020fd1d41e0147d1144dfe94ac37a5
178 -DIST firefox-103.0-kk.xpi 616958 BLAKE2B 3388a8dd6ea0d13f4e7621047a44fb9a6d569ef4ff035a4bdd5b5659d03ee1351bae2eb92d8b169431e8d10f867b9ab24c1ee4c3b79213366169463e02465835 SHA512 c628986d69bc92e4313a8c3e85cd981a07f7dad119296aeeee3d53749bf3c07f62205935c36b29e4ad1cbb15108375b9c5093f59a684d62f6362101b4d6edd07
179 -DIST firefox-103.0-km.xpi 531380 BLAKE2B d09be94f66cfba85c66a89028818563fdf49ae8fcea38a1dcaf7a11371642578b532b71cab1219e5afbcf2bf83b3cc6409279a8545af85af283fe12eb65a15f0 SHA512 ca456664a58e09b30e1b1157f286348c23832f9637611bface4da58cda910a9fe52f0b783db69279e501d04c2c6df66c00865024ba322dd4f7e204eb2f356f09
180 -DIST firefox-103.0-kn.xpi 497490 BLAKE2B 16227ec4b20da8544d8a3418545b84eadeb8a14958effeeb2f68eada668565f1de34e9e7e6bc5170b065346a0ac283ef016ee1ecaa086f7690bdad3a5e434315 SHA512 2291597d181e80409c9b14de933a10ff2d61053b66a8e03783293c087c00d1e443c7d46f2bd1e914fa0556c838d3e3a00855749abfd7a3822acadf51a5a25ab2
181 -DIST firefox-103.0-ko.xpi 581111 BLAKE2B de034001a123a4da2efaa3af8ce08325a1b5e59a3bcbdcdfe61aabc072b728ffa953b6dc96b0a533f5a56719dc57ad62fbe264a08cfe347b72223a164389160e SHA512 435df17768947439b0af7e46d49d3c702d2ca800798fe7861e8f9c9922d5bacbad8e0f49db250130d9536bdfbfd86709021e4a62628084a86eb61eb2ca2d9a99
182 -DIST firefox-103.0-lij.xpi 470241 BLAKE2B 14d3d1cb1354bbe38b529676b1b75c0ae8bff484e5194368a7cbbfa0213e645f6a4b8279f5cdaea4734a8a7bdb2e791c9d786782bb7d127aa2af216923828887 SHA512 0e6dcf9f2ebb097a7893b5134f762614495b3c5c25cd2a81180fc9dc653ba94ef952d85a4ea0424c9547f565c976a1deebd237408dac1b9c03143675de16e100
183 -DIST firefox-103.0-lt.xpi 562005 BLAKE2B 0e68193284dd1924ad5df392b3f4d839fc0a0d7470d9bd904ac43e9d374318027eb8671b8b9a046ffed2e74484607fdb3f7674c8cd2328fc32e37bc00ef6c77a SHA512 32ffa868ee98251b04f14484905fda22b47ee882e21566db8fde6908806ef5b9e1f6ae7bce0fe4cd1d23bd5a6f52b31ab7654b647dd80da50a9132e5a7f3f612
184 -DIST firefox-103.0-lv.xpi 463412 BLAKE2B 3fe7a2d1f8ebcecb75b48e6db1c0471c4556054b09b34ea3d4dad4ee7ac199df5c9b814d6cfc2b97586c821955fd78560f6bf90f30f691bc41487f2a48812094 SHA512 1ff45cf9f49ea4603efdf1411f010536041920a76a44e38902171d45938631a3d499e1b5ed1aabfc5188d41d538e5117f5e79bac6ec3e95a45e91fc555a0574d
185 -DIST firefox-103.0-mk.xpi 474768 BLAKE2B 2dd37eecacae7a8b171ee050d0741ea2b6ef4d470ac182bfb9b92e14671e575d6190b0f6291451eb972aebac5c29b18d1a69c9c61f95006e3876b838b29f9727 SHA512 0769cb8f7d842422e27afc24aadfb728b7a0953e845759fb44531e554aaa9f2724394d3388f95563798db536ca0a67bf838ea23778db42e76a24c1c483f52a69
186 -DIST firefox-103.0-mr.xpi 530630 BLAKE2B 93cd5d476acfa393b9ebcb116f55f6883e54139158af1315ed2355b28d5d7b75b335a21773e1913727163d8989932f1859665068eb6b0492101e916d2caef03e SHA512 60c472c7764692355d81b3ea54b16a985b653f59067d320a13117ae93e816abd64e84babf8a3a02d9154798709803c7adfd9fbc074fa4df069526fe31779c7ca
187 -DIST firefox-103.0-ms.xpi 448408 BLAKE2B a0f2f1bcf85abfd595886b47728e6470d2700cd037130c313bd644806ac2dd316a12f7475799d57fe9814576cbb3fc1425b2e039617cc9debc696ee684c4a15a SHA512 602d031fe939b64f37eadefaf26313b7125cb8f9096ae4b96107cfeff04a2bf9ad3a8b442ba274493565d43e41234d7316bfed74c08f0782b29dde464e95094f
188 -DIST firefox-103.0-my.xpi 510283 BLAKE2B ef084c5e04a9fc54516f95d18a6bd3f2ab16313e61b5d784999cb0d317b4647f3764c34edb4e5f48f3f9e243d4e77df9e525a48b36b5e9c12934211f45533d86 SHA512 b6b1bfc7ef95b6b3f9f79d4999902dd382c4a753719bd8bf782dcf70563c255d0b04e764d67154891f0aba30c568c4cb6b80b3ff316ef63beece06ea82eb4769
189 -DIST firefox-103.0-nb-NO.xpi 533222 BLAKE2B 41d138d029a20fdbdcd39b91d7eba90c579db9e7ed6937f4f20aaf4bb21510e2209ee821160e03fc10b8023eecc191a902a89f5299419385a4edf2d5e761e1ac SHA512 d2960991952a886f34f0d3a1cf9c37363d37ba5f9ba99f7219dc75ea6297aaee2b5905ff5e2190f69cb545bee65e0f065e346d1d86150057e0b573897c244bf7
190 -DIST firefox-103.0-ne-NP.xpi 489026 BLAKE2B 170ae14a33d9bbb29c9c0675e0b0d38a9a23e7cfa46aec58fdd9d776fcc184856f2dc5073dcbd43bff43cc122431a0c29a7f784d8d921ed5e0758c6cca4ccc85 SHA512 0c7a58e36dfddf5b11875af33472a5fd8bd3f2580291380fdf39781978c2459cfc374ab85cfdde5cf6b5934d4d72194f3df71314b370dd573d9dec7a8eb15c98
191 -DIST firefox-103.0-nl.xpi 541038 BLAKE2B a4375b84cdfb5217408f3045436713f1769bc0419ad5a040aed13e4e79c57794847e328589af107cb2d815aba425bbe8d6e7f9c204bcb5e5220f7cf744c63adc SHA512 0111a5d245f8ccb5f53b6d855d1122a9fdd5163c4405c5b936ee42fa987c5cd10e42d9782531b89bf2b86e990bd011cd9c7a8020c812e1328274ddf755274524
192 -DIST firefox-103.0-nn-NO.xpi 535170 BLAKE2B 3e29bcca2eaac42300499139625048ce5e0523db03bb3f34c30e61a38dcd2223b0fe436113957a5e337a412351fdd16e4df33c0b943e934791f412cc39418c5a SHA512 4518489e3b12f3c91acca6d408c279e7394e5814f063510c48d4c34397436ee740e4a89f2df1af6b4fb03b0e300ef8b8895ad960d3dbf8d7c257b364bc501310
193 -DIST firefox-103.0-oc.xpi 556224 BLAKE2B c991eb07e41605c9e2d8ec8bb6ba9a7e43199ed53ba05e84cec3d4d7a9bdf1306f3bbe49fd616f275db4d17541d56d00263165ed7077fe29823b3751e3a2de69 SHA512 217d89393072e4eb782c8c1b391aa85009c93e24fc63ec66a8c62f00a9aa3f393478e7066cf8749743ce54750eded8b0d8291e0c5c5462fa8b93f36a0a279c9b
194 -DIST firefox-103.0-pa-IN.xpi 599783 BLAKE2B 4df8e9ff8f4f40f17019281fc1482999625bd48b32b2d864ea864415afd0ab4146778038a3f19f3bafb5a7d78f353e73fc734459e596c41cf9068a0832916fd1 SHA512 5f5310c72ca2906de6521240240c5df29154b2a5345e6fe3d7f13b7881912e0faf1427ff95686fb576742b59069f7107478e871f59cd74cd1dbf08168a89a7da
195 -DIST firefox-103.0-pl.xpi 560469 BLAKE2B a405409d1e627fb7e9cc7685c99d1b10a65e2145085622c53f5abdeb6eeac7281a6dcdf9771e7603d4b3613999ba80a6b313d4502a00ef1b5da7d62c2b42eda4 SHA512 22a5360c7cdc2338df224c188e8ebab66a0ecfe914c2be1be11ac977b48fa2797a91fc673a28d5fb6c2c4d47942e48c667523ace29f18a2359a1f06e111f4f45
196 -DIST firefox-103.0-pt-BR.xpi 545993 BLAKE2B 0b8785c60a616e1add399426715ae6ef639409b735af10d69f0a196f94562255d17059611bdeffecb71370fe66acb350c739d3f56ac6434e6371dc2b87607170 SHA512 f8cdeb1190190f33d176bf946bb4e6ceaa5512c4240d6b5569431f1ab6f05c8fbf408ee654dfc7c2aa8ceee9bcb18adbacf38639b077f05cf5810edd6be07193
197 -DIST firefox-103.0-pt-PT.xpi 550405 BLAKE2B b744bb3fc09f75c0241d61e10a9de04049e6d4cd7fd1836bf33ed1294ad4268af292714f5e05a0ab8fb2d7fb820bbeb867dab19831c72d2c6518c296782f8965 SHA512 e475de833d1dcaefcebce330bba28eb3c8414b37394210e6eb7120fe47a56054380c0873448977830e01800dcae912178ef9096abdc465ec9f817a0ea093ad30
198 -DIST firefox-103.0-rm.xpi 539552 BLAKE2B 9a43853cb41ecc64dc00ab345e897884cf1bfa675ea4ba73545b639902ea3bb9c767677e8ef44d9a5b780167928aa435d055a328911d5d0c54bd670d2fe58c10 SHA512 1aef703589b4fd169dcf775dde432fa7982a4d662b45bf8631afee2fea4d06cc4c83307b5b4fb0265b0e0c5369f10bb3572128a6126adbb5dfd3239f274bc9a8
199 -DIST firefox-103.0-ro.xpi 528566 BLAKE2B 15ff8468ac0df29ab478553c7e18e4268f92d4303e074864271b2f098e88391bba9a4588fdaa30ee5bb0581bdf501625c47718166c93ab4d598aa03d72a78c06 SHA512 d27207dd29c485bf3797254f4c1704afce261f9d10a4240fd6852dd84c86c9360dcf07031d1e837a0035c564c3074c004b978e0ab048087fcd2bbb2ecad9def3
200 -DIST firefox-103.0-ru.xpi 630081 BLAKE2B 9ea8332c316ee53044327f1b2c42ae576b8c463c780e77bc9902bab1a16a95ff1aeac601ab14f357e785d98ac38d6675167943a4e0ceab5bf62af08e9456bc3a SHA512 948169bb81be21dacb96d47803532e894dc4bd5d2d5df25a1487c8265ca074eb18981a069fe58d89489dbfc73d036f890f028410a60fb265a65ae334b3b38fde
201 -DIST firefox-103.0-sco.xpi 496686 BLAKE2B 35a0165e8ba7a06d809a860c0f2adda3c44aa2d4365ac735aade885f886404dc49666af1ca8f6322d0992b57dd8a7b1a6e37d5ee8ab728fb33064a337be3c8a8 SHA512 206c43f76ceda1d25928f31c30b1db93b2f8604e8f740c906f254020141134293d3e950629e91f782ef8ee984118ca71bc7727d24a613be9efb939a700e135e4
202 -DIST firefox-103.0-si.xpi 485250 BLAKE2B 2a3460279152b5cbec65baadc9df5af9c0239234c9d1c7e31f56906260a66b2d53507e43f6046a4352de2fb228ab1b5551820356c1d1665d9730f6955595a3b1 SHA512 17374ce03c2c4e8241a15a9f512d3142d9e38ae71dde1d3e592336784aecf49aa597e641188275da97da5eb0769412681b28f69c222f60bf53ae518e9930e196
203 -DIST firefox-103.0-sk.xpi 569080 BLAKE2B 497005662be62a57e207388ef182f046501b84b5fb6ee4aa46d0c939c7b34b51d264bf2b2f317c14f60d08619f6da991705a10dac37ba79b4ad98ec3fb3b784a SHA512 2a45647583019483f8041a2ad83a211fa612772cd23aaadb36ee8e69bc2043dd663479fca564f702402ab2171325c7ac13cdd232109f706fa2a08ca679fd1fd5
204 -DIST firefox-103.0-sl.xpi 542270 BLAKE2B 7a1abf6d84cab18f84e63a4311073a9092c3733a016d8d4698ef755d04f5ca208727e0da60974efc8a3add1deffa2443d18e0872a721a4677010eecb6f128c18 SHA512 e17f58a756e993e24ae8f822d36555513a54008ab5778b0929212c8fe0a2d3d0d272a14d45f00631bc4a4e93c4b277c0be3539e394f5168f6dbf7b45831a124c
205 -DIST firefox-103.0-son.xpi 426217 BLAKE2B 0c252ae8e28ca80113f109a5f6a761a5fd0b7f2455d409e03f3352b767c413c74be7ae053915738f12fbe47209552f4a62637c29c5c211958ec4acc0905a3a2d SHA512 25360b5e636b56f45de6377944f8038124c49b28ab0ec975580b0eb0fb0d4e5940f134672151dad38569d66b67bdd82301f4ea3c4e33d0017a6805136b459d0c
206 -DIST firefox-103.0-sq.xpi 557260 BLAKE2B f3dd19957d99d73b02ede2b6e28d9061691c037d7a066e27855bbb0f7251d7a46d9d1b3d1f198136452fd2c3530a0933f9654ce063cefb9800d119a8c1dcd75b SHA512 6ed08c308e5f5b150f95f281a0196a576f57653a6c12717aef07fbb0a34ee3e1c65644e86b4fc147d21827c8b3aa6d7dbd92ab72e565078b3e13b32c6bcdf413
207 -DIST firefox-103.0-sr.xpi 582542 BLAKE2B 4bc38b8454874f1ad087b6cc2b8142178f1ccdefc88fa589a4542faa7c9a75bec9d1b019e4ea16aa0e110a62c95b6348275f868d170ba16eb4c7e844a42f5196 SHA512 763a27867a57aa1af4934e727465c6032179bc77b0d183f89ebeffbc61a3154e147ca2ae35c2c3afd36e0e69f8cc2bc66dc86aa973b9c21ae101c6ae58af3787
208 -DIST firefox-103.0-sv-SE.xpi 542868 BLAKE2B b7d23979e497f3365a30f6cd74a5ede2011d27e02f6b6f09a42152aa5093f9dcf1f76ce1108a2ed425ac289973c24f1bc5bc4138f3c61ddce08ffcc85728f490 SHA512 353fa3c14f3434ec9a973f7fd0f935e41421ad98698604703e856012d88f363e8c1c4871c3120e951dbbd46d40999dc744fe0bd15bf8e14c675419dbc1a88e85
209 -DIST firefox-103.0-szl.xpi 508459 BLAKE2B 09d32fb4e47512881535a167d4a5296b82001e250fefffe36a9d560d6bdc33f958673c90895009e13abf7632dc02dd4ee98b9df390422050ac9257890c17f52b SHA512 bd456e0b6cf17f20de93fc6336522aed8c2eae9cd2cbfdcea2ae86c28779dd64e60a65d64439e4b38c3f89d77b49d793f8d5ac29f8915ff657323b7c2eeb3230
210 -DIST firefox-103.0-ta.xpi 510669 BLAKE2B 669681718b5e0b21026113f002cfbb8a91fd6548a97bde855762722bc58ec86967f2a97eb4fe9658998ec9c8e98746873f7153af8930103303e4c9c75bd2190b SHA512 d85ddb313acd2781b4868ff6a9a91f191da7a41c1d28be528167d59b39bd206f01887bdacf95a9d5f1af483a8dd499eaa71b49b1dd7cd52aeb62ba64411231f2
211 -DIST firefox-103.0-te.xpi 551777 BLAKE2B c0feec32f074c0f730ed0c087f3ad5af96ef688f9bfe4ae1068117e80f8f77f41e59b167a3a29f389ebec26ab627b69d080620d4b1acbc5fdfc504348b9fa95b SHA512 2bef973f42f44fabe1d280c6f2c0f0061d910f06f2d015750366f480a8e98afae5bf0b23db2d4ed765fd6827a34d9a5e6e8711f80b5af54178182fff81b48d41
212 -DIST firefox-103.0-th.xpi 610634 BLAKE2B 1ef6900e8bbdcf012c1230a588e4452bd352d7d8a5d9238e251f09d3deab77fd18327d5ebea422cace5ec8b326f2a28a4f95a01f26f746ade6a78085a0a56432 SHA512 91aeeb628b71c309ea9c838975a4f235188d61144bc334550cfc0ee77f8527d18c75d390cf2fd2c890122cb09fe5d361149aa9ee4e839f2cba53d21e726056a6
213 -DIST firefox-103.0-tl.xpi 518725 BLAKE2B 2dc449dae967fe01ea0bb2a3ce530940cb961ada3613c8ddd63423df9d654aa21ea4100ee7e824358072c80797b1b3833e1603c2d292ca583cf5db7e174c2338 SHA512 fd3e3d822ef987eb6a2bef1af06d5b532b02bfab9f30b2a943303dff94e035e4e00cc4a0b0894684e0bbd166ad93f1660b39a198c21e52e455a2c8939d552302
214 -DIST firefox-103.0-tr.xpi 555670 BLAKE2B b94e7df7dc36fc1ce95054d9b7e5f98c776ebad41c0732c3ad04cb1ed5867fe48287ac34b770b17a82ab65fb93e445da57fe0995b150fcef9e7c2bad45e7d989 SHA512 d7fe1c053f904e3ce278ffac760c3efdd280954e7ba923094e2e646a51fe8aafc432a1e1764259d6f4a69f57713b35e97d6a86ef140a43d31a289d2cbf239864
215 -DIST firefox-103.0-trs.xpi 488884 BLAKE2B 9067507b2929b91f2038640b5685f3111b27ccfa612fd575e4c794678a1bd1bf714b8ae6e35f6c1448e13c78f73c0175f47b9c7e18da1139ac756fd63527ccdb SHA512 f5ec6c01fbf0d951e851a794ccccad3909a7c8ff46aa8af19a4068acfeb1843985d801aa355130d52e37c1050ec4746a8042010bfc26c9dbda89a93bde786e3a
216 -DIST firefox-103.0-uk.xpi 623499 BLAKE2B 0964ea78a573d514a27e398e819a0e5b7d4efee7c55daa26b2416deef2afe064d950b34c8c4aeefe5161b0268e4aa3b5929fab410e53460d59425c45ad699d01 SHA512 f55a1149c6f117317ea2b57841818b2281860d917b4a3e5c6783820443eb2d2a092654fabfcd07b47fcdbd6d0ea2e5545e31d833b795560b4301ecbd47351e74
217 -DIST firefox-103.0-ur.xpi 558759 BLAKE2B 19f8c0c4fa9fd3d2ad2b9ff1b71b13d446fbc0228450ee0e5bf5b691fcdc2ed7f2c78d7b56103ff123bbb12a0b1a9c29e9d8557508f5fcccca10092775eaa368 SHA512 4365a741d6703032ad87af674de9840c6b5648bbfee75a4714c039a0fb34d390e5a4f9158c64b45adab7186b0a8ced81c73242832e1eef0359bc869a87986821
218 -DIST firefox-103.0-uz.xpi 478414 BLAKE2B 37c096e036ee43b8208394e5b46e8a3e364321e8788a488fcf735c86f6c118a1a75c899e45af726818d14b9a31f0e75611e8d279b6ac85b76b22839178bc1def SHA512 9791dd946560239a0bd788e9595ea5f3b3d7698dbe75aaf6e3a60a0eb72cd269dcd30aaef4018c5cde03f2897d7bf1e17cce267869119086b87f89495f9d795d
219 -DIST firefox-103.0-vi.xpi 576268 BLAKE2B c1d15f1c5997414bd966b1e4e30519814170c71f4ceecf94eaafe0a71733e6caa4bd41e58494f132997e3111e213aa96a26d3708cff7b1aaf4d099873ea231ea SHA512 3dd86163abcab3f081fda8845441d43aa51d4dfdfab1158c32504289c7e71d80fada058e6cc223843dada71464e236dd1a044411919b918ff0a5288a5a2c3d4e
220 -DIST firefox-103.0-xh.xpi 429255 BLAKE2B 939711d49643893b976cc5aae107150e20bb241cf607b984fd5270161ff7738bca1302d4e722f1f7d0bce4b305e87ab223d9494e0806657380cd96367f9fe74c SHA512 7bbbd031be037b13f327bbf35314e8d1539589251abc830695b0e5d9938a968bed449202e7d3e77139303ff920d948e3313432f9b27dda118f15c3ad86cfe795
221 -DIST firefox-103.0-zh-CN.xpi 577420 BLAKE2B 00a60f769b3cb57ab9afc2465ee7b5eb90d53ac624aa4276397cb0fb41df5e6e17f55297940d686ca7c1eb453ad85d65b8c1a5138583ea4e358672f7098ccdc3 SHA512 8a45b12ff2a46265f4a7838417abc3afc1e8f23c32dc7cff3304d3812d575f914bcd4affe0a8240a92cce7ca42e4a61a5b7d1a79505a7f5792e69fd52b54b7fc
222 -DIST firefox-103.0-zh-TW.xpi 578009 BLAKE2B d5ce598183b1e8fe76d96ac291b7bfa4f15d19e8abe5f048e28c5d6e7ab2db62c255902fbde43ab65342f6c1933246e3d284f8818f8b3be7b08c22bdcc4f5ff9 SHA512 17591afa03fda1ce3212a27f1521327f96607a8705d8354002f7c30f108d46adc7d9f1ed56c9aebf3a92f08e956d77b55d2e76bc4970fa9b1dc75e90719f7211
223 -DIST firefox-103.0.1-ach.xpi 454180 BLAKE2B 350e8fba5485ed23db305f149e517964a89c058f61144cdfad78c83afac291d6f3214fe480fca7b54cd66434494a79f20d4b57e8e96782973528a65759f8d680 SHA512 36efc86cab0ad0232c25645f94968c6aada5c96e693cf93ca3d244da99942bae6791b8ca8b9a689ffb7e8bac5afa0466178455215350eb3140bd2ca63d764fd5
224 -DIST firefox-103.0.1-af.xpi 419567 BLAKE2B 7d1d7769906e262cc135bf760fa0bdc34b5ccc3e821082be68a00770253e04f30633f61855558d13158a29c9280c6cb95bdf44488b7da79e0d00b3f0b6bba154 SHA512 e204446bc2fca06d536bce01d9d920f8c6aad2a78ea1cdd4e149582616bde6d1155e5a0aab91119e7b02052368cfe5662bf6636d5fe18c9ab147a357b35a54f5
225 -DIST firefox-103.0.1-an.xpi 498031 BLAKE2B e7440682fbaef6cda8d5e6f0069d8385fcc112b22613c6221cbc31f7b5ec683479458f42164275ff695ec3b765588db38dfb83a2f26afa1b1c896aad4dc3577d SHA512 35540a4ce39efc8c65282bf5e5934f3b1d932db295976a889f3086437454d0bd0987af17feb6d935154dea41476f59a32910d1196099fdeacb12507a4d067e77
226 -DIST firefox-103.0.1-ar.xpi 561680 BLAKE2B 606e04a5f6bd8f5b79b9d80b8cf180d21a181a4a5b15d1556879fe8fdbba80c7fc24e6055a5cc4ebf1a9c9069100f61fb670bc32ac3cac7af9c7539cfd611ef9 SHA512 156c635d58dc4283cda6ea951886732747e724228933a3aebf8c7ff1629660a529f5c2052613240dd8c9c85186b754edd26462108dbc3cb6c3951d2bceaedeab
227 -DIST firefox-103.0.1-ast.xpi 494288 BLAKE2B c443bda216ea18aad76cabf5649977e8b1023012fbc46e986a2cdd08e6bf67b7c8f471025b1c591173749223f975ff71eef3b9bc4c5053728e76d55d22a279c2 SHA512 e8e8b71dde722dfad3360c8b578bd3ba1ea40efcb9214cc5a25e82f90c0d4fcaca16a070e346493b81237bf4265d81523c198d02ea3225eae83622b96062be59
228 -DIST firefox-103.0.1-az.xpi 485448 BLAKE2B d8095924cc95dee7d2aa16761d79dc6e5bb9070c25562b56c49e3415bb81bfaf773d15554f3128a8da011f860d5ccfed010f32039831b52ed701c24580d26f1a SHA512 2abcef585eaef03f6cce10bb39e9c8de05a324620762f0bdaddbe15550afe65dcc35d71d564c84c2bc263c4d1c1a0aa2119e5a1265b2a3247aa0247222e9b311
229 -DIST firefox-103.0.1-be.xpi 625934 BLAKE2B 85b364e2f6232afbe0e1d8a1f1837e61dd63443746f14f4129b2249de073b8834028f19a0cc2b09d7b99d01a697f157d0d9769bec919406e4f183f48138cc8a1 SHA512 c887055d8369cabaca43a401011cd4c706f0546ba6ed4648980b0824e75edf73f91673354ccda1355967efe70b289d8f8bb9f581cdc37b05ac41ed8231357e06
230 -DIST firefox-103.0.1-bg.xpi 574190 BLAKE2B a45d5acddc70f08999e657e5eb3055fcab55ab1b21b29e4c9f9ab67db4b96d8472859367683caa0f26069727d675f90b32e9918fcbbc0d237550fdf2e2f2dea2 SHA512 e0e0e67921bc67ef16cb40fdb6543b39c935d20940a2ed18416f70662d9504a0743a1dab841214bb087ed6472b30d944beb8479eac3986c4287ce1df758630e4
231 -DIST firefox-103.0.1-bn.xpi 576223 BLAKE2B bf5cdae17920b8946d641aaf78b5a1d7d8bb0c8b3a64cc56458f0c75d2063712fd28ca6955c500c5ad5aab400a2e1f9c3d66ac5dd074bc79271e06304b9e9557 SHA512 1739c3125eeb6826b016ea4d28844e71d45e0bad2f4d422b8c7677dad34b03660840ebafbaedc1fe27c7f66b9a9ed42d0a57c32bbfcc59a7c53493a0ec9e7d9d
232 -DIST firefox-103.0.1-br.xpi 532123 BLAKE2B 38ce46e4f98ec47190aab10156d37a0589bac61cce0945734a043bfe2fd761da0596fc807592f87dab4c2c9d02ab30d9db2bcc5cf01434be2d7f89d7bad97d40 SHA512 025ea89eba79d5db4d1fe3e277aa9a1e511b8ed7dc2e613059e131575f0abb09715b04de451db552040499e2f6b29421384f315e0fbeccd7f9fecb892b44a52b
233 -DIST firefox-103.0.1-bs.xpi 462892 BLAKE2B 97222965a6f465b797d208cdb19a7a7c3d2c5a340c5661600ad8bd5d5c10b06b8ce2837ee1af69d75c62cfac0d596f930671778bc831a2a9d013096ece9e6b9a SHA512 bb23a6361e21c2a46d1800d5628e96164db29ba2b8121ba1ca7c590920d3239bf9b5d3d09595a303a2053c9123467bfb0eaceb9dcdec7618c4e2d5fbc91bdee8
234 -DIST firefox-103.0.1-ca-valencia.xpi 537351 BLAKE2B f39260718b26764535ee9816f45f2fffcd22c0e13043b8243fd285b9c132a90e9e59cd30bfbf3730e29c6d96716534b4a14eb36067abe178ad7971b4a5957ae8 SHA512 dca2e423d4c6390a53eb6caa50aaf093150beb97a3f7a39a937e36235a69e1d4d0fff66629ecc60f63ca35bca3559d5e21d9b4fcd4ced40403c23317cabe543d
235 -DIST firefox-103.0.1-ca.xpi 534088 BLAKE2B 63835ab296d47859ba2ea60fab1d8c6a1352cf48522e0587bf893291fa4e13411236ca9931a011d4f7c4a0f5e853c144faaacd87442164de236222f618691e0d SHA512 763dcaeed9adc56df75eb4632b6a9184b59b22f5518a223910d20934ade76467b5b2732148fc2f5342ba0371d9682ddf354ccd4b8a3823caedf3b918e44a4e0a
236 -DIST firefox-103.0.1-cak.xpi 550806 BLAKE2B f01eb8c0bced05784340040546b88c089f0808e1f9b060714ef2ad0fe1ecfb5577f545133c3bf1e5090f6a9efc16dc5faa41f4a997fb3025f44021b2573e8660 SHA512 470917b8df6592f14386a502706c0da6ea787be0599b6b9bc455a4c7532d3b03fad2765fa2c100f62a9a552dab4180c23b3ca992dbda90685e6c4f62f3100851
237 -DIST firefox-103.0.1-cs.xpi 567609 BLAKE2B 065e5ace8afe256c5439a5661366213f488554b73a5c92b8fa2b0d57120010e5a463d67cb05f624bc7afde81c8afe4018c5517c9337c750022369cf2275b08f0 SHA512 8b60e4284e6c4bae9fa3cd67d58dee9b0ef76f8669585a6eaf8756aa0bbf1452e2c456cd377e70702a2c3407b74198aa086c94b1ea51a2ce919df938ba244ded
238 -DIST firefox-103.0.1-cy.xpi 545481 BLAKE2B bf45c050be5435c55071e00d1bd0e88c782c75e2e939a63b962bd305a2a1ae75a955783e218c5b495d11d1bee428531c176dc66db04430150639f62286fdffe6 SHA512 a9e91cb710400b9004ac614c74398a30a2d0c811b7f5f2e470192255162a7a5b13e71c8b247ae2a19a7e5397486fbda516b33742ef4a599b57a36e5f390890b9
239 -DIST firefox-103.0.1-da.xpi 535886 BLAKE2B 12d78d808f512600a1514dbe01ae5dc77e92341e7157f86782a1d2ef913f1dffd9ed34ab14202de6e51fbeb89bc9f43ac0c5a47c93e5baea1a70399a2feaed25 SHA512 c54e5c9d28b709554408c762d9976bc18d2288cbee10e08b7a4ca215ed50be9033ea2f9b2c1a35e12df80fc0939a5b945dcf5cb693884fd05b9e2ac457527a15
240 -DIST firefox-103.0.1-de.xpi 555988 BLAKE2B 303a0be5291c9173c1d20c9b1a8cf20e77530d394bf80e071007802234577553bdce636cb791bf880924d85ce82cfb993063e9272d8e8db96ca1566c4d19c4d2 SHA512 4cce07a305c17a1516aef2eff0b525a62b37e4f0a03cba62dd54db4a53a4205fe8f908284aaf7dbeddc51f0c3b7cf4b7196fca0a058a76e402039cc790febcbc
241 -DIST firefox-103.0.1-dsb.xpi 569472 BLAKE2B 06b0345fb26895a0f99791310ac9782244b86d059561f3dfe1273f95a3bd42312ed73ca1720822048f582931699a9c3149d85556f4508ffa0769ac5c750910a0 SHA512 6ffece90e31be81a1352fc8b3b8b25df7d7cabe4788d7398b767ddcdb49822658e0dc0de1bff74078362465ec26c8bcd1e5e35b213281ee9503ca4ace270dfed
242 -DIST firefox-103.0.1-el.xpi 640805 BLAKE2B 044d238602aff05a75cc31446ee718e681fc93d7681f9e785020f9c774f1a2b980931e03a99942f615fcb1c7874803459b1112a2c29e180e3654b42573ecdf47 SHA512 294d31c28806632fe879350b42cb3e3fa999904c275da304aa9190a797bf5fbe479441180938cf728429e59a5e75b0be2bb59d6ba4454ba6f875ed7f9539acad
243 -DIST firefox-103.0.1-en-CA.xpi 513842 BLAKE2B 9bffcb48c629e6031ebb67ec4a7cd2204c5426bc06dad92e975acbdbaeb17a8cd8b208bfe42a1c1373b8658a165d84c644229e7827c6ffa0274b17f159600f92 SHA512 bc786ed24bc241d226636e8154cc1750321370326d5e67eb4fa9181b6498e8cff783b2af257ef702bf29b44798ca22852589538860ae3351482e9d886b61d28f
244 -DIST firefox-103.0.1-en-GB.xpi 514045 BLAKE2B ee925bd08b5e9d4e202337e85351129ae6983e1d83c6a7dcd2f5ac455768a356ca83eb9e9dbe286a887c23dfb1dbf9d29546b06f2ded3dd98e47b0cf1bcb1ead SHA512 54b778e963875b7063deb20d34bcf65f2a4b60050946f63ecc1c2c1119176694e453e60bc2944f8bf91e4d399e765be5d37277db249e576cb0f237ab0b1876c0
245 -DIST firefox-103.0.1-eo.xpi 540165 BLAKE2B 4a6540f04e0f1b247fb3fb9b0e9332ef5fd4d25fcf33d845e7a60dc46d25201151cb1601a868deec0810c0c001890e5105dda97cf6819687e8c03251d4e13568 SHA512 87bf652f5a8c14b5f029d6d229a951e5d1e513bc5a89b605d32046ae950f7fcf9cad36dcb7531b9ba6ea364161d0b5d0116b39e15c58f000cf66a17c6979a909
246 -DIST firefox-103.0.1-es-AR.xpi 550477 BLAKE2B 674e6f2779d0a5da638441f5cad8bcddfc095cbbe2dfccf8610e85b405dad60999f0db352aeb0bb298c0748449186f95a03b388d11ec3a331ef456cd1971d071 SHA512 5e7eda59a7ab6aaf8274d21f30863192aac640e0060b3c3874a58190483ce7db359d41115196d8dc5691c9f331e8243b6eb3c570b1c9dc4160a0b7f38a24c023
247 -DIST firefox-103.0.1-es-CL.xpi 549855 BLAKE2B 520a1bdada5b63de8af347520f78dfe1c30941510b9f2ab4cee215766c13f1318f938b610f06b88d346e2742eff400b847a1675a10a4c08d4604377e9394820e SHA512 b664a17962cc7341da4e2c4623b5a3869e8c028cbe1972d13ca02dcf1c3ff3da1f4426aa24e017b506eacc018c4b05b1d0f25325e2ca36a6b3175431aafa8b89
248 -DIST firefox-103.0.1-es-ES.xpi 541257 BLAKE2B ee8032d66e174309a8ec8457c9929ae05a3860ccd6d08b4ba5088eb2f385e6b406335a0a8b797b28db42e4bf9a4ac3f989a0740419d36194c38bdb7711b58ef6 SHA512 57eb8cd2376208cc3daf5adbcfb2c577857a8a1d6ca1c38a0d862024c1677e6b667cc18d6c99003acdc13fe56c04bc02aa425af0ff22476a0ae03128315e87e6
249 -DIST firefox-103.0.1-es-MX.xpi 553698 BLAKE2B 8a1c7c690915485e233de7c517688eb906c1cae737fb9be424f3809b51b0a394c656a5d3f09db975802c9c16f5b5d67e8ad3cf3a70a1ac046ad8f08fc10ff2d2 SHA512 bb7110e8370dfdc3a5386c710373fe4d38b795ef1d42896dc255609797a3009d9b94b25a45e9e600efed32c2f8b0d34e923738712026fee69a09c955f5dfe4b2
250 -DIST firefox-103.0.1-et.xpi 530732 BLAKE2B af9867d87c191d7f4d3bc47d3b3a8cc4fcdec651e7bc4704bbcd12c6ee5a9cef081b83ca16c9b4a31e45599bf8e749a4a9cc8bb1b90da40a618267e7a968b005 SHA512 9e848eda97cc0733a87d909bad8634c6ce2c4f993209be354b5f35d22e3a1157963d0d25fea8ebbfd6c1cc84974f5b0236cc29bcdeeaba40b8187a2eed9f3e4f
251 -DIST firefox-103.0.1-eu.xpi 540016 BLAKE2B 23cc04352ed44180903f0873afca91740dac6855aafef6592801c32fe10df33a85b059e79cbe81cd750701a7da79023c1a477a330627c085198e25172f0a66bf SHA512 a4ff6ac7c33166a14b2cd32b8f2f0204c9278f6fd633af42868c944862064847dc13efe1080ea9ffe72fa0477a63ec980b1124960f16cc03485595953f9092c7
252 -DIST firefox-103.0.1-fa.xpi 561835 BLAKE2B 57a0e1881388a6d8c28eeb848783ff72946a83b3a214e9635f4c9feb03c2e6f6cc2ede18971275b66be52ef27df44f5da5ed06572ff1b1be77b7be62fb70371b SHA512 00f567229df51a5c33a55c08475ead09f1eb85029f414b6206de47d892ebfd7d4cbb303fc761cec289625f1641179305d467fb2400426c4bd31b0d4b2888847e
253 -DIST firefox-103.0.1-ff.xpi 472339 BLAKE2B d0756543217ce5a001546de3e7c2229864aed307eb0edb1800ae598d4267a8a695cc68b24d0430052db94afa8a1ff69c7bd365f87cb218a11eae5c6b06f28867 SHA512 b42180bb24e5fee6f4ef2ad6a8404945855faf20b8bd9b552903c2a38dd0c23ba0868a8449209ae82b551288a471f5350b4f1dbb15097f0beff10f7f5e396169
254 -DIST firefox-103.0.1-fi.xpi 534455 BLAKE2B b901dcc37911b268a9c04279885d1fa58b706bc06e4cc6be44c1d44c553ee2cc73024cbcce43112c23c669da455cc8732b4794e845d3327b188ebffa00a7b4f7 SHA512 53951a57c1becfb18db6ad601780b49fd4d4b3b2eda24040b5cf508d465aec23abe61d9fa086d91b99debfcc2755524f488ef5a6776701d08dc7dc500cdb9f2c
255 -DIST firefox-103.0.1-fr.xpi 561669 BLAKE2B c1609a28d03aa599805968794814747b8825845de3be33ea12e77b0f32c8a8325288e072b78879a54c644bb0631f878b4a21a92c9b1086a6ace1125367432f21 SHA512 261867c89c5f4331faec401b5ad0f9e166760e032924646bc8b6d0d77ddb82b4d150112baee565d5f7a47c195f90eba6a55656bb2f79a556c470603407cca312
256 -DIST firefox-103.0.1-fy-NL.xpi 546731 BLAKE2B d0aa5d376cca3f97df44af1d9f7987c169e76e07ae732ad79e0198a135c95288915bab75161da3f2205a29c99d82feffd051d07b2527ca5a1930a66b8fa5ca41 SHA512 6519b9d52a9f3ed650076c991fc6cf24713a2f203b047938e6abc642e2ba343e124ff39d8476ae58bfcca93cc99f11213d78d1710c5946ae4b62947a421492b6
257 -DIST firefox-103.0.1-ga-IE.xpi 471799 BLAKE2B bdd5c5d5d55b0a19b195d81081c285d66688a75291ac23fa0666c74b94a6e92c194923118ea348f4e59140d1f3ebbe4999ef5c3eeed41cdf9ca11436ccf0bace SHA512 2a0ee31afabe79e4f00f8f385953dd7cdb5f80273a4027b776396e2dd26709c0f28c48214f1a62858fd73ea8cbab7ce829f69f78781d283458af47f2a1152b4a
258 -DIST firefox-103.0.1-gd.xpi 533648 BLAKE2B b97b0f198d86a6968220af72f0915c8c1d41bdfe950349430ebccac97cb403cf127f82978648d043f3699e1c3f6b640fad96ab8d2061953aae5e531ec0b4750b SHA512 56cb374044b5e7a5a924029dc6397601b6e87cf943af8d2f79c9e38df8c97a052d0c992f6e44158e6a23fb3b002e4d85a1592251f7d3c2e60b0f91f9f46cd600
259 -DIST firefox-103.0.1-gl.xpi 540057 BLAKE2B 0ec6b40c7a9175f127f96e52b79becd9882fe5623f3cf00561ce7c41c4cc73579a1e6fd6e3a9040ee3f6231778034390a86bc479d4389f57fd8f1500f57853c6 SHA512 60116df1014606b97935f36984140b4ff96fbc16e23d749965a94aadabfb43fd098aef9a650763ad30bf3c25ef394a84443e2666075a6e05bea2280955b02ec8
260 -DIST firefox-103.0.1-gn.xpi 561564 BLAKE2B e1a29760ebb3384d86a83acd8ec196810f57b985ba5d6e5e4dd1fd0be4bf9a265d4604c08b35b4e26b21d703a2694a21a8e41a89032ab6a40bbf68084ab742d5 SHA512 1a044632779a9d7e7040b9ab2cc1da0ab124fef35a6fb70f9fa161fe818d9d6eb9ca0063d6bc8a2d1690e52ecc4aea5226ae3f8f0ab0531df5316d6e6f14da4b
261 -DIST firefox-103.0.1-gu-IN.xpi 526869 BLAKE2B a891065c702f8eb2137e024b2268f6a03726469575ac695d1c087716a4093f9290fa72b33b195dc708f47f55fcd2fa3fbe411da499fb73dd63e84cada772e4c4 SHA512 2177171610d3466d1c4a26932ae32728bc1363b631f6964f4bcd36cd643230f5fbbaa14ab204a493725a574cbc8a4bec8115f6bd35a17616055209c89ca1c6aa
262 -DIST firefox-103.0.1-he.xpi 559706 BLAKE2B ce8031d8149a6270fd286012116c25d681b09d6e805623274f7fb53d7ac82117333eaf018971ab3640385a7e76d3988a3799f5e88d2e96e34bb1a16798b926f6 SHA512 2c938099d464c66d6c7e8aa5eca9fb073cc3e0728018c494bf4a01effe7cfd6e78752b2afa9a2d81024a1b7a2e738d1621d1e1690578d455719948b264af9c27
263 -DIST firefox-103.0.1-hi-IN.xpi 556926 BLAKE2B d2b8a700a52cf366622851ac3013b59ce9072eb7ad1f176465ffc00c101cae0dc904ed32550214e8198d0f3c6a9e5cfe29700999dca39139a63707fae3a05819 SHA512 54f76de0b86f66f0a298df11b260e7fa5c2a5c8809231a98750b9ccddb29d7be1faafe36430d1e06490a95b4b8208f830a50d75c052d298d18637f19debbc607
264 -DIST firefox-103.0.1-hr.xpi 530620 BLAKE2B c4523bb1337705cb7731908d130db988fad5cba3e823636abcb5dd0e968197156e8e21f38421a128fee7c749a350445980424e243521ad03c8265f25705a58be SHA512 526869c5cea7d7ad06419ad56aafbc56d397534924896510e3304ace4b023346cd4ef3ee69219b39250f6af6d826ce956cfbd0a53694b6837adeb08e9f0cdbc0
265 -DIST firefox-103.0.1-hsb.xpi 565694 BLAKE2B 930b452e972dc88923d3e41328e15d6d103b5d454ce7634dd4aa7a001685b336746f0b86f50581cdbd1189c4730aca92b48eed99616644003e81a7f20e5602c4 SHA512 99f2943f5502a60cbd14ed1ab9e12d3a88b134a2bfe3bebecc6564e37e1aba0ce5ef17fc535aa1f3e7834d6b85f2ef74c3b70fbd2d261d45e93bd1e6b8c39143
266 -DIST firefox-103.0.1-hu.xpi 568992 BLAKE2B 22c6ec23da10490925aa16b5b70c5e019dd0802e7bdfe23d231f07105c011ed5789b76a9e57116993ce533b95035d0b75990efb6628a2c6fbf7615bdf26288ab SHA512 2d8b5f6395ee51222e23f81978451b1e00aaeb8be04d053c06abd279da083ea2adedb08da6e544f0e1d7369a5b1cab8ac36c4e6113681254106d6d0b89ea371f
267 -DIST firefox-103.0.1-hy-AM.xpi 581567 BLAKE2B 43e413889c6bf59148a7e6a1955031720a6d8ececd19bd43aefbf9588fa21a8c284255a99d90289e2170a9cfd1edc9c3d9daba9ba4f1dba83046d09b3bbb6412 SHA512 5c3576ee1ae33af189a1c694ea2be90cdd98d6fc54df583f4f27ad974ddeef55702ab1fbd370b095a5be53f6b4f94bea8358d507a01cc7abfb767d29863f0e6e
268 -DIST firefox-103.0.1-ia.xpi 535624 BLAKE2B 443464e9cd9044abdd0db41203365a9f4836175d196392d9ea64824c63fdff00ca8a3f7e6b6dca1c83a409366dc2d3f02c7a8550196f36b841ec5e19fc4799c2 SHA512 33b67985658185065dba0e6d09df7de75d7488524158b1ee0f232a9e69ba61ec57b1dffe871ac5b316338abf292092c59b0a336e2abd6d5c7f0d0010f49a135a
269 -DIST firefox-103.0.1-id.xpi 532811 BLAKE2B 94d704daa9d8e28bdd7e65fc2a9a6feab5f3be0c188dbd8a134727699b7ffca69a66cca0b8c613cbb30b8984c7cf81bfae08c5437c272f4f098c00e18d70b215 SHA512 172a556b4c01db3fa2907a6e874aeb1f4b448e0d747c7d6a27758b7ecc1194fe36f7b52744189b842a6204d8a1dec56dde71889519006bebf7477e3de27e4baa
270 -DIST firefox-103.0.1-is.xpi 540847 BLAKE2B e35aa14a437a6f257b749302d1b1a1c57b5499f1c3259cd5605a72dbfdf610058878a62d01037c855ef112e61ae1cda27d6daf31ae7aa1b2d1c8541983faba8a SHA512 f88f03651e8e2d3a2787614f523e28527cdbdbd40ffda0bc1c5c43b3de0ce5755d1cc9a38e3f2d52557d14e774a42c7c967303db35cd49d48620f3857ed64504
271 -DIST firefox-103.0.1-it.xpi 454439 BLAKE2B 61e5148e9df3fe6797b7b6484a3936c6da29803cbeae75fe768cdbe38937fe2b98b8aaa16be8e098c36c16f8fbc28f4ec06a98474c17f1f7ba2ad3d62542e3d6 SHA512 3e96c8b7a644fa1fe8e1589a97f1100a7b400b14d1a996fc045900752af3ab4c92bdefa5b0ce9052b70fc303749fde3aabdeadf1e7b147c7640aa1a0e7731c7b
272 -DIST firefox-103.0.1-ja.xpi 574517 BLAKE2B 6002448d6fe2946645c2fb3ebd8ee3468504a1b20b61695a80c9d203c73bb7e93d135b5dce08433b3310f47f164dae29bafccebd7b0cb07222c5928c32531dd0 SHA512 e48a75c02ecd3f3675321da8c14312ad55cb78ef3da8082a038960ec32594b2d41a0571111e579110d3cdb0083246281224a35675a04680c947371ee96927968
273 -DIST firefox-103.0.1-ka.xpi 594023 BLAKE2B 347e9b25912db37490b8c3b50728ffeb9795805e0f0926ab24a7bda220420ee27f5c465085eb137c8cfa5d9cd6dc2cee319fa14aff48fc82d448f802673b3d4d SHA512 99f8b45937b4693f8129b8e2678913c9766f2abe1fd8c263d6bc1f8ef273eec2a8045d6423af5dd360bd4dcc3bdd1bbcb82a2f37ba5839a1b87700b0d22aafa1
274 -DIST firefox-103.0.1-kab.xpi 554265 BLAKE2B 5c4a589e71bce3dae8c5e2a51f71656b1ceb7bd78cc11e557eba0b449de88d8d49ca26d9a93ece68519fd74d48df532edd1a20ef3513a822de1b8167cfe99285 SHA512 7a50ae25949c456a39d5923a07a104462029cb80418fa9db127301ad1ee524afafb005d9d709dfd9a1e2aabc681666bce5342fa3ce307b812c1ffca36089773b
275 -DIST firefox-103.0.1-kk.xpi 616956 BLAKE2B a48871662163b31df30c3cd77a34d2529736fd3ea3875f7e71b78821b91928069fd718633c948509a5820305c0ba0ec4096c779db3dc2277d0c35efacd78132c SHA512 08f98b9a0cd0b0f02b1b42be669200706bf7aebe353cb63f1f6ee86cd8ba7436656709c587492d58f0f53b55e93e03555b588d8c872a1a236bb1fbaaf4fa286d
276 -DIST firefox-103.0.1-km.xpi 531396 BLAKE2B ead91b703e41f62323d7b00918f6a0620f10cd6f64a2202c8abd2bca2dfedcff23516bf239d472f619027329cff82b982c6863f088d0d092a61c29058b43d79f SHA512 31f7b421c3ca5adb5bbbcc0b5fdaf5a777d2f2a1c625e02cefe3511a389d36dbf1209234e52e62cc0343b63a8ee9a506f463eba6382d43fe4ca178b5f5012547
277 -DIST firefox-103.0.1-kn.xpi 497493 BLAKE2B 4e022946652c166c3719e56c9a9aa710c881534e5d3eec8c593b383bba1d85503ce677a23f1607e29ead0316ef8d80152a59be4c87125b74b035fe6fca723899 SHA512 dbc5a9e2462ba7f92e86785b30fba0cd83ec409eeceda152f34870abc3ae9e38223d6192cdd47f045c5f5e85584b4353b09f7fe6933255abf45c3ad5df752f37
278 -DIST firefox-103.0.1-ko.xpi 581110 BLAKE2B 1ea3bf3f19cd0f6a93420466bb2d52e5f41b7787574e36b66adb84ed1dabbcff0062836d0a11eb8134cbeed56e1af2345e0a8b926e1974eeca4c6d546002b61a SHA512 87f4f1119647019ab7763bdafc6910013db0227f4fb248ba2c01d616aa5fb1613bbedfe9adfed0369e450f94f56d24029f36b775e2379029af81b6d08b97a4a4
279 -DIST firefox-103.0.1-lij.xpi 470256 BLAKE2B c73ec59d5babb7033807dad9b43653ca84c294da07cf7eb0b4eaddaa1db6061bedae8e7b0982b0dd34f7c237a56f15b2afad2a3c69b478f4393f7a8ef0aae492 SHA512 035d19c40a4fd22328a067a297c4e0d05277b6f671d342b3be49ff89f5224a3bea6e9abc3a639aaa2a9f895ba522a03f8f590fcd1fd7e6ce1f6e0d7cc8ff8c00
280 -DIST firefox-103.0.1-lt.xpi 562006 BLAKE2B 2ac04541539edc8274c5965472b3e617b963551c67a0fedc50b6911c30fc5b972ce8ba596420d957911b9e8990f3da4133787a408cae6514a31732935ccfaf33 SHA512 d71a2e9ca6084aa927b87628ec976a799045ff3cb708e01d5018b62a8e9536b7b16360b6c85c9994afa6b510ffa93b6666a771f6dcbf9558c1dd29706316325d
281 -DIST firefox-103.0.1-lv.xpi 463409 BLAKE2B 4b74e079fa44b8693ab8a6ffd6f4d1726cac2772483129fd55c74ac137a64eb4c4f1022c5289ca04f459e92492b60054fd906a57d6e842606a0c43701f579b4a SHA512 556be9bd482cabb55edb7433b8822a7a7da1e9b16b066df131d6455e0ce04ddb72f69ce33691bb47c32ce02beb4e7d3c8e5a3035a0da10a7cb3d8cc44de35537
282 -DIST firefox-103.0.1-mk.xpi 474765 BLAKE2B 9c7488301b958d360077005deb5fdf677420cc8b26882e6236f03e28ac42da8ddaf8ed172678e8eb53ff0f913c507fc92d2b6749eeeab1110d582de107cbb8de SHA512 00b1e0759035e70bc47d372220b0c1985ba364808a28720f9b0f1589bf476a405c31a416dcb1fa759f4b7693629fb9f82c8e833ca5142c0e3cd47ea0b23c3f46
283 -DIST firefox-103.0.1-mr.xpi 530635 BLAKE2B 9d4d17c5b90de850a40abaff901d48c644cffa2dca81c8b7f57234844ce0db171cc6f03bc7beeddbd3431f44d01cf6dcd8f7d8cdfeb2776726dd6e19341a26a4 SHA512 5c2edd61b35c3689232961d22d1aa0badc3cd477a521c75a290ffc25aa2ae23788defdc56745a68727b9676163f34c4511c513aa7e87aa565eb0793bca93c89a
284 -DIST firefox-103.0.1-ms.xpi 448400 BLAKE2B 53f287df3feefb0dc2db7e0a25caedd60d8530db36ef1bcc969a76e747581bcd8cee3e46d20147c6644263148cb5c608faf491f446632b0327912ffe7a8b67af SHA512 88d5f96298d3fd3a3774d029e150e5769bc1a6fe3fcb3201cd88517ce08184c2f470832350474249e7c14bfab6a6c635117fef5bf49849b27e4c123dc49214b1
285 -DIST firefox-103.0.1-my.xpi 510289 BLAKE2B 94b395d795863d28b099de316cb1e5b9bc512fbdaeb77ab98414ce8a22ca85ac949d9102129d2f4966ccde4586b217e2d4607e5da9da0dc1beec9968f00316c4 SHA512 19ff692f044f144856ff2bc1f31166e9e7fa299b5f9270a0ab533bfdc9c49ccba6ec503dc47923d3942fcc108832d29eb45bb781104332d12cbdf9156b553f8a
286 -DIST firefox-103.0.1-nb-NO.xpi 533227 BLAKE2B 0533a374f699e295960bb7dde3b42f78c6c3182b12f4f0ec70dacded8e6bf8836ecf183168ae09c7ba43d65e9bd55a355e20b48740a444934968ef769dad49b4 SHA512 1ca36127aa29cec45a55f8de6f39d8a854d811924849d79790ff92b26f6dbd2e5eb54083e1ace22d645b7abb562b7f2a937bef9d2a0388586c2ae2644ae27d7b
287 -DIST firefox-103.0.1-ne-NP.xpi 489027 BLAKE2B 40795a9d47f59502a3899c8a5c4611aaf963bd7b69d94127fd7b6a6bb9f45552460670a64cc4d2ec393d1baa28b4925e8b804e6d2293f025ba814c2ae72f666e SHA512 6b66658263e0128aa2c16ad1b00ef9a7353823ab420602e25133d8ef6920e0c1d8d3257a154f962e05193e1e73595e864a10eb68a524d781a5433493b0ee1908
288 -DIST firefox-103.0.1-nl.xpi 541036 BLAKE2B 0d38e3f8c8c06fd60d8f1655ccde9197961fddb1bd923874cead2db07e29354459195c04bcf35b6d27c73e63ad0b5cc46f2538bb16d65c4b1f1ed4d31e4a1fcf SHA512 38fe6dbb0510842cabcf100cc7ed1181a8c72066e5dd92bda3654ceeb27c563ab2132d9692ba8aa76936035f8016c6ead5981dc22ec6b0097c237fc7dd069980
289 -DIST firefox-103.0.1-nn-NO.xpi 535172 BLAKE2B 9b9e4e31cf95d93c610c7e223af94adcb037bf7ba8d8cee766aefc7404549b6377e4f2e48df33948a99eb08a90fe05dfd1a6a548854957167f58097008773636 SHA512 fbb1ab6977d8981472534c32ab7eba9c5b6a1aeb204a0bff21120498e47682bc446f2f867dce9eb1a85b48e3ae0e59347c76031615d47551ce083eb5895042e6
290 -DIST firefox-103.0.1-oc.xpi 556233 BLAKE2B 23e403faff4f44e2056a64eccf16cc338c4f19687ab6a57cb10fb1246a9aab82df2d86c61131174c22bfdf195cd36cd3087f25898d81d28bd3895c8dc12d4989 SHA512 0187396d7b42c369ad23127cc366e20756ecb459036659fe505c72ebab0818105b083f09d40ada144fd3b7b6c28f935590542047fb52df34d8cb6116b3a5eb9a
291 -DIST firefox-103.0.1-pa-IN.xpi 599787 BLAKE2B 0210a219cf461e172265bee51f073669e69efdd7c8ebf2c0f94d9503d5130d0a81f209c4a5d973d8f33b5036783cc5eae34af95eaea3cda1fc0ed5f39d2ccab5 SHA512 b1cb03ff31eb0d9a19734840900c835508553e56204fdd4b29065f164a2ab26926c996f719bb5d55a9a159df6533e3ac13fbc0af294a47f408a57360e89ac712
292 -DIST firefox-103.0.1-pl.xpi 560477 BLAKE2B 93c37423eceeba464589cfdd0cd33829df9a0ff2668a75436954342207e3a82ee761046600675b9a1a867fa0a07d746c9840a344f9213f63cf0f05f40e48f220 SHA512 ec78a340d37dc33376dd27c818ce78200c39f32965d35cbdd52372a17b2537735a24e5284035aa5ef7e08c7f3c9f9632224620337482bd357f0ee443c75e9da7
293 -DIST firefox-103.0.1-pt-BR.xpi 545988 BLAKE2B 099124f7e1c5a001b850f0ce3c1bb25a80b30ffce1657e513c90e944f9476db2c25b9c15890d7f7ef7c5871ef3f56ebe50306c447ec855f0838caf0b3cee53ae SHA512 5f641fe0801cad00f62a635e5997cbcaacc4cc2388e2ace71a9b95af10649d6dbe1d0540bcc6a6e8397805a0be4ff909efbfc95fde282b4e585ac0a76d00abb6
294 -DIST firefox-103.0.1-pt-PT.xpi 550410 BLAKE2B d70f65d982c6ed3e266b792bd078a9b8ff5dc70e7bb569e740a68f419bda0e4a88edff937d8cc46cc090b9fb11ffc1868e293939bae76175d0f02585eabbb3c6 SHA512 8c7be713ad2e7da4f9eaa82c159d908628973f00f060849dc4523a24c6ea03a9bfe00ed452a48dfc26e4030f6b27061e61027908d10748c4134b1f293ce213d5
295 -DIST firefox-103.0.1-rm.xpi 539556 BLAKE2B 9644909af76bc6bc8c54449918e9c326ce6bd59f1b317c88faf1419565b872f3bb0d5a8045c8bf8d0692a370f50b7f891eda566863324883a407f1347c692864 SHA512 55eff37fa0f7b7dee136a144e9f6488325130b38189108fd8e1f9c2a03b2f3d4ca4553f0e5dedaba455df5d25e0acdd6cac94eb9c96e1f17c0aa1e23ea919170
296 -DIST firefox-103.0.1-ro.xpi 528561 BLAKE2B d25d05bd1374db69adabfce1d09438120981a09d96aeb87d9dade9392aef849ca6e7f16df356fe087579065c90b1f35e4d6992e9e195b98ab6e62787b3b42df7 SHA512 27d70d17cbb82dd0a176e8db6c1506d6d051cf3a8032a2f5dfbd0cfce31071d9d91e7f064c81c75deaf3e213de93314ab57b03559e3f45f1cf47562cf4800642
297 -DIST firefox-103.0.1-ru.xpi 630089 BLAKE2B 6529952c641360de1509055320587f87b945e232661409ac75cf4288ceabf083f9f028f23a66776e4f2866582df55ea6b682722e2ba827f7c85c73d6cc1d66f5 SHA512 bcf51f22b7fe4fff9c120dfb0e5d24a9692b12c2b047fd7c30c9ae516bab0475bb03e6bd8c22c126eadd4aa107b0a3e1b08a4c8ec2eb7265a491fb4d257110c4
298 -DIST firefox-103.0.1-sco.xpi 496685 BLAKE2B e79bc99927e87c54e5cc45c9108a9066fc324aee9da8720cc9dd7da1af4f151c66bd6c1e04a50272d7db8ebc8a1ae764183a9342428d61402004624783c9702a SHA512 9d432671efafa3b79bb325f535c382b419f143b4c8a5db38a8a672b314268ebf0de808e079fdf4b8e76759979e7bede1c8b7f61d70935079b8642b27f274509d
299 -DIST firefox-103.0.1-si.xpi 485248 BLAKE2B 2ea6638a4ab598f61f5f089d7525ac9c4a2d543f20624f62b9dd561eaecac8e9552222e7eae1cb66fa4ad83adc87443dc85a014053a1acd7bed4cffef3cf136d SHA512 538194b27afae35733efa98cb650db34af2e21592b3e42cabe81117f95a8214cd65754b51c18420f1244d29c4c22ea32bbdeed571d8355d69c3d627035221a96
300 -DIST firefox-103.0.1-sk.xpi 569080 BLAKE2B 73a06a8cf41b713e6488610b8ffc8b4d1f2c6f01969e2cde8647e6afe1c1f5f227ca56774d36e3e8f51ebc45e12a6a872849e08876bbd56c55dd31b524d71dce SHA512 6626065cd619502a5decf9584f43a024198d2a842ae8aaafed01950ac51d7dfc2d658652eb619d84f0ab3651692856df1c2b8c35f97fee9b0c7da9cc379183ee
301 -DIST firefox-103.0.1-sl.xpi 542272 BLAKE2B b05fc307336f56f1a0ceb6cf41bf95ecf38654be0477bb37e0dcdf9d1fdc7dc55db8a55d1e1c97b0b40afef2a408b85fa1547c5146dbb7ff68929bfc23042caa SHA512 d38973c1668641efb8589f3f4a668c6cb7da5d521a21b323dae438ebae6efdcf80e1baeb665ecbe39343b8165c5357a9e567df6fead89b4145f489471bad0117
302 -DIST firefox-103.0.1-son.xpi 426230 BLAKE2B 135d33247a6512e9e9c35c22c7156ea81e6152c545333c37676f0610480f359fec260633c7d5f3219c764f2f7ab14057c5efe4bbc611d39ac468707733168038 SHA512 272c4a0c46c43cf98298610359ed6ac8a6d66a24b50a7806bf31bc5b69060ac4334ee1db0a104fb8aaf679baa7e7d756046288eb7fe2cc36fb5ba94f149afd87
303 -DIST firefox-103.0.1-sq.xpi 557264 BLAKE2B e547d43e98e0c1a55031a01514a8f872907193fc6d2d9acba2e07d0de2393abba4861febf9947c367fe4bc90474e664c2d5d96e7f212f74af429eccbfabbef4a SHA512 9269d60e3e42de08ab6d6fc5fd95592eebb61b99b0fa472f714812402b277d550b858cb23ea3866c0c18676a62ad60fa4c4a70a88a5a0daca55650c4dec5262f
304 -DIST firefox-103.0.1-sr.xpi 582540 BLAKE2B 13f792db4918ef1e143d4caa1bd6d775d6bd431385d04daa2c59ccd9bb9081edd2c872b05de4b0c065641082ad02e7c8b2d4c13b906063615ab1000738c58483 SHA512 77ecd2c9f2a2ee617c88a51391f038e868a50ad6307487cb48113717b671ab40bec11f1b53ef3587d96ba96d52caccf9c4fb5f68b28f74077a25c42e928f7242
305 -DIST firefox-103.0.1-sv-SE.xpi 542862 BLAKE2B 560d2f411c2ab548af5e10b88f90c0cb6c87b92c89cabdabce62fc060db91515c513664e7d34825c5313a58583ed1844da461ead91a71fa0a01635d4be53e1e5 SHA512 d361caa3f2135a9c4f4927dc5d4ebe6c0f3cc375d5b4147b6a59c9901821143a5097eb39be6c6cd01627a29e7f847c8fd72360a72a101e4d6f2347ba2b8f50f9
306 -DIST firefox-103.0.1-szl.xpi 508458 BLAKE2B dcd0949e26bf9112015b1e89c42340c5e45d479b4efc610b6bce3a6b9017262fce38601fa22ad53868974f0424d69ada90b3bf892e3481460c2d2bc88371b09e SHA512 75ab9ab58a8f6329ac703e157a8dc526e9b9853948016beaa086725c3deecc8593dc6fec7c7666c626f81677a8fdbe05fff61c8b4b41f8a851abf93c1090fe32
307 -DIST firefox-103.0.1-ta.xpi 510671 BLAKE2B 3da228200c470a5aaeeb1ad5075f671c84261c8c77eba4db862652ff6b7c5774a5522a0ce6b21a1f50fe8cb0d913d74c9e317ce7c9e13db481b8287cc6dd9774 SHA512 68ef9bf4f52b791ec36a845858f9873c80c2a66b52636d2c06b69820a097e65a3aba0aea401c5562767a8d793a40f0116cc76bb8bcc346c86949acc49e81739c
308 -DIST firefox-103.0.1-te.xpi 551778 BLAKE2B 1566182a148aa4be855e260edab9fb79fa2623264164f49974360cc9c1adb1872dcd3a74a7b234b3633dde57bd33611ba7f61f26ca861407fe79360f810cb757 SHA512 67628764f316ae9b776885bd2a17948b4a9f1d764b484715422ee8741f1407c2db18de64c90aa4014789e074b94b6eaa585376baa5650d8711f7ed3e81d5dcc7
309 -DIST firefox-103.0.1-th.xpi 610646 BLAKE2B 3b9ac255f84b34b9ed1f0987e7bce8a5c95822bb302992e47cf6a02c1d5d672329aa15a899b1d4392faa691dc23a742f3b87e594e1f4633e47bfffab7272e85b SHA512 26254ef9a4f2be9b8115623867bf350c6e9023213320a8c21e6177b2d5cdeb47c8a25a34ce1dd0ff36118776aa95a663c3e93c5933e0b24dbf0da5d61e099d76
310 -DIST firefox-103.0.1-tl.xpi 518725 BLAKE2B 8513a21152b618393e872b3330f1ad82547a1c826ffb4cd32bcc05b8e811cc22e1117ee25299c667f4bbfc3af17f4ee974c9fb917b7191906bb72c5e97664126 SHA512 f86f3ea84f95016eba5eaa99b2d5376055d525a31d6d08b9270d7916c335abf4becdab695236497a04feb7d698f72f9e9a3f27d347e707008b21dc6f9c23c750
311 -DIST firefox-103.0.1-tr.xpi 555677 BLAKE2B b8a2f8b6ad0cc9cfe18ea5bd23a18eab8b73fb66ac517226d9d66506ed50095db37a45ada84fc3c7e47b12fa0a70df69435ee31e5841e5193995d83e7ff0ca37 SHA512 95f46570d96a81ab44f5ace88f64896e9dfd86acd4d98c91cb63ceaf42731dbc8e7b328b1b764eaeee4eeab4f6fbe7c57bffef5357325391ad71c698fb7ac5a6
312 -DIST firefox-103.0.1-trs.xpi 488885 BLAKE2B 77e2df1c47c1fffb248e865f105c27d2a09f9537355f0c7a848f33dadcac331a8b2922aa9b2f3787616c93274b61ec05df7bbbc7c9f803aaca34f29c92eab9ff SHA512 5b3bfae7765934189af3837b1591969ceaa483fd06d130ab296552511863b2be972e5a509053cff94e65c6dc176d07c6f6676579a64b30aa150423b1a73e9a9f
313 -DIST firefox-103.0.1-uk.xpi 623498 BLAKE2B 78d0e757ad2a74d36985ef990a2f06db8d77d603dfa381d465690b46a3bcf429186bf8579dec7ce5f49eef09dc1f40d390dd459e71633d94b2c14dd1b11a1f2c SHA512 452ac5845c7c5968cf8b8450fdb716e719d110f1f29656637850883815e7e3b83983b10b1fb5c15eea65400c3648388f8ba7f4bf96d49824c83d99f08f25c46e
314 -DIST firefox-103.0.1-ur.xpi 558770 BLAKE2B 1e37442c843df8a96cbadee34fe16ab2e11559e5d87f2d1859eb3e85f78096bc2396a801ac86a9eb7207a8ee49fccabd2376f3e8a8fab4943c4212eaa5cc3b68 SHA512 d8f693b33cde0433f1f358c49f3f1cec98725df47c852c284e0995177589c4e1efbd6279aabb020bfbedca8fd5e0a3eb53da4977d21e80f45b185ecd79eb0a7a
315 -DIST firefox-103.0.1-uz.xpi 478410 BLAKE2B f594e6a0341f35bc737afbe614245663012e9d07a260921d7cc50cc4041d810927e37cacf74f760b201f01029bce7c92b75a1a6a25e3e9809b54efeb50754a35 SHA512 151638d3e42e41a41ea60ae2689f70a0cdcc99d505cef209ed806134a4bd8f7f586b3bbebd2b28412f49515d7619791e6c644b9de8edf3fd583c9690b9f4caca
316 -DIST firefox-103.0.1-vi.xpi 576267 BLAKE2B d9c88a6862eedc2a6b1691e869608c7254c7999bb581f19cd5956fae0f165bc77da92ce21201bf9dfb64f8032f5bbd42989f905250f94dcb115bf9ae6c3bf1ab SHA512 9d2b180fc3561656fcf39ead2c12fd272c2cb8e5920a1b54cca534f989c93bc20d3f93e52d2fdbcd2d8c68fc6cafa89f2cf9caf2a9230cc142f663097f1726e2
317 -DIST firefox-103.0.1-xh.xpi 429247 BLAKE2B 299883a21a176cada6900fd778fe170cd0911fb40b6ac03e9462e83899cf47e0c092889e43690bfbb1ff2a634671f4e65289f71547df2572c41d1bb97acab6d0 SHA512 f02711153bc337bb3bbcbaf2fbe7b54f696fdb43cc4e12559c344387876293ca6826a42c229a65a7f888a86dd4b6723abade6015d32dbd845f33f2ad5164d3a1
318 -DIST firefox-103.0.1-zh-CN.xpi 577425 BLAKE2B da82d2b3d75a385eebcdedd769f111de4ad05bd7ea2835d4e0c1096a5774af40584d8fe5d29a768455613be03ee3de5aa8d1713cc804195517eed31a590955b4 SHA512 14f5324508a8820bdd8a248a4e989444c444a183aad99f96ef841d98804d1941189e49143ae9c96b63ac0427d277c7a29357752234b9ce0be543c491e9c03b7d
319 -DIST firefox-103.0.1-zh-TW.xpi 578007 BLAKE2B 4cd77a1ad9046f2799a0da55831533d989b5ff7680988a96b2e9d184ff82edaaa5717830782760e3d2b3ad7a4a4efc75133e9787f5f32969bc3cc57b3674a249 SHA512 4c054aae826b5e54e5f3c5c4c2baf10b63c307684625c3f0d48f3de4ee18bc7923f0e03eff89fe74699b30fd971b80cb5fafe033d1ab2a68949a466c0be3e48c
320 -DIST firefox-103.0.1.source.tar.xz 480380068 BLAKE2B eb9a4212e44ed835b62674e6bfba63aab0cfa76ac40010cc8da195835f3f3f8733d1de2710a1c2ed9db1b4275ad23b2022988c0592f0579f455e50756c220ef9 SHA512 cb487e1d5d602e6b07093b5e722c4e70b9bf39f42c13c25642f263f90f9d3940d02e6fdbab9e8f41b66a50f81d70300acf81c222f08a26eed3ae55777fdc6303
321 DIST firefox-103.0.2-ach.xpi 454183 BLAKE2B e02657bff95c8866bb7486982c3b13713b1701dfe5c83ffe2d769eef8614b096ab61801a7b3b80058771c4995345cb724393be2aad67f175d639325b112f1155 SHA512 52fe30dee4414bdd8e3cc185044e16308fc02e1d37422f97ccd4111cec7e1e3673cce594b74c523ff417a046c925c703227589b4a2bfc5a65d627a53402309da
322 DIST firefox-103.0.2-af.xpi 419559 BLAKE2B 814baaf25ba8e444aadcce3dfcbb64bda971a36d9968bde3f7b6fb3e561047e089c68e9769cec66b78c7eaface431070be844cdb91d7e18cf248ea2711c0907c SHA512 59640d6674c63caf93f29fac92f7995143031102abfa725a7b075f90066314f0f9edc4f528fcfe5254ef12538e6e5560b385b97740639540a93ddd70d0cafce7
323 DIST firefox-103.0.2-an.xpi 498032 BLAKE2B 541736791bc9f4a09d4ac08f15779751fabce3621c7d5e6aa2faab65fe7658f8ecf6f3ebc153429c82023f55a62a2f056a1d40ff246d47b59b0b042abf057f74 SHA512 08a455eafc7c7bd62c3ed1979884d239460850e63430efde34b2fcd42882337ef257592c6693092426d80a673b4cafe9c9780089d5906fdc829475d2bec66f59
324 @@ -392,105 +97,6 @@ DIST firefox-103.0.2-xh.xpi 429254 BLAKE2B ee70a4e3eb38484c15c67299d9bdce588b672
325 DIST firefox-103.0.2-zh-CN.xpi 577419 BLAKE2B 787347109e5f8c3c1ac6f5584f83fe5ee923d85d3c6e690e348e1a39589dcb880620f1a538e220a0fbb6a465c62fc5c04c91aa6900df713b65be17d369af4402 SHA512 cdbbc43b338b81f54ac987b3b5d1de2c0300dcc2a9f07f0a519aa4a7727f43edf3f638e58080af129e29aa9a4a5247fb0f7089c4aefc121056edc9e548a4f2e3
326 DIST firefox-103.0.2-zh-TW.xpi 578012 BLAKE2B ea13d0d50b919e3bcc65b95cdb7f6f1162493f6fab4ba083586b980ea737558ebebb49110b14775ee0f2fe680789edfb05dd20241e0887a62ee89cdcc307d5b4 SHA512 594ded581f530dabd461df11e1d0d5639a7da0e58f4546c1a82347b96d181dc4b2bd7a77751eb540553815443343a1e3432de7ff1175962b3c1671463ab91188
327 DIST firefox-103.0.2.source.tar.xz 481280156 BLAKE2B 597d5ede55d857409dd2efdd377250b8a50fceb3eb704de4a664fc2a128a09ef18d86d4c58bc18d19a395784a553ecb80eaf83c4654857ea317d2f044cd05c69 SHA512 f13984bb551039c80ef731931f08a284f070142ecb479b31a4caad026a6b535e3fc7ae506b629e933ba5f5a1676f14b6b36d031d22584170492676f8727c822a
328 -DIST firefox-103.0.source.tar.xz 475708060 BLAKE2B a8f34699e0cb3a1ffe8823f33484c7646bbc6e2cd16608c74b36b0fa287534beb0aca88008fcb2482737e53edfaa989ebabee53555d2bd06b128fac513733815 SHA512 016c2f276fb94e5174626f7d8b1a821b2de0f5a07f8a10f00a7ea4d4285591b0c23dd3ef45306579de79b3dfa99ccc527224c33f3319f61cf088b1f4bd097f9e
329 -DIST firefox-91.11.0esr-ach.xpi 453206 BLAKE2B f639628151e4891ee209548962ca86de34f4ea124703db73ebb14fa266b2fd74282c256b74c8cb9b2f4fb0b4d41998f3d7b3447be4cf6cb45dbb231fe6b57ce4 SHA512 515e8424da6d1505480f15451c56363bf72471fa4d0e47b3e43b4cac261b088b82a85ad2f3234edfb8499beabf392e0636b227d0d7cc7285e544b1e2bdcdf395
330 -DIST firefox-91.11.0esr-af.xpi 426914 BLAKE2B 1b999eb321f8bf49fc73bfe399030bdc167ba2822ed32e9ebcec3c6648a2c960dc4469a1dc9fc3553db8f3bf65efe5444aaa220bf50fa4d890c89b2542cdf25e SHA512 04bcc68b861a7c9b2e18fc4fdfde0247ff51879f04e8dba9c2998e0cd93ca156f8cf56fb63de63bcf92c56c92da9b7e0379ed0847d251faade20b9e1df968d60
331 -DIST firefox-91.11.0esr-an.xpi 499896 BLAKE2B 115adbb6a2a916fb3281c2b352f29b560308fed65dfa7b215e3e2f35f7a90f527a7ef16d6066731cc2f802acf60d6d53f299e2c703d079ea344ff3c6fffe2182 SHA512 7f8f56d3334bbecb3be2f780a60304df06313a6d7dbd0fc3af2e6d5b0c93fe787c36f7a4e62364893f53a03815d7845006263b1000db56d817fed8be5903b3fd
332 -DIST firefox-91.11.0esr-ar.xpi 559671 BLAKE2B 4144831cdcc3ba4ddb50ccc76641301615d1719379e67cd6b19bd734ad0e2d4ac1a35cb663ad924e11918dee41ceb594d38d0590922f60624e9c4d5530ace5ab SHA512 f78246c7931c362ee7f108f8fecb9d94e7207d3ee2f0e9fe5baff9c30df124fe18bc3dde0c0b833d84f596920d439e02296bcb9fa08ad3799865850780cb1ffc
333 -DIST firefox-91.11.0esr-ast.xpi 498582 BLAKE2B 3232505d4bcefd60d8f72f13a8e1a2ca76802f0637ebe6a368fb6ab394b9b8d29d9c2d432b05f20ba49aa22cb9519f583c928324682cc661f615aa5371e4378d SHA512 50bb5ecf79c176d5fc00df3050cad40304538a81bdcc2235add6e2660a2b9a6b9f93d3dd0ac99a608e9f4b3df9d51bc4bc1b02a50e1bc14fa661c18969b01ab9
334 -DIST firefox-91.11.0esr-az.xpi 489428 BLAKE2B 4c16bee4f06e58c34fa5a0123926c8831534ca8973f834ddf587204de75922715a0c354a537ae494dc74df1c0cff005a98480894ab65ce3cf5408e9850882339 SHA512 c317dca9fa0e24aa3af446c3da9411d4f93840240de94a7bc245db98aa054d22bddc2041d0c0b301917f7b70bd51ee9d9a89f9d55ffbee03f9cc1189ba7b6ad4
335 -DIST firefox-91.11.0esr-be.xpi 622613 BLAKE2B d8ac07fc4130704d4a492d541c839b5c7b79316a13c90ce1b2672095a01296a769a71fdae5a4552306d998803a6da0450d0cde73ade98dbea3cb26ff02ff06f4 SHA512 afc488e043f396e0511c255a3f0996f8527c31ad196eadbb4be1edffb2e4d22744a018c096787700102c33ae1c19c1f3566efd2ef35ecf47b33ff63524aed2f7
336 -DIST firefox-91.11.0esr-bg.xpi 567648 BLAKE2B 76e25f4e18a4881c8d6c19d44e281af47b1530110f484faca01665da50ef7e6a99abe54d271787d759778dc92595f9bc188753b9b8faa756fbd3ebe65008ee98 SHA512 3ede8d95a0eb0859c0c815995e0e50e80004f31b4e349922b78110e300c7e3498e8f2aa72f77af768054cc5f64f49a3887317c3d1927293e59d0fddecbcc345d
337 -DIST firefox-91.11.0esr-bn.xpi 556818 BLAKE2B 0a3435c93d083934abd686bfcb95f5c13f1ee3d1a941655b108ae21451116573e64eeb67b5a19d17513f0d9d84424a3adc6ddcd043493a7975c9e28e95f37828 SHA512 50a7bc3be88f3dcc44750708f594dc3c44928bba0abe86e35b6e7309cb417db0ed912ea28f83211f97cd2afc5b4e3e22d321dd0adeb266153cbdf73bebb74b78
338 -DIST firefox-91.11.0esr-br.xpi 526251 BLAKE2B 401ef1075909bd9806013e7dbf25f9e7079699cdfd2a7e96ae5386f0345974692839784985716908fd9e8997ed121686eaecef6ee1911262726a61f40d118086 SHA512 41d3893f1f7532c73e5d8cd0f80a0d34b5b6b767c6ec4e78ab0ee6ea8336ebaa69a13b75a14552712ace4cb4003a126b220ed91eae2968979715e7ffcaff7e1c
339 -DIST firefox-91.11.0esr-bs.xpi 463560 BLAKE2B 2ccfddc60874382a8ad993f96fab86f08b25359e21b7b32957ac46a637162a55282333a579e754691ec34a583b004f819b7f83647090a1c3f832ec820ba433b9 SHA512 d82bcddf20e0416b41491bc5e7a29202e7a58e658f6fa660476a2ccefad25798169ce6e06d1458ae9dc90658db2c5efd56a2fcad0e159df2bc516cc5317ed7df
340 -DIST firefox-91.11.0esr-ca-valencia.xpi 529387 BLAKE2B 33d2ea0555120c94c2fd75f41a4f00c0ce7987f1d1d053d384363306faab7c37537a11bc1e07be035f70fe643b4596f31f4ff7f7b6ee8359f3f2e60ac588b83f SHA512 7e1b9278bf9a1f86eb862d389322bb238ee2a8036a2a4a8f07ebd6988b861d5fb32bcb609851efddd81a5b2775a84c676913dc3761cfa006df5246d3ee12aa20
341 -DIST firefox-91.11.0esr-ca.xpi 532476 BLAKE2B 1756e0de710b2fb4c6278d73a14fef2e06e76ef4069f98ef7cad0199836e9aea66afd15d72536818ede75372b3bba7adda88424dac0d5840599a3277d235f6f7 SHA512 8ebf22eafe4671665b8c6b8732b75cd30a350efd8f0ca85ee89f313f25336b709d461afdbf25973f04506607576ec378947995d67fbd691172344600a5895aa9
342 -DIST firefox-91.11.0esr-cak.xpi 552603 BLAKE2B ad3da10711c0773945085aca71542c36a518b356647c5ed9ad7e793305a9fb3a42752f8e38254810f8b7491ededdd11a42a1ec4a332f0fb064fa1407155f5d68 SHA512 0e0a1c89d81ff0aab04a98cec8ef31f34b72c47168bc5f9fdd234f0c21c8bd15851780fab0c206bbe06ae43d2fcf1eca88f7287d7ab052d58ff3b20ca9621d7a
343 -DIST firefox-91.11.0esr-cs.xpi 563178 BLAKE2B 0fee26097ef7f76a0fbb43bc9adbda0c6ca7c78ae9c3170e4693f56653a1da4c3d7d2fce10506ad10ce9661aa0ad4dfe8ad0eb304772f000693d547ea467b7d0 SHA512 23d0fffbf23af1609715cf3a9e231f187931b4ea3014b5b80b1332424249a08c3a332ccc0017c056557e3e5641b5ec1b0abd6cd093f2f8f18b14fea5f9db91cd
344 -DIST firefox-91.11.0esr-cy.xpi 542218 BLAKE2B 9d1ad66b6993c7f3960ba2cc7d89dfe1cb0f4b8b7baa5074d7e964cef3ffbe64f85764e80de0e300574c7985ab66b43b38ab9ae7d6af5fa7068def72cc975430 SHA512 ccaa6878572b39924f89b9be7ea3510e1e25f5dfce9358354bbf6d919ae94a1cc7d578520e64c27330ba84b37e8bd698155b7b674c5f4fb58fd000dc14a23d47
345 -DIST firefox-91.11.0esr-da.xpi 534159 BLAKE2B e063ee5e1593184c8cc07e8e1ad7db46b9b9943729f24e7cfc75888f53ac198505edd68ebf81b65b950ef30017abc9dd1a6b6eb9096fb7988bd264f098ded912 SHA512 7cbc81d9f0de2abcc7cd08bef75c00d29168e522a0b1d852a08482504fcf1fbabe3117e4d1d7e3fd8ab82795ce284a606336a6af619f00dfb9f025176bba375e
346 -DIST firefox-91.11.0esr-de.xpi 553588 BLAKE2B f2911efbc88e37ce5e551234cfd4e938e5ab9aa7d7190b534b2089f1b220dcf6ae7b7e2847be72111eff236f9a17615659f149aa3137c785a1002436a35c6d95 SHA512 fe6d45078fdd4c1517e52ee3b563c122cc6b1d96da9966866c81128fb7264bfec7720c184d053b2cb1eddaf21023867a9775c676a1c82f24fc93d0d271647c49
347 -DIST firefox-91.11.0esr-dsb.xpi 566482 BLAKE2B 1165f41868e60086feecc5615352e22c3d238ed458d7ee1d70caefce5dff325d7e5291f7ce6014390dbde313c7e2e4cf33064542b0da3ae4087e52d0acc24218 SHA512 13f2998add78e8f8ca5f5b3778a955f4666e8230778771691229c1dbd8750a58d9beea98cca548c7140d14363b9ccdf9e68f089914c80fc697915ec802aaa632
348 -DIST firefox-91.11.0esr-el.xpi 639148 BLAKE2B e016e66e4175c6176b8ca0106dc738a8561fe44bbdfae6f6f9a7c1a6d0d996796e16651ce60d750909ea0d2f47de8621ac5381680e63a8a4552d71a99a87f333 SHA512 94ed89e7690171919460c130fe053a31b54f12bb6da51fc47635a6c05f1de6310d99d44ab887b89de40fa12c82fad90b3c96723cb417b291ec82eacfc0154a2e
349 -DIST firefox-91.11.0esr-en-CA.xpi 509571 BLAKE2B d8cbdc24daf5398d11469a5bfd9988aa79d49aa7816e264ec222f8f1947c760c3c31239430c820ea772a46ecf36b71186df18c23374aff72b8e13405188919ac SHA512 35cbc1ceae75f2b01f25269bbc841b4df93e202fb19c9830bf8039ed10eb2decb085a759527e1c21a4e3d23d343cb34f008ed4971cd61ac8bf46c516a8568d08
350 -DIST firefox-91.11.0esr-en-GB.xpi 510593 BLAKE2B 50e5cff63b1787b260a162313b2343a56be01ee95cb705f0710c96ffa711cf9ca6d7f8445025d74dfbaaf12da691150aefe9d40bad55ccc4671772133439556d SHA512 9673207f2461f6b7ea7dcafa6f4a417f57d6b8580e9bc0b23919c6ddcf249041d829120b18960fb5b07c0f0df8f86ddad966d4eb78c79084518fc21924cbb00f
351 -DIST firefox-91.11.0esr-eo.xpi 534792 BLAKE2B 10e2da34fdb8f3f4a88968d21affe849e19a846e33ac41c1cd4ad8d35d8c0443332b5102018e131e42f4e1e43b6648b3cde709498ca15c46b37d5f7ccd755fb7 SHA512 84b718b91897384214b39080b99a7e6815ce14f0e29ebd96cb502a0316c26d638858a1ba92a05b01abda1880c7f1a222d6a660d9acbe5c481d8290984093cdf5
352 -DIST firefox-91.11.0esr-es-AR.xpi 546679 BLAKE2B 05d8918e9e7692f1fc9f5a47dd31d91e5db46f8192b3c68bf4b859d81c88fc03f49ebc4986ae52a83ff3e0a17a7d4199eaa66864a4b100cd945e9ce9302f40a0 SHA512 f94e39945ea26d51d49201a74f7800d1dfc1ee5fc083e6bd42437bcf3aa668f2aa411fe4cce728dcae5c3a2bcd6999daf4ba59fab7cc4ba125c54c7e2e6b1f07
353 -DIST firefox-91.11.0esr-es-CL.xpi 546367 BLAKE2B ef5f90d82c628d626ada981d001772a151473d7e545131f048b8262b8cb9d63877ee5d9ef2d22bf5c871fb8040cebe20955bfc8738e35973f90361e30e8e17fe SHA512 18397fdb6dfce0d21484fc71bc21e808cb421380001d6ce867a66c2f74ea71f0417cf2a011ae7a64d74178a339238b5c910b64254178eb82598fdcd93e6d5c70
354 -DIST firefox-91.11.0esr-es-ES.xpi 537067 BLAKE2B 3c47d21ade87fb884c76668298786e3218b9dd7b5dd98e50bf9dba08571f95471cd849436fb05730891bd964d22bbf5bdceb33c191ec34279933ea93c5f134b9 SHA512 c529726a40441e22c29764b4b662e828369b2427bd052e7071a02d38ada5d027b74f4eed8d646787c5f22141f9d06f0f689a4ae4fef15b5eddd071bc464e965b
355 -DIST firefox-91.11.0esr-es-MX.xpi 549987 BLAKE2B 5397001e3d0cd840d876847d175b33a035165b2aecf20ca6f3a298ef14093d1a9c945ee722415800bc670cd8506de2c473d60429f205a02a39f9ed2fd1be0c4f SHA512 cdaa1660cdf67a446d94d48e116ba72a5e61d86b93a1dc4dbbbff37eaf941e82f9e85cb90e2004e891955f36389953473a2b69c5b4ff4083b528b1db02edcfc8
356 -DIST firefox-91.11.0esr-et.xpi 506662 BLAKE2B 04731d3c2973aa432f97eb489477f7e7e9e148e87286745fd34f67cff9fb5a6348cb890fb757c0e94ed9d00d2b481da9d97a811e7eb19dfe8e828f4c7d43fc11 SHA512 9e1cf260b99004862d3eb17a48d20fbee87b82760f69ba09aaa216f3f8a73c81669f14e6572b7a60965d0502d20975cff5c928f5ddfa95a693be89a291b0d42b
357 -DIST firefox-91.11.0esr-eu.xpi 536323 BLAKE2B 65ed835a3278b8ef7760be02797fbc1aadf4e7294d17a0513001c18385a52d06115b401f345d74f642745ca06660f9026a5889a5b52e7d5e2e34382f97cadabd SHA512 bac07c6892df6223c5641693f24d8c9822668db71e67acf44c259a52135e8f17eca83d97849e34ec24ffe0672ca4b6bb2984f5be6a3fdf5712d7ea1d8f14cfcc
358 -DIST firefox-91.11.0esr-fa.xpi 559381 BLAKE2B b9f5bcf7fac0e83deb72dcb717053438096fd0dc666732ae4a517f6ef2700683ca20be5daa4f117aa8def89520be326dea61a7d1ddb602b9d403ffb0229728be SHA512 7dd6b0395c351eb02c8d8b8eb3cba577867f3f6f7590f431534caff26b156f5c416114cc6ab638346d901489a10c27016cf5c7333295de963b677f9c242ae315
359 -DIST firefox-91.11.0esr-ff.xpi 471864 BLAKE2B e2a3076570220595f637eb09cf01368da26d88b3b518e003b79f5779e283f3f62e177cfbde69e6b552a83343a317fe035648cd76ec401c1304baf5594040ae68 SHA512 5c6279f646852e8657151ed1b61a14243f55b6a982a144914f9fe7914ea0ee21cc72e530bacda9e6bb708b0455c87083a9208b0d6bd5e7f4f2cce4a24f04dc31
360 -DIST firefox-91.11.0esr-fi.xpi 531478 BLAKE2B bb019bd73b7606ab1c627cb7b7e91d6c8fd336de29ae8487fc2ad26ecce763447344dedc53a4de6456e45f700c82100c9bd8f0801876b26226bb612d88ca9c38 SHA512 d9cd6dd573c5882bcc3f82b7b7e6b54aef04a47d958c354dfc9c04de7ace38f04859593dd885a3fecd4b5f81a155823259baf4af923feb31c76b73a4c644d6e5
361 -DIST firefox-91.11.0esr-fr.xpi 557617 BLAKE2B cb0bd38aa38227e445505331ec4f2ec8269773c5952b4f970c87cf5e9435db6dc93c6d23107867a8838d6074d5e126d85e22420ab6bc162086e31a7cfd1244c7 SHA512 14a1617403cf5f7a0e146ef305a70065c5d202441430da2a2db8bb26207cab84a6e7bb87387847e0d9b403d9b2a797a8739f9fa695eec0c9cff648c1759e62e9
362 -DIST firefox-91.11.0esr-fy-NL.xpi 543305 BLAKE2B 95a21cda5610eb2f208ca2c518bc3b37c4a6c0838f63398972db3737fb116eeb9ff525c686f03e4ef4191601916967826202130c9a7d65edc15b082d50579930 SHA512 acdc86ce0c20691a1df1eaea174bce75f2886b452064c6601f4f7e593eba0b88cf9c23a2e4bd29335b0a0fc62bfb874f4cc4c43928be85289739d2f361addcb5
363 -DIST firefox-91.11.0esr-ga-IE.xpi 459837 BLAKE2B 0d18b00abd979935c26416ce5c6a4ee17a6ee440b02afd13afbced47294ee5d3220defbed98bc7005a1b94639defaf8dbcdf1ce23278cf5f840ed97afec9e414 SHA512 3eba640a3550d2695503f763975d1e38e83a1fa49f8576498f7e7259c798c4b034319fec1e55e705aba5a8649c9479b59901e32d4b4fbc8f731e111c32514ccd
364 -DIST firefox-91.11.0esr-gd.xpi 530844 BLAKE2B 2811c330cfa11c86e28f7ddc3a1600dd946d6701e3f3c3ebe3ef36ca699bce6a1912b80a5b8a1ace4cabdc9dfb1e1b47110102e014b6ae867cdd8f4a15763f3c SHA512 618c145c6a4f1a2432ef85e57269d91506a3ff5f2c2464632a18c1e16ffdc3de1b3c2323002e23e0197fb701b7408d4905ad1905043239e1bd88de2f5ddd05cb
365 -DIST firefox-91.11.0esr-gl.xpi 541302 BLAKE2B 290cf43ad501bfdf523b9570f26eccbb61c4df3bfb631bf9c106db84daabb6e65864e939df747774bc6fd5e372338ed31dc28400782412f01dc12e1b6b1962cd SHA512 0d7e4d709b01a8d901f96c25fd5112287485f648fa141885421e2656a81e40b71f8737124390217ac19d902c22e60f1caa6f33ea3cdbe435208f19b43f4f91e7
366 -DIST firefox-91.11.0esr-gn.xpi 557598 BLAKE2B bebed8e7eb7f9b8e327860afe96899fedde6b5f3432fc37df34e60063bd146778fbac29388b89758fcbe7a6b0c61c744f7954d04e172b2ee797f2210f41257d4 SHA512 0ab44a6d6732f050855c5b3d7b9f6e5f92316951187030c95192d35e21762dc891ba68430a332c1d3ffe201609608af0849bfced01f4f9eb3b7aebc3459c2b37
367 -DIST firefox-91.11.0esr-gu-IN.xpi 529543 BLAKE2B 5430f4a25a81a91b6d4b67396df896143501dbe4e4a2b1e30425f83d7bd6e0dcb35724d728d2836c98d08c69a5786a2ac697fc499b9f7a32b5bc0f496690cb24 SHA512 f3ea7d4263b1d418fb8bdc19d0b4fc8008d4e78ef26b94bb7d4d24f24b640f9410cb7345690cf3479ed7954b7e01c90ad0167598120dfba86be9783ecf994783
368 -DIST firefox-91.11.0esr-he.xpi 557207 BLAKE2B 79c2deaff9dfd323525c0f37e5dda13d28312128098572ab7cfdc0b9c311d1471387031a3b2fc5144b4be5e13b46a8be4d66c8d16f0bb53c367fed638e3c9b57 SHA512 54f56ca69c18c83013f604139b1e3f53c331bf76b9afa50688375059c7aa878327922ade5e6eaf2520859c4fd0f8adbb8fb636127ee7aff7a18366bb866796d3
369 -DIST firefox-91.11.0esr-hi-IN.xpi 560649 BLAKE2B 52bc233b22b6481196030743e4ef6dc94bdb4f4e6f26276537fc68a5fbf663dc18f71263ab793d1eff9b406165d5299cf2b22a0220d26f6dd1e70324ba7eb275 SHA512 db0ccf781331eca6827b88fd8efb37aaea592944b7b2bee9560fd0d7e447ca32bb910a0c997ed61c5541578538b75499c57b66e25a19ca449b5e6c195614a1f6
370 -DIST firefox-91.11.0esr-hr.xpi 530048 BLAKE2B 3f6b7209861dce3f589d1e692996c8ed31e3f6e08c37307a94b742e24d1cf27ef3259576a6c2d30527b559a3e5a43022dce4ca47803d2701dbd094a653731ea9 SHA512 f2073b9bdfe910a6d14aa558e7cf7b8c1f61109938b8a95a31380f08c4618f0cebb2ca140f69321791965dcb979bd4aea2716f0a92d117f078e615ce77da2e24
371 -DIST firefox-91.11.0esr-hsb.xpi 562622 BLAKE2B 9375486557978614235ab8726d58ea45914049166a4ed3cad096d97b4fe481b8676522eb50b3658d7385e57b29bfa2e2c3194c922bd3f1d327e3ab1e8ff63810 SHA512 25dcebc9e7186f80f8e07370c6bebf505c9b6780c16a53dbde7d15dc734103ac57c3f182f5d1542ffdaaaa6d6f3c96860de81146c634ed68aa225a07cdc01302
372 -DIST firefox-91.11.0esr-hu.xpi 566075 BLAKE2B e23e1a176ec62e2dee0adacc4c37dacf5d3ffbea7dabf56788cc327fd73faeeadb39607c04ded2328494c9cad01f2ef3b655943901ebfc320ff9b635e227cd1f SHA512 41eafd61c0f5ca3663aadcc6d57f1bb72e643c534f3256643fd086be957e94acee5932fbc10c83dab65bfed982e41098accb1ca80675dda887c9bb23e43c8eb8
373 -DIST firefox-91.11.0esr-hy-AM.xpi 579773 BLAKE2B f5e662e88ed4267c1e31b65d7900a294216ef9476cd4697d232ae6825fd95d9672a2872ae890be0e0588118b32d04f93cf998865b200e5838e7d97a83c55de9e SHA512 01ad37e48542738edf82d0703efb1527ad8d2e3d42bf10bc5cb139aab22a73caf4326a0c88ad1be488e1b4ccb5eb26686558794ac990c1d131523f9e75715424
374 -DIST firefox-91.11.0esr-ia.xpi 532137 BLAKE2B 3a5d3f1a2aeca812f095760529d4b34195e7eba23aab36c59f43d786b259921c09892a4db7c704c7e15d872e580f517b567ca31a884e5c97ab771935969b4ec6 SHA512 3b1a20391efa3776fcf0df2e32d77829fba037f11e61ab153d2aec93f1723c9a6d5aa48521d355f42d34f20fe19148976a5df421b1c1691d1d972cdc314b4b52
375 -DIST firefox-91.11.0esr-id.xpi 519835 BLAKE2B 0243f91637beef7fed1e68cb7f50eafdcbe6b9bf693aee2eb171d1b9724d5308bdbfb21f861f5fdc2e162498c9d8a28150076cfb0ea38205338424a06da6a830 SHA512 9fb50a38be8fd894bb321799b8c33b142bf9cbb11e3cd0611860ef974c987acdd57b3da40701aca6f3d369c6d4f534dadf69d7e4ebc01c4c87d54bb3b6b7880b
376 -DIST firefox-91.11.0esr-is.xpi 470225 BLAKE2B eb3ddc721bab8e977779c8c6164d1c90d1238ee23ea8c0b77b05200ac2c19b4ab8d589670f55ff84dbb89c80d062174db2185bcdb48d44f6e3cc4994291a4bcc SHA512 e7b36e8987d7b028284552bf34abecc039e83b46af3fb7c954471b228dabf843ee12a58d824f8d160fd74245899d07e2461e38a0949c8fa21635b93750fb2cf2
377 -DIST firefox-91.11.0esr-it.xpi 459080 BLAKE2B 12540e654a892493d5ea854b8e76b83ea79c636a02bf2dc12cff23b6e5b4f798b9b9823c24ebd70f9d57802336cf53632dc0b4ef116af08829303db69bed3051 SHA512 62d97b3021072d8642e0d3eab1d32fd0473c2157a63e86796132d6cc7204c696cbeaa3fad49b909cb6a068045de86de253e41604b8cb037f5afb541b8c939301
378 -DIST firefox-91.11.0esr-ja.xpi 588074 BLAKE2B ccac70fb5022f9582fc44ab86aefc223c4329fb390e0b20c84e93aa4de077a4e2b9af39e696c1351497956e7fcc91b19368635d5cbac475128dda57801e44126 SHA512 bf53cadd001689150ca8cbecb872cfc22c9fd026ed3463bb2595f2c3b9d6678a7682906108bc5972594dc43ee0953588094a65298da41ac3bae803a90ec920ac
379 -DIST firefox-91.11.0esr-ka.xpi 592257 BLAKE2B e9d83207ca11851e5ffc494370a6760d97d0096dcac26b14224e924ab72f9e40867224f6069278ab8f9afff7a333bed2ee017d12e768209f7c83bd65dfd094b8 SHA512 0b9da97e446a52fc1d0c37ea4025176a7c6ea1b53f76521277cfbdd1c419f2840f1f98bfbd333c0338592a02118b1eccb44a7a7716f3a8d1758207d6b15f24d8
380 -DIST firefox-91.11.0esr-kab.xpi 545019 BLAKE2B 9eea966cd899fefb2c3b5df68c62ff1088b87cb95049b9b728ecd4d5ddb27e0c9795cd7e4b7b10ca48a2cdeaf676911534ceb239820d7e408f77f20a5346ace4 SHA512 bfb0e863bd05fb0cab49c3cc7b0580fffae2f4192dd2cfb1852470f5e0de42577b97551919674350f2b3f86e539763a2d3458bbeb40a1852d866e5b26bbaa888
381 -DIST firefox-91.11.0esr-kk.xpi 605549 BLAKE2B de6abeddc29706400bdc4c5a78aaaa9eb88872f186066070fb5f0e2205e75d898b969e08ba7247782b58df42a3a9bc9b323c54652e35c768d6fd34cb7532583c SHA512 f4977e143a4e4e8b91eb8db72ab1ac437871ced1282e4700657d75267d4559cf684afac320fcb1fccc8b5418f9e6523e08879958493bb4c969938a94af1c176a
382 -DIST firefox-91.11.0esr-km.xpi 533110 BLAKE2B 2e4b477539f8615cbc5a9012ef6b2e51e93308eef86f041e8f76929a7ec25bd388d922ea8b4d7d94471b2ab6ea95b04292701e0e1338c270d8e5a153b193ffff SHA512 52f290d4049bce32ace64a33c032a806520b29e927fe8bf92d5fa226c5d21de0d298b00a26e05bba539bafa2d702af1dbeb732845c4565f75a17e43be195e3b0
383 -DIST firefox-91.11.0esr-kn.xpi 498966 BLAKE2B c1871110b82015abe7b73aae90d324984371db371cf453df0819e74b854c04d0a1f58603967fca2f92864ffb4889bf72df3b25a23a3ac0752df5b55784006bc8 SHA512 640b3a0fd1c9885ee28e32cdf7b71eea693d5e01e67e0910b3f49ff506b1593827d4cd98cac1481a17da30db374599114cf981bd10b88db8da3518ee6d1dc794
384 -DIST firefox-91.11.0esr-ko.xpi 579064 BLAKE2B 342a9050785c3db76870cb499aa6f6685e7ed1d7bc2914fc1b47f46831fbb1150c10c0ad4dcae15a057e64f903b5d8585a8dafe8c2549b72e6c5b550382c4c34 SHA512 a3118cd76cf0c2f97a9158ae8335249d042dde31093df57a1e0e417536cb9311510ee577ec2b125e117c52a6a1a3d05eb62b9de47dd37786e942ad590e71bb9b
385 -DIST firefox-91.11.0esr-lij.xpi 470176 BLAKE2B d3a290caa866e31012ecb91e99bb7d9e64d5d5c9f3f30ad2e0d91d4c6db913463679abbaf314d0a9306ea2e677d117ad42d35050a2cfe9a1dac10b47c64e7b7c SHA512 9c61d4f5964580c21e4a360492fabb0b6001b94d7f628d1cbc8a8e77912e5cfe0c3593bf1cf121e55196feee62f5a3b7e4acdd47fd7b12a51c2b2453e23b7dc5
386 -DIST firefox-91.11.0esr-lt.xpi 560114 BLAKE2B 18a3268da1d3d075df8bcdb2f6dbd0e9698fb46c8ae886f16214f9628ab981680e6f5ddc5d261e8ae81a5ee42cd638efa3e5731c9323ca3f8cee85cb13b7bf3e SHA512 70f4e2cec39340962ac2cde1325eca7879298d1e5733bc92286c1e2092b5b17601b23cd8d649d5809d0f2bf5636cb4fa24dc3b8fe83fbe3a16948137435c6421
387 -DIST firefox-91.11.0esr-lv.xpi 462468 BLAKE2B fa872e281eef77f144a6f099691360acba54c98da3737e0b2fcb83a7c95792ea5b8fb3c3623b8eb441df292d73cd5d28e1acdaf928356e60546eb1793a45d37f SHA512 3e391053552b3d208b798a3999b0926e3568ac5b71882adc3a964f10ef04e60b8ea8c664384d308eca6b0689ccd36da2eadb44ce5568b52a9dcff2f25dd76838
388 -DIST firefox-91.11.0esr-mk.xpi 465343 BLAKE2B a100f39c481e3d078de2f93f6ea71174d22fd3a89d0867b947b43bcd5e4b1a60972c1e8aa4bcafca1900cc7822ab60b64816be2c0dfe906bd4cde632b1e6e413 SHA512 b8423a90f92612c50895a492b5eaab6e6ce1d6666675ac689aae3cbf285643a0132379db95791a59528ded02a4bb5ebc1d2de44abb2c3e2403efb41f24b7ca87
389 -DIST firefox-91.11.0esr-mr.xpi 532126 BLAKE2B dceb6503bc673be172210348eb99de2094f3a22fcbc2056b935a1cf95c2aaac4f913e06a34b32174dfb6831986ebbb578225fd4a534cc8f336f1ed3a8588b6a2 SHA512 36e49f77b19e2b0cea243c3b9201a12bbfb5a63e82fb5cf926867a716bac44049b8fcfcacae73804d0cc3bbeda230e747608ca1c9c9115cf60ce6971e67ec929
390 -DIST firefox-91.11.0esr-ms.xpi 447338 BLAKE2B 15ddb6fd4945e20a0dc7bd848889639e6b43ed435c405d53699d1f7891e2bee018ad830d92c7c3d28760665fa8b7313be9d3070f26d499ccd7faa3735cc7b69a SHA512 65a42bba4cefc64948ecd4f6aea86178a2d35d702bbd29f3e9a753aad6ee4c47387445af0bdc8e558a2059357e27f6ef30f3091a706166399d934ee1ff15be82
391 -DIST firefox-91.11.0esr-my.xpi 516301 BLAKE2B 31dbd014b08ca15c6fccf2793549ce5b65404878ca99958d1d0b7d26624d774c6b805a31993e016a91155dc7a5d9380554f9118df8b48079f1723e68a461a738 SHA512 279b174a930d9c3c7f945943f332371db0c648697c8b2b743f09199250094de15cc3ed4d183745d51ed3f07876a7fdfa2a3d83b4c5791757d944836f07047eaf
392 -DIST firefox-91.11.0esr-nb-NO.xpi 529423 BLAKE2B 31481473fc14931f5d15bca4467d7999d44a2745b092d79c813bbe1353238919d4b48856f0502fa6262984d29664a5d52ef99032f2bb2bcf61bb4d09b4eeb0fe SHA512 f4fb3d391dc2a9ea1f5c0354114e35ee43c4bd8190d7ae1f0cdc78577d652341cf01a36034355f615e55d3a809aaf2851d778fad9b6bd26b7a9c48db3e0521a2
393 -DIST firefox-91.11.0esr-ne-NP.xpi 485218 BLAKE2B 835cc7962b02ce5a768f288cbbbcd8ccdfb635575796a99c8a20f92b07206f2d4abca1a3ead51dc1da17a22ce3236f7305aa15fb08e67c82963fe57d57097cc4 SHA512 8da433329c3fb2f590100483bb987a8720d41fb05435ecaf714f459686f4d198e541b0c344a313ee8d26be53d548c1caa484d7ad229a4b90f9cc51c0e8bb21ae
394 -DIST firefox-91.11.0esr-nl.xpi 537392 BLAKE2B 7f0e52ecc11eb3aaa94c4d293a7a782f8ca095433657594aa05a55e71f3154a66fc267a5ee04d039a8ab4466e2649761b60074c64ee5563f31d515af99276be8 SHA512 5d65f100762e325176945e4f9a275b701ef98010d3d6132dba5395f0954fa723e9a4cf186462f30d9428d889eddb8a715baf070ea70f7fbd3ed76a6189bfc3f9
395 -DIST firefox-91.11.0esr-nn-NO.xpi 531670 BLAKE2B b259473f860ba77c6fd0ebc174c33524099b8632cea3b62b64695e49f687687d35cf22f1ad07ffa00ec1ef975c29834d194aad85dfc146ab495645f89c884537 SHA512 e0706c7c77fb9801a023667aa5bacbec1a7351649661a5d7b2a0b260c207e5c5936313d4f192719c95e7983287368414b9a38dce16adeb92497f39911fd41e96
396 -DIST firefox-91.11.0esr-oc.xpi 552950 BLAKE2B b0381d2a51f63c321eb22cb4aca49a95424ddb3ff77d7590a3974d357981aee355226a2c10712fcef64e4c81218eb68f1c3e2bf691eea88ebc904a76f80fdf52 SHA512 a88269a2a10bcd354546d50b1631b98abce972f376737806b5260a4f4cb0f64a49cf9b8a2272b67aa665cf99b8e88c2bd22b3846a329fb3a53e3bcb5fd29cfd3
397 -DIST firefox-91.11.0esr-pa-IN.xpi 595972 BLAKE2B 1f38a9c4185ff930f79c7ba4cffcc118ac66a672a0cf10fe37508f92e24398f801ff0201fda0aa7d979e20efbf804e916d33bfe5cf31a04be0292ce43ed429af SHA512 5817f7343258cd5eefc7632ea363a6ff0c7cd9cebbc0c850a1f9cc822d4f5ab2b83a19ee8d811b1af612c7594deb3e8d2758badaa3a825f9c0f3f24be54b86f4
398 -DIST firefox-91.11.0esr-pl.xpi 555630 BLAKE2B 1e09dd0bc97e8f156bd581d24ac1d151e7eeb15bb736098d167f4908c4e49ed4e06c0fd4e3f4dc438e930c7d2a40c18f9c775a00be1e931c9c5d6da239c5f6c0 SHA512 d33b90d91ab89608e9f7111d726a6d32fe95831ae08306a677ad7f5de59eab99fd8f423a566fc17590b3b2576b29dcd33280751330298b3d3a2e2e3c24db1da1
399 -DIST firefox-91.11.0esr-pt-BR.xpi 542615 BLAKE2B 55efd4568bf0a034228619239b966a72cbc92cf1e8ddd3efd0427f66f4775626f0d977353f0541ee35c8c3d1137ea7c38e3c1629faedf5745078953a14398091 SHA512 91eee64553be5f02bea2fa66e66d8279440b02224e2efe3c6b895e9144f89a7910a6067d6dd320386b927bbf90fe99942bec647e23b45adcef50be9942ee92a4
400 -DIST firefox-91.11.0esr-pt-PT.xpi 546350 BLAKE2B 0ef4daf1e238bb3dfaab1ae2069d2826964ea241db7ed2fc6cf7ff06e662ee0ee350088dcbeb33a3d14f10c3d096db87449ff637fbcf544a575c12fb2fefa2b7 SHA512 a91531e4d35a0aa31c43a09333a02b2934f1a93ec6413c11e56f8cc0fbef9747baab39a962e4236f6d9b51b482a8704139951fc3c587e7a99e983fba540b9ca8
401 -DIST firefox-91.11.0esr-rm.xpi 537371 BLAKE2B 30392911bb2f1e937c8fbf3206078626d3975ca71e7b5618b26ce1bf4351191bb22c55e395e3f4592d2bfb98d6acb36db212418a561e486a4c8a30b1060fba91 SHA512 77e8cc402eb53da695e39ac2e6dd3c5a3dc6d2179a1dec84575b1d36f2213e172726838861e5e9df897ca329e212b4ff749db95738ea536d25bcee8019504f0a
402 -DIST firefox-91.11.0esr-ro.xpi 529323 BLAKE2B 06293bda569dfdc2e8aa980814a710593e6dc26bad33364ef24a91c6f59657b2c4a2f8175d4241ef0b75a39a8ab481595e9ee5ec21744d70c6b5f6ac88e6f64e SHA512 71a31e811eeafd9856cc18ed963b7495261074d5e5ac7a2bb61c45a06caa83b6a8f20f9f566474ba2141116718a2e08ea6a6e7eaa89cb240191d7480105df4d3
403 -DIST firefox-91.11.0esr-ru.xpi 627121 BLAKE2B 6fc44bb22b3e19c46417a4dc0de7d73d295857ba1f3363d4024789c4a7a6bb39bc6166cc0180250107d6d6e9f543abde9cb530c892c1a3715a53a9972ae4d344 SHA512 a473952a7fc3e9719a89c9743b7c49910721d668a955823a57d9994ecbceafa4e116ceb5e11cc1112f333e75acdca87f975cdddab8824e3848465041445a8582
404 -DIST firefox-91.11.0esr-sco.xpi 504858 BLAKE2B 8f3670eb12454ab102a9c3af8e5c9f61b2cebe5e01c3eb2bec137b18451b33e5c2bf7b09a2d8e5d8716c8a0c64fccc6a48a3e757cd5da980f90bec46a0cbcadb SHA512 8e75e3cf768b8489d557189585fee68e09b9fab7d6d403023ade9b9ac3ca51f086c23bdfe784c0199e47aed222abff96af3e67695ff1a1fdf253207b5cce4991
405 -DIST firefox-91.11.0esr-si.xpi 487954 BLAKE2B a07e0115f30220425e560c9808891c5cacaa0ed828a07c43b37a968569c09cfe5ffd8d3fedcf856843541aef3ece89cbcc18deda8b74045e3c8bfe85a983ea09 SHA512 d684e72a8f461817f1d83ad42217a39609db6188c56fe6dc44ecfbd3c7a0d47ef53fa00f0f38c2a8aef134fcda1c2c62d23bc816d44a5c1b5bd45a0dddc597db
406 -DIST firefox-91.11.0esr-sk.xpi 566490 BLAKE2B e541253ba0718f9622651751a805fb6b6719c60c0c36fc3d970069dc917913d04b08dfdd62e020e0a357d76a23ad5770f6cdd1e817e4a3c5d528e2e08396ee4b SHA512 64f083332955f8758c846074a43f7d00d90538dabe1e5d9afe9204d11c6376e4b1de33cde05e748bf21e60d40f79d6631eae8f397639baa726201a5793b0608f
407 -DIST firefox-91.11.0esr-sl.xpi 538010 BLAKE2B dfaeab310f746c26bc18d514cfb77f35bdde21d28b1573ad1c3a3b3aeca456ced4967cd2d8e5b3ae6c60a7fba96c6a99f382100e1fd4f3db1451f47ff308109b SHA512 8a3de12cb9de03b6fdd682456c287e693a5ea8acc55295d823ecae081992e1e0a9bbd12b7aa7e6cf8680081984367500d854264cd0ff3ff24229dc8c1852b7f6
408 -DIST firefox-91.11.0esr-son.xpi 425990 BLAKE2B 957d7fe293caebf714887f03513ac35c7eda6985573564d1c709dc3f05bb5c855ee0f90199c2ed25652b0a9a334b5242f92f51833a92a78e7ec3444d0cab38d2 SHA512 5c98cf43ef7e2e883a7a6b47e65dcbaa384ba9b6584932277865f2f8843e28624a776c074d5142e39ec8c838c697a57776cd577e66b5f9e2374b889d00e5fb8e
409 -DIST firefox-91.11.0esr-sq.xpi 556000 BLAKE2B 7c982ab27b51d6592714047a638507d5ca7243ca5f23a97a4a3cb17eb9aae851ffe2a04762b316d5573a834c59dde51b17072e074e03ebd91e4d2eb40935e278 SHA512 5560398fdf9410baea4c9af7bbf07db624023a0887baba251bda2bd6780d7691821317f21b2a1c212b06a6313ea2280015e7862f503b079e008635b3c6ea1a1a
410 -DIST firefox-91.11.0esr-sr.xpi 586085 BLAKE2B 9410b040c9dcc3804cf5f5bf67a21e7089e37d9dc546dcf276373ffcde8eacea25e4839e825d0095c4ef9b18a9e0844f5718afd8c4dc1c36102e10258b0f7516 SHA512 f5fc45276f3c3cb5919eadb0b2369c5871b63174d225c26342a9da0cbc277227766ddd8f50ef57065bc11445e018555d31180ce3b80c189d62aa4685e03588a7
411 -DIST firefox-91.11.0esr-sv-SE.xpi 539965 BLAKE2B 0593b90411c8dbc68bca7b3a679b6e3a9442ef58ec69906f57ef2748a49622d0edb494029aff364275ffca8984964b9963ba3bfeda5d6565cfe2bc8a27486bca SHA512 389f042bbf5261fbb43f59011ab7768036a4541c28e15c43910f9d1a828fc80487825cfd94b6cf62d8be2915f5c3d7caecf024842013b4a01e11f0fc7d2d0e2a
412 -DIST firefox-91.11.0esr-szl.xpi 509821 BLAKE2B f80d7b218462205240537eeae12b8e59d1337d2597eab1817a58afe24994b6c345c70c82208470421c41cfd8cecec4c18bd85f3020ca8826616329001d4ee03a SHA512 ace3c32aacbd5a5951f98c462b25dd62208f4ded7c3ce71a7e0ab4b924fb56da266d01bd8a4e5613720f1ca5e6d048e432d760ac5606acd5eb7327870ee1baf3
413 -DIST firefox-91.11.0esr-ta.xpi 513822 BLAKE2B 0e1c03f5b4c10dca4b382827fe31d2c2121b8e602ca4bf0825f58031a9d75b303f1cd917e7de4d219c4e66ecaf9d07c5be6ba1ca250f18a584310683f6f843eb SHA512 908e425bb07e3c331ef5496da8f85508f16ef36dbc46af75b44c733491652403abca31751ee6a280e011ed434d96e830fd167108e5c29023e3c722ce6ee4c48f
414 -DIST firefox-91.11.0esr-te.xpi 549971 BLAKE2B 74bc32063d417ebc9a76580ddd5beed11ee2fc53f6065d4b90efeaa34d177019e562a1cc891ddcd9c5b9a04b9b6b2474a3f23c0232547eb14f20ad755604a9e9 SHA512 90d0ede40e7e2ded67b6683f36d2136424da6c139713477cbaede8c2d5c470fcc3cc9ee4d2543195f6582046037c54b130815b97e05b5544bbca47ee2f5bf290
415 -DIST firefox-91.11.0esr-th.xpi 607069 BLAKE2B c50d4bed55af7d568bf998ef331b4c1bae754b154b49072afe12955234921cef9e8a8004f7b68ae21504acab4d44b2ddb8c8b22e6fc5e5627dcba29a52b20a0e SHA512 db880460face1ffd27b68a7a859d69cf95597842cd31a5d2f9bc6909311441ac861f42b9e1c4efe6f6fc4938d59a0b080015fc898573bd51ca4b4a1188afb01e
416 -DIST firefox-91.11.0esr-tl.xpi 516129 BLAKE2B bdec01e215cb32924190637e786d02d0f1c06de03b651d7b10e2553462b24f2b3a2af9a3925c174a5849a69c76f6568e1003941db135966848f655e0aa4c735d SHA512 a27b23c1386a5ba614865043fa72a447285078e188a30eae371212250c9b5b3615b996cdeeef25ce437530610e0725d544a4214a850d5934ecf349d5a9c000e2
417 -DIST firefox-91.11.0esr-tr.xpi 553674 BLAKE2B 64399c69aa2fafa6d5cfb876478127206b1795f7dc56dd79d0591530ad832ed5dc2c34cf46ef8ee4ba5d402d0bcdd2b927ebdb402c393bd6f16c30cc8412d101 SHA512 96695646f828780c188ce3f8aad0a1a73e9e324a4307baa79726b7135a20910a5717b88d1bc704efd68495b0513e5c0d519cc0fabb39effe61089d6a94eeac0f
418 -DIST firefox-91.11.0esr-trs.xpi 491088 BLAKE2B 4995820c6fa9381c78afcba8f8740221ffb216ff6a7c5393805256a2d2f4f4712659fb0ca9e3d327ca8b2cf9744bf0719c1fc58202b8bf2ac053a9ef7a48c0d0 SHA512 10f62a887df630adfb6d26f127000efbeb0d3b7183ad886c28c0e909a6d78bf8650d5ead384d31da2a3b96653f15413df500c2fc6fc8406b027bbd6dc8a4f82f
419 -DIST firefox-91.11.0esr-uk.xpi 620504 BLAKE2B 5bc805d6a154154a284400d67f6bf274bb13fff17629d7a99d86e1c2336a9428496568054b989d40fc8d78d7dbdd18cd685bdd47e43a2e25ee50858bcc42a227 SHA512 de83b5ad00c2ef2efbbee0b0b0c0d56d55c979484d5b99ea273e4681dd3d3bc545dcaf86b14e9bc6fdfc85963ac79c58b596c498b94695ef408a2d2f096c9621
420 -DIST firefox-91.11.0esr-ur.xpi 557319 BLAKE2B d3caff4e0e7aeff35999f2f6af601e1d76d9a07aab37c8066c9f6c1725c73e4e4678babef6af35d21a4d0f59321d8db9e9b2d7372afe059c37fb2d4742fde53c SHA512 6090f16f32b44abd6404b79ba75e7b14fe437424852d932a39fac26e289e632e600474b53e39918e373c58d899490d7c5faca423a268aa12457885e32394b5b1
421 -DIST firefox-91.11.0esr-uz.xpi 466866 BLAKE2B d880952c7a99fd96ee703f2db9ff0d17942fb68fe9e80078fe090f73086770604941e3249aedb8ec4be58f1d801f39aa478c6b97a9af396fac84134da8a91c74 SHA512 21299f37ce7fef7966a774eae94d982020c890056949cc44ed823eac9ed49b7275435de06e63de2fa7cd7b2fb1ce217df95c1ba66927fb04518dae8737f61c60
422 -DIST firefox-91.11.0esr-vi.xpi 573484 BLAKE2B c71ae072bd9849417d1e8315798b65a67b492893b65349eb3b4d06109fd20093b412cc319e6d4bcd9365653d633844a986edb792bb5810bd144de6d8ccdd8663 SHA512 1c2fea8d42e68224c95a43682b080ba5ed646f7650953db0ec3b9332d58c99598af00ae2831aac2a18379ff11b8a1027d90846705cbb87815a5930f303c8774c
423 -DIST firefox-91.11.0esr-xh.xpi 428173 BLAKE2B 80aff8feb3a94d9a2d8c12ae88c86a4e6b95355b1cf5cc9e84d6a9fe8ef23707a7a1083d571c67d83ac18c5082e6dfe831d700ef9f7e8c7dfc74396168378126 SHA512 b2790bd914882a714ef835555ac38db27a681838d28f539b004ed09181a33e8d720eff54a73eec5126e38c88e775f7e3b5ff0d3de5ebc28f6bb1915eae46ab5c
424 -DIST firefox-91.11.0esr-zh-CN.xpi 575372 BLAKE2B 0a12fb1a693d232f8a7dae937efc226445887ca28333ecb619e1028fb83deadacb94326c412649c20f984a1bb926f46eacfb9bbc3d56980dc5fb9196b5ba6ac7 SHA512 7582eafae88d1e502429706ad888c16d6cf8eacf52632ae6344226be6098b88bef2b15bcb8ac0d64cb56f5e547233cabc2baa7ff8f34a65c30c3740d926317f1
425 -DIST firefox-91.11.0esr-zh-TW.xpi 576229 BLAKE2B 5ef736cb63f040f40519bf1a267115b030294ed13a7d2ac49082f1aaae78a1335eb04b26ad840f74f459932ea88d9b6819bd49920f5815975dce70ccca550dee SHA512 2c2868a086d2e693cd157e68bd9594277381221c94ce56c9cb318bca382e6961daa2afc01386327676b384eaf9d28247ea7945b968caa66bc8d46c0ec00ce60d
426 -DIST firefox-91.11.0esr.source.tar.xz 384459848 BLAKE2B cff327378a1712d0dfb99e1a67bd63e958987e3147279af5f98ee9318fe91f42823bbc9afb0308638e42de789451b04ea895320a8c674cc221e0d4b0b1d80f38 SHA512 bff3a399c03bd1cdaaec0b6963b1558aa35b6338b6c02042ffd65fec0aedd344d01718692e881332f5f352c32da15ba09a20a09ee072200b47ae840bc0585a96
427 DIST firefox-91.12.0esr-ach.xpi 453218 BLAKE2B 72fe82032f20ab6c58af380d52b996b1dfccbb53341483fcb787619801e707840110490e3d5d44c2e326fb15acd02b6970f70ce3cfed34a4094da0355f415a2a SHA512 e2d6200ad969b5ff1c0b5b12b5735cc2ed9e0a8d6ef3ea1152aa72b7e57c85d5cc756e304197560f9b38e6f41390ce19ab4c6613a7e3b4c48f55af7fc28b7235
428 DIST firefox-91.12.0esr-af.xpi 426916 BLAKE2B f73e9822680474ff2ea982184e009adb9c2cc8cb9bf357241a142c4b5e178fd1cf3b59b5f14e60d5fc76b6477574b1f1742853e292c47cdd65cb185715e4bb52 SHA512 b818e45b0245dca391503a1a75a49fc4d376df6cac6e2edd7744fe2e8b91dfd7ac31e3125a6b0df530ca67200deeb38d29269622dc1fa8b120af207346bb9418
429 DIST firefox-91.12.0esr-an.xpi 499897 BLAKE2B 037a56ed04712009c4b593996068a6d7b462d600d1c35aefa68c1ba6f05a0d12195a4889e8f8cdb5d3c5953a244ee0cb9da49aa48d85ec0d328c0cacdb8e1796 SHA512 6b849d10a4c567109d0cd7b8c0ce3392e25d26cc91f29136f5c83d59306ab2f5b34c101b48b11748fb6472329cd031933676618b3f1fee251457243109f47979
430
431 diff --git a/www-client/firefox/firefox-102.0.1.ebuild b/www-client/firefox/firefox-102.0.1.ebuild
432 deleted file mode 100644
433 index bc5ce8ef73bc..000000000000
434 --- a/www-client/firefox/firefox-102.0.1.ebuild
435 +++ /dev/null
436 @@ -1,1293 +0,0 @@
437 -# Copyright 1999-2022 Gentoo Authors
438 -# Distributed under the terms of the GNU General Public License v2
439 -
440 -EAPI="8"
441 -
442 -FIREFOX_PATCHSET="firefox-102-patches-02j.tar.xz"
443 -
444 -LLVM_MAX_SLOT=14
445 -
446 -PYTHON_COMPAT=( python3_{8..11} )
447 -PYTHON_REQ_USE="ncurses,sqlite,ssl"
448 -
449 -WANT_AUTOCONF="2.1"
450 -
451 -VIRTUALX_REQUIRED="pgo"
452 -
453 -MOZ_ESR=
454 -
455 -MOZ_PV=${PV}
456 -MOZ_PV_SUFFIX=
457 -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
458 - MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
459 -
460 - # Convert the ebuild version to the upstream Mozilla version
461 - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
462 - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
463 - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
464 -fi
465 -
466 -if [[ -n ${MOZ_ESR} ]] ; then
467 - # ESR releases have slightly different version numbers
468 - MOZ_PV="${MOZ_PV}esr"
469 -fi
470 -
471 -MOZ_PN="${PN%-bin}"
472 -MOZ_P="${MOZ_PN}-${MOZ_PV}"
473 -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
474 -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
475 -
476 -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \
477 - llvm multiprocessing pax-utils python-any-r1 toolchain-funcs \
478 - virtualx xdg
479 -
480 -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
481 -
482 -if [[ ${PV} == *_rc* ]] ; then
483 - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
484 -fi
485 -
486 -PATCH_URIS=(
487 - https://dev.gentoo.org/~{juippis,polynomial-c,whissi,slashbeast}/mozilla/patchsets/${FIREFOX_PATCHSET}
488 -)
489 -
490 -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
491 - ${PATCH_URIS[@]}"
492 -
493 -DESCRIPTION="Firefox Web Browser"
494 -HOMEPAGE="https://www.mozilla.com/firefox"
495 -
496 -KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
497 -
498 -SLOT="rapid"
499 -LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
500 -
501 -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel"
502 -IUSE+=" jack libproxy lto +openh264 pgo pulseaudio sndio selinux"
503 -IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx system-png system-python-libs +system-webp"
504 -IUSE+=" wayland wifi"
505 -
506 -# Firefox-only IUSE
507 -IUSE+=" geckodriver +gmp-autoupdate screencast +X"
508 -
509 -REQUIRED_USE="debug? ( !system-av1 )
510 - pgo? ( lto )
511 - wayland? ( dbus )
512 - wifi? ( dbus )"
513 -
514 -# Firefox-only REQUIRED_USE flags
515 -REQUIRED_USE+=" || ( X wayland )"
516 -REQUIRED_USE+=" pgo? ( X )"
517 -REQUIRED_USE+=" screencast? ( wayland )"
518 -
519 -BDEPEND="${PYTHON_DEPS}
520 - app-arch/unzip
521 - app-arch/zip
522 - >=dev-util/cbindgen-0.24.0
523 - >=net-libs/nodejs-10.23.1
524 - virtual/pkgconfig
525 - >=virtual/rust-1.59.0
526 - || (
527 - (
528 - sys-devel/clang:14
529 - sys-devel/llvm:14
530 - clang? (
531 - =sys-devel/lld-14*
532 - pgo? ( =sys-libs/compiler-rt-sanitizers-14*[profile] )
533 - )
534 - )
535 - (
536 - sys-devel/clang:13
537 - sys-devel/llvm:13
538 - clang? (
539 - =sys-devel/lld-13*
540 - pgo? ( =sys-libs/compiler-rt-sanitizers-13*[profile] )
541 - )
542 - )
543 - (
544 - sys-devel/clang:12
545 - sys-devel/llvm:12
546 - clang? (
547 - =sys-devel/lld-12*
548 - pgo? ( =sys-libs/compiler-rt-sanitizers-12*[profile] )
549 - )
550 - )
551 - )
552 - amd64? ( >=dev-lang/nasm-2.14 )
553 - x86? ( >=dev-lang/nasm-2.14 )"
554 -
555 -COMMON_DEPEND="
556 - dev-libs/atk
557 - dev-libs/expat
558 - dev-libs/glib:2
559 - dev-libs/libffi:=
560 - >=dev-libs/nss-3.79
561 - >=dev-libs/nspr-4.34
562 - media-libs/alsa-lib
563 - media-libs/fontconfig
564 - media-libs/freetype
565 - media-libs/mesa
566 - media-video/ffmpeg
567 - sys-libs/zlib
568 - virtual/freedesktop-icon-theme
569 - x11-libs/cairo
570 - x11-libs/gdk-pixbuf
571 - x11-libs/pango
572 - x11-libs/pixman
573 - dbus? (
574 - dev-libs/dbus-glib
575 - sys-apps/dbus
576 - )
577 - jack? ( virtual/jack )
578 - libproxy? ( net-libs/libproxy )
579 - selinux? ( sec-policy/selinux-mozilla )
580 - sndio? ( >=media-sound/sndio-1.8.0-r1 )
581 - screencast? ( media-video/pipewire:= )
582 - system-av1? (
583 - >=media-libs/dav1d-0.9.3:=
584 - >=media-libs/libaom-1.0.0:=
585 - )
586 - system-harfbuzz? (
587 - >=media-gfx/graphite2-1.3.13
588 - >=media-libs/harfbuzz-2.8.1:0=
589 - )
590 - system-icu? ( >=dev-libs/icu-71.1:= )
591 - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
592 - system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
593 - system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
594 - system-png? ( >=media-libs/libpng-1.6.35:0=[apng] )
595 - system-webp? ( >=media-libs/libwebp-1.1.0:0= )
596 - wayland? (
597 - >=media-libs/libepoxy-1.5.10-r1
598 - x11-libs/gtk+:3[wayland]
599 - x11-libs/libdrm
600 - x11-libs/libxkbcommon[wayland]
601 - )
602 - wifi? (
603 - kernel_linux? (
604 - dev-libs/dbus-glib
605 - net-misc/networkmanager
606 - sys-apps/dbus
607 - )
608 - )
609 - X? (
610 - virtual/opengl
611 - x11-libs/cairo[X]
612 - x11-libs/gtk+:3[X]
613 - x11-libs/libX11
614 - x11-libs/libXcomposite
615 - x11-libs/libXdamage
616 - x11-libs/libXext
617 - x11-libs/libXfixes
618 - x11-libs/libxkbcommon[X]
619 - x11-libs/libXrandr
620 - x11-libs/libXtst
621 - x11-libs/libxcb:=
622 - )"
623 -
624 -RDEPEND="${COMMON_DEPEND}
625 - !www-client/firefox:0
626 - !www-client/firefox:esr
627 - jack? ( virtual/jack )
628 - openh264? ( media-libs/openh264:*[plugin] )
629 - pulseaudio? (
630 - || (
631 - media-sound/pulseaudio
632 - >=media-sound/apulse-0.1.12-r4
633 - )
634 - )
635 - selinux? ( sec-policy/selinux-mozilla )"
636 -
637 -DEPEND="${COMMON_DEPEND}
638 - pulseaudio? (
639 - || (
640 - media-sound/pulseaudio
641 - >=media-sound/apulse-0.1.12-r4[sdk]
642 - )
643 - )
644 - X? (
645 - x11-libs/libICE
646 - x11-libs/libSM
647 - )"
648 -
649 -S="${WORKDIR}/${PN}-${PV%_*}"
650 -
651 -# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
652 -# overridden in the enviromnent (advanced hackers only)
653 -if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
654 - MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
655 -fi
656 -
657 -llvm_check_deps() {
658 - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
659 - einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
660 - return 1
661 - fi
662 -
663 - if use clang ; then
664 - if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
665 - einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
666 - return 1
667 - fi
668 -
669 - if use pgo ; then
670 - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
671 - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
672 - return 1
673 - fi
674 - fi
675 - fi
676 -
677 - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
678 -}
679 -
680 -MOZ_LANGS=(
681 - af ar ast be bg br ca cak cs cy da de dsb
682 - el en-CA en-GB en-US es-AR es-ES et eu
683 - fi fr fy-NL ga-IE gd gl he hr hsb hu
684 - id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO
685 - pa-IN pl pt-BR pt-PT rm ro ru
686 - sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW
687 -)
688 -
689 -# Firefox-only LANGS
690 -MOZ_LANGS+=( ach )
691 -MOZ_LANGS+=( an )
692 -MOZ_LANGS+=( az )
693 -MOZ_LANGS+=( bn )
694 -MOZ_LANGS+=( bs )
695 -MOZ_LANGS+=( ca-valencia )
696 -MOZ_LANGS+=( eo )
697 -MOZ_LANGS+=( es-CL )
698 -MOZ_LANGS+=( es-MX )
699 -MOZ_LANGS+=( fa )
700 -MOZ_LANGS+=( ff )
701 -MOZ_LANGS+=( gn )
702 -MOZ_LANGS+=( gu-IN )
703 -MOZ_LANGS+=( hi-IN )
704 -MOZ_LANGS+=( hy-AM )
705 -MOZ_LANGS+=( ia )
706 -MOZ_LANGS+=( km )
707 -MOZ_LANGS+=( kn )
708 -MOZ_LANGS+=( lij )
709 -MOZ_LANGS+=( mk )
710 -MOZ_LANGS+=( mr )
711 -MOZ_LANGS+=( my )
712 -MOZ_LANGS+=( ne-NP )
713 -MOZ_LANGS+=( oc )
714 -MOZ_LANGS+=( sco )
715 -MOZ_LANGS+=( si )
716 -MOZ_LANGS+=( son )
717 -MOZ_LANGS+=( szl )
718 -MOZ_LANGS+=( ta )
719 -MOZ_LANGS+=( te )
720 -MOZ_LANGS+=( tl )
721 -MOZ_LANGS+=( trs )
722 -MOZ_LANGS+=( ur )
723 -MOZ_LANGS+=( xh )
724 -
725 -mozilla_set_globals() {
726 - # https://bugs.gentoo.org/587334
727 - local MOZ_TOO_REGIONALIZED_FOR_L10N=(
728 - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
729 - )
730 -
731 - local lang xflag
732 - for lang in "${MOZ_LANGS[@]}" ; do
733 - # en and en_US are handled internally
734 - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
735 - continue
736 - fi
737 -
738 - # strip region subtag if $lang is in the list
739 - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
740 - xflag=${lang%%-*}
741 - else
742 - xflag=${lang}
743 - fi
744 -
745 - SRC_URI+=" l10n_${xflag/[_@]/-}? ("
746 - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
747 - SRC_URI+=" )"
748 - IUSE+=" l10n_${xflag/[_@]/-}"
749 - done
750 -}
751 -mozilla_set_globals
752 -
753 -moz_clear_vendor_checksums() {
754 - debug-print-function ${FUNCNAME} "$@"
755 -
756 - if [[ ${#} -ne 1 ]] ; then
757 - die "${FUNCNAME} requires exact one argument"
758 - fi
759 -
760 - einfo "Clearing cargo checksums for ${1} ..."
761 -
762 - sed -i \
763 - -e 's/\("files":{\)[^}]*/\1/' \
764 - "${S}"/third_party/rust/${1}/.cargo-checksum.json \
765 - || die
766 -}
767 -
768 -moz_install_xpi() {
769 - debug-print-function ${FUNCNAME} "$@"
770 -
771 - if [[ ${#} -lt 2 ]] ; then
772 - die "${FUNCNAME} requires at least two arguments"
773 - fi
774 -
775 - local DESTDIR=${1}
776 - shift
777 -
778 - insinto "${DESTDIR}"
779 -
780 - local emid xpi_file xpi_tmp_dir
781 - for xpi_file in "${@}" ; do
782 - emid=
783 - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
784 -
785 - # Unpack XPI
786 - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
787 -
788 - # Determine extension ID
789 - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
790 - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
791 - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
792 - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
793 - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
794 - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
795 - else
796 - die "failed to determine extension id"
797 - fi
798 -
799 - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
800 - newins "${xpi_file}" "${emid}.xpi"
801 - done
802 -}
803 -
804 -mozconfig_add_options_ac() {
805 - debug-print-function ${FUNCNAME} "$@"
806 -
807 - if [[ ${#} -lt 2 ]] ; then
808 - die "${FUNCNAME} requires at least two arguments"
809 - fi
810 -
811 - local reason=${1}
812 - shift
813 -
814 - local option
815 - for option in ${@} ; do
816 - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
817 - done
818 -}
819 -
820 -mozconfig_add_options_mk() {
821 - debug-print-function ${FUNCNAME} "$@"
822 -
823 - if [[ ${#} -lt 2 ]] ; then
824 - die "${FUNCNAME} requires at least two arguments"
825 - fi
826 -
827 - local reason=${1}
828 - shift
829 -
830 - local option
831 - for option in ${@} ; do
832 - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
833 - done
834 -}
835 -
836 -mozconfig_use_enable() {
837 - debug-print-function ${FUNCNAME} "$@"
838 -
839 - if [[ ${#} -lt 1 ]] ; then
840 - die "${FUNCNAME} requires at least one arguments"
841 - fi
842 -
843 - local flag=$(use_enable "${@}")
844 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
845 -}
846 -
847 -mozconfig_use_with() {
848 - debug-print-function ${FUNCNAME} "$@"
849 -
850 - if [[ ${#} -lt 1 ]] ; then
851 - die "${FUNCNAME} requires at least one arguments"
852 - fi
853 -
854 - local flag=$(use_with "${@}")
855 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
856 -}
857 -
858 -pkg_pretend() {
859 - if [[ ${MERGE_TYPE} != binary ]] ; then
860 - if use pgo ; then
861 - if ! has usersandbox $FEATURES ; then
862 - die "You must enable usersandbox as X server can not run as root!"
863 - fi
864 - fi
865 -
866 - # Ensure we have enough disk space to compile
867 - if use pgo || use lto || use debug ; then
868 - CHECKREQS_DISK_BUILD="13500M"
869 - else
870 - CHECKREQS_DISK_BUILD="6600M"
871 - fi
872 -
873 - check-reqs_pkg_pretend
874 - fi
875 -}
876 -
877 -pkg_setup() {
878 - if [[ ${MERGE_TYPE} != binary ]] ; then
879 - if use pgo ; then
880 - if ! has userpriv ${FEATURES} ; then
881 - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
882 - fi
883 - fi
884 -
885 - # Ensure we have enough disk space to compile
886 - if use pgo || use lto || use debug ; then
887 - CHECKREQS_DISK_BUILD="13500M"
888 - else
889 - CHECKREQS_DISK_BUILD="6400M"
890 - fi
891 -
892 - check-reqs_pkg_setup
893 -
894 - llvm_pkg_setup
895 -
896 - if use clang && use lto ; then
897 - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
898 - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
899 - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
900 -
901 - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
902 - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
903 - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
904 -
905 - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
906 - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
907 - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
908 - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
909 - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
910 - eerror " - Build ${CATEGORY}/${PN} without USE=lto"
911 - eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole "
912 - eerror " llvm/clang/lld/rust chain depending on your @world updates)"
913 - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
914 - fi
915 - fi
916 -
917 - if ! use clang && [[ $(gcc-major-version) -eq 11 ]] \
918 - && ! has_version -b ">sys-devel/gcc-11.1.0:11" ; then
919 - # bug 792705
920 - eerror "Using GCC 11 to compile firefox is currently known to be broken (see bug #792705)."
921 - die "Set USE=clang or select <gcc-11 to build ${CATEGORY}/${P}."
922 - fi
923 -
924 - python-any-r1_pkg_setup
925 -
926 - # Avoid PGO profiling problems due to enviroment leakage
927 - # These should *always* be cleaned up anyway
928 - unset \
929 - DBUS_SESSION_BUS_ADDRESS \
930 - DISPLAY \
931 - ORBIT_SOCKETDIR \
932 - SESSION_MANAGER \
933 - XAUTHORITY \
934 - XDG_CACHE_HOME \
935 - XDG_SESSION_COOKIE
936 -
937 - # Build system is using /proc/self/oom_score_adj, bug #604394
938 - addpredict /proc/self/oom_score_adj
939 -
940 - if use pgo ; then
941 - # Allow access to GPU during PGO run
942 - local ati_cards mesa_cards nvidia_cards render_cards
943 - shopt -s nullglob
944 -
945 - ati_cards=$(echo -n /dev/ati/card* | sed 's/ /:/g')
946 - if [[ -n "${ati_cards}" ]] ; then
947 - addpredict "${ati_cards}"
948 - fi
949 -
950 - mesa_cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
951 - if [[ -n "${mesa_cards}" ]] ; then
952 - addpredict "${mesa_cards}"
953 - fi
954 -
955 - nvidia_cards=$(echo -n /dev/nvidia* | sed 's/ /:/g')
956 - if [[ -n "${nvidia_cards}" ]] ; then
957 - addpredict "${nvidia_cards}"
958 - fi
959 -
960 - render_cards=$(echo -n /dev/dri/renderD128* | sed 's/ /:/g')
961 - if [[ -n "${render_cards}" ]] ; then
962 - addpredict "${render_cards}"
963 - fi
964 -
965 - shopt -u nullglob
966 - fi
967 -
968 - if ! mountpoint -q /dev/shm ; then
969 - # If /dev/shm is not available, configure is known to fail with
970 - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
971 - ewarn "/dev/shm is not mounted -- expect build failures!"
972 - fi
973 -
974 - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
975 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
976 - # get your own set of keys.
977 - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
978 - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
979 - fi
980 -
981 - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
982 - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
983 - fi
984 -
985 - # Mozilla API keys (see https://location.services.mozilla.com/api)
986 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
987 - # get your own set of keys.
988 - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
989 - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
990 - fi
991 -
992 - # Ensure we use C locale when building, bug #746215
993 - export LC_ALL=C
994 - fi
995 -
996 - CONFIG_CHECK="~SECCOMP"
997 - WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
998 - linux-info_pkg_setup
999 -}
1000 -
1001 -src_unpack() {
1002 - local _lp_dir="${WORKDIR}/language_packs"
1003 - local _src_file
1004 -
1005 - if [[ ! -d "${_lp_dir}" ]] ; then
1006 - mkdir "${_lp_dir}" || die
1007 - fi
1008 -
1009 - for _src_file in ${A} ; do
1010 - if [[ ${_src_file} == *.xpi ]]; then
1011 - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
1012 - else
1013 - unpack ${_src_file}
1014 - fi
1015 - done
1016 -}
1017 -
1018 -src_prepare() {
1019 - use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
1020 - eapply "${WORKDIR}/firefox-patches"
1021 -
1022 - # Allow user to apply any additional patches without modifing ebuild
1023 - eapply_user
1024 -
1025 - # Make cargo respect MAKEOPTS
1026 - export CARGO_BUILD_JOBS="$(makeopts_jobs)"
1027 -
1028 - # Make LTO respect MAKEOPTS
1029 - sed -i \
1030 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
1031 - "${S}"/build/moz.configure/lto-pgo.configure \
1032 - || die "sed failed to set num_cores"
1033 -
1034 - # Make ICU respect MAKEOPTS
1035 - sed -i \
1036 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
1037 - "${S}"/intl/icu_sources_data.py \
1038 - || die "sed failed to set num_cores"
1039 -
1040 - # sed-in toolchain prefix
1041 - sed -i \
1042 - -e "s/objdump/${CHOST}-objdump/" \
1043 - "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
1044 - || die "sed failed to set toolchain prefix"
1045 -
1046 - sed -i \
1047 - -e 's/ccache_stats = None/return None/' \
1048 - "${S}"/python/mozbuild/mozbuild/controller/building.py \
1049 - || die "sed failed to disable ccache stats call"
1050 -
1051 - einfo "Removing pre-built binaries ..."
1052 - find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
1053 -
1054 - # Clearing checksums where we have applied patches
1055 - moz_clear_vendor_checksums target-lexicon-0.9.0
1056 -
1057 - # Create build dir
1058 - BUILD_DIR="${WORKDIR}/${PN}_build"
1059 - mkdir -p "${BUILD_DIR}" || die
1060 -
1061 - # Write API keys to disk
1062 - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
1063 - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
1064 - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
1065 -
1066 - xdg_environment_reset
1067 -}
1068 -
1069 -src_configure() {
1070 - # Show flags set at the beginning
1071 - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
1072 - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
1073 - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
1074 - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
1075 - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
1076 -
1077 - local have_switched_compiler=
1078 - if use clang && ! tc-is-clang ; then
1079 - # Force clang
1080 - einfo "Enforcing the use of clang due to USE=clang ..."
1081 - have_switched_compiler=yes
1082 - AR=llvm-ar
1083 - AS=llvm-as
1084 - CC=${CHOST}-clang
1085 - CXX=${CHOST}-clang++
1086 - NM=llvm-nm
1087 - RANLIB=llvm-ranlib
1088 - elif ! use clang && ! tc-is-gcc ; then
1089 - # Force gcc
1090 - have_switched_compiler=yes
1091 - einfo "Enforcing the use of gcc due to USE=-clang ..."
1092 - AR=gcc-ar
1093 - CC=${CHOST}-gcc
1094 - CXX=${CHOST}-g++
1095 - NM=gcc-nm
1096 - RANLIB=gcc-ranlib
1097 - fi
1098 -
1099 - if [[ -n "${have_switched_compiler}" ]] ; then
1100 - # Because we switched active compiler we have to ensure
1101 - # that no unsupported flags are set
1102 - strip-unsupported-flags
1103 - fi
1104 -
1105 - # Ensure we use correct toolchain
1106 - export HOST_CC="$(tc-getBUILD_CC)"
1107 - export HOST_CXX="$(tc-getBUILD_CXX)"
1108 - tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
1109 -
1110 - # Pass the correct toolchain paths through cbindgen
1111 - if tc-is-cross-compiler ; then
1112 - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
1113 - fi
1114 -
1115 - # Set MOZILLA_FIVE_HOME
1116 - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
1117 -
1118 - # python/mach/mach/mixin/process.py fails to detect SHELL
1119 - export SHELL="${EPREFIX}/bin/bash"
1120 -
1121 - # Set state path
1122 - export MOZBUILD_STATE_PATH="${BUILD_DIR}"
1123 -
1124 - # Set MOZCONFIG
1125 - export MOZCONFIG="${S}/.mozconfig"
1126 -
1127 - # Initialize MOZCONFIG
1128 - mozconfig_add_options_ac '' --enable-application=browser
1129 -
1130 - # Set Gentoo defaults
1131 - export MOZILLA_OFFICIAL=1
1132 -
1133 - mozconfig_add_options_ac 'Gentoo default' \
1134 - --allow-addon-sideload \
1135 - --disable-cargo-incremental \
1136 - --disable-crashreporter \
1137 - --disable-gpsd \
1138 - --disable-install-strip \
1139 - --disable-parental-controls \
1140 - --disable-strip \
1141 - --disable-updater \
1142 - --enable-negotiateauth \
1143 - --enable-new-pass-manager \
1144 - --enable-official-branding \
1145 - --enable-release \
1146 - --enable-system-ffi \
1147 - --enable-system-pixman \
1148 - --host="${CBUILD:-${CHOST}}" \
1149 - --libdir="${EPREFIX}/usr/$(get_libdir)" \
1150 - --prefix="${EPREFIX}/usr" \
1151 - --target="${CHOST}" \
1152 - --without-ccache \
1153 - --without-wasm-sandboxed-libraries \
1154 - --with-intl-api \
1155 - --with-libclang-path="$(llvm-config --libdir)" \
1156 - --with-system-nspr \
1157 - --with-system-nss \
1158 - --with-system-zlib \
1159 - --with-toolchain-prefix="${CHOST}-" \
1160 - --with-unsigned-addon-scopes=app,system \
1161 - --x-includes="${ESYSROOT}/usr/include" \
1162 - --x-libraries="${ESYSROOT}/usr/$(get_libdir)"
1163 -
1164 - # Set update channel
1165 - local update_channel=release
1166 - [[ -n ${MOZ_ESR} ]] && update_channel=esr
1167 - mozconfig_add_options_ac '' --update-channel=${update_channel}
1168 -
1169 - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
1170 - mozconfig_add_options_ac '' --enable-rust-simd
1171 - fi
1172 -
1173 - # For future keywording: This is currently (97.0) only supported on:
1174 - # amd64, arm, arm64 & x86.
1175 - # Might want to flip the logic around if Firefox is to support more arches.
1176 - if use ppc64; then
1177 - mozconfig_add_options_ac '' --disable-sandbox
1178 - else
1179 - mozconfig_add_options_ac '' --enable-sandbox
1180 - fi
1181 -
1182 - if [[ -s "${S}/api-google.key" ]] ; then
1183 - local key_origin="Gentoo default"
1184 - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
1185 - key_origin="User value"
1186 - fi
1187 -
1188 - mozconfig_add_options_ac "${key_origin}" \
1189 - --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
1190 - else
1191 - einfo "Building without Google API key ..."
1192 - fi
1193 -
1194 - if [[ -s "${S}/api-location.key" ]] ; then
1195 - local key_origin="Gentoo default"
1196 - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
1197 - key_origin="User value"
1198 - fi
1199 -
1200 - mozconfig_add_options_ac "${key_origin}" \
1201 - --with-google-location-service-api-keyfile="${S}/api-location.key"
1202 - else
1203 - einfo "Building without Location API key ..."
1204 - fi
1205 -
1206 - if [[ -s "${S}/api-mozilla.key" ]] ; then
1207 - local key_origin="Gentoo default"
1208 - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
1209 - key_origin="User value"
1210 - fi
1211 -
1212 - mozconfig_add_options_ac "${key_origin}" \
1213 - --with-mozilla-api-keyfile="${S}/api-mozilla.key"
1214 - else
1215 - einfo "Building without Mozilla API key ..."
1216 - fi
1217 -
1218 - mozconfig_use_with system-av1
1219 - mozconfig_use_with system-harfbuzz
1220 - mozconfig_use_with system-harfbuzz system-graphite2
1221 - mozconfig_use_with system-icu
1222 - mozconfig_use_with system-jpeg
1223 - mozconfig_use_with system-libevent
1224 - mozconfig_use_with system-libvpx
1225 - mozconfig_use_with system-png
1226 - mozconfig_use_with system-webp
1227 -
1228 - mozconfig_use_enable dbus
1229 - mozconfig_use_enable libproxy
1230 -
1231 - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
1232 -
1233 - mozconfig_use_enable geckodriver
1234 -
1235 - if use hardened ; then
1236 - mozconfig_add_options_ac "+hardened" --enable-hardening
1237 - append-ldflags "-Wl,-z,relro -Wl,-z,now"
1238 - fi
1239 -
1240 - local myaudiobackends=""
1241 - use jack && myaudiobackends+="jack,"
1242 - use sndio && myaudiobackends+="sndio,"
1243 - use pulseaudio && myaudiobackends+="pulseaudio,"
1244 - ! use pulseaudio && myaudiobackends+="alsa,"
1245 -
1246 - mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}"
1247 -
1248 - mozconfig_use_enable wifi necko-wifi
1249 -
1250 - if use X && use wayland ; then
1251 - mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland
1252 - elif ! use X && use wayland ; then
1253 - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only
1254 - else
1255 - mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3
1256 - fi
1257 -
1258 - if use lto ; then
1259 - if use clang ; then
1260 - # Upstream only supports lld when using clang
1261 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
1262 -
1263 - mozconfig_add_options_ac '+lto' --enable-lto=cross
1264 -
1265 - else
1266 - # ThinLTO is currently broken, see bmo#1644409
1267 - mozconfig_add_options_ac '+lto' --enable-lto=full
1268 - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
1269 - fi
1270 -
1271 - if use pgo ; then
1272 - mozconfig_add_options_ac '+pgo' MOZ_PGO=1
1273 -
1274 - if use clang ; then
1275 - # Used in build/pgo/profileserver.py
1276 - export LLVM_PROFDATA="llvm-profdata"
1277 - fi
1278 - fi
1279 - else
1280 - # Avoid auto-magic on linker
1281 - if use clang ; then
1282 - # This is upstream's default
1283 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
1284 - else
1285 - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
1286 - fi
1287 - fi
1288 -
1289 - # LTO flag was handled via configure
1290 - filter-flags '-flto*'
1291 -
1292 - mozconfig_use_enable debug
1293 - if use debug ; then
1294 - mozconfig_add_options_ac '+debug' --disable-optimize
1295 - else
1296 - if is-flag '-g*' ; then
1297 - if use clang ; then
1298 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
1299 - else
1300 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
1301 - fi
1302 - else
1303 - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
1304 - fi
1305 -
1306 - if is-flag '-O0' ; then
1307 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
1308 - elif is-flag '-O4' ; then
1309 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
1310 - elif is-flag '-O3' ; then
1311 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
1312 - elif is-flag '-O1' ; then
1313 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
1314 - elif is-flag '-Os' ; then
1315 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
1316 - else
1317 - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
1318 - fi
1319 - fi
1320 -
1321 - # Debug flag was handled via configure
1322 - filter-flags '-g*'
1323 -
1324 - # Optimization flag was handled via configure
1325 - filter-flags '-O*'
1326 -
1327 - # Modifications to better support ARM, bug #553364
1328 - if use cpu_flags_arm_neon ; then
1329 - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
1330 -
1331 - if ! tc-is-clang ; then
1332 - # thumb options aren't supported when using clang, bug 666966
1333 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \
1334 - --with-thumb=yes \
1335 - --with-thumb-interwork=no
1336 - fi
1337 - fi
1338 -
1339 - if [[ ${CHOST} == armv*h* ]] ; then
1340 - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
1341 -
1342 - if ! use system-libvpx ; then
1343 - sed -i \
1344 - -e "s|softfp|hard|" \
1345 - "${S}"/media/libvpx/moz.build \
1346 - || die
1347 - fi
1348 - fi
1349 -
1350 - if use clang ; then
1351 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
1352 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
1353 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
1354 - local disable_elf_hack=
1355 - if use amd64 ; then
1356 - disable_elf_hack=yes
1357 - elif use x86 ; then
1358 - disable_elf_hack=yes
1359 - elif use arm ; then
1360 - disable_elf_hack=yes
1361 - fi
1362 -
1363 - if [[ -n ${disable_elf_hack} ]] ; then
1364 - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack
1365 - fi
1366 - elif tc-is-gcc ; then
1367 - if ver_test $(gcc-fullversion) -ge 10 ; then
1368 - einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..."
1369 - append-cxxflags -fno-tree-loop-vectorize
1370 - fi
1371 - fi
1372 -
1373 - # Additional ARCH support
1374 - case "${ARCH}" in
1375 - arm)
1376 - # Reduce the memory requirements for linking
1377 - if use clang ; then
1378 - # Nothing to do
1379 - :;
1380 - elif use lto ; then
1381 - append-ldflags -Wl,--no-keep-memory
1382 - else
1383 - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
1384 - fi
1385 - ;;
1386 - esac
1387 -
1388 - if ! use elibc_glibc ; then
1389 - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
1390 - fi
1391 -
1392 - # Allow elfhack to work in combination with unstripped binaries
1393 - # when they would normally be larger than 2GiB.
1394 - append-ldflags "-Wl,--compress-debug-sections=zlib"
1395 -
1396 - # Make revdep-rebuild.sh happy; Also required for musl
1397 - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
1398 -
1399 - # Pass $MAKEOPTS to build system
1400 - export MOZ_MAKE_FLAGS="${MAKEOPTS}"
1401 -
1402 - # Use system's Python environment
1403 - PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach
1404 -
1405 - if use system-python-libs; then
1406 - export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="system"
1407 - else
1408 - export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none"
1409 - fi
1410 -
1411 - # Disable notification when build system has finished
1412 - export MOZ_NOSPAM=1
1413 -
1414 - # Portage sets XARGS environment variable to "xargs -r" by default which
1415 - # breaks build system's check_prog() function which doesn't support arguments
1416 - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
1417 -
1418 - # Set build dir
1419 - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
1420 -
1421 - # Show flags we will use
1422 - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
1423 - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
1424 - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
1425 - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
1426 - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
1427 -
1428 - # Handle EXTRA_CONF and show summary
1429 - local ac opt hash reason
1430 -
1431 - # Apply EXTRA_ECONF entries to $MOZCONFIG
1432 - if [[ -n ${EXTRA_ECONF} ]] ; then
1433 - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
1434 - for opt in "${ac[@]}"; do
1435 - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
1436 - done
1437 - fi
1438 -
1439 - echo
1440 - echo "=========================================================="
1441 - echo "Building ${PF} with the following configuration"
1442 - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
1443 - [[ -z ${hash} || ${hash} == \# ]] \
1444 - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
1445 - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
1446 - done
1447 - echo "=========================================================="
1448 - echo
1449 -
1450 - ./mach configure || die
1451 -}
1452 -
1453 -src_compile() {
1454 - local virtx_cmd=
1455 -
1456 - if use pgo ; then
1457 - virtx_cmd=virtx
1458 -
1459 - # Reset and cleanup environment variables used by GNOME/XDG
1460 - gnome2_environment_reset
1461 -
1462 - addpredict /root
1463 - fi
1464 -
1465 - if ! use X && use wayland; then
1466 - local -x GDK_BACKEND=wayland
1467 - else
1468 - local -x GDK_BACKEND=x11
1469 - fi
1470 -
1471 - ${virtx_cmd} ./mach build --verbose \
1472 - || die
1473 -}
1474 -
1475 -src_install() {
1476 - # xpcshell is getting called during install
1477 - pax-mark m \
1478 - "${BUILD_DIR}"/dist/bin/xpcshell \
1479 - "${BUILD_DIR}"/dist/bin/${PN} \
1480 - "${BUILD_DIR}"/dist/bin/plugin-container
1481 -
1482 - DESTDIR="${D}" ./mach install || die
1483 -
1484 - # Upstream cannot ship symlink but we can (bmo#658850)
1485 - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
1486 - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
1487 -
1488 - # Don't install llvm-symbolizer from sys-devel/llvm package
1489 - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
1490 - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
1491 - fi
1492 -
1493 - # Install policy (currently only used to disable application updates)
1494 - insinto "${MOZILLA_FIVE_HOME}/distribution"
1495 - newins "${FILESDIR}"/distribution.ini distribution.ini
1496 - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
1497 -
1498 - # Install system-wide preferences
1499 - local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences"
1500 - insinto "${PREFS_DIR}"
1501 - newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js
1502 -
1503 - local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js"
1504 -
1505 - # Set dictionary path to use system hunspell
1506 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
1507 - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
1508 - EOF
1509 -
1510 - # Force hwaccel prefs if USE=hwaccel is enabled
1511 - if use hwaccel ; then
1512 - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js-r2 \
1513 - >>"${GENTOO_PREFS}" \
1514 - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
1515 -
1516 - if use wayland; then
1517 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel wayland prefs"
1518 - pref("gfx.x11-egl.force-enabled", false);
1519 - EOF
1520 - else
1521 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel x11 prefs"
1522 - pref("gfx.x11-egl.force-enabled", true);
1523 - EOF
1524 - fi
1525 - fi
1526 -
1527 - if ! use gmp-autoupdate ; then
1528 - local plugin
1529 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
1530 - einfo "Disabling auto-update for ${plugin} plugin ..."
1531 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
1532 - pref("media.${plugin}.autoupdate", false);
1533 - EOF
1534 - done
1535 - fi
1536 -
1537 - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
1538 - if use system-harfbuzz ; then
1539 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
1540 - sticky_pref("gfx.font_rendering.graphite.enabled", true);
1541 - EOF
1542 - fi
1543 -
1544 - # Install language packs
1545 - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
1546 - if [[ -n "${langpacks}" ]] ; then
1547 - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
1548 - fi
1549 -
1550 - # Install geckodriver
1551 - if use geckodriver ; then
1552 - einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..."
1553 - pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
1554 - exeinto "${MOZILLA_FIVE_HOME}"
1555 - doexe "${BUILD_DIR}"/dist/bin/geckodriver
1556 -
1557 - dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
1558 - fi
1559 -
1560 - # Install icons
1561 - local icon_srcdir="${S}/browser/branding/official"
1562 - local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg"
1563 -
1564 - insinto /usr/share/icons/hicolor/symbolic/apps
1565 - newins "${icon_symbolic_file}" ${PN}-symbolic.svg
1566 -
1567 - local icon size
1568 - for icon in "${icon_srcdir}"/default*.png ; do
1569 - size=${icon%.png}
1570 - size=${size##*/default}
1571 -
1572 - if [[ ${size} -eq 48 ]] ; then
1573 - newicon "${icon}" ${PN}.png
1574 - fi
1575 -
1576 - newicon -s ${size} "${icon}" ${PN}.png
1577 - done
1578 -
1579 - # Install menu
1580 - local app_name="Mozilla ${MOZ_PN^}"
1581 - local desktop_file="${FILESDIR}/icon/${PN}-r3.desktop"
1582 - local desktop_filename="${PN}.desktop"
1583 - local exec_command="${PN}"
1584 - local icon="${PN}"
1585 - local use_wayland="false"
1586 -
1587 - if use wayland ; then
1588 - use_wayland="true"
1589 - fi
1590 -
1591 - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
1592 -
1593 - sed -i \
1594 - -e "s:@NAME@:${app_name}:" \
1595 - -e "s:@EXEC@:${exec_command}:" \
1596 - -e "s:@ICON@:${icon}:" \
1597 - "${WORKDIR}/${PN}.desktop-template" \
1598 - || die
1599 -
1600 - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
1601 -
1602 - rm "${WORKDIR}/${PN}.desktop-template" || die
1603 -
1604 - # Install wrapper script
1605 - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
1606 - newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
1607 -
1608 - # Update wrapper
1609 - sed -i \
1610 - -e "s:@PREFIX@:${EPREFIX}/usr:" \
1611 - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
1612 - -e "s:@APULSELIB_DIR@:${apulselib}:" \
1613 - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
1614 - "${ED}/usr/bin/${PN}" \
1615 - || die
1616 -}
1617 -
1618 -pkg_preinst() {
1619 - xdg_pkg_preinst
1620 -
1621 - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
1622 - # does not need to be forced into the LD_LIBRARY_PATH
1623 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
1624 - einfo "APULSE found; Generating library symlinks for sound support ..."
1625 - local lib
1626 - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die
1627 - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
1628 - # A quickpkg rolled by hand will grab symlinks as part of the package,
1629 - # so we need to avoid creating them if they already exist.
1630 - if [[ ! -L ${lib##*/} ]] ; then
1631 - ln -s "${lib}" ${lib##*/} || die
1632 - fi
1633 - done
1634 - popd &>/dev/null || die
1635 - fi
1636 -}
1637 -
1638 -pkg_postinst() {
1639 - xdg_pkg_postinst
1640 -
1641 - if ! use gmp-autoupdate ; then
1642 - elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
1643 - elog "installing into new profiles:"
1644 - local plugin
1645 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
1646 - elog "\t ${plugin}"
1647 - done
1648 - elog
1649 - fi
1650 -
1651 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
1652 - elog "Apulse was detected at merge time on this system and so it will always be"
1653 - elog "used for sound. If you wish to use pulseaudio instead please unmerge"
1654 - elog "media-sound/apulse."
1655 - elog
1656 - fi
1657 -
1658 - local show_doh_information
1659 - local show_normandy_information
1660 - local show_shortcut_information
1661 -
1662 - if [[ -z "${REPLACING_VERSIONS}" ]] ; then
1663 - # New install; Tell user that DoH is disabled by default
1664 - show_doh_information=yes
1665 - show_normandy_information=yes
1666 - show_shortcut_information=no
1667 - else
1668 - local replacing_version
1669 - for replacing_version in ${REPLACING_VERSIONS} ; do
1670 - if ver_test "${replacing_version}" -lt 91.0 ; then
1671 - # Tell user that we no longer install a shortcut
1672 - # per supported display protocol
1673 - show_shortcut_information=yes
1674 - fi
1675 - done
1676 - fi
1677 -
1678 - if [[ -n "${show_doh_information}" ]] ; then
1679 - elog
1680 - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):"
1681 - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all"
1682 - elog "DNS traffic to Cloudflare by default is not a good idea and applications"
1683 - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5"
1684 - elog "(\"Off by choice\") by default."
1685 - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
1686 - fi
1687 -
1688 - # bug 713782
1689 - if [[ -n "${show_normandy_information}" ]] ; then
1690 - elog
1691 - elog "Upstream operates a service named Normandy which allows Mozilla to"
1692 - elog "push changes for default settings or even install new add-ons remotely."
1693 - elog "While this can be useful to address problems like 'Armagadd-on 2.0' or"
1694 - elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security"
1695 - elog "concerns prevail, which is why we have switched off the use of this"
1696 - elog "service by default."
1697 - elog
1698 - elog "To re-enable this service set"
1699 - elog
1700 - elog " app.normandy.enabled=true"
1701 - elog
1702 - elog "in about:config."
1703 - fi
1704 -
1705 - if [[ -n "${show_shortcut_information}" ]] ; then
1706 - elog
1707 - elog "Since ${PN}-91.0 we no longer install multiple shortcuts for"
1708 - elog "each supported display protocol. Instead we will only install"
1709 - elog "one generic Mozilla ${PN^} shortcut."
1710 - elog "If you still want to be able to select between running Mozilla ${PN^}"
1711 - elog "on X11 or Wayland, you have to re-create these shortcuts on your own."
1712 - fi
1713 -
1714 - # bug 835078
1715 - if use hwaccel && has_version "x11-drivers/xf86-video-nouveau"; then
1716 - ewarn "You have nouveau drivers installed in your system and 'hwaccel' "
1717 - ewarn "enabled for Firefox. Nouveau / your GPU might not supported the "
1718 - ewarn "required EGL, so either disable 'hwaccel' or try the workaround "
1719 - ewarn "explained in https://bugs.gentoo.org/835078#c5 if Firefox crashes."
1720 - fi
1721 -
1722 - elog
1723 - elog "Unfortunately Firefox-100.0 breaks compatibility with some sites using "
1724 - elog "useragent checks. To temporarily fix this, enter about:config and modify "
1725 - elog "network.http.useragent.forceVersion preference to \"99\"."
1726 - elog "Or install an addon to change your useragent."
1727 - elog "See: https://support.mozilla.org/en-US/kb/difficulties-opening-or-using-website-firefox-100"
1728 - elog
1729 -}
1730
1731 diff --git a/www-client/firefox/firefox-103.0.1.ebuild b/www-client/firefox/firefox-103.0.1.ebuild
1732 deleted file mode 100644
1733 index f63628c3fda5..000000000000
1734 --- a/www-client/firefox/firefox-103.0.1.ebuild
1735 +++ /dev/null
1736 @@ -1,1286 +0,0 @@
1737 -# Copyright 1999-2022 Gentoo Authors
1738 -# Distributed under the terms of the GNU General Public License v2
1739 -
1740 -EAPI="8"
1741 -
1742 -FIREFOX_PATCHSET="firefox-103-patches-03j.tar.xz"
1743 -
1744 -LLVM_MAX_SLOT=14
1745 -
1746 -PYTHON_COMPAT=( python3_{8..11} )
1747 -PYTHON_REQ_USE="ncurses,sqlite,ssl"
1748 -
1749 -WANT_AUTOCONF="2.1"
1750 -
1751 -VIRTUALX_REQUIRED="pgo"
1752 -
1753 -MOZ_ESR=
1754 -
1755 -MOZ_PV=${PV}
1756 -MOZ_PV_SUFFIX=
1757 -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
1758 - MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
1759 -
1760 - # Convert the ebuild version to the upstream Mozilla version
1761 - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
1762 - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
1763 - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
1764 -fi
1765 -
1766 -if [[ -n ${MOZ_ESR} ]] ; then
1767 - # ESR releases have slightly different version numbers
1768 - MOZ_PV="${MOZ_PV}esr"
1769 -fi
1770 -
1771 -MOZ_PN="${PN%-bin}"
1772 -MOZ_P="${MOZ_PN}-${MOZ_PV}"
1773 -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
1774 -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
1775 -
1776 -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \
1777 - llvm multiprocessing pax-utils python-any-r1 toolchain-funcs \
1778 - virtualx xdg
1779 -
1780 -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
1781 -
1782 -if [[ ${PV} == *_rc* ]] ; then
1783 - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
1784 -fi
1785 -
1786 -PATCH_URIS=(
1787 - https://dev.gentoo.org/~{juippis,whissi,slashbeast}/mozilla/patchsets/${FIREFOX_PATCHSET}
1788 -)
1789 -
1790 -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
1791 - ${PATCH_URIS[@]}"
1792 -
1793 -DESCRIPTION="Firefox Web Browser"
1794 -HOMEPAGE="https://www.mozilla.com/firefox"
1795 -
1796 -KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
1797 -
1798 -SLOT="rapid"
1799 -LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
1800 -
1801 -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel"
1802 -IUSE+=" jack libproxy lto +openh264 pgo pulseaudio sndio selinux"
1803 -IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx system-png system-python-libs +system-webp"
1804 -IUSE+=" wayland wifi"
1805 -
1806 -# Firefox-only IUSE
1807 -IUSE+=" geckodriver +gmp-autoupdate screencast +X"
1808 -
1809 -REQUIRED_USE="debug? ( !system-av1 )
1810 - pgo? ( lto )
1811 - wifi? ( dbus )"
1812 -
1813 -# Firefox-only REQUIRED_USE flags
1814 -REQUIRED_USE+=" || ( X wayland )"
1815 -REQUIRED_USE+=" pgo? ( X )"
1816 -REQUIRED_USE+=" screencast? ( wayland )"
1817 -
1818 -BDEPEND="${PYTHON_DEPS}
1819 - app-arch/unzip
1820 - app-arch/zip
1821 - >=dev-util/cbindgen-0.24.3
1822 - net-libs/nodejs
1823 - virtual/pkgconfig
1824 - virtual/rust
1825 - || (
1826 - (
1827 - sys-devel/clang:14
1828 - sys-devel/llvm:14
1829 - clang? (
1830 - =sys-devel/lld-14*
1831 - pgo? ( =sys-libs/compiler-rt-sanitizers-14*[profile] )
1832 - )
1833 - )
1834 - (
1835 - sys-devel/clang:13
1836 - sys-devel/llvm:13
1837 - clang? (
1838 - =sys-devel/lld-13*
1839 - pgo? ( =sys-libs/compiler-rt-sanitizers-13*[profile] )
1840 - )
1841 - )
1842 - )
1843 - amd64? ( >=dev-lang/nasm-2.14 )
1844 - x86? ( >=dev-lang/nasm-2.14 )"
1845 -
1846 -COMMON_DEPEND="
1847 - dev-libs/atk
1848 - dev-libs/expat
1849 - dev-libs/glib:2
1850 - dev-libs/libffi:=
1851 - >=dev-libs/nss-3.80
1852 - >=dev-libs/nspr-4.34
1853 - media-libs/alsa-lib
1854 - media-libs/fontconfig
1855 - media-libs/freetype
1856 - media-libs/mesa
1857 - media-video/ffmpeg
1858 - sys-libs/zlib
1859 - virtual/freedesktop-icon-theme
1860 - x11-libs/cairo
1861 - x11-libs/gdk-pixbuf
1862 - x11-libs/pango
1863 - x11-libs/pixman
1864 - dbus? (
1865 - dev-libs/dbus-glib
1866 - sys-apps/dbus
1867 - )
1868 - jack? ( virtual/jack )
1869 - libproxy? ( net-libs/libproxy )
1870 - selinux? ( sec-policy/selinux-mozilla )
1871 - sndio? ( >=media-sound/sndio-1.8.0-r1 )
1872 - screencast? ( media-video/pipewire:= )
1873 - system-av1? (
1874 - >=media-libs/dav1d-0.9.3:=
1875 - >=media-libs/libaom-1.0.0:=
1876 - )
1877 - system-harfbuzz? (
1878 - >=media-gfx/graphite2-1.3.13
1879 - >=media-libs/harfbuzz-2.8.1:0=
1880 - )
1881 - system-icu? ( >=dev-libs/icu-71.1:= )
1882 - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
1883 - system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
1884 - system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
1885 - system-png? ( >=media-libs/libpng-1.6.35:0=[apng] )
1886 - system-webp? ( >=media-libs/libwebp-1.1.0:0= )
1887 - wayland? (
1888 - >=media-libs/libepoxy-1.5.10-r1
1889 - x11-libs/gtk+:3[wayland]
1890 - x11-libs/libdrm
1891 - x11-libs/libxkbcommon[wayland]
1892 - )
1893 - wifi? (
1894 - kernel_linux? (
1895 - dev-libs/dbus-glib
1896 - net-misc/networkmanager
1897 - sys-apps/dbus
1898 - )
1899 - )
1900 - X? (
1901 - virtual/opengl
1902 - x11-libs/cairo[X]
1903 - x11-libs/gtk+:3[X]
1904 - x11-libs/libX11
1905 - x11-libs/libXcomposite
1906 - x11-libs/libXdamage
1907 - x11-libs/libXext
1908 - x11-libs/libXfixes
1909 - x11-libs/libxkbcommon[X]
1910 - x11-libs/libXrandr
1911 - x11-libs/libXtst
1912 - x11-libs/libxcb:=
1913 - )"
1914 -
1915 -RDEPEND="${COMMON_DEPEND}
1916 - !www-client/firefox:0
1917 - !www-client/firefox:esr
1918 - jack? ( virtual/jack )
1919 - openh264? ( media-libs/openh264:*[plugin] )
1920 - pulseaudio? (
1921 - || (
1922 - media-sound/pulseaudio
1923 - >=media-sound/apulse-0.1.12-r4
1924 - )
1925 - )
1926 - selinux? ( sec-policy/selinux-mozilla )"
1927 -
1928 -DEPEND="${COMMON_DEPEND}
1929 - pulseaudio? (
1930 - || (
1931 - media-sound/pulseaudio
1932 - >=media-sound/apulse-0.1.12-r4[sdk]
1933 - )
1934 - )
1935 - X? (
1936 - x11-libs/libICE
1937 - x11-libs/libSM
1938 - )"
1939 -
1940 -S="${WORKDIR}/${PN}-${PV%_*}"
1941 -
1942 -# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
1943 -# overridden in the enviromnent (advanced hackers only)
1944 -if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
1945 - MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
1946 -fi
1947 -
1948 -llvm_check_deps() {
1949 - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
1950 - einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
1951 - return 1
1952 - fi
1953 -
1954 - if use clang ; then
1955 - if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
1956 - einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
1957 - return 1
1958 - fi
1959 -
1960 - if use pgo ; then
1961 - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
1962 - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
1963 - return 1
1964 - fi
1965 - fi
1966 - fi
1967 -
1968 - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
1969 -}
1970 -
1971 -MOZ_LANGS=(
1972 - af ar ast be bg br ca cak cs cy da de dsb
1973 - el en-CA en-GB en-US es-AR es-ES et eu
1974 - fi fr fy-NL ga-IE gd gl he hr hsb hu
1975 - id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO
1976 - pa-IN pl pt-BR pt-PT rm ro ru
1977 - sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW
1978 -)
1979 -
1980 -# Firefox-only LANGS
1981 -MOZ_LANGS+=( ach )
1982 -MOZ_LANGS+=( an )
1983 -MOZ_LANGS+=( az )
1984 -MOZ_LANGS+=( bn )
1985 -MOZ_LANGS+=( bs )
1986 -MOZ_LANGS+=( ca-valencia )
1987 -MOZ_LANGS+=( eo )
1988 -MOZ_LANGS+=( es-CL )
1989 -MOZ_LANGS+=( es-MX )
1990 -MOZ_LANGS+=( fa )
1991 -MOZ_LANGS+=( ff )
1992 -MOZ_LANGS+=( gn )
1993 -MOZ_LANGS+=( gu-IN )
1994 -MOZ_LANGS+=( hi-IN )
1995 -MOZ_LANGS+=( hy-AM )
1996 -MOZ_LANGS+=( ia )
1997 -MOZ_LANGS+=( km )
1998 -MOZ_LANGS+=( kn )
1999 -MOZ_LANGS+=( lij )
2000 -MOZ_LANGS+=( mk )
2001 -MOZ_LANGS+=( mr )
2002 -MOZ_LANGS+=( my )
2003 -MOZ_LANGS+=( ne-NP )
2004 -MOZ_LANGS+=( oc )
2005 -MOZ_LANGS+=( sco )
2006 -MOZ_LANGS+=( si )
2007 -MOZ_LANGS+=( son )
2008 -MOZ_LANGS+=( szl )
2009 -MOZ_LANGS+=( ta )
2010 -MOZ_LANGS+=( te )
2011 -MOZ_LANGS+=( tl )
2012 -MOZ_LANGS+=( trs )
2013 -MOZ_LANGS+=( ur )
2014 -MOZ_LANGS+=( xh )
2015 -
2016 -mozilla_set_globals() {
2017 - # https://bugs.gentoo.org/587334
2018 - local MOZ_TOO_REGIONALIZED_FOR_L10N=(
2019 - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
2020 - )
2021 -
2022 - local lang xflag
2023 - for lang in "${MOZ_LANGS[@]}" ; do
2024 - # en and en_US are handled internally
2025 - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
2026 - continue
2027 - fi
2028 -
2029 - # strip region subtag if $lang is in the list
2030 - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
2031 - xflag=${lang%%-*}
2032 - else
2033 - xflag=${lang}
2034 - fi
2035 -
2036 - SRC_URI+=" l10n_${xflag/[_@]/-}? ("
2037 - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
2038 - SRC_URI+=" )"
2039 - IUSE+=" l10n_${xflag/[_@]/-}"
2040 - done
2041 -}
2042 -mozilla_set_globals
2043 -
2044 -moz_clear_vendor_checksums() {
2045 - debug-print-function ${FUNCNAME} "$@"
2046 -
2047 - if [[ ${#} -ne 1 ]] ; then
2048 - die "${FUNCNAME} requires exact one argument"
2049 - fi
2050 -
2051 - einfo "Clearing cargo checksums for ${1} ..."
2052 -
2053 - sed -i \
2054 - -e 's/\("files":{\)[^}]*/\1/' \
2055 - "${S}"/third_party/rust/${1}/.cargo-checksum.json \
2056 - || die
2057 -}
2058 -
2059 -moz_install_xpi() {
2060 - debug-print-function ${FUNCNAME} "$@"
2061 -
2062 - if [[ ${#} -lt 2 ]] ; then
2063 - die "${FUNCNAME} requires at least two arguments"
2064 - fi
2065 -
2066 - local DESTDIR=${1}
2067 - shift
2068 -
2069 - insinto "${DESTDIR}"
2070 -
2071 - local emid xpi_file xpi_tmp_dir
2072 - for xpi_file in "${@}" ; do
2073 - emid=
2074 - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
2075 -
2076 - # Unpack XPI
2077 - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
2078 -
2079 - # Determine extension ID
2080 - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
2081 - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
2082 - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
2083 - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
2084 - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
2085 - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
2086 - else
2087 - die "failed to determine extension id"
2088 - fi
2089 -
2090 - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
2091 - newins "${xpi_file}" "${emid}.xpi"
2092 - done
2093 -}
2094 -
2095 -mozconfig_add_options_ac() {
2096 - debug-print-function ${FUNCNAME} "$@"
2097 -
2098 - if [[ ${#} -lt 2 ]] ; then
2099 - die "${FUNCNAME} requires at least two arguments"
2100 - fi
2101 -
2102 - local reason=${1}
2103 - shift
2104 -
2105 - local option
2106 - for option in ${@} ; do
2107 - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
2108 - done
2109 -}
2110 -
2111 -mozconfig_add_options_mk() {
2112 - debug-print-function ${FUNCNAME} "$@"
2113 -
2114 - if [[ ${#} -lt 2 ]] ; then
2115 - die "${FUNCNAME} requires at least two arguments"
2116 - fi
2117 -
2118 - local reason=${1}
2119 - shift
2120 -
2121 - local option
2122 - for option in ${@} ; do
2123 - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
2124 - done
2125 -}
2126 -
2127 -mozconfig_use_enable() {
2128 - debug-print-function ${FUNCNAME} "$@"
2129 -
2130 - if [[ ${#} -lt 1 ]] ; then
2131 - die "${FUNCNAME} requires at least one arguments"
2132 - fi
2133 -
2134 - local flag=$(use_enable "${@}")
2135 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
2136 -}
2137 -
2138 -mozconfig_use_with() {
2139 - debug-print-function ${FUNCNAME} "$@"
2140 -
2141 - if [[ ${#} -lt 1 ]] ; then
2142 - die "${FUNCNAME} requires at least one arguments"
2143 - fi
2144 -
2145 - local flag=$(use_with "${@}")
2146 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
2147 -}
2148 -
2149 -pkg_pretend() {
2150 - if [[ ${MERGE_TYPE} != binary ]] ; then
2151 - if use pgo ; then
2152 - if ! has usersandbox $FEATURES ; then
2153 - die "You must enable usersandbox as X server can not run as root!"
2154 - fi
2155 - fi
2156 -
2157 - # Ensure we have enough disk space to compile
2158 - if use pgo || use lto || use debug ; then
2159 - CHECKREQS_DISK_BUILD="13500M"
2160 - else
2161 - CHECKREQS_DISK_BUILD="6600M"
2162 - fi
2163 -
2164 - check-reqs_pkg_pretend
2165 - fi
2166 -}
2167 -
2168 -pkg_setup() {
2169 - if [[ ${MERGE_TYPE} != binary ]] ; then
2170 - if use pgo ; then
2171 - if ! has userpriv ${FEATURES} ; then
2172 - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
2173 - fi
2174 - fi
2175 -
2176 - # Ensure we have enough disk space to compile
2177 - if use pgo || use lto || use debug ; then
2178 - CHECKREQS_DISK_BUILD="13500M"
2179 - else
2180 - CHECKREQS_DISK_BUILD="6400M"
2181 - fi
2182 -
2183 - check-reqs_pkg_setup
2184 -
2185 - llvm_pkg_setup
2186 -
2187 - if use clang && use lto ; then
2188 - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
2189 - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
2190 - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
2191 -
2192 - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
2193 - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
2194 - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
2195 -
2196 - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
2197 - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
2198 - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
2199 - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
2200 - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
2201 - eerror " - Build ${CATEGORY}/${PN} without USE=lto"
2202 - eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole "
2203 - eerror " llvm/clang/lld/rust chain depending on your @world updates)"
2204 - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
2205 - fi
2206 - fi
2207 -
2208 - if ! use clang && [[ $(gcc-major-version) -eq 11 ]] \
2209 - && ! has_version -b ">sys-devel/gcc-11.1.0:11" ; then
2210 - # bug 792705
2211 - eerror "Using GCC 11 to compile firefox is currently known to be broken (see bug #792705)."
2212 - die "Set USE=clang or select <gcc-11 to build ${CATEGORY}/${P}."
2213 - fi
2214 -
2215 - python-any-r1_pkg_setup
2216 -
2217 - # Avoid PGO profiling problems due to enviroment leakage
2218 - # These should *always* be cleaned up anyway
2219 - unset \
2220 - DBUS_SESSION_BUS_ADDRESS \
2221 - DISPLAY \
2222 - ORBIT_SOCKETDIR \
2223 - SESSION_MANAGER \
2224 - XAUTHORITY \
2225 - XDG_CACHE_HOME \
2226 - XDG_SESSION_COOKIE
2227 -
2228 - # Build system is using /proc/self/oom_score_adj, bug #604394
2229 - addpredict /proc/self/oom_score_adj
2230 -
2231 - if use pgo ; then
2232 - # Allow access to GPU during PGO run
2233 - local ati_cards mesa_cards nvidia_cards render_cards
2234 - shopt -s nullglob
2235 -
2236 - ati_cards=$(echo -n /dev/ati/card* | sed 's/ /:/g')
2237 - if [[ -n "${ati_cards}" ]] ; then
2238 - addpredict "${ati_cards}"
2239 - fi
2240 -
2241 - mesa_cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
2242 - if [[ -n "${mesa_cards}" ]] ; then
2243 - addpredict "${mesa_cards}"
2244 - fi
2245 -
2246 - nvidia_cards=$(echo -n /dev/nvidia* | sed 's/ /:/g')
2247 - if [[ -n "${nvidia_cards}" ]] ; then
2248 - addpredict "${nvidia_cards}"
2249 - fi
2250 -
2251 - render_cards=$(echo -n /dev/dri/renderD128* | sed 's/ /:/g')
2252 - if [[ -n "${render_cards}" ]] ; then
2253 - addpredict "${render_cards}"
2254 - fi
2255 -
2256 - shopt -u nullglob
2257 - fi
2258 -
2259 - if ! mountpoint -q /dev/shm ; then
2260 - # If /dev/shm is not available, configure is known to fail with
2261 - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
2262 - ewarn "/dev/shm is not mounted -- expect build failures!"
2263 - fi
2264 -
2265 - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
2266 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
2267 - # get your own set of keys.
2268 - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
2269 - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
2270 - fi
2271 -
2272 - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
2273 - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
2274 - fi
2275 -
2276 - # Mozilla API keys (see https://location.services.mozilla.com/api)
2277 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
2278 - # get your own set of keys.
2279 - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
2280 - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
2281 - fi
2282 -
2283 - # Ensure we use C locale when building, bug #746215
2284 - export LC_ALL=C
2285 - fi
2286 -
2287 - CONFIG_CHECK="~SECCOMP"
2288 - WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
2289 - linux-info_pkg_setup
2290 -}
2291 -
2292 -src_unpack() {
2293 - local _lp_dir="${WORKDIR}/language_packs"
2294 - local _src_file
2295 -
2296 - if [[ ! -d "${_lp_dir}" ]] ; then
2297 - mkdir "${_lp_dir}" || die
2298 - fi
2299 -
2300 - for _src_file in ${A} ; do
2301 - if [[ ${_src_file} == *.xpi ]]; then
2302 - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
2303 - else
2304 - unpack ${_src_file}
2305 - fi
2306 - done
2307 -}
2308 -
2309 -src_prepare() {
2310 - use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
2311 - eapply "${WORKDIR}/firefox-patches"
2312 -
2313 - # Allow user to apply any additional patches without modifing ebuild
2314 - eapply_user
2315 -
2316 - # Make cargo respect MAKEOPTS
2317 - export CARGO_BUILD_JOBS="$(makeopts_jobs)"
2318 -
2319 - # Make LTO respect MAKEOPTS
2320 - sed -i \
2321 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
2322 - "${S}"/build/moz.configure/lto-pgo.configure \
2323 - || die "sed failed to set num_cores"
2324 -
2325 - # Make ICU respect MAKEOPTS
2326 - sed -i \
2327 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
2328 - "${S}"/intl/icu_sources_data.py \
2329 - || die "sed failed to set num_cores"
2330 -
2331 - # sed-in toolchain prefix
2332 - sed -i \
2333 - -e "s/objdump/${CHOST}-objdump/" \
2334 - "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
2335 - || die "sed failed to set toolchain prefix"
2336 -
2337 - sed -i \
2338 - -e 's/ccache_stats = None/return None/' \
2339 - "${S}"/python/mozbuild/mozbuild/controller/building.py \
2340 - || die "sed failed to disable ccache stats call"
2341 -
2342 - einfo "Removing pre-built binaries ..."
2343 - find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
2344 -
2345 - # Clearing checksums where we have applied patches
2346 - moz_clear_vendor_checksums audioipc
2347 - moz_clear_vendor_checksums audioipc-client
2348 - moz_clear_vendor_checksums audioipc-server
2349 -
2350 - # Create build dir
2351 - BUILD_DIR="${WORKDIR}/${PN}_build"
2352 - mkdir -p "${BUILD_DIR}" || die
2353 -
2354 - # Write API keys to disk
2355 - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
2356 - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
2357 - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
2358 -
2359 - xdg_environment_reset
2360 -}
2361 -
2362 -src_configure() {
2363 - # Show flags set at the beginning
2364 - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
2365 - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
2366 - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
2367 - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
2368 - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
2369 -
2370 - local have_switched_compiler=
2371 - if use clang && ! tc-is-clang ; then
2372 - # Force clang
2373 - einfo "Enforcing the use of clang due to USE=clang ..."
2374 - have_switched_compiler=yes
2375 - AR=llvm-ar
2376 - AS=llvm-as
2377 - CC=${CHOST}-clang
2378 - CXX=${CHOST}-clang++
2379 - NM=llvm-nm
2380 - RANLIB=llvm-ranlib
2381 - elif ! use clang && ! tc-is-gcc ; then
2382 - # Force gcc
2383 - have_switched_compiler=yes
2384 - einfo "Enforcing the use of gcc due to USE=-clang ..."
2385 - AR=gcc-ar
2386 - CC=${CHOST}-gcc
2387 - CXX=${CHOST}-g++
2388 - NM=gcc-nm
2389 - RANLIB=gcc-ranlib
2390 - fi
2391 -
2392 - if [[ -n "${have_switched_compiler}" ]] ; then
2393 - # Because we switched active compiler we have to ensure
2394 - # that no unsupported flags are set
2395 - strip-unsupported-flags
2396 - fi
2397 -
2398 - # Ensure we use correct toolchain
2399 - export HOST_CC="$(tc-getBUILD_CC)"
2400 - export HOST_CXX="$(tc-getBUILD_CXX)"
2401 - tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
2402 -
2403 - # Pass the correct toolchain paths through cbindgen
2404 - if tc-is-cross-compiler ; then
2405 - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
2406 - fi
2407 -
2408 - # Set MOZILLA_FIVE_HOME
2409 - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
2410 -
2411 - # python/mach/mach/mixin/process.py fails to detect SHELL
2412 - export SHELL="${EPREFIX}/bin/bash"
2413 -
2414 - # Set state path
2415 - export MOZBUILD_STATE_PATH="${BUILD_DIR}"
2416 -
2417 - # Set MOZCONFIG
2418 - export MOZCONFIG="${S}/.mozconfig"
2419 -
2420 - # Initialize MOZCONFIG
2421 - mozconfig_add_options_ac '' --enable-application=browser
2422 -
2423 - # Set Gentoo defaults
2424 - export MOZILLA_OFFICIAL=1
2425 -
2426 - mozconfig_add_options_ac 'Gentoo default' \
2427 - --allow-addon-sideload \
2428 - --disable-cargo-incremental \
2429 - --disable-crashreporter \
2430 - --disable-gpsd \
2431 - --disable-install-strip \
2432 - --disable-parental-controls \
2433 - --disable-strip \
2434 - --disable-updater \
2435 - --enable-negotiateauth \
2436 - --enable-new-pass-manager \
2437 - --enable-official-branding \
2438 - --enable-release \
2439 - --enable-system-ffi \
2440 - --enable-system-pixman \
2441 - --host="${CBUILD:-${CHOST}}" \
2442 - --libdir="${EPREFIX}/usr/$(get_libdir)" \
2443 - --prefix="${EPREFIX}/usr" \
2444 - --target="${CHOST}" \
2445 - --without-ccache \
2446 - --without-wasm-sandboxed-libraries \
2447 - --with-intl-api \
2448 - --with-libclang-path="$(llvm-config --libdir)" \
2449 - --with-system-nspr \
2450 - --with-system-nss \
2451 - --with-system-zlib \
2452 - --with-toolchain-prefix="${CHOST}-" \
2453 - --with-unsigned-addon-scopes=app,system \
2454 - --x-includes="${ESYSROOT}/usr/include" \
2455 - --x-libraries="${ESYSROOT}/usr/$(get_libdir)"
2456 -
2457 - # Set update channel
2458 - local update_channel=release
2459 - [[ -n ${MOZ_ESR} ]] && update_channel=esr
2460 - mozconfig_add_options_ac '' --update-channel=${update_channel}
2461 -
2462 - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
2463 - mozconfig_add_options_ac '' --enable-rust-simd
2464 - fi
2465 -
2466 - # For future keywording: This is currently (97.0) only supported on:
2467 - # amd64, arm, arm64 & x86.
2468 - # Might want to flip the logic around if Firefox is to support more arches.
2469 - if use ppc64; then
2470 - mozconfig_add_options_ac '' --disable-sandbox
2471 - else
2472 - mozconfig_add_options_ac '' --enable-sandbox
2473 - fi
2474 -
2475 - if [[ -s "${S}/api-google.key" ]] ; then
2476 - local key_origin="Gentoo default"
2477 - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
2478 - key_origin="User value"
2479 - fi
2480 -
2481 - mozconfig_add_options_ac "${key_origin}" \
2482 - --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
2483 - else
2484 - einfo "Building without Google API key ..."
2485 - fi
2486 -
2487 - if [[ -s "${S}/api-location.key" ]] ; then
2488 - local key_origin="Gentoo default"
2489 - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
2490 - key_origin="User value"
2491 - fi
2492 -
2493 - mozconfig_add_options_ac "${key_origin}" \
2494 - --with-google-location-service-api-keyfile="${S}/api-location.key"
2495 - else
2496 - einfo "Building without Location API key ..."
2497 - fi
2498 -
2499 - if [[ -s "${S}/api-mozilla.key" ]] ; then
2500 - local key_origin="Gentoo default"
2501 - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
2502 - key_origin="User value"
2503 - fi
2504 -
2505 - mozconfig_add_options_ac "${key_origin}" \
2506 - --with-mozilla-api-keyfile="${S}/api-mozilla.key"
2507 - else
2508 - einfo "Building without Mozilla API key ..."
2509 - fi
2510 -
2511 - mozconfig_use_with system-av1
2512 - mozconfig_use_with system-harfbuzz
2513 - mozconfig_use_with system-harfbuzz system-graphite2
2514 - mozconfig_use_with system-icu
2515 - mozconfig_use_with system-jpeg
2516 - mozconfig_use_with system-libevent
2517 - mozconfig_use_with system-libvpx
2518 - mozconfig_use_with system-png
2519 - mozconfig_use_with system-webp
2520 -
2521 - mozconfig_use_enable dbus
2522 - mozconfig_use_enable libproxy
2523 -
2524 - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
2525 -
2526 - mozconfig_use_enable geckodriver
2527 -
2528 - if use hardened ; then
2529 - mozconfig_add_options_ac "+hardened" --enable-hardening
2530 - append-ldflags "-Wl,-z,relro -Wl,-z,now"
2531 - fi
2532 -
2533 - local myaudiobackends=""
2534 - use jack && myaudiobackends+="jack,"
2535 - use sndio && myaudiobackends+="sndio,"
2536 - use pulseaudio && myaudiobackends+="pulseaudio,"
2537 - ! use pulseaudio && myaudiobackends+="alsa,"
2538 -
2539 - mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}"
2540 -
2541 - mozconfig_use_enable wifi necko-wifi
2542 -
2543 - if use X && use wayland ; then
2544 - mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland
2545 - elif ! use X && use wayland ; then
2546 - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only
2547 - else
2548 - mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3
2549 - fi
2550 -
2551 - if use lto ; then
2552 - if use clang ; then
2553 - # Upstream only supports lld when using clang
2554 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
2555 -
2556 - mozconfig_add_options_ac '+lto' --enable-lto=cross
2557 -
2558 - else
2559 - # ThinLTO is currently broken, see bmo#1644409
2560 - mozconfig_add_options_ac '+lto' --enable-lto=full
2561 - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
2562 - fi
2563 -
2564 - if use pgo ; then
2565 - mozconfig_add_options_ac '+pgo' MOZ_PGO=1
2566 -
2567 - if use clang ; then
2568 - # Used in build/pgo/profileserver.py
2569 - export LLVM_PROFDATA="llvm-profdata"
2570 - fi
2571 - fi
2572 - else
2573 - # Avoid auto-magic on linker
2574 - if use clang ; then
2575 - # This is upstream's default
2576 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
2577 - else
2578 - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
2579 - fi
2580 - fi
2581 -
2582 - # LTO flag was handled via configure
2583 - filter-flags '-flto*'
2584 -
2585 - mozconfig_use_enable debug
2586 - if use debug ; then
2587 - mozconfig_add_options_ac '+debug' --disable-optimize
2588 - else
2589 - if is-flag '-g*' ; then
2590 - if use clang ; then
2591 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
2592 - else
2593 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
2594 - fi
2595 - else
2596 - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
2597 - fi
2598 -
2599 - if is-flag '-O0' ; then
2600 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
2601 - elif is-flag '-O4' ; then
2602 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
2603 - elif is-flag '-O3' ; then
2604 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
2605 - elif is-flag '-O1' ; then
2606 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
2607 - elif is-flag '-Os' ; then
2608 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
2609 - else
2610 - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
2611 - fi
2612 - fi
2613 -
2614 - # Debug flag was handled via configure
2615 - filter-flags '-g*'
2616 -
2617 - # Optimization flag was handled via configure
2618 - filter-flags '-O*'
2619 -
2620 - # Modifications to better support ARM, bug #553364
2621 - if use cpu_flags_arm_neon ; then
2622 - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
2623 -
2624 - if ! tc-is-clang ; then
2625 - # thumb options aren't supported when using clang, bug 666966
2626 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \
2627 - --with-thumb=yes \
2628 - --with-thumb-interwork=no
2629 - fi
2630 - fi
2631 -
2632 - if [[ ${CHOST} == armv*h* ]] ; then
2633 - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
2634 -
2635 - if ! use system-libvpx ; then
2636 - sed -i \
2637 - -e "s|softfp|hard|" \
2638 - "${S}"/media/libvpx/moz.build \
2639 - || die
2640 - fi
2641 - fi
2642 -
2643 - if use clang ; then
2644 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
2645 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
2646 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
2647 - local disable_elf_hack=
2648 - if use amd64 ; then
2649 - disable_elf_hack=yes
2650 - elif use x86 ; then
2651 - disable_elf_hack=yes
2652 - elif use arm ; then
2653 - disable_elf_hack=yes
2654 - fi
2655 -
2656 - if [[ -n ${disable_elf_hack} ]] ; then
2657 - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack
2658 - fi
2659 - elif tc-is-gcc ; then
2660 - if ver_test $(gcc-fullversion) -ge 10 ; then
2661 - einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..."
2662 - append-cxxflags -fno-tree-loop-vectorize
2663 - fi
2664 - fi
2665 -
2666 - # Additional ARCH support
2667 - case "${ARCH}" in
2668 - arm)
2669 - # Reduce the memory requirements for linking
2670 - if use clang ; then
2671 - # Nothing to do
2672 - :;
2673 - elif use lto ; then
2674 - append-ldflags -Wl,--no-keep-memory
2675 - else
2676 - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
2677 - fi
2678 - ;;
2679 - esac
2680 -
2681 - if ! use elibc_glibc ; then
2682 - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
2683 - fi
2684 -
2685 - # Allow elfhack to work in combination with unstripped binaries
2686 - # when they would normally be larger than 2GiB.
2687 - append-ldflags "-Wl,--compress-debug-sections=zlib"
2688 -
2689 - # Make revdep-rebuild.sh happy; Also required for musl
2690 - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
2691 -
2692 - # Pass $MAKEOPTS to build system
2693 - export MOZ_MAKE_FLAGS="${MAKEOPTS}"
2694 -
2695 - # Use system's Python environment
2696 - PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach
2697 -
2698 - if use system-python-libs; then
2699 - export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="system"
2700 - else
2701 - export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none"
2702 - fi
2703 -
2704 - # Disable notification when build system has finished
2705 - export MOZ_NOSPAM=1
2706 -
2707 - # Portage sets XARGS environment variable to "xargs -r" by default which
2708 - # breaks build system's check_prog() function which doesn't support arguments
2709 - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
2710 -
2711 - # Set build dir
2712 - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
2713 -
2714 - # Show flags we will use
2715 - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
2716 - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
2717 - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
2718 - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
2719 - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
2720 -
2721 - # Handle EXTRA_CONF and show summary
2722 - local ac opt hash reason
2723 -
2724 - # Apply EXTRA_ECONF entries to $MOZCONFIG
2725 - if [[ -n ${EXTRA_ECONF} ]] ; then
2726 - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
2727 - for opt in "${ac[@]}"; do
2728 - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
2729 - done
2730 - fi
2731 -
2732 - echo
2733 - echo "=========================================================="
2734 - echo "Building ${PF} with the following configuration"
2735 - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
2736 - [[ -z ${hash} || ${hash} == \# ]] \
2737 - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
2738 - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
2739 - done
2740 - echo "=========================================================="
2741 - echo
2742 -
2743 - ./mach configure || die
2744 -}
2745 -
2746 -src_compile() {
2747 - local virtx_cmd=
2748 -
2749 - if use pgo ; then
2750 - virtx_cmd=virtx
2751 -
2752 - # Reset and cleanup environment variables used by GNOME/XDG
2753 - gnome2_environment_reset
2754 -
2755 - addpredict /root
2756 - fi
2757 -
2758 - if ! use X && use wayland; then
2759 - local -x GDK_BACKEND=wayland
2760 - else
2761 - local -x GDK_BACKEND=x11
2762 - fi
2763 -
2764 - ${virtx_cmd} ./mach build --verbose \
2765 - || die
2766 -}
2767 -
2768 -src_install() {
2769 - # xpcshell is getting called during install
2770 - pax-mark m \
2771 - "${BUILD_DIR}"/dist/bin/xpcshell \
2772 - "${BUILD_DIR}"/dist/bin/${PN} \
2773 - "${BUILD_DIR}"/dist/bin/plugin-container
2774 -
2775 - DESTDIR="${D}" ./mach install || die
2776 -
2777 - # Upstream cannot ship symlink but we can (bmo#658850)
2778 - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
2779 - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
2780 -
2781 - # Don't install llvm-symbolizer from sys-devel/llvm package
2782 - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
2783 - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
2784 - fi
2785 -
2786 - # Install policy (currently only used to disable application updates)
2787 - insinto "${MOZILLA_FIVE_HOME}/distribution"
2788 - newins "${FILESDIR}"/distribution.ini distribution.ini
2789 - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
2790 -
2791 - # Install system-wide preferences
2792 - local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences"
2793 - insinto "${PREFS_DIR}"
2794 - newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js
2795 -
2796 - local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js"
2797 -
2798 - # Set dictionary path to use system hunspell
2799 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
2800 - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
2801 - EOF
2802 -
2803 - # Force hwaccel prefs if USE=hwaccel is enabled
2804 - if use hwaccel ; then
2805 - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js-r2 \
2806 - >>"${GENTOO_PREFS}" \
2807 - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
2808 -
2809 - if use wayland; then
2810 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel wayland prefs"
2811 - pref("gfx.x11-egl.force-enabled", false);
2812 - EOF
2813 - else
2814 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel x11 prefs"
2815 - pref("gfx.x11-egl.force-enabled", true);
2816 - EOF
2817 - fi
2818 - fi
2819 -
2820 - if ! use gmp-autoupdate ; then
2821 - local plugin
2822 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
2823 - einfo "Disabling auto-update for ${plugin} plugin ..."
2824 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
2825 - pref("media.${plugin}.autoupdate", false);
2826 - EOF
2827 - done
2828 - fi
2829 -
2830 - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
2831 - if use system-harfbuzz ; then
2832 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
2833 - sticky_pref("gfx.font_rendering.graphite.enabled", true);
2834 - EOF
2835 - fi
2836 -
2837 - # Install language packs
2838 - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
2839 - if [[ -n "${langpacks}" ]] ; then
2840 - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
2841 - fi
2842 -
2843 - # Install geckodriver
2844 - if use geckodriver ; then
2845 - einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..."
2846 - pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
2847 - exeinto "${MOZILLA_FIVE_HOME}"
2848 - doexe "${BUILD_DIR}"/dist/bin/geckodriver
2849 -
2850 - dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
2851 - fi
2852 -
2853 - # Install icons
2854 - local icon_srcdir="${S}/browser/branding/official"
2855 - local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg"
2856 -
2857 - insinto /usr/share/icons/hicolor/symbolic/apps
2858 - newins "${icon_symbolic_file}" ${PN}-symbolic.svg
2859 -
2860 - local icon size
2861 - for icon in "${icon_srcdir}"/default*.png ; do
2862 - size=${icon%.png}
2863 - size=${size##*/default}
2864 -
2865 - if [[ ${size} -eq 48 ]] ; then
2866 - newicon "${icon}" ${PN}.png
2867 - fi
2868 -
2869 - newicon -s ${size} "${icon}" ${PN}.png
2870 - done
2871 -
2872 - # Install menu
2873 - local app_name="Mozilla ${MOZ_PN^}"
2874 - local desktop_file="${FILESDIR}/icon/${PN}-r3.desktop"
2875 - local desktop_filename="${PN}.desktop"
2876 - local exec_command="${PN}"
2877 - local icon="${PN}"
2878 - local use_wayland="false"
2879 -
2880 - if use wayland ; then
2881 - use_wayland="true"
2882 - fi
2883 -
2884 - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
2885 -
2886 - sed -i \
2887 - -e "s:@NAME@:${app_name}:" \
2888 - -e "s:@EXEC@:${exec_command}:" \
2889 - -e "s:@ICON@:${icon}:" \
2890 - "${WORKDIR}/${PN}.desktop-template" \
2891 - || die
2892 -
2893 - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
2894 -
2895 - rm "${WORKDIR}/${PN}.desktop-template" || die
2896 -
2897 - # Install wrapper script
2898 - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
2899 - newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
2900 -
2901 - # Update wrapper
2902 - sed -i \
2903 - -e "s:@PREFIX@:${EPREFIX}/usr:" \
2904 - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
2905 - -e "s:@APULSELIB_DIR@:${apulselib}:" \
2906 - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
2907 - "${ED}/usr/bin/${PN}" \
2908 - || die
2909 -}
2910 -
2911 -pkg_preinst() {
2912 - xdg_pkg_preinst
2913 -
2914 - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
2915 - # does not need to be forced into the LD_LIBRARY_PATH
2916 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
2917 - einfo "APULSE found; Generating library symlinks for sound support ..."
2918 - local lib
2919 - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die
2920 - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
2921 - # A quickpkg rolled by hand will grab symlinks as part of the package,
2922 - # so we need to avoid creating them if they already exist.
2923 - if [[ ! -L ${lib##*/} ]] ; then
2924 - ln -s "${lib}" ${lib##*/} || die
2925 - fi
2926 - done
2927 - popd &>/dev/null || die
2928 - fi
2929 -}
2930 -
2931 -pkg_postinst() {
2932 - xdg_pkg_postinst
2933 -
2934 - if ! use gmp-autoupdate ; then
2935 - elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
2936 - elog "installing into new profiles:"
2937 - local plugin
2938 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
2939 - elog "\t ${plugin}"
2940 - done
2941 - elog
2942 - fi
2943 -
2944 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
2945 - elog "Apulse was detected at merge time on this system and so it will always be"
2946 - elog "used for sound. If you wish to use pulseaudio instead please unmerge"
2947 - elog "media-sound/apulse."
2948 - elog
2949 - fi
2950 -
2951 - local show_doh_information
2952 - local show_normandy_information
2953 - local show_shortcut_information
2954 -
2955 - if [[ -z "${REPLACING_VERSIONS}" ]] ; then
2956 - # New install; Tell user that DoH is disabled by default
2957 - show_doh_information=yes
2958 - show_normandy_information=yes
2959 - show_shortcut_information=no
2960 - else
2961 - local replacing_version
2962 - for replacing_version in ${REPLACING_VERSIONS} ; do
2963 - if ver_test "${replacing_version}" -lt 91.0 ; then
2964 - # Tell user that we no longer install a shortcut
2965 - # per supported display protocol
2966 - show_shortcut_information=yes
2967 - fi
2968 - done
2969 - fi
2970 -
2971 - if [[ -n "${show_doh_information}" ]] ; then
2972 - elog
2973 - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):"
2974 - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all"
2975 - elog "DNS traffic to Cloudflare by default is not a good idea and applications"
2976 - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5"
2977 - elog "(\"Off by choice\") by default."
2978 - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
2979 - fi
2980 -
2981 - # bug 713782
2982 - if [[ -n "${show_normandy_information}" ]] ; then
2983 - elog
2984 - elog "Upstream operates a service named Normandy which allows Mozilla to"
2985 - elog "push changes for default settings or even install new add-ons remotely."
2986 - elog "While this can be useful to address problems like 'Armagadd-on 2.0' or"
2987 - elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security"
2988 - elog "concerns prevail, which is why we have switched off the use of this"
2989 - elog "service by default."
2990 - elog
2991 - elog "To re-enable this service set"
2992 - elog
2993 - elog " app.normandy.enabled=true"
2994 - elog
2995 - elog "in about:config."
2996 - fi
2997 -
2998 - if [[ -n "${show_shortcut_information}" ]] ; then
2999 - elog
3000 - elog "Since ${PN}-91.0 we no longer install multiple shortcuts for"
3001 - elog "each supported display protocol. Instead we will only install"
3002 - elog "one generic Mozilla ${PN^} shortcut."
3003 - elog "If you still want to be able to select between running Mozilla ${PN^}"
3004 - elog "on X11 or Wayland, you have to re-create these shortcuts on your own."
3005 - fi
3006 -
3007 - # bug 835078
3008 - if use hwaccel && has_version "x11-drivers/xf86-video-nouveau"; then
3009 - ewarn "You have nouveau drivers installed in your system and 'hwaccel' "
3010 - ewarn "enabled for Firefox. Nouveau / your GPU might not supported the "
3011 - ewarn "required EGL, so either disable 'hwaccel' or try the workaround "
3012 - ewarn "explained in https://bugs.gentoo.org/835078#c5 if Firefox crashes."
3013 - fi
3014 -
3015 - elog
3016 - elog "Unfortunately Firefox-100.0 breaks compatibility with some sites using "
3017 - elog "useragent checks. To temporarily fix this, enter about:config and modify "
3018 - elog "network.http.useragent.forceVersion preference to \"99\"."
3019 - elog "Or install an addon to change your useragent."
3020 - elog "See: https://support.mozilla.org/en-US/kb/difficulties-opening-or-using-website-firefox-100"
3021 - elog
3022 -}
3023
3024 diff --git a/www-client/firefox/firefox-103.0.ebuild b/www-client/firefox/firefox-103.0.ebuild
3025 deleted file mode 100644
3026 index 5270f18a1139..000000000000
3027 --- a/www-client/firefox/firefox-103.0.ebuild
3028 +++ /dev/null
3029 @@ -1,1287 +0,0 @@
3030 -# Copyright 1999-2022 Gentoo Authors
3031 -# Distributed under the terms of the GNU General Public License v2
3032 -
3033 -EAPI="8"
3034 -
3035 -FIREFOX_PATCHSET="firefox-103-patches-02j.tar.xz"
3036 -
3037 -LLVM_MAX_SLOT=14
3038 -
3039 -PYTHON_COMPAT=( python3_{8..11} )
3040 -PYTHON_REQ_USE="ncurses,sqlite,ssl"
3041 -
3042 -WANT_AUTOCONF="2.1"
3043 -
3044 -VIRTUALX_REQUIRED="pgo"
3045 -
3046 -MOZ_ESR=
3047 -
3048 -MOZ_PV=${PV}
3049 -MOZ_PV_SUFFIX=
3050 -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
3051 - MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
3052 -
3053 - # Convert the ebuild version to the upstream Mozilla version
3054 - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
3055 - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
3056 - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
3057 -fi
3058 -
3059 -if [[ -n ${MOZ_ESR} ]] ; then
3060 - # ESR releases have slightly different version numbers
3061 - MOZ_PV="${MOZ_PV}esr"
3062 -fi
3063 -
3064 -MOZ_PN="${PN%-bin}"
3065 -MOZ_P="${MOZ_PN}-${MOZ_PV}"
3066 -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
3067 -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
3068 -
3069 -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \
3070 - llvm multiprocessing pax-utils python-any-r1 toolchain-funcs \
3071 - virtualx xdg
3072 -
3073 -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
3074 -
3075 -if [[ ${PV} == *_rc* ]] ; then
3076 - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
3077 -fi
3078 -
3079 -PATCH_URIS=(
3080 - https://dev.gentoo.org/~{juippis,whissi,slashbeast}/mozilla/patchsets/${FIREFOX_PATCHSET}
3081 -)
3082 -
3083 -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
3084 - ${PATCH_URIS[@]}"
3085 -
3086 -DESCRIPTION="Firefox Web Browser"
3087 -HOMEPAGE="https://www.mozilla.com/firefox"
3088 -
3089 -KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
3090 -
3091 -SLOT="rapid"
3092 -LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
3093 -
3094 -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel"
3095 -IUSE+=" jack libproxy lto +openh264 pgo pulseaudio sndio selinux"
3096 -IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx system-png system-python-libs +system-webp"
3097 -IUSE+=" wayland wifi"
3098 -
3099 -# Firefox-only IUSE
3100 -IUSE+=" geckodriver +gmp-autoupdate screencast +X"
3101 -
3102 -REQUIRED_USE="debug? ( !system-av1 )
3103 - pgo? ( lto )
3104 - wayland? ( dbus )
3105 - wifi? ( dbus )"
3106 -
3107 -# Firefox-only REQUIRED_USE flags
3108 -REQUIRED_USE+=" || ( X wayland )"
3109 -REQUIRED_USE+=" pgo? ( X )"
3110 -REQUIRED_USE+=" screencast? ( wayland )"
3111 -
3112 -BDEPEND="${PYTHON_DEPS}
3113 - app-arch/unzip
3114 - app-arch/zip
3115 - >=dev-util/cbindgen-0.24.3
3116 - net-libs/nodejs
3117 - virtual/pkgconfig
3118 - virtual/rust
3119 - || (
3120 - (
3121 - sys-devel/clang:14
3122 - sys-devel/llvm:14
3123 - clang? (
3124 - =sys-devel/lld-14*
3125 - pgo? ( =sys-libs/compiler-rt-sanitizers-14*[profile] )
3126 - )
3127 - )
3128 - (
3129 - sys-devel/clang:13
3130 - sys-devel/llvm:13
3131 - clang? (
3132 - =sys-devel/lld-13*
3133 - pgo? ( =sys-libs/compiler-rt-sanitizers-13*[profile] )
3134 - )
3135 - )
3136 - )
3137 - amd64? ( >=dev-lang/nasm-2.14 )
3138 - x86? ( >=dev-lang/nasm-2.14 )"
3139 -
3140 -COMMON_DEPEND="
3141 - dev-libs/atk
3142 - dev-libs/expat
3143 - dev-libs/glib:2
3144 - dev-libs/libffi:=
3145 - >=dev-libs/nss-3.80
3146 - >=dev-libs/nspr-4.34
3147 - media-libs/alsa-lib
3148 - media-libs/fontconfig
3149 - media-libs/freetype
3150 - media-libs/mesa
3151 - media-video/ffmpeg
3152 - sys-libs/zlib
3153 - virtual/freedesktop-icon-theme
3154 - x11-libs/cairo
3155 - x11-libs/gdk-pixbuf
3156 - x11-libs/pango
3157 - x11-libs/pixman
3158 - dbus? (
3159 - dev-libs/dbus-glib
3160 - sys-apps/dbus
3161 - )
3162 - jack? ( virtual/jack )
3163 - libproxy? ( net-libs/libproxy )
3164 - selinux? ( sec-policy/selinux-mozilla )
3165 - sndio? ( >=media-sound/sndio-1.8.0-r1 )
3166 - screencast? ( media-video/pipewire:= )
3167 - system-av1? (
3168 - >=media-libs/dav1d-0.9.3:=
3169 - >=media-libs/libaom-1.0.0:=
3170 - )
3171 - system-harfbuzz? (
3172 - >=media-gfx/graphite2-1.3.13
3173 - >=media-libs/harfbuzz-2.8.1:0=
3174 - )
3175 - system-icu? ( >=dev-libs/icu-71.1:= )
3176 - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
3177 - system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
3178 - system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
3179 - system-png? ( >=media-libs/libpng-1.6.35:0=[apng] )
3180 - system-webp? ( >=media-libs/libwebp-1.1.0:0= )
3181 - wayland? (
3182 - >=media-libs/libepoxy-1.5.10-r1
3183 - x11-libs/gtk+:3[wayland]
3184 - x11-libs/libdrm
3185 - x11-libs/libxkbcommon[wayland]
3186 - )
3187 - wifi? (
3188 - kernel_linux? (
3189 - dev-libs/dbus-glib
3190 - net-misc/networkmanager
3191 - sys-apps/dbus
3192 - )
3193 - )
3194 - X? (
3195 - virtual/opengl
3196 - x11-libs/cairo[X]
3197 - x11-libs/gtk+:3[X]
3198 - x11-libs/libX11
3199 - x11-libs/libXcomposite
3200 - x11-libs/libXdamage
3201 - x11-libs/libXext
3202 - x11-libs/libXfixes
3203 - x11-libs/libxkbcommon[X]
3204 - x11-libs/libXrandr
3205 - x11-libs/libXtst
3206 - x11-libs/libxcb:=
3207 - )"
3208 -
3209 -RDEPEND="${COMMON_DEPEND}
3210 - !www-client/firefox:0
3211 - !www-client/firefox:esr
3212 - jack? ( virtual/jack )
3213 - openh264? ( media-libs/openh264:*[plugin] )
3214 - pulseaudio? (
3215 - || (
3216 - media-sound/pulseaudio
3217 - >=media-sound/apulse-0.1.12-r4
3218 - )
3219 - )
3220 - selinux? ( sec-policy/selinux-mozilla )"
3221 -
3222 -DEPEND="${COMMON_DEPEND}
3223 - pulseaudio? (
3224 - || (
3225 - media-sound/pulseaudio
3226 - >=media-sound/apulse-0.1.12-r4[sdk]
3227 - )
3228 - )
3229 - X? (
3230 - x11-libs/libICE
3231 - x11-libs/libSM
3232 - )"
3233 -
3234 -S="${WORKDIR}/${PN}-${PV%_*}"
3235 -
3236 -# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
3237 -# overridden in the enviromnent (advanced hackers only)
3238 -if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
3239 - MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
3240 -fi
3241 -
3242 -llvm_check_deps() {
3243 - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
3244 - einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
3245 - return 1
3246 - fi
3247 -
3248 - if use clang ; then
3249 - if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
3250 - einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
3251 - return 1
3252 - fi
3253 -
3254 - if use pgo ; then
3255 - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
3256 - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
3257 - return 1
3258 - fi
3259 - fi
3260 - fi
3261 -
3262 - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
3263 -}
3264 -
3265 -MOZ_LANGS=(
3266 - af ar ast be bg br ca cak cs cy da de dsb
3267 - el en-CA en-GB en-US es-AR es-ES et eu
3268 - fi fr fy-NL ga-IE gd gl he hr hsb hu
3269 - id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO
3270 - pa-IN pl pt-BR pt-PT rm ro ru
3271 - sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW
3272 -)
3273 -
3274 -# Firefox-only LANGS
3275 -MOZ_LANGS+=( ach )
3276 -MOZ_LANGS+=( an )
3277 -MOZ_LANGS+=( az )
3278 -MOZ_LANGS+=( bn )
3279 -MOZ_LANGS+=( bs )
3280 -MOZ_LANGS+=( ca-valencia )
3281 -MOZ_LANGS+=( eo )
3282 -MOZ_LANGS+=( es-CL )
3283 -MOZ_LANGS+=( es-MX )
3284 -MOZ_LANGS+=( fa )
3285 -MOZ_LANGS+=( ff )
3286 -MOZ_LANGS+=( gn )
3287 -MOZ_LANGS+=( gu-IN )
3288 -MOZ_LANGS+=( hi-IN )
3289 -MOZ_LANGS+=( hy-AM )
3290 -MOZ_LANGS+=( ia )
3291 -MOZ_LANGS+=( km )
3292 -MOZ_LANGS+=( kn )
3293 -MOZ_LANGS+=( lij )
3294 -MOZ_LANGS+=( mk )
3295 -MOZ_LANGS+=( mr )
3296 -MOZ_LANGS+=( my )
3297 -MOZ_LANGS+=( ne-NP )
3298 -MOZ_LANGS+=( oc )
3299 -MOZ_LANGS+=( sco )
3300 -MOZ_LANGS+=( si )
3301 -MOZ_LANGS+=( son )
3302 -MOZ_LANGS+=( szl )
3303 -MOZ_LANGS+=( ta )
3304 -MOZ_LANGS+=( te )
3305 -MOZ_LANGS+=( tl )
3306 -MOZ_LANGS+=( trs )
3307 -MOZ_LANGS+=( ur )
3308 -MOZ_LANGS+=( xh )
3309 -
3310 -mozilla_set_globals() {
3311 - # https://bugs.gentoo.org/587334
3312 - local MOZ_TOO_REGIONALIZED_FOR_L10N=(
3313 - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
3314 - )
3315 -
3316 - local lang xflag
3317 - for lang in "${MOZ_LANGS[@]}" ; do
3318 - # en and en_US are handled internally
3319 - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
3320 - continue
3321 - fi
3322 -
3323 - # strip region subtag if $lang is in the list
3324 - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
3325 - xflag=${lang%%-*}
3326 - else
3327 - xflag=${lang}
3328 - fi
3329 -
3330 - SRC_URI+=" l10n_${xflag/[_@]/-}? ("
3331 - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
3332 - SRC_URI+=" )"
3333 - IUSE+=" l10n_${xflag/[_@]/-}"
3334 - done
3335 -}
3336 -mozilla_set_globals
3337 -
3338 -moz_clear_vendor_checksums() {
3339 - debug-print-function ${FUNCNAME} "$@"
3340 -
3341 - if [[ ${#} -ne 1 ]] ; then
3342 - die "${FUNCNAME} requires exact one argument"
3343 - fi
3344 -
3345 - einfo "Clearing cargo checksums for ${1} ..."
3346 -
3347 - sed -i \
3348 - -e 's/\("files":{\)[^}]*/\1/' \
3349 - "${S}"/third_party/rust/${1}/.cargo-checksum.json \
3350 - || die
3351 -}
3352 -
3353 -moz_install_xpi() {
3354 - debug-print-function ${FUNCNAME} "$@"
3355 -
3356 - if [[ ${#} -lt 2 ]] ; then
3357 - die "${FUNCNAME} requires at least two arguments"
3358 - fi
3359 -
3360 - local DESTDIR=${1}
3361 - shift
3362 -
3363 - insinto "${DESTDIR}"
3364 -
3365 - local emid xpi_file xpi_tmp_dir
3366 - for xpi_file in "${@}" ; do
3367 - emid=
3368 - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
3369 -
3370 - # Unpack XPI
3371 - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
3372 -
3373 - # Determine extension ID
3374 - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
3375 - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
3376 - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
3377 - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
3378 - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
3379 - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
3380 - else
3381 - die "failed to determine extension id"
3382 - fi
3383 -
3384 - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
3385 - newins "${xpi_file}" "${emid}.xpi"
3386 - done
3387 -}
3388 -
3389 -mozconfig_add_options_ac() {
3390 - debug-print-function ${FUNCNAME} "$@"
3391 -
3392 - if [[ ${#} -lt 2 ]] ; then
3393 - die "${FUNCNAME} requires at least two arguments"
3394 - fi
3395 -
3396 - local reason=${1}
3397 - shift
3398 -
3399 - local option
3400 - for option in ${@} ; do
3401 - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
3402 - done
3403 -}
3404 -
3405 -mozconfig_add_options_mk() {
3406 - debug-print-function ${FUNCNAME} "$@"
3407 -
3408 - if [[ ${#} -lt 2 ]] ; then
3409 - die "${FUNCNAME} requires at least two arguments"
3410 - fi
3411 -
3412 - local reason=${1}
3413 - shift
3414 -
3415 - local option
3416 - for option in ${@} ; do
3417 - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
3418 - done
3419 -}
3420 -
3421 -mozconfig_use_enable() {
3422 - debug-print-function ${FUNCNAME} "$@"
3423 -
3424 - if [[ ${#} -lt 1 ]] ; then
3425 - die "${FUNCNAME} requires at least one arguments"
3426 - fi
3427 -
3428 - local flag=$(use_enable "${@}")
3429 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
3430 -}
3431 -
3432 -mozconfig_use_with() {
3433 - debug-print-function ${FUNCNAME} "$@"
3434 -
3435 - if [[ ${#} -lt 1 ]] ; then
3436 - die "${FUNCNAME} requires at least one arguments"
3437 - fi
3438 -
3439 - local flag=$(use_with "${@}")
3440 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
3441 -}
3442 -
3443 -pkg_pretend() {
3444 - if [[ ${MERGE_TYPE} != binary ]] ; then
3445 - if use pgo ; then
3446 - if ! has usersandbox $FEATURES ; then
3447 - die "You must enable usersandbox as X server can not run as root!"
3448 - fi
3449 - fi
3450 -
3451 - # Ensure we have enough disk space to compile
3452 - if use pgo || use lto || use debug ; then
3453 - CHECKREQS_DISK_BUILD="13500M"
3454 - else
3455 - CHECKREQS_DISK_BUILD="6600M"
3456 - fi
3457 -
3458 - check-reqs_pkg_pretend
3459 - fi
3460 -}
3461 -
3462 -pkg_setup() {
3463 - if [[ ${MERGE_TYPE} != binary ]] ; then
3464 - if use pgo ; then
3465 - if ! has userpriv ${FEATURES} ; then
3466 - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
3467 - fi
3468 - fi
3469 -
3470 - # Ensure we have enough disk space to compile
3471 - if use pgo || use lto || use debug ; then
3472 - CHECKREQS_DISK_BUILD="13500M"
3473 - else
3474 - CHECKREQS_DISK_BUILD="6400M"
3475 - fi
3476 -
3477 - check-reqs_pkg_setup
3478 -
3479 - llvm_pkg_setup
3480 -
3481 - if use clang && use lto ; then
3482 - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
3483 - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
3484 - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
3485 -
3486 - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
3487 - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
3488 - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
3489 -
3490 - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
3491 - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
3492 - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
3493 - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
3494 - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
3495 - eerror " - Build ${CATEGORY}/${PN} without USE=lto"
3496 - eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole "
3497 - eerror " llvm/clang/lld/rust chain depending on your @world updates)"
3498 - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
3499 - fi
3500 - fi
3501 -
3502 - if ! use clang && [[ $(gcc-major-version) -eq 11 ]] \
3503 - && ! has_version -b ">sys-devel/gcc-11.1.0:11" ; then
3504 - # bug 792705
3505 - eerror "Using GCC 11 to compile firefox is currently known to be broken (see bug #792705)."
3506 - die "Set USE=clang or select <gcc-11 to build ${CATEGORY}/${P}."
3507 - fi
3508 -
3509 - python-any-r1_pkg_setup
3510 -
3511 - # Avoid PGO profiling problems due to enviroment leakage
3512 - # These should *always* be cleaned up anyway
3513 - unset \
3514 - DBUS_SESSION_BUS_ADDRESS \
3515 - DISPLAY \
3516 - ORBIT_SOCKETDIR \
3517 - SESSION_MANAGER \
3518 - XAUTHORITY \
3519 - XDG_CACHE_HOME \
3520 - XDG_SESSION_COOKIE
3521 -
3522 - # Build system is using /proc/self/oom_score_adj, bug #604394
3523 - addpredict /proc/self/oom_score_adj
3524 -
3525 - if use pgo ; then
3526 - # Allow access to GPU during PGO run
3527 - local ati_cards mesa_cards nvidia_cards render_cards
3528 - shopt -s nullglob
3529 -
3530 - ati_cards=$(echo -n /dev/ati/card* | sed 's/ /:/g')
3531 - if [[ -n "${ati_cards}" ]] ; then
3532 - addpredict "${ati_cards}"
3533 - fi
3534 -
3535 - mesa_cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
3536 - if [[ -n "${mesa_cards}" ]] ; then
3537 - addpredict "${mesa_cards}"
3538 - fi
3539 -
3540 - nvidia_cards=$(echo -n /dev/nvidia* | sed 's/ /:/g')
3541 - if [[ -n "${nvidia_cards}" ]] ; then
3542 - addpredict "${nvidia_cards}"
3543 - fi
3544 -
3545 - render_cards=$(echo -n /dev/dri/renderD128* | sed 's/ /:/g')
3546 - if [[ -n "${render_cards}" ]] ; then
3547 - addpredict "${render_cards}"
3548 - fi
3549 -
3550 - shopt -u nullglob
3551 - fi
3552 -
3553 - if ! mountpoint -q /dev/shm ; then
3554 - # If /dev/shm is not available, configure is known to fail with
3555 - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
3556 - ewarn "/dev/shm is not mounted -- expect build failures!"
3557 - fi
3558 -
3559 - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
3560 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
3561 - # get your own set of keys.
3562 - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
3563 - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
3564 - fi
3565 -
3566 - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
3567 - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
3568 - fi
3569 -
3570 - # Mozilla API keys (see https://location.services.mozilla.com/api)
3571 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
3572 - # get your own set of keys.
3573 - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
3574 - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
3575 - fi
3576 -
3577 - # Ensure we use C locale when building, bug #746215
3578 - export LC_ALL=C
3579 - fi
3580 -
3581 - CONFIG_CHECK="~SECCOMP"
3582 - WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
3583 - linux-info_pkg_setup
3584 -}
3585 -
3586 -src_unpack() {
3587 - local _lp_dir="${WORKDIR}/language_packs"
3588 - local _src_file
3589 -
3590 - if [[ ! -d "${_lp_dir}" ]] ; then
3591 - mkdir "${_lp_dir}" || die
3592 - fi
3593 -
3594 - for _src_file in ${A} ; do
3595 - if [[ ${_src_file} == *.xpi ]]; then
3596 - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
3597 - else
3598 - unpack ${_src_file}
3599 - fi
3600 - done
3601 -}
3602 -
3603 -src_prepare() {
3604 - use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
3605 - eapply "${WORKDIR}/firefox-patches"
3606 -
3607 - # Allow user to apply any additional patches without modifing ebuild
3608 - eapply_user
3609 -
3610 - # Make cargo respect MAKEOPTS
3611 - export CARGO_BUILD_JOBS="$(makeopts_jobs)"
3612 -
3613 - # Make LTO respect MAKEOPTS
3614 - sed -i \
3615 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
3616 - "${S}"/build/moz.configure/lto-pgo.configure \
3617 - || die "sed failed to set num_cores"
3618 -
3619 - # Make ICU respect MAKEOPTS
3620 - sed -i \
3621 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
3622 - "${S}"/intl/icu_sources_data.py \
3623 - || die "sed failed to set num_cores"
3624 -
3625 - # sed-in toolchain prefix
3626 - sed -i \
3627 - -e "s/objdump/${CHOST}-objdump/" \
3628 - "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
3629 - || die "sed failed to set toolchain prefix"
3630 -
3631 - sed -i \
3632 - -e 's/ccache_stats = None/return None/' \
3633 - "${S}"/python/mozbuild/mozbuild/controller/building.py \
3634 - || die "sed failed to disable ccache stats call"
3635 -
3636 - einfo "Removing pre-built binaries ..."
3637 - find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
3638 -
3639 - # Clearing checksums where we have applied patches
3640 - moz_clear_vendor_checksums audioipc
3641 - moz_clear_vendor_checksums audioipc-client
3642 - moz_clear_vendor_checksums audioipc-server
3643 -
3644 - # Create build dir
3645 - BUILD_DIR="${WORKDIR}/${PN}_build"
3646 - mkdir -p "${BUILD_DIR}" || die
3647 -
3648 - # Write API keys to disk
3649 - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
3650 - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
3651 - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
3652 -
3653 - xdg_environment_reset
3654 -}
3655 -
3656 -src_configure() {
3657 - # Show flags set at the beginning
3658 - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
3659 - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
3660 - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
3661 - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
3662 - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
3663 -
3664 - local have_switched_compiler=
3665 - if use clang && ! tc-is-clang ; then
3666 - # Force clang
3667 - einfo "Enforcing the use of clang due to USE=clang ..."
3668 - have_switched_compiler=yes
3669 - AR=llvm-ar
3670 - AS=llvm-as
3671 - CC=${CHOST}-clang
3672 - CXX=${CHOST}-clang++
3673 - NM=llvm-nm
3674 - RANLIB=llvm-ranlib
3675 - elif ! use clang && ! tc-is-gcc ; then
3676 - # Force gcc
3677 - have_switched_compiler=yes
3678 - einfo "Enforcing the use of gcc due to USE=-clang ..."
3679 - AR=gcc-ar
3680 - CC=${CHOST}-gcc
3681 - CXX=${CHOST}-g++
3682 - NM=gcc-nm
3683 - RANLIB=gcc-ranlib
3684 - fi
3685 -
3686 - if [[ -n "${have_switched_compiler}" ]] ; then
3687 - # Because we switched active compiler we have to ensure
3688 - # that no unsupported flags are set
3689 - strip-unsupported-flags
3690 - fi
3691 -
3692 - # Ensure we use correct toolchain
3693 - export HOST_CC="$(tc-getBUILD_CC)"
3694 - export HOST_CXX="$(tc-getBUILD_CXX)"
3695 - tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
3696 -
3697 - # Pass the correct toolchain paths through cbindgen
3698 - if tc-is-cross-compiler ; then
3699 - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
3700 - fi
3701 -
3702 - # Set MOZILLA_FIVE_HOME
3703 - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
3704 -
3705 - # python/mach/mach/mixin/process.py fails to detect SHELL
3706 - export SHELL="${EPREFIX}/bin/bash"
3707 -
3708 - # Set state path
3709 - export MOZBUILD_STATE_PATH="${BUILD_DIR}"
3710 -
3711 - # Set MOZCONFIG
3712 - export MOZCONFIG="${S}/.mozconfig"
3713 -
3714 - # Initialize MOZCONFIG
3715 - mozconfig_add_options_ac '' --enable-application=browser
3716 -
3717 - # Set Gentoo defaults
3718 - export MOZILLA_OFFICIAL=1
3719 -
3720 - mozconfig_add_options_ac 'Gentoo default' \
3721 - --allow-addon-sideload \
3722 - --disable-cargo-incremental \
3723 - --disable-crashreporter \
3724 - --disable-gpsd \
3725 - --disable-install-strip \
3726 - --disable-parental-controls \
3727 - --disable-strip \
3728 - --disable-updater \
3729 - --enable-negotiateauth \
3730 - --enable-new-pass-manager \
3731 - --enable-official-branding \
3732 - --enable-release \
3733 - --enable-system-ffi \
3734 - --enable-system-pixman \
3735 - --host="${CBUILD:-${CHOST}}" \
3736 - --libdir="${EPREFIX}/usr/$(get_libdir)" \
3737 - --prefix="${EPREFIX}/usr" \
3738 - --target="${CHOST}" \
3739 - --without-ccache \
3740 - --without-wasm-sandboxed-libraries \
3741 - --with-intl-api \
3742 - --with-libclang-path="$(llvm-config --libdir)" \
3743 - --with-system-nspr \
3744 - --with-system-nss \
3745 - --with-system-zlib \
3746 - --with-toolchain-prefix="${CHOST}-" \
3747 - --with-unsigned-addon-scopes=app,system \
3748 - --x-includes="${ESYSROOT}/usr/include" \
3749 - --x-libraries="${ESYSROOT}/usr/$(get_libdir)"
3750 -
3751 - # Set update channel
3752 - local update_channel=release
3753 - [[ -n ${MOZ_ESR} ]] && update_channel=esr
3754 - mozconfig_add_options_ac '' --update-channel=${update_channel}
3755 -
3756 - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
3757 - mozconfig_add_options_ac '' --enable-rust-simd
3758 - fi
3759 -
3760 - # For future keywording: This is currently (97.0) only supported on:
3761 - # amd64, arm, arm64 & x86.
3762 - # Might want to flip the logic around if Firefox is to support more arches.
3763 - if use ppc64; then
3764 - mozconfig_add_options_ac '' --disable-sandbox
3765 - else
3766 - mozconfig_add_options_ac '' --enable-sandbox
3767 - fi
3768 -
3769 - if [[ -s "${S}/api-google.key" ]] ; then
3770 - local key_origin="Gentoo default"
3771 - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
3772 - key_origin="User value"
3773 - fi
3774 -
3775 - mozconfig_add_options_ac "${key_origin}" \
3776 - --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
3777 - else
3778 - einfo "Building without Google API key ..."
3779 - fi
3780 -
3781 - if [[ -s "${S}/api-location.key" ]] ; then
3782 - local key_origin="Gentoo default"
3783 - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
3784 - key_origin="User value"
3785 - fi
3786 -
3787 - mozconfig_add_options_ac "${key_origin}" \
3788 - --with-google-location-service-api-keyfile="${S}/api-location.key"
3789 - else
3790 - einfo "Building without Location API key ..."
3791 - fi
3792 -
3793 - if [[ -s "${S}/api-mozilla.key" ]] ; then
3794 - local key_origin="Gentoo default"
3795 - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
3796 - key_origin="User value"
3797 - fi
3798 -
3799 - mozconfig_add_options_ac "${key_origin}" \
3800 - --with-mozilla-api-keyfile="${S}/api-mozilla.key"
3801 - else
3802 - einfo "Building without Mozilla API key ..."
3803 - fi
3804 -
3805 - mozconfig_use_with system-av1
3806 - mozconfig_use_with system-harfbuzz
3807 - mozconfig_use_with system-harfbuzz system-graphite2
3808 - mozconfig_use_with system-icu
3809 - mozconfig_use_with system-jpeg
3810 - mozconfig_use_with system-libevent
3811 - mozconfig_use_with system-libvpx
3812 - mozconfig_use_with system-png
3813 - mozconfig_use_with system-webp
3814 -
3815 - mozconfig_use_enable dbus
3816 - mozconfig_use_enable libproxy
3817 -
3818 - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
3819 -
3820 - mozconfig_use_enable geckodriver
3821 -
3822 - if use hardened ; then
3823 - mozconfig_add_options_ac "+hardened" --enable-hardening
3824 - append-ldflags "-Wl,-z,relro -Wl,-z,now"
3825 - fi
3826 -
3827 - local myaudiobackends=""
3828 - use jack && myaudiobackends+="jack,"
3829 - use sndio && myaudiobackends+="sndio,"
3830 - use pulseaudio && myaudiobackends+="pulseaudio,"
3831 - ! use pulseaudio && myaudiobackends+="alsa,"
3832 -
3833 - mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}"
3834 -
3835 - mozconfig_use_enable wifi necko-wifi
3836 -
3837 - if use X && use wayland ; then
3838 - mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland
3839 - elif ! use X && use wayland ; then
3840 - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only
3841 - else
3842 - mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3
3843 - fi
3844 -
3845 - if use lto ; then
3846 - if use clang ; then
3847 - # Upstream only supports lld when using clang
3848 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
3849 -
3850 - mozconfig_add_options_ac '+lto' --enable-lto=cross
3851 -
3852 - else
3853 - # ThinLTO is currently broken, see bmo#1644409
3854 - mozconfig_add_options_ac '+lto' --enable-lto=full
3855 - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
3856 - fi
3857 -
3858 - if use pgo ; then
3859 - mozconfig_add_options_ac '+pgo' MOZ_PGO=1
3860 -
3861 - if use clang ; then
3862 - # Used in build/pgo/profileserver.py
3863 - export LLVM_PROFDATA="llvm-profdata"
3864 - fi
3865 - fi
3866 - else
3867 - # Avoid auto-magic on linker
3868 - if use clang ; then
3869 - # This is upstream's default
3870 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
3871 - else
3872 - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
3873 - fi
3874 - fi
3875 -
3876 - # LTO flag was handled via configure
3877 - filter-flags '-flto*'
3878 -
3879 - mozconfig_use_enable debug
3880 - if use debug ; then
3881 - mozconfig_add_options_ac '+debug' --disable-optimize
3882 - else
3883 - if is-flag '-g*' ; then
3884 - if use clang ; then
3885 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
3886 - else
3887 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
3888 - fi
3889 - else
3890 - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
3891 - fi
3892 -
3893 - if is-flag '-O0' ; then
3894 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
3895 - elif is-flag '-O4' ; then
3896 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
3897 - elif is-flag '-O3' ; then
3898 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
3899 - elif is-flag '-O1' ; then
3900 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
3901 - elif is-flag '-Os' ; then
3902 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
3903 - else
3904 - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
3905 - fi
3906 - fi
3907 -
3908 - # Debug flag was handled via configure
3909 - filter-flags '-g*'
3910 -
3911 - # Optimization flag was handled via configure
3912 - filter-flags '-O*'
3913 -
3914 - # Modifications to better support ARM, bug #553364
3915 - if use cpu_flags_arm_neon ; then
3916 - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
3917 -
3918 - if ! tc-is-clang ; then
3919 - # thumb options aren't supported when using clang, bug 666966
3920 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \
3921 - --with-thumb=yes \
3922 - --with-thumb-interwork=no
3923 - fi
3924 - fi
3925 -
3926 - if [[ ${CHOST} == armv*h* ]] ; then
3927 - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
3928 -
3929 - if ! use system-libvpx ; then
3930 - sed -i \
3931 - -e "s|softfp|hard|" \
3932 - "${S}"/media/libvpx/moz.build \
3933 - || die
3934 - fi
3935 - fi
3936 -
3937 - if use clang ; then
3938 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
3939 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
3940 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
3941 - local disable_elf_hack=
3942 - if use amd64 ; then
3943 - disable_elf_hack=yes
3944 - elif use x86 ; then
3945 - disable_elf_hack=yes
3946 - elif use arm ; then
3947 - disable_elf_hack=yes
3948 - fi
3949 -
3950 - if [[ -n ${disable_elf_hack} ]] ; then
3951 - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack
3952 - fi
3953 - elif tc-is-gcc ; then
3954 - if ver_test $(gcc-fullversion) -ge 10 ; then
3955 - einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..."
3956 - append-cxxflags -fno-tree-loop-vectorize
3957 - fi
3958 - fi
3959 -
3960 - # Additional ARCH support
3961 - case "${ARCH}" in
3962 - arm)
3963 - # Reduce the memory requirements for linking
3964 - if use clang ; then
3965 - # Nothing to do
3966 - :;
3967 - elif use lto ; then
3968 - append-ldflags -Wl,--no-keep-memory
3969 - else
3970 - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
3971 - fi
3972 - ;;
3973 - esac
3974 -
3975 - if ! use elibc_glibc ; then
3976 - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
3977 - fi
3978 -
3979 - # Allow elfhack to work in combination with unstripped binaries
3980 - # when they would normally be larger than 2GiB.
3981 - append-ldflags "-Wl,--compress-debug-sections=zlib"
3982 -
3983 - # Make revdep-rebuild.sh happy; Also required for musl
3984 - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
3985 -
3986 - # Pass $MAKEOPTS to build system
3987 - export MOZ_MAKE_FLAGS="${MAKEOPTS}"
3988 -
3989 - # Use system's Python environment
3990 - PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach
3991 -
3992 - if use system-python-libs; then
3993 - export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="system"
3994 - else
3995 - export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none"
3996 - fi
3997 -
3998 - # Disable notification when build system has finished
3999 - export MOZ_NOSPAM=1
4000 -
4001 - # Portage sets XARGS environment variable to "xargs -r" by default which
4002 - # breaks build system's check_prog() function which doesn't support arguments
4003 - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
4004 -
4005 - # Set build dir
4006 - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
4007 -
4008 - # Show flags we will use
4009 - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
4010 - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
4011 - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
4012 - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
4013 - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
4014 -
4015 - # Handle EXTRA_CONF and show summary
4016 - local ac opt hash reason
4017 -
4018 - # Apply EXTRA_ECONF entries to $MOZCONFIG
4019 - if [[ -n ${EXTRA_ECONF} ]] ; then
4020 - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
4021 - for opt in "${ac[@]}"; do
4022 - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
4023 - done
4024 - fi
4025 -
4026 - echo
4027 - echo "=========================================================="
4028 - echo "Building ${PF} with the following configuration"
4029 - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
4030 - [[ -z ${hash} || ${hash} == \# ]] \
4031 - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
4032 - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
4033 - done
4034 - echo "=========================================================="
4035 - echo
4036 -
4037 - ./mach configure || die
4038 -}
4039 -
4040 -src_compile() {
4041 - local virtx_cmd=
4042 -
4043 - if use pgo ; then
4044 - virtx_cmd=virtx
4045 -
4046 - # Reset and cleanup environment variables used by GNOME/XDG
4047 - gnome2_environment_reset
4048 -
4049 - addpredict /root
4050 - fi
4051 -
4052 - if ! use X && use wayland; then
4053 - local -x GDK_BACKEND=wayland
4054 - else
4055 - local -x GDK_BACKEND=x11
4056 - fi
4057 -
4058 - ${virtx_cmd} ./mach build --verbose \
4059 - || die
4060 -}
4061 -
4062 -src_install() {
4063 - # xpcshell is getting called during install
4064 - pax-mark m \
4065 - "${BUILD_DIR}"/dist/bin/xpcshell \
4066 - "${BUILD_DIR}"/dist/bin/${PN} \
4067 - "${BUILD_DIR}"/dist/bin/plugin-container
4068 -
4069 - DESTDIR="${D}" ./mach install || die
4070 -
4071 - # Upstream cannot ship symlink but we can (bmo#658850)
4072 - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
4073 - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
4074 -
4075 - # Don't install llvm-symbolizer from sys-devel/llvm package
4076 - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
4077 - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
4078 - fi
4079 -
4080 - # Install policy (currently only used to disable application updates)
4081 - insinto "${MOZILLA_FIVE_HOME}/distribution"
4082 - newins "${FILESDIR}"/distribution.ini distribution.ini
4083 - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
4084 -
4085 - # Install system-wide preferences
4086 - local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences"
4087 - insinto "${PREFS_DIR}"
4088 - newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js
4089 -
4090 - local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js"
4091 -
4092 - # Set dictionary path to use system hunspell
4093 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
4094 - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
4095 - EOF
4096 -
4097 - # Force hwaccel prefs if USE=hwaccel is enabled
4098 - if use hwaccel ; then
4099 - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js-r2 \
4100 - >>"${GENTOO_PREFS}" \
4101 - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
4102 -
4103 - if use wayland; then
4104 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel wayland prefs"
4105 - pref("gfx.x11-egl.force-enabled", false);
4106 - EOF
4107 - else
4108 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel x11 prefs"
4109 - pref("gfx.x11-egl.force-enabled", true);
4110 - EOF
4111 - fi
4112 - fi
4113 -
4114 - if ! use gmp-autoupdate ; then
4115 - local plugin
4116 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
4117 - einfo "Disabling auto-update for ${plugin} plugin ..."
4118 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
4119 - pref("media.${plugin}.autoupdate", false);
4120 - EOF
4121 - done
4122 - fi
4123 -
4124 - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
4125 - if use system-harfbuzz ; then
4126 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
4127 - sticky_pref("gfx.font_rendering.graphite.enabled", true);
4128 - EOF
4129 - fi
4130 -
4131 - # Install language packs
4132 - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
4133 - if [[ -n "${langpacks}" ]] ; then
4134 - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
4135 - fi
4136 -
4137 - # Install geckodriver
4138 - if use geckodriver ; then
4139 - einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..."
4140 - pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
4141 - exeinto "${MOZILLA_FIVE_HOME}"
4142 - doexe "${BUILD_DIR}"/dist/bin/geckodriver
4143 -
4144 - dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
4145 - fi
4146 -
4147 - # Install icons
4148 - local icon_srcdir="${S}/browser/branding/official"
4149 - local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg"
4150 -
4151 - insinto /usr/share/icons/hicolor/symbolic/apps
4152 - newins "${icon_symbolic_file}" ${PN}-symbolic.svg
4153 -
4154 - local icon size
4155 - for icon in "${icon_srcdir}"/default*.png ; do
4156 - size=${icon%.png}
4157 - size=${size##*/default}
4158 -
4159 - if [[ ${size} -eq 48 ]] ; then
4160 - newicon "${icon}" ${PN}.png
4161 - fi
4162 -
4163 - newicon -s ${size} "${icon}" ${PN}.png
4164 - done
4165 -
4166 - # Install menu
4167 - local app_name="Mozilla ${MOZ_PN^}"
4168 - local desktop_file="${FILESDIR}/icon/${PN}-r3.desktop"
4169 - local desktop_filename="${PN}.desktop"
4170 - local exec_command="${PN}"
4171 - local icon="${PN}"
4172 - local use_wayland="false"
4173 -
4174 - if use wayland ; then
4175 - use_wayland="true"
4176 - fi
4177 -
4178 - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
4179 -
4180 - sed -i \
4181 - -e "s:@NAME@:${app_name}:" \
4182 - -e "s:@EXEC@:${exec_command}:" \
4183 - -e "s:@ICON@:${icon}:" \
4184 - "${WORKDIR}/${PN}.desktop-template" \
4185 - || die
4186 -
4187 - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
4188 -
4189 - rm "${WORKDIR}/${PN}.desktop-template" || die
4190 -
4191 - # Install wrapper script
4192 - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
4193 - newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
4194 -
4195 - # Update wrapper
4196 - sed -i \
4197 - -e "s:@PREFIX@:${EPREFIX}/usr:" \
4198 - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
4199 - -e "s:@APULSELIB_DIR@:${apulselib}:" \
4200 - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
4201 - "${ED}/usr/bin/${PN}" \
4202 - || die
4203 -}
4204 -
4205 -pkg_preinst() {
4206 - xdg_pkg_preinst
4207 -
4208 - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
4209 - # does not need to be forced into the LD_LIBRARY_PATH
4210 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
4211 - einfo "APULSE found; Generating library symlinks for sound support ..."
4212 - local lib
4213 - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die
4214 - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
4215 - # A quickpkg rolled by hand will grab symlinks as part of the package,
4216 - # so we need to avoid creating them if they already exist.
4217 - if [[ ! -L ${lib##*/} ]] ; then
4218 - ln -s "${lib}" ${lib##*/} || die
4219 - fi
4220 - done
4221 - popd &>/dev/null || die
4222 - fi
4223 -}
4224 -
4225 -pkg_postinst() {
4226 - xdg_pkg_postinst
4227 -
4228 - if ! use gmp-autoupdate ; then
4229 - elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
4230 - elog "installing into new profiles:"
4231 - local plugin
4232 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
4233 - elog "\t ${plugin}"
4234 - done
4235 - elog
4236 - fi
4237 -
4238 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
4239 - elog "Apulse was detected at merge time on this system and so it will always be"
4240 - elog "used for sound. If you wish to use pulseaudio instead please unmerge"
4241 - elog "media-sound/apulse."
4242 - elog
4243 - fi
4244 -
4245 - local show_doh_information
4246 - local show_normandy_information
4247 - local show_shortcut_information
4248 -
4249 - if [[ -z "${REPLACING_VERSIONS}" ]] ; then
4250 - # New install; Tell user that DoH is disabled by default
4251 - show_doh_information=yes
4252 - show_normandy_information=yes
4253 - show_shortcut_information=no
4254 - else
4255 - local replacing_version
4256 - for replacing_version in ${REPLACING_VERSIONS} ; do
4257 - if ver_test "${replacing_version}" -lt 91.0 ; then
4258 - # Tell user that we no longer install a shortcut
4259 - # per supported display protocol
4260 - show_shortcut_information=yes
4261 - fi
4262 - done
4263 - fi
4264 -
4265 - if [[ -n "${show_doh_information}" ]] ; then
4266 - elog
4267 - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):"
4268 - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all"
4269 - elog "DNS traffic to Cloudflare by default is not a good idea and applications"
4270 - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5"
4271 - elog "(\"Off by choice\") by default."
4272 - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
4273 - fi
4274 -
4275 - # bug 713782
4276 - if [[ -n "${show_normandy_information}" ]] ; then
4277 - elog
4278 - elog "Upstream operates a service named Normandy which allows Mozilla to"
4279 - elog "push changes for default settings or even install new add-ons remotely."
4280 - elog "While this can be useful to address problems like 'Armagadd-on 2.0' or"
4281 - elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security"
4282 - elog "concerns prevail, which is why we have switched off the use of this"
4283 - elog "service by default."
4284 - elog
4285 - elog "To re-enable this service set"
4286 - elog
4287 - elog " app.normandy.enabled=true"
4288 - elog
4289 - elog "in about:config."
4290 - fi
4291 -
4292 - if [[ -n "${show_shortcut_information}" ]] ; then
4293 - elog
4294 - elog "Since ${PN}-91.0 we no longer install multiple shortcuts for"
4295 - elog "each supported display protocol. Instead we will only install"
4296 - elog "one generic Mozilla ${PN^} shortcut."
4297 - elog "If you still want to be able to select between running Mozilla ${PN^}"
4298 - elog "on X11 or Wayland, you have to re-create these shortcuts on your own."
4299 - fi
4300 -
4301 - # bug 835078
4302 - if use hwaccel && has_version "x11-drivers/xf86-video-nouveau"; then
4303 - ewarn "You have nouveau drivers installed in your system and 'hwaccel' "
4304 - ewarn "enabled for Firefox. Nouveau / your GPU might not supported the "
4305 - ewarn "required EGL, so either disable 'hwaccel' or try the workaround "
4306 - ewarn "explained in https://bugs.gentoo.org/835078#c5 if Firefox crashes."
4307 - fi
4308 -
4309 - elog
4310 - elog "Unfortunately Firefox-100.0 breaks compatibility with some sites using "
4311 - elog "useragent checks. To temporarily fix this, enter about:config and modify "
4312 - elog "network.http.useragent.forceVersion preference to \"99\"."
4313 - elog "Or install an addon to change your useragent."
4314 - elog "See: https://support.mozilla.org/en-US/kb/difficulties-opening-or-using-website-firefox-100"
4315 - elog
4316 -}
4317
4318 diff --git a/www-client/firefox/firefox-91.11.0.ebuild b/www-client/firefox/firefox-91.11.0.ebuild
4319 deleted file mode 100644
4320 index 15576e5ff8d3..000000000000
4321 --- a/www-client/firefox/firefox-91.11.0.ebuild
4322 +++ /dev/null
4323 @@ -1,1244 +0,0 @@
4324 -# Copyright 1999-2022 Gentoo Authors
4325 -# Distributed under the terms of the GNU General Public License v2
4326 -
4327 -EAPI="8"
4328 -
4329 -FIREFOX_PATCHSET="firefox-91esr-patches-10j.tar.xz"
4330 -
4331 -LLVM_MAX_SLOT=14
4332 -
4333 -PYTHON_COMPAT=( python3_{8..10} )
4334 -PYTHON_REQ_USE="ncurses,sqlite,ssl"
4335 -
4336 -WANT_AUTOCONF="2.1"
4337 -
4338 -VIRTUALX_REQUIRED="pgo"
4339 -
4340 -MOZ_ESR=yes
4341 -
4342 -MOZ_PV=${PV}
4343 -MOZ_PV_SUFFIX=
4344 -if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
4345 - MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
4346 -
4347 - # Convert the ebuild version to the upstream Mozilla version
4348 - MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
4349 - MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
4350 - MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
4351 -fi
4352 -
4353 -if [[ -n ${MOZ_ESR} ]] ; then
4354 - # ESR releases have slightly different version numbers
4355 - MOZ_PV="${MOZ_PV}esr"
4356 -fi
4357 -
4358 -MOZ_PN="${PN%-bin}"
4359 -MOZ_P="${MOZ_PN}-${MOZ_PV}"
4360 -MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
4361 -MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
4362 -
4363 -inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \
4364 - llvm multiprocessing pax-utils python-any-r1 toolchain-funcs \
4365 - virtualx xdg
4366 -
4367 -MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
4368 -
4369 -if [[ ${PV} == *_rc* ]] ; then
4370 - MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
4371 -fi
4372 -
4373 -PATCH_URIS=(
4374 - https://dev.gentoo.org/~{juippis,polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET}
4375 -)
4376 -
4377 -SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
4378 - ${PATCH_URIS[@]}"
4379 -
4380 -DESCRIPTION="Firefox Web Browser"
4381 -HOMEPAGE="https://www.mozilla.com/firefox"
4382 -
4383 -KEYWORDS="amd64 arm64 ~ppc64 x86"
4384 -
4385 -SLOT="esr"
4386 -LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
4387 -
4388 -IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel"
4389 -IUSE+=" jack lto +openh264 pgo pulseaudio sndio selinux"
4390 -IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx system-png +system-webp"
4391 -IUSE+=" wayland wifi"
4392 -
4393 -# Firefox-only IUSE
4394 -IUSE+=" geckodriver"
4395 -IUSE+=" +gmp-autoupdate"
4396 -IUSE+=" screencast"
4397 -
4398 -REQUIRED_USE="debug? ( !system-av1 )
4399 - pgo? ( lto )
4400 - wifi? ( dbus )"
4401 -
4402 -# Firefox-only REQUIRED_USE flags
4403 -REQUIRED_USE+=" screencast? ( wayland )"
4404 -
4405 -BDEPEND="${PYTHON_DEPS}
4406 - app-arch/unzip
4407 - app-arch/zip
4408 - >=dev-util/cbindgen-0.24.0
4409 - >=net-libs/nodejs-10.23.1
4410 - virtual/pkgconfig
4411 - >=virtual/rust-1.51.0
4412 - || (
4413 - (
4414 - sys-devel/clang:14
4415 - sys-devel/llvm:14
4416 - clang? (
4417 - =sys-devel/lld-14*
4418 - pgo? ( =sys-libs/compiler-rt-sanitizers-14*[profile] )
4419 - sys-devel/clang:14
4420 - )
4421 - )
4422 - (
4423 - sys-devel/clang:13
4424 - sys-devel/llvm:13
4425 - clang? (
4426 - =sys-devel/lld-13*
4427 - pgo? ( =sys-libs/compiler-rt-sanitizers-13*[profile] )
4428 - )
4429 - )
4430 - (
4431 - sys-devel/clang:12
4432 - sys-devel/llvm:12
4433 - clang? (
4434 - =sys-devel/lld-12*
4435 - pgo? ( =sys-libs/compiler-rt-sanitizers-12*[profile] )
4436 - )
4437 - )
4438 - )
4439 - amd64? ( >=dev-lang/nasm-2.13 )
4440 - x86? ( >=dev-lang/nasm-2.13 )"
4441 -
4442 -COMMON_DEPEND="
4443 - >=dev-libs/nss-3.68
4444 - >=dev-libs/nspr-4.32
4445 - dev-libs/atk
4446 - dev-libs/expat
4447 - >=x11-libs/cairo-1.10[X]
4448 - >=x11-libs/gtk+-3.4.0:3[X]
4449 - x11-libs/gdk-pixbuf
4450 - >=x11-libs/pango-1.22.0
4451 - >=media-libs/mesa-10.2:*
4452 - media-libs/fontconfig
4453 - >=media-libs/freetype-2.4.10
4454 - kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) )
4455 - virtual/freedesktop-icon-theme
4456 - >=x11-libs/pixman-0.19.2
4457 - >=dev-libs/glib-2.26:2
4458 - >=sys-libs/zlib-1.2.3
4459 - >=dev-libs/libffi-3.0.10:=
4460 - media-video/ffmpeg
4461 - x11-libs/libX11
4462 - x11-libs/libxcb:=
4463 - x11-libs/libXcomposite
4464 - x11-libs/libXdamage
4465 - x11-libs/libXext
4466 - x11-libs/libXfixes
4467 - x11-libs/libXrender
4468 - x11-libs/libXt
4469 - dbus? (
4470 - sys-apps/dbus
4471 - dev-libs/dbus-glib
4472 - )
4473 - screencast? ( media-video/pipewire:= )
4474 - system-av1? (
4475 - >=media-libs/dav1d-0.8.1:=
4476 - >=media-libs/libaom-1.0.0:=
4477 - )
4478 - system-harfbuzz? (
4479 - >=media-libs/harfbuzz-2.8.1:0=
4480 - >=media-gfx/graphite2-1.3.13
4481 - )
4482 - system-icu? ( >=dev-libs/icu-69.1:= )
4483 - system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
4484 - system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
4485 - system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
4486 - system-png? ( >=media-libs/libpng-1.6.35:0=[apng] )
4487 - system-webp? ( >=media-libs/libwebp-1.1.0:0= )
4488 - wifi? (
4489 - kernel_linux? (
4490 - sys-apps/dbus
4491 - dev-libs/dbus-glib
4492 - net-misc/networkmanager
4493 - )
4494 - )
4495 - jack? ( virtual/jack )
4496 - selinux? ( sec-policy/selinux-mozilla )
4497 - sndio? ( media-sound/sndio )"
4498 -
4499 -RDEPEND="${COMMON_DEPEND}
4500 - !www-client/firefox:0
4501 - !www-client/firefox:rapid
4502 - jack? ( virtual/jack )
4503 - openh264? ( media-libs/openh264:*[plugin] )
4504 - pulseaudio? (
4505 - || (
4506 - media-sound/pulseaudio
4507 - >=media-sound/apulse-0.1.12-r4
4508 - )
4509 - )
4510 - selinux? ( sec-policy/selinux-mozilla )"
4511 -
4512 -DEPEND="${COMMON_DEPEND}
4513 - x11-libs/libICE
4514 - x11-libs/libSM
4515 - pulseaudio? (
4516 - || (
4517 - media-sound/pulseaudio
4518 - >=media-sound/apulse-0.1.12-r4[sdk]
4519 - )
4520 - )
4521 - wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
4522 - amd64? ( virtual/opengl )
4523 - x86? ( virtual/opengl )"
4524 -
4525 -S="${WORKDIR}/${PN}-${PV%_*}"
4526 -
4527 -# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
4528 -# overridden in the enviromnent (advanced hackers only)
4529 -if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
4530 - MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
4531 -fi
4532 -
4533 -llvm_check_deps() {
4534 - if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
4535 - einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
4536 - return 1
4537 - fi
4538 -
4539 - if use clang ; then
4540 - if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
4541 - einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
4542 - return 1
4543 - fi
4544 -
4545 - if use pgo ; then
4546 - if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
4547 - einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
4548 - return 1
4549 - fi
4550 - fi
4551 - fi
4552 -
4553 - einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
4554 -}
4555 -
4556 -MOZ_LANGS=(
4557 - af ar ast be bg br ca cak cs cy da de dsb
4558 - el en-CA en-GB en-US es-AR es-ES et eu
4559 - fi fr fy-NL ga-IE gd gl he hr hsb hu
4560 - id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO
4561 - pa-IN pl pt-BR pt-PT rm ro ru
4562 - sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW
4563 -)
4564 -
4565 -# Firefox-only LANGS
4566 -MOZ_LANGS+=( ach )
4567 -MOZ_LANGS+=( an )
4568 -MOZ_LANGS+=( az )
4569 -MOZ_LANGS+=( bn )
4570 -MOZ_LANGS+=( bs )
4571 -MOZ_LANGS+=( ca-valencia )
4572 -MOZ_LANGS+=( eo )
4573 -MOZ_LANGS+=( es-CL )
4574 -MOZ_LANGS+=( es-MX )
4575 -MOZ_LANGS+=( fa )
4576 -MOZ_LANGS+=( ff )
4577 -MOZ_LANGS+=( gn )
4578 -MOZ_LANGS+=( gu-IN )
4579 -MOZ_LANGS+=( hi-IN )
4580 -MOZ_LANGS+=( hy-AM )
4581 -MOZ_LANGS+=( ia )
4582 -MOZ_LANGS+=( km )
4583 -MOZ_LANGS+=( kn )
4584 -MOZ_LANGS+=( lij )
4585 -MOZ_LANGS+=( mk )
4586 -MOZ_LANGS+=( mr )
4587 -MOZ_LANGS+=( my )
4588 -MOZ_LANGS+=( ne-NP )
4589 -MOZ_LANGS+=( oc )
4590 -MOZ_LANGS+=( sco )
4591 -MOZ_LANGS+=( si )
4592 -MOZ_LANGS+=( son )
4593 -MOZ_LANGS+=( szl )
4594 -MOZ_LANGS+=( ta )
4595 -MOZ_LANGS+=( te )
4596 -MOZ_LANGS+=( tl )
4597 -MOZ_LANGS+=( trs )
4598 -MOZ_LANGS+=( ur )
4599 -MOZ_LANGS+=( xh )
4600 -
4601 -mozilla_set_globals() {
4602 - # https://bugs.gentoo.org/587334
4603 - local MOZ_TOO_REGIONALIZED_FOR_L10N=(
4604 - fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
4605 - )
4606 -
4607 - local lang xflag
4608 - for lang in "${MOZ_LANGS[@]}" ; do
4609 - # en and en_US are handled internally
4610 - if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
4611 - continue
4612 - fi
4613 -
4614 - # strip region subtag if $lang is in the list
4615 - if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
4616 - xflag=${lang%%-*}
4617 - else
4618 - xflag=${lang}
4619 - fi
4620 -
4621 - SRC_URI+=" l10n_${xflag/[_@]/-}? ("
4622 - SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
4623 - SRC_URI+=" )"
4624 - IUSE+=" l10n_${xflag/[_@]/-}"
4625 - done
4626 -}
4627 -mozilla_set_globals
4628 -
4629 -moz_clear_vendor_checksums() {
4630 - debug-print-function ${FUNCNAME} "$@"
4631 -
4632 - if [[ ${#} -ne 1 ]] ; then
4633 - die "${FUNCNAME} requires exact one argument"
4634 - fi
4635 -
4636 - einfo "Clearing cargo checksums for ${1} ..."
4637 -
4638 - sed -i \
4639 - -e 's/\("files":{\)[^}]*/\1/' \
4640 - "${S}"/third_party/rust/${1}/.cargo-checksum.json \
4641 - || die
4642 -}
4643 -
4644 -moz_install_xpi() {
4645 - debug-print-function ${FUNCNAME} "$@"
4646 -
4647 - if [[ ${#} -lt 2 ]] ; then
4648 - die "${FUNCNAME} requires at least two arguments"
4649 - fi
4650 -
4651 - local DESTDIR=${1}
4652 - shift
4653 -
4654 - insinto "${DESTDIR}"
4655 -
4656 - local emid xpi_file xpi_tmp_dir
4657 - for xpi_file in "${@}" ; do
4658 - emid=
4659 - xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
4660 -
4661 - # Unpack XPI
4662 - unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
4663 -
4664 - # Determine extension ID
4665 - if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
4666 - emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
4667 - [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
4668 - elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
4669 - emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
4670 - [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
4671 - else
4672 - die "failed to determine extension id"
4673 - fi
4674 -
4675 - einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
4676 - newins "${xpi_file}" "${emid}.xpi"
4677 - done
4678 -}
4679 -
4680 -mozconfig_add_options_ac() {
4681 - debug-print-function ${FUNCNAME} "$@"
4682 -
4683 - if [[ ${#} -lt 2 ]] ; then
4684 - die "${FUNCNAME} requires at least two arguments"
4685 - fi
4686 -
4687 - local reason=${1}
4688 - shift
4689 -
4690 - local option
4691 - for option in ${@} ; do
4692 - echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
4693 - done
4694 -}
4695 -
4696 -mozconfig_add_options_mk() {
4697 - debug-print-function ${FUNCNAME} "$@"
4698 -
4699 - if [[ ${#} -lt 2 ]] ; then
4700 - die "${FUNCNAME} requires at least two arguments"
4701 - fi
4702 -
4703 - local reason=${1}
4704 - shift
4705 -
4706 - local option
4707 - for option in ${@} ; do
4708 - echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
4709 - done
4710 -}
4711 -
4712 -mozconfig_use_enable() {
4713 - debug-print-function ${FUNCNAME} "$@"
4714 -
4715 - if [[ ${#} -lt 1 ]] ; then
4716 - die "${FUNCNAME} requires at least one arguments"
4717 - fi
4718 -
4719 - local flag=$(use_enable "${@}")
4720 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
4721 -}
4722 -
4723 -mozconfig_use_with() {
4724 - debug-print-function ${FUNCNAME} "$@"
4725 -
4726 - if [[ ${#} -lt 1 ]] ; then
4727 - die "${FUNCNAME} requires at least one arguments"
4728 - fi
4729 -
4730 - local flag=$(use_with "${@}")
4731 - mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
4732 -}
4733 -
4734 -pkg_pretend() {
4735 - if [[ ${MERGE_TYPE} != binary ]] ; then
4736 - if use pgo ; then
4737 - if ! has usersandbox $FEATURES ; then
4738 - die "You must enable usersandbox as X server can not run as root!"
4739 - fi
4740 - fi
4741 -
4742 - # Ensure we have enough disk space to compile
4743 - if use pgo || use lto || use debug ; then
4744 - CHECKREQS_DISK_BUILD="13500M"
4745 - else
4746 - CHECKREQS_DISK_BUILD="6400M"
4747 - fi
4748 -
4749 - check-reqs_pkg_pretend
4750 - fi
4751 -}
4752 -
4753 -pkg_setup() {
4754 - if [[ ${MERGE_TYPE} != binary ]] ; then
4755 - if use pgo ; then
4756 - if ! has userpriv ${FEATURES} ; then
4757 - eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
4758 - fi
4759 - fi
4760 -
4761 - # Ensure we have enough disk space to compile
4762 - if use pgo || use lto || use debug ; then
4763 - CHECKREQS_DISK_BUILD="13500M"
4764 - else
4765 - CHECKREQS_DISK_BUILD="6400M"
4766 - fi
4767 -
4768 - check-reqs_pkg_setup
4769 -
4770 - llvm_pkg_setup
4771 -
4772 - if use clang && use lto ; then
4773 - local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
4774 - [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
4775 - [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
4776 -
4777 - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
4778 - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
4779 - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
4780 -
4781 - if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
4782 - eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
4783 - eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
4784 - eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
4785 - eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
4786 - eerror " - Build ${CATEGORY}/${PN} without USE=lto"
4787 - eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole "
4788 - eerror " llvm/clang/lld/rust chain depending on your @world updates)"
4789 - die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
4790 - fi
4791 - fi
4792 -
4793 - if ! use clang && [[ $(gcc-major-version) -eq 11 ]] \
4794 - && ! has_version -b ">sys-devel/gcc-11.1.0:11" ; then
4795 - # bug 792705
4796 - eerror "Using GCC 11 to compile firefox is currently known to be broken (see bug #792705)."
4797 - die "Set USE=clang or select <gcc-11 to build ${CATEGORY}/${P}."
4798 - fi
4799 -
4800 - python-any-r1_pkg_setup
4801 -
4802 - # Avoid PGO profiling problems due to enviroment leakage
4803 - # These should *always* be cleaned up anyway
4804 - unset \
4805 - DBUS_SESSION_BUS_ADDRESS \
4806 - DISPLAY \
4807 - ORBIT_SOCKETDIR \
4808 - SESSION_MANAGER \
4809 - XAUTHORITY \
4810 - XDG_CACHE_HOME \
4811 - XDG_SESSION_COOKIE
4812 -
4813 - # Build system is using /proc/self/oom_score_adj, bug #604394
4814 - addpredict /proc/self/oom_score_adj
4815 -
4816 - if use pgo ; then
4817 - # Allow access to GPU during PGO run
4818 - local ati_cards mesa_cards nvidia_cards render_cards
4819 - shopt -s nullglob
4820 -
4821 - ati_cards=$(echo -n /dev/ati/card* | sed 's/ /:/g')
4822 - if [[ -n "${ati_cards}" ]] ; then
4823 - addpredict "${ati_cards}"
4824 - fi
4825 -
4826 - mesa_cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
4827 - if [[ -n "${mesa_cards}" ]] ; then
4828 - addpredict "${mesa_cards}"
4829 - fi
4830 -
4831 - nvidia_cards=$(echo -n /dev/nvidia* | sed 's/ /:/g')
4832 - if [[ -n "${nvidia_cards}" ]] ; then
4833 - addpredict "${nvidia_cards}"
4834 - fi
4835 -
4836 - render_cards=$(echo -n /dev/dri/renderD128* | sed 's/ /:/g')
4837 - if [[ -n "${render_cards}" ]] ; then
4838 - addpredict "${render_cards}"
4839 - fi
4840 -
4841 - shopt -u nullglob
4842 - fi
4843 -
4844 - if ! mountpoint -q /dev/shm ; then
4845 - # If /dev/shm is not available, configure is known to fail with
4846 - # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
4847 - ewarn "/dev/shm is not mounted -- expect build failures!"
4848 - fi
4849 -
4850 - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
4851 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
4852 - # get your own set of keys.
4853 - if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
4854 - MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
4855 - fi
4856 -
4857 - if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
4858 - MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
4859 - fi
4860 -
4861 - # Mozilla API keys (see https://location.services.mozilla.com/api)
4862 - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
4863 - # get your own set of keys.
4864 - if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
4865 - MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
4866 - fi
4867 -
4868 - # Ensure we use C locale when building, bug #746215
4869 - export LC_ALL=C
4870 - fi
4871 -
4872 - CONFIG_CHECK="~SECCOMP"
4873 - WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
4874 - linux-info_pkg_setup
4875 -}
4876 -
4877 -src_unpack() {
4878 - local _lp_dir="${WORKDIR}/language_packs"
4879 - local _src_file
4880 -
4881 - if [[ ! -d "${_lp_dir}" ]] ; then
4882 - mkdir "${_lp_dir}" || die
4883 - fi
4884 -
4885 - for _src_file in ${A} ; do
4886 - if [[ ${_src_file} == *.xpi ]]; then
4887 - cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
4888 - else
4889 - unpack ${_src_file}
4890 - fi
4891 - done
4892 -}
4893 -
4894 -src_prepare() {
4895 - if use lto; then
4896 - rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch || die
4897 - fi
4898 -
4899 - if use system-av1 && has_version "<media-libs/dav1d-1.0.0"; then
4900 - rm -v "${WORKDIR}"/firefox-patches/0033-bgo-835788-dav1d-1.0.0-support.patch || die
4901 - elog "<media-libs/dav1d-1.0.0 detected, removing 1.0.0 compat patch."
4902 - elif ! use system-av1; then
4903 - rm -v "${WORKDIR}"/firefox-patches/0033-bgo-835788-dav1d-1.0.0-support.patch || die
4904 - elog "-system-av1 USE flag detected, removing 1.0.0 compat patch."
4905 - fi
4906 -
4907 - eapply "${WORKDIR}/firefox-patches"
4908 -
4909 - # Allow user to apply any additional patches without modifing ebuild
4910 - eapply_user
4911 -
4912 - # Make cargo respect MAKEOPTS
4913 - export CARGO_BUILD_JOBS="$(makeopts_jobs)"
4914 -
4915 - # Make LTO respect MAKEOPTS
4916 - sed -i \
4917 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
4918 - "${S}"/build/moz.configure/lto-pgo.configure \
4919 - || die "sed failed to set num_cores"
4920 -
4921 - # Make ICU respect MAKEOPTS
4922 - sed -i \
4923 - -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
4924 - "${S}"/intl/icu_sources_data.py \
4925 - || die "sed failed to set num_cores"
4926 -
4927 - # sed-in toolchain prefix
4928 - sed -i \
4929 - -e "s/objdump/${CHOST}-objdump/" \
4930 - "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
4931 - || die "sed failed to set toolchain prefix"
4932 -
4933 - sed -i \
4934 - -e 's/ccache_stats = None/return None/' \
4935 - "${S}"/python/mozbuild/mozbuild/controller/building.py \
4936 - || die "sed failed to disable ccache stats call"
4937 -
4938 - einfo "Removing pre-built binaries ..."
4939 - find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
4940 -
4941 - # Clearing checksums where we have applied patches
4942 - moz_clear_vendor_checksums target-lexicon-0.9.0
4943 -
4944 - # Create build dir
4945 - BUILD_DIR="${WORKDIR}/${PN}_build"
4946 - mkdir -p "${BUILD_DIR}" || die
4947 -
4948 - # Write API keys to disk
4949 - echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
4950 - echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
4951 - echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
4952 -
4953 - xdg_environment_reset
4954 -}
4955 -
4956 -src_configure() {
4957 - # Show flags set at the beginning
4958 - einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
4959 - einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
4960 - einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
4961 - einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
4962 - einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
4963 -
4964 - local have_switched_compiler=
4965 - if use clang && ! tc-is-clang ; then
4966 - # Force clang
4967 - einfo "Enforcing the use of clang due to USE=clang ..."
4968 - have_switched_compiler=yes
4969 - AR=llvm-ar
4970 - CC=${CHOST}-clang
4971 - CXX=${CHOST}-clang++
4972 - NM=llvm-nm
4973 - RANLIB=llvm-ranlib
4974 - elif ! use clang && ! tc-is-gcc ; then
4975 - # Force gcc
4976 - have_switched_compiler=yes
4977 - einfo "Enforcing the use of gcc due to USE=-clang ..."
4978 - AR=gcc-ar
4979 - CC=${CHOST}-gcc
4980 - CXX=${CHOST}-g++
4981 - NM=gcc-nm
4982 - RANLIB=gcc-ranlib
4983 - fi
4984 -
4985 - if [[ -n "${have_switched_compiler}" ]] ; then
4986 - # Because we switched active compiler we have to ensure
4987 - # that no unsupported flags are set
4988 - strip-unsupported-flags
4989 - fi
4990 -
4991 - # Ensure we use correct toolchain
4992 - export HOST_CC="$(tc-getBUILD_CC)"
4993 - export HOST_CXX="$(tc-getBUILD_CXX)"
4994 - tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
4995 -
4996 - # Pass the correct toolchain paths through cbindgen
4997 - if tc-is-cross-compiler ; then
4998 - export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
4999 - fi
5000 -
5001 - # Set MOZILLA_FIVE_HOME
5002 - export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
5003 -
5004 - # python/mach/mach/mixin/process.py fails to detect SHELL
5005 - export SHELL="${EPREFIX}/bin/bash"
5006 -
5007 - # Set state path
5008 - export MOZBUILD_STATE_PATH="${BUILD_DIR}"
5009 -
5010 - # Set MOZCONFIG
5011 - export MOZCONFIG="${S}/.mozconfig"
5012 -
5013 - # Initialize MOZCONFIG
5014 - mozconfig_add_options_ac '' --enable-application=browser
5015 -
5016 - # Set Gentoo defaults
5017 - export MOZILLA_OFFICIAL=1
5018 -
5019 - mozconfig_add_options_ac 'Gentoo default' \
5020 - --allow-addon-sideload \
5021 - --disable-cargo-incremental \
5022 - --disable-crashreporter \
5023 - --disable-install-strip \
5024 - --disable-strip \
5025 - --disable-updater \
5026 - --enable-official-branding \
5027 - --enable-release \
5028 - --enable-system-ffi \
5029 - --enable-system-pixman \
5030 - --host="${CBUILD:-${CHOST}}" \
5031 - --libdir="${EPREFIX}/usr/$(get_libdir)" \
5032 - --prefix="${EPREFIX}/usr" \
5033 - --target="${CHOST}" \
5034 - --without-ccache \
5035 - --with-intl-api \
5036 - --with-libclang-path="$(llvm-config --libdir)" \
5037 - --with-system-nspr \
5038 - --with-system-nss \
5039 - --with-system-zlib \
5040 - --with-toolchain-prefix="${CHOST}-" \
5041 - --with-unsigned-addon-scopes=app,system \
5042 - --x-includes="${ESYSROOT}/usr/include" \
5043 - --x-libraries="${ESYSROOT}/usr/$(get_libdir)"
5044 -
5045 - # Set update channel
5046 - local update_channel=release
5047 - [[ -n ${MOZ_ESR} ]] && update_channel=esr
5048 - mozconfig_add_options_ac '' --update-channel=${update_channel}
5049 -
5050 - if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
5051 - mozconfig_add_options_ac '' --enable-rust-simd
5052 - fi
5053 -
5054 - if [[ -s "${S}/api-google.key" ]] ; then
5055 - local key_origin="Gentoo default"
5056 - if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
5057 - key_origin="User value"
5058 - fi
5059 -
5060 - mozconfig_add_options_ac "${key_origin}" \
5061 - --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
5062 - else
5063 - einfo "Building without Google API key ..."
5064 - fi
5065 -
5066 - if [[ -s "${S}/api-location.key" ]] ; then
5067 - local key_origin="Gentoo default"
5068 - if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
5069 - key_origin="User value"
5070 - fi
5071 -
5072 - mozconfig_add_options_ac "${key_origin}" \
5073 - --with-google-location-service-api-keyfile="${S}/api-location.key"
5074 - else
5075 - einfo "Building without Location API key ..."
5076 - fi
5077 -
5078 - if [[ -s "${S}/api-mozilla.key" ]] ; then
5079 - local key_origin="Gentoo default"
5080 - if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
5081 - key_origin="User value"
5082 - fi
5083 -
5084 - mozconfig_add_options_ac "${key_origin}" \
5085 - --with-mozilla-api-keyfile="${S}/api-mozilla.key"
5086 - else
5087 - einfo "Building without Mozilla API key ..."
5088 - fi
5089 -
5090 - mozconfig_use_with system-av1
5091 - mozconfig_use_with system-harfbuzz
5092 - mozconfig_use_with system-harfbuzz system-graphite2
5093 - mozconfig_use_with system-icu
5094 - mozconfig_use_with system-jpeg
5095 - mozconfig_use_with system-libevent system-libevent "${ESYSROOT}/usr"
5096 - mozconfig_use_with system-libvpx
5097 - mozconfig_use_with system-png
5098 - mozconfig_use_with system-webp
5099 -
5100 - mozconfig_use_enable dbus
5101 -
5102 - use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
5103 -
5104 - mozconfig_use_enable geckodriver
5105 -
5106 - if use hardened ; then
5107 - mozconfig_add_options_ac "+hardened" --enable-hardening
5108 - append-ldflags "-Wl,-z,relro -Wl,-z,now"
5109 - fi
5110 -
5111 - mozconfig_use_enable jack
5112 -
5113 - mozconfig_use_enable pulseaudio
5114 - # force the deprecated alsa sound code if pulseaudio is disabled
5115 - if use kernel_linux && ! use pulseaudio ; then
5116 - mozconfig_add_options_ac '-pulseaudio' --enable-alsa
5117 - fi
5118 -
5119 - mozconfig_use_enable sndio
5120 -
5121 - mozconfig_use_enable wifi necko-wifi
5122 -
5123 - if use wayland ; then
5124 - mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland
5125 - else
5126 - mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3
5127 - fi
5128 -
5129 - if use lto ; then
5130 - if use clang ; then
5131 - # Upstream only supports lld when using clang
5132 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
5133 -
5134 - mozconfig_add_options_ac '+lto' --enable-lto=cross
5135 - else
5136 - # ld.gold is known to fail:
5137 - # /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
5138 -
5139 - # ThinLTO is currently broken, see bmo#1644409
5140 - mozconfig_add_options_ac '+lto' --enable-lto=full
5141 - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
5142 - fi
5143 -
5144 - if use pgo ; then
5145 - mozconfig_add_options_ac '+pgo' MOZ_PGO=1
5146 -
5147 - if use clang ; then
5148 - # Used in build/pgo/profileserver.py
5149 - export LLVM_PROFDATA="llvm-profdata"
5150 - fi
5151 - fi
5152 - else
5153 - # Avoid auto-magic on linker
5154 - if use clang ; then
5155 - # This is upstream's default
5156 - mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
5157 - else
5158 - mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
5159 - fi
5160 - fi
5161 -
5162 - # LTO flag was handled via configure
5163 - filter-flags '-flto*'
5164 -
5165 - mozconfig_use_enable debug
5166 - if use debug ; then
5167 - mozconfig_add_options_ac '+debug' --disable-optimize
5168 - else
5169 - if is-flag '-g*' ; then
5170 - if use clang ; then
5171 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
5172 - else
5173 - mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
5174 - fi
5175 - else
5176 - mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
5177 - fi
5178 -
5179 - if is-flag '-O0' ; then
5180 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
5181 - elif is-flag '-O4' ; then
5182 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
5183 - elif is-flag '-O3' ; then
5184 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
5185 - elif is-flag '-O1' ; then
5186 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
5187 - elif is-flag '-Os' ; then
5188 - mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
5189 - else
5190 - mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
5191 - fi
5192 - fi
5193 -
5194 - # Debug flag was handled via configure
5195 - filter-flags '-g*'
5196 -
5197 - # Optimization flag was handled via configure
5198 - filter-flags '-O*'
5199 -
5200 - # Modifications to better support ARM, bug #553364
5201 - if use cpu_flags_arm_neon ; then
5202 - mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
5203 -
5204 - if ! tc-is-clang ; then
5205 - # thumb options aren't supported when using clang, bug 666966
5206 - mozconfig_add_options_ac '+cpu_flags_arm_neon' \
5207 - --with-thumb=yes \
5208 - --with-thumb-interwork=no
5209 - fi
5210 - fi
5211 -
5212 - if [[ ${CHOST} == armv*h* ]] ; then
5213 - mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
5214 -
5215 - if ! use system-libvpx ; then
5216 - sed -i \
5217 - -e "s|softfp|hard|" \
5218 - "${S}"/media/libvpx/moz.build \
5219 - || die
5220 - fi
5221 - fi
5222 -
5223 - if use clang ; then
5224 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
5225 - # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
5226 - # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
5227 - local disable_elf_hack=
5228 - if use amd64 ; then
5229 - disable_elf_hack=yes
5230 - elif use x86 ; then
5231 - disable_elf_hack=yes
5232 - elif use arm ; then
5233 - disable_elf_hack=yes
5234 - fi
5235 -
5236 - if [[ -n ${disable_elf_hack} ]] ; then
5237 - mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack
5238 - fi
5239 - elif tc-is-gcc ; then
5240 - if ver_test $(gcc-fullversion) -ge 10 ; then
5241 - einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..."
5242 - append-cxxflags -fno-tree-loop-vectorize
5243 - fi
5244 - fi
5245 -
5246 - # Additional ARCH support
5247 - case "${ARCH}" in
5248 - arm)
5249 - # Reduce the memory requirements for linking
5250 - if use clang ; then
5251 - # Nothing to do
5252 - :;
5253 - elif tc-ld-is-gold || use lto ; then
5254 - append-ldflags -Wl,--no-keep-memory
5255 - else
5256 - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
5257 - fi
5258 - ;;
5259 - esac
5260 -
5261 - if ! use elibc_glibc ; then
5262 - mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
5263 - fi
5264 -
5265 - # Allow elfhack to work in combination with unstripped binaries
5266 - # when they would normally be larger than 2GiB.
5267 - append-ldflags "-Wl,--compress-debug-sections=zlib"
5268 -
5269 - # Make revdep-rebuild.sh happy; Also required for musl
5270 - append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
5271 -
5272 - # Pass $MAKEOPTS to build system
5273 - export MOZ_MAKE_FLAGS="${MAKEOPTS}"
5274 -
5275 - # Use system's Python environment
5276 - export MACH_USE_SYSTEM_PYTHON=1
5277 - export PIP_NO_CACHE_DIR=off
5278 -
5279 - # Disable notification when build system has finished
5280 - export MOZ_NOSPAM=1
5281 -
5282 - # Portage sets XARGS environment variable to "xargs -r" by default which
5283 - # breaks build system's check_prog() function which doesn't support arguments
5284 - mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
5285 -
5286 - # Set build dir
5287 - mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
5288 -
5289 - # Show flags we will use
5290 - einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
5291 - einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
5292 - einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
5293 - einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
5294 - einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
5295 -
5296 - # Handle EXTRA_CONF and show summary
5297 - local ac opt hash reason
5298 -
5299 - # Apply EXTRA_ECONF entries to $MOZCONFIG
5300 - if [[ -n ${EXTRA_ECONF} ]] ; then
5301 - IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
5302 - for opt in "${ac[@]}"; do
5303 - mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
5304 - done
5305 - fi
5306 -
5307 - echo
5308 - echo "=========================================================="
5309 - echo "Building ${PF} with the following configuration"
5310 - grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
5311 - [[ -z ${hash} || ${hash} == \# ]] \
5312 - || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
5313 - printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
5314 - done
5315 - echo "=========================================================="
5316 - echo
5317 -
5318 - ./mach configure || die
5319 -}
5320 -
5321 -src_compile() {
5322 - local virtx_cmd=
5323 -
5324 - if use pgo ; then
5325 - virtx_cmd=virtx
5326 -
5327 - # Reset and cleanup environment variables used by GNOME/XDG
5328 - gnome2_environment_reset
5329 -
5330 - addpredict /root
5331 - fi
5332 -
5333 - local -x GDK_BACKEND=x11
5334 -
5335 - ${virtx_cmd} ./mach build --verbose \
5336 - || die
5337 -}
5338 -
5339 -src_install() {
5340 - # xpcshell is getting called during install
5341 - pax-mark m \
5342 - "${BUILD_DIR}"/dist/bin/xpcshell \
5343 - "${BUILD_DIR}"/dist/bin/${PN} \
5344 - "${BUILD_DIR}"/dist/bin/plugin-container
5345 -
5346 - DESTDIR="${D}" ./mach install || die
5347 -
5348 - # Upstream cannot ship symlink but we can (bmo#658850)
5349 - rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
5350 - dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
5351 -
5352 - # Don't install llvm-symbolizer from sys-devel/llvm package
5353 - if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
5354 - rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
5355 - fi
5356 -
5357 - # Install policy (currently only used to disable application updates)
5358 - insinto "${MOZILLA_FIVE_HOME}/distribution"
5359 - newins "${FILESDIR}"/distribution.ini distribution.ini
5360 - newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
5361 -
5362 - # Install system-wide preferences
5363 - local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences"
5364 - insinto "${PREFS_DIR}"
5365 - newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js
5366 -
5367 - local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js"
5368 -
5369 - # Set dictionary path to use system hunspell
5370 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
5371 - pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
5372 - EOF
5373 -
5374 - # Force hwaccel prefs if USE=hwaccel is enabled
5375 - if use hwaccel ; then
5376 - cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \
5377 - >>"${GENTOO_PREFS}" \
5378 - || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
5379 - fi
5380 -
5381 - if ! use gmp-autoupdate ; then
5382 - local plugin
5383 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
5384 - einfo "Disabling auto-update for ${plugin} plugin ..."
5385 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
5386 - pref("media.${plugin}.autoupdate", false);
5387 - EOF
5388 - done
5389 - fi
5390 -
5391 - # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
5392 - if use system-harfbuzz ; then
5393 - cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
5394 - sticky_pref("gfx.font_rendering.graphite.enabled", true);
5395 - EOF
5396 - fi
5397 -
5398 - # Install language packs
5399 - local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
5400 - if [[ -n "${langpacks}" ]] ; then
5401 - moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
5402 - fi
5403 -
5404 - # Install geckodriver
5405 - if use geckodriver ; then
5406 - einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..."
5407 - pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
5408 - exeinto "${MOZILLA_FIVE_HOME}"
5409 - doexe "${BUILD_DIR}"/dist/bin/geckodriver
5410 -
5411 - dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
5412 - fi
5413 -
5414 - # Install icons
5415 - local icon_srcdir="${S}/browser/branding/official"
5416 - local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg"
5417 -
5418 - insinto /usr/share/icons/hicolor/symbolic/apps
5419 - newins "${icon_symbolic_file}" ${PN}-symbolic.svg
5420 -
5421 - local icon size
5422 - for icon in "${icon_srcdir}"/default*.png ; do
5423 - size=${icon%.png}
5424 - size=${size##*/default}
5425 -
5426 - if [[ ${size} -eq 48 ]] ; then
5427 - newicon "${icon}" ${PN}.png
5428 - fi
5429 -
5430 - newicon -s ${size} "${icon}" ${PN}.png
5431 - done
5432 -
5433 - # Install menu
5434 - local app_name="Mozilla ${MOZ_PN^}"
5435 - local desktop_file="${FILESDIR}/icon/${PN}-r3.desktop"
5436 - local desktop_filename="${PN}.desktop"
5437 - local exec_command="${PN}"
5438 - local icon="${PN}"
5439 - local use_wayland="false"
5440 -
5441 - if use wayland ; then
5442 - use_wayland="true"
5443 - fi
5444 -
5445 - cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
5446 -
5447 - sed -i \
5448 - -e "s:@NAME@:${app_name}:" \
5449 - -e "s:@EXEC@:${exec_command}:" \
5450 - -e "s:@ICON@:${icon}:" \
5451 - "${WORKDIR}/${PN}.desktop-template" \
5452 - || die
5453 -
5454 - newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
5455 -
5456 - rm "${WORKDIR}/${PN}.desktop-template" || die
5457 -
5458 - # Install wrapper script
5459 - [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
5460 - newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
5461 -
5462 - # Update wrapper
5463 - sed -i \
5464 - -e "s:@PREFIX@:${EPREFIX}/usr:" \
5465 - -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
5466 - -e "s:@APULSELIB_DIR@:${apulselib}:" \
5467 - -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
5468 - "${ED}/usr/bin/${PN}" \
5469 - || die
5470 -}
5471 -
5472 -pkg_preinst() {
5473 - xdg_pkg_preinst
5474 -
5475 - # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
5476 - # does not need to be forced into the LD_LIBRARY_PATH
5477 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
5478 - einfo "APULSE found; Generating library symlinks for sound support ..."
5479 - local lib
5480 - pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die
5481 - for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
5482 - # A quickpkg rolled by hand will grab symlinks as part of the package,
5483 - # so we need to avoid creating them if they already exist.
5484 - if [[ ! -L ${lib##*/} ]] ; then
5485 - ln -s "${lib}" ${lib##*/} || die
5486 - fi
5487 - done
5488 - popd &>/dev/null || die
5489 - fi
5490 -}
5491 -
5492 -pkg_postinst() {
5493 - xdg_pkg_postinst
5494 -
5495 - if ! use gmp-autoupdate ; then
5496 - elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
5497 - elog "installing into new profiles:"
5498 - local plugin
5499 - for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
5500 - elog "\t ${plugin}"
5501 - done
5502 - elog
5503 - fi
5504 -
5505 - if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
5506 - elog "Apulse was detected at merge time on this system and so it will always be"
5507 - elog "used for sound. If you wish to use pulseaudio instead please unmerge"
5508 - elog "media-sound/apulse."
5509 - elog
5510 - fi
5511 -
5512 - local show_doh_information
5513 - local show_normandy_information
5514 - local show_shortcut_information
5515 -
5516 - if [[ -z "${REPLACING_VERSIONS}" ]] ; then
5517 - # New install; Tell user that DoH is disabled by default
5518 - show_doh_information=yes
5519 - show_normandy_information=yes
5520 - show_shortcut_information=no
5521 - else
5522 - local replacing_version
5523 - for replacing_version in ${REPLACING_VERSIONS} ; do
5524 - if ver_test "${replacing_version}" -lt 91.0 ; then
5525 - # Tell user that we no longer install a shortcut
5526 - # per supported display protocol
5527 - show_shortcut_information=yes
5528 - fi
5529 - done
5530 - fi
5531 -
5532 - if [[ -n "${show_doh_information}" ]] ; then
5533 - elog
5534 - elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):"
5535 - elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all"
5536 - elog "DNS traffic to Cloudflare by default is not a good idea and applications"
5537 - elog "should respect OS configured settings), \"network.trr.mode\" was set to 5"
5538 - elog "(\"Off by choice\") by default."
5539 - elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
5540 - fi
5541 -
5542 - # bug 713782
5543 - if [[ -n "${show_normandy_information}" ]] ; then
5544 - elog
5545 - elog "Upstream operates a service named Normandy which allows Mozilla to"
5546 - elog "push changes for default settings or even install new add-ons remotely."
5547 - elog "While this can be useful to address problems like 'Armagadd-on 2.0' or"
5548 - elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security"
5549 - elog "concerns prevail, which is why we have switched off the use of this"
5550 - elog "service by default."
5551 - elog
5552 - elog "To re-enable this service set"
5553 - elog
5554 - elog " app.normandy.enabled=true"
5555 - elog
5556 - elog "in about:config."
5557 - fi
5558 -
5559 - if [[ -n "${show_shortcut_information}" ]] ; then
5560 - elog
5561 - elog "Since ${PN}-91.0 we no longer install multiple shortcuts for"
5562 - elog "each supported display protocol. Instead we will only install"
5563 - elog "one generic Mozilla ${PN^} shortcut."
5564 - elog "If you still want to be able to select between running Mozilla ${PN^}"
5565 - elog "on X11 or Wayland, you have to re-create these shortcuts on your own."
5566 - fi
5567 -}