aboutsummaryrefslogtreecommitdiff

title: AutoQEMU - automate installation and SSH setup of ISO OS images

date: 2021-02-07

updated_at: 2022-03-06

layout: post

lang: en

ref: autoqemu-automate-installation-and-ssh-setup-of-iso-os-images

video: true


After reading begriffs "Tips for stable and portable software", the "Begriffs Buildfarm?" section caught my attention, as this is something I would be interested in.

After emailing the author, a public thread began on the subject.

As we discussed how it could be done, I decided to experiment with the idea of automating the setup of virtual environments with QEMU.

This screencast is a simple demo of automating the installation of Alpine Linux 3.12.3 standard x86_64 with AutoQEMU[^AutoQEMU], which is nothing more than POSIX sh, expect scripts and Makefiles glued together.

[^AutoQEMU]: The solution was a little too brittle to scale, and some distributions proved to be particularly problematic. I've archived my progress if you're interested in what I've done, and maybe wish to continue.

As of this writing, I just worked on it for 2~3 days, so everything is still pretty ad-hoc.

The commands from the screencast were[^script-command]:

[^script-command]: Only now, writing again what I ran on the screencast I thought that I should have tried something like script. Maybe next time (thanks klaatu for the tip!).

pushd `mktemp -d`
git clone https://euandre.org/git/autoqemu .
make
make install PREFIX=$HOME/.local
autoqemu ssh alpine

It assumes that $HOME/.local/bin is in $PATH.