Build matrix
./build_all.sh runs all five; ./build_target.sh <target> runs one
mp-unix
MicroPython unix / standard. ./build_mp.sh --port unix --variant standard
mp-windows
MicroPython windows / standard. ./build_mp.sh --port windows --variant standard
cp-unix
CircuitPython unix / coverage, via lv_circuitpython_mod/build_cp.sh.
cpy-unix
CPython on WSL/Linux. Editable install via lv_cpython_mod/.venv.
cpy-windows
CPython on Windows, via pip.exe / python.exe (no venv). Never concurrent with cpy-unix.
Quick start
git clone https://github.com/PyDevices/cmods.git
cd cmods
git clone https://github.com/micropython/micropython.git micropython
cd micropython && git submodule update --init --recursive && cd ..
# Optional -- only needed for LVGL
git clone https://github.com/PyDevices/lv_micropython_cmod.git lv_micropython_cmod
git clone https://github.com/PyDevices/lv_bindings.git lv_bindings
cd lv_bindings && git submodule update --init lvgl && cd ..
./lv_bindings/regenerate_lvmp.sh
./build_mp.sh --port unix --variant standard
Sibling modules
Clone any of these as siblings insidecmods/
- lv_micropython_cmod — LVGL MicroPython glue
- lv_circuitpython_mod — LVGL CircuitPython glue
- lv_cpython_mod — native CPython
import lvgl - lv_bindings — the LVGL binding generator
- displayif — native display bus/framebuffer modules
- graphics — native FrameBuffer/Area module
- usdl2 — native SDL2 subset for desktop