> For the complete documentation index, see [llms.txt](https://skyneticlabs.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://skyneticlabs.gitbook.io/docs/services/testnet-networks/editor/installation.md).

# Installation

Chain ID: mocha-4 | Latest Version Tag: v8.0.3-mocha

***

#### Setup validator name

```bash
MONIKER=<your_moniker>
```

### Install dependencies

#### Update system and install build tools

```bash
sudo apt -q update
sudo apt -qy install curl git jq lz4 build-essential
sudo apt -qy upgrade
```

#### Install GO

```bash
sudo rm -rf /usr/local/go
curl -Ls https://go.dev/dl/go1.24.6.linux-amd64.tar.gz | sudo tar -xzf - -C /usr/local
eval $(echo 'export PATH=$PATH:/usr/local/go/bin' | sudo tee /etc/profile.d/golang.sh)
eval $(echo 'export PATH=$PATH:$HOME/go/bin' | tee -a $HOME/.profile)
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile
source $HOME/.bash_profile
go version
```

#### Download and build binaries

```bash
# Clone project repository
cd $HOME
rm -rf celestia-app
git clone https://github.com/celestiaorg/celestia-app.git
cd celestia-app
git checkout v9.0.2-mocha

make install
```

#### Create a service

```bash
# Create service file
sudo tee /etc/systemd/system/celestia-appd.service > /dev/null <<EOF
[Unit]
Description=Celestia node
After=network-online.target

[Service]
User=$USER
WorkingDirectory=$HOME/.celestia-app
ExecStart=$(which celestia-appd) start --home $HOME/.celestia-app
Restart=on-failure
RestartSec=5
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target
EOF

sudo systemctl daemon-reload
sudo systemctl enable celestia-appd
```

#### Initialize the node

```bash
# Set node configuration
celestia-appd config set client chain-id mocha-4
celestia-appd config set client keyring-backend file
celestia-appd config set client node tcp://localhost:26657

# Initialize the node
celestia-appd init $MONIKER --chain-id mocha-4

# Set seeds and peers
SEEDS=""
PEERS="e0a647fce0b48d8e85610aa60f6094b4e0a9a461@celestia-t-peer.skyneticlabs.com:26656,bab648bac7c56777da56463d2ff328d5b73f8123@152.53.36.47:11656,c2870ce12cfb08c4ff66c9ad7c49533d2bd8d412@185.183.33.109:26656,20c6e72c7cd3b3b37f88d703217576b4f72936d4@185.185.51.34:26656,5415b191808b7c16f2f2795960dde67666b0c71d@212.83.43.61:26656,e4ab3ce43a64f9ca81adec3bf864c6977fce2441@46.4.105.119:26630,9e124462d45c4d22e227f6b0103b88c0a0d0fcd8@38.114.123.239:26656,d882c26ecb59f29166f7f586cf20091ec89ee532@65.109.126.24:26630,b37bb130ceab25d91798d170c1c45644b17c742d@207.121.63.164:26656,0c0dd9d82f3fee847c390dcc59a6e2e4fd6d5df0@78.129.165.37:26656,17a1fd70609562ecb7cd10599e0a7d566d8b8699@88.198.70.23:11656,89a9d5090f22a92fba975899503359e8c52c981b@103.88.233.124:26656,e1b058e5cfa2b836ddaa496b10911da62dcf182e@164.152.161.199:36656,05d1d4acbcce7bd5ec949083b843ebb4251c3acf@84.32.32.140:26656,e726816f42831689eab9378d5d577f1d06d25716@164.152.163.148:36656,1feea4b8b29d6bb9c51dc29d0f2029db06b7219c@169.155.169.214:36656,092654181eef7da8eb0a9bc3bb739fb171a68d40@141.98.217.211:26656,9f675ec089c234da9cc0e48077e1ae458fdf8b60@49.12.82.124:36656,c4fa997e8a69bec5787607e25bfa233f941c5b10@88.198.5.77:29656,6fe60cca3ea1e3e3dfaac76648364b7d66f88106@212.8.252.34:26656,5318579c8b99a9c063c145bdb2fcdd58e74b4448@65.108.228.199:10156"
sed -i -e "/^\[p2p\]/,/^\[/{s/^[[:space:]]*seeds *=.*/seeds = \"$SEEDS\"/}" \
       -e "/^\[p2p\]/,/^\[/{s/^[[:space:]]*persistent_peers *=.*/persistent_peers = \"$PEERS\"/}" $HOME/.celestia-app/config/config.toml

# Set minimum gas price
sed -i -e "s|^minimum-gas-prices *=.*|minimum-gas-prices = \"0.002utia\"|" $HOME/.celestia-app/config/app.toml

# Config pruning
sed -i -e "s/^pruning *=.*/pruning = \"custom\"/" $HOME/.celestia-app/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"100\"/" $HOME/.celestia-app/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"50\"/" $HOME/.celestia-app/config/app.toml

# Enable bbr
sudo modprobe tcp_bbr
echo "net.core.default_qdisc=fq" | sudo tee -a /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
```

#### Download genesis and Addrbook

```bash
wget -O $HOME/.celestia-app/config/genesis.json https://services-t.skyneticlabs.com/celestia/genesis.json
wget -O $HOME/.celestia-app/config/addrbook.json  https://services-t.skyneticlabs.com/celestia/addrbook.json
```

#### Download latest chain snapshot

```bash
curl -L https://services-t.skyneticlabs.com/celestia/celestia-snap-t.tar.lz4 | tar -Ilz4 -xf - -C $HOME/.celestia-app/
```

#### Start service and check the logs

```bash
sudo systemctl start celestia-appd && sudo journalctl -u celestia-appd -f --no-hostname -o cat
```
