For those who wouldn't like to work outside the CLI.
Install Chromium via brew:
$ brew install chromium
$ `which chromium`
Set an environemntal variable to prevent [npm/yarn/pnpm] install downloading Chromium automatically (I'd put .env into the repo so coworkers with Apple Silicon can $ source .env .)
export PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
export PUPPETEER_EXECUTABLE_PATH=`which chromium`
Although in some situations you need to patch Puppeteer since it has a hard-coded executable path to /usr/bin/chromium-browser, you can try an option of puppeteer.launch to overwrite it.
const browser = await puppeteer.launch({
    executablePath: process.env[‘PUPPETEER_EXECUTABLE_PATH’],
})
 

 
    
Top comments (1)
Thank you! Your post helped me with the problem I had.
brew install --cask chromium --no-quarantineis better to not have issues opening chromium and actually use it. Also some people might needPUPPETEER_EXPERIMENTAL_CHROMIUM_MAC_ARM=trueon their env file and during puppeteer installation.