Gentoo Archives: gentoo-commits

From: Thomas Deutschmann <whissi@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: www-client/firefox/
Date: Tue, 02 Nov 2021 23:28:52
Message-Id: 1635895723.53c4a222d26068ec4044c38df0859f008932c35c.whissi@gentoo
1 commit: 53c4a222d26068ec4044c38df0859f008932c35c
2 Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
3 AuthorDate: Tue Nov 2 23:28:28 2021 +0000
4 Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
5 CommitDate: Tue Nov 2 23:28:43 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=53c4a222
7
8 www-client/firefox: bump to v91.3.0 ESR
9
10 Package-Manager: Portage-3.0.28, Repoman-3.0.3
11 Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>
12
13 www-client/firefox/Manifest | 99 +++
14 www-client/firefox/firefox-91.3.0.ebuild | 1161 ++++++++++++++++++++++++++++++
15 2 files changed, 1260 insertions(+)
16
17 diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
18 index 76733045823..567d55d1be1 100644
19 --- a/www-client/firefox/Manifest
20 +++ b/www-client/firefox/Manifest
21 @@ -95,6 +95,105 @@ DIST firefox-78.15.0esr-zh-CN.xpi 564764 BLAKE2B df0b207411e7731c9238dd069fd42e4
22 DIST firefox-78.15.0esr-zh-TW.xpi 564733 BLAKE2B dfcc1df31227d62486a8a36428c413523e2b6a81f96fc91481fc35fa65744bdb06f92ec1b259a1b79d1e5b43f1cb16c6fefb0a74fe2d4b33538783755b165453 SHA512 b5b9c3c6a4d717fef8ca250e6ccc636be2de0b22988f3f1da634266622ee0304b59a10a194f424d2b6693ce3262658172fe2a015474de600e1686950f8b90370
23 DIST firefox-78.15.0esr.source.tar.xz 330819568 BLAKE2B dc8785613c2f72c55d484642c89c2545765a9efbd609bc7c2cf57b4a3a06a2ea22e6959e42b5b8af867db782e8b2097a67dec858796b744e47008a8e575e2316 SHA512 ac3de735b246ce4f0e1619cd2664321ffa374240ce6843e785d79a350dc30c967996bbcc5e3b301cb3d822ca981cbea116758fc4122f1738d75ddfd1165b6378
24 DIST firefox-78esr-patches-19.tar.xz 88424 BLAKE2B fdc7bf8f28b3e799551a70f1cec7a695f52c4712f3b28733648fcd7dac5a599613f4c3d2cfa169266dc62b65619b7f28c0e06d32317adb8ec0056ca79c87e9f6 SHA512 3c81dadc9bf74207c4e361605127ef6141d77700c5c54f1f9cd5ad3be13df9f73c6eec2f51d779558e4bdad1e7395c6aa8943a93415bd1786d461042bc03550a
25 +DIST firefox-91.3.0esr-ach.xpi 465504 BLAKE2B bba9ecb26423405f8a89c2f736e761e3726b13b430dc697be9e3ef7daa8de476a588fac47f3ec3c8f217744a33d9b62f7c8de919ed851044b97ea05292720912 SHA512 4f645517df27da2c02d59c752e1893ecb289d9213a6d4d0ab6b199c2562c8e16b14ee3a2cbfc70846cfe8e4a6fd4ccdf7e47e2963823b38a8fd2f70eef4c3421
26 +DIST firefox-91.3.0esr-af.xpi 433476 BLAKE2B 15e53cc1f41e4bc7b139a098d200a4cb2feae696101f9fef473edd5fb3a1e1789d4566d1d2b45c7fd8313a9aba8462c37adc32bf784142310541db7976a85b32 SHA512 0ccf4a8a6862676e84f001b62e76a07deaf0acf17477a1d880ae77d76925dda5e009f61c317475bad7b44908d1dcd2b4d57eb3618116106eb9f843abe988235c
27 +DIST firefox-91.3.0esr-an.xpi 516389 BLAKE2B 6149b95aa8b23753beaad6da38e808bdf8f2e2003e3b311901613651db53dd09bd99c16a05fce0be9c9927f54ac554bdbd885c0744a672dcb587a0607c1cfca7 SHA512 9539510ac122a856d0949e6ada18d69c59c4f2b57afe3a00bca71def119d34ec7342dcfa78128bb8eaa9bafb1b413404e2667dfc732a97c7f3ab544c97be028f
28 +DIST firefox-91.3.0esr-ar.xpi 575196 BLAKE2B 8061ac755ab45bd6aa29a15e9e1f005b576ab5338c7283af51bcb38d437f468f466ff5e2e979a21af917f42d6a92be731bd76fd1abb5acdea88e4f7675b05d4c SHA512 13736873b2bf2475885fddd0a806a45c6392df24e19198a74ad8222d1bad37cdf1713aec7db1e0b090fd66d2508a770ee04534f79ec8ac823a93fcf78d2020e2
29 +DIST firefox-91.3.0esr-ast.xpi 503834 BLAKE2B 78a7bfd02c844dc0e3d2611c395a9a337751707e31f3524d599b7ceeb740a818bdcde991320e9ac7634a840afdae6e4f34ba84aafcc8a4294f692231cfc86bcc SHA512 1d3b56ee24692071ba5377c157e42c7de8e8511cb5c4414b0918c2a16a06be42984d9a3d5aeb2ed99403d45eee1878862b550a922572834e7d71b48d13a54643
30 +DIST firefox-91.3.0esr-az.xpi 501266 BLAKE2B 7d2396b76b79467cc2702201adf1514ae9ce76aa8a7a2057decc1ab764830fbb77d29e2793f223feba9777b5acfbb3b9fad38c8520e9fd7d83ec8334f54f73ce SHA512 23719ddad4c82ae8cfcf6d7664affe46fc2fabdaa9352152ddba537e1a08ef724c4c5e51209eb3684cfe735cd6b4f0df80e5f0c8717152ee4b97957127103baa
31 +DIST firefox-91.3.0esr-be.xpi 631737 BLAKE2B 582375c5fc70712de533cc2475f1da53be5162adbafe0c808509dfcc58c21fd9e885e7538803ac41def37898ee3a41591633db9acafb276148eb7d9e3de9b6d5 SHA512 c7b3cb3792fbd45502e14d6f1d4d501f477204e73743bb61997fb778f047be286e4b112ecf65fe41f5dd00f8f48c0408e0fc7cb6a6579774a29a76dbe5d8ddc8
32 +DIST firefox-91.3.0esr-bg.xpi 585450 BLAKE2B 5a0d2f0dd9219a067bf91ea6b48d8f6c236483d6b08d626c78bfc6886a9b0044a6506be30fda219dee519aaaececefb00f896d4a76ef3d4b277e9993d3ee6a6e SHA512 c1059741da643937c50a5d2be9016cc5ad5260240ef020b38a5f7029e593e67ad0cc0136fe53353b1278faf55f5de91ab004e517c048f89a86db940242197b1d
33 +DIST firefox-91.3.0esr-bn.xpi 576657 BLAKE2B fd14c81b08a8328634abe5190a978a768550bfa6fd9e899995302c5e870c7ac875ae27a16267e9cab88d51a3703f95aae80061ac572aeaf6f09a8ca32f4d72b5 SHA512 71f2e15c69e3fefdeba61b29a1cbac4a8ee11d2427b898df21da9615ff72566da62e7192662310ccb8345a5afe971aaa4df2f08e5bb0e253112ca6aa02b64611
34 +DIST firefox-91.3.0esr-br.xpi 535048 BLAKE2B 1e48fbc6d8c1ec1b6e469c910c0ef3c6c4e4bca402c98b7aa249e47be6a94e64c4284b2ba248c475cb8429d751f6e43789fbf667423666dee089c5f05b72b459 SHA512 58dd2fbf4fcd0440448acf1e69569b69beeeb2212f2e585fec85e2da74d9d356af2a3838d98f13ed5bcb6f3aa6d9798a370f9d5ee9d590e76492586654a2d73c
35 +DIST firefox-91.3.0esr-bs.xpi 473386 BLAKE2B 01acc36f92e495d1cc4aed1521e733375215368a93a0a404de0b02644bccde69c99a01c0b6fcd93a248f94dd2ab696237f45821705ecd72246f8ac69f9051aa3 SHA512 739d6b139f848c56680f033c133098e369b01d7a28f4184f3b6bfdfc417db16c99a49136eeee219a5831e6cabd866253932c7996b1c0a0ea2b46229ff0e52125
36 +DIST firefox-91.3.0esr-ca-valencia.xpi 543528 BLAKE2B 4009e37882e4b7911d0766a848f6c0d5a60261ba3b4fec54a3cee352e512025d382ba547dacd795e2014ed6571ce2f3500a13ce665ae73fe2bdc50239d38876e SHA512 38233e4bf456e22d5108f8f1d6976bc2dc0ded61452ee61d5592c916344fd7705a5bcd9cc8b1d42472fbfef75e3bf7fe820fa0bf40c102e692d592919a3d86db
37 +DIST firefox-91.3.0esr-ca.xpi 542008 BLAKE2B 79412ad6a22f88b81e7b4bdff6fb4f0749d441b1f92b58c29143495c84ae3daa2f9d025dcd61e54792f7e6f15edcc505991110c5c08d98d0aa7f4aa4c5025b59 SHA512 bc730ee37a0ba57f9ed000be64b823fe22a97179aeacca9bc0a2b7e70c782fe49bec17a33dacf26308c0d12d0516788de3c5f07185d667dd56270263ebe95cf0
38 +DIST firefox-91.3.0esr-cak.xpi 568379 BLAKE2B b042574decb02ec495df059dc17540f026c7111c9318f95c0b7c1e54164ec37e235c766add4e69c79960e02d2793c1e0f296b7e09a0bd603963927a877447372 SHA512 42ef318eb9de709fe8ed8f6d844bebd1a81fa7245d3422e6d98441f02858167a4b83105fc4a95df8325c0ad831abfe4793c7b0b84b870dbaabe85613c00a551b
39 +DIST firefox-91.3.0esr-cs.xpi 572928 BLAKE2B dd95dc8d17ddfd5e019bca2808dd9a1c97ed747405b01384512c048c63738b4a61ac1a44ca141f8a6afa5139274d9eccd29b7391d6493254e7f4ce9b8580ce96 SHA512 83108345a1b0929c2fc147123d86cb84596880549363cfe9c821b209b20d4c5ad034850028b64794c4302364cd163685819a6c2d5753c05014cd23e75b6bd859
40 +DIST firefox-91.3.0esr-cy.xpi 549207 BLAKE2B 670df1ce98132291e2f8a2a956af0c30f8cab319023191acc13995e31d2a16c8536d54c91781d6a1e4f5f75fab4b399a23f79482f8687352709720882d143ff7 SHA512 c96f65d351331ca01f2ec6398202257280d6c0d1bca554ce677a83500572b5628e6394974b65e1ff11fd65dd2abed2f100091c43392f316e23cf8c2a631f44f6
41 +DIST firefox-91.3.0esr-da.xpi 540828 BLAKE2B a69ce9ca6e8eb34bcf8e3df380f383eaaaed9f0c4520373ee209f9fd704fb319fb079ba22df2983259885fb7f0831bb2bef91471d0f323d0fae917dc9f330df2 SHA512 c13211f36e19ae03b9b2c80df891720b86fd070c11d257aea87ff6c47abe905caebd2db3e7d8b7d5ee9cd7e7f64cdef12d0cd6e6fd12aff11e34112e7f929f83
42 +DIST firefox-91.3.0esr-de.xpi 561498 BLAKE2B 1527caf596272a2e532491b3cd1614871a1e312ae05769049c333f33bfe9b66417e22acc796bdaf0cfd21833e49c767254859f86cbfb92fbd5822aa367f8d03b SHA512 f42dd3e8a9365c709ad39e8ca96dfac475c3aa48ef5b554f240b95b9ece27353d7fa640b5321b05a44a7382601367346128a1e00c8f010bdcb4d52f30724b9af
43 +DIST firefox-91.3.0esr-dsb.xpi 574176 BLAKE2B a40133c5575b6ac80a500d7e4d6c8abb0ae3084cd9b926345b043b66c85320c08f15842fc316110f0d5a413a5688106779211df2b1d55e8fc9fab7250d737297 SHA512 091fb20d42b60c3a73e0b8cada6069b4d168de66751d72a5bd878cb19d8b1e222ede057bfbed72c4a16175bdc9d62dcba20ff60220ab63b562e3565b862c553c
44 +DIST firefox-91.3.0esr-el.xpi 647258 BLAKE2B 585223a672140f88e63f39b26669dcf5d738ce03975838425698dc78d16464302c6b3f7eed76476e343cd9d86f89ae2928d2b664c71c1411f1fac750a351b266 SHA512 d76784d0fbe38cd0e438bc9ca86f218afdb8264d3850fba72909c69158624cc5d98018c9588adca3f44a1593191835d4eae8716721a33d114964e55b3efddbf1
45 +DIST firefox-91.3.0esr-en-CA.xpi 516472 BLAKE2B 2248530d7b3226fe9c9ab2c32769cc9419f1eec81696961469bee9bebefe44e45ea6b1b6f063f657fc0f7062e738d78fdffe3775e08fbdda0a7f44f28fc44c16 SHA512 e720fc864b9f2a6a1e00383fa3e84ad7bc9d6a7cb1104e172bca6acf89c829e5cbf638be3acb47d2eee2d029fe49349b1cf6fcececd8c2b8a51a344b91135b5e
46 +DIST firefox-91.3.0esr-en-GB.xpi 517069 BLAKE2B d7cac13741d46b7c39f5b812406aae16caa3f6a3f2e67b7d52a85fa84f144e04a913cb2cbf9efbaf2fca3809391aae94bad79b00658a210e45d671b5593a923f SHA512 4aa91264a254076404d066779badbe57fa9128f74c410308a3c637a4d684544b14110a8ba402ef5c8849f679e83bb92438cda470107ba1f00fdbc875299498c0
47 +DIST firefox-91.3.0esr-eo.xpi 542949 BLAKE2B 24f79414c1b4519d288fba4015e3242ed0f758d067c91bb38ee23178637745e03f622fb640f9edce0d9e3c31c59840f7d4d333ce678bdfa51e62caeb6bf438f0 SHA512 3c9119b00b56ed0ce80c5dc96a56aa852715c2512ef779dcaea192efdb348e05e2478f9681681b456038591295be059e86f51517e536aca38a65b8c17efd1523
48 +DIST firefox-91.3.0esr-es-AR.xpi 554544 BLAKE2B 3e00c260c9d7cb2dd51c7676ae3251ee280bb68068b7b4fedba83194e021d6bd6934c6302d5393b32fe510f6bcdd92790b467b1476a21f27469e8798c02ff9b2 SHA512 4d1b5ed49025cdeb3c9187c54aa8cad3517bf9e2fbad6ea9e279a1603a81e582837abf87990a6e8621a18bfa13f3d70ca2c1903a3b46fdb5060bd4d0529a3067
49 +DIST firefox-91.3.0esr-es-CL.xpi 553849 BLAKE2B bdb3803e846117dacb8e0eec2e2ee19e409b2186c39d9eff242edb7ad5ddff15249ab8bbbf75876e7f3d18f108e6d0bc2d5573a0cb3e5fc740777fccc7f4bc99 SHA512 7628ae3ffd00a980bb74690180fbda6d0de3c4c664c404e93d3c61796b0351e71a22195d36a41bb9a2de182d192a0fa5c6692914bf3f85c50e30dbc052895ae5
50 +DIST firefox-91.3.0esr-es-ES.xpi 542847 BLAKE2B 915a85467ed5b7778df38436325c0cf6faf1d4ec208a8327c08d87788b6fd0f2fe12c9d6554c48e891c92ab33ddc0816b1f7527bab3786b46171ceae07bd93c5 SHA512 5f6e62752e9373445352ab1c52dc71f03c4cb97cbc0dcc246063ced993465b518c5cc30e6d66eaa4249f46078df7b86540100213c6d90497840c224d63133ee1
51 +DIST firefox-91.3.0esr-es-MX.xpi 556754 BLAKE2B fd611f581571eb90c5c8be76a5be36d2a9208bc9af5b50dca2a1f5248e47f0b3b31fed7ff8df83c97bcfeb1a0906dd90f7c8bdfb09ec5bcc3f9161c0a8756d22 SHA512 5e6cb4e59f083d34cfc035967e349a2e25f24a443499dfdb06da3f059df3c22a52eb5fe996eafeb2f374e04f130c18e18848aee9188a76a230f9c74d30f99b14
52 +DIST firefox-91.3.0esr-et.xpi 494584 BLAKE2B b00cc101d67003d8cfff27194224fef4a05f7dd3d9bb6ec5adb8fbecd846ae13abf86641deac6b7471a4b9251e4a8519a05c4c2b07e0ae1861879e082306feba SHA512 38e2c8bd90000122f7437f1a282e6d62dcd48ae6aa209016f3ddaf42c0cfeeb914cc41a0b3231e8b8bbce23139d5664d971e2c27fb5c7f68d74df62c482e1aeb
53 +DIST firefox-91.3.0esr-eu.xpi 539373 BLAKE2B cd47d852c57f93bf415f047639094c4d5193c81b69c65d743eac9c17510a6e64907fb753cba55f6e75ae4b748b8fdeaa77d9c9262ef91a3dcc218c3061a0a334 SHA512 ef6d06fd530c38d5ea224db08c849c4583d6901a528e918e9bea3162cb4a73fc3839dc45592c1a56efe3808f7d1938d02399859251edb17354db575980a3b360
54 +DIST firefox-91.3.0esr-fa.xpi 570986 BLAKE2B c98f1b4aacf241d4e479fa2e8826511d5e1b97b92c8b148bb518abbe50c0cfb44d44bad89c2717fdb13ef2e84a6fedbc6dd6216d60ccbc204255852a3702c967 SHA512 6411e81d81f394c89be6f2df9dfcd9185c3c2b00f5bf9f163281e9d5db1e51a79009c5b753c0d739eec94f07fee0b82c91c2974b0f6e7182ae0baadcda1e27f8
55 +DIST firefox-91.3.0esr-ff.xpi 486054 BLAKE2B 45fa8a6fa3f3c257c122b5d09b982efe57282ead478e5cb74728ef10c1e0339d67f033c23daf3d20fb851f25bf64265720c1b4f6ae67bc787e19f4be212ce5bb SHA512 ae8f4bce9833b73afdbb71116f24ff1895fd3d5f077b165314743bf0156d2eb697f1a26972272499bb70447336c376c6b1a4e8af9f19f347df1d999af12ecb03
56 +DIST firefox-91.3.0esr-fi.xpi 540701 BLAKE2B c39cce82a73c14a1a5adbd2d1e2a489f9ce383874db569498afd956e61e3d1e9ba84f98928b73b31dd85147642f098dd8633325a5f2f7a1c6c6227f82fbb36dc SHA512 6ddff885638217fe6935bd8e63cf9efef0d675bd50b368e22906b360965684033e98f73f66ed152db3af6439d4626b7aaa1a765ee2a49721163986f7cbc904c3
57 +DIST firefox-91.3.0esr-fr.xpi 565634 BLAKE2B 81c5125436f1e29373cf2a93927faa2c7f8cb4d04302e358889966ee98c4fb11748e3755ca04b4709686a3444a664cf8d7f38aba70c734fdbcdab7c78940586b SHA512 88d259d80760cac53f9fa6162843d39d46020dc52dc27bd63b72c80b20876a0a255a42686f67e21f526f79300e4258275ab3b7490fd936f386908fe432047972
58 +DIST firefox-91.3.0esr-fy-NL.xpi 549525 BLAKE2B 45bde4730b56bce4119943ea3a62d8f298a38e0b9abf5f8be76f5a9f81b71dc1fc15fb997cf996926bdccd38b106ef267583e7ee4c7fd3f186fc7dcad003f896 SHA512 d6a6801e25d5ed19f2c14b7d5914a5057d2c8099d01874b703357206a3b41c888a7e190fbdb36f6c2facb8fec7cd44e3cafdd45187712e80d28d7113f570b563
59 +DIST firefox-91.3.0esr-ga-IE.xpi 471091 BLAKE2B e72490b6d6a66b42acbe60027b78fa49900a8dd5197f94e839e49cc75c94408c5287bbaabf3fc29a2402849e3c4f6500298754e9b11a1dd5cebc8e2b253705e5 SHA512 d515fe37ea675e18f853b762d0723f1e96d2a2ad2fbc8a367b791533a6879625d4f6d1b664a4f8d80432306127c6058a7120d6ff674bbc7e5c52269267d3d27a
60 +DIST firefox-91.3.0esr-gd.xpi 545671 BLAKE2B 99ef84187f3af2b5a1f93ab20b54df7ab9827d352dbe85d6f720cecda0d1e4fb2c0b433e68fce6e7c83f05bc1c3d3b308fde9b1440cb181698386488d2824b30 SHA512 77b88c58e129e76944c74dfd000d1ccf01980ce04829693f94949dda709c4b11cd01d6ab6517521d36f95fd049a8e08c943da4fbdf598d638511b4b640207b66
61 +DIST firefox-91.3.0esr-gl.xpi 548590 BLAKE2B b41ddc999b13fd51d6333c7e2d19759602420b92099c0180b672ec750ffe1b7741df3c41cba7529333986e498f5b951f24768ba9df83b2d78d5fa220cf4d5c7f SHA512 e0ab44d7fcb4baa364a6f74aae02ed1de97c32c9b738ad7a0bb7ea16925ed7e808485bfc2a8aff98db5ce965420a0af09080f3f0976989c40e591ef94de81019
62 +DIST firefox-91.3.0esr-gn.xpi 566594 BLAKE2B 4465cdf59dc74823ba58c8c947e63e3ea863b75e04e3bbe19fefcbf6dbccaf390dc5ffc8f55328bc4f0e6daa575377a3d26a7d78bc65254e6853bae7a35a7d60 SHA512 f3d4d2cde4a4120d1c5ef323e5b2d8ce0109c0d2be32cc56bd3068dab10bdd762a1728e9c8014204658a5af21f763c0d6bc96ab11d9d6f1265bce3de3f648f6b
63 +DIST firefox-91.3.0esr-gu-IN.xpi 544926 BLAKE2B 04eba9c891297d1545bdf7f466ab366bfe41f89db178f9315fd161d14569cd836005b2730c8e2fc73a0cac873b3c3d71373fff00d14a26d1fdcf5e12052b27a4 SHA512 d21da8323368b989cc0a5b372e86fd3a7df52d0b29fe5448d0a10d2d43ea7bbc5d6ce137a1974d3f19040416510a7a9b75f264429cb6e56e4a072bac471491f4
64 +DIST firefox-91.3.0esr-he.xpi 563925 BLAKE2B 47409cab870b7976a51a6f128dc7ce1a323f0c9ed4a8c0dc00632087dd06ced8b7dd2ea22e7393ad2eb12f4b1e9eb61f6cd3c404dd57be3ed2327736cdb94fe1 SHA512 af138a527cf815ba6e9b9dea93a5ec1d6348a3eedbb6dca15fa3b4672bcd122b64785746d5823f661c631773af74f4a12ef8d2c98dbcf7e81988bc74db0df1e0
65 +DIST firefox-91.3.0esr-hi-IN.xpi 575956 BLAKE2B fc7f15f06b7d16e66b73ea6aae0e87bee13ab280d4a8298b45b270555c70bc661267dd587d1424f50b07d535bb6fa24ff67423c8913bd2a17ce1a459bd3abecd SHA512 04563b192bb50d580dae0d8ebf576328e785f3bf971f54e4abb3ed52f1edcfe7154283396daea15af72cea075426013acb4eeb13eada1c06afc69f7bf16d21ce
66 +DIST firefox-91.3.0esr-hr.xpi 544690 BLAKE2B efebd168624b686678e5cea3122b4eed6993b1b001ae807e677c71fa6b354dc86d69b5dd52bc462a359ca256053c117afb609ce58a7090a9216937f70771cdf1 SHA512 03a10939a2949ae3a4ce0fd637f892bfa163adc172121c45ce85a68e49055b7f84117d8dfabe974f5e114fb31e0d63a50cf6116c23e2cd131c583c01f78beda8
67 +DIST firefox-91.3.0esr-hsb.xpi 570287 BLAKE2B 801e6dd924e9987bbfbcf61dbfec8fd026ada2e0a8f439165a93b15783a749cbe911cab7746cdf7c62e255918399f988e8febcba383a0b25e4f3fa2e65d0729b SHA512 2717cb31d6bdca52098b14e8cb640f437ca2d8084968283639f8cf08d8d1ae9887891d4276d8619da2d01a03ee5be8d4212b1b0691b53e1e9a08a462ea4e3790
68 +DIST firefox-91.3.0esr-hu.xpi 574172 BLAKE2B 829fe11f64d78da1972d3405e636bfae83456a797414aa992422cb455e17ef9cfbcc608212b99e312b6509786dcf60b941517721ad5029f60e903fd9b126d1c2 SHA512 5dd972b42c1f58601bdfa2bba3e9ea8d2358624428754994ac61fa7b31dce0e0a76b320fe36324950a31bc5d9770e52acf627d7dcf7771af6b4b820df8c11f95
69 +DIST firefox-91.3.0esr-hy-AM.xpi 599321 BLAKE2B 02f3a479176e71f9c225bdb4448c9e4da1cf111b854bf0342617a08906429a101bbef29cc24717ebd71549feaff378e22d526318f58a67bad4026e8b6484edb3 SHA512 1e986afb36a0f28d44735700192727645ad8116a77d06cefb79883e7e223c8cff5f8721bf218dbee05e078cd355ac6683a143a7c717456fd96c91411b5401cbd
70 +DIST firefox-91.3.0esr-ia.xpi 539816 BLAKE2B af6e24bdb46fb7ef6fa4806c4a191f90e2431fbbe377c5d1ee0fefb33d71005f1a79b24b201df34d1bef9a233103cb42162643274f7ce77bca149a27c34b2434 SHA512 7478a1c90d05b800dbc8cbdf286c1b55e6377511e7a479fdd64bc02d5d8c4ba256aee30a84626a3ddd3ea81a795eed826f85246a1cbe2272523578bbf913d896
71 +DIST firefox-91.3.0esr-id.xpi 534169 BLAKE2B 1efcfd47aaac2a053a3bf5bb86b1dded26ebe572dfd1e3a8ad431aeb0191b1adf09cd1908d87696eee7c35404b20cac3c5159b3b61abc346595bc678945f786f SHA512 e9df4affb1fae3fcaae299a8953fbfa0c703123bbd75519d1c20668e64d7cc0e50705379871a1587aa0a8ac274e3fd37118bf36adabee75e0b884e04aa151131
72 +DIST firefox-91.3.0esr-is.xpi 481673 BLAKE2B 490f43b879857ab81daed8996389910547cde64eb97a60e69d138b19a971a5a85079f299eeaf6d423ccc3dc483d5a888e20404cda2d7f5863b8027a69a88b613 SHA512 70f3245bcc3302c59471c3e781ad07ff076e56ae24affe06280bbe817ae0255a816aef85d958b3ff873e9f52954186460f102d5172271d78609790da6ae15e63
73 +DIST firefox-91.3.0esr-it.xpi 467592 BLAKE2B 58faaca1155250686f459623d2dc16748575795bc589edd2487df734802dba00755bd9dd191f91dab97461746a04c160730fae6956e8004445243e712a5f48b6 SHA512 7d5b1ef7677d735267d81d9923212ce89e44fa39511a0cc8ce947c59517e5acf43ea498d23fdfe52625390a031a7eb347a2aa625ab46de97d17c6203192d7e51
74 +DIST firefox-91.3.0esr-ja.xpi 599763 BLAKE2B 51cdfeb9f96f2555c5abe129a1685494fd845a75a2924a602a4f29346cccda2214107bd7cebd1f3e13b39af3c088321c556e00b3b1cc25237397cbc82989f0cd SHA512 dc124952e98ac7aa56dde4621737d5ed10faa520508de67de940ff45488582bddd920017700c8879c6147542e493457cafed536cb7f3feeb1e2e05cab186a7ef
75 +DIST firefox-91.3.0esr-ka.xpi 601252 BLAKE2B 84a8430f902b8bcc919459d26f7bc1f5b669dcf8791b6d966bca09fb35fbfa9be29368e24a64b16c89052386c14ebf3a7441efdd7447b535fbfd0ee8ca8da004 SHA512 06338fb80b444589c4e01630b015b79d0fb1589b19e067d54e03aad81245561aa9659ed9ea1b5fe016fef74a93c315ab199d13c3379386fb73958a429ca2b043
76 +DIST firefox-91.3.0esr-kab.xpi 558644 BLAKE2B 652537fce44914933ac544ca261315bdf7f6897c7fe56ea985bf5c4abd8df868aec5ed4a2e77f5c61586d3881374909ed43196a3d00f6f3b809a259b582e8112 SHA512 413d0c4937beb8348e034d133e10d13e47d5bc2dc72b901d7a2e8d74364735465b90187cd23d455f78db30f48c94f531851c8e9e8a026ba6e61e3d18c19170bc
77 +DIST firefox-91.3.0esr-kk.xpi 615023 BLAKE2B c261060b04c2f815e57b0334e6a39c8d230fe04f80759e790857505d3cc21956c886de892c9c73136d53b3ff5d7ae02b7892d5a333c021cdf8dae1bd01fd31c2 SHA512 fdd4430f4eb6c1a4bc3ffc0bd91732286b7656637eb1b88b2fe8da99dc450b10971ae46caa08bc864048f801bf715c3a8be9d65f7b99f34b1e68a80cae0657e1
78 +DIST firefox-91.3.0esr-km.xpi 545289 BLAKE2B dec98240d0a2077b4b8171260cbabf8be624dddc114e37c886211a98b7d15b0af09865f0d1a7641217f62bd0d3addb0ef35d410f3eb136e2da87b6b05655908e SHA512 48ad4e4eca64f38830867475bd6eab317f086530f1baa9e4be8212913876cb57b29b715689d2a6dd2706c0fab73fd82f5ff0d09a788a2c67f351cb89b834eb2f
79 +DIST firefox-91.3.0esr-kn.xpi 508936 BLAKE2B d00c95eff39a028ee5462505133f1dd691115b7879c6d32db0f4cb998b33ffe0cb0dfe095af6bd0b721156acccf8ac68ff72d6cc3915e414c710ee66d1810126 SHA512 17491cf459f0a71e2b14b05ca36472854a9b379605c034f69ea868e751e6ccabad779384c5c3b755ed13f6b672957788334cbac7e8c4bcbeb585085f7638e48b
80 +DIST firefox-91.3.0esr-ko.xpi 585482 BLAKE2B 715cb964601375bd2676a456b01b20c5e0cc7aba9bffb94a455fff9e3a07413c2c7ff47e88706b7f100fe33ff15437a1e0274575b061d00b254208a3a5b7fbe6 SHA512 9921b4b07cb25d799130f9cbe469025dad111dc774399c86dce39e84541030f46ba3f3c25ea7ddde072e4796902856741ebe97acaf85acacc22a18eb9cc2add4
81 +DIST firefox-91.3.0esr-lij.xpi 482099 BLAKE2B 0526982b5cefcbd5d1d3772504315672f66744d4cc99c4b3afe9d338cad436b06f58a5197754ca87a68832859cb8e4e41947db5c4197efa08b263d1db664c860 SHA512 9c445535c6de513c7911b273f4ef3849ea5e87e58e81b10e07f6c041d255af95578f7f09100fccec92488a47e1039d2ad4f10b05834e61829524c2d64fa2e647
82 +DIST firefox-91.3.0esr-lt.xpi 567966 BLAKE2B 7df84a326c101085dc0169bb259de3df4cb1855d361dda6ba794556def3821f49a8f77a0bc8339c2c84a077f04c38c38ad24dec1fd6b472a25bc90401587242b SHA512 c1f1c5a29a915815bc16dda84e38b1f325361f1e859df5bc746a49196cbb6b30094f9a57a6a2f5b6eb6ca4568c8d94ca51456af601eb45181e17aa5d0df42951
83 +DIST firefox-91.3.0esr-lv.xpi 473686 BLAKE2B 44f92e2d9f24b5737237b09c280fd4543dd161ce8ef5832eabeb1e68bc1f3df564cec96e73fb30e4a7febfd9a5556c134f8927b965793b7eccce4d0464e59dfa SHA512 336efcb898c957412bdb4daaedae7988e35a03e32ea489e15e1060bbbce21c26d486c52626313245e03de41d19bcf35063dcf367bb490a40171322e7ebed597b
84 +DIST firefox-91.3.0esr-mk.xpi 473756 BLAKE2B c161f1103edbf0a62d4d8abc3ceb5145382761110157dd8e8c7b894dea1c11cda876df0f3e74fd2ba022e9627991f62c65df6e27d022f6b92d13bd83b662b1af SHA512 ee4c6a00c2af8b53267e560ed57665996d0668a2dec42eb960dcff5d474557738485f31796c014d3d613a624e805adcf29a94c38290c0ec62150db07cafe09fa
85 +DIST firefox-91.3.0esr-mr.xpi 547134 BLAKE2B d61d0ab6787f5c51039df91313950dcae2d3d0bc6364171e4f361f13b62fe483a0c3aad4ac3bdfe23b9dc764affc95f51592140a98b03f8084d318c0e77d6656 SHA512 130998d5d61d892cb60aa375d8164cd562b328145b110ee5b637ff7e642fbc644825fe7e45f5c11bbb198a51d034ae63143c8a968a9747f0dc7bcb4778f81053
86 +DIST firefox-91.3.0esr-ms.xpi 457537 BLAKE2B 7dc872a84e97b0ca1b93891f6c372146129926906171f9923b2d3fbebfc29b01448ac213af699a86f20bc8249f8871cee3d5135868a27a582c771bc6abaed035 SHA512 1688eca7a9a82c13ff3e8d539097ac5342b3399fc5c057f39cbae2377a3dadc641240ba2814745a47936abf0f4527e5da21d7cf2ea26939029a448318d7f812b
87 +DIST firefox-91.3.0esr-my.xpi 530545 BLAKE2B 7df234a0b9759c44aedb8b04e66a5a9b60b0e611111bf3c078a7f22100592b2b1d04890b500846dddf1f77a2f4931d9059e42c649c92920c1cd57ddfc7162af5 SHA512 5e6e9a4649fd5008024ac45ef8161d6115446aca480a018599b154f0cc806ea737e515769fc28065b6bd48824e4dc88a88468946b9c6bb49ee6a405979ec834e
88 +DIST firefox-91.3.0esr-nb-NO.xpi 536416 BLAKE2B d0001f96738bcd509fd71a093308ee7091e604acc7544d0ca57f7dfd25f21445b338f53e77f334b4186c4f9b545e5a00e0e97adc3c748ad8ad99bd24c0d22954 SHA512 1bccd54f8c0f0481535ad276da2ac52231f2ad425e8fced16b8e17010a30142162f266d089c9fc2a57e4b1c8e056a2babc970d56c4e4f64952f6b4b36e7f066c
89 +DIST firefox-91.3.0esr-ne-NP.xpi 486609 BLAKE2B ffcb6c7af30e0b9c87985956668b2b1679d9befa51eeae7d7eb4b90ff9dec5ee10395f290a9da3dd3e54e171bdc8b1bc2c9afabf8e13d212471094e9e033a558 SHA512 06296bd9d8eab79b19c3bf636a04354fd96d4c2fe1903343c48f290aa9bf43fd8b2d175e37e6ee6a9a6ace1d60b7494a33187a94e70d884541af3a08b26c7567
90 +DIST firefox-91.3.0esr-nl.xpi 544349 BLAKE2B 95be5d0652cd9af9a263f800f08e0d1da7b7f20b88f18fb6249b397d37e2989de07723bdbeddf6beea79a513cc3a9fe35664e7868d3a42ea08ecc1839f7f8d38 SHA512 3c608305a915693abe99a99d03d0bcd96ec5a580f9545e061f1e9c2438c79506445310f216c65b4d62f0cb507467fd5e9f06e128eccd10270b2a9a172b40b6e4
91 +DIST firefox-91.3.0esr-nn-NO.xpi 539202 BLAKE2B 4dc36634d372292efc74d82a0b28edb1c35ed52107048c3ce9153950254cdc18c82f5b7e6ca2c463232d3a7b3cb1a2752b710a6f4dfdd8169232bea34ed23f0b SHA512 e4bb708b1eab90c28deca352898956908bd0fddb5c9f5f3718156b53f6498a3d3608b6e614f7f09f11ac2a7d86e4da483ef431cba23c51381799377900d04436
92 +DIST firefox-91.3.0esr-oc.xpi 560173 BLAKE2B b89c674524e093378442092444491724faaaf388f47ea99ad5e02c15b8aea32256f517c83acbea59a04cd1832eea26fe2db7a0c2861b4643bc65be858835ceaa SHA512 fd30f7884ffc3c5d202ebc033762d8cdc03118eedfec888f2c399d182707ff8600e4189776f9815e5782478859656c1adc2c8b080e914c01928343dd70fb8ab4
93 +DIST firefox-91.3.0esr-pa-IN.xpi 605327 BLAKE2B b877537f8cb8b381be25358bb18dbc8b89df4d00765af9c26e9fcb4aa4051cc95c5cf281f0a1ddeba8ec8fbc6f646bd7ace0d9cbd1e49c1f694e942dd186aa08 SHA512 6b6d5cda222b073a8e3dbc61b68f4460661f21686d03d81a30b59430ff41b32a3190d14f5b011e5b251edbf881d42d673c4adf32d7f75205772fee2a2f2f68d7
94 +DIST firefox-91.3.0esr-pl.xpi 564260 BLAKE2B 3a6de18dc86f1232579b72d45d17daf60ce75b014495d0412fe39df6bcc83a420a527a3c9ba7af5c105b2ed1f33ba1de8a8f4fe9e20a07eb0f1fbc776cf887b9 SHA512 6be4b84817d4406b74d339050ab2fc73e7213bacc54e111a01edf9e79839d4513f5b8e5e8d2bab33af9914905a56b56fd5e4be9545f2a51ccaa256a8ba2ad5ff
95 +DIST firefox-91.3.0esr-pt-BR.xpi 550106 BLAKE2B feccbe76d93838c309dea0284c2d3767e4c224a44a9fdfd009f47260b32db25327435e7ee437dc269baf0ab1fbffc594178414679cae152d2d68fd925bd4371e SHA512 660d7d293fec0d434dd5184176e41a4d8096b2d245206741c3a997674e6ad55c0c1ec604683e9419d5627dc3932c624ccd160eeb535a097d419b0d9d23d4d599
96 +DIST firefox-91.3.0esr-pt-PT.xpi 553474 BLAKE2B 138281c56c435734cdfb59ee50c19958aaba73f53abc32ad565bbae0b2eec42cb697d48f742b979019a7995b39fb07f6b531de9f682e97503c89013967966f93 SHA512 6855854c6a7cd009e7a5f17833cb09a1c85e2a56a333e662252d15ab0eac38b20ac61822bcb23ac389ac6967497211e20bffd22047ea15241bfe98b9d3cce111
97 +DIST firefox-91.3.0esr-rm.xpi 544478 BLAKE2B 7df044279ac4de819ababa59600420ae2eb8d8d8dd76fb9f76a01e82436d4d592e2010149bd7d89f1ebbe21616577af2dff799f6afac5aa86050281d54465b22 SHA512 bb8dd03ce00c41c6986e6b21d16f1df40ba31b21b6aa42366745c0cc616ca7fc1a9780f11e588796e5a1c4cbdb05984f933caaacbc274182fd3a88000821d66f
98 +DIST firefox-91.3.0esr-ro.xpi 545828 BLAKE2B a24d75cd7336f3b3387322425930fae6443d748f3dc32f4fb45c772f60e3961fad98bfd53418559a3ac32a799bd1480c85660cf99a16d19853fcda0cb85f2811 SHA512 831957527688f21c45ffcbb5993d11a7ace7d60ef3383850c5c03811e876ac4bb768766b3f5d132210656ee19acb3748bb5216ba105bc61682b7a7efed9153e9
99 +DIST firefox-91.3.0esr-ru.xpi 636051 BLAKE2B 266ac362c40d49f8077fd96ba8f95b9825426dae681ae7975f644c8f06a1f7fc676daca67a972e96313a867f4f2a9d89164dacdeb76dd63e4e75fda469367ee7 SHA512 51c47c04d9ee5890ff3a9656a964f96ee1eadb81dc88e2fd38fccdc9e052ea560c74d95a5778999906a508c8e3bf6fd748d5fece40ccab507c08262c14bacf3e
100 +DIST firefox-91.3.0esr-sco.xpi 513233 BLAKE2B 33fc884e104d8e2044dffbe60f765aaf443555b498b2527cf7ea22d54572117fe94e478151d5201927fc3a24e1c370d6a171c4c05093bafe6c6ba4fa4848389f SHA512 8b6108c41f45eeb1bb357bd1003c96c7e93248b9cbe10e8fac1efd28052128d08952c061fea66d8374ed01b90945a6c7b317eac8ced9fd03781d2850b7d366ee
101 +DIST firefox-91.3.0esr-si.xpi 497218 BLAKE2B 2729a8ff6ee4687c7c7cd9a917c20d01dc49f8ba5ac12c4abed541104c8f505814db86b6f3542be1add8ddf170996e8dfdc1b4fdce7fc011b56767124fbc12c4 SHA512 42ba20d16c92b49f5c165715b67ad9d3d686c08238040def58ecf2874b3b5e3ef26c4c3d2afc248c4ae658922c0b5c0bf75b9f097850cf56d6d7e5b26209d76c
102 +DIST firefox-91.3.0esr-sk.xpi 573547 BLAKE2B f14711ddef612ea1dffbdabea0f545928f2c3cff5cc6a5fa8a325495e619a8bd49f1dc10cb980b95f8d5394eab6052f660a39ed52e59a9f24a920ba80073fe92 SHA512 bd096c518c13914457abd0720eeb5c48202ba9efedde512325ac9004d778034694c0ed6543f893639588aaecff2caa93dfdedc228be744f54a873f9d92fd77b6
103 +DIST firefox-91.3.0esr-sl.xpi 543046 BLAKE2B f9c44c70835f8fa7c9355c0ba8cc49a79e126569bcfa3d6d794cafe3efe6d804d8bdac9d2efdbd88b38f4b01140aaeb43ab434de985475daf387dc86f0ed3a0e SHA512 6f3561bbe6a2e8a4862fde0e65ba735086b181f30ae61386a391460d844e2b88b73c969d4ad963efca7f2cc96e1fc42d9adaf2de13490dec445f9af538975b72
104 +DIST firefox-91.3.0esr-son.xpi 433071 BLAKE2B deef2d272dd6df94fbe37cb76f00e4c657c2df7d96e6477972819f92f22750c77ebf9525974106156650cf2dd90914a2009a0c5c3368959e02af050d4537880b SHA512 97dd89f0e188f8227b88982b203ce627a39ed844377337c9959a51aa72a10166811b50cd58e2bd9b7692d39a6000e3d95f6139b017f92e9c6044f74874aba50d
105 +DIST firefox-91.3.0esr-sq.xpi 562512 BLAKE2B f1feb2531d4670cdc6011deec368e906f71dcfcab56bf7662a5802beeef1d5b8b5e7ef82d765a4baf6b37e54a245fd6fbb41bc57e2dea18939cf0d2b1bed1273 SHA512 0bf7b349b13e86d5e08741fd12df0f0894f1da560830c381b16f50925ad3c67ecea448c115cc7338915e77415b706b6b52001af48561a1403b6274612a5a4c36
106 +DIST firefox-91.3.0esr-sr.xpi 601681 BLAKE2B 0eb9dbe2de8b9e23cb44ac07a2073a2f7de350c0ce26e5ce7d36efabb906e5fe063f5a63ba91cd32a9176788e74c6c5c26aa90280ef6b4f71872f095453c4b18 SHA512 37a9c7171560b39834617c1444b84a6e748aee3b503a6def9c3d53ef659eb0bda32ca560b71c7eb822f18934feb55e208e9c77397dbbc9d330b8dce77caff31d
107 +DIST firefox-91.3.0esr-sv-SE.xpi 547621 BLAKE2B 08bd3b771cf6eeeb153d95e7d23665b1f0edbb16fd5430a4aeba3198609eaf2534e8ad4d93cb5e9da030eabfcb0688268392cefbc62b10df5202e0f5f83ce2f2 SHA512 d93d452135010f1cfc2d18f1f25f15977ad1a9fe08fe5a1efc6ce5a3f3518b5148f47022fbe004aef40ae0269beab20d39a6bfcff4eb33456e7c3ad6b3c07548
108 +DIST firefox-91.3.0esr-szl.xpi 522616 BLAKE2B a6844fbd36a56840c2ae480ec830ecc8a963805c7c135b05f6099df59d10bfbca4074421d4d41f4cd2a90b942e70ffec6dc0d0eafe9f110d5feffdddc09494c1 SHA512 8aa238e140e1e9c9a64103b61fc3497dfc17c97b13a0878d4dc573deaa70c80681726c9d26a92b0cdafadeaa34242bf3a72b4a7502aefe4ed6886ff23341b4e9
109 +DIST firefox-91.3.0esr-ta.xpi 525427 BLAKE2B a87bfb00781a1de250b00a5006d5a500a5e84e540bda38609bde9a596cfcb70d798295ca4b28153dbeae93af63dfa0631365991d89a5489ea9f2405f71cc893b SHA512 97070e3d1eeab0ac44cc6bdaf3de361e28be5041b58fc97a2c403cab948842a6a4a0efa4d80b6804d9ba67020f23291cc82ada5e843207d804c2cbcdc2d79cb9
110 +DIST firefox-91.3.0esr-te.xpi 565913 BLAKE2B b3be6348add4cad303525b90ae55a7681bf05d44ce4cd3b8ec1281143133bf8c29cb215d5ed1a0376689a5a434ee1c2989867d4ece8aff0994e9dceccc8c4af3 SHA512 72f0b5cd8a5b177be66fd6294521c555125be670aefff330c2703cdea7fff738decd7803989c07f307dc84f7ecf25142e4cd847a406edc672ac03b796f178195
111 +DIST firefox-91.3.0esr-th.xpi 614796 BLAKE2B ab5b057ffd367c917af6afb1b0959df87121bc8fd37dd8eb3dbb34f66508f0004df81d031382a55a2ace4669e36af823d2d6c73a5d0c27f48cec358d73716651 SHA512 95c3986a1baeac27266ff004631f4a4f0ff298f5c06eb364282f4c90856df6d356aa9aa0d04640d80c06ff8e13ddf7169e64641bdae16bdf219eb81bcc3d0b4f
112 +DIST firefox-91.3.0esr-tl.xpi 531783 BLAKE2B 066b2146125f9a5dddc544752b9955661168c5d1616ecede7ffd4ca4553aed22c343230a5d15a3a1de908e82456f6bddddac4b1342ecd3b8a7666adfdcb36ead SHA512 33a89f900e388f2ad1372f32b4e726fbcbeca11e25783ebf3aed5153b557cea05885f36436aae9dc268c0de83a9449446c73b1405cc1fcf56c8dfae3e438ceaa
113 +DIST firefox-91.3.0esr-tr.xpi 560033 BLAKE2B 6b13f234a86d38a5c4dd4eb46e82fac3d37845a909cfee19df634dc52b24333c8a78e6643715474615a6d6e2a2d62915b8fbf86496517b404400e484d82e2847 SHA512 f508ddcee0e1c423ee437bbf20b98d96a7f40d70311df05efab9b467d56c0bb9ec5030cef0a3f206b787b15e3baa0fe649bc9bd8ba03ce9e050278929c572c85
114 +DIST firefox-91.3.0esr-trs.xpi 503925 BLAKE2B 11b9fe4f1a914038e9ac82247957fbff539c2d19aa7fec681ccdf7ce4c721a96c6d1f445bb007bb17780bb5b0fc69840fb6f7d39bf0e57ed2168321603003477 SHA512 42ccf89c4ab2b02d015b6a5d5b81185409a1b49d837c6d8da743fa1f6d6935564a9a28fbfc185ee56161903ca5f39987b15be54a63461cbf349a0e27a1daabe1
115 +DIST firefox-91.3.0esr-uk.xpi 630023 BLAKE2B a65d6e9d1a04b357b2848687762dca572729a057ca534d8bc1c7b75f3c9aaa49bb5f5a29c6ff1a77428cfe6d788f7ac78fa2fdb65a339f0fa533da152cc8c6bb SHA512 ee66098a00bc371ecc4883ddb022bca5960e324349bca047abaf11fcc795075e532cb075160899fd25c86357e865a5dc70548a777eb393b82ed15d7d98819692
116 +DIST firefox-91.3.0esr-ur.xpi 573052 BLAKE2B 8bf7de96591f439196803a89e5eb02e37ec7747ade75b1d1f313f09073b2e7a0a482d3ac6bccaf4863aa74768ad86efa7922f6f35606ea71aa33f9db286a5686 SHA512 01f8a4fff5f425f25ef498a9f99dd65d9ecaaadf205237becba0d52a0e8054b5203104cc3e19a11e68bc19a57f62a4f72fb8aecfc1450fe39dfaef30768495b8
117 +DIST firefox-91.3.0esr-uz.xpi 481199 BLAKE2B 9313487f4a8a59ef28645dd9fe1bb81a77fd05ebf5402b442ac4c1cd2f533917f9a0a8a20fa442a48a60fdb40e4111993659ba907230af98d98eda8087025201 SHA512 9d71b314ee860809aac0deb903363f8db1151cdb21792c1524593ed0a86a36c9a132d4760cb749e6f99d22e5fa75f243efe85cd7ece395e7779d9197612b80b5
118 +DIST firefox-91.3.0esr-vi.xpi 581328 BLAKE2B 596dd95b4a8573c4d0dc0434be2ee5eff4ac5caaeee263f95838ee9e7e607ef9a4adeb5d08f9302235f91715a819ca90c04d16cfbdb2d611540aaa55dfb274a1 SHA512 dcb4d1ef7746844c2d25d9362868bd776cffac08aae936091d043a6b09f1f15cf66f2698eacfda957c4b0cf8576ad7a8191249201a604b13442541c984b874f8
119 +DIST firefox-91.3.0esr-xh.xpi 435358 BLAKE2B 96c7c7f452184145ef154126b6c2fe6216faa90b62267a0946871951547c13d86612066696549b06b99a0776a88911b26432758e9b32cb73715a73d415e82c2b SHA512 6cc4acd79aabf3f062811578bd4ec98a26520fd05af7c878fe3fec699fdc86da760332fac5c0a6d814abfa1fb2919ed869ef8f0dc5b1c5f0b582dfee4f0bbd74
120 +DIST firefox-91.3.0esr-zh-CN.xpi 583248 BLAKE2B 3caf831df6288ec5c1025f20c1834b6993fb5f50349d9b8715e6e020ebe5e1dcb0bf62592f800e03066cf1564a8bcfe0cddc8e90f72f6d7e3298e1ecc97c71b3 SHA512 95044ccbd6ef200deec8e4d3143a3989277fa309182248d8bf3941c25778841243f525410c391d49aee33a6bfc9d6d625ea45ce96ab7df9e2d70264ce1a3a438
121 +DIST firefox-91.3.0esr-zh-TW.xpi 583430 BLAKE2B 848ba2ff85a16105153a1810594ec9c76f4376aed110a896cb2de21b8a98574ed6d8ef1b5b290a2c650cac072e4bc7420405263595225170d51682fd5a0b8fd3 SHA512 0d4ab413bda98207f76d4b8ff5f895dbe2e42e67856a93027de18175927e24f7b3d1eb4beb6c1902f2dbd6bdd4e6e3ac164a7a1061de77acd43331b1dbc1d68a
122 +DIST firefox-91.3.0esr.source.tar.xz 381117132 BLAKE2B 316ac4c7e673eb1db88da9e7c1ea7eea6c3f6b6ca4d4066100c165512e52374c84f637aed1fd5037b126ce2cf51945a5a6276a4974f557ed1da7ffe1674135f2 SHA512 7cf6efd165acc134bf576715580c103a2fc10ab928ede4c18f69908c62a04eb0f60affa8ceafd5883b393c31b85cae6821d0ae063c9e78117456d475947deaa9
123 +DIST firefox-91esr-patches-01.tar.xz 20768 BLAKE2B 22ebd261b445f1920448d9243e3e15ed2e4d393099552bf43f26c9705dd00f8b87b5720e94fc43a31dd96c3a88398e17da80f81953f0bf9658d75e4a85a31fc9 SHA512 5935545535366abf8681286a9bd745f95f83ebf0d69ba5ce600ae513a4391fc16ea7eb4addbe8ad27f97eae3c1fcb05a78e2fc0fbd4cbf7798a83b778b5e1535
124 DIST firefox-93-patches-02.tar.xz 32064 BLAKE2B a99ebed6fb2e3af8c3d1ef60182e56636f68c596fcddb0450853eaca7b65fa786ce3187dae9d1c5fbce0b9d8de0b2a60d441b38a26d6b1dcad8881c46c11d913 SHA512 7f51f30815dc2386afa1349f512d156d2da3cb2a50cd9c14e763cfdf00535c78bff82f25820977252c3e5c086fe31d59a753dce2d3758ebe4f30dcda7a41056b
125 DIST firefox-93.0-ach.xpi 452270 BLAKE2B c7fd81469026d99e21553ec59d0d005e906915483b3765898beba694cf31c02aef3c15789a5c2e2e2d1ee242aef323ca7fa1c142912917ec2ca02a8cb9c604fa SHA512 9a4c7f880801eb1c4391a57107e88e3d43e6ce0a1bd617ba4d11951957e2d62116f102e55bb62db22378460c68d2ecb3a9b9b0285951c46846920ae02360749b
126 DIST firefox-93.0-af.xpi 425657 BLAKE2B 8f0f1df2ddc330f386d831696dbbbd15f639b0d95ae4d85b268924116f93f1bce22adc10b6053873f0ed6d69f9067515774b7904f7595c89a25edffde2e25e97 SHA512 f8c122c624c139c0afea5920f063b981665771ae107d32b654206dc0d00a8173230a357ca72649bc636d02825f1af90d291b5e09f9b7044d05b4af1ce39f6e6f
127
128 diff --git a/www-client/firefox/firefox-91.3.0.ebuild b/www-client/firefox/firefox-91.3.0.ebuild
129 new file mode 100644
130 index 00000000000..e96101290e1
131 --- /dev/null
132 +++ b/www-client/firefox/firefox-91.3.0.ebuild
133 @@ -0,0 +1,1161 @@
134 +# Copyright 1999-2021 Gentoo Authors
135 +# Distributed under the terms of the GNU General Public License v2
136 +
137 +EAPI="7"
138 +
139 +FIREFOX_PATCHSET="firefox-91esr-patches-01.tar.xz"
140 +
141 +LLVM_MAX_SLOT=13
142 +
143 +PYTHON_COMPAT=( python3_{7..10} )
144 +PYTHON_REQ_USE="ncurses,sqlite,ssl"
145 +
146 +WANT_AUTOCONF="2.1"
147 +
148 +VIRTUALX_REQUIRED="pgo"
149 +
150 +MOZ_ESR=yes
151 +
152 +MOZ_PV=${PV}
153 +MOZ_PV_SUFFIX=
154 +if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
155 + MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
156 +
157 + # Convert the ebuild version to the upstream Mozilla version
158 + MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
159 + MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
160 + MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
161 +fi
162 +
163 +if [[ -n ${MOZ_ESR} ]] ; then
164 + # ESR releases have slightly different version numbers
165 + MOZ_PV="${MOZ_PV}esr"
166 +fi
167 +
168 +MOZ_PN="${PN%-bin}"
169 +MOZ_P="${MOZ_PN}-${MOZ_PV}"
170 +MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
171 +MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
172 +
173 +inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info \
174 + llvm multiprocessing pax-utils python-any-r1 toolchain-funcs \
175 + virtualx xdg
176 +
177 +MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
178 +
179 +if [[ ${PV} == *_rc* ]] ; then
180 + MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
181 +fi
182 +
183 +PATCH_URIS=(
184 + https://dev.gentoo.org/~{axs,polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET}
185 +)
186 +
187 +SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
188 + ${PATCH_URIS[@]}"
189 +
190 +DESCRIPTION="Firefox Web Browser"
191 +HOMEPAGE="https://www.mozilla.com/firefox"
192 +
193 +#KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
194 +
195 +SLOT="0/esr$(ver_cut 1)"
196 +LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
197 +IUSE="+clang cpu_flags_arm_neon dbus debug eme-free geckodriver +gmp-autoupdate
198 + hardened hwaccel jack lto +openh264 pgo pulseaudio screencast sndio selinux
199 + +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent
200 + +system-libvpx +system-webp wayland wifi"
201 +
202 +REQUIRED_USE="debug? ( !system-av1 )
203 + screencast? ( wayland )"
204 +
205 +BDEPEND="${PYTHON_DEPS}
206 + app-arch/unzip
207 + app-arch/zip
208 + >=dev-util/cbindgen-0.19.0
209 + >=net-libs/nodejs-10.23.1
210 + virtual/pkgconfig
211 + >=virtual/rust-1.51.0
212 + || (
213 + (
214 + sys-devel/clang:13
215 + sys-devel/llvm:13
216 + clang? (
217 + =sys-devel/lld-13*
218 + pgo? ( =sys-libs/compiler-rt-sanitizers-13*[profile] )
219 + )
220 + )
221 + (
222 + sys-devel/clang:12
223 + sys-devel/llvm:12
224 + clang? (
225 + =sys-devel/lld-12*
226 + pgo? ( =sys-libs/compiler-rt-sanitizers-12*[profile] )
227 + )
228 + )
229 + (
230 + sys-devel/clang:11
231 + sys-devel/llvm:11
232 + clang? (
233 + =sys-devel/lld-11*
234 + pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] )
235 + )
236 + )
237 + (
238 + sys-devel/clang:10
239 + sys-devel/llvm:10
240 + clang? (
241 + =sys-devel/lld-10*
242 + pgo? ( =sys-libs/compiler-rt-sanitizers-10*[profile] )
243 + )
244 + )
245 + )
246 + amd64? ( >=dev-lang/nasm-2.13 )
247 + x86? ( >=dev-lang/nasm-2.13 )"
248 +
249 +CDEPEND="
250 + >=dev-libs/nss-3.68
251 + >=dev-libs/nspr-4.32
252 + dev-libs/atk
253 + dev-libs/expat
254 + >=x11-libs/cairo-1.10[X]
255 + >=x11-libs/gtk+-3.4.0:3[X]
256 + x11-libs/gdk-pixbuf
257 + >=x11-libs/pango-1.22.0
258 + >=media-libs/libpng-1.6.35:0=[apng]
259 + >=media-libs/mesa-10.2:*
260 + media-libs/fontconfig
261 + >=media-libs/freetype-2.4.10
262 + kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) )
263 + virtual/freedesktop-icon-theme
264 + >=x11-libs/pixman-0.19.2
265 + >=dev-libs/glib-2.26:2
266 + >=sys-libs/zlib-1.2.3
267 + >=dev-libs/libffi-3.0.10:=
268 + media-video/ffmpeg
269 + x11-libs/libX11
270 + x11-libs/libXcomposite
271 + x11-libs/libXdamage
272 + x11-libs/libXext
273 + x11-libs/libXfixes
274 + x11-libs/libXrender
275 + dbus? (
276 + sys-apps/dbus
277 + dev-libs/dbus-glib
278 + )
279 + screencast? ( media-video/pipewire:0/0.3 )
280 + system-av1? (
281 + >=media-libs/dav1d-0.8.1:=
282 + >=media-libs/libaom-1.0.0:=
283 + )
284 + system-harfbuzz? (
285 + >=media-libs/harfbuzz-2.8.1:0=
286 + >=media-gfx/graphite2-1.3.13
287 + )
288 + system-icu? ( >=dev-libs/icu-69.1:= )
289 + system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
290 + system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
291 + system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
292 + system-webp? ( >=media-libs/libwebp-1.1.0:0= )
293 + wifi? (
294 + kernel_linux? (
295 + sys-apps/dbus
296 + dev-libs/dbus-glib
297 + net-misc/networkmanager
298 + )
299 + )
300 + jack? ( virtual/jack )
301 + selinux? ( sec-policy/selinux-mozilla )
302 + sndio? ( media-sound/sndio )"
303 +
304 +RDEPEND="${CDEPEND}
305 + jack? ( virtual/jack )
306 + openh264? ( media-libs/openh264:*[plugin] )
307 + pulseaudio? (
308 + || (
309 + media-sound/pulseaudio
310 + >=media-sound/apulse-0.1.12-r4
311 + )
312 + )
313 + selinux? ( sec-policy/selinux-mozilla )"
314 +
315 +DEPEND="${CDEPEND}
316 + x11-libs/libICE
317 + x11-libs/libSM
318 + pulseaudio? (
319 + || (
320 + media-sound/pulseaudio
321 + >=media-sound/apulse-0.1.12-r4[sdk]
322 + )
323 + )
324 + wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
325 + amd64? ( virtual/opengl )
326 + x86? ( virtual/opengl )"
327 +
328 +S="${WORKDIR}/${PN}-${PV%_*}"
329 +
330 +# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
331 +# overridden in the enviromnent (advanced hackers only)
332 +if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
333 + MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
334 +fi
335 +
336 +llvm_check_deps() {
337 + if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
338 + einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
339 + return 1
340 + fi
341 +
342 + if use clang ; then
343 + if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
344 + einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
345 + return 1
346 + fi
347 +
348 + if use pgo ; then
349 + if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
350 + einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
351 + return 1
352 + fi
353 + fi
354 + fi
355 +
356 + einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
357 +}
358 +
359 +MOZ_LANGS=(
360 + ach af an ar ast az be bg bn br bs ca-valencia ca cak cs cy
361 + da de dsb el en-CA en-GB en-US eo es-AR es-CL es-ES es-MX et eu
362 + fa ff fi fr fy-NL ga-IE gd gl gn gu-IN he hi-IN hr hsb hu hy-AM
363 + ia id is it ja ka kab kk km kn ko lij lt lv mk mr ms my
364 + nb-NO ne-NP nl nn-NO oc pa-IN pl pt-BR pt-PT rm ro ru sco
365 + si sk sl son sq sr sv-SE szl ta te th tl tr trs uk ur uz vi
366 + xh zh-CN zh-TW
367 +)
368 +
369 +mozilla_set_globals() {
370 + # https://bugs.gentoo.org/587334
371 + local MOZ_TOO_REGIONALIZED_FOR_L10N=(
372 + fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
373 + )
374 +
375 + local lang xflag
376 + for lang in "${MOZ_LANGS[@]}" ; do
377 + # en and en_US are handled internally
378 + if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
379 + continue
380 + fi
381 +
382 + # strip region subtag if $lang is in the list
383 + if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
384 + xflag=${lang%%-*}
385 + else
386 + xflag=${lang}
387 + fi
388 +
389 + SRC_URI+=" l10n_${xflag/[_@]/-}? ("
390 + SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
391 + SRC_URI+=" )"
392 + IUSE+=" l10n_${xflag/[_@]/-}"
393 + done
394 +}
395 +mozilla_set_globals
396 +
397 +moz_clear_vendor_checksums() {
398 + debug-print-function ${FUNCNAME} "$@"
399 +
400 + if [[ ${#} -ne 1 ]] ; then
401 + die "${FUNCNAME} requires exact one argument"
402 + fi
403 +
404 + einfo "Clearing cargo checksums for ${1} ..."
405 +
406 + sed -i \
407 + -e 's/\("files":{\)[^}]*/\1/' \
408 + "${S}"/third_party/rust/${1}/.cargo-checksum.json \
409 + || die
410 +}
411 +
412 +moz_install_xpi() {
413 + debug-print-function ${FUNCNAME} "$@"
414 +
415 + if [[ ${#} -lt 2 ]] ; then
416 + die "${FUNCNAME} requires at least two arguments"
417 + fi
418 +
419 + local DESTDIR=${1}
420 + shift
421 +
422 + insinto "${DESTDIR}"
423 +
424 + local emid xpi_file xpi_tmp_dir
425 + for xpi_file in "${@}" ; do
426 + emid=
427 + xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
428 +
429 + # Unpack XPI
430 + unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
431 +
432 + # Determine extension ID
433 + if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
434 + emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
435 + [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
436 + elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
437 + emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
438 + [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
439 + else
440 + die "failed to determine extension id"
441 + fi
442 +
443 + einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
444 + newins "${xpi_file}" "${emid}.xpi"
445 + done
446 +}
447 +
448 +mozconfig_add_options_ac() {
449 + debug-print-function ${FUNCNAME} "$@"
450 +
451 + if [[ ${#} -lt 2 ]] ; then
452 + die "${FUNCNAME} requires at least two arguments"
453 + fi
454 +
455 + local reason=${1}
456 + shift
457 +
458 + local option
459 + for option in ${@} ; do
460 + echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
461 + done
462 +}
463 +
464 +mozconfig_add_options_mk() {
465 + debug-print-function ${FUNCNAME} "$@"
466 +
467 + if [[ ${#} -lt 2 ]] ; then
468 + die "${FUNCNAME} requires at least two arguments"
469 + fi
470 +
471 + local reason=${1}
472 + shift
473 +
474 + local option
475 + for option in ${@} ; do
476 + echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
477 + done
478 +}
479 +
480 +mozconfig_use_enable() {
481 + debug-print-function ${FUNCNAME} "$@"
482 +
483 + if [[ ${#} -lt 1 ]] ; then
484 + die "${FUNCNAME} requires at least one arguments"
485 + fi
486 +
487 + local flag=$(use_enable "${@}")
488 + mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
489 +}
490 +
491 +mozconfig_use_with() {
492 + debug-print-function ${FUNCNAME} "$@"
493 +
494 + if [[ ${#} -lt 1 ]] ; then
495 + die "${FUNCNAME} requires at least one arguments"
496 + fi
497 +
498 + local flag=$(use_with "${@}")
499 + mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
500 +}
501 +
502 +pkg_pretend() {
503 + if [[ ${MERGE_TYPE} != binary ]] ; then
504 + if use pgo ; then
505 + if ! has usersandbox $FEATURES ; then
506 + die "You must enable usersandbox as X server can not run as root!"
507 + fi
508 + fi
509 +
510 + # Ensure we have enough disk space to compile
511 + if use pgo || use lto || use debug ; then
512 + CHECKREQS_DISK_BUILD="13500M"
513 + else
514 + CHECKREQS_DISK_BUILD="6400M"
515 + fi
516 +
517 + check-reqs_pkg_pretend
518 + fi
519 +}
520 +
521 +pkg_setup() {
522 + if [[ ${MERGE_TYPE} != binary ]] ; then
523 + if use pgo ; then
524 + if ! has userpriv ${FEATURES} ; then
525 + eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
526 + fi
527 + fi
528 +
529 + # Ensure we have enough disk space to compile
530 + if use pgo || use lto || use debug ; then
531 + CHECKREQS_DISK_BUILD="13500M"
532 + else
533 + CHECKREQS_DISK_BUILD="6400M"
534 + fi
535 +
536 + check-reqs_pkg_setup
537 +
538 + llvm_pkg_setup
539 +
540 + if use clang && use lto ; then
541 + local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
542 + [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
543 + [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
544 +
545 + # temp fix for https://bugs.gentoo.org/768543
546 + # we can assume that rust 1.{49,50}.0 always uses llvm 11
547 + local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }')
548 + [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}")
549 + [[ -z ${version_rust} ]] && die "Failed to read version from rustc!"
550 +
551 + if ver_test "${version_rust}" -ge "1.49" && ver_test "${version_rust}" -le "1.50" ; then
552 + local version_llvm_rust="11"
553 + else
554 + local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
555 + [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
556 + [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
557 + fi
558 +
559 + if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
560 + eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
561 + eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
562 + eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
563 + eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
564 + eerror " - Build ${CATEGORY}/${PN} without USE=lto"
565 + die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
566 + fi
567 + fi
568 +
569 + if ! use clang && [[ $(gcc-major-version) -eq 11 ]] \
570 + && ! has_version -b ">sys-devel/gcc-11.1.0:11" ; then
571 + # bug 792705
572 + eerror "Using GCC 11 to compile firefox is currently known to be broken (see bug #792705)."
573 + die "Set USE=clang or select <gcc-11 to build ${CATEGORY}/${P}."
574 + fi
575 +
576 + python-any-r1_pkg_setup
577 +
578 + # Avoid PGO profiling problems due to enviroment leakage
579 + # These should *always* be cleaned up anyway
580 + unset \
581 + DBUS_SESSION_BUS_ADDRESS \
582 + DISPLAY \
583 + ORBIT_SOCKETDIR \
584 + SESSION_MANAGER \
585 + XAUTHORITY \
586 + XDG_CACHE_HOME \
587 + XDG_SESSION_COOKIE
588 +
589 + # Build system is using /proc/self/oom_score_adj, bug #604394
590 + addpredict /proc/self/oom_score_adj
591 +
592 + if ! mountpoint -q /dev/shm ; then
593 + # If /dev/shm is not available, configure is known to fail with
594 + # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
595 + ewarn "/dev/shm is not mounted -- expect build failures!"
596 + fi
597 +
598 + # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
599 + # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
600 + # get your own set of keys.
601 + if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
602 + MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
603 + fi
604 +
605 + if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
606 + MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
607 + fi
608 +
609 + # Mozilla API keys (see https://location.services.mozilla.com/api)
610 + # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
611 + # get your own set of keys.
612 + if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
613 + MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
614 + fi
615 +
616 + # Ensure we use C locale when building, bug #746215
617 + export LC_ALL=C
618 + fi
619 +
620 + CONFIG_CHECK="~SECCOMP"
621 + WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
622 + linux-info_pkg_setup
623 +}
624 +
625 +src_unpack() {
626 + local _lp_dir="${WORKDIR}/language_packs"
627 + local _src_file
628 +
629 + if [[ ! -d "${_lp_dir}" ]] ; then
630 + mkdir "${_lp_dir}" || die
631 + fi
632 +
633 + for _src_file in ${A} ; do
634 + if [[ ${_src_file} == *.xpi ]]; then
635 + cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
636 + else
637 + unpack ${_src_file}
638 + fi
639 + done
640 +}
641 +
642 +src_prepare() {
643 + use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
644 + eapply "${WORKDIR}/firefox-patches"
645 +
646 + # Allow user to apply any additional patches without modifing ebuild
647 + eapply_user
648 +
649 + # Make LTO respect MAKEOPTS
650 + sed -i \
651 + -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
652 + "${S}"/build/moz.configure/lto-pgo.configure \
653 + || die "sed failed to set num_cores"
654 +
655 + # Make ICU respect MAKEOPTS
656 + sed -i \
657 + -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
658 + "${S}"/intl/icu_sources_data.py \
659 + || die "sed failed to set num_cores"
660 +
661 + # sed-in toolchain prefix
662 + sed -i \
663 + -e "s/objdump/${CHOST}-objdump/" \
664 + "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
665 + || die "sed failed to set toolchain prefix"
666 +
667 + sed -i \
668 + -e 's/ccache_stats = None/return None/' \
669 + "${S}"/python/mozbuild/mozbuild/controller/building.py \
670 + || die "sed failed to disable ccache stats call"
671 +
672 + einfo "Removing pre-built binaries ..."
673 + find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
674 +
675 + # Clearing checksums where we have applied patches
676 + moz_clear_vendor_checksums target-lexicon-0.9.0
677 +
678 + # Create build dir
679 + BUILD_DIR="${WORKDIR}/${PN}_build"
680 + mkdir -p "${BUILD_DIR}" || die
681 +
682 + # Write API keys to disk
683 + echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
684 + echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
685 + echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
686 +
687 + xdg_src_prepare
688 +}
689 +
690 +src_configure() {
691 + # Show flags set at the beginning
692 + einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
693 + einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
694 + einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
695 + einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
696 + einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
697 +
698 + local have_switched_compiler=
699 + if use clang && ! tc-is-clang ; then
700 + # Force clang
701 + einfo "Enforcing the use of clang due to USE=clang ..."
702 + have_switched_compiler=yes
703 + AR=llvm-ar
704 + CC=${CHOST}-clang
705 + CXX=${CHOST}-clang++
706 + NM=llvm-nm
707 + RANLIB=llvm-ranlib
708 + elif ! use clang && ! tc-is-gcc ; then
709 + # Force gcc
710 + have_switched_compiler=yes
711 + einfo "Enforcing the use of gcc due to USE=-clang ..."
712 + AR=gcc-ar
713 + CC=${CHOST}-gcc
714 + CXX=${CHOST}-g++
715 + NM=gcc-nm
716 + RANLIB=gcc-ranlib
717 + fi
718 +
719 + if [[ -n "${have_switched_compiler}" ]] ; then
720 + # Because we switched active compiler we have to ensure
721 + # that no unsupported flags are set
722 + strip-unsupported-flags
723 + fi
724 +
725 + # Ensure we use correct toolchain
726 + export HOST_CC="$(tc-getBUILD_CC)"
727 + export HOST_CXX="$(tc-getBUILD_CXX)"
728 + tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
729 +
730 + # Pass the correct toolchain paths through cbindgen
731 + if tc-is-cross-compiler ; then
732 + export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
733 + fi
734 +
735 + # Set MOZILLA_FIVE_HOME
736 + export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
737 +
738 + # python/mach/mach/mixin/process.py fails to detect SHELL
739 + export SHELL="${EPREFIX}/bin/bash"
740 +
741 + # Set state path
742 + export MOZBUILD_STATE_PATH="${BUILD_DIR}"
743 +
744 + # Set MOZCONFIG
745 + export MOZCONFIG="${S}/.mozconfig"
746 +
747 + # Initialize MOZCONFIG
748 + mozconfig_add_options_ac '' --enable-application=browser
749 +
750 + # Set Gentoo defaults
751 + export MOZILLA_OFFICIAL=1
752 +
753 + mozconfig_add_options_ac 'Gentoo default' \
754 + --allow-addon-sideload \
755 + --disable-cargo-incremental \
756 + --disable-crashreporter \
757 + --disable-install-strip \
758 + --disable-strip \
759 + --disable-updater \
760 + --enable-official-branding \
761 + --enable-release \
762 + --enable-system-ffi \
763 + --enable-system-pixman \
764 + --host="${CBUILD:-${CHOST}}" \
765 + --libdir="${EPREFIX}/usr/$(get_libdir)" \
766 + --prefix="${EPREFIX}/usr" \
767 + --target="${CHOST}" \
768 + --without-ccache \
769 + --with-intl-api \
770 + --with-libclang-path="$(llvm-config --libdir)" \
771 + --with-system-nspr \
772 + --with-system-nss \
773 + --with-system-png \
774 + --with-system-zlib \
775 + --with-toolchain-prefix="${CHOST}-" \
776 + --with-unsigned-addon-scopes=app,system \
777 + --x-includes="${SYSROOT}${EPREFIX}/usr/include" \
778 + --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)"
779 +
780 + # Set update channel
781 + local update_channel=release
782 + [[ -n ${MOZ_ESR} ]] && update_channel=esr
783 + mozconfig_add_options_ac '' --update-channel=${update_channel}
784 +
785 + if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
786 + mozconfig_add_options_ac '' --enable-rust-simd
787 + fi
788 +
789 + if [[ -s "${S}/api-google.key" ]] ; then
790 + local key_origin="Gentoo default"
791 + if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
792 + key_origin="User value"
793 + fi
794 +
795 + mozconfig_add_options_ac "${key_origin}" \
796 + --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
797 + else
798 + einfo "Building without Google API key ..."
799 + fi
800 +
801 + if [[ -s "${S}/api-location.key" ]] ; then
802 + local key_origin="Gentoo default"
803 + if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
804 + key_origin="User value"
805 + fi
806 +
807 + mozconfig_add_options_ac "${key_origin}" \
808 + --with-google-location-service-api-keyfile="${S}/api-location.key"
809 + else
810 + einfo "Building without Location API key ..."
811 + fi
812 +
813 + if [[ -s "${S}/api-mozilla.key" ]] ; then
814 + local key_origin="Gentoo default"
815 + if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
816 + key_origin="User value"
817 + fi
818 +
819 + mozconfig_add_options_ac "${key_origin}" \
820 + --with-mozilla-api-keyfile="${S}/api-mozilla.key"
821 + else
822 + einfo "Building without Mozilla API key ..."
823 + fi
824 +
825 + mozconfig_use_with system-av1
826 + mozconfig_use_with system-harfbuzz
827 + mozconfig_use_with system-harfbuzz system-graphite2
828 + mozconfig_use_with system-icu
829 + mozconfig_use_with system-jpeg
830 + mozconfig_use_with system-libevent system-libevent "${SYSROOT}${EPREFIX}/usr"
831 + mozconfig_use_with system-libvpx
832 + mozconfig_use_with system-webp
833 +
834 + mozconfig_use_enable dbus
835 +
836 + use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
837 +
838 + mozconfig_use_enable geckodriver
839 +
840 + if use hardened ; then
841 + mozconfig_add_options_ac "+hardened" --enable-hardening
842 + append-ldflags "-Wl,-z,relro -Wl,-z,now"
843 + fi
844 +
845 + mozconfig_use_enable jack
846 +
847 + mozconfig_use_enable pulseaudio
848 + # force the deprecated alsa sound code if pulseaudio is disabled
849 + if use kernel_linux && ! use pulseaudio ; then
850 + mozconfig_add_options_ac '-pulseaudio' --enable-alsa
851 + fi
852 +
853 + mozconfig_use_enable sndio
854 +
855 + mozconfig_use_enable wifi necko-wifi
856 +
857 + if use wayland ; then
858 + mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland
859 + else
860 + mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3
861 + fi
862 +
863 + if use lto ; then
864 + if use clang ; then
865 + # Upstream only supports lld when using clang
866 + mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
867 +
868 + mozconfig_add_options_ac '+lto' --enable-lto=cross
869 + else
870 + # ThinLTO is currently broken, see bmo#1644409
871 + mozconfig_add_options_ac '+lto' --enable-lto=full
872 + fi
873 +
874 + if use pgo ; then
875 + mozconfig_add_options_ac '+pgo' MOZ_PGO=1
876 +
877 + if use clang ; then
878 + # Used in build/pgo/profileserver.py
879 + export LLVM_PROFDATA="llvm-profdata"
880 + fi
881 + fi
882 + else
883 + # Avoid auto-magic on linker
884 + if use clang ; then
885 + # This is upstream's default
886 + mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
887 + else
888 + mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
889 + fi
890 + fi
891 +
892 + # LTO flag was handled via configure
893 + filter-flags '-flto*'
894 +
895 + mozconfig_use_enable debug
896 + if use debug ; then
897 + mozconfig_add_options_ac '+debug' --disable-optimize
898 + else
899 + if is-flag '-g*' ; then
900 + if use clang ; then
901 + mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
902 + else
903 + mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
904 + fi
905 + else
906 + mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
907 + fi
908 +
909 + if is-flag '-O0' ; then
910 + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
911 + elif is-flag '-O4' ; then
912 + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
913 + elif is-flag '-O3' ; then
914 + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
915 + elif is-flag '-O1' ; then
916 + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
917 + elif is-flag '-Os' ; then
918 + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
919 + else
920 + mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
921 + fi
922 + fi
923 +
924 + # Debug flag was handled via configure
925 + filter-flags '-g*'
926 +
927 + # Optimization flag was handled via configure
928 + filter-flags '-O*'
929 +
930 + # Modifications to better support ARM, bug #553364
931 + if use cpu_flags_arm_neon ; then
932 + mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
933 +
934 + if ! tc-is-clang ; then
935 + # thumb options aren't supported when using clang, bug 666966
936 + mozconfig_add_options_ac '+cpu_flags_arm_neon' \
937 + --with-thumb=yes \
938 + --with-thumb-interwork=no
939 + fi
940 + fi
941 +
942 + if [[ ${CHOST} == armv*h* ]] ; then
943 + mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
944 +
945 + if ! use system-libvpx ; then
946 + sed -i \
947 + -e "s|softfp|hard|" \
948 + "${S}"/media/libvpx/moz.build \
949 + || die
950 + fi
951 + fi
952 +
953 + if use clang ; then
954 + # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
955 + # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
956 + # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
957 + local disable_elf_hack=
958 + if use amd64 ; then
959 + disable_elf_hack=yes
960 + elif use x86 ; then
961 + disable_elf_hack=yes
962 + elif use arm ; then
963 + disable_elf_hack=yes
964 + fi
965 +
966 + if [[ -n ${disable_elf_hack} ]] ; then
967 + mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack
968 + fi
969 + elif tc-is-gcc ; then
970 + if ver_test $(gcc-fullversion) -ge 10 ; then
971 + einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..."
972 + append-cxxflags -fno-tree-loop-vectorize
973 + fi
974 + fi
975 +
976 + # Additional ARCH support
977 + case "${ARCH}" in
978 + arm)
979 + # Reduce the memory requirements for linking
980 + if use clang ; then
981 + # Nothing to do
982 + :;
983 + elif tc-ld-is-gold || use lto ; then
984 + append-ldflags -Wl,--no-keep-memory
985 + else
986 + append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
987 + fi
988 + ;;
989 + esac
990 +
991 + if ! use elibc_glibc ; then
992 + mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
993 + fi
994 +
995 + # Allow elfhack to work in combination with unstripped binaries
996 + # when they would normally be larger than 2GiB.
997 + append-ldflags "-Wl,--compress-debug-sections=zlib"
998 +
999 + # Make revdep-rebuild.sh happy; Also required for musl
1000 + append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
1001 +
1002 + # Pass $MAKEOPTS to build system
1003 + export MOZ_MAKE_FLAGS="${MAKEOPTS}"
1004 +
1005 + # Use system's Python environment
1006 + export MACH_USE_SYSTEM_PYTHON=1
1007 +
1008 + # Disable notification when build system has finished
1009 + export MOZ_NOSPAM=1
1010 +
1011 + # Portage sets XARGS environment variable to "xargs -r" by default which
1012 + # breaks build system's check_prog() function which doesn't support arguments
1013 + mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
1014 +
1015 + # Set build dir
1016 + mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
1017 +
1018 + # Show flags we will use
1019 + einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
1020 + einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
1021 + einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
1022 + einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
1023 + einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
1024 +
1025 + # Handle EXTRA_CONF and show summary
1026 + local ac opt hash reason
1027 +
1028 + # Apply EXTRA_ECONF entries to $MOZCONFIG
1029 + if [[ -n ${EXTRA_ECONF} ]] ; then
1030 + IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
1031 + for opt in "${ac[@]}"; do
1032 + mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
1033 + done
1034 + fi
1035 +
1036 + echo
1037 + echo "=========================================================="
1038 + echo "Building ${PF} with the following configuration"
1039 + grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
1040 + [[ -z ${hash} || ${hash} == \# ]] \
1041 + || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
1042 + printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
1043 + done
1044 + echo "=========================================================="
1045 + echo
1046 +
1047 + ./mach configure || die
1048 +}
1049 +
1050 +src_compile() {
1051 + local virtx_cmd=
1052 +
1053 + if use pgo ; then
1054 + virtx_cmd=virtx
1055 +
1056 + # Reset and cleanup environment variables used by GNOME/XDG
1057 + gnome2_environment_reset
1058 +
1059 + addpredict /root
1060 + fi
1061 +
1062 + local -x GDK_BACKEND=x11
1063 +
1064 + ${virtx_cmd} ./mach build --verbose \
1065 + || die
1066 +}
1067 +
1068 +src_install() {
1069 + # xpcshell is getting called during install
1070 + pax-mark m \
1071 + "${BUILD_DIR}"/dist/bin/xpcshell \
1072 + "${BUILD_DIR}"/dist/bin/${PN} \
1073 + "${BUILD_DIR}"/dist/bin/plugin-container
1074 +
1075 + DESTDIR="${D}" ./mach install || die
1076 +
1077 + # Upstream cannot ship symlink but we can (bmo#658850)
1078 + rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
1079 + dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
1080 +
1081 + # Don't install llvm-symbolizer from sys-devel/llvm package
1082 + if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
1083 + rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
1084 + fi
1085 +
1086 + # Install policy (currently only used to disable application updates)
1087 + insinto "${MOZILLA_FIVE_HOME}/distribution"
1088 + newins "${FILESDIR}"/distribution.ini distribution.ini
1089 + newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
1090 +
1091 + # Install system-wide preferences
1092 + local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences"
1093 + insinto "${PREFS_DIR}"
1094 + newins "${FILESDIR}"/gentoo-default-prefs.js all-gentoo.js
1095 +
1096 + local GENTOO_PREFS="${ED}${PREFS_DIR}/all-gentoo.js"
1097 +
1098 + # Set dictionary path to use system hunspell
1099 + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
1100 + pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
1101 + EOF
1102 +
1103 + # Force hwaccel prefs if USE=hwaccel is enabled
1104 + if use hwaccel ; then
1105 + cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \
1106 + >>"${GENTOO_PREFS}" \
1107 + || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
1108 + fi
1109 +
1110 + if ! use gmp-autoupdate ; then
1111 + local plugin
1112 + for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
1113 + einfo "Disabling auto-update for ${plugin} plugin ..."
1114 + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
1115 + pref("media.${plugin}.autoupdate", false);
1116 + EOF
1117 + done
1118 + fi
1119 +
1120 + # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
1121 + if use system-harfbuzz ; then
1122 + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
1123 + sticky_pref("gfx.font_rendering.graphite.enabled", true);
1124 + EOF
1125 + fi
1126 +
1127 + # Install language packs
1128 + local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
1129 + if [[ -n "${langpacks}" ]] ; then
1130 + moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
1131 + fi
1132 +
1133 + # Install geckodriver
1134 + if use geckodriver ; then
1135 + einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..."
1136 + pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
1137 + exeinto "${MOZILLA_FIVE_HOME}"
1138 + doexe "${BUILD_DIR}"/dist/bin/geckodriver
1139 +
1140 + dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
1141 + fi
1142 +
1143 + # Install icons
1144 + local icon_srcdir="${S}/browser/branding/official"
1145 + local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg"
1146 +
1147 + insinto /usr/share/icons/hicolor/symbolic/apps
1148 + newins "${icon_symbolic_file}" ${PN}-symbolic.svg
1149 +
1150 + local icon size
1151 + for icon in "${icon_srcdir}"/default*.png ; do
1152 + size=${icon%.png}
1153 + size=${size##*/default}
1154 +
1155 + if [[ ${size} -eq 48 ]] ; then
1156 + newicon "${icon}" ${PN}.png
1157 + fi
1158 +
1159 + newicon -s ${size} "${icon}" ${PN}.png
1160 + done
1161 +
1162 + # Install menu
1163 + local app_name="Mozilla ${MOZ_PN^}"
1164 + local desktop_file="${FILESDIR}/icon/${PN}-r3.desktop"
1165 + local desktop_filename="${PN}.desktop"
1166 + local exec_command="${PN}"
1167 + local icon="${PN}"
1168 + local use_wayland="false"
1169 +
1170 + if use wayland ; then
1171 + use_wayland="true"
1172 + fi
1173 +
1174 + cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
1175 +
1176 + sed -i \
1177 + -e "s:@NAME@:${app_name}:" \
1178 + -e "s:@EXEC@:${exec_command}:" \
1179 + -e "s:@ICON@:${icon}:" \
1180 + "${WORKDIR}/${PN}.desktop-template" \
1181 + || die
1182 +
1183 + newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
1184 +
1185 + rm "${WORKDIR}/${PN}.desktop-template" || die
1186 +
1187 + # Install wrapper script
1188 + [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
1189 + newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
1190 +
1191 + # Update wrapper
1192 + sed -i \
1193 + -e "s:@PREFIX@:${EPREFIX}/usr:" \
1194 + -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
1195 + -e "s:@APULSELIB_DIR@:${apulselib}:" \
1196 + -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
1197 + "${ED}/usr/bin/${PN}" \
1198 + || die
1199 +}
1200 +
1201 +pkg_preinst() {
1202 + xdg_pkg_preinst
1203 +
1204 + # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
1205 + # does not need to be forced into the LD_LIBRARY_PATH
1206 + if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
1207 + einfo "APULSE found; Generating library symlinks for sound support ..."
1208 + local lib
1209 + pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die
1210 + for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
1211 + # A quickpkg rolled by hand will grab symlinks as part of the package,
1212 + # so we need to avoid creating them if they already exist.
1213 + if [[ ! -L ${lib##*/} ]] ; then
1214 + ln -s "${lib}" ${lib##*/} || die
1215 + fi
1216 + done
1217 + popd &>/dev/null || die
1218 + fi
1219 +}
1220 +
1221 +pkg_postinst() {
1222 + xdg_pkg_postinst
1223 +
1224 + if ! use gmp-autoupdate ; then
1225 + elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
1226 + elog "installing into new profiles:"
1227 + local plugin
1228 + for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
1229 + elog "\t ${plugin}"
1230 + done
1231 + elog
1232 + fi
1233 +
1234 + if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
1235 + elog "Apulse was detected at merge time on this system and so it will always be"
1236 + elog "used for sound. If you wish to use pulseaudio instead please unmerge"
1237 + elog "media-sound/apulse."
1238 + elog
1239 + fi
1240 +
1241 + local show_doh_information show_normandy_information show_shortcut_information
1242 +
1243 + if [[ -z "${REPLACING_VERSIONS}" ]] ; then
1244 + # New install; Tell user that DoH is disabled by default
1245 + show_doh_information=yes
1246 + show_normandy_information=yes
1247 + show_shortcut_information=no
1248 + else
1249 + local replacing_version
1250 + for replacing_version in ${REPLACING_VERSIONS} ; do
1251 + if ver_test "${replacing_version}" -lt 91.0 ; then
1252 + # Tell user that we no longer install a shortcut
1253 + # per supported display protocol
1254 + show_shortcut_information=yes
1255 + fi
1256 + done
1257 + fi
1258 +
1259 + if [[ -n "${show_doh_information}" ]] ; then
1260 + elog
1261 + elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):"
1262 + elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all"
1263 + elog "DNS traffic to Cloudflare by default is not a good idea and applications"
1264 + elog "should respect OS configured settings), \"network.trr.mode\" was set to 5"
1265 + elog "(\"Off by choice\") by default."
1266 + elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
1267 + fi
1268 +
1269 + # bug 713782
1270 + if [[ -n "${show_normandy_information}" ]] ; then
1271 + elog
1272 + elog "Upstream operates a service named Normandy which allows Mozilla to"
1273 + elog "push changes for default settings or even install new add-ons remotely."
1274 + elog "While this can be useful to address problems like 'Armagadd-on 2.0' or"
1275 + elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security"
1276 + elog "concerns prevail, which is why we have switched off the use of this"
1277 + elog "service by default."
1278 + elog
1279 + elog "To re-enable this service set"
1280 + elog
1281 + elog " app.normandy.enabled=true"
1282 + elog
1283 + elog "in about:config."
1284 + fi
1285 +
1286 + if [[ -n "${show_shortcut_information}" ]] ; then
1287 + elog
1288 + elog "Since firefox-91.0 we no longer install multiple shortcuts for"
1289 + elog "each supported display protocol. Instead we will only install"
1290 + elog "one generic Mozilla Firefox shortcut."
1291 + elog "If you still want to be able to select between running Mozilla Firefox"
1292 + elog "on X11 or Wayland, you have to re-create these shortcuts on your own."
1293 + fi
1294 +}