macOS (Apple Silicon)
On Apple Silicon (M1/M2/M3…), the recommended way to run Speculos is the Docker
image. The official image is multi-arch, so it runs natively on arm64 — you
no longer need to edit the Dockerfile or pick a special -aarch64 builder.
Prefer a native install?
pip install speculosalso works on Apple Silicon; see the Quickstart. Use Docker if you hit dependency issues.
Pull the image
docker pull ghcr.io/ledgerhq/speculos:latest
docker image tag ghcr.io/ledgerhq/speculos:latest speculos
Run an app
Mount your apps folder and publish the API port; then open the web UI at http://127.0.0.1:5000:
docker run --rm -it \
-v "$(pwd)"/apps:/speculos/apps \
-p 5000:5000 \
speculos --display headless --api-port 5000 apps/boil.elf
The app folder (
$(pwd)/apps/) is mounted with-v.
Using VNC instead of the web UI
docker run --rm -it \
-v "$(pwd)"/apps:/speculos/apps \
-p 41000:41000 \
speculos --display headless --vnc-port 41000 apps/boil.elf
macOS Screen Sharing requires a password: add
--vnc-password <pwd>.
Build the image from source (optional)
Only needed if you are modifying Speculos itself. The build is the same on all architectures:
docker build ./ -t speculos
More
All
speculos.pyarguments can be passed on the Docker command line; see the general Docker page fordocker-compose, debugging and the full argument list.Troubleshooting covers common Docker/macOS issues.