Files
reterminal-dm4/chromium-setup/emmc-provisioning
..

reTerminal DM4 eMMC provisioning

Automatically deploy or backup the CM4 eMMC when the reTerminal is connected in USB boot mode or when it boots over the network. Uses cloud-init for first-boot configuration.


Project layout

emmc-provisioning/
├── README.md                 ← You are here
├── docs/                     Documentation
│   ├── EMMC-PROVISIONING-GUIDE.md   Full setup and usage
│   ├── PROXMOX-LXC-DEPLOYMENT.md    Proxmox LXC + host setup
│   └── PORTAL_STYLING_GUIDE.md      Dashboard UI styling reference
├── host/                     Scripts that run on the provisioning host (Proxmox host)
│   ├── flash-emmc-on-connect.sh     rpiboot + wait for Backup/Deploy choice, then dd
│   ├── cm4-flash-trigger.sh         Called by udev; starts the flash job
│   └── 90-cm4-boot-mode.rules       udev rule (USB vendor 2b8e)
├── scripts/                  Deployment and one-off scripts
│   ├── deploy-to-proxmox.sh         Deploy to Proxmox host + LXC 201
│   └── install-usbboot-on-host.sh   Build and install rpiboot on the host
├── dashboard/                Flask web UI (runs in LXC or standalone)
│   ├── app.py
│   ├── templates/
│   ├── cm4-dashboard.service
│   └── README.md
├── cloud-init/               Example NoCloud files for the golden image
│   ├── user-data
│   ├── meta-data
│   └── network-config
└── network-client/           For network-booted devices
    ├── provisioning-client.sh      Register + poll, then Deploy or Backup
    └── README.md

Quick start

  1. Read docs/EMMC-PROVISIONING-GUIDE.md for setup and usage.
  2. Proxmox: Use scripts/deploy-to-proxmox.sh to deploy to a Proxmox host; see docs/PROXMOX-LXC-DEPLOYMENT.md.
  3. Manual host: Copy scripts from host/ to the host and install the udev rule (see the guide).
  4. Put golden.img in /var/lib/cm4-provisioning/ (or your configured path). When a device is detected (USB or network), the dashboard asks Backup or Deploy.