[PATCH 0/7] Add lsd utility

  • Open
  • quality assurance status badge
Details
One participant
  • Jordan Moore
Owner
unassigned
Submitted by
Jordan Moore
Severity
normal
J
J
Jordan Moore wrote 2 days ago
(address . guix-patches@gnu.org)(name . Jordan Moore)(address . lockbox@struct.foo)
cover.1726623493.git.lockbox@struct.foo
This patchset adds the lsd utility to rust-apps, this is my first
contribution to guix so please correct me if I made a mistake anywhere.

Jordan Moore (7):
gnu: Add rust-windows-0.43.
gnu: Add rust-term-grid-0.1.
gnu: Add rust-unicode-width-0.1.13.
gnu: Add rust-vsort-0.2.
gnu: Add rust-human-sort-0.2.
gnu: Add rust-clap-derive-4.3.
gnu: Add lsd.

gnu/packages/crates-io.scm | 166 ++++++++++++++++++++++++++++++++
gnu/packages/crates-windows.scm | 63 ++++++++++++
gnu/packages/rust-apps.scm | 59 ++++++++++++
3 files changed, 288 insertions(+)


base-commit: 4b7bb05c29d390fb095f7a96e83c54efa8379497
--
2.44.2
J
J
Jordan Moore wrote 40 hours ago
[PATCH 1/7] gnu: Add rust-windows-0.43.
(address . 73329@debbugs.gnu.org)(name . Jordan Moore)(address . lockbox@struct.foo)
d201d86ae1350b7ac008d7a9e463b69a33df499a.1726623493.git.lockbox@struct.foo
* gnu/packages/crates-windows.scm (rust-windows-0.43): New variable.
* gnu/packages/crates-windows.scm (rust-windows-interface-0.43): New
variable.
* gnu/packages/crates-windows.scm (rust-windows-implement-0.43): New
variable.

Change-Id: If6f0139141bb9550fe3996c4938134346bee376b
---
gnu/packages/crates-windows.scm | 63 +++++++++++++++++++++++++++++++++
1 file changed, 63 insertions(+)

