Compiling the Graft Wallet from scratch is easy if you know what you are doing, although it may be hard for someone beginning with Linux.
Here is a quick guide on how to install the dependencies, compile the wallet and use it.
First of all, you will have to make sure your sources are up to date and that Git is installed:
sudo apt-get update
sudo apt-get install git
Then, we can create a folder where we will store all of our cryptocurrencies wallet, if we do not already have one:
From that folder, we will clone the current GraftNetwork repository using Git and enter the cloned folder:
git clone https://github.com/graft-project/GraftNetwork.git graft-wallet
There is a lot of dependencies that we have to make sure are installed and up to date.
On Ubuntu/Debian, we can use:
sudo apt-get install build-essential cmake pkg-config libboost-all-dev libssl-dev libunbound-dev libminiupnpc-dev libunwind8-dev liblzma-dev libldns-dev libexpat1-dev libgtest-dev doxygen graphviz
Ubuntu library libgtest-dev needs to be built after the install. You can do this using this combo of commands:
cd /usr/src/gtest && sudo cmake . && sudo make && sudo mv libg* /usr/lib/
We can then build the sources using make:
Alternatively, for the build to be faster, we can specify the number of thread used for the build process:
make -j [number of threads]
Where [number of threads] is a number usually between 1 and 8. Each thread should be one core of the computer and 2GB of ram. On a computer with 8 cores and 16GB of ram, we can use 8, although you should use less thread than the max possible amount.
The process will work for a while, building everything.
Then, you will have to start the graftnoded (Standing for Graft Node Daemon), which is the binary that manage to connection with the blockchain. From the graft-wallet folder, we can start the graftnoded by calling:
./build/release/bin/graftnoded --log-file graftnoded.log --detach
The process will now be running in background. You can validate by checking it’s process ID:
You can manage the wallet using the CLI wallet binaries:
From there, you will have to create a new wallet, a password, select the language to generate de seed and save the generated seed. It will be on three lines, make sur to copy and paste everything.
After everything is done, you will be in the interactive console. You can, from there, write “help” and find a lot of useful commands to interact with the wallet.