about summary refs log tree commit diff
path: root/pkgs/development
diff options
context:
space:
mode:
authorEmily <git@emilylange.de>2023-12-06 21:58:56 +0100
committerGitHub <noreply@github.com>2023-12-06 21:58:56 +0100
commit04236bd707e1d273affe4d96e5730837c3de3c30 (patch)
treea835eb79a434f66e32388b2f71585913c7311479 /pkgs/development
parentd00664e44c9b931e31f4572f96fb4caba4ee57e2 (diff)
parent09159529f97cd4905af4973fbf5b98b85de1b371 (diff)
Merge pull request #271677 from yu-re-ka/electron
Electron updates
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/tools/electron/binary/generic.nix2
-rw-r--r--pkgs/development/tools/electron/common.nix12
-rw-r--r--pkgs/development/tools/electron/electron-26-remove-web_tests-patch.patch73
-rw-r--r--pkgs/development/tools/electron/info.json1130
-rw-r--r--pkgs/development/tools/electron/version-old.patch42
-rw-r--r--pkgs/development/tools/electron/version.patch4
6 files changed, 238 insertions, 1025 deletions
diff --git a/pkgs/development/tools/electron/binary/generic.nix b/pkgs/development/tools/electron/binary/generic.nix
index 6e1493528e2b5..bf845eed8d86f 100644
--- a/pkgs/development/tools/electron/binary/generic.nix
+++ b/pkgs/development/tools/electron/binary/generic.nix
@@ -40,7 +40,7 @@ let
       ++ optionals (versionAtLeast version "11.0.0") [ "aarch64-darwin" ]
       ++ optionals (versionOlder version "19.0.0") [ "i686-linux" ];
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
-    knownVulnerabilities = optional (versionOlder version "25.0.0") "Electron version ${version} is EOL";
+    knownVulnerabilities = optional (versionOlder version "26.0.0") "Electron version ${version} is EOL";
   };
 
   fetcher = vers: tag: hash: fetchurl {
diff --git a/pkgs/development/tools/electron/common.nix b/pkgs/development/tools/electron/common.nix
index 19725cc8f148a..497a321c3f140 100644
--- a/pkgs/development/tools/electron/common.nix
+++ b/pkgs/development/tools/electron/common.nix
@@ -42,12 +42,16 @@ in (chromium.override { upstream-info = info.chromium; }).mkDerivation (base: {
 
   src = null;
 
-  patches = base.patches ++ lib.optional (lib.versionOlder info.version "28")
+  patches = base.patches ++ lib.optional (lib.versionOlder info.version "27")
     (substituteAll {
       name = "version.patch";
-      src = if lib.versionAtLeast info.version "27" then ./version.patch else ./version-old.patch;
+      src = ./version.patch;
       inherit (info) version;
     })
+
+  # we remove the web_tests directory in the chromium src FOD to reduce the output size, but this backported patch includes patches on web_tests
+  ++ lib.optional (lib.versions.major info.version == "26")
+    ./electron-26-remove-web_tests-patch.patch
   ;
 
   unpackPhase = ''
@@ -165,9 +169,7 @@ in (chromium.override { upstream-info = info.chromium; }).mkDerivation (base: {
     enable_widevine = false;
     use_perfetto_client_library = false;
     enable_check_raw_ptr_fields = false;
-  } // lib.optionalAttrs (lib.versionOlder info.version "26")  {
-    use_gnome_keyring = false;
-  } // lib.optionalAttrs (lib.versionAtLeast info.version "28")  {
+  } // lib.optionalAttrs (lib.versionAtLeast info.version "27")  {
     override_electron_version = info.version;
   };
 
diff --git a/pkgs/development/tools/electron/electron-26-remove-web_tests-patch.patch b/pkgs/development/tools/electron/electron-26-remove-web_tests-patch.patch
new file mode 100644
index 0000000000000..f3dfce6f41448
--- /dev/null
+++ b/pkgs/development/tools/electron/electron-26-remove-web_tests-patch.patch
@@ -0,0 +1,73 @@
+diff --git a/electron/patches/chromium/cherry-pick-80106e31c7ea.patch b/electron/patches/chromium/cherry-pick-80106e31c7ea.patch
+index 3f8ae7d1b2..af8859a1a5 100644
+--- a/electron/patches/chromium/cherry-pick-80106e31c7ea.patch
++++ b/electron/patches/chromium/cherry-pick-80106e31c7ea.patch
+@@ -361,68 +361,3 @@ index 3d562fa22bd84dc438abfe9fa883eff6f5846b1b..c64c7fb1b15f7f523b37671abca2ab50
+    auto* resolver = MakeGarbageCollected<ScriptPromiseResolver>(
+        script_state, exception_state.GetContext());
+    ScriptPromise promise = resolver->Promise();
+-diff --git a/third_party/blink/web_tests/external/wpt/webusb/usbDevice.https.any.js b/third_party/blink/web_tests/external/wpt/webusb/usbDevice.https.any.js
+-index b1b0c133ce160a314ea392514ac5b38e4cac136d..804af2afb9db3a0d5fafbeb26aed64f89badb1b3 100644
+---- a/third_party/blink/web_tests/external/wpt/webusb/usbDevice.https.any.js
+-+++ b/third_party/blink/web_tests/external/wpt/webusb/usbDevice.https.any.js
+-@@ -1247,3 +1247,60 @@ usb_test((t) => {
+-         .then(() => promise_rejects_dom(t, 'NotFoundError', device.reset()));
+-   });
+- }, 'resetDevice rejects when called on a disconnected device');
+-+
+-+usb_test(async (t) => {
+-+  const PACKET_COUNT = 4;
+-+  const PACKET_LENGTH = 8;
+-+  const {device, fakeDevice} = await getFakeDevice();
+-+  await device.open();
+-+  await device.selectConfiguration(2);
+-+  await device.claimInterface(0);
+-+  await device.selectAlternateInterface(0, 1);
+-+  const buffer = new Uint8Array(PACKET_COUNT * PACKET_LENGTH);
+-+  const packetLengths = new Array(PACKET_COUNT).fill(PACKET_LENGTH);
+-+  packetLengths[0] = PACKET_LENGTH - 1;
+-+  await promise_rejects_dom(
+-+      t, 'DataError', device.isochronousTransferOut(1, buffer, packetLengths));
+-+}, 'isochronousTransferOut rejects when buffer size exceeds packet lengths');
+-+
+-+usb_test(async (t) => {
+-+  const PACKET_COUNT = 4;
+-+  const PACKET_LENGTH = 8;
+-+  const {device, fakeDevice} = await getFakeDevice();
+-+  await device.open();
+-+  await device.selectConfiguration(2);
+-+  await device.claimInterface(0);
+-+  await device.selectAlternateInterface(0, 1);
+-+  const buffer = new Uint8Array(PACKET_COUNT * PACKET_LENGTH);
+-+  const packetLengths = new Array(PACKET_COUNT).fill(PACKET_LENGTH);
+-+  packetLengths[0] = PACKET_LENGTH + 1;
+-+  await promise_rejects_dom(
+-+      t, 'DataError', device.isochronousTransferOut(1, buffer, packetLengths));
+-+}, 'isochronousTransferOut rejects when packet lengths exceed buffer size');
+-+
+-+usb_test(async (t) => {
+-+  const PACKET_COUNT = 2;
+-+  const PACKET_LENGTH = 8;
+-+  const {device, fakeDevice} = await getFakeDevice();
+-+  await device.open();
+-+  await device.selectConfiguration(2);
+-+  await device.claimInterface(0);
+-+  await device.selectAlternateInterface(0, 1);
+-+  const packetLengths = [0xffffffff, 1];
+-+  await promise_rejects_dom(
+-+      t, 'DataError', device.isochronousTransferIn(1, packetLengths));
+-+}, 'isochronousTransferIn rejects when packet lengths exceed maximum size');
+-+
+-+usb_test(async (t) => {
+-+  const PACKET_COUNT = 2;
+-+  const PACKET_LENGTH = 8;
+-+  const {device, fakeDevice} = await getFakeDevice();
+-+  await device.open();
+-+  await device.selectConfiguration(2);
+-+  await device.claimInterface(0);
+-+  await device.selectAlternateInterface(0, 1);
+-+  const buffer = new Uint8Array(PACKET_LENGTH * PACKET_COUNT);
+-+  const packetLengths = [0xffffffff, 1];
+-+  await promise_rejects_dom(
+-+      t, 'DataError', device.isochronousTransferOut(1, buffer, packetLengths));
+-+}, 'isochronousTransferOut rejects when packet lengths exceed maximum size');
diff --git a/pkgs/development/tools/electron/info.json b/pkgs/development/tools/electron/info.json
index a3b470f78d7b7..88b446fe42555 100644
--- a/pkgs/development/tools/electron/info.json
+++ b/pkgs/development/tools/electron/info.json
@@ -3,16 +3,16 @@
         "deps": {
             "src/electron": {
                 "fetcher": "fetchFromGitHub",
-                "hash": "sha256-TOsL+5sF65sOCSLx0yamXWC5olYbDUO/Np9HK5sT5DI=",
+                "hash": "sha256-c3crd1hOiRYQAIEApVmE2gGsfW30rbQrr61Hmdryftk=",
                 "owner": "electron",
                 "repo": "electron",
-                "rev": "v28.0.0-alpha.3"
+                "rev": "v28.0.0"
             },
             "src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-5lIe6mjAee6DUOPDvPM43QJ7VKRQ960w7UqxbXPRPIA=",
+                "hash": "sha256-umUgGlclsdK6EDucwQXqL5/ExXuzAE6SYZcdlV0WHg0=",
                 "url": "https://chromium.googlesource.com/chromium/src.git",
-                "rev": "119.0.6045.21",
+                "rev": "120.0.6099.56",
                 "postFetch": "rm -r $out/third_party/blink/web_tests; rm -r $out/third_party/hunspell/tests; rm -r $out/content/test/data; rm -r $out/courgette/testdata; rm -r $out/extensions/test/data; rm -r $out/media/test/data; "
             },
             "src/third_party/clang-format/script": {
@@ -23,21 +23,21 @@
             },
             "src/third_party/libc++/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-6kuGJCCRgOwrV85e2i+UTyzt40u2pTET6cs0/MtI9Hk=",
+                "hash": "sha256-DVO15xGxatRbUp13EoNslGEZ2QSHn97VbEBHyfMvKfQ=",
                 "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git",
-                "rev": "7cf98622abaf832e2d4784889ebc69d5b6fde4d8"
+                "rev": "a429c26ae25c26a569ff12390d5f9be70c5e286b"
             },
             "src/third_party/libc++abi/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-iFIXi4kq/LhNhFPJG4UJfO08MCxvthpiZ0WT9jg0lHE=",
+                "hash": "sha256-QjCPRgFU34wZ8GG/dl+6wi2gflje3fG/x+eokb9W02c=",
                 "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git",
-                "rev": "e8e4eb8f1c413ea4365256b2b83a6093c95d2d86"
+                "rev": "2ca9f38714b1465b9f55b5fbd0da5e4342811e2b"
             },
             "src/third_party/libunwind/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-ytY/QvFzbqkGbsB+um1Rxo+O5DEOFUxUzRIuKMrC8YE=",
+                "hash": "sha256-bQHo8CKDpqvJcVv6OzVO7LOGTqL9qHqD4n9TtRK0v5g=",
                 "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git",
-                "rev": "43e5a34c5b7066a7ee15c74f09dc37b4b9b5630e"
+                "rev": "7686b5d38c69d14932abfb1c1a66ba56c78791ad"
             },
             "src/chrome/test/data/perf/canvas_bench": {
                 "fetcher": "fetchFromGitiles",
@@ -59,9 +59,9 @@
             },
             "src/docs/website": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-aYgan6NIIIWDzCplczvU57TZQ6GAluejBoWjfx5FPs4=",
+                "hash": "sha256-+UawYfW5FAMpv0TbzSR8qITPGUQulLIZ0mUh6ZdnmMI=",
                 "url": "https://chromium.googlesource.com/website.git",
-                "rev": "98972e05cf600ceefe641ac5d83b661e2792fcb4"
+                "rev": "07714da3c28b942dc8522affed4487403e971545"
             },
             "src/media/cdm/api": {
                 "fetcher": "fetchFromGitiles",
@@ -71,15 +71,15 @@
             },
             "src/net/third_party/quiche/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-dziuBpghbxrXXH6on6WxYvfHInSaUWyNrWbYwAJeMuA=",
