Skip to content

Latest commit

 

History

History
151 lines (93 loc) · 5.07 KB

File metadata and controls

151 lines (93 loc) · 5.07 KB

Installing Floresta

If you prefer skipping the build-unix and run steps to directly install our binaries you have the below options.

  1. If you have just you can simply do just install to install both florestad and floresta-cli or you can specify one of them to install only the specified. Refer to the command's docs written in the justfile if you clarification about the process.

or if you prefer a guided installation process, that will help you to configure your daemon with your own needs:

  1. with this bash script to install and configure.

⚠️ Currently, this script only works for debian-based systems. Also it aims to run on fresh servers, since it does some package manager operations, that is cargo and apt removing or adding dependencies. If you are insecure about the process is strongly advised to understand how the script works.

About the script

This script will guide the user about Floresta's installation/configuration or removal from the system. In the case of install, it will:

  • check if you have the required dependencies to build Floresta, and if not, download them;
  • start the guide to desired Floresta's systemd service configuration;
  • once configured, download the latest release, build and install the florestad and floresta-cli binaries with the jsonrpc feature;
  • warn how to start and enable the systemd service;
  • check if the service is running.

Running the script

Use curl to download the script and execute it with bash:

curl -LsSf https://raw.githubusercontent.com/getfloresta/Floresta/refs/heads/master/contrib/install.sh | bash

Or you can use wget:

wget -qO- https://raw.githubusercontent.com/getfloresta/Floresta/refs/heads/master/contrib/install.sh | bash

Check dependencies

When you start the command above you could see something like this:

$ curl -LsSf https://raw.githubusercontent.com/getfloresta/Floresta/refs/heads/master/contrib/install.sh | bash
✅ Internet connection is available.
🐧 'dialog' is not installed. Installing...
[sudo] password for user:

The 'dialog' is not installed. Installing... message will not appear if you already have dialog utility installed. It will be used to guide you through the setup.

Start configuration

After the dependencies pre-installation you will see this prompt:

install.sh initial message

Configure

Press Ok to proceed, either to install or uninstall:

install or uninstall

Then you could choose between some basic options, advanced options and review configuration:

Main menu

Choose a supported network for your node:

choose network

You can also add any master public-key, descriptors or specific addresses:

add wallet

The script also have advanced setup. They are not required, but some are desirable to have, like TLS:

advanced config

Review

Before install, it is important to review your configuration:

review

Running

After the installation procedure finishes, you'll see this message:

✅ DONE

⚠️ Before enable/start, please edit '/usr/lib/systemd/system/florestad.service' to your needs. After that, run:

    sudo systemctl daemon-restart           # restart daemon definitions
    sudo systemctl start florestad.service  # this will start the service now
    sudo systemctl status florestad.service # this check if service is running well
    sudo systemctl enable florestad.service # this enable service on boot
    floresta-cli getblockchaininfo          # this assures all OK

This means that both florestad and floresta-cli are installed. You could check with:

which florestad

and

which floresta-cli

Troubleshooting

Check the florestad.service

Check the file /usr/lib/systemd/system/florestad.service. It is optional, but could be worth if you want to change anything.

Start the service now

This will run the service in background, but it could fail since it might be needed to reboot your system to apply some permission changes.

Check if service is running well

Anytime you want to check you service, you may want to use these commands:

# Journaling
sudo journalctl -xeu florestad.service

# logs when using bitcoin mainnet
sudo cat /var/lib/florestad/debug.log

# logs when using another network (testnet, signet, regtest)
sudo cat /var/lib/florestad/<network>/debug.log

Electrum

If you plan to use a tls-enabled electrum client in a coordinator (like sparrow), you may want to copy the certificate file. If you're using a remote server:

# on server if using mainnet
cp /var/lib/florestad/tls/cert.pem

# on server if using another network
cp /var/lib/florestad/<network>/tls/cert.pem /home/user/cert.pem

# on you local machine
scp user@mydomain:/home/user/cert.pem .