Breeze Core 3.0.5
GET /api/system — everything this deployment knows about itself
One endpoint that answers the question "what am I actually running?", added to back the Breeze app's new Nerd screen (tap the version in Settings seven times). It reports:
- Host — distro/OS pretty name, kernel, init system (systemd · OpenRC · runit · rc.d · launchd · Windows SCM · or pid 1's name in a container), CPU model, architecture, cores, byte order, libc, machine uptime
- Runtime — Python version and implementation, whether this is a frozen bundle, and the version of every dependency (
msmart-ng, fastapi, uvicorn, starlette, pydantic, …) - This deployment — build commit, process uptime, install date, time zone and UTC offset, pid and RSS, the paths and file modes of
config.json/devices.json/programs.json, and the effective settings - Units — each one's address, whether it has V3 credentials, whether a connection is cached, its history sample count, and its capabilities where they're already known
- Devices — every enrolled client with its auth version, enrolment date, last use and expiry
- This connection — the IP the server sees you as, whether that reads as private, the Host header, scheme, HTTP version,
X-Forwarded-Forand proxy state — which is the fastest way to diagnose a proxy that isn't forwarding the real client address
Requires the API key and a device credential — the same bar as controlling a unit. It contains no secrets: not the API key, not device public keys, not per-unit V3 token/keys (has_v3_credentials is a boolean), and a test greps the raw response to keep it that way. Every field can be null: each fact is probed defensively so an undeterminable one degrades instead of failing the request. Feature flag system_info; full reference in docs/API.md.
Also
- OpenBSD uptime — it reports
kern.boottimeas a bare epoch where FreeBSD/NetBSD/macOS print{ sec = … }. Found by running the probes on the actual VMs rather than assuming "the BSDs" agree. Verified on FreeBSD 15.1, NetBSD 11.0 and OpenBSD 7.9. - Packaging — when Docker Desktop silently fails to share a bind mount (the container starts,
/workis just empty), the packaging step now streams inputs and artifacts over stdio instead. build-installer.ps1is saved with a BOM so Windows PowerShell 5.1 can parse it.
Packages for deb · rpm · pacman · apk · tarballs (glibc/musl × amd64/arm64), FreeBSD .pkg, NetBSD .tgz, and the Windows installer are attached. musl/riscv64 follows shortly — it compiles every dependency from source under emulation. The signed repo at https://bolero.salataputarica.hr.eu.org is updated with the same build.