+                "hash": "sha256-JXWGEsJrXRXs2BrkWIC8cUBD6uvt8ftb9V5Dy2yLc/w=",
                 "url": "https://quiche.googlesource.com/quiche.git",
-                "rev": "0c75f987990bfb2fe27eeaa8f3cc78f98f3ef42d"
+                "rev": "a01a131ca6df63e774809d623f47e8cf28c574cc"
             },
             "src/third_party/angle": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-2JvDcfRiwFDjiGWlzwsTq6HP/I6lq+NaI6S57ZrCLGY=",
+                "hash": "sha256-AMwWqLnRSb4FdOsiMB9Q2znX+FPCrS94FXYAc6dCdLg=",
                 "url": "https://chromium.googlesource.com/angle/angle.git",
-                "rev": "5cff2421ef225d14d3a4253b81073389fc840024"
+                "rev": "76ead87021b954ab670d0c1e682f4828cb6adf25"
             },
             "src/third_party/angle/third_party/glmark2/src": {
                 "fetcher": "fetchFromGitiles",
@@ -95,15 +95,15 @@
             },
             "src/third_party/angle/third_party/VK-GL-CTS/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-yXo4h4SgMdmHxtT5IeFDzBa5hq/7RZtMRrktaLJkvfs=",
+                "hash": "sha256-+g1yjF1yETrL1X6Cxu5mhPWXukWygg1dnawU8S9cGkA=",
                 "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS",
-                "rev": "a55b0930e9db612b25cc67701569931200bc2ee0"
+                "rev": "7d738783bf286e82937e431c295d4682f3767267"
             },
             "src/third_party/anonymous_tokens/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-/AuMmFWKOaYCsd9cHbZBYUqJUHXJ0xxOuIWe/+lEZ1c=",
+                "hash": "sha256-2B0j9vNF8nMhmedk+ghz4JJJiDKN6jnVfdqsa4zRWeU=",
                 "url": "https://chromium.googlesource.com/external/github.com/google/anonymous-tokens.git",
-                "rev": "79562f0175dba82f671046b5bdea0853323445b7"
+                "rev": "47d423347823088a21b26262ca553eadb8e5b220"
             },
             "src/third_party/content_analysis_sdk/src": {
                 "fetcher": "fetchFromGitiles",
@@ -113,15 +113,15 @@
             },
             "src/third_party/dav1d/libdav1d": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-KSo2s3M3S13gY84NlAdnPsjoKfJZy7ipTlWSvUHD9Ak=",
+                "hash": "sha256-9SrbxiOqXKTFf4qZ4Wqg9aoOMY8zv7NczTqN2+lXwCI=",
                 "url": "https://chromium.googlesource.com/external/github.com/videolan/dav1d.git",
-                "rev": "f8ae94eca0f53502a2cddd29a263c1edea4822a0"
+                "rev": "47107e384bd1dc25674acf04d000a8cdc6195234"
             },
             "src/third_party/dawn": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-PE1LHtfdL9grVxBKaSVoc/kc6eHLaP7LKJFWxx+BByE=",
+                "hash": "sha256-onIVQBs8fIAhIEnjbwW8nrwAF5KJ2JjEMSK9b0HAheM=",
                 "url": "https://dawn.googlesource.com/dawn.git",
-                "rev": "e1f1c0135a5eca328a320d4f14d21b24576eea9b"
+                "rev": "acee31423468efdb650be9dc9172b30cc2015a4e"
             },
             "src/third_party/dawn/third_party/glfw": {
                 "fetcher": "fetchFromGitiles",
@@ -131,9 +131,9 @@
             },
             "src/third_party/dawn/third_party/dxc": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-uCSypev3Jvy6vfzF0AG3w9DIewV7u4w7TNtw1WVVrXM=",
+                "hash": "sha256-EAfTm0QZcihcU6ufBHE1QsYRggNWNKHjVZXcrUp/T+c=",
                 "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectXShaderCompiler",
-                "rev": "6b4b0eb5f2ca9b9039a7dbf7b324a9478fbd6f03"
+                "rev": "64030a4e01e27c608b6c5f1ab5add43575e086f9"
             },
             "src/third_party/dawn/third_party/dxheaders": {
                 "fetcher": "fetchFromGitiles",
@@ -155,9 +155,9 @@
             },
             "src/third_party/dawn/third_party/webgpu-cts": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-+pKnhSC7qQf8P5YL7ei1IPJ0ur89IJAiItnXhw6HKLo=",
+                "hash": "sha256-DqQIyZU6kYYRoouIiJnJBit8l38wPu08zbJhM2BQbs4=",
                 "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts",
-                "rev": "be1210e145e89e7a2943947d983f9592495e0f52"
+                "rev": "2ef3f322027bec1bb5572f5083d478148d355d79"
             },
             "src/third_party/highway/src": {
                 "fetcher": "fetchFromGitiles",
@@ -173,9 +173,9 @@
             },
             "src/third_party/boringssl/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-FBQ7y4N2rCM/Cyd6LBnDUXpSa2O3osUXukECTBjZL6s=",
+                "hash": "sha256-hxPNJzWS2f4iUsNYwRvxiTL9vRrcZzZT5KpIx3+WuGM=",
                 "url": "https://boringssl.googlesource.com/boringssl.git",
-                "rev": "d24a38200fef19150eef00cad35b138936c08767"
+                "rev": "c38dc29860a72540eb2c4fdb8a8bfb27ef94ddf3"
             },
             "src/third_party/breakpad/breakpad": {
                 "fetcher": "fetchFromGitiles",
@@ -191,9 +191,9 @@
             },
             "src/third_party/catapult": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-j5NFdjcsv3CaAOrUmNkuxodQyudxqWCNPTd6ovW83sg=",
+                "hash": "sha256-jueHC5YC+WmGRtGZ8yD6QT2pVj21n1THpIz/vI9M334=",
                 "url": "https://chromium.googlesource.com/catapult.git",
-                "rev": "4f81c1e295978227d83f1b42ceff40b4f9b5b08c"
+                "rev": "47efdb4b1428e549c58a6d6c2fa79c4a8ceaf9b4"
             },
             "src/third_party/ced/src": {
                 "fetcher": "fetchFromGitiles",
@@ -203,9 +203,9 @@
             },
             "src/third_party/chromium-variations": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-mWnpJb5yV30slOvqc543uqxN1t6TEGP2H3MKl7x6mbw=",
+                "hash": "sha256-cRFzDmGoyrxwPDVvatGm3EutOXtWqqlI7v7BeX5d43s=",
                 "url": "https://chromium.googlesource.com/chromium-variations.git",
-                "rev": "990efdd6cf54f2124621d065e2de629856c395e4"
+                "rev": "cb7fe7e32de8b885ccdd6293444d8e4028b03eca"
             },
             "src/third_party/cld_3/src": {
                 "fetcher": "fetchFromGitiles",
@@ -227,9 +227,9 @@
             },
             "src/third_party/cpuinfo/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-nOSaLZGqmt+8W5Ut9QHDKznh1cekl1jL2ghCM4mgbgc=",
+                "hash": "sha256-BcSG/1aa/cyT8CCd1Qdsm/yXa5bCrmrtaRxnYjwkspY=",
                 "url": "https://chromium.googlesource.com/external/github.com/pytorch/cpuinfo.git",
-                "rev": "959002f82d7962a473d8bf301845f2af720e0aa4"
+                "rev": "76d5e8f5b563daa65340a60fce0e9aec73a936df"
             },
             "src/third_party/crc32c/src": {
                 "fetcher": "fetchFromGitiles",
@@ -239,9 +239,9 @@
             },
             "src/third_party/cros_system_api": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-uTeouExil2es07n1a4oVa/r6CUraZ0+iu8Q+A1n4kgA=",
+                "hash": "sha256-wI4rx+oQ6i8yIB8NBp/O471O4pVJL3l+ez0t8I5oD/w=",
                 "url": "https://chromium.googlesource.com/chromiumos/platform2/system_api.git",
-                "rev": "b7b78587c03de1cd478f31f734498430773adeb3"
+                "rev": "00c21541508ea2c6863f1cda24ef88ef30309ae8"
             },
             "src/third_party/crossbench": {
                 "fetcher": "fetchFromGitiles",
@@ -251,15 +251,15 @@
             },
             "src/third_party/depot_tools": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Zx8VtOMxysriVmcPb9YkdS84WXV6NsSkfnCSV8OBwbc=",
+                "hash": "sha256-WtosDcMOV9eh0PhTbB5w3x3AYQs3Ui4h3mV0Ib0CBlc=",
                 "url": "https://chromium.googlesource.com/chromium/tools/depot_tools.git",
-                "rev": "90a30a5b5357636fa05bb315c393275be7ca705c"
+                "rev": "9f3b33a275e7a5b19d8ce4aba7960d2a38858681"
             },
             "src/third_party/devtools-frontend/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-OUmCxucDd8jXbEqqNyt9j0j+9zp2G9s3aaFliFkg45A=",
+                "hash": "sha256-jLsdRAQF7UxetAIU0bb+KK4cbXRlaQpg2B8T6+ba7uE=",
                 "url": "https://chromium.googlesource.com/devtools/devtools-frontend",
-                "rev": "fa727c5e31709a4447a79a2270157b7ba86414c4"
+                "rev": "099860eb0f995fef1d97ecdbe3c354f0558bec3b"
             },
             "src/third_party/dom_distiller_js/dist": {
                 "fetcher": "fetchFromGitiles",
@@ -269,9 +269,9 @@
             },
             "src/third_party/eigen3/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-a7TnzR57VmIBUqAEKmxncgV/22g3z7b1lEHsYnNZjKo=",
+                "hash": "sha256-mfS/l+V0If3fmXvA1p5gtyrNCU6IqWYrBbzm4jkXC3I=",
                 "url": "https://chromium.googlesource.com/external/gitlab.com/libeigen/eigen.git",
-                "rev": "18018ed013029ca3f28f52a62360999b5a659eac"
+                "rev": "aa6964bf3a34fd607837dd8123bc42465185c4f8"
             },
             "src/third_party/farmhash/src": {
                 "fetcher": "fetchFromGitiles",
@@ -281,9 +281,9 @@
             },
             "src/third_party/ffmpeg": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-uRgHTVaCAEaoqY20SmePQbApPmjimgggm5922KKfnbc=",
+                "hash": "sha256-lomUDmbbYW95BHEuYmm0pVqf++nYEa2XxeW4ag36tgc=",
                 "url": "https://chromium.googlesource.com/chromium/third_party/ffmpeg.git",
-                "rev": "0ba37733400593b162e5ae9ff26b384cff49c250"
+                "rev": "e1ca3f06adec15150a171bc38f550058b4bbb23b"
             },
             "src/third_party/flac": {
                 "fetcher": "fetchFromGitiles",
@@ -293,9 +293,9 @@
             },
             "src/third_party/flatbuffers/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-yu+bMwlTqT5I+BbJhemGMvs/Yw9TusNnFsHgERXYb2M=",
+                "hash": "sha256-LecJwLDG6szZZ/UOCFD+MDqH3NKawn0sdEwgnMt8wMM=",
                 "url": "https://chromium.googlesource.com/external/github.com/google/flatbuffers.git",
-                "rev": "0343396e49d1c0bf4ca1058130efd9585ecb3c8f"
+                "rev": "bcb9ef187628fe07514e57756d05e6a6296f7dc5"
             },
             "src/third_party/fontconfig/src": {
                 "fetcher": "fetchFromGitiles",
@@ -323,9 +323,9 @@
             },
             "src/third_party/freetype/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-+n7BwWerzg8bMIgZYBOtCibfNkECijNVJKNk7qOQVhU=",
+                "hash": "sha256-wyaCNPPL2CTZYY6YUUuGnN3TjHxgKeHAYsw+r88ijMI=",
                 "url": "https://chromium.googlesource.com/chromium/src/third_party/freetype2.git",
-                "rev": "7b308a29dd105074eea9c8d5953a182d325f74f1"
+                "rev": "55d0287cfc31115760cb13caa346b407ef0c0ceb"
             },
             "src/third_party/freetype-testing/src": {
                 "fetcher": "fetchFromGitiles",
@@ -341,9 +341,9 @@
             },
             "src/third_party/harfbuzz-ng/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-+fClyD9Rsge9qdGF8WCv8taLTWNL8iManpXZUzDL2LM=",
+                "hash": "sha256-xCsfgbsWVSiuII5zFspssrqX4NrRuhzufYSq6fdnjKQ=",
                 "url": "https://chromium.googlesource.com/external/github.com/harfbuzz/harfbuzz.git",
