{ lib, buildPythonPackage, rustPlatform, fetchFromGitHub, pytestCheckHook, pkgs, }: buildPythonPackage rec { pname = "yara-x"; version = "1.14.0"; pyproject = true; src = fetchFromGitHub { owner = "VirusTotal"; repo = "yara-x"; tag = "v${version}"; hash = "sha256-gGkBmJoUa9WiIozSwhe18N8i5uSiKsSQ3J1NAT41ro4="; }; buildAndTestSubdir = "py"; cargoDeps = rustPlatform.fetchCargoVendor { inherit pname src version; hash = "sha256-j+sIxYPvkI1EnAN7LcBoS4m04rYdKlK48tGO0uFa7KU="; }; nativeBuildInputs = [ rustPlatform.cargoSetupHook rustPlatform.maturinBuildHook ]; buildInputs = [ pkgs.yara-x ]; pythonImportsCheck = [ "yara_x" ]; nativeCheckInputs = [ pytestCheckHook ]; meta = { description = "Official Python library for YARA-X"; homepage = "https://github.com/VirusTotal/yara-x/tree/main/py"; changelog = "https://github.com/VirusTotal/yara-x/tree/${src.tag}/py"; license = lib.licenses.bsd3; maintainers = with lib.maintainers; [ ivyfanchiang lesuisse ]; }; }