Ride the Lightning
Time: 15 minutes
The Lightning Network CLI is kinda fun, but not very practical. That's why we're installing Ride The Lightning (RTL). A user-unfriendly front end for LND.
Note that this section is dependent on the NodeJS installation. You cannot proceed if you do not have NodeJS installed on the Raspberry Pi.
Installation
First, it's time to fetch the source code from RTL.
git clone https://github.com/Ride-The-Lightning/RTLDive into the code.
cd RTLGrab the latest version/tag/release.
git checkout v0.14.1Now install RTL. Note that this may take about 10 minutes.
npm install --only=prodConfiguration
RTL also needs to be configured. Create the configuration file (still in the /home/ubuntu/RTL folder).
nano RTL-Config.jsonPaste this into it.
{ "multiPass": "password", "port": "3000", "defaultNodeIndex": 1, "SSO": { "rtlSSO": 0, "rtlCookiePath": "", "logoutRedirectLink": "" }, "nodes": [ { "index": 1, "lnNode": "YOUR_ALIAS", "lnImplementation": "LND", "Authentication": { "macaroonPath": "/home/ubuntu/.lnd/data/chain/bitcoin/mainnet", "configPath": "/home/ubuntu/.lnd/lnd.conf" }, "Settings": { "userPersona": "OPERATOR", "themeMode": "NIGHT", "themeColor": "TEAL", "bitcoindConfigPath": "/home/ubuntu/.bitcoin/bitcoin.conf", "enableLogging": true, "fiatConversion": false, "lnServerUrl": "https://127.0.0.1:8080" } } ]}At YOUR_ALIAS, enter the alias of your Lightning node. Save it with Ctrl + X and confirm with Y.
Firewall
Open port 3000.
sudo ufw allow 3000 comment "Port for Ride the Lightning"Should you wish to use RTL from outside your network, you must throw open port 3000 on your router and forward traffic to your Pi.
Automation
sudo nano /etc/systemd/system/rtl.servicePaste this.
[Unit]Description=Ride The Lightning DaemonRequires=lnd.serviceAfter=lnd.service[Service]User=ubuntuExecStart=/usr/bin/node /home/ubuntu/RTL/rtl.jsRestart=alwaysTimeoutSec=120RestartSec=30[Install]WantedBy=multi-user.targetSave it again with Ctrl + X and confirm with Y.
The system should be notified of the new service and can then be started.
sudo systemctl enable rtlsudo systemctl start rtlIf you want to see if everything started up properly, run this:
systemctl status rtlIf you want an overview of the status over multiple session, use this:
sudo journalctl -f -u rtlUse
Using your favorite browser, go to the ip address of your Pi:3000. In my case, it is 192.168.1.6:3000. The RTL interface will appear and ask for a password. The default password is "password". After the first login, you may set your own password. If LND has just been started, RTL will also ask for that password (the lncli unlock password).
Updating
Go to the application directory.
cd ~/RTLUpdate the repository with the latest changes via Git.
git fetch --allShow the latest version/tag/release.
git describe --tags `git rev-list --tags --max-count=1`Retrieve the changes from the latest release.
git checkout -f <OUTPUT FROM PREVIOUS STEP> # for example v0.14.1Install the software.
npm install --only=prodRestart the RTL service.
sudo systemctl restart rtlRTL is now updated!