-                "rev": "db700b5670d9475cc8ed4880cc9447b232c5e432"
+                "rev": "f26fd69d858642d76413b8f4068eaf9b57c40a5f"
             },
             "src/third_party/emoji-segmenter/src": {
                 "fetcher": "fetchFromGitiles",
@@ -377,9 +377,9 @@
             },
             "src/third_party/icu": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-6do7X9xUCMe2mFQoffazdC5W9UJdHp424QEThqX6P48=",
+                "hash": "sha256-9yFRBrHdWcYgrZAaigS8XnxNsqJNklGdFkAAgVdHXFU=",
                 "url": "https://chromium.googlesource.com/chromium/deps/icu.git",
-                "rev": "985b9a6f70e13f3db741fed121e4dcc3046ad494"
+                "rev": "a622de35ac311c5ad390a7af80724634e5dc61ed"
             },
             "src/third_party/jsoncpp/source": {
                 "fetcher": "fetchFromGitiles",
@@ -401,9 +401,9 @@
             },
             "src/third_party/fuzztest/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-53SzbbDlzLl1MTeHxBhLpVGMKICd3ka6qfGcru9AVog=",
+                "hash": "sha256-wuB/lbkVCbisZvVFuLdE8XNDuiLQcI47/Y0EqvOCytc=",
                 "url": "https://chromium.googlesource.com/external/github.com/google/fuzztest.git",
-                "rev": "ce460dd7cae252b8505ce0009121bcac17939e3a"
+                "rev": "b5dbc33890d9586e4f6a213f1bf163ad287e6aa4"
             },
             "src/third_party/libaddressinput/src": {
                 "fetcher": "fetchFromGitiles",
@@ -413,15 +413,15 @@
             },
             "src/third_party/libaom/source/libaom": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-76duDNvaq8o7RdswZglifr+gml86fSTdXAEx0nOTybI=",
+                "hash": "sha256-6oZWYXRTZ1IC5yGvfPI19PwPU9O7mKBsW2wVxBGwU/I=",
                 "url": "https://aomedia.googlesource.com/aom.git",
-                "rev": "0d59418942412c4176805198f2ab7ff446637c3b"
+                "rev": "1dbe1c7fae2456f91ccc79fecb919e9ffea0727a"
             },
             "src/third_party/libavif/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-ZAsOy32MHx3YPvEnbBGGT4+iYhFyFPik0+9cLRoVDP4=",
+                "hash": "sha256-mSIrPqJebYSyLyTJmuLuwNoeJ6YJk3gSgFRLap7kSpA=",
                 "url": "https://chromium.googlesource.com/external/github.com/AOMediaCodec/libavif.git",
-                "rev": "0d4747af5b3f7b150c3838e6148c49a0bf0e0064"
+                "rev": "466d5e5f8889053115d445637ab8f6e0b3c70ed3"
             },
             "src/third_party/libavifinfo/src": {
                 "fetcher": "fetchFromGitiles",
@@ -431,9 +431,9 @@
             },
             "src/third_party/nearby/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-0tTpC11sFIPq+FPlkGFrDNaAK93isQV/Fd2x1lHmtQ8=",
+                "hash": "sha256-9PT/tuxjREGsvSnYT2wyaL5sB52CcYPpKVKN0ZGldWU=",
                 "url": "https://chromium.googlesource.com/external/github.com/google/nearby-connections.git",
-                "rev": "d477a2d174fc0e31f6dd06264ff3f47ff8da5378"
+                "rev": "629e7ba7c964a62c97f6a882bffaec3c8490bb1e"
             },
             "src/third_party/beto-core/src": {
                 "fetcher": "fetchFromGitiles",
@@ -461,9 +461,9 @@
             },
             "src/third_party/cros-components/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-grvqHNesTNc3pUkM5YH4P+LaeSWXEKBM8Kw/eRMaB4E=",
+                "hash": "sha256-ZjLMlNDDN08v9SUFAuroPsu/6ADLHZAAFpv+bmaJA2Y=",
                 "url": "https://chromium.googlesource.com/external/google3/cros_components.git",
-                "rev": "10d2e376519e88221117e38cd901054b0153501c"
+                "rev": "25159cae8d540780cbeb994692ce4a3ea14cc094"
             },
             "src/third_party/libdrm/src": {
                 "fetcher": "fetchFromGitiles",
@@ -485,9 +485,9 @@
             },
             "src/third_party/libjpeg_turbo": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-bcmp8RqQYp4lRI9NfdfYgrAJsDLecJEhgRu9oosB9lQ=",
+                "hash": "sha256-+t75ZAdOXc7Nd1/8zEQLX+enZb8upqIQuR6qzb9z7Cg=",
                 "url": "https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git",
-                "rev": "30bdb85e302ecfc52593636b2f44af438e05e784"
+                "rev": "9b894306ec3b28cea46e84c32b56773a98c483da"
             },
             "src/third_party/liblouis/src": {
                 "fetcher": "fetchFromGitiles",
@@ -521,9 +521,9 @@
             },
             "src/third_party/libvpx/source/libvpx": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-5x0Sk8/DXaTCIydK79vWZgIx3IHeQbLUxoNyE7E+Sdo=",
+                "hash": "sha256-UA/pf35eWFArRM+QdN6i6LK0ePWzXEsviHlf3WUgMoM=",
                 "url": "https://chromium.googlesource.com/webm/libvpx.git",
-                "rev": "38a707faef72eeff89d669c553e7bfe9e08dba8f"
+                "rev": "424723dc025ce451dab9568239a46b18d0919b4d"
             },
             "src/third_party/libwebm/source": {
                 "fetcher": "fetchFromGitiles",
@@ -533,9 +533,9 @@
             },
             "src/third_party/libwebp/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-79peh0y3eeiW5cVQqVq0mUgDcGZ9BlY+OXkPZylKARY=",
+                "hash": "sha256-Wa33opOFgcmYtycezDUt2f6PqZBse6xYB5kLuSaw95o=",
                 "url": "https://chromium.googlesource.com/webm/libwebp.git",
-                "rev": "2af26267cdfcb63a88e5c74a85927a12d6ca1d76"
+                "rev": "ca332209cb5567c9b249c86788cb2dbf8847e760"
             },
             "src/third_party/libyuv": {
                 "fetcher": "fetchFromGitiles",
@@ -581,9 +581,9 @@
             },
             "src/third_party/openscreen/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-rxNhfd/ujWtLWDjEbx/ZIo9tdILB1gD5q4cwxQ6DPnw=",
+                "hash": "sha256-TyZ/sZ0gnesWjKUnO2RVM2TTdpVIxsBWueHDgix0/wg=",
                 "url": "https://chromium.googlesource.com/openscreen",
-                "rev": "934f2462ad01c407a596641dbc611df49e2017b4"
+                "rev": "971d6055e7b78c474e2e734e55a2991fbb7ab665"
             },
             "src/third_party/openscreen/src/third_party/tinycbor/src": {
                 "fetcher": "fetchFromGitiles",
@@ -593,15 +593,15 @@
             },
             "src/third_party/pdfium": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-iVOmMH0h0mbHy9m0vy86SzS5Oeyhgd4CC26LgPws9P4=",
+                "hash": "sha256-U1cScrfKN0F+cy307RT2iwB6RYKeCNDRnkYxzamezoY=",
                 "url": "https://pdfium.googlesource.com/pdfium.git",
-                "rev": "2e2cfb0399db35fbe2e3ef0be62559fe01837ec5"
+                "rev": "a3895af47f600e3f9677f31fa39e15bd01c18457"
             },
             "src/third_party/perfetto": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-qv1fTy/0xUauutP0PFaCwPvr1qptfeB3iqNjHXPDKyc=",
+                "hash": "sha256-xLx+dnUysm+HS1esu2hAqBKg/GgTJK4SQu1ZINr2aYc=",
                 "url": "https://android.googlesource.com/platform/external/perfetto.git",
-                "rev": "a3d4c1de9bcf2a0471ab183c45cf111efd29571e"
+                "rev": "7ce535ddfc62d30166f35a8ed0f121da5eb0437c"
             },
             "src/third_party/pthreadpool/src": {
                 "fetcher": "fetchFromGitiles",
@@ -629,9 +629,9 @@
             },
             "src/third_party/re2/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-zrVjt229SfVipS05zF5glhd7/D1zpojDyiSnYZpGok4=",
+                "hash": "sha256-m3bJlSyyhmj/7jvy7ExNX/gol7yeu1mnmyAc8u8Pr8s=",
                 "url": "https://chromium.googlesource.com/external/github.com/google/re2.git",
-                "rev": "26f7d889e1f7e75e95e65490086538edf9f5275c"
+                "rev": "3d9bdbd0e208d3274a1cb1275c94d8b7626ddde2"
             },
             "src/third_party/ruy/src": {
                 "fetcher": "fetchFromGitiles",
@@ -641,9 +641,9 @@
             },
             "src/third_party/skia": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-qHJujO+LYJ41zmoP2xSYRd9K8vLp4bCztYcMO8MI9Lo=",
+                "hash": "sha256-CvoJxsBN1Nyh+RPgU+aptZW5WsfGB4hmSlhyma1wO+E=",
                 "url": "https://skia.googlesource.com/skia.git",
-                "rev": "ab212df482c8fd5b1c1fb302717876d542549624"
+                "rev": "349c1179c43ef46f2804404952b9460dc007d76a"
             },
             "src/third_party/smhasher/src": {
                 "fetcher": "fetchFromGitiles",
@@ -659,15 +659,15 @@
             },
             "src/third_party/sqlite/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-35rSG+ptFMC62FsprLvAqfXZknKu40Ee6H2qpAcA3wI=",
+                "hash": "sha256-A3GAYf2hVZqQtEQdbVqP0I0Wh29DPHPf+JhxNLnTQh8=",
                 "url": "https://chromium.googlesource.com/chromium/deps/sqlite.git",
-                "rev": "b7e480172bb2411f9afedefdcc69a57a12f18b7b"
+                "rev": "ca75d938c18c99dc33b769fbdac8fc4c71befa33"
             },
             "src/third_party/swiftshader": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-r7u2WjgPvoVY9Oj2RVqfI/G6PFh/2gWNDVQ5R2qhtLU=",
+                "hash": "sha256-Im4sdDo4b96YQIKDcAmqUk8PiJzejZgSDPur3hqPPRk=",
                 "url": "https://swiftshader.googlesource.com/SwiftShader.git",
-                "rev": "7f4d495c89c200c1945cce5995d348dd41dadb5a"
+                "rev": "d9ec9befba05a8dfca09c1e88f3f7be0e4b153c6"
             },
             "src/third_party/text-fragments-polyfill/src": {
                 "fetcher": "fetchFromGitiles",
@@ -677,75 +677,75 @@
             },
             "src/third_party/tflite/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Mpofo5P6WrkA3hN+sjAhHG4GBQ71vEFnuxfdLRf5epw=",
+                "hash": "sha256-119/isDtopnj6MBRr3bzBvIppXw8M/ejcPx0CmIjXZU=",
                 "url": "https://chromium.googlesource.com/external/github.com/tensorflow/tensorflow.git",
-                "rev": "edf7215123c67d76199d099779137b974b6e1293"
+                "rev": "21e56c30e480ac67bed48335a5d122c59a6a6805"
             },
             "src/third_party/vulkan-deps": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-uJFrlLEjFJJSR0+eCtx7bpIC0z8NaHuk/uLeaFBLKKw=",
+                "hash": "sha256-lqCUx70IeHZ7YfE9DXia7dFok/JsFu/HSIv2AGi37YI=",
                 "url": "https://chromium.googlesource.com/vulkan-deps",
-                "rev": "7413048934e28b97ae00c37c419e576db8add866"
+                "rev": "2b783ed328d3a46e6a7a21218ced6b4dd1684114"
             },
             "src/third_party/vulkan-deps/glslang/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-CBA9LlD+Ttki3nc693MSmud0feafxi2/PC2YSn3BX2A=",
+                "hash": "sha256-+Qs+Q3p11y9oUKyWEbuaQ0vx6hppFZSFbFuU0ve6rRo=",
                 "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang",
-                "rev": "b0ed4788858157e271779a7726cccc1149a05407"
+                "rev": "ebb0a8b28e5ea7a13146a24b3ad87b1966dbdfa3"
             },
             "src/third_party/vulkan-deps/spirv-cross/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Wgpdjmes05dMeBr7mrv9UvpabdzJ9lTZ38eO/6Ps60E=",
+                "hash": "sha256-UIk5hihUPjXNzEeO2laS4dUef/rEExxXAZjMcftx+3A=",
                 "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross",
