{ lib, asn1crypto, buildPythonPackage, cryptography, dnspython, fetchFromGitHub, hatchling, minikerberos, msldap, pyasn1, pytestCheckHook, pythonOlder, winacl, }: buildPythonPackage rec { pname = "bloodyad"; version = "2.1.9"; pyproject = true; disabled = pythonOlder "3.8"; src = fetchFromGitHub { owner = "CravateRouge"; repo = "bloodyAD"; tag = "v${version}"; hash = "sha256-XqCP2GfS8hxlFU4Mndeh+7Ll2kXJ3Dei+AGp/oy0PUg="; }; pythonRelaxDeps = [ "cryptography" ]; build-system = [ hatchling ]; dependencies = [ asn1crypto cryptography dnspython minikerberos msldap winacl ]; nativeCheckInputs = [ pytestCheckHook ]; pythonImportsCheck = [ "bloodyAD" ]; disabledTests = [ # Tests require network access "test_01AuthCreateUser" "test_02SearchAndGetChildAndGetWritable" "test_03UacOwnerGenericShadowGroupPasswordDCSync" "test_04ComputerRbcdGetSetAttribute" "test_06AddRemoveGetDnsRecord" ]; meta = with lib; { description = "Module for Active Directory Privilege Escalations"; homepage = "https://github.com/CravateRouge/bloodyAD"; changelog = "https://github.com/CravateRouge/bloodyAD/releases/tag/v${version}"; license = licenses.mit; maintainers = with maintainers; [ fab ]; }; }