Tezos - We Gotta Bake!

Tezos - We Gotta Bake!

Honey Badger

Dear respectable reader, 

'tis from the bottom of my hairy greedy little heart that I present to you this most exquisite guide on how to become a baker. Not just any baker, but a Tezos baker. Naturally, there is an official guide out there, we at Badger Capital, however, found it to be rather inconsistent and woefully incomprehensive. Our guide is for those of simpler disposition, for those who aren't the sharpest tools in the shed. Basically, this guide is suitable for the clinically retarded and those who think that Metronome is a good project. Most importantly this guide works.

Now, a short disclaimer is in order: we are not liable for any misfortunes and damages that might befall you or your funds. In fact, baking is a dangerous and risky procedure that, if done improperly, and may lead to serious financial and technical ruin. Best leave it to professionals. Having said that...

Let's bake!

Step one - prep

First, the basic ingredients. We start with a nice juicy server - you can make one at home from scratch or use a store-bought VPS. Make sure it's fresh and packs at least 8GB of RAM and 30GB of SSD memory. 

Then, install a delicious Linux Ubuntu 16.04 - if you're feeling adventurous you can even go for the fresher 18.04 version which would require a slightly different way of launching applications: Ubuntu 16 uses the "./" prefix (./tezos-node), while in Ubuntu 18 you can just type the app name without the prefix (tezos-node) - this guide uses the Ubuntu 16 commands.

Now, you either have the Terminal window open on your own server or you have connected to your VPS server via an SSH connection (if that last sentence does not make sense to you, we highly suggest you take up actual baking instead and delegate your Tezos to some other baker to save yourself the headache).

Step two - Wallet activation

Now let's take care of that KYC and activate your wallet.

Go over to https://verification.tezos.com/ and follow their instructions for the KYC, then head over to https://stephenandrews.github.io/activatez/ and unlock your tokens. 

Baking ain't easy. Make sure you screenshot and save absolutely everything that goes on during this step, as losing any information from this stage can ruin your entire operation.

Step three - Installing the node

Just copy the commands from here, paste them into your terminal window and press enter. With these simple commands we will have your node running in no time!

The command text looks like this:

command #comment

Everything before the # sign is the command that you need to copy. Everything else is a comment which I have graciously added for improved perception. Don't rush, let every command complete before running another one.

Now let's get down to business:

