A simple guide to Lightning Network on Litecoin

Loshan
Loshan
Sep 1, 2017 · 3 min read

This guide is intended for Debian/Ubuntu users. And has been tested to work correctly on a fresh install of Ubuntu 17.04. If you are unfamiliar with terminal command formatting, please remove the $ sign before copy & pasting the commands into terminal.

Preliminary

Click on the Software & Updates app. Inside of the application, check “community maintained free and open-source software (universe)”. Open Terminal form the search bar.

First update your system:

$ sudo apt upgrade
$ sudo apt update

Install dependencies

  1. Install git:
$ apt install git

2. Install golang-go which is required to build ltcd and lnd:

$ apt install golang-go

3. Install npm & nodejs through the Node Version Manager (nvm):

But first you need to install nvm through the install script:

$ curl -o https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash$ source ~/.bashrc$ export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"

Now you can install nodejs v8.4.0!

$ nvm install v8.4.0
$ nvm alias default 8.4.0

Last thing left to do is to setup your dev environment.

$ export GOPATH=~/projects/lightning
$ export PATH=$PATH:$GOPATH/bin
$ source ~/.bashrc

Installing ltcd

$ go get -u github.com/Masterminds/glide$ git clone https://github.com/ltcsuite/ltcd $GOPATH/src/github.com/ltcsuite/ltcd$ cd $GOPATH/src/github.com/ltcsuite/ltcd
$ glide install
$ go install . ./cmd/...

As simple as copying the above!

Installing lnd

$ git clone https://github.com/lightningnetwork/lnd $GOPATH/src/github.com/lightningnetwork/lnd$ cd $GOPATH/src/github.com/lightningnetwork/lnd
$ glide install
$ go install . ./cmd/...

Let’s now test lnd:

$ go install; go test -v -p 1 $(go list ./... | grep -v '/vendor/')

Setting up ltcd

$ touch ~/.ltcd/ltcd.conf

Now edit the ltcd.conf file by:

$ nano ~/.ltcd/ltcd.conf

Then insert and match the following:

rpcuser=username
rpcpass=password

Make sure to change username and password to random characters. And write this information down somewhere. To save, ctrl+o and then ctrl+x .

Start syncing ltcd

ltcd now needs to sync with the Litecoin Blockchain. This process will likely take a few hours. And requires minimum space of 9GB.

$ ltcd --txindex --testnet --rpcuser=username --rpcpass=password

Make sure to change username and password to the characters that you previously wrote down in the above step.

Keep this process running in a terminal window. The next few steps require ltcd to be up to date. Please now create a new terminal window shift+ctrl+n or switch to a new terminal tab shift+ctrl+t .

Installing Zap

$ git clone https://github.com/LN-Zap/zap-desktop.git
$ mkdir ~/.lnd
$ cd ~/.lnd

Now generate certificates required for Zap:

$ openssl ecparam -genkey -name prime256v1 -out tls.key$ openssl req -new -sha256 -key tls.key -out csr.csr -subj '/CN=localhost/O=lnd'$ openssl req -x509 -sha256 -days 3650 -key tls.key -in csr.csr -out tls.cert$ rm csr.csr

You know need to remember the result of the following command — this lists the directory in which the cert files you just created exists within.

$ pwd

Once you’ve created the node.js compatible certificate, paste the path to your cert in app/lnd/config/index.js :

$ nano app/lnd/config/index.js

You’ve now opened index.js in the text editor nano. Modify index.js to match the following:

// Cert will be located depending on your machine
// Mac OS X: /Users/user/Library/Application Support/Lnd/tls.cert
// Linux: ~/.lnd/tls.cert
// Windows: TODO find out where cert is located for windows machine
export default {
lightningRpc: `${__dirname}/rpc.proto`,
lightningHost: 'localhost:10009',
cert: '/path/to/directory/tls.cert'
}

Replace /path/to/directory with the result of the pwd command which your previously entered. It might look like this:/home/loshan/.lnd/tls.cert . To save your changes, press ctrl+o then ENTER/RETURN and then ctrl+x .

Finally install zap-desktop!

$ cd zap-desktop
$ yarn

$ ./node_modules/.bin/electron-rebuild

Setting up lnd

$ touch ~/.lnd/lnd.conf

Now edit the lnd.conf file by:

$ nano ~/.lnd/lnd.conf

Then insert using and match the following:

[Application Options]
debuglevel = debug
externalip = MY_IP
no-macaroons = true
[Litecoin]
litecoin.active = 1

Replace MY_IP with your external IP address — which you can find by Googling what’s my ip address. To save, ctrl+o and then ctrl+x .

Starting up lnd

$ lnd --litecoin.active --debuglevel=debug --bitcoin.rpcuser=losh11 --bitcoin.rpcpass=password --bitcoin.testnet --externalip=MY_IP

Make sure to replace MY_IP with your external IP address, which you found previously.

Running Zap

If everything went well, from a new terminal window, we can then navigate to the zap directory:

$ cd ~/zap-desktop

And finally run Zap!

$ npm run dev

Thank you to Charlie Lee, Jack Mallers & Franklyn for testing and producing the instructions above. Special thanks to the numerous persons in IRC freenode #litecoin-dev for helping with reviewing and testing.

On a final note, Zap is still not ready for public release. And you can help Zap get deployed by contributing to the development effort at: https://github.com/LN-Zap/zap-desktop.

Litecoin Foundation

The Litecoin Foundation is a non-profit organization with…

Thanks to Félix-Antoine Paradis

Loshan

Written by

Loshan

I do stuff.

Litecoin Foundation

The Litecoin Foundation is a non-profit organization with a mission to advance Litecoin for the good of society by developing and promoting state-of-the-art blockchain technologies.

Loshan

Written by

Loshan

I do stuff.

Litecoin Foundation

The Litecoin Foundation is a non-profit organization with a mission to advance Litecoin for the good of society by developing and promoting state-of-the-art blockchain technologies.

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch

Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore

Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store