order |
---|
3 |
To get the XP
begin by signing up for our newsletter at our Sponsor Booth. To claim the XP
you'll need to build the Command Line Client for interacting with the Cosmos Burner Chain and generate a wallet. First make sure that you have installed golang v13.0 or newer and that your $GOPATH
and $GOROOT
are correctly configured.
go version
echo $GOPATH
echo $GOROOT
Now you can get the repo by cloning it directly with the correct branch (okwme/minimal-scavenge
):
git clone -b okwme/minimal-scavenge https://github.com/cosmos/peggy
Afterwards you'll need to navigate into the newly downloaded directory and run make install
like:
cd peggy
make install
You may need to install
make
andmake-guile
before runningmake install
This should result in building three binaries:
make install
go install -mod=readonly ./cmd/ebd
go install -mod=readonly ./cmd/ebcli
go install -mod=readonly ./cmd/ebrelayer
The first binary (ebd
) is used for running a node within the network (we're just going to be connecting to a node that's already running). The second binary (ebrelayer
) is for running a relayer between the burner chain and xDai. You won't be allowed to do this unless you also run a validator so we won't look further into it at this point. The third binary (ebcli
) is the one we want. Try running the help command to see what it can do:
ebcli --help
ethereum bridge client
Usage:
ebcli [command]
Available Commands:
status Query remote node for status
config Create or query an application CLI configuration file
query Querying subcommands
tx Transactions subcommands
rest-server Start LCD (light-client daemon), a local REST server
keys Add or view local private keys
version Print the app version
help Help about any command
Flags:
--chain-id string Chain ID of tendermint node
-e, --encoding string Binary encoding (hex|b64|btc) (default "hex")
-h, --help help for ebcli
--home string directory for config and data (default "/root/.ebcli")
-o, --output string Output format (text|json) (default "text")
--trace print out full stack trace on errors
Use "ebcli [command] --help" for more information about a command.
The first thing we'll want to do is add some values to the config of our CLI so you don't need to include them as flags with every other command. We add indent
, format
to help with formatting the CLI results, We'll use trust-node
and node
to point our CLI to the active burner node at http://167.99.167.78:26657 where it is running with the chain-id
of peggy
.
ebcli config indent true
ebcli config output json
ebcli config chain-id peggy
ebcli config trust-node true
ebcli config node tcp://167.99.167.78:26657
Next you'll want to generate a new account for this chain. You should come up with a nickname for this account that you can use to reference it while making other commands later on. This will also show you the mnemonic phrase that secures the account as well as the public key and your address as a bech32 encoded version of your public key with a cosmos prefix (the prefix can be modified per chain).
ebcli keys add your-nickname
Enter keyring passphrase:
{
"name": "your-nickname",
"type": "local",
"address": "cosmos15d0vljwtyxnrz9quuk2mj7mjfmjfg8wjfedm90",
"pubkey": "cosmospub1addwnpepqwhkspe65ewjerceu5dckqcfpcku0znx3c6q0ll3whyngjzycx4awd8pn5p",
"mnemonic": "** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** **"
}
This is your new account! Now that you know your account address, you need to send it to us so we can give you your XP
! You can submit it via email to billy@tendermint.com with the email address you signed up for the survey with. I'll reply letting you know you've received the XP
. Once you've received it you should be able to check your balance like this:
ebcli query account $(ebcli keys show your-nickname -a)
Enter keyring passphrase:
{
"type": "cosmos-sdk/Account",
"value": {
"address": "cosmos15d0vljwtyxnrz9quuk2mj7mjfmjfg8wjfedm90",
"coins": [
{
"denom": "XP",
"amount": "10"
}
],
"public_key": "cosmospub1addwnpepqwhkspe65ewjerceu5dckqcfpcku0znx3c6q0ll3whyngjzycx4awd8pn5p",
"account_number": 0,
"sequence": 2
}
}
This uses the ebcli keys
as a sub-command to grab your account address and uses it as a parameter in the ebcli query
command.
If you have not yet received your
XP
tokens, you will see an error that your account does not exist. That's because accounts are not registered within the chain's memory until they execute their first transaction or receive a balance in some token.
NOTE This does not work yet because XP is non transferrable.
Once you have some XP
you can send it back to your Ethereum address on the BuffiDai xDai chain. To do this use the following command:
ebcli tx ethbridge burn $(ebcli keys show your-nickname -a) ETHEREUM_RECIPIENT_ADDRESS 10XP \
--from your-nickname \
--ethereum-chain-id 100 \
--token-contract-address XP_TOKEN_ADDRESS
You should be able to see the balance show up in your BuffiDao wallet!