Generate two new Solana keypairs in rome-apps/docker/keys, called Rhea keypair and Proxy keypair. These keypairs will be used by the Rhea and Light Client services (explained on the next page) to sign and pay for Solana transactions.
cd rome-setup/docker
solana-keygen new -o keys/rhea-sender.json --no-bip39-passphrase --force
solana-keygen new -o keys/proxy-sender.json --no-bip39-passphrase --force
Note: We use the terms "Proxy" and "Light Client" interchangeably.
Check Solana Slot
Check the Solana slot, and update start_slot in proxy-config.yml and rhea-config.yml (located in rome-setup/docker/cfg) with current slot.
solana slot
This slot will be used by Rhea and Light Client (i.e. Proxy) to determine the rollup's current state based on Solana transaction history beginning from the start slot.
Update Rhea Config
Update rhea-config.yml to set chain_id, start_slot, solana_url, and payers. solana rpc_url is for submitting transactions to Solana.
chain_id: 98989897
start_slot: 385523275
program_id: "RPDLj7hwcWEpQ4S3fExgsxMruc4BfuUUts69i9BdhKq"
solana:
rpc_url: "https://node3.devnet-us-sol-api.devnet.romeprotocol.xyz"
payers:
- payer_keypair: "/opt/rhea-sender.json"
fee_recipients:
- 0xB515207148c409075D0048247bfdDd8399072A14
geth_indexer:
geth_http_addr: "http://geth:8545"
geth_poll_interval_ms: 100
mempool_ttl: 15 # (Seconds) Value higher of comparable to real op-geth TTL will prevent rhea from repeated sending
Update Hercules Config
Update hercules-config.yml to set chain_id, start_slot, solana_url, geth_engine_secret, and payers. solana rpc_url is for indexing transactions from Solana.