diff options
Diffstat (limited to 'zkvms/risc0')
| -rw-r--r-- | zkvms/risc0/Justfile | 12 | ||||
| -rw-r--r-- | zkvms/risc0/default.nix | 54 | ||||
| l--------- | zkvms/risc0/guest/Cargo.lock | 1 | ||||
| l--------- | zkvms/risc0/guest/guests_macro | 1 |
4 files changed, 68 insertions, 0 deletions
diff --git a/zkvms/risc0/Justfile b/zkvms/risc0/Justfile new file mode 100644 index 0000000..9cd78fe --- /dev/null +++ b/zkvms/risc0/Justfile @@ -0,0 +1,12 @@ +execute: build-guest + time cargo run --bin host-risc0 --release -- execute + +prove: build-guest + time cargo run --bin host-risc0 --release -- prove + +verify: build-guest + time cargo run --bin host-risc0 --release -- verify + +build-guest: + cd guest && \ + cargo build --release --target riscv32im-risc0-zkvm-elf diff --git a/zkvms/risc0/default.nix b/zkvms/risc0/default.nix new file mode 100644 index 0000000..42ebf8a --- /dev/null +++ b/zkvms/risc0/default.nix @@ -0,0 +1,54 @@ +{ stdenv, + lib, + just, + metacraft-labs, + pkg-config, + craneLib-default, +}: +let + fs = lib.fileset; + + commonArgs = rec { + pname = "risc0"; + version = "infdev"; + + src = fs.toSource { + root = ../..; + fileset = fs.intersection (fs.gitTracked ../..) (fs.unions [ + ./. + ../../guests + ../../guests_macro + ../../Cargo.lock + ../../Cargo.toml + ../../Vertices-010.in + ]); + }; + }; + + craneLib = craneLib-default.overrideToolchain metacraft-labs.risc0; + cargoArtifacts = craneLib.buildDepsOnly commonArgs; +in + craneLib.buildPackage (commonArgs + // { + inherit cargoArtifacts; + + nativeBuildInputs = [ + just + metacraft-labs.risc0 + stdenv.cc + pkg-config + ]; + + postPatch = '' + ln -s ../../../../guests/graph_coloring ./zkvms/risc0/guest/src/zkp + ''; + + preBuild = '' + INPUTS="$PWD/Vertices-010.in" + export INPUTS + cd zkvms/risc0 + just prove + ''; + + doCheck = false; + }) diff --git a/zkvms/risc0/guest/Cargo.lock b/zkvms/risc0/guest/Cargo.lock new file mode 120000 index 0000000..ee3be30 --- /dev/null +++ b/zkvms/risc0/guest/Cargo.lock @@ -0,0 +1 @@ +../../../Cargo.lock
\ No newline at end of file diff --git a/zkvms/risc0/guest/guests_macro b/zkvms/risc0/guest/guests_macro new file mode 120000 index 0000000..98e8cf9 --- /dev/null +++ b/zkvms/risc0/guest/guests_macro @@ -0,0 +1 @@ +../../../guests_macro/
\ No newline at end of file |
