Teku

This package provides the Teku Ethereum consensus client, packaged for Ethereum on ARM.

Services

This package installs systemd services for various networks and configurations. The services are disabled by default.

Beacon Chain Services:

  • teku-beacon.service (Mainnet)

  • teku-beacon-mev.service (Mainnet + MEV-Boost)

  • teku-beacon-gnosis.service (Gnosis Chain)

  • teku-beacon-sepolia.service (Sepolia Testnet)

  • teku-beacon-sepolia-mev.service (Sepolia + MEV-Boost)

  • teku-beacon-hoodi.service (Hoodi Testnet)

  • teku-beacon-hoodi-mev.service (Hoodi + MEV-Boost)

Validator Services:

  • teku-validator.service (Mainnet)

  • teku-validator-mev.service (Mainnet + MEV-Boost)

  • teku-validator-gnosis.service (Gnosis Chain)

  • teku-validator-sepolia.service (Sepolia Testnet)

  • teku-validator-sepolia-mev.service (Sepolia + MEV-Boost)

  • teku-validator-hoodi.service (Hoodi Testnet)

  • teku-validator-hoodi-mev.service (Hoodi + MEV-Boost)

To enable a service, run:

sudo systemctl enable –now <service_name>

Configuration

Configuration arguments are defined in environment files located in /etc/ethereum/.

  • Mainnet:
    • /etc/ethereum/teku-beacon.conf

    • /etc/ethereum/teku-beacon-mev.conf

    • /etc/ethereum/teku-validator.conf

    • /etc/ethereum/teku-validator-mev.conf

  • Gnosis:
    • /etc/ethereum/teku-beacon-gnosis.conf

    • /etc/ethereum/teku-validator-gnosis.conf

  • Sepolia:
    • /etc/ethereum/teku-beacon-sepolia.conf

    • /etc/ethereum/teku-beacon-sepolia-mev.conf

    • /etc/ethereum/teku-validator-sepolia.conf

    • /etc/ethereum/teku-validator-sepolia-mev.conf

  • Hoodi:
    • /etc/ethereum/teku-beacon-hoodi.conf

    • /etc/ethereum/teku-beacon-hoodi-mev.conf

    • /etc/ethereum/teku-validator-hoodi.conf

    • /etc/ethereum/teku-validator-hoodi-mev.conf

You can edit these files to customize the generic arguments passed to the Teku binary.

Data Directories

By default, this package stores data in the ethereum user’s home directory:

  • Beacon Node: /home/ethereum/.teku-beacon (Mainnet)

  • Validator: /home/ethereum/.teku-validator (Mainnet)

Note: For other networks, check the specific service file for the data directory argument.

User and Group

All services run as the ethereum user and group.

Package Details

Validator Setup

This package includes a helper script to easily create the necessary password files for your validator keystores.

  1. Place your validator keystores (.json files) in a directory (default: /home/ethereum/validator_keys).

  2. Run the setup script:

    setup_validator_passwords
    

This will prompt you for the password used during keystore generation and create a matching .txt password file for each keystore, ensuring correct permissions (600).