From f16b4d91726d59fb8f14ef8160c4753b1ae81636 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 18 Jan 2022 21:16:11 +0100 Subject: [PATCH 1/9] python3Packages.itanium_demangler: switch to pytestCheckHook --- .../itanium_demangler/default.nix | 30 +++++++++++-------- 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/pkgs/development/python-modules/itanium_demangler/default.nix b/pkgs/development/python-modules/itanium_demangler/default.nix index c67259eee0f6..ade063a625ae 100644 --- a/pkgs/development/python-modules/itanium_demangler/default.nix +++ b/pkgs/development/python-modules/itanium_demangler/default.nix @@ -1,30 +1,36 @@ -{ buildPythonPackage +{ lib +, buildPythonPackage , fetchFromGitHub -, lib -, pytest +, pytestCheckHook }: buildPythonPackage rec { - pname = "itanium_demangler"; + pname = "itanium-demangler"; version = "1.0"; # pulled from pypi version src = fetchFromGitHub { owner = "whitequark"; - repo = "python-${pname}"; + repo = "python-itanium_demangler"; rev = "29c77860be48e6dafe3496e4d9d0963ce414e366"; - sha256 = "0qm95l6542nk63986w9lgzkxg824l31714i584s02rh9xwfg1xfx"; + hash = "sha256-3fXwHO8JZgE0QSWScMKgRKDX5380cYPSMNMKUgwtqWI="; }; - checkInputs = [ pytest ]; + checkInputs = [ + pytestCheckHook + ]; - checkPhase = '' - pytest tests/test.py - ''; + pytestFlagsArray = [ + "tests/test.py" + ]; + + pythonImportsCheck = [ + " itanium_demangler " + ]; meta = with lib; { - description = "A pure Python parser for the Itanium C++ ABI symbol mangling language"; + description = "Python parser for the Itanium C++ ABI symbol mangling language"; homepage = "https://github.com/whitequark/python-itanium_demangler"; license = licenses.bsd0; - maintainers = [ maintainers.pamplemousse ]; + maintainers = with maintainers; [ pamplemousse ]; }; } From 59fd9386093c755303d17d8a97ddb9d491f5138b Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 18 Jan 2022 21:35:33 +0100 Subject: [PATCH 2/9] python3Packages.archinfo: 9.1.10913 -> 9.1.11508 --- pkgs/development/python-modules/archinfo/default.nix | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/archinfo/default.nix b/pkgs/development/python-modules/archinfo/default.nix index ce7bfb1668f1..beae6671be4a 100644 --- a/pkgs/development/python-modules/archinfo/default.nix +++ b/pkgs/development/python-modules/archinfo/default.nix @@ -3,17 +3,21 @@ , fetchFromGitHub , pytestCheckHook , nose +, pythonOlder }: buildPythonPackage rec { pname = "archinfo"; - version = "9.1.10913"; + version = "9.1.11508"; + format = "setuptools"; + + disabled = pythonOlder "3.6"; src = fetchFromGitHub { owner = "angr"; repo = pname; rev = "v${version}"; - sha256 = "sha256-VLFbjKX7WXWoJCS9hYwtEikGC48gRg7E24D9Un+/gdc="; + hash = "sha256-r21n0rbHxb/e34PGpbA5KpnILFtmkXThBWbASChvVs0="; }; checkInputs = [ @@ -21,7 +25,9 @@ buildPythonPackage rec { pytestCheckHook ]; - pythonImportsCheck = [ "archinfo" ]; + pythonImportsCheck = [ + "archinfo" + ]; meta = with lib; { description = "Classes with architecture-specific information"; From 062899d7255fe613fbf8b024481a0f627359af0b Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 18 Jan 2022 21:42:55 +0100 Subject: [PATCH 3/9] python3Packages.pyvex: 9.1.10913 -> 9.1.11508 --- .../python-modules/pyvex/default.nix | 32 +++++++++++++------ 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/pkgs/development/python-modules/pyvex/default.nix b/pkgs/development/python-modules/pyvex/default.nix index 211ba18ae612..7b8aef7ec30d 100644 --- a/pkgs/development/python-modules/pyvex/default.nix +++ b/pkgs/development/python-modules/pyvex/default.nix @@ -7,23 +7,21 @@ , fetchPypi , future , pycparser +, pythonOlder }: buildPythonPackage rec { pname = "pyvex"; - version = "9.1.10913"; + version = "9.1.11508"; + format = "setuptools"; + + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "sha256-EUgCyjD5ia5KQMvZWVAsXeKRjmSVE7tRRYH5u/Ozug0="; + hash = "sha256-FNCAvag0ErVjzgXqiwDnX80WnjUdnWHtcLYuanlj0ME="; }; - postPatch = lib.optionalString stdenv.isDarwin '' - substituteInPlace vex/Makefile-gcc --replace '/usr/bin/ar' 'ar' - ''; - - setupPyBuildFlags = lib.optionals stdenv.isLinux [ "--plat-name" "linux" ]; - propagatedBuildInputs = [ archinfo bitstring @@ -32,15 +30,29 @@ buildPythonPackage rec { pycparser ]; + postPatch = lib.optionalString stdenv.isDarwin '' + substituteInPlace vex/Makefile-gcc \ + --replace '/usr/bin/ar' 'ar' + ''; + + setupPyBuildFlags = lib.optionals stdenv.isLinux [ + "--plat-name" + "linux" + ]; + preBuild = '' export CC=${stdenv.cc.targetPrefix}cc - substituteInPlace pyvex_c/Makefile --replace 'AR=ar' 'AR=${stdenv.cc.targetPrefix}ar' + substituteInPlace pyvex_c/Makefile \ + --replace 'AR=ar' 'AR=${stdenv.cc.targetPrefix}ar' ''; # No tests are available on PyPI, GitHub release has tests # Switch to GitHub release after all angr parts are present doCheck = false; - pythonImportsCheck = [ "pyvex" ]; + + pythonImportsCheck = [ + "pyvex" + ]; meta = with lib; { description = "Python interface to libVEX and VEX IR"; From f021c32c43aa6e7d1a40a6c6fc35ab9b49af928f Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 18 Jan 2022 22:01:46 +0100 Subject: [PATCH 4/9] python3Packages.claripy: 9.1.10913 -> 9.1.11508 --- .../python-modules/claripy/default.nix | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/pkgs/development/python-modules/claripy/default.nix b/pkgs/development/python-modules/claripy/default.nix index d96d684e3e18..f026f39ccf0f 100644 --- a/pkgs/development/python-modules/claripy/default.nix +++ b/pkgs/development/python-modules/claripy/default.nix @@ -13,21 +13,18 @@ buildPythonPackage rec { pname = "claripy"; - version = "9.1.10913"; + version = "9.1.11508"; + format = "setuptools"; + disabled = pythonOlder "3.6"; src = fetchFromGitHub { owner = "angr"; repo = pname; rev = "v${version}"; - sha256 = "sha256-66dc0y4mu5S5PtTx2fRkBdpNlH53ZpTiKyM3s0OUamw="; + sha256 = "sha256-xCtITYRiIBtJQ8FIr0NJC30YWoU8iZ4gMGv2blnFNIk="; }; - # Use upstream z3 implementation - postPatch = '' - substituteInPlace setup.py --replace "z3-solver>=4.8.5.0" "" - ''; - propagatedBuildInputs = [ cachetools decorator @@ -41,7 +38,15 @@ buildPythonPackage rec { pytestCheckHook ]; - pythonImportsCheck = [ "claripy" ]; + postPatch = '' + # Use upstream z3 implementation + substituteInPlace setup.py \ + --replace "z3-solver>=4.8.5.0" "" + ''; + + pythonImportsCheck = [ + "claripy" + ]; meta = with lib; { description = "Python abstraction layer for constraint solvers"; From 76ec031a9070ac985674811b7df44ee33363bc68 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 18 Jan 2022 22:06:08 +0100 Subject: [PATCH 5/9] python3Packages.cle: 9.1.10913 -> 9.1.11508 --- pkgs/development/python-modules/cle/default.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/cle/default.nix b/pkgs/development/python-modules/cle/default.nix index 212267b00752..abe85946260f 100644 --- a/pkgs/development/python-modules/cle/default.nix +++ b/pkgs/development/python-modules/cle/default.nix @@ -15,7 +15,7 @@ let # The binaries are following the argr projects release cycle - version = "9.1.10913"; + version = "9.1.11508"; # Binary files from https://github.com/angr/binaries (only used for testing and only here) binaries = fetchFromGitHub { @@ -29,13 +29,15 @@ in buildPythonPackage rec { pname = "cle"; inherit version; + format = "setuptools"; + disabled = pythonOlder "3.6"; src = fetchFromGitHub { owner = "angr"; repo = pname; rev = "v${version}"; - sha256 = "sha256-z8hBOqeI7T6Rov00OySDBdzUQ6jeBRseE7sz8VfIJmk="; + hash = "sha256-/5GKuf+nmt1/M6yAhZy9+itMnIVUGHP7BqEIxjNjep8="; }; propagatedBuildInputs = [ From 71afea9bdf4fa6a58efec8bdc74873bfc6c603f9 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 18 Jan 2022 22:13:21 +0100 Subject: [PATCH 6/9] python3Packages.ailment: 9.1.10913 -> 9.1.11508 --- pkgs/development/python-modules/ailment/default.nix | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/ailment/default.nix b/pkgs/development/python-modules/ailment/default.nix index ca74671ab81a..b51f5f165624 100644 --- a/pkgs/development/python-modules/ailment/default.nix +++ b/pkgs/development/python-modules/ailment/default.nix @@ -7,20 +7,25 @@ buildPythonPackage rec { pname = "ailment"; - version = "9.1.10913"; + version = "9.1.11508"; + format = "setuptools"; + disabled = pythonOlder "3.6"; src = fetchFromGitHub { owner = "angr"; repo = pname; rev = "v${version}"; - sha256 = "sha256-S+ntSC9KySj2njkxEkr7p2TDsBqY0Gf+zzwomnGwSEk="; + hash = "sha256-ZT3rMzWwMG1tpPcpOqGvlFt0nuiPD0d3nECVDC7XDv8="; }; - propagatedBuildInputs = [ pyvex ]; + propagatedBuildInputs = [ + pyvex + ]; # Tests depend on angr (possibly a circular dependency) doCheck = false; + #pythonImportsCheck = [ "ailment" ]; meta = with lib; { From dfe095b5b59c79c18b60a717a29661951f98e7b4 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 18 Jan 2022 22:20:08 +0100 Subject: [PATCH 7/9] python3Packages.angr: 9.1.10913 -> 9.1.11508 python3Packages.angr: 9.1.10913 -> 9.1.11508 --- .../python-modules/angr/default.nix | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/pkgs/development/python-modules/angr/default.nix b/pkgs/development/python-modules/angr/default.nix index 4468dfabecd0..55153f5cf44d 100644 --- a/pkgs/development/python-modules/angr/default.nix +++ b/pkgs/development/python-modules/angr/default.nix @@ -22,6 +22,7 @@ , pycparser , pythonOlder , pyvex +, sympy , sqlalchemy , rpyc , sortedcontainers @@ -45,18 +46,18 @@ in buildPythonPackage rec { pname = "angr"; - version = "9.1.10913"; + version = "9.1.11508"; + format = "setuptools"; + disabled = pythonOlder "3.6"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "v${version}"; - sha256 = "sha256-AZlqSalTOQh3QR959ZuanFuTZVKi9valKJ3snsquC/A="; + hash = "sha256-8Cuh+QxKU3wYRRDYrMXPrzp4yg1pyH4QbJeEsTHDZqA="; }; - setupPyBuildFlags = lib.optionals stdenv.isLinux [ "--plat-name" "linux" ]; - propagatedBuildInputs = [ ailment archinfo @@ -75,20 +76,24 @@ buildPythonPackage rec { progressbar2 protobuf psutil - sqlalchemy pycparser pyvex - sqlalchemy rpyc sortedcontainers + sqlalchemy + sympy unicorn' ]; + setupPyBuildFlags = lib.optionals stdenv.isLinux [ + "--plat-name" + "linux" + ]; + # Tests have additional requirements, e.g., pypcode and angr binaries # cle is executing the tests with the angr binaries doCheck = false; - # See http://angr.io/api-doc/ pythonImportsCheck = [ "angr" "claripy" From 3373c1b4da4280b6ffb43e065bfbfc56842c2364 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 18 Jan 2022 22:42:02 +0100 Subject: [PATCH 8/9] python3Packages.angrcli: cleanup --- pkgs/development/python-modules/angrcli/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/angrcli/default.nix b/pkgs/development/python-modules/angrcli/default.nix index bad2bb01bf8a..25781fbcd3a1 100644 --- a/pkgs/development/python-modules/angrcli/default.nix +++ b/pkgs/development/python-modules/angrcli/default.nix @@ -20,7 +20,7 @@ buildPythonPackage rec { owner = "fmagin"; repo = "angr-cli"; rev = "v${version}"; - sha256 = "sha256-a5ajUBQwt3xUNkeSOeGOAFf47wd4UVk+LcuAHGqbq4s="; + hash = "sha256-a5ajUBQwt3xUNkeSOeGOAFf47wd4UVk+LcuAHGqbq4s="; }; propagatedBuildInputs = [ From 52587ae5954101faea8e1c4c55aad8864398bbb0 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 18 Jan 2022 22:43:59 +0100 Subject: [PATCH 9/9] python3Packages.angrop: 9.1.10913 -> 9.1.11508 --- pkgs/development/python-modules/angrop/default.nix | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/angrop/default.nix b/pkgs/development/python-modules/angrop/default.nix index 7989a06b60ef..20272b35ca8b 100644 --- a/pkgs/development/python-modules/angrop/default.nix +++ b/pkgs/development/python-modules/angrop/default.nix @@ -9,14 +9,16 @@ buildPythonPackage rec { pname = "angrop"; - version = "9.1.10913"; + version = "9.1.11508"; + format = "setuptools"; + disabled = pythonOlder "3.6"; src = fetchFromGitHub { owner = "angr"; repo = pname; rev = "v${version}"; - sha256 = "sha256-8M3d8lG7jDNgICjzjFRi9Wl2I7aYI5b5IvjEhixsk9k="; + hash = "sha256-lAPruvMLCQD1TwQBlKZnLrCEkrKf676dK++e7fBmPQA="; }; propagatedBuildInputs = [ @@ -28,7 +30,10 @@ buildPythonPackage rec { # Tests have additional requirements, e.g., angr binaries # cle is executing the tests with the angr binaries already and is a requirement of angr doCheck = false; - pythonImportsCheck = [ "angrop" ]; + + pythonImportsCheck = [ + "angrop" + ]; meta = with lib; { description = "ROP gadget finder and chain builder";