-                "rev": "37fee00a71b5a47247c1cf20256a3f794537c6c0"
+                "rev": "2de1265fca722929785d9acdec4ab728c47a0254"
             },
             "src/third_party/vulkan-deps/spirv-headers/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-yAzbZHLtx+XP34Umkp0CuP/vn7JrW4VPVgVOFi50KHM=",
+                "hash": "sha256-JLFVzFNdXqxyKmg3NymIqqZmf2GAb7tYetQ6HJPsUIQ=",
                 "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers",
-                "rev": "79743b899fde5c954897b2694291002626358fac"
+                "rev": "88bc5e321c2839707df8b1ab534e243e00744177"
             },
             "src/third_party/vulkan-deps/spirv-tools/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-/J1eb6ZYSoYZDE8AR/CeRc5GoQEyIlYiHC+JKvi5I5w=",
+                "hash": "sha256-+HUDsp0COKlPtKidOVvUk7lN1AiFw01i5ANc3MO+qjs=",
                 "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools",
-                "rev": "1bc0e6f59abc3c9cd75f93baef47e9612a448045"
+                "rev": "5084f58e5d187b16f84d2af936ff94ea2f46a00c"
             },
             "src/third_party/vulkan-deps/vulkan-headers/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-GAl5xC7PCGsVHHUhLkIuwj2zlTCgyNWaBjk6I0qDkhQ=",
+                "hash": "sha256-UlaNc1NxTYulrF4Ol0rLysbLwbFR46Evq7WkWncPB8k=",
                 "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers",
-                "rev": "7e691380166fb1cd9b193ac9db896bc23a4ea9ad"
+                "rev": "f4bfcd885214675a6a0d7d4df07f52b511e6ea16"
             },
             "src/third_party/vulkan-deps/vulkan-loader/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-6iJxI1SwOjN26dyVs6JSYWODZbA25G/M2ZabGLCGRIo=",
+                "hash": "sha256-GbVr8LmwC6r7a13++5cYJXAq+H4P07quEHpTUV1qfqA=",
                 "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader",
-                "rev": "9e33cfc66f88c863e9a13492b8045ca28118ebbf"
+                "rev": "7b7d15bc9f1d782e4d6ea34e61fd9a36a7952208"
             },
             "src/third_party/vulkan-deps/vulkan-tools/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-r2VdG1o2JXbtN14nGjeZ+Ru4Cn1Za/eQd3NU2O6CnkA=",
+                "hash": "sha256-vnrhYM7tcDTcXH4A+2leio5Wc1+b5H+7CQISEI+SPV8=",
                 "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools",
-                "rev": "3a19c1973f0e4732b8f3746593aee2ac425ecb78"
+                "rev": "f7017f23337b90a2b2ceb65a4e1050e8ad89e065"
             },
             "src/third_party/vulkan-deps/vulkan-utility-libraries/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Zz8r7zHe3MaEzMIyVx6Walsd5QicQ3MxEAunmgWHZcI=",
+                "hash": "sha256-buxOdupK/w1sFGGHrEI+On2/mR0q5whvQNKUI8dxJ60=",
                 "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries",
-                "rev": "2169a0849e3df4e2133b728dec67d3b16bd30263"
+                "rev": "dcfce25b439a2785f2c90b184e1964898070b4f1"
             },
             "src/third_party/vulkan-deps/vulkan-validation-layers/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-AUeSb7/sgTZGg/VEkdvGDnj88gqjE1t6qGY0oTAcYsY=",
+                "hash": "sha256-LJd7pkcFd8k4npEv8mJy+47xo/5CXMN75ZAtDp+v6FI=",
                 "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers",
-                "rev": "d82e3c2f34dcf3b849fd7ed6d932ff61dcd838c5"
+                "rev": "281e1c1c6b51bb6b33f88c18ed4da58ac3024311"
             },
             "src/third_party/vulkan_memory_allocator": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-FdRPPdLZHj3RX3YzcmF58JJuIqeWQV3TDiiXPEW2lsc=",
+                "hash": "sha256-YzxHZagz/M8Y54UnI4h1wu5jSTuaOgv0ifC9d3fJZlQ=",
                 "url": "https://chromium.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git",
-                "rev": "e87036508bb156f9986ea959323de1869e328f58"
+                "rev": "56300b29fbfcc693ee6609ddad3fdd5b7a449a21"
             },
             "src/third_party/wayland/src": {
                 "fetcher": "fetchFromGitiles",
@@ -785,15 +785,15 @@
             },
             "src/third_party/webgpu-cts/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-vkwuibUzHacAh5x/g05cGR+UohZmcATysnnFfldM2zA=",
+                "hash": "sha256-E39f0wy72TwQ9IM4QquqWxwDiHZOUI8hWkx2QDFcRog=",
                 "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts.git",
-                "rev": "609645eb5b272668cbfb120d1aa9549eee86e02d"
+                "rev": "3dbe4ce12983ccc1ad42e228057c7d8adc17cb78"
             },
             "src/third_party/webrtc": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-uRRtsEVMn85RfFgo1qzYnwA1eN6LvXRme+FUntvCuYA=",
+                "hash": "sha256-lhZ6m00IJ7YEhZ2/nyO70aByVk7RBHUpDsKDVOMoVA8=",
                 "url": "https://webrtc.googlesource.com/src.git",
-                "rev": "71e3fbf5d750e84d181315a663eb5dbc29a5330c"
+                "rev": "b0cc68e61205fd11a7256a6e85307ec17ad95790"
             },
             "src/third_party/wuffs/src": {
                 "fetcher": "fetchFromGitiles",
@@ -809,9 +809,9 @@
             },
             "src/third_party/xdg-utils": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-t3uV9JkkQQIwmezzSoEdTMLSizZdLQB7eLKTRQGH4kQ=",
+                "hash": "sha256-WuQ9uDq+QD17Y20ACFGres4nbkeOiTE2y+tY1avAT5U=",
                 "url": "https://chromium.googlesource.com/chromium/deps/xdg-utils.git",
-                "rev": "d80274d5869b17b8c9067a1022e4416ee7ed5e0d"
+                "rev": "cb54d9db2e535ee4ef13cc91b65a1e2741a94a44"
             },
             "src/third_party/xnnpack/src": {
                 "fetcher": "fetchFromGitiles",
@@ -833,9 +833,9 @@
             },
             "src/v8": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-qP5gRxEEKV+I3Q6wk0H94OTnKVAieo9SJZGLB9Ti5qw=",
+                "hash": "sha256-HoatrWRElaZ47jtenPz0PzMh0ixBAwbMzL3vj0sw+HE=",
                 "url": "https://chromium.googlesource.com/v8/v8.git",
-                "rev": "f6ebdead2b58e457b923c8121a9267a5d80f59cf"
+                "rev": "5eefc590c868d8dfb411e53053c963fe42dcda74"
             },
             "src/third_party/nan": {
                 "fetcher": "fetchFromGitHub",
@@ -846,10 +846,10 @@
             },
             "src/third_party/electron_node": {
                 "fetcher": "fetchFromGitHub",
-                "hash": "sha256-feGhB6o14/qgSQvhJ5eMD74KqWrlOoTpaGAlCs486IU=",
+                "hash": "sha256-yvMU6dXRzHP7l6axo3g4svJ1H2edtFvX2MVMm3K1bEc=",
                 "owner": "nodejs",
                 "repo": "node",
-                "rev": "v18.18.0"
+                "rev": "v18.18.2"
             },
             "src/third_party/squirrel.mac": {
                 "fetcher": "fetchFromGitHub",
@@ -873,38 +873,38 @@
                 "rev": "78d3966b3c331292ea29ec38661b25df0a245948"
             }
         },
-        "version": "28.0.0-alpha.3",
+        "version": "28.0.0",
         "modules": "119",
-        "chrome": "119.0.6045.21",
-        "node": "18.18.0",
+        "chrome": "120.0.6099.56",
+        "node": "18.18.2",
         "chromium": {
-            "version": "119.0.6045.21",
+            "version": "120.0.6099.56",
             "deps": {
                 "gn": {
-                    "version": "2023-09-12",
+                    "version": "2023-10-23",
                     "url": "https://gn.googlesource.com/gn",
-                    "rev": "991530ce394efb58fcd848195469022fa17ae126",
-                    "hash": "sha256-4jWqtsOBh96xbYk1m06G9hj2eQwW6buUXsxWsa5W6/4="
+                    "rev": "e4702d7409069c4f12d45ea7b7f0890717ca3f4b",
+                    "hash": "sha256-dwluGOfq05swtBM5gg4a6gY3IpFHaKKkD0TV1XW7c7k="
                 }
             }
         },
-        "electron_yarn_hash": "1akq5cxcy7fpn4m5qk5kx94vy30z0ybx6ka5qp8an0p33yx9wg8z",
-        "chromium_npm_hash": "sha256-10OGEsA0BDrkbTeIbdXLYRyKNwVsb/tP2ryBBuhi+m8="
+        "electron_yarn_hash": "0n64fi2s97ly7kl0f8922sgavdm6qh24ms3qwf21663a1igdd4jn",
+        "chromium_npm_hash": "sha256-zexxXAAJDnhMmh7HfBO1V1z1Yds06C3gSpXacsbjUb4="
     },
     "27": {
         "deps": {
             "src/electron": {
                 "fetcher": "fetchFromGitHub",
-                "hash": "sha256-UIOHCvqMXuCCrduDo6tnxc6qJuHw2LX4Kgmiu/geiR8=",
+                "hash": "sha256-L43N0jGO8fREAAgSlLuwphq+pyI3Ozpan0phqTMCb58=",
                 "owner": "electron",
                 "repo": "electron",
-                "rev": "v27.0.0"
+                "rev": "v27.1.3"
             },
             "src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-dT23fhZ9RDY2j7YChaK/hUePkHULTXoXyHNpldmh4Gw=",
+                "hash": "sha256-3yFHjd3LMXVbF4LX6Bi3yJF0CDVug0cDpGFbP8Ibvk4=",
                 "url": "https://chromium.googlesource.com/chromium/src.git",
-                "rev": "118.0.5993.54",
+                "rev": "118.0.5993.159",
                 "postFetch": "rm -r $out/third_party/blink/web_tests; rm -r $out/third_party/hunspell/tests; rm -r $out/content/test/data; rm -r $out/courgette/testdata; rm -r $out/extensions/test/data; rm -r $out/media/test/data; "
             },
             "src/third_party/clang-format/script": {
@@ -1011,9 +1011,9 @@
             },
             "src/third_party/dawn": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-iCCvQVwf+MLZR6Zz/ML7H9uQ0FiSSCw1gZZeGC6zRLo=",
+                "hash": "sha256-7iCJ1h51S/8pxQRMoDtGXzyuP6Dzxnc/1Cu4ALU8NYg=",
                 "url": "https://dawn.googlesource.com/dawn.git",
-                "rev": "ec2cc40563739fa6e6ff0e12c58ac0fdbe0a132f"
+                "rev": "deb3b674b26854204c8082ed93926207e42d3cf2"
             },
             "src/third_party/dawn/third_party/glfw": {
                 "fetcher": "fetchFromGitiles",
@@ -1269,9 +1269,9 @@
             },
             "src/third_party/icu": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-6do7X9xUCMe2mFQoffazdC5W9UJdHp424QEThqX6P48=",
+                "hash": "sha256-9yFRBrHdWcYgrZAaigS8XnxNsqJNklGdFkAAgVdHXFU=",
                 "url": "https://chromium.googlesource.com/chromium/deps/icu.git",
-                "rev": "985b9a6f70e13f3db741fed121e4dcc3046ad494"
+                "rev": "a622de35ac311c5ad390a7af80724634e5dc61ed"
             },
             "src/third_party/jsoncpp/source": {
                 "fetcher": "fetchFromGitiles",
@@ -1311,9 +1311,9 @@
             },
             "src/third_party/libavif/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-3zNhKl8REWsRlblXIFD7zn7qvrc/pa4wHZI0oEc3pKE=",
+                "hash": "sha256-KfRRGTS8kBwi9Z9wafpSwL29RU38THG2xBCvNBXtZtg=",
                 "url": "https://chromium.googlesource.com/external/github.com/AOMediaCodec/libavif.git",
-                "rev": "d1c26facaf5a8a97919ceee06814d05d10e25622"
+                "rev": "b2d36b1c3bfc806694cd4ff0cb188270823fe6d8"
             },
             "src/third_party/libavifinfo/src": {
                 "fetcher": "fetchFromGitiles",
@@ -1473,9 +1473,9 @@
             },
             "src/third_party/openscreen/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-CtCGOoKbbyUGUHfqd7n3uPlv9GEExuYgMTCIaU+ypOA=",
