Get ebl
Linux and Windows are both supported natively. Pick your platform:
System requirements
Building an Android app locally means running the same Gradle/Kotlin/Android SDK toolchain Android Studio does — these aren't hard limits ebl enforces, just realistic guidance so your first build isn't a slow, swap-thrashing surprise.
- RAM
- 16 GB+ recommended
- A cold build compiles native code for 4 CPU architectures plus the Kotlin/JS toolchain — genuinely heavy. Less can still work, but on Windows specifically, Docker Desktop's WSL2 VM running out of memory crashes its own Engine API outright rather than just slowing down; the installer sizes its memory/swap limits automatically from your actual RAM to reduce that.
- CPU
- 4+ cores recommended
- Gradle and Kotlin annotation processing both parallelize across cores — more cores means a noticeably faster compile phase.
- Disk space
- ~40 GB free
- Covers the runner image (~6.8 GB), Gradle/npm caches that grow over a few builds, and — on Windows — WSL2's swap file headroom. Reclaim all of it any time with ebl clean --all.
- OS & Docker
- Linux, or Windows 10/11
- Docker Engine on Linux, or Docker Desktop on Windows — either way, it needs to be installed and running before you start. On Windows, ebl.exe itself talks to Docker Desktop directly and needs no WSL2 distro of its own, but Docker Desktop's own default backend is a WSL2 VM, which is what actually runs your builds.
APT repository (recommended)
A real, GPG-signed APT repo — once added, sudo apt upgrade picks up new releases automatically.
curl -fsSL https://41vi4p.github.io/expo-builder-local/apt/pubkey.gpg | sudo gpg --dearmor -o /usr/share/keyrings/ebl-archive-keyring.gpg
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/ebl-archive-keyring.gpg] https://41vi4p.github.io/expo-builder-local/apt stable main" | sudo tee /etc/apt/sources.list.d/ebl.list
sudo apt update && sudo apt install eblOne-line installer
Adds the APT repo for you where possible, otherwise falls back to a direct .deb download.
curl -fsSL https://raw.githubusercontent.com/41vi4p/expo-builder-local/main/install.sh | shDirect .deb download
Grab ebl_*_amd64.deb from GitHub Releases, then:
sudo apt install ./ebl_*_amd64.debAfter installing
ebl setup # checks/installs Docker, pulls the runner image
cd /path/to/your/expo/app
ebl build . # signed APK in ./ebl_builds/No ebl config/ebl start required for a first build — see the Docs for the web GUI and every option.
Uninstall
Run ebl clean --all first
None of the steps below touch Docker — the runner/orchestrator/web images, the Gradle/npm cache volumes, and any leftover build containers all stay on disk after ebl itself is gone. ebl clean --all(needs Docker Desktop/Docker still running) removes all of that safely in one step; afterward you'd have to find and remove it by hand with raw docker commands instead.
If installed via the APT repo or a `.deb`:
sudo apt remove ebl
# and, if you added it: sudo rm /etc/apt/sources.list.d/ebl.listThis removes the ebl binary only — your projects, ebl_builds/ artifacts, and ~/.config/ebl/ (saved tokens/settings) are untouched. Remove that config directory yourself for a completely clean slate:
rm -rf ~/.config/ebl