Skip to content
Latchkey

Neutralino "neu build" binaries not downloaded in CI

Neutralino keeps its platform binaries out of the repo; neu update downloads them based on neutralino.config.json. Without that step, neu build has no binaries to package and fails in CI.

What this error means

neu build fails or produces nothing because the bin/ binaries are absent, or it reports it cannot find the Neutralino binaries for the target platform.

neutralinojs
Unable to find Neutralino binaries. Run `neu update` to download
the binaries before building.
Error: ENOENT: no such file or directory, scandir 'bin'

Common causes

neu update was never run

A fresh checkout has no bin/ binaries; neu build needs them, but the download step neu update was skipped.

The binaries were gitignored and not restored

bin/ is excluded from version control, so a clean CI clone starts without it and nothing restores it.

How to fix it

Run neu update before neu build

  1. Install the Neutralino CLI.
  2. Run neu update to download the binaries listed in the config.
  3. Then run neu build.
Terminal
npm install -g @neutralinojs/neu
neu update
neu build --release

Cache the downloaded binaries

Persist bin/ across runs so the download is not repeated on every job.

.github/workflows/ci.yml
- uses: actions/cache@v4
  with:
    path: bin
    key: neu-bin-${{ hashFiles('neutralino.config.json') }}

How to prevent it

  • Always run neu update before neu build in CI.
  • Cache the bin/ directory keyed on the config.
  • Pin the Neutralino CLI version for reproducible downloads.

Related guides

Tired of flaky CI? Latchkey auto-heals failed jobs and retries them for you. Start free →