Subject: [bug#51047] Subject: [PATCH] gnu: Add python-ropgadget.

From: phodina <[email-masked]>
Date: Tue, 05 Oct 2021 23:08:58 +0000

Hi,

I had to put this package into engineering.scm as it depends on python-capstone and therefore placing it into python-xyz.scm and importing engineering creates circular dependency.

Petr

--8<---------------cut here---------------start------------->8---

* gnu/packages/python-xyz.scm (python-ropgadget): New variable.

diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index 073d524955..f891b25696 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -1595,6 +1595,26 @@ bindings for Python, Java, OCaml and more.")
 bootloader in Espressif ESP8266 & ESP32 series chips.")
     (license license:gpl2+)))

+(define-public python-ropgadget
+  (package
+    (name "python-ropgadget")
+    (version "6.6")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "ROPGadget" version))
+        (sha256
+          (base32
+            "08ms7x4af07970ij9899l75sghnxsa7xyx73gkn6gv0l05p1hqfw"))))
+    (build-system python-build-system)
+    (propagated-inputs
+      `(("python-capstone" ,python-capstone)))
+    (home-page "https://github.com/JonathanSalwan/ROPgadget")
+    (synopsis "Search binaries to facilitate ROP exploitation")
+    (description "This tool lets you search your gadgets on binaries
+to facilitate your ROP exploitation.")
+    (license license:bsd-3)))
+
 (define-public radare2
   (package
     (name "radare2")
--
2.32.0