30 lines
843 B
Bash
Executable File
30 lines
843 B
Bash
Executable File
#!/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
|