+                "hash": "sha256-TyZ/sZ0gnesWjKUnO2RVM2TTdpVIxsBWueHDgix0/wg=",
                 "url": "https://chromium.googlesource.com/openscreen",
-                "rev": "fd0e81e558086c30fa91a4af89361cef8d1327e4"
+                "rev": "971d6055e7b78c474e2e734e55a2991fbb7ab665"
             },
             "src/third_party/openscreen/src/third_party/tinycbor/src": {
                 "fetcher": "fetchFromGitiles",
@@ -1485,9 +1485,9 @@
             },
             "src/third_party/pdfium": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-9qxj8TgFVf64aFTx/DwkUVa41682OSfVnBj9eubMafs=",
+                "hash": "sha256-u+El2jEnvlcQs5j5TthpKj8s255n2AhJPW+Q/s0Ljm0=",
                 "url": "https://pdfium.googlesource.com/pdfium.git",
-                "rev": "d7470394271b6a6856e28ec905b19a12100f2797"
+                "rev": "6e55da0c45788fdc22fa3aab7ead414fc42b74c1"
             },
             "src/third_party/perfetto": {
                 "fetcher": "fetchFromGitiles",
@@ -1533,9 +1533,9 @@
             },
             "src/third_party/skia": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-6JN+orZM77HNPDQ9VlZws1Zq8GuwDI83eXXauKknOTc=",
+                "hash": "sha256-Ck15ddYoo8pVLHcwW5P8Ei1sBQf23EGd/ySGOVSWAFQ=",
                 "url": "https://skia.googlesource.com/skia.git",
-                "rev": "bd56a010b6941116cd1900276bf5201f9a9c73da"
+                "rev": "b4f0c1163c955e42489f62d842585720cf0df0ea"
             },
             "src/third_party/smhasher/src": {
                 "fetcher": "fetchFromGitiles",
@@ -1725,9 +1725,9 @@
             },
             "src/v8": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-+y24A6/c4tl4zu1GcxsiEWvAMMCsat7X0jl2XCmBX6g=",
+                "hash": "sha256-Fn4HoS7O2J3nGXFyq7r7AheRQzKy80USTQnNnC4rWqM=",
                 "url": "https://chromium.googlesource.com/v8/v8.git",
-                "rev": "6b05d242aae3392bef6b86fbe44428126607b3d0"
+                "rev": "36e4828ab658b8ad72f80974883c4c94f6e7012c"
             },
             "src/third_party/nan": {
                 "fetcher": "fetchFromGitHub",
@@ -1765,12 +1765,12 @@
                 "rev": "78d3966b3c331292ea29ec38661b25df0a245948"
             }
         },
-        "version": "27.0.0",
+        "version": "27.1.3",
         "modules": "118",
-        "chrome": "118.0.5993.54",
+        "chrome": "118.0.5993.159",
         "node": "18.17.1",
         "chromium": {
-            "version": "118.0.5993.54",
+            "version": "118.0.5993.159",
             "deps": {
                 "gn": {
                     "version": "2023-08-10",
@@ -1780,17 +1780,17 @@
                 }
             }
         },
-        "electron_yarn_hash": "039zdwb38982h6qinhipja8abza33ihihb4i5fadpsgh0cl7ldsy",
-        "chromium_npm_hash": "sha256-5cjqpYB45nw2gop54VP+tL7/0w63nQGfQ4x6a6KS7XQ="
+        "chromium_npm_hash": "sha256-5cjqpYB45nw2gop54VP+tL7/0w63nQGfQ4x6a6KS7XQ=",
+        "electron_yarn_hash": "1rxijv3fspjfan7mmw4cmxcb231ny7gn72yzsdnqs0225alrjac0"
     },
     "26": {
         "deps": {
             "src/electron": {
                 "fetcher": "fetchFromGitHub",
-                "hash": "sha256-sEhO5qSm4etyWEurTGSKtJcheG+JJkC78Fhl3c5WBOE=",
+                "hash": "sha256-jvNttIRouxQAfH4n+0xxj57Bc3LCo36B66SGwEfz0jM=",
                 "owner": "electron",
                 "repo": "electron",
-                "rev": "v26.4.0"
+                "rev": "v26.6.2"
             },
             "src": {
                 "fetcher": "fetchFromGitiles",
@@ -2609,7 +2609,7 @@
                 "rev": "78d3966b3c331292ea29ec38661b25df0a245948"
             }
         },
-        "version": "26.4.0",
+        "version": "26.6.2",
         "modules": "116",
         "chrome": "116.0.5845.228",
         "node": "18.16.1",
@@ -2624,827 +2624,7 @@
                 }
             }
         },
