Feature Request: CLI build for iOS Simulator without CoronaBuilder

Hi Solar2D community,

I ran into a hard blocker today that I believe affects many
developers, especially those using automated or server-based
workflows.

The Problem

Building for iOS Simulator requires CoronaBuilder — but the
binary is NOT included in the community DMG.

Even after automating the full GUI flow (File → Build → iOS →
select device → Build), Solar2D immediately returns:

“Unable to find Corona Builder.”

This happens even with:
✓ Valid Apple Developer certificate installed
✓ Xcode 26.2 present
✓ iPhone 17 Pro Max simulator booted and ready

Everything else IS already shipped inside Solar2D.app:

  • iostemplate/iphonesimulator_26.2.tar.bz ✓
  • libtemplate.a ✓
  • build.lua + Builder.lua ✓
  • BuilderPluginDownloader.lua ✓
  • xcodesim_sendapp.sh ✓

The CoronaBuilder SOURCE is also fully present in the GitHub
repo at tools/CoronaBuilder/ — including main.mm,
BuilderPluginDownloader.lua, Rtt_AppPackagerAppleFactory.mm
and the full Lua build toolchain.

The only missing piece is the compiled CoronaBuilder binary.

Why This Matters Beyond Just Builds

CoronaBuilder does two critical things:

  1. Compiles and packages the iOS app
  2. Downloads and links third-party plugins
    (AdMob, IronSource, SpiralCodeStudio, etc.)

Without it, CLI and headless workflows cannot resolve plugins
at all — making the entire native plugin ecosystem inaccessible
outside the GUI, even for Simulator-only targets that don’t
require App Store signing.

Request

Ship the compiled CoronaBuilder binary inside the Solar2D.app
bundle or alongside the DMG — at minimum for iOS Simulator
targets. This would unlock:

  • Headless/automated builds on Mac minis and servers
  • CI/CD pipelines for Solar2D projects
  • AI-assisted development workflows
  • Plugin resolution without opening the GUI

Is this intentionally locked to enterprise, or is it simply
a packaging oversight? Would love to hear from the team.

Thanks for keeping Solar2D open source — it’s a great engine
and this one missing piece is the only thing blocking a fully
automated workflow.

1 Like