Toggle diff (97 lines)
diff --git a/gnu/packages/crates-windows.scm b/gnu/packages/crates-windows.scm
index ef91db0e96..607919aef0 100644
--- a/gnu/packages/crates-windows.scm
+++ b/gnu/packages/crates-windows.scm
@@ -14,6 +14,7 @@
;;; Copyright © 2023 Jaeme Sifat <jaeme@runbox.com>
;;; Copyright © 2023 Daniel Ziltener <dziltener@lyrion.ch>
;;; Copyright © 2024 Tomas Volf <~@wolfsden.cz>
+;;; Copyright © 2024 Jordan Moore <lockbox@struct.foo>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1389,6 +1390,31 @@ (define-public rust-windows-0.44
("rust-windows-interface" ,rust-windows-interface-0.44)
("rust-windows-targets" ,rust-windows-targets-0.42))))))
+(define-public rust-windows-0.43
+ (package
+ (inherit rust-windows-0.44)
+ (name "rust-windows")
+ (version "0.43.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "windows" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0i32alvc4n4l7abmv1fsvnd1lzw17f1cpr16kgx0sqz5wg82wrh4"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs (("rust-windows-implement" ,rust-windows-implement-0.43)
+ ("rust-windows-interface" ,rust-windows-interface-0.43)
+ ("rust-windows-aarch64-gnullvm" ,rust-windows-aarch64-gnullvm-0.42)
+ ("rust-windows-aarch64-msvc" ,rust-windows-aarch64-msvc-0.42)
+ ("rust-windows-i686-gnu" ,rust-windows-i686-gnu-0.42)
+ ("rust-windows-i686-msvc" ,rust-windows-i686-msvc-0.42)
+ ("rust-windows-x86-64-gnu" ,rust-windows-x86-64-gnu-0.42)
+ ("rust-windows-x86-64-gnullvm" ,rust-windows-x86-64-gnullvm-0.42)
+ ("rust-windows-x86-64-msvc" ,rust-windows-x86-64-msvc-0.42))))))
+
(define-public rust-windows-0.39
(package
(inherit rust-windows-0.46)
@@ -1973,6 +1999,24 @@ (define-public rust-windows-implement-0.44
("rust-quote" ,rust-quote-1)
("rust-syn" ,rust-syn-1))))))
+(define-public rust-windows-implement-0.43
+ (package
+ (inherit rust-windows-implement-0.48)
+ (name "rust-windows-implement")
+ (version "0.43.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "windows-implement" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "01zqmrdnz2j5qd4ahqjsz724mdabi577f400yywcahy7dl2rpqmp"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-syn" ,rust-syn-1))))))
+
(define-public rust-windows-implement-0.39
(package
(inherit rust-windows-implement-0.46)
@@ -2084,6 +2128,25 @@ (define-public rust-windows-interface-0.44
("rust-quote" ,rust-quote-1)
("rust-syn" ,rust-syn-1))))))
+(define-public rust-windows-interface-0.43
+ (package
+ (inherit rust-windows-interface-0.44)
+ (name "rust-windows-interface")
+ (version "0.43.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "windows-interface" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "06drakcacg4d680qa2sk62kqn7ini00xw3zz0hwqwx1my2z4z3dw"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs (("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-syn" ,rust-syn-1))))))
+
(define-public rust-windows-interface-0.39
(package
(inherit rust-windows-interface-0.46)
--
2.44.2
J
J
Jordan Moore wrote 40 hours ago
[PATCH 2/7] gnu: Add rust-term-grid-0.1.
(address . 73329@debbugs.gnu.org)(name . Jordan Moore)(address . lockbox@struct.foo)
04087bfcbcd2e354d33280c1a98022ff4cb218a6.1726623493.git.lockbox@struct.foo
* gnu/packages/crates-io.scm (rust-term-grid-0.1): New variable.

Change-Id: Id8c93555d20d76ec403db319d5049c7021974940
---
gnu/packages/crates-io.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 0cdb071ea0..aae54bfd38 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -44,6 +44,7 @@
;;; Copyright © 2024 Suhail Singh <suhail@bayesians.ca>
;;; Copyright © 2024 Aaron Covrig <aaron.covrig.us@ieee.org>
;;; Copyright © 2024 Nguy?n Gia Phong <mcsinyx@disroot.org>
+;;; Copyright © 2024 Jordan Moore <lockbox@struct.foo>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -79248,6 +79249,27 @@ (define-public rust-term-0.2
(("rust-kernel32-sys" ,rust-kernel32-sys-0.2)
("rust-winapi" ,rust-winapi-0.2))))))
+(define-public rust-term-grid-0.1
+ (package
+ (name "rust-term-grid")
+ (version "0.1.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "term_grid" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "1kq2sy3b8329jrsrpcvijvyz4gbqjyvyy6c3n0wmmvda9y03w393"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs (("rust-unicode-width" ,rust-unicode-width-0.1))))
+ (home-page "https://github.com/ogham/rust-term-grid")
+ (synopsis "Library for formatting strings into a grid layout")
+ (description
+ "This package provides Library for formatting strings into a grid layout.")
+ (license license:expat)))
+
(define-public rust-term-size-1
(package
(name "rust-term-size")
--
2.44.2
J
J
Jordan Moore wrote 40 hours ago
[PATCH 3/7] gnu: Add rust-unicode-width-0.1.13.
(address . 73329@debbugs.gnu.org)(name . Jordan Moore)(address . lockbox@struct.foo)
d14bf61dbc794e071360076fc818bca972553b7a.1726623493.git.lockbox@struct.foo
* gnu/packages/crates-io.scm (rust-unicode-width-0.1.13): New variable.

Change-Id: I0b62b9abcc599d25125491f32b52c3dc1fb8bca7
---
gnu/packages/crates-io.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index aae54bfd38..8f8ac25caf 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -86787,6 +86787,31 @@ (define-public rust-unicode-width-0.1
(license (list license:asl2.0
license:expat))))
+(define-public rust-unicode-width-0.1.13
+ (package
+ (name "rust-unicode-width")
+ (version "0.1.13")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "unicode-width" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0p92vl8n7qc8mxz45xn6qbgi0259z96n32a158l6vj5bywwdadh3"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs (("rust-compiler-builtins" ,rust-compiler-builtins-0.1)
+ ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1)
+ ("rust-rustc-std-workspace-std" ,rust-rustc-std-workspace-std-1))))
+ (home-page "https://github.com/unicode-rs/unicode-width")
+ (synopsis "Determine displayed width of `char` and `str` types
+according to Unicode Standard Annex #11 rules.")
+ (description
+ "This package provides Determine displayed width of `char` and `str` types according to Unicode
+Standard Annex #11 rules.")
+ (license (list license:expat license:asl2.0))))
+
+
(define-public rust-unicode-xid-0.2
(package
(name "rust-unicode-xid")
--
2.44.2
J
J
Jordan Moore wrote 40 hours ago
[PATCH 4/7] gnu: Add rust-vsort-0.2.
(address . 73329@debbugs.gnu.org)(name . Jordan Moore)(address . lockbox@struct.foo)
e25b75d96da460ddcaf7727be060d40fa2fe59e8.1726623493.git.lockbox@struct.foo
* gnu/packages/crates-io.scm (rust-vsort-0.2): New variable.

Change-Id: Ia6098e31b5574ca48d6eb33f5ed52fa019627edd
---
gnu/packages/crates-io.scm | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 8f8ac25caf..5e4732b961 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -88546,6 +88546,25 @@ (define-public rust-vsock-0.2
(("rust-rand" ,rust-rand-0.8)
("rust-sha2" ,rust-sha2-0.10))))))
+(define-public rust-vsort-0.2
+ (package
+ (name "rust-vsort")
+ (version "0.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "vsort" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "1y7b0x18a2mpn7hk3qfybl2ksy08klwl3bps4yxsd7pr90dilcqi"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t))
+ (home-page "https://github.com/juansc/vsort/")
+ (synopsis "GNU Version Sort Rust implementation")
+ (description "This package provides GNU Version Sort Rust implementation.")
+ (license license:expat)))
+
(define-public rust-vswhom-0.1
(package
(name "rust-vswhom")
--
2.44.2
J
J
Jordan Moore wrote 40 hours ago
[PATCH 5/7] gnu: Add rust-human-sort-0.2.
(address . 73329@debbugs.gnu.org)(name . Jordan Moore)(address . lockbox@struct.foo)
b80471b0ff9680de448e4cfb1091f951b8ff2d0a.1726623493.git.lockbox@struct.foo
* gnu/packages/crates-io.scm (rust-human-sort-0.2): New variable.

Change-Id: I5c9344340392035008131a0e371d4068bf1f93f3
---
gnu/packages/crates-io.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 5e4732b961..b8131647ca 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -32743,6 +32743,26 @@ (define-public rust-human-format-1
machines are still at bay.")
(license license:expat)))
+(define-public rust-human-sort-0.2
+ (package
+ (name "rust-human-sort")
+ (version "0.2.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "human-sort" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "06b2rj4hd4h4rf3mp5qk89ymlxh5iv3cpmrfgramwvay634hj2hl"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t))
+ (home-page "https://github.com/paradakh/human-sort")
+ (synopsis "Human sort (natural sort) implementation")
+ (description
+ "This package provides Human sort (natural sort) implementation.")
+ (license license:expat)))
+
(define-public rust-humantime-serde-1
(package
(name "rust-humantime-serde")
--
2.44.2
J
J
Jordan Moore wrote 40 hours ago
[PATCH 6/7] gnu: Add rust-clap-derive-4.3.
(address . 73329@debbugs.gnu.org)(name . Jordan Moore)(address . lockbox@struct.foo)
0bcd8302b92b91a268714459d687f68ae176da6a.1726623493.git.lockbox@struct.foo
* gnu/packages/crates-io.scm (rust-clap-derive-4.3): New variable.
* gnu/packages/crates-io.scm (rust-clap-builder-4.3): New variable.
* gnu/packages/crates-io.scm (rust-clap-4.3): New variable.

Change-Id: I951e20182868f71c05cf95d84807099ac6a3ca36
---
gnu/packages/crates-io.scm | 80 ++++++++++++++++++++++++++++++++++++++
1 file changed, 80 insertions(+)

Toggle diff (93 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index b8131647ca..87636074a4 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -12991,6 +12991,86 @@ (define-public rust-clap-derive-3
("rust-quote" ,rust-quote-1)
("rust-syn" ,rust-syn-1))))))
+(define-public rust-clap-derive-4.3
+ (package
+ (name "rust-clap-derive")
+ (version "4.3.12")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "clap_derive" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0l50j37jwbzfl29bd2a1ib7z1jpch4b9868himrgwpgwb1bvpaal"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs (("rust-heck" ,rust-heck-0.4)
+ ("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-syn" ,rust-syn-2))))
+ (home-page "https://github.com/clap-rs/clap")
+ (synopsis "Parse command line argument by defining a struct, derive crate")
+ (description
+ "This package provides Parse command line argument by defining a struct, derive crate.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-clap-builder-4.3
+ (package
+ (name "rust-clap-builder")
+ (version "4.3.24")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "clap_builder" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "03l6d45csywv8xazs44jwy1hk2jbvznn7mj8dw7p93bdq5mykljy"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs (("rust-anstream" ,rust-anstream-0.3)
+ ("rust-anstyle" ,rust-anstyle-1)
+ ("rust-backtrace" ,rust-backtrace-0.3)
+ ("rust-clap-lex" ,rust-clap-lex-0.5)
+ ("rust-once-cell" ,rust-once-cell-1)
+ ("rust-strsim" ,rust-strsim-0.10)
+ ("rust-terminal-size" ,rust-terminal-size-0.2)
+ ("rust-unicase" ,rust-unicase-2)
+ ("rust-unicode-width" ,rust-unicode-width-0.1.13))))
+ (home-page "https://github.com/clap-rs/clap")
+ (synopsis
+ "simple to use, efficient, and full-featured Command Line Argument Parser")
+ (description
+ "This package provides a simple to use, efficient, and full-featured Command Line
+Argument Parser.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-clap-4.3
+ (package
+ (name "rust-clap")
+ (version "4.3.24")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "clap" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "11z4695sw0kp1s4rfnfdgg19n6xllcp297z5mmx0s344qy0hwsgv"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs (("rust-clap-builder" ,rust-clap-builder-4.3)
+ ("rust-clap-derive" ,rust-clap-derive-4.3)
+ ("rust-once-cell" ,rust-once-cell-1))))
+ (home-page "https://github.com/clap-rs/clap")
+ (synopsis
+ "simple to use, efficient, and full-featured Command Line Argument Parser")
+ (description
+ "This package provides a simple to use, efficient, and full-featured Command Line
+Argument Parser.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-clap-4
(package
(name "rust-clap")
--
2.44.2
J
J
Jordan Moore wrote 40 hours ago
[PATCH 7/7] gnu: Add lsd.
(address . 73329@debbugs.gnu.org)(name . Jordan Moore)(address . lockbox@struct.foo)
007a8339a46f0cc6f29992d2806ce0f11359ec65.1726623493.git.lockbox@struct.foo
* gnu/packages/rust-apps.scm (lsd): New variable.

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

Toggle diff (79 lines)
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 <herman@rimm.ee>
;;; Copyright © 2024 Tomas Volf <~@wolfsden.cz>
;;; Copyright © 2024 Suhail Singh <suhail@bayesians.ca>
+;;; Copyright © 2024 Jordan Moore <lockbox@struct.foo>
;;;
;;; 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
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 73329@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 73329
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch