Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

README.md wording fix #20

Merged
merged 2 commits into from
Sep 20, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
61 changes: 32 additions & 29 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,56 +4,58 @@ This project provides various forms of distribution for [Stone](https://github.c

## About

The goal of this project is to reduce the friction and time to start producing proofs using Stone. More broadly the aim is to make Stone a "known" piece of infra that can be easily integrated into application specific workflows and maintained with ease.
The goal of this project is to reduce friction and speed up the process of generating proofs using Stone. More broadly, the aim is to make Stone a "known" piece of infrastructure that can be easily integrated into application-specific workflows and maintained efficiently.

## Roadmap

- [x] Releases with static binaries for x86_64
- [x] Releases with static binaries for arm64
- [x] Minimal docker images for x86_64
- [x] Static binary releases for x86_64
- [x] Static binary releases for ARM64
- [x] Minimal Docker images for x86_64
- [x] Native packages for Debian/Ubuntu

Follow-up work:
- Native packages for Fedora
- Native packages for Alpine
- Native packages for Homebrew
- Technical docs for file formats (inputs, outputs, memory, trace, proof), test data
- Docs hosted on github pages
- Homebrew packages
- Technical documentation for file formats (inputs, outputs, memory, trace, proof), and test data
- Documentation hosted on GitHub Pages
- Integrated proof decomposition (related to https://github.com/zksecurity/stark-evm-adapter)
- Observability suite (metrics, dashboard, configurable logging)
- Observability suite (metrics, dashboards, configurable logging)
- Stwo support

# Instructions for use
## Usage Instructions

### Download binaries for x86_64
### Download Binaries for x86_64

```bash
sudo wget https://github.com/dipdup-io/stone-packaging/releases/latest/download/cpu_air_prover-x86_64 -O /usr/local/bin/cpu_air_prover && sudo chmod +x /usr/local/bin/cpu_air_prover

sudo wget https://github.com/dipdup-io/stone-packaging/releases/latest/download/cpu_air_verifier-x86_64 -O /usr/local/bin/cpu_air_verifier && sudo chmod +x /usr/local/bin/cpu_air_verifier
```

### Download binaries for MacOS Arm64
### Download Binaries for macOS ARM64

```bash
wget https://github.com/dipdup-io/stone-packaging/releases/latest/download/cpu_air_prover-arm64 -O /usr/local/bin/cpu_air_prover && chmod +x /usr/local/bin/cpu_air_prover

wget https://github.com/dipdup-io/stone-packaging/releases/latest/download/cpu_air_verifier-arm64 -O /usr/local/bin/cpu_air_verifier && chmod +x /usr/local/bin/cpu_air_verifier
```

### Creating and verifying a test proof using binaries
### Creating and Verifying a Test Proof Using Binaries

Clone the repository:

```bash
git clone https://github.com/dipdup-io/stone-packaging.git /tmp/stone-packaging
```

Navigate to the example test directory (`/tmp/stone-packaging/test_files/`):
Navigate to the example test directory:

```bash
cd /tmp/stone-packaging/test_files/
```

Copy or download from latest release the binary files to this directory.
Copy or download the binary files from the latest release to this directory.

Run the prover:
```bash
Expand All @@ -65,30 +67,31 @@ cpu_air_prover \
--parameter_file=cpu_air_params.json
```

The proof is now available in the file `fibonacci_proof.json`.
The proof will be available at `fibonacci_proof.json`.

Run the verifier to verify the proof:

Finally, run the verifier to verify the proof:
```bash
cpu_air_verifier --in_file=fibonacci_proof.json && echo "Successfully verified example proof."
```

## Download minimal docker images for x86_64
## Download Minimal Docker Images for x86_64

Download the necessary package. Package stone-prover contains cpu_air_prover and cpu_air_verifier. For example:
Download the Docker image. The stone-prover package includes both cpu_air_prover and cpu_air_verifier:

```bash
docker pull ghcr.io/dipdup-io/stone-packaging/stone-prover:latest
```

### Creating and verifying a test proof using docker images
### Creating and Verifying a Test Proof Using Docker

Clone the repository:

```bash
git clone https://github.com/dipdup-io/stone-packaging.git /tmp/stone-packaging
```

Run docker images with volume:
Run the Docker container with a volume mounted:

```bash
docker run --entrypoint /bin/bash -v /tmp/stone-packaging/test_files:/app/prover ghcr.io/dipdup-io/stone-packaging/stone-prover -c "cd /app/prover && exec cpu_air_prover \
Expand All @@ -99,31 +102,31 @@ docker run --entrypoint /bin/bash -v /tmp/stone-packaging/test_files:/app/prover
--parameter_file=cpu_air_params.json"
```

The proof is now available at test_files/fibonacci_proof.json
The proof will be available at test_files/fibonacci_proof.json.

Run the verifier to verify the proof:
To verify the proof:

```bash
docker run --entrypoint /bin/bash -v /tmp/stone-packaging/test_files:/app/prover ghcr.io/dipdup-io/stone-packaging/stone-prover -c "cd /app/prover && exec cpu_air_verifier --in_file=fibonacci_proof.json && echo 'Successfully verified example proof.'"
```

## Download Native packages for Debian/Ubuntu
## Download Native Packages for Debian/Ubuntu

Download the deb package from the latest release. For example:
Download the .deb package from the latest release:

```bash
wget https://github.com/dipdup-io/stone-packaging/releases/latest/download/stone-prover-linux-x86_64.deb && sudo dpkg -i stone-prover-linux-x86_64.deb
```

### Creating and verifying a test proof using deb package
### Creating and Verifying a Test Proof Using the .deb Package

Clone the repository:

```bash
git clone https://github.com/dipdup-io/stone-packaging.git /tmp/stone-packaging
```

Navigate to the example test directory (`/tmp/stone-packaging/test_files/`):
Navigate to the example test directory:

```bash
cd /tmp/stone-packaging/test_files/
Expand All @@ -139,11 +142,11 @@ cpu_air_prover \
--parameter_file=cpu_air_params.json
```

The proof is now available in the file `fibonacci_proof.json`.
The proof will be at `fibonacci_proof.json`.

Finally, run the verifier to verify the proof:
Run the verifier to confirm the proof:
```bash
cpu_air_verifier --in_file=fibonacci_proof.json && echo "Successfully verified example proof."
```

Project is supported by Nethermind and Starknet Foundation via [OnlyDust platform](https://app.onlydust.com/p/stone-packaging-)
This project is supported by Nethermind and Starknet Foundation via [OnlyDust platform](https://app.onlydust.com/p/stone-packaging-)
Loading