Subject: [bug#52306] [PATCH 6/6] gnu: Add git-interactive-rebase-tool.

From: jgart <[email-masked]>
Date: Sun, 5 Dec 2021 16:36:12 -0500

* gnu/packages/rust-apps.scm (git-interactive-rebase-tool): New variable.
---
 gnu/packages/rust-apps.scm | 46 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 46 insertions(+)

diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index 8634356ccd..5ac777f1ae 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -577,6 +577,52 @@ (define-public ripgrep
 gitignore rules.")
     (license (list license:unlicense license:expat))))
 
+(define-public git-interactive-rebase-tool
+  (package
+    (name "git-interactive-rebase-tool")
+    (version "2.1.0")
+    (source
+     (origin
+       ;; crates.io does not provide the test data.
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/mitmaro/git-interactive-rebase-tool")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "173spqqpyc00kvfmldjmjfqizh9b4spq4xw4bskd4dny8qcpz28d"))))
+    (build-system cargo-build-system)
+    (arguments
+      `(#:rust ,rust-1.52
+        #:cargo-test-flags
+        ;; https://github.com/MitMaro/git-interactive-rebase-tool/issues/586
+       '("--release" "--" "--skip=tests::success")
+        #:cargo-inputs
+        (("rust-anyhow" ,rust-anyhow-1)
+         ("rust-chrono" ,rust-chrono-0.4)
+         ("rust-clap" ,rust-clap-2)
+         ("rust-crossterm" ,rust-crossterm-0.19)
+         ("rust-git2" ,rust-git2-0.13)
+         ("rust-num-format" ,rust-num-format-0.4)
+         ("rust-unicode-segmentation" ,rust-unicode-segmentation-1)
+         ("rust-unicode-width" ,rust-unicode-width-0.1)
+         ("rust-xi-unicode" ,rust-xi-unicode-0.3))
+        #:cargo-development-inputs
+        (("rust-concat-idents" ,rust-concat-idents-1)
+         ("rust-lazy-static" ,rust-lazy-static-1)
+         ("rust-rstest" ,rust-rstest-0.6)
+         ("rust-serial-test" ,rust-serial-test-0.5)
+         ("rust-tempfile" ,rust-tempfile-3))))
+    (inputs
+     `(("zlib" ,zlib)))
+    (home-page "https://gitrebasetool.mitmaro.ca/")
+    (synopsis "Terminal based sequence editor for git interactive rebase")
+    (description
+"Native cross-platform full feature terminal-based sequence editor for
+git interactive rebase.")
+    (license license:gpl3+)))
+
 (define-public rust-cbindgen
   (package
     (name "rust-cbindgen")
-- 
2.34.0