summaryrefslogtreecommitdiff
path: root/www-client
diff options
context:
space:
mode:
Diffstat (limited to 'www-client')
-rw-r--r--www-client/Manifest.gzbin6044 -> 6037 bytes
-rw-r--r--www-client/chromium/Manifest21
-rw-r--r--www-client/chromium/chromium-124.0.6367.155.ebuild (renamed from www-client/chromium/chromium-124.0.6367.78.ebuild)8
-rw-r--r--www-client/chromium/chromium-124.0.6367.207.ebuild (renamed from www-client/chromium/chromium-124.0.6367.60.ebuild)16
-rw-r--r--www-client/chromium/chromium-125.0.6422.60.ebuild (renamed from www-client/chromium/chromium-125.0.6422.14.ebuild)9
-rw-r--r--www-client/chromium/chromium-126.0.6478.8.ebuild1452
-rw-r--r--www-client/chromium/files/chromium-123-qt-gui-check.patch31
-rw-r--r--www-client/chromium/files/chromium-126-oauth2-client-switches.patch45
-rw-r--r--www-client/falkon/Manifest4
-rw-r--r--www-client/falkon/falkon-24.04.90.ebuild (renamed from www-client/falkon/falkon-24.02.2.ebuild)0
-rw-r--r--www-client/firefox-bin/Manifest99
-rw-r--r--www-client/firefox-bin/firefox-bin-126.0.ebuild366
-rw-r--r--www-client/firefox/Manifest213
-rw-r--r--www-client/firefox/firefox-115.10.0.ebuild4
-rw-r--r--www-client/firefox/firefox-115.11.0.ebuild1408
-rw-r--r--www-client/firefox/firefox-115.9.0.ebuild2
-rw-r--r--www-client/firefox/firefox-115.9.1.ebuild2
-rw-r--r--www-client/firefox/firefox-125.0.2.ebuild4
-rw-r--r--www-client/firefox/firefox-125.0.3.ebuild4
-rw-r--r--www-client/firefox/firefox-126.0.ebuild1419
-rw-r--r--www-client/google-chrome-beta/Manifest4
-rw-r--r--www-client/google-chrome-beta/google-chrome-beta-125.0.6422.41.ebuild (renamed from www-client/google-chrome-beta/google-chrome-beta-125.0.6422.14.ebuild)0
-rw-r--r--www-client/google-chrome-unstable/Manifest4
-rw-r--r--www-client/google-chrome-unstable/google-chrome-unstable-126.0.6468.2.ebuild (renamed from www-client/google-chrome-unstable/google-chrome-unstable-126.0.6423.2.ebuild)0
-rw-r--r--www-client/google-chrome/Manifest4
-rw-r--r--www-client/google-chrome/google-chrome-125.0.6422.60.ebuild (renamed from www-client/google-chrome/google-chrome-124.0.6367.78.ebuild)0
-rw-r--r--www-client/lynx/Manifest2
-rw-r--r--www-client/lynx/lynx-2.9.0.ebuild2
-rw-r--r--www-client/microsoft-edge-beta/Manifest12
-rw-r--r--www-client/microsoft-edge-beta/microsoft-edge-beta-125.0.2535.29.ebuild (renamed from www-client/microsoft-edge-beta/microsoft-edge-beta-124.0.2478.39.ebuild)0
-rw-r--r--www-client/microsoft-edge-beta/microsoft-edge-beta-125.0.2535.37.ebuild (renamed from www-client/microsoft-edge-beta/microsoft-edge-beta-124.0.2478.49.ebuild)0
-rw-r--r--www-client/microsoft-edge-beta/microsoft-edge-beta-125.0.2535.47.ebuild (renamed from www-client/microsoft-edge-beta/microsoft-edge-beta-124.0.2478.51.ebuild)0
-rw-r--r--www-client/microsoft-edge-dev/Manifest12
-rw-r--r--www-client/microsoft-edge-dev/microsoft-edge-dev-125.0.2535.6.ebuild (renamed from www-client/microsoft-edge-dev/microsoft-edge-dev-125.0.2492.1.ebuild)0
-rw-r--r--www-client/microsoft-edge-dev/microsoft-edge-dev-126.0.2552.0.ebuild (renamed from www-client/microsoft-edge-dev/microsoft-edge-dev-125.0.2506.0.ebuild)0
-rw-r--r--www-client/microsoft-edge-dev/microsoft-edge-dev-126.0.2566.1.ebuild (renamed from www-client/microsoft-edge-dev/microsoft-edge-dev-125.0.2518.0.ebuild)0
-rw-r--r--www-client/microsoft-edge/Manifest4
-rw-r--r--www-client/microsoft-edge/microsoft-edge-124.0.2478.105.ebuild (renamed from www-client/microsoft-edge/microsoft-edge-124.0.2478.51.ebuild)0
-rw-r--r--www-client/opera-beta/Manifest8
-rw-r--r--www-client/opera-beta/opera-beta-110.0.5130.13.ebuild (renamed from www-client/opera-beta/opera-beta-110.0.5130.4.ebuild)0
-rw-r--r--www-client/opera-beta/opera-beta-110.0.5130.17.ebuild (renamed from www-client/opera-developer/opera-developer-111.0.5131.0.ebuild)0
-rw-r--r--www-client/opera-developer/Manifest8
-rw-r--r--www-client/opera-developer/opera-developer-111.0.5151.0.ebuild (renamed from www-client/opera-developer/opera-developer-111.0.5138.0.ebuild)0
-rw-r--r--www-client/opera-developer/opera-developer-111.0.5159.0.ebuild (renamed from www-client/opera-beta/opera-beta-109.0.5097.24-r1.ebuild)2
-rw-r--r--www-client/opera/Manifest6
-rw-r--r--www-client/opera/metadata.xml1
-rw-r--r--www-client/opera/opera-109.0.5097.59.ebuild172
-rw-r--r--www-client/opera/opera-110.0.5130.23.ebuild173
-rw-r--r--www-client/vivaldi-snapshot/Manifest4
-rw-r--r--www-client/vivaldi-snapshot/vivaldi-snapshot-6.8.3358.3.ebuild (renamed from www-client/vivaldi/vivaldi-6.7.3329.17.ebuild)4
-rw-r--r--www-client/vivaldi/Manifest16
-rw-r--r--www-client/vivaldi/vivaldi-6.7.3329.27.ebuild (renamed from www-client/vivaldi/vivaldi-6.6.3271.61.ebuild)15
-rw-r--r--www-client/vivaldi/vivaldi-6.7.3329.31.ebuild226
53 files changed, 5500 insertions, 286 deletions
diff --git a/www-client/Manifest.gz b/www-client/Manifest.gz
index 81a41a68ef89..ceb6e1814390 100644
--- a/www-client/Manifest.gz
+++ b/www-client/Manifest.gz
Binary files differ
diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
index bc272d8a48c4..6821e0fd66d0 100644
--- a/www-client/chromium/Manifest
+++ b/www-client/chromium/Manifest
@@ -1,11 +1,11 @@
AUX chromium-109-system-zlib.patch 440 BLAKE2B 95bb1099055e3e0e122d4d8a77cddec0a3417b3d87ef252d7a475f6be23b16f587ec627c90bac41d743bd9dc07488edccb0946ed465f2244b61adc44cd19761d SHA512 b4e386613eb2a0dd61af40bb29621356085e183b97d830661e5157e4f22c2ada5606d80e56d5a65fb2985cdffb505a878c32bdafb081b1fa24cbe976c7b60b86
AUX chromium-111-InkDropHost-crash.patch 1066 BLAKE2B ee0b42803a59ef4731e4f316849c2062870b92040ff4e339c3f3f2562999b54fa3176b27e432f31ada76559087631fd623d9f57f1961a42acd0684041c322a01 SHA512 dfa3ab6a84b57b6e66053be2597f0d6c7f4caf54b0e45a359774a56dfbe1e65bdea91120134e77b1e7c38c336a4fd8d05a7c26e9d3bf4bdc0fe40ad7cd832a54
AUX chromium-117-system-zstd.patch 998 BLAKE2B def8ed87b1d100a4272b3e13fe928a40f429546e77818ccac2cc2c15682ef3aec0d78ba158079facd0ce770049b5ef190c82d4d829f56043f7f08b51ef9b41e4 SHA512 b3beb98b539fe160fbc493ba410ae0f68540cc4b6834f1f8ce9a22c3f4f59ef5d583ad48793e10549fd02a701f833a3969791ef4524322cd1e715ca5bf226bc8
-AUX chromium-123-qt-gui-check.patch 1203 BLAKE2B 7ff17fb5d51aa323c99ce30ab63a437002174e2af6bb685b06ec2a573b16adb48b9a050f1f052f774d209bd47bd1df730b429a51083b952bfd5d6ffac7bb74f0 SHA512 9a83952e90816d031cf2b478d33db4aa00ccf7010cee4d99eca717430d0ec2f692bb98a0860f7daec562f7eb8c3f6f11de50a2756d49c3c57b9a7972c2e7ed3a
AUX chromium-124-libwebp-shim-sharpyuv.patch 870 BLAKE2B 10b34ca3c84ec1aa95376d43c3b4c356450127493ff055bfb5fc3fbabc4fe8cda0a899041b105748c229b2a943be57c0410f1cfb0ce38c5a10e40edad02bf67b SHA512 f01e616440a0f877823edacc5762ab068e25e25f984d1b3f22f9fbdec64272c43953edec15de40ad993f1bd35aeabf88034a3c8a2e40893b2d4308b8d28e0df5
AUX chromium-125-ninja-1-12.patch 695 BLAKE2B 757e944ac0b6f0b50f11f3119ab370494c3c281624405ca4ccb273cd9eaa01203fa59f5d45049242f1c539b4de1448206f239ac90e79b73a90f9b357426ac04f SHA512 cb7f7f2cefc29ee909fef5ae63a19168241de500111dcda2f60dd2660341037d1378be179d3193d8dcdb437596bcdc83eb9921ff3b08941474c58abb9c88c296
AUX chromium-125-oauth2-client-switches.patch 2091 BLAKE2B 0ec88e0d46d32944e9cb5b97e4d76855f74e377d7fa449f34e4d80f6aa5d57bb55c599604e2d860b192b8ea2153e01c808846991b352e4aee2e001f97860c754 SHA512 4a0fc7b0ed5f19adfac580e6eaa6a9728d8d39440f15d6e7384d33c318ba00408227d0fb945a64a360ec27c189c327dd92554bba468a7402c6b86932847c0805
AUX chromium-125-system-zstd.patch 1244 BLAKE2B cc8798ba70d79953add806f03d690400e4dbc0843ecb83b317e513f00af812f5ba3282ee72a349e7c029ec618bfcbfba4366b2b9c09a01cfa687a9cffeb6f794 SHA512 7769ef643841bd56a5c3158bb6c13b45880822e465de1dd817f7f48a548b25e1d528d22da6cfbd81f5daad3f14c455a27d067c03f82eab7493f15bab28053a8c
+AUX chromium-126-oauth2-client-switches.patch 2214 BLAKE2B 0dfc0dcd585bcd12793033292b1e10f448b84a65ee9354803237aca225a5de8b40a56f78cc806353d5240d41bed2efe82bc1b39ebea8ae4db2f79855f6ce1eaf SHA512 77e4e5609b9191160c73681020defd2d3e6fc3874837611e1febef538d3997fccea267ed87f6bbff6bd140f98d8e909d935ce3e3e0d53bf597882bb2282ab72c
AUX chromium-browser.xml 407 BLAKE2B 168d78b0855546ca559cfb51aff0bc85d5e6ae974c25eb76e4a02f6d11659489c6e40397a0b2f7bc1fda336fd2c6dd8c863fccc3340719210b41c7fef51927f4 SHA512 b767fb4fd1925029d95560fc14cb7ab12ae43b2fe923e92d75e733b9723cbe1dcdf6df041a2b62554e98b79b47ef3f6028c773e72e6fd53166a021d49657aeca
AUX chromium-cross-compile.patch 323 BLAKE2B 8d5091ce5287422c9688ede2563360a96b8bd34b9750dc1c8f0b6ca9aeff2c066fac2da169396baa131d971c087c78f9af53999df0e102d1f57176f5e8d3dd57 SHA512 06d3afc1aa19e57daac0e4bad37e1f365a68408240430e5e818e5a4f12e3b7519214eafa463633e447e7029f4ae13ea864ca347ad1fac117702a0be88718a954
AUX chromium-launcher-r7.sh 1631 BLAKE2B ae28d758264446511fd2b64ba69fe920144b351e8833e0e98f43d00633e850094c288b5d97d1a84801ea13aceb294623692c86c1b9be5811b7b97fa8a07a1ecd SHA512 1e97f8394bd8bb4b29570b1b85176efe6258314a596f079bee1c4018113e0023aa54a93690ba8de2a00d127af10dbe2cc3fb3127b72b841c6f28f9e7bed820e0
@@ -13,18 +13,23 @@ AUX chromium-use-oauth2-client-switches-as-default.patch 1085 BLAKE2B baf3c46330
AUX chromium.default 148 BLAKE2B 5ee5b582c59a6e4bef87bbb0e232e2470ad412b1fbbb3b9af6ef7153edb55c5b9080cc16a5a115b0c5b3c381aa87ce57a7b12bdd2070e67dac10a6c2995ddbaf SHA512 0d4849e03592fb58b05e62a43021eca7e61615616c8907c3b2e445402e03adaf9e8fa25b0a745d6c31eb037456215cc02b59e345a3a06d932e76cf990c92d739
DIST chromium-124-clang.tar.xz 50212876 BLAKE2B f4786d4192306c005ce790ec3fc2595055d7a835b438e3c7a101b2c56653ad0ef3eb7b797224c9fe910c7ccd31c7cad50d502411ef220d151a8a1b432610d6b8 SHA512 4fb7bbb8abc9b3ae065b32215327d5de58e27c20c0199a8c243a9bfb89bf95b932ac1c2162e65acc954bde5975373a40ccada346cd0340d89889a12e4b8b96df
DIST chromium-124-rust.tar.xz 145977368 BLAKE2B 3fccaed3a1f7b85a303f5e4281d0d7fe0d194f3203751bae4a937f3447260ecfa5141d49b945705d69d36e89901b99fd0955ce0e5bcff0c17c7096fd78782722 SHA512 272ef52b5b201aeb056db7339387504b78252411899ea13ed5829b77bab8c76fd84125d68678064ac204fa48caf16f86ee1d99c64d599d955fb1097d5e46fc51
-DIST chromium-124.0.6367.60.tar.xz 3432734968 BLAKE2B 8203576cf98c6118bf81d6f4440e7cb03d4f25530e9b6fb160c57b0cb38ee70311aa5f7d418d9f2e0ad6d0abe50e0e625022b36dea834e255a5113a034844590 SHA512 3c13cbd65b11d187576dbf40665b4e43397e706fe43516dd280ad238519aa663c490a314ff43a1f2b41c1f757e3d9dbeeefe88e2d0cf312bb149c7737d8713fd
-DIST chromium-124.0.6367.78.tar.xz 3438644780 BLAKE2B 5c55e2be7309762904201298097d8c08475586dc210f1870fadcb462787e71d54bde4bf0df41ad353c668894e84cb0e49c205080389a6131ddcc6d9f1b247125 SHA512 ff8d3161568875661ae343c40826dab62fc05e83c97a2d194da1b388d1ed3eaa233939c60df97a4dfc0857d3145c4db7779d3a34c65473880d8f9e15b6052629
+DIST chromium-124.0.6367.155.tar.xz 3446276744 BLAKE2B af057b9c1053878294ce3a4dd5777dc260c123a8c069dc8526572f3c4d51ca0f720cc3916df4fb6204912128a5def82a9f04ca71cd19c292413d711bf1516388 SHA512 632158c82c44c67b4d7e67c646f671f2ae4344d40759cca4269c024c1ad2be2740e67dbf0e4200a4da996d7234f0ef5c51a20c90433612775ddf7d5f94e1ae09
+DIST chromium-124.0.6367.207.tar.xz 3450794132 BLAKE2B b5e66e5483e48f165dcdb4c4e540913c2e4d4f93550beb1c529502122e5850594d555057e02c762a5ac2d0cc5ee5531476a5adda4ee1b43a39e0e6fcfe27ccbe SHA512 4ab47f51653b214d78215a95ff6c52db7f1f0d9bf331ec67a9b74109be8df66e84ebc927794a74777e692a77cdfd7d3fdba79190e0a70e18ee975e33050941df
DIST chromium-125-clang.tar.xz 50745124 BLAKE2B 6d9a8752a648c5e202c5597dd1adf52af9d37784166f75ab803a6dfbb4cd88e57f88851052f005d388020cd840d6854cbd295220f519325d5bfa3174ed9115dd SHA512 32200f39c1d4a24db30d67bfd324490c9fe4fcba2efb7bf83b6db14944a772cdd256dad93d7e23bf9efefc6c98007afde06ba7f8f2a1aafa7e27457e2193e23c
DIST chromium-125-rust.tar.xz 150461068 BLAKE2B b62fd93d4de25803da5eb98f67c25c455d7ae8e86f202e614bcbe9787957e63ec01ef3eabde3eb7a69d51d25a95a32577477e69ab71c008dcb55411f6d755433 SHA512 6cedf2cfdfefea782c7f1b1b13daae8e44f0678cb2a92454cdea5cd95ada14bd331fc5634da0267369743ab31d9d73ec30d971bdd7a9b68c2f2270a22c552b8c
-DIST chromium-125.0.6422.14.tar.xz 3439769212 BLAKE2B ce72bfd95bce94917d43c34bee1be0331781f88b868972822cf8367176f5cb2dd2724d5d4a9230802a2134c040febe0c9b5dba0ded1678a41c07f4da6d83a6e0 SHA512 d8857afe8a3979acf3a9ee946a0c4a7b81489d91560a5c1402c7f64c12db3c2edb6226f7deed223b24d4868dd852d5ad4dd6ff51befc40a1b49456592369ecf3
+DIST chromium-125.0.6422.60.tar.xz 3453234996 BLAKE2B 67b98557fdff66d6f74363820a07ae0e22c2e0b9ce1ba23b14d59b9baea7a3b727db85e158c525a111b686ce8fcdc8f3cc28e07c2b049e36dba6acf131572e57 SHA512 531bebdd363373f12c3f978cbba9de47cf99386c0ea15a9723d92f5facda50f9beae5a8a5ed8f4e49f3787f1c616b3cd45b852f872f3559b14fc64673d4b4de6
+DIST chromium-126-clang.tar.xz 50615992 BLAKE2B 293709399ddf343ba195cec452974178228ebb72921931ad58136351956b881f8dc0bc8ca740252bcd4971701c9ee8ccc0a33648aee25a5b1cece56e0af6b83f SHA512 7bb2938b1df452585d0ee93da3bcf9c3e64e88e39059a713fe21758df670190b12ca002ef2764dc99efdb4284b4c4b7cde861e2e495d99956c21120a51b8c3dc
+DIST chromium-126-rust.tar.xz 150643432 BLAKE2B d9c827008a2fae07977628beccdf3cf4e5d9bf3c9728e4b2839c8bc86ee2f87844921064e30c067a1b620a3d53cbf54a74053172b1436239332fc668f772924d SHA512 431c0305a81e59da231d56f1b119226b661d7f5a93d0da92afbfc384b0e5be28f282c2911137983298a5369c93b60184d41875ec63b47048a782ee2b1301fc77
+DIST chromium-126.0.6478.8.tar.xz 4133359308 BLAKE2B bb9bdeace0119730c74ed2d7399df05ca8913f30e2f848c4107a8482654e7cf725c163ac0bf17fee1568772553af00799ef3d0ea315e617e51efe150105db6ff SHA512 e4e9a9779f074061b7ea36afbfa40f69f9228765262a65b8d6714d50e75d56060e0e23485bbd143dba4ccc6183fdec18c9af1c873bb3aa6cee063e90e6cbf4fd
DIST chromium-patches-124.tar.bz2 4706 BLAKE2B 5acae233ce7b43669dbf65c368467f94c9a0ec509713ec4510943ede12d495dad1670a5c0a7435e0e16251c7429145e575cb1c9661439ff1c626d709856b6a94 SHA512 3d0d365b6d484def626153b07c0ab187195f27ebada63bd2547b52ed1e2157aab2415a6140c293a140d7a0545ae0fc1cdd431b37fa0c4a212a34c13baccb358c
DIST chromium-patches-125.tar.bz2 4688 BLAKE2B 96cffec1931f59bfad53efee930292ca123e3daf3cf6f062583aae15853283c32ce2f564de7e35b678a34ed7981d5e8796059d00d5409c31d3e2e5839f93cf9c SHA512 fe4173b2409002d52fd443e87ce4894b53d0b24808f002766942086b99174cb9da42b6e7f92d80d6432d78d7ae3458265ec6cf091a76d0e4e25b44dfdd438dcf
+DIST chromium-patches-126.tar.bz2 4538 BLAKE2B c1f224015618ec908ef09d0c04a2243923371e2caeccd60d93747599fd1434b284291a5b4326008db21749cf78827d5a4b50d22fc805dcd3c1fd86303dc82729 SHA512 6692075adac0379b5f27d1023de1a051cf7f7f7138efd32dfc3af0d501b714142a16daf18022bb46d92218587f364f4dafe9f4aea24f6826e88b0e7cc2be7d0b
DIST chromium-ppc64le-gentoo-patches-1.tar.xz 5636 BLAKE2B 1d898939df023c59285b27bee552470483ea06375d1ee8d6947b89c5927c23cc7bfec6b49f3b376ece931d11a56f8e2a45791e0f92ad61974fc8c34c1082d89c SHA512 8a71cb007e47cda8e5fe5d185729389e65c48bd322c8ee8b3986bee8571427b959628f2666bda646a3f89ae64197c0957d3626845ff03461dbd5dee4c964d07c
DIST chromium-profiler-0.2.tar 259952640 BLAKE2B 5e82389fce00b267280d633b26551231c558b80f0c92cd7d60271095a3503365ab673e7a46dc5f74f8a82db1f21262cb24dcc0531d954bab5fb3b175dab3394d SHA512 9fa89a5ab728419683e7495ae676567480987d68a2d589f2aa97bfcbcf123f3c8f97f8bca5f65e5e3f6e41475535add473ded83b9c7a33bb4746a9d05b298a6c
DIST chromium_123.0.6312.105-1raptor0~deb12u1.debian.tar.xz 579484 BLAKE2B 587082358377f7bc0dca0dec83772abb7e040ad894ca4d456a294b7f5c19297acbc5b1dac725d3c1dbaaeefd480328c6c06c607438e560aa6359c1e98c4b1c9c SHA512 6b670a139e284cc96da65ff3c1b3e715cd9b436de2404792d619cfad23e2040fd931e7cc49f0b1ac17e11522804a4c9a621cb943e0dab33fb5bf422e954c5421
-DIST chromium_124.0.6367.60-1raptor0~deb12u1.debian.tar.xz 589000 BLAKE2B ce080b7e149f96f85b5151ea42bd9d7c784c4b05544be97790f409f3a75c633579f9cec46f6a253e511939d11ac353f696a9fb90fc06aceb2059dfea4daf7c73 SHA512 769eb20b8eb2a17539b40f603e9403350f9f5ffe4057c3608638c8b8155e103e98f7258a9df279f2835798a59d5c9ff3ee921adb52b6f1504864e176290f4c0d
-EBUILD chromium-124.0.6367.60.ebuild 47353 BLAKE2B d83e8eaa21477def57a02c18510e44086dbe97b2d53f4aa8a63a03f4e7bf11e7c2ccc29dcee3f97b14e657918e9cab65db60ff323294e8e4013d7ad8c0efe844 SHA512 fd51fa22e66ac63c9421a8b64b44d06589a836b915d2cee254b443fe5f6101131d69eb5c7904c17eef68af44057d63039c08ae31f546e00f6dd04a89b602b05b
-EBUILD chromium-124.0.6367.78.ebuild 47358 BLAKE2B 32ac0a1163ae496217414f1810d7af8fe5f4af066359e8beaa415954a0786f302e1b7e4a3495a00e9d8832ec39e1dcfd0db56159870447a44bb728e0a22230d1 SHA512 97932cbf04180750319d2bb22dc42c8c2748662983efc350bb7b8f117f5080e35bb848a408c5806a0c6b09572df35e331f25aa44faa3377861f0d430d419296b
-EBUILD chromium-125.0.6422.14.ebuild 47876 BLAKE2B 8a810f9c9cbce175853c62777cff4438be04ca61fb282e048cb94af78e59398c5466d5b234b8c3949e511e2dbcba5ee0f9a5ea7d01ec7711854a5e85bbd65a66 SHA512 52ff23378f8ce5419730c22ce8f516f373c8aa770fb16f994c33d509196447cbd222d34dbbf23fff7f875f332b46f9c1ed37c7d54346aea820649969976ce799
+DIST chromium_124.0.6367.118-1raptor0~deb12u1.debian.tar.xz 582728 BLAKE2B ee5fe2b0bbe5d3e5edcee07fbde0934a6c219f95c4e057b7a7ea01f2579b6d87e1c7f07090e98a13eeaa79b19a563d1b12f1ae49687872527d7b55b33a8eaf51 SHA512 800f409d8d14af957218159e73e7ecdde1f5c59221c3d8693cf6be0e811b682e78541ac490bd7f1c5c6820e74c6c690817635e45465675c9906fff55d1319f9f
+EBUILD chromium-124.0.6367.155.ebuild 47318 BLAKE2B 40945844480f1e8ad014f4c26f0247f223bdaa46b258e00347e059e4ff169e2c050291b3324aa68df9ff08cf2c04cb487bdce6f1803777de30d7ca00f2f9cb82 SHA512 9a17b9c3ad664e082602ed7a8efda12de4b8e7b3d04354dad24dff5121b063ba37c0bedec393cbb5b7a9c97b26a1cf123ec5f6d4183f499523f083a6c248512a
+EBUILD chromium-124.0.6367.207.ebuild 47639 BLAKE2B 16dedb3631a532b443f0b766dbaa6c3744093d4fb52573469849cd9aaf7f1a7c5e286cb92c26ece10098d8846513841ac8bc9ff97b188998c2d62828cb65d067 SHA512 8bd881b109694d0f2ec1114c52d87b4bd4c159454092aeac3bde9f4e54e014edbde089af388cc6c79bc9cc8f873a22e13ab67eb844f12d58f0915d73be822a4f
+EBUILD chromium-125.0.6422.60.ebuild 48119 BLAKE2B a066009ca38e639eab0a9819012dbb8078544a176134aa7f6abd5bb425a94d9b9428d6532c1f6585c07fb30153e1f6e8007195cec6c1b6921fa4f92a7829b12f SHA512 a99e3b3f4ee1bc867acfdb2c3adaff177d4fc69a6ee9ad17dc9cd82b9238c1f840e94b7def8637c9db69cd4009944ca8b6c3924244ebe87a53e7bebc344f768b
+EBUILD chromium-126.0.6478.8.ebuild 48097 BLAKE2B b98f4a58cf0c3e094ea512c90108ecefdfe87fa4c3080e56e55a4732fc520ee0ccbdb2e290cd05b73ee391ee6099c463687e7ae3fbf597e1b73f49c28ae3bd6c SHA512 45b3e7e1daa632c86543d99150591712955fc4092f2b5e09ff11ceb16c2cdce78c33e8951b4256988ae83f81eccf44fc1276c0a854f6b7b930f41535476deca1
MISC metadata.xml 2249 BLAKE2B 42e914e06d12ce6ebff4251fa81c28970676bb6cad7e9b1591dbbf79e45a8805fad6ee3bfb7c1b81f47e91e101091fbfcd565a0cc47f8280b9f169559ca61f2c SHA512 a30553dc4878fdb70546a1dbcb8c38ac42b0bddd500e1d09ba5a8414f681b3304e9a6a02e734c1e7eb58e782f30f6390be97b4a22996788e7639e8a9feb01ee9
diff --git a/www-client/chromium/chromium-124.0.6367.78.ebuild b/www-client/chromium/chromium-124.0.6367.155.ebuild
index 882cbec21f70..1312e2f87b23 100644
--- a/www-client/chromium/chromium-124.0.6367.78.ebuild
+++ b/www-client/chromium/chromium-124.0.6367.155.ebuild
@@ -68,7 +68,7 @@ inherit python-any-r1 qmake-utils readme.gentoo-r1 toolchain-funcs virtualx xdg-
DESCRIPTION="Open-source version of Google Chrome web browser"
HOMEPAGE="https://www.chromium.org/"
-PATCHSET_PPC64="124.0.6367.60-1raptor0~deb12u1"
+PATCHSET_PPC64="124.0.6367.118-1raptor0~deb12u1"
PATCH_V="${PV%%\.*}"
SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
system-toolchain? (
@@ -88,7 +88,7 @@ SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}
LICENSE="BSD"
SLOT="0/stable"
-KEYWORDS="~amd64 arm64 ~ppc64"
+KEYWORDS="amd64 arm64 ~ppc64"
IUSE_SYSTEM_LIBS="+system-harfbuzz +system-icu +system-png +system-zstd"
IUSE="+X ${IUSE_SYSTEM_LIBS} bindist cups debug ffmpeg-chromium gtk4 +hangouts headless kerberos libcxx +lto +official pax-kernel pgo +proprietary-codecs pulseaudio"
IUSE+=" qt5 qt6 +screencast selinux +system-toolchain +vaapi +wayland +widevine"
@@ -250,7 +250,7 @@ BDEPEND="
>=virtual/rust-${RUST_MIN_VER}[profiler(-)]
)
>=dev-build/gn-${GN_MIN_VER}
- <dev-build/ninja-1.12
+ dev-build/ninja
dev-lang/perl
>=dev-util/gperf-3.0.3
dev-vcs/git
@@ -428,6 +428,7 @@ src_prepare() {
"${FILESDIR}/chromium-111-InkDropHost-crash.patch"
"${FILESDIR}/chromium-117-system-zstd.patch"
"${FILESDIR}/chromium-124-libwebp-shim-sharpyuv.patch"
+ "${FILESDIR}/chromium-125-ninja-1-12.patch"
)
if use system-toolchain; then
@@ -457,7 +458,6 @@ src_prepare() {
done
PATCHES+=( "${WORKDIR}/ppc64le" )
PATCHES+=( "${WORKDIR}/debian/patches/fixes/rust-clanglib.patch" )
- PATCHES+=( "${WORKDIR}/debian/patches/fixes/blink-fonts-shape-result.patch" )
fi
default
diff --git a/www-client/chromium/chromium-124.0.6367.60.ebuild b/www-client/chromium/chromium-124.0.6367.207.ebuild
index 494c9e4c2caf..a52a4ba0e760 100644
--- a/www-client/chromium/chromium-124.0.6367.60.ebuild
+++ b/www-client/chromium/chromium-124.0.6367.207.ebuild
@@ -68,7 +68,7 @@ inherit python-any-r1 qmake-utils readme.gentoo-r1 toolchain-funcs virtualx xdg-
DESCRIPTION="Open-source version of Google Chrome web browser"
HOMEPAGE="https://www.chromium.org/"
-PATCHSET_PPC64="123.0.6312.105-1raptor0~deb12u1"
+PATCHSET_PPC64="124.0.6367.118-1raptor0~deb12u1"
PATCH_V="${PV%%\.*}"
SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
system-toolchain? (
@@ -88,7 +88,7 @@ SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}
LICENSE="BSD"
SLOT="0/stable"
-KEYWORDS="amd64 arm64"
+KEYWORDS="amd64 arm64 ~ppc64"
IUSE_SYSTEM_LIBS="+system-harfbuzz +system-icu +system-png +system-zstd"
IUSE="+X ${IUSE_SYSTEM_LIBS} bindist cups debug ffmpeg-chromium gtk4 +hangouts headless kerberos libcxx +lto +official pax-kernel pgo +proprietary-codecs pulseaudio"
IUSE+=" qt5 qt6 +screencast selinux +system-toolchain +vaapi +wayland +widevine"
@@ -250,8 +250,8 @@ BDEPEND="
>=virtual/rust-${RUST_MIN_VER}[profiler(-)]
)
>=dev-build/gn-${GN_MIN_VER}
+ dev-build/ninja
dev-lang/perl
- <dev-build/ninja-1.12.0
>=dev-util/gperf-3.0.3
dev-vcs/git
>=net-libs/nodejs-7.6.0[inspector]
@@ -336,7 +336,7 @@ pre_build_checks() {
# Check build requirements: bugs #471810, #541816, #914220
# We're going to start doing maths here on the size of an unpacked source tarball,
# this should make updates easier as chromium continues to balloon in size.
- local BASE_DISK=19
+ local BASE_DISK=22
local EXTRA_DISK=1
local CHECKREQS_MEMORY="4G"
tc-is-cross-compiler && EXTRA_DISK=2
@@ -428,6 +428,7 @@ src_prepare() {
"${FILESDIR}/chromium-111-InkDropHost-crash.patch"
"${FILESDIR}/chromium-117-system-zstd.patch"
"${FILESDIR}/chromium-124-libwebp-shim-sharpyuv.patch"
+ "${FILESDIR}/chromium-125-ninja-1-12.patch"
)
if use system-toolchain; then
@@ -457,7 +458,6 @@ src_prepare() {
done
PATCHES+=( "${WORKDIR}/ppc64le" )
PATCHES+=( "${WORKDIR}/debian/patches/fixes/rust-clanglib.patch" )
- PATCHES+=( "${WORKDIR}/debian/patches/fixes/blink-fonts-shape-result.patch" )
fi
default
@@ -812,6 +812,12 @@ chromium_configure() {
if tc-is-clang; then
myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
+ # Workaround for build failure with clang-18 and -march=native without
+ # avx512. Does not affect e.g. -march=skylake, only native (bug #931623).
+ use amd64 && is-flagq -march=native &&
+ [[ $(clang-major-version) -ge 18 ]] &&
+ tc-cpp-is-true "!defined(__AVX512F__)" ${CXXFLAGS} &&
+ append-flags -mevex512
else
myconf_gn+=" is_clang=false"
fi
diff --git a/www-client/chromium/chromium-125.0.6422.14.ebuild b/www-client/chromium/chromium-125.0.6422.60.ebuild
index 474f868333a8..84f77b0f9dc8 100644
--- a/www-client/chromium/chromium-125.0.6422.14.ebuild
+++ b/www-client/chromium/chromium-125.0.6422.60.ebuild
@@ -87,7 +87,7 @@ SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}
pgo? ( https://github.com/elkablo/chromium-profiler/releases/download/v0.2/chromium-profiler-0.2.tar )"
LICENSE="BSD"
-SLOT="0/beta"
+SLOT="0/stable"
KEYWORDS="~amd64 ~arm64"
IUSE_SYSTEM_LIBS="+system-harfbuzz +system-icu +system-png +system-zstd"
IUSE="+X ${IUSE_SYSTEM_LIBS} bindist cups debug ffmpeg-chromium gtk4 +hangouts headless kerberos libcxx +lto +official pax-kernel pgo +proprietary-codecs pulseaudio"
@@ -458,7 +458,6 @@ src_prepare() {
done
PATCHES+=( "${WORKDIR}/ppc64le" )
PATCHES+=( "${WORKDIR}/debian/patches/fixes/rust-clanglib.patch" )
- PATCHES+=( "${WORKDIR}/debian/patches/fixes/blink-fonts-shape-result.patch" )
fi
default
@@ -815,6 +814,12 @@ chromium_configure() {
if tc-is-clang; then
myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
+ # Workaround for build failure with clang-18 and -march=native without
+ # avx512. Does not affect e.g. -march=skylake, only native (bug #931623).
+ use amd64 && is-flagq -march=native &&
+ [[ $(clang-major-version) -ge 18 ]] &&
+ tc-cpp-is-true "!defined(__AVX512F__)" ${CXXFLAGS} &&
+ append-flags -mevex512
else
myconf_gn+=" is_clang=false"
fi
diff --git a/www-client/chromium/chromium-126.0.6478.8.ebuild b/www-client/chromium/chromium-126.0.6478.8.ebuild
new file mode 100644
index 000000000000..11b4f1f6b96b
--- /dev/null
+++ b/www-client/chromium/chromium-126.0.6478.8.ebuild
@@ -0,0 +1,1452 @@
+# Copyright 2009-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..13} )
+PYTHON_REQ_USE="xml(+)"
+
+# PACKAGING NOTES
+
+# Google roll their bundled Clang every two weeks, and the bundled Rust
+# is rolled regularly and depends on that. While we do our best to build
+# with system Clang, we will eventually hit the point where we need to use
+# the bundled Clang due to the use of prerelease features. We've been lucky
+# enough so far that this hasn't been an issue.
+
+# We try and avoid forcing the use of the custom/bundled libcxx, but sometimes
+# it is unavoidable. Remember to force the use of Clang when this is forced.
+
+# GCC is _not_ supported upstream, though patches are welcome. We do our
+# best to enable builds with GCC but reserve the right to force Clang
+# builds if we can't keep up with upstream's changes. Please comment
+# when forcing Clang builds so we can track the need for it.
+
+# GN is bundled with Chromium, but we always use the system version. Remember to
+# check for upstream changes to GN and update ebuild (and version below) as required.
+
+# For binhost users, if USE=bindist is set, we configure Chromium in a way that it is able
+# to use proprietary codecs, and so that ffmpeg is an external component (libffmpeg.so),
+# then we remove ffmpeg from the image to ensure that the built package is distributable
+# (i.e. we don't owe royalties). A suitable libffmpeg.so is symlinked in its place;
+# as a result of this, ffmpeg[chromium] or ffmpeg-chromium must be installed on the system.
+
+# For non-binhost builds, we build the bundled ffmpeg and enable proprietary codecs because there's
+# no reason not to. Todo: Re-enable USE=system-ffmpeg.
+
+# These variables let us easily bound supported major dependency versions in one place.
+GCC_MIN_VER=12
+GN_MIN_VER=0.2165
+# Since Google use prerelease llvm we can let any adventurous users try to build with prerelease
+# ebuilds; try to keep this up to date with the latest version in the tree.
+LLVM_MAX_SLOT=19
+LLVM_MIN_SLOT=17
+RUST_MIN_VER=1.72.0
+# chromium-tools/get-chromium-toolchain-strings.sh
+GOOGLE_CLANG_VER=llvmorg-19-init-9433-g76ea5feb-1
+GOOGLE_RUST_VER=31e6e8c6c5b6ce62656c922c7384d3376018c980-2
+
+# https://bugs.chromium.org/p/v8/issues/detail?id=14449 - V8 used in 120 can't build with GCC
+# Resolved upstream, requires testing and some backporting I'm sure
+: ${CHROMIUM_FORCE_CLANG=yes}
+# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101227 - Chromium 120:
+# webrtc - no matching member function for call to 'emplace'
+: ${CHROMIUM_FORCE_LIBCXX=yes}
+# 121's 'gcc_link_wrapper.py' currently fails if not using lld due to the addition of rust
+: ${CHROMIUM_FORCE_LLD=yes}
+
+: ${CHROMIUM_FORCE_GOOGLE_TOOLCHAIN=no}
+
+VIRTUALX_REQUIRED="pgo"
+
+CHROMIUM_LANGS="af am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
+ hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
+ sv sw ta te th tr uk ur vi zh-CN zh-TW"
+
+inherit check-reqs chromium-2 desktop flag-o-matic llvm ninja-utils pax-utils
+inherit python-any-r1 qmake-utils readme.gentoo-r1 systemd toolchain-funcs virtualx xdg-utils
+
+DESCRIPTION="Open-source version of Google Chrome web browser"
+HOMEPAGE="https://www.chromium.org/"
+PATCHSET_PPC64="123.0.6312.105-1raptor0~deb12u1"
+PATCH_V="${PV%%\.*}"
+SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
+ system-toolchain? (
+ https://gitlab.com/Matt.Jolly/chromium-patches/-/archive/${PATCH_V}/chromium-patches-${PATCH_V}.tar.bz2
+ )
+ !system-toolchain? (
+ https://commondatastorage.googleapis.com/chromium-browser-clang/Linux_x64/clang-${GOOGLE_CLANG_VER}.tar.xz
+ -> chromium-${PV%%\.*}-clang.tar.xz
+ https://commondatastorage.googleapis.com/chromium-browser-clang/Linux_x64/rust-toolchain-${GOOGLE_RUST_VER}-${GOOGLE_CLANG_VER%??}.tar.xz
+ -> chromium-${PV%%\.*}-rust.tar.xz
+ )
+ ppc64? (
+ https://quickbuild.io/~raptor-engineering-public/+archive/ubuntu/chromium/+files/chromium_${PATCHSET_PPC64}.debian.tar.xz
+ https://deps.gentoo.zip/chromium-ppc64le-gentoo-patches-1.tar.xz
+ )
+ pgo? ( https://github.com/elkablo/chromium-profiler/releases/download/v0.2/chromium-profiler-0.2.tar )"
+
+LICENSE="BSD"
+SLOT="0/beta"
+KEYWORDS="~amd64 ~arm64"
+IUSE_SYSTEM_LIBS="+system-harfbuzz +system-icu +system-png +system-zstd"
+IUSE="+X ${IUSE_SYSTEM_LIBS} bindist cups debug ffmpeg-chromium gtk4 +hangouts headless kerberos libcxx +lto +official pax-kernel pgo +proprietary-codecs pulseaudio"
+IUSE+=" qt5 qt6 +screencast selinux +system-toolchain +vaapi +wayland +widevine"
+RESTRICT="!bindist? ( bindist )"
+
+REQUIRED_USE="
+ !headless? ( || ( X wayland ) )
+ pgo? ( X !wayland )
+ qt6? ( qt5 )
+ screencast? ( wayland )
+ !system-toolchain? ( libcxx )
+ ffmpeg-chromium? ( bindist proprietary-codecs )
+"
+
+COMMON_X_DEPEND="
+ x11-libs/libXcomposite:=
+ x11-libs/libXcursor:=
+ x11-libs/libXdamage:=
+ x11-libs/libXfixes:=
+ >=x11-libs/libXi-1.6.0:=
+ x11-libs/libXrandr:=
+ x11-libs/libXrender:=
+ x11-libs/libXtst:=
+ x11-libs/libxshmfence:=
+"
+
+COMMON_SNAPSHOT_DEPEND="
+ system-icu? ( >=dev-libs/icu-71.1:= )
+ >=dev-libs/libxml2-2.12.4:=[icu]
+ dev-libs/nspr:=
+ >=dev-libs/nss-3.26:=
+ dev-libs/libxslt:=
+ media-libs/fontconfig:=
+ >=media-libs/freetype-2.11.0-r1:=
+ system-harfbuzz? ( >=media-libs/harfbuzz-3:0=[icu(-)] )
+ media-libs/libjpeg-turbo:=
+ system-png? ( media-libs/libpng:=[-apng(-)] )
+ system-zstd? ( >=app-arch/zstd-1.5.5:= )
+ >=media-libs/libwebp-0.4.0:=
+ media-libs/mesa:=[gbm(+)]
+ >=media-libs/openh264-1.6.0:=
+ sys-libs/zlib:=
+ x11-libs/libdrm:=
+ !headless? (
+ dev-libs/glib:2
+ >=media-libs/alsa-lib-1.0.19:=
+ pulseaudio? ( media-libs/libpulse:= )
+ sys-apps/pciutils:=
+ kerberos? ( virtual/krb5 )
+ vaapi? ( >=media-libs/libva-2.7:=[X?,wayland?] )
+ X? (
+ x11-libs/libX11:=
+ x11-libs/libXext:=
+ x11-libs/libxcb:=
+ )
+ x11-libs/libxkbcommon:=
+ wayland? (
+ dev-libs/libffi:=
+ dev-libs/wayland:=
+ screencast? ( media-video/pipewire:= )
+ )
+ )
+"
+
+COMMON_DEPEND="
+ ${COMMON_SNAPSHOT_DEPEND}
+ app-arch/bzip2:=
+ dev-libs/expat:=
+ net-misc/curl[ssl]
+ sys-apps/dbus:=
+ media-libs/flac:=
+ sys-libs/zlib:=[minizip]
+ !headless? (
+ X? ( ${COMMON_X_DEPEND} )
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ media-libs/mesa:=[X?,wayland?]
+ cups? ( >=net-print/cups-1.3.11:= )
+ virtual/udev
+ x11-libs/cairo:=
+ x11-libs/gdk-pixbuf:2
+ x11-libs/pango:=
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtwidgets:5
+ )
+ qt6? ( dev-qt/qtbase:6[gui,widgets] )
+ )
+"
+RDEPEND="${COMMON_DEPEND}
+ !headless? (
+ || (
+ x11-libs/gtk+:3[X?,wayland?]
+ gui-libs/gtk:4[X?,wayland?]
+ )
+ qt5? ( dev-qt/qtgui:5[X?,wayland?] )
+ qt6? ( dev-qt/qtbase:6[X?,wayland?] )
+ )
+ virtual/ttf-fonts
+ selinux? ( sec-policy/selinux-chromium )
+ bindist? (
+ !ffmpeg-chromium? ( >=media-video/ffmpeg-6.1-r1:0/58.60.60[chromium] )
+ ffmpeg-chromium? ( media-video/ffmpeg-chromium:${PV%%\.*} )
+ )
+"
+DEPEND="${COMMON_DEPEND}
+ !headless? (
+ gtk4? ( gui-libs/gtk:4[X?,wayland?] )
+ !gtk4? ( x11-libs/gtk+:3[X?,wayland?] )
+ )
+"
+
+depend_clang_llvm_version() {
+ echo "sys-devel/clang:$1"
+ echo "sys-devel/llvm:$1"
+ echo "=sys-devel/lld-$1*"
+}
+
+# When passed multiple arguments we assume that
+# we want a range of versions, inclusive.
+depend_clang_llvm_versions() {
+ local _v
+ if [[ $# -eq 1 ]]; then
+ depend_clang_llvm_version "$1"
+ elif [[ $# -eq 2 ]]; then
+ if [[ $1 -eq $2 ]]; then
+ depend_clang_llvm_version "$1"
+ fi
+ echo "|| ("
+ for ((i=$1; i<=$2; i++)); do
+ echo "("
+ depend_clang_llvm_version "${i}"
+ echo ")"
+ done
+ echo ")"
+ else
+ die "depend_clang_llvm_versions() requires 1 or 2 arguments"
+ fi
+}
+
+BDEPEND="
+ ${COMMON_SNAPSHOT_DEPEND}
+ ${PYTHON_DEPS}
+ $(python_gen_any_dep '
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ')
+ >=app-arch/gzip-1.7
+ !headless? (
+ qt5? ( dev-qt/qtcore:5 )
+ qt6? ( dev-qt/qtbase:6 )
+ )
+ system-toolchain? (
+ libcxx? ( >=sys-devel/clang-${LLVM_MIN_SLOT} )
+ lto? ( $(depend_clang_llvm_versions ${LLVM_MIN_SLOT} ${LLVM_MAX_SLOT}) )
+ pgo? (
+ >=dev-python/selenium-3.141.0
+ >=dev-util/web_page_replay_go-20220314
+ $(depend_clang_llvm_versions ${LLVM_MIN_SLOT} ${LLVM_MAX_SLOT})
+ )
+ >=virtual/rust-${RUST_MIN_VER}[profiler(-)]
+ )
+ >=dev-build/gn-${GN_MIN_VER}
+ dev-build/ninja
+ dev-lang/perl
+ >=dev-util/gperf-3.0.3
+ dev-vcs/git
+ >=net-libs/nodejs-7.6.0[inspector]
+ >=sys-devel/bison-2.4.3
+ sys-devel/flex
+ virtual/pkgconfig
+"
+
+if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
+ BDEPEND+="system-toolchain? ( >=sys-devel/clang-${LLVM_MIN_SLOT} ) "
+fi
+
+if [[ ${CHROMIUM_FORCE_LLD} == yes ]]; then
+ BDEPEND+="system-toolchain? ( >=sys-devel/lld-${LLVM_MIN_SLOT} ) "
+else
+ # #918897: Hack for arm64
+ BDEPEND+=" arm64? ( >=sys-devel/lld-${LLVM_MIN_SLOT} )"
+fi
+
+if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
+ EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
+fi
+
+DISABLE_AUTOFORMATTING="yes"
+DOC_CONTENTS="
+Some web pages may require additional fonts to display properly.
+Try installing some of the following packages if some characters
+are not displayed properly:
+- media-fonts/arphicfonts
+- media-fonts/droid
+- media-fonts/ipamonafont
+- media-fonts/noto
+- media-fonts/ja-ipafonts
+- media-fonts/takao-fonts
+- media-fonts/wqy-microhei
+- media-fonts/wqy-zenhei
+
+To fix broken icons on the Downloads page, you should install an icon
+theme that covers the appropriate MIME types, and configure this as your
+GTK+ icon theme.
+
+For native file dialogs in KDE, install kde-apps/kdialog.
+
+To make password storage work with your desktop environment you may
+have install one of the supported credentials management applications:
+- app-crypt/libsecret (GNOME)
+- kde-frameworks/kwallet (KDE)
+If you have one of above packages installed, but don't want to use
+them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
+in /etc/chromium/default.
+"
+
+python_check_deps() {
+ python_has_version "dev-python/setuptools[${PYTHON_USEDEP}]"
+}
+
+needs_clang() {
+ [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || use libcxx || use lto || use pgo
+}
+
+needs_lld() {
+ # #641556: Force lld for lto and pgo builds, otherwise disable
+ # #918897: Temporary hack w/ use arm64
+ [[ ${CHROMIUM_FORCE_LLD} == yes ]] || use lto || use pgo || use arm64
+}
+
+llvm_check_deps() {
+ if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
+ einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+
+ if ( use lto || use pgo ) && ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
+ einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+
+ einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
+}
+
+pre_build_checks() {
+ # Check build requirements: bugs #471810, #541816, #914220
+ # We're going to start doing maths here on the size of an unpacked source tarball,
+ # this should make updates easier as chromium continues to balloon in size.
+ local BASE_DISK=22
+ local EXTRA_DISK=1
+ local CHECKREQS_MEMORY="4G"
+ tc-is-cross-compiler && EXTRA_DISK=2
+ if use lto || use pgo; then
+ CHECKREQS_MEMORY="9G"
+ tc-is-cross-compiler && EXTRA_DISK=4
+ use pgo && EXTRA_DISK=8
+ fi
+ if is-flagq '-g?(gdb)?([1-9])'; then
+ if use custom-cflags; then
+ EXTRA_DISK=13
+ fi
+ CHECKREQS_MEMORY="16G"
+ fi
+ CHECKREQS_DISK_BUILD="$((BASE_DISK + EXTRA_DISK))G"
+ check-reqs_${EBUILD_PHASE_FUNC}
+}
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ # The pre_build_checks are all about compilation resources, no need to run it for a binpkg
+ pre_build_checks
+ fi
+
+ if use headless; then
+ local headless_unused_flags=("cups" "kerberos" "pulseaudio" "qt5" "qt6" "vaapi" "wayland")
+ for myiuse in ${headless_unused_flags[@]}; do
+ use ${myiuse} && ewarn "Ignoring USE=${myiuse}, USE=headless is set."
+ done
+ fi
+
+ if ! use bindist && use ffmpeg-chromium; then
+ ewarn "Ignoring USE=ffmpeg-chromium, USE=bindist is not set."
+ fi
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ # The pre_build_checks are all about compilation resources, no need to run it for a binpkg
+ pre_build_checks
+
+ if use system-toolchain; then
+ local -x CPP="$(tc-getCXX) -E"
+ if tc-is-gcc && ! ver_test "$(gcc-version)" -ge ${GCC_MIN_VER}; then
+ die "At least gcc ${GCC_MIN_VER} is required"
+ fi
+ if use pgo && tc-is-cross-compiler; then
+ die "The pgo USE flag cannot be used when cross-compiling"
+ fi
+ if needs_clang && ! tc-is-clang; then
+ if tc-is-cross-compiler; then
+ CPP="${CBUILD}-clang++ -E"
+ else
+ CPP="${CHOST}-clang++ -E"
+ fi
+ fi
+ if needs_clang || tc-is-clang; then
+ if ver_test "$(clang-major-version)" -lt ${LLVM_MIN_SLOT}; then
+ die "At least Clang ${LLVM_MIN_SLOT} is required"
+ fi
+ # Ideally we never see this, but it should help prevent bugs like 927154
+ if ver_test "$(clang-major-version)" -gt ${LLVM_MAX_SLOT}; then
+ die "Clang $(clang-major-version) is too new; ${LLVM_MAX_SLOT} is the highest supported version"
+ fi
+ fi
+ fi
+ # Users should never hit this, it's purely a development convenience
+ if ver_test $(gn --version || die) -lt ${GN_MIN_VER}; then
+ die "dev-build/gn >= ${GN_MIN_VER} is required to build this Chromium"
+ fi
+ fi
+
+ chromium_suid_sandbox_check_kernel_config
+}
+
+src_prepare() {
+ # Calling this here supports resumption via FEATURES=keepwork
+ python_setup
+
+ # disable global media controls, crashes with libstdc++
+ sed -i -e \
+ "/\"GlobalMediaControlsCastStartStop\"/,+4{s/ENABLED/DISABLED/;}" \
+ "chrome/browser/media/router/media_router_feature.cc" || die
+
+ local PATCHES=(
+ "${FILESDIR}/chromium-109-system-zlib.patch"
+ "${FILESDIR}/chromium-111-InkDropHost-crash.patch"
+ "${FILESDIR}/chromium-125-system-zstd.patch"
+ "${FILESDIR}/chromium-126-oauth2-client-switches.patch"
+ "${FILESDIR}/chromium-cross-compile.patch"
+ )
+
+ if use system-toolchain; then
+ # The patchset is really only required if we're using the system-toolchain
+ PATCHES+=( "${WORKDIR}/chromium-patches-${PATCH_V}" )
+ # We can't use the bundled compiler builtins
+ sed -i -e \
+ "/if (is_clang && toolchain_has_rust) {/,+2d" \
+ build/config/compiler/BUILD.gn || die "Failed to disable bundled compiler builtins"
+ else
+ mkdir -p third_party/llvm-build/Release+Asserts || die "Failed to bundle llvm"
+ ln -s "${WORKDIR}"/bin third_party/llvm-build/Release+Asserts/bin || die "Failed to symlink llvm bin"
+ ln -s "${WORKDIR}"/lib third_party/llvm-build/Release+Asserts/lib || die "Failed to symlink llvm lib"
+ echo "${GOOGLE_CLANG_VER}" > third_party/llvm-build/Release+Asserts/cr_build_revision || \
+ die "Failed to set clang version"
+ ln -s "${WORKDIR}"/rust-toolchain third_party/rust-toolchain || die "Failed to bundle rust"
+ cp "${WORKDIR}"/rust-toolchain/VERSION \
+ "${WORKDIR}"/rust-toolchain/INSTALLED_VERSION || die "Failed to set rust version"
+ fi
+
+ if use ppc64 ; then
+ local p
+ for p in $(grep -v "^#" "${WORKDIR}"/debian/patches/series | grep "^ppc64le" || die); do
+ if [[ ! $p =~ "fix-breakpad-compile.patch" ]]; then
+ eapply "${WORKDIR}/debian/patches/${p}"
+ fi
+ done
+ PATCHES+=( "${WORKDIR}/ppc64le" )
+ PATCHES+=( "${WORKDIR}/debian/patches/fixes/rust-clanglib.patch" )
+ fi
+
+ default
+
+ mkdir -p third_party/node/linux/node-linux-x64/bin || die
+ ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
+
+ # adjust python interpreter version
+ sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
+
+ local keeplibs=(
+ base/third_party/cityhash
+ base/third_party/double_conversion
+ base/third_party/icu
+ base/third_party/nspr
+ base/third_party/superfasthash
+ base/third_party/symbolize
+ base/third_party/valgrind
+ base/third_party/xdg_user_dirs
+ buildtools/third_party/libc++
+ buildtools/third_party/libc++abi
+ chrome/third_party/mozilla_security_manager
+ courgette/third_party
+ net/third_party/mozilla_security_manager
+ net/third_party/nss
+ net/third_party/quic
+ net/third_party/uri_template
+ third_party/abseil-cpp
+ third_party/angle
+ third_party/angle/src/common/third_party/xxhash
+ third_party/angle/src/third_party/ceval
+ third_party/angle/src/third_party/libXNVCtrl
+ third_party/angle/src/third_party/volk
+ third_party/anonymous_tokens
+ third_party/apple_apsl
+ third_party/axe-core
+ third_party/blink
+ third_party/bidimapper
+ third_party/boringssl
+ third_party/boringssl/src/third_party/fiat
+ third_party/breakpad
+ third_party/breakpad/breakpad/src/third_party/curl
+ third_party/brotli
+ third_party/catapult
+ third_party/catapult/common/py_vulcanize/third_party/rcssmin
+ third_party/catapult/common/py_vulcanize/third_party/rjsmin
+ third_party/catapult/third_party/beautifulsoup4-4.9.3
+ third_party/catapult/third_party/html5lib-1.1
+ third_party/catapult/third_party/polymer
+ third_party/catapult/third_party/six
+ third_party/catapult/tracing/third_party/d3
+ third_party/catapult/tracing/third_party/gl-matrix
+ third_party/catapult/tracing/third_party/jpeg-js
+ third_party/catapult/tracing/third_party/jszip
+ third_party/catapult/tracing/third_party/mannwhitneyu
+ third_party/catapult/tracing/third_party/oboe
+ third_party/catapult/tracing/third_party/pako
+ third_party/ced
+ third_party/cld_3
+ third_party/closure_compiler
+ third_party/content_analysis_sdk
+ third_party/cpuinfo
+ third_party/crashpad
+ third_party/crashpad/crashpad/third_party/lss
+ third_party/crashpad/crashpad/third_party/zlib
+ third_party/crc32c
+ third_party/cros_system_api
+ third_party/d3
+ third_party/dav1d
+ third_party/dawn
+ third_party/dawn/third_party/gn/webgpu-cts
+ third_party/dawn/third_party/khronos
+ third_party/depot_tools
+ third_party/devscripts
+ third_party/devtools-frontend
+ third_party/devtools-frontend/src/front_end/third_party/acorn
+ third_party/devtools-frontend/src/front_end/third_party/additional_readme_paths.json
+ third_party/devtools-frontend/src/front_end/third_party/axe-core
+ third_party/devtools-frontend/src/front_end/third_party/chromium
+ third_party/devtools-frontend/src/front_end/third_party/codemirror
+ third_party/devtools-frontend/src/front_end/third_party/csp_evaluator
+ third_party/devtools-frontend/src/front_end/third_party/diff
+ third_party/devtools-frontend/src/front_end/third_party/i18n
+ third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
+ third_party/devtools-frontend/src/front_end/third_party/lighthouse
+ third_party/devtools-frontend/src/front_end/third_party/lit
+ third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
+ third_party/devtools-frontend/src/front_end/third_party/marked
+ third_party/devtools-frontend/src/front_end/third_party/puppeteer
+ third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/third_party/mitt
+ third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/third_party/rxjs
+ third_party/devtools-frontend/src/front_end/third_party/vscode.web-custom-data
+ third_party/devtools-frontend/src/front_end/third_party/wasmparser
+ third_party/devtools-frontend/src/third_party
+ third_party/distributed_point_functions
+ third_party/dom_distiller_js
+ third_party/eigen3
+ third_party/emoji-segmenter
+ third_party/farmhash
+ third_party/fdlibm
+ third_party/ffmpeg
+ third_party/fft2d
+ third_party/flatbuffers
+ third_party/fp16
+ third_party/freetype
+ third_party/fusejs
+ third_party/fxdiv
+ third_party/highway
+ third_party/liburlpattern
+ third_party/libzip
+ third_party/lit
+ third_party/gemmlowp
+ third_party/google_input_tools
+ third_party/google_input_tools/third_party/closure_library
+ third_party/google_input_tools/third_party/closure_library/third_party/closure
+ third_party/googletest
+ third_party/hunspell
+ third_party/iccjpeg
+ third_party/inspector_protocol
+ third_party/ipcz
+ third_party/jinja2
+ third_party/jsoncpp
+ third_party/jstemplate
+ third_party/khronos
+ third_party/lens_server_proto
+ third_party/leveldatabase
+ third_party/libaddressinput
+ third_party/libaom
+ third_party/libaom/source/libaom/third_party/fastfeat
+ third_party/libaom/source/libaom/third_party/SVT-AV1
+ third_party/libaom/source/libaom/third_party/vector
+ third_party/libaom/source/libaom/third_party/x86inc
+ third_party/libavif
+ third_party/libevent
+ third_party/libgav1
+ third_party/libjingle
+ third_party/libphonenumber
+ third_party/libsecret
+ third_party/libsrtp
+ third_party/libsync
+ third_party/libudev
+ third_party/libva_protected_content
+ third_party/libvpx
+ third_party/libvpx/source/libvpx/third_party/x86inc
+ third_party/libwebm
+ third_party/libx11
+ third_party/libxcb-keysyms
+ third_party/libxml/chromium
+ third_party/libyuv
+ third_party/lottie
+ third_party/lss
+ third_party/lzma_sdk
+ third_party/mako
+ third_party/maldoca
+ third_party/maldoca/src/third_party/tensorflow_protos
+ third_party/maldoca/src/third_party/zlibwrapper
+ third_party/markupsafe
+ third_party/material_color_utilities
+ third_party/mesa
+ third_party/metrics_proto
+ third_party/minigbm
+ third_party/modp_b64
+ third_party/nasm
+ third_party/nearby
+ third_party/neon_2_sse
+ third_party/node
+ third_party/omnibox_proto
+ third_party/one_euro_filter
+ third_party/openscreen
+ third_party/openscreen/src/third_party/
+ third_party/openscreen/src/third_party/tinycbor/src/src
+ third_party/opus
+ third_party/ots
+ third_party/pdfium
+ third_party/pdfium/third_party/agg23
+ third_party/pdfium/third_party/bigint
+ third_party/pdfium/third_party/freetype
+ third_party/pdfium/third_party/lcms
+ third_party/pdfium/third_party/libopenjpeg
+ third_party/pdfium/third_party/libtiff
+ third_party/perfetto
+ third_party/perfetto/protos/third_party/chromium
+ third_party/pffft
+ third_party/ply
+ third_party/polymer
+ third_party/private-join-and-compute
+ third_party/private_membership
+ third_party/protobuf
+ third_party/pthreadpool
+ third_party/puffin
+ third_party/pyjson5
+ third_party/pyyaml
+ third_party/qcms
+ third_party/re2
+ third_party/rnnoise
+ third_party/rust
+ third_party/s2cellid
+ third_party/securemessage
+ third_party/selenium-atoms
+ third_party/sentencepiece
+ third_party/sentencepiece/src/third_party/darts_clone
+ third_party/shell-encryption
+ third_party/simplejson
+ third_party/skia
+ third_party/skia/include/third_party/vulkan
+ third_party/skia/third_party/vulkan
+ third_party/smhasher
+ third_party/snappy
+ third_party/sqlite
+ third_party/swiftshader
+ third_party/swiftshader/third_party/astc-encoder
+ third_party/swiftshader/third_party/llvm-subzero
+ third_party/swiftshader/third_party/marl
+ third_party/swiftshader/third_party/subzero
+ third_party/swiftshader/third_party/SPIRV-Headers/include/spirv
+ third_party/swiftshader/third_party/SPIRV-Tools
+ third_party/tensorflow_models
+ third_party/tensorflow-text
+ third_party/tflite
+ third_party/tflite/src/third_party/eigen3
+ third_party/tflite/src/third_party/fft2d
+ third_party/tflite/src/third_party/xla/third_party/tsl
+ third_party/tflite/src/third_party/xla/xla/tsl/util
+ third_party/ruy
+ third_party/six
+ third_party/ukey2
+ third_party/unrar
+ third_party/utf
+ third_party/vulkan
+ third_party/wayland
+ third_party/webdriver
+ third_party/webgpu-cts
+ third_party/webrtc
+ third_party/webrtc/common_audio/third_party/ooura
+ third_party/webrtc/common_audio/third_party/spl_sqrt_floor
+ third_party/webrtc/modules/third_party/fft
+ third_party/webrtc/modules/third_party/g711
+ third_party/webrtc/modules/third_party/g722
+ third_party/webrtc/rtc_base/third_party/base64
+ third_party/webrtc/rtc_base/third_party/sigslot
+ third_party/widevine
+ third_party/woff2
+ third_party/wuffs
+ third_party/x11proto
+ third_party/xcbproto
+ third_party/xnnpack
+ third_party/zxcvbn-cpp
+ third_party/zlib/google
+ url/third_party/mozilla
+ v8/src/third_party/siphash
+ v8/src/third_party/valgrind
+ v8/src/third_party/utf8-decoder
+ v8/third_party/glibc
+ v8/third_party/inspector_protocol
+ v8/third_party/v8
+
+ # gyp -> gn leftovers
+ third_party/speech-dispatcher
+ third_party/usb_ids
+ third_party/xdg-utils
+ )
+
+ # USE=system-*
+ if ! use system-harfbuzz; then
+ keeplibs+=( third_party/harfbuzz-ng )
+ fi
+
+ if ! use system-icu; then
+ keeplibs+=( third_party/icu )
+ fi
+
+ if ! use system-png; then
+ keeplibs+=( third_party/libpng )
+ fi
+
+ if ! use system-zstd; then
+ keeplibs+=( third_party/zstd )
+ fi
+
+ if use libcxx || [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
+ keeplibs+=( third_party/libc++ )
+ fi
+
+ if ! use system-toolchain || [[ ${CHROMIUM_FORCE_GOOGLE_TOOLCHAIN} == yes ]]; then
+ keeplibs+=( third_party/llvm )
+ fi
+
+ # Arch-specific
+ if use arm64 || use ppc64 ; then
+ keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
+ fi
+ # we need to generate ppc64 stuff because upstream does not ship it yet
+ # it has to be done before unbundling.
+ if use ppc64; then
+ pushd third_party/libvpx >/dev/null || die
+ mkdir -p source/config/linux/ppc64 || die
+ # requires git and clang, bug #832803
+ # Revert https://chromium.googlesource.com/chromium/src/+/b463d0f40b08b4e896e7f458d89ae58ce2a27165%5E%21/third_party/libvpx/generate_gni.sh
+ # and https://chromium.googlesource.com/chromium/src/+/71ebcbce867dd31da5f8b405a28fcb0de0657d91%5E%21/third_party/libvpx/generate_gni.sh
+ # since we're not in a git repo
+ sed -i -e "s|^update_readme||g; s|clang-format|${EPREFIX}/bin/true|g; /^git -C/d; /git cl/d; /cd \$BASE_DIR\/\$LIBVPX_SRC_DIR/ign format --in-place \$BASE_DIR\/BUILD.gn\ngn format --in-place \$BASE_DIR\/libvpx_srcs.gni" \
+ generate_gni.sh || die
+ ./generate_gni.sh || die
+ popd >/dev/null || die
+
+ pushd third_party/ffmpeg >/dev/null || die
+ cp libavcodec/ppc/h264dsp.c libavcodec/ppc/h264dsp_ppc.c || die
+ cp libavcodec/ppc/h264qpel.c libavcodec/ppc/h264qpel_ppc.c || die
+ popd >/dev/null || die
+ fi
+
+ einfo "Unbundling third-party libraries ..."
+ # Remove most bundled libraries. Some are still needed.
+ build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
+
+ # bundled eu-strip is for amd64 only and we don't want to pre-stripped binaries
+ mkdir -p buildtools/third_party/eu-strip/bin || die
+ ln -s "${EPREFIX}"/bin/true buildtools/third_party/eu-strip/bin/eu-strip || die
+}
+
+chromium_rust_version_check() {
+ [[ ${MERGE_TYPE} == binary ]] && return
+ local rustc_version=( $(eselect --brief rust show 2>/dev/null) )
+ rustc_version=${rustc_version[0]#rust-bin-}
+ rustc_version=${rustc_version#rust-}
+
+ [[ -z "${rustc_version}" ]] && die "Failed to determine rust version, check 'eselect rust' output"
+
+ echo $rustc_version
+}
+
+chromium_configure() {
+ # Calling this here supports resumption via FEATURES=keepwork
+ python_setup
+
+ local myconf_gn=""
+
+ if use system-toolchain && [[ ${CHROMIUM_FORCE_GOOGLE_TOOLCHAIN} == no ]]; then
+ # Make sure the build system will use the right tools, bug #340795.
+ tc-export AR CC CXX NM
+
+ if needs_clang && ! tc-is-clang; then
+ # Force clang since gcc is either broken or build is using libcxx.
+ if tc-is-cross-compiler; then
+ CC="${CBUILD}-clang -target ${CHOST} --sysroot ${ESYSROOT}"
+ CXX="${CBUILD}-clang++ -target ${CHOST} --sysroot ${ESYSROOT}"
+ BUILD_CC=${CBUILD}-clang
+ BUILD_CXX=${CBUILD}-clang++
+ else
+ CC=${CHOST}-clang
+ CXX=${CHOST}-clang++
+ fi
+ strip-unsupported-flags
+ fi
+
+ if tc-is-clang; then
+ myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
+ # Workaround for build failure with clang-18 and -march=native without
+ # avx512. Does not affect e.g. -march=skylake, only native (bug #931623).
+ use amd64 && is-flagq -march=native &&
+ [[ $(clang-major-version) -eq 18 ]] && [[ $(clang-minor-version) -lt 6 ]] &&
+ tc-cpp-is-true "!defined(__AVX512F__)" ${CXXFLAGS} &&
+ append-flags -mevex512
+ else
+ myconf_gn+=" is_clang=false"
+ fi
+
+ if needs_lld ; then
+ # https://bugs.gentoo.org/918897#c32
+ append-ldflags -Wl,--undefined-version
+ myconf_gn+=" use_lld=true"
+ else
+ # This doesn't prevent lld from being used, but rather prevents gn from forcing it
+ myconf_gn+=" use_lld=false"
+ fi
+
+ if use lto; then
+ AR=llvm-ar
+ NM=llvm-nm
+ if tc-is-cross-compiler; then
+ BUILD_AR=llvm-ar
+ BUILD_NM=llvm-nm
+ fi
+ fi
+
+ myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
+
+ if tc-is-cross-compiler; then
+ tc-export BUILD_{AR,CC,CXX,NM}
+ myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
+ myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
+ myconf_gn+=" pkg_config=\"$(tc-getPKG_CONFIG)\""
+ myconf_gn+=" host_pkg_config=\"$(tc-getBUILD_PKG_CONFIG)\""
+
+ # setup cups-config, build system only uses --libs option
+ if use cups; then
+ mkdir "${T}/cups-config" || die
+ cp "${ESYSROOT}/usr/bin/${CHOST}-cups-config" "${T}/cups-config/cups-config" || die
+ export PATH="${PATH}:${T}/cups-config"
+ fi
+
+ # Don't inherit PKG_CONFIG_PATH from environment
+ local -x PKG_CONFIG_PATH=
+ else
+ myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
+ fi
+
+ local rustc_ver
+ rustc_ver=$(chromium_rust_version_check)
+ if ver_test "${rustc_ver}" -lt "${RUST_MIN_VER}"; then
+ eerror "Rust >=${RUST_MIN_VER} is required"
+ eerror "Please run 'eselect rust' and select the correct rust version"
+ die "Selected rust version is too old"
+ else
+ einfo "Using rust ${rustc_ver} to build"
+ fi
+ if [[ "$(eselect --brief rust show 2>/dev/null)" == *"bin"* ]]; then
+ myconf_gn+=" rust_sysroot_absolute=\"${EPREFIX}/opt/rust-bin-${rustc_ver}/\""
+ else
+ myconf_gn+=" rust_sysroot_absolute=\"${EPREFIX}/usr/lib/rust/${rustc_ver}/\""
+ fi
+ myconf_gn+=" rustc_version=\"${rustc_ver}\""
+ fi
+
+ # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
+ myconf_gn+=" is_debug=false"
+
+ # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
+ # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
+ myconf_gn+=" dcheck_always_on=$(usex debug true false)"
+ myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
+
+ # Component build isn't generally intended for use by end users. It's mostly useful
+ # for development and debugging.
+ myconf_gn+=" is_component_build=false"
+
+ # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
+ myconf_gn+=" enable_nacl=false"
+
+ # Use system-provided libraries.
+ # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
+ # TODO: use_system_hunspell (upstream changes needed).
+ # TODO: use_system_protobuf (bug #525560).
+ # TODO: use_system_sqlite (http://crbug.com/22208).
+
+ # libevent: https://bugs.gentoo.org/593458
+ local gn_system_libraries=(
+ flac
+ fontconfig
+ freetype
+ # Need harfbuzz_from_pkgconfig target
+ #harfbuzz-ng
+ libdrm
+ libjpeg
+ libwebp
+ libxml
+ libxslt
+ openh264
+ zlib
+ )
+ if use system-icu; then
+ gn_system_libraries+=( icu )
+ fi
+ if use system-png; then
+ gn_system_libraries+=( libpng )
+ fi
+ if use system-zstd; then
+ gn_system_libraries+=( zstd )
+ fi
+
+ build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
+
+ # See dependency logic in third_party/BUILD.gn
+ myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
+
+ # Optional dependencies.
+ myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
+ myconf_gn+=" enable_widevine=$(usex widevine true false)"
+
+ if use headless; then
+ myconf_gn+=" use_cups=false"
+ myconf_gn+=" use_kerberos=false"
+ myconf_gn+=" use_pulseaudio=false"
+ myconf_gn+=" use_vaapi=false"
+ myconf_gn+=" rtc_use_pipewire=false"
+ else
+ myconf_gn+=" use_cups=$(usex cups true false)"
+ myconf_gn+=" use_kerberos=$(usex kerberos true false)"
+ myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
+ myconf_gn+=" use_vaapi=$(usex vaapi true false)"
+ myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
+ myconf_gn+=" gtk_version=$(usex gtk4 4 3)"
+ fi
+
+ # Allows distributions to link pulseaudio directly (DT_NEEDED) instead of
+ # using dlopen. This helps with automated detection of ABI mismatches and
+ # prevents silent errors.
+ if use pulseaudio; then
+ myconf_gn+=" link_pulseaudio=true"
+ fi
+
+ # Non-developer builds of Chromium (for example, non-Chrome browsers, or
+ # Chromium builds provided by Linux distros) should disable the testing config
+ myconf_gn+=" disable_fieldtrial_testing_config=true"
+
+ if use system-toolchain; then
+ myconf_gn+=" use_gold=false"
+ fi
+
+ # The sysroot is the oldest debian image that chromium supports, we don't need it
+ myconf_gn+=" use_sysroot=false"
+
+ # This determines whether or not GN uses the bundled libcxx
+ # default: true
+ if use libcxx || [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
+ myconf_gn+=" use_custom_libcxx=true"
+ else
+ myconf_gn+=" use_custom_libcxx=false"
+ fi
+
+ # Disable pseudolocales, only used for testing
+ myconf_gn+=" enable_pseudolocales=false"
+
+ # Disable code formating of generated files
+ myconf_gn+=" blink_enable_generated_code_formatting=false"
+
+ if use bindist ; then
+ # proprietary_codecs just forces Chromium to say that it can use h264/aac,
+ # the work is still done by ffmpeg. If this is set to no Chromium
+ # won't be able to load the codec even if the library can handle it
+ myconf_gn+=" proprietary_codecs=true"
+ myconf_gn+=" ffmpeg_branding=\"Chrome\""
+ # build ffmpeg as an external component (libffmpeg.so) that we can remove / substitute
+ myconf_gn+=" is_component_ffmpeg=true"
+ else
+ ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
+ myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
+ myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
+ fi
+
+ # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
+ # Note: these are for Gentoo use ONLY. For your own distribution,
+ # please get your own set of keys. Feel free to contact chromium@gentoo.org
+ # for more info. The OAuth2 credentials, however, have been left out.
+ # Those OAuth2 credentials have been broken for quite some time anyway.
+ # Instead we apply a patch to use the --oauth2-client-id= and
+ # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
+ # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
+ # Chromium without baked-in values.
+ local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
+ myconf_gn+=" google_api_key=\"${google_api_key}\""
+ local myarch="$(tc-arch)"
+
+ # Avoid CFLAGS problems, bug #352457, bug #390147.
+ if ! use custom-cflags; then
+ replace-flags "-Os" "-O2"
+ strip-flags
+
+ # Debug info section overflows without component build
+ # Prevent linker from running out of address space, bug #471810 .
+ filter-flags "-g*"
+
+ # Prevent libvpx/xnnpack build failures. Bug 530248, 544702, 546984, 853646.
+ if [[ ${myarch} == amd64 ]]; then
+ filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4 -mno-xop -mno-sse4a
+ fi
+
+ if tc-is-gcc; then
+ # https://bugs.gentoo.org/904455
+ local -x CPP="$(tc-getCXX) -E"
+ # https://bugs.gentoo.org/912381
+ filter-lto
+ fi
+ fi
+
+ if [[ $myarch = amd64 ]] ; then
+ myconf_gn+=" target_cpu=\"x64\""
+ ffmpeg_target_arch=x64
+ elif [[ $myarch = arm64 ]] ; then
+ myconf_gn+=" target_cpu=\"arm64\""
+ ffmpeg_target_arch=arm64
+ elif [[ $myarch = ppc64 ]] ; then
+ myconf_gn+=" target_cpu=\"ppc64\""
+ ffmpeg_target_arch=ppc64
+ else
+ die "Failed to determine target arch, got '$myarch'."
+ fi
+
+ # Make sure that -Werror doesn't get added to CFLAGS by the build system.
+ # Depending on GCC version the warnings are different and we don't want
+ # the build to fail because of that.
+ myconf_gn+=" treat_warnings_as_errors=false"
+
+ # Disable fatal linker warnings, bug 506268.
+ myconf_gn+=" fatal_linker_warnings=false"
+
+ # Disable external code space for V8 for ppc64. It is disabled for ppc64
+ # by default, but cross-compiling on amd64 enables it again.
+ if tc-is-cross-compiler; then
+ if ! use amd64 && ! use arm64; then
+ myconf_gn+=" v8_enable_external_code_space=false"
+ fi
+ fi
+
+ # Only enabled for clang, but gcc has endian macros too
+ myconf_gn+=" v8_use_libm_trig_functions=true"
+
+ # Bug 491582.
+ export TMPDIR="${WORKDIR}/temp"
+ mkdir -p -m 755 "${TMPDIR}" || die
+
+ # https://bugs.gentoo.org/654216
+ addpredict /dev/dri/ #nowarn
+
+ # Disable unknown warning message from clang.
+ if tc-is-clang; then
+ append-flags -Wno-unknown-warning-option
+ if tc-is-cross-compiler; then
+ export BUILD_CXXFLAGS+=" -Wno-unknown-warning-option"
+ export BUILD_CFLAGS+=" -Wno-unknown-warning-option"
+ fi
+ fi
+
+ # Explicitly disable ICU data file support for system-icu/headless builds.
+ if use system-icu || use headless; then
+ myconf_gn+=" icu_use_data_file=false"
+ fi
+
+ # Don't need nocompile checks and GN crashes with our config
+ myconf_gn+=" enable_nocompile_tests=false"
+
+ # Enable ozone wayland and/or headless support
+ myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
+ myconf_gn+=" ozone_platform_headless=true"
+ if use headless; then
+ myconf_gn+=" ozone_platform=\"headless\""
+ myconf_gn+=" use_xkbcommon=false use_gtk=false use_qt=false"
+ myconf_gn+=" use_glib=false use_gio=false"
+ myconf_gn+=" use_pangocairo=false use_alsa=false"
+ myconf_gn+=" use_libpci=false use_udev=false"
+ myconf_gn+=" enable_print_preview=false"
+ myconf_gn+=" enable_remoting=false"
+ else
+ myconf_gn+=" use_system_libdrm=true"
+ myconf_gn+=" use_system_minigbm=true"
+ myconf_gn+=" use_xkbcommon=true"
+ if use qt5 || use qt6; then
+ local cbuild_libdir=$(get_libdir)
+ if tc-is-cross-compiler; then
+ # Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
+ local cbuild_libdir=$($(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libxslt)
+ cbuild_libdir=${cbuild_libdir:2}
+ cbuild_libdir=${cbuild_libdir/% }
+ fi
+ if use qt5; then
+ if tc-is-cross-compiler; then
+ myconf_gn+=" moc_qt5_path=\"${EPREFIX}/${cbuild_libdir}/qt5/bin\""
+ else
+ myconf_gn+=" moc_qt5_path=\"$(qt5_get_bindir)\""
+ fi
+ fi
+ if use qt6; then
+ myconf_gn+=" moc_qt6_path=\"${EPREFIX}/usr/${cbuild_libdir}/qt6/libexec\""
+ fi
+
+ myconf_gn+=" use_qt=true"
+ myconf_gn+=" use_qt6=$(usex qt6 true false)"
+ else
+ myconf_gn+=" use_qt=false"
+ fi
+ myconf_gn+=" ozone_platform_x11=$(usex X true false)"
+ myconf_gn+=" ozone_platform_wayland=$(usex wayland true false)"
+ myconf_gn+=" ozone_platform=$(usex wayland \"wayland\" \"x11\")"
+ use wayland && myconf_gn+=" use_system_libffi=true"
+ fi
+
+ # Results in undefined references in chrome linking, may require CFI to work
+ if use arm64; then
+ myconf_gn+=" arm_control_flow_integrity=\"none\""
+ fi
+
+ # Enable official builds
+ myconf_gn+=" is_official_build=$(usex official true false)"
+ myconf_gn+=" use_thin_lto=$(usex lto true false)"
+ myconf_gn+=" thin_lto_enable_optimizations=$(usex lto true false)"
+ if use official; then
+ # Allow building against system libraries in official builds
+ sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
+ tools/generate_shim_headers/generate_shim_headers.py || die
+ # Disable CFI: unsupported for GCC, requires clang+lto+lld
+ myconf_gn+=" is_cfi=false"
+ # Don't add symbols to build
+ myconf_gn+=" symbol_level=0"
+ fi
+
+ if use pgo; then
+ myconf_gn+=" chrome_pgo_phase=${1}"
+ if [[ "$1" == "2" ]]; then
+ myconf_gn+=" pgo_data_path=\"${2}\""
+ fi
+ else
+ # Disable PGO
+ myconf_gn+=" chrome_pgo_phase=0"
+ fi
+
+ # user CXXFLAGS might overwrite -march=armv8-a+crc+crypto, bug #851639
+ if use arm64 && tc-is-gcc; then
+ sed -i '/^#if HAVE_ARM64_CRC32C/a #pragma GCC target ("+crc+crypto")' \
+ third_party/crc32c/src/src/crc32c_arm64.cc || die
+ fi
+
+ # skipping typecheck is only supported on amd64, bug #876157
+ if ! use amd64; then
+ myconf_gn+=" devtools_skip_typecheck=false"
+ fi
+
+ einfo "Configuring Chromium ..."
+ set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
+ echo "$@"
+ "$@" || die
+}
+
+src_configure() {
+ chromium_configure $(usex pgo 1 0)
+}
+
+chromium_compile() {
+ # Final link uses lots of file descriptors.
+ ulimit -n 2048
+
+ # Calling this here supports resumption via FEATURES=keepwork
+ python_setup
+
+ # Don't inherit PYTHONPATH from environment, bug #789021, #812689
+ local -x PYTHONPATH=
+
+ # Build mksnapshot and pax-mark it.
+ if use pax-kernel; then
+ local x
+ for x in mksnapshot v8_context_snapshot_generator; do
+ if tc-is-cross-compiler; then
+ eninja -C out/Release "host/${x}"
+ pax-mark m "out/Release/host/${x}"
+ else
+ eninja -C out/Release "${x}"
+ pax-mark m "out/Release/${x}"
+ fi
+ done
+ fi
+
+ # Even though ninja autodetects number of CPUs, we respect
+ # user's options, for debugging with -j 1 or any other reason.
+ eninja -C out/Release chrome chromedriver chrome_sandbox
+
+ pax-mark m out/Release/chrome
+
+ if ! use system-toolchain; then
+ QA_FLAGS_IGNORED="
+ usr/lib64/chromium-browser/chrome
+ usr/lib64/chromium-browser/chrome-sandbox
+ usr/lib64/chromium-browser/chromedriver
+ usr/lib64/chromium-browser/chrome_crashpad_handler
+ usr/lib64/chromium-browser/libEGL.so
+ usr/lib64/chromium-browser/libGLESv2.so
+ usr/lib64/chromium-browser/libVkICD_mock_icd.so
+ usr/lib64/chromium-browser/libVkLayer_khronos_validation.so
+ usr/lib64/chromium-browser/libqt5_shim.so
+ usr/lib64/chromium-browser/libvk_swiftshader.so
+ usr/lib64/chromium-browser/libvulkan.so.1
+ "
+ fi
+}
+
+# This function is called from virtx, and must always return so that Xvfb
+# session isn't left running. If we return 1, virtx will call die().
+chromium_profile() {
+ einfo "Profiling for PGO"
+
+ pushd "${WORKDIR}/chromium-profiler-"* >/dev/null || return 1
+
+ # Remove old profdata in case profiling was interrupted.
+ rm -rf "${1}" || return 1
+
+ if ! "${EPYTHON}" ./chromium_profiler.py \
+ --chrome-executable "${S}/out/Release/chrome" \
+ --chromedriver-executable "${S}/out/Release/chromedriver.unstripped" \
+ --add-arg no-sandbox --add-arg disable-dev-shm-usage \
+ --profile-output "${1}"; then
+ eerror "Profiling failed"
+ return 1
+ fi
+
+ popd >/dev/null || return 1
+}
+
+src_compile() {
+ if use pgo; then
+ local profdata
+
+ profdata="${WORKDIR}/chromium.profdata"
+
+ if [[ ! -e "${WORKDIR}/.pgo-profiled" ]]; then
+ chromium_compile
+ virtx chromium_profile "$profdata"
+
+ touch "${WORKDIR}/.pgo-profiled" || die
+ fi
+
+ if [[ ! -e "${WORKDIR}/.pgo-phase-2-configured" ]]; then
+ # Remove phase 1 output
+ rm -r out/Release || die
+
+ chromium_configure 2 "$profdata"
+
+ touch "${WORKDIR}/.pgo-phase-2-configured" || die
+ fi
+
+ if [[ ! -e "${WORKDIR}/.pgo-phase-2-compiled" ]]; then
+ chromium_compile
+ touch "${WORKDIR}/.pgo-phase-2-compiled" || die
+ fi
+ else
+ chromium_compile
+ fi
+
+ mv out/Release/chromedriver{.unstripped,} || die
+
+ rm -f out/Release/locales/*.pak.info || die
+
+ # Build manpage; bug #684550
+ sed -e 's|@@PACKAGE@@|chromium-browser|g;
+ s|@@MENUNAME@@|Chromium|g;' \
+ chrome/app/resources/manpage.1.in > \
+ out/Release/chromium-browser.1 || die
+
+ # Build desktop file; bug #706786
+ sed -e 's|@@MENUNAME@@|Chromium|g;
+ s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
+ s|@@PACKAGE@@|chromium-browser|g;
+ s|\(^Exec=\)/usr/bin/|\1|g;' \
+ chrome/installer/linux/common/desktop.template > \
+ out/Release/chromium-browser-chromium.desktop || die
+
+ # Build vk_swiftshader_icd.json; bug #827861
+ sed -e 's|${ICD_LIBRARY_PATH}|./libvk_swiftshader.so|g' \
+ third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json.tmpl > \
+ out/Release/vk_swiftshader_icd.json || die
+}
+
+src_install() {
+ local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
+ exeinto "${CHROMIUM_HOME}"
+ doexe out/Release/chrome
+
+ newexe out/Release/chrome_sandbox chrome-sandbox
+ fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
+
+ doexe out/Release/chromedriver
+ doexe out/Release/chrome_crashpad_handler
+
+ ozone_auto_session () {
+ use X && use wayland && ! use headless && echo true || echo false
+ }
+ local sedargs=( -e
+ "s:/usr/lib/:/usr/$(get_libdir)/:g;
+ s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
+ )
+ sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
+ doexe chromium-launcher.sh
+
+ # It is important that we name the target "chromium-browser",
+ # xdg-utils expect it; bug #355517.
+ dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
+ # keep the old symlink around for consistency
+ dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
+
+ dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
+
+ # Allow users to override command-line options, bug #357629.
+ insinto /etc/chromium
+ newins "${FILESDIR}/chromium.default" "default"
+
+ pushd out/Release/locales > /dev/null || die
+ chromium_remove_language_paks
+ popd
+
+ insinto "${CHROMIUM_HOME}"
+ doins out/Release/*.bin
+ doins out/Release/*.pak
+
+ if use bindist; then
+ # We built libffmpeg as a component library, but we can't distribute it
+ # with proprietary codec support. Remove it and make a symlink to the requested
+ # system library.
+ rm -f out/Release/libffmpeg.so \
+ || die "Failed to remove bundled libffmpeg.so (with proprietary codecs)"
+ # symlink the libffmpeg.so from either ffmpeg-chromium or ffmpeg[chromium].
+ einfo "Creating symlink to libffmpeg.so from $(usex ffmpeg-chromium ffmpeg-chromium ffmpeg[chromium])..."
+ dosym ../chromium/libffmpeg.so$(usex ffmpeg-chromium .${PV%%\.*} "") \
+ /usr/$(get_libdir)/chromium-browser/libffmpeg.so
+ fi
+
+ (
+ shopt -s nullglob
+ local files=(out/Release/*.so out/Release/*.so.[0-9])
+ [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
+ )
+
+ # Install bundled xdg-utils, avoids installing X11 libraries with USE="-X wayland"
+ doins out/Release/xdg-{settings,mime}
+
+ if ! use system-icu && ! use headless; then
+ doins out/Release/icudtl.dat
+ fi
+
+ doins -r out/Release/locales
+ doins -r out/Release/MEIPreload
+
+ # Install vk_swiftshader_icd.json; bug #827861
+ doins out/Release/vk_swiftshader_icd.json
+
+ if [[ -d out/Release/swiftshader ]]; then
+ insinto "${CHROMIUM_HOME}/swiftshader"
+ doins out/Release/swiftshader/*.so
+ fi
+
+ # Install icons
+ local branding size
+ for size in 16 24 32 48 64 128 256 ; do
+ case ${size} in
+ 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
+ *) branding="chrome/app/theme/chromium" ;;
+ esac
+ newicon -s ${size} "${branding}/product_logo_${size}.png" \
+ chromium-browser.png
+ done
+
+ # Install desktop entry
+ domenu out/Release/chromium-browser-chromium.desktop
+
+ # Install GNOME default application entry (bug #303100).
+ insinto /usr/share/gnome-control-center/default-apps
+ newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
+
+ # Install manpage; bug #684550
+ doman out/Release/chromium-browser.1
+ dosym chromium-browser.1 /usr/share/man/man1/chromium.1
+
+ readme.gentoo_create_doc
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+ readme.gentoo_print_elog
+
+ if ! use headless; then
+ if use vaapi; then
+ elog "VA-API is disabled by default at runtime. You have to enable it"
+ elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
+ elog "in /etc/chromium/default."
+ fi
+ if use screencast; then
+ elog "Screencast is disabled by default at runtime. Either enable it"
+ elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
+ elog "inside Chromium or add --enable-features=WebRTCPipeWireCapturer"
+ elog "to CHROMIUM_FLAGS in /etc/chromium/default."
+ fi
+ if use gtk4; then
+ elog "Chromium prefers GTK3 over GTK4 at runtime. To override this"
+ elog "behavior you need to pass --gtk-version=4, e.g. by adding it"
+ elog "to CHROMIUM_FLAGS in /etc/chromium/default."
+ fi
+ if use qt5 && use qt6; then
+ elog "Chromium automatically selects Qt5 or Qt6 based on your desktop"
+ elog "environment. To override you need to pass --qt-version=5 or"
+ elog "--qt-version=6, e.g. by adding it to CHROMIUM_FLAGS in"
+ elog "/etc/chromium/default."
+ fi
+ fi
+
+ if systemd_is_booted && ! [[ -f "/etc/machine-id" ]]; then
+ ewarn "The lack of an '/etc/machine-id' file on this system booted with systemd"
+ ewarn "indicates that the Gentoo handbook was not followed to completion."
+ ewarn ""
+ ewarn "Chromium is known to behave unpredictably with this system configuration;"
+ ewarn "please complete the configuration of this system before logging any bugs."
+ fi
+}
diff --git a/www-client/chromium/files/chromium-123-qt-gui-check.patch b/www-client/chromium/files/chromium-123-qt-gui-check.patch
deleted file mode 100644
index 53c1ca89222f..000000000000
--- a/www-client/chromium/files/chromium-123-qt-gui-check.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 3a812de6e7e0b285eda21ebbb670ca809c4db2b5 Mon Sep 17 00:00:00 2001
-From: Matt Jolly <Matt.Jolly@footclan.ninja>
-Date: Thu, 11 Apr 2024 12:42:17 +1000
-Subject: [PATCH] Add QtGui to the list of Qt modules
-
-Re: https://bugreports.qt.io/browse/QTBUG-124135 - certain versions of QT
-(6.6.3, 6.7.0) produce pkg-config files that no longer emit dependencies.
-This causes Chromium builds to fail as due to not seeing QtGui as a dependency
-of QtWidgets:
-
- `gen/qt6/../../../../ui/qt/qt_shim.h:11:10: fatal error: 'QImage' file not found`
-
-While this has been resolved upstream, there will certainly be some users
-that are still using these versions of QT. This patch adds QtGui to the list of
-Qt modules that are required to build the Chromium UI.
-
-Bug: https://bugs.gentoo.org/928299
-Suggested-by: Chris Pritchard <chris@christopherpritchard.co.uk>
-Signed-off-by: Matt Jolly <kangie@gentoo.org>
---- a/ui/qt/BUILD.gn
-+++ b/ui/qt/BUILD.gn
-@@ -60,6 +60,7 @@ template("qt_shim") {
- pkg_config("qt" + invoker.qt_version + "_config") {
- packages = [
- "Qt" + invoker.qt_version + "Core",
-+ "Qt" + invoker.qt_version + "Gui",
- "Qt" + invoker.qt_version + "Widgets",
- ]
- }
---
-2.44.0
diff --git a/www-client/chromium/files/chromium-126-oauth2-client-switches.patch b/www-client/chromium/files/chromium-126-oauth2-client-switches.patch
new file mode 100644
index 000000000000..b7ddf794aa27
--- /dev/null
+++ b/www-client/chromium/files/chromium-126-oauth2-client-switches.patch
@@ -0,0 +1,45 @@
+From b6cda4bc2283a02a5b5209c0f4282a8365f6f33e Mon Sep 17 00:00:00 2001
+From: Matt Jolly <Matt.Jolly@footclan.ninja>
+Date: Tue, 21 May 2024 10:04:24 +1000
+Subject: [PATCH] www-client/chromium: work around dead oauth2 credentials -
+ 126 update
+
+126 changed the function proto; patch rebased.
+
+Google doesn't let us bake in OAuth2 credentials, and for some time,
+Google sign-in has been broken. Arch dealt with this in March, and so
+did we to some degree, but in the last few months, our sign-in
+credentials have been broken. It appears that we actually did remove API
+credentials in March around Chrome 89, but they got added back, perhaps
+when rotating newer versions to replace older versions. Work around this
+by following Arch's lead: we remove the predefined credentials, as
+before, but also we patch Chromium so that people can use their own
+easily, using Arch's patch for that.
+
+For more info, see:
+
+https://archlinux.org/news/chromium-losing-sync-support-in-early-march/
+https://bodhi.fedoraproject.org/updates/FEDORA-2021-48866282e5
+https://hackaday.com/2021/01/26/whats-the-deal-with-chromium-on-linux-google-at-odds-with-package-maintainers/
+
+Bug: https://bugs.gentoo.org/791871
+Signed-off-by: Matt Jolly <kangie@gentoo.org>
+--- a/google_apis/google_api_keys-inc.cc
++++ b/google_apis/google_api_keys-inc.cc
+@@ -193,11 +193,11 @@ class APIKeyCache {
+ std::string default_client_id = CalculateKeyValue(
+ GOOGLE_DEFAULT_CLIENT_ID,
+ STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), std::string(),
+- nullptr, std::string(), environment.get(), command_line, gaia_config);
++ ::switches::kOAuth2ClientID, std::string(), environment.get(), command_line, gaia_config);
+ std::string default_client_secret = CalculateKeyValue(
+ GOOGLE_DEFAULT_CLIENT_SECRET,
+ STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_SECRET), std::string(),
+- nullptr, std::string(), environment.get(), command_line, gaia_config);
++ ::switches::kOAuth2ClientSecret, std::string(), environment.get(), command_line, gaia_config);
+
+ // We currently only allow overriding the baked-in values for the
+ // default OAuth2 client ID and secret using a command-line
+--
+2.45.1
+
diff --git a/www-client/falkon/Manifest b/www-client/falkon/Manifest
index 0a7c4bfb616a..07562a732211 100644
--- a/www-client/falkon/Manifest
+++ b/www-client/falkon/Manifest
@@ -1,6 +1,6 @@
AUX falkon-23.07.80-python3.patch 1264 BLAKE2B d668b68b5282fad9670e0a20a140f621aade354e94a7b57f4093c37a163a7d6d90b8da6b911411a1a14973486f227de6efad3ebb49ca37fa9000ce47071976ef SHA512 33f4157e3f608ea01e95c0b6e46b958287abd943c3da94b7b599af2ef37a6683ff11f44325faf784d9927c6e71857cd086154a2e3e6f9cd90d6030587e0169a7
DIST falkon-23.08.5.tar.xz 2574364 BLAKE2B 9090263ee1e9a76cf9efebf6f3c8b5d0ca25a907f467ebe5adff6d54e71c79aa982317094ea354fb4fa898244b119b73640fc92ae301f95fe78551d3e84921a9 SHA512 215e2a4ff551aa6d3fab0317d2b2b823b7fee4c1f6a653118d00f3def9ebb037931e8cd81f33785a44c8aa8910e00fbda884c1cfcdb61190544d1e6c8396acf8
-DIST falkon-24.02.2.tar.xz 2577636 BLAKE2B 418a6fa17f5e9ef1a4df169c7f47bc6777930abcd37d276a563135121697a3d028a374629710a46b77bdd648ffd1de86784d2eb084e72ccd718947031d69e1c6 SHA512 37493aa624903b4d1fc5fbc8ddc12c7171da8db0f57c8aa9ce9450951538f2eb327102f62ee682da515a6fbb256079dd4e4a814922fdd33d6e74c5a9c4ef7f9b
+DIST falkon-24.04.90.tar.xz 2584412 BLAKE2B 120f1fbb4bf290059939d9a37a11c5001754535acf3245379264c5581d1307fa1e6073112e4efb27646c1e3072d953c1d84b5776acaa391821961cb48bf769d5 SHA512 cc1b9c8d24458e97add2421ab306553b36ba3307adc141e449436196920ba155aca40de71129fa7f1f610b2a25012acf96830ebd4732c78189d4ad4690687b9a
EBUILD falkon-23.08.5.ebuild 2302 BLAKE2B 4e88b797351a31b7459de1282d02ef2a7692c5ca6ff2f5b9c0799f46b42769f9c5e55f6da505e2a32aa3ad0aee6e14de10a99ad9ab4ee84ff77f0e4ea9cdbff5 SHA512 e59861927e10360bd4b9febb5b79c085f729df2975575c27f3fde94ddefebfb260a393a594e5d046d8dd13dba28c17f11f55a55f431b80427ea8939655b2cc2d
-EBUILD falkon-24.02.2.ebuild 2106 BLAKE2B 48fb8026a13dbebaa2033e51bd5953370187d10747f9845538c89738a7cb4c8c586097b064a5ef2eb79488de3f5d35c8e6b87d418a61c9620a92d6899fd34792 SHA512 11b3acd29cad2b51276b562cf94449af8e3cc09e9a019a0cc3945fb346e6cce81ed01a78c924a726ffd707a4f6c0fed8503c75f725b7e4f58b52c69666953040
+EBUILD falkon-24.04.90.ebuild 2106 BLAKE2B 48fb8026a13dbebaa2033e51bd5953370187d10747f9845538c89738a7cb4c8c586097b064a5ef2eb79488de3f5d35c8e6b87d418a61c9620a92d6899fd34792 SHA512 11b3acd29cad2b51276b562cf94449af8e3cc09e9a019a0cc3945fb346e6cce81ed01a78c924a726ffd707a4f6c0fed8503c75f725b7e4f58b52c69666953040
MISC metadata.xml 318 BLAKE2B 922a5e32e706b2976c5f359a14194d268d3f499398576c80ce5fad8c0fcea0fbf048de4480a80a6a1889c88b8b6c14147654a3ab4d5ffbcc258c2290da63f6d1 SHA512 614cb8dda7ad2088e5d6ef39b449bb4be0ac72cd0231c320188d76d1816dce6490c5114bb4798112c4b11d99d30a9e82ff8fcf08ffa8c049589682a5e38208f6
diff --git a/www-client/falkon/falkon-24.02.2.ebuild b/www-client/falkon/falkon-24.04.90.ebuild
index 34faabc2be78..34faabc2be78 100644
--- a/www-client/falkon/falkon-24.02.2.ebuild
+++ b/www-client/falkon/falkon-24.04.90.ebuild
diff --git a/www-client/firefox-bin/Manifest b/www-client/firefox-bin/Manifest
index d688b93dd3b2..0429b248d2af 100644
--- a/www-client/firefox-bin/Manifest
+++ b/www-client/firefox-bin/Manifest
@@ -292,13 +292,112 @@ DIST firefox-125.0.3-vi.xpi 645246 BLAKE2B 097b6b948e75936b3602f476165380d10edf5
DIST firefox-125.0.3-xh.xpi 414332 BLAKE2B 0830d61baf994a669054362c3200f0f1798e7d6ab1e1cb89a8d63e08880a07593d56ed91cdf6203e8cdf54f9ede14657100fcb258eb76c8b1faad53a4a4ea2ab SHA512 0fe510544373f0f1bd57e59032ca84cb5ce5b67ed972d1dd72ca33b6d90f9aae4ca0951c694d00195434c25120440b0a4da4fd3dd9ae92e0cadb7054ed536375
DIST firefox-125.0.3-zh-CN.xpi 645753 BLAKE2B a21ea3af45235dcca0378a16cbad27b56b135a03c958e4ebec2f9f717aee7b3a3b3706e39e2b1f1a6ddceacee51416641c9f166e2d5a428f7df476dfa483700e SHA512 8ff3f3882aefd9f856bbee20ca63f6341f2a0ed9b7235030ea9c63b3579a6e1125214aa2f9aa36b639b2a87a67326c2f12184ec9f09e78f954ea8e7a26aa49b7
DIST firefox-125.0.3-zh-TW.xpi 647651 BLAKE2B c05d06c30de86670e0baeacf2127cc53cbc8239860d01156f347d1bf7c9fb05aa568c4ac369df87a08fbad29fd2adc632a9ab6bd60fed8b55a64227646bc5a62 SHA512 44990a7f63b54e931b6d001dce27a31b3995ccf94fcbb7322f3e0f7ea806a5dc1b76a206066893d7e56616a2dd142ea0f81f0b4ba8b14286a0dba8d9ba4a22fc
+DIST firefox-126.0-ach.xpi 461750 BLAKE2B bd22a8b4dae2dda16e2505c911231b85e03d7de46875dc0ae0f8a1ade3dc415e26bb5424b7c300d8c6964a4326b6837bda7646828a2943a5405c121a7ace677e SHA512 761fe4dadebc6dc9b01cc66f1e60f2ad67edb9d8581056758ff5ffd213d74bcce198cdb32c9ddad2b0fb7e2653b67e91f0a61514b4e1a78983136f68c94edfe1
+DIST firefox-126.0-af.xpi 415209 BLAKE2B 4478650e633786f05d03ace7b22a339d64210cab324754ccc48a9f416b788f2f7dbd43da43d856bcf08e65f2f6f12c09c48f67a0aaf7c5f5e83e9c7703a36bf8 SHA512 3d2c0893c227d67a7cae4f2d27b0ed5d93f440175e21fed5b26f00500b34be1764a8ab00c12bccfd8296e966bfa38cc82e492721d768dad61dbc356f81942aff
+DIST firefox-126.0-an.xpi 503683 BLAKE2B 30b353afb4658db21daedf2ad24acc6aad4715caf16aa63e89ab95df0e5558df9c66f5f6ac1522456dcf3c75b4fe7c023a1f06895055a9d5fc69f6d6e97b34e0 SHA512 53da2bd4337106d12f06911a22e29be794f9564dfe100b281a240fefc17ba6dd9889ad53471a811faac5558ac4399f7c46117087d6071672c0840108ec9a9e1d
+DIST firefox-126.0-ar.xpi 607799 BLAKE2B 6389c0c3b95ec64e6db135efa7888f0798f99301d4c5f0e7b8d8617bf9070570eb138a9ed1a637b835735b629a0cfc8ae41a0a100586e0e8cf8f20baeb360146 SHA512 60fdd2ac023b434c9f5d6b83e0b65dd2c85347754e7c9a6659f9c6fe595785c1adda55139524e503b592760884294fbd4c66fc137e3ecee2c906c1c0532a14f9
+DIST firefox-126.0-ast.xpi 493866 BLAKE2B 22fbbddaaae134cd1119dea6e687f4db1061265caad8121f70181b2630549fb874bd130a39c7c99734e99c162c0ac9f980b3c0ce3e8407f040ee5bb20dde3232 SHA512 ce6c67c6b9ba8f0394904a185987203e51b10bda84ec9d171bc9b915c879001e6d938d2aa00dad3f412faf18e45314096df482e6260b3b88ef6ce5a3ab52e272
+DIST firefox-126.0-az.xpi 488425 BLAKE2B 6d60b5fa9714bd1f8475febef4ff5806e09cb41c99aef3c81b1d20c58b4ff460244524ff22b7742240ca45025589d9f6270e5a59106bf328b55d89c7f85f5335 SHA512 b1e9a94c3d273412aa496f4d6ab73a98c4c94897c8214d7cd95beaaf0819ca550f9f0fe275e3fd55ea2758e65bd8dc0198a855dc5b349f603ca6f1f8dcf91e71
+DIST firefox-126.0-be.xpi 707136 BLAKE2B 17c6d550e5be93bfe1bb95922b8f853c11555bea0e408994236b50a8833a4c12bcc18f6709e41131a9b4de9dee18085a89709964e246e8bb15f70eb4264577c0 SHA512 6723aee7141aa3c4bb412830d1d7a366a82696181cdcec69984d20d8e81e423835fe4d565d518c43ebc91313a2a9cb13c0c9c6774eda200e283efdb238b3304a
+DIST firefox-126.0-bg.xpi 601469 BLAKE2B 945d95ee472a99a48e7f84208a1494fac3cfc64e527ec059991daa354c6100d29fba93a422b9921aaa51e0d272def1a59aafa890492a6cbc210ab66dac746b74 SHA512 0534934c0b1e9255aed72232ef634db472f371be56506d71507974bf00452e82d7981966a474fd94ddcad550aba866cf0a6d7774ffd6ee19ac9ffe80cfb941ed
+DIST firefox-126.0-bn.xpi 579176 BLAKE2B 25ef761e595605c1fff45dcd45f2889e555db8f631b828584bfe7b9acbf762ca80596b70106da4073de73ab6823ad0b1b0e6203b426d4b7dabde0b6862fcc66f SHA512 e78f79059a826d0db85a1d7eda367b9a3830cebafc0eb78ee28daa4d6318a1bce5d1b1d6cab274feb7267cd878d34fab5c12603b8b804f65c247413fbfd06e34
+DIST firefox-126.0-br.xpi 585149 BLAKE2B 591542aaeab4049b24defad07acb696e96c6e0c571edf6d3a9543e504964d73e8a0c399ff2bc3d9e5f44a76b2391f720be7d2b94eb180a512f25722fdb4a0d9e SHA512 3597d841b557ae1e11578e788d56638d3e241b680c4b0260646e43e6109d909e73445b128b954980648c92bd1e3c081250957c033ce3471be34ac5a9584274e0
+DIST firefox-126.0-bs.xpi 499182 BLAKE2B 569e7607b33e2ac0d69536f382f9ae551ea7290b60122b0b6ad8d1ee55218576d84b235282dba0019f35ea7eeaec3ae6cecfb56fcb966b1248a670f10d460909 SHA512 02fb23b5c06ae784ef7e45449ff9214bb0931782a4aa6974dba49caa1139faf1ff0d1c257e99fd3062471cd1feca0811bcbb397d30331dd9297063c8fc9c41da
+DIST firefox-126.0-ca-valencia.xpi 543850 BLAKE2B 928c68b51701cebd91ad4cf1a9fc3430680e1191362f0bebfe9f11211988fb0d35a754fc2f396da3bce0f68efa67223bf0bd1a326156814e15896fd6a07fe0f8 SHA512 cdcb1b9bd464526aa83ea029fe34d3f25454edd6246993b15c6126ea54d8dd06175416e6a5568cd848ef8b6271aa6c0a3c689f3d92a73fc50adacf4c402aca36
+DIST firefox-126.0-ca.xpi 582652 BLAKE2B 4abe56254451bd86b24edaa3a85e7489c1934cabee27990da5b9b2f230efc058b3920512a03171373a924e241eca2c68c7a52a2aa99cfe07865f2ee27bda3e43 SHA512 3656856429fdfffbf82656a8bb953ecb40b482177be6d8fb333ba64eb40991fb52707bf56c3b4390a29bc6591e8c45e6fe7897bf5bc8a43d5c7cc3cc92517ff3
+DIST firefox-126.0-cak.xpi 590417 BLAKE2B c25dd0bcc040e0530370882741d823ee2ee1271f85d801c37a4a57fb6775142d01ad821efa56c6902bbc9facbbf4d5b3bd1eaad29c4ce1dda1400a48e2e668a2 SHA512 b956f430e5028a55c92cc61213a06eb3b39f2f858eb9e62edaf4e004c5221913c9d6052d3a7a4565bfb66eb2b4d37a44c1a2aaf22075068d4b75c9fb0e12ba56
+DIST firefox-126.0-cs.xpi 651840 BLAKE2B 23ff80f9af2adc5d3735541645cb068c763e5125397e11b26a8293e510a1610377daf8b75986f7b6fab550b57a0bac9412808a6fe43d3ac2a84d7ddb92d7799b SHA512 a563605af527e426a3eca184489423ef5c2eb7ab96091f73bc267fa2ef3641aea684d635793d9822004bf52858c1737308b231b16971d2b9976acc60375b2a56
+DIST firefox-126.0-cy.xpi 617234 BLAKE2B a73f5fe211f0cd7714eb52423b1eed9f5fd95ff92061bcefc88fc87299a660ab6a696d1f11b03f352a22ca10f34c1f3d04ea4f96b373a3278971d595faf437a5 SHA512 c8a2e715f066df83554d49455d51eb3bf69841c6bdc23aa192c98f827ee2ef3889eff9f1695f2c383d0fc764bee6f7eb3d9f3e60aba4f3969f985944699eec39
+DIST firefox-126.0-da.xpi 605577 BLAKE2B 63abd04d0d8d8a8234ba82055be4aa6f1de427950e1b7f695025646d133659c21d6b09527fbac53d58a5f61399ff73b57639b5e5d566f64494f642ff6ae3859e SHA512 2ffbca8bbab6ae00f8bb3eeb9614ab13af3ec4babab431f6c6b7c43a8823076412762d7cd38d76451d140ca52ad8af2a9d0c032be93f75caea1fcdfa1b107009
+DIST firefox-126.0-de.xpi 626799 BLAKE2B 5a53bfb6ece48a4814dbc87a90ba328c80eb0109aa7c43c5d050fcb643f3dd7f6bf4db8c5d262c14bc63366414b7bce4926b9f74773708500c34dab0b6e3b691 SHA512 c29e188c69a4e4fa82dccb8615cff93c607802a322afa0f0075ceb51ebcd0df5b0a291ac0b0bd6b33a936b86eccc1bb07763670039ae9dfe9a92b21ecece2a08
+DIST firefox-126.0-dsb.xpi 643331 BLAKE2B f484a53f93c5be8d6ddffb74becd00e56474dde161bc169238efb1938c1b4c4566e85afc390fe5ae3fa9f0549ba397c825d48d4ec4f021d02f2789e26727041a SHA512 bc3431129170f1b9f5e33bcfcba61d6d630f6ce8a20f8b58b5c95a3ea4f5b8db81290307bd3f3294e33398b97bd38a30d957846944504a38a62467c87c5fd5ce
+DIST firefox-126.0-el.xpi 724050 BLAKE2B 331b82f325c94ab839c5aad221ae9d2b511245045db65b045ff5269d91d8aa04b543279222e8febd3747c6766faa145a56571a6a33af2f69351acd8b487c7949 SHA512 ceffdfcdfbf0ae8fd1df2ff44259dc849bdbccc4e45929382024431c40733f4f78aff444119174fbdd4a426771e98ad897ad967cd9463b742eb7dd395807a5c2
+DIST firefox-126.0-en-CA.xpi 577921 BLAKE2B c6c8fb1dad71699ce36d7e486ab7d138b8fc792841d8fa766d411d426098c728830fa4b1141391ad3e8fe3cefad8769e2d8a71916c20990413b9ca721a5cbf64 SHA512 e55ed3aff1877e0a7c2bc5294394180ad26d449f8e8930d75f06ceea00b0adeb4a334ff5d5fc49ab30bacda4b14abb22fda8da32745dd24e9a191fc8a430604e
+DIST firefox-126.0-en-GB.xpi 578505 BLAKE2B 9ebcaac750876d16b7086e45699b9fe4af0fa303c223cca3ee44922542818363bb6ca2f36f235e10eb2dee35cf2932b2be25bc7a984e81a572ede6cdeff3eb6b SHA512 a66c1a3fd9db5c4ef59efda0cccbf34ee158f515535e7c781ded323f5157984721c3f4e616e4387a67b45ae45f3838370a97cc838adbe5e8b7207c81ff01b542
+DIST firefox-126.0-eo.xpi 608851 BLAKE2B 48723e34ef47b73470f3ec926563edc24b2692a0507fe3cf30b53e4091b45a5457b60afd213ad0a1a8c7a71d4e487335fc8f6359d08fc6d598fdf2d83f558940 SHA512 ac0b88df025fcc74a3048b685a4fdc1c3087def4f0911de3f66e91795f59d9236739a7a8e026fcadd8e88c4f830201bc83d6b91dd39ffee27f390a40bb4133d8
+DIST firefox-126.0-es-AR.xpi 620748 BLAKE2B 8690fc233a3237b47b298a0713211eec748e6e507af600f257b6e3a3173c984103c5b09dbe78b82e5b60c2993b273a27b097e1ceccb8e0a19970ae9c9bda3f46 SHA512 6cee5873d8db44ef9081c2a9d422e73f2dcd3b4d3c8c7019f99fbaa36aa1325611826fcdf530ee194d404cff6c28fae2aab2188322e9bceb314b549c907244fc
+DIST firefox-126.0-es-CL.xpi 619954 BLAKE2B 1471d73857a716b1a96e4128f243c565503a6276bfcd39fa302ad0a0984af90e69267d39c8f369edea68050c935af44db753b89c7dee459c1bbca655d2af2652 SHA512 8fbf7f7c5a634e2aa30266876fc707b03b471ca24270fa042a7da2ff76bc7353329ba1c0367cf25e2283d1a2347b6b851f40c0b48065111fcc9dabe188c4075d
+DIST firefox-126.0-es-ES.xpi 614786 BLAKE2B 7e8824b5141314a46cc9027b1b352ce63e0013c663e70b055b29c3a404e673b6867e2ab3d388a08fde741185f94312fdec875123ebc5df8c83288346c586f25d SHA512 d97587a4a6c68e7404724850db666accdf85ca7c83bebfb5cbdba389e4854979815c5ad7454351025f44f0a88a8143889be8a65b0897f60cc4297b9434aec20d
+DIST firefox-126.0-es-MX.xpi 589049 BLAKE2B 52c44347d8969293ede309d6630503bb0124f00f9caab35c673e2d08c3bb6db6ecd25503b2660989289ad111ea8efdd7fd4c6b4fdb3ea3892cd3549306d0578d SHA512 c43bc8ebae91fbc98139e3d9a97514bd4ab01cc762fbb96cb0990863026359b08fd2272056cb676018c9613ebbe1a914d542f632c4e8f51dbf7f33a40bed4f4e
+DIST firefox-126.0-et.xpi 537126 BLAKE2B dbf0026c25141e7641e99989d58f1e9a71ee4956f9b7516c602dfb27fb131a311aaac09bb9a1d4528978975083efe50e50220bb0037a943825c42e75d539e423 SHA512 0c3a524bea738eaf86c629c25fbad50edaabf33c0d1da1b90a1e1277d3377925af4033bdfd1aa78d2b88b9e48f135f10c88b2af69bafdafacebd1133097837a3
+DIST firefox-126.0-eu.xpi 591935 BLAKE2B df4f7829cc918234d9600e7f13380857d39d5e8244721696174a7741f591eb3df917bbf3486c2c2f22452ea222693145b98787a4c5e041e15d6bf680a50ddc85 SHA512 242ec6f089f7767112ab7c0c941dd1feda87989883ea07f521c963e2590d8006c47568493404601cc6bd40249376b3c169575876e36b2a85caa23d1832641890
+DIST firefox-126.0-fa.xpi 587674 BLAKE2B 921dc0ea5ae668207d6840158fd3ae201d4f88a1a4f54564fe1c23f0970da3152d6786a186af456e5872c3436171d5e01cb2e104fb45372d2b4200b96542c8b5 SHA512 120a8ac585e66c29b2129a9b9b6d79ab0943cbdf76e400c52cc5b292efd4290184422190add559aab91427540e44caee3b409520bc4d2de0f05bfabc8fd7f2bd
+DIST firefox-126.0-ff.xpi 473884 BLAKE2B 0225c243cccba5342736c275ed040b0aa0bbcfde5625f87aa4b9f2c16716fc9c373aea04a27a819df12ef1d2fb4df4abbcf43052bb486d600f53919df024615b SHA512 fc2a53fc9d6f8e14a84cf7bdc0246b5c017b6fad75205d2e726cfc9a91c12746872eb80ff0a65b586eff20051f03775c887916921ebfeb60f5026df11f0cc3c4
+DIST firefox-126.0-fi.xpi 600578 BLAKE2B 43febfe158a1b4a53eb541521d428908a76e9c75121facc9eb83bc13e2b95cb760d78054fefc0afa7c2a0d18a81405cb361011123f17abb1b8384eee81c53550 SHA512 17ef99ad044a17a1c0988ee24faee5b6e5d04f90433233765a566689200e5c661dcd631b73d1da486f83a0e70845a00977a1521da5a1f5c07776ebc4a7ac8242
+DIST firefox-126.0-fr.xpi 633635 BLAKE2B 406ccde040aecf76813d278b0fbf0553b273657e620f7a55dc1ae15d6b605fa4831312c9e9899f86e4fae6ea593a4c83cf3e1268b7de721a5afe1eba6daeda07 SHA512 bf01fc4d4465ec9eddd7ca8126da638e59c2fa42ccae606a21ac8cb6c31b0393065787f0463037ee9bd90390446492cc693a0dfb9e1b276c51ffb50a6d58553a
+DIST firefox-126.0-fy-NL.xpi 616367 BLAKE2B 3cd9aa88b08e3242e44f18e33b27d341436fda7499c6d2ae00637c057a5750617100b783209272507ff7d98649a2489c9bd6d5dc85aed7d266e7c49b8216c534 SHA512 788cabb75abcb9ebd3edcc6fc459c0d0e72e487e6e02b0e0f2d884c1d135a2c7c1e01afc885b1b6ccd92a283eae77f3d8b9b9dbeee48634335dae82f7cb5103e
+DIST firefox-126.0-ga-IE.xpi 468665 BLAKE2B 0a781048a857ce32b470f638562fe9fdbd54d136177cf030b57cd6be06e843cf8f35ff68741e90f3dd8ce7c68816a1655f5780dc79767dba4918cc2d176c0f0d SHA512 b012e2f30f5af9bf7003ae720aaaf44d72c9bad962f4223e3cac321be59a081f8feb59c00bb1d2d26315c9d598178fa9c7ffb204c52641311cc67329ca841f78
+DIST firefox-126.0-gd.xpi 594218 BLAKE2B b1350b5da4b5b0b98e1fb7ba45669a98eac15fd60f2043d6b6e6d4160c952fb77381fff41bc1d7bda20fd55be2919ac7c7526ccf9e911b7d348549d283b272de SHA512 cc5e6d4398f1bac41d360344aac2cf4017314a6505ce700bdd29eba574ea5d5d841a8dc64e5ad95b28a43e8fb980f59eb3cdc4afec437230593f56638b15b2bc
+DIST firefox-126.0-gl.xpi 601690 BLAKE2B 9e8940a765618b10e5260fb97a485d34c7539650df31de3c11b7bbbb62d7da5757c2bac77cc3703e5f9345d301110ef79d23c553a8a90171d38fa1f431a8a737 SHA512 2610e7ee174fdec4660fe786bfd74324afbce8c21f3cc47ad0cb8638726217f9a867a591d2b8ed8c98fdd3b48ac93ad8989efcca47163b3aa72b64aa6c423443
+DIST firefox-126.0-gn.xpi 631848 BLAKE2B 008b7593d2bb1283ef3eb9a5c3b652356a9a1628993f4ee94f64289b4e119a9b9b1c3d524931406a0968f99fa836308bb6c0ae494953c53297ec6aeb585ccf77 SHA512 5a110718f0403e37cd5288552742fefde3921438a4ca40487593526fbb3bc8d46409e1c295426d71b5d4c81e7184f4996f8833898d96a10b57d0a3a0475b3e1f
+DIST firefox-126.0-gu-IN.xpi 524987 BLAKE2B 5c3c2869087302f59e547fd8362f79381ffdac2dc0453f00db5ebbef8941fde05ad326ead4ef647acfa51730b4c457a557a49f88a2d8b94be2b228afd091c9ec SHA512 52d4fef17d6c43069ea3f9a90173604d239a6a3f424a005c6f71b9e9b5d95411c40289e0b35d4340a445ea43dd6e2b393540161a8fbb1e2ad442370bf9a41a80
+DIST firefox-126.0-he.xpi 625264 BLAKE2B 2514250747fdb2d06b5114f016edfb9ef8258cd0c75e3829b6c34b01759f11ac30bdd2e5a1fb93806548ac9c312a6b2c2b7b4031ba62f4afacf199c88f771ede SHA512 0642ec8eedc3c65d8b42bf2a9b310e0f65124e12f0e0d101e0a6caa344f62353f87168f446e64adc206dce3c8919c564d18db836675e8b9bcb2e87e3919cf987
+DIST firefox-126.0-hi-IN.xpi 563178 BLAKE2B a0cb38b27f82939218af2a13214983fdc942b079b7ad453ac2ddf43d03827b1ef316b38551d621834cba09a6f4e37437f2fef6a56803d80dcd6aa90ddd212d52 SHA512 7a95d3c236e7fdb1da9a0685482dcf09026af3ae903dedea06881624b972d2ff0c462dae4750a72c5eee60fb02923e4813120fb566325b8f1aacd546876cef9b
+DIST firefox-126.0-hr.xpi 554418 BLAKE2B 5c278296e5dd2c55dad50576d1cb67da51141f3c618e39cedc870d964146e55d3f923107f591857beb034a539a9ceeea07d11b0363340800b10d301db3149828 SHA512 57baeda10dc46d2d6d5375a3bfc4f2ebb46cdc33a69dc4bb7ff6e72527edd94da627f655858e7e5e47c38b7596fbb43f7d7eda0dbb161e46eb91f94403f7ae9e
+DIST firefox-126.0-hsb.xpi 639345 BLAKE2B f2d5f8f10176633d1133a724212050318450da7cf9f68c6c8e2097f6be58360ee657b7008eafb5dfffbfc87f2480765510cc6cc135e122158bea0ad2c9b317e5 SHA512 cdf274a7d898c8595ce69f35fd7ae3583fec3afa4a1a70c57c0b02ee95a3f81f0fd8b43e72c7bf92c66b2286c3fef3b88e0c3fb921a2ab2e163e47502c547c64
+DIST firefox-126.0-hu.xpi 642408 BLAKE2B f3f772d68436f24c9528722ae2a2fa91f2ac1611d1e487defe92eb07aa06c73ac3eebfc0455da7ef06969d362d3dcfc4da2bb5d52fd1012bccf3f1c0198de2fe SHA512 5dfed7b5fbeecaaf19ff732a39ff2f768b5f5e8386eeaf2a1640ab2494d05e3901db3781d5817a4955eeb2c70f498874a52b72d83bc64496cf950d10c9ddc1e9
+DIST firefox-126.0-hy-AM.xpi 646981 BLAKE2B 49ff92fcf12274303fbe1734092349e78a74a3cfe5a83babbfd19922171656a90049778f0bc647bcdfc7995e84ee1bcc73ebdfc401763f338fee4bfc1f6651c7 SHA512 23b8d9ebbdc3419a047532b5cf96eb96eac97c0fe3ed48ec9914e8e46d345a383a177873e263a3dc8feb5065a41075a654d7abcf1887afe880ed5bb67e1e9559
+DIST firefox-126.0-ia.xpi 604002 BLAKE2B 3ede285d695396a8a0bff9cd7f87c2557d18bb65000582c0e2cc03070e5c23082924229ed20bf7bc5b414b1a935e87707c32f0f42b4196ced25e98d5a7c367c5 SHA512 700404a5d6dfc9c26479e7ecc6f1ed7848634f5abeb8e86afc488748a43cc95d64c748e29933bb15e09a9f08403011ce5de66c23a2a22550c60a45bca990dc24
+DIST firefox-126.0-id.xpi 571939 BLAKE2B d70e176b541deeb903ab43b213277a859c1181a708041f5ae2a8d98904658349e09496a777e099bed3dbf5f62051ab7145032b2da0f15191e192abd129b03eae SHA512 481bf22ded3744402dde326bc812811d7021b23c54a8c6dac42b2a86b0b3ce00d5a173d7fc3c9a51b226441382efb425df4d855acd89ef842c64bf0fcf8178a4
+DIST firefox-126.0-is.xpi 610470 BLAKE2B f9e51a64cdf6444f0d8fc8c658e4b607ef540b589ec5e4bd32b2f41fbe7ea5dafb669a97ea9e712f56f1a32a7c12c02cf69dac86889f57186c7c30a8a1d3a392 SHA512 96672c91cfa0fbce998362d2dd1d91297aebe3658d4d2b57c5419f2fd64dd8579d0cfd18b2eab441ea29f55e92ecb7d3b71ececa6cd356903291e21d78d56e1d
+DIST firefox-126.0-it.xpi 560880 BLAKE2B 35b94a2c7eefc6da70835f3a7a4b9e32bffc74c33440bc0bea40b1a4e23f525d0633180b7e5eee1a223ef03302d165b5801da5ac84184e3741c4ad766443a51b SHA512 1fbf143d9937a3750e27be8409f640bfbdd2a3eb3d5b354cf205d59c70c7399fd89f21114bbb2ba8445692081013978abe9194b74d3da6f0b1538e6f18789417
+DIST firefox-126.0-ja.xpi 671973 BLAKE2B c5997088887d83786ec730fedaa380ce15e8ac90285ef9d41ab2bbb243bc3caa2e11d9f7a5f643fd2a2e0ebb87606848ab6d45c41b373a5eb574123382343d71 SHA512 72e0ebf8137a2152aa622a130351b169bf87ba289ce9b518b4abde6ca4032a742b4cd903789e1a09c52bb0b6d3c24f0d4ee79b52889a7f4cba1940930314bbe7
+DIST firefox-126.0-ka.xpi 658279 BLAKE2B 4a6bcb3982a581e215274b2662fdb79e9bc38d4fefff0c5f500047dce02ee41b9faa5c7a34eb1194508de8789d02552c245562a3ae222ae44d9f00db27fb05f0 SHA512 8bd0024e1e07c2333b7cab35bb623393dba62dd1cb2a2e9c61232dcabb3c65880cca3c2c044c93c8c2a7ef6cdb1fd76fbdb5026d6f157d8ba0eed3b83b19c9c9
+DIST firefox-126.0-kab.xpi 601303 BLAKE2B 13a62ad6f2d876d27176eb9f10e846f5773e0f95f093010d5a084236302d15e302cfc2e5ec089373ef7d432de92d1204e0ebdeb23d9f665f401d0969952a5098 SHA512 4db72525e5cf94b9933c4666d0f457d23401ccdbd230e99323aa254dbd503280bcc26d1db916a9dfa60d11b0709b86a5ad7257d56b07d246d55ed5a0bdc2bc3a
+DIST firefox-126.0-kk.xpi 699766 BLAKE2B 4e3735c3e0eab0863e506ae5dc9b02209b1d1308937d4414ffca1d2f40853d5e1e5d29976a8e251887cc6ebc80caac901324c3cab3fa56ae47b1641b63468218 SHA512 dbbc3e37ac7688d44c5f8e2fd38140813d97f7f1d0f66315e5a9469d5df0bd0974f4496e47cd2e21d13d97e869a4d99e6dd73fe9996815153a7ece0b077d9868
+DIST firefox-126.0-km.xpi 523437 BLAKE2B 9ed18034ab065e29b162e71dceab14cbcb05f1ba891c6708d8c3abeeb3357153a58d960b91767e4c99e760c8f499af6cb56f3a1b6e6aa3c4d3803eb85df9c279 SHA512 ec16d3ecb6d191437d4515b75371193b672f036b69112e26fb2bff441347cbc2864be77d198e9c2543f008282c866091970ed4e4942ce21f2779704a50cd0e2f
+DIST firefox-126.0-kn.xpi 488921 BLAKE2B e09a55f574cb48e753f70b3b3f710dfbb54e303aea3b2cb353ce1473719878adc2fac13e51b1bb7da9425337db4291d4c3bb51322a159189db0c3d92f3493201 SHA512 e2f2ec0d5e943a9d78883711887b1773ac09e94efa59e3ad2dcaab865879df40befe97a3c08514a128a3898d7105f09dba72b47dd03f501557f7a4c8f70ab244
+DIST firefox-126.0-ko.xpi 653970 BLAKE2B f0b14bc27bfa0866c90b569f33251fef842d6b2d858c13f0d47187fbd5b2d11eef9774974fe040b15aef2bab94dd42457c7152f49d55dfd2167000050cdc4665 SHA512 54c12180dd46867dcaa4fbbff81a607efcd705a8ce031d6d7e31c3fe2511809b1b8f46be8bbb3b3516f8915ca5e744eb353124fb3ca275ee7f0680c21eb7ac30
+DIST firefox-126.0-lij.xpi 481804 BLAKE2B 8047fc09200055f2cf3d0a0580ea4b54b44c0b189633a4575769619bd8d9e0fb1420fbdbf0f03923d9f7ed59e033bb092d80deb69285cd16322a2833a2781567 SHA512 f43be6fd60d8ab7a96d35d8de449c0d304112333f02ecfe431a39ce3470a4629d69b852c6118036e0f19585ddc0c1f4d8bff1bc4eb23f42ed7c1a9e241af23dc
+DIST firefox-126.0-lt.xpi 570284 BLAKE2B e545f68c1eab7f3f92501252353d1158e6070dea5dbe8a575377dbd8c1cb4757ce0e8103965ce48e34ee0ad5dd7d0b8fb10b71fb75f5a78bcbbebfc4eebf4666 SHA512 39a99b1bebf32fca5278f337083b861b136c1e3fbc4b2c7ab233ffecd75158fc18af66140b618e0536eb29919458eb724a2d03bfd3718fd730ac9d07f9723322
+DIST firefox-126.0-lv.xpi 571452 BLAKE2B 2dec5af89ef2efd811316db55b3fdd92f46cd85ea1946e4f12cb9e004c355c65e3c7887050e2e9697ce7d91abbde5f03c9385f27cdf0b9f55b57d110f12d2361 SHA512 4348314e2bc653657e50beb8493ae8ea46711b44a3cc1f974c45d63c07de8613d3c6da20da6dcd854aa35e1f17b674b6c5f22cdbee4a100bc3714d4700922347
+DIST firefox-126.0-mk.xpi 490941 BLAKE2B 83199e60b575bb6b3a7201028d98e29675056f3df6d0cc14743694c6bac971c15980d30467da6eabd5f5c4a22f0053008c4ad07198312eaf5fdcabf8e02315f2 SHA512 7b482fa050734a907350d1c9fc6345c0f674d780b22f2a7028f1336306df4f1c6728bbddcf44ab7323dc8da0ab22ad1bf82ace0a86cc4339c1f5c20f5f3e1757
+DIST firefox-126.0-mr.xpi 529766 BLAKE2B 033e10a85bb6da2825ba692caed8965b143b06480e5cff0c17a414a72443bafa603c8405b467ae7c858510cb7d4877bb7dd9fa7f165756fbc699feaa57e4ccf8 SHA512 8d5bd24a60da35a9d2ddd59927a33b59a1146e3d9857128c90a902fae770ea15bd689e4e70bbc28b9ba05bf1552ef967b9d142e98bc4590936c5cf6fc3212716
+DIST firefox-126.0-ms.xpi 447421 BLAKE2B d060dd416dec9c54b9ce353888f2149ca657f9bef44b01d0800017df5eaf4a33a77748f4b27853c60512a3ebaca7988b701993583fab5026f2c326de1e82cf6d SHA512 fc946a56f9b5d5581f13f4fb24af6c9ada0b920c65f7e6c9f2582426c64c2ea4f6aaea0f85ad4791d83f73edca7667989d22459f62017203f63bc373ca1550f1
+DIST firefox-126.0-my.xpi 516436 BLAKE2B 28a0eb7f7ca64176f6b34cf8b648160149b5269d2c6c6df38fd793ee87c8e64cc78ea449f6099acb5231925bd935e10ccecc7aca008d6ccf299c19b3efbc87b5 SHA512 fcecbcbd9db0204ec2b8208a60ecb17761754359fa8e83d7debc5368896903e0acfdf2298da4383dc92f37a19eb323441ee22cab1fdb361698c6347ac8974a7f
+DIST firefox-126.0-nb-NO.xpi 599722 BLAKE2B 9dcadc18bf7eb12212fd308dd598ce5288914f89f2c1d71c04c8c8e7ad9a69433705478133eb2c0ad85de4221b101a69eedfa2d8ea01832ee4301abe4f1956b9 SHA512 1442de4367f3265a4dc91563fded02d06c58b74804fc5543f7e4452d199b42805ca4616451a9cc1cc9611cabcda482b10e12968fc60ac75a219a1bad7bc4d10f
+DIST firefox-126.0-ne-NP.xpi 498214 BLAKE2B 67cfb14e0dfa89b7a2032da957fcef3bdbe6eb2c968aa85a07f3252a909c444c088e1de3aae35b6405f3f048ee4e29984c9b2d480e1c58a1352030edef06ccfc SHA512 ce29ad779c4cafc2c5806db74fc5c3cd2c3739a50197a51c8b801352b3fca254eb88ffb5d9e2b97e0947116a25c6eac676eabc99f86dbd416a623f1ba1197e42
+DIST firefox-126.0-nl.xpi 610133 BLAKE2B b1f777285ddef7f502655f37419e33d512a7a8a7c806fbd1efcf387a49343a22a5abb56c02c171e277b32367921993259352945fe475428cba04cba2af06e596 SHA512 53f54d6e9a72090305153caf340ca355c0ea8138bd98979a8b5dae977efa64abf59beb1bc6c2dc9887673f25dbd17a7b6cb0fb08cd3d9fa70b8f2f0a0518adcb
+DIST firefox-126.0-nn-NO.xpi 593757 BLAKE2B b5aea80a5247ef51c95ea60a944f74895d30965017ed3e3132b8eeaf1bdf1b86189aa202f70357cb143e60639279cdfff8f971b2f49927d4ae0207662108423d SHA512 8b16851a1999d7948f9469ce798d8860e2e8e5114f5e82ea3d8042dfdaf326fc4fa6a1ba281c9c2709537d3792e26871e4e7a3030a93df13d1d9510d4cf77c14
+DIST firefox-126.0-oc.xpi 608227 BLAKE2B 9ea863851456ba54024a2c1af81b04763392067c42672b1b7c09370a3260ffde4301d55e32ef3799138d98d05f3623049b74e0587263981c7f1464f06061730c SHA512 180f19fb359e7bedbcedd1a0ed0b9eeade7cc5c14869f5deda368db980c1ce9cac025138a100218d7eb695a2810f8e391eaf11d9b76f4f94ab8406add174df50
+DIST firefox-126.0-pa-IN.xpi 684085 BLAKE2B 5a688e5a81c7047c6cf376c3eb2f669c0b7ec6f6e37e7a4af2c5e4776db7cc0d2e8d481814c73aff40e51d05070bab27157b40a37ac562cb7624b1f96fbe67a1 SHA512 43ef0fd082975a0a6e56fc5500b2668147308f0368caa38dc704515fcef84fcdb47721d25961a6a7bbde9c94464f18eb86202d8d57d8cef370a5c5773c60b41a
+DIST firefox-126.0-pl.xpi 630478 BLAKE2B aaaf92519ee5c39923f8f7b5f9d15c0e46704180fe05f516cad6dbd655319919a1d9c4f8e3f4e4f3a14bc491a3b645ec4a3051b604bc44001a8dd4d6b544026a SHA512 ba5ef269242a41f8a128097c39b79fba03cd784b8e86b136516e629c6426151ab7090d1d76804700e4db8e65b90996439a0cf67e660b32e12f44d9501e7cea36
+DIST firefox-126.0-pt-BR.xpi 614784 BLAKE2B b6b6f6a98a808660685f3409115ba7c69cf43d25200dd54ef4298e70cc8a404cffdf08ee739e122349e25b96882922c834125215f4a087a80daa76849b9685ae SHA512 e43c4a2141713482e156264b0c2c2414d7f139edfcfdaef34deaa9a4b919288b9c75ca07f72cc5f63b3003960509f03944a29c5428733f98ac01685cf2e362f8
+DIST firefox-126.0-pt-PT.xpi 618386 BLAKE2B 77a124ae5218b9b9eca2fa92dbfdc2949904dc9dfe94c95ac24352e9115d2912f1bf1f353a47a5be98a22e5fe4df92cdc87e22f50d15a756ae16456bf06a52b8 SHA512 9ee99fca78e93559ae8f38ced72cfde02cfcf98092ea7e30a2d2517164c81148dda096864dc038a78a474f9cbb183f3d3b5568e3f273b8b79f1699145ae36bf8
+DIST firefox-126.0-rm.xpi 610724 BLAKE2B fa698f2fc6b0ee64f47296fa3eddbfbf20baaa500c191ce5b5053588e94e2ffa3a586092f85af042177916a708ad6bb5992e99db720ebe7d0a7cc79908e1b7bf SHA512 c043c4b0521878655092a70ddf6b3cf13906a7af27576737dea0d895fa764c17931c19891c2f58faaee843fc61723bb555cb250b99e18b939140c9a3c078598b
+DIST firefox-126.0-ro.xpi 547381 BLAKE2B dbe81339b20ec1d015bcfd72a679e786902d620c3a6f895d64e89d5e302f0b661d4137623b0a96c53faed2ec46566f5c2b345805850155ea00c7638e92649014 SHA512 5974b32c9eaa3c75832b884c7f69349efe95677388a57de83e0c588ea5ffdc0e83ad50639a7c21e761dfae775907b23a647159ac2056f87b2d5e643c3bf3aa42
+DIST firefox-126.0-ru.xpi 711960 BLAKE2B 5f9c62de9ad9a1826fe5ea22db7fd6f957024843f0a19c2b3d6fddf86963bf9691aed56cfbb640dc1ee3c6caa9ffcc0073e082498348f1817bf3f99803e244c5 SHA512 598016b1e95079db095f30aedff710d2deee274108de93fd66400c1e27f65f48d151e23434d122f0b82fc673632bf1a2f20457b96f710c5f60c47b944edf64f3
+DIST firefox-126.0-sco.xpi 508846 BLAKE2B f8a013b727c934301bd51127e32cf4b5538fa58fca7eaab688a281408f4ded61e8ea2c6d6c2c2d878b24a5768920362aa658a4dad4488f7cfd1a1c40a27e47b6 SHA512 be610025dfb1fa47a9f7920357e028e690e2a3230ad512fc9da0a8c4975299b6f96d3bf87114a3c78f160adb568cbc725eb70ba26f70a5db8c20a699de834053
+DIST firefox-126.0-si.xpi 603576 BLAKE2B 7e75d472b754227eec27bbdd9b5004c1032a304f645fd6676915921c6364b731134adf52e492b56b64eacb737e6d1ff67f0f0978e846ee336d977de7428650d5 SHA512 da0ccf83da14d37cd2ce4724a46cfb97f602a97b8f599c52d08ff273c485aeb23d9919a51d9625110cc21f099373e15a1851bcedb9854fc79221a2c6f88ff76e
+DIST firefox-126.0-sk.xpi 644825 BLAKE2B 1cecac060137d7632ff918b3483297e1aff728942a36636ed43832940b66111c707624b157309794b4353818921e5da50bf07ff4926d412f731afe3e9eaf2bdb SHA512 a1924dce938f7a943f5dea308af1cb40c6f5f47629cbbbd81f8bc825ceb39fd7145baba76b4e936611d033a1bd01f415ffc957f6c9827dbbf5be07d284651e78
+DIST firefox-126.0-sl.xpi 609033 BLAKE2B 5268820eefdf2a6c707ee767946f66b48f73dca770b0d78624f24a190ea6499fdfe98f547a8efd8d1f9f3a301a3e26a80f121715587a502419fe1727c5b4a14c SHA512 12b303724014855182ebfebf3fe170b7c4531ebd1c5a91d0f726d5104182186b2ef88ecd18d7919fe670fb20770e7ca6d690c35a4ef67308322e557b9e985728
+DIST firefox-126.0-son.xpi 414130 BLAKE2B adbf311c16007bd67f121207496a410efa00dc6c22cf6abc8c7d65a6a665f2719e144a5ca68f366de49d5065c912e68095243fa586c373f76898218a34c2f35e SHA512 66f0de96d6875799745b2f7132d9aedc21cb09755aa8ce9a544b4c4f7c9ae0d6d37a74cf40c6c426f0ac44f460344e52014ca67dbf6c81710b95ead5bf72bb90
+DIST firefox-126.0-sq.xpi 631484 BLAKE2B 02792930f0035796a5ba30e88b106b5dba3b646d064e2765f2b3bc41dba11ec8e3d998c3f7d61241d50e328e4909a86282532b6a760c4c6c3da2410045296fd6 SHA512 7ba44a8a3d57af1df042cef862cfe7ea8f2889781aa4e4153b145f91ebf23a0bd7e3e8c550dd31ea8c887cbad4764c3aa63b07cd0d229dcf05a5105342b21157
+DIST firefox-126.0-sr.xpi 636904 BLAKE2B 3c40b597be9a49e3be8bd2cfdf55247b633c22302169c9cbcf9f4ab2bd959a105d498dcd3b941b88e48859cf5f41262352ff2613945559d2095fa1a8c312f435 SHA512 57ff2ff8585eba71cce8973676a2c8c7360059a3d538f49fc6a095a018eea26a22ab2e53be3e5a5bdd993204bb964724cc107ed1b7dadbd97d3b1559de5fb0d5
+DIST firefox-126.0-sv-SE.xpi 611999 BLAKE2B cd3db50b469ac065b22560a6bf8350a32b8917160708a18079fd9e43e9e557ffec976fc934125638aa011f16a325b4f0f4a780a259830644fe73ba180da08532 SHA512 d9b262ba4d3e6075a47ef71fbe3b85a986324d29100dd8c73ad8364118ae8541fc936d5a696133985030612e91aea9ed91b093bf7a04e7c8dcbeddff888a048c
+DIST firefox-126.0-ta.xpi 505214 BLAKE2B 1835d0a7ba357f9f90b586772436416367d4f181eb335c873f54386c9f61d0b8ed7516c9b898b33c36408bf9e0fb09bee8a754dfec79b3182dd63f2271400c28 SHA512 fe4d06a53ca1aacf31390a768f727f086b84f0b4ef95a89781deed53aa8b78bdc73c347d49c318931713bb1add8978c747f3442f63458c87f9730f9568bd1db0
+DIST firefox-126.0-te.xpi 556675 BLAKE2B b5d95671af56c7303d8eb9e2c1761c8e5d12f9f88aab0d44128b192af2fc73bb63be7503322c76b72ababcb1a9d863b89086651c1899ac315af164dc7cf9956f SHA512 05db4ffc2e97f956339beed8578ca038d053042f432efdb298b9b0cf83b057b94bea4df9845b3de3f33faa06c7e502a0f02a44c5f1400d733ca8d6f9cf468c19
+DIST firefox-126.0-th.xpi 687706 BLAKE2B b2d9c1c78c19bbb442dcd980b9874827e0079bebc71024496d65035dc2f67cdc6475b746bc79ff63382268c0ae484992871eb109ba65a1e1faf9fdb02eb9a908 SHA512 d115eacf5f53342b6ca87bf81c2968ef6b79524ae95aae1e6770dd7c66c0fab3cfcdbeb4335ad77820212ebe35374fd0896330ebdd2e8837fb5c062fb6c8062a
+DIST firefox-126.0-tl.xpi 531822 BLAKE2B 7292bc0caf37b262f08cdb725f85ba570683495acd85e43fc34a83bbe6b85bf4ee312624d24cb50360b1a6aed5692f8ae00e09eb664d5f1db34e9783d4b35e56 SHA512 95fe5bd8d83cfb4c4129b8cb676292598414b9cc6ecbd512297b7a87e1b12602bae9cacf559dfd703b25ce1d3a3c69514ec9dd71980afc5790d8cda1346755b6
+DIST firefox-126.0-tr.xpi 624998 BLAKE2B 487a53a8ae20c2e1796afc06dd3a40142f2ee2b88eca27d982dbeb3f78ce00eae8200a6d30cf038351ad13ed45b6d3b0d037424942af6c47a17e3ea21bdc92de SHA512 d10b800acdf58095406900283e54f35e4aaefee65305fbb5684e7ff5f9fbeea93ab1045377bc52f54ae98586f4cee4b57f56199e522b31e3b9fbdf9545f2f32e
+DIST firefox-126.0-trs.xpi 501691 BLAKE2B 3ae1774df8f202023b5089bf40ab8cedefae6254b7466d3a39958deee67ce154f5da711e6d9b7b4dd170aa6a09764f347e3398fed27d7089263b5868dd0ccbb0 SHA512 41559f64bf5c22e2d36b0f19dbc6bd2d41ee4792ce313d4b08fe1c7945fdaeb9d902751e845ab1b832625a7dbe6e5b2c3d021e626aefa1b9f2fb35bf49e773b2
+DIST firefox-126.0-uk.xpi 703811 BLAKE2B 9d7a22f3a30e06b9642d8b15d7870701cc4f96cff59efb218d58b8aa8dde13d553f02ecbad70bef37349a8b234e82eb6f1888b93844859a283eb9144d9230660 SHA512 069971fff2ec21867ef50fbadf8919ff38aa3824fabc02217b9e6e5dd83be82458fa024b00366a0a87a978d31f3ec92ebdcea789f867e3b38ce683ac50020c09
+DIST firefox-126.0-ur.xpi 558139 BLAKE2B 60c98d5e1a49d90432e49f16d9053387b230cdfda8f118300663678b60bae9326f3f6a2d9de55048614d235d62e77814a34cfc33e7d9c973ac54a8e7cbfb6bcc SHA512 9a1a0e5e15ab90ba1137c73174be7e631e5a0bcbbd7b52683282e580e30f2db1e6a8481f7337e744cab0a084ce701d719c5e33102f6d1751ba25cb0825710456
+DIST firefox-126.0-uz.xpi 476546 BLAKE2B 35c05fdff82eadc1a9978c2a03f386040b773da201252eb3f7258af2df64d0b4534c5fda57a3a210575d4a8abc10a14877fe8b9e260960b87e6c983bbff8566c SHA512 28a695f863c14d02a211d4f3e435ab79708083e79237d532b033bf32bc097ab47930e5a891544d215a1c8e24fe7b4127b727246bef80fec2adb35d03c77cece3
+DIST firefox-126.0-vi.xpi 649540 BLAKE2B 545a01d3d901f2c8013835649db47c547ec9207ef0260a2dbc661ddd761765d3a40c37838134330767221ac535d970f5908e71521e58021736a4a08dab8dc1c8 SHA512 d94a1a8befe0c45e981d9bedbc688aaccec57521190a336ca094f3d7c5d64af4ca4872ceab426c2658bfdefd967de00245ceb715851763b4116ccd09fc1347da
+DIST firefox-126.0-xh.xpi 414864 BLAKE2B 9ef6cc38daec68367317e8c29ad25d8aa1d002aac87d288e0d2f86342b7b7f76a8822d910fbb3e8f5df604d37b49bdf252890659f7e45261a0714320603111cf SHA512 3b00c25657d9b8e71b53c0699d53bdca327750f4007a54c420657b884524ed1da6e2e0276f2a81f361869b050408590f73ec73f488efdc28820d6ae8a56f077e
+DIST firefox-126.0-zh-CN.xpi 649590 BLAKE2B 1919defcbe80f49756a984833c2e7d809728394df7d4897d0c805ed5ec6318e8b137a7866563ce9ed2e68ed51a3f6695cee8c241533bb2f43814bf916778a716 SHA512 67fb4ee9c44727e56f5f01e8e90817c582e619af051e43edf771f75cd20e8858dac332c0f422df8b8017dfe91c81d6a8eae1ce96a3f927726b8518aefb1fe28b
+DIST firefox-126.0-zh-TW.xpi 651627 BLAKE2B 34dbf056777c8345e4da72b908af5cf300d649fc8fa5896766f587f36a051418d06126cddb841caf3eaae0c5f2285e13c6929aaad4aba310d8d9e40a2f417cc2 SHA512 154c03337b9638c04d62f1282aeb7d3785865e8af63382ef5689fa30509d5ccb0745f6f15a08cdd1c613d24ada133095d2be08a7c9f7b546fefc3d48f3344858
DIST firefox-bin_i686-115.10.0.tar.bz2 84198828 BLAKE2B 0c1c3ba0a656bb2b64ace3cca14708f22a9635047aa9f40a8181e480150b8a388d7ffcf8e0aadf06a8517300eaec173525ca7dc0b940018a48c8db548841ccf9 SHA512 12785b3b16d1d0ca2608ddd3580f6fec21ea5c0b849b3551145959140ac0e4c9705412d4771f4db4e07154d3b9974100c76f0edd2e045b0a0d08ef79ffd78a60
DIST firefox-bin_i686-125.0.2.tar.bz2 87783087 BLAKE2B decccb441a751dfc83338704d3c873d30890ebae1d7f323cb73282471387456147c6f6b12783ee421877a094b28f8583b5b68cfef53fad3b7645deebbdc8ffa0 SHA512 87ab13d01a82a3d7f01cff3cc9f66dc07b8b093c8a1f33994b64878bad12cc9c5df5d1289de7ca87690b76eb4fbb761f4ec78668de4596e681a643067ea5de7a
DIST firefox-bin_i686-125.0.3.tar.bz2 87757520 BLAKE2B 8f2d1c9cc482fcfae8b6e4ad072de974aeb3ea049aa17b9659e1501db4ff07d428b1f3ee82dd06c3e47ff677aa18b7e861625b23bc1126a3a2ae9672e3e82fdd SHA512 57a10ed04c8c1fef826f975055f797be186d03247375b14a0d2318e99c5a306e1cc69212397a05e1bf7cba76fe8c7b26f78f6629585d16c0c4c485572220cbb2
+DIST firefox-bin_i686-126.0.tar.bz2 88707820 BLAKE2B 74b3070236789c00767666d6e60795def8956c5d2793623f01d64d627a4ac1c011796775b27f2800182fe99615087b692651c8202d248a391db09c4a2a30a5bc SHA512 ee4232bfb9215e5e2d4d3344d433b40fdec15f1bfb86886b1c9a5078200296c445dd625065a679d76846ca3114ccc3943612f34338b7598190a84b875d04a6d0
DIST firefox-bin_x86_64-115.10.0.tar.bz2 80568370 BLAKE2B f7891527e45c30e2f0894660cbcb08c6ba001f0f2e5bbd37496975bf881adcb7153f00aded98785b7a403a1ae43764bfbd2e3e6a3ff80435bc8b4f9f85f84abd SHA512 cfeb0fa700a06b4cd53b70c2e3a64e145ad3e7c7e21e47adb8a6aaf727203ce0fb363b9120ef4cb91d86d48933dddce11aa04b866c1880869b218d5a43b07205
DIST firefox-bin_x86_64-125.0.2.tar.bz2 85793507 BLAKE2B e9ef22011f2b9fc4cda77a03c7c59c4440eec7fae14eba75c7984b9000f4376f25e7ba7bb4ea3e20f1cfe8701143d6f6b6a199b542ee532a3783c14194446d3d SHA512 ddb25a4bed6f6c09d251dd93f7c0b13fd3bcc57dc083b32003c313686346f2034e2e693e43f1a283a061840fb62282df43e7864f2567c33d5a29ccc1e372f160
DIST firefox-bin_x86_64-125.0.3.tar.bz2 86003134 BLAKE2B 9872c1044b8c5229ea4cf9356fbcfa68814e8a7ef5e96a1d7d11f694159749bfb2efec2772ee8f7ac34e0e563b6918b68985b82aa8ab4064b8a1ad3330f5776b SHA512 10af89a0116daae89628bc6b837fc92d026f3fb8339674c7ae5105c430626ac232f4820e51c4825d2244e8d25c984b8b3fe604eb296395a9829b993808bb58c5
+DIST firefox-bin_x86_64-126.0.tar.bz2 86943957 BLAKE2B bb677ea06b998092f8eb54210239f40f25a2d410faf58ebc8743c6d98c8a401224fa1470d843e86fcac40c43f9dcb24c632104758991aab022da954d7fc9ab1c SHA512 20d27e4e7b9dc96efcc3846511d19077f31459db4e132648ca85dd702f8a741d0082acbaf32318b742f01ffcbe6d81d72d9d25ed0203a6a863f42c974e3a0749
EBUILD firefox-bin-115.10.0.ebuild 10934 BLAKE2B ba31c56b7abf9e2089563a33054a5ca6caf1e9cc92a7837600f0af25f8768a773ae2e2cbd2049964847ec2d5c93cedfeeed7e3a8f93704d9e8f8c8360ca581d1 SHA512 41e2a60e4a0bf1bef6f591bd0ff34a9ccadf7c85c94a23d0605230dd2ed35d01b54ea25534fde940766c7f52be5444d493bc7280dfdaaf2a7bc7f3d214d554c4
EBUILD firefox-bin-125.0.2.ebuild 10770 BLAKE2B c1cfb3d7e0810c354897e6c89612c3ba36d710f894211e89bccb91beb929c322a98e073be4c3d897da5d257214eee05bf3b5b1a7f3837440522fc21db5f94fce SHA512 abfa565783903bd65a3399098a6d5082e1d9a5535008ecc00f2f4656a1eda01430e98922d98b242cd42357458341a22056dd5e7b00fcc8e0afc3bc2958aa0dd2
EBUILD firefox-bin-125.0.3.ebuild 10770 BLAKE2B c1cfb3d7e0810c354897e6c89612c3ba36d710f894211e89bccb91beb929c322a98e073be4c3d897da5d257214eee05bf3b5b1a7f3837440522fc21db5f94fce SHA512 abfa565783903bd65a3399098a6d5082e1d9a5535008ecc00f2f4656a1eda01430e98922d98b242cd42357458341a22056dd5e7b00fcc8e0afc3bc2958aa0dd2
+EBUILD firefox-bin-126.0.ebuild 10770 BLAKE2B c1cfb3d7e0810c354897e6c89612c3ba36d710f894211e89bccb91beb929c322a98e073be4c3d897da5d257214eee05bf3b5b1a7f3837440522fc21db5f94fce SHA512 abfa565783903bd65a3399098a6d5082e1d9a5535008ecc00f2f4656a1eda01430e98922d98b242cd42357458341a22056dd5e7b00fcc8e0afc3bc2958aa0dd2
MISC metadata.xml 520 BLAKE2B 4b540dd2d9ac3840061de8a73117f2859db156944826d22c1f74cbc0c35f6d305aa10ff45708eab016df725cfc741c99dec46f0078a29162982431892e86e477 SHA512 0c7183e35a4b0ca2ddd092786ebdeb5b41a431adf918f0c2e541a5ef1c235066586a46a50fa29c25e5a522930824f8662fa2fa7eed8c3895f74d85bef93cecb4
diff --git a/www-client/firefox-bin/firefox-bin-126.0.ebuild b/www-client/firefox-bin/firefox-bin-126.0.ebuild
new file mode 100644
index 000000000000..91c94d7a296d
--- /dev/null
+++ b/www-client/firefox-bin/firefox-bin-126.0.ebuild
@@ -0,0 +1,366 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MOZ_ESR=
+
+MOZ_PV=${PV}
+MOZ_PV_SUFFIX=
+if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
+ MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
+
+ # Convert the ebuild version to the upstream Mozilla version
+ MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
+ MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
+ MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
+fi
+
+if [[ -n ${MOZ_ESR} ]] ; then
+ # ESR releases have slightly different version numbers
+ MOZ_PV="${MOZ_PV}esr"
+fi
+
+MOZ_PN="${PN%-bin}"
+MOZ_P="${MOZ_PN}-${MOZ_PV}"
+MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
+MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
+
+inherit desktop linux-info optfeature pax-utils xdg
+
+MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
+
+SRC_URI="amd64? ( ${MOZ_SRC_BASE_URI}/linux-x86_64/en-US/${MOZ_P}.tar.bz2 -> ${PN}_x86_64-${PV}.tar.bz2 )
+ x86? ( ${MOZ_SRC_BASE_URI}/linux-i686/en-US/${MOZ_P}.tar.bz2 -> ${PN}_i686-${PV}.tar.bz2 )"
+
+DESCRIPTION="Firefox Web Browser"
+HOMEPAGE="https://www.mozilla.com/firefox"
+
+KEYWORDS="-* amd64 x86"
+SLOT="rapid"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+IUSE="+alsa +ffmpeg +gmp-autoupdate +pulseaudio selinux wayland"
+
+RESTRICT="strip"
+
+BDEPEND="app-arch/unzip"
+RDEPEND="${DEPEND}
+ !www-client/firefox-bin:0
+ !www-client/firefox-bin:esr
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ >=dev-libs/glib-2.26:2
+ media-libs/alsa-lib
+ media-libs/fontconfig
+ >=media-libs/freetype-2.4.10
+ sys-apps/dbus
+ virtual/freedesktop-icon-theme
+ >=x11-libs/cairo-1.10[X]
+ x11-libs/gdk-pixbuf:2
+ >=x11-libs/gtk+-3.11:3[X,wayland?]
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXcursor
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXi
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libxcb
+ >=x11-libs/pango-1.22.0
+ alsa? (
+ !pulseaudio? ( media-sound/apulse )
+ )
+ ffmpeg? ( media-video/ffmpeg )
+ pulseaudio? ( media-libs/libpulse )
+ selinux? ( sec-policy/selinux-mozilla )
+"
+
+QA_PREBUILT="opt/${MOZ_PN}/*"
+
+# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
+# overridden in the enviromnent (advanced hackers only)
+if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
+ MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
+fi
+
+MOZ_LANGS=(
+ ach af an ar ast az be bg bn br bs ca-valencia ca cak cs cy
+ da de dsb el en-CA en-GB en-US eo es-AR es-CL es-ES es-MX et eu
+ fa ff fi fr fy-NL ga-IE gd gl gn gu-IN he hi-IN hr hsb hu hy-AM
+ ia id is it ja ka kab kk km kn ko lij lt lv mk mr ms my
+ nb-NO ne-NP nl nn-NO oc pa-IN pl pt-BR pt-PT rm ro ru sco
+ si sk sl son sq sr sv-SE ta te th tl tr trs uk ur uz vi
+ xh zh-CN zh-TW
+)
+
+mozilla_set_globals() {
+ # https://bugs.gentoo.org/587334
+ local MOZ_TOO_REGIONALIZED_FOR_L10N=(
+ fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
+ )
+
+ local lang xflag
+ for lang in "${MOZ_LANGS[@]}" ; do
+ # en and en_US are handled internally
+ if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
+ continue
+ fi
+
+ # strip region subtag if $lang is in the list
+ if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
+ xflag=${lang%%-*}
+ else
+ xflag=${lang}
+ fi
+
+ SRC_URI+=" l10n_${xflag/[_@]/-}? ("
+ SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
+ SRC_URI+=" )"
+ IUSE+=" l10n_${xflag/[_@]/-}"
+ done
+}
+mozilla_set_globals
+
+moz_install_xpi() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 2 ]] ; then
+ die "${FUNCNAME} requires at least two arguments"
+ fi
+
+ local DESTDIR=${1}
+ shift
+
+ insinto "${DESTDIR}"
+
+ local emid xpi_file xpi_tmp_dir
+ for xpi_file in "${@}" ; do
+ emid=
+ xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
+
+ # Unpack XPI
+ unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
+
+ # Determine extension ID
+ if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
+ emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
+ [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
+ elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
+ emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
+ [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
+ else
+ die "failed to determine extension id"
+ fi
+
+ einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
+ newins "${xpi_file}" "${emid}.xpi"
+ done
+}
+
+pkg_setup() {
+ CONFIG_CHECK="~SECCOMP"
+ WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
+
+ linux-info_pkg_setup
+}
+
+src_unpack() {
+ local _lp_dir="${WORKDIR}/language_packs"
+ local _src_file
+
+ mkdir "${S}" || die
+
+ if [[ ! -d "${_lp_dir}" ]] ; then
+ mkdir "${_lp_dir}" || die
+ fi
+
+ for _src_file in ${A} ; do
+ if [[ ${_src_file} == *.xpi ]]; then
+ cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
+ else
+ MY_SRC_FILE=${_src_file}
+ fi
+ done
+}
+
+src_install() {
+ # Set MOZILLA_FIVE_HOME
+ local MOZILLA_FIVE_HOME="/opt/${MOZ_PN}"
+
+ dodir /opt
+ pushd "${ED}"/opt &>/dev/null || die
+ unpack "${MY_SRC_FILE}"
+ popd &>/dev/null || die
+
+ pax-mark m \
+ "${ED}${MOZILLA_FIVE_HOME}"/${MOZ_PN} \
+ "${ED}${MOZILLA_FIVE_HOME}"/${MOZ_PN}-bin \
+ "${ED}${MOZILLA_FIVE_HOME}"/plugin-container
+
+ # Install policy (currently only used to disable application updates)
+ insinto "${MOZILLA_FIVE_HOME}/distribution"
+ newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
+
+ # Install system-wide preferences
+ local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences"
+ insinto "${PREFS_DIR}"
+ newins "${FILESDIR}"/gentoo-default-prefs.js all-gentoo.js
+
+ local GENTOO_PREFS="${ED}${PREFS_DIR}/all-gentoo.js"
+
+ if ! use gmp-autoupdate ; then
+ local plugin
+ for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
+ einfo "Disabling auto-update for ${plugin} plugin ..."
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
+ pref("media.${plugin}.autoupdate", false);
+ EOF
+ done
+ fi
+
+ # Install language packs
+ local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
+ if [[ -n "${langpacks}" ]] ; then
+ moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
+ fi
+
+ # Install icons
+ local icon_srcdir="${ED}/${MOZILLA_FIVE_HOME}/browser/chrome/icons/default"
+ local icon_symbolic_file="${FILESDIR}/firefox-symbolic.svg"
+
+ insinto /usr/share/icons/hicolor/symbolic/apps
+ newins "${icon_symbolic_file}" ${PN}-symbolic.svg
+
+ local icon size
+ for icon in "${icon_srcdir}"/default*.png ; do
+ size=${icon%.png}
+ size=${size##*/default}
+
+ if [[ ${size} -eq 48 ]] ; then
+ newicon "${icon}" ${PN}.png
+ fi
+
+ newicon -s ${size} "${icon}" ${PN}.png
+ done
+
+ # Install menu
+ local app_name="Mozilla ${MOZ_PN^} (bin)"
+ local desktop_file="${FILESDIR}/${PN}-r3.desktop"
+ local desktop_filename="${PN}.desktop"
+ local exec_command="${PN}"
+ local icon="${PN}"
+ local use_wayland="false"
+
+ if use wayland ; then
+ use_wayland="true"
+ fi
+
+ cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
+
+ # Add apulse support through our wrapper shell launcher, patchelf-method broken since 119.0.
+ # See bgo#916230
+ local apulselib=
+ if use alsa && ! use pulseaudio ; then
+ apulselib="${EPREFIX}/usr/$(get_libdir)/apulse"
+ fi
+
+ sed -i \
+ -e "s:@NAME@:${app_name}:" \
+ -e "s:@EXEC@:${exec_command}:" \
+ -e "s:@ICON@:${icon}:" \
+ "${WORKDIR}/${PN}.desktop-template" \
+ || die
+
+ newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
+
+ rm "${WORKDIR}/${PN}.desktop-template" || die
+
+ # Install wrapper script
+ [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
+ newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
+
+ # Update wrapper
+ sed -i \
+ -e "s:@PREFIX@:${EPREFIX}/usr:" \
+ -e "s:@MOZ_FIVE_HOME@:${EPREFIX}${MOZILLA_FIVE_HOME}:" \
+ -e "s:@APULSELIB_DIR@:${apulselib}:" \
+ -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
+ "${ED}/usr/bin/${PN}" \
+ || die
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ if ! use gmp-autoupdate ; then
+ elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
+ elog "installing into new profiles:"
+ local plugin
+ for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
+ elog "\t ${plugin}"
+ done
+ elog
+ fi
+
+ use ffmpeg || ewarn "USE=-ffmpeg : HTML5 video will not render without media-video/ffmpeg installed"
+
+ local show_doh_information show_normandy_information show_shortcut_information
+
+ if [[ -z "${REPLACING_VERSIONS}" ]] ; then
+ # New install; Tell user that DoH is disabled by default
+ show_doh_information=yes
+ show_normandy_information=yes
+ show_shortcut_information=no
+ else
+ local replacing_version
+ for replacing_version in ${REPLACING_VERSIONS} ; do
+ if ver_test "${replacing_version}" -lt 91.0 ; then
+ # Tell user that we no longer install a shortcut
+ # per supported display protocol
+ show_shortcut_information=yes
+ fi
+ done
+ fi
+
+ if [[ -n "${show_doh_information}" ]] ; then
+ elog
+ elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):"
+ elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all"
+ elog "DNS traffic to Cloudflare by default is not a good idea and applications"
+ elog "should respect OS configured settings), \"network.trr.mode\" was set to 5"
+ elog "(\"Off by choice\") by default."
+ elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
+ fi
+
+ # bug 713782
+ if [[ -n "${show_normandy_information}" ]] ; then
+ elog
+ elog "Upstream operates a service named Normandy which allows Mozilla to"
+ elog "push changes for default settings or even install new add-ons remotely."
+ elog "While this can be useful to address problems like 'Armagadd-on 2.0' or"
+ elog "revert previous decisions to disable TLS 1.0/1.1, privacy and security"
+ elog "concerns prevail, which is why we have switched off the use of this"
+ elog "service by default."
+ elog
+ elog "To re-enable this service set"
+ elog
+ elog " app.normandy.enabled=true"
+ elog
+ elog "in about:config."
+ fi
+
+ if [[ -n "${show_shortcut_information}" ]] ; then
+ elog
+ elog "Since firefox-91.0 we no longer install multiple shortcuts for"
+ elog "each supported display protocol. Instead we will only install"
+ elog "one generic Mozilla Firefox shortcut."
+ elog "If you still want to be able to select between running Mozilla Firefox"
+ elog "on X11 or Wayland, you have to re-create these shortcuts on your own."
+ fi
+
+ optfeature_header "Optional programs for extra features:"
+ optfeature "speech syntesis (text-to-speech) support" app-accessibility/speech-dispatcher
+ optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas
+ optfeature "desktop notifications" x11-libs/libnotify
+}
diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index ee43a818028e..2c7a4b3caf37 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -108,6 +108,106 @@ DIST firefox-115.10.0esr-xh.xpi 413331 BLAKE2B 91044dd10d764a276c14291cdd1540f4c
DIST firefox-115.10.0esr-zh-CN.xpi 634778 BLAKE2B 461d085d9c6d259f4a3564c149b9300df48ce1ab0ef9222ae25594c3cbb933d2559fd2deac806830f9107b872169a18edc22b1dd08b985fb28f21cd71dab1429 SHA512 cf9db5ab2029cd4bd7cbe02012e68759433b3d0cc6cd1fcaf5b6774e9c111cb65f577f128a55b0989869879d4e4f24ea11ccc86bcfdb05181b0aaf9b65b5c0b4
DIST firefox-115.10.0esr-zh-TW.xpi 639166 BLAKE2B 8dca774967abcc50d6408eb7a05013fab8d942c723e79dee956aa09dcbe1370c4087f9809623a2fbfb616c029f5c002b116a302e04ef2efc160964c193cbad9d SHA512 0f3d1f2e14f5c70f08fc6fe25edc4ad07e67936a90820a8f432d48ea3aac976bf528b267ebaf285d1d394d9a3b57106d9dc8a389389ca4a4bf93d5b0a61b5c44
DIST firefox-115.10.0esr.source.tar.xz 507826764 BLAKE2B 342d5cf4d61b3efe3dde6a6e53f064739d4107690f1d101915ba8cf2214f518aa8c7490903e20179f0874a3bd62871723e877e8f789d9816f3e0d9227d751eb6 SHA512 0626e2c68ce43f24dfc2b9216e2565537ad8781daf4195d53420e1b78d57d0f6360fbe56b0ddbedae3818546c72472c85c1ff2b208c123d32a0543e666f42b65
+DIST firefox-115.11.0esr-ach.xpi 458870 BLAKE2B ee11c834ad609bef253ecc5e0656325eabd0fc6ae494c6464ef75470da134de9e8dbecd315e82a583b4f4254dccb1b0588c718f7d79309fa4505f3d7986b6a83 SHA512 02bb5ff090eae756f5c6a88fa1958e278bd245e3c63cd7ca6203f1494d80d603316e45972098a19f1ae60ac5b9b609cfebbe629c9d2d7cd90739dcbe024f3178
+DIST firefox-115.11.0esr-af.xpi 415016 BLAKE2B d7367661d8af676f52a5b7bb519557ca970dd43ffc6f37abba6b0f54376d57f125d6600c1eab9f5229b86cdaaa1dec01e51ceb13cb4f64216ef8b56607e83a9c SHA512 4698b724b44df392ae3318ad53e2b59dfea743db9a2e98c6c35237e2dd246bfd6275a6938edecb38b7bcae19789ddde37c4d3f2f2b2a39192b43bebd258aaf87
+DIST firefox-115.11.0esr-an.xpi 499405 BLAKE2B 14224019cd0fe4d0fe344fb41d0a202dd392db48933c45739c7287a266cdc54c0978a8f7569e91b98ce8e844a40d7a19b741c3adba5005b366af84833c54b75f SHA512 aa99343d32625e50cfb9494e494840bfc18d46391b8b43d004f2741bc9fe89dec45ea8d5d35fed4a21b6073608878a62b9fa0330418777a331922e7cb934c475
+DIST firefox-115.11.0esr-ar.xpi 605436 BLAKE2B 62896dcc3152fcea27333ba2c1f86c0e19873c5c433dc547265dcf6cb24f6c6f9cf52ea90083fed5d9f06ad80a4f461d4284592e9107a2c9feaa321a80005bc4 SHA512 668a504b62bf619fb2c41bd4a933cb85758900e745a0ed80a4ca968aae54954a265c5e166e2dcc52674600566112a9a64f8808ec32e62ba6078d05322b32b8f1
+DIST firefox-115.11.0esr-ast.xpi 491169 BLAKE2B b90b1f531c03826f1dd618f0777486003f793b1d21a7fbfb22a9381270a1bdc703cbb7135487601a8aa60adaf82d9e538fd00d3d894248a7ca06d0919c3b8e3f SHA512 8bf37999519cc0c0008a3b319a59a6ec49aca40ab37a50e25953c64d59f5263b79eeb18350f0433bf904864da486ecebedc9a50c5347ca91ffda4121df4534e8
+DIST firefox-115.11.0esr-az.xpi 485934 BLAKE2B c5cb201be6162eb8251c388eb8649ce77d4b75c1b16530e1755ee025e658bc1d366128c840ff9246de865f27df2d323e63199514c67f89c0ea7da4b7e9d3f392 SHA512 fe2ea407c8208b93f969a4302f95bdcf234106146d029bf46027d00f12109dbc3f792da56ca0791eda506b3289f5c269b159659b58ef33c90e2847e7075d939d
+DIST firefox-115.11.0esr-be.xpi 708810 BLAKE2B 6d6eee10a4ed22e19bf57852f11c9a23e00c5fbc4d6d31bd02e5b1f172358a1ccba49ab981cdef2b103a4d9d68c39124fc4e195b0f767c100c1225baebac3321 SHA512 dcbea4323f239b16243e5a07c2abbdfd2ddd340f8fa12f5cefdb590ed0d17bb6fe55d40983789e948d79a4dcfae676575c6d7c0c0fcb7c2d5cfd9847cab1819a
+DIST firefox-115.11.0esr-bg.xpi 597454 BLAKE2B df84239b16270dfbf9b45af80c4ac97f5c61dcb035dab15b2a1009db8f947b90899fdccc9669d0477a21ea70a4b6606c74a1d5ef07243c2b0872a88b41f82c2e SHA512 1581d718277bf003c2b092fa965fcc55242eb50a17c75c9db036952a6c372943334701bd2f9971a600320102d0f3aab2f4535da91ba6f988e3d7ce5ba3e42940
+DIST firefox-115.11.0esr-bn.xpi 576193 BLAKE2B f67d2119b4e6cb6566154724254dbb50ccba43ecfcb83db871e9a7e0ed190c8b8b1025cdf4768d7061bd515fb1ce4ea8802bf7dd9408b6b48a9f55f83fffc8eb SHA512 95098d8961877a05a6c6799b6fd83019578cbdaccfd47fdfba92a4ed02f63b6f51246ad77c117cecdb6d05a9ed5b17b7b9ae2ce57683ab5ad49f0936e21b8e52
+DIST firefox-115.11.0esr-br.xpi 583246 BLAKE2B 6780fa4f56c7033beeaa8756d0661341d20f638efd3668c445fcbe3e0d995ffced13d8796e078cd36f8dc1e4a83b32e3a557febb61955ea43e46a7428930cbb2 SHA512 13afe5db46878f9a0ab5dffd2206d8ee853f2fef4d3ac92f611398a01cce8325fb0aa72c8b0fb1d35abd958631a792bce151cff53f06e40b1c02e529687552e5
+DIST firefox-115.11.0esr-bs.xpi 496134 BLAKE2B f34a207ea8bf541abaaf1c3774a54df3eb896d2df723e00ae2a999aa041152c237be13bdb079bbb18565d4422c1e2baaad565e018eef23b3b3deadd2391ed7fb SHA512 f49be7e030600a2771fe4e14abf547339158185c98e1e98f19f2fa0037665df8e86de44e3c2662d3aed16ac4e40461b34ebf200267321067316622dcdd626375
+DIST firefox-115.11.0esr-ca-valencia.xpi 539091 BLAKE2B 10fd8774965294579adad15ccb15ef236de78160a930b4301cd96dd85482735d9fe369dbf21e8aac7fc4997f82c79f4ac92049433281d92762cd02de89b8153d SHA512 9e643abe68577b4a3096d33025a33a8a93d1f855afdab5a0bf3604146abdc2ff2b1185dfd7f44cb6bb826730bb68000de2d5381e1c5117ac36c98ad81c891e3d
+DIST firefox-115.11.0esr-ca.xpi 578622 BLAKE2B 47432fd910e493bfabcaf88df1de3835051057b35c0df061211062f76aecac56955bd06f4445410338c27a969cf66fdc7c34bef1b64068b07ca507953eb4fbbb SHA512 79014f5841ccc0eca1f2f90c2d923c9659853dd01bc0f1388f6c7f732c05b1d5adea90045f9f843f0d29b5a28851c85ca64ffc1f62bf854e830fbe60c7992ff0
+DIST firefox-115.11.0esr-cak.xpi 586177 BLAKE2B 688670344cfc9c34881d7681c87dfab3c5cf60eff6b1285d3764a571262adf9fdca40f98afda23dd48c2088d716e32ecd5952bc3b8e978118af0ac6fcea8ef88 SHA512 6a438d847b0fd4c74e587163ab7f0c445064171d21b356ddf72f8c891bfab3e450b9b909f78059fdc34eedc2c42e60a7e16eb1f79d5454dd9e11ed3a38c16e00
+DIST firefox-115.11.0esr-cs.xpi 652701 BLAKE2B 2d03b37790d0de88ea54d8aa39ec2209c53d5e89f3147ae129bc45bc7791173a084952b21433b54693382d659f86ed90e9f5d866ff8e4dec2f51224f1fb685e6 SHA512 ce05f6ad4f5fd866712fc6b7f44d497a3ea86598587a2536eeff73c48a87f557d75fe6d26c9e56ce5f2282acaa13150d2aa001a450cf52a47c6920b21d1e8d74
+DIST firefox-115.11.0esr-cy.xpi 618117 BLAKE2B a1e8daed2fc36e6f08d5130b8025e414a34430331a30aef5fd155dd53bcc483d49bddd1900da28af9af2cd2b68263fb662fa52ef9e6ada6e5e6c803c73b359e8 SHA512 33e5d383318bd4c3e8bfc1ad6b28bc2deb89efa5419cba206f8c3c2d60df6c62749bea493a599c09deb7ab671bcaefff7af153200c9ccf87cfbed6e0d4278c50
+DIST firefox-115.11.0esr-da.xpi 607114 BLAKE2B 6d0d2bc5c1687aec5d870fd785d13dcf7a81de52c0d3d2d4a3e7143dc4996ef812ec351fb765cfcde921575e36a34c807be44a1cb85ea2c2b043fad7e00f3bbb SHA512 c056f9be65efb91a9a087597cd2f64345110af7e13f6d4c48009ed7f5888fb4fcd4cfbf3b94e4a6f7a21184d7384fc2f6bea6c99d97d50f7af002b3199174782
+DIST firefox-115.11.0esr-de.xpi 625984 BLAKE2B 7a7e54ecd30b3be217a014f35b34c04af7b369ee3bf794b1af3d63c6e0eba67c0bfd71adce0da1a86ea9a43e2f6f0dfd95aff05874e65bfbba7790fa76e2578f SHA512 03558397c2183503777e157b627f9de123e61a9c6139deb0c5e998acea2c652af3dbe4b0c20a537e5ef40817ac3dd32c10a4a78c0d49636d570100a64110caec
+DIST firefox-115.11.0esr-dsb.xpi 645188 BLAKE2B 1d72ec4d3e4e780811a8f0c32a4c7b767950e2a77de94106c92ad4d850d2cdd9358b291375ca337992b02611bc69c5e9e7de431ba7f33fa6b2d202c73f065e05 SHA512 dcc88bbd686d0a1beab10f1d7695a41a01e9937df9dce0d59855c39b6862ebc6f1c3a18a82201e7cc9b4f566afbbb106e5dbcf884ca7d762724c734a5e7897bb
+DIST firefox-115.11.0esr-el.xpi 726135 BLAKE2B 38448cc96e5e029cdcf0963c89ed7502c36956d319cc966ca411e341a45f270cb145f8e8dc9b5855c37fbd7a2d3857cf50ee65baa8c75963da8a296ee3111c9f SHA512 cf7c21274f546a570a58469021c3be929cd138ad941a84ac1573fc5afc2ce0f8d7b00c063a18656c3b6e86d3f296d04b8b41f92ca01fe1be502d92f11822ca51
+DIST firefox-115.11.0esr-en-CA.xpi 577339 BLAKE2B a90b68201923e2c4cd4554befeac3b3386c1d0eb578e14818a2ce5859eca0094bf0a821261806044842e974d35d2d0b9fa2af3a5f79ca3a4f263d0ec32ad6ef8 SHA512 3d79d4acdd6713b21d09e310b416ace15ffd83e77ee6b507cc3c2fcc33134a510ce13c5d54fe18465cbb4dfadfb9efb7802b1d7647944d22395818f67b1fbf9f
+DIST firefox-115.11.0esr-en-GB.xpi 579674 BLAKE2B 25407ea301fbd2e44754b644623af3590eab29fec9e9a995df34a57290ac646f7ebfddc30da2c28e640b2865c0a3893f48c1949dff8b45f0293702d24379d5e3 SHA512 ade0870512377dce42d5d83666d468adac83398414030d07fe21e15201d8b32695a165464687a7ad9d8eca417b84ad5e0e6d7e88b4c147850430f63ed8d26189
+DIST firefox-115.11.0esr-eo.xpi 605193 BLAKE2B 2d7b6ea6223cc6ba274dbc09272ec02518332a8bbc0c0208fe6823e2fb8639862943d7d797b5bb1438e8acb8d2551043ac2a7cd196ad4bfa24e9487bac24e2e2 SHA512 5d58997d4775cc0a4e1c2292712cffe03454e82251fd89fd09a60bed5088def989482d912ae8faaf8cb2df34ffff121ab107ba2e6f8e388e94bce784e8733861
+DIST firefox-115.11.0esr-es-AR.xpi 622314 BLAKE2B fa3fa773fdb8b81ade45d11d7d3e61907e4809b8f6b7e2c055fc7e189ec3573dd92b8751572c885f4ca0d1493bfcded4a06e69aa928cf81904524608a50844cd SHA512 9dcfab125e11f7a7c6e7b6701e478f70f172a5f565554a5e760126dc4903973a52e26ad62c51d2728edb87b431b17b69cedfef9f43c755c0c3c13a0337e6bcea
+DIST firefox-115.11.0esr-es-CL.xpi 621595 BLAKE2B 0a729d2eb989193c2dc0906243c5be2f9f5dfa0ebf40fcd3d004120d139d60dccb84c904edd7b4bc61982448aaed8632b5032d2835e1a60b80120629ed760655 SHA512 4d0634be2eb7fbc5007595c939232554338a74a488abefd7a4ac584639b1dd73869cabdbe80aeb3139895cdf6f4da015ad39cda43c75804818a25b869b6efdb1
+DIST firefox-115.11.0esr-es-ES.xpi 616429 BLAKE2B e25891ae6f7c2ecd882e16d604c6bdd6802850a1d0d098b43509aac29d3fe98a3ac44cddcf178b1f5394152abb3c52c60298e27d01a9b46e0c1d900fcba25e63 SHA512 1bb522b427114b9ea2c38d7f77e284a199bce54c49ca9a3cf6a5d7d5c5935e77e3bd10779816f40d5bc9cf7e71903245f9f5cc3b7b74dec54a6febb64de03f5e
+DIST firefox-115.11.0esr-es-MX.xpi 584251 BLAKE2B 13b5c291cf3da1e8927aecf7598bca484a986ac3a5c7b1e0ec790364dfb4fe1df094d6729cbe569a6c2f1edefdfa80f8b9343b5fe464a2a02580bcba50f05fcc SHA512 d91cf6b3bd3eb97dc66d8fdfde6666b028ecee22cfaa04808f76477ef0837a21371c624c2d848ec6b52c41fdd6ddf09d4deca1cdbe67d655895b856ff0a1a108
+DIST firefox-115.11.0esr-et.xpi 532904 BLAKE2B 4e31216e5ead8de64b8273499ef2e9f2f735d4cabeca574a3fd515382394b9e49357ecc411e26111dde14715cac5e734c44c5f679a5d2b66d86d614d032db78e SHA512 f46c104e219fb014ef72d372608072885d429a78e88197762524bc769bf470edeb142e87a52077f18a1188d91b39e244cb352a2cb0faa76d445f653188f69eef
+DIST firefox-115.11.0esr-eu.xpi 589105 BLAKE2B f40b6c02a047d10097864c64369b1c00e802fe9a226e89750cf32cce1d726884ea66fd62a58ca90b19497d7cb4ef8918fa54b5df763439d6f44bbecb39438eb2 SHA512 f3f5c4b54a168b3ab7ca56f978f50b0847296b13dc5be77d2bd176c04c01caa4a5b38ea58cb9c5977d493b94c91fdc73e3cbc35df20aca332608c1d9668a06bd
+DIST firefox-115.11.0esr-fa.xpi 584183 BLAKE2B 1a6ae2554df47971b9ee116109f5ac6814174572cfe0ebb5ed62f1146630c8e6bfea50aea6293beb7507d40f7f54b22778b7df7aabe4a9a1e12587ececbf6e73 SHA512 35e06958797349c556cb89e18a3916570a84598e624f8cbcf137f52ba05e839c8257d084f7b7ebdf35f057dd6c7aa5bcbaf2cb6b2eab255d5dfb114332c0ad83
+DIST firefox-115.11.0esr-ff.xpi 471575 BLAKE2B 905076568606dde2419df1114622de83f6cd57949bbcddce59d152448bfefe8371e77d5e57ef5b0619a53fa76e27420646adc9bb368054973284ac07693a8777 SHA512 d6e44ef52015716fa19fd63869e7a464069b6f145a2191453b9027fdce0638ec5003c1af3c662628a331a8ff7994bf2af4021e95e04c4fb261ec159f5bfbf79d
+DIST firefox-115.11.0esr-fi.xpi 600782 BLAKE2B 2f9bdb8c1c11c275a195496c63bbcbae402b09f419cb32caa5a84b1a9a550afbc46167b953cf6a20d9444bebc60f158b35d3331b11d5abba091d27aaa1387925 SHA512 d761c6225220a445980827445caf242042cab73632435ec8b5e4ac986b7783ac53ba293a3c6667ae170a03ee3b072ba7ffaab103f6d6eeecbcd019cd90f8055f
+DIST firefox-115.11.0esr-fr.xpi 635409 BLAKE2B 37759582330f5db563bb54cb8ac5b266e80a0bc29b61e1e9c974e9a47e98c1b7b1d759c7fd8e90ff69433040769bf8ebbe5efd05927ab30097cded9b6da11826 SHA512 a25b1114c88985a6ac73ac447938923809bb7a6d4a3cd54fb9c76ece76d68512929ea9a91cef3d8efad427ba5f17da0a0a877684c213c9164c7ef6bdd45396a6
+DIST firefox-115.11.0esr-fur.xpi 626927 BLAKE2B 91cb6d0a93a513d67e63e657ea2cd6e267df5177d4a7745a06f15d24c96ae6447e4e714b4f75f8e2547a473cd6976e2256383ae5e34a7f71b1dcd9077bfed357 SHA512 0bb72466f24b6d6d6770db9e4385dc53390c055e3f5fa80d6dd484a3f76a9b0ff78f7344fb22acf89d75e0894e61880b49a7f177785338517fcd5552486438ab
+DIST firefox-115.11.0esr-fy-NL.xpi 617933 BLAKE2B 2be547a0ed29e255f261bea4ed08b4d98949f6a619b6bc4cfddf2d15908ec1b5915f0628812d57b8b954f7e4ee4550ff7926482101384ddee85f8dec4fc3d0c6 SHA512 0dd6e124f023f37ff6a750a5c718e796d16488839c4bdcb7b1b64438b38c63d91f9635215d3ede8cc9d114a9c972162e50aa3df4219c8b0e3c051d236bb549e4
+DIST firefox-115.11.0esr-ga-IE.xpi 467475 BLAKE2B 731e89491cb2e3662ced5b5aa667077497f791eaf076d7689f6bca2413626a0d28a761be6045ed9f1a481a7b939c68779c5e1bd707fc2df376da2109bbcd95ba SHA512 a050a784f42e5bc5c474d67869e1cef3a7f64ce8bfdef57eea1bbb689c053bcbec6c811771dda8e4b2da173038eb348740481994c0a3857893e52988adb465e3
+DIST firefox-115.11.0esr-gd.xpi 589785 BLAKE2B e7389f3e513d4d923c3a25ecdac547b15134c5e2e7d4c2845e13f2ee86a73f1a101428deeb42eab9117a97a38ea9cb478ccef6a98257d7e80a867ee25bfcf158 SHA512 0385b75dfbbcd6d2e06adde390f27002288e444853f9d4f5158090f7ebada61e0f8cbb157b9c899cc853b8281625c1f63b0bbf7f3f71077de55e6e4ad72e965d
+DIST firefox-115.11.0esr-gl.xpi 599795 BLAKE2B b78fea711842210c9d70b4abeeffdf8789445ba896f5fa630d8d5cdf113cc063b20722dc0c773a431a7cc45442f4374e3762db440da6380f2d7b7fe1832b9216 SHA512 a53759e861da71e7723b168b084d91d976660623ee1eefdb2ce5db97e3c18ffe0b49140c99983f4245f02ebd6913a9db0442d3ab270e5ca6f601ce3d603994b3
+DIST firefox-115.11.0esr-gn.xpi 633562 BLAKE2B 118460c105d6b8eba04792e81437f7c6a5046eaa8d579588bb3fc0f9089a44ec53b046efb149409a22fbdc379ba0844e6d7400a9320db84be11ef08cb4ee4eb0 SHA512 9992b5582c27b33eddc4502461c26940757028bd5cbdfc10145a05d6664dc11fc87832fe3422dc26891b802d5cfd6bc45d29cd0f766f45af07dec33f7249ffe8
+DIST firefox-115.11.0esr-gu-IN.xpi 523224 BLAKE2B 1b0b40941e4114e757624d02b6102a14d79c63f70130b80e5c82f100b01cb2a460bab6c3e0284db2d93756e8cf7864414a573dc63e72e89b04b6de4119251df4 SHA512 ade5801ce0c2ad64b362abf05dc3407cc5c2ee34cb2f88542dde2c63bb3fa503323e8da75d83a04ad49c0e563bfac3d2ce040005361243470f8c313a8328aa0c
+DIST firefox-115.11.0esr-he.xpi 623918 BLAKE2B d36d023e200cd0bf0cd24b222d541def5fe2d1f9829e9af1c1390a3f6f4bad3d673b2225106eccf29bbfe37d31b7fcf0f697ac683ae0714880a8cf47b40e610e SHA512 c38924aeb6d8118d65808dde23a1269fbe6a41126651fa99a96fc2732480ca63b7d3372cac787296bc7ca1b03ef0361af945d033468ad9ec8cbab1b5f09bcc15
+DIST firefox-115.11.0esr-hi-IN.xpi 559909 BLAKE2B a832ff8a8ad30fb25e29ae9e74c97364b2d567b98007544c0699ef066a4fdd86274f8ebc76cd0db75f03f4f4cd2acb26e0d3a34e3bf6ec291fb7e9e7126cbbc5 SHA512 8f385db5e3e5c617a1fe4d783f80bcc7b2446bc40c6e09edb956301073a31bee5b73c87fef92723ef4c72a70d99fea30d750752f3d512ba5c4b07011082c28c3
+DIST firefox-115.11.0esr-hr.xpi 550256 BLAKE2B 909e7112c01a990458ef87079291ed589ddc133a1bb3987d9b2a327e6c358fcd5bd4fc163a0609ea22f6e8cf3231a81e93c68610e448de9a12aa7f0d22c0b1d0 SHA512 68b82c858c63facdafe235eb70d6476f9c0d4590de22182240734a279c8bc5fa25450a3fe622d38acb47180bcc8996b793677feded9a362a8b17da2546db2325
+DIST firefox-115.11.0esr-hsb.xpi 641181 BLAKE2B 2febc89a49d3d1865a38eb7466551cf9c4fc72fe95f5a2527ae1f9d054d1f94016d25922ca3ab37232fa9a4b8167a28cf7721461628dcd5efc3ff12febf27bcd SHA512 55e0ceb644dd34445ed41abcf91d2ff77d79edeebda18055ddebc7bf33c279add4d51465a0b55cb27cae3fdd8169cc11caffc97d0ea73f6310c4d428564b9537
+DIST firefox-115.11.0esr-hu.xpi 644321 BLAKE2B 077287c37c8d744d578a0f0892b07077aea42b60587e754fc5ea06fa39812503e0bdde1050845e4aed7d4f4fa1ab9e2303f393a73edf0c402c2bd46af3c1eedf SHA512 57d7fbaf7cb95064c2636d4430414e3413d83a1d5d1eb7f43e72da949e9407270ae968702eca8699e90705caf7816fe49e07ec8424cd531d0eaf338d73a933a3
+DIST firefox-115.11.0esr-hy-AM.xpi 645130 BLAKE2B 1415f8ea22f354428eef5b872cb0aaa8f57509799ea58f6acdd13ae61a16767fbc3c6039d14412c8a4f5207f26e593e09956305488d621edd6033ad5fc362842 SHA512 8675f81355577b0ad92b3d6452cc7b49835f92a0b9856cd19a26ae2604cfad1c9ba206ebe232ece986dd37757767b963589ace0d1f809f3b7041229fac0d6aa4
+DIST firefox-115.11.0esr-ia.xpi 605528 BLAKE2B a4bd330b6c545caf7cf2001b500252ea5f8731cec5ce0e9ab9a8346c4073d86bd63c236dc051da071250c11f840f4c0c74c44163df5d8cf46e2accd291959a88 SHA512 51b65e1ed0ac2b383ebc20be10671d02df3cc96d81c1e90aaa58bd64b783cd53e3c58f9296d8e1382e5ed3d9f830f011f1953c3d76a72dcc741ebfd5bf2b729a
+DIST firefox-115.11.0esr-id.xpi 567387 BLAKE2B 2878a87d5827e057e463f8bc9b440c8a8b58c39eb71fcb874a93d56a9886489987d7d2326a4b39e11a7c54cf39aa33781afcabe80fbcdc01c1b6bd0188af170f SHA512 d369700952312caeceff244b17fbd93baaea1f3b494094c5b9f1811a646cf8f9073a76894fcef854705af580316f6dfce8666022ef9939ab7398cac7e2e47ea5
+DIST firefox-115.11.0esr-is.xpi 608056 BLAKE2B 338ec3c60ee1340e9416b8042733bf6044049b70bc0216a4e2149fd7842013e8c8944fc4286fbf360a7fe9e113ce23cd226a9366af03a3afc657e56ccd2f8210 SHA512 fd6a4fe9f2960050ef6c5305e126d953e0be154b06181a838fb1fdd3fa7ba2321b41ef0f15b81fc924c0ad3242ae48784861f2c6f31c4be2fdab6b3c9f817853
+DIST firefox-115.11.0esr-it.xpi 561840 BLAKE2B f69056a03ecfed7a951275b1a19bab7cc6ccd1d60633ba48416bf2c46f7deec7993511895d48ae3dc821dcf9d046953ab618474caad39bf8989c15a97035220b SHA512 d45bacbf14a86c4df8cb63e1836195209bf960a4d7e29da77fc4e21f84c2b36d37733288660098a7c38186fcb081e2bc42932f33d64f34c63b9233eb2c7a3665
+DIST firefox-115.11.0esr-ja.xpi 670985 BLAKE2B e2832037fdf22b202ee708d49eb29f691dab878669c50e0ed32ed40746bc032baa137e1f8adf5b24946c195deab345a15e5c5b021731a6dde34c508ae2f15282 SHA512 42fcb7701c0ccb1ed0cb2a691c0dd8f1af81759f7259c7ad9b57e7268110aad24a880d4c25b795fd0c305923c62d8ac53761eb0a5d4878b7c7df224c8d6a2b0d
+DIST firefox-115.11.0esr-ka.xpi 657821 BLAKE2B a6e84200b7c2daf46fab1f97df31b8d7df799902402804573ee154d6106ad61f8ab701b6b4eb1bb6ce841cd57c86366b29c7b594f14bd6a4ce624ef55cc5f99e SHA512 d34cc1b191033e3080fc957df4a660b4e2da1a9805b2ebbc1f8e6b3f772df799116a208472eac05737cf3777e054effb21ed6a98057a93e58f7acfa8c2503e58
+DIST firefox-115.11.0esr-kab.xpi 598708 BLAKE2B 93e183676a6396e05b596225725c6e99f94e23edc3e82819c747d224ec9f8a563a2e42c07565b0e29a1da48cb085d666db1085fc390c13d59d66ab3466d800db SHA512 dcc73bf943cd22b5100bbd2a22d191266b1251f886d6cbb49c5d39d256b77a85fb2b0a6d1da90ef62b3ca1e418a2075918e486c1520da0b85599070081a37ff7
+DIST firefox-115.11.0esr-kk.xpi 702213 BLAKE2B bf99af8bd4a952f77598675d2dcfbf136565e85793a139b51adb91bd64aaacf86b8de19bb603788c03a89b745a4828fc3b2d627218911644ca92734e58f3409e SHA512 b3a6efb47901cabb40143b1fdeb34b835153162cc077fe26aa24bee9630be186b5d7f26c1e2aa58d08e700f7c5a43f48465d390767c83438157efa7bf246c216
+DIST firefox-115.11.0esr-km.xpi 522162 BLAKE2B f15dcdc105e201abb265f7d9681c205ae6a3b5f95d8ff1f13585933f34cbaab467ca12fc85dd8ab125e2fecd621613e04696c94d1189b144944ff7fca2ea0a2e SHA512 7e75247943bcd116ca6cc077b912d4d9c03bae7f133e9c08cce6b5dc34346fa1a52c25fe4de1b4ee3f06e427a2d5cd5a7089305ddd4efd2e535a03a5c8b6faa3
+DIST firefox-115.11.0esr-kn.xpi 488044 BLAKE2B d41f709991f63654f8d849a6e475575491582811c990499902384793fe27b4da2895f4a1221ed82d2c36e3c9400a0d06e9bfa4cc1061ea43b2616c24c611de4d SHA512 fe3dbe277c072732816cfce4e85c271d87d64008a9a6f550dafc34a8f45e35fd5da2f862ca954996ee1811d699e1821400ffdeb1a7b3add44799692538558aba
+DIST firefox-115.11.0esr-ko.xpi 656076 BLAKE2B fba0e373752a3f16dc8f0c33a7c5a8d958dd28045fee54ce7e18f5e0e4988770a04a1fdb72a068f4132e0d971c57653e47e39073bc1b6d89675ff3194fa5eae8 SHA512 c4151f6b8012284669e2be27514bd7fb89ded14225c426c80adc7b3465514e8c2032faea4c93470ea6615ca049ce9f2951c906b9e407ca6d8a086bb8a48af270
+DIST firefox-115.11.0esr-lij.xpi 478952 BLAKE2B c0bf55f8bbc32524364faabf944473ddfa00570e518e502c9cec5c365000b2bf054fb46462f9e72ccf7b90d9090b7c97b0854bd2dcece1ec1002cc8a08de5517 SHA512 2e9d74aea194a5c1896f53362da5088ddfbc2359e795d46a3efc950be1f4d397c6d16706d0bc12dc635baac81043f22b953eb241229a8cd556fb800a91443630
+DIST firefox-115.11.0esr-lt.xpi 566062 BLAKE2B 2c89b311dcd27da0ab537e25579c4ea4b8d390146d00b7248cccbdcb39167d88a028ac9fe326bccbc144cbc7a642c159df4f7b8a54cd241095fa8987b341d7dd SHA512 73cc3316d5fa5451b8ecbecc5ff644daa81bda1005c06857a044414a2c13e2dbaedaf050dc4a7b4a2465c514820ec497a7697dacabdef24a22685ae416a36b42
+DIST firefox-115.11.0esr-lv.xpi 568021 BLAKE2B 778c28a2a16f22c6053db6b828eb521f0b7e66cee98e620557bbb45394f71f548ede84e706bf99f4d3b13c2c58f6c5a7b0ef1debc01e71fe32c7d11f43b18dfb SHA512 a761f0cc8241b7e6736e7739843f5b26784b05f7d66ac7b451581a4991bf9e6219693aa064dfe1a3ddb5300c014e9cf27637a3bbf7681b1435848a7214c33db7
+DIST firefox-115.11.0esr-mk.xpi 489768 BLAKE2B ff7f9db70f023d1421fb204fe1406fc85682daf3970d1c4262bdc78556cac313394e52553153dadc94c81043f561de656ff5502404d0b5fd3ed6be035e55215d SHA512 94788d96ef9817988848b4947bf40309a2fda3b86db216446b0124a6bf036e8a367dda721e60c6634f8b0f9e1b3d8820acf4c130327f47a37ae513114449d33a
+DIST firefox-115.11.0esr-mr.xpi 526704 BLAKE2B 55b17e1a99473d0893f1ce638a4f6b189300120f25a2f7c73e02135ca9b2c2ebafd34a26cb31decad974e5ed185e4e450cb8fb4c8cbddb930209ca7a8ad8644f SHA512 5c678b1cd483b43e1894643ecac5c69ac1cc47e15914adb86014aba1412979908804d8582430256f65beda14aa833f1be4e7d80160674693fdc0c67c926c90c7
+DIST firefox-115.11.0esr-ms.xpi 445360 BLAKE2B dea5e310afe0266dae8986b1b2e7caf80b9683ba9a4154e804a431f42fec2653ec95bdc0d7558eef77c2937efb2030fd487bec05936babeeda02343f4ecbac76 SHA512 3e440e7a4238a5c24491fecbf45840c2c3bf5634cf10f9786d95b86668a03c436e977292cb12a20ab9dcb2355f1404d2e70958877d2cfde1693330349087b2f6
+DIST firefox-115.11.0esr-my.xpi 514754 BLAKE2B b2df1cfb7afaed229d86a9137d7e0268271f9972af660ac5450545d10710171fbefce3a1e82106e6c8eba091534ca08252c78e58d68e577a1b39babfb89b34a1 SHA512 065247c9ff4ef12d3e7ee0f4bf1c6089ca097e28034d2b24a8d7d597a6055d3f6a9c8053142fb4be50da032f95d0e223250b6107d40371f646c390a461b6196c
+DIST firefox-115.11.0esr-nb-NO.xpi 600612 BLAKE2B 8846160e4f1a44bf2fac9422b872b0e0a89ba98758c72ba0f9701ad53b6b5ed7b6510d5f85ea94cb1e44bbbe0b96353ca9574b0f9120d6a01f66024bd1d5703f SHA512 c1e73527099edd13ffb0c95ffd863f0c1df4ea8857809d4f4a7811bf5dbfe12ad21d3ef33c4970c15106b7af644e844bef0c32f0c4829b3867d58794fb71d43d
+DIST firefox-115.11.0esr-ne-NP.xpi 496355 BLAKE2B e961f0f5b2e700ed6a7be12e75285d1962a408ac43e81d04203e2e0f9ff40bf3240e04a0f691e9a55a7912a705b33f9117f9f3a808ee82454cbdb21929faf939 SHA512 d358b5a6a054a644e87a4e4a9cfe88ab74ccdd0692d63a455a10121f32d868d037c41e727471b0e5cb198edf5c7ab8cee822a7c525f3e59e9fa874c8f7d2d23a
+DIST firefox-115.11.0esr-nl.xpi 611706 BLAKE2B 7b57e9f48a52218bb37acbf13da085d726fd3ded5340dbc12d671bc56dc50bf67cb51774372568fe8f97d6d0e107aa2f734462e47538747c293801d97c5b5931 SHA512 04e96af4b5e68e7e0f5d7dd33f910b2912f23dbc8771acf65f482fc57d3b2b21a18ffd6f2f5e784df5d65ecf35768a5b1a2635e5832a9c9caace83b8e32492a3
+DIST firefox-115.11.0esr-nn-NO.xpi 594035 BLAKE2B 171d8d6f11237a23a4716bbd66c8fb8ff6529fb801e0dbad9a767302a0d4e20b07f8ddf42b99dbb82c5a6d9058c0be308eadac6c694f120aa7bf7ad3fe3e0041 SHA512 ce761839d7557808ffdb22e55130b910c453c2f67d91d5826878b826a0b37dc3887d304f39a4229f0e42e651b103e7b0ba786bd08b638ecbe52ccc2423082d5d
+DIST firefox-115.11.0esr-oc.xpi 605586 BLAKE2B ca94d057e8343817c6ca21bfb0689e9159054e62a2b2f318db6563688dfd29a29e24fd07baa2c6026c2616ce2592bf04141547890512ebc33adc10173664f27a SHA512 c0bc76076cc0a5f9684d6d51f4ff2dd455948df0d814b2c60ae63d001d3a57af802da345b25f56c7c8e12d0fb6a23e772a080353239707ef86f23e42f6d8b3b0
+DIST firefox-115.11.0esr-pa-IN.xpi 681659 BLAKE2B 3fabd39635d758b859e34249f40d5a1861c90c0e6facea65bbd7460b11585457578bdfb64d970e9dc5736abd83ec22381a5c06cc1b6e7de115ed3124465d961e SHA512 4efae168ef49bb6d325a9a3d11c8d2e563486ff49798eca6dccb161dbcfc7e0800d86e2df4864b2511cb5812a811a516a3f22e5de64d81ab551483ef48699221
+DIST firefox-115.11.0esr-pl.xpi 629674 BLAKE2B 73df32fd4b1c80c6b495d6b14632224e6b69b41ad33253008c8777fb2941440523d58f43f56058a695f29ddde282539bbf5329ba4a52a15e3823f68040e67a3e SHA512 69aae0a939ec6d0ef020f10a2b8be9053909a06b377121b8c7469c8b221a9383a68dbfef0add61794a5fd993ca30b2aa47522d1f5c7e7d427fe07011437825b4
+DIST firefox-115.11.0esr-pt-BR.xpi 616402 BLAKE2B c4d9ec6d658ddc3f1a0a54e978eee0a244a7c5774953556f79b48ce80fde90f9c12e3f392f37804793ad90fc939be4b93eab7bba398acd6fb441459a2d68a7e4 SHA512 95731038bea5bd4075a7bfca0e7c126bffacb6693a912d849b2626bb849a813f7b095e88f9ecd33a17bb96c94bbed9a7525b02a8084d280c9cc76aee7e752389
+DIST firefox-115.11.0esr-pt-PT.xpi 619990 BLAKE2B d1185a854e3c0a9395740f08da24e5d778683d18d66658f07de850e48d57229ab434959dd155ede4ec89c27f648ca199509c84461e3ae1fb45e8a7d8967341b1 SHA512 0fd3575c1cd73de730572171c86bbbd5eac6c9805eaa1619ab3ceadee5d9576b199c0b7dbdcb921dcd842abf84a6cd6c8cbd9585c0735c89cbc7b9157f8ed216
+DIST firefox-115.11.0esr-rm.xpi 609314 BLAKE2B 6c0e7fb095b20af07c75ed50250a7a257f3453ae2f907a34041bab8509a6e6569fa67eb6febfad36af9e5945aed246038c47308f60594e60db6aabf938c6122d SHA512 55bf5c32fcf1058411419c4a2aff07328547db5a567c632448ab2eec6ae28fde4603b7143486f20f24b5bb5039c6d60b92647395e9835c0c77a975ac26ea49c1
+DIST firefox-115.11.0esr-ro.xpi 543385 BLAKE2B 485a4ea7c5e2c5e061bf7e983cf6440d1fd5ac55ccd81ada092dce0f03997645ae3e1b0f204daf97ecc758b870ff2f6b428aac018ff6e1a8d02d17c9176fa5f0 SHA512 c6eeaa496d1550641b62396f3a0b8ceaadeef410f6edfb228779e887fa15dce2e72d3b1395fdf671531149c1992be65bd4e0058f9d3b094cb4a5abfb447cf86e
+DIST firefox-115.11.0esr-ru.xpi 714541 BLAKE2B 11dd28379d56c7db5b0c3af3c3431499417a16ac37739dbb04f3629da61249387ebc3f9bc766e174c9c7a1d5aa518ff3b91ca33cae179cb3d5fa5a63df48d966 SHA512 ca34bfa8d8cd1eae64ac1944e6ffd8cd9ae22ac361b52164df37965e6961ce220da81dc311e22de44c4a1be76fe2421427ad6c908cd65318a6cbc23a5a7cc594
+DIST firefox-115.11.0esr-sc.xpi 571840 BLAKE2B f32bd83792a8ae3a1e69b53b2b93193df337a8eb2e55edaab211aff1a12a4bf0da2a4fb5b8222038502608f8a28777cef1cc0aad9ace4412292625443be1cbea SHA512 184b9657bd5261e3fb5aa91d023359b77d9eefa0f1c4447cf552f9ae38030b0ff2fa23d9aab238e9aa1ec34fe9b1fc5473d905cc91e591b51709fcb97443e312
+DIST firefox-115.11.0esr-sco.xpi 505549 BLAKE2B b80138f666259a1ddff4347043602cdd27311f9c31d0879493c2642de444d0e897fc3648fa95a1d3a715c54b656e2efd991adb2904fd1954c8a6bbef8a6e0546 SHA512 4326c7a6d4d104bf1edc39b53065576c149ccc7443063553d89db71298f9f37a05a477160c968f1a0264e4eeb650007a180f04b5b9cda8e735acdd66abfa7e51
+DIST firefox-115.11.0esr-si.xpi 600723 BLAKE2B 6c9f05c5f5c83afbb892a2b8f3fae6388bb928e1acc120f2b2391c33f457539880ea25f4d2616e3ac79d1c4e87a26561ac0c0708ea55e22e913138ae931cbfe4 SHA512 804d93acbb76f92ff03b88ace29e760fdc276de106e8b4db03c97a349c5cf1b3ec88bbbbf8adfb7a6b45f2f820fde47d05a233415ad0e64fa7fdd1ba5fe505b6
+DIST firefox-115.11.0esr-sk.xpi 645982 BLAKE2B b2f5beed5bb79d26f4a85283915e04a76ba6489c0fc3f6d6a968339fa8f679cbd1694f6ea7663c7f4a5564dcee263eb4c2be7b8e5e56cc720b18f718dfecb5c4 SHA512 6bd61dc742a6a4413aa7380cfefa60b74ddfc46e3f206ef9a87297e1a7400710ce73be5f40d8b1db489b94d0cab495f357469981f8bff0b6eafa944ebe6fa05f
+DIST firefox-115.11.0esr-sl.xpi 608024 BLAKE2B 73a8fd5646df8d443b5eb3e831c249cf96d003af381aa91c500dd627835f046d96e291cdfad3219ffc7e9abccef50df4ffca8d45f6cb9d1d281066edc411d33b SHA512 e4b2373c1269819a162a93df511b9c864175a2d7196b35af285f90611a0032a17a38d3ba44fc355259e2a3ed7e48157a879ffe4326da89c383ab8fac7d47d3fd
+DIST firefox-115.11.0esr-son.xpi 413535 BLAKE2B 3ac99102f7161a83491445cc953b441b0ca12262c421f3a75b98c2ff2af45025e2528d60f53a9553e9bfcd7226b398c1e3c3419c5c5813524c2201f4e225856d SHA512 aeac1452dccada5b48ffcf3e7d8b6527026cc816959f748fdca05949694511fd785e2efe2a4d9d717264d90054950ecf381b16e0b218c34bba9a9b307b567c91
+DIST firefox-115.11.0esr-sq.xpi 632192 BLAKE2B 53f700c912fec11102980662718f806be52d6e11690596297cac01a51f32058a9739f089164c2e86ed86390b16a0f226f942e6e317056a09cf3d0d9dbb3a5fd1 SHA512 2d6af3dc75e64ee2196773c442bf73de30e9fd77596d6a8971742200f664516e6180e546f6f0f681fd6e801cc97efcf7c603d6d39e870947a9348cc99380f267
+DIST firefox-115.11.0esr-sr.xpi 633090 BLAKE2B dac334371022d82b21719bf82e943912fd006797471c9e165276dbdd538f6cd011e2a56822d6235a03ac17b6b21b5f77c714da2fed07369be3fd72534cc14b8f SHA512 f3ed64a5d7dc4a0e51dc8911e6c299c663e56a22714947788ce8096bba4dd41943ac64b8a4fbf8260a0009e0c8bb2769800a5c1f3c5bce6c2e15b3134bada773
+DIST firefox-115.11.0esr-sv-SE.xpi 613542 BLAKE2B be65eaae07e11c913bb5172533521016cc32023e5d71bb41bf2580a0f70971d33f7fc7b5df8e91923747b8c74952885b7712446464b23c9ffc1a1ed8825793e4 SHA512 53e04a95c4ab9307aeebf342f662cca3e8faacd46303126ee9a542775a64a19bc9525f6bf537408e81aeb1d81d3195fe5c048ea23558cee6bbfa92abc827a5ae
+DIST firefox-115.11.0esr-szl.xpi 520851 BLAKE2B 382f074f64985a8f98f8c34232d2fb801774685ae327568e5b9735124f5316f10e65ab4d60266adddc6f00b3ff0fb04948785aa959abb4eac277c830054fe375 SHA512 de687b871b4eff23403db01dbe373406493a6cf676995e02f31b6b0b4de27fba6e56fc7a94242dc01d40f6c6b418a57b327e762dc5e60a906b7c313dbbae8fa9
+DIST firefox-115.11.0esr-ta.xpi 503478 BLAKE2B b61e02ac7cc84ce627b0975a4f9dd973a2dcc2983a1f4e154b1dde318a93ca4dc11a0eb982e160d7c79210fadabc0f88649c3fb575bba0c35c1ea58fa9e9f491 SHA512 110c4f8190f0c9dd1152424fb93b86c0fb38e423ce0c126692d1b3e283d775052f7ea7e7f693a1ffe8149262bacf4336b8e2a551842f92067390f90fc5cfb74e
+DIST firefox-115.11.0esr-te.xpi 554469 BLAKE2B bb7402ffe8aed43ecf449fd60d55cac035d8eb7e10f6e2a76b0da3e641c33dfac109e980220d0664a472a88a9ef852eab95515d138f16cd12db31d2b5eb44916 SHA512 355f78110c999034ed0bd0fce7117c27a868aae190e792a10cca0a44b1b1aa0204cc9239f52cec349708ec8a7027ecfe0ed5f92e76b8b7503c3450dba9aa36af
+DIST firefox-115.11.0esr-th.xpi 689150 BLAKE2B 678bcf778b46c75670ab91086990ef3ae8f4005ec0d58fe81fa6ec5980ee45bf19111cb73e361cf6e9a0a87f4dc1f50f276a21a9802faab64464c12ec485f632 SHA512 671cf6169bf574ca091c986de35117800151d0030690faa69115ca7955d89576e01c38b91d64f908cb854003b68348478eeed4b03a8ce747d5d1d8c79bed4768
+DIST firefox-115.11.0esr-tl.xpi 527655 BLAKE2B 839f62c96f75b977bf57f0c0aac062a0e890a495313149f8394c5bb6a7861c98344ded12269fd44ec4c6540ecc73a75102d6307386581ad9ce6992e160da22a7 SHA512 f503eed82250f27c7766258719c6491e87e178e3f270ee8e6dba6aefa7705ff6cfb43c59e59d71a7e074f3a2404c982dd6ea8fe3b9bf49b860f2fe0a9efd6b7c
+DIST firefox-115.11.0esr-tr.xpi 625234 BLAKE2B fde79f4e20380aedf2aa15f1506648912223c8cd269ef3340ee876edbf2949f35d2635e8429b7685dfa6bf3402cb0205880f55310badbcd7385fc5cd0f8ddc9a SHA512 efc4fac74cfbf23d7ae49578d92a326483f8b1d7e4ad747babe8c80d90aca7be82a9f58ad2ea32e587713cd904acf5d86d5e33707cc0a8a9336cfb60299f7856
+DIST firefox-115.11.0esr-trs.xpi 498528 BLAKE2B b72f0eb645a3932b13a56a03e10d2610b05ed757d26397e0dac5f8d74f7411304a6ec655fd22242410b1eb8aaebb9282f4d764724dc4378b3e986ceabcfb3d3d SHA512 3bd6b8cd9f30afa9bce3a86f8b79f5bbb1e808c244bfcbf50080dd7e1ce2b3acb8fe6ebff441afdd579f8aacecd3fa9c030ef66b121f8c5e18b177d2cc3ec5b4
+DIST firefox-115.11.0esr-uk.xpi 705521 BLAKE2B ba39b228282707b2d5af5d5edff2ad6e69e284234ac517573797a9fdfff371288a99b843e9f076183ecbe786c414e96735584defa4f4fdf9a838eaadc32a9ff8 SHA512 66e13f1db86de41dea5ec53d98480be6ef4e22b993c534d03066ba32058045e4aebe2cf4be2d051e890b67f4d569d1602a069ecc1f4e58db5176b4a8653a3273
+DIST firefox-115.11.0esr-ur.xpi 554703 BLAKE2B d315a77b5ad354f6509400e4bb586ebc0f6e312301de5b119642cbe1bd7f746914ff76d3e04dbc73ade6b2f07fd00ecdf0c8774a140503dfe5fffe5a904107d0 SHA512 af634ed4299c02ef1ecd1e6ffcd07b2cc9ca47d51a0d3fd08243349d31d3d0891f476229cfd43b9f12b42a45fc522bc4335f244a340ab25c1782de31d16c6395
+DIST firefox-115.11.0esr-uz.xpi 474518 BLAKE2B 1977bafb6b536d99afc72bd28b9f353783bc4c61a6aae99104eb1952d4fb03ade4381e0ea5a60f06ac55af61733a952942480a34b535b6a800c008f1f8e43585 SHA512 3b2a1eb7a96921612af1d1476a487cacb27c413144189ca143ced2a5d463f16bcfb4a1ff3f2f190450f303ade026131d4d987d019145055c8a5027cf2e697ece
+DIST firefox-115.11.0esr-vi.xpi 649093 BLAKE2B f6b695b33cefee7ec84e829924c30cd1f23eca27bda79b6b2cc56907e26d032e79abdaef32f33f77e13d054df851305e1f93bd8aa7d9b5de34d5bd38bd6bb71b SHA512 e8e3c4f7e9bbfde77f3f70e889c4e393a016131258d47da89d75f6f8ee2ef78284ea966cd6abb61041f21b96d4d3891eaa7b0cadad8fe49d3ff220cc09416a88
+DIST firefox-115.11.0esr-xh.xpi 414784 BLAKE2B 0c0e12593115bf6bda6e94c6adcb9a565446973bd9ea153e15509b183233a0037b28776804cf801a060aa7002ce26dac6a5829b0e926468d9182e2caa0c8a54a SHA512 001b395dfa0d2776c28fd9cf8e6296637a0530ad097e1b549c088670aa798336b25d3fe4f9f93b13e398404ee74ae65d8a479cbed23e49f0879a4dae7be10053
+DIST firefox-115.11.0esr-zh-CN.xpi 650822 BLAKE2B 2c47112cad4d9ed8d66f6a6368c0939611d717b9d8c0d0bd9668f1c4c60b4e813cf1f81424d092aff8e139fc0e53171382f60ffd2f55b75c438f00904747f03b SHA512 79d7473f7ff7458f8570c0fc3fa8e192c9b355c32c6df9f8c4b2ad626e3616d56ce1d83792e53a275d83b977e8f292b56083f50154ecddd3056be7140af60eee
+DIST firefox-115.11.0esr-zh-TW.xpi 653644 BLAKE2B ba76edda00ede0457a31267f6efbb12a38fdab0dcd8e90da74267e2a0f08a18744edb5b5d4ab05ba9fc26e8697961178e5a74b9c2637b949b9aa8588a2d34c3b SHA512 029c0b0682de91445a784bc0b5bfc8813b506ccfacf65ce6f33703519a8491bfd9bcfc76815e8e8718b67ccb78479cb6328538850c6ce67b1a9670d7f6f7abc1
+DIST firefox-115.11.0esr.source.tar.xz 506015444 BLAKE2B ced11d0665215dbf0aed710015a1e27863ecb8ccbba71ff6f6c57e1789e54c3c7c1940507db86ff2d8eea4d323a9ca7fbc40eaa6eaa7b0ec922ff69ffad64886 SHA512 0f3a87c99fb008088afd509d9259f893fdd44ea6bf6a5e69806fefb8d355415e81b9e8832a392acb9d0c1c50e4add7f1362a4aaadc35e1d9c2e55baf7136aed8
DIST firefox-115.9.0esr-ach.xpi 456930 BLAKE2B c041593a7778b2e17309061405f2efa8d969eea14c5e4ae55d1d7f50f8210c94c450b3ae2d667e577fb086ac729f8efea34cd57127b3fccafca47493dfc8584a SHA512 840bf034625e3dff62c701c80ebe5af04bf92be54de5950be46589118feb74a4c1fbf8d8a55e34309da62cbbf94c9c863d528f0448bc8540e643bef058b7cf56
DIST firefox-115.9.0esr-af.xpi 413586 BLAKE2B 695f26da6377cf4db1d93a065156ef590fcd5663e69e96093e420f494e354e184769344791b24e13fd00a29bde9d14adc46936209f2afe9ac330b7f55e098a3d SHA512 b7c4af228dd86f1913b06b0ffd2a0fe022c206ab405ffb0e2f224f5e891aecd539e2a5c90c0b617ad94f2a683fbe9dbf1bc52c7b45bd5e0557df86862e8e0c6d
DIST firefox-115.9.0esr-an.xpi 497249 BLAKE2B f77fba39585ab36a89db1bf1faeda9c110fa0841638334be65ed7e472d80f0db903351a8ab7c9e8832c596897f6ff8827fc1583c0399c68c43c271746b809a15 SHA512 66176fce34c1fda1e58e31f89ec1d2591ba1428b3755d5045dc763c8c186ffbb7ca3e0d29f7dc9492263169f3a6c73a3a918b957265cacd23518a166add4413f
@@ -511,9 +611,112 @@ DIST firefox-125.0.3-xh.xpi 414332 BLAKE2B 0830d61baf994a669054362c3200f0f1798e7
DIST firefox-125.0.3-zh-CN.xpi 645753 BLAKE2B a21ea3af45235dcca0378a16cbad27b56b135a03c958e4ebec2f9f717aee7b3a3b3706e39e2b1f1a6ddceacee51416641c9f166e2d5a428f7df476dfa483700e SHA512 8ff3f3882aefd9f856bbee20ca63f6341f2a0ed9b7235030ea9c63b3579a6e1125214aa2f9aa36b639b2a87a67326c2f12184ec9f09e78f954ea8e7a26aa49b7
DIST firefox-125.0.3-zh-TW.xpi 647651 BLAKE2B c05d06c30de86670e0baeacf2127cc53cbc8239860d01156f347d1bf7c9fb05aa568c4ac369df87a08fbad29fd2adc632a9ab6bd60fed8b55a64227646bc5a62 SHA512 44990a7f63b54e931b6d001dce27a31b3995ccf94fcbb7322f3e0f7ea806a5dc1b76a206066893d7e56616a2dd142ea0f81f0b4ba8b14286a0dba8d9ba4a22fc
DIST firefox-125.0.3.source.tar.xz 551590872 BLAKE2B a8379eda733981158248134183a11c7fa4a2de7952a43b861e653a0d7c48743442c26312419ad85be2a5e8f242d23dda03ea1aa5041916a3e44d06926a8c1342 SHA512 18e705a3093290311ccb5f27f01e43fe243ece94c1769a9ccc4fa53d370e32a1ec6a107cdeb531e9468b9aca1a1fe668161adb7acc1ec65fd383837882c7d484
-EBUILD firefox-115.10.0.ebuild 40275 BLAKE2B 5940443d1e3997dd2978a5aa1933c2da0a275abd2e24d554e51acf7e43444f3d4aae4f18d9d020e6756bb2a4f67d09181a77ebd005ff0ded320c72533e2c03e8 SHA512 dc9f153eec73f937e8e2dc309eb468788aaaa0060d08fc269365e526dd5663cf9b5e23548687f5f1a61a49b2e205b425d7add91bed8cb58ecdb72831f0b96f10
-EBUILD firefox-115.9.0.ebuild 40131 BLAKE2B 075005b8f056a3220b0e25860e87698e377388471f90e156dff30fa0c554d48317ec5b0784f9058cf8e6e109ad290eea7db4bc2ee0df63d6b0d17a493f6fa7b1 SHA512 cda2b831f8738e2fc67894ac22e913cbda202d1e72f204655fcd7169b12cb1a7aa7c10a1b24ca61328ea4bdf0427a8b76a497d1be3d3fee77539caf4e2b573a3
-EBUILD firefox-115.9.1.ebuild 40019 BLAKE2B 575bc61867dca8459f3eef56dc9cd42f74e85d16ac519e13a02f008183bbc462c2aaf72003454ac1e5e7303d4721a422333a1f465c5bedc1f4c3f83b5f447eb6 SHA512 4c5dc8c49d1e9e6eec7f330e20c9e67dbdffb337637b96a520c39cde22219369d8abae5ba498cb693835d8e333182b12802313dd896d131758e2a83b0abb5915
-EBUILD firefox-125.0.2.ebuild 42764 BLAKE2B 22233ae63066f20346437ba3c85e8cf0bd7b9671571bb0437ea2eb050c897da8da0597174a242ca345232a33bd0f92408b0c46c0406736ab7f0244b5ad3de864 SHA512 65757d8558135faffb414afc134da122541716ca872a3e41304e42e0faba12051e5fbfa6b00b8b5e66561379121b769e962de89bc7ddd19f7116d8efb1ec04b1
-EBUILD firefox-125.0.3.ebuild 42664 BLAKE2B ba926bba6f1d7df5fac9e07645843f1365c0c77d7afb26725f4460382894f9c5b8cc554cffbc7597df85393a0103af35f14eba168370d10c67b3bd9922c1f971 SHA512 b4182df92a624b6e9fb4a841f77a75a472c255504ff590297611f7149e9b33babfca7026f7f939983fe043edc2fa8ab5fc806644bd76b0bc967f80d438409891
+DIST firefox-126-patches-01.tar.xz 17024 BLAKE2B f6524bb2a1118d4015947f63af10c5c4a0a729fe51ae3744c912e523b813597476f0e8b38558de8bee8d7b68b2f2589bf3f260cf0f97b2a85f3fa9e683ccd6ed SHA512 51162ef122f7751340eb20e68cc3bed4a348499618c51e498a605ab08105a132e44d4e4bf01ea08eac7c57d90963bc0572ed709bdec6fa77cd9f28587b808755
+DIST firefox-126.0-ach.xpi 461750 BLAKE2B bd22a8b4dae2dda16e2505c911231b85e03d7de46875dc0ae0f8a1ade3dc415e26bb5424b7c300d8c6964a4326b6837bda7646828a2943a5405c121a7ace677e SHA512 761fe4dadebc6dc9b01cc66f1e60f2ad67edb9d8581056758ff5ffd213d74bcce198cdb32c9ddad2b0fb7e2653b67e91f0a61514b4e1a78983136f68c94edfe1
+DIST firefox-126.0-af.xpi 415209 BLAKE2B 4478650e633786f05d03ace7b22a339d64210cab324754ccc48a9f416b788f2f7dbd43da43d856bcf08e65f2f6f12c09c48f67a0aaf7c5f5e83e9c7703a36bf8 SHA512 3d2c0893c227d67a7cae4f2d27b0ed5d93f440175e21fed5b26f00500b34be1764a8ab00c12bccfd8296e966bfa38cc82e492721d768dad61dbc356f81942aff
+DIST firefox-126.0-an.xpi 503683 BLAKE2B 30b353afb4658db21daedf2ad24acc6aad4715caf16aa63e89ab95df0e5558df9c66f5f6ac1522456dcf3c75b4fe7c023a1f06895055a9d5fc69f6d6e97b34e0 SHA512 53da2bd4337106d12f06911a22e29be794f9564dfe100b281a240fefc17ba6dd9889ad53471a811faac5558ac4399f7c46117087d6071672c0840108ec9a9e1d
+DIST firefox-126.0-ar.xpi 607799 BLAKE2B 6389c0c3b95ec64e6db135efa7888f0798f99301d4c5f0e7b8d8617bf9070570eb138a9ed1a637b835735b629a0cfc8ae41a0a100586e0e8cf8f20baeb360146 SHA512 60fdd2ac023b434c9f5d6b83e0b65dd2c85347754e7c9a6659f9c6fe595785c1adda55139524e503b592760884294fbd4c66fc137e3ecee2c906c1c0532a14f9
+DIST firefox-126.0-ast.xpi 493866 BLAKE2B 22fbbddaaae134cd1119dea6e687f4db1061265caad8121f70181b2630549fb874bd130a39c7c99734e99c162c0ac9f980b3c0ce3e8407f040ee5bb20dde3232 SHA512 ce6c67c6b9ba8f0394904a185987203e51b10bda84ec9d171bc9b915c879001e6d938d2aa00dad3f412faf18e45314096df482e6260b3b88ef6ce5a3ab52e272
+DIST firefox-126.0-az.xpi 488425 BLAKE2B 6d60b5fa9714bd1f8475febef4ff5806e09cb41c99aef3c81b1d20c58b4ff460244524ff22b7742240ca45025589d9f6270e5a59106bf328b55d89c7f85f5335 SHA512 b1e9a94c3d273412aa496f4d6ab73a98c4c94897c8214d7cd95beaaf0819ca550f9f0fe275e3fd55ea2758e65bd8dc0198a855dc5b349f603ca6f1f8dcf91e71
+DIST firefox-126.0-be.xpi 707136 BLAKE2B 17c6d550e5be93bfe1bb95922b8f853c11555bea0e408994236b50a8833a4c12bcc18f6709e41131a9b4de9dee18085a89709964e246e8bb15f70eb4264577c0 SHA512 6723aee7141aa3c4bb412830d1d7a366a82696181cdcec69984d20d8e81e423835fe4d565d518c43ebc91313a2a9cb13c0c9c6774eda200e283efdb238b3304a
+DIST firefox-126.0-bg.xpi 601469 BLAKE2B 945d95ee472a99a48e7f84208a1494fac3cfc64e527ec059991daa354c6100d29fba93a422b9921aaa51e0d272def1a59aafa890492a6cbc210ab66dac746b74 SHA512 0534934c0b1e9255aed72232ef634db472f371be56506d71507974bf00452e82d7981966a474fd94ddcad550aba866cf0a6d7774ffd6ee19ac9ffe80cfb941ed
+DIST firefox-126.0-bn.xpi 579176 BLAKE2B 25ef761e595605c1fff45dcd45f2889e555db8f631b828584bfe7b9acbf762ca80596b70106da4073de73ab6823ad0b1b0e6203b426d4b7dabde0b6862fcc66f SHA512 e78f79059a826d0db85a1d7eda367b9a3830cebafc0eb78ee28daa4d6318a1bce5d1b1d6cab274feb7267cd878d34fab5c12603b8b804f65c247413fbfd06e34
+DIST firefox-126.0-br.xpi 585149 BLAKE2B 591542aaeab4049b24defad07acb696e96c6e0c571edf6d3a9543e504964d73e8a0c399ff2bc3d9e5f44a76b2391f720be7d2b94eb180a512f25722fdb4a0d9e SHA512 3597d841b557ae1e11578e788d56638d3e241b680c4b0260646e43e6109d909e73445b128b954980648c92bd1e3c081250957c033ce3471be34ac5a9584274e0
+DIST firefox-126.0-bs.xpi 499182 BLAKE2B 569e7607b33e2ac0d69536f382f9ae551ea7290b60122b0b6ad8d1ee55218576d84b235282dba0019f35ea7eeaec3ae6cecfb56fcb966b1248a670f10d460909 SHA512 02fb23b5c06ae784ef7e45449ff9214bb0931782a4aa6974dba49caa1139faf1ff0d1c257e99fd3062471cd1feca0811bcbb397d30331dd9297063c8fc9c41da
+DIST firefox-126.0-ca-valencia.xpi 543850 BLAKE2B 928c68b51701cebd91ad4cf1a9fc3430680e1191362f0bebfe9f11211988fb0d35a754fc2f396da3bce0f68efa67223bf0bd1a326156814e15896fd6a07fe0f8 SHA512 cdcb1b9bd464526aa83ea029fe34d3f25454edd6246993b15c6126ea54d8dd06175416e6a5568cd848ef8b6271aa6c0a3c689f3d92a73fc50adacf4c402aca36
+DIST firefox-126.0-ca.xpi 582652 BLAKE2B 4abe56254451bd86b24edaa3a85e7489c1934cabee27990da5b9b2f230efc058b3920512a03171373a924e241eca2c68c7a52a2aa99cfe07865f2ee27bda3e43 SHA512 3656856429fdfffbf82656a8bb953ecb40b482177be6d8fb333ba64eb40991fb52707bf56c3b4390a29bc6591e8c45e6fe7897bf5bc8a43d5c7cc3cc92517ff3
+DIST firefox-126.0-cak.xpi 590417 BLAKE2B c25dd0bcc040e0530370882741d823ee2ee1271f85d801c37a4a57fb6775142d01ad821efa56c6902bbc9facbbf4d5b3bd1eaad29c4ce1dda1400a48e2e668a2 SHA512 b956f430e5028a55c92cc61213a06eb3b39f2f858eb9e62edaf4e004c5221913c9d6052d3a7a4565bfb66eb2b4d37a44c1a2aaf22075068d4b75c9fb0e12ba56
+DIST firefox-126.0-cs.xpi 651840 BLAKE2B 23ff80f9af2adc5d3735541645cb068c763e5125397e11b26a8293e510a1610377daf8b75986f7b6fab550b57a0bac9412808a6fe43d3ac2a84d7ddb92d7799b SHA512 a563605af527e426a3eca184489423ef5c2eb7ab96091f73bc267fa2ef3641aea684d635793d9822004bf52858c1737308b231b16971d2b9976acc60375b2a56
+DIST firefox-126.0-cy.xpi 617234 BLAKE2B a73f5fe211f0cd7714eb52423b1eed9f5fd95ff92061bcefc88fc87299a660ab6a696d1f11b03f352a22ca10f34c1f3d04ea4f96b373a3278971d595faf437a5 SHA512 c8a2e715f066df83554d49455d51eb3bf69841c6bdc23aa192c98f827ee2ef3889eff9f1695f2c383d0fc764bee6f7eb3d9f3e60aba4f3969f985944699eec39
+DIST firefox-126.0-da.xpi 605577 BLAKE2B 63abd04d0d8d8a8234ba82055be4aa6f1de427950e1b7f695025646d133659c21d6b09527fbac53d58a5f61399ff73b57639b5e5d566f64494f642ff6ae3859e SHA512 2ffbca8bbab6ae00f8bb3eeb9614ab13af3ec4babab431f6c6b7c43a8823076412762d7cd38d76451d140ca52ad8af2a9d0c032be93f75caea1fcdfa1b107009
+DIST firefox-126.0-de.xpi 626799 BLAKE2B 5a53bfb6ece48a4814dbc87a90ba328c80eb0109aa7c43c5d050fcb643f3dd7f6bf4db8c5d262c14bc63366414b7bce4926b9f74773708500c34dab0b6e3b691 SHA512 c29e188c69a4e4fa82dccb8615cff93c607802a322afa0f0075ceb51ebcd0df5b0a291ac0b0bd6b33a936b86eccc1bb07763670039ae9dfe9a92b21ecece2a08
+DIST firefox-126.0-dsb.xpi 643331 BLAKE2B f484a53f93c5be8d6ddffb74becd00e56474dde161bc169238efb1938c1b4c4566e85afc390fe5ae3fa9f0549ba397c825d48d4ec4f021d02f2789e26727041a SHA512 bc3431129170f1b9f5e33bcfcba61d6d630f6ce8a20f8b58b5c95a3ea4f5b8db81290307bd3f3294e33398b97bd38a30d957846944504a38a62467c87c5fd5ce
+DIST firefox-126.0-el.xpi 724050 BLAKE2B 331b82f325c94ab839c5aad221ae9d2b511245045db65b045ff5269d91d8aa04b543279222e8febd3747c6766faa145a56571a6a33af2f69351acd8b487c7949 SHA512 ceffdfcdfbf0ae8fd1df2ff44259dc849bdbccc4e45929382024431c40733f4f78aff444119174fbdd4a426771e98ad897ad967cd9463b742eb7dd395807a5c2
+DIST firefox-126.0-en-CA.xpi 577921 BLAKE2B c6c8fb1dad71699ce36d7e486ab7d138b8fc792841d8fa766d411d426098c728830fa4b1141391ad3e8fe3cefad8769e2d8a71916c20990413b9ca721a5cbf64 SHA512 e55ed3aff1877e0a7c2bc5294394180ad26d449f8e8930d75f06ceea00b0adeb4a334ff5d5fc49ab30bacda4b14abb22fda8da32745dd24e9a191fc8a430604e
+DIST firefox-126.0-en-GB.xpi 578505 BLAKE2B 9ebcaac750876d16b7086e45699b9fe4af0fa303c223cca3ee44922542818363bb6ca2f36f235e10eb2dee35cf2932b2be25bc7a984e81a572ede6cdeff3eb6b SHA512 a66c1a3fd9db5c4ef59efda0cccbf34ee158f515535e7c781ded323f5157984721c3f4e616e4387a67b45ae45f3838370a97cc838adbe5e8b7207c81ff01b542
+DIST firefox-126.0-eo.xpi 608851 BLAKE2B 48723e34ef47b73470f3ec926563edc24b2692a0507fe3cf30b53e4091b45a5457b60afd213ad0a1a8c7a71d4e487335fc8f6359d08fc6d598fdf2d83f558940 SHA512 ac0b88df025fcc74a3048b685a4fdc1c3087def4f0911de3f66e91795f59d9236739a7a8e026fcadd8e88c4f830201bc83d6b91dd39ffee27f390a40bb4133d8
+DIST firefox-126.0-es-AR.xpi 620748 BLAKE2B 8690fc233a3237b47b298a0713211eec748e6e507af600f257b6e3a3173c984103c5b09dbe78b82e5b60c2993b273a27b097e1ceccb8e0a19970ae9c9bda3f46 SHA512 6cee5873d8db44ef9081c2a9d422e73f2dcd3b4d3c8c7019f99fbaa36aa1325611826fcdf530ee194d404cff6c28fae2aab2188322e9bceb314b549c907244fc
+DIST firefox-126.0-es-CL.xpi 619954 BLAKE2B 1471d73857a716b1a96e4128f243c565503a6276bfcd39fa302ad0a0984af90e69267d39c8f369edea68050c935af44db753b89c7dee459c1bbca655d2af2652 SHA512 8fbf7f7c5a634e2aa30266876fc707b03b471ca24270fa042a7da2ff76bc7353329ba1c0367cf25e2283d1a2347b6b851f40c0b48065111fcc9dabe188c4075d
+DIST firefox-126.0-es-ES.xpi 614786 BLAKE2B 7e8824b5141314a46cc9027b1b352ce63e0013c663e70b055b29c3a404e673b6867e2ab3d388a08fde741185f94312fdec875123ebc5df8c83288346c586f25d SHA512 d97587a4a6c68e7404724850db666accdf85ca7c83bebfb5cbdba389e4854979815c5ad7454351025f44f0a88a8143889be8a65b0897f60cc4297b9434aec20d
+DIST firefox-126.0-es-MX.xpi 589049 BLAKE2B 52c44347d8969293ede309d6630503bb0124f00f9caab35c673e2d08c3bb6db6ecd25503b2660989289ad111ea8efdd7fd4c6b4fdb3ea3892cd3549306d0578d SHA512 c43bc8ebae91fbc98139e3d9a97514bd4ab01cc762fbb96cb0990863026359b08fd2272056cb676018c9613ebbe1a914d542f632c4e8f51dbf7f33a40bed4f4e
+DIST firefox-126.0-et.xpi 537126 BLAKE2B dbf0026c25141e7641e99989d58f1e9a71ee4956f9b7516c602dfb27fb131a311aaac09bb9a1d4528978975083efe50e50220bb0037a943825c42e75d539e423 SHA512 0c3a524bea738eaf86c629c25fbad50edaabf33c0d1da1b90a1e1277d3377925af4033bdfd1aa78d2b88b9e48f135f10c88b2af69bafdafacebd1133097837a3
+DIST firefox-126.0-eu.xpi 591935 BLAKE2B df4f7829cc918234d9600e7f13380857d39d5e8244721696174a7741f591eb3df917bbf3486c2c2f22452ea222693145b98787a4c5e041e15d6bf680a50ddc85 SHA512 242ec6f089f7767112ab7c0c941dd1feda87989883ea07f521c963e2590d8006c47568493404601cc6bd40249376b3c169575876e36b2a85caa23d1832641890
+DIST firefox-126.0-fa.xpi 587674 BLAKE2B 921dc0ea5ae668207d6840158fd3ae201d4f88a1a4f54564fe1c23f0970da3152d6786a186af456e5872c3436171d5e01cb2e104fb45372d2b4200b96542c8b5 SHA512 120a8ac585e66c29b2129a9b9b6d79ab0943cbdf76e400c52cc5b292efd4290184422190add559aab91427540e44caee3b409520bc4d2de0f05bfabc8fd7f2bd
+DIST firefox-126.0-ff.xpi 473884 BLAKE2B 0225c243cccba5342736c275ed040b0aa0bbcfde5625f87aa4b9f2c16716fc9c373aea04a27a819df12ef1d2fb4df4abbcf43052bb486d600f53919df024615b SHA512 fc2a53fc9d6f8e14a84cf7bdc0246b5c017b6fad75205d2e726cfc9a91c12746872eb80ff0a65b586eff20051f03775c887916921ebfeb60f5026df11f0cc3c4
+DIST firefox-126.0-fi.xpi 600578 BLAKE2B 43febfe158a1b4a53eb541521d428908a76e9c75121facc9eb83bc13e2b95cb760d78054fefc0afa7c2a0d18a81405cb361011123f17abb1b8384eee81c53550 SHA512 17ef99ad044a17a1c0988ee24faee5b6e5d04f90433233765a566689200e5c661dcd631b73d1da486f83a0e70845a00977a1521da5a1f5c07776ebc4a7ac8242
+DIST firefox-126.0-fr.xpi 633635 BLAKE2B 406ccde040aecf76813d278b0fbf0553b273657e620f7a55dc1ae15d6b605fa4831312c9e9899f86e4fae6ea593a4c83cf3e1268b7de721a5afe1eba6daeda07 SHA512 bf01fc4d4465ec9eddd7ca8126da638e59c2fa42ccae606a21ac8cb6c31b0393065787f0463037ee9bd90390446492cc693a0dfb9e1b276c51ffb50a6d58553a
+DIST firefox-126.0-fur.xpi 626260 BLAKE2B 626a040b7646e3bff76c9d61dd2767f14be9817fb7c4652d062b9063d6238fe6cbe89ca949d3e48b1f0dcfc88fc39c0f90c2fffdadd79fed9208f3e6522f66f1 SHA512 dc7a9ed0f130bf34a706236a0236bb5d0113e36c2b0ac2ee64f4f9cd7526c720a0dc6e2f5a5646aec075c62f133c47bc62a3aa150ac2077fc1a123090db56917
+DIST firefox-126.0-fy-NL.xpi 616367 BLAKE2B 3cd9aa88b08e3242e44f18e33b27d341436fda7499c6d2ae00637c057a5750617100b783209272507ff7d98649a2489c9bd6d5dc85aed7d266e7c49b8216c534 SHA512 788cabb75abcb9ebd3edcc6fc459c0d0e72e487e6e02b0e0f2d884c1d135a2c7c1e01afc885b1b6ccd92a283eae77f3d8b9b9dbeee48634335dae82f7cb5103e
+DIST firefox-126.0-ga-IE.xpi 468665 BLAKE2B 0a781048a857ce32b470f638562fe9fdbd54d136177cf030b57cd6be06e843cf8f35ff68741e90f3dd8ce7c68816a1655f5780dc79767dba4918cc2d176c0f0d SHA512 b012e2f30f5af9bf7003ae720aaaf44d72c9bad962f4223e3cac321be59a081f8feb59c00bb1d2d26315c9d598178fa9c7ffb204c52641311cc67329ca841f78
+DIST firefox-126.0-gd.xpi 594218 BLAKE2B b1350b5da4b5b0b98e1fb7ba45669a98eac15fd60f2043d6b6e6d4160c952fb77381fff41bc1d7bda20fd55be2919ac7c7526ccf9e911b7d348549d283b272de SHA512 cc5e6d4398f1bac41d360344aac2cf4017314a6505ce700bdd29eba574ea5d5d841a8dc64e5ad95b28a43e8fb980f59eb3cdc4afec437230593f56638b15b2bc
+DIST firefox-126.0-gl.xpi 601690 BLAKE2B 9e8940a765618b10e5260fb97a485d34c7539650df31de3c11b7bbbb62d7da5757c2bac77cc3703e5f9345d301110ef79d23c553a8a90171d38fa1f431a8a737 SHA512 2610e7ee174fdec4660fe786bfd74324afbce8c21f3cc47ad0cb8638726217f9a867a591d2b8ed8c98fdd3b48ac93ad8989efcca47163b3aa72b64aa6c423443
+DIST firefox-126.0-gn.xpi 631848 BLAKE2B 008b7593d2bb1283ef3eb9a5c3b652356a9a1628993f4ee94f64289b4e119a9b9b1c3d524931406a0968f99fa836308bb6c0ae494953c53297ec6aeb585ccf77 SHA512 5a110718f0403e37cd5288552742fefde3921438a4ca40487593526fbb3bc8d46409e1c295426d71b5d4c81e7184f4996f8833898d96a10b57d0a3a0475b3e1f
+DIST firefox-126.0-gu-IN.xpi 524987 BLAKE2B 5c3c2869087302f59e547fd8362f79381ffdac2dc0453f00db5ebbef8941fde05ad326ead4ef647acfa51730b4c457a557a49f88a2d8b94be2b228afd091c9ec SHA512 52d4fef17d6c43069ea3f9a90173604d239a6a3f424a005c6f71b9e9b5d95411c40289e0b35d4340a445ea43dd6e2b393540161a8fbb1e2ad442370bf9a41a80
+DIST firefox-126.0-he.xpi 625264 BLAKE2B 2514250747fdb2d06b5114f016edfb9ef8258cd0c75e3829b6c34b01759f11ac30bdd2e5a1fb93806548ac9c312a6b2c2b7b4031ba62f4afacf199c88f771ede SHA512 0642ec8eedc3c65d8b42bf2a9b310e0f65124e12f0e0d101e0a6caa344f62353f87168f446e64adc206dce3c8919c564d18db836675e8b9bcb2e87e3919cf987
+DIST firefox-126.0-hi-IN.xpi 563178 BLAKE2B a0cb38b27f82939218af2a13214983fdc942b079b7ad453ac2ddf43d03827b1ef316b38551d621834cba09a6f4e37437f2fef6a56803d80dcd6aa90ddd212d52 SHA512 7a95d3c236e7fdb1da9a0685482dcf09026af3ae903dedea06881624b972d2ff0c462dae4750a72c5eee60fb02923e4813120fb566325b8f1aacd546876cef9b
+DIST firefox-126.0-hr.xpi 554418 BLAKE2B 5c278296e5dd2c55dad50576d1cb67da51141f3c618e39cedc870d964146e55d3f923107f591857beb034a539a9ceeea07d11b0363340800b10d301db3149828 SHA512 57baeda10dc46d2d6d5375a3bfc4f2ebb46cdc33a69dc4bb7ff6e72527edd94da627f655858e7e5e47c38b7596fbb43f7d7eda0dbb161e46eb91f94403f7ae9e
+DIST firefox-126.0-hsb.xpi 639345 BLAKE2B f2d5f8f10176633d1133a724212050318450da7cf9f68c6c8e2097f6be58360ee657b7008eafb5dfffbfc87f2480765510cc6cc135e122158bea0ad2c9b317e5 SHA512 cdf274a7d898c8595ce69f35fd7ae3583fec3afa4a1a70c57c0b02ee95a3f81f0fd8b43e72c7bf92c66b2286c3fef3b88e0c3fb921a2ab2e163e47502c547c64
+DIST firefox-126.0-hu.xpi 642408 BLAKE2B f3f772d68436f24c9528722ae2a2fa91f2ac1611d1e487defe92eb07aa06c73ac3eebfc0455da7ef06969d362d3dcfc4da2bb5d52fd1012bccf3f1c0198de2fe SHA512 5dfed7b5fbeecaaf19ff732a39ff2f768b5f5e8386eeaf2a1640ab2494d05e3901db3781d5817a4955eeb2c70f498874a52b72d83bc64496cf950d10c9ddc1e9
+DIST firefox-126.0-hy-AM.xpi 646981 BLAKE2B 49ff92fcf12274303fbe1734092349e78a74a3cfe5a83babbfd19922171656a90049778f0bc647bcdfc7995e84ee1bcc73ebdfc401763f338fee4bfc1f6651c7 SHA512 23b8d9ebbdc3419a047532b5cf96eb96eac97c0fe3ed48ec9914e8e46d345a383a177873e263a3dc8feb5065a41075a654d7abcf1887afe880ed5bb67e1e9559
+DIST firefox-126.0-ia.xpi 604002 BLAKE2B 3ede285d695396a8a0bff9cd7f87c2557d18bb65000582c0e2cc03070e5c23082924229ed20bf7bc5b414b1a935e87707c32f0f42b4196ced25e98d5a7c367c5 SHA512 700404a5d6dfc9c26479e7ecc6f1ed7848634f5abeb8e86afc488748a43cc95d64c748e29933bb15e09a9f08403011ce5de66c23a2a22550c60a45bca990dc24
+DIST firefox-126.0-id.xpi 571939 BLAKE2B d70e176b541deeb903ab43b213277a859c1181a708041f5ae2a8d98904658349e09496a777e099bed3dbf5f62051ab7145032b2da0f15191e192abd129b03eae SHA512 481bf22ded3744402dde326bc812811d7021b23c54a8c6dac42b2a86b0b3ce00d5a173d7fc3c9a51b226441382efb425df4d855acd89ef842c64bf0fcf8178a4
+DIST firefox-126.0-is.xpi 610470 BLAKE2B f9e51a64cdf6444f0d8fc8c658e4b607ef540b589ec5e4bd32b2f41fbe7ea5dafb669a97ea9e712f56f1a32a7c12c02cf69dac86889f57186c7c30a8a1d3a392 SHA512 96672c91cfa0fbce998362d2dd1d91297aebe3658d4d2b57c5419f2fd64dd8579d0cfd18b2eab441ea29f55e92ecb7d3b71ececa6cd356903291e21d78d56e1d
+DIST firefox-126.0-it.xpi 560880 BLAKE2B 35b94a2c7eefc6da70835f3a7a4b9e32bffc74c33440bc0bea40b1a4e23f525d0633180b7e5eee1a223ef03302d165b5801da5ac84184e3741c4ad766443a51b SHA512 1fbf143d9937a3750e27be8409f640bfbdd2a3eb3d5b354cf205d59c70c7399fd89f21114bbb2ba8445692081013978abe9194b74d3da6f0b1538e6f18789417
+DIST firefox-126.0-ja.xpi 671973 BLAKE2B c5997088887d83786ec730fedaa380ce15e8ac90285ef9d41ab2bbb243bc3caa2e11d9f7a5f643fd2a2e0ebb87606848ab6d45c41b373a5eb574123382343d71 SHA512 72e0ebf8137a2152aa622a130351b169bf87ba289ce9b518b4abde6ca4032a742b4cd903789e1a09c52bb0b6d3c24f0d4ee79b52889a7f4cba1940930314bbe7
+DIST firefox-126.0-ka.xpi 658279 BLAKE2B 4a6bcb3982a581e215274b2662fdb79e9bc38d4fefff0c5f500047dce02ee41b9faa5c7a34eb1194508de8789d02552c245562a3ae222ae44d9f00db27fb05f0 SHA512 8bd0024e1e07c2333b7cab35bb623393dba62dd1cb2a2e9c61232dcabb3c65880cca3c2c044c93c8c2a7ef6cdb1fd76fbdb5026d6f157d8ba0eed3b83b19c9c9
+DIST firefox-126.0-kab.xpi 601303 BLAKE2B 13a62ad6f2d876d27176eb9f10e846f5773e0f95f093010d5a084236302d15e302cfc2e5ec089373ef7d432de92d1204e0ebdeb23d9f665f401d0969952a5098 SHA512 4db72525e5cf94b9933c4666d0f457d23401ccdbd230e99323aa254dbd503280bcc26d1db916a9dfa60d11b0709b86a5ad7257d56b07d246d55ed5a0bdc2bc3a
+DIST firefox-126.0-kk.xpi 699766 BLAKE2B 4e3735c3e0eab0863e506ae5dc9b02209b1d1308937d4414ffca1d2f40853d5e1e5d29976a8e251887cc6ebc80caac901324c3cab3fa56ae47b1641b63468218 SHA512 dbbc3e37ac7688d44c5f8e2fd38140813d97f7f1d0f66315e5a9469d5df0bd0974f4496e47cd2e21d13d97e869a4d99e6dd73fe9996815153a7ece0b077d9868
+DIST firefox-126.0-km.xpi 523437 BLAKE2B 9ed18034ab065e29b162e71dceab14cbcb05f1ba891c6708d8c3abeeb3357153a58d960b91767e4c99e760c8f499af6cb56f3a1b6e6aa3c4d3803eb85df9c279 SHA512 ec16d3ecb6d191437d4515b75371193b672f036b69112e26fb2bff441347cbc2864be77d198e9c2543f008282c866091970ed4e4942ce21f2779704a50cd0e2f
+DIST firefox-126.0-kn.xpi 488921 BLAKE2B e09a55f574cb48e753f70b3b3f710dfbb54e303aea3b2cb353ce1473719878adc2fac13e51b1bb7da9425337db4291d4c3bb51322a159189db0c3d92f3493201 SHA512 e2f2ec0d5e943a9d78883711887b1773ac09e94efa59e3ad2dcaab865879df40befe97a3c08514a128a3898d7105f09dba72b47dd03f501557f7a4c8f70ab244
+DIST firefox-126.0-ko.xpi 653970 BLAKE2B f0b14bc27bfa0866c90b569f33251fef842d6b2d858c13f0d47187fbd5b2d11eef9774974fe040b15aef2bab94dd42457c7152f49d55dfd2167000050cdc4665 SHA512 54c12180dd46867dcaa4fbbff81a607efcd705a8ce031d6d7e31c3fe2511809b1b8f46be8bbb3b3516f8915ca5e744eb353124fb3ca275ee7f0680c21eb7ac30
+DIST firefox-126.0-lij.xpi 481804 BLAKE2B 8047fc09200055f2cf3d0a0580ea4b54b44c0b189633a4575769619bd8d9e0fb1420fbdbf0f03923d9f7ed59e033bb092d80deb69285cd16322a2833a2781567 SHA512 f43be6fd60d8ab7a96d35d8de449c0d304112333f02ecfe431a39ce3470a4629d69b852c6118036e0f19585ddc0c1f4d8bff1bc4eb23f42ed7c1a9e241af23dc
+DIST firefox-126.0-lt.xpi 570284 BLAKE2B e545f68c1eab7f3f92501252353d1158e6070dea5dbe8a575377dbd8c1cb4757ce0e8103965ce48e34ee0ad5dd7d0b8fb10b71fb75f5a78bcbbebfc4eebf4666 SHA512 39a99b1bebf32fca5278f337083b861b136c1e3fbc4b2c7ab233ffecd75158fc18af66140b618e0536eb29919458eb724a2d03bfd3718fd730ac9d07f9723322
+DIST firefox-126.0-lv.xpi 571452 BLAKE2B 2dec5af89ef2efd811316db55b3fdd92f46cd85ea1946e4f12cb9e004c355c65e3c7887050e2e9697ce7d91abbde5f03c9385f27cdf0b9f55b57d110f12d2361 SHA512 4348314e2bc653657e50beb8493ae8ea46711b44a3cc1f974c45d63c07de8613d3c6da20da6dcd854aa35e1f17b674b6c5f22cdbee4a100bc3714d4700922347
+DIST firefox-126.0-mk.xpi 490941 BLAKE2B 83199e60b575bb6b3a7201028d98e29675056f3df6d0cc14743694c6bac971c15980d30467da6eabd5f5c4a22f0053008c4ad07198312eaf5fdcabf8e02315f2 SHA512 7b482fa050734a907350d1c9fc6345c0f674d780b22f2a7028f1336306df4f1c6728bbddcf44ab7323dc8da0ab22ad1bf82ace0a86cc4339c1f5c20f5f3e1757
+DIST firefox-126.0-mr.xpi 529766 BLAKE2B 033e10a85bb6da2825ba692caed8965b143b06480e5cff0c17a414a72443bafa603c8405b467ae7c858510cb7d4877bb7dd9fa7f165756fbc699feaa57e4ccf8 SHA512 8d5bd24a60da35a9d2ddd59927a33b59a1146e3d9857128c90a902fae770ea15bd689e4e70bbc28b9ba05bf1552ef967b9d142e98bc4590936c5cf6fc3212716
+DIST firefox-126.0-ms.xpi 447421 BLAKE2B d060dd416dec9c54b9ce353888f2149ca657f9bef44b01d0800017df5eaf4a33a77748f4b27853c60512a3ebaca7988b701993583fab5026f2c326de1e82cf6d SHA512 fc946a56f9b5d5581f13f4fb24af6c9ada0b920c65f7e6c9f2582426c64c2ea4f6aaea0f85ad4791d83f73edca7667989d22459f62017203f63bc373ca1550f1
+DIST firefox-126.0-my.xpi 516436 BLAKE2B 28a0eb7f7ca64176f6b34cf8b648160149b5269d2c6c6df38fd793ee87c8e64cc78ea449f6099acb5231925bd935e10ccecc7aca008d6ccf299c19b3efbc87b5 SHA512 fcecbcbd9db0204ec2b8208a60ecb17761754359fa8e83d7debc5368896903e0acfdf2298da4383dc92f37a19eb323441ee22cab1fdb361698c6347ac8974a7f
+DIST firefox-126.0-nb-NO.xpi 599722 BLAKE2B 9dcadc18bf7eb12212fd308dd598ce5288914f89f2c1d71c04c8c8e7ad9a69433705478133eb2c0ad85de4221b101a69eedfa2d8ea01832ee4301abe4f1956b9 SHA512 1442de4367f3265a4dc91563fded02d06c58b74804fc5543f7e4452d199b42805ca4616451a9cc1cc9611cabcda482b10e12968fc60ac75a219a1bad7bc4d10f
+DIST firefox-126.0-ne-NP.xpi 498214 BLAKE2B 67cfb14e0dfa89b7a2032da957fcef3bdbe6eb2c968aa85a07f3252a909c444c088e1de3aae35b6405f3f048ee4e29984c9b2d480e1c58a1352030edef06ccfc SHA512 ce29ad779c4cafc2c5806db74fc5c3cd2c3739a50197a51c8b801352b3fca254eb88ffb5d9e2b97e0947116a25c6eac676eabc99f86dbd416a623f1ba1197e42
+DIST firefox-126.0-nl.xpi 610133 BLAKE2B b1f777285ddef7f502655f37419e33d512a7a8a7c806fbd1efcf387a49343a22a5abb56c02c171e277b32367921993259352945fe475428cba04cba2af06e596 SHA512 53f54d6e9a72090305153caf340ca355c0ea8138bd98979a8b5dae977efa64abf59beb1bc6c2dc9887673f25dbd17a7b6cb0fb08cd3d9fa70b8f2f0a0518adcb
+DIST firefox-126.0-nn-NO.xpi 593757 BLAKE2B b5aea80a5247ef51c95ea60a944f74895d30965017ed3e3132b8eeaf1bdf1b86189aa202f70357cb143e60639279cdfff8f971b2f49927d4ae0207662108423d SHA512 8b16851a1999d7948f9469ce798d8860e2e8e5114f5e82ea3d8042dfdaf326fc4fa6a1ba281c9c2709537d3792e26871e4e7a3030a93df13d1d9510d4cf77c14
+DIST firefox-126.0-oc.xpi 608227 BLAKE2B 9ea863851456ba54024a2c1af81b04763392067c42672b1b7c09370a3260ffde4301d55e32ef3799138d98d05f3623049b74e0587263981c7f1464f06061730c SHA512 180f19fb359e7bedbcedd1a0ed0b9eeade7cc5c14869f5deda368db980c1ce9cac025138a100218d7eb695a2810f8e391eaf11d9b76f4f94ab8406add174df50
+DIST firefox-126.0-pa-IN.xpi 684085 BLAKE2B 5a688e5a81c7047c6cf376c3eb2f669c0b7ec6f6e37e7a4af2c5e4776db7cc0d2e8d481814c73aff40e51d05070bab27157b40a37ac562cb7624b1f96fbe67a1 SHA512 43ef0fd082975a0a6e56fc5500b2668147308f0368caa38dc704515fcef84fcdb47721d25961a6a7bbde9c94464f18eb86202d8d57d8cef370a5c5773c60b41a
+DIST firefox-126.0-pl.xpi 630478 BLAKE2B aaaf92519ee5c39923f8f7b5f9d15c0e46704180fe05f516cad6dbd655319919a1d9c4f8e3f4e4f3a14bc491a3b645ec4a3051b604bc44001a8dd4d6b544026a SHA512 ba5ef269242a41f8a128097c39b79fba03cd784b8e86b136516e629c6426151ab7090d1d76804700e4db8e65b90996439a0cf67e660b32e12f44d9501e7cea36
+DIST firefox-126.0-pt-BR.xpi 614784 BLAKE2B b6b6f6a98a808660685f3409115ba7c69cf43d25200dd54ef4298e70cc8a404cffdf08ee739e122349e25b96882922c834125215f4a087a80daa76849b9685ae SHA512 e43c4a2141713482e156264b0c2c2414d7f139edfcfdaef34deaa9a4b919288b9c75ca07f72cc5f63b3003960509f03944a29c5428733f98ac01685cf2e362f8
+DIST firefox-126.0-pt-PT.xpi 618386 BLAKE2B 77a124ae5218b9b9eca2fa92dbfdc2949904dc9dfe94c95ac24352e9115d2912f1bf1f353a47a5be98a22e5fe4df92cdc87e22f50d15a756ae16456bf06a52b8 SHA512 9ee99fca78e93559ae8f38ced72cfde02cfcf98092ea7e30a2d2517164c81148dda096864dc038a78a474f9cbb183f3d3b5568e3f273b8b79f1699145ae36bf8
+DIST firefox-126.0-rm.xpi 610724 BLAKE2B fa698f2fc6b0ee64f47296fa3eddbfbf20baaa500c191ce5b5053588e94e2ffa3a586092f85af042177916a708ad6bb5992e99db720ebe7d0a7cc79908e1b7bf SHA512 c043c4b0521878655092a70ddf6b3cf13906a7af27576737dea0d895fa764c17931c19891c2f58faaee843fc61723bb555cb250b99e18b939140c9a3c078598b
+DIST firefox-126.0-ro.xpi 547381 BLAKE2B dbe81339b20ec1d015bcfd72a679e786902d620c3a6f895d64e89d5e302f0b661d4137623b0a96c53faed2ec46566f5c2b345805850155ea00c7638e92649014 SHA512 5974b32c9eaa3c75832b884c7f69349efe95677388a57de83e0c588ea5ffdc0e83ad50639a7c21e761dfae775907b23a647159ac2056f87b2d5e643c3bf3aa42
+DIST firefox-126.0-ru.xpi 711960 BLAKE2B 5f9c62de9ad9a1826fe5ea22db7fd6f957024843f0a19c2b3d6fddf86963bf9691aed56cfbb640dc1ee3c6caa9ffcc0073e082498348f1817bf3f99803e244c5 SHA512 598016b1e95079db095f30aedff710d2deee274108de93fd66400c1e27f65f48d151e23434d122f0b82fc673632bf1a2f20457b96f710c5f60c47b944edf64f3
+DIST firefox-126.0-sc.xpi 576528 BLAKE2B cddf92e7d777f8ed116859c955f4e72a69dd709d44d5bc722ba459de2a0a4fded553306dc83f84072396bbd96dda5be543e95456e186aa08ca8abaeb3c966873 SHA512 1a36f1e90896d96583bb1d6142b2fea5a4b4d22ae631e3f28dd72e372cc28a4e934792dd1ba5b20093bbdcdb660326d7de63507fc92c4a8270285ed14ab3956e
+DIST firefox-126.0-sco.xpi 508846 BLAKE2B f8a013b727c934301bd51127e32cf4b5538fa58fca7eaab688a281408f4ded61e8ea2c6d6c2c2d878b24a5768920362aa658a4dad4488f7cfd1a1c40a27e47b6 SHA512 be610025dfb1fa47a9f7920357e028e690e2a3230ad512fc9da0a8c4975299b6f96d3bf87114a3c78f160adb568cbc725eb70ba26f70a5db8c20a699de834053
+DIST firefox-126.0-si.xpi 603576 BLAKE2B 7e75d472b754227eec27bbdd9b5004c1032a304f645fd6676915921c6364b731134adf52e492b56b64eacb737e6d1ff67f0f0978e846ee336d977de7428650d5 SHA512 da0ccf83da14d37cd2ce4724a46cfb97f602a97b8f599c52d08ff273c485aeb23d9919a51d9625110cc21f099373e15a1851bcedb9854fc79221a2c6f88ff76e
+DIST firefox-126.0-sk.xpi 644825 BLAKE2B 1cecac060137d7632ff918b3483297e1aff728942a36636ed43832940b66111c707624b157309794b4353818921e5da50bf07ff4926d412f731afe3e9eaf2bdb SHA512 a1924dce938f7a943f5dea308af1cb40c6f5f47629cbbbd81f8bc825ceb39fd7145baba76b4e936611d033a1bd01f415ffc957f6c9827dbbf5be07d284651e78
+DIST firefox-126.0-sl.xpi 609033 BLAKE2B 5268820eefdf2a6c707ee767946f66b48f73dca770b0d78624f24a190ea6499fdfe98f547a8efd8d1f9f3a301a3e26a80f121715587a502419fe1727c5b4a14c SHA512 12b303724014855182ebfebf3fe170b7c4531ebd1c5a91d0f726d5104182186b2ef88ecd18d7919fe670fb20770e7ca6d690c35a4ef67308322e557b9e985728
+DIST firefox-126.0-son.xpi 414130 BLAKE2B adbf311c16007bd67f121207496a410efa00dc6c22cf6abc8c7d65a6a665f2719e144a5ca68f366de49d5065c912e68095243fa586c373f76898218a34c2f35e SHA512 66f0de96d6875799745b2f7132d9aedc21cb09755aa8ce9a544b4c4f7c9ae0d6d37a74cf40c6c426f0ac44f460344e52014ca67dbf6c81710b95ead5bf72bb90
+DIST firefox-126.0-sq.xpi 631484 BLAKE2B 02792930f0035796a5ba30e88b106b5dba3b646d064e2765f2b3bc41dba11ec8e3d998c3f7d61241d50e328e4909a86282532b6a760c4c6c3da2410045296fd6 SHA512 7ba44a8a3d57af1df042cef862cfe7ea8f2889781aa4e4153b145f91ebf23a0bd7e3e8c550dd31ea8c887cbad4764c3aa63b07cd0d229dcf05a5105342b21157
+DIST firefox-126.0-sr.xpi 636904 BLAKE2B 3c40b597be9a49e3be8bd2cfdf55247b633c22302169c9cbcf9f4ab2bd959a105d498dcd3b941b88e48859cf5f41262352ff2613945559d2095fa1a8c312f435 SHA512 57ff2ff8585eba71cce8973676a2c8c7360059a3d538f49fc6a095a018eea26a22ab2e53be3e5a5bdd993204bb964724cc107ed1b7dadbd97d3b1559de5fb0d5
+DIST firefox-126.0-sv-SE.xpi 611999 BLAKE2B cd3db50b469ac065b22560a6bf8350a32b8917160708a18079fd9e43e9e557ffec976fc934125638aa011f16a325b4f0f4a780a259830644fe73ba180da08532 SHA512 d9b262ba4d3e6075a47ef71fbe3b85a986324d29100dd8c73ad8364118ae8541fc936d5a696133985030612e91aea9ed91b093bf7a04e7c8dcbeddff888a048c
+DIST firefox-126.0-szl.xpi 524040 BLAKE2B a1df548ab4bd87d9acf77ef2b9134ec3b43503df69fe409ee2b849b40ba614840392c40029984b28d4b5738f8cb9a5f3adbcf77556fd391088e1fe6fc3094740 SHA512 bd3d04959af768d6714c169d406826f8680943b7690809d84008fd3cd59083a1b2db53e1c32f862d278403863a515de5c8d2f8df7843351caf8e4cee4ff9207d
+DIST firefox-126.0-ta.xpi 505214 BLAKE2B 1835d0a7ba357f9f90b586772436416367d4f181eb335c873f54386c9f61d0b8ed7516c9b898b33c36408bf9e0fb09bee8a754dfec79b3182dd63f2271400c28 SHA512 fe4d06a53ca1aacf31390a768f727f086b84f0b4ef95a89781deed53aa8b78bdc73c347d49c318931713bb1add8978c747f3442f63458c87f9730f9568bd1db0
+DIST firefox-126.0-te.xpi 556675 BLAKE2B b5d95671af56c7303d8eb9e2c1761c8e5d12f9f88aab0d44128b192af2fc73bb63be7503322c76b72ababcb1a9d863b89086651c1899ac315af164dc7cf9956f SHA512 05db4ffc2e97f956339beed8578ca038d053042f432efdb298b9b0cf83b057b94bea4df9845b3de3f33faa06c7e502a0f02a44c5f1400d733ca8d6f9cf468c19
+DIST firefox-126.0-th.xpi 687706 BLAKE2B b2d9c1c78c19bbb442dcd980b9874827e0079bebc71024496d65035dc2f67cdc6475b746bc79ff63382268c0ae484992871eb109ba65a1e1faf9fdb02eb9a908 SHA512 d115eacf5f53342b6ca87bf81c2968ef6b79524ae95aae1e6770dd7c66c0fab3cfcdbeb4335ad77820212ebe35374fd0896330ebdd2e8837fb5c062fb6c8062a
+DIST firefox-126.0-tl.xpi 531822 BLAKE2B 7292bc0caf37b262f08cdb725f85ba570683495acd85e43fc34a83bbe6b85bf4ee312624d24cb50360b1a6aed5692f8ae00e09eb664d5f1db34e9783d4b35e56 SHA512 95fe5bd8d83cfb4c4129b8cb676292598414b9cc6ecbd512297b7a87e1b12602bae9cacf559dfd703b25ce1d3a3c69514ec9dd71980afc5790d8cda1346755b6
+DIST firefox-126.0-tr.xpi 624998 BLAKE2B 487a53a8ae20c2e1796afc06dd3a40142f2ee2b88eca27d982dbeb3f78ce00eae8200a6d30cf038351ad13ed45b6d3b0d037424942af6c47a17e3ea21bdc92de SHA512 d10b800acdf58095406900283e54f35e4aaefee65305fbb5684e7ff5f9fbeea93ab1045377bc52f54ae98586f4cee4b57f56199e522b31e3b9fbdf9545f2f32e
+DIST firefox-126.0-trs.xpi 501691 BLAKE2B 3ae1774df8f202023b5089bf40ab8cedefae6254b7466d3a39958deee67ce154f5da711e6d9b7b4dd170aa6a09764f347e3398fed27d7089263b5868dd0ccbb0 SHA512 41559f64bf5c22e2d36b0f19dbc6bd2d41ee4792ce313d4b08fe1c7945fdaeb9d902751e845ab1b832625a7dbe6e5b2c3d021e626aefa1b9f2fb35bf49e773b2
+DIST firefox-126.0-uk.xpi 703811 BLAKE2B 9d7a22f3a30e06b9642d8b15d7870701cc4f96cff59efb218d58b8aa8dde13d553f02ecbad70bef37349a8b234e82eb6f1888b93844859a283eb9144d9230660 SHA512 069971fff2ec21867ef50fbadf8919ff38aa3824fabc02217b9e6e5dd83be82458fa024b00366a0a87a978d31f3ec92ebdcea789f867e3b38ce683ac50020c09
+DIST firefox-126.0-ur.xpi 558139 BLAKE2B 60c98d5e1a49d90432e49f16d9053387b230cdfda8f118300663678b60bae9326f3f6a2d9de55048614d235d62e77814a34cfc33e7d9c973ac54a8e7cbfb6bcc SHA512 9a1a0e5e15ab90ba1137c73174be7e631e5a0bcbbd7b52683282e580e30f2db1e6a8481f7337e744cab0a084ce701d719c5e33102f6d1751ba25cb0825710456
+DIST firefox-126.0-uz.xpi 476546 BLAKE2B 35c05fdff82eadc1a9978c2a03f386040b773da201252eb3f7258af2df64d0b4534c5fda57a3a210575d4a8abc10a14877fe8b9e260960b87e6c983bbff8566c SHA512 28a695f863c14d02a211d4f3e435ab79708083e79237d532b033bf32bc097ab47930e5a891544d215a1c8e24fe7b4127b727246bef80fec2adb35d03c77cece3
+DIST firefox-126.0-vi.xpi 649540 BLAKE2B 545a01d3d901f2c8013835649db47c547ec9207ef0260a2dbc661ddd761765d3a40c37838134330767221ac535d970f5908e71521e58021736a4a08dab8dc1c8 SHA512 d94a1a8befe0c45e981d9bedbc688aaccec57521190a336ca094f3d7c5d64af4ca4872ceab426c2658bfdefd967de00245ceb715851763b4116ccd09fc1347da
+DIST firefox-126.0-xh.xpi 414864 BLAKE2B 9ef6cc38daec68367317e8c29ad25d8aa1d002aac87d288e0d2f86342b7b7f76a8822d910fbb3e8f5df604d37b49bdf252890659f7e45261a0714320603111cf SHA512 3b00c25657d9b8e71b53c0699d53bdca327750f4007a54c420657b884524ed1da6e2e0276f2a81f361869b050408590f73ec73f488efdc28820d6ae8a56f077e
+DIST firefox-126.0-zh-CN.xpi 649590 BLAKE2B 1919defcbe80f49756a984833c2e7d809728394df7d4897d0c805ed5ec6318e8b137a7866563ce9ed2e68ed51a3f6695cee8c241533bb2f43814bf916778a716 SHA512 67fb4ee9c44727e56f5f01e8e90817c582e619af051e43edf771f75cd20e8858dac332c0f422df8b8017dfe91c81d6a8eae1ce96a3f927726b8518aefb1fe28b
+DIST firefox-126.0-zh-TW.xpi 651627 BLAKE2B 34dbf056777c8345e4da72b908af5cf300d649fc8fa5896766f587f36a051418d06126cddb841caf3eaae0c5f2285e13c6929aaad4aba310d8d9e40a2f417cc2 SHA512 154c03337b9638c04d62f1282aeb7d3785865e8af63382ef5689fa30509d5ccb0745f6f15a08cdd1c613d24ada133095d2be08a7c9f7b546fefc3d48f3344858
+DIST firefox-126.0.source.tar.xz 552065476 BLAKE2B 9f40424502ccf7516b8b1142372ff816986c07646e88b3e69ca1a6a5173166a3b6c37696c99fbbaece23d01af51a76e56c19df3babc7af4e5d13e5821262ad1b SHA512 56025b051d544ca294911a1d6a66f09945f71012131881b64313dafb579730810a4b091950c90a21d4fd3f393ba23670d8409086e1677d80d0bbbe347c303527
+EBUILD firefox-115.10.0.ebuild 40348 BLAKE2B 85aa8a7baf757ab15482a14e1f2383c6bf433acdd08afad75fbb736a6aee0ed9ed2ffc47b8f972f1d5259fa9dd869c4b4e6c52b3164affdb740c012575868cda SHA512 bfd51ce413f65ed615e4156b30777fa363477c1b510c6c4fa6be3214201d5b0052463f48bf29bcb54110e78fa00e7017ce70e3e8df752edb708faddec306ea57
+EBUILD firefox-115.11.0.ebuild 40349 BLAKE2B 0d8e42bd4a5fd9dda18bc359d73dac7bb6468d45bec0a24ab6e8e8455d854ae0b2e6fdd6d8564004b2ecba2348f2492067e3c9efdcc2a71e25f2c211d1c36e6d SHA512 f746716f75821f4aa85a19b404dad12a9f34bd619fb38c4eba78012f6473f27a491b2e05e606d57651fdd18b242bf2d11b00b11a39ad2ac5ab44b9956facd205
+EBUILD firefox-115.9.0.ebuild 40206 BLAKE2B 6577e7efe5354fd2b3a1bba92da7c4d25be0b88d808cebe42d30241e1d42ca8805b670ea29c8529cd0b6df82f2a939a9befe91a821af4a31ea52e63ce3456662 SHA512 e9c3ba3819066f48a980517d28ad0555d8aaf43dd65788d515b1f5057a93a3b4356e521063548c7273e6f1e27d7b467f81fe7d5a4cda5ca6702bc1d8040b5042
+EBUILD firefox-115.9.1.ebuild 40094 BLAKE2B 426d66f6cb576f9b55fb509878cfb782a2a0fc1671708016e4245e2e589dbb5ad1ec9f1698067f8f75fbb054cf727760a711edc2e3ab7bb23aabce96ab96cb5b SHA512 fdff4e5650144d882680c4e27053455848d7b79523c470e36c439527eec22ca3cf61de815d145016bf1c4f020b181146bdb7c2b8c310b38e513c4884ab14a3db
+EBUILD firefox-125.0.2.ebuild 42838 BLAKE2B 7678bf9de6f52536890b07ff8237c76a62c6dd4f8e14918c0835c4164e95521505b10ff45a9987972caf0e48b813c2ce61f9772d71ccd39461365740320820ea SHA512 470493c8bf85e7dc923d558bf0220f28e635a399dd51d528df1a2f5702741a1a94dba05da62f012c23026f8c73a07a9974bcb9ead6e0d0952be00c6ab916c62a
+EBUILD firefox-125.0.3.ebuild 42738 BLAKE2B 12d44004092907c0efbc710ed7127c0d43aba06efb5e4ec0ea2a0fb8ce0eacee23644653a3b214cdcfce461c1317337cad984771f94d1e35dfc374c5d04732ab SHA512 0f51f6aed2499ddbd964fb2d9dbfbe2dcd5bbf423a5d39d338f11146bdf0a6c4626a0c46400ae76c0822267862f08e041a46b9ad1830f3402b47a6b22eef2cc1
+EBUILD firefox-126.0.ebuild 42617 BLAKE2B 8153976042afe0cbccc0087fb70c646e04263537cf19d1973b9770e43e719b7a70a11bb290221e10c65851df72eaf80a4100f59aca81b574a5f13479f55532e5 SHA512 b9d2b3a72ae9ceda4be0fde30ef3a9433f756e1fff124d1c75ba1097ee4dc4604cd83ca7aad0be3328cddb63a8920e38402206b45124174258c3a2765e0909f9
MISC metadata.xml 2597 BLAKE2B b449997bc096ed8fb7bde41a5acb8d9f4c1c8cfc9663c06ff603cca756e8868d40049fd292a459a00d80b4e8c3a74e91e29fcb04abe87277640fe65d070f0bda SHA512 703c7f6a2b46748786145b0973a7b8439e530c96fd7c50d773efac7d5d9bf74ccb4f0c252f2701459944f2b3ced22d3e57ddf049b9aed0c8f0e094cabddda251
diff --git a/www-client/firefox/firefox-115.10.0.ebuild b/www-client/firefox/firefox-115.10.0.ebuild
index b2721b0bdb2f..0edc08563f46 100644
--- a/www-client/firefox/firefox-115.10.0.ebuild
+++ b/www-client/firefox/firefox-115.10.0.ebuild
@@ -56,7 +56,7 @@ SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}
DESCRIPTION="Firefox Web Browser"
HOMEPAGE="https://www.mozilla.com/firefox"
-KEYWORDS="amd64 ~arm64 ~ppc64 ~riscv x86"
+KEYWORDS="amd64 arm64 ppc64 ~riscv x86"
SLOT="esr"
LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
@@ -693,6 +693,8 @@ src_prepare() {
export RUST_TARGET="x86_64-unknown-linux-musl"
elif use x86 ; then
export RUST_TARGET="i686-unknown-linux-musl"
+ elif use arm64 ; then
+ export RUST_TARGET="aarch64-unknown-linux-musl"
else
die "Unknown musl chost, please post your rustc -vV along with emerge --info on Gentoo's bug #915651"
fi
diff --git a/www-client/firefox/firefox-115.11.0.ebuild b/www-client/firefox/firefox-115.11.0.ebuild
new file mode 100644
index 000000000000..daf6e9f9cacc
--- /dev/null
+++ b/www-client/firefox/firefox-115.11.0.ebuild
@@ -0,0 +1,1408 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+FIREFOX_PATCHSET="firefox-115esr-patches-09.tar.xz"
+
+LLVM_MAX_SLOT=17
+
+PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_REQ_USE="ncurses,sqlite,ssl"
+
+WANT_AUTOCONF="2.1"
+
+VIRTUALX_REQUIRED="manual"
+
+MOZ_ESR=yes
+
+MOZ_PV=${PV}
+MOZ_PV_SUFFIX=
+if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
+ MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
+
+ # Convert the ebuild version to the upstream Mozilla version
+ MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
+ MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
+ MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
+fi
+
+if [[ -n ${MOZ_ESR} ]] ; then
+ # ESR releases have slightly different version numbers
+ MOZ_PV="${MOZ_PV}esr"
+fi
+
+MOZ_PN="${PN%-bin}"
+MOZ_P="${MOZ_PN}-${MOZ_PV}"
+MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
+MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
+
+inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info llvm multiprocessing \
+ optfeature pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs virtualx xdg
+
+MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
+
+if [[ ${PV} == *_rc* ]] ; then
+ MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
+fi
+
+PATCH_URIS=(
+ https://dev.gentoo.org/~juippis/mozilla/patchsets/${FIREFOX_PATCHSET}
+)
+
+SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
+ ${PATCH_URIS[@]}"
+
+DESCRIPTION="Firefox Web Browser"
+HOMEPAGE="https://www.mozilla.com/firefox"
+
+KEYWORDS="amd64 arm64 ~ppc64 ~riscv x86"
+
+SLOT="esr"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+
+IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel"
+IUSE+=" jack libproxy lto openh264 pgo pulseaudio sndio selinux"
+IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx system-png system-python-libs +system-webp"
+IUSE+=" wayland wifi +X"
+
+# Firefox-only IUSE
+IUSE+=" geckodriver +gmp-autoupdate screencast"
+
+REQUIRED_USE="|| ( X wayland )
+ debug? ( !system-av1 )
+ pgo? ( lto )
+ wifi? ( dbus )"
+
+FF_ONLY_DEPEND="!www-client/firefox:0
+ !www-client/firefox:rapid
+ screencast? ( media-video/pipewire:= )
+ selinux? ( sec-policy/selinux-mozilla )"
+BDEPEND="${PYTHON_DEPS}
+ || (
+ (
+ sys-devel/clang:17
+ sys-devel/llvm:17
+ clang? (
+ sys-devel/lld:17
+ virtual/rust:0/llvm-17
+ pgo? ( =sys-libs/compiler-rt-sanitizers-17*[profile] )
+ )
+ )
+ (
+ sys-devel/clang:16
+ sys-devel/llvm:16
+ clang? (
+ sys-devel/lld:16
+ virtual/rust:0/llvm-16
+ pgo? ( =sys-libs/compiler-rt-sanitizers-16*[profile] )
+ )
+ )
+ (
+ sys-devel/clang:15
+ sys-devel/llvm:15
+ clang? (
+ sys-devel/lld:15
+ virtual/rust:0/llvm-15
+ pgo? ( =sys-libs/compiler-rt-sanitizers-15*[profile] )
+ )
+ )
+ )
+ app-alternatives/awk
+ app-arch/unzip
+ app-arch/zip
+ >=dev-util/cbindgen-0.24.3
+ net-libs/nodejs
+ virtual/pkgconfig
+ !clang? ( >=virtual/rust-1.65 )
+ !elibc_glibc? (
+ || (
+ dev-lang/rust
+ <dev-lang/rust-bin-1.73
+ )
+ )
+ amd64? ( >=dev-lang/nasm-2.14 )
+ x86? ( >=dev-lang/nasm-2.14 )
+ pgo? (
+ X? (
+ sys-devel/gettext
+ x11-base/xorg-server[xvfb]
+ x11-apps/xhost
+ )
+ !X? (
+ >=gui-libs/wlroots-0.15.1-r1[tinywl]
+ x11-misc/xkeyboard-config
+ )
+ )"
+COMMON_DEPEND="${FF_ONLY_DEPEND}
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/libffi:=
+ >=dev-libs/nss-3.90
+ >=dev-libs/nspr-4.35
+ media-libs/alsa-lib
+ media-libs/fontconfig
+ media-libs/freetype
+ media-libs/mesa
+ media-video/ffmpeg
+ sys-libs/zlib
+ virtual/freedesktop-icon-theme
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf
+ x11-libs/pango
+ x11-libs/pixman
+ dbus? (
+ dev-libs/dbus-glib
+ sys-apps/dbus
+ )
+ jack? ( virtual/jack )
+ pulseaudio? (
+ || (
+ media-libs/libpulse
+ >=media-sound/apulse-0.1.12-r4[sdk]
+ )
+ )
+ libproxy? ( net-libs/libproxy )
+ selinux? ( sec-policy/selinux-mozilla )
+ sndio? ( >=media-sound/sndio-1.8.0-r1 )
+ screencast? ( media-video/pipewire:= )
+ system-av1? (
+ >=media-libs/dav1d-1.0.0:=
+ >=media-libs/libaom-1.0.0:=
+ )
+ system-harfbuzz? (
+ >=media-gfx/graphite2-1.3.13
+ >=media-libs/harfbuzz-2.8.1:0=
+ )
+ system-icu? ( >=dev-libs/icu-73.1:= )
+ system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
+ system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] )
+ system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
+ system-png? ( >=media-libs/libpng-1.6.35:0=[apng] )
+ system-webp? ( >=media-libs/libwebp-1.1.0:0= )
+ wayland? (
+ >=media-libs/libepoxy-1.5.10-r1
+ x11-libs/gtk+:3[wayland]
+ x11-libs/libxkbcommon[wayland]
+ )
+ wifi? (
+ kernel_linux? (
+ dev-libs/dbus-glib
+ net-misc/networkmanager
+ sys-apps/dbus
+ )
+ )
+ X? (
+ virtual/opengl
+ x11-libs/cairo[X]
+ x11-libs/gtk+:3[X]
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libxkbcommon[X]
+ x11-libs/libXrandr
+ x11-libs/libXtst
+ x11-libs/libxcb:=
+ )"
+RDEPEND="${COMMON_DEPEND}
+ hwaccel? (
+ media-video/libva-utils
+ sys-apps/pciutils
+ )
+ jack? ( virtual/jack )
+ openh264? ( media-libs/openh264:*[plugin] )"
+DEPEND="${COMMON_DEPEND}
+ X? (
+ x11-base/xorg-proto
+ x11-libs/libICE
+ x11-libs/libSM
+ )"
+
+S="${WORKDIR}/${PN}-${PV%_*}"
+
+# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
+# overridden in the enviromnent (advanced hackers only)
+if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
+ MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
+fi
+
+llvm_check_deps() {
+ if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
+ einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+
+ if use clang && ! tc-ld-is-mold ; then
+ if ! has_version -b "sys-devel/lld:${LLVM_SLOT}" ; then
+ einfo "sys-devel/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+
+ if ! has_version -b "virtual/rust:0/llvm-${LLVM_SLOT}" ; then
+ einfo "virtual/rust:0/llvm-${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+
+ if use pgo ; then
+ if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then
+ einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+ fi
+ fi
+
+ einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
+}
+
+MOZ_LANGS=(
+ af ar ast be bg br ca cak cs cy da de dsb
+ el en-CA en-GB en-US es-AR es-ES et eu
+ fi fr fy-NL ga-IE gd gl he hr hsb hu
+ id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO
+ pa-IN pl pt-BR pt-PT rm ro ru
+ sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW
+)
+
+# Firefox-only LANGS
+MOZ_LANGS+=( ach )
+MOZ_LANGS+=( an )
+MOZ_LANGS+=( az )
+MOZ_LANGS+=( bn )
+MOZ_LANGS+=( bs )
+MOZ_LANGS+=( ca-valencia )
+MOZ_LANGS+=( eo )
+MOZ_LANGS+=( es-CL )
+MOZ_LANGS+=( es-MX )
+MOZ_LANGS+=( fa )
+MOZ_LANGS+=( ff )
+MOZ_LANGS+=( fur )
+MOZ_LANGS+=( gn )
+MOZ_LANGS+=( gu-IN )
+MOZ_LANGS+=( hi-IN )
+MOZ_LANGS+=( hy-AM )
+MOZ_LANGS+=( ia )
+MOZ_LANGS+=( km )
+MOZ_LANGS+=( kn )
+MOZ_LANGS+=( lij )
+MOZ_LANGS+=( mk )
+MOZ_LANGS+=( mr )
+MOZ_LANGS+=( my )
+MOZ_LANGS+=( ne-NP )
+MOZ_LANGS+=( oc )
+MOZ_LANGS+=( sc )
+MOZ_LANGS+=( sco )
+MOZ_LANGS+=( si )
+MOZ_LANGS+=( son )
+MOZ_LANGS+=( szl )
+MOZ_LANGS+=( ta )
+MOZ_LANGS+=( te )
+MOZ_LANGS+=( tl )
+MOZ_LANGS+=( trs )
+MOZ_LANGS+=( ur )
+MOZ_LANGS+=( xh )
+
+mozilla_set_globals() {
+ # https://bugs.gentoo.org/587334
+ local MOZ_TOO_REGIONALIZED_FOR_L10N=(
+ fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
+ )
+
+ local lang xflag
+ for lang in "${MOZ_LANGS[@]}" ; do
+ # en and en_US are handled internally
+ if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
+ continue
+ fi
+
+ # strip region subtag if $lang is in the list
+ if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
+ xflag=${lang%%-*}
+ else
+ xflag=${lang}
+ fi
+
+ SRC_URI+=" l10n_${xflag/[_@]/-}? ("
+ SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
+ SRC_URI+=" )"
+ IUSE+=" l10n_${xflag/[_@]/-}"
+ done
+}
+mozilla_set_globals
+
+moz_clear_vendor_checksums() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -ne 1 ]] ; then
+ die "${FUNCNAME} requires exact one argument"
+ fi
+
+ einfo "Clearing cargo checksums for ${1} ..."
+
+ sed -i \
+ -e 's/\("files":{\)[^}]*/\1/' \
+ "${S}"/third_party/rust/${1}/.cargo-checksum.json \
+ || die
+}
+
+moz_install_xpi() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 2 ]] ; then
+ die "${FUNCNAME} requires at least two arguments"
+ fi
+
+ local DESTDIR=${1}
+ shift
+
+ insinto "${DESTDIR}"
+
+ local emid xpi_file xpi_tmp_dir
+ for xpi_file in "${@}" ; do
+ emid=
+ xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
+
+ # Unpack XPI
+ unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
+
+ # Determine extension ID
+ if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
+ emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
+ [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
+ elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
+ emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
+ [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
+ else
+ die "failed to determine extension id"
+ fi
+
+ einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
+ newins "${xpi_file}" "${emid}.xpi"
+ done
+}
+
+mozconfig_add_options_ac() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 2 ]] ; then
+ die "${FUNCNAME} requires at least two arguments"
+ fi
+
+ local reason=${1}
+ shift
+
+ local option
+ for option in ${@} ; do
+ echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
+ done
+}
+
+mozconfig_add_options_mk() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 2 ]] ; then
+ die "${FUNCNAME} requires at least two arguments"
+ fi
+
+ local reason=${1}
+ shift
+
+ local option
+ for option in ${@} ; do
+ echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
+ done
+}
+
+mozconfig_use_enable() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 1 ]] ; then
+ die "${FUNCNAME} requires at least one arguments"
+ fi
+
+ local flag=$(use_enable "${@}")
+ mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
+}
+
+mozconfig_use_with() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 1 ]] ; then
+ die "${FUNCNAME} requires at least one arguments"
+ fi
+
+ local flag=$(use_with "${@}")
+ mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
+}
+
+# This is a straight copypaste from toolchain-funcs.eclass's 'tc-ld-is-lld', and is temporarily
+# placed here until toolchain-funcs.eclass gets an official support for mold linker.
+# Please see:
+# https://github.com/gentoo/gentoo/pull/28366 ||
+# https://github.com/gentoo/gentoo/pull/28355
+tc-ld-is-mold() {
+ local out
+
+ # Ensure ld output is in English.
+ local -x LC_ALL=C
+
+ # First check the linker directly.
+ out=$($(tc-getLD "$@") --version 2>&1)
+ if [[ ${out} == *"mold"* ]] ; then
+ return 0
+ fi
+
+ # Then see if they're selecting mold via compiler flags.
+ # Note: We're assuming they're using LDFLAGS to hold the
+ # options and not CFLAGS/CXXFLAGS.
+ local base="${T}/test-tc-linker"
+ cat <<-EOF > "${base}.c"
+ int main() { return 0; }
+ EOF
+ out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1)
+ rm -f "${base}"*
+ if [[ ${out} == *"mold"* ]] ; then
+ return 0
+ fi
+
+ # No mold here!
+ return 1
+}
+
+virtwl() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ [[ $# -lt 1 ]] && die "${FUNCNAME} needs at least one argument"
+ [[ -n $XDG_RUNTIME_DIR ]] || die "${FUNCNAME} needs XDG_RUNTIME_DIR to be set; try xdg_environment_reset"
+ tinywl -h >/dev/null || die 'tinywl -h failed'
+
+ # TODO: don't run addpredict in utility function. WLR_RENDERER=pixman doesn't work
+ addpredict /dev/dri
+ local VIRTWL VIRTWL_PID
+ coproc VIRTWL { WLR_BACKENDS=headless exec tinywl -s 'echo $WAYLAND_DISPLAY; read _; kill $PPID'; }
+ local -x WAYLAND_DISPLAY
+ read WAYLAND_DISPLAY <&${VIRTWL[0]}
+
+ debug-print "${FUNCNAME}: $@"
+ "$@"
+ local r=$?
+
+ [[ -n $VIRTWL_PID ]] || die "tinywl exited unexpectedly"
+ exec {VIRTWL[0]}<&- {VIRTWL[1]}>&-
+ return $r
+}
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != binary ]] ; then
+ if use pgo ; then
+ if ! has usersandbox $FEATURES ; then
+ die "You must enable usersandbox as X server can not run as root!"
+ fi
+ fi
+
+ # Ensure we have enough disk space to compile
+ if use pgo || use lto || use debug ; then
+ CHECKREQS_DISK_BUILD="13500M"
+ else
+ CHECKREQS_DISK_BUILD="6600M"
+ fi
+
+ check-reqs_pkg_pretend
+ fi
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != binary ]] ; then
+ if use pgo ; then
+ if ! has userpriv ${FEATURES} ; then
+ eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
+ fi
+ fi
+
+ # Ensure we have enough disk space to compile
+ if use pgo || use lto || use debug ; then
+ CHECKREQS_DISK_BUILD="13500M"
+ else
+ CHECKREQS_DISK_BUILD="6400M"
+ fi
+
+ check-reqs_pkg_setup
+
+ llvm_pkg_setup
+
+ if use clang && use lto && tc-ld-is-lld ; then
+ local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
+ [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
+ [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
+
+ local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
+ [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
+ [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
+
+ if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
+ eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
+ eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
+ eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
+ eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
+ eerror " - Build ${CATEGORY}/${PN} without USE=lto"
+ eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole "
+ eerror " llvm/clang/lld/rust chain depending on your @world updates)"
+ die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
+ fi
+ fi
+
+ python-any-r1_pkg_setup
+
+ # Avoid PGO profiling problems due to enviroment leakage
+ # These should *always* be cleaned up anyway
+ unset \
+ DBUS_SESSION_BUS_ADDRESS \
+ DISPLAY \
+ ORBIT_SOCKETDIR \
+ SESSION_MANAGER \
+ XAUTHORITY \
+ XDG_CACHE_HOME \
+ XDG_SESSION_COOKIE
+
+ # Build system is using /proc/self/oom_score_adj, bug #604394
+ addpredict /proc/self/oom_score_adj
+
+ if use pgo ; then
+ # Update 105.0: "/proc/self/oom_score_adj" isn't enough anymore with pgo, but not sure
+ # whether that's due to better OOM handling by Firefox (bmo#1771712), or portage
+ # (PORTAGE_SCHEDULING_POLICY) update...
+ addpredict /proc
+
+ # May need a wider addpredict when using wayland+pgo.
+ addpredict /dev/dri
+
+ # Allow access to GPU during PGO run
+ local ati_cards mesa_cards nvidia_cards render_cards
+ shopt -s nullglob
+
+ ati_cards=$(echo -n /dev/ati/card* | sed 's/ /:/g')
+ if [[ -n "${ati_cards}" ]] ; then
+ addpredict "${ati_cards}"
+ fi
+
+ mesa_cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
+ if [[ -n "${mesa_cards}" ]] ; then
+ addpredict "${mesa_cards}"
+ fi
+
+ nvidia_cards=$(echo -n /dev/nvidia* | sed 's/ /:/g')
+ if [[ -n "${nvidia_cards}" ]] ; then
+ addpredict "${nvidia_cards}"
+ fi
+
+ render_cards=$(echo -n /dev/dri/renderD128* | sed 's/ /:/g')
+ if [[ -n "${render_cards}" ]] ; then
+ addpredict "${render_cards}"
+ fi
+
+ shopt -u nullglob
+ fi
+
+ if ! mountpoint -q /dev/shm ; then
+ # If /dev/shm is not available, configure is known to fail with
+ # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
+ ewarn "/dev/shm is not mounted -- expect build failures!"
+ fi
+
+ # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
+ # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
+ # get your own set of keys.
+ if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
+ MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
+ fi
+
+ if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
+ MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
+ fi
+
+ # Mozilla API keys (see https://location.services.mozilla.com/api)
+ # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
+ # get your own set of keys.
+ if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
+ MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
+ fi
+
+ # Ensure we use C locale when building, bug #746215
+ export LC_ALL=C
+ fi
+
+ CONFIG_CHECK="~SECCOMP"
+ WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
+ linux-info_pkg_setup
+}
+
+src_unpack() {
+ local _lp_dir="${WORKDIR}/language_packs"
+ local _src_file
+
+ if [[ ! -d "${_lp_dir}" ]] ; then
+ mkdir "${_lp_dir}" || die
+ fi
+
+ for _src_file in ${A} ; do
+ if [[ ${_src_file} == *.xpi ]]; then
+ cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
+ else
+ unpack ${_src_file}
+ fi
+ done
+}
+
+src_prepare() {
+ if use lto; then
+ rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch || die
+ fi
+
+ if ! use ppc64; then
+ rm -v "${WORKDIR}"/firefox-patches/*ppc64*.patch || die
+ fi
+
+ if use x86 && use elibc_glibc ; then
+ rm -v "${WORKDIR}"/firefox-patches/*-musl-non-lfs64-api-on-audio_thread_priority-crate.patch || die
+ fi
+
+ # Workaround for bgo#917599
+ if has_version ">=dev-libs/icu-74.1" && use system-icu ; then
+ eapply "${WORKDIR}"/firefox-patches/0029-bmo-1862601-system-icu-74.patch
+ fi
+ rm -v "${WORKDIR}"/firefox-patches/0029-bmo-1862601-system-icu-74.patch || die
+
+ # Workaround for bgo#915651 on musl
+ if use elibc_glibc ; then
+ rm -v "${WORKDIR}"/firefox-patches/*bgo-748849-RUST_TARGET_override.patch || die
+ fi
+
+ eapply "${WORKDIR}/firefox-patches"
+
+ # Allow user to apply any additional patches without modifing ebuild
+ eapply_user
+
+ # Make cargo respect MAKEOPTS
+ export CARGO_BUILD_JOBS="$(makeopts_jobs)"
+
+ # Workaround for bgo#915651
+ if ! use elibc_glibc ; then
+ if use amd64 ; then
+ export RUST_TARGET="x86_64-unknown-linux-musl"
+ elif use x86 ; then
+ export RUST_TARGET="i686-unknown-linux-musl"
+ elif use arm64 ; then
+ export RUST_TARGET="aarch64-unknown-linux-musl"
+ else
+ die "Unknown musl chost, please post your rustc -vV along with emerge --info on Gentoo's bug #915651"
+ fi
+ fi
+
+ # Make LTO respect MAKEOPTS
+ sed -i \
+ -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/build/moz.configure/lto-pgo.configure \
+ || die "sed failed to set num_cores"
+
+ # Make ICU respect MAKEOPTS
+ sed -i \
+ -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/intl/icu_sources_data.py \
+ || die "sed failed to set num_cores"
+
+ # sed-in toolchain prefix
+ sed -i \
+ -e "s/objdump/${CHOST}-objdump/" \
+ "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
+ || die "sed failed to set toolchain prefix"
+
+ sed -i \
+ -e 's/ccache_stats = None/return None/' \
+ "${S}"/python/mozbuild/mozbuild/controller/building.py \
+ || die "sed failed to disable ccache stats call"
+
+ einfo "Removing pre-built binaries ..."
+
+ find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
+
+ # Clear cargo checksums from crates we have patched
+ # moz_clear_vendor_checksums crate
+ moz_clear_vendor_checksums audio_thread_priority
+
+ # Create build dir
+ BUILD_DIR="${WORKDIR}/${PN}_build"
+ mkdir -p "${BUILD_DIR}" || die
+
+ # Write API keys to disk
+ echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
+ echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
+ echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
+
+ xdg_environment_reset
+}
+
+src_configure() {
+ # Show flags set at the beginning
+ einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
+ einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
+ einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
+ einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
+ einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
+
+ local have_switched_compiler=
+ if use clang; then
+ # Force clang
+ einfo "Enforcing the use of clang due to USE=clang ..."
+
+ local version_clang=$(clang --version 2>/dev/null | grep -F -- 'clang version' | awk '{ print $3 }')
+ [[ -n ${version_clang} ]] && version_clang=$(ver_cut 1 "${version_clang}")
+ [[ -z ${version_clang} ]] && die "Failed to read clang version!"
+
+ if tc-is-gcc; then
+ have_switched_compiler=yes
+ fi
+
+ AR=llvm-ar
+ CC=${CHOST}-clang-${version_clang}
+ CXX=${CHOST}-clang++-${version_clang}
+ NM=llvm-nm
+ RANLIB=llvm-ranlib
+
+ elif ! use clang && ! tc-is-gcc ; then
+ # Force gcc
+ have_switched_compiler=yes
+ einfo "Enforcing the use of gcc due to USE=-clang ..."
+ AR=gcc-ar
+ CC=${CHOST}-gcc
+ CXX=${CHOST}-g++
+ NM=gcc-nm
+ RANLIB=gcc-ranlib
+ fi
+
+ if [[ -n "${have_switched_compiler}" ]] ; then
+ # Because we switched active compiler we have to ensure
+ # that no unsupported flags are set
+ strip-unsupported-flags
+ fi
+
+ # Ensure we use correct toolchain,
+ # AS is used in a non-standard way by upstream, #bmo1654031
+ export HOST_CC="$(tc-getBUILD_CC)"
+ export HOST_CXX="$(tc-getBUILD_CXX)"
+ export AS="$(tc-getCC) -c"
+ tc-export CC CXX LD AR AS NM OBJDUMP RANLIB PKG_CONFIG
+
+ # Pass the correct toolchain paths through cbindgen
+ if tc-is-cross-compiler ; then
+ export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
+ fi
+
+ # Set MOZILLA_FIVE_HOME
+ export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
+
+ # python/mach/mach/mixin/process.py fails to detect SHELL
+ export SHELL="${EPREFIX}/bin/bash"
+
+ # Set state path
+ export MOZBUILD_STATE_PATH="${BUILD_DIR}"
+
+ # Set MOZCONFIG
+ export MOZCONFIG="${S}/.mozconfig"
+
+ # Initialize MOZCONFIG
+ mozconfig_add_options_ac '' --enable-application=browser
+ mozconfig_add_options_ac '' --enable-project=browser
+
+ # Set Gentoo defaults
+ mozconfig_add_options_ac 'Gentoo default' \
+ --allow-addon-sideload \
+ --disable-cargo-incremental \
+ --disable-crashreporter \
+ --disable-gpsd \
+ --disable-install-strip \
+ --disable-parental-controls \
+ --disable-strip \
+ --disable-tests \
+ --disable-updater \
+ --disable-wmf \
+ --enable-legacy-profile-creation \
+ --enable-negotiateauth \
+ --enable-new-pass-manager \
+ --enable-official-branding \
+ --enable-release \
+ --enable-system-ffi \
+ --enable-system-pixman \
+ --enable-system-policies \
+ --host="${CBUILD:-${CHOST}}" \
+ --libdir="${EPREFIX}/usr/$(get_libdir)" \
+ --prefix="${EPREFIX}/usr" \
+ --target="${CHOST}" \
+ --without-ccache \
+ --without-wasm-sandboxed-libraries \
+ --with-intl-api \
+ --with-libclang-path="$(llvm-config --libdir)" \
+ --with-system-nspr \
+ --with-system-nss \
+ --with-system-zlib \
+ --with-toolchain-prefix="${CHOST}-" \
+ --with-unsigned-addon-scopes=app,system \
+ --x-includes="${ESYSROOT}/usr/include" \
+ --x-libraries="${ESYSROOT}/usr/$(get_libdir)"
+
+ # Set update channel
+ local update_channel=release
+ [[ -n ${MOZ_ESR} ]] && update_channel=esr
+ mozconfig_add_options_ac '' --update-channel=${update_channel}
+
+ if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
+ mozconfig_add_options_ac '' --enable-rust-simd
+ fi
+
+ # For future keywording: This is currently (97.0) only supported on:
+ # amd64, arm, arm64 & x86.
+ # Might want to flip the logic around if Firefox is to support more arches.
+ # bug 833001, bug 903411#c8
+ if use ppc64 || use riscv; then
+ mozconfig_add_options_ac '' --disable-sandbox
+ else
+ mozconfig_add_options_ac '' --enable-sandbox
+ fi
+
+ # Enable JIT on riscv64 explicitly
+ # Can be removed once upstream enable it by default in the future.
+ use riscv && mozconfig_add_options_ac 'Enable JIT for RISC-V 64' --enable-jit
+
+ if [[ -s "${S}/api-google.key" ]] ; then
+ local key_origin="Gentoo default"
+ if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
+ key_origin="User value"
+ fi
+
+ mozconfig_add_options_ac "${key_origin}" \
+ --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
+ else
+ einfo "Building without Google API key ..."
+ fi
+
+ if [[ -s "${S}/api-location.key" ]] ; then
+ local key_origin="Gentoo default"
+ if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
+ key_origin="User value"
+ fi
+
+ mozconfig_add_options_ac "${key_origin}" \
+ --with-google-location-service-api-keyfile="${S}/api-location.key"
+ else
+ einfo "Building without Location API key ..."
+ fi
+
+ if [[ -s "${S}/api-mozilla.key" ]] ; then
+ local key_origin="Gentoo default"
+ if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
+ key_origin="User value"
+ fi
+
+ mozconfig_add_options_ac "${key_origin}" \
+ --with-mozilla-api-keyfile="${S}/api-mozilla.key"
+ else
+ einfo "Building without Mozilla API key ..."
+ fi
+
+ mozconfig_use_with system-av1
+ mozconfig_use_with system-harfbuzz
+ mozconfig_use_with system-harfbuzz system-graphite2
+ mozconfig_use_with system-icu
+ mozconfig_use_with system-jpeg
+ mozconfig_use_with system-libevent
+ mozconfig_use_with system-libvpx
+ mozconfig_use_with system-png
+ mozconfig_use_with system-webp
+
+ mozconfig_use_enable dbus
+ mozconfig_use_enable libproxy
+
+ use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
+
+ mozconfig_use_enable geckodriver
+
+ if use hardened ; then
+ mozconfig_add_options_ac "+hardened" --enable-hardening
+ append-ldflags "-Wl,-z,relro -Wl,-z,now"
+ fi
+
+ local myaudiobackends=""
+ use jack && myaudiobackends+="jack,"
+ use sndio && myaudiobackends+="sndio,"
+ use pulseaudio && myaudiobackends+="pulseaudio,"
+ ! use pulseaudio && myaudiobackends+="alsa,"
+
+ mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}"
+
+ mozconfig_use_enable wifi necko-wifi
+
+ if use X && use wayland ; then
+ mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland
+ elif ! use X && use wayland ; then
+ mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only
+ else
+ mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3
+ fi
+
+ if use lto ; then
+ if use clang ; then
+ # Upstream only supports lld or mold when using clang.
+ if tc-ld-is-mold ; then
+ mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
+ else
+ mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
+ fi
+
+ mozconfig_add_options_ac '+lto' --enable-lto=cross
+
+ else
+ # ThinLTO is currently broken, see bmo#1644409.
+ # mold does not support gcc+lto combination.
+ mozconfig_add_options_ac '+lto' --enable-lto=full
+ mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
+ fi
+
+ if use pgo ; then
+ mozconfig_add_options_ac '+pgo' MOZ_PGO=1
+
+ if use clang ; then
+ # Used in build/pgo/profileserver.py
+ export LLVM_PROFDATA="llvm-profdata"
+ fi
+ fi
+ else
+ # Avoid auto-magic on linker
+ if use clang ; then
+ # lld is upstream's default
+ if tc-ld-is-mold ; then
+ mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
+ else
+ mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
+ fi
+
+ else
+ if tc-ld-is-mold ; then
+ mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
+ else
+ mozconfig_add_options_ac "linker is set to bfd due to USE=-clang" --enable-linker=bfd
+ fi
+ fi
+ fi
+
+ # LTO flag was handled via configure
+ filter-lto
+
+ mozconfig_use_enable debug
+ if use debug ; then
+ mozconfig_add_options_ac '+debug' --disable-optimize
+ mozconfig_add_options_ac '+debug' --enable-real-time-tracing
+ else
+ mozconfig_add_options_ac 'Gentoo defaults' --disable-real-time-tracing
+
+ if is-flag '-g*' ; then
+ if use clang ; then
+ mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
+ else
+ mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
+ fi
+ else
+ mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
+ fi
+
+ if is-flag '-O0' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
+ elif is-flag '-O4' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
+ elif is-flag '-O3' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
+ elif is-flag '-O1' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
+ elif is-flag '-Os' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
+ else
+ mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
+ fi
+ fi
+
+ # Debug flag was handled via configure
+ filter-flags '-g*'
+
+ # Optimization flag was handled via configure
+ filter-flags '-O*'
+
+ # Modifications to better support ARM, bug #553364
+ if use cpu_flags_arm_neon ; then
+ mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
+
+ if ! tc-is-clang ; then
+ # thumb options aren't supported when using clang, bug 666966
+ mozconfig_add_options_ac '+cpu_flags_arm_neon' \
+ --with-thumb=yes \
+ --with-thumb-interwork=no
+ fi
+ fi
+
+ if [[ ${CHOST} == armv*h* ]] ; then
+ mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
+
+ if ! use system-libvpx ; then
+ sed -i \
+ -e "s|softfp|hard|" \
+ "${S}"/media/libvpx/moz.build \
+ || die
+ fi
+ fi
+
+ # With profile 23.0 elf-hack=legacy is broken with gcc.
+ # With Firefox-115esr elf-hack=relr isn't available (only in rapid).
+ # Solution: Disable build system's elf-hack completely, and add "-z,pack-relative-relocs"
+ # manually with gcc.
+ #
+ # elf-hack configure option isn't available on ppc64/riscv, #916259, #929244, #930046.
+ if use ppc64 || use riscv ; then
+ :;
+ else
+ mozconfig_add_options_ac 'elf-hack disabled' --disable-elf-hack
+ fi
+
+ if use amd64 || use x86 ; then
+ ! use clang && append-ldflags "-z,pack-relative-relocs"
+ fi
+
+ # Additional ARCH support
+ case "${ARCH}" in
+ arm)
+ # Reduce the memory requirements for linking
+ if use clang ; then
+ # Nothing to do
+ :;
+ elif use lto ; then
+ append-ldflags -Wl,--no-keep-memory
+ else
+ append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
+ fi
+ ;;
+ esac
+
+ if ! use elibc_glibc; then
+ mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
+ fi
+
+ # Allow elfhack to work in combination with unstripped binaries
+ # when they would normally be larger than 2GiB.
+ append-ldflags "-Wl,--compress-debug-sections=zlib"
+
+ # Make revdep-rebuild.sh happy; Also required for musl
+ append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
+
+ # Pass $MAKEOPTS to build system
+ export MOZ_MAKE_FLAGS="${MAKEOPTS}"
+
+ # Use system's Python environment
+ export PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach
+
+ if use system-python-libs; then
+ export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="system"
+ else
+ export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none"
+ fi
+
+ # Disable notification when build system has finished
+ export MOZ_NOSPAM=1
+
+ # Portage sets XARGS environment variable to "xargs -r" by default which
+ # breaks build system's check_prog() function which doesn't support arguments
+ mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
+
+ # Set build dir
+ mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
+
+ # Show flags we will use
+ einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
+ einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
+ einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
+ einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
+ einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
+
+ # Handle EXTRA_CONF and show summary
+ local ac opt hash reason
+
+ # Apply EXTRA_ECONF entries to $MOZCONFIG
+ if [[ -n ${EXTRA_ECONF} ]] ; then
+ IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
+ for opt in "${ac[@]}"; do
+ mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
+ done
+ fi
+
+ echo
+ echo "=========================================================="
+ echo "Building ${PF} with the following configuration"
+ grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
+ [[ -z ${hash} || ${hash} == \# ]] \
+ || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
+ printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
+ done
+ echo "=========================================================="
+ echo
+
+ ./mach configure || die
+}
+
+src_compile() {
+ local virtx_cmd=
+
+ if tc-ld-is-mold && use lto; then
+ # increase ulimit with mold+lto, bugs #892641, #907485
+ if ! ulimit -n 16384 1>/dev/null 2>&1 ; then
+ ewarn "Unable to modify ulimits - building with mold+lto might fail due to low ulimit -n resources."
+ ewarn "Please see bugs #892641 & #907485."
+ else
+ ulimit -n 16384
+ fi
+ fi
+
+ if use pgo; then
+ # Reset and cleanup environment variables used by GNOME/XDG
+ gnome2_environment_reset
+
+ addpredict /root
+
+ if ! use X; then
+ virtx_cmd=virtwl
+ else
+ virtx_cmd=virtx
+ fi
+ fi
+
+ if ! use X; then
+ local -x GDK_BACKEND=wayland
+ else
+ local -x GDK_BACKEND=x11
+ fi
+
+ ${virtx_cmd} ./mach build --verbose || die
+}
+
+src_install() {
+ # xpcshell is getting called during install
+ pax-mark m \
+ "${BUILD_DIR}"/dist/bin/xpcshell \
+ "${BUILD_DIR}"/dist/bin/${PN} \
+ "${BUILD_DIR}"/dist/bin/plugin-container
+
+ DESTDIR="${D}" ./mach install || die
+
+ # Upstream cannot ship symlink but we can (bmo#658850)
+ rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
+ dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
+
+ # Don't install llvm-symbolizer from sys-devel/llvm package
+ if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
+ rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
+ fi
+
+ # Install policy (currently only used to disable application updates)
+ insinto "${MOZILLA_FIVE_HOME}/distribution"
+ newins "${FILESDIR}"/distribution.ini distribution.ini
+ newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
+
+ # Install system-wide preferences
+ local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences"
+ insinto "${PREFS_DIR}"
+ newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js
+
+ local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js"
+
+ # Set dictionary path to use system hunspell
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
+ pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
+ EOF
+
+ # Force hwaccel prefs if USE=hwaccel is enabled
+ if use hwaccel ; then
+ cat "${FILESDIR}"/gentoo-hwaccel-prefs.js-r2 \
+ >>"${GENTOO_PREFS}" \
+ || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
+
+ if use wayland; then
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel wayland prefs"
+ pref("gfx.x11-egl.force-enabled", false);
+ EOF
+ else
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel x11 prefs"
+ pref("gfx.x11-egl.force-enabled", true);
+ EOF
+ fi
+ fi
+
+ if ! use gmp-autoupdate ; then
+ local plugin
+ for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
+ einfo "Disabling auto-update for ${plugin} plugin ..."
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
+ pref("media.${plugin}.autoupdate", false);
+ EOF
+ done
+ fi
+
+ # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
+ if use system-harfbuzz ; then
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
+ sticky_pref("gfx.font_rendering.graphite.enabled", true);
+ EOF
+ fi
+
+ # Install language packs
+ local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
+ if [[ -n "${langpacks}" ]] ; then
+ moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
+ fi
+
+ # Install geckodriver
+ if use geckodriver ; then
+ einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..."
+ pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
+ exeinto "${MOZILLA_FIVE_HOME}"
+ doexe "${BUILD_DIR}"/dist/bin/geckodriver
+
+ dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
+ fi
+
+ # Install icons
+ local icon_srcdir="${S}/browser/branding/official"
+ local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg"
+
+ insinto /usr/share/icons/hicolor/symbolic/apps
+ newins "${icon_symbolic_file}" ${PN}-symbolic.svg
+
+ local icon size
+ for icon in "${icon_srcdir}"/default*.png ; do
+ size=${icon%.png}
+ size=${size##*/default}
+
+ if [[ ${size} -eq 48 ]] ; then
+ newicon "${icon}" ${PN}.png
+ fi
+
+ newicon -s ${size} "${icon}" ${PN}.png
+ done
+
+ # Install menu
+ local app_name="Mozilla ${MOZ_PN^}"
+ local desktop_file="${FILESDIR}/icon/${PN}-r3.desktop"
+ local desktop_filename="${PN}-esr.desktop"
+ local exec_command="${PN}"
+ local icon="${PN}"
+ local use_wayland="false"
+
+ if use wayland ; then
+ use_wayland="true"
+ fi
+
+ cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
+
+ sed -i \
+ -e "s:@NAME@:${app_name}:" \
+ -e "s:@EXEC@:${exec_command}:" \
+ -e "s:@ICON@:${icon}:" \
+ "${WORKDIR}/${PN}.desktop-template" \
+ || die
+
+ newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
+
+ rm "${WORKDIR}/${PN}.desktop-template" || die
+
+ # Install wrapper script
+ [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
+ newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
+
+ # Update wrapper
+ sed -i \
+ -e "s:@PREFIX@:${EPREFIX}/usr:" \
+ -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
+ -e "s:@APULSELIB_DIR@:${apulselib}:" \
+ -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
+ "${ED}/usr/bin/${PN}" \
+ || die
+
+ readme.gentoo_create_doc
+}
+
+pkg_preinst() {
+ xdg_pkg_preinst
+
+ # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
+ # does not need to be forced into the LD_LIBRARY_PATH
+ if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
+ einfo "APULSE found; Generating library symlinks for sound support ..."
+ local lib
+ pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die
+ for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
+ # A quickpkg rolled by hand will grab symlinks as part of the package,
+ # so we need to avoid creating them if they already exist.
+ if [[ ! -L ${lib##*/} ]] ; then
+ ln -s "${lib}" ${lib##*/} || die
+ fi
+ done
+ popd &>/dev/null || die
+ fi
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ if ! use gmp-autoupdate ; then
+ elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
+ elog "installing into new profiles:"
+ local plugin
+ for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
+ elog "\t ${plugin}"
+ done
+ elog
+ fi
+
+ if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
+ elog "Apulse was detected at merge time on this system and so it will always be"
+ elog "used for sound. If you wish to use pulseaudio instead please unmerge"
+ elog "media-sound/apulse."
+ elog
+ fi
+
+ # bug 835078
+ if use hwaccel && has_version "x11-drivers/xf86-video-nouveau"; then
+ ewarn "You have nouveau drivers installed in your system and 'hwaccel' "
+ ewarn "enabled for Firefox. Nouveau / your GPU might not support the "
+ ewarn "required EGL, so either disable 'hwaccel' or try the workaround "
+ ewarn "explained in https://bugs.gentoo.org/835078#c5 if Firefox crashes."
+ fi
+
+ readme.gentoo_print_elog
+
+ optfeature_header "Optional programs for extra features:"
+ optfeature "desktop notifications" x11-libs/libnotify
+ optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas
+
+ if use hwaccel && has_version "x11-drivers/nvidia-drivers"; then
+ optfeature "hardware acceleration with NVIDIA cards" media-libs/nvidia-vaapi-driver
+ fi
+
+ if ! has_version "sys-libs/glibc"; then
+ elog
+ elog "glibc not found! You won't be able to play DRM content."
+ elog "See Gentoo bug #910309 or upstream bug #1843683."
+ elog
+ fi
+
+ if use geckodriver ; then
+ ewarn "You have enabled the 'geckodriver' USE flag. Geckodriver is now"
+ ewarn "packaged separately as net-misc/geckodriver and the use flag will be"
+ ewarn "dropped from main Firefox package by Firefox 128.0 release."
+ fi
+}
diff --git a/www-client/firefox/firefox-115.9.0.ebuild b/www-client/firefox/firefox-115.9.0.ebuild
index 331790eb878d..281dc76598dc 100644
--- a/www-client/firefox/firefox-115.9.0.ebuild
+++ b/www-client/firefox/firefox-115.9.0.ebuild
@@ -693,6 +693,8 @@ src_prepare() {
export RUST_TARGET="x86_64-unknown-linux-musl"
elif use x86 ; then
export RUST_TARGET="i686-unknown-linux-musl"
+ elif use arm64 ; then
+ export RUST_TARGET="aarch64-unknown-linux-musl"
else
die "Unknown musl chost, please post your rustc -vV along with emerge --info on Gentoo's bug #915651"
fi
diff --git a/www-client/firefox/firefox-115.9.1.ebuild b/www-client/firefox/firefox-115.9.1.ebuild
index d07acf7df8f4..731334c2bbdd 100644
--- a/www-client/firefox/firefox-115.9.1.ebuild
+++ b/www-client/firefox/firefox-115.9.1.ebuild
@@ -693,6 +693,8 @@ src_prepare() {
export RUST_TARGET="x86_64-unknown-linux-musl"
elif use x86 ; then
export RUST_TARGET="i686-unknown-linux-musl"
+ elif use arm64 ; then
+ export RUST_TARGET="aarch64-unknown-linux-musl"
else
die "Unknown musl chost, please post your rustc -vV along with emerge --info on Gentoo's bug #915651"
fi
diff --git a/www-client/firefox/firefox-125.0.2.ebuild b/www-client/firefox/firefox-125.0.2.ebuild
index 86caf122eb6f..7c34e086a5d2 100644
--- a/www-client/firefox/firefox-125.0.2.ebuild
+++ b/www-client/firefox/firefox-125.0.2.ebuild
@@ -635,6 +635,8 @@ src_prepare() {
export RUST_TARGET="x86_64-unknown-linux-musl"
elif use x86 ; then
export RUST_TARGET="i686-unknown-linux-musl"
+ elif use arm64 ; then
+ export RUST_TARGET="aarch64-unknown-linux-musl"
else
die "Unknown musl chost, please post your rustc -vV along with emerge --info on Gentoo's bug #915651"
fi
@@ -1046,7 +1048,7 @@ src_configure() {
fi
# elf-hack
- # Filter "-z,pack-relative-relocs" and let the build system handle it instead.
+ # Filter "-z,pack-relative-relocs" and let the build system handle it instead.
if use amd64 || use x86 ; then
filter-flags "-z,pack-relative-relocs"
diff --git a/www-client/firefox/firefox-125.0.3.ebuild b/www-client/firefox/firefox-125.0.3.ebuild
index a9227c2a1210..d2c697706ca3 100644
--- a/www-client/firefox/firefox-125.0.3.ebuild
+++ b/www-client/firefox/firefox-125.0.3.ebuild
@@ -631,6 +631,8 @@ src_prepare() {
export RUST_TARGET="x86_64-unknown-linux-musl"
elif use x86 ; then
export RUST_TARGET="i686-unknown-linux-musl"
+ elif use arm64 ; then
+ export RUST_TARGET="aarch64-unknown-linux-musl"
else
die "Unknown musl chost, please post your rustc -vV along with emerge --info on Gentoo's bug #915651"
fi
@@ -1042,7 +1044,7 @@ src_configure() {
fi
# elf-hack
- # Filter "-z,pack-relative-relocs" and let the build system handle it instead.
+ # Filter "-z,pack-relative-relocs" and let the build system handle it instead.
if use amd64 || use x86 ; then
filter-flags "-z,pack-relative-relocs"
diff --git a/www-client/firefox/firefox-126.0.ebuild b/www-client/firefox/firefox-126.0.ebuild
new file mode 100644
index 000000000000..b5eed72a0ab9
--- /dev/null
+++ b/www-client/firefox/firefox-126.0.ebuild
@@ -0,0 +1,1419 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+FIREFOX_PATCHSET="firefox-126-patches-01.tar.xz"
+
+LLVM_COMPAT=( 17 )
+
+PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_REQ_USE="ncurses,sqlite,ssl"
+
+WANT_AUTOCONF="2.1"
+
+VIRTUALX_REQUIRED="manual"
+
+MOZ_ESR=
+
+MOZ_PV=${PV}
+MOZ_PV_SUFFIX=
+if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
+ MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
+
+ # Convert the ebuild version to the upstream Mozilla version
+ MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
+ MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
+ MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
+fi
+
+if [[ -n ${MOZ_ESR} ]] ; then
+ # ESR releases have slightly different version numbers
+ MOZ_PV="${MOZ_PV}esr"
+fi
+
+MOZ_PN="${PN%-bin}"
+MOZ_P="${MOZ_PN}-${MOZ_PV}"
+MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
+MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
+
+inherit autotools check-reqs desktop flag-o-matic gnome2-utils linux-info llvm-r1 multiprocessing \
+ optfeature pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs virtualx xdg
+
+MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
+
+if [[ ${PV} == *_rc* ]] ; then
+ MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
+fi
+
+PATCH_URIS=(
+ https://dev.gentoo.org/~juippis/mozilla/patchsets/${FIREFOX_PATCHSET}
+)
+
+SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
+ ${PATCH_URIS[@]}"
+
+DESCRIPTION="Firefox Web Browser"
+HOMEPAGE="https://www.mozilla.com/firefox"
+
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+
+SLOT="rapid"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+
+IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel"
+IUSE+=" jack +jumbo-build libproxy lto openh264 pgo pulseaudio sndio selinux"
+IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx system-png +system-webp"
+IUSE+=" +telemetry valgrind wayland wifi +X"
+
+# Firefox-only IUSE
+IUSE+=" geckodriver +gmp-autoupdate"
+
+# "-jumbo-build +system-icu": build failure on firefox-120:
+# firefox-120.0/intl/components/src/TimeZone.cpp:345:3: error: use of undeclared identifier 'MOZ_TRY'
+REQUIRED_USE="|| ( X wayland )
+ debug? ( !system-av1 )
+ pgo? ( lto )
+ wifi? ( dbus )"
+
+FF_ONLY_DEPEND="!www-client/firefox:0
+ !www-client/firefox:esr
+ selinux? ( sec-policy/selinux-mozilla )"
+BDEPEND="${PYTHON_DEPS}
+ $(llvm_gen_dep '
+ sys-devel/clang:${LLVM_SLOT}
+ sys-devel/llvm:${LLVM_SLOT}
+ clang? (
+ sys-devel/lld:${LLVM_SLOT}
+ virtual/rust:0/llvm-${LLVM_SLOT}
+ )
+ pgo? ( sys-libs/compiler-rt-sanitizers:${LLVM_SLOT}[profile] )
+ ')
+ app-alternatives/awk
+ app-arch/unzip
+ app-arch/zip
+ >=dev-util/cbindgen-0.26.0
+ net-libs/nodejs
+ virtual/pkgconfig
+ !clang? ( >=virtual/rust-1.74 )
+ !elibc_glibc? ( dev-lang/rust )
+ amd64? ( >=dev-lang/nasm-2.14 )
+ x86? ( >=dev-lang/nasm-2.14 )
+ pgo? (
+ X? (
+ sys-devel/gettext
+ x11-base/xorg-server[xvfb]
+ x11-apps/xhost
+ )
+ !X? (
+ >=gui-libs/wlroots-0.15.1-r1[tinywl]
+ x11-misc/xkeyboard-config
+ )
+ )"
+COMMON_DEPEND="${FF_ONLY_DEPEND}
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/libffi:=
+ >=dev-libs/nss-3.99
+ >=dev-libs/nspr-4.35
+ media-libs/alsa-lib
+ media-libs/fontconfig
+ media-libs/freetype
+ media-libs/mesa
+ media-video/ffmpeg
+ sys-libs/zlib
+ virtual/freedesktop-icon-theme
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf
+ x11-libs/pango
+ x11-libs/pixman
+ dbus? (
+ sys-apps/dbus
+ )
+ jack? ( virtual/jack )
+ pulseaudio? (
+ || (
+ media-libs/libpulse
+ >=media-sound/apulse-0.1.12-r4[sdk]
+ )
+ )
+ libproxy? ( net-libs/libproxy )
+ selinux? ( sec-policy/selinux-mozilla )
+ sndio? ( >=media-sound/sndio-1.8.0-r1 )
+ system-av1? (
+ >=media-libs/dav1d-1.0.0:=
+ >=media-libs/libaom-1.0.0:=
+ )
+ system-harfbuzz? (
+ >=media-gfx/graphite2-1.3.13
+ >=media-libs/harfbuzz-2.8.1:0=
+ )
+ system-icu? ( >=dev-libs/icu-73.1:= )
+ system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
+ system-libevent? ( >=dev-libs/libevent-2.1.12:0=[threads(+)] )
+ system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
+ system-png? ( >=media-libs/libpng-1.6.35:0=[apng] )
+ system-webp? ( >=media-libs/libwebp-1.1.0:0= )
+ valgrind? ( dev-debug/valgrind )
+ wayland? (
+ >=media-libs/libepoxy-1.5.10-r1
+ x11-libs/gtk+:3[wayland]
+ x11-libs/libxkbcommon[wayland]
+ )
+ wifi? (
+ kernel_linux? (
+ net-misc/networkmanager
+ sys-apps/dbus
+ )
+ )
+ X? (
+ virtual/opengl
+ x11-libs/cairo[X]
+ x11-libs/gtk+:3[X]
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libxkbcommon[X]
+ x11-libs/libXrandr
+ x11-libs/libXtst
+ x11-libs/libxcb:=
+ )"
+RDEPEND="${COMMON_DEPEND}
+ hwaccel? (
+ media-video/libva-utils
+ sys-apps/pciutils
+ )
+ jack? ( virtual/jack )
+ openh264? ( media-libs/openh264:*[plugin] )"
+DEPEND="${COMMON_DEPEND}
+ X? (
+ x11-base/xorg-proto
+ x11-libs/libICE
+ x11-libs/libSM
+ )"
+
+S="${WORKDIR}/${PN}-${PV%_*}"
+
+# Allow MOZ_GMP_PLUGIN_LIST to be set in an eclass or
+# overridden in the enviromnent (advanced hackers only)
+if [[ -z "${MOZ_GMP_PLUGIN_LIST+set}" ]] ; then
+ MOZ_GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
+fi
+
+llvm_check_deps() {
+ if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
+ einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+
+ if use clang && ! tc-ld-is-mold ; then
+ if ! has_version -b "sys-devel/lld:${LLVM_SLOT}" ; then
+ einfo "sys-devel/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+
+ if ! has_version -b "virtual/rust:0/llvm-${LLVM_SLOT}" ; then
+ einfo "virtual/rust:0/llvm-${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+
+ if use pgo ; then
+ if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile]" ; then
+ einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*[profile] is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
+ return 1
+ fi
+ fi
+ fi
+
+ einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
+}
+
+MOZ_LANGS=(
+ af ar ast be bg br ca cak cs cy da de dsb
+ el en-CA en-GB en-US es-AR es-ES et eu
+ fi fr fy-NL ga-IE gd gl he hr hsb hu
+ id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO
+ pa-IN pl pt-BR pt-PT rm ro ru
+ sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW
+)
+
+# Firefox-only LANGS
+MOZ_LANGS+=( ach )
+MOZ_LANGS+=( an )
+MOZ_LANGS+=( az )
+MOZ_LANGS+=( bn )
+MOZ_LANGS+=( bs )
+MOZ_LANGS+=( ca-valencia )
+MOZ_LANGS+=( eo )
+MOZ_LANGS+=( es-CL )
+MOZ_LANGS+=( es-MX )
+MOZ_LANGS+=( fa )
+MOZ_LANGS+=( ff )
+MOZ_LANGS+=( fur )
+MOZ_LANGS+=( gn )
+MOZ_LANGS+=( gu-IN )
+MOZ_LANGS+=( hi-IN )
+MOZ_LANGS+=( hy-AM )
+MOZ_LANGS+=( ia )
+MOZ_LANGS+=( km )
+MOZ_LANGS+=( kn )
+MOZ_LANGS+=( lij )
+MOZ_LANGS+=( mk )
+MOZ_LANGS+=( mr )
+MOZ_LANGS+=( my )
+MOZ_LANGS+=( ne-NP )
+MOZ_LANGS+=( oc )
+MOZ_LANGS+=( sc )
+MOZ_LANGS+=( sco )
+MOZ_LANGS+=( si )
+MOZ_LANGS+=( son )
+MOZ_LANGS+=( szl )
+MOZ_LANGS+=( ta )
+MOZ_LANGS+=( te )
+MOZ_LANGS+=( tl )
+MOZ_LANGS+=( trs )
+MOZ_LANGS+=( ur )
+MOZ_LANGS+=( xh )
+
+mozilla_set_globals() {
+ # https://bugs.gentoo.org/587334
+ local MOZ_TOO_REGIONALIZED_FOR_L10N=(
+ fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
+ )
+
+ local lang xflag
+ for lang in "${MOZ_LANGS[@]}" ; do
+ # en and en_US are handled internally
+ if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
+ continue
+ fi
+
+ # strip region subtag if $lang is in the list
+ if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
+ xflag=${lang%%-*}
+ else
+ xflag=${lang}
+ fi
+
+ SRC_URI+=" l10n_${xflag/[_@]/-}? ("
+ SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
+ SRC_URI+=" )"
+ IUSE+=" l10n_${xflag/[_@]/-}"
+ done
+}
+mozilla_set_globals
+
+moz_clear_vendor_checksums() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -ne 1 ]] ; then
+ die "${FUNCNAME} requires exact one argument"
+ fi
+
+ einfo "Clearing cargo checksums for ${1} ..."
+
+ sed -i \
+ -e 's/\("files":{\)[^}]*/\1/' \
+ "${S}"/third_party/rust/${1}/.cargo-checksum.json \
+ || die
+}
+
+moz_install_xpi() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 2 ]] ; then
+ die "${FUNCNAME} requires at least two arguments"
+ fi
+
+ local DESTDIR=${1}
+ shift
+
+ insinto "${DESTDIR}"
+
+ local emid xpi_file xpi_tmp_dir
+ for xpi_file in "${@}" ; do
+ emid=
+ xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
+
+ # Unpack XPI
+ unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
+
+ # Determine extension ID
+ if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
+ emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
+ [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
+ elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
+ emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
+ [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
+ else
+ die "failed to determine extension id"
+ fi
+
+ einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
+ newins "${xpi_file}" "${emid}.xpi"
+ done
+}
+
+mozconfig_add_options_ac() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 2 ]] ; then
+ die "${FUNCNAME} requires at least two arguments"
+ fi
+
+ local reason=${1}
+ shift
+
+ local option
+ for option in ${@} ; do
+ echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
+ done
+}
+
+mozconfig_add_options_mk() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 2 ]] ; then
+ die "${FUNCNAME} requires at least two arguments"
+ fi
+
+ local reason=${1}
+ shift
+
+ local option
+ for option in ${@} ; do
+ echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
+ done
+}
+
+mozconfig_use_enable() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 1 ]] ; then
+ die "${FUNCNAME} requires at least one arguments"
+ fi
+
+ local flag=$(use_enable "${@}")
+ mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
+}
+
+mozconfig_use_with() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 1 ]] ; then
+ die "${FUNCNAME} requires at least one arguments"
+ fi
+
+ local flag=$(use_with "${@}")
+ mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
+}
+
+# This is a straight copypaste from toolchain-funcs.eclass's 'tc-ld-is-lld', and is temporarily
+# placed here until toolchain-funcs.eclass gets an official support for mold linker.
+# Please see:
+# https://github.com/gentoo/gentoo/pull/28366 ||
+# https://github.com/gentoo/gentoo/pull/28355
+tc-ld-is-mold() {
+ local out
+
+ # Ensure ld output is in English.
+ local -x LC_ALL=C
+
+ # First check the linker directly.
+ out=$($(tc-getLD "$@") --version 2>&1)
+ if [[ ${out} == *"mold"* ]] ; then
+ return 0
+ fi
+
+ # Then see if they're selecting mold via compiler flags.
+ # Note: We're assuming they're using LDFLAGS to hold the
+ # options and not CFLAGS/CXXFLAGS.
+ local base="${T}/test-tc-linker"
+ cat <<-EOF > "${base}.c"
+ int main() { return 0; }
+ EOF
+ out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1)
+ rm -f "${base}"*
+ if [[ ${out} == *"mold"* ]] ; then
+ return 0
+ fi
+
+ # No mold here!
+ return 1
+}
+
+virtwl() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ [[ $# -lt 1 ]] && die "${FUNCNAME} needs at least one argument"
+ [[ -n $XDG_RUNTIME_DIR ]] || die "${FUNCNAME} needs XDG_RUNTIME_DIR to be set; try xdg_environment_reset"
+ tinywl -h >/dev/null || die 'tinywl -h failed'
+
+ local VIRTWL VIRTWL_PID
+ coproc VIRTWL { WLR_BACKENDS=headless exec tinywl -s 'echo $WAYLAND_DISPLAY; read _; kill $PPID'; }
+ local -x WAYLAND_DISPLAY
+ read WAYLAND_DISPLAY <&${VIRTWL[0]}
+
+ debug-print "${FUNCNAME}: $@"
+ "$@"
+ local r=$?
+
+ [[ -n $VIRTWL_PID ]] || die "tinywl exited unexpectedly"
+ exec {VIRTWL[0]}<&- {VIRTWL[1]}>&-
+ return $r
+}
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != binary ]] ; then
+ if use pgo ; then
+ if ! has usersandbox $FEATURES ; then
+ die "You must enable usersandbox as X server can not run as root!"
+ fi
+ fi
+
+ # Ensure we have enough disk space to compile
+ if use pgo || use lto || use debug ; then
+ CHECKREQS_DISK_BUILD="13500M"
+ else
+ CHECKREQS_DISK_BUILD="6600M"
+ fi
+
+ check-reqs_pkg_pretend
+ fi
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != binary ]] ; then
+ if use pgo ; then
+ if ! has userpriv ${FEATURES} ; then
+ eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
+ fi
+ fi
+
+ # Ensure we have enough disk space to compile
+ if use pgo || use lto || use debug ; then
+ CHECKREQS_DISK_BUILD="13500M"
+ else
+ CHECKREQS_DISK_BUILD="6400M"
+ fi
+
+ check-reqs_pkg_setup
+
+ llvm-r1_pkg_setup
+
+ if use clang && use lto && tc-ld-is-lld ; then
+ local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
+ [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
+ [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
+
+ local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
+ [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
+ [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
+
+ if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
+ eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
+ eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
+ eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
+ eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
+ eerror " - Build ${CATEGORY}/${PN} without USE=lto"
+ eerror " - Rebuild lld with llvm that was used to build rust (may need to rebuild the whole "
+ eerror " llvm/clang/lld/rust chain depending on your @world updates)"
+ die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
+ fi
+ fi
+
+ python-any-r1_pkg_setup
+
+ # Avoid PGO profiling problems due to enviroment leakage
+ # These should *always* be cleaned up anyway
+ unset \
+ DBUS_SESSION_BUS_ADDRESS \
+ DISPLAY \
+ ORBIT_SOCKETDIR \
+ SESSION_MANAGER \
+ XAUTHORITY \
+ XDG_CACHE_HOME \
+ XDG_SESSION_COOKIE
+
+ # Build system is using /proc/self/oom_score_adj, bug #604394
+ addpredict /proc/self/oom_score_adj
+
+ if use pgo ; then
+ # Update 105.0: "/proc/self/oom_score_adj" isn't enough anymore with pgo, but not sure
+ # whether that's due to better OOM handling by Firefox (bmo#1771712), or portage
+ # (PORTAGE_SCHEDULING_POLICY) update...
+ addpredict /proc
+
+ # Clear tons of conditions, since PGO is hardware-dependant.
+ addpredict /dev
+ fi
+
+ if ! mountpoint -q /dev/shm ; then
+ # If /dev/shm is not available, configure is known to fail with
+ # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
+ ewarn "/dev/shm is not mounted -- expect build failures!"
+ fi
+
+ # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
+ # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
+ # get your own set of keys.
+ if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
+ MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
+ fi
+
+ if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
+ MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
+ fi
+
+ # Mozilla API keys (see https://location.services.mozilla.com/api)
+ # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
+ # get your own set of keys.
+ if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
+ MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
+ fi
+
+ # Ensure we use C locale when building, bug #746215
+ export LC_ALL=C
+ fi
+
+ CONFIG_CHECK="~SECCOMP"
+ WARNING_SECCOMP="CONFIG_SECCOMP not set! This system will be unable to play DRM-protected content."
+ linux-info_pkg_setup
+}
+
+src_unpack() {
+ local _lp_dir="${WORKDIR}/language_packs"
+ local _src_file
+
+ if [[ ! -d "${_lp_dir}" ]] ; then
+ mkdir "${_lp_dir}" || die
+ fi
+
+ for _src_file in ${A} ; do
+ if [[ ${_src_file} == *.xpi ]]; then
+ cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
+ else
+ unpack ${_src_file}
+ fi
+ done
+}
+
+src_prepare() {
+ if use lto; then
+ rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch || die
+ fi
+
+ # Workaround for bgo#917599
+ if has_version ">=dev-libs/icu-74.1" && use system-icu ; then
+ eapply "${WORKDIR}"/firefox-patches/*-bmo-1862601-system-icu-74.patch
+ fi
+ rm -v "${WORKDIR}"/firefox-patches/*-bmo-1862601-system-icu-74.patch || die
+
+ # Workaround for bgo#915651 on musl
+ if use elibc_glibc ; then
+ rm -v "${WORKDIR}"/firefox-patches/*bgo-748849-RUST_TARGET_override.patch || die
+ fi
+
+ eapply "${WORKDIR}/firefox-patches"
+
+ # Allow user to apply any additional patches without modifing ebuild
+ eapply_user
+
+ # Make cargo respect MAKEOPTS
+ export CARGO_BUILD_JOBS="$(makeopts_jobs)"
+
+ # Workaround for bgo#915651
+ if ! use elibc_glibc ; then
+ if use amd64 ; then
+ export RUST_TARGET="x86_64-unknown-linux-musl"
+ elif use x86 ; then
+ export RUST_TARGET="i686-unknown-linux-musl"
+ elif use arm64 ; then
+ export RUST_TARGET="aarch64-unknown-linux-musl"
+ else
+ die "Unknown musl chost, please post your rustc -vV along with emerge --info on Gentoo's bug #915651"
+ fi
+ fi
+
+ # Make LTO respect MAKEOPTS
+ sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/build/moz.configure/lto-pgo.configure || die "Failed sedding multiprocessing.cpu_count"
+
+ # Make ICU respect MAKEOPTS
+ sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/intl/icu_sources_data.py || die "Failed sedding multiprocessing.cpu_count"
+
+ # Respect MAKEOPTS all around (maybe some find+sed is better)
+ sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/python/mozbuild/mozbuild/base.py || die "Failed sedding multiprocessing.cpu_count"
+
+ sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/third_party/libwebrtc/build/toolchain/get_cpu_count.py || die "Failed sedding multiprocessing.cpu_count"
+
+ sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/third_party/libwebrtc/build/toolchain/get_concurrent_links.py || die "Failed sedding multiprocessing.cpu_count"
+
+ sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/third_party/python/gyp/pylib/gyp/input.py || die "Failed sedding multiprocessing.cpu_count"
+
+ sed -i -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/python/mozbuild/mozbuild/code_analysis/mach_commands.py || die "Failed sedding multiprocessing.cpu_count"
+
+ # sed-in toolchain prefix
+ sed -i \
+ -e "s/objdump/${CHOST}-objdump/" \
+ "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
+ || die "sed failed to set toolchain prefix"
+
+ sed -i \
+ -e 's/ccache_stats = None/return None/' \
+ "${S}"/python/mozbuild/mozbuild/controller/building.py \
+ || die "sed failed to disable ccache stats call"
+
+ einfo "Removing pre-built binaries ..."
+
+ find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
+
+ # Clear checksums from cargo crates we've manually patched.
+ # moz_clear_vendor_checksums xyz
+ moz_clear_vendor_checksums proc-macro2
+
+ # Respect choice for "jumbo-build"
+ # Changing the value for FILES_PER_UNIFIED_FILE may not work, see #905431
+ if [[ -n ${FILES_PER_UNIFIED_FILE} ]] && use jumbo-build; then
+ local my_files_per_unified_file=${FILES_PER_UNIFIED_FILE:=16}
+ elog ""
+ elog "jumbo-build defaults modified to ${my_files_per_unified_file}."
+ elog "if you get a build failure, try undefining FILES_PER_UNIFIED_FILE,"
+ elog "if that fails try -jumbo-build before opening a bug report."
+ elog ""
+
+ sed -i -e "s/\"FILES_PER_UNIFIED_FILE\", 16/\"FILES_PER_UNIFIED_FILE\", "${my_files_per_unified_file}"/" python/mozbuild/mozbuild/frontend/data.py ||
+ die "Failed to adjust FILES_PER_UNIFIED_FILE in python/mozbuild/mozbuild/frontend/data.py"
+ sed -i -e "s/FILES_PER_UNIFIED_FILE = 6/FILES_PER_UNIFIED_FILE = "${my_files_per_unified_file}"/" js/src/moz.build ||
+ die "Failed to adjust FILES_PER_UNIFIED_FILE in js/src/moz.build"
+ fi
+
+ # Create build dir
+ BUILD_DIR="${WORKDIR}/${PN}_build"
+ mkdir -p "${BUILD_DIR}" || die
+
+ # Write API keys to disk
+ echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
+ echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
+ echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
+
+ xdg_environment_reset
+}
+
+src_configure() {
+ # Show flags set at the beginning
+ einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
+ einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
+ einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
+ einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
+ einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
+
+ local have_switched_compiler=
+ if use clang; then
+ # Force clang
+ einfo "Enforcing the use of clang due to USE=clang ..."
+
+ local version_clang=$(clang --version 2>/dev/null | grep -F -- 'clang version' | awk '{ print $3 }')
+ [[ -n ${version_clang} ]] && version_clang=$(ver_cut 1 "${version_clang}")
+ [[ -z ${version_clang} ]] && die "Failed to read clang version!"
+
+ if tc-is-gcc; then
+ have_switched_compiler=yes
+ fi
+
+ AR=llvm-ar
+ CC=${CHOST}-clang-${version_clang}
+ CXX=${CHOST}-clang++-${version_clang}
+ NM=llvm-nm
+ RANLIB=llvm-ranlib
+ elif ! use clang && ! tc-is-gcc ; then
+ # Force gcc
+ have_switched_compiler=yes
+ einfo "Enforcing the use of gcc due to USE=-clang ..."
+ AR=gcc-ar
+ CC=${CHOST}-gcc
+ CXX=${CHOST}-g++
+ NM=gcc-nm
+ RANLIB=gcc-ranlib
+ fi
+
+ if [[ -n "${have_switched_compiler}" ]] ; then
+ # Because we switched active compiler we have to ensure
+ # that no unsupported flags are set
+ strip-unsupported-flags
+ fi
+
+ # Ensure we use correct toolchain,
+ # AS is used in a non-standard way by upstream, #bmo1654031
+ export HOST_CC="$(tc-getBUILD_CC)"
+ export HOST_CXX="$(tc-getBUILD_CXX)"
+ export AS="$(tc-getCC) -c"
+
+ # Configuration tests expect llvm-readelf output, bug 913130
+ READELF="llvm-readelf"
+
+ tc-export CC CXX LD AR AS NM OBJDUMP RANLIB READELF PKG_CONFIG
+
+ # Pass the correct toolchain paths through cbindgen
+ if tc-is-cross-compiler ; then
+ export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
+ fi
+
+ # Set MOZILLA_FIVE_HOME
+ export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
+
+ # python/mach/mach/mixin/process.py fails to detect SHELL
+ export SHELL="${EPREFIX}/bin/bash"
+
+ # Set state path
+ export MOZBUILD_STATE_PATH="${BUILD_DIR}"
+
+ # Set MOZCONFIG
+ export MOZCONFIG="${S}/.mozconfig"
+
+ # Initialize MOZCONFIG
+ mozconfig_add_options_ac '' --enable-application=browser
+ mozconfig_add_options_ac '' --enable-project=browser
+
+ # Set Gentoo defaults
+ if use telemetry; then
+ export MOZILLA_OFFICIAL=1
+ fi
+
+ mozconfig_add_options_ac 'Gentoo default' \
+ --allow-addon-sideload \
+ --disable-cargo-incremental \
+ --disable-crashreporter \
+ --disable-disk-remnant-avoidance \
+ --disable-gpsd \
+ --disable-install-strip \
+ --disable-legacy-profile-creation \
+ --disable-parental-controls \
+ --disable-strip \
+ --disable-tests \
+ --disable-updater \
+ --disable-wmf \
+ --enable-negotiateauth \
+ --enable-new-pass-manager \
+ --enable-official-branding \
+ --enable-release \
+ --enable-system-ffi \
+ --enable-system-pixman \
+ --enable-system-policies \
+ --host="${CBUILD:-${CHOST}}" \
+ --libdir="${EPREFIX}/usr/$(get_libdir)" \
+ --prefix="${EPREFIX}/usr" \
+ --target="${CHOST}" \
+ --without-ccache \
+ --without-wasm-sandboxed-libraries \
+ --with-intl-api \
+ --with-libclang-path="$(llvm-config --libdir)" \
+ --with-system-nspr \
+ --with-system-nss \
+ --with-system-zlib \
+ --with-toolchain-prefix="${CHOST}-" \
+ --with-unsigned-addon-scopes=app,system \
+ --x-includes="${ESYSROOT}/usr/include" \
+ --x-libraries="${ESYSROOT}/usr/$(get_libdir)"
+
+ # Set update channel
+ local update_channel=release
+ [[ -n ${MOZ_ESR} ]] && update_channel=esr
+ mozconfig_add_options_ac '' --update-channel=${update_channel}
+
+ if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
+ mozconfig_add_options_ac '' --enable-rust-simd
+ fi
+
+ # For future keywording: This is currently (97.0) only supported on:
+ # amd64, arm, arm64 & x86.
+ # Might want to flip the logic around if Firefox is to support more arches.
+ # bug 833001, bug 903411#c8
+ if use ppc64 || use riscv; then
+ mozconfig_add_options_ac '' --disable-sandbox
+ elif use valgrind; then
+ mozconfig_add_options_ac 'valgrind requirement' --disable-sandbox
+ else
+ mozconfig_add_options_ac '' --enable-sandbox
+ fi
+
+ # Enable JIT on riscv64 explicitly
+ # Can be removed once upstream enable it by default in the future.
+ use riscv && mozconfig_add_options_ac 'Enable JIT for RISC-V 64' --enable-jit
+
+ if [[ -s "${S}/api-google.key" ]] ; then
+ local key_origin="Gentoo default"
+ if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
+ key_origin="User value"
+ fi
+
+ mozconfig_add_options_ac "${key_origin}" \
+ --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
+ else
+ einfo "Building without Google API key ..."
+ fi
+
+ if [[ -s "${S}/api-location.key" ]] ; then
+ local key_origin="Gentoo default"
+ if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
+ key_origin="User value"
+ fi
+
+ mozconfig_add_options_ac "${key_origin}" \
+ --with-google-location-service-api-keyfile="${S}/api-location.key"
+ else
+ einfo "Building without Location API key ..."
+ fi
+
+ if [[ -s "${S}/api-mozilla.key" ]] ; then
+ local key_origin="Gentoo default"
+ if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
+ key_origin="User value"
+ fi
+
+ mozconfig_add_options_ac "${key_origin}" \
+ --with-mozilla-api-keyfile="${S}/api-mozilla.key"
+ else
+ einfo "Building without Mozilla API key ..."
+ fi
+
+ mozconfig_use_with system-av1
+ mozconfig_use_with system-harfbuzz
+ mozconfig_use_with system-harfbuzz system-graphite2
+ mozconfig_use_with system-icu
+ mozconfig_use_with system-jpeg
+ mozconfig_use_with system-libevent
+ mozconfig_use_with system-libvpx
+ mozconfig_use_with system-png
+ mozconfig_use_with system-webp
+
+ mozconfig_use_enable dbus
+ mozconfig_use_enable libproxy
+ mozconfig_use_enable valgrind
+
+ use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
+
+ mozconfig_use_enable geckodriver
+
+ if use hardened ; then
+ mozconfig_add_options_ac "+hardened" --enable-hardening
+ append-ldflags "-Wl,-z,relro -Wl,-z,now"
+
+ # Increase the FORTIFY_SOURCE value, #910071.
+ sed -i -e '/-D_FORTIFY_SOURCE=/s:2:3:' "${S}"/build/moz.configure/toolchain.configure || die
+ fi
+
+ local myaudiobackends=""
+ use jack && myaudiobackends+="jack,"
+ use sndio && myaudiobackends+="sndio,"
+ use pulseaudio && myaudiobackends+="pulseaudio,"
+ ! use pulseaudio && myaudiobackends+="alsa,"
+
+ mozconfig_add_options_ac '--enable-audio-backends' --enable-audio-backends="${myaudiobackends::-1}"
+
+ mozconfig_use_enable wifi necko-wifi
+
+ ! use jumbo-build && mozconfig_add_options_ac '--disable-unified-build' --disable-unified-build
+
+ if use X && use wayland ; then
+ mozconfig_add_options_ac '+x11+wayland' --enable-default-toolkit=cairo-gtk3-x11-wayland
+ elif ! use X && use wayland ; then
+ mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland-only
+ else
+ mozconfig_add_options_ac '+x11' --enable-default-toolkit=cairo-gtk3-x11-only
+ fi
+
+ # LTO is handled via configure
+ filter-lto
+
+ if use lto ; then
+ if use clang ; then
+ # Upstream only supports lld or mold when using clang.
+ if tc-ld-is-mold ; then
+ # mold expects the -flto line from *FLAGS configuration, bgo#923119
+ append-ldflags "-flto=thin"
+ mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
+ else
+ mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
+ fi
+
+ mozconfig_add_options_ac '+lto' --enable-lto=cross
+
+ else
+ # ThinLTO is currently broken, see bmo#1644409.
+ # mold does not support gcc+lto combination.
+ mozconfig_add_options_ac '+lto' --enable-lto=full
+ mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
+ fi
+
+ if use pgo ; then
+ mozconfig_add_options_ac '+pgo' MOZ_PGO=1
+
+ if use clang ; then
+ # Used in build/pgo/profileserver.py
+ export LLVM_PROFDATA="llvm-profdata"
+ fi
+ fi
+ else
+ # Avoid auto-magic on linker
+ if use clang ; then
+ # lld is upstream's default
+ if tc-ld-is-mold ; then
+ mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
+ else
+ mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
+ fi
+
+ else
+ if tc-ld-is-mold ; then
+ mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
+ else
+ mozconfig_add_options_ac "linker is set to bfd due to USE=-clang" --enable-linker=bfd
+ fi
+ fi
+ fi
+
+ mozconfig_use_enable debug
+ if use debug ; then
+ mozconfig_add_options_ac '+debug' --disable-optimize
+ mozconfig_add_options_ac '+debug' --enable-real-time-tracing
+ else
+ mozconfig_add_options_ac 'Gentoo defaults' --disable-real-time-tracing
+
+ if is-flag '-g*' ; then
+ if use clang ; then
+ mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
+ else
+ mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
+ fi
+ else
+ mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
+ fi
+
+ if is-flag '-O0' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
+ elif is-flag '-O4' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
+ elif is-flag '-O3' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
+ elif is-flag '-O1' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
+ elif is-flag '-Os' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
+ else
+ mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
+ fi
+ fi
+
+ # Debug flag was handled via configure
+ filter-flags '-g*'
+
+ # Optimization flag was handled via configure
+ filter-flags '-O*'
+
+ # Modifications to better support ARM, bug #553364
+ if use cpu_flags_arm_neon ; then
+ mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
+
+ if ! tc-is-clang ; then
+ # thumb options aren't supported when using clang, bug 666966
+ mozconfig_add_options_ac '+cpu_flags_arm_neon' \
+ --with-thumb=yes \
+ --with-thumb-interwork=no
+ fi
+ fi
+
+ if [[ ${CHOST} == armv*h* ]] ; then
+ mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
+
+ if ! use system-libvpx ; then
+ sed -i \
+ -e "s|softfp|hard|" \
+ "${S}"/media/libvpx/moz.build \
+ || die
+ fi
+ fi
+
+ # elf-hack
+ # Filter "-z,pack-relative-relocs" and let the build system handle it instead.
+ if use amd64 || use x86 ; then
+ filter-flags "-z,pack-relative-relocs"
+
+ if tc-ld-is-mold ; then
+ # relr-elf-hack is currently broken with mold, bgo#916259
+ mozconfig_add_options_ac 'disable elf-hack with mold linker' --disable-elf-hack
+ else
+ mozconfig_add_options_ac 'relr elf-hack' --enable-elf-hack=relr
+ fi
+ elif use ppc64 || use riscv ; then
+ # '--disable-elf-hack' is not recognized on ppc64/riscv,
+ # see bgo #917049, #930046
+ :;
+ else
+ mozconfig_add_options_ac 'disable elf-hack on non-supported arches' --disable-elf-hack
+ fi
+
+ # Additional ARCH support
+ case "${ARCH}" in
+ arm)
+ # Reduce the memory requirements for linking
+ if use clang ; then
+ # Nothing to do
+ :;
+ elif use lto ; then
+ append-ldflags -Wl,--no-keep-memory
+ else
+ append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
+ fi
+ ;;
+ esac
+
+ if ! use elibc_glibc; then
+ mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
+ fi
+
+ if use valgrind; then
+ mozconfig_add_options_ac 'valgrind requirement' --disable-jemalloc
+ fi
+
+ # System-av1 fix
+ use system-av1 && append-ldflags "-Wl,--undefined-version"
+
+ # Allow elfhack to work in combination with unstripped binaries
+ # when they would normally be larger than 2GiB.
+ append-ldflags "-Wl,--compress-debug-sections=zlib"
+
+ # Make revdep-rebuild.sh happy; Also required for musl
+ append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
+
+ # Pass $MAKEOPTS to build system
+ export MOZ_MAKE_FLAGS="${MAKEOPTS}"
+
+ # Use system's Python environment
+ export PIP_NETWORK_INSTALL_RESTRICTED_VIRTUALENVS=mach
+
+ export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE="none"
+
+ if ! use telemetry; then
+ mozconfig_add_options_mk '-telemetry setting' "MOZ_CRASHREPORTER=0"
+ mozconfig_add_options_mk '-telemetry setting' "MOZ_DATA_REPORTING=0"
+ mozconfig_add_options_mk '-telemetry setting' "MOZ_SERVICES_HEALTHREPORT=0"
+ mozconfig_add_options_mk '-telemetry setting' "MOZ_TELEMETRY_REPORTING=0"
+ fi
+
+ # Disable notification when build system has finished
+ export MOZ_NOSPAM=1
+
+ # Portage sets XARGS environment variable to "xargs -r" by default which
+ # breaks build system's check_prog() function which doesn't support arguments
+ mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
+
+ # Set build dir
+ mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
+
+ # Show flags we will use
+ einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
+ einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
+ einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
+ einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
+ einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
+
+ # Handle EXTRA_CONF and show summary
+ local ac opt hash reason
+
+ # Apply EXTRA_ECONF entries to $MOZCONFIG
+ if [[ -n ${EXTRA_ECONF} ]] ; then
+ IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
+ for opt in "${ac[@]}"; do
+ mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
+ done
+ fi
+
+ echo
+ echo "=========================================================="
+ echo "Building ${PF} with the following configuration"
+ grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
+ [[ -z ${hash} || ${hash} == \# ]] \
+ || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
+ printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
+ done
+ echo "=========================================================="
+ echo
+
+ if use valgrind; then
+ sed -i -e 's/--enable-optimize=-O[0-9s]/--enable-optimize="-g -O2"/' .mozconfig || die
+ fi
+
+ ./mach configure || die
+}
+
+src_compile() {
+ local virtx_cmd=
+
+ if tc-ld-is-mold && use lto; then
+ # increase ulimit with mold+lto, bugs #892641, #907485
+ if ! ulimit -n 16384 1>/dev/null 2>&1 ; then
+ ewarn "Unable to modify ulimits - building with mold+lto might fail due to low ulimit -n resources."
+ ewarn "Please see bugs #892641 & #907485."
+ else
+ ulimit -n 16384
+ fi
+ fi
+
+ if use pgo; then
+ # Reset and cleanup environment variables used by GNOME/XDG
+ gnome2_environment_reset
+
+ addpredict /root
+
+ if ! use X; then
+ virtx_cmd=virtwl
+ else
+ virtx_cmd=virtx
+ fi
+ fi
+
+ if ! use X; then
+ local -x GDK_BACKEND=wayland
+ else
+ local -x GDK_BACKEND=x11
+ fi
+
+ ${virtx_cmd} ./mach build --verbose || die
+}
+
+src_install() {
+ # xpcshell is getting called during install
+ pax-mark m \
+ "${BUILD_DIR}"/dist/bin/xpcshell \
+ "${BUILD_DIR}"/dist/bin/${PN} \
+ "${BUILD_DIR}"/dist/bin/plugin-container
+
+ DESTDIR="${D}" ./mach install || die
+
+ # Upstream cannot ship symlink but we can (bmo#658850)
+ rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
+ dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
+
+ # Don't install llvm-symbolizer from sys-devel/llvm package
+ if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
+ rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
+ fi
+
+ # Install policy (currently only used to disable application updates)
+ insinto "${MOZILLA_FIVE_HOME}/distribution"
+ newins "${FILESDIR}"/distribution.ini distribution.ini
+ newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
+
+ # Install system-wide preferences
+ local PREFS_DIR="${MOZILLA_FIVE_HOME}/browser/defaults/preferences"
+ insinto "${PREFS_DIR}"
+ newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js
+
+ local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js"
+
+ # Set dictionary path to use system hunspell
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
+ pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
+ EOF
+
+ # Force hwaccel prefs if USE=hwaccel is enabled
+ if use hwaccel ; then
+ cat "${FILESDIR}"/gentoo-hwaccel-prefs.js-r2 \
+ >>"${GENTOO_PREFS}" \
+ || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
+
+ if use wayland; then
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel wayland prefs"
+ pref("gfx.x11-egl.force-enabled", false);
+ EOF
+ else
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set hwaccel x11 prefs"
+ pref("gfx.x11-egl.force-enabled", true);
+ EOF
+ fi
+
+ # Install the vaapitest binary on supported arches (122.0 supports all platforms, bmo#1865969)
+ exeinto "${MOZILLA_FIVE_HOME}"
+ doexe "${BUILD_DIR}"/dist/bin/vaapitest
+
+ # Install the v4l2test on supported arches (+ arm, + riscv64 when keyworded)
+ if use arm64 ; then
+ exeinto "${MOZILLA_FIVE_HOME}"
+ doexe "${BUILD_DIR}"/dist/bin/v4l2test
+ fi
+ fi
+
+ if ! use gmp-autoupdate ; then
+ local plugin
+ for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
+ einfo "Disabling auto-update for ${plugin} plugin ..."
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to disable autoupdate for ${plugin} media plugin"
+ pref("media.${plugin}.autoupdate", false);
+ EOF
+ done
+ fi
+
+ # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
+ if use system-harfbuzz ; then
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
+ sticky_pref("gfx.font_rendering.graphite.enabled", true);
+ EOF
+ fi
+
+ # Install language packs
+ local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
+ if [[ -n "${langpacks}" ]] ; then
+ moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
+ fi
+
+ # Install geckodriver
+ if use geckodriver ; then
+ einfo "Installing geckodriver into ${ED}${MOZILLA_FIVE_HOME} ..."
+ pax-mark m "${BUILD_DIR}"/dist/bin/geckodriver
+ exeinto "${MOZILLA_FIVE_HOME}"
+ doexe "${BUILD_DIR}"/dist/bin/geckodriver
+
+ dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
+ fi
+
+ # Install icons
+ local icon_srcdir="${S}/browser/branding/official"
+ local icon_symbolic_file="${FILESDIR}/icon/firefox-symbolic.svg"
+
+ insinto /usr/share/icons/hicolor/symbolic/apps
+ newins "${icon_symbolic_file}" ${PN}-symbolic.svg
+
+ local icon size
+ for icon in "${icon_srcdir}"/default*.png ; do
+ size=${icon%.png}
+ size=${size##*/default}
+
+ if [[ ${size} -eq 48 ]] ; then
+ newicon "${icon}" ${PN}.png
+ fi
+
+ newicon -s ${size} "${icon}" ${PN}.png
+ done
+
+ # Install menu
+ local app_name="Mozilla ${MOZ_PN^}"
+ local desktop_file="${FILESDIR}/icon/${PN}-r3.desktop"
+ local desktop_filename="${PN}.desktop"
+ local exec_command="${PN}"
+ local icon="${PN}"
+ local use_wayland="false"
+
+ if use wayland ; then
+ use_wayland="true"
+ fi
+
+ cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
+
+ sed -i \
+ -e "s:@NAME@:${app_name}:" \
+ -e "s:@EXEC@:${exec_command}:" \
+ -e "s:@ICON@:${icon}:" \
+ "${WORKDIR}/${PN}.desktop-template" \
+ || die
+
+ newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
+
+ rm "${WORKDIR}/${PN}.desktop-template" || die
+
+ # Install wrapper script
+ [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
+ newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
+
+ # Update wrapper
+ sed -i \
+ -e "s:@PREFIX@:${EPREFIX}/usr:" \
+ -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
+ -e "s:@APULSELIB_DIR@:${apulselib}:" \
+ -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
+ "${ED}/usr/bin/${PN}" \
+ || die
+
+ readme.gentoo_create_doc
+}
+
+pkg_preinst() {
+ xdg_pkg_preinst
+
+ # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
+ # does not need to be forced into the LD_LIBRARY_PATH
+ if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
+ einfo "APULSE found; Generating library symlinks for sound support ..."
+ local lib
+ pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die
+ for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
+ # A quickpkg rolled by hand will grab symlinks as part of the package,
+ # so we need to avoid creating them if they already exist.
+ if [[ ! -L ${lib##*/} ]] ; then
+ ln -s "${lib}" ${lib##*/} || die
+ fi
+ done
+ popd &>/dev/null || die
+ fi
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ if ! use gmp-autoupdate ; then
+ elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
+ elog "installing into new profiles:"
+ local plugin
+ for plugin in "${MOZ_GMP_PLUGIN_LIST[@]}" ; do
+ elog "\t ${plugin}"
+ done
+ elog
+ fi
+
+ if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
+ elog "Apulse was detected at merge time on this system and so it will always be"
+ elog "used for sound. If you wish to use pulseaudio instead please unmerge"
+ elog "media-sound/apulse."
+ elog
+ fi
+
+ # bug 835078
+ if use hwaccel && has_version "x11-drivers/xf86-video-nouveau"; then
+ ewarn "You have nouveau drivers installed in your system and 'hwaccel' "
+ ewarn "enabled for Firefox. Nouveau / your GPU might not support the "
+ ewarn "required EGL, so either disable 'hwaccel' or try the workaround "
+ ewarn "explained in https://bugs.gentoo.org/835078#c5 if Firefox crashes."
+ fi
+
+ readme.gentoo_print_elog
+
+ optfeature_header "Optional programs for extra features:"
+ optfeature "desktop notifications" x11-libs/libnotify
+ optfeature "fallback mouse cursor theme e.g. on WMs" gnome-base/gsettings-desktop-schemas
+ optfeature "screencasting with pipewire" sys-apps/xdg-desktop-portal
+ if use hwaccel && has_version "x11-drivers/nvidia-drivers"; then
+ optfeature "hardware acceleration with NVIDIA cards" media-libs/nvidia-vaapi-driver
+ fi
+
+ if ! has_version "sys-libs/glibc"; then
+ elog
+ elog "glibc not found! You won't be able to play DRM content."
+ elog "See Gentoo bug #910309 or upstream bug #1843683."
+ elog
+ fi
+
+ if use geckodriver ; then
+ ewarn "You have enabled the 'geckodriver' USE flag. Geckodriver is now"
+ ewarn "packaged separately as net-misc/geckodriver and the use flag will be"
+ ewarn "dropped from main Firefox package by Firefox 128.0 release."
+ fi
+}
diff --git a/www-client/google-chrome-beta/Manifest b/www-client/google-chrome-beta/Manifest
index 70b033aeeddd..051f0da7cc66 100644
--- a/www-client/google-chrome-beta/Manifest
+++ b/www-client/google-chrome-beta/Manifest
@@ -1,3 +1,3 @@
-DIST google-chrome-beta_125.0.6422.14-1_amd64.deb 108113440 BLAKE2B 7fa0a315794e4145e46c5f326a821cc749b06e5ceb81ece147fafc951010d7bf16ab70cba3c6c742c806fc856f85d8392a9c6c5d247d27ef2f7c0c4f96e61a11 SHA512 233926123ef4810420ef8ad19899388cbb35e5e54f39a869bf6a9f01892c90429fba0c89f1ad177139188bfb449302f17454a3b5927f779a774f550c74d772ae
-EBUILD google-chrome-beta-125.0.6422.14.ebuild 2983 BLAKE2B c0683d291bd6459daf64a35c34b4d56824b1c1119afe758af8bc18dc2a3625f16c5e94b4a137a8fd5b7673d36d3b6e559df17269ad3dce405643edb809137e10 SHA512 b00a89fbd7d0d9dd1a999ae2b01b7aec9ad2b6e7b9bde8727e22b9a35769da5ed7fe351fcca6681e02007380662b0688a2990f205b1dfed8effb91d991ab21d4
+DIST google-chrome-beta_125.0.6422.41-1_amd64.deb 107647192 BLAKE2B 23111d29ccc762e344eb8e23b797f82db7ee38517461079635c97179fcd99733c3df4b4c4777b9ff1d2ff698f7a1a77696e759c2b2aab961deb2db3e49d56d7b SHA512 a95c001baf3332c6cf8ce241eca402806dc18b26adf486b4870076fe4b4301177bc4da7a76dc9ff9dc9b80852bdea1748d9c348872dfd209b6c7e825befd3901
+EBUILD google-chrome-beta-125.0.6422.41.ebuild 2983 BLAKE2B c0683d291bd6459daf64a35c34b4d56824b1c1119afe758af8bc18dc2a3625f16c5e94b4a137a8fd5b7673d36d3b6e559df17269ad3dce405643edb809137e10 SHA512 b00a89fbd7d0d9dd1a999ae2b01b7aec9ad2b6e7b9bde8727e22b9a35769da5ed7fe351fcca6681e02007380662b0688a2990f205b1dfed8effb91d991ab21d4
MISC metadata.xml 437 BLAKE2B 35ab5a754d8e65db84e25b08c76bed923c2f9eb1b1d65687dda842313b5f339c90cbb3eb8fe12ecb58f201383955ad8f72a5b34484265194a3fcffcf760122ef SHA512 82e6057b085e849bc5484b53fef974022bb9db33836502e8d54fca3c8f54f47768f9b0ed4591d90a444e82142e727d4e4071236b114705f91c005f170b2a3986
diff --git a/www-client/google-chrome-beta/google-chrome-beta-125.0.6422.14.ebuild b/www-client/google-chrome-beta/google-chrome-beta-125.0.6422.41.ebuild
index dd9e9c497aea..dd9e9c497aea 100644
--- a/www-client/google-chrome-beta/google-chrome-beta-125.0.6422.14.ebuild
+++ b/www-client/google-chrome-beta/google-chrome-beta-125.0.6422.41.ebuild
diff --git a/www-client/google-chrome-unstable/Manifest b/www-client/google-chrome-unstable/Manifest
index 173d9f2e5b31..9794a10da372 100644
--- a/www-client/google-chrome-unstable/Manifest
+++ b/www-client/google-chrome-unstable/Manifest
@@ -1,3 +1,3 @@
-DIST google-chrome-unstable_126.0.6423.2-1_amd64.deb 107780680 BLAKE2B 7e0a86cc9c315768aa9bd4dba7e682bddc2f2a21a2ff0cf5528113e7f4ee9f05b16cf8b63fdeae8c933b7e006b933072d700db2f7767f3a215c51b2169c8ea3e SHA512 c79f5bf7865aa64cc304051bdad3590c9b625d0599f6c3215b742306a1a00fa9a5b31ecca17f2bed0d265aeb62431035ad8a9a506d7cd8ebbb1a0ef9537ab545
-EBUILD google-chrome-unstable-126.0.6423.2.ebuild 2983 BLAKE2B c0683d291bd6459daf64a35c34b4d56824b1c1119afe758af8bc18dc2a3625f16c5e94b4a137a8fd5b7673d36d3b6e559df17269ad3dce405643edb809137e10 SHA512 b00a89fbd7d0d9dd1a999ae2b01b7aec9ad2b6e7b9bde8727e22b9a35769da5ed7fe351fcca6681e02007380662b0688a2990f205b1dfed8effb91d991ab21d4
+DIST google-chrome-unstable_126.0.6468.2-1_amd64.deb 108764328 BLAKE2B dd8f624399477a8b14f45e1a3cf013cd7d7c8d76c385b1638e556a583f2979e67eb91748f760d7cd9aeb568d81608bc5c93021f7ec7ee14e70e57163d8778303 SHA512 2a08594305469e0a64856e1f875d63bd2d190040da610beb643011e401c81bcbc0875928d88b03828890c4d7aeb666612944947205a21379dfc91e7ebeda3902
+EBUILD google-chrome-unstable-126.0.6468.2.ebuild 2983 BLAKE2B c0683d291bd6459daf64a35c34b4d56824b1c1119afe758af8bc18dc2a3625f16c5e94b4a137a8fd5b7673d36d3b6e559df17269ad3dce405643edb809137e10 SHA512 b00a89fbd7d0d9dd1a999ae2b01b7aec9ad2b6e7b9bde8727e22b9a35769da5ed7fe351fcca6681e02007380662b0688a2990f205b1dfed8effb91d991ab21d4
MISC metadata.xml 437 BLAKE2B 35ab5a754d8e65db84e25b08c76bed923c2f9eb1b1d65687dda842313b5f339c90cbb3eb8fe12ecb58f201383955ad8f72a5b34484265194a3fcffcf760122ef SHA512 82e6057b085e849bc5484b53fef974022bb9db33836502e8d54fca3c8f54f47768f9b0ed4591d90a444e82142e727d4e4071236b114705f91c005f170b2a3986
diff --git a/www-client/google-chrome-unstable/google-chrome-unstable-126.0.6423.2.ebuild b/www-client/google-chrome-unstable/google-chrome-unstable-126.0.6468.2.ebuild
index dd9e9c497aea..dd9e9c497aea 100644
--- a/www-client/google-chrome-unstable/google-chrome-unstable-126.0.6423.2.ebuild
+++ b/www-client/google-chrome-unstable/google-chrome-unstable-126.0.6468.2.ebuild
diff --git a/www-client/google-chrome/Manifest b/www-client/google-chrome/Manifest
index f15ea638ca18..d97d143d36eb 100644
--- a/www-client/google-chrome/Manifest
+++ b/www-client/google-chrome/Manifest
@@ -1,3 +1,3 @@
-DIST google-chrome-stable_124.0.6367.78-1_amd64.deb 106978272 BLAKE2B 0e19fac29f608094d2f665340a2971e0a687334874f1cfec336072e9854637bedb5d465d24e323c6c196dae87851cb8c5370fd10ec432efa505c04d20a66ac97 SHA512 1afe013e0dc7b6a2d0548bd111b41babbaf9a18208dac2826ee0893f3597d434b0a4de11ef805f8ca4b1930e5d27e44a4d176cc31326c6420d9ba0388c2ee7f6
-EBUILD google-chrome-124.0.6367.78.ebuild 2982 BLAKE2B 94c28a910834b70ccfa642f6e5372dce9e534bf5b9c210516958e8cd96c4b8e042d360a9fa5c85d13cbe4b152a26b7751f5f87ab832002fe21e83f2cdf03f47e SHA512 23c9d78446da4b7ceef659dd659af367733abb766207e343fc991122d13744e3d67b0919d9d6371df5fc43815301c062087e1ce8d685e41ad0613e352b8c96ee
+DIST google-chrome-stable_125.0.6422.60-1_amd64.deb 107627312 BLAKE2B bf85a45a7c5215eb4be4f5949ead8efd310cad7f89f7eb8ffc044ec886914469b7ba2504baca4ff38f2c1973ec4f3db58c8f280a8979f9c36e20e457c608dfc3 SHA512 9e2f6d31f025111525c162de0b8b278202aab1db16a611292b14a174c1f4baeb47815fc9aaff02d638d04705e81afd6a6e627c7be1cc18546b32a3c3659a2feb
+EBUILD google-chrome-125.0.6422.60.ebuild 2982 BLAKE2B 94c28a910834b70ccfa642f6e5372dce9e534bf5b9c210516958e8cd96c4b8e042d360a9fa5c85d13cbe4b152a26b7751f5f87ab832002fe21e83f2cdf03f47e SHA512 23c9d78446da4b7ceef659dd659af367733abb766207e343fc991122d13744e3d67b0919d9d6371df5fc43815301c062087e1ce8d685e41ad0613e352b8c96ee
MISC metadata.xml 437 BLAKE2B 35ab5a754d8e65db84e25b08c76bed923c2f9eb1b1d65687dda842313b5f339c90cbb3eb8fe12ecb58f201383955ad8f72a5b34484265194a3fcffcf760122ef SHA512 82e6057b085e849bc5484b53fef974022bb9db33836502e8d54fca3c8f54f47768f9b0ed4591d90a444e82142e727d4e4071236b114705f91c005f170b2a3986
diff --git a/www-client/google-chrome/google-chrome-124.0.6367.78.ebuild b/www-client/google-chrome/google-chrome-125.0.6422.60.ebuild
index a6673ff33b80..a6673ff33b80 100644
--- a/www-client/google-chrome/google-chrome-124.0.6367.78.ebuild
+++ b/www-client/google-chrome/google-chrome-125.0.6422.60.ebuild
diff --git a/www-client/lynx/Manifest b/www-client/lynx/Manifest
index bcd18dbde471..c978458debd4 100644
--- a/www-client/lynx/Manifest
+++ b/www-client/lynx/Manifest
@@ -6,7 +6,7 @@ DIST lynx2.9.0.tar.bz2 2781819 BLAKE2B 4380d46f28254bda241daae81c2072cd987cdbb4f
DIST lynx2.9.0.tar.bz2.asc 729 BLAKE2B 3221a794194554bd7b6fa577e9455a034802de715e93a9b0046ec4d9e367f0bf3a92b5780a7026c2a4a10cab8076d63964fe02f09bafea4f8fab08b27e3c7f6a SHA512 f08e46bf960a54656045d0874a3dd9811511589147bfe764efce43f87eb62d4a3e448b31edad60a485fc51f57d27dc0b87aae9df2e4dce5fbd9dea2f776a8f5d
DIST lynx2.9.0dev.12.tar.bz2 2762036 BLAKE2B 93bf762271b0419be73b11066b68dcf65e59f4eb1a5c221f0482bc0cad5e88e1cc83eb24c4c40316c37183c37db1178985d4478a2659c9e1b8322e8b6a4c6ff0 SHA512 9dd85d335a0b2c4c28f362cbcbe6499662696286fcc78e827bfafe2787d4a7fcd3faec78a115df8c14ea6e4314a5ea272f5b6353cb13224ecaebb61ae271701b
DIST lynx2.9.0dev.12.tar.bz2.asc 729 BLAKE2B 0e24df945b714acafc17974a908ca0246e4e4f506416cdb4fedb50a0b081fb87ac2b5e272fc27bbb1eee0aeef69ebb99b75583184e434e017b0edae3d9bde4d8 SHA512 fecfcbbf41f83285019a93b59d3ee38263aa0b8fc03914d41af1f9f3f77e1e376c8c686754d3e1a777d6aa853b4f3cfdca5d2a4ffa2ab3fe6ae4952e61a22e16
-EBUILD lynx-2.9.0.ebuild 2780 BLAKE2B 6c03235954686d970566e2e6160cb956c039cb4b8584db1a8ac986245d1294d987bf804726dfcd51a30d631fd2d82d61da44396f62fb0a1f7d8883d236e032ef SHA512 c523ad08fcab87206d8f165e931c07593d7e00b9e2ffab134d82ba56834a4dd8ac4ca12ba9a87b535825905ecf7647aea8b86c474889fb4c9661f356d26f657d
+EBUILD lynx-2.9.0.ebuild 2774 BLAKE2B ffa298c7e11da6e8ece36255470d5e94686456ed9edff9dd976ea8b42e1b07fee6a89e728351453496930e4b957ade6ef874738a59985cb266b9a5e42f755f28 SHA512 ad82f376ddbe5859b7b9c4cea0b6ba6bf87b774ce20b296ffcce8e8a8719cbdd139b17b568381a6e94966a2fafa97fb21c94199fc9858b9ead94d67207d3efbc
EBUILD lynx-2.9.0_pre12-r1.ebuild 2700 BLAKE2B 752284fdf420a670614bd762d043d72354b787719ebdc7dc032836d761434d99cc0a6a31aa46035f8ef1fde2138eecde234499c0b80e4cbf3c25fb7d32751825 SHA512 4f924b8c10696b8e1c0df5b8f74316bacce31b2a1fa9e9ee28bc46acfc581701fe532829b5c284ce57a0334dfe5d96c0b608111d7e4bab0c79298d3e5480b2b7
EBUILD lynx-2.9.0_pre12-r2.ebuild 2929 BLAKE2B 039b2ce0e56bc94f5bc0b802cc4df57c3f1b519df4d4860d5aadc43b2a3a84d77d7f2626d699c8b0ef72f7e69d582d64e6009259aa1637b947e4a56912dfa4f7 SHA512 a1104580f1ced74a7e144680fc5c604ab7a2ee9ede1be3080464af3a447c7789b269197a454b9ff880c455db86bd0f09d03ad0ed7113e59d75b1a81e330c72ed
MISC metadata.xml 521 BLAKE2B 1c520669081f0dfd89ddc4a9a9c121e02fa4e184d28ed796b7e8e160affff889cefedd23b4a0f38d4d4acd2c9e2e8426715a0b8d0f37fa14d4d12fb4f063a9d8 SHA512 2192536d199e0e00dc2add38560b72c8a772966192f394704bc9410674b413791d2d262fefe729a32726f2c9b166f52f7af54d5d71f0868072853c3cfea151b1
diff --git a/www-client/lynx/lynx-2.9.0.ebuild b/www-client/lynx/lynx-2.9.0.ebuild
index 58bb00043437..59271ccf795f 100644
--- a/www-client/lynx/lynx-2.9.0.ebuild
+++ b/www-client/lynx/lynx-2.9.0.ebuild
@@ -20,7 +20,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="brotli bzip2 cjk gnutls idn nls ssl"
RDEPEND="
diff --git a/www-client/microsoft-edge-beta/Manifest b/www-client/microsoft-edge-beta/Manifest
index 8cd6905acb6b..b2b0a31c9ee9 100644
--- a/www-client/microsoft-edge-beta/Manifest
+++ b/www-client/microsoft-edge-beta/Manifest
@@ -1,7 +1,7 @@
-DIST microsoft-edge-beta_124.0.2478.39-1_amd64.deb 167474794 BLAKE2B 444bbf493772e48fd741876751aea25ee61b426bcb050b14373352e89499a9c42b207e8bc90eee1e150d1c42393cf06836cb19b0274d7064b0b4576f3a033036 SHA512 23864864291569f222c82bc20fc0c94ae780ce364f902c98888fe5c96c0eb6ffad3e4cb6961beb47810261457a04d6b33af8d2b133123b240b62d67fc171a470
-DIST microsoft-edge-beta_124.0.2478.49-1_amd64.deb 167564674 BLAKE2B ad761d93f0a67972cdebf57da646d04920a637d58d9c2b95e488b810f9a4d17fb26f603f956035dd3ee7f084a53ce8611db3e18a64f854a2822ac1c6deeae5f9 SHA512 76f49f29741bbf0a983d94fdbc09edbc4965f3ba6b5aaa7b7d6427caf4ec7b35c2b25249fb1926b35bf82007dae7144d8bc646689e6fa0a0a69c397d1932810f
-DIST microsoft-edge-beta_124.0.2478.51-1_amd64.deb 167592202 BLAKE2B 856d1133992efd17515d63706b869ec52973c792e60e50e0d4e26767952eb2d7d8c90e1990e2b39fb311abaace4c08f54f85273ca729fcb7ff50491dc1c741ae SHA512 20ce51c34e83409771c82df25e6f5b860e39a344dff511a4fb93300b6776d14bc3fc674b7f1ef0f72ea642ac5bb277fb91effc5fd1c7eef79642a7ed2989b603
-EBUILD microsoft-edge-beta-124.0.2478.39.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b
-EBUILD microsoft-edge-beta-124.0.2478.49.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b
-EBUILD microsoft-edge-beta-124.0.2478.51.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b
+DIST microsoft-edge-beta_125.0.2535.29-1_amd64.deb 167717834 BLAKE2B 37913c8c8d27f2c0ca195041e77225c059c81301d3f0611e869d08b6b5981acde5cbdd5d5df4b4fc1ccb7b784f4da964ee7d31a1599ef83c5b8c76f1a61215e4 SHA512 a537a44cb88f4b375d800af4e419a0f6836b8271a33226b458e7708807f4671f88ca0b1167b45b6b3a4f6efda1273925e7cf774e4d1fd55c795e50bdf86c389d
+DIST microsoft-edge-beta_125.0.2535.37-1_amd64.deb 167771542 BLAKE2B 8757e70ad6f8264f47a8d9ef050bf18fa7878f91760b705ee1e3d7887ad8956a364185a0cd4b330cacb306ada004bf476b5b00b907d994ab55ba2116dc29f89b SHA512 9af0d19849a1ecde68b23587674572ea8fe3e3df7b8e24cb1ee1a95db3b3723ad9f98abdcad14fd1a999f5571360368b5e6db9a47a654d56079c8bd3f17588c1
+DIST microsoft-edge-beta_125.0.2535.47-1_amd64.deb 167740238 BLAKE2B c7ac605859dc39615ff3b1b3bf96ecb36489450ddd1ac4a2868b83c4bd1f88fa26262f00749b9cd399573ddf993c2771fc11c73645ce5135111f484eaddb6379 SHA512 648ab90bfb0e791447d3d6f0b9c87920823af8c7f42020b77cba2cd0808fc812612202c1fb7cbac6126f924b01c49dd4eb4e14081c460ff38e2b81b9ea74a385
+EBUILD microsoft-edge-beta-125.0.2535.29.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b
+EBUILD microsoft-edge-beta-125.0.2535.37.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b
+EBUILD microsoft-edge-beta-125.0.2535.47.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b
MISC metadata.xml 528 BLAKE2B ef09f12e6f9b503cd78a39ece67ab0b21c4760114b052bf105b7c5e426a1df43a5b37ff547338fc7122ac8a029b2ebb85a8793dbd4d192ae990ae71829dcdec6 SHA512 b6ab632cfce365f249a178a261eba3d469cd645cdcb99dd1bc4f1e865fbd6668cfd0f7171843e2b234ff852f8191a8b08b48cf89991cdfc7ca36337a71e5a38d
diff --git a/www-client/microsoft-edge-beta/microsoft-edge-beta-124.0.2478.39.ebuild b/www-client/microsoft-edge-beta/microsoft-edge-beta-125.0.2535.29.ebuild
index 0ff710cc5ddc..0ff710cc5ddc 100644
--- a/www-client/microsoft-edge-beta/microsoft-edge-beta-124.0.2478.39.ebuild
+++ b/www-client/microsoft-edge-beta/microsoft-edge-beta-125.0.2535.29.ebuild
diff --git a/www-client/microsoft-edge-beta/microsoft-edge-beta-124.0.2478.49.ebuild b/www-client/microsoft-edge-beta/microsoft-edge-beta-125.0.2535.37.ebuild
index 0ff710cc5ddc..0ff710cc5ddc 100644
--- a/www-client/microsoft-edge-beta/microsoft-edge-beta-124.0.2478.49.ebuild
+++ b/www-client/microsoft-edge-beta/microsoft-edge-beta-125.0.2535.37.ebuild
diff --git a/www-client/microsoft-edge-beta/microsoft-edge-beta-124.0.2478.51.ebuild b/www-client/microsoft-edge-beta/microsoft-edge-beta-125.0.2535.47.ebuild
index 0ff710cc5ddc..0ff710cc5ddc 100644
--- a/www-client/microsoft-edge-beta/microsoft-edge-beta-124.0.2478.51.ebuild
+++ b/www-client/microsoft-edge-beta/microsoft-edge-beta-125.0.2535.47.ebuild
diff --git a/www-client/microsoft-edge-dev/Manifest b/www-client/microsoft-edge-dev/Manifest
index 7487ac5d2052..2359575191ea 100644
--- a/www-client/microsoft-edge-dev/Manifest
+++ b/www-client/microsoft-edge-dev/Manifest
@@ -1,7 +1,7 @@
-DIST microsoft-edge-dev_125.0.2492.1-1_amd64.deb 166493890 BLAKE2B 249caf6e4643dd961783a9159374379db29ba26ae18334d1f05015dae46b9efc0becfda0c708804a024062978e4c2274eb8b63dea4de9216df4756bb02bee5b1 SHA512 a7d32bc493e801df731ec08e21b39bae52a4912eb0660a1f1a58a35557e759975730736b273d3b70eccf950714ed23ef49551b61538418fdc0b0325051fd65ea
-DIST microsoft-edge-dev_125.0.2506.0-1_amd64.deb 166910606 BLAKE2B bd008c624ca5b2b6cb66d20b1d404622a8dffaf11be64a066f2413311fbd5664d12ded2b556df5d40d6b56aaad88560a9a49675acbd298b7af47313699cd6af7 SHA512 b938ded35dea68fed0e12ce784ffa620c9f26b74c7f3cb8c66c70f16bffea33c81fef1c51bdc426dac59a2d4e56acbe4ffbdbe835be9f43f23480ed48f075f8c
-DIST microsoft-edge-dev_125.0.2518.0-1_amd64.deb 167009998 BLAKE2B 8738b70b862d6b547c8b91336d24b3b45ef9f3085dbc5fae062211e4834d37086cfd2de507c6e4ec62f1d4294214b464ac205bb3a37a561f791ad674179105bb SHA512 52cba9509c24cf383d39efe9a05c48931a66a3e75294b12b5b5e45560441f42c885e913da4736fce9f0e58e3689c8c1c961e9fe9bdabda169c86f42a3c0a865d
-EBUILD microsoft-edge-dev-125.0.2492.1.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b
-EBUILD microsoft-edge-dev-125.0.2506.0.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b
-EBUILD microsoft-edge-dev-125.0.2518.0.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b
+DIST microsoft-edge-dev_125.0.2535.6-1_amd64.deb 167694710 BLAKE2B 019c4aa62fb8f6f85803c4ece48854e5d5f849becebbd57da9b702a7e3303d07391b72f66fe05931d8cec1bd54aa5b74adcda3d4c002a1c773f620c3ada297a5 SHA512 54c7bb0749a65ff7737d577b5c0a31d19a8db5aca05125a1d9dd338a1e97aa8ef9c68fcd6d28aee88351f33bbf6a8fba63069e4545a7284d5e5222a887f09bf4
+DIST microsoft-edge-dev_126.0.2552.0-1_amd64.deb 168214870 BLAKE2B e841f03056add448c32d1e5926f7fca144598eff12f45f4497bb0733f3c5136a3b9c12d55011d6da6865c56f586eaf00a04018150509af3a0ac3349a0f83d96e SHA512 52d9c18bda5299e136b27eea10adf3ef48ce79800e190badc57b24f2f3f6e592d542cdb2c4e04fa63f35f03d47acf7c00f6c80c059f33e7717ae2b4af3f3f3cd
+DIST microsoft-edge-dev_126.0.2566.1-1_amd64.deb 168206314 BLAKE2B ba49550aeb1e38b0a36d4ae077bc0bbdd53e82df1d951073a376cb5275e6b2912ea183e1a4b32e04e7886b07e8fdd0bf05c0d81ce1461c2b6afafabbd7269959 SHA512 d89f25e971c0e3f7ff63f9d9c5f1223531d4f041c53c062d664c7094a7a816650e48c9fd3b3f0c7a98a541767fa80903f47189a038c6a0ef395c7e58edc307bc
+EBUILD microsoft-edge-dev-125.0.2535.6.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b
+EBUILD microsoft-edge-dev-126.0.2552.0.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b
+EBUILD microsoft-edge-dev-126.0.2566.1.ebuild 2712 BLAKE2B e4c40954c5106692f7b454e32c79e47cdc99c09b2e1aa02a263951adcafb56ef2179235210e2c1c4a24b7571338c9329d46bf7c5fa8430284be2e1d2eb447148 SHA512 1d1a784a1b19db517d78db66fd8457b5dbfe803f852cf82d7137bd18f624618e91016f38f571e0d848542a17788d01685228863fb005cc8de4bbb96381e3044b
MISC metadata.xml 528 BLAKE2B ef09f12e6f9b503cd78a39ece67ab0b21c4760114b052bf105b7c5e426a1df43a5b37ff547338fc7122ac8a029b2ebb85a8793dbd4d192ae990ae71829dcdec6 SHA512 b6ab632cfce365f249a178a261eba3d469cd645cdcb99dd1bc4f1e865fbd6668cfd0f7171843e2b234ff852f8191a8b08b48cf89991cdfc7ca36337a71e5a38d
diff --git a/www-client/microsoft-edge-dev/microsoft-edge-dev-125.0.2492.1.ebuild b/www-client/microsoft-edge-dev/microsoft-edge-dev-125.0.2535.6.ebuild
index 0ff710cc5ddc..0ff710cc5ddc 100644
--- a/www-client/microsoft-edge-dev/microsoft-edge-dev-125.0.2492.1.ebuild
+++ b/www-client/microsoft-edge-dev/microsoft-edge-dev-125.0.2535.6.ebuild
diff --git a/www-client/microsoft-edge-dev/microsoft-edge-dev-125.0.2506.0.ebuild b/www-client/microsoft-edge-dev/microsoft-edge-dev-126.0.2552.0.ebuild
index 0ff710cc5ddc..0ff710cc5ddc 100644
--- a/www-client/microsoft-edge-dev/microsoft-edge-dev-125.0.2506.0.ebuild
+++ b/www-client/microsoft-edge-dev/microsoft-edge-dev-126.0.2552.0.ebuild
diff --git a/www-client/microsoft-edge-dev/microsoft-edge-dev-125.0.2518.0.ebuild b/www-client/microsoft-edge-dev/microsoft-edge-dev-126.0.2566.1.ebuild
index 0ff710cc5ddc..0ff710cc5ddc 100644
--- a/www-client/microsoft-edge-dev/microsoft-edge-dev-125.0.2518.0.ebuild
+++ b/www-client/microsoft-edge-dev/microsoft-edge-dev-126.0.2566.1.ebuild
diff --git a/www-client/microsoft-edge/Manifest b/www-client/microsoft-edge/Manifest
index 9b88e19e6cec..8e968326a6cb 100644
--- a/www-client/microsoft-edge/Manifest
+++ b/www-client/microsoft-edge/Manifest
@@ -1,3 +1,3 @@
-DIST microsoft-edge-stable_124.0.2478.51-1_amd64.deb 167565894 BLAKE2B 49f60102da25318f915c90fae6837cb67f5a2500afea900f24c1e9fd219bbdfe728b402094609089302e3b8d78871612518016486f4787c2dcb370bd7c662fe5 SHA512 dde274409293324f5d01b109d6f2cf6878332c563aadf0e2ae499f52d6b9fc54f79cbca82e9553716a8d6f651e2a3d9858637cc19dc1667ed70b61702c87e77e
-EBUILD microsoft-edge-124.0.2478.51.ebuild 2711 BLAKE2B 1bb44a3c56ae9b33ff45f5cede57afd5c9f39d9b02f030029e22de9694efe09e68eb0106d8a896e85de2fb033341c7b479a3c4d10e9b5be5ee50fa9ab218da0b SHA512 3df8105072f7b861b8fbb50a8c93ecd9b8221548dcfc84563b8aae1546c94687d45d8dded312c9b560f99bb9b3bcf0da24ca8489dd413b52a245943e778a073a
+DIST microsoft-edge-stable_124.0.2478.105-1_amd64.deb 167528994 BLAKE2B 8c4b78fef3d8905bf7218d7477c141ceb73cdc120073149173e74df7cc509f130ec7576a999b161c95c6abd544f92d34e917f8071694a58e8c3617a6ef775231 SHA512 73c627ba2930648b48e8a98e4bad99369d2c98fc73cb3fb2a6edf165a0dea0df4598485418226dd3bb1acf902028e2c0200d83e968e463a48f37ac6823eb0437
+EBUILD microsoft-edge-124.0.2478.105.ebuild 2711 BLAKE2B 1bb44a3c56ae9b33ff45f5cede57afd5c9f39d9b02f030029e22de9694efe09e68eb0106d8a896e85de2fb033341c7b479a3c4d10e9b5be5ee50fa9ab218da0b SHA512 3df8105072f7b861b8fbb50a8c93ecd9b8221548dcfc84563b8aae1546c94687d45d8dded312c9b560f99bb9b3bcf0da24ca8489dd413b52a245943e778a073a
MISC metadata.xml 528 BLAKE2B ef09f12e6f9b503cd78a39ece67ab0b21c4760114b052bf105b7c5e426a1df43a5b37ff547338fc7122ac8a029b2ebb85a8793dbd4d192ae990ae71829dcdec6 SHA512 b6ab632cfce365f249a178a261eba3d469cd645cdcb99dd1bc4f1e865fbd6668cfd0f7171843e2b234ff852f8191a8b08b48cf89991cdfc7ca36337a71e5a38d
diff --git a/www-client/microsoft-edge/microsoft-edge-124.0.2478.51.ebuild b/www-client/microsoft-edge/microsoft-edge-124.0.2478.105.ebuild
index 7ea339bd40f9..7ea339bd40f9 100644
--- a/www-client/microsoft-edge/microsoft-edge-124.0.2478.51.ebuild
+++ b/www-client/microsoft-edge/microsoft-edge-124.0.2478.105.ebuild
diff --git a/www-client/opera-beta/Manifest b/www-client/opera-beta/Manifest
index 7b8e91ed2518..d14f9544b201 100644
--- a/www-client/opera-beta/Manifest
+++ b/www-client/opera-beta/Manifest
@@ -1,7 +1,7 @@
-DIST opera-beta_109.0.5097.24_amd64.deb 115266488 BLAKE2B 02031e0bf755c111efd3e77adf639b5ca27a6325e94f3d43e20419dfa8c93170aa19d839d5d718fd5dfd94d28b1c974f107f2a99c73b3de27bce94c2a66c46cf SHA512 a9b19e07d9cd11bdaaf1fbee1ec765366994304d940711c66f9e041f5e8cca33d29ec158768c659bcf2bbe1b5914c5a67ef86800a4a0ffa27bc06054b55f80ca
-DIST opera-beta_110.0.5130.4_amd64.deb 110201212 BLAKE2B 9abb3002fbec3bb07f16b41336965c117b51c852b31925fa0ae693d215c4cbd1033346fe15c52e804676e8ebfa22628c0df5e0160bf0214328601accef010b89 SHA512 4d2f2782ed1decf7480b2be2ad583ed604170a4f7546a678bc55756c4c87b02fd7e90eabe7930c00fe302fe535cd5f6891621953b3e3fc5aad07ac55131adf51
+DIST opera-beta_110.0.5130.13_amd64.deb 110204952 BLAKE2B dedeac21ce18c3180bafa9a6ae167b8042f78b1f50500f3c03374a67a3472d728a4abb0a760cc8589dfaf38b97fc63736b55f7855b8a02520c56d765255c3f0d SHA512 412165e9d69da93d38da321b0bce6e09bc6b981c1716604208ea5d14dba68f836ceff2097a80222341b9d36fdac0689eb8fd12c0e4212867647b0221c36362f9
+DIST opera-beta_110.0.5130.17_amd64.deb 110223832 BLAKE2B 21a37802dd612a27db6555bda5767598f06c5e28cd754bcafb15418b74ef25ed4d9acc5adafe5e3e21a874118d0b10fc862e69b116616229bfe49e23275f3305 SHA512 555240c02a82a29a00460599ca8070d1b2d200d37ca3d58f8ddd76a748175168ed17aeee5afbf8569966e62fe5b21f1e87584a22b39ae8c2a74fca7f92e2535e
DIST opera-beta_110.0.5130.8_amd64.deb 110214708 BLAKE2B f2a96885a9449b0821499c871843941488aa89f3a30d1791b04741ddeecbe52dda9b304642e60985403dd3b2aaa0e247dd5884648a639a74b2d7109adae9fb71 SHA512 d3f156bec609f385a0183a8b1383e192c296f3ca67b276c86109107953e6f0a4d8b79fafff7fedc58752c4398d0b4bc2d366d15ed84117139229d55d285c15a3
-EBUILD opera-beta-109.0.5097.24-r1.ebuild 4223 BLAKE2B 7c23d2a54bb995bc94a36e3f9cb8c63e99047b6c57225415181fd0e25dbdac6fb028f0f8fcfc55b29c02ff2177769ef815f2fe197df9fcfaaf28ee58e5fcaa6c SHA512 862b44ab054d0b91373ebb2c0d44dd0bab4f7d6ac97effcd7b9f65f2b948044403274543f0e2b25ca00fdfb4c991d5fe80ec871e45c6b0faff2d962c0990f608
-EBUILD opera-beta-110.0.5130.4.ebuild 4223 BLAKE2B 9e49acd6b92e12f256545d0c578849dbdc8ad817e25f154f28568c977cf08a8803e7ffb88cc38a9fe384cb1bc918e8dcaa0df8df1bd873e6de0c359883b7dbde SHA512 c9c70f838e6c7f489f977e9c454df11ed98a337c43f95e70f1a77b1e8db7b85e5c539125e10201c1a4e5c1ce55089b9f71c0edfdb41ff2f4780f28fdb014bafc
+EBUILD opera-beta-110.0.5130.13.ebuild 4223 BLAKE2B 9e49acd6b92e12f256545d0c578849dbdc8ad817e25f154f28568c977cf08a8803e7ffb88cc38a9fe384cb1bc918e8dcaa0df8df1bd873e6de0c359883b7dbde SHA512 c9c70f838e6c7f489f977e9c454df11ed98a337c43f95e70f1a77b1e8db7b85e5c539125e10201c1a4e5c1ce55089b9f71c0edfdb41ff2f4780f28fdb014bafc
+EBUILD opera-beta-110.0.5130.17.ebuild 4223 BLAKE2B 9e49acd6b92e12f256545d0c578849dbdc8ad817e25f154f28568c977cf08a8803e7ffb88cc38a9fe384cb1bc918e8dcaa0df8df1bd873e6de0c359883b7dbde SHA512 c9c70f838e6c7f489f977e9c454df11ed98a337c43f95e70f1a77b1e8db7b85e5c539125e10201c1a4e5c1ce55089b9f71c0edfdb41ff2f4780f28fdb014bafc
EBUILD opera-beta-110.0.5130.8.ebuild 4223 BLAKE2B 9e49acd6b92e12f256545d0c578849dbdc8ad817e25f154f28568c977cf08a8803e7ffb88cc38a9fe384cb1bc918e8dcaa0df8df1bd873e6de0c359883b7dbde SHA512 c9c70f838e6c7f489f977e9c454df11ed98a337c43f95e70f1a77b1e8db7b85e5c539125e10201c1a4e5c1ce55089b9f71c0edfdb41ff2f4780f28fdb014bafc
MISC metadata.xml 544 BLAKE2B e8594a0cb9a73ac5901ece78db220822043dca9faec994810af426f96e2ece7fdb069c5f1d639f66d1236ec83e6c46e50bd21c49f8a075cf0de41c9db9afd8a0 SHA512 2361ebdde2707166e465058b41a893b4c14db7c7ba8f4fe34f7ab34da4275f0af691e55881232a9253f5d793ff76e61d57689f56dd8ab879fc3ecb3294fc8777
diff --git a/www-client/opera-beta/opera-beta-110.0.5130.4.ebuild b/www-client/opera-beta/opera-beta-110.0.5130.13.ebuild
index cfafbce68c18..cfafbce68c18 100644
--- a/www-client/opera-beta/opera-beta-110.0.5130.4.ebuild
+++ b/www-client/opera-beta/opera-beta-110.0.5130.13.ebuild
diff --git a/www-client/opera-developer/opera-developer-111.0.5131.0.ebuild b/www-client/opera-beta/opera-beta-110.0.5130.17.ebuild
index cfafbce68c18..cfafbce68c18 100644
--- a/www-client/opera-developer/opera-developer-111.0.5131.0.ebuild
+++ b/www-client/opera-beta/opera-beta-110.0.5130.17.ebuild
diff --git a/www-client/opera-developer/Manifest b/www-client/opera-developer/Manifest
index 58cb1e2311b1..df2a46b90456 100644
--- a/www-client/opera-developer/Manifest
+++ b/www-client/opera-developer/Manifest
@@ -1,7 +1,7 @@
-DIST opera-developer_111.0.5131.0_amd64.deb 110259440 BLAKE2B 68a4ff3d9fd5c11efe489cbb63bc956b42ff9c06f623864a35f75f19eb5c7c49aaa94664b955765aeebfd6a6c7c402f8deaa57e4814c410e56176c643f77888a SHA512 95157de703ed8bd01e9cacb6bae04d50719aebcba436d8cd6ef58031ae2743f408e31df2e7e5a38c436e74f2c93fd888c5610336de6df5425aa61533f8ad6373
-DIST opera-developer_111.0.5138.0_amd64.deb 110760972 BLAKE2B 0f30b681fb6706cfcb9e116187d93955de19759666b70c4e8dcb85d2847bb90403fd11c1799735c01b12768627d39dfb33f8bf073c500cfcf506a30759b65843 SHA512 17375dd52091713c79cd9ea46e725ce03869c2d89a3875127b597b4c19250f149eb1d08e7752d14b2c18135746956673de55cc72805ea8e48acbd3ae7fdc5be0
DIST opera-developer_111.0.5145.0_amd64.deb 110741464 BLAKE2B f0cd803b301423b583fc812cb364177532eaa641eae314b0ecdd5f5199b429ae912907c8de4c828cfb72c73c30882c8f549a6da298a03edfe69541360ade3d85 SHA512 20b5b3b5733c5e7e117de55425a535b01fc110190978c08f3ccf5c2c4b8bfca479a2a4b9de5506e7c4424075353c8410187eb07dcbe2bd0102b0e6a556fb31cd
-EBUILD opera-developer-111.0.5131.0.ebuild 4223 BLAKE2B 9e49acd6b92e12f256545d0c578849dbdc8ad817e25f154f28568c977cf08a8803e7ffb88cc38a9fe384cb1bc918e8dcaa0df8df1bd873e6de0c359883b7dbde SHA512 c9c70f838e6c7f489f977e9c454df11ed98a337c43f95e70f1a77b1e8db7b85e5c539125e10201c1a4e5c1ce55089b9f71c0edfdb41ff2f4780f28fdb014bafc
-EBUILD opera-developer-111.0.5138.0.ebuild 4223 BLAKE2B 9e49acd6b92e12f256545d0c578849dbdc8ad817e25f154f28568c977cf08a8803e7ffb88cc38a9fe384cb1bc918e8dcaa0df8df1bd873e6de0c359883b7dbde SHA512 c9c70f838e6c7f489f977e9c454df11ed98a337c43f95e70f1a77b1e8db7b85e5c539125e10201c1a4e5c1ce55089b9f71c0edfdb41ff2f4780f28fdb014bafc
+DIST opera-developer_111.0.5151.0_amd64.deb 111347532 BLAKE2B 2874c09de333f824769699f1261855e8677b13a4ba8f4970e7b7e5a7683faad282fc7af161e040c51bbcbac82321297346badfc174707da6c1d01054f5ed0348 SHA512 c1845b4e63a62eb4b8cda2b30bebe3398e5e7b13d3fd2a5b06a6a02f85f9e903b775bd0901cc6e80ccda182e8248f941275a73ecdb5abe9485728cc79878ef0c
+DIST opera-developer_111.0.5159.0_amd64.deb 111427528 BLAKE2B 3142d6efd50ed145931ca2cfa0de85145f90c33671a7af54c4281d5872fea6f7fe09de0340473e0ee9ef9c2a464d85af2ecbcf1a9ee1a35cb25a608760ac0dd3 SHA512 40c0917016ec646a8f14442846495b5d3427d7593bfabde52f2579e744c2f043b9fdbb8e445fb05997fe2ce2f1d03c49151ebc7ccd875b5dd26ff2bad9e28f75
EBUILD opera-developer-111.0.5145.0.ebuild 4223 BLAKE2B 9e49acd6b92e12f256545d0c578849dbdc8ad817e25f154f28568c977cf08a8803e7ffb88cc38a9fe384cb1bc918e8dcaa0df8df1bd873e6de0c359883b7dbde SHA512 c9c70f838e6c7f489f977e9c454df11ed98a337c43f95e70f1a77b1e8db7b85e5c539125e10201c1a4e5c1ce55089b9f71c0edfdb41ff2f4780f28fdb014bafc
+EBUILD opera-developer-111.0.5151.0.ebuild 4223 BLAKE2B 9e49acd6b92e12f256545d0c578849dbdc8ad817e25f154f28568c977cf08a8803e7ffb88cc38a9fe384cb1bc918e8dcaa0df8df1bd873e6de0c359883b7dbde SHA512 c9c70f838e6c7f489f977e9c454df11ed98a337c43f95e70f1a77b1e8db7b85e5c539125e10201c1a4e5c1ce55089b9f71c0edfdb41ff2f4780f28fdb014bafc
+EBUILD opera-developer-111.0.5159.0.ebuild 4223 BLAKE2B 9e49acd6b92e12f256545d0c578849dbdc8ad817e25f154f28568c977cf08a8803e7ffb88cc38a9fe384cb1bc918e8dcaa0df8df1bd873e6de0c359883b7dbde SHA512 c9c70f838e6c7f489f977e9c454df11ed98a337c43f95e70f1a77b1e8db7b85e5c539125e10201c1a4e5c1ce55089b9f71c0edfdb41ff2f4780f28fdb014bafc
MISC metadata.xml 544 BLAKE2B e8594a0cb9a73ac5901ece78db220822043dca9faec994810af426f96e2ece7fdb069c5f1d639f66d1236ec83e6c46e50bd21c49f8a075cf0de41c9db9afd8a0 SHA512 2361ebdde2707166e465058b41a893b4c14db7c7ba8f4fe34f7ab34da4275f0af691e55881232a9253f5d793ff76e61d57689f56dd8ab879fc3ecb3294fc8777
diff --git a/www-client/opera-developer/opera-developer-111.0.5138.0.ebuild b/www-client/opera-developer/opera-developer-111.0.5151.0.ebuild
index cfafbce68c18..cfafbce68c18 100644
--- a/www-client/opera-developer/opera-developer-111.0.5138.0.ebuild
+++ b/www-client/opera-developer/opera-developer-111.0.5151.0.ebuild
diff --git a/www-client/opera-beta/opera-beta-109.0.5097.24-r1.ebuild b/www-client/opera-developer/opera-developer-111.0.5159.0.ebuild
index ad276bb735ac..cfafbce68c18 100644
--- a/www-client/opera-beta/opera-beta-109.0.5097.24-r1.ebuild
+++ b/www-client/opera-developer/opera-developer-111.0.5159.0.ebuild
@@ -42,7 +42,7 @@ fi
# Commit ref from `strings libffmpeg.so | grep -F "FFmpeg version"` matches this Chromium version
# used to select the correct ffmpeg-chromium version (corresponds to a major version of Chromium)
# Does not need to be updated for every new version of Opera, only when it breaks
-CHROMIUM_VERSION="121"
+CHROMIUM_VERSION="124"
SRC_URI="${SRC_URI_BASE[@]/%//${PV}/linux/${MY_PN}_${PV}_amd64.${OPERA_ARCHIVE_EXT}}"
S=${WORKDIR}
diff --git a/www-client/opera/Manifest b/www-client/opera/Manifest
index fb398c173bc2..45678b126be9 100644
--- a/www-client/opera/Manifest
+++ b/www-client/opera/Manifest
@@ -1,3 +1,3 @@
-DIST opera-stable_109.0.5097.59_amd64.deb 109175084 BLAKE2B 4513258ae84fa86db38e950c117ccbcc8fb385ef8a63234aab959e2054f58191b475d39cee75df6ecd6ddc249efe6bebc36d71e35fd66feda494a8a6a989609d SHA512 4d1ad409fd062780c63fd6fc818d4fa53752fa993969ca45b07c15e3fd0dc6dae15f8b57683fe935e76c62bcdf2ffc5b6bfc4ae6e5e21981157db594ad509546
-EBUILD opera-109.0.5097.59.ebuild 4084 BLAKE2B bd3fd3f50e1070cfa9c5093f6eea340b58304cab86b6d913bde697e7de7369caf6e7cc004cc2dcbd19543c5fed66e5e544260779249839f970ec7080e65f6623 SHA512 7577fdbbd80c93c81a72bdae90a9b246bb1e245b4905c64113a836e2da991b3d731416216ecc7fdfe4f2796a9632ea642bd96aec320e3cfef84b23078e277ab7
-MISC metadata.xml 380 BLAKE2B 6126e5c5d5f67d1bd7d4b6659fbc9f8f62ef105e737d2cc4e6c652f4c899df1b55ef2abe077e41aa2e4eb3d553a2652e38a583b3c7baac7a20318b69f766997f SHA512 cbe76a1630f13557a0aae1703436b19b0f9f7842c5604695d49255937c8304fff07ec20f26d408527ee672e2e9625ebc748bb7d3879d5fc77c06655c4b9b1816
+DIST opera-stable_110.0.5130.23_amd64.deb 110438984 BLAKE2B 7a681b320266a5eec72481fffe9d7d29a8caf6ae44a7d222b42d99219f1802e1e3dd29c26b5494d207a6e87fcac997558fc63ed8cf6fbc11f0e7f9018fd54e9a SHA512 8b311cf3edd2faab48f5c1d4034c7595855e5c505a0d148f34b7d49992278a8f2f11c4ab6ed8ea18a45e219ae28fbf87e292322e31fb4db3cc607af49bb24b07
+EBUILD opera-110.0.5130.23.ebuild 4222 BLAKE2B 592d6299d8090adaea07c44906f404f07f882cf7726e553a223f45755ce924a455a9db1e207c4beaed05571f92f8ace3f88cb30268987bba02f172dfc92b2c4b SHA512 7ffe3d4abe8eab00c35510e7697881fa5f31009241f5a4b40156b5654edb701bce71fb45a7d40956906abfc37850fdda71452a04967bdc59f889cdfaabcc476e
+MISC metadata.xml 544 BLAKE2B 94b2f6807c021794769fc62b041c69bd08a0d307c51db96109bd45a1fff240d586c51daa91e894055e47291505750f07e9054b6b1b364a691c18f5711acbe9b4 SHA512 691c7b62fa7c8a46e4cc981a2f211a1609b1c57620aca668b001eeaa2cbcd2f38299680c4707a73a8f32ee19b054cd131a2b09600bac30b8530af35142694ff7
diff --git a/www-client/opera/metadata.xml b/www-client/opera/metadata.xml
index b26bda26dc59..ff2ff3d9936a 100644
--- a/www-client/opera/metadata.xml
+++ b/www-client/opera/metadata.xml
@@ -7,5 +7,6 @@
</maintainer>
<use>
<flag name="proprietary-codecs">Enable codecs for patent-encumbered audio and video formats.</flag>
+ <flag name="ffmpeg-chromium">Use Chromium FFmpeg fork (<pkg>media-video/ffmpeg-chromium</pkg>) rather than mainline FFmpeg (<pkg>media-video/ffmpeg</pkg>)</flag>
</use>
</pkgmetadata>
diff --git a/www-client/opera/opera-109.0.5097.59.ebuild b/www-client/opera/opera-109.0.5097.59.ebuild
deleted file mode 100644
index 83dabc9eddf4..000000000000
--- a/www-client/opera/opera-109.0.5097.59.ebuild
+++ /dev/null
@@ -1,172 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-CHROMIUM_LANGS="
- bg bn ca cs da de el en-GB en-US es-419 es fil fi fr hi hr hu id
- it ja ko lt lv ms nb nl pl pt-BR pt-PT ro ru sk sr sv sw ta te th tr uk vi
- zh-CN zh-TW
-"
-
-# These are intended for ebuild maintainer use to force RPM if DEB is not available.
-: ${OPERA_FORCE_RPM=no}
-
-inherit chromium-2 pax-utils xdg
-
-if [[ ${OPERA_FORCE_RPM} == yes ]]; then
- inherit rpm
- OPERA_ARCHIVE_EXT="rpm"
-else
- inherit unpacker
- OPERA_ARCHIVE_EXT="deb"
-fi
-
-DESCRIPTION="A fast and secure web browser"
-HOMEPAGE="https://www.opera.com/"
-
-SRC_URI_BASE=(
- "https://download1.operacdn.com/pub/${PN}"
- "https://download2.operacdn.com/pub/${PN}"
- "https://download3.operacdn.com/pub/${PN}"
- "https://download4.operacdn.com/pub/${PN}"
-)
-
-if [[ ${PN} == opera ]]; then
- MY_PN=${PN}-stable
- SRC_URI_BASE=( "${SRC_URI_BASE[@]/%//desktop}" )
-else
- MY_PN=${PN}
-fi
-
-# Commit ref from `strings libffmpeg.so | grep -F "FFmpeg version"` matches this Chromium version
-# used to select the correct ffmpeg-chromium version (corresponds to a major version of Chromium)
-# Does not need to be updated for every new version of Opera, only when it breaks
-CHROMIUM_VERSION="123"
-SRC_URI="${SRC_URI_BASE[@]/%//${PV}/linux/${MY_PN}_${PV}_amd64.${OPERA_ARCHIVE_EXT}}"
-S=${WORKDIR}
-
-LICENSE="OPERA-2018"
-SLOT="0"
-KEYWORDS="-* amd64"
-IUSE="+proprietary-codecs +suid qt5 qt6"
-RESTRICT="bindist mirror strip"
-
-RDEPEND="
- >=app-accessibility/at-spi2-core-2.46.0:2
- dev-libs/expat
- dev-libs/glib:2
- dev-libs/nspr
- dev-libs/nss
- gnome-base/gsettings-desktop-schemas
- media-libs/alsa-lib
- media-libs/mesa[gbm(+)]
- net-misc/curl
- net-print/cups
- sys-apps/dbus
- sys-libs/glibc
- x11-libs/cairo
- x11-libs/gdk-pixbuf
- x11-libs/gtk+:3
- x11-libs/libdrm
- x11-libs/libxcb
- x11-libs/libxkbcommon
- x11-libs/libxshmfence
- x11-libs/libX11
- x11-libs/libXcomposite
- x11-libs/libXdamage
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libXrandr
- x11-libs/pango
- proprietary-codecs? (
- media-video/ffmpeg-chromium:${CHROMIUM_VERSION}
- )
- qt5? (
- dev-qt/qtcore:5
- dev-qt/qtgui:5[X]
- dev-qt/qtwidgets:5
- )
- qt6? ( dev-qt/qtbase:6[gui,widgets] )
-"
-
-QA_PREBUILT="*"
-OPERA_HOME="opt/opera${PN#opera}"
-
-pkg_pretend() {
- # Protect against people using autounmask overzealously
- use amd64 || die "opera only works on amd64"
-}
-
-pkg_setup() {
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_unpack() {
- :
-}
-
-src_install() {
- dodir /
- cd "${ED}" || die
- if [[ ${OPERA_FORCE_RPM} == yes ]]; then
- rpm_src_unpack "${A[0]}"
- else
- unpacker
- fi
-
- # move to /opt, bug #573052
- mkdir -p "${OPERA_HOME%${PN}}"
- if [[ ${OPERA_FORCE_RPM} == yes ]]; then
- mv "usr/lib64/${PN}" "${OPERA_HOME%${PN}}" || die
- else
- mv "usr/lib/x86_64-linux-gnu/${PN}" "${OPERA_HOME%${PN}}" || die
- fi
- rm -r "usr/lib" || die
-
- # disable auto update
- rm "${OPERA_HOME}/${PN%-*}_autoupdate"{,.licenses,.version} || die
-
- if [[ ${OPERA_FORCE_RPM} == yes ]]; then
- rm "${OPERA_HOME}/setup_repo.sh" || die
- else
- rm -r "usr/share/lintian" || die
-
- # fix docs
- mv usr/share/doc/${MY_PN} usr/share/doc/${PF} || die
- gzip -d usr/share/doc/${PF}/changelog.gz || die
- fi
-
- # fix desktop file
- sed -i \
- -e 's|^TargetEnvironment|X-&|g' \
- usr/share/applications/${PN}.desktop || die
-
- # remove unused language packs
- pushd "${OPERA_HOME}/localization" > /dev/null || die
- chromium_remove_language_paks
- popd > /dev/null || die
-
- # setup opera symlink
- rm "usr/bin/${PN}" || die
- dosym "../../${OPERA_HOME}/${PN}" "/usr/bin/${PN}"
-
- # install proprietary codecs
- rm "${OPERA_HOME}/resources/ffmpeg_preload_config.json" || die
- if use proprietary-codecs; then
- dosym ../../usr/$(get_libdir)/chromium/libffmpeg.so.${CHROMIUM_VERSION} \
- /${OPERA_HOME}/libffmpeg.so
- fi
-
- if ! use qt5; then
- rm "${OPERA_HOME}/libqt5_shim.so" || die
- fi
- if ! use qt6; then
- rm "${OPERA_HOME}/libqt6_shim.so" || die
- fi
-
- # pax mark opera, bug #562038
- pax-mark m "${OPERA_HOME}/opera"
- # enable suid sandbox if requested
- use suid && fperms 4711 "/${OPERA_HOME}/opera_sandbox"
-}
diff --git a/www-client/opera/opera-110.0.5130.23.ebuild b/www-client/opera/opera-110.0.5130.23.ebuild
new file mode 100644
index 000000000000..8c39dc13a868
--- /dev/null
+++ b/www-client/opera/opera-110.0.5130.23.ebuild
@@ -0,0 +1,173 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CHROMIUM_LANGS="
+ bg bn ca cs da de el en-GB en-US es-419 es fil fi fr hi hr hu id
+ it ja ko lt lv ms nb nl pl pt-BR pt-PT ro ru sk sr sv sw ta te th tr uk vi
+ zh-CN zh-TW
+"
+
+# These are intended for ebuild maintainer use to force RPM if DEB is not available.
+: ${OPERA_FORCE_RPM=no}
+
+inherit chromium-2 pax-utils xdg
+
+if [[ ${OPERA_FORCE_RPM} == yes ]]; then
+ inherit rpm
+ OPERA_ARCHIVE_EXT="rpm"
+else
+ inherit unpacker
+ OPERA_ARCHIVE_EXT="deb"
+fi
+
+DESCRIPTION="A fast and secure web browser"
+HOMEPAGE="https://www.opera.com/"
+
+SRC_URI_BASE=(
+ "https://download1.operacdn.com/pub/${PN}"
+ "https://download2.operacdn.com/pub/${PN}"
+ "https://download3.operacdn.com/pub/${PN}"
+ "https://download4.operacdn.com/pub/${PN}"
+)
+
+if [[ ${PN} == opera ]]; then
+ MY_PN=${PN}-stable
+ SRC_URI_BASE=( "${SRC_URI_BASE[@]/%//desktop}" )
+else
+ MY_PN=${PN}
+fi
+
+# Commit ref from `strings libffmpeg.so | grep -F "FFmpeg version"` matches this Chromium version
+# used to select the correct ffmpeg-chromium version (corresponds to a major version of Chromium)
+# Does not need to be updated for every new version of Opera, only when it breaks
+CHROMIUM_VERSION="124"
+SRC_URI="${SRC_URI_BASE[@]/%//${PV}/linux/${MY_PN}_${PV}_amd64.${OPERA_ARCHIVE_EXT}}"
+S=${WORKDIR}
+
+LICENSE="OPERA-2018"
+SLOT="0"
+KEYWORDS="-* amd64"
+IUSE="+ffmpeg-chromium +proprietary-codecs +suid qt5 qt6"
+RESTRICT="bindist mirror strip"
+
+RDEPEND="
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/nspr
+ dev-libs/nss
+ gnome-base/gsettings-desktop-schemas
+ media-libs/alsa-lib
+ media-libs/mesa[gbm(+)]
+ net-misc/curl
+ net-print/cups
+ sys-apps/dbus
+ sys-libs/glibc
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf
+ x11-libs/gtk+:3
+ x11-libs/libdrm
+ x11-libs/libxcb
+ x11-libs/libxkbcommon
+ x11-libs/libxshmfence
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXrandr
+ x11-libs/pango
+ proprietary-codecs? (
+ !ffmpeg-chromium? ( >=media-video/ffmpeg-6.1-r1:0/58.60.60[chromium] )
+ ffmpeg-chromium? ( media-video/ffmpeg-chromium:${CHROMIUM_VERSION} )
+ )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5[X]
+ dev-qt/qtwidgets:5
+ )
+ qt6? ( dev-qt/qtbase:6[gui,widgets] )
+"
+
+QA_PREBUILT="*"
+OPERA_HOME="opt/opera${PN#opera}"
+
+pkg_pretend() {
+ # Protect against people using autounmask overzealously
+ use amd64 || die "opera only works on amd64"
+}
+
+pkg_setup() {
+ chromium_suid_sandbox_check_kernel_config
+}
+
+src_unpack() {
+ :
+}
+
+src_install() {
+ dodir /
+ cd "${ED}" || die
+ if [[ ${OPERA_FORCE_RPM} == yes ]]; then
+ rpm_src_unpack "${A[0]}"
+ else
+ unpacker
+ fi
+
+ # move to /opt, bug #573052
+ mkdir -p "${OPERA_HOME%${PN}}"
+ if [[ ${OPERA_FORCE_RPM} == yes ]]; then
+ mv "usr/lib64/${PN}" "${OPERA_HOME%${PN}}" || die
+ else
+ mv "usr/lib/x86_64-linux-gnu/${PN}" "${OPERA_HOME%${PN}}" || die
+ fi
+ rm -r "usr/lib" || die
+
+ # disable auto update
+ rm "${OPERA_HOME}/${PN%-*}_autoupdate"{,.licenses,.version} || die
+
+ if [[ ${OPERA_FORCE_RPM} == yes ]]; then
+ rm "${OPERA_HOME}/setup_repo.sh" || die
+ else
+ rm -r "usr/share/lintian" || die
+
+ # fix docs
+ mv usr/share/doc/${MY_PN} usr/share/doc/${PF} || die
+ gzip -d usr/share/doc/${PF}/changelog.gz || die
+ fi
+
+ # fix desktop file
+ sed -i \
+ -e 's|^TargetEnvironment|X-&|g' \
+ usr/share/applications/${PN}.desktop || die
+
+ # remove unused language packs
+ pushd "${OPERA_HOME}/localization" > /dev/null || die
+ chromium_remove_language_paks
+ popd > /dev/null || die
+
+ # setup opera symlink
+ rm "usr/bin/${PN}" || die
+ dosym "../../${OPERA_HOME}/${PN}" "/usr/bin/${PN}"
+
+ # install proprietary codecs
+ rm "${OPERA_HOME}/resources/ffmpeg_preload_config.json" || die
+ if use proprietary-codecs; then
+ dosym ../../usr/$(get_libdir)/chromium/libffmpeg.so$(usex ffmpeg-chromium .${CHROMIUM_VERSION} "") \
+ /${OPERA_HOME}/libffmpeg.so
+ fi
+
+ if ! use qt5; then
+ rm "${OPERA_HOME}/libqt5_shim.so" || die
+ fi
+ if ! use qt6; then
+ rm "${OPERA_HOME}/libqt6_shim.so" || die
+ fi
+
+ # pax mark opera, bug #562038
+ pax-mark m "${OPERA_HOME}/opera"
+ # enable suid sandbox if requested
+ use suid && fperms 4711 "/${OPERA_HOME}/opera_sandbox"
+}
diff --git a/www-client/vivaldi-snapshot/Manifest b/www-client/vivaldi-snapshot/Manifest
index d476916c972d..9a3aca5ed035 100644
--- a/www-client/vivaldi-snapshot/Manifest
+++ b/www-client/vivaldi-snapshot/Manifest
@@ -1,5 +1,9 @@
DIST vivaldi-snapshot_6.7.3329.19-1_amd64.deb 108490132 BLAKE2B f28432dd33c73b9d0dce456bfeb73bf4fa4fff13fce2bb38b4ce08c9c4826b974618afef9469cb598680f3164051bc373b657f0570e6c55abb71bb64008f6af8 SHA512 14ac65dae0ab50b7ddfb473f8a6420ec6048d3dfb8a8a8ef73931976dd55e1312f0b148e1980e2a89fe40e1369731e4b7654a2eb5b7082b6e5bf26a513dbe164
DIST vivaldi-snapshot_6.7.3329.19-1_arm64.deb 99180668 BLAKE2B 54d3d54f79abb2bae61cd772c401b9833cbb61c4c3a87199efcccee20242d9dd5e653e7e0d34a63938a51b0591169d615ca2a321f4de49dcbaffd729e8905254 SHA512 1d68d9fb003245e36ded8ac002fc91294a8e8ff6d9793a8424db074875b649ca3b2b0aad834e1a5bd37d5cfdd086040c8965f260153076e1c5930b800f67876e
DIST vivaldi-snapshot_6.7.3329.19-1_armhf.deb 100322788 BLAKE2B ece4bde88de64dce84aeb1eef498372f5e143f620e8e8dad7a23ebab8c615d7c0f28805c8be2f2925067d8138564d2a8010a5ca5836e0708ca60ff8e5bb11f7a SHA512 4f564b913137399b016c1d70f223152669e85f80326d838089bfc77cafe80a790b91b73b5b64f53fd0dfe6177961315c34632883e690e39bd35acb93987e4f27
+DIST vivaldi-snapshot_6.8.3358.3-1_amd64.deb 108606616 BLAKE2B 03a9e54b3f77dfdddd4901cdf0f705d2db20c7b9b85ff0a660cef11cb1b304947f86ba1befed6901be23c55aac8d0380e293bf5c80692c1f99acee3c97592152 SHA512 bad714103d34b81eb1ad8315846216f281c5890d13b6b7d562f6a5f20d24d4c20370cb64b102eafd505d0fcda70840b43f0d0370ea3ebfa53078a0d9547eae2c
+DIST vivaldi-snapshot_6.8.3358.3-1_arm64.deb 99267888 BLAKE2B dfb6e4ddf32610717acf30c52ea3b58404cdbacaf18b8c86746a81b8de73fb58f64d98d37ee9f4dd5a96fe452790787098d35b1a76a25dd40bf3eb35481d8221 SHA512 b8dbc826b104fc946d69b125ba170920ecce71924e1f236f4e0db4299234c15c18f36b40c7526cb9c3eda757883070c2e95bde28f5dc1667061ea3fa2104385c
+DIST vivaldi-snapshot_6.8.3358.3-1_armhf.deb 100440164 BLAKE2B 005a08199d2f932f3be7523802975140695ae9a608a8397314eb0aaeec149676b42913443b56fc27bfcaabba4a1417874c0a4a88ff87f04c43c284e9bc3e585d SHA512 290b67e63557058151157c015de763298be21e7793b867854db76af8e280c2c6626673ca561e2e465c3c4c21abdd4eebd1d014d5ec976b03b005858dec1cba21
EBUILD vivaldi-snapshot-6.7.3329.19.ebuild 4026 BLAKE2B 512cce4fea112c037908aaf48f30d09473b26d15074a2cc19b4c14894a329027669489fb3c4aab213eb54d408779fe4e5833cd952b0087c987e030aa06e6d1e0 SHA512 71067dc04500cb8b65e09bb79c872696b2e539c543e6078d8848b521d779088e3b4978568099fd17674c5cddde8ed291edf851b07c71f71037aa70f53161dc1a
+EBUILD vivaldi-snapshot-6.8.3358.3.ebuild 4026 BLAKE2B 1c038ec9aa5020afa2de9c1bc09feedacd29f56de8cedd80d381deed644f5b5847f75efe979e378b32644a545bddcb2327e5d02a4e54f48bc291fc0c5e8971f3 SHA512 3771a449d516a2a9e3c4097f3d3adb7a7dbc4e70611bc441310dc59ffa4ef72ddd4acfef95c7db3e05666bb6b8c93fd693444e1988c4fcd72c96b163ca47fca5
MISC metadata.xml 634 BLAKE2B fa3f150ffb5f5da3780098747f71d304c9ceb9828cd4dc7c586ba7032a7ba0b3065c25e5dd84fdab7b4302db8b4c848f116eb5b329f440f8a38837dca005a570 SHA512 f226a355a39cec36b5d6f3f88e7f2132693b5dcf51bdec4676d17f608f16ced52d6b9c5dfac2d38f2245cdf6ff7279286034e77ea119cfb4b7240500f612968e
diff --git a/www-client/vivaldi/vivaldi-6.7.3329.17.ebuild b/www-client/vivaldi-snapshot/vivaldi-snapshot-6.8.3358.3.ebuild
index 8739f8048d38..8e5ee528e3af 100644
--- a/www-client/vivaldi/vivaldi-6.7.3329.17.ebuild
+++ b/www-client/vivaldi-snapshot/vivaldi-snapshot-6.8.3358.3.ebuild
@@ -97,7 +97,6 @@ else
DEB_REV=1
fi
-KEYWORDS="-* ~amd64 ~arm ~arm64"
VIVALDI_BASE_URI="https://downloads.vivaldi.com/${VIVALDI_PN#vivaldi-}/${VIVALDI_PN}_${PV%_p*}-${DEB_REV}_"
SRC_URI="
@@ -106,8 +105,10 @@ SRC_URI="
arm64? ( ${VIVALDI_BASE_URI}arm64.deb )
"
+S="${WORKDIR}"
LICENSE="Vivaldi"
SLOT="0"
+KEYWORDS="-* ~amd64 ~arm ~arm64"
IUSE="ffmpeg-chromium gtk proprietary-codecs qt5 qt6 widevine"
RESTRICT="bindist mirror"
REQUIRED_USE="ffmpeg-chromium? ( proprietary-codecs )"
@@ -149,7 +150,6 @@ RDEPEND="
QA_PREBUILT="*"
CONFIG_CHECK="~CPU_FREQ"
-S="${WORKDIR}"
src_unpack() {
unpack_deb ${A}
diff --git a/www-client/vivaldi/Manifest b/www-client/vivaldi/Manifest
index 9166d66c0221..35920a8803fc 100644
--- a/www-client/vivaldi/Manifest
+++ b/www-client/vivaldi/Manifest
@@ -1,9 +1,9 @@
-DIST vivaldi-stable_6.6.3271.61-1_amd64.deb 107518328 BLAKE2B fab00da21d1f3c4d7b0497e852774747b8f22911fdb94bc1a951265bb5b7b348803d1c6ee1f3acce18577afee2dbeabea360aacc1ef753eaa42b984758573358 SHA512 7fc2ed33b18b1cf845795ac783bb73bc9f6b8c86f22fd98e663e3f97a5c1e8b91d793763f453a1745754b421c8ff257c76c09d90ca7daeca5ea7e449607f4284
-DIST vivaldi-stable_6.6.3271.61-1_arm64.deb 100650596 BLAKE2B bfb8ed6ee26531c25ec9982d51d7738d5e90220ba0df866d311f4de2431b40d7e5503366dbd109a48bb615c093ab71bffedbda8ebdbd42b3203dd2f4f4f6eed8 SHA512 9b4e75fe2be57a0e9278b05d541a30ed7c0661d967140d22eab6376a0fe226b3bd4c32f63a166e346da1e9b931a514c3ef11437d1f4227fbe3022b45a2912a32
-DIST vivaldi-stable_6.6.3271.61-1_armhf.deb 102006152 BLAKE2B d71ea7a8e5f590194d043aaf41f19a59fdd9ae0c04170b105c594eff7df77514dc29a400aae6293095d279c39c2cb06da45b67ce1d0a372acf806fcb28631218 SHA512 b668bb10601cb3e0903b10826d57445ea1e9c69ac7694576a30fb4d4a97415556fa21740e50fafe07116a1f45838505bbc298ad36c71d44e9fcf8544054d2436
-DIST vivaldi-stable_6.7.3329.17-1_amd64.deb 108482112 BLAKE2B 8edbcb501815c6f357670a165d64c7ab2afd831c3e31b3f1a415e7b9e729e32cba2c50ec72abc430fa08fdbab4be5c3d93137fb42bcf7c19db2c75ea2d873416 SHA512 e66801822652fce29ed1514c6fc23011cbd899bae36682780ee45a807b7459ca7489e220d537dd4692691b665bc4a3ce3d1a9afc142114e4a24ae18cdd6fdbbc
-DIST vivaldi-stable_6.7.3329.17-1_arm64.deb 99161004 BLAKE2B 3384b4bf9c3f340193119c5828cba9548692edb22069da5efc124efe683dd3a2ec9ff83c8ce249669a5ee435ba3ccf35ce6d59933a00bc2ca181a0a0ab7a4b0f SHA512 18e1a323d5e9791380141e58e5ecb39f43dff7a488d18445f0711792c71f28728d17891ff3f4f0da7175004707e9aac099ac812d300db029dfa0940335323ebe
-DIST vivaldi-stable_6.7.3329.17-1_armhf.deb 100332728 BLAKE2B b9be3b1d740a1d25d6ed642e97c22514b643581f2c092863d1e2196cc841e13b54d68319661216d3c001fe4d825f5d3e6cddcd59d0b470047501e0d4ea2cbfa7 SHA512 84431823912139d0792f38ae31d02faf7d4f1e4ee35119940b133d11de7fb50cb99b36487bd7979c93cb03848b2162718d05fb2c844944ff9ef08e6e5d689604
-EBUILD vivaldi-6.6.3271.61.ebuild 4084 BLAKE2B e2cb8f4829c1c9e42ec2243f51d45993c181837c9c65b224034326f92a8d87505ca11200b632eb4886adcf4718e7c1749262a9652741d9ed86ecbf981056bfec SHA512 8bdfadd6930c461f7bc107d7fcb646b77f0c1c409b1c93d7e6875442a8810069bc78bd86e5620526b0e95e3e9cd777a06a48757257ab43c9cd0c8110d033c3e2
-EBUILD vivaldi-6.7.3329.17.ebuild 4026 BLAKE2B 512cce4fea112c037908aaf48f30d09473b26d15074a2cc19b4c14894a329027669489fb3c4aab213eb54d408779fe4e5833cd952b0087c987e030aa06e6d1e0 SHA512 71067dc04500cb8b65e09bb79c872696b2e539c543e6078d8848b521d779088e3b4978568099fd17674c5cddde8ed291edf851b07c71f71037aa70f53161dc1a
+DIST vivaldi-stable_6.7.3329.27-1_amd64.deb 108540168 BLAKE2B d483222f6df707e19b5ca24a004452cb3ddd54e45531d1d12e7360cb7ae990620bbd3c57d345f183827ea811215fb31ec74df8e48bc043675f08a9bef09f18bc SHA512 02bbd5c29da6817114d741f87102af4d9beeb7777e6bf9d8f141ac62ad3d5ea91818f3ff0965bc8697fba57f30eb6aa6c0d6e9f48624e7637cc7769937662670
+DIST vivaldi-stable_6.7.3329.27-1_arm64.deb 99168892 BLAKE2B 1ffccb26b7606e436855d86bbfb37d0c07efe4d06c47dbcf4fcc0ca16f72f42d5d5565ab28f31473b0a6886fe6fc11b47a0d65c2ecf66f73595705f9ba91d2ec SHA512 a40bd296328f389980e4fa1692f09585446ed83f90a9b3f05e39ecee7b2d4ffe10f66e6c2c50865f55987d9172ef60f08db021c934e9fa136a26172d3ffdf51a
+DIST vivaldi-stable_6.7.3329.27-1_armhf.deb 100344632 BLAKE2B 755d51a7084bfec4d7f919ced5a0b606e44833853cb5444dbd1dd27d7548db0866377119455ada505f27f9a3bb75178e41898391bf8074f1652ed5609cc11793 SHA512 e376e127e044790a6d4fc9d9f79c2b7632037b43bd431c6e5d016155cf74425073ade360faf8a58426e58b98bac4631015916499b565119d4058eed1e62a633c
+DIST vivaldi-stable_6.7.3329.31-1_amd64.deb 108478272 BLAKE2B 59bdc90e84fc1fd0ca514e6fd233a2d38c5681b2a21a479bab4ab7861bbbfca1374836550a6645102daf8bd5a6c72350fe42b35b285e7d37f4b66d809ee60abe SHA512 913f12db7f28c96f4e1f22234bfa4f3cd92c84f0863f1adac1d65993a45f509f4c20622ec207cb5d9a44dcb8a3e91fc8a215518fcf39441657adb302c2a9a9a9
+DIST vivaldi-stable_6.7.3329.31-1_arm64.deb 99174948 BLAKE2B dfd0dc4b612f2ee99f9e02b08fc2be5f4d2389a08ab8682d03378eb5445816468e56096d6aa0d56abc3909b4dd48987fb65bf6c572673b0d1ce5fa76b1e3923a SHA512 efda1337443d2120c37397e5eff1ba854c3ea20eb24240802b0b26fb925a7825fe7d6590050f1b7a2ddb667f208fbbafd37aa1df622d1574ac58edd3ddc38d46
+DIST vivaldi-stable_6.7.3329.31-1_armhf.deb 100346512 BLAKE2B 0bac5b640f845bdef43a05d77ea038a83b0190d975c5aacff67cabac8b7728cecee061802820952e63810b67537323ef98a84503628d6b99963de19f66bf967c SHA512 6f8f2c1ca12c9246b891816da27e571cb621d5f685bb0ecd5f7f60d857b5dcf55a71c98699b743a23bb3e75d97e3b589bb8dcb475e6c66cb441bfceb43f5c67e
+EBUILD vivaldi-6.7.3329.27.ebuild 4025 BLAKE2B 8546c9ae21968c413c6b833b03ae96c53c7d16b8b3527340407d2792811049439e9bcd6ab9c6c9ff9ee0e3afe672f075f6cb9810ffe83cb5a782876aaa31c672 SHA512 6a228e3234f16ab8b9c4c42c7a9441d907965e66ede11a1c9a87f1ba0cced51defcc12296310e9c2b9a6883169e71bc68fdc236c686cd2aa46861aff82190dcc
+EBUILD vivaldi-6.7.3329.31.ebuild 4026 BLAKE2B 1c038ec9aa5020afa2de9c1bc09feedacd29f56de8cedd80d381deed644f5b5847f75efe979e378b32644a545bddcb2327e5d02a4e54f48bc291fc0c5e8971f3 SHA512 3771a449d516a2a9e3c4097f3d3adb7a7dbc4e70611bc441310dc59ffa4ef72ddd4acfef95c7db3e05666bb6b8c93fd693444e1988c4fcd72c96b163ca47fca5
MISC metadata.xml 634 BLAKE2B fa3f150ffb5f5da3780098747f71d304c9ceb9828cd4dc7c586ba7032a7ba0b3065c25e5dd84fdab7b4302db8b4c848f116eb5b329f440f8a38837dca005a570 SHA512 f226a355a39cec36b5d6f3f88e7f2132693b5dcf51bdec4676d17f608f16ced52d6b9c5dfac2d38f2245cdf6ff7279286034e77ea119cfb4b7240500f612968e
diff --git a/www-client/vivaldi/vivaldi-6.6.3271.61.ebuild b/www-client/vivaldi/vivaldi-6.7.3329.27.ebuild
index f4b2de2436f2..7472bdfd5b50 100644
--- a/www-client/vivaldi/vivaldi-6.6.3271.61.ebuild
+++ b/www-client/vivaldi/vivaldi-6.7.3329.27.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-CHROMIUM_VERSION="121"
+CHROMIUM_VERSION="124"
CHROMIUM_LANGS="
af
am
@@ -50,7 +50,6 @@ CHROMIUM_LANGS="
kab
kn
ko
- ku
lt
lv
mk
@@ -98,7 +97,6 @@ else
DEB_REV=1
fi
-KEYWORDS="-* amd64 ~arm ~arm64"
VIVALDI_BASE_URI="https://downloads.vivaldi.com/${VIVALDI_PN#vivaldi-}/${VIVALDI_PN}_${PV%_p*}-${DEB_REV}_"
SRC_URI="
@@ -107,11 +105,13 @@ SRC_URI="
arm64? ( ${VIVALDI_BASE_URI}arm64.deb )
"
+S="${WORKDIR}"
LICENSE="Vivaldi"
SLOT="0"
+KEYWORDS="-* amd64 ~arm ~arm64"
IUSE="ffmpeg-chromium gtk proprietary-codecs qt5 qt6 widevine"
RESTRICT="bindist mirror"
-#REQUIRED_USE="ffmpeg-chromium? ( proprietary-codecs )"
+REQUIRED_USE="ffmpeg-chromium? ( proprietary-codecs )"
RDEPEND="
>=app-accessibility/at-spi2-core-2.46.0:2
@@ -150,7 +150,6 @@ RDEPEND="
QA_PREBUILT="*"
CONFIG_CHECK="~CPU_FREQ"
-S="${WORKDIR}"
src_unpack() {
unpack_deb ${A}
@@ -175,6 +174,7 @@ src_prepare() {
pushd ${VIVALDI_HOME}/locales > /dev/null || die
rm ja-KS.pak || die # No flag for Kansai as not in IETF list.
+ rm kmr.pak || die # No flag for Kurmanji.
chromium_remove_language_paks
popd > /dev/null || die
@@ -192,11 +192,6 @@ src_prepare() {
rm ${VIVALDI_HOME}/libqt6_shim.so || die
fi
- # Bug #928519, #928520.
- if ! use amd64; then
- rm ${VIVALDI_HOME}/relayproxy-linux || die
- fi
-
eapply_user
}
diff --git a/www-client/vivaldi/vivaldi-6.7.3329.31.ebuild b/www-client/vivaldi/vivaldi-6.7.3329.31.ebuild
new file mode 100644
index 000000000000..8e5ee528e3af
--- /dev/null
+++ b/www-client/vivaldi/vivaldi-6.7.3329.31.ebuild
@@ -0,0 +1,226 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CHROMIUM_VERSION="124"
+CHROMIUM_LANGS="
+ af
+ am
+ ar
+ az
+ be
+ bg
+ bn
+ ca
+ ca-valencia
+ cs
+ da
+ de
+ de-CH
+ el
+ en-GB
+ en-US
+ eo
+ es
+ es-419
+ es-PE
+ et
+ eu
+ fa
+ fi
+ fil
+ fr
+ fy
+ gd
+ gl
+ gu
+ he
+ hi
+ hr
+ hu
+ hy
+ id
+ io
+ is
+ it
+ ja
+ jbo
+ ka
+ kab
+ kn
+ ko
+ lt
+ lv
+ mk
+ ml
+ mr
+ ms
+ nb
+ nl
+ nn
+ pa
+ pl
+ pt-BR
+ pt-PT
+ ro
+ ru
+ sc
+ sk
+ sl
+ sq
+ sr
+ sr-Latn
+ sv
+ sw
+ ta
+ te
+ th
+ tr
+ uk
+ ur
+ vi
+ zh-CN
+ zh-TW
+"
+
+inherit chromium-2 desktop linux-info toolchain-funcs unpacker xdg
+
+VIVALDI_PN="${PN/%vivaldi/vivaldi-stable}"
+VIVALDI_HOME="opt/${PN}"
+DESCRIPTION="A browser for our friends"
+HOMEPAGE="https://vivaldi.com/"
+
+if [[ ${PV} = *_p* ]]; then
+ DEB_REV="${PV#*_p}"
+else
+ DEB_REV=1
+fi
+
+VIVALDI_BASE_URI="https://downloads.vivaldi.com/${VIVALDI_PN#vivaldi-}/${VIVALDI_PN}_${PV%_p*}-${DEB_REV}_"
+
+SRC_URI="
+ amd64? ( ${VIVALDI_BASE_URI}amd64.deb )
+ arm? ( ${VIVALDI_BASE_URI}armhf.deb )
+ arm64? ( ${VIVALDI_BASE_URI}arm64.deb )
+"
+
+S="${WORKDIR}"
+LICENSE="Vivaldi"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~arm ~arm64"
+IUSE="ffmpeg-chromium gtk proprietary-codecs qt5 qt6 widevine"
+RESTRICT="bindist mirror"
+REQUIRED_USE="ffmpeg-chromium? ( proprietary-codecs )"
+
+RDEPEND="
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/nspr
+ dev-libs/nss
+ media-libs/alsa-lib
+ media-libs/mesa[gbm(+)]
+ net-print/cups
+ sys-apps/dbus
+ x11-libs/cairo
+ x11-libs/libdrm
+ x11-libs/libX11
+ x11-libs/libxcb
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libxkbcommon
+ x11-libs/libXrandr
+ x11-libs/pango[X]
+ gtk? ( gui-libs/gtk:4 x11-libs/gtk+:3 )
+ proprietary-codecs? (
+ !ffmpeg-chromium? ( >=media-video/ffmpeg-6.1-r1:0/58.60.60[chromium] )
+ ffmpeg-chromium? ( media-video/ffmpeg-chromium:${CHROMIUM_VERSION} )
+ )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtwidgets:5
+ )
+ qt6? ( dev-qt/qtbase:6[gui,widgets] )
+ widevine? ( www-plugins/chrome-binary-plugins )
+"
+
+QA_PREBUILT="*"
+CONFIG_CHECK="~CPU_FREQ"
+
+src_unpack() {
+ unpack_deb ${A}
+}
+
+src_prepare() {
+ # Rename docs directory to our needs.
+ mv usr/share/doc/{${VIVALDI_PN},${PF}}/ || die
+
+ # Decompress the docs.
+ gunzip usr/share/doc/${PF}/changelog.gz || die
+
+ # The appdata directory is deprecated.
+ mv usr/share/{appdata,metainfo}/ || die
+
+ # Remove cron job for updating from Debian repos.
+ rm etc/cron.daily/${PN} ${VIVALDI_HOME}/cron/${PN} || die
+ rmdir etc/{cron.daily/,} ${VIVALDI_HOME}/cron/ || die
+
+ # Remove scripts that will most likely break things.
+ rm -vf ${VIVALDI_HOME}/update-{ffmpeg,widevine} || die
+
+ pushd ${VIVALDI_HOME}/locales > /dev/null || die
+ rm ja-KS.pak || die # No flag for Kansai as not in IETF list.
+ rm kmr.pak || die # No flag for Kurmanji.
+ chromium_remove_language_paks
+ popd > /dev/null || die
+
+ if use proprietary-codecs; then
+ einfo Bundled $($(tc-getSTRINGS) ${VIVALDI_HOME}/lib/libffmpeg.so | grep -m1 "^FFmpeg version ")
+ rm ${VIVALDI_HOME}/lib/libffmpeg.so || die
+ rmdir ${VIVALDI_HOME}/lib || die
+ fi
+
+ if ! use qt5; then
+ rm ${VIVALDI_HOME}/libqt5_shim.so || die
+ fi
+
+ if ! use qt6; then
+ rm ${VIVALDI_HOME}/libqt6_shim.so || die
+ fi
+
+ eapply_user
+}
+
+src_install() {
+ mv */ "${D}" || die
+ dosym ../../${VIVALDI_HOME}/${PN} /usr/bin/${VIVALDI_PN}
+ fperms 4711 /${VIVALDI_HOME}/vivaldi-sandbox
+
+ local logo size
+ for logo in "${ED}"/${VIVALDI_HOME}/product_logo_*.png; do
+ size=${logo##*_}
+ size=${size%.*}
+ newicon -s "${size}" "${logo}" ${PN}.png
+ done
+
+ if use proprietary-codecs; then
+ dosym ../../usr/$(get_libdir)/chromium/libffmpeg.so$(usex ffmpeg-chromium .${CHROMIUM_VERSION} "") \
+ /${VIVALDI_HOME}/libffmpeg.so.$(ver_cut 1-2)
+ fi
+
+ if use widevine; then
+ dosym ../../usr/$(get_libdir)/chromium-browser/WidevineCdm \
+ /${VIVALDI_HOME}/WidevineCdm
+ else
+ rm "${ED}"/${VIVALDI_HOME}/WidevineCdm || die
+ fi
+
+ case ${PN} in
+ vivaldi) dosym ${VIVALDI_PN} /usr/bin/${PN} ;;
+ vivaldi-snapshot) dosym ${PN} /${VIVALDI_HOME}/vivaldi ;;
+ esac
+}