Currently, the Tauri UI is not working, as an interim solution, a text version is available with:
$ cargo run --bin tari-lp-cli
This will build/run the text based version that can run launchpad.
a.k.a. Tari one-click miner.
- Rust and cargo (https://www.rust-lang.org/tools/install).
- NodeJs (v16.0 or higher) and Yarn (v 1.22 or higher).
- Tauri CLI (
cargo install tauri-cli
). Optional. - Docker is not strictly a pre-requisite, since the launchpad on-boarding flow will install it for you, but you will need docker eventually, so putting it here.
- Install the front-end dependencies
These commands
- build the launchpad ReactJs front-end and launch it in development mode.
- build the backend in debug mode
- launch the application
$ yarn run tauri dev
The console relays debug messages from the launchpad backend (a Rust application). The front-end is a standard ReactJs application wrapped inside a Tauri desktop application. You can open a standard browser console in the front-end to debug front-end issues.
Tip: If you receive the following error
Unable to create base node...
there was a problem packaging the assets for the app.
To build a production release, which also includes a bundled installer (.dmg on mac, .deb on linux, .msi on windows), you can execute:
$ cd applications/launchpad
$ yarn run tauri build
You can use the bundled Grafana environment that is packaged with launchpad to view log files. Or you can use your favorite text editor instead.
Logs and configuration files are stored in
- MacOs:
~/Library/Caches/tari-launchpad/log/{network}/{app}/log
, - Linux:
~/.cache/tari-launchpad/log/{network}/{app}/log
, - Windows:
C:\Users\{user}\AppData\Local\tari-launchpad
You can edit the log configuration, {network}/config/log4rs.yml
to change the log level, output etc. Changes are
picked up on the fly and take effect within 30s.
- The blockchain data is stored in docker volumes, and not on the host machine directly. This is due to crippling performance limitations one suffers when mounting host file system from Windows or MacOS into docker containers. This isn't a big drawback, since you seldom want or need to access the raw blockchain database files anyway. And they're still accessible. But ensure that you reserve enough space to store the Tari, and optionally, Monero blockchains inside the Docker VM.
The blockchain data is stored in a docker volume for performance reasons. If you need to back up or access the LMDB of blockchain data, you can use something like this to extract it to the host filesystem:
docker run --rm -v $(pwd):/backup -v blockchain:/blockchain ubuntu tar czvf /backup/backup.tar.gz /blockchain
+-----------------------+
| |
+---->| Console Wallet +------------------+
| | | |
| +----------+------------+ |
| | |
| | gRPC |
| | |
| | |
| +----------v------------+ +------v-----+
| | | Socks5 | |
| | Base Node +---------->| Tor |----> Network
| | | | |
| +----------^------------+ +------------+
| |
| |
| |
| +----------+------------+
| | |
+-----+ SHA3-Miner |
| | |
| +-----------------------+
|
|
|
| +-----------------------+
| | |
+-----+ XMRRig etc |
| |
+-----------------------+
The docker images for the base node, wallet etc. are designed to handle the broadest set of chipsets and
architectures. For this reason, they not be optimal for your system. You can build custom images for launchpad
using the build_images.sh
script in this folder.
Refer to that script for further details and build options.
There are a set of files in this folder that offer a convenient way of setting the environment up for some common configurations.
run source {env_config}.env
to set up the environment. Currently, the presets are:
local-performance-amd64.env
: For building local images with Intel/AMD and AVX-2 chipset support (about 2x speedup on crypto operations)local-performance-arm64.env
: For building local images for Apple M-series CPUs.hosted-dual.env
: Replicates the CI enviroment. Builds safe multi-arch images and pushes them to the docker repo (requires a write access token).