SORA Ledger App

How to use your Ledger hardware wallet with SORA network and Polkaswap.io ( Developer / Tester Version )

Valid Nodes
6 min readJan 12, 2022

Here I will show you how to get started using the SORA Ledger app.

The SORA Ledger application is compatible with both the Ledger Nano S and the Ledger Nano X devices. Ledger devices are hardware wallets that keep your secret secured on a physical device that does not expose it to your computer or the internet.

The SORA Ledger application allows you to manage SORA’s native tokens, (XOR, VAL, PSWAP, XSTUSD), and the myriad of wrapped tokens available on Polkaswap.io . It supports most of the transaction types of the network ,including batch transactions from the Utility pallet.

REQUIREMENTS

Here is a list of what you will need before starting:

  • A Ledger Nano S or a Ledger Nano X.
  • The latest firmware installed (at the time of writing this is 1.6.1 on the Nano S, and 1.2.4–4 on the Nano X).
  • Ledger Live is installed and at version 2.1 or newer (see settings -> about to find out if you’re up to date).
  • A Chromium-based web browser is installed that you can use to access Polkadot-JS Apps.

I. Download & Install the latest polkadot.js.org/extension release

First off you must have the polkadot.js.org browser extension version 0.42.4+ installed. It is important that the version is AT LEAST 0.42.4

You may obtain that by clicking on the link below:

Click on master-build.zip under “Assets” to download the file.

Download the latest extension

CHROME BROWSER

If your browser is Chrome then paste this into your address bar and press enter: chrome://extensions/

Turn on “Developer Mode by toggling the switch in the upper right hand corner.

Drag and drop the master-build.zip file that you previously downloaded onto Chrome browser. The Polkladot.js.org Extension Wallet should install.

BRAVE BROWSER

If your browser is Brave then paste this into your address bar and press enter: brave://extensions/

Turn on “Developer Mode” by toggling the switch in the upper right hand corner.

Drag and drop the master-build.zip file that you previously downloaded onto Brave browser. The Polkladot.js.org Extension Wallet should install.

The wallet extension is now installed and ready for use.

II. BUILD & DEPLOY THE LEDGER-SORA APP

In this section we will cover the steps required to build and deploy the SORA Ledger app. You will need to download the ledger-sora repository and build it, then finally sideload it onto your ledger.

DISCLAIMER: I have only tested this on Ubuntu, I do not know if this works on macOS or Windows.

We will need to clone the following repo:

git clone https://github.com/NoodleSploder/ledger-sora.git

Change directory into the created folder:

cd ./ledger-sora

Checkout the submodules:
git submodule update --init --recursive

Install Docker CE

Ledger only officially supports Ubuntu. Install the following packages

sudo apt update && apt-get -y install build-essential git wget cmake \
libssl-dev libgmp-dev autoconf libtool
Type your password and press Enter

Install node > v14.0. We typically recommend using n

You will need python 3 and then, in the ./ledger-sora folder, run:
make deps

Once those tasks have been completed and all dependencies stored we can now build the app by running the make command:

make

WARNING!

MAKE SURE YOUR WALLETS ARE SAFELY BACKED UP BEFORE CONTINUING…. PROCEED AT YOUR OWN RISK.

How to prepare your DEVELOPMENT! device:

Many of our integration tests expect the device to be configured with a known test mnemonic.

  1. Plug your device while pressing the right button
  2. Your device will show “Recovery” in the screen
  3. Click both Ledger buttons simultaneously
  4. Run make dev_init. This will take about 2 minutes. The device will be initialized to:
PIN: 5555
Mnemonic: equip will roof matter pink blind book anxiety banner elbow sun young

Add a development certificate:

  • Plug your device while pressing the right button
  • Your device will show “Recovery” in the screen
  • Click both buttons at the same time
  • Enter your pin if necessary
  • Run make dev_ca. The device will receive a development certificate to avoid constant manual confirmations.
  • On the Ledger click the left or right buttons until you get to “Allow unsafe manager”, then click both buttons
  • On the Ledger click the left or right buttons until you get to “Trust certificate”, then click both buttons

Loading into your development device

The Makefile will build the firmware in a docker container and leave the binary in the correct direct

make load          # Builds and loads the app to the device

III. Add your ledger address to the polkadot.js.org/extension wallet

Open Chrome and click on the “P” polkadot.js extension icon. ( you may need to click the puzzle piece icon first )

Click the “Plus Sign” to add an account

Click “Attach ledger account

Choose “SORA Network” from the Network drop-down:

Give your wallet a name and choose the Ledger address type & index, then click “Import Account”:

YOU’RE ALL SET AND READY TO GO!

--

--

Valid Nodes

Valid Nodes — running web3 infrastructure on day 1.