1{ stdenv, buildPythonPackage, fetchPypi, isPy3k
2, Mako, packaging, pysocks, pygments, ROPGadget
3, capstone, paramiko, pip, psutil
4, pyelftools, pyserial, dateutil
5, requests, tox, unicorn, intervaltree, fetchpatch }:
6
7buildPythonPackage rec {
8 version = "3.12.0";
9 pname = "pwntools";
10
11 src = fetchPypi {
12 inherit pname version;
13 sha256 = "09a7yhsyqxb4xf2r6mbn3p5zx1wp89lxq7lj34y4zbin6ns5929s";
14 };
15
16 propagatedBuildInputs = [ Mako packaging pysocks pygments ROPGadget capstone paramiko pip psutil pyelftools pyserial dateutil requests tox unicorn intervaltree ];
17
18 disabled = isPy3k;
19 doCheck = false; # no setuptools tests for the package
20
21 # Can be removed when 3.13.0 is released
22 patches = [
23 (fetchpatch {
24 url = "https://github.com/Gallopsled/pwntools/commit/9859f54a21404174dd17efee02f91521a2dd09c5.patch";
25 sha256 = "0p0h87npn1mwsd8ciab7lg74bk3ahlk5r0mjbvx4jhihl2gjc3z2";
26 })
27 ];
28
29
30 meta = with stdenv.lib; {
31 homepage = "http://pwntools.com";
32 description = "CTF framework and exploit development library";
33 license = licenses.mit;
34 maintainers = with maintainers; [ bennofs kristoff3r ];
35 };
36}