Pelote - drive a SliTaz machine from an Android phone
=====================================================

No SSH, no open port: the machine and the phone both connect out to a
relay that only forwards Noise encrypted messages. See doc/SPEC.md for
the design and doc/PROTOCOL.md for the wire format.

Layout:

  lib/      protocol code shared by the daemon and the relay
  relay/    the relay (pelote-relay)
  daemon/   the daemon and the pelote CLI
  actions/  actions shipped by default
  tests/    unit and integration tests (make check)
  doc/      specification and protocol

Build dependencies: cjson-dev, noise-c-dev, libsodium-dev, openssl-dev,
qrencode-dev. Run time: cjson, libsodium, openssl, qrencode.

  make
  make check
  make check-sanitize    # undefined behaviour and heap checks, see doc/SECURITY.md

Against dependencies unpacked in a directory instead of installed:

  make SYSROOT=/path/to/fs check

Trying it without the phone:

  make tests/fakeapp
  pelote-relay -l 127.0.0.1:8484 &              # or a real relay
  pelote relay ws://127.0.0.1:8484/relay
  /etc/init.d/pelote start
  pelote pair                                   # copy the pelote:// line
  tests/fakeapp pair phone.state 'pelote://pair?...' "My phone"
  tests/fakeapp list phone.state
  tests/fakeapp run phone.state disk-usage
  tests/fakeapp monitor phone.state

phone.state holds the fake device's private key: keep it private.
