at master 1.5 kB view raw
1{ 2 lib, 3 stdenv, 4 arc4, 5 asn1crypto, 6 asn1tools, 7 asyauth, 8 asysocks, 9 buildPythonPackage, 10 cargo, 11 colorama, 12 fetchFromGitHub, 13 iconv, 14 pillow, 15 pyperclip, 16 rustPlatform, 17 rustc, 18 setuptools, 19 setuptools-rust, 20 tqdm, 21 unicrypto, 22}: 23 24buildPythonPackage rec { 25 pname = "aardwolf"; 26 version = "0.2.13"; 27 pyproject = true; 28 29 src = fetchFromGitHub { 30 owner = "skelsec"; 31 repo = "aardwolf"; 32 tag = version; 33 hash = "sha256-8QXPvfVeT3qadxTvt/LQX3XM5tGj6SpfOhP/9xcZHW4="; 34 }; 35 36 cargoDeps = rustPlatform.fetchCargoVendor { 37 inherit pname version src; 38 sourceRoot = "${src.name}/aardwolf/utils/rlers"; 39 hash = "sha256-+2hENnrG35eRgQwtCCJUux9mYEkzD2astLgOqWHrH/M="; 40 }; 41 42 cargoRoot = "aardwolf/utils/rlers"; 43 44 build-system = [ 45 setuptools 46 setuptools-rust 47 ]; 48 49 nativeBuildInputs = [ 50 rustPlatform.cargoSetupHook 51 cargo 52 rustc 53 ]; 54 55 dependencies = [ 56 arc4 57 asn1crypto 58 asn1tools 59 asyauth 60 asysocks 61 colorama 62 pillow 63 pyperclip 64 tqdm 65 unicrypto 66 ] 67 ++ lib.optionals (stdenv.hostPlatform.isDarwin) [ iconv ]; 68 69 # Module doesn't have tests 70 doCheck = false; 71 72 pythonImportsCheck = [ "aardwolf" ]; 73 74 meta = with lib; { 75 description = "Asynchronous RDP protocol implementation"; 76 mainProgram = "ardpscan"; 77 homepage = "https://github.com/skelsec/aardwolf"; 78 changelog = "https://github.com/skelsec/aardwolf/releases/tag/${version}"; 79 license = licenses.mit; 80 maintainers = with maintainers; [ fab ]; 81 }; 82}