Skip to main content

Arch Cloud Init

@evrardjp/arch-cloud-initv2026.07.17.1· 10d agoMODELS
01README

Convenience Arch Linux VM image preparer for Swamp: downloads the Arch cloud image, creates a qcow2 overlay, and writes a NoCloud seed ISO.

02Release Notes

2026.07.17.1

Fixed: Artifact creation is atomic and concurrency-safe; invalid existing qcow2 and ISO files are rejected.

Fixed: Cloud-init values are YAML-safe and networking matches predictable libvirt interface names.

Added: Configurable pacman mirrors and network interface matching.

Changed: Preparation now validates directories, SSH keys, qcow2 backing metadata, disk size, and ISO structure before durable changes.

Upgrade note: Existing configurations use the new en* interface default. Set networkInterfaceMatch explicitly for other guest interface names and remove an existing seed ISO to regenerate it.

03Models1
@evrardjp/arch-cloud-initv2026.07.17.1arch_cloud_init.ts

Global Arguments

ArgumentTypeDescription
vmNamestringVM name — used as prefix for disk and ISO filenames
hostnamestringcloud-init local-hostname
ipAddressstringStatic IP address with prefix length (e.g. 192.0.2.12/24)
gatewaystringDefault gateway IP
nameserverstringDNS nameserver IP
networkInterfaceMatchstringcloud-init interface-name glob; defaults to common predictable libvirt names
sshUserstringNon-root user to create via cloud-init
sshPubKeyPathstringPath to SSH public key for the created user
diskSizeGbnumberOverlay disk size in GiB
imagesDirstringDirectory where VM images are stored
baseImagePathstringPath for the shared Arch Linux base image
baseImageUrlstringURL for downloading the Arch Linux cloud image
extraRuncmdarrayAdditional cloud-init runcmd entries appended after enabling sshd
pacmanMirrorsarrayOrdered Arch Linux pacman mirrors written to /etc/pacman.d/mirrorlist during cloud-init
fileAclUser?stringOptional user to grant rw ACLs on generated image files, e.g. qemu
fn prepare()
Download base Arch image if absent, create qcow2 overlay, and write cloud-init NoCloud seed ISO to disk

Resources

prep(infinite)— Result of the image preparation (disk and ISO paths, what was created)

Files

log(text/plain)— Preparation log
04Previous Versions1
2026.05.21.1
05Stats
A
100 / 100
Downloads
2
Archive size
18.9 KB
  • Has README or module doc2/2earned
  • README has a code example1/1earned
  • README is substantive1/1earned
  • Most symbols documented1/1earned
  • No slow types (deprecated)1/1earned
  • Dependencies pass trust audit2/2earned
  • Has description1/1earned
  • Platform support declared (or universal)2/2earned
  • License declared1/1earned
  • Verified public repository2/2earned
06Platforms
07Labels