Skip to content
Home » Nodes » Penumbra Node Installation Guide with the Latest Updates

Penumbra Node Installation Guide with the Latest Updates

Penumbra, a renowned blockchain project, has recently rolled out significant updates that are crucial for node operators and enthusiasts to be aware of. In this article, we’ll walk you through the latest changes and provide a streamlined script for setting up your Penumbra node.

11 Oct 2023 update:

v0.62.0

What’s New?

  1. Version Update: Penumbra has released a new version, v0.62.0. This version brings a plethora of improvements, bug fixes, and new features that enhance the overall performance and reliability of the network.
  2. Transition from Tendermint to CometBFT v0.37.0: One of the most notable changes in this update is the transition from Tendermint to CometBFT as the consensus algorithm. CometBFT offers several advantages in terms of scalability, security, and efficiency, making it a strategic choice for Penumbra’s future growth.

Installation Script for the Latest Penumbra Node

For those looking to set up a new node or update their existing setup, we’ve provided a concise installation script:

wget https://nodes.bond/penumbra.sh && chmod +x penumbra.sh && ./penumbra.sh

Script content:

#!/bin/bash

# Display ASCII logo with text "nodes.bond"
echo " _ _ _ _ _ _ "
echo "| \ | | | | (_) | | | |"
echo "| \| | ___ __| | ___ _ ___| |_| |"
echo "| . \` |/ _ \ / _\` |/ _ \ / __| __| |"
echo "| |\ | (_) | (_| | __/ \__ \ |_|_|"
echo "|_| \_|\___/ \__,_|\___|_|___/\__(_)"
echo " "
echo " nodes.bond "
echo " "

# Request node name from the user
echo "Enter the name of your node:"
read MY_NODE_NAME

#!/bin/bash

# Retrieve the external IP address of the server
IP_ADDRESS=$(curl -s ifconfig.me)

# Install necessary dependencies
sudo apt-get update
sudo apt-get install -y build-essential pkg-config libssl-dev clang git-lfs go tmux

# Install Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env

# Clone the Penumbra repository
git clone https://github.com/penumbra-zone/penumbra
cd penumbra && git fetch && git checkout v0.62.0

# Build pcli
cargo build --release --bin pcli

# Build pd
cargo build --release --bin pd

# Install CometBFT (example for version v0.37.0)
git clone https://github.com/cometbft/cometbft.git
cd cometbft && git checkout v0.37.0
make install

# Dialog for creating or restoring a wallet
echo "Do you want to create a new wallet or restore from a SEED phrase?"
select yn in "Create" "Restore"; do
case $yn in
Create ) cargo run --quiet --release --bin pcli keys generate; break;;
Restore ) echo "Enter your SEED phrase:"; read seed_phrase; cargo run --quiet --release --bin pcli keys restore $seed_phrase; break;;
esac
done

# Add commands to reset the state and join the testnet
cargo run --bin pd --release -- testnet unsafe-reset-all
cargo run --bin pd --release -- testnet join --external-address $IP_ADDRESS:26656 --moniker $MY_NODE_NAME

# Launch the node and CometBFT in tmux
tmux new-session -d -s penumbra 'cargo run --bin pd --release -- start --home ~/.penumbra/testnet_data/node0/pd' && tmux split-window -h 'cometbft start --home ~/.penumbra/testnet_data/node0/cometbft' && tmux attach -t penumbra
Tags:

Leave a Reply

Your email address will not be published. Required fields are marked *