{ lib, buildPythonPackage, rustPlatform, fetchFromGitHub, pythonOlder, pytestCheckHook, pkgs, }: buildPythonPackage rec { pname = "yara-x"; version = "1.7.1"; pyproject = true; disabled = pythonOlder "3.9"; src = fetchFromGitHub { owner = "VirusTotal"; repo = "yara-x"; tag = "v${version}"; hash = "sha256-Ux7BA5LH1HN7Kq84UQw7n7Ad/LmHekdWkLaUIxvp5g8="; }; buildAndTestSubdir = "py"; cargoDeps = rustPlatform.fetchCargoVendor { inherit pname src version; hash = "sha256-o9m1zPDhn5ZxBonQMTFp19jUYMInwW9r/O8UwQpExqk="; }; 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/v${version}/py"; license = lib.licenses.bsd3; maintainers = with lib.maintainers; [ ivyfanchiang ]; }; }