Commit a080aa5e authored by Fabian Affolter's avatar Fabian Affolter
Browse files

python3Packages.solders: init at 0.27.1

Python toolkit for Solana

https://github.com/kevinheavey/solders
parent 1f5ab16a
Loading
Loading
Loading
Loading
+70 −0
Original line number Diff line number Diff line
{
  lib,
  buildPythonPackage,
  cargo,
  pkgs,
  fetchFromGitHub,
  jsonalias,
  openssl,
  pkg-config,
  rustc,
  rustPlatform,
  typing-extensions,
}:

buildPythonPackage (finalAttrs: {
  pname = "solders";
  version = "0.27.1";
  pyproject = true;

  src = fetchFromGitHub {
    owner = "kevinheavey";
    repo = "solders";
    tag = "v${finalAttrs.version}";
    hash = "sha256-a3G3mMJvnO24w6WEJnEkYUNinXWHR26KupIlq5eik8A=";
  };

  cargoDeps = rustPlatform.fetchCargoVendor {
    inherit (finalAttrs) pname version src;
    hash = "sha256-+8iaA1Cs+7qiDfQpwPAWSZ1HuF85WaDZB3MN57QOodI=";
  };

  pythonRelaxDeps = [ "jsonalias" ];

  build-system = [
    cargo
    pkg-config
    rustPlatform.cargoSetupHook
    rustPlatform.maturinBuildHook
    rustc
  ];

  buildInputs = [
    openssl
    pkgs.zstd
  ];

  dependencies = [
    jsonalias
    typing-extensions
  ];

  env = {
    OPENSSL_NO_VENDOR = true;
    ZSTD_SYS_USE_PKG_CONFIG = true;
    PKG_CONFIG_PATH = lib.makeSearchPathOutput "dev" "lib/pkgconfig" [
      openssl
      pkgs.zstd
    ];
  };

  pythonImportsCheck = [ "solders" ];

  meta = {
    description = "Python toolkit for Solana";
    homepage = "https://github.com/kevinheavey/solders";
    changelog = "https://github.com/kevinheavey/solders/blob/${finalAttrs.src.rev}/CHANGELOG.md";
    license = lib.licenses.asl20;
    maintainers = with lib.maintainers; [ fab ];
  };
})
+2 −0
Original line number Diff line number Diff line
@@ -18066,6 +18066,8 @@ self: super: with self; {
  solc-select = callPackage ../development/python-modules/solc-select { };
  solders = callPackage ../development/python-modules/solders { };
  solidpython2 = callPackage ../development/python-modules/solidpython2 { };
  solo-python = callPackage ../development/python-modules/solo-python { };