What problem does it solve?
Reproducing gcc-specific or DragonFly-specific ponyc bugs is hard because DragonFly only builds ponyc with gcc, and the VM setup is timing-sensitive and error-prone. This Skill walks through the exact known-good sequence to stand up a local DragonFly BSD VM that matches ponyc's tier-3 CI job, without needing GitHub Actions or sudo.
Core Features & Use Cases
- Prerequisite verification: Checks for QEMU, KVM/HVF hardware acceleration, bsdtar, rsync, ssh, and image converters before starting, and stops with a clear report if anything is missing.
- Sudo-free VM provisioning: Downloads the DragonFly image and ISO, builds qcow2 disks, extracts system headers with bsdtar instead of a privileged loop mount, and boots a daemonized QEMU VM with ssh forwarding.
- CI-matching build environment: Reuses the repo's
.ci-scripts/bsd/dfly_configure_vm.py console automation, installs gcc13 and dependencies, rsyncs the ponyc checkout in, and runs the detached LLVM libs build plus cmake/ctest with the same flags as tier-3 CI.
- Use Case: A contributor hits a ponyc test failure that only appears on the DragonFly CI job. They use this Skill to create a local VM, rsync their fix branch in, and iterate on the gcc13 build until the failure is resolved.
Quick Start
Ask the assistant to set up a local DragonFly BSD VM for building and testing ponyc with gcc, starting from the prerequisite check.