sudo apt-get update # this command updates the the packets on your system. The word "sudo" may prompt a password that you should oblige it with. Answer every question with a Y (yes) and press enter whenever prompted
sudo apt-get install software-properties-common # installs some necessary software
sudo add-apt-repository ppa:avsm/ppa # creates an opam installation repository
sudo add-apt-repository ppa:ansible/bubblewrap # creates another repository
sudo add-apt-repository ppa:git-core/ppa # and another one
sudo apt-get update # updates the packets (again)
sudo apt-get upgrade # upgrades the packets to fresher ones
sudo apt-get install ocaml ocaml-native-compilers camlp4-extra opam build-essential git m4 unzip rsync make gcc g++ aspcud bubblewrap curl bzip2 libhidapi-dev # installs some more necessary software
sudo adduser tezos # creates the user "tezos" which we'll use for further tuning
sudo adduser tezos sudo # give the new user admin rights
su - tezos # switch user - tezos. From now on all commands are carried out in his name - do NOT forget this step.
git clone https://gitlab.com/tezos/tezos.git # installing the necessary software
cd tezos # changes our directory to where we downloaded the tezos software
git checkout betanet # apparently an essential command
sh <(curl -sL https://raw.githubusercontent.com/ocaml/opam/master/shell/install.sh) # installs opam. This command causes some problems, so let's run some more commands just to be on the safer side of things
wget https://github.com/ocaml/opam/releases/download/2.0.0-rc3/opam-2.0.0-rc3-x86_64-linux # downloads the packet directly
sudo mv opam-2.0.0-rc3-x86_64-linux /usr/local/bin/opam # moves the packet
sudo chmod a+x /usr/local/bin/opam # gives execution rights
opam install opam-devel # makes everything work
opam init --comp=4.06.1 # arcane opam tuning
opam install opam-devel  # more arcane opam tuning
opam switch 4.06.1 # some more arcane opam tuning
opam update # even more arcane opam tuning
eval $(opam env) # opam tuning: electric boogaloo
make build-deps # the first big step in this whole process. If you have done everything correctly up until this point, it will compile. Otherwise you failed and need to start over.


YOUR PACKETS ARE FUCKING RAW!
eval $(opam env) # I don't know why but this pleases the opam
make # compiling
./tezos-node identity generate 26 # generates some sort of identity. Don't bother asking what sort of identity this is
curl -s 'http://zeronet-api.tzscan.io/v1/network?state=running&p=0&number=50' | grep -Po '::ffff:([0-9.:]+)' | sed ':a;N;$!ba;s/\n/ /g' | sed 's/::ffff:/--peer=/g' # this command downloads the peer list for the node update, but nobody knows if this actually works. Type it anyway.
nohup ./tezos-node run --rpc-addr :8732 --connections 10 & # this launches the node
# now let's press Enter to exit the last command. It should be still running due to the nohup prefix. Let's make sure it's still running:
ps -ef | grep tezos # looks up all the running processes with "tezos" in their name
./tezos-client bootstrapped # this command checks if the node is up and syncs properly. The output is a lot of yellow text with some "timestamp" value. The value should be something close to present day as it shows how up to date the node is. Please wait until the value is up to date before proceeding

Step four - Activating the keys

Patience, it's almost over:

./tezos-client add address fundraiser <tz1...> # creates a new "fundraiser" account. Instead of <tz1...> write your tezos address that you got during the tezos fundraiser.
./tezos-client activate fundraiser account fundraiser with <activation_key> # use you activation key instead of <activation_key>. You got your activation key during your token activation in step 2. You did screenshot everything, didn't you?
./tezos-client get balance for fundraiser # this command shows your XTZ balance. If it shows nothing - you screwed up.
./tezos-client import fundraiser secret key fundraiser # imports your private keys. Fill out every single input prompt correctly, including the seed phrase (word-0, word-1 etc.). Should you mess this up you will get a tz1 address that is not the same as yours. To top it off, you should make a secure password and repeat it 3 times - I cannot stress enough how important it is to save EVERYTHING you input.
./tezos-client register key fundraiser as delegate # inducts you into the proud ranks of Tezos delegates

Step five - Launch

This is the final essential step (some of these commands can run without nohup and & so if they don't work, try doing the command without them, but each command must be typed in a new terminal window):

nohup ./tezos-alpha-baker run with local node "/home/tezos/.tezos-node" "my_account" & # launches some arcane node process
#press Enter
nohup ./tezos-alpha-endorser run "my_account" & # launches some arcane node process
#press Enter
nohup ./tezos-alpha-accuser run & # launches some more arcane node stuff
# press Enter to exit the command above. You can always check if your processes are running by typing ps -ef | grep tezos 

Congratulations - you are now baking that sweet delicious tezos.

Tastes like a billion bucks

Step six - Getting the clients

In order to let other people pay you for the fruits of your labour, your clients should use the following procedure:

  • Go through the same KYC and token activation you went through in step 2
  • Download a TezBox (which has some problems as of July 22) or a Galleon wallet
  • Log into the wallet and see their tezos balance
  • Create a new address with a KT prefix
  • Transfer the funds subject to delegation to the new address
  • Open the new KT address and press DELEGATE
  • In the "custom" field type in your tz1 address. and press Update

You can check if it worked by opening your wallet address in the explorer and checking the "Delegations" tab for your client's address.

Step seven - security

Boring as it may sound, your node is probably not the most secure one on the block, so you might want to kick it up a notch by following these guides:

  • This one is uber secure and a pain in the ass to setup
  • This, this and this is basic node security. Note that you could accidentally close the ports necessary for node operation

Or instead of going through all that pain and suffering you could just delegate your coins to our very good friends at https://t.me/norn_delegate and sleep soundly knowing that somebody else has to deal with all the server issues and finding the clients.

____________________________________________________________________________

After reading this immensely useful guide please consider donating to make us feel validated:

ETH: 0x286b6c77708B4dE44CDA68a1D6E59A489E80299b (link)

BTC: 16Zkjwd6CZjepRwe34scMxghqntqYoh3xP (link)

P.S. A small haiku about Tezos:

"Biggest ICO in history" my hairy ass.

P.S.S. Original content - do not steal. If you do steal it - at least give us a damn shoutout.


Report Page