doc: small improvements to the quicktry document

This commit is contained in:
Antoine Poinsot 2022-12-07 10:48:43 +01:00
parent 40eb605aea
commit 8c9ce67aa4
No known key found for this signature in database
GPG Key ID: E13FC145CD3F4304

View File

@ -1,6 +1,6 @@
## Quickly try out Liana
# Quickly try out Liana
*Just give me the TL;DR!*
> *Just give me the TL;DR!*
This document is a short set of instructions for trying out Liana on signet. It does not attempt to
give any nuance, details or describe alternative configurations.
@ -10,38 +10,51 @@ This guide mostly assumes you are running a 64-bit Linux.
TODO: adapt the guide to Windows and MacOS.
### Step 0: dependencies
## Step 0: preparation
We'll use basic tools such as:
- `curl`
### System dependencies
Here is a list of the system dependencies: the tools and libraries you need to have installed on
your system to follow the guide.
We'll use basic tools which should already be present on your system, such as:
- `shasum`
- `tar`
To run the simulator you will need:
To run the Specter signing device simulator you will need:
- `git` (On Debian/Ubuntu `apt install gpg`)
- SDL2. See
[here](https://github.com/cryptoadvance/specter-diy/blob/6a6983e15e4d3c8c03937f8bee040de350ce722f/docs/build.md#prerequisities-simulator)
for the instructions depending on your system. (On Debian/Ubuntu `apt install libsdl2-dev`)
- [SDL2](https://wiki.libsdl.org/SDL2/FrontPage) (On Debian/Ubuntu `apt install libsdl2-dev`)
To verify the downloads you will need:
- `shasum`
To download and verify binaries you will also need:
- `curl` (On Debian/Ubuntu `apt install curl`)
- `gpg` (On Debian/Ubuntu `apt install gpg`)
To run the GUI you will need some libraries:
- `fontconfig` (On Debian/Ubuntu `apt install libfontconfig1-dev`)
To run the GUI you will need some additional libraries:
- [`fontconfig`](https://www.freedesktop.org/wiki/Software/fontconfig/) (On Debian/Ubuntu `apt install libfontconfig1-dev`)
- [`pkg-config`](https://www.freedesktop.org/wiki/Software/pkg-config/) (On Debian/Ubuntu `apt install pkg-config`)
- [Libudev](https://www.freedesktop.org/software/systemd/man/libudev.html) (On Debian/Ubuntu `apt install libudev-dev`)
### Throwaway folder
### Step 1: setup `bitcoind`
You can follow the guide from any folder of your choice. We recommend using a dedicated folder you
can wipe easily:
```
mkdir liana_quicktry
cd liana_quicktry
```
## Step 1: setup `bitcoind`
Liana needs `bitcoind` to communicate with the Bitcoin network. Minimum supported version is 24.0.
#### Download
### Download
TODO: update to 24.0.1 when it's released.
Download the `bitcoind` binary from [the official website of the Bitcoin Core
project](https://bitcoincore.org/bin/bitcoin-core-24.0/) according to your platform.
project](https://bitcoincore.org/bin/bitcoin-core-24.0/) according to your platform (in the context
of this guide, it is most likely `bitcoin-24.0-x86_64-linux-gnu.tar.gz`).
Then verify the signature against a key you trust. The Bitcoin Core Github repo contains [a
list](https://github.com/bitcoin/bitcoin/blob/master/contrib/builder-keys/keys.txt) of frequent
@ -53,31 +66,37 @@ Finally, uncompress the archive to get access to the `bitcoind` binary.
curl -O https://bitcoincore.org/bin/bitcoin-core-24.0/bitcoin-24.0-x86_64-linux-gnu.tar.gz -O https://bitcoincore.org/bin/bitcoin-core-24.0/SHA256SUMS -O https://bitcoincore.org/bin/bitcoin-core-24.0/SHA256SUMS.asc
sha256sum --ignore-missing --check SHA256SUMS
gpg --keyserver hkps://keys.openpgp.org --receive 590B7292695AFFA5B672CBB2E13FC145CD3F4304
gpg --verify SHASUMS.asc
tar -xzf bitcoin-24.0-x86_64-linux-gnu.tar.gz bitcoin-24.0/bin/bitcoind
gpg --verify SHA256SUMS.asc
tar -xzf bitcoin-24.0-x86_64-linux-gnu.tar.gz
```
For details on verifying your download, or for verifying the download on another platform please
refer to
For details on verifying your download, or for verifying the download on a non-Linux machine refer
to
[https://bitcoincore.org/en/download/#verify-your-download](https://bitcoincore.org/en/download/#verify-your-download).
#### Start `bitcoind` on signet
Run `bitcoind` in the background on the public signet network. If it is the first time you start a
signet Bitcoin on this machine it will take a few minutes to synchronize (depends on your connection
and hardware of course, but it shouldn't take longer than a handful of minutes).
### Start `bitcoind` on signet
Run `bitcoind` in the background on the public signet network.
```
./bitcoin-24.0/bin/bitcoind -signet -daemon
```
If it is the first time you start a signet Bitcoin on this machine it will take a few minutes to
synchronize (depends on your connection and hardware of course, but it shouldn't take longer than a
handful of minutes). You can track the progress using the `getblockchaininfo` command:
```
./bitcoin-24.0/bin/bitcoin-cli -signet getblockchaininfo
```
### Step 2: setup a dummy signing device
You do not need to wait for full synchronisation before moving on to the next step.
## Step 2: setup a dummy signing device
Liana does not support "hot keys" at the moment. It needs a connection to a signing device for
signing transactions.
Let's start a Specter simulator.
We will be using a [Specter](https://github.com/cryptoadvance/specter-diy) simulator.
```
git clone https://github.com/cryptoadvance/specter-diy
@ -87,10 +106,12 @@ make simulate
```
A window will pop up. Choose a dummy pin code and generate a new key. Then go to settings, switch
network to signet. Then go to the next section. (Keep it running obviously, you'll need it.)
network to signet.
Keep the Specter simulator open and move on to the next step.
### Step 3: start Liana
## Step 3: start Liana
Get the latest Liana software release and start it.
@ -99,16 +120,19 @@ TODO: download and sig verification details
Since you presumably never installed Liana, this will start the installer. Create a new wallet.
Choose network Signet. For the primary key use the one from your dummy signing device, the Specter
simulator you just started. You can do that simply by clicking on "import". For the number of blocks
before the recovery key becomes active, you can choose anything valid. But prefer something small to
test the case where coins are soon to become accessible on the recovery branch.
simulator you just started. You can do that simply by clicking on the "import" button next to the
text input in the installer. For the number of blocks before the recovery key becomes active, you
can choose anything valid. But prefer something small to test the case where coins are soon to
become accessible on the recovery branch.
For the recovery key you could use another simulator but in this guide i'll just use a random xpub:
`tpubDDU2vzv4Rk2kU8VjDDQBWYTb7tmSd9ddV4ERmm5VesfoaxBJQm3CyNc4fjcYAzEqXn3YQ8dxpzkhQjpxT3Nqp7yQh1UMczL1MMfTSKXNv3n/<0;1>/*`.
You can generate one from, for instance https://iancoleman.io/bip39/. But make sure to append
You can also generate one from, for instance https://iancoleman.io/bip39/. But make sure to append
`/<0;1>/*` to it, this is to be able to derive both change and receive addresses from the same
descriptor.
TODO: have the installer input xpubs without the derivation part. https://github.com/revault/liana/issues/155
Make the next step happy by ticking the "i backed up my descriptor" checkbox.
Import the descriptor to your Specter by clicking on the `specter-simulator` tile.
@ -117,9 +141,27 @@ Finally, configure the connection to `bitcoind`. The default should work for wha
guide. Click sur continue and finalize the installation.
### Step 4: have fun
## Step 4: have fun
You can generate a receive address in the "Receive" menu. You can get signet coins from the signet
faucet at https://signet.bc-2.jp/.
Keep in mind that signet coins have no value!
## Cleanup
You need to remove:
- The Bitcoin Core archive and `bitcoind` binary
- The Specter directory
- The `bitcoind` data directory
- The Liana data directory
Assuming you used the throwaway folder as advised in step 0 and did not use custom `bitcoind` or
Liana data directories you can wipe everything using these commands:
```
cd ..
rm -rf liana_quicktry
rm -rf ~/.bitcoin/signet
rm -rf ~/.liana/signet
```