Install core
These instructions assume you can navigate the command line and edit configuration files. If you need help with a particular step, see the installation's troubleshooting section.
Installation
-
Open a terminal window.
-
Type
go version
. If Go is not installed or less than Go Version 1.23, install the latest version of Go -
Install or upgrade the build dependencies: git, cmake, ninja, curl, python, clang-format, jq
-
Clone the repo and compile the executable:
git clone --depth 1 --no-single-branch --recurse-submodules --branch develop https://github.com/TrueBlocks/trueblocks-core
cd trueblocks-core
mkdir build && cd build
../scripts/go-work-sync.sh
cmake ../src
make
-
Switch to the
master
branch if you want a more stable version. -
The build may be faster with
make -j <nproc>
. -
Add
./trueblocks-core/bin
to your shell's $PATH. Check Google if you don't know what this means. -
Type
chifra config --paths
. This will produce a display similar to the following (ignore any errors). Note the$CONFIG
paths.
chifra config --paths:
Config: $HOME/Library/Application Support/TrueBlocks/
Cache : $HOME/Library/Application Support/TrueBlocks/cache/mainnet
Index : $HOME/Library/Application Support/TrueBlocks/unchained/mainnet
- Next, edit a configuration file called
$CONFIG/trueBlocks.toml
. Edit this file and locate the[chains.mainnet]
section. Add a valid RPC endpoint. If you don't know what this means, search Google.
[chains.mainnet]
...
rpcProvider = "http://localhost:8545"
...
- If you wish to use the
--articulate
feature (you probably do), add an API key to the following section:
[keys.etherscan]
...
apiKey = "<your Etherscan api key>" # optional
...
Testing the install
If you've installed things properly, you should be able to now run the following command, which should return this data:
chifra blocks 12
You should get results similar to these:
{
"data": [
{
"gasLimit": 5000,
"gasUsed": 0,
"hash": "0xc63f666315fa1eae17e354fab532aeeecf549be93e358737d0648f50d57083a0",
"blockNumber": 12,
"parentHash": "0x3f5e756c3efcb93099361b7ddd0dabfeaa592439437c1c836e443ccb81e93242",
"miner": "0x0193d941b50d91be6567c7ee1c0fe7af498b4137",
"difficulty": 17179844608,
"finalized": true,
"timestamp": 1438270144,
"baseFeePerGas": 0
}
]
}
- Assuming the above works, your system is properly installed. If not, see the TroubleShooting section.
More information
There's a lot left to learn. Have fun: