From edfcd37def19e1b5b0feec13560c544ab16f5e19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristoffer=20S=C3=B8holm?= Date: Sun, 26 Jul 2020 16:48:03 +0200 Subject: [PATCH] python: pwntools: 4.1.1 -> 4.2.1 The previous update broke the build, this updates fixes it --- .../python-modules/pwntools/default.nix | 57 ++++++++++++++++--- 1 file changed, 49 insertions(+), 8 deletions(-) diff --git a/pkgs/development/python-modules/pwntools/default.nix b/pkgs/development/python-modules/pwntools/default.nix index e591d4a5f46..c7aae24f1dd 100644 --- a/pkgs/development/python-modules/pwntools/default.nix +++ b/pkgs/development/python-modules/pwntools/default.nix @@ -1,19 +1,60 @@ -{ stdenv, buildPythonPackage, fetchPypi, isPy3k -, Mako, packaging, pysocks, pygments, ROPGadget -, capstone, paramiko, pip, psutil -, pyelftools, pyserial, dateutil -, requests, tox, unicorn, intervaltree, fetchpatch }: +{ stdenv +, buildPythonPackage +, fetchPypi +, isPy3k +, Mako +, packaging +, pysocks +, pygments +, ROPGadget +, capstone +, paramiko +, pip +, psutil +, pyelftools +, pyserial +, dateutil +, requests +, tox +, unicorn +, intervaltree +, fetchpatch +}: buildPythonPackage rec { - version = "4.1.1"; + version = "4.2.1"; pname = "pwntools"; src = fetchPypi { inherit pname version; - sha256 = "694ce7a6cfca0ad40eae36c1d2663c44eb953f84785c63daa9752b4dfa7f39d8"; + sha256 = "1fh7sq9wrcfvn44qryln9cyg99pilvyq9bp80758lgdd6ss6hdqd"; }; - propagatedBuildInputs = [ Mako packaging pysocks pygments ROPGadget capstone paramiko pip psutil pyelftools pyserial dateutil requests tox unicorn intervaltree ]; + # Upstream has set an upper bound on unicorn because of https://github.com/Gallopsled/pwntools/issues/1538, + # but since that is a niche use case and it requires extra work to get unicorn 1.0.2rc3 to work we relax + # the bound here. Check if this is still necessary when updating! + postPatch = '' + sed -i 's/unicorn>=1.0.2rc1,<1.0.2rc4/unicorn>=1.0.2rc1/' setup.py + ''; + + propagatedBuildInputs = [ + Mako + packaging + pysocks + pygments + ROPGadget + capstone + paramiko + pip + psutil + pyelftools + pyserial + dateutil + requests + tox + unicorn + intervaltree + ]; doCheck = false; # no setuptools tests for the package