Repository navigation
v0.3.0
Dragonfly v0.3.0
A massive release bringing UEFI support, VMware compatibility, full DHCP mode, windowed TFTP, and working Docker deployment.
Highlights
- UEFI PXE boot support — Dragonfly now boots machines in both BIOS and UEFI mode. EFI machines get a GRUB shim that chainloads Spark, fully automatic
- Full DHCP mode — Dragonfly can now act as a standalone DHCP server with lease management, static reservations, and per-network configuration
- VMware bare metal support — Spark now includes VMware PVSCSI and SVGA II drivers for booting on VMware/ESXi hardware
- Working Docker deployment — Fixed Dockerfile, added docker-compose.yml with host networking, templates and static assets baked into the image
- Windowed TFTP transfers — RFC 7440 implementation for dramatically faster PXE boot file delivery
New Features
UEFI Boot Support
- EFI iPXE support: serves native x86_64 ELF for EFI, elf32 for BIOS automatically
- GRUB EFI shim (
grub-spark.efi) bundles Spark for EFI PXE multiboot - UEFI HTTP Boot support as an alternative boot path
- EFI GOP video modules in GRUB shim for graphical Spark UI on EFI
Full DHCP Mode
- Complete standalone DHCP server with lease management and static reservations
- Per-network DHCP mode configuration (selective/flexible/full)
- DHCP mode moved from global settings to per-network for fine-grained control
- PXE Option 43 vendor extensions for VMware PXE compatibility
VMware Support (Spark)
- VMware PVSCSI disk controller driver for bare metal boot on VMware hardware
- VMware SVGA II framebuffer driver for graphical Spark UI on VMware
- PCI bus scan caching for faster boot on hardware with many PCI devices
Networking
- RFC 7440 windowed TFTP transfers for faster PXE boot
- TFTP OACK correctly echoes only client-requested options (RFC 2347)
- Zero-length TFTP termination block for files that are exact multiples of block size
- Server-side resolution of GitHub/GitLab SSH keys for RHEL/Rocky compatibility
Docker
- Fixed Dockerfile entrypoint (
servenotserver) DRAGONFLY_INSTALLEDenv var honored for containerized deploymentsdocker-compose.ymlwith host networking (required for DHCP/TFTP broadcast)- OS templates and static assets baked into the Docker image
Bug Fixes
- Fixed VBE BIOS calls crashing on UEFI-only Multiboot2 boot
- Fixed SVGA II version ID constant (0x900002 was wrong, now 0x90000002)
- Fixed SVGA II I/O port register spacing (byte offsets, not dword-spaced)
- Rocky Linux and Proxmox added to template download fallback list
- PXE boot options always included in Full DHCP mode responses
Release Artifacts
| Artifact | Description |
|---|---|
dragonfly-linux-amd64 |
Server binary (x86_64 Linux) |
dragonfly-linux-arm64 |
Server binary (aarch64 Linux) |
dragonfly-macos-arm64 |
Server binary (Apple Silicon) |
dragonfly-agent-linux-amd64 |
Mage agent (x86_64, static musl) |
dragonfly-agent-linux-arm64 |
Mage agent (aarch64, static musl) |
spark.elf |
Spark bootloader (BIOS multiboot2) |
spark-efi.elf |
Spark bootloader (EFI multiboot2) |
grub-spark.efi |
GRUB EFI shim with embedded Spark |
Docker
docker pull ghcr.io/riffcc/dragonfly:latestFull Changelog: v0.2.3...v0.3.0