OpenRiot v7.0 — Console Cowboys
“The sky above the port was the color of television, tuned to a dead channel. The street finds its own uses for things.” — William Gibson, if he had a ThinkPad
Release Overview
v7.0 hits on two fronts: a completely refreshed visual identity and a scorched-earth audit of the installer image.
Eighteen new lock screen wallpapers. Eighteen new desktop
backgrounds. The stealth lock screen variants (*s.png)
are gone — stealth mode now uses the standard wallpapers.
This is what your lock screen looks like when someone
actually thought about it.
On the installer side, we stripped install.site down to its bones, stopped touching user directories, fixed the games prompt that was consenting on your behalf, and finally made pkg_add actually fail when it fails — instead of printing “Package install complete” over a smoking crater.
install.site now does exactly three things: configure doas,
set installurl, install packages. No more writing to
.profile. No more /etc/skel/.profile. No more enabling
services. No more adding fish to /etc/shells. setup.sh
handles all of that. The installer is not your mother.
The games prompt was silently defaulting to Yes because
setup.sh pipes openriot --install to tee, turning
os.Stdin into a pipe that returns EOF immediately. Empty
string + input == "" == true. We now read from /dev/tty
like civilized console cowboys. Same fix for the burn prompt.
Package installation was finishing in one second because
the glob *.tgz with no files expands literally to *.tgz,
pkg_add barfs instantly, and the old script swallowed the
error. fail() didn’t actually exit — it printed “FAIL”
and kept going. Fixed. pkg_add -D unsigned now handles
offline packages without signature blocks from drift.
The MOTD ships a proper welcome pointing new users to
setup.sh instead of leaving them at a blank prompt.
🧾 Files Changed
| File | Nature of Change |
|---|---|
Locked/01-16.png |
18 new lock screen wallpapers (full refresh) |
Locked/*s.png |
Stealth lock screen variants removed |
backgrounds/01-18.png |
18 new desktop backgrounds (full refresh) |
source/imaging/site.go |
install.site stripped to 3 jobs |
source/imaging/site.go |
fail() now exits; empty glob check |
source/imaging/site.go |
pkg_add -D unsigned; HTTP installurl |
source/imaging/site.go |
Removed .profile + skel modifications |
source/imaging/site.go |
Removed service + fish /etc/shells code |
source/installer/games.go |
/dev/tty prompt; fix stdin pipe bug |
source/imaging/burn.go |
/dev/tty prompt; fix stdin pipe bug |
install/motd-install |
New welcome MOTD with setup instructions |
Makefile |
Clean uses doas rm -rf for root artifacts |
README.md |
Simplified “Installing OpenRiot” section |
source/imaging/site_test.go |
Verify no .profile or skel touches |
🗣️ Final Words
“They told me I couldn’t spray-paint the install script. So I stenciled it instead.” — Banksy, probably
v7.0 is Banksy with a root shell. New walls, no lies. The lock screen looks like someone actually designed it. The install.site tells the truth. The games prompt asks before it answers. The packages install, or the install stops — no phantom completes, no silent consent, no rewriting profiles nobody asked for.
Mr. Robot would have caught this in code review. We caught it in production. Won’t happen again.
— The OpenRiot Crew
“We are finally contemporary. And this time we mean it.”