Easy Baking Setup with tezos-packaging

Igor Tkach
The Aleph
Published in
3 min readDec 10, 2021
“PACKAGES” by marc falardeau is licensed under CC BY 2.0

One of the easiest ways to set up baking on Tezos is with tezos-packaging.

tezos-packaging is a joint Oxhead Alpha / Serokell project aiming to provide a
comprehensive, high quality, binary distribution of Octez, the Tezos reference implementation.

Tezos is a sophisticated distributed system and Octez is complex software. Setting up a correct build environment to compile Octez is no simple task. The tezos-packaging project tracks Octez dependencies and ensures that each supported platform has a reliable build process associated with it.

Native packages are provided for:

  • Ubuntu
  • Fedora
  • Raspberry Pi OS
  • MacOS (via Homebrew)

Native packaging allows Octez to be installed, removed, and updated in a standard, well documented way. Native packaging also enables familiar control programs to start, stop, and run daemons with minimal overhead. tezos-packaging provides a universal installation and maintenance method for supported systems wherever they happen to be — a home computer, a local virtual machine, a VPS, or a cloud instance.

Frequent software updates coordinated with the unique on-chain governance lifecycle of Tezos can be a lot to keep track of. tezos-packaging does the heavy lifting here. Highly automated builds closely follow Octez releases, including release candidates. Package updates are carefully tested to ensure smooth upgrades and minimize downtime.

Octez comprises multiple components that work together to synchronize, update and validate chain data.

A minimal baker setup consists of:

  • a node
  • one or two baker/endorser pairs (one for current network protocol, one for the protocol to be activated in the next protocol upgrade)
  • a key pair for a Tezos address registered as a baker

tezos-packaging codifies and manages these dependencies via systemd, giving users a simple, standard interface to manage, observe and configure these services.

What does the setup look like in practical terms, what do we type? Let’s fire up an Ubuntu machine, virtual or physical, and open the terminal. Then, add a new apt repository:

sudo add-apt-repository -yu ppa:serokell/tezos

Install the tezos-baking package:

sudo apt-get install -y tezos-baking

Installing this package pulls down all the necessary octez binaries, systemd definitions and configuration utilities.

Finally, run the tezos setup utility and follow the prompts:

tezos-setup-wizard

tezos-setup-wizard will guide the user through creating a configuration, with sensible defaults, and provide necessary context and explanation for the options presented.

The setup process itself will take some time as it downloads a recent snapshot of chain data and then waits for the node to sync with the network.

Setting up Tezos node screencast
Setting up Tezos baker screencast

Although the user needs to understand the main Tezos concepts, there’s not much to type or remember! This is quite similar to Kiln’s baking setup wizard. One improvement is that tezos-packaging supports all the baking key setups that Octez itself supports, not just Ledger Nano S.

Combined with Pyrometer for node and baker monitoring, tezos-packaging is a great Kiln alternative. Give it a try!

Special thanks to Andrew Smith, Iryna Gerasymova and Pasquale Pinto for helping to write this post.

--

--