Gravity Alpha Mainnet (L2) Node Setup

Instructions about how to run a Gravity Alpha Mainnet node.

ArbOS 51 (Dia) Upgrade Notice

Gravity Alpha Mainnet has been upgraded to ArbOS 51 (Dia). This upgrade brings important improvements from the Ethereum Fusaka upgrade and more.

What's Included

  • Features from the ArbOS 40 (Callisto) upgrade

  • Unlocks the path to Permissionless Fault Proofs in the future with the new BoLD dispute protocol

  • Unlocks the path to enabling Native Token Mint/Burn capabilities

  • EIP-7825 — Transaction gas limit cap for more efficient gas usage

  • Precompile and opcode changes that make cryptographic operations cheaper and more efficient in the EVM

For a full breakdown, see the ArbOS 51 upgrade noticearrow-up-right.

Required Actions for Existing Node Operators

No action required if you are not running external nodes.

If you are running external nodes, you need to:

  1. Upgrade your Nitro node to at least v3.9.3, but v3.9.5 (release linkarrow-up-right) is recommended.

  2. Make sure the flag --node.staker.enable=false is configured on your node.

If you have already downloaded a snapshot previously, you only need to upgrade the node version — simply update the Docker image to offchainlabs/nitro-node:v3.9.5-66e42c4 and restart.

Key Changes from Previous Version

  • Docker image: ghcr.io/celestiaorg/nitro:v3.6.8offchainlabs/nitro-node:v3.9.5-66e42c4

  • Celestia DAS server is no longer required — DA is now handled via the REST aggregator

  • HTTP API: Added trace and debug endpoints

  • New flags:

    • --node.data-availability.enable=true

    • --node.data-availability.rest-aggregator.enable=true

    • --node.data-availability.rest-aggregator.urls=https://das-gravity-mainnet-0.t.conduit.xyz

    • --execution.caching.archive=true

    • --node.staker.enable=false

  • Removed flags:

    • --node.data-availability.enable=false

    • --node.da-provider.enable=true

    • --node.da-provider.rpc.url=<CELESTIA_DAS_URL>


Full Node Setup Guide

The following guide is for setting up a Gravity Alpha Mainnet node from scratch.

Prerequisites

  1. A local directory for storing node data

  2. An Ethereum mainnet RPC endpoint with unlimited rate limit for eth_getLogs

  3. An Ethereum beacon chain RPC endpoint

Download Snapshot (Required)

Downloading the latest snapshot is required before running the node. Due to historical data availability format changes, syncing from genesis without a snapshot is not supported.

  1. Extract the snapshot to your local directory before running the node.

If you have already downloaded a snapshot previously, there is no need to download it again.

Health Check

After your node is running, verify that it has successfully synced past the historical Celestia DA batches by checking the latest block number:

If the output shows STUCK, your node is unable to process historical Celestia-format batches. You need to re-download the latest snapshot and restart.

Running the Node

Save the following script as run-gravity-node.sh, make it executable with chmod +x run-gravity-node.sh, and update the TODO variables:

Additional Information

  • The chain info is obtained from Conduit:

  • Relay endpoint is provided by Conduit as wss://relay-gravity-mainnet-0.t.conduit.xyz

  • Gravity Alpha Mainnet uses Anytrust DA, with aggregator URL: https://das-gravity-mainnet-0.t.conduit.xyz

References

For more information, please check out the following guides:

Last updated

Was this helpful?