diff --git a/pkgs/development/python-modules/pyqodeng-angr/default.nix b/pkgs/development/python-modules/pyqodeng-angr/default.nix new file mode 100644 index 000000000000..d0a57da32491 --- /dev/null +++ b/pkgs/development/python-modules/pyqodeng-angr/default.nix @@ -0,0 +1,59 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + future, + pygments, + pyside6, + pytestCheckHook, + pytest-xdist, + qtpy, + setuptools, + wheel, +}: + +buildPythonPackage rec { + pname = "pyqodeng-angr"; + version = "0.0.11"; + pyproject = true; + + src = fetchFromGitHub { + owner = "angr"; + repo = "pyqodeng"; + tag = "v${version}"; + hash = "sha256-QA/h5CHGrv3HYIrRaJ1Eq+iXXmQ6dYbq2zixeO9rS1c="; + }; + + postPatch = '' + substituteInPlace setup.py \ + --replace-quiet 'PySide6-Essentials' 'PySide6' + ''; + + build-system = [ setuptools ]; + + dependencies = [ + pygments + future + qtpy + pyside6 + ]; + + # Tests appear to be broken with pyside6 + doCheck = false; + + nativeCheckInputs = [ + pytest-xdist + pytestCheckHook + pyside6 + ]; + + pythonImportsCheck = [ "pyqodeng" ]; + + meta = { + description = "Angr's fork of pyQode.core, used as part of angr management"; + homepage = "https://github.com/angr/pyqodeng"; + changelog = "https://github.com/angr/pyqodeng/blob/${src.rev}/CHANGELOG.rst"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ scoder12 ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index cfacc63e518b..4954b05855a1 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -14039,6 +14039,8 @@ self: super: with self; { pypytools = callPackage ../development/python-modules/pypytools { }; + pyqodeng-angr = callPackage ../development/python-modules/pyqodeng-angr { }; + pyqrcode = callPackage ../development/python-modules/pyqrcode { }; pyqt-builder = callPackage ../development/python-modules/pyqt-builder { };