Skip to content

Prerequisites

Before the Quickstart, get these on your machine. The list is short and the same everywhere; only how you install them changes by OS.

Tool What it’s for
Rust (via rustup) Compiles the kernel and your app. The per-CPU toolchain (Espressif fork for ESP32, a stock target for RP2040) is added in step 1 of the Quickstart.
make + a POSIX shell (bash) Drives every build, flash and test. Native on Linux and macOS; on Windows it comes from MSYS2.
Python 3 Build helpers and the RP2040 on-target self-test harness. Standard library only — nothing to pip install.
git Clone the repository.

Plus the bits for the board you flash. Every board uses the same tools as the rest of its chip family, so this is grouped by family — the two below cover every supported board (see Supported boards for which board is which):

Chip family To flash Notes
ESP32 (Xtensa) espflash + a USB cable Installed with the toolchain (cargo install espup espflash). Flashes over USB serial.
RP2040 (Arm) a USB cable + elf2uf2-rs cargo install elf2uf2-rs. make flash builds a UF2 and copies it over USB — no debug probe needed. If the board already runs FlintOS with USB enabled it enters BOOTSEL on its own (a 1200bps touch); otherwise hold BOOTSEL while plugging in for the first flash.
Terminal window
# Debian/Ubuntu; use your distro's equivalent elsewhere
sudo apt install build-essential python3 git
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

build-essential brings make, a C toolchain and bash. For USB access without sudo, add yourself to the serial group (sudo usermod -aG dialout $USER, then re-login) and install probe-rs’s udev rules if you use a debug probe.

Terminal window
make --version
rustc --version
python --version # or python3 --version
git --version

Each should print a version. If make or python isn’t found on Windows, your PATH is missing MSYS2’s usr\bin or the Python install directory.