ghost - Setup instructions

ghost signs transactions coordinated by gate.

It will thus typically be run on a device physically carried by the user.

Requirements

The device should not to be reachable on the Internet and ideally connect exclusively to gate instances.

In the current state of development, a good place to run ghost are mobile Linux devices or Termux on Android.

Preparation

As root:

  1. Make sure both git and openssh are installed on your system

  2. [skip unless on Alpine Linux] Also add util-linux-login to get a compatible su-command

     # Since we're at it, let's satisfy all dependencies at once:
     apk add bat coreutils-fmt curl git jq monero netcat-openbsd \
             openssh procps-ng util-linux-login util-linux-misc
    

  3. Create a dedicated user "ghost"

     # Depending on your Linux flavor, one of these commands may work:
     useradd -c 'noshore signer' -m ghost
     # or
     adduser -Dg 'noshore signer' ghost
    

Installation

As the newly created user (switch with su -Pl ghost):

  1. Get ghost by cloning NoShore:

     git clone --branch v0.1.1 \
         https://gitlab.com/fullmetalScience/noshore.git ~/xmr.zone/noshore
    

  2. Run and re-run setup until you have taken care of all suggested configuration:

     ~/xmr.zone/noshore/ghost/manage.sh setup
    

Setup creates a shorthand command ghost. If ~/.local/bin is in your $PATH, you may use that instead of the long form ~/xmr.zone/noshore/ghost/manage.sh.

You may want to install gate next.