-        "electron_yarn_hash": "05wkb1m0yjbai4153y49kwr1v2lj14fg75aqlvmmrhf3bxp9lg5g",
-        "chromium_npm_hash": "sha256-5cjqpYB45nw2gop54VP+tL7/0w63nQGfQ4x6a6KS7XQ="
-    },
-    "25": {
-        "deps": {
-            "src/electron": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-Yo/ZvOLOPIktV5gzZK80LKVZb3xMXrzGkdQw9u4djoI=",
-                "owner": "electron",
-                "repo": "electron",
-                "rev": "v25.9.1"
-            },
-            "src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-nh8LrBKsfW6K/scG1GPUyp/tYiXOxZkmjtuTyAXC4zI=",
-                "url": "https://chromium.googlesource.com/chromium/src.git",
-                "rev": "114.0.5735.289",
-                "postFetch": "rm -r $out/third_party/blink/web_tests; rm -r $out/third_party/hunspell/tests; rm -r $out/content/test/data; rm -r $out/courgette/testdata; rm -r $out/extensions/test/data; rm -r $out/media/test/data; "
-            },
-            "src/buildtools/clang_format/script": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-IL6ReGM6+urkXfGYe1BBOv+0XgCZv5i3Lib1q9COhig=",
-                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/clang/tools/clang-format.git",
-                "rev": "f97059df7f8b205064625cdb5f97b56668a125ef"
-            },
-            "src/buildtools/third_party/libc++/trunk": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-i/FGU9F7HlGJJuwoFMV4V05pf4pvsqNxrPBN223YjZQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git",
-                "rev": "bff81b702ff4b7f74b1c0ed02a4bcf6c2744a90b"
-            },
-            "src/buildtools/third_party/libc++abi/trunk": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Zka8AHFtHA4AC/Pbzc3pVqz/k2GYZYc8CeP1IXxGBUM=",
-                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git",
-                "rev": "307bd163607c315d46103ebe1d68aab44bf93986"
-            },
-            "src/buildtools/third_party/libunwind/trunk": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-u6FMD83JBBusQuWU7Hx5HREvLIFWUA4iN4If8poaHbE=",
-                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git",
-                "rev": "2795322d57001de8125cfdf18cef804acff69e35"
-            },
-            "src/chrome/test/data/perf/canvas_bench": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-svOuyBGKloBLM11xLlWCDsB4PpRjdKTBdW2UEW4JQjM=",
-                "url": "https://chromium.googlesource.com/chromium/canvas_bench.git",
-                "rev": "a7b40ea5ae0239517d78845a5fc9b12976bfc732"
-            },
-            "src/chrome/test/data/perf/frame_rate/content": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-t4kcuvH0rkPBkcdiMsoNQaRwU09eU+oSvyHDiAHrKXo=",
-                "url": "https://chromium.googlesource.com/chromium/frame_rate/content.git",
-                "rev": "c10272c88463efeef6bb19c9ec07c42bc8fe22b9"
-            },
-            "src/chrome/test/data/xr/webvr_info": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-BsAPwc4oEWri0TlqhyxqFNqKdfgVSrB0vQyISmYY4eg=",
-                "url": "https://chromium.googlesource.com/external/github.com/toji/webvr.info.git",
-                "rev": "c58ae99b9ff9e2aa4c524633519570bf33536248"
-            },
-            "src/docs/website": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-0rI5HUWxfNU0mrWJ4ndzL1gnn4E67UVPFpqkEpQjgW0=",
-                "url": "https://chromium.googlesource.com/website.git",
-                "rev": "40cfbbdee67c7010ae103011fe5797858e692a79"
-            },
-            "src/media/cdm/api": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-6J6aSYW0or99VAgMNJJOdJqMJspoG7w1HxDN50MV5bw=",
-                "url": "https://chromium.googlesource.com/chromium/cdm.git",
-                "rev": "fef0b5aa1bd31efb88dfab804bdbe614f3d54f28"
-            },
-            "src/net/third_party/quiche/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-dUSUlZR7svBw35TX/ywZaa1Ko/yTeV/gE+GudhX981E=",
-                "url": "https://quiche.googlesource.com/quiche.git",
-                "rev": "02c69dd28eef7ef2618782e8d54d53c14ae64382"
-            },
-            "src/third_party/angle": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-EpR25A5wDGnhK9EI2eSx8OsLtA4YvtDREi6x8ZfIVsM=",
-                "url": "https://chromium.googlesource.com/angle/angle.git",
-                "rev": "ce590bee825a18785f86d096f2c7be06428ccf88"
-            },
-            "src/third_party/angle/third_party/glmark2/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-L7+zWM0qn8WFhmON7DGvarTsN1YHt1sn5+hazTOZrrk=",
-                "url": "https://chromium.googlesource.com/external/github.com/glmark2/glmark2",
-                "rev": "ca8de51fedb70bace5351c6b002eb952c747e889"
-            },
-            "src/third_party/angle/third_party/rapidjson/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-btUl1a/B0sXwf/+hyvCvVJjWqIkXfVYCpHm3TeBuOxk=",
-                "url": "https://chromium.googlesource.com/external/github.com/Tencent/rapidjson",
-                "rev": "781a4e667d84aeedbeb8184b7b62425ea66ec59f"
-            },
-            "src/third_party/angle/third_party/VK-GL-CTS/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-XcaAnz36QOg+A5XcyGg0Z9dLFjsDSUa0GzZpEuQYMTg=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS",
-                "rev": "e3b9db9ad121f46b7943d0152a25d5ee9afaa13c"
-            },
-            "src/third_party/content_analysis_sdk/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-p4N3zAUoM/ApBlYvLsCcH9QLArz7T4+miDGVuTbrZEc=",
-                "url": "https://chromium.googlesource.com/external/github.com/chromium/content_analysis_sdk.git",
-                "rev": "b8744f00646d175057f0be7443c7c72a311b5381"
-            },
-            "src/third_party/dav1d/libdav1d": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-FivzwqCvlY89q2znGvfNks+hje/iUFHcKPb19FyAZhM=",
-                "url": "https://chromium.googlesource.com/external/github.com/videolan/dav1d.git",
-                "rev": "d426d1c91075b9c552b12dd052af1cd0368f05a2"
-            },
-            "src/third_party/dawn": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-HoLI1IlG+ThNERz6xr1doIzNhPWNcZabiyPEn15kvoM=",
-                "url": "https://dawn.googlesource.com/dawn.git",
-                "rev": "bf86a1c8d463d7b9a556b10a80d17990d413831c"
-            },
-            "src/third_party/dawn/third_party/glfw": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-TwAPRjQxIz3J+zbNxzCp5Tek7MwisxdekMpY5QGsKyg=",
-                "url": "https://chromium.googlesource.com/external/github.com/glfw/glfw",
-                "rev": "62e175ef9fae75335575964c845a302447c012c7"
-            },
-            "src/third_party/dawn/third_party/webgpu-cts": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-+FRGgJSs7sVEZ6B6PZPxmXvmsKtt/sC/ZAjw+NdOwPQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts",
-                "rev": "c7d833badcd37dc46a999ebeebbbde1368ff15b5"
-            },
-            "src/third_party/highway/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-kNb9UVcFq2BIf9nftUgN8ciFFCzRCou/sLwVf08jf3E=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/highway.git",
-                "rev": "8f20644eca693cfb74aa795b0006b6779c370e7a"
-            },
-            "src/third_party/google_benchmark/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-h2ryAQAuHI54Cni88L85e7Np4KATGVTRdDcmUvCNeWc=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/benchmark.git",
-                "rev": "b177433f3ee2513b1075140c723d73ab8901790f"
-            },
-            "src/third_party/boringssl/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-oeV7oMNpPbQyi5RiRJm/KAVmO7JZ1QRdYoNgFXh7Snc=",
-                "url": "https://boringssl.googlesource.com/boringssl.git",
-                "rev": "4b6d950d8921d6dd5365de0797fcc97302b9561b"
-            },
-            "src/third_party/breakpad/breakpad": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-+3Y4jCpcZ/++1Etpu/ZNuJvtTEX/Xn4HNfmx4nzcTtA=",
-                "url": "https://chromium.googlesource.com/breakpad/breakpad.git",
-                "rev": "bfde407de559c10d6cef861b3873ff287c24e761"
-            },
-            "src/third_party/cast_core/public/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-pyjxQQYnsASHV2SxwZeIqkZJSpTrqyGg7Uee/GRp9VU=",
-                "url": "https://chromium.googlesource.com/cast_core/public",
-                "rev": "e42ef68aa05ac0c163805f60b9b19284f3c2dee3"
-            },
-            "src/third_party/catapult": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-vK7rlGshfzPzaEdAxlP5vQ4USR/fC3BzPCh/rn0aAf4=",
-                "url": "https://chromium.googlesource.com/catapult.git",
-                "rev": "cae7ec667dee9f5c012b54ee9ffee94eb7beda14"
-            },
-            "src/third_party/ced/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-ySG74Rj2i2c/PltEgHVEDq+N8yd9gZmxNktc56zIUiY=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/compact_enc_det.git",
-                "rev": "ba412eaaacd3186085babcd901679a48863c7dd5"
-            },
-            "src/third_party/cld_3/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-C3MOMBUy9jgkT9BAi/Fgm2UH4cxRuwSBEcRl3hzM2Ss=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/cld_3.git",
-                "rev": "b48dc46512566f5a2d41118c8c1116c4f96dc661"
-            },
-            "src/third_party/colorama/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-6ZTdPYSHdQOLYMSnE+Tp7PgsVTs3U2awGu9Qb4Rg/tk=",
-                "url": "https://chromium.googlesource.com/external/colorama.git",
-                "rev": "3de9f013df4b470069d03d250224062e8cf15c49"
-            },
-            "src/third_party/cpuinfo/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-ZXsJVhqyeH/9dN0/1Cq0TCjmzwmsePX9YyuuaI9+puI=",
-                "url": "https://chromium.googlesource.com/external/github.com/pytorch/cpuinfo.git",
-                "rev": "beb46ca0319882f262e682dd596880c92830687f"
-            },
-            "src/third_party/crc32c/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-urg0bmnfMfHagLPELp4WrNCz1gBZ6DFOWpDue1KsMtc=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/crc32c.git",
-                "rev": "fa5ade41ee480003d9c5af6f43567ba22e4e17e6"
-            },
-            "src/third_party/cros_system_api": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-0tnidX0O+jn1xbJMuSPsGPqwZBCKmfjWZY3aQdjM1gE=",
-                "url": "https://chromium.googlesource.com/chromiumos/platform2/system_api.git",
-                "rev": "73d6b816cacd86b886b4cc1e60f12ac1960f1d90"
-            },
-            "src/third_party/crossbench": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-IM81ppJX/ib//P2ESbQXMSL+BiOSVKbdXZdcMsq4xn0=",
-                "url": "https://chromium.googlesource.com/crossbench.git",
-                "rev": "cdc33384bfa900dfec28e6cf7b5f22cd7ff2c92f"
-            },
-            "src/third_party/depot_tools": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-7jPow77ejToE55KvQ7/eO0alMdMHcypfSyPceFAbZkw=",
-                "url": "https://chromium.googlesource.com/chromium/tools/depot_tools.git",
-                "rev": "6e714e6dfe62110c95fafed4bdeb365a69c6a77e"
-            },
-            "src/third_party/devtools-frontend/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-jDE3eGkpcJYE5lt/dpIpKa6me3ZZnfY/9boL/YBnHoc=",
-                "url": "https://chromium.googlesource.com/devtools/devtools-frontend",
-                "rev": "3f60fe50e4790d1154659b9628e811bbcdf1aa4f"
-            },
-            "src/third_party/dom_distiller_js/dist": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-yuEBD2XQlV3FGI/i7lTmJbCqzeBiuG1Qow8wvsppGJw=",
-                "url": "https://chromium.googlesource.com/chromium/dom-distiller/dist.git",
-                "rev": "199de96b345ada7c6e7e6ba3d2fa7a6911b8767d"
-            },
-            "src/third_party/eigen3/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Jf8sFjSMuXeiXm53srR2HahbBXszLOawdYk5H1UrK4c=",
-                "url": "https://chromium.googlesource.com/external/gitlab.com/libeigen/eigen.git",
-                "rev": "554fe02ae3f3fbc2fd320c26a522f1e59b2d6342"
-            },
-            "src/third_party/farmhash/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-5n58VEUxa/K//jAfZqG4cXyfxrp50ogWDNYcgiXVHdc=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/farmhash.git",
-                "rev": "816a4ae622e964763ca0862d9dbd19324a1eaf45"
-            },
-            "src/third_party/ffmpeg": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-UjrZJBtOQiiqxtLb8x24axord3OFvyCcRcgDwiYE/jw=",
-                "url": "https://chromium.googlesource.com/chromium/third_party/ffmpeg.git",
-                "rev": "8d21d41d8bec5c0b266ee305d1a708dc5c23b594"
-            },
-            "src/third_party/flac": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-gvTFPNOlBfozptaH7lTb9iD/09AmpdT3kCl9ClszjEs=",
-                "url": "https://chromium.googlesource.com/chromium/deps/flac.git",
-                "rev": "689da3a7ed50af7448c3f1961d1791c7c1d9c85c"
-            },
-            "src/third_party/flatbuffers/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-OQ8E+i30WRz/lPJmVDiF7+TPo4gZVu2Of9loxz3tswI=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/flatbuffers.git",
-                "rev": "a56f9ec50e908362e20254fcef28e62a2f148d91"
-            },
-            "src/third_party/fontconfig/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-0R+FEhtGXFiQWHEPRrJqaBW1JVfCojYI4NPDvYMBhoU=",
-                "url": "https://chromium.googlesource.com/external/fontconfig.git",
-                "rev": "06929a556fdc39c8fe12965b69070c8df520a33e"
-            },
-            "src/third_party/fp16/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-m2d9bqZoGWzuUPGkd29MsrdscnJRtuIkLIMp3fMmtRY=",
-                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FP16.git",
-                "rev": "0a92994d729ff76a58f692d3028ca1b64b145d91"
-            },
-            "src/third_party/gemmlowp/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-O5wD8wxgis0qYMaY+xZ21GBDVQFphMRvInCOswS6inA=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/gemmlowp.git",
-                "rev": "13d57703abca3005d97b19df1f2db731607a7dc2"
-            },
-            "src/third_party/grpc/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-64JEVCx/PCM0dvv7kAQvSjLc0QbRAZVBDzwD/FAV6T8=",
-                "url": "https://chromium.googlesource.com/external/github.com/grpc/grpc.git",
-                "rev": "822dab21d9995c5cf942476b35ca12a1aa9d2737"
-            },
-            "src/third_party/freetype/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-qJBw5ocv4+2Xx8bU47QK8sw9Sl636iI+16cbaSNatHU=",
-                "url": "https://chromium.googlesource.com/chromium/src/third_party/freetype2.git",
-                "rev": "0a3836c97d5e84d6721ac0fd2839e8ae1b7be8d9"
-            },
-            "src/third_party/freetype-testing/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-2aHPchIK5Oce5+XxdXVCC+8EM6i0XT0rFbjSIVa2L1A=",
-                "url": "https://chromium.googlesource.com/external/github.com/freetype/freetype2-testing.git",
-                "rev": "7a69b1a2b028476f840ab7d4a2ffdfe4eb2c389f"
-            },
-            "src/third_party/fxdiv/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-LjX5kivfHbqCIA5pF9qUvswG1gjOFo3CMpX0VR+Cn38=",
-                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FXdiv.git",
-                "rev": "63058eff77e11aa15bf531df5dd34395ec3017c8"
-            },
-            "src/third_party/harfbuzz-ng/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-WaR7U7PeHIffa+ZG85QG7pii/dLOI4+23xK0/hUf1ok=",
-                "url": "https://chromium.googlesource.com/external/github.com/harfbuzz/harfbuzz.git",
-                "rev": "2175f5d050743317c563ec9414e0f83a47f7fbc4"
-            },
-            "src/third_party/emoji-segmenter/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-oT9mAKoKnrsFsBAeTRfPOXM76HRQQabFAlPpfKUGFhs=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/emoji-segmenter.git",
-                "rev": "9ba6d25d0d9313569665d4a9d2b34f0f39f9a50e"
-            },
-            "src/third_party/ots/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-kiUXrXsaGOzPkKh0dVmU1I13WHt0Stzj7QLMqHN9FbU=",
-                "url": "https://chromium.googlesource.com/external/github.com/khaledhosny/ots.git",
-                "rev": "46bea9879127d0ff1c6601b078e2ce98e83fcd33"
-            },
-            "src/third_party/libgav1/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-DY2BBK+bH1lGZNEl3rMDsPb7Z52YMIQy/3N0achugE0=",
-                "url": "https://chromium.googlesource.com/codecs/libgav1.git",
-                "rev": "cd53f7c0d6a1c005e38874d143c8876d375bae70"
-            },
-            "src/third_party/googletest/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-VYRjcM3dDY2FarviXyFMgSkXCqKfWXwtGAj2Msgm7zg=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/googletest.git",
-                "rev": "af29db7ec28d6df1c7f0f745186884091e602e07"
-            },
-            "src/third_party/hunspell_dictionaries": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-67mvpJRFFa9eMfyqFMURlbxOaTJBICnk+gl0b0mEHl8=",
-                "url": "https://chromium.googlesource.com/chromium/deps/hunspell_dictionaries.git",
-                "rev": "41cdffd71c9948f63c7ad36e1fb0ff519aa7a37e"
-            },
-            "src/third_party/icu": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-47Xxb5IFbRmdO3oADjn13fm7aIYFXh2R4YVZIJAy22U=",
-                "url": "https://chromium.googlesource.com/chromium/deps/icu.git",
-                "rev": "d8daa943f64cd5dd2a55e9baf2e655ab4bfa5ae9"
-            },
-            "src/third_party/jsoncpp/source": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-bSLNcoYBz3QCt5VuTR056V9mU2PmBuYBa0W6hFg2m8Q=",
-                "url": "https://chromium.googlesource.com/external/github.com/open-source-parsers/jsoncpp.git",
-                "rev": "42e892d96e47b1f6e29844cc705e148ec4856448"
-            },
-            "src/third_party/leveldatabase/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-TTX2FrmcWsgqrh4uzqMyGnnnG51cVC2ILfdLxD65MLY=",
-                "url": "https://chromium.googlesource.com/external/leveldb.git",
-                "rev": "068d5ee1a3ac40dabd00d211d5013af44be55bea"
-            },
-            "src/third_party/libFuzzer/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-HG3KHhKQnr4hdnUK/2QhcxRdNxh38fhU54JKKzqZaio=",
-                "url": "https://chromium.googlesource.com/chromium/llvm-project/compiler-rt/lib/fuzzer.git",
-                "rev": "debe7d2d1982e540fbd6bd78604bf001753f9e74"
-            },
-            "src/third_party/centipede/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-yFZOn/Ga+D/b/1TwuOZdO/H4/GuX/HRB18rgYg7+rmE=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/centipede.git",
-                "rev": "a5a9071410e6e8134855b88461d0eb2c77d48cdd"
-            },
-            "src/third_party/libaddressinput/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-xvUUQSPrvqUp5DI9AqlRTWurwDW087c6v4RvI+4sfOQ=",
-                "url": "https://chromium.googlesource.com/external/libaddressinput.git",
-                "rev": "e8712e415627f22d0b00ebee8db99547077f39bd"
-            },
-            "src/third_party/libaom/source/libaom": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-j8b0xM7hHNqYIeUQjf+c7LyzcfZVJx64Xqo9gIRtsYU=",
-                "url": "https://aomedia.googlesource.com/aom.git",
-                "rev": "5a0903824082f41123e8365b5b99ddb6ced8971c"
-            },
-            "src/third_party/libavif/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-3Oe8ouucu2eHpXov3WchwKQIqjhzuSFfNZ7ChEkQiTE=",
-                "url": "https://chromium.googlesource.com/external/github.com/AOMediaCodec/libavif.git",
-                "rev": "1af8cea3d1b3a05ecbcb0e39d99a7f0183e6ce13"
-            },
-            "src/third_party/nearby/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-GfxGDSh2qkjIGgXgwH0xWAnjswOmGEVaXlci+tZS53g=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/nearby-connections.git",
-                "rev": "37000006c224476104276bf74038d60967593814"
-            },
-            "src/third_party/securemessage/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-GS4ccnuiqxMs/LVYAtvSlVAYFp4a5GoZsxcriTX3k78=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/securemessage.git",
-                "rev": "fa07beb12babc3b25e0c5b1f38c16aa8cb6b8f84"
-            },
-            "src/third_party/ukey2/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-aaLs6ZS+CdBlCJ6ZhsmdAPFxiBIij6oufsDcNeRSV1E=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/ukey2.git",
-                "rev": "0275885d8e6038c39b8a8ca55e75d1d4d1727f47"
-            },
-            "src/third_party/cros-components/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-HgBDDfYvxYtHPfWlAs4aFCzDyhdcWnSP9nvCl8/UDfU=",
-                "url": "https://chromium.googlesource.com/external/google3/cros_components.git",
-                "rev": "0971e0c09f748dd476089b0e5136fe0b84e0bb4c"
-            },
-            "src/third_party/libdrm/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-ML89TBKDPHOd0YOVBmvLac+tyqgA5khDFK5vq4CCru8=",
-                "url": "https://chromium.googlesource.com/chromiumos/third_party/libdrm.git",
-                "rev": "b9ca37b3134861048986b75896c0915cbf2e97f9"
-            },
-            "src/third_party/expat/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-FXTDGAK03jc2wvazhRKqtsFRKZUYS/9HLpZNp4JfZJI=",
-                "url": "https://chromium.googlesource.com/external/github.com/libexpat/libexpat.git",
-                "rev": "441f98d02deafd9b090aea568282b28f66a50e36"
-            },
-            "src/third_party/libipp/libipp": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-gxU92lHLd6uxO8T3QWhZIK0hGy97cki705DV0VimCPY=",
-                "url": "https://chromium.googlesource.com/chromiumos/platform2/libipp.git",
-                "rev": "2209bb84a8e122dab7c02fe66cc61a7b42873d7f"
-            },
-            "src/third_party/libjpeg_turbo": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-QnXMR9qqRiYfV1sUJvKVvLQ9A022lYKbsrI9HOU9LCs=",
-                "url": "https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git",
-                "rev": "aa4075f116e4312537d0d3e9dbd5e31096539f94"
-            },
-            "src/third_party/liblouis/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-EI/uaHXe0NlqdEw764q0SjerThYEVLRogUlmrsZwXnY=",
-                "url": "https://chromium.googlesource.com/external/liblouis-github.git",
-                "rev": "9700847afb92cb35969bdfcbbfbbb74b9c7b3376"
-            },
-            "src/third_party/libphonenumber/dist": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-3hSnTFTD3KAdbyxfKg12qbIYTmw6YlTCH64gMP/HUJo=",
-                "url": "https://chromium.googlesource.com/external/libphonenumber.git",
-                "rev": "140dfeb81b753388e8a672900fb7a971e9a0d362"
-            },
-            "src/third_party/libprotobuf-mutator/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-ZyPweW+V5foxFQwjjMLkaRUo+FNV+kEDGIH/4oRV614=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/libprotobuf-mutator.git",
-                "rev": "a304ec48dcf15d942607032151f7e9ee504b5dcf"
-            },
-            "src/third_party/libsrtp": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-pfLFh2JGk/g0ZZxBKTaYW9/PBpkCm0rtJeyNePUMTTc=",
-                "url": "https://chromium.googlesource.com/chromium/deps/libsrtp.git",
-                "rev": "5b7c744eb8310250ccc534f3f86a2015b3887a0a"
-            },
-            "src/third_party/libsync/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Mkl6C1LxF3RYLwYbxiSfoQPt8QKFwQWj/Ati2sNJ32E=",
-                "url": "https://chromium.googlesource.com/aosp/platform/system/core/libsync.git",
-                "rev": "f4f4387b6bf2387efbcfd1453af4892e8982faf6"
-            },
-            "src/third_party/libvpx/source/libvpx": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-hIXEvCqbeMShGL1hCpJAMPbpuVfFM6Z4z5DPR3kfwb4=",
-                "url": "https://chromium.googlesource.com/webm/libvpx.git",
-                "rev": "27171320f5e36f7b18071bfa1d9616863ca1b4e8"
-            },
-            "src/third_party/libwebm/source": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-u/5nkJed0DzdhR5OLL2kIhZhOnrbyzL1Kx37vV/jcEo=",
-                "url": "https://chromium.googlesource.com/webm/libwebm.git",
-                "rev": "e4fbea0c9751ae8aa86629b197a28d8276a2b0da"
-            },
-            "src/third_party/libwebp/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-zBMivj2tF5AWC+E/rHHEtxBel0i1YwGGBus+4h3PCYY=",
-                "url": "https://chromium.googlesource.com/webm/libwebp.git",
-                "rev": "fd7b5d48464475408d32d2611bdb6947d4246b97"
-            },
-            "src/third_party/libyuv": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-LLmTW05GxoXgNkLRHp3e6gb7glMgJo1moc6lPLVHk6w=",
-                "url": "https://chromium.googlesource.com/libyuv/libyuv.git",
-                "rev": "77c2121f7e6b8e694d6e908bbbe9be24214097da"
-            },
-            "src/third_party/lss": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-hE8uZf9Fst66qJkoVYChiB8G41ie+k9M4X0W+5JUSdw=",
-                "url": "https://chromium.googlesource.com/linux-syscall-support.git",
-                "rev": "ce877209e11aa69dcfffbd53ef90ea1d07136521"
-            },
-            "src/third_party/material_color_utilities/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Cv1TjvOcswhp60LXblrLwY5jrudqKuDUqs1c//x49YE=",
-                "url": "https://chromium.googlesource.com/external/github.com/material-foundation/material-color-utilities.git",
-                "rev": "bd6537fb1c4aa2164d97f96e78a9c826e360a0ed"
-            },
-            "src/third_party/minigbm/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-9HwvjTETerbQ7YKXH9kUB2eWa8PxGWMAJfx1jAluhrs=",
-                "url": "https://chromium.googlesource.com/chromiumos/platform/minigbm.git",
-                "rev": "3018207f4d89395cc271278fb9a6558b660885f5"
-            },
-            "src/third_party/nasm": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-L+b3X3vsfpY6FSlIK/AHhxhmq2cXd50vND6uT6yn8Qs=",
-                "url": "https://chromium.googlesource.com/chromium/deps/nasm.git",
-                "rev": "7fc833e889d1afda72c06220e5bed8fb43b2e5ce"
-            },
-            "src/third_party/neon_2_sse/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-299ZptvdTmCnIuVVBkrpf5ZTxKPwgcGUob81tEI91F0=",
-                "url": "https://chromium.googlesource.com/external/github.com/intel/ARM_NEON_2_x86_SSE.git",
-                "rev": "a15b489e1222b2087007546b4912e21293ea86ff"
-            },
-            "src/third_party/openh264/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-J7Eqe2QevZh1xfap19W8AVCcwfRu7ztknnbKFJUAH1c=",
-                "url": "https://chromium.googlesource.com/external/github.com/cisco/openh264",
-                "rev": "09a4f3ec842a8932341b195c5b01e141c8a16eb7"
-            },
-            "src/third_party/openscreen/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-MSJbCxYEJmhUrBUobKBgUhPV5yMhxxtKgU4NE2h9mFs=",
-                "url": "https://chromium.googlesource.com/openscreen",
-                "rev": "0964c1e903264ae2c388fc0eda3309c22b46e1a2"
-            },
-            "src/third_party/openscreen/src/third_party/tinycbor/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-fMKBFUSKmODQyg4hKIa1hwnEKIV6WBbY1Gb8DOSnaHA=",
-                "url": "https://chromium.googlesource.com/external/github.com/intel/tinycbor.git",
-                "rev": "d393c16f3eb30d0c47e6f9d92db62272f0ec4dc7"
-            },
-            "src/third_party/pdfium": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-3FXPYcZZtfwzlkkakKczjoYbDURBA/QDCVdOn+98864=",
-                "url": "https://pdfium.googlesource.com/pdfium.git",
-                "rev": "9505810f66cc3dde86c30d072de53ca6fc8a45de"
-            },
-            "src/third_party/perfetto": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-AJWzQUYiml374LUZyku0ZTEM+lXAKsjc1YbsLfCfMGo=",
-                "url": "https://android.googlesource.com/platform/external/perfetto.git",
-                "rev": "f2da6df2f144e41e1c1428f11e8b388eaf8a2209"
-            },
-            "src/third_party/pthreadpool/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Pfvievhma1rOpbLdSrIX4KaZyRpdvrnjRzzPYl3fDQo=",
-                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/pthreadpool.git",
-                "rev": "1787867f6183f056420e532eec640cba25efafea"
-            },
-            "src/third_party/pyelftools": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-I/7p3IEvfP/gkes4kx18PvWwhAKilQKb67GXoW4zFB4=",
-                "url": "https://chromium.googlesource.com/chromiumos/third_party/pyelftools.git",
-                "rev": "19b3e610c86fcadb837d252c794cb5e8008826ae"
-            },
-            "src/third_party/quic_trace/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Nf9ZDLcE1JunhbpEMHhrY2ROnbgrvVZoRkPwWq1DU0g=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/quic-trace.git",
-                "rev": "caa0a6eaba816ecb737f9a70782b7c80b8ac8dbc"
-            },
-            "src/third_party/pywebsocket3/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-WEqqu2/7fLqcf/2/IcD7/FewRSZ6jTgVlVBvnihthYQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/pywebsocket3.git",
-                "rev": "50602a14f1b6da17e0b619833a13addc6ea78bc2"
-            },
-            "src/third_party/re2/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-9dMTr5VuQfteKK/xIqZUqLnGu26ZYlFUfZTZNgzKUN4=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/re2.git",
-                "rev": "11073deb73b3d01018308863c0bcdfd0d51d3e70"
-            },
-            "src/third_party/ruy/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Sv2rfq3ghddpcJHn7Z2FTXpwKdzgJOiSGu6HhV6nXIQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/ruy.git",
-                "rev": "363f252289fb7a1fba1703d99196524698cb884d"
-            },
-            "src/third_party/skia": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-7kD6XLaeriWGXM69rCcqPoAkX0NAFOFhFX/SBm710cA=",
-                "url": "https://skia.googlesource.com/skia.git",
-                "rev": "ea1a1635fcf5b1f68b59cd3f8649a0abfab65cfd"
-            },
-            "src/third_party/smhasher/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-RyC//me08hwGXRrWcK8GZ1uhIkBq4FByA7fHCVDsniw=",
-                "url": "https://chromium.googlesource.com/external/smhasher.git",
-                "rev": "e87738e57558e0ec472b2fc3a643b838e5b6e88f"
-            },
-            "src/third_party/snappy/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-5fV6NfO8vmqK+iCwpLtE2YjYOzjsshctauyjNIOxrH0=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/snappy.git",
-                "rev": "c9f9edf6d75bb065fa47468bf035e051a57bec7c"
-            },
-            "src/third_party/sqlite/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-MO4fd5ROy8vtUeGYeWaMT6uO/zYUruPCPjHnZT9elcI=",
-                "url": "https://chromium.googlesource.com/chromium/deps/sqlite.git",
-                "rev": "f6752b7ed1fe3cc1491c0c47ec5804ee2bd0e59b"
-            },
-            "src/third_party/swiftshader": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-H2A42dNT1DgRknyL3lzHlWbxURskjTqzvqd097w4Tho=",
-                "url": "https://swiftshader.googlesource.com/SwiftShader.git",
-                "rev": "23e97b79fb9193bf88e79c16c6a577c680edb2d6"
-            },
-            "src/third_party/text-fragments-polyfill/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-4rW2u1cQAF4iPWHAt1FvVXIpz2pmI901rEPks/w/iFA=",
-                "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/text-fragments-polyfill.git",
-                "rev": "c036420683f672d685e27415de0a5f5e85bdc23f"
-            },
-            "src/third_party/tflite/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-TdBBSPfUCIst1G6BixqcOx9dQiN6f1wmSRS9Gjh4K1U=",
-                "url": "https://chromium.googlesource.com/external/github.com/tensorflow/tensorflow.git",
-                "rev": "ab14323eaf8522fa608fe047d99249bc844c47cd"
-            },
-            "src/third_party/vulkan-deps": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-4Mwtu/Qmz0wAm8YCWYq9ogzKLg7nEwgka3+OFI/s+fs=",
-                "url": "https://chromium.googlesource.com/vulkan-deps",
-                "rev": "a52479099cf2862650df9dbc12e2e202e345901e"
-            },
-            "src/third_party/vulkan-deps/glslang/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-UOJ4O1zRbW0qxj2oxSKSdvOwZOD907Q0flXxQjYavuQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang",
-                "rev": "9c7fd1a33e5cecbe465e1cd70170167d5e40d398"
-            },
-            "src/third_party/vulkan-deps/spirv-cross/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-UmzXWpjwGgLijP+BumSK1OW+8OrtWjBXgIt4vzI8ZvQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross",
-                "rev": "fc9bee27f445644635e83ef111ef54944bb6e3af"
-            },
-            "src/third_party/vulkan-deps/spirv-headers/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-a7OjEH3WczZa8VFvPGGh/J+8nmtYDf0eSUuxU20XSJI=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers",
-                "rev": "cfbe4feef20c3c0628712c2792624f0221e378ac"
-            },
-            "src/third_party/vulkan-deps/spirv-tools/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-UfcBkLIDSEgKyEz11Tsf3FIM+R6ZboWmDVKR1xu6q6o=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools",
-                "rev": "25ad5e19f193429b737433d5f6151062ddbc1680"
-            },
-            "src/third_party/vulkan-deps/vulkan-headers/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-bilEf59jBDgl5WUgOZpRSMkp33C/rssj37rdvHaxRGU=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers",
-                "rev": "8a397558c4d2a4bf9e64e900c45a7e65664c32b2"
-            },
-            "src/third_party/vulkan-deps/vulkan-loader/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-gLNrvpBDnKOr03e5TKxMUVCQ70fI27x3MSLVjMkw2d8=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader",
-                "rev": "f035e57c171ce9009f2c47b5488a66c653843501"
-            },
-            "src/third_party/vulkan-deps/vulkan-tools/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-VEBPgOGdrzQoIYU7BTioa6m/OH1TUGXGaF7FH5B/h2M=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools",
-                "rev": "df10a2759b4b60d59b735882217a749d8e5be660"
-            },
-            "src/third_party/vulkan-deps/vulkan-validation-layers/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-JqLhqdqKX2n0ifLfS7ymOL2kcelUjdmsLKqmkqPwTQU=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers",
-                "rev": "3d530f6921f7a9defa297eec25fcef77c9b96282"
-            },
-            "src/third_party/vulkan_memory_allocator": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-rARuPHa/gEAOTM8/Fnob0bU0Jv+UKLiwe3o0UGWYlME=",
-                "url": "https://chromium.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git",
-                "rev": "ebe84bec02c041d28f902da0214bf442743fc907"
-            },
-            "src/third_party/wayland/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-fcZtJP/8Ck+9WyPvt3AhogwPae5+gAxdIaEMp7eSr44=",
-                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland.git",
-                "rev": "c7473676b8abc682e820546287044cee3bca9147"
-            },
-            "src/third_party/wayland-protocols/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-3QK+ZN6IFUFkDxySSoQwP1J3JnTlD7JPaUk6Tr/d/k4=",
-                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland-protocols.git",
-                "rev": "4624cfaaf563cd7be5e2e2087c8de6d3a48ea867"
-            },
-            "src/third_party/wayland-protocols/kde": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Dmcp/2ms/k7NxPPmPkp0YNfM9z2Es1ZO0uX10bc7N2Y=",
-                "url": "https://chromium.googlesource.com/external/github.com/KDE/plasma-wayland-protocols.git",
-                "rev": "0b07950714b3a36c9b9f71fc025fc7783e82926e"
-            },
-            "src/third_party/wayland-protocols/gtk": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-75XNnLkF5Lt1LMRGT+T61k0/mLa3kkynfN+QWvZ0LiQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/GNOME/gtk.git",
-                "rev": "40ebed3a03aef096addc0af09fec4ec529d882a0"
-            },
-            "src/third_party/webdriver/pylib": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-WIqWXIKVgElgg8P8laLAlUrgwodGdeVcwohZxnPKedw=",
-                "url": "https://chromium.googlesource.com/external/github.com/SeleniumHQ/selenium/py.git",
-                "rev": "fc5e7e70c098bfb189a9a74746809ad3c5c34e04"
-            },
-            "src/third_party/webgl/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-BRF0/WxbwxTby1o+zFHU42s7xYJUmcsgfu4DFX97jRU=",
-                "url": "https://chromium.googlesource.com/external/khronosgroup/webgl.git",
-                "rev": "d1b65aa5a88f6efd900604dfcda840154e9f16e2"
-            },
-            "src/third_party/webgpu-cts/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-pSwkkIcfrWP6NKNFtHlyq2Z7zYqbKU6V/GXMqH6rYBs=",
-                "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts.git",
-                "rev": "7d2d22292ce5af280c8c5849ed7f0679d7ab70e9"
-            },
-            "src/third_party/webrtc": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-J/XEHY4y9j4bg0+ORkDydVOvtncPLMN/9cy073lpMOM=",
-                "url": "https://webrtc.googlesource.com/src.git",
-                "rev": "151be743d4c83671565f9c1eada3f4a0b2e44dea"
-            },
-            "src/third_party/wuffs/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-HP8Vf1C9DuA9H+busf3lFoF9SsYqviLKv0l73CxmNEI=",
-                "url": "https://skia.googlesource.com/external/github.com/google/wuffs-mirror-release-c.git",
-                "rev": "fe9d08f2b6e80af691bfb1a718e144c49a1b9eba"
-            },
-            "src/third_party/weston/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-EKl6oIM8Vml9wtSIb9ExFIuuJohbU/rsG3JVS5thaUU=",
-                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/weston.git",
-                "rev": "420cfd00f2de91de74bd9d4d8348e43c582d29f0"
-            },
-            "src/third_party/xdg-utils": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-t3uV9JkkQQIwmezzSoEdTMLSizZdLQB7eLKTRQGH4kQ=",
-                "url": "https://chromium.googlesource.com/chromium/deps/xdg-utils.git",
-                "rev": "d80274d5869b17b8c9067a1022e4416ee7ed5e0d"
-            },
-            "src/third_party/xnnpack/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-vsn3lrog5affus0qxc4TK2Z/tdd/E6hBYeUQRWoDZPQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/XNNPACK.git",
-                "rev": "b9d4073a6913891ce9cbd8965c8d506075d2a45a"
-            },
-            "src/tools/page_cycler/acid3": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-+7Ynz7k/dWdd4Wo7Rjzvc8GY9gTsjzjG3GdNsuDKszY=",
-                "url": "https://chromium.googlesource.com/chromium/deps/acid3.git",
-                "rev": "6be0a66a1ebd7ebc5abc1b2f405a945f6d871521"
-            },
-            "src/v8": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-pmam8TVqtxmfc0V1gy2R1jhW+dF2ybzeKbGZKAbJveY=",
-                "url": "https://chromium.googlesource.com/v8/v8.git",
-                "rev": "978934af4a291282d994fc184d5dc03a82deb5df"
-            },
-            "src/third_party/nan": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-tur5CExvwuSmwqBwH9o8OZWzDuifRybjEb+4/tm6exk=",
-                "owner": "nodejs",
-                "repo": "nan",
-                "rev": "16fa32231e2ccd89d2804b3f765319128b20c4ac"
-            },
-            "src/third_party/electron_node": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-XBm+WYXQ8DM1HU6NFciGSfkbHDXPbTyg0gScQCbbpQU=",
-                "owner": "nodejs",
-                "repo": "node",
-                "rev": "v18.15.0"
-            },
-            "src/third_party/squirrel.mac": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-4GfKQg0u3c9GI+jl3ixESNqWXQJKRMi+00QT0s2Shqw=",
-                "owner": "Squirrel",
-                "repo": "Squirrel.Mac",
-                "rev": "0e5d146ba13101a1302d59ea6e6e0b3cace4ae38"
-            },
-            "src/third_party/squirrel.mac/vendor/ReactiveObjC": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-/MCqC1oFe3N9TsmfVLgl+deR6qHU6ZFQQjudb9zB5Mo=",
-                "owner": "ReactiveCocoa",
-                "repo": "ReactiveObjC",
-                "rev": "74ab5baccc6f7202c8ac69a8d1e152c29dc1ea76"
-            },
-            "src/third_party/squirrel.mac/vendor/Mantle": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-ogFkMJybf2Ue606ojXJu6Gy5aXSi1bSKm60qcTAIaPk=",
-                "owner": "Mantle",
-                "repo": "Mantle",
-                "rev": "78d3966b3c331292ea29ec38661b25df0a245948"
-            }
-        },
-        "version": "25.9.1",
-        "modules": "116",
-        "chrome": "114.0.5735.289",
-        "node": "18.15.0",
-        "chromium": {
-            "version": "114.0.5735.289",
-            "deps": {
-                "gn": {
-                    "version": "2023-04-19",
-                    "url": "https://gn.googlesource.com/gn",
-                    "rev": "5a004f9427a050c6c393c07ddb85cba8ff3849fa",
-                    "hash": "sha256-U0rinjJAToVh4zCBd/9I3O4McxW88b7Bp6ibmmqCuQc="
-                }
-            }
-        },
-        "chromium_npm_hash": "sha256-WFkyT1V4jNkWUyyHF68yEe50GhdlNZJBXuQvVVGPk6A=",
-        "electron_yarn_hash": "0fq44b91ha1lbgakwfz16z0g10y66c7m8gvlkg1ci81rzjrj0qpz"
+        "chromium_npm_hash": "sha256-5cjqpYB45nw2gop54VP+tL7/0w63nQGfQ4x6a6KS7XQ=",
+        "electron_yarn_hash": "05wkb1m0yjbai4153y49kwr1v2lj14fg75aqlvmmrhf3bxp9lg5g"
     }
 }
