Files
sysadmin-chronicles/docs/RUNTIME_DEPENDENCIES.md
T
44r0n7 0265afa054 chore: bootstrap lean sysadmin-chronicles repo
Import the runnable game code, content, docs, scripts, and repo guidance while leaving local agent state, dependency installs, build output, and backup copies out of the published tree.
2026-05-02 11:49:07 -04:00

3.6 KiB

Runtime Dependencies

This file tracks host and guest dependency expectations for Sysadmin Chronicles. Keep it updated when provisioning scripts, VM display backends, or installer requirements change.

Host Packages

Capability Arch package / command Minimum tested version Notes
Godot runtime godot 4.6.2 Used for the current Godot client path.
Libvirt CLI libvirt / virsh 12.2.0 Use qemu:///system for game VMs. Socket activation is supported.
QEMU system emulator qemu-system-x86 / qemu-system-x86_64 11.0.0 Must match the split QEMU module package versions.
QEMU disk tools qemu-img 11.0.0 Used by VM builders for qcow2 images.
QXL display module qemu-hw-display-qxl 11.0.0 Required for virt-install --video qxl.
Virtio GPU modules qemu-hw-display-virtio-gpu, qemu-hw-display-virtio-gpu-pci, qemu-hw-display-virtio-vga 11.0.0 Required for the default SPICE + virtio workstation display path.
SPICE UI module qemu-ui-spice-core 11.0.0 Required for SPICE graphics in libvirt domain capabilities.
SPICE channel module qemu-chardev-spice 11.0.0 Required for SPICE agent channels.
SPICE audio module qemu-audio-spice 11.0.0 Required for SPICE-backed guest audio.
VM installer virt-install 5.1.0 Creates imported cloud-image domains.
SPICE viewer remote-viewer / virt-viewer 11.0 Used for desktop workstation display.
Cloud image tools cloud-image-utils, cdrtools, libisoburn cloud-image-utils 0.33, cdrtools 3.02a09, libisoburn 1.5.8 Used to generate seed ISOs.
SSH client ssh OpenSSH 10.3p1 Used by the game and setup scripts to reach guests.
Node.js node 22.22.2 Required by the redesigned browser HUD/server path.

Libvirt Resources

Resource Required shape Notes
Network sc-internal, bridge sc-br0, subnet 10.42.0.0/24, NAT forwarding NAT is required during VM image provisioning so Debian cloud-init can install packages. The network remains private to libvirt guests for inbound access.
Storage pool sc-images For qemu:///system, defaults to /var/lib/libvirt/images/sysadmin-chronicles.
SSH key ~/.ssh/sc_host_key Injected into guests for game automation and bridge access.

Workstation Guest Packages

The workstation image currently targets Debian 12 Bookworm and installs:

  • Desktop/display: xfce4, xfce4-goodies, lightdm, lightdm-gtk-greeter, spice-vdagent, qemu-guest-agent, accountsservice, linux-image-amd64
  • Desktop metadata: gvfs, gvfs-daemons, libglib2.0-bin for trusted desktop launchers and GVFS metadata writes
  • User tools: tilix, chromium, thunar, geany, meld, vim, nano, tmux, htop
  • Sysadmin tools: openssh-server, openssh-client, sudo, curl, wget, rsync, git, jq, python3, nmap, netcat-openbsd, dnsutils, traceroute, mtr, tcpdump, strace, lsof, openssl, whois, iperf3, logwatch
  • Fonts/completion: fonts-hack, fonts-firacode, bash-completion

Version Capture

Before cutting an installer or release, capture current versions with:

tools/setup/check-host.sh
virsh --connect qemu:///system version
qemu-system-x86_64 --version
virt-install --version
pacman -Q libvirt qemu-system-x86 qemu-hw-display-qxl qemu-hw-display-virtio-gpu qemu-hw-display-virtio-gpu-pci qemu-hw-display-virtio-vga qemu-ui-spice-core qemu-chardev-spice qemu-audio-spice virt-install virt-viewer spice-gtk cloud-image-utils cdrtools libisoburn