Krystie bdd28aa33d feat: add automatic blockchain bootstrap
Add blockchain bootstrap support to dramatically speed up initial sync:

New files:
- setup/bootstrap.sh: Downloads and extracts blockchain snapshot
  from http://194.233.88.206/triangles-bootstrap.tar.gz (~1.3GB)
- docs/BOOTSTRAP.md: Complete documentation on bootstrap process,
  time savings, security, and troubleshooting
- build/test-bootstrap.sh: Bootstrap functionality tests

Installer changes (setup/install.sh):
- Automatically downloads bootstrap before starting trianglesd
- Skips bootstrap if already applied (.bootstrapped marker)
- Allows opt-out with BOOTSTRAP=no environment variable
- Reports bootstrap status in installation summary

Benefits:
- Reduces initial sync from 2-5 days to 1-6 hours
- Downloads 1.3GB instead of syncing 3GB over days
- Still validates all blocks from bootstrap point forward
- Safe: maintains full consensus rules

Bootstrap server updated weekly (Sundays 4 AM) with fresh snapshots.
2026-03-28 18:27:41 -07:00
2026-03-28 16:23:04 -07:00
2026-03-28 16:23:04 -07:00
2026-03-28 16:23:04 -07:00
2026-03-28 16:23:04 -07:00
2026-03-28 16:23:04 -07:00
2026-03-28 16:23:04 -07:00

tri-pi

tri-pi is a Raspberry Pi appliance for running a Triangles (TRI) relay node over Tor.

Each Pi acts as a full network node, strengthening the Triangles network by:

  • Relaying transactions across the network
  • Relaying blocks to help other nodes sync
  • Accepting incoming connections via Tor hidden service
  • Operating entirely over Tor for privacy and decentralization

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 changes
  • tri-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

  1. Wire backend/app.py to the real Triangles RPC surface.
  2. Flesh out setup/install.sh for Raspberry Pi OS Bookworm.
  3. Add QEMU-based integration tests under build/.
  4. Add release packaging for prebuilt ARM artifacts.
S
Description
Try Pie - TRI cryptocurrency Python utilities and tools
Readme 16 MiB
Languages
Shell 100%