OpenRiot v7.9.40 — The Clone Wars
“They said you can’t clone a live OpenBSD system with a single click. They said you need dump levels and tape drives and a manual the size of a phone book. They said the Turing Police require a form. We said: rsync, doas, installboot. Five files in the Migrate TUI. ‘System Dump’ died so ‘Full Backup’ could live. The construct now replicates itself like a digital organism — mount a drive, click a button, and the machine writes its own twin. The Feds are still filling out paperwork.” — The OpenRiot Crew, somewhere in the Sprawl, v7.9.40
Release Overview
One feature, done right. The Migrate TUI’s “System Dump” option —
which ran dump(8) / restore(8) for incremental filesystem-level
backups — is dead. Replaced by “Full Backup”: a one-click rsync clone
to /mnt/backup that produces a bootable twin of your running system.
It checks the mount. It checks the space. It confirms with you. Then
it runs rsync across every filesystem under /, creates the
skeleton directories the kernel needs as mount points, and installs
boot blocks via installboot. The target drive boots. Every time.
The clone is incremental by design — rsync --delete only transfers
what changed. The first run populates everything. Subsequent runs take
seconds. You don’t need to know what a dump level is. You don’t need
to remember restore commands. You plug in a drive, mount it at
/mnt/backup, click “Full Backup,” and the machine writes its own
survival drive.
💾 System Dump → Full Backup
Five files changed. One new file. The old dump(8) code still lives
in the repo if you need block-level incremental backups for tape
libraries and time capsules. For everyone else, the workflow is:
- Mount an external drive at
/mnt/backup - Open
openriot --backup - Select “💾 Full Backup”
- Confirm
- Coffee
clone.go handles everything: mount detection, disk space summation
across all filesystems under /, rsync -aH --delete with proper
--exclude flags for virtual filesystems, skeleton directory creation
for /dev, /tmp, /mnt, and friends, and installboot -r for
bootability. Progress streams live in the TUI. Cancel works. Errors
are reported.
The Turing Police would make you fill out an asset transfer request before you’re allowed to back up your own machine. We just piped rsync through doas and called it a day. Sovereign computing doesn’t ask permission.
🔧 Small Polishes
The release notes for v7.9.39 got re-read and re-checked for the login.conf criticality language. No code changed — just the kind of editorial ruthlessness that keeps the Sprawl’s documentation honest. The Feds never say “CRITICAL” when something bricks a login. We do.
🧾 Files Changed
| File | Change |
|---|---|
source/migrate/clone.go |
NEW — async rsync clone |
| with mount check, space check, | |
| rsync, skeleton dirs, installboot | |
source/migrate/screens/menus.go |
“System Dump” → “Full Backup”; |
| FullBackupChoices replaces | |
| DumpMenuChoices | |
source/migrate/model.go |
full_backup operation wired into |
| confirm/progress/cancel flows | |
source/migrate/ui.go |
Full Backup rendering with clone |
| progress output | |
source/migrate/handlers/main_menu.go |
FullBackupChoices reference |
🗣️ Final Words
“The machine that can’t clone itself is a machine that dies with its secrets. The construct now reproduces. You mount a drive, you click a button, and the entire system — every file, every config, every scar on the disk — writes itself onto new silicon. The clone boots. The clone remembers. The clone is you, minus the Feds. Somewhere in the Sprawl, a ThinkPad is writing its own twin, and the only thing faster than the rsync is the Turing Police’s inability to understand how sovereign computing makes them obsolete.” — The OpenRiot Crew, after the first bootable clone, v7.9.40