Reticulum transport daemon (Rust) sidecar for rspace.online
  • Python 68%
  • Dockerfile 32%
Find a file
claude f01cc380d5 feat(rnsd-rs): add 3 verified-live public RNS uplinks (outbound, TASK-079)
beleth.net / qortal / jaykayenn :4242 — verified live from the Community Node
List. Outbound TCPClient only (no inbound port exposed → no scanner/CLOSE_WAIT
surface). Gives the hub global Reticulum reach beyond the local spark mesh.
2026-06-21 19:42:49 +02:00
tests Initial rnsd-rs sidecar service 2026-05-01 23:27:00 +00:00
upstream@6ba3a450f0 Initial rnsd-rs sidecar service 2026-05-01 23:27:00 +00:00
.gitignore Initial rnsd-rs sidecar service 2026-05-01 23:27:00 +00:00
.gitmodules Initial rnsd-rs sidecar service 2026-05-01 23:27:00 +00:00
config.toml feat(rnsd-rs): add 3 verified-live public RNS uplinks (outbound, TASK-079) 2026-06-21 19:42:49 +02:00
docker-compose.prod.yml Initial rnsd-rs sidecar service 2026-05-01 23:27:00 +00:00
docker-compose.smoketest.yml smoketest: pass RUST_LOG=trace for easier debugging 2026-05-02 00:46:27 +00:00
docker-compose.yml fix(rnsd-rs): autoheal=true label — auto-restart on unhealthy (TASK-079) 2026-06-21 18:14:30 +02:00
Dockerfile Build: enable thin LTO, strip symbols, panic=abort 2026-05-02 00:46:27 +00:00
README.md Initial rnsd-rs sidecar service 2026-05-01 23:27:00 +00:00

rnsd-rs

Reticulum transport daemon (Rust) — sidecar transport hub for rspace.online's mesh.

What this is

A separate container running lgh/Reticulum-rs (daemon-mode branch, vendored as upstream/ submodule) instead of carrying transport inside rmesh-reticulum's Python rnsd. Owns the public :4242 mesh socket and a local :4243 hub that Python containers peer with via TCPClientInterface.

Why: the Python rnsd was spending 20100% of a core on announce processing across five upstream peers; this daemon does the same workload at <4% CPU sustained (measurement from the FOSDEM 26 talk).

Architecture

                       internet
                          │
                       :4242
                          │
                  ┌───────┴───────┐
                  │   rnsd-rs     │
                  │   container   │
                  └───┬───────┬───┘
                      │ :4243 │
                      │       │
            (rmesh-internal docker network)
                      │       │
              ┌───────┴───┐ ┌─┴────────────┐
              │ rmesh-    │ │ (future      │
              │ reticulum │ │  rApps)      │
              │ (lxmd +   │ │              │
              │  bridge)  │ │              │
              └───────────┘ └──────────────┘

rmesh-reticulum's Python config becomes a single TCPClientInterface → rnsd-rs:4243, with enable_transport = False. Identity for the bridge stays in /data/reticulum/storage/rmesh_identity — unchanged.

Upstream

  • Source: codeberg.org/lgh/Reticulum-rs@daemon-mode
  • License: MIT (binary), LICENSE
  • Pinned via git submodule. Bump with git submodule update --remote upstream.