[bug#56057,gnu:,Add,dua-cli.,23/27] gnu: Add rust-clap-derive-3.

Message ID 20220618195656.10108-24-antlers@luris.net
State New
Headers
Series gnu: Add dua-cli. |

Commit Message

antlers June 18, 2022, 7:56 p.m. UTC
* gnu/packages/crates-io.scm (rust-clap-derive-3): New variable.
---
:100644 100644 13501003d8 bf4145a3c8 M	gnu/packages/crates-io.scm
 gnu/packages/crates-io.scm | 33 ++++++++++++++++++++++++++++++---
 1 file changed, 30 insertions(+), 3 deletions(-)
  

Comments

Maxime Devos June 18, 2022, 8:17 p.m. UTC | #1
A patch has already been written for rust-clap-derive-3:
<https://issues.guix.gnu.org/56037>.  That patch series also adds rust-
clap-lex, so some inheritance may be in order.

On rust-windows-... crates: these crates are unnecessary in Guix.
If a package complains about not finding the dependencies, you can just
remove the dependency declaration from the Cargo.toml

Likewise, #56037 already updates rust-textwrap.

Also, rust-adler is already in Guix, so you can use inheritance there.

Why is there a separate rust-autocfg-1.1, instead of updating
rust-autocfg@1.0 to rust-autocfg@1.1?

In rust-object: why change the inheritance?

In rust-once-cell-1: Why remove the skip-build?  Also, you removed some
dependencies (rust-crossbeam-utils, rust-lazy-static and rust-regex),
but they are still used, according to
<https://github.com/matklad/once_cell/blob/v1.12.0/Cargo.toml>.

Also, if you're willing to wait a bit or help out, I've been working on
simplifying the Rust packaging system in
<https://notabug.org/maximed/cargoless-rust-experiments/>.

(TBC: only some quick comments, didn't look in any detail)

> +     `(#:tests? #f ; missing files

Then you can add the missing files.

> +    (synopsis
> +     "Tool to conveniently learn about the disk usage of
> directories, fast!")
> +    (description
> +     "This package provides a tool to conveniently learn about the
> disk usage of
> +directories, fast!")

Is markety, and the synopsis and description just contain the same
information.  See (guix)Synopses and Descriptions.

Greetings,
Maxime.
  

Patch

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 13501003d8..bf4145a3c8 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -11265,7 +11265,7 @@  (define-public rust-clap-derive-3
         (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
-         "18cn82jhcha7m0nkpi1a03jx8k7aaq5kxfcxnsqpaa8ih5dp23rp"))))
+         "1fczfj2kzd9iwxs573k0b2bn697znklgvrf8ii8fibhnglhl07f1"))))
     (build-system cargo-build-system)
     (arguments
      `(#:skip-build? #t
@@ -11281,13 +11281,13 @@  (define-public rust-clap-derive-3
      "Parse command line argument by defining a struct, derive crate")
     (description
      "This package provides a parse command line argument by defining a struct,
-derive crate.")
+derive crate")
     (license (list license:expat license:asl2.0))))
 
 (define-public rust-clap-3
   (package
     (name "rust-clap")
-    (version "3.2.4")
+    (version "3.2.5")
     (source
      (origin
        (method url-fetch)
@@ -73358,6 +73358,33 @@  (define-public rust-clap-conf-0.1
       "This package provides a library to unify commandline arguments with config files and environment variables.  And make it easier for users to tell your program how to behave across the three main input sources")
     (license license:expat)))
 
+(define-public rust-clap-derive-3
+  (package
+    (name "rust-clap-derive")
+    (version "3.2.5")
+    (source (origin
+              (method url-fetch)
+              (uri (crate-uri "clap_derive" version))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1fczfj2kzd9iwxs573k0b2bn697znklgvrf8ii8fibhnglhl07f1"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-heck" ,rust-heck-0.4)
+        ("rust-proc-macro-error" ,rust-proc-macro-error-1)
+        ("rust-proc-macro2" ,rust-proc-macro2-1)
+        ("rust-quote" ,rust-quote-1)
+        ("rust-syn" ,rust-syn-1))))
+    (home-page "https://github.com/clap-rs/clap/tree/master/clap_derive")
+    (synopsis
+     "Macro implementation for clap's derives")
+    (description
+     "Parse command line argument by defining a struct, derive crate.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public rust-cvss-1
   (package
     (name "rust-cvss")