Subject: bug#57133: closed (Re: bug#57133: [PATCH] gnu: Add rizin.)

From: [email-masked] (GNU bug Tracking System)
Date: Fri, 19 Aug 2022 01:21:01 +0000

Your bug report

#57133: [PATCH] gnu: Add rizin.

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
57133: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=57133
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#57133: [PATCH] gnu: Add rizin.
From: 宋文武 <[email-masked]>
To: Maxime Devos <[email-masked]>
Cc: 宋文武 <[email-masked]>, [email-masked]
Date: Fri, 19 Aug 2022 09:20:13 +0800
List-Id: <debbugs-submit.debbugs.gnu.org>

Pushed now!

Subject: [PATCH] gnu: Add rizin.
From: [email-masked]
To: [email-masked]
Cc: 宋文武 <[email-masked]>
Date: Thu, 11 Aug 2022 14:37:49 +0800
List-Id: <debbugs-submit.debbugs.gnu.org>

From: 宋文武 <[email-masked]>

* gnu/packages/engineering.scm (rizin): New variable.
---
 gnu/packages/engineering.scm | 68 ++++++++++++++++++++++++++++++++++++
 1 file changed, 68 insertions(+)

diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index ed87cd8d6a..7752e92f09 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -67,6 +67,7 @@ (define-module (gnu packages engineering)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system emacs)
   #:use-module (guix build-system gnu)
+  #:use-module (guix build-system meson)
   #:use-module (guix build-system python)
   #:use-module (guix build-system qt)
   #:use-module (gnu packages)
@@ -88,6 +89,7 @@ (define-module (gnu packages engineering)
   #:use-module (gnu packages digest)
   #:use-module (gnu packages docbook)
   #:use-module (gnu packages documentation)
+  #:use-module (gnu packages file)
   #:use-module (gnu packages flex)
   #:use-module (gnu packages fontutils)
   #:use-module (gnu packages fpga)
@@ -142,6 +144,7 @@ (define-module (gnu packages engineering)
   #:use-module (gnu packages tbb)
   #:use-module (gnu packages tcl)
   #:use-module (gnu packages texinfo)
+  #:use-module (gnu packages text-editors)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages tex)
   #:use-module (gnu packages version-control)
@@ -3757,3 +3760,68 @@ (define-public candle
 @item Visualizing G-code files.
 @end itemize")
       (license license:gpl3+))))
+
+(define-public rizin
+  (package
+    (name "rizin")
+    (version "0.4.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://github.com/rizinorg/rizin/releases/download/v"
+                    version "/rizin-src-v" version ".tar.xz"))
+              (sha256
+               (base32
+                "0nkb6v9lks25w5sv5s6p2ghgqnnnsf39md8nlx1cy4z89xlaisq9"))))
+    (build-system meson-build-system)
+    (arguments
+     (list
+      #:configure-flags
+      #~(list "-Dpackager=guix"
+              (string-append "-Dpackager_version=" #$version)
+              "-Duse_sys_capstone=enabled"
+              "-Duse_sys_magic=enabled"
+              "-Duse_sys_libzip=enabled"
+              "-Duse_sys_zlib=enabled"
+              "-Duse_sys_lz4=enabled"
+              "-Duse_sys_xxhash=enabled"
+              "-Duse_sys_openssl=enabled"
+              "-Duse_sys_tree_sitter=enabled"
+              "-Duse_sys_libuv=enabled"
+              "-Duse_gpl=true")
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'prepare-testbins
+            (lambda _
+              (copy-recursively
+               #$(origin
+                   (method git-fetch)
+                   (uri (git-reference
+                         (url "https://github.com/rizinorg/rizin-testbins")
+                         (commit "7d0c31ac7711de9c4d37f5047200dc5a407ff713")))
+                   (sha256
+                    (base32
+                     "00cmc7pws9m4hcm0bpdjm6n4agl5mqgczc4ccswfhywyzzvr7sqh")))
+               "test/bins")))
+          (add-before 'configure 'skip-failing-tests
+            (lambda _
+              ;; Skip 2 failing tests, reported upstream:
+              ;; <https://github.com/rizinorg/rizin/issues/2905>.
+              (substitute* "test/integration/meson.build"
+                (("'analysis_global_var'") "#")
+                (("'sign_integration'") "#")))))))
+    (native-inputs (list pkg-config))
+    (inputs
+     (list capstone file libuv libzip lz4 openssl tree-sitter xxhash zlib))
+    (home-page "https://rizin.re")
+    (synopsis "Disasm, debug, analyze and manipulate binary files")
+    (description
+     "Rizin is a reverse engineering framework and a set of small command-line
+utilities, providing a complete binary analysis experience with features like
+disassembler, hexadecimal editor, emulation, binary inspection, debugger, and
+more.")
+    ;; Most files are under LGPL-3.0-only, other are under: Apache-2.0,
+    ;; BSD-2-Clause, BSD-3-Clause, CC0-1.0, CC-BY-SA-4.0, GPL-1.0-or-later,
+    ;; GPL-2.0-only, GPL-2.0-or-later, GPL-3.0-or-later, LGPL-2.0-or-later,
+    ;; LGPL-2.1-only, LGPL-2.1-or-later, LGPL-3.0-only, MIT, NCSA.
+    (license license:gpl3+)))
-- 
2.37.1