summary refs log tree commit diff
diff options
context:
space:
mode:
authorVagrant Cascadian <vagrant@debian.org>2019-09-19 10:23:47 -0700
committerVagrant Cascadian <vagrant@debian.org>2019-09-19 10:56:33 -0700
commitf315673d9e56f4f2398098590ebdc080b63ce8b1 (patch)
tree2f3094889b4886e2b72e15672d882eb011da0368
parent664aa1844cae6e5175ace879301cd81b83c8cc89 (diff)
downloadguix-f315673d9e56f4f2398098590ebdc080b63ce8b1.tar.gz
gnu: Add python-binwalk.
* gnu/packages/python-xyz (python-binwalk): New variable.
* gnu/packages/diffoscope (diffoscope)[native-inputs]: Add python-binwalk for
  tests.
-rw-r--r--gnu/packages/diffoscope.scm1
-rw-r--r--gnu/packages/python-xyz.scm36
2 files changed, 37 insertions, 0 deletions
diff --git a/gnu/packages/diffoscope.scm b/gnu/packages/diffoscope.scm
index 59a15205c0..17a2d212e5 100644
--- a/gnu/packages/diffoscope.scm
+++ b/gnu/packages/diffoscope.scm
@@ -150,6 +150,7 @@
       ;; Below are modules used for tests.
       (native-inputs `(("python-pytest" ,python-pytest)
                        ("python-chardet" ,python-chardet)
+                       ("python-binwalk" ,python-binwalk)
                        ;; test suite skips tests when tool is missing
                        ("abootimg" ,abootimg)
                        ("bdb" ,bdb)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 5c261cc6fd..601e4b13df 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -10868,6 +10868,42 @@ binary or text.")
        `(("python2-enum34" ,python2-enum34)
          ,@(package-propagated-inputs base))))))
 
+(define-public python-binwalk
+  (let ((commit "64201acfb5b0a9cdd9faa58c40a36dcff8612e29")
+        (revision "0"))
+    (package
+      (name "python-binwalk")
+      (version (git-version "2.1.1" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/ReFirmLabs/binwalk")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32
+           "1z7ca6rfp887hw5jc3sb45mm4fa0xid4lsp2z8g4r590dr7k7w15"))))
+      (build-system python-build-system)
+      (arguments
+       `(#:phases
+         (modify-phases %standard-phases
+           (add-before 'check 'set-pythonpath
+             (lambda _
+               (setenv "PYTHONPATH"
+                       (string-append
+                        (getcwd) "/src/"
+                        ":" (getenv "PYTHONPATH")))
+               (setenv "HOME" "")
+               #t)))))
+      (native-inputs
+       `(("python-coverage" ,python-coverage)
+         ("python-nose" ,python-nose)))
+      (home-page "https://github.com/ReFirmLabs/binwalk")
+      (synopsis "Firmware analysis tool")
+      (description "Binwalk is a tool for analyzing, reverse engineering, and extracting firmware images")
+      (license license:expat))))
+
 (define-public python-nltk
   (package
     (name "python-nltk")