Aspic

Downloads and signed package repositories for the Breeze projects — self-hosted, LAN-first control for Midea air conditioners — and for whatever else lands here later. One host, one project per section.

What this host is: static files and nothing else. No database, no upload path, nothing executable, and no signing key — packages are built and signed on a workstation and pushed here as a timestamped release, so a compromise of this box can serve you a stale file but cannot forge a package your package manager will accept.
What is on it today: this page. The first package repository arrives with Breeze Core Native 4.0.0; until then each section below points at where that project actually lives.
Aspic is where new work goes; bolero keeps what it has. The Python Breeze Core line is being sunset — 3.2.0 is where it stops. Its repositories on bolero stay up and anything installed from them keeps working; nothing needs to be moved today. The native rewrite that replaces it will be published here instead.

Breeze Core Native 4.0.0 · not published yet

The same server, rewritten in Rust and cross-linked with Zig — a drop-in replacement for the Python line above it

Same REST API, same web panel, same config.json: it is meant to be installed over a 3.x deployment rather than migrated to. Every endpoint the Python server has — all thirty — was checked against 3.2.0 running side by side, and 23 of the 24 comparable responses came back byte-identical.

It also fixes something that never worked in the Python line: automatic pairing finds units. Broadcast discovery came back empty because a unicast reply to a broadcast query matches no connection-tracking entry and gets dropped on the way in, so this sweeps the local subnet directly as well.

package527 KB as an rpm, 488 KB as a deb — against 25.1 MB for the same thing in Python
binary2.5 MB with TLS and cloud pairing, 1.3 MB without
runtimenone: no interpreter to ship, no garbage collector to wait for
reachthe architectures the Python bundle could only reach through hours of emulation, including routers with 8 MB of flash
There is nothing to download here yet — this section grows an install snippet when 4.0.0 ships. Run 3.x from bolero until it does.

Breeze for Android on bolero

Native Android client (Flutter) for a Breeze Core server, with Material You theming — .apk

Talks to either server: the API contract it depends on is the same one the native rewrite reproduces. Available from GitHub releases or bolero/android, and it moves here when the server it pairs with does.

Not on any app store: it is sideloaded, and it asks for nothing but the network.

Breeze Core 3.x sunset

The Python server — apt · dnf · zypper · pacman · apk · opkg · pkg · pkgin, all on bolero

Everything published for the Python line stays exactly where it is: the repositories, the source tarballs, the Windows installer, the BSD and OpenWrt feeds, and the frozen proof-of-concept builds. Installing and updating from bolero works today and is not being switched off underneath anyone.

What sunset means here is narrower than it sounds: 3.2.0 is the last feature release, and new work happens in the native rewrite instead. The repository and its wiki — installing, pairing, the REST API, exposing it safely — stay up, and remain the documentation for the API that both servers speak.

About this host

aspic.salataputarica.hr.eu.org — a small server on a domestic connection, so be kind to it
servesstatic files over HTTPS, GET and HEAD only; every other method is refused
holdsno key, no account, no database — verification happens on your machine, against keys published alongside whatever they sign
deploysas a timestamped release with an atomically swapped current symlink, so a push is never half-visible and rolling back is one symlink
logsrequest lines, for rate limiting and for spotting scanners. Nothing else is collected, and there is nothing here to collect it with
indexingasked off, site-wide. Links are how anyone gets here