Subject: [bug#73329] [PATCH 7/7] gnu: Add lsd.

From: Jordan Moore <[email-masked]>
Date: Wed, 18 Sep 2024 07:05:46 -0400

* gnu/packages/rust-apps.scm (lsd): New variable.

Change-Id: I0ba3542d69f08b3d52cd4a6ca3769edb31a43ba3
---
 gnu/packages/rust-apps.scm | 59 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 59 insertions(+)

diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index 1a8bfa4248..5f414158b2 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -31,6 +31,7 @@
 ;;; Copyright © 2024 Herman Rimm <[email-masked]>
 ;;; Copyright © 2024 Tomas Volf <[email-masked]>
 ;;; Copyright © 2024 Suhail Singh <[email-masked]>
+;;; Copyright © 2024 Jordan Moore <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -2496,6 +2497,64 @@ (define-public vivid
 older terminal emulators.")
     (license (list license:expat license:asl2.0))))
 
+(define-public lsd
+  (package
+    (name "lsd")
+    (version "1.1.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "lsd" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "06l0ynhny43q74dyb8m4r2j1w9xz29m0xrqmnpysm1f09bx3dzrj"))))
+    (native-inputs (list pkg-config zlib libgit2-1.7
+                         ;; for tests
+                         git))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs (("rust-chrono" ,rust-chrono-0.4)
+                       ("rust-chrono-humanize" ,rust-chrono-humanize-0.2)
+                       ("rust-clap" ,rust-clap-4.3)
+                       ("rust-clap-derive" ,rust-clap-derive-4.3)
+                       ("rust-clap-complete" ,rust-clap-complete-4)
+                       ("rust-crossterm" ,rust-crossterm-0.27)
+                       ("rust-dirs" ,rust-dirs-5)
+                       ("rust-git2" ,rust-git2-0.18)
+                       ("rust-globset" ,rust-globset-0.4)
+                       ("rust-human-sort" ,rust-human-sort-0.2)
+                       ("rust-libc" ,rust-libc-0.2)
+                       ("rust-lscolors" ,rust-lscolors-0.16)
+                       ("rust-once-cell" ,rust-once-cell-1)
+                       ("rust-serde" ,rust-serde-1)
+                       ("rust-serde-yaml" ,rust-serde-yaml-0.9)
+                       ("rust-sys-locale" ,rust-sys-locale-0.3)
+                       ("rust-term-grid" ,rust-term-grid-0.1)
+                       ("rust-terminal-size" ,rust-terminal-size-0.3)
+                       ("rust-thiserror" ,rust-thiserror-1)
+                       ("rust-unicode-width" ,rust-unicode-width-0.1.13)
+                       ("rust-url" ,rust-url-2)
+                       ("rust-uzers" ,rust-uzers-0.11)
+                       ("rust-version-check" ,rust-version-check-0.9)
+                       ("rust-vsort" ,rust-vsort-0.2)
+                       ("rust-wild" ,rust-wild-2)
+                       ("rust-windows" ,rust-windows-0.43)
+                       ("rust-xattr" ,rust-xattr-1)
+                       ("rust-xdg" ,rust-xdg-2)
+                       ("rust-yaml-rust" ,rust-yaml-rust-0.4))
+       #:cargo-development-inputs (("rust-assert-cmd" ,rust-assert-cmd-2)
+                                   ("rust-assert-fs" ,rust-assert-fs-1)
+                                   ("rust-predicates" ,rust-predicates-3)
+                                   ("rust-serial-test" ,rust-serial-test-2)
+                                   ("rust-tempfile" ,rust-tempfile-3))))
+    (home-page "https://github.com/lsd-rs/lsd")
+    (synopsis "Mostly ls compatible command with pretty colors")
+    (description
+     "This package provides An ls command with a lot of pretty colors
+     and some other stuff.")
+    (license license:asl2.0)))
+
+
 (define-public watchexec
   (package
     (name "watchexec")
-- 
2.44.2