feat(pkgs): add circom and circom-lsp

This commit is contained in:
reo101 2023-07-23 17:05:15 +03:00
parent 61fceefb4a
commit 9305fbc2ff
Signed by: reo101
GPG key ID: 675AA7EF13964ACB
3 changed files with 68 additions and 0 deletions

View file

@ -0,0 +1,33 @@
{ lib, fetchFromGitHub, rustPlatform, openssl, pkg-config, libxkbcommon }:
rustPlatform.buildRustPackage rec {
pname = "circom-lsp";
version = "0.1.3";
src = "${fetchFromGitHub {
owner = "rubydusa";
repo = pname;
rev = "refs/tags/v${version}";
sha256 = "sha256-Y71qmeDUh6MwSlFrSnG+Nr/un5szTUo27+J/HphGr7M=";
}}/server";
cargoSha256 = "sha256-Lq8SpzkUqYgayQTApNngOlhceAQAPG9Rwg1pmGvyxnM=";
nativeBuildInputs = [
pkg-config
];
buildInputs = [ ];
PKG_CONFIG_PATH = "${openssl.dev}/lib/pkgconfig";
LD_LIBRARY_PATH = lib.makeLibraryPath buildInputs;
doCheck = false;
meta = with lib; {
description = "A Language Server Protocol Implementation for Circom";
homepage = "https://github.com/rubydusa/circom-lsp";
license = licenses.isc;
maintainers = with maintainers; [ reo101 ];
};
}

33
pkgs/circom/default.nix Normal file
View file

@ -0,0 +1,33 @@
{ lib, fetchFromGitHub, rustPlatform, openssl, pkg-config, libxkbcommon }:
rustPlatform.buildRustPackage rec {
pname = "circom";
version = "2.1.6";
src = fetchFromGitHub {
owner = "iden3";
repo = pname;
rev = "refs/tags/v${version}";
sha256 = "sha256-2YusBWAYDrTvFHYIjKpALphhmtsec7jjKHb1sc9lt3Q=";
};
cargoSha256 = "sha256-G6z+DxIhmm1Kzv8EQCqvfGAhQn5Vrx9LXrl+bWBVKaM=";
nativeBuildInputs = [
pkg-config
];
buildInputs = [ ];
PKG_CONFIG_PATH = "${openssl.dev}/lib/pkgconfig";
LD_LIBRARY_PATH = lib.makeLibraryPath buildInputs;
doCheck = false;
meta = with lib; {
description = "zkSnark circuit compiler";
homepage = "https://github.com/iden3/circom";
license = licenses.isc;
maintainers = with maintainers; [ reo101 ];
};
}

View file

@ -6,6 +6,8 @@
}: {
# example = pkgs.callPackage ./example { };
advcpmv = pkgs.callPackage ./advcpmv { };
circom = pkgs.callPackage ./circom { };
circom-lsp = pkgs.callPackage ./circom-lsp { };
fennel-language-server = pkgs.callPackage ./fennel-language-server { };
parinfer-rust = pkgs.callPackage ./parinfer-rust { };
pest-ide-tools = pkgs.callPackage ./pest-ide-tools { };