From 66c22b1fc506128e18174556fb3e86b27ba6c01b Mon Sep 17 00:00:00 2001 From: Tim van der Meij Date: Sun, 14 Jun 2026 16:26:18 +0200 Subject: [PATCH] Configure Puppeteer to not download Chrome headless shell Nowadays Chrome has a built-in (new) headless mode in the regular binary, but before that time there was an old headless mode that was essentially a separate binary [1]. We don't use the latter, but it turns out that Puppeteer downloads it automatically if it's not explicitly skipped, which is wasteful because it costs extra time and resources for each `npm install` invocation. This commit therefore skips downloading Chrome headless shell explictly, which results in the local runtime of `npm install` going from 10.125 seconds to 8.998 seconds (which can't hurt in e.g. GitHub Actions). [1] https://developer.chrome.com/blog/chrome-headless-shell. --- .puppeteerrc.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.puppeteerrc.json b/.puppeteerrc.json index 4457c47d7..d45a2f2fd 100644 --- a/.puppeteerrc.json +++ b/.puppeteerrc.json @@ -2,6 +2,9 @@ "chrome": { "skipDownload": false }, + "chrome-headless-shell": { + "skipDownload": true + }, "firefox": { "skipDownload": false, "version": "nightly"