mirror of
https://github.com/status-im/nim-dagger.git
synced 2025-01-23 21:19:00 +00:00
33 lines
1.2 KiB
Nim
33 lines
1.2 KiB
Nim
import std/strutils
|
|
import std/os
|
|
|
|
proc createCircuits() =
|
|
let cmds = """
|
|
${NIMCLI_DIR}/cli $CLI_ARGS -v --circom=${CIRCUIT_MAIN}.circom --output=input.json
|
|
circom --r1cs --wasm --O2 -l${CIRCUIT_DIR} ${CIRCUIT_MAIN}.circom
|
|
NODE_OPTIONS="--max-old-space-size=8192" snarkjs groth16 setup ${CIRCUIT_MAIN}.r1cs $PTAU_PATH ${CIRCUIT_MAIN}_0000.zkey
|
|
echo "some_entropy_75289v3b7rcawcsyiur" | NODE_OPTIONS="--max-old-space-size=8192" snarkjs zkey contribute ${CIRCUIT_MAIN}_0000.zkey ${CIRCUIT_MAIN}_0001.zkey --name="1st Contributor Name"
|
|
""".splitLines()
|
|
|
|
# rm ${CIRCUIT_MAIN}_0000.zkey
|
|
# mv ${CIRCUIT_MAIN}_0001.zkey ${CIRCUIT_MAIN}.zkey
|
|
|
|
let nimCircuitRef = "vendor/codex-storage-proofs-circuits/reference/nim/proof_input/cli"
|
|
|
|
proc setProjDir(prev = getCurrentDir()) =
|
|
if not "codex.nimble".fileExists():
|
|
setCurrentDir("..")
|
|
if prev == getCurrentDir():
|
|
echo "\nERROR: Codex project folder not found (could not find codex.nimble)"
|
|
echo "\nBenchmark must be run from within the Codex project folder"
|
|
quit 1
|
|
setProjDir()
|
|
|
|
setProjDir()
|
|
|
|
if not nimCircuitRef.fileExists:
|
|
echo "Nim Circuit ref exe not found"
|
|
|
|
|
|
echo "huzzah"
|