git: 4297da69480c - main - devel/electron43: Update to 43.7.11

From: Hiroki Tagato <tagattie_at_FreeBSD.org>
Date: Thu, 15 Oct 2026 12:40:55 UTC
The branch main has been updated by tagattie:

URL: https://cgit.FreeBSD.org/ports/commit/?id=4297da69480c3b42e06836a6bfcdbc0ec77b7a30

commit 4297da69480c3b42e06836a6bfcdbc0ec77b7a30
Author:     Hiroki Tagato <tagattie@FreeBSD.org>
AuthorDate: 2026-10-15 12:39:17 +0000
Commit:     Hiroki Tagato <tagattie@FreeBSD.org>
CommitDate: 2026-10-15 12:40:46 +0000

    devel/electron43: Update to 43.7.11
    
    Changelog:
    - https://github.com/electron/electron/releases/tag/v43.7.10
    - https://github.com/electron/electron/releases/tag/v43.7.11
    
    Reported by:    GitHub (watch releases)
---
 devel/electron43/Makefile                          |  1 -
 devel/electron43/Makefile.version                  |  2 +-
 devel/electron43/distinfo                          | 14 +++---
 .../spec/fixtures/api/no-display/package.json      |  4 ++
 ...ts_named__mojo__ipc__server_endpoint__options.h |  4 +-
 devel/electron43/files/patch-electron_BUILD.gn     | 14 +++---
 .../files/patch-electron_spec_api-app.spec.ts      | 57 +++++++++++++---------
 .../patch-electron_spec_api-browser-window.spec.ts | 26 +++++-----
 ...patch-electron_spec_api-content-tracing.spec.ts | 14 +++---
 .../files/patch-electron_spec_api-net-log.spec.ts  |  8 +--
 .../files/patch-electron_spec_api-shell.spec.ts    |  6 +--
 .../patch-electron_spec_api-web-contents.spec.ts   | 10 ++--
 .../files/patch-electron_spec_chromium.spec.ts     |  8 +--
 .../files/patch-electron_spec_crash.spec.ts        |  4 +-
 .../files/patch-electron_spec_node.spec.ts         |  4 +-
 15 files changed, 94 insertions(+), 82 deletions(-)

diff --git a/devel/electron43/Makefile b/devel/electron43/Makefile
index 8e8ae62c3269..a8eb23ce6e23 100644
--- a/devel/electron43/Makefile
+++ b/devel/electron43/Makefile
@@ -1,7 +1,6 @@
 PORTNAME=	electron
 DISTVERSIONPREFIX=	v
 DISTVERSION=	${ELECTRON_VER}
-PORTREVISION=	1
 PULSEMV=	16
 PULSEV=		${PULSEMV}.1
 CATEGORIES=	devel
