remove testnet url

This commit is contained in:
Giacomo Pasini 2025-05-16 17:19:37 +02:00
parent 37e9162487
commit ad29e630e5
No known key found for this signature in database
GPG Key ID: FC08489D2D895D4B
3 changed files with 48 additions and 33 deletions

View File

@ -19,21 +19,60 @@ Additionally, the repository includes a fully functioning Uniswap example:
- [Nomoswap: Uniswap Frontend](./nomos-example-uniswap/) - Web interface for interacting with the DEX
- [Blockscout: Block Explorer](./nomos-example-blockscout/) - Block explorer for the rollup
## Architecture
```
+----------------+ +--------------+ +----------------+
| Sequencer |----->| Prover |<----| Light Node |
| (EVM) | | (Risc0) | | (Verifier) |
+----------------+ +--------------+ +----------------+
| |
v v
+----------------+ +----------------+
| Nomos Node |<--------------------------| Consensus/DA |
| (DA Layer) | | Verification |
+----------------+ +----------------+
```
The system works as follows:
1. Sequencer processes transactions and sends blocks to the Nomos data availability layer
2. Prover generates ZK proofs of block execution
3. Light Node fetches blocks from the sequencer and verifies proofs
4. Light Node confirms block data is available on Nomos
## Prerequisites
- Rust
- Cargo
- Just
- Risc0
- Access to a Nomos node
## Installation
1. Clone the repository:
```bash
git clone https://github.com/your-org/nomos-example-sovereign.git
git clone https://github.com/your-org/nomos-example-sovereign.git --recurse-submodules
cd nomos-example-sovereign
```
2. Build the components:
2. Build zeth:
```bash
cd zeth
just build
```
GPU acceleration (Apple Metal and CUDA) is supported and greatly improves performance. To enable it, compile zeth appropriately with:
```bash
just metal
```
or
```bash
just cuda
```
2. Build the remaining components:
```bash
cargo build --release
```
@ -57,7 +96,7 @@ Environment variables:
The sequencer exposes RPC endpoints on:
- HTTP: http://localhost:8545
- WebSocket: ws://localhost:8546
- WebSocket: wss://localhost:8546
### 2. Start the Prover
@ -81,16 +120,16 @@ Parameters:
The prover service will be available at: http://localhost:8070
### 3. Start the Light Node
### 3. Start the Light Node [experimental]
The light node validates proofs and verifies block data:
The light node validates proofs and verifies block data. Please note that this is an experimental feature and may not be fully functional.
```bash
cargo run --release --bin evm-lightnode -- \
--rpc http://localhost:8545 \
--ws-rpc wss://localhost:8546 \
--prover-url http://localhost:8070 \
--nomos-node https://testnet.nomos.tech/node/3/ \
--nomos-node https://nomos.url \
--batch-size 10 \
--zeth-binary-dir /path/to/zeth
```
@ -103,7 +142,7 @@ Parameters:
- `--batch-size`: Number of blocks in a proof batch
- `--zeth-binary-dir`: Path to the directory containing the zeth binary
## Deploying Uniswap
## Example Application: Deploying Uniswap
Follow these steps to deploy and interact with Uniswap on the sovereign rollup:
@ -127,23 +166,3 @@ Follow these steps to deploy and interact with Uniswap on the sovereign rollup:
Each component's directory contains a detailed README with specific setup instructions.
## Architecture
```
+----------------+ +----------------+ +----------------+
| Sequencer |----->| Prover |----->| Light Node |
| (EVM) | | (Risc0) | | (Verifier) |
+----------------+ +----------------+ +----------------+
| |
v v
+----------------+ +----------------+
| Nomos Node |<--------------------------| Consensus |
| (DA Layer) | | Verification |
+----------------+ +----------------+
```
q
The system works as follows:
1. Sequencer processes transactions and sends blocks to the Nomos data availability layer
2. Prover generates ZK proofs of block execution
3. Light Node fetches blocks from the sequencer and verifies proofs
4. Light Node confirms block data is available on Nomos

View File

@ -28,7 +28,7 @@ struct Args {
#[clap(long, default_value = "http://localhost:8070")]
prover_url: Url,
#[clap(long, default_value = TESTNET_EXECUTOR)]
#[clap(long)]
nomos_node: Url,
#[clap(long, default_value = "10")]
@ -38,8 +38,6 @@ struct Args {
zeth_binary_dir: Option<PathBuf>,
}
const TESTNET_EXECUTOR: &str = "https://testnet.nomos.tech/node/3/";
#[tokio::main]
async fn main() -> Result<(), Box<dyn error::Error>> {
let args = Args::parse();

View File

@ -11,8 +11,6 @@ use reth_tracing::tracing::info;
use executor_http_client::BasicAuthCredentials;
use evm_sequencer_node::{Processor, NomosDa};
const TESTNET_EXECUTOR: &str = "https://testnet.nomos.tech/node/3/";
async fn process_blocks<Node: FullNodeComponents>(
mut ctx: ExExContext<Node>,
mut processor: Processor,
@ -60,7 +58,7 @@ fn main() -> eyre::Result<()> {
.unwrap()
.run(|builder, _| {
Box::pin(async move {
let url = std::env::var("NOMOS_EXECUTOR").unwrap_or(TESTNET_EXECUTOR.to_string());
let url = std::env::var("NOMOS_EXECUTOR").unwrap_or_default();
let user = std::env::var("NOMOS_USER").unwrap_or_default();
let password = std::env::var("NOMOS_PASSWORD").unwrap_or_default();
let da = NomosDa::new(