From 12aa98067d6954db645201c477f1e25eeb49b9bc Mon Sep 17 00:00:00 2001 From: Fernando Rodrigues Date: Sat, 2 Nov 2024 17:19:28 +0000 Subject: [PATCH 1/5] libsnark: move to by-name Signed-off-by: Fernando Rodrigues --- .../libsnark/default.nix => by-name/li/libsnark/package.nix} | 0 pkgs/top-level/all-packages.nix | 2 -- 2 files changed, 2 deletions(-) rename pkgs/{development/libraries/libsnark/default.nix => by-name/li/libsnark/package.nix} (100%) diff --git a/pkgs/development/libraries/libsnark/default.nix b/pkgs/by-name/li/libsnark/package.nix similarity index 100% rename from pkgs/development/libraries/libsnark/default.nix rename to pkgs/by-name/li/libsnark/package.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d66ad450ec82..57858f714ae4 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -21396,8 +21396,6 @@ with pkgs; inherit (darwin.apple_sdk.frameworks) Carbon AudioToolbox; }; - libsnark = callPackage ../development/libraries/libsnark { }; - libsodium = callPackage ../development/libraries/libsodium { }; libsoup = callPackage ../development/libraries/libsoup { }; From 8e1ecbc05d9a99222d78d7c9b7d1a85a8644675d Mon Sep 17 00:00:00 2001 From: Fernando Rodrigues Date: Sat, 2 Nov 2024 17:19:39 +0000 Subject: [PATCH 2/5] libsnark: format with nixfmt-rfc-style Signed-off-by: Fernando Rodrigues --- pkgs/by-name/li/libsnark/package.nix | 36 +++++++++++++++++++++------- 1 file changed, 28 insertions(+), 8 deletions(-) diff --git a/pkgs/by-name/li/libsnark/package.nix b/pkgs/by-name/li/libsnark/package.nix index 54360cad4ed9..5a3b36989f7e 100644 --- a/pkgs/by-name/li/libsnark/package.nix +++ b/pkgs/by-name/li/libsnark/package.nix @@ -1,21 +1,41 @@ -{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, openssl, boost, gmp, procps }: +{ + lib, + stdenv, + fetchFromGitHub, + cmake, + pkg-config, + openssl, + boost, + gmp, + procps, +}: stdenv.mkDerivation rec { pname = "libsnark"; version = "unstable-2018-01-15"; - nativeBuildInputs = [ cmake pkg-config ]; - buildInputs = [ openssl boost gmp ] ++ lib.optional stdenv.hostPlatform.isLinux procps; + nativeBuildInputs = [ + cmake + pkg-config + ]; + buildInputs = [ + openssl + boost + gmp + ] ++ lib.optional stdenv.hostPlatform.isLinux procps; - cmakeFlags = lib.optionals stdenv.hostPlatform.isDarwin [ "-DWITH_PROCPS=OFF" ] - ++ lib.optionals (stdenv.hostPlatform.isDarwin || !stdenv.hostPlatform.isx86) [ "-DWITH_SUPERCOP=OFF" ] + cmakeFlags = + lib.optionals stdenv.hostPlatform.isDarwin [ "-DWITH_PROCPS=OFF" ] + ++ lib.optionals (stdenv.hostPlatform.isDarwin || !stdenv.hostPlatform.isx86) [ + "-DWITH_SUPERCOP=OFF" + ] ++ lib.optionals (!stdenv.hostPlatform.isx86) [ "-DCURVE=ALT_BN128" ]; src = fetchFromGitHub { rev = "9e6b19ff15bc19fba5da1707ba18e7f160e5ed07"; - owner = "scipr-lab"; - repo = "libsnark"; - sha256 = "13f02qp2fmfhvxlp4xi69m0l8r5nq913l2f0zwdk7hl46lprfdca"; + owner = "scipr-lab"; + repo = "libsnark"; + sha256 = "13f02qp2fmfhvxlp4xi69m0l8r5nq913l2f0zwdk7hl46lprfdca"; fetchSubmodules = true; }; From 44b6270df6ede9b6e1d17c0c41223566f0c3e9ca Mon Sep 17 00:00:00 2001 From: Fernando Rodrigues Date: Sat, 2 Nov 2024 17:20:39 +0000 Subject: [PATCH 3/5] libsnark: unstable-2018-01-15 -> 20140603-unstable-2024-02-23 Signed-off-by: Fernando Rodrigues --- pkgs/by-name/li/libsnark/package.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/li/libsnark/package.nix b/pkgs/by-name/li/libsnark/package.nix index 5a3b36989f7e..2c070639b055 100644 --- a/pkgs/by-name/li/libsnark/package.nix +++ b/pkgs/by-name/li/libsnark/package.nix @@ -10,9 +10,9 @@ procps, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation { pname = "libsnark"; - version = "unstable-2018-01-15"; + version = "20140603-unstable-2024-02-23"; nativeBuildInputs = [ cmake @@ -32,10 +32,10 @@ stdenv.mkDerivation rec { ++ lib.optionals (!stdenv.hostPlatform.isx86) [ "-DCURVE=ALT_BN128" ]; src = fetchFromGitHub { - rev = "9e6b19ff15bc19fba5da1707ba18e7f160e5ed07"; owner = "scipr-lab"; repo = "libsnark"; - sha256 = "13f02qp2fmfhvxlp4xi69m0l8r5nq913l2f0zwdk7hl46lprfdca"; + rev = "6c705e3135f585c222813654caedc86520fda1f6"; + hash = "sha256-5Gk24fwVaXBWEFmhTsN9Qm8x/Qpr1KjavI3staJidxQ="; fetchSubmodules = true; }; From a8873dec444ccfcf47caf0afc5e65031bb737101 Mon Sep 17 00:00:00 2001 From: Fernando Rodrigues Date: Sat, 2 Nov 2024 17:21:05 +0000 Subject: [PATCH 4/5] libsnark: remove nested `with lib;` in meta Signed-off-by: Fernando Rodrigues --- pkgs/by-name/li/libsnark/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/li/libsnark/package.nix b/pkgs/by-name/li/libsnark/package.nix index 2c070639b055..9fe0ae7e5e5f 100644 --- a/pkgs/by-name/li/libsnark/package.nix +++ b/pkgs/by-name/li/libsnark/package.nix @@ -39,10 +39,10 @@ stdenv.mkDerivation { fetchSubmodules = true; }; - meta = with lib; { + meta = { description = "C++ library for zkSNARKs"; homepage = "https://github.com/scipr-lab/libsnark"; - license = licenses.mit; - platforms = lib.platforms.linux ++ lib.platforms.darwin; + license = lib.licenses.mit; + platforms = lib.platforms.all; }; } From e79ff6a49d302b2e064135f611c5ffc821b95eed Mon Sep 17 00:00:00 2001 From: Fernando Rodrigues Date: Sat, 2 Nov 2024 17:22:01 +0000 Subject: [PATCH 5/5] libsnark: mark broken if procps is used CMake can't find procps' pkg-config file, leading to a build failure. It's an optional feature which is already disabled in Darwin, so it's probably not that much of an issue to remove it. Signed-off-by: Fernando Rodrigues --- pkgs/by-name/li/libsnark/package.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/li/libsnark/package.nix b/pkgs/by-name/li/libsnark/package.nix index 9fe0ae7e5e5f..199ab79c169b 100644 --- a/pkgs/by-name/li/libsnark/package.nix +++ b/pkgs/by-name/li/libsnark/package.nix @@ -7,6 +7,7 @@ openssl, boost, gmp, + withProcps ? false, procps, }: @@ -22,10 +23,10 @@ stdenv.mkDerivation { openssl boost gmp - ] ++ lib.optional stdenv.hostPlatform.isLinux procps; + ] ++ lib.optional withProcps procps; cmakeFlags = - lib.optionals stdenv.hostPlatform.isDarwin [ "-DWITH_PROCPS=OFF" ] + lib.optionals (!withProcps) [ "-DWITH_PROCPS=OFF" ] ++ lib.optionals (stdenv.hostPlatform.isDarwin || !stdenv.hostPlatform.isx86) [ "-DWITH_SUPERCOP=OFF" ] @@ -40,6 +41,7 @@ stdenv.mkDerivation { }; meta = { + broken = withProcps; # Despite procps having a valid pkg-config file, CMake doesn't seem to be able to find it. description = "C++ library for zkSNARKs"; homepage = "https://github.com/scipr-lab/libsnark"; license = lib.licenses.mit;