diff --git a/devel/electron43/Makefile.version b/devel/electron43/Makefile.version
index f173250ab60c..2c25e771d0d8 100644
--- a/devel/electron43/Makefile.version
+++ b/devel/electron43/Makefile.version
@@ -1,2 +1,2 @@
-ELECTRON_VER=		43.7.9
+ELECTRON_VER=		43.7.11
 ELECTRON_VER_MAJOR=	${ELECTRON_VER:C/\..*//}
diff --git a/devel/electron43/distinfo b/devel/electron43/distinfo
index 6e37057c5cfd..f6ea5ce25d5e 100644
--- a/devel/electron43/distinfo
+++ b/devel/electron43/distinfo
@@ -1,4 +1,4 @@
-TIMESTAMP = 1791433399
+TIMESTAMP = 1791979710
 SHA256 (electron/chromium-150.0.7871.250.tar.xz.0) = ff59b1687c8682c9f6138ae24f0e3b0239c035a585857debd902a5783ebed85c
 SIZE (electron/chromium-150.0.7871.250.tar.xz.0) = 2000000000
 SHA256 (electron/chromium-150.0.7871.250.tar.xz.1) = 44420b00bd86f06de3aa57e555df31c80102042ab214a94d0f090f1d64e80786
@@ -421,12 +421,12 @@ SHA256 (electron/rust/crates/zmij-1.0.21.crate) = b8848ee67ecc8aedbaf3e4122217af
 SIZE (electron/rust/crates/zmij-1.0.21.crate) = 26665
 SHA256 (electron/yarn-4.18.0.tgz) = 1a1bc8f7767d284517803535e296f0bbac005274f9c85eeb20e7803220e4d50a
 SIZE (electron/yarn-4.18.0.tgz) = 1331218
-SHA256 (electron/electron43-43.7.9-node-modules-arm64.tar.xz) = 45daf9d2b4cca4cc2f597a5f238f0bc29a32e98c47cd4fbff7e6a42f0b043721
-SIZE (electron/electron43-43.7.9-node-modules-arm64.tar.xz) = 59946301
-SHA256 (electron/electron43-43.7.9-node-modules-x64.tar.xz) = 79d92107b1945e579375f9db1ba970acbda4e1bdbd2ae38d5ceae15ed8718ddc
-SIZE (electron/electron43-43.7.9-node-modules-x64.tar.xz) = 80692983
-SHA256 (electron/electron-electron-v43.7.9_GH0.tar.gz) = 3069df46ac22f0111c798fe58107b6b9ea2a9b97d539d1a14dc1269149786188
-SIZE (electron/electron-electron-v43.7.9_GH0.tar.gz) = 20782800
+SHA256 (electron/electron43-43.7.11-node-modules-arm64.tar.xz) = 45daf9d2b4cca4cc2f597a5f238f0bc29a32e98c47cd4fbff7e6a42f0b043721
+SIZE (electron/electron43-43.7.11-node-modules-arm64.tar.xz) = 59946301
+SHA256 (electron/electron43-43.7.11-node-modules-x64.tar.xz) = 79d92107b1945e579375f9db1ba970acbda4e1bdbd2ae38d5ceae15ed8718ddc
+SIZE (electron/electron43-43.7.11-node-modules-x64.tar.xz) = 80692983
+SHA256 (electron/electron-electron-v43.7.11_GH0.tar.gz) = f1d47cd1687af1cb445460a6f3ab0229121b1dc30de5e2c048c43bca94967f22
+SIZE (electron/electron-electron-v43.7.11_GH0.tar.gz) = 20865852
 SHA256 (electron/nodejs-node-v24.21.0_GH0.tar.gz) = a00e45375fe01977235ddb81ab6ac12f2f90161077cfbc2f77b8aaea4f75f8f9
 SIZE (electron/nodejs-node-v24.21.0_GH0.tar.gz) = 129712318
 SHA256 (electron/nodejs-nan-675cefebca42410733da8a454c8d9391fcebfbc2_GH0.tar.gz) = 3983c68f19ed75dd37dc228eab385093ae2533132730f253f0c3d19ff10788e3
diff --git a/devel/electron43/files/packagejsons/spec/fixtures/api/no-display/package.json b/devel/electron43/files/packagejsons/spec/fixtures/api/no-display/package.json
new file mode 100644
index 000000000000..892250a9deb8
--- /dev/null
+++ b/devel/electron43/files/packagejsons/spec/fixtures/api/no-display/package.json
@@ -0,0 +1,4 @@
+{
+  "name": "electron-test-no-display",
+  "main": "main.js"
+}
diff --git a/devel/electron43/files/patch-components_named__mojo__ipc__server_endpoint__options.h b/devel/electron43/files/patch-components_named__mojo__ipc__server_endpoint__options.h
index ebde9725cce5..0d817ae80ed9 100644
--- a/devel/electron43/files/patch-components_named__mojo__ipc__server_endpoint__options.h
+++ b/devel/electron43/files/patch-components_named__mojo__ipc__server_endpoint__options.h
@@ -1,6 +1,6 @@
---- components/named_mojo_ipc_server/endpoint_options.h.orig	2026-03-13 16:54:03 UTC
+--- components/named_mojo_ipc_server/endpoint_options.h.orig	2026-10-14 12:14:13 UTC
 +++ components/named_mojo_ipc_server/endpoint_options.h
-@@ -65,7 +65,7 @@ struct EndpointOptions {
+@@ -77,7 +77,7 @@ struct EndpointOptions {
    std::wstring security_descriptor;
  #endif
  
diff --git a/devel/electron43/files/patch-electron_BUILD.gn b/devel/electron43/files/patch-electron_BUILD.gn
index 4b0385de6804..7da6dc014264 100644
--- a/devel/electron43/files/patch-electron_BUILD.gn
+++ b/devel/electron43/files/patch-electron_BUILD.gn
@@ -1,4 +1,4 @@
---- electron/BUILD.gn.orig	2026-09-10 01:17:27 UTC
+--- electron/BUILD.gn.orig	2026-10-13 23:40:13 UTC
 +++ electron/BUILD.gn
 @@ -629,7 +629,7 @@ source_set("electron_lib") {
      defines += [ "GDK_DISABLE_DEPRECATION_WARNINGS" ]
@@ -9,7 +9,7 @@
      deps += [
        "//components/crash/core/app",
        "//components/crash/core/browser",
-@@ -743,6 +743,12 @@ source_set("electron_lib") {
+@@ -736,6 +736,12 @@ source_set("electron_lib") {
        cflags_objcc = [ "-fobjc-weak" ]
      }
    }
@@ -22,7 +22,7 @@
    if (is_linux) {
      libs = [ "xshmfence" ]
      deps += [
-@@ -1555,7 +1561,7 @@ if (is_mac) {
+@@ -1548,7 +1554,7 @@ if (is_mac) {
      } else if (is_linux) {
        sources = [
          "shell/app/electron_main_linux.cc",
@@ -31,7 +31,7 @@
          "shell/app/uv_stdio_fix.cc",
          "shell/app/uv_stdio_fix.h",
        ]
-@@ -1567,7 +1573,7 @@ if (is_mac) {
+@@ -1560,7 +1566,7 @@ if (is_mac) {
        ":electron_lib",
        ":electron_win32_resources",
        ":packed_resources",
@@ -40,7 +40,7 @@
        "//content:sandbox_helper_win",
        "//electron/buildflags",
        "//third_party/electron_node:libnode",
-@@ -1594,7 +1600,7 @@ if (is_mac) {
+@@ -1587,7 +1593,7 @@ if (is_mac) {
        public_deps = [ "//tools/v8_context_snapshot" ]
      }
  
@@ -49,7 +49,7 @@
        data_deps += [ "//components/crash/core/app:chrome_crashpad_handler" ]
      }
  
-@@ -1661,7 +1667,7 @@ if (is_mac) {
+@@ -1654,7 +1660,7 @@ if (is_mac) {
          configs += [ "//build/config/gcc:rpath_for_built_shared_libraries" ]
        }
  
@@ -58,7 +58,7 @@
          deps += [ "//sandbox/linux:chrome_sandbox" ]
        }
      }
-@@ -1782,7 +1788,9 @@ dist_zip("electron_dist_zip") {
+@@ -1775,7 +1781,9 @@ dist_zip("electron_dist_zip") {
        ]
      }
  
diff --git a/devel/electron43/files/patch-electron_spec_api-app.spec.ts b/devel/electron43/files/patch-electron_spec_api-app.spec.ts
index 466793512b5e..c8ab16b77ce2 100644
--- a/devel/electron43/files/patch-electron_spec_api-app.spec.ts
+++ b/devel/electron43/files/patch-electron_spec_api-app.spec.ts
@@ -1,6 +1,6 @@
---- electron/spec/api-app.spec.ts.orig	2026-09-30 08:47:42 UTC
+--- electron/spec/api-app.spec.ts.orig	2026-10-13 23:40:13 UTC
 +++ electron/spec/api-app.spec.ts
-@@ -127,7 +127,7 @@ describe('app module', () => {
+@@ -128,7 +128,7 @@ describe('app module', () => {
      });
    });
  
@@ -9,7 +9,7 @@
      it('sets the desktop name to the CHROME_DESKTOP environment variable', () => {
        const original = process.env.CHROME_DESKTOP;
        defer(() => {
-@@ -156,11 +156,11 @@ describe('app module', () => {
+@@ -157,11 +157,11 @@ describe('app module', () => {
    });
  
    describe('app.getPreferredSystemLanguages()', () => {
@@ -23,7 +23,7 @@
        const languages = app.getPreferredSystemLanguages();
        if (languages.length) {
          expect(languages).to.not.include('C');
-@@ -202,7 +202,7 @@ describe('app module', () => {
+@@ -203,7 +203,7 @@ describe('app module', () => {
      });
    });
  
@@ -32,16 +32,25 @@
      'when a D-Bus bus goes away',
      () => {
        it('exits cleanly instead of crashing', async () => {
-@@ -293,7 +293,7 @@ describe('app module', () => {
+@@ -297,7 +297,7 @@ describe('app module', () => {
+     // A missing display makes toolkit initialisation fail before the main loop
+     // runs; that early return must still tear the JS environment down cleanly.
+     // Skipped under ASan for the same reason as the test above.
+-    ifit(process.platform === 'linux' && !process.env.IS_ASAN)(
++    ifit((process.platform === 'linux' || process.platform === 'freebsd') && !process.env.IS_ASAN)(
+       'exits with code 1 when no display is available',
+       async () => {
+         const appPath = path.join(fixturesPath, 'api', 'no-display');
+@@ -318,7 +318,7 @@ describe('app module', () => {
        }
-     });
+     );
  
 -    ifit(['darwin', 'linux'].includes(process.platform))('exits gracefully', async function () {
 +    ifit(['darwin', 'linux', 'freebsd'].includes(process.platform))('exits gracefully', async function () {
        const electronPath = process.execPath;
        const appPath = path.join(fixturesPath, 'api', 'singleton');
        appProcess = cp.spawn(electronPath, [appPath]);
-@@ -491,7 +491,7 @@ describe('app module', () => {
+@@ -538,7 +538,7 @@ describe('app module', () => {
    });
  
    // GitHub Actions macOS-13 runners used for x64 seem to have a problem with this test.
@@ -50,7 +59,7 @@
      const tempFiles = [
        path.join(fixturesPath, 'foo.txt'),
        path.join(fixturesPath, 'bar.txt'),
-@@ -620,7 +620,7 @@ describe('app module', () => {
+@@ -667,7 +667,7 @@ describe('app module', () => {
    //   let w = null
  
    //   before(function () {
@@ -59,7 +68,7 @@
    //       this.skip()
    //     }
    //   })
-@@ -733,7 +733,7 @@ describe('app module', () => {
+@@ -780,7 +780,7 @@ describe('app module', () => {
  
    describe('app.badgeCount', () => {
      const platformIsNotSupported =
@@ -68,7 +77,7 @@
  
      const expectedBadgeCount = 42;
  
-@@ -780,7 +780,7 @@ describe('app module', () => {
+@@ -827,7 +827,7 @@ describe('app module', () => {
    });
  
    ifdescribe(
@@ -77,7 +86,7 @@
    )('app.get/setLoginItemSettings API', function () {
      const isMac = process.platform === 'darwin';
      const isWin = process.platform === 'win32';
-@@ -1207,7 +1207,7 @@ describe('app module', () => {
+@@ -1254,7 +1254,7 @@ describe('app module', () => {
      });
    });
  
@@ -86,7 +95,7 @@
      // These tests toggle a process-wide AXMode. Turn it back off so the rest of
      // the suite doesn't run with renderer accessibility enabled.
      afterEach(() => {
-@@ -1483,7 +1483,7 @@ describe('app module', () => {
+@@ -1536,7 +1536,7 @@ describe('app module', () => {
      });
    });
  
@@ -95,7 +104,7 @@
      let w: BrowserWindow;
  
      before(function () {
-@@ -1626,7 +1626,7 @@ describe('app module', () => {
+@@ -1679,7 +1679,7 @@ describe('app module', () => {
  
    describe('getApplicationNameForProtocol()', () => {
      // TODO: Linux CI doesn't have registered http & https handlers
@@ -104,7 +113,7 @@
        'returns application names for common protocols',
        function () {
          // We can't expect particular app names here, but these protocols should
-@@ -1643,7 +1643,7 @@ describe('app module', () => {
+@@ -1696,7 +1696,7 @@ describe('app module', () => {
        expect(app.getApplicationNameForProtocol('bogus-protocol://')).to.equal('');
      });
  
@@ -113,7 +122,7 @@
        const desktopFileId = 'mock-browser.desktop';
        const mockDisplayName = 'Mock Browser';
        const mockScheme = 'mockproto';
-@@ -1693,7 +1693,7 @@ describe('app module', () => {
+@@ -1746,7 +1746,7 @@ describe('app module', () => {
      let xdgBinDir: string;
  
      before(() => {
@@ -122,7 +131,7 @@
          return;
        }
  
-@@ -1710,7 +1710,7 @@ describe('app module', () => {
+@@ -1763,7 +1763,7 @@ describe('app module', () => {
      });
  
      after(() => {
@@ -131,7 +140,7 @@
          fs.rmSync(xdgDir, { recursive: true, force: true });
        }
      });
-@@ -1722,7 +1722,7 @@ describe('app module', () => {
+@@ -1775,7 +1775,7 @@ describe('app module', () => {
      });
  
      it('returns resolved promise with appPath, displayName and icon', async function () {
@@ -140,7 +149,7 @@
          const appInfo = await spawnProtocolInfoWithXdgMock(`${mockScheme}://`, xdgDataHome, xdgConfigHome);
          expect(appInfo.name).to.equal(mockDisplayName);
          expect(appInfo.path).to.equal('/usr/bin/true');
-@@ -1736,7 +1736,7 @@ describe('app module', () => {
+@@ -1789,7 +1789,7 @@ describe('app module', () => {
        expect(appInfo.icon).not.to.be.undefined();
      });
  
@@ -149,7 +158,7 @@
        const pathLookupExecutable = 'mock-browser';
        const pathLookupExecutablePath = path.join(xdgBinDir, pathLookupExecutable);
        const pathLookupDisplayName = 'Mock Browser PATH';
-@@ -1770,7 +1770,7 @@ describe('app module', () => {
+@@ -1823,7 +1823,7 @@ describe('app module', () => {
      });
    });
  
@@ -158,7 +167,7 @@
      const protocol = 'electron-test-linux';
      const desktopFileId = 'electron-test.desktop';
      const protocolMimeType = `x-scheme-handler/${protocol}`;
-@@ -1887,7 +1887,7 @@ describe('app module', () => {
+@@ -1940,7 +1940,7 @@ describe('app module', () => {
    });
  
    // FIXME Get these specs running on Linux CI
@@ -167,7 +176,7 @@
      const iconPath = path.join(import.meta.dirname, 'fixtures/assets/icon.ico');
      const sizes = {
        small: 16,
-@@ -1969,7 +1969,7 @@ describe('app module', () => {
+@@ -2022,7 +2022,7 @@ describe('app module', () => {
            expect(entry.memory).to.have.property('privateBytes').that.is.greaterThan(0);
          }
  
@@ -176,7 +185,7 @@
            expect(entry.sandboxed).to.be.a('boolean');
          }
  
-@@ -1986,7 +1986,7 @@ describe('app module', () => {
+@@ -2039,7 +2039,7 @@ describe('app module', () => {
      });
    });
  
@@ -185,7 +194,7 @@
      const fixture = path.join(fixturesPath, 'apps', 'gdk-backend');
      const run = async (env: NodeJS.ProcessEnv) => {
        const child = cp.spawn(process.execPath, [fixture], { env, stdio: ['ignore', 'pipe', 'ignore'] });
-@@ -2063,7 +2063,7 @@ describe('app module', () => {
+@@ -2116,7 +2116,7 @@ describe('app module', () => {
  
      it('succeeds with complete GPUInfo', async () => {
        const completeInfo = await getGPUInfo('complete');
@@ -194,7 +203,7 @@
          // For linux and macOS complete info is same as basic info
          await verifyBasicGPUInfo(completeInfo);
          const basicInfo = await getGPUInfo('basic');
-@@ -2087,7 +2087,7 @@ describe('app module', () => {
+@@ -2140,7 +2140,7 @@ describe('app module', () => {
      });
    });
  
diff --git a/devel/electron43/files/patch-electron_spec_api-browser-window.spec.ts b/devel/electron43/files/patch-electron_spec_api-browser-window.spec.ts
index e9f77cdca699..a3cce53481d7 100644
--- a/devel/electron43/files/patch-electron_spec_api-browser-window.spec.ts
+++ b/devel/electron43/files/patch-electron_spec_api-browser-window.spec.ts
@@ -1,4 +1,4 @@
---- electron/spec/api-browser-window.spec.ts.orig	2026-09-30 08:47:42 UTC
+--- electron/spec/api-browser-window.spec.ts.orig	2026-10-13 23:40:13 UTC
 +++ electron/spec/api-browser-window.spec.ts
 @@ -105,7 +105,7 @@ describe('BrowserWindow module', () => {
        }).not.to.throw();
@@ -99,7 +99,7 @@
          const maximize = once(w, 'maximize');
          w.show();
          w.maximize();
-@@ -3883,7 +3883,7 @@ describe('BrowserWindow module', () => {
+@@ -3876,7 +3876,7 @@ describe('BrowserWindow module', () => {
          expect(preMaxHeight).to.equal(size);
  
          // 'maximize' event is not emitted on Linux in CI.
@@ -108,7 +108,7 @@
            const maximize = once(w, 'maximize');
            w.show();
            w.maximize();
-@@ -5071,7 +5071,7 @@ describe('BrowserWindow module', () => {
+@@ -5064,7 +5064,7 @@ describe('BrowserWindow module', () => {
          expect(test.nodeTimers).to.equal(true);
          expect(test.nodeUrl).to.equal(true);
  
@@ -117,7 +117,7 @@
            expect(test.creationTime).to.be.null('creation time');
            expect(test.systemMemoryInfo).to.be.null('system memory info');
          } else {
-@@ -5587,7 +5587,7 @@ describe('BrowserWindow module', () => {
+@@ -5580,7 +5580,7 @@ describe('BrowserWindow module', () => {
      });
    });
  
@@ -126,7 +126,7 @@
      afterEach(closeAllWindows);
      it('emits an event when window is maximized', async () => {
        const w = new BrowserWindow({ show: false });
-@@ -5863,7 +5863,7 @@ describe('BrowserWindow module', () => {
+@@ -5856,7 +5856,7 @@ describe('BrowserWindow module', () => {
      // TODO(zcbenz):
      // This test does not run on Linux CI. See:
      // https://github.com/electron/electron/issues/28699
@@ -135,16 +135,16 @@
        'should bring a minimized maximized window back to maximized state',
        async () => {
          const w = new BrowserWindow({});
-@@ -5881,7 +5881,7 @@ describe('BrowserWindow module', () => {
+@@ -5874,7 +5874,7 @@ describe('BrowserWindow module', () => {
        }
      );
  
--    ifit(process.platform !== 'linux')('should not break fullscreen state', async () => {
-+    ifit(process.platform !== 'linux' && process.platform !== 'freebsd')('should not break fullscreen state', async () => {
+-    ifit(process.platform !== 'linux')('should not break fullscreen state', { tags: ['serial'] }, async () => {
++    ifit(process.platform !== 'linux' && process.platform !== 'freebsd')('should not break fullscreen state', { tags: ['serial'] }, async () => {
        const w = new BrowserWindow({ show: false });
        w.show();
  
-@@ -5904,7 +5904,7 @@ describe('BrowserWindow module', () => {
+@@ -5897,7 +5897,7 @@ describe('BrowserWindow module', () => {
    });
  
    // TODO(dsanders11): Enable once maximize event works on Linux again on CI
@@ -153,7 +153,7 @@
      afterEach(closeAllWindows);
      it('should show the window if it is not currently shown', async () => {
        const w = new BrowserWindow({ show: false });
-@@ -5941,7 +5941,7 @@ describe('BrowserWindow module', () => {
+@@ -5934,7 +5934,7 @@ describe('BrowserWindow module', () => {
  
      // TODO(dsanders11): Enable once minimize event works on Linux again.
      //                   See https://github.com/electron/electron/issues/28699
@@ -162,7 +162,7 @@
        const w = new BrowserWindow();
        const minimize = once(w, 'minimize');
        w.minimize();
-@@ -6456,7 +6456,7 @@ describe('BrowserWindow module', () => {
+@@ -6453,7 +6453,7 @@ describe('BrowserWindow module', () => {
        });
  
        // On Linux there is no "resizable" property of a window.
@@ -171,7 +171,7 @@
          const w = new BrowserWindow({ show: false });
          expect(w.resizable).to.be.true('resizable');
  
-@@ -6697,7 +6697,7 @@ describe('BrowserWindow module', () => {
+@@ -6694,7 +6694,7 @@ describe('BrowserWindow module', () => {
      });
    });
  
@@ -180,7 +180,7 @@
      // Not implemented on Linux.
      afterEach(closeAllWindows);
  
-@@ -8060,7 +8060,7 @@ describe('BrowserWindow module', () => {
+@@ -8061,7 +8061,7 @@ describe('BrowserWindow module', () => {
    describe('"transparent" option', { tags: ['serial'] }, () => {
      afterEach(closeAllWindows);
  
diff --git a/devel/electron43/files/patch-electron_spec_api-content-tracing.spec.ts b/devel/electron43/files/patch-electron_spec_api-content-tracing.spec.ts
index 4ed61e8279a1..c37894c08673 100644
--- a/devel/electron43/files/patch-electron_spec_api-content-tracing.spec.ts
+++ b/devel/electron43/files/patch-electron_spec_api-content-tracing.spec.ts
@@ -1,4 +1,4 @@
---- electron/spec/api-content-tracing.spec.ts.orig	2026-09-30 08:47:42 UTC
+--- electron/spec/api-content-tracing.spec.ts.orig	2026-10-13 23:40:13 UTC
 +++ electron/spec/api-content-tracing.spec.ts
 @@ -23,7 +23,7 @@ const fixturesPath = path.resolve(import.meta.dirname,
  const fixturesPath = path.resolve(import.meta.dirname, 'fixtures');
@@ -6,15 +6,15 @@
  // FIXME: The tests are skipped on linux arm/arm64
 -ifdescribe(!['arm', 'arm64'].includes(process.arch) || process.platform !== 'linux')('contentTracing', () => {
 +ifdescribe(!['arm', 'arm64'].includes(process.arch) || (process.platform !== 'linux' && process.platform !== 'freebsd'))('contentTracing', () => {
-   const record = async (
+   let pendingRecording: Promise<string> | undefined;
+   const record = (
      options: TraceConfig | TraceCategoriesAndOptions,
-     outputFilePath: string | undefined,
-@@ -114,7 +114,7 @@ ifdescribe(!['arm', 'arm64'].includes(process.arch) ||
+@@ -120,7 +120,7 @@ ifdescribe(!['arm', 'arm64'].includes(process.arch) ||
      });
    });
  
 -  ifdescribe(process.platform !== 'linux')('stopRecording', function () {
 +  ifdescribe(process.platform !== 'linux' && process.platform !== 'freebsd')('stopRecording', function () {
-     if (process.platform === 'win32' && process.arch === 'arm64') {
-       // WOA needs more time
-       this.timeout(10e3);
+     this.timeout(recordingTimeout);
+ 
+     // FIXME(samuelmaddock): this test regularly flakes
diff --git a/devel/electron43/files/patch-electron_spec_api-net-log.spec.ts b/devel/electron43/files/patch-electron_spec_api-net-log.spec.ts
index 658a77763f26..00e4eda1b3db 100644
--- a/devel/electron43/files/patch-electron_spec_api-net-log.spec.ts
+++ b/devel/electron43/files/patch-electron_spec_api-net-log.spec.ts
@@ -1,6 +1,6 @@
---- electron/spec/api-net-log.spec.ts.orig	2026-09-30 08:47:42 UTC
+--- electron/spec/api-net-log.spec.ts.orig	2026-10-13 23:40:13 UTC
 +++ electron/spec/api-net-log.spec.ts
-@@ -129,7 +129,7 @@ describe('netLog module', () => {
+@@ -133,7 +133,7 @@ describe('netLog module', () => {
      ).to.be.true('uuid present in dump');
    });
  
@@ -9,7 +9,7 @@
      'should begin and end logging automatically when --log-net-log is passed',
      async () => {
        const appProcess = ChildProcess.spawn(process.execPath, [appPath], {
-@@ -144,7 +144,7 @@ describe('netLog module', () => {
+@@ -148,7 +148,7 @@ describe('netLog module', () => {
      }
    );
  
@@ -18,7 +18,7 @@
      'should begin and end logging automatically when --log-net-log is passed, and behave correctly when .startLogging() and .stopLogging() is called',
      async () => {
        const appProcess = ChildProcess.spawn(process.execPath, [appPath], {
-@@ -162,7 +162,7 @@ describe('netLog module', () => {
+@@ -166,7 +166,7 @@ describe('netLog module', () => {
      }
    );
  
diff --git a/devel/electron43/files/patch-electron_spec_api-shell.spec.ts b/devel/electron43/files/patch-electron_spec_api-shell.spec.ts
index 9743c6bd8712..c071e6d121ac 100644
--- a/devel/electron43/files/patch-electron_spec_api-shell.spec.ts
+++ b/devel/electron43/files/patch-electron_spec_api-shell.spec.ts
@@ -1,6 +1,6 @@
---- electron/spec/api-shell.spec.ts.orig	2026-09-30 08:47:42 UTC
+--- electron/spec/api-shell.spec.ts.orig	2026-10-13 23:40:13 UTC
 +++ electron/spec/api-shell.spec.ts
-@@ -37,7 +37,7 @@ describe('shell module', () => {
+@@ -38,7 +38,7 @@ describe('shell module', () => {
  
      afterEach(async () => {
        // reset env vars to prevent side effects
@@ -9,7 +9,7 @@
          process.env.DE = envVars.de;
          process.env.BROWSER = envVars.browser;
          process.env.DISPLAY = envVars.display;
-@@ -54,6 +54,11 @@ describe('shell module', () => {
+@@ -55,6 +55,11 @@ describe('shell module', () => {
        let requestReceived: Promise<any>;
        if (process.platform === 'linux') {
          process.env.BROWSER = '/bin/true';
diff --git a/devel/electron43/files/patch-electron_spec_api-web-contents.spec.ts b/devel/electron43/files/patch-electron_spec_api-web-contents.spec.ts
index 05c29ebdfff8..a8f821fe47c1 100644
--- a/devel/electron43/files/patch-electron_spec_api-web-contents.spec.ts
+++ b/devel/electron43/files/patch-electron_spec_api-web-contents.spec.ts
@@ -1,15 +1,15 @@
---- electron/spec/api-web-contents.spec.ts.orig	2026-09-30 08:47:42 UTC
+--- electron/spec/api-web-contents.spec.ts.orig	2026-10-13 23:40:13 UTC
 +++ electron/spec/api-web-contents.spec.ts
-@@ -1643,7 +1643,7 @@ describe('webContents module', () => {
+@@ -1645,7 +1645,7 @@ describe('webContents module', () => {
      // back to OpenFolder() which does a blocking DirectoryExists() on the UI
      // thread (pre-existing behavior). Workspace-gating is covered by the test
      // above.
 -    ifit(process.platform !== 'linux')(
 +    ifit(process.platform !== 'linux' && process.platform !== 'freebsd')(
        'reveals paths under a registered workspace folder without executing them',
-       async () => {
-         const w = new BrowserWindow({ show: false });
-@@ -4301,7 +4301,7 @@ describe('webContents module', () => {
+       // Opens a real Finder/Explorer window, which takes focus and stays open.
+       { tags: ['serial'] },
+@@ -4309,7 +4309,7 @@ describe('webContents module', () => {
      });
  
      // TODO(codebytere): OOPIF printing is disabled on Linux at the moment due to crashes.
diff --git a/devel/electron43/files/patch-electron_spec_chromium.spec.ts b/devel/electron43/files/patch-electron_spec_chromium.spec.ts
index 135834c8fb01..0d225820c418 100644
--- a/devel/electron43/files/patch-electron_spec_chromium.spec.ts
+++ b/devel/electron43/files/patch-electron_spec_chromium.spec.ts
@@ -1,6 +1,6 @@
---- electron/spec/chromium.spec.ts.orig	2026-09-30 08:47:42 UTC
+--- electron/spec/chromium.spec.ts.orig	2026-10-13 23:40:13 UTC
 +++ electron/spec/chromium.spec.ts
-@@ -608,15 +608,15 @@ describe('command line switches', () => {
+@@ -618,15 +618,15 @@ describe('command line switches', () => {
        testLocale('asdfkl', `${currentLocale}|${currentSystemLocale}|${currentPreferredLanguages}`));
  
      const lcAll = String(process.env.LC_ALL);
@@ -20,7 +20,7 @@
        testLocale('', lcAll, true)
      );
    });
-@@ -4259,12 +4259,12 @@ describe('font fallback', () => {
+@@ -4256,12 +4256,12 @@ describe('font fallback', () => {
        expect(fonts[0].familyName).to.equal('Arial');
      } else if (process.platform === 'darwin') {
        expect(fonts[0].familyName).to.equal('Helvetica');
@@ -35,7 +35,7 @@
      'should fall back to Japanese font for sans-serif Japanese script',
      async function () {
        const html = `
-@@ -5010,7 +5010,7 @@ describe('paste execCommand', { tags: ['serial'] }, ()
+@@ -4996,7 +4996,7 @@ describe('paste execCommand', { tags: ['serial'] }, ()
    });
  });
  
diff --git a/devel/electron43/files/patch-electron_spec_crash.spec.ts b/devel/electron43/files/patch-electron_spec_crash.spec.ts
index eb6565cd96d6..8f69c7efc04f 100644
--- a/devel/electron43/files/patch-electron_spec_crash.spec.ts
+++ b/devel/electron43/files/patch-electron_spec_crash.spec.ts
@@ -1,6 +1,6 @@
---- electron/spec/crash.spec.ts.orig	2026-09-30 08:47:42 UTC
+--- electron/spec/crash.spec.ts.orig	2026-10-13 23:40:13 UTC
 +++ electron/spec/crash.spec.ts
-@@ -53,7 +53,7 @@ const shouldRunCase = (crashCase: string) => {
+@@ -54,7 +54,7 @@ const shouldRunCase = (crashCase: string) => {
        if (process.platform === 'win32') {
          return process.arch !== 'ia32';
        } else {
diff --git a/devel/electron43/files/patch-electron_spec_node.spec.ts b/devel/electron43/files/patch-electron_spec_node.spec.ts
index ef0cdf9bb587..fbaae238e8d0 100644
--- a/devel/electron43/files/patch-electron_spec_node.spec.ts
+++ b/devel/electron43/files/patch-electron_spec_node.spec.ts
@@ -1,6 +1,6 @@
---- electron/spec/node.spec.ts.orig	2026-09-30 08:47:42 UTC
+--- electron/spec/node.spec.ts.orig	2026-10-13 23:40:13 UTC
 +++ electron/spec/node.spec.ts
-@@ -221,7 +221,7 @@ describe('node feature', () => {
+@@ -223,7 +223,7 @@ describe('node feature', () => {
      });
  
      describe('child_process.exec', () => {