From 2ef54182a39463cbf50f0387d2493b98d3abb3c5 Mon Sep 17 00:00:00 2001 From: Raito Bezarius Date: Wed, 7 Jun 2023 14:40:26 +0200 Subject: [PATCH] cairo-lang: init at 1.1.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit `cairo-lang` is a general purpose language for provable computations using PCP (probabilistically checkable proofs — https://en.wikipedia.org/wiki/Probabilistically_checkable_proof) This is the v1 Rust-based compiler version of the project. --- pkgs/development/compilers/cairo/default.nix | 40 ++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 42 insertions(+) create mode 100644 pkgs/development/compilers/cairo/default.nix diff --git a/pkgs/development/compilers/cairo/default.nix b/pkgs/development/compilers/cairo/default.nix new file mode 100644 index 000000000000..b39c26d424a9 --- /dev/null +++ b/pkgs/development/compilers/cairo/default.nix @@ -0,0 +1,40 @@ +{ lib +, rustPlatform +, fetchFromGitHub +, rustfmt +}: + +rustPlatform.buildRustPackage rec { + pname = "cairo"; + version = "1.1.0"; + + src = fetchFromGitHub { + owner = "starkware-libs"; + repo = "cairo"; + rev = "v${version}"; + hash = "sha256-8dzDe4Kw9OASD0i3bMooqEclStxS/Ta/tOVCcFhvwSI="; + }; + + cargoHash = "sha256-IY3RE+EeNRhUSZX+bqojhPl6y8qm+i9C0zQmNApmat8="; + + nativeCheckInputs = [ + rustfmt + ]; + + checkFlags = [ + # Requires a mythical rustfmt 2.0 or a nightly compiler + "--skip=golden_test::sourcegen_ast" + ]; + + postInstall = '' + # The core library is needed for compilation. + cp -r corelib $out/ + ''; + + meta = with lib; { + description = "Turing-complete language for creating provable programs for general computation"; + homepage = "https://github.com/starkware-libs/cairo"; + license = licenses.asl20; + maintainers = with maintainers; [ raitobezarius ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d3910ce14f9c..1106f47bbc07 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -21023,6 +21023,8 @@ with pkgs; cairo = callPackage ../development/libraries/cairo { }; + cairo-lang = callPackage ../development/compilers/cairo { }; + cairomm = callPackage ../development/libraries/cairomm { }; cairomm_1_16 = callPackage ../development/libraries/cairomm/1.16.nix {