Start a local webserver. I like live-server or python -m http.server.
Download https://github.com/copy/v86 and run make all. The resulting files are build/v86.wasm and build/liv86.js.
From https://github.com/copy/v86/tree/master/bios.
- Download a https://buildroot.org release. I tested this with the 2022.11.2 release.
- Extract and change your path there.
- Run
make BR2_EXTERNAL=path/to/my-buildroot-config v86_defconfig. - Run
make. You'll find the result inoutput/images/rootfs.iso9660.
- Set
restoreState = falsein script.js. - Boot the VM, log in as root, maybe clear the screen.
- Save the state to a file using the button under the terminal.
- Run
zstd -19on the resulting file, and copy it to images/booted-state.bin.zst.
- https://github.com/copy/v86 (BSD-2-Clause)
- https://www.seabios.org (LGPLv3)
- https://buildroot.org (GPLv2+)
All files in the root directory of this project and in my-buildroot-config are released under the Blue Oak Model License 1.0.0 – a modern alternative to the MIT license. It's a a pleasant read! :)