Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at gcc-offload 94 lines 2.2 kB view raw
1{ 2 lib, 3 stdenv, 4 buildPythonPackage, 5 chardet, 6 colorama, 7 distutils, 8 fetchFromGitHub, 9 netaddr, 10 pycurl, 11 pyparsing, 12 pytestCheckHook, 13 pythonOlder, 14 setuptools, 15 six, 16 fetchpatch2, 17}: 18 19buildPythonPackage rec { 20 pname = "wfuzz"; 21 version = "3.1.0"; 22 pyproject = true; 23 24 disabled = pythonOlder "3.7"; 25 26 src = fetchFromGitHub { 27 owner = "xmendez"; 28 repo = "wfuzz"; 29 rev = "refs/tags/v${version}"; 30 hash = "sha256-RM6QM/iR00ymg0FBUtaWAtxPHIX4u9U/t5N/UT/T6sc="; 31 }; 32 33 patches = [ 34 # replace use of imp module for Python 3.12 35 # https://github.com/xmendez/wfuzz/pull/365 36 (fetchpatch2 { 37 url = "https://github.com/xmendez/wfuzz/commit/f4c028b9ada4c36dabf3bc752f69f6ddc110920f.patch?full_index=1"; 38 hash = "sha256-t7pUMcdFmwAsGUNBRdZr+Jje/yR0yzeGIgeYNEq4hFE="; 39 }) 40 ]; 41 42 postPatch = '' 43 substituteInPlace setup.py \ 44 --replace-fail "pyparsing>=2.4*" "pyparsing>=2.4" 45 ''; 46 47 build-system = [ setuptools ]; 48 49 dependencies = [ 50 chardet 51 distutils # src/wfuzz/plugin_api/base.py 52 pycurl 53 six 54 setuptools 55 pyparsing 56 ] ++ lib.optionals stdenv.hostPlatform.isWindows [ colorama ]; 57 58 nativeCheckInputs = [ 59 netaddr 60 pytestCheckHook 61 ]; 62 63 preCheck = '' 64 export HOME=$(mktemp -d) 65 ''; 66 67 disabledTestPaths = [ 68 # The tests are requiring a local web server 69 "tests/test_acceptance.py" 70 "tests/acceptance/test_saved_filter.py" 71 # depends on imp module removed from Python 3.12 72 "tests/test_moduleman.py" 73 ]; 74 75 pythonImportsCheck = [ "wfuzz" ]; 76 77 postInstall = '' 78 mkdir -p $out/share/wordlists/wfuzz 79 cp -R -T "wordlist" "$out/share/wordlists/wfuzz" 80 ''; 81 82 meta = with lib; { 83 changelog = "https://github.com/xmendez/wfuzz/releases/tag/v${version}"; 84 description = "Web content fuzzer to facilitate web applications assessments"; 85 longDescription = '' 86 Wfuzz provides a framework to automate web applications security assessments 87 and could help you to secure your web applications by finding and exploiting 88 web application vulnerabilities. 89 ''; 90 homepage = "https://wfuzz.readthedocs.io"; 91 license = with licenses; [ gpl2Only ]; 92 maintainers = with maintainers; [ pamplemousse ]; 93 }; 94}