576d20136d54f9fd62eea0e0341a794bfd5918a8
On Ubuntu, losetup is in /sbin which may not be in PATH when running as root. Export PATH with /sbin included before checking for required commands.
tri-pi
tri-pi is a Raspberry Pi appliance wrapper for running a Triangles (TRI) full node over Tor.
It is a separate project from the Triangles source tree. The daemon itself lives in a sibling checkout such as ../triangles, while tri-pi owns:
- Pi provisioning
- Tor hidden service setup
- systemd units
- health/status APIs
- a lightweight local dashboard
- cross-build and QEMU-based test helpers
Repository Layout
tri-pi/
├── backend/ # Local API and status collector
├── build/ # Cross-build and QEMU helper scripts
├── config/ # triangles.conf and backend env templates
├── docs/ # Architecture and workflow notes
├── frontend/ # Local status dashboard
├── image/ # Pi image customization placeholders
├── services/ # systemd unit files
├── setup/ # Provisioning scripts run on the Pi
└── tor/ # torrc templates and Tor helper material
Relationship To triangles
tri-pi does not vendor or modify the daemon source by default. It expects a separate checkout:
e:/repos/
├── triangles/
└── tri-pi/
That keeps the concerns clean:
triangles: wallet/node source, native builds, protocol changestri-pi: appliance packaging, deployment, monitoring, Tor, Pi UX
Current Scope
This scaffold includes:
- a minimal Python backend that exposes node status
- a static dashboard that polls the backend
- Pi install/build script placeholders
- systemd unit templates
- Tor and daemon config templates
It does not yet include:
- a production-ready installer
- real RPC authentication management
- image generation
- CI workflows
- automatic wallet unlock
Quick Start
Run the local backend:
python backend/app.py
Then open:
http://127.0.0.1:8080/
By default the backend serves the frontend from frontend/ and reports placeholder node data until a real trianglesd RPC endpoint is configured.
Next Steps
- Wire
backend/app.pyto the real Triangles RPC surface. - Flesh out
setup/install.shfor Raspberry Pi OS Bookworm. - Add QEMU-based integration tests under
build/. - Add release packaging for prebuilt ARM artifacts.
Description
Languages
Shell
100%