From 07c565962194606d873ca14681c51a1cba048ec3 Mon Sep 17 00:00:00 2001 From: Kamen Mladenov Date: Mon, 13 Jan 2025 10:45:08 +0200 Subject: feat: Generic build and install phases, which only compile instead of proving --- flake.nix | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) (limited to 'flake.nix') diff --git a/flake.nix b/flake.nix index 7299b4b..9f315ac 100644 --- a/flake.nix +++ b/flake.nix @@ -20,7 +20,36 @@ pkgs = import nixpkgs { system = system; overlays = [ mcl-blockchain.overlays.default ]; }; callPackage = pkgs.lib.callPackageWith pkgs; + withZKVMPhases = currentPackage: with currentPackage; { + buildPhase = '' + root_dir="$PWD" + runHook preBuild + cd "$root_dir" + + export INPUTS="$PWD/Vertices-010.in" + cargo build --bin ${hostBin} --release + + runHook postBuild + ''; + + installPhase = '' + runHook preInstall + mkdir -p "$out"/bin + for bin in $(find . -type f -regex ".*release/[^/]*" -executable -print) + do + mv "$bin" "$out"/bin/ + done + runHook postInstall + ''; + + doNotPostBuildInstallCargoBinaries = true; + } // currentPackage; + + args-zkVM = { + craneLib-default = crane.mkLib pkgs; + inherit withZKVMPhases; + }; in { - packages.${system}.risc0 = callPackage ./zkvms/risc0/default.nix {craneLib-default = crane.mkLib pkgs;}; + packages.${system}.risc0 = callPackage ./zkvms/risc0/default.nix args-zkVM; }; } -- cgit v1.2.3