summary refs log tree commit diff
path: root/gnu/packages/engineering.scm
diff options
context:
space:
mode:
authorJovany Leandro G.C <bit4bit@riseup.net>2019-07-20 06:30:22 -0500
committerMarius Bakke <mbakke@fastmail.com>2019-08-08 20:14:14 +0200
commit5cded306f92a8641259909ee986e583168b85b17 (patch)
tree7d44e9e3e640e310034cac5a6d63518bbf8fe232 /gnu/packages/engineering.scm
parentae54a4c0ef830333dc6db88dac441dbd388b6d27 (diff)
downloadguix-5cded306f92a8641259909ee986e583168b85b17.tar.gz
gnu: Add cutter.
* gnu/packages/engineering.scm (cutter): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
Diffstat (limited to 'gnu/packages/engineering.scm')
-rw-r--r--gnu/packages/engineering.scm47
1 files changed, 47 insertions, 0 deletions
diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index 7d48414889..a1f222bed4 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -11,6 +11,7 @@
 ;;; Copyright © 2018, 2019 Jonathan Brielmaier <jonathan.brielmaier@web.de>
 ;;; Copyright © 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2019 Tim Stahel <swedneck@swedneck.xyz>
+;;; Copyright © 2019 Jovany Leandro G.C <bit4bit@riseup.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -2062,3 +2063,49 @@ purpose circuit simulator and can perform DC and transient analyses, fourier
 analysis and AC analysis.  The engine is designed to do true mixed-mode
 simulation.")
     (license license:gpl3+)))
+
+(define-public cutter
+  (package
+    (name "cutter")
+    (version "1.8.3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/radareorg/cutter")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "03f3cdckh51anx9gd1b0ndb2fg7061hqngvygf32ky29mm2m2lyv"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'configure
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out"))
+                   (radare2 (assoc-ref inputs "radare2")))
+               ;; fix pkg-config detection ./src/lib_radare2.pri:PREFIX=/usr/lib
+               ;; override `qmake PREFIX=`
+               (substitute* "./src/lib_radare2.pri"
+                 (("PREFIX") "R2PREFIX")
+                 (("R2PREFIX=/usr") (string-append "R2PREFIX=" radare2)))
+               (invoke "qmake"
+                       (string-append "PREFIX=" out)
+                       "./src/Cutter.pro")))))))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (inputs
+     `(("qtbase" ,qtbase)
+       ("qtsvg" ,qtsvg)
+       ("openssl" ,openssl)
+       ("radare2" ,radare2)))
+    (home-page "https://github.com/radareorg/cutter")
+    (synopsis "GUI for radare2 reverse engineering framework")
+    (description "Cutter is a GUI for radare2 reverse engineering framework.
+Its goal is making an advanced andcustomizable reverse-engineering platform
+while keeping the user experience at mind.  Cutter is created by reverse
+engineers for reverse engineers.")
+    (license (list license:cc-by-sa3.0  ;the "Iconic" icon set
+                   license:gpl3+))))    ;everything else