Client Setup

Installing the client and contract CLI

The tezos-client and contract CLI tool (lorentz-contract-param) may be installed using Homebrew.

See below for platform-specific prerequisites.

Prerequisites for Mac OSX

Run the following to install brew:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

See the Homebrew website for more detail.

Prerequisites for Linux and Windows

Homebrew may be installed on Linux as well as the Windows Subsystem for Linux (WSL).

First, install the required dependencies using apt:

sudo apt update
sudo apt install clang curl git make build-essential

Next, install Homebrew for Linux:

sh -c "$(curl -fsSL https://raw.githubusercontent.com/Linuxbrew/install/master/install.sh)"

Finally, add Homebrew to your PATH:

test -d ~/.linuxbrew && eval $(~/.linuxbrew/bin/brew shellenv)
test -d /home/linuxbrew/.linuxbrew && eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)
test -r ~/.bash_profile && echo "eval $($(brew --prefix)/bin/brew shellenv)" >>~/.bash_profile
echo "eval $($(brew --prefix)/bin/brew shellenv)" >>~/.profile

See the Homebrew website for Linux for more detail.

Installing with Homebrew

Once you have brew and any other required prerequisites installed, install the alphanet client and Lorentz contract CLI with brew:

brew tap TQTezos/homebrew-tq https://gitlab.com/TQTezos/homebrew-tq.git
brew install tezos
brew install lorentz-contract-param

Note: Pre-built binaries are available for tezos and lorentz-contract-param on some platforms, otherwise they will be built from source. See Bintray for more detail.

This guide uses lorentz-contract-param version 0.2.0.1.2:

$ lorentz-contract-param --version
lorentz-contract-param-0.2.0.1.2

Create an alias for the alphanet client:

alias alpha-client="tezos-client -A rpcalpha.tzbeta.net -P 443 -S"

Create alphanet wallets:

  • Go to the faucet
  • Click Get alphanet ꜩ, which will download a .json file with a new wallet

Activate the account, passing it the path to the .json wallet you just downloaded:

  • Here, we're calling the account alice
$ alpha-client activate account alice with "~/Downloads/tz1QLne6uZFxPRdRfJG8msx5RouENpJoRsfP.json"
Warning:
This is NOT the Tezos Mainnet.
The node you are connecting to claims to be running on the
Tezos Alphanet DEVELOPMENT NETWORK.
Do NOT use your fundraiser keys on this network.
Alphanet is a testing network, with free tokens.
Waiting for the node to be bootstrapped before injection...
Current head: BL52YjrSCteP (timestamp: 2019-08-12T15:09:16-00:00, validation: 2019-08-12T15:09:28-00:00)
Node is bootstrapped, ready for injecting operations.
Operation successfully injected in the node.
Operation hash is 'opES9TEa9cazEs1mcc6jcbFAWNFtzLewpCD4evct6oG4T1m2od3'
Waiting for the operation to be included...
Error:

Note: Since the This is NOT the Tezos Mainnet. message is repeated for each command, it has been removed from the following command responses for brevity.

Make a variable for Alice's account address:

ALICE_ADDRESS="tz1PCA3H4SAGneuoXuVH1YV9yZeWd1foj2oQ"

Ensure that the activation was successful:

$ alpha-client get balance for $ALICE_ADDRESS
5310.946554

Repeat for bob, BOB_ADDRESS, respectively, to create a wallet for Bob. (We'll need two accounts to perform transfers, etc.)