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.”

← Back to README