diff --git a/pkgs/development/tools/electron/version-old.patch b/pkgs/development/tools/electron/version-old.patch
deleted file mode 100644
index 00562225d7677..0000000000000
--- a/pkgs/development/tools/electron/version-old.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-diff --git a/electron/BUILD.gn b/electron/BUILD.gn
-index c905891eb8..f2cf11fe88 100644
---- a/electron/BUILD.gn
-+++ b/electron/BUILD.gn
-@@ -111,8 +111,6 @@ electron_version = exec_script("script/print-version.py",
-                                [],
-                                "trim string",
-                                [
--                                 ".git/packed-refs",
--                                 ".git/HEAD",
-                                  "script/lib/get-version.js",
-                                ])
- 
-diff --git a/electron/script/lib/get-version.js b/electron/script/lib/get-version.js
-index 45a120482b..ddaf8ab60e 100644
---- a/electron/script/lib/get-version.js
-+++ b/electron/script/lib/get-version.js
-@@ -1,22 +1 @@
--const { spawnSync } = require('child_process');
--const path = require('path');
--
--module.exports.getElectronVersion = () => {
--  // Find the nearest tag to the current HEAD
--  // This is equivilant to our old logic of "use a value in package.json" for the following reasons
--  //
--  // 1. Whenever we updated the package.json we ALSO pushed a tag with the same version
--  // 2. Whenever we _reverted_ a bump all we actually did was push a commit that deleted the tag and changed the version number back
--  //
--  // The only difference in the "git describe" technique is that technically a commit can "change" it's version
--  // number if a tag is created / removed retroactively.  i.e. the first time a commit is pushed it will be 1.2.3
--  // and after the tag is made rebuilding the same commit will result in it being 1.2.4
--  const output = spawnSync('git', ['describe', '--tags', '--abbrev=0'], {
--    cwd: path.resolve(__dirname, '..', '..')
--  });
--  if (output.status !== 0) {
--    console.error(output.stderr);
--    throw new Error('Failed to get current electron version');
--  }
--  return output.stdout.toString().trim().replace(/^v/g, '');
--};
-+module.exports.getElectronVersion = () => "@version@";
-
diff --git a/pkgs/development/tools/electron/version.patch b/pkgs/development/tools/electron/version.patch
index 6edb64a23eaf0..00562225d7677 100644
--- a/pkgs/development/tools/electron/version.patch
+++ b/pkgs/development/tools/electron/version.patch
@@ -16,8 +16,8 @@ index 45a120482b..ddaf8ab60e 100644
 --- a/electron/script/lib/get-version.js
 +++ b/electron/script/lib/get-version.js
 @@ -1,22 +1 @@
--const { spawnSync } = require('node:child_process');
--const path = require('node:path');
+-const { spawnSync } = require('child_process');
+-const path = require('path');
 -
 -module.exports.getElectronVersion = () => {
 -  // Find the nearest tag to the current HEAD