v0.3.2
Custom relay servers
You can now run Nullgate through your own iroh relay server instead of the free public ones:
- Add relays (with an optional access token, sent as
Authorization: Bearer) from the new Relay servers page in the app — on the main screen, or from the "No network yet" page before you join. Headless:nullgate-cli relay add/remove/mode/show/clear. - Two policies: preferred (default) — your relays carry the traffic whenever one is reachable, and Nullgate quietly falls back to the public relays while they're all down, returning automatically when one recovers; or only — never touch the public relays.
- Direct (hole-punched) connections still always win; among relayed paths, your own relay is preferred over any other.
- Changes apply immediately — no service restart. Set the same relays (and tokens) on every device: a token-protected relay turns away devices that don't have the token.
- Diagnostics (and
nullgate-cli status) show when the public-relay fallback is active.
The app stopped eating clicks
The GUI used to rebuild its entire interface several times a second while peers were online, so clicks often landed on a button that was being destroyed and simply did nothing — and keyboard focus kept jumping around. This release fixes the whole chain:
- the background service only announces changes when something you can see actually changed (and batches bursts into a single update),
- the app now updates the existing widgets in place instead of rebuilding the page — member rows, the Diagnostics panel, and the Administration panel (Approve/Deny buttons no longer vanish under your cursor).
The app should feel dramatically more responsive with peers connected.
Notes
- The app↔service IPC protocol is now v4: update the app and the service together (the installers do this for you).
- macOS build will be attached shortly after the other platforms.