Skip to content

feat(hack): scripts to drive the dev environment headless - #114

Merged
azenla merged 1 commit into
mainfrom
azenla/hack-dev-tools-workflows-cad913
Oct 4, 2026
Merged

azenla merged 1 commit into
mainfrom
azenla/hack-dev-tools-workflows-cad913

Conversation

@azenla

@azenla azenla commented Oct 4, 2026

Copy link
Copy Markdown
Member

Adds hack/dev/run/: start QEMU in the background without a window, take PNG screenshots, press keys, wait for serial output, and stop it. smoke.sh boots the graphical menu, moves the selection and waits for the Linux shell.

boot.sh gets opt-in QEMU_HEADLESS, QEMU_QMP, QEMU_SERIAL_FILE, QEMU_CONSOLE_FILE and QEMU_EXTRA_ARGS knobs, and only runs clear on a TTY. There is also a graphical dev config.

This makes scripted and agent-driven testing of the boot menu possible. I ran smoke.sh on aarch64 with hvf on macOS. x86_64 and Linux/KVM are untested. Screenshots need QEMU 7.1 or newer, and the scripts need python3 or socat.

Start QEMU in the background with a QMP socket and console logs, take
screenshots, press keys and wait for serial output, so the graphical boot
menu can be driven without a terminal or a window. boot.sh gets opt-in
knobs for this and behaves as before otherwise.
@azenla
azenla merged commit c6524b7 into main Oct 4, 2026
12 checks passed
@azenla
azenla deleted the azenla/hack-dev-tools-workflows-cad913 branch October 4, 2026 17:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant