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.