-
v0.3.0 — UI/Branding to OpenPXE Pre-Release
released this
2026-05-06 14:14:09 -04:00 | 50 commits to main since this releasev0.3.0 — UI/Branding OpenPXE
Full project rename to match openpxe.com. The product now reads as a polished open-source release rather than a personal-tool nickname. Placeholder retired; new mark is the rainbow-horizon medallion from site examples (animated SMIL gradient, no GIF, no JS).
Pull
docker pull gitea.milesward.dev/mward4/openpxe:0.3.0Naming changes
OpenPXE everywhere user-visible or developer-facing:
- 8 crate package names updated
- The bin crate dir + binary (
crates/openpxe,bin = "openpxe") - Env vars updated
- Tracing targets updated
- Prometheus metrics updated
- Container image path:
gitea.milesward.dev/mward4/openpxe - All in-tree paths:
/var/lib/openpxe/{isos,work,smb},/usr/share/openpxe/ipxe - Unraid template updated
Gated Deployment → Queued Deployment as the user-facing concept:
Settings::TimeoutAction::GatedDeployment→QueuedDeployment(with#[serde(alias = "gated_deployment")]so v0.2.0 settings.json files keep deserializing transparently)- Rust types:
Gate→QueueEntry,GateQueue→DeploymentQueue,gate.rs→queue.rs - HTTP routes:
/api/gate/*→/api/queue/*. JSON envelope key flipped from"gates"to"entries" - iPXE shortcut:
/boot/_gate.ipxe→/boot/_queue.ipxe. Top-level menu item idqueueinstead ofgate - WebUI sidebar tab: "Forge Gate" → "Queue"
Brand assets
logo.svgis a 24×24 medallion filled with therainbow-horizongradient from openpxe.com (sliding hue rotation via SMIL on the gradient stops, no JS).anvil-forge.svg→loader.svg, rebuilt as a 64×64 louder version of the same disc — used for page-load transitions and the imaging-progress widget. Adds a subtle scale pulse and a white inner-glow for depth.
The dashboard layout is unchanged — light/dark theme tokens and the sidebar/topbar carry over from v0.2.0. "Keeping the UI similar" was the brief.
Validation
cargo build --workspacecleancargo clippy --workspace --all-targetsno warningscargo test --workspace— 66 tests passing- Local smoke against the rebuilt release binary verifies:
/boot.ipxeemitsQueued Deployment+item queueand chains/boot/_queue.ipxe/api/queuereturns{count, entries}/metricsemitsopenpxe_queue_count(renamed frompxeforge_gate_count)/assets/logo.svgand/assets/loader.svgserve the new rainbow brand SVGs/api/statusreports version0.3.0
Image details
- Base:
debian:12-slim - Architecture:
linux/amd64 - Size: ~97 MB
- Digest:
sha256:c5fea580fb248d63f4d6c5bb9af229c2824673d5a1207f1c0e9d841c9fe40d36 - Runs as uid 10001 (entrypoint chowns bind mounts as root, then drops via
gosu) - Required cap:
NET_BIND_SERVICE - Optional cap:
SYS_ADMINfor NFS share mounting
For Unraid: pull
deploy/unraid/openpxe.xmland re-add the container under the new template. Move host appdata to/mnt/user/appdata/openpxe/.Downloads