Files
saphid--frame-control/tests/frame-container/README.md
T
saphidandClaude Opus 5.5 aafd2dbda8 iPhone app: test pairing and power against a Holo Core stand-in
Valve publishes no Steam Frame OS image, so tests/frame-container builds the
Frame's SSH surface on Valve and Collabora's Holo Core aarch64 base: a
steamos user with a password and sudo, OpenSSH with keys and passwords,
Python, and a systemctl that only records requests.

Against it from the Simulator: password pairing, the host-key pin, the power
password check. Found and fixed: a changed host key or a refused login said
"Can't reach the Frame" and retried forever; they now say "Pair with the
Frame again" and offer that. The server's key rejection now says the header
may be wrong, not only missing.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-27 15:44:42 +10:00

1.1 KiB

A Frame stand-in for testing without the headset

Valve publishes no Steam Frame OS image. This builds the closest thing: Valve and Collabora's Holo Core aarch64 preview (the Arch Linux ARM64 base the Frame's SteamOS is built on) with the Frame's SSH surface: a steamos user with a password and sudo, OpenSSH taking keys and passwords, Python and rsync. systemctl only records what it's asked to do.

It exercises pairing with the password, the host-key pin, the server running on the "Frame" (FRAME_LOCAL=1) and the power password check. It has no SteamVR, Steam, battery, cameras or Lepton, so those panels are empty.

docker build --platform linux/arm64 -t frame-holo-test tests/frame-container
docker run -d --name frame-holo -p 127.0.0.1:2222:22 frame-holo-test
# password: frame-test-pw. In the iPhone app (Simulator), pair with 127.0.0.1:2222.
docker exec frame-holo cat /tmp/power-requests.log   # what power actions asked for

On a Mac without Docker: brew install colima && colima start --arch aarch64 --vm-type vz.