Bumps Crosstalk to v2.3.2 and updates release docs to use version-matched tagging examples instead of a one-time first-release note. Also updates desktop distribution docs to clearly explain first-run macOS and Windows prompts for unsigned binaries, and adjusts macOS build config for unsigned packaging by disabling hardened runtime and setting identity to "-".
Bump Crosstalk to 2.3.1 and update packaging metadata, artifact names, and runtime requirements. Add a draft GitHub release workflow plus release notes, and refresh container/build configs and docs for the new release process.
Introduce a durable SQLite-backed path cache for the Iridium IMT interface so configured destination paths can be captured and restored after restart without enabling Reticulum transport. Add parsing and validation for `persistent_destinations`, support `persistent_path_max_age` expiry, restore logic in the worker loop, and capture logic after inbound packet injection. Update Raspberry Pi/docs example config with the new settings and safety notes, and add unit tests for cache behavior, destination parsing, and persistent path capture/restore lifecycle.
Adds comprehensive Raspberry Pi guidance for using a USB RockBLOCK 9704 with native Reticulum-over-IMT transport, updates the sample systemd service paths/user defaults for a Pi deployment, and notes Iridium support in the README. Also adds unit coverage for Iridium MT receive handling to ensure valid frames are injected and invalid frames are still acknowledged, and updates modal prompt input styling for improved dark-theme readability.
Introduce a native Reticulum `IridiumIMTInterface` for USB RockBLOCK 9704 devices, including IMT packet framing, a durable SQLite outbound queue, modem polling/retry handling, and runtime stats (signal bars and queued packets). Crosstalk now installs bundled external Reticulum interfaces into the active config directory and includes the new interface module in packaged builds.
Expose Iridium IMT configuration in the interface creation/edit UI, add Iridium-specific display/status details in interface cards, and add a new `/api/v1/announce/lxmf` route to announce only the LXMF identity on metered links. Also add example service/config docs and unit tests for codec and durable queue behavior.
Rename Reticulum MeshChat to Crosstalk across the codebase and packaging. Renamed meshchat.py to crosstalk.py and updated Dockerfile, docker-compose, GitHub Actions, README, docs and electron assets to use Crosstalk, new storage/reticulum config paths (~/.crosstalk/.reticulum), and GHCR tags/labels. Add logic to seed a default RMAP World TCP client interface and a config flag, shorten interface/transport responses to remove forced restart messages, and update database proxy comment. Electron: set app name, implement an internal prompt (replacing electron-prompt), expose restart-backend IPC, change backend executable naming/launching (startBackend/start/stop handling), and adjust portable storage behavior. Misc: remove donate.md, add example image and egg-info files, and apply multiple frontend/component and static asset updates to match rebrand and UX improvements.
Use the `latest` tag which is always moved with the latest build. The `master` tag used for the initial build is a fallback because it wasn't a tag. In the future when a release is created the image will share the release version (and `latest`).