Skip to content
Latchkey

Electron Forge "No usable Squirrel" on Windows in CI

The Squirrel.Windows maker builds a Windows installer. On a Linux or macOS runner it needs mono and wine to run the Windows tooling; without them Forge reports it has no usable Squirrel and cannot make the win32 target.

What this error means

electron-forge make fails with "Cannot make for win32 and target squirrel: the maker declared that it cannot run on linux" or a "No usable Squirrel" error.

electron-forge
An unhandled rejection has occurred inside Forge:
Error: Cannot make for win32 and target squirrel: the maker declared
that it cannot run on linux

Common causes

Building the win32 squirrel target off Windows

maker-squirrel needs mono and wine to run on Linux/macOS; without them it declares it cannot run on the host.

Missing mono/wine on the runner

Even when cross-building is intended, the absence of mono or wine makes Squirrel unusable.

How to fix it

Build the Windows target on a Windows runner

Run the squirrel maker on windows-latest, where no mono/wine is needed.

.github/workflows/ci.yml
jobs:
  win:
    runs-on: windows-latest
    steps:
      - run: npx electron-forge make --platform win32

Install mono and wine for Linux cross-builds

If you must cross-build, provide mono and wine so Squirrel can run.

Terminal
sudo apt-get update
sudo apt-get install -y mono-devel wine64

How to prevent it

  • Build win32 squirrel targets on Windows runners.
  • Install mono and wine for Linux cross-builds only when needed.
  • Split per-OS make jobs so each runs where its tooling exists.

Frequently asked questions

What causes ""No usable Squirrel""?
maker-squirrel needs mono and wine to run on Linux/macOS; without them it declares it cannot run on the host.
How do I fix "No usable Squirrel"?
Run the squirrel maker on windows-latest, where no mono/wine is needed.

Related guides

References

Latchkey auto-heals failures like this one - detected, fixed, and retried without you. Start free → 30-day trial · No credit card