#!/usr/bin/env bash set -euo pipefail ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" CIRCUITPY_MOUNT="${CIRCUITPY_MOUNT:-}" if [[ -z "$CIRCUITPY_MOUNT" ]]; then for candidate in \ "/media/$USER/CIRCUITPY" \ "/run/media/$USER/CIRCUITPY" \ "/media/$(id -un)/CIRCUITPY" \ "/Volumes/CIRCUITPY"; do if [[ -d "$candidate" ]]; then CIRCUITPY_MOUNT="$candidate" break fi done fi if [[ -z "$CIRCUITPY_MOUNT" || ! -d "$CIRCUITPY_MOUNT" ]]; then echo "CIRCUITPY mount not found. Set CIRCUITPY_MOUNT=/path/to/CIRCUITPY" >&2 exit 1 fi mkdir -p "$CIRCUITPY_MOUNT/lib" cp "$ROOT/circuitpython/code.py" "$CIRCUITPY_MOUNT/code.py" cp "$ROOT/circuitpython/lib/"*.py "$CIRCUITPY_MOUNT/lib/" cp "$ROOT/circuitpython/lib/"*.mpy "$CIRCUITPY_MOUNT/lib/" sync find "$CIRCUITPY_MOUNT" -maxdepth 2 -type f | sort