unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#48671] [PATCH] Add nitrocli
@ 2021-05-26  3:57 Antero Mejr
  2021-05-27  6:59 ` Xinglu Chen
                   ` (3 more replies)
  0 siblings, 4 replies; 28+ messages in thread
From: Antero Mejr @ 2021-05-26  3:57 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=true, Size: 13744 bytes --]

---
Tested using a Purism Key. Has new package definitions for some updated crate dependencies like rust-structopt-0.3.21, I can update the main definition if that is preferred.

 gnu/packages/crates-io.scm      | 247 ++++++++++++++++++++++++++++++++
 gnu/packages/security-token.scm |  46 ++++++
 2 files changed, 293 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 318b2c695b..5440c5cd79 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -15,6 +15,7 @@
 ;;; Copyright © 2021 aecepoglu <aecepoglu@fastmail.fm>
 ;;; Copyright © 2021 Zheng Junjie <873216071@qq.com>
 ;;; Copyright © 2021 Alexandru-Sergiu Marton <brown121407@posteo.ro>
+;;; Copyright © 2021 Antero Mejr <antero@kodmin.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -3702,6 +3703,24 @@ trace (backtrace) at runtime in a Rust program.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-base32-0.4
+  (package
+    (name "rust-base32")
+    (version "0.4.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "base32" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1ykwx8jhksqxghfgyw2pzikzjf4n9wqm1x2ww5wqyn68ssf6dki3"))))
+    (build-system cargo-build-system)
+    (home-page "https://github.com/andreasots/base32")
+    (synopsis "Base32 encoder/decoder for Rust")
+    (description "Base32 encoder/decoder for Rust")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-base58-0.1
   (package
     (name "rust-base58")
@@ -13308,6 +13327,29 @@ variables.")
      "Environment variables utility functions.")
     (license license:asl2.0)))
 
+(define-public rust-envy-0.4
+  (package
+    (name "rust-envy")
+    (version "0.4.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "envy" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0rar459p7pl19v6pbx98q3hi2hxfl8q1ndxxw5d4zd9cgway0irz"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-serde" ,rust-serde-1))))
+    (home-page "https://github.com/softprops/envy")
+    (synopsis "deserialize env vars into typesafe structs")
+    (description
+     "deserialize env vars into typesafe structs")
+    (license license:expat)))
+
 (define-public rust-erased-serde-0.3
   (package
     (name "rust-erased-serde")
@@ -23390,6 +23432,47 @@ for Rust structs.")
        (sha256
         (base32 "13ir50j549gdz94pds1i7ljnk14d66q5x91s11hncm1pih7jif8c"))))))
 
+(define-public rust-merge-0.1
+  (package
+    (name "rust-merge")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "merge" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1sck0vhi9lk8a6mgky0rgn842fj7yspywidwbd963nmimf9yzfqh"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-merge-derive" ,rust-merge-derive-0.1)
+        ("rust-num-traits" ,rust-num-traits-0.2))))
+    (home-page "https://git.sr.ht/~ireas/merge-rs")
+    (synopsis "Merge multiple values into one")
+    (description "Merge multiple values into one")
+    (license (list license:asl2.0 license:expat))))
+
+(define-public rust-merge-derive-0.1
+  (package
+    (name "rust-merge-derive")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "merge_derive" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "01wxhi7mqmp34l540wcfb24hb13vcbps4wlynas66bnsfra0g790"))))
+    (build-system cargo-build-system)
+    (home-page
+     "https://git.sr.ht/~ireas/merge-rs/tree/master/merge_derive")
+    (synopsis "Derive macro for merge crate")
+    (description "This crate provides a derive macro for the
+merge::Merge crate. See the merge crate for more information.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-merlin-2
   (package
     (name "rust-merlin")
@@ -25107,6 +25190,94 @@ selectors.  You can use the jQuery-like syntax to query and manipulate an HTML
 document quickly.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-nitrokey-0.9
+  (package
+    (name "rust-nitrokey")
+    (version "0.9.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "nitrokey" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0c8mj52ckvy1311vwxs6jpw16b2bihp5cc811isb96j9slcjvsyx"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-lazy_static" ,rust-lazy-static-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-nitrokey-sys" ,rust-nitrokey-sys-3)
+        ("rust-rand_core" ,rust-rand-core-0.5))))
+    (home-page "https://git.sr.ht/~ireas/nitrokey-rs")
+    (synopsis "Rust bindings to libnitrokey")
+    (description
+     "Bindings to libnitrokey for communication with Nitrokey devices")
+    (license license:expat)))
+
+(define-public rust-nitrokey-sys-3
+  (package
+    (name "rust-nitrokey-sys")
+    (version "3.6.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "nitrokey-sys" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "08c3lnb8iqx000jd5rzvrdvv4ihjyw3x3s8q11dw56is0nmjyvws"))))
+    (build-system cargo-build-system)
+    (home-page "https://git.sr.ht/~ireas/nitrokey-sys-rs")
+    (synopsis "Low-level Rust bindings for libnitrokey")
+    (description
+     "Low-level bindings to libnitrokey for communication with
+Nitrokey devices")
+    (license license:lgpl3)))
+
+(define-public rust-nitrokey-test-0.5
+  (package
+    (name "rust-nitrokey-test")
+    (version "0.5.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "nitrokey-test" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "197j9r2s4ydzbqfydza6v31mgcsgd29jpidz4psqawjdm49f8lg6"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-proc-macro2" ,rust-proc-macro2-1)
+        ("quote" ,rust-quote-1)
+        ("syn" ,rust-syn-1))))
+    (home-page "https://github.com/d-e-s-o/nitrokey-test")
+    (synopsis "Supporting test infrastructure for the nitrokey crate")
+    (description
+     "Supporting test infrastructure for the nitrokey crate and others
+using it.")
+    (license license:gpl3+)))
+
+(define-public rust-nitrokey-test-state-0.1
+  (package
+    (name "rust-nitrokey-test-state")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "nitrokey-test-state" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "00w817kl8q3sna924pzl72ybqljny14rdv1ixlj288fmsqp776x5"))))
+    (build-system cargo-build-system)
+    (home-page "https://github.com/d-e-s-o/nitrokey-test")
+    (synopsis "State required and used by the nitrokey-test crate")
+    (description "State required and used by the nitrokey-test crate.")
+    (license license:gpl3+)))
+
 (define-public rust-nix-0.20
   (package
     (name "rust-nix")
@@ -30203,6 +30374,28 @@ macro use case.")
 @code{proc_macro_derive} pretend to be @code{proc_macro}.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-progressing-3
+  (package
+    (name "rust-progressing")
+    (version "3.0.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "progressing" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "06sb1cxpkc8lx56s76c95cfljs0513nsnn35wd6w79sblwcxpdwp"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("log" ,rust-log-0.4))))
+    (home-page "https://github.com/dominicparga/progressing")
+    (synopsis "A counting progress-bar for Rust")
+    (description
+     "A lightweight, text-based, counting progress-bar for Rust")
+    (license license:asl2.0)))
+
 (define-public rust-progrs-0.1
   (package
     (name "rust-progrs")
@@ -40394,6 +40587,32 @@ and Jaro-Winkler.")
      "Parse command line argument by defining a struct.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-structopt-0.3.21
+  (package
+    (name "rust-structopt")
+    (version "0.3.21")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "structopt" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "136j0lvjmpv5syi751vxg8vb30gfyv4k81x8d18kxrj6xvbsqxsj"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-structopt-derive" ,rust-structopt-derive-0.4.14)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-clap" ,rust-clap-2))))
+    (home-page "https://github.com/TeXitoi/structopt")
+    (synopsis "Parse command line argument by defining a struct")
+    (description
+     "Parse command line argument by defining a struct.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-structopt-0.2
   (package
     (name "rust-structopt")
@@ -40446,6 +40665,34 @@ and Jaro-Winkler.")
      "Parse command line argument by defining a struct, derive crate.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-structopt-derive-0.4.14
+  (package
+   (name "rust-structopt-derive")
+   (version "0.4.14")
+   (source
+    (origin
+     (method url-fetch)
+     (uri (crate-uri "structopt-derive" version))
+     (file-name
+      (string-append name "-" version ".tar.gz"))
+     (sha256
+      (base32
+       "143gjwvz3s86hwp070km83y25n8kqp5f01kb1dr19f4ilkywvaav"))))
+   (build-system cargo-build-system)
+   (arguments
+    `(#:skip-build? #t
+      #:cargo-inputs
+      (("rust-heck" ,rust-heck-0.3)
+       ("rust-proc-macro-error" ,rust-proc-macro-error-1)
+       ("rust-proc-macro2" ,rust-proc-macro2-1)
+       ("rust-syn" ,rust-syn-1)
+       ("rust-quote" ,rust-quote-1))))
+   (home-page "https://github.com/TeXitoi/structopt")
+   (synopsis "Parse command line argument by defining a struct, derive crate")
+   (description
+    "Parse command line argument by defining a struct, derive crate.")
+   (license license:asl2.0)))
+
 (define-public rust-structopt-derive-0.2
   (package
     (name "rust-structopt-derive")
diff --git a/gnu/packages/security-token.scm b/gnu/packages/security-token.scm
index dfa43bb2bf..3a297cda2b 100644
--- a/gnu/packages/security-token.scm
+++ b/gnu/packages/security-token.scm
@@ -9,6 +9,7 @@
 ;;; Copyright © 2018, 2019 Chris Marusich <cmmarusich@gmail.com>
 ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2020 Raphaël Mélotte <raphael.melotte@mind.be>
+;;; Copyright © 2021 Antero Mejr <antero@kodmin.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -32,6 +33,7 @@
   #:use-module (guix download)
   #:use-module (guix gexp)
   #:use-module (guix git-download)
+  #:use-module (guix build-system cargo)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system glib-or-gtk)
   #:use-module (guix build-system python)
@@ -39,6 +41,7 @@
   #:use-module (gnu packages base)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages check)
+  #:use-module (gnu packages crates-io)
   #:use-module (gnu packages docbook)
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages dns)
@@ -674,3 +677,46 @@ that after installing this package, you might still need to add appropriate
 udev rules to your system configuration to be able to configure the YubiKey as
 an unprivileged user.")
     (license license:bsd-2)))
+
+(define-public nitrocli
+  (package
+    (name "nitrocli")
+    (version "0.4.1")
+    (source (origin
+              (method url-fetch)
+              (uri (crate-uri "nitrocli" version))
+	      (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1djspfvcqjipg17v8hkph8xrhkdg1xqjhq5jk1sr8vr750yavidy"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:tests? #f ;; 2/164 tests fail, nitrocli-ext tests failing
+       #:cargo-inputs
+       (("rust-anyhow" ,rust-anyhow-1)
+        ("rust-base32" ,rust-base32-0.4)
+        ("rust-directories" ,rust-directories-3)
+        ("rust-envy" ,rust-envy-0.4)
+        ("rust-libc-0.2" ,rust-libc-0.2)
+        ("rust-merge" ,rust-merge-0.1)
+        ("rust-nitrokey" ,rust-nitrokey-0.9)
+        ("rust-progressing" ,rust-progressing-3)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-structopt" ,rust-structopt-0.3.21)
+        ("rust-termion" ,rust-termion-1)
+        ("rust-toml" ,rust-toml-0.5))
+       #:cargo-development-inputs
+       (("rust-nitrokey-test" ,rust-nitrokey-test-0.5)
+        ("rust-nitrokey-test-state" ,rust-nitrokey-test-state-0.1)
+        ("rust-regex" ,rust-regex-1)
+        ("rust-tempfile" ,rust-tempfile-3))))
+    (inputs
+     `(("hidapi" ,hidapi)
+       ("gnupg" ,gnupg)))
+    (home-page "https://github.com/d-e-s-o/nitrocli")
+    (synopsis "Command line tool for Nitrokey devices")
+    (description
+     "nitrocli is a program that provides a command line interface
+for interaction with Nitrokey Pro, Nitrokey Storage, and Librem Key
+devices.")
+    (license license:gpl3+)))
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH] Add nitrocli
  2021-05-26  3:57 [bug#48671] [PATCH] Add nitrocli Antero Mejr
@ 2021-05-27  6:59 ` Xinglu Chen
  2021-05-27  7:11 ` Xinglu Chen
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 28+ messages in thread
From: Xinglu Chen @ 2021-05-27  6:59 UTC (permalink / raw)
  To: Antero Mejr, 48671; +Cc: Antero Mejr

[-- Attachment #1: Type: text/plain, Size: 11250 bytes --]

On Tue, May 25 2021, Antero Mejr wrote:

> ---
> Tested using a Purism Key. Has new package definitions for some
> updated crate dependencies like rust-structopt-0.3.21, I can update
> the main definition if that is preferred.

I am not familiar with the Rust ecosystem in Guix, but I will leave some
more general comments.

>  gnu/packages/crates-io.scm      | 247 ++++++++++++++++++++++++++++++++
>  gnu/packages/security-token.scm |  46 ++++++
>  2 files changed, 293 insertions(+)

This patch should be split into multiple patches where each patch adds a
single package.  You can run ‘guile etc/committers.scm’ to automatically
generate commit messages for unstaged changes (you should probably
double check just in case).

> +(define-public rust-base32-0.4
> +  (package
> +    (name "rust-base32")
> +    (version "0.4.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "base32" version))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1ykwx8jhksqxghfgyw2pzikzjf4n9wqm1x2ww5wqyn68ssf6dki3"))))
> +    (build-system cargo-build-system)
> +    (home-page "https://github.com/andreasots/base32")
> +    (synopsis "Base32 encoder/decoder for Rust")
> +    (description "Base32 encoder/decoder for Rust")

The description should consist of one or more full sentences, see the
‘16.4.4 Synopses and Descriptions’ in the manual.

> +(define-public rust-envy-0.4
> +  (package
> +    (name "rust-envy")
> +    (version "0.4.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "envy" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0rar459p7pl19v6pbx98q3hi2hxfl8q1ndxxw5d4zd9cgway0irz"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:cargo-inputs
> +       (("rust-serde" ,rust-serde-1))))
> +    (home-page "https://github.com/softprops/envy")
> +    (synopsis "deserialize env vars into typesafe structs")
> +    (description
> +     "deserialize env vars into typesafe structs")

Write a full sentence, and capitalize.

> +(define-public rust-merge-0.1
> +  (package
> +    (name "rust-merge")
> +    (version "0.1.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "merge" version))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1sck0vhi9lk8a6mgky0rgn842fj7yspywidwbd963nmimf9yzfqh"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:cargo-inputs
> +       (("rust-merge-derive" ,rust-merge-derive-0.1)
> +        ("rust-num-traits" ,rust-num-traits-0.2))))
> +    (home-page "https://git.sr.ht/~ireas/merge-rs")
> +    (synopsis "Merge multiple values into one")
> +    (description "Merge multiple values into one")

Likewise.

> +(define-public rust-nitrokey-0.9
> +  (package
> +    (name "rust-nitrokey")
> +    (version "0.9.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "nitrokey" version))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0c8mj52ckvy1311vwxs6jpw16b2bihp5cc811isb96j9slcjvsyx"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:cargo-inputs
> +       (("rust-lazy_static" ,rust-lazy-static-1)
> +        ("rust-libc" ,rust-libc-0.2)
> +        ("rust-nitrokey-sys" ,rust-nitrokey-sys-3)
> +        ("rust-rand_core" ,rust-rand-core-0.5))))
> +    (home-page "https://git.sr.ht/~ireas/nitrokey-rs")
> +    (synopsis "Rust bindings to libnitrokey")
> +    (description
> +     "Bindings to libnitrokey for communication with Nitrokey devices")

Likewise.

> +(define-public rust-nitrokey-sys-3
> +  (package
> +    (name "rust-nitrokey-sys")
> +    (version "3.6.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "nitrokey-sys" version))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "08c3lnb8iqx000jd5rzvrdvv4ihjyw3x3s8q11dw56is0nmjyvws"))))
> +    (build-system cargo-build-system)
> +    (home-page "https://git.sr.ht/~ireas/nitrokey-sys-rs")
> +    (synopsis "Low-level Rust bindings for libnitrokey")
> +    (description
> +     "Low-level bindings to libnitrokey for communication with
> +Nitrokey devices")

Likewise.

> +(define-public rust-nitrokey-test-0.5
> +  (package
> +    (name "rust-nitrokey-test")
> +    (version "0.5.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "nitrokey-test" version))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "197j9r2s4ydzbqfydza6v31mgcsgd29jpidz4psqawjdm49f8lg6"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:cargo-inputs
> +       (("rust-proc-macro2" ,rust-proc-macro2-1)
> +        ("quote" ,rust-quote-1)
> +        ("syn" ,rust-syn-1))))
> +    (home-page "https://github.com/d-e-s-o/nitrokey-test")
> +    (synopsis "Supporting test infrastructure for the nitrokey crate")
> +    (description
> +     "Supporting test infrastructure for the nitrokey crate and others
> +using it.")

Likewise.

> +    (license license:gpl3+)))
> +
> +(define-public rust-nitrokey-test-state-0.1
> +  (package
> +    (name "rust-nitrokey-test-state")
> +    (version "0.1.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "nitrokey-test-state" version))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "00w817kl8q3sna924pzl72ybqljny14rdv1ixlj288fmsqp776x5"))))
> +    (build-system cargo-build-system)
> +    (home-page "https://github.com/d-e-s-o/nitrokey-test")
> +    (synopsis "State required and used by the nitrokey-test crate")
> +    (description "State required and used by the nitrokey-test crate.")

Likewise.

> +(define-public rust-progressing-3
> +  (package
> +    (name "rust-progressing")
> +    (version "3.0.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "progressing" version))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "06sb1cxpkc8lx56s76c95cfljs0513nsnn35wd6w79sblwcxpdwp"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:cargo-inputs
> +       (("log" ,rust-log-0.4))))
> +    (home-page "https://github.com/dominicparga/progressing")
> +    (synopsis "A counting progress-bar for Rust")

The synopsis should start with the word ‘A’ or ‘The’.

> +    (description
> +     "A lightweight, text-based, counting progress-bar for Rust")

Full sentence.

> +    (license license:asl2.0)))
> +
>  (define-public rust-progrs-0.1
>    (package
>      (name "rust-progrs")
> @@ -40394,6 +40587,32 @@ and Jaro-Winkler.")
>       "Parse command line argument by defining a struct.")
>      (license (list license:asl2.0 license:expat))))
>  
> +(define-public rust-structopt-0.3.21
> +  (package
> +    (name "rust-structopt")
> +    (version "0.3.21")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "structopt" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "136j0lvjmpv5syi751vxg8vb30gfyv4k81x8d18kxrj6xvbsqxsj"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:skip-build? #t
> +       #:cargo-inputs
> +       (("rust-structopt-derive" ,rust-structopt-derive-0.4.14)
> +        ("rust-lazy-static" ,rust-lazy-static-1)
> +        ("rust-clap" ,rust-clap-2))))
> +    (home-page "https://github.com/TeXitoi/structopt")
> +    (synopsis "Parse command line argument by defining a struct")
> +    (description
> +     "Parse command line argument by defining a struct.")

Full sentence.

> +(define-public rust-structopt-derive-0.4.14
> +  (package
> +   (name "rust-structopt-derive")
> +   (version "0.4.14")
> +   (source
> +    (origin
> +     (method url-fetch)
> +     (uri (crate-uri "structopt-derive" version))
> +     (file-name
> +      (string-append name "-" version ".tar.gz"))
> +     (sha256
> +      (base32
> +       "143gjwvz3s86hwp070km83y25n8kqp5f01kb1dr19f4ilkywvaav"))))
> +   (build-system cargo-build-system)
> +   (arguments
> +    `(#:skip-build? #t
> +      #:cargo-inputs
> +      (("rust-heck" ,rust-heck-0.3)
> +       ("rust-proc-macro-error" ,rust-proc-macro-error-1)
> +       ("rust-proc-macro2" ,rust-proc-macro2-1)
> +       ("rust-syn" ,rust-syn-1)
> +       ("rust-quote" ,rust-quote-1))))
> +   (home-page "https://github.com/TeXitoi/structopt")
> +   (synopsis "Parse command line argument by defining a struct, derive crate")
> +   (description
> +    "Parse command line argument by defining a struct, derive crate.")

Full sentence.

> +(define-public nitrocli
> +  (package
> +    (name "nitrocli")
> +    (version "0.4.1")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (crate-uri "nitrocli" version))
> +	      (file-name (string-append name "-" version ".tar.gz"))
> +              (sha256
> +               (base32
> +                "1djspfvcqjipg17v8hkph8xrhkdg1xqjhq5jk1sr8vr750yavidy"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:tests? #f ;; 2/164 tests fail, nitrocli-ext tests failing
> +       #:cargo-inputs
> +       (("rust-anyhow" ,rust-anyhow-1)
> +        ("rust-base32" ,rust-base32-0.4)
> +        ("rust-directories" ,rust-directories-3)
> +        ("rust-envy" ,rust-envy-0.4)
> +        ("rust-libc-0.2" ,rust-libc-0.2)
> +        ("rust-merge" ,rust-merge-0.1)
> +        ("rust-nitrokey" ,rust-nitrokey-0.9)
> +        ("rust-progressing" ,rust-progressing-3)
> +        ("rust-serde" ,rust-serde-1)
> +        ("rust-structopt" ,rust-structopt-0.3.21)
> +        ("rust-termion" ,rust-termion-1)
> +        ("rust-toml" ,rust-toml-0.5))
> +       #:cargo-development-inputs
> +       (("rust-nitrokey-test" ,rust-nitrokey-test-0.5)
> +        ("rust-nitrokey-test-state" ,rust-nitrokey-test-state-0.1)
> +        ("rust-regex" ,rust-regex-1)
> +        ("rust-tempfile" ,rust-tempfile-3))))
> +    (inputs
> +     `(("hidapi" ,hidapi)
> +       ("gnupg" ,gnupg)))
> +    (home-page "https://github.com/d-e-s-o/nitrocli")
> +    (synopsis "Command line tool for Nitrokey devices")
> +    (description
> +     "nitrocli is a program that provides a command line interface
> +for interaction with Nitrokey Pro, Nitrokey Storage, and Librem Key
> +devices.")
> +    (license license:gpl3+)))

Please run ‘guix lint’ before submitting patches, most of these mistakes
should have been caught by it.

Could you send an updated patch set?


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]

^ permalink raw reply	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH] Add nitrocli
  2021-05-26  3:57 [bug#48671] [PATCH] Add nitrocli Antero Mejr
  2021-05-27  6:59 ` Xinglu Chen
@ 2021-05-27  7:11 ` Xinglu Chen
  2021-05-30 21:42 ` [bug#48671] [PATCH 01/11] gnu: " Antero Mejr
  2021-05-31 23:55 ` [bug#48671] [PATCH 1/9] " Antero Mejr
  3 siblings, 0 replies; 28+ messages in thread
From: Xinglu Chen @ 2021-05-27  7:11 UTC (permalink / raw)
  To: Antero Mejr, 48671; +Cc: Antero Mejr

On Tue, May 25 2021, Antero Mejr wrote:

> ---
> Tested using a Purism Key. Has new package definitions for some
> updated crate dependencies like rust-structopt-0.3.21, I can update
> the main definition if that is preferred.

I am not familiar with the Rust ecosystem in Guix, but I will leave some
more general comments.

>  gnu/packages/crates-io.scm      | 247 ++++++++++++++++++++++++++++++++
>  gnu/packages/security-token.scm |  46 ++++++
>  2 files changed, 293 insertions(+)

This patch should be split into multiple patches where each patch adds a
single package.  You can run ‘guile etc/committers.scm’ to automatically
generate commit messages for unstaged changes (you should probably
double check just in case).

> +(define-public rust-base32-0.4
> +  (package
> +    (name "rust-base32")
> +    (version "0.4.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "base32" version))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1ykwx8jhksqxghfgyw2pzikzjf4n9wqm1x2ww5wqyn68ssf6dki3"))))
> +    (build-system cargo-build-system)
> +    (home-page "https://github.com/andreasots/base32")
> +    (synopsis "Base32 encoder/decoder for Rust")
> +    (description "Base32 encoder/decoder for Rust")

The description should consist of one or more full sentences, see the
‘16.4.4 Synopses and Descriptions’ in the manual.

> +(define-public rust-envy-0.4
> +  (package
> +    (name "rust-envy")
> +    (version "0.4.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "envy" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0rar459p7pl19v6pbx98q3hi2hxfl8q1ndxxw5d4zd9cgway0irz"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:cargo-inputs
> +       (("rust-serde" ,rust-serde-1))))
> +    (home-page "https://github.com/softprops/envy")
> +    (synopsis "deserialize env vars into typesafe structs")
> +    (description
> +     "deserialize env vars into typesafe structs")

Write a full sentence, and capitalize.

> +(define-public rust-merge-0.1
> +  (package
> +    (name "rust-merge")
> +    (version "0.1.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "merge" version))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1sck0vhi9lk8a6mgky0rgn842fj7yspywidwbd963nmimf9yzfqh"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:cargo-inputs
> +       (("rust-merge-derive" ,rust-merge-derive-0.1)
> +        ("rust-num-traits" ,rust-num-traits-0.2))))
> +    (home-page "https://git.sr.ht/~ireas/merge-rs")
> +    (synopsis "Merge multiple values into one")
> +    (description "Merge multiple values into one")

Likewise.

> +(define-public rust-nitrokey-0.9
> +  (package
> +    (name "rust-nitrokey")
> +    (version "0.9.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "nitrokey" version))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "0c8mj52ckvy1311vwxs6jpw16b2bihp5cc811isb96j9slcjvsyx"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:cargo-inputs
> +       (("rust-lazy_static" ,rust-lazy-static-1)
> +        ("rust-libc" ,rust-libc-0.2)
> +        ("rust-nitrokey-sys" ,rust-nitrokey-sys-3)
> +        ("rust-rand_core" ,rust-rand-core-0.5))))
> +    (home-page "https://git.sr.ht/~ireas/nitrokey-rs")
> +    (synopsis "Rust bindings to libnitrokey")
> +    (description
> +     "Bindings to libnitrokey for communication with Nitrokey devices")

Likewise.

> +(define-public rust-nitrokey-sys-3
> +  (package
> +    (name "rust-nitrokey-sys")
> +    (version "3.6.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "nitrokey-sys" version))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "08c3lnb8iqx000jd5rzvrdvv4ihjyw3x3s8q11dw56is0nmjyvws"))))
> +    (build-system cargo-build-system)
> +    (home-page "https://git.sr.ht/~ireas/nitrokey-sys-rs")
> +    (synopsis "Low-level Rust bindings for libnitrokey")
> +    (description
> +     "Low-level bindings to libnitrokey for communication with
> +Nitrokey devices")

Likewise.

> +(define-public rust-nitrokey-test-0.5
> +  (package
> +    (name "rust-nitrokey-test")
> +    (version "0.5.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "nitrokey-test" version))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "197j9r2s4ydzbqfydza6v31mgcsgd29jpidz4psqawjdm49f8lg6"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:cargo-inputs
> +       (("rust-proc-macro2" ,rust-proc-macro2-1)
> +        ("quote" ,rust-quote-1)
> +        ("syn" ,rust-syn-1))))
> +    (home-page "https://github.com/d-e-s-o/nitrokey-test")
> +    (synopsis "Supporting test infrastructure for the nitrokey crate")
> +    (description
> +     "Supporting test infrastructure for the nitrokey crate and others
> +using it.")

Likewise.

> +    (license license:gpl3+)))
> +
> +(define-public rust-nitrokey-test-state-0.1
> +  (package
> +    (name "rust-nitrokey-test-state")
> +    (version "0.1.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "nitrokey-test-state" version))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "00w817kl8q3sna924pzl72ybqljny14rdv1ixlj288fmsqp776x5"))))
> +    (build-system cargo-build-system)
> +    (home-page "https://github.com/d-e-s-o/nitrokey-test")
> +    (synopsis "State required and used by the nitrokey-test crate")
> +    (description "State required and used by the nitrokey-test crate.")

Likewise.

> +(define-public rust-progressing-3
> +  (package
> +    (name "rust-progressing")
> +    (version "3.0.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "progressing" version))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "06sb1cxpkc8lx56s76c95cfljs0513nsnn35wd6w79sblwcxpdwp"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:cargo-inputs
> +       (("log" ,rust-log-0.4))))
> +    (home-page "https://github.com/dominicparga/progressing")
> +    (synopsis "A counting progress-bar for Rust")

The synopsis should start with the word ‘A’ or ‘The’.

> +    (description
> +     "A lightweight, text-based, counting progress-bar for Rust")

Full sentence.

> +    (license license:asl2.0)))
> +
>  (define-public rust-progrs-0.1
>    (package
>      (name "rust-progrs")
> @@ -40394,6 +40587,32 @@ and Jaro-Winkler.")
>       "Parse command line argument by defining a struct.")
>      (license (list license:asl2.0 license:expat))))
>  
> +(define-public rust-structopt-0.3.21
> +  (package
> +    (name "rust-structopt")
> +    (version "0.3.21")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "structopt" version))
> +       (file-name
> +        (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "136j0lvjmpv5syi751vxg8vb30gfyv4k81x8d18kxrj6xvbsqxsj"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:skip-build? #t
> +       #:cargo-inputs
> +       (("rust-structopt-derive" ,rust-structopt-derive-0.4.14)
> +        ("rust-lazy-static" ,rust-lazy-static-1)
> +        ("rust-clap" ,rust-clap-2))))
> +    (home-page "https://github.com/TeXitoi/structopt")
> +    (synopsis "Parse command line argument by defining a struct")
> +    (description
> +     "Parse command line argument by defining a struct.")

Full sentence.

> +(define-public rust-structopt-derive-0.4.14
> +  (package
> +   (name "rust-structopt-derive")
> +   (version "0.4.14")
> +   (source
> +    (origin
> +     (method url-fetch)
> +     (uri (crate-uri "structopt-derive" version))
> +     (file-name
> +      (string-append name "-" version ".tar.gz"))
> +     (sha256
> +      (base32
> +       "143gjwvz3s86hwp070km83y25n8kqp5f01kb1dr19f4ilkywvaav"))))
> +   (build-system cargo-build-system)
> +   (arguments
> +    `(#:skip-build? #t
> +      #:cargo-inputs
> +      (("rust-heck" ,rust-heck-0.3)
> +       ("rust-proc-macro-error" ,rust-proc-macro-error-1)
> +       ("rust-proc-macro2" ,rust-proc-macro2-1)
> +       ("rust-syn" ,rust-syn-1)
> +       ("rust-quote" ,rust-quote-1))))
> +   (home-page "https://github.com/TeXitoi/structopt")
> +   (synopsis "Parse command line argument by defining a struct, derive crate")
> +   (description
> +    "Parse command line argument by defining a struct, derive crate.")

Full sentence.

> +(define-public nitrocli
> +  (package
> +    (name "nitrocli")
> +    (version "0.4.1")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (crate-uri "nitrocli" version))
> +	      (file-name (string-append name "-" version ".tar.gz"))
> +              (sha256
> +               (base32
> +                "1djspfvcqjipg17v8hkph8xrhkdg1xqjhq5jk1sr8vr750yavidy"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:tests? #f ;; 2/164 tests fail, nitrocli-ext tests failing
> +       #:cargo-inputs
> +       (("rust-anyhow" ,rust-anyhow-1)
> +        ("rust-base32" ,rust-base32-0.4)
> +        ("rust-directories" ,rust-directories-3)
> +        ("rust-envy" ,rust-envy-0.4)
> +        ("rust-libc-0.2" ,rust-libc-0.2)
> +        ("rust-merge" ,rust-merge-0.1)
> +        ("rust-nitrokey" ,rust-nitrokey-0.9)
> +        ("rust-progressing" ,rust-progressing-3)
> +        ("rust-serde" ,rust-serde-1)
> +        ("rust-structopt" ,rust-structopt-0.3.21)
> +        ("rust-termion" ,rust-termion-1)
> +        ("rust-toml" ,rust-toml-0.5))
> +       #:cargo-development-inputs
> +       (("rust-nitrokey-test" ,rust-nitrokey-test-0.5)
> +        ("rust-nitrokey-test-state" ,rust-nitrokey-test-state-0.1)
> +        ("rust-regex" ,rust-regex-1)
> +        ("rust-tempfile" ,rust-tempfile-3))))
> +    (inputs
> +     `(("hidapi" ,hidapi)
> +       ("gnupg" ,gnupg)))
> +    (home-page "https://github.com/d-e-s-o/nitrocli")
> +    (synopsis "Command line tool for Nitrokey devices")
> +    (description
> +     "nitrocli is a program that provides a command line interface
> +for interaction with Nitrokey Pro, Nitrokey Storage, and Librem Key
> +devices.")
> +    (license license:gpl3+)))

Please run ‘guix lint’ before submitting patches, most of these mistakes
should have been caught by it.

Could you send an updated patch set?





^ permalink raw reply	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 01/11] gnu: Add nitrocli.
  2021-05-26  3:57 [bug#48671] [PATCH] Add nitrocli Antero Mejr
  2021-05-27  6:59 ` Xinglu Chen
  2021-05-27  7:11 ` Xinglu Chen
@ 2021-05-30 21:42 ` Antero Mejr
  2021-05-30 21:42   ` [bug#48671] [PATCH 02/11] gnu: Add rust-structopt-derive-0.4.14 Antero Mejr
                     ` (10 more replies)
  2021-05-31 23:55 ` [bug#48671] [PATCH 1/9] " Antero Mejr
  3 siblings, 11 replies; 28+ messages in thread
From: Antero Mejr @ 2021-05-30 21:42 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

* gnu/packages/security-token.scm (nitrocli): New variable.
---
Thanks for the feedback Xinglu, I updated the package descriptions and linted.
Resubmitting the patches as separate commits.

 gnu/packages/security-token.scm | 43 +++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

diff --git a/gnu/packages/security-token.scm b/gnu/packages/security-token.scm
index dfa43bb2bf..fcb1123f2b 100644
--- a/gnu/packages/security-token.scm
+++ b/gnu/packages/security-token.scm
@@ -674,3 +674,46 @@ that after installing this package, you might still need to add appropriate
 udev rules to your system configuration to be able to configure the YubiKey as
 an unprivileged user.")
     (license license:bsd-2)))
+
+(define-public nitrocli
+  (package
+    (name "nitrocli")
+    (version "0.4.1")
+    (source (origin
+              (method url-fetch)
+              (uri (crate-uri "nitrocli" version))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1djspfvcqjipg17v8hkph8xrhkdg1xqjhq5jk1sr8vr750yavidy"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:tests? #f ;; 2/164 tests fail, nitrocli-ext tests failing
+       #:cargo-inputs
+       (("rust-anyhow" ,rust-anyhow-1)
+        ("rust-base32" ,rust-base32-0.4)
+        ("rust-directories" ,rust-directories-3)
+        ("rust-envy" ,rust-envy-0.4)
+        ("rust-libc-0.2" ,rust-libc-0.2)
+        ("rust-merge" ,rust-merge-0.1)
+        ("rust-nitrokey" ,rust-nitrokey-0.9)
+        ("rust-progressing" ,rust-progressing-3)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-structopt" ,rust-structopt-0.3.21)
+        ("rust-termion" ,rust-termion-1)
+        ("rust-toml" ,rust-toml-0.5))
+       #:cargo-development-inputs
+       (("rust-nitrokey-test" ,rust-nitrokey-test-0.5)
+        ("rust-nitrokey-test-state" ,rust-nitrokey-test-state-0.1)
+        ("rust-regex" ,rust-regex-1)
+        ("rust-tempfile" ,rust-tempfile-3))))
+    (inputs
+     `(("hidapi" ,hidapi)
+       ("gnupg" ,gnupg)))
+    (home-page "https://github.com/d-e-s-o/nitrocli")
+    (synopsis "Command line tool for Nitrokey devices")
+    (description
+     "nitrocli is a program that provides a command line interface
+for interaction with Nitrokey Pro, Nitrokey Storage, and Librem Key
+devices.")
+    (license license:gpl3+)))
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 02/11] gnu: Add rust-structopt-derive-0.4.14.
  2021-05-30 21:42 ` [bug#48671] [PATCH 01/11] gnu: " Antero Mejr
@ 2021-05-30 21:42   ` Antero Mejr
  2021-05-30 21:42   ` [bug#48671] [PATCH 03/11] gnu: Add rust-structopt-0.3.21 Antero Mejr
                     ` (9 subsequent siblings)
  10 siblings, 0 replies; 28+ messages in thread
From: Antero Mejr @ 2021-05-30 21:42 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

* gnu/packages/crates-io.scm (rust-structopt-derive-0.4.14): New variable.
---
 gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 318b2c695b..64fa6ef2f5 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -40446,6 +40446,34 @@ and Jaro-Winkler.")
      "Parse command line argument by defining a struct, derive crate.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-structopt-derive-0.4.14
+  (package
+   (name "rust-structopt-derive")
+   (version "0.4.14")
+   (source
+    (origin
+     (method url-fetch)
+     (uri (crate-uri "structopt-derive" version))
+     (file-name
+      (string-append name "-" version ".tar.gz"))
+     (sha256
+      (base32
+       "143gjwvz3s86hwp070km83y25n8kqp5f01kb1dr19f4ilkywvaav"))))
+   (build-system cargo-build-system)
+   (arguments
+    `(#:skip-build? #t
+      #:cargo-inputs
+      (("rust-heck" ,rust-heck-0.3)
+       ("rust-proc-macro-error" ,rust-proc-macro-error-1)
+       ("rust-proc-macro2" ,rust-proc-macro2-1)
+       ("rust-syn" ,rust-syn-1)
+       ("rust-quote" ,rust-quote-1))))
+   (home-page "https://github.com/TeXitoi/structopt")
+   (synopsis "Parse command line argument by defining a struct, derive crate")
+   (description
+    "This package provides the derive Rust crate for the structopt crate.")
+   (license license:asl2.0)))
+
 (define-public rust-structopt-derive-0.2
   (package
     (name "rust-structopt-derive")
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 03/11] gnu: Add rust-structopt-0.3.21.
  2021-05-30 21:42 ` [bug#48671] [PATCH 01/11] gnu: " Antero Mejr
  2021-05-30 21:42   ` [bug#48671] [PATCH 02/11] gnu: Add rust-structopt-derive-0.4.14 Antero Mejr
@ 2021-05-30 21:42   ` Antero Mejr
  2021-05-30 21:42   ` [bug#48671] [PATCH 04/11] gnu: Add rust-progressing-3 Antero Mejr
                     ` (8 subsequent siblings)
  10 siblings, 0 replies; 28+ messages in thread
From: Antero Mejr @ 2021-05-30 21:42 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

* gnu/packages/crates-io.scm (rust-structopt-0.3.21): New variable.
---
 gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 64fa6ef2f5..dd9800b733 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -40394,6 +40394,33 @@ and Jaro-Winkler.")
      "Parse command line argument by defining a struct.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-structopt-0.3.21
+  (package
+    (name "rust-structopt")
+    (version "0.3.21")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "structopt" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "136j0lvjmpv5syi751vxg8vb30gfyv4k81x8d18kxrj6xvbsqxsj"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-structopt-derive" ,rust-structopt-derive-0.4.14)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-clap" ,rust-clap-2))))
+    (home-page "https://github.com/TeXitoi/structopt")
+    (synopsis "Parse command line argument by defining a struct")
+    (description
+     "This package parses command lines arguments by defining a Rust
+struct.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-structopt-0.2
   (package
     (name "rust-structopt")
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 04/11] gnu: Add rust-progressing-3.
  2021-05-30 21:42 ` [bug#48671] [PATCH 01/11] gnu: " Antero Mejr
  2021-05-30 21:42   ` [bug#48671] [PATCH 02/11] gnu: Add rust-structopt-derive-0.4.14 Antero Mejr
  2021-05-30 21:42   ` [bug#48671] [PATCH 03/11] gnu: Add rust-structopt-0.3.21 Antero Mejr
@ 2021-05-30 21:42   ` Antero Mejr
  2021-05-30 21:42   ` [bug#48671] [PATCH 05/11] gnu: Add rust-nitrokey-0.9 Antero Mejr
                     ` (7 subsequent siblings)
  10 siblings, 0 replies; 28+ messages in thread
From: Antero Mejr @ 2021-05-30 21:42 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

* gnu/packages/crates-io.scm (rust-progressing-3): New variable.
---
 gnu/packages/crates-io.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index dd9800b733..e20feb78f2 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -30203,6 +30203,29 @@ macro use case.")
 @code{proc_macro_derive} pretend to be @code{proc_macro}.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-progressing-3
+  (package
+    (name "rust-progressing")
+    (version "3.0.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "progressing" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "06sb1cxpkc8lx56s76c95cfljs0513nsnn35wd6w79sblwcxpdwp"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("log" ,rust-log-0.4))))
+    (home-page "https://github.com/dominicparga/progressing")
+    (synopsis "Counting progress-bar for Rust")
+    (description
+     "This package provides a set of text-based, counting
+progress-bars for Rust.")
+    (license license:asl2.0)))
+
 (define-public rust-progrs-0.1
   (package
     (name "rust-progrs")
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 05/11] gnu: Add rust-nitrokey-0.9.
  2021-05-30 21:42 ` [bug#48671] [PATCH 01/11] gnu: " Antero Mejr
                     ` (2 preceding siblings ...)
  2021-05-30 21:42   ` [bug#48671] [PATCH 04/11] gnu: Add rust-progressing-3 Antero Mejr
@ 2021-05-30 21:42   ` Antero Mejr
  2021-05-30 21:42   ` [bug#48671] [PATCH 06/11] gnu: Add rust-merge-0.1 Antero Mejr
                     ` (6 subsequent siblings)
  10 siblings, 0 replies; 28+ messages in thread
From: Antero Mejr @ 2021-05-30 21:42 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

* gnu/packages/crates-io.scm (rust-nitrokey-0.9): New variable.
---
 gnu/packages/crates-io.scm | 90 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 90 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index e20feb78f2..e41920652e 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -25107,6 +25107,96 @@ selectors.  You can use the jQuery-like syntax to query and manipulate an HTML
 document quickly.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-nitrokey-0.9
+  (package
+    (name "rust-nitrokey")
+    (version "0.9.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "nitrokey" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0c8mj52ckvy1311vwxs6jpw16b2bihp5cc811isb96j9slcjvsyx"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-lazy_static" ,rust-lazy-static-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-nitrokey-sys" ,rust-nitrokey-sys-3)
+        ("rust-rand_core" ,rust-rand-core-0.5))))
+    (home-page "https://git.sr.ht/~ireas/nitrokey-rs")
+    (synopsis "Rust bindings to libnitrokey")
+    (description
+     "This package provides bindings to libnitrokey for communication
+with Nitrokey devices.")
+    (license license:expat)))
+
+(define-public rust-nitrokey-sys-3
+  (package
+    (name "rust-nitrokey-sys")
+    (version "3.6.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "nitrokey-sys" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "08c3lnb8iqx000jd5rzvrdvv4ihjyw3x3s8q11dw56is0nmjyvws"))))
+    (build-system cargo-build-system)
+    (home-page "https://git.sr.ht/~ireas/nitrokey-sys-rs")
+    (synopsis "Low-level Rust bindings for libnitrokey")
+    (description
+     "This package provides low-level bindings to libnitrokey for
+communication with Nitrokey devices.")
+    (license license:lgpl3)))
+
+(define-public rust-nitrokey-test-0.5
+  (package
+    (name "rust-nitrokey-test")
+    (version "0.5.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "nitrokey-test" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "197j9r2s4ydzbqfydza6v31mgcsgd29jpidz4psqawjdm49f8lg6"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-proc-macro2" ,rust-proc-macro2-1)
+        ("quote" ,rust-quote-1)
+        ("syn" ,rust-syn-1))))
+    (home-page "https://github.com/d-e-s-o/nitrokey-test")
+    (synopsis "Supporting test infrastructure for the nitrokey crate")
+    (description
+     "This package provides supporting test infrastructure for the
+nitrokey crate and others using it.")
+    (license license:gpl3+)))
+
+(define-public rust-nitrokey-test-state-0.1
+  (package
+    (name "rust-nitrokey-test-state")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "nitrokey-test-state" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "00w817kl8q3sna924pzl72ybqljny14rdv1ixlj288fmsqp776x5"))))
+    (build-system cargo-build-system)
+    (home-page "https://github.com/d-e-s-o/nitrokey-test")
+    (synopsis "State required and used by the nitrokey-test crate")
+    (description "This package provides state required and used by the
+nitrokey-test crate.")
+    (license license:gpl3+)))
+
 (define-public rust-nix-0.20
   (package
     (name "rust-nix")
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 06/11] gnu: Add rust-merge-0.1.
  2021-05-30 21:42 ` [bug#48671] [PATCH 01/11] gnu: " Antero Mejr
                     ` (3 preceding siblings ...)
  2021-05-30 21:42   ` [bug#48671] [PATCH 05/11] gnu: Add rust-nitrokey-0.9 Antero Mejr
@ 2021-05-30 21:42   ` Antero Mejr
  2021-05-31 20:51     ` Xinglu Chen
  2021-05-30 21:42   ` [bug#48671] [PATCH 07/11] gnu: Add rust-envy-0.4 Antero Mejr
                     ` (5 subsequent siblings)
  10 siblings, 1 reply; 28+ messages in thread
From: Antero Mejr @ 2021-05-30 21:42 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

* gnu/packages/crates-io.scm (rust-merge-0.1): New variable.
---
 gnu/packages/crates-io.scm | 42 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index e41920652e..7250853f81 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -23390,6 +23390,48 @@ for Rust structs.")
        (sha256
         (base32 "13ir50j549gdz94pds1i7ljnk14d66q5x91s11hncm1pih7jif8c"))))))
 
+(define-public rust-merge-0.1
+  (package
+    (name "rust-merge")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "merge" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1sck0vhi9lk8a6mgky0rgn842fj7yspywidwbd963nmimf9yzfqh"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-merge-derive" ,rust-merge-derive-0.1)
+        ("rust-num-traits" ,rust-num-traits-0.2))))
+    (home-page "https://git.sr.ht/~ireas/merge-rs")
+    (synopsis "Rust trait for objects that can be merged")
+    (description "This package provides a merge trait that can be used
+to merge two objects of the same type into one.")
+    (license (list license:asl2.0 license:expat))))
+
+(define-public rust-merge-derive-0.1
+  (package
+    (name "rust-merge-derive")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "merge_derive" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "01wxhi7mqmp34l540wcfb24hb13vcbps4wlynas66bnsfra0g790"))))
+    (build-system cargo-build-system)
+    (home-page
+     "https://git.sr.ht/~ireas/merge-rs/tree/master/merge_derive")
+    (synopsis "Derive macro for the merge crate")
+    (description "This crate provides a derive macro for the
+merge::Merge crate.  See the merge crate for more information.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-merlin-2
   (package
     (name "rust-merlin")
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 07/11] gnu: Add rust-envy-0.4.
  2021-05-30 21:42 ` [bug#48671] [PATCH 01/11] gnu: " Antero Mejr
                     ` (4 preceding siblings ...)
  2021-05-30 21:42   ` [bug#48671] [PATCH 06/11] gnu: Add rust-merge-0.1 Antero Mejr
@ 2021-05-30 21:42   ` Antero Mejr
  2021-05-30 21:42   ` [bug#48671] [PATCH 08/11] gnu: Add rust-base32-0.4 Antero Mejr
                     ` (4 subsequent siblings)
  10 siblings, 0 replies; 28+ messages in thread
From: Antero Mejr @ 2021-05-30 21:42 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

* gnu/packages/crates-io.scm (rust-envy-0.4): New variable.
---
 gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 7250853f81..fb8948715d 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -13308,6 +13308,30 @@ variables.")
      "Environment variables utility functions.")
     (license license:asl2.0)))
 
+(define-public rust-envy-0.4
+  (package
+    (name "rust-envy")
+    (version "0.4.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "envy" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0rar459p7pl19v6pbx98q3hi2hxfl8q1ndxxw5d4zd9cgway0irz"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-serde" ,rust-serde-1))))
+    (home-page "https://github.com/softprops/envy")
+    (synopsis "Deserialize environment variables into Rust structs")
+    (description
+     "This package provides access to typesafe config structs
+deserialized from environment variables.")
+     (license license:expat)))
+
 (define-public rust-erased-serde-0.3
   (package
     (name "rust-erased-serde")
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 08/11] gnu: Add rust-base32-0.4.
  2021-05-30 21:42 ` [bug#48671] [PATCH 01/11] gnu: " Antero Mejr
                     ` (5 preceding siblings ...)
  2021-05-30 21:42   ` [bug#48671] [PATCH 07/11] gnu: Add rust-envy-0.4 Antero Mejr
@ 2021-05-30 21:42   ` Antero Mejr
  2021-05-30 21:42   ` [bug#48671] [PATCH 09/11] gnu: Add nitrocli Antero Mejr
                     ` (3 subsequent siblings)
  10 siblings, 0 replies; 28+ messages in thread
From: Antero Mejr @ 2021-05-30 21:42 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

* gnu/packages/crates-io.scm (rust-base32-0.4): New variable.
---
 gnu/packages/crates-io.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index fb8948715d..a8cf25ba85 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -3702,6 +3702,25 @@ trace (backtrace) at runtime in a Rust program.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-base32-0.4
+  (package
+    (name "rust-base32")
+    (version "0.4.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "base32" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1ykwx8jhksqxghfgyw2pzikzjf4n9wqm1x2ww5wqyn68ssf6dki3"))))
+    (build-system cargo-build-system)
+    (home-page "https://github.com/andreasots/base32")
+    (synopsis "Base32 encoder/decoder for Rust")
+    (description "This library lets you encode and decode in either
+RFC4648 Base32 or in Crockford Base32.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-base58-0.1
   (package
     (name "rust-base58")
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 09/11] gnu: Add nitrocli.
  2021-05-30 21:42 ` [bug#48671] [PATCH 01/11] gnu: " Antero Mejr
                     ` (6 preceding siblings ...)
  2021-05-30 21:42   ` [bug#48671] [PATCH 08/11] gnu: Add rust-base32-0.4 Antero Mejr
@ 2021-05-30 21:42   ` Antero Mejr
  2021-05-31 20:53     ` Xinglu Chen
  2021-05-30 21:42   ` [bug#48671] [PATCH 10/11] " Antero Mejr
                     ` (2 subsequent siblings)
  10 siblings, 1 reply; 28+ messages in thread
From: Antero Mejr @ 2021-05-30 21:42 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

* gnu/packages/security-token.scm: New use-module.
---
 gnu/packages/security-token.scm | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/gnu/packages/security-token.scm b/gnu/packages/security-token.scm
index fcb1123f2b..001c94d02d 100644
--- a/gnu/packages/security-token.scm
+++ b/gnu/packages/security-token.scm
@@ -32,6 +32,7 @@
   #:use-module (guix download)
   #:use-module (guix gexp)
   #:use-module (guix git-download)
+  #:use-module (guix build-system cargo)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system glib-or-gtk)
   #:use-module (guix build-system python)
@@ -39,6 +40,7 @@
   #:use-module (gnu packages base)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages check)
+  #:use-module (gnu packages crates-io)
   #:use-module (gnu packages docbook)
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages dns)
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 10/11] gnu: Add nitrocli.
  2021-05-30 21:42 ` [bug#48671] [PATCH 01/11] gnu: " Antero Mejr
                     ` (7 preceding siblings ...)
  2021-05-30 21:42   ` [bug#48671] [PATCH 09/11] gnu: Add nitrocli Antero Mejr
@ 2021-05-30 21:42   ` Antero Mejr
  2021-05-30 21:42   ` [bug#48671] [PATCH 11/11] " Antero Mejr
  2021-05-31 21:05   ` [bug#48671] [PATCH 01/11] " Xinglu Chen
  10 siblings, 0 replies; 28+ messages in thread
From: Antero Mejr @ 2021-05-30 21:42 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

* gnu/packages/crates-io.scm: Add maintainer.
---
 gnu/packages/crates-io.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index a8cf25ba85..84f1bf784b 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -15,6 +15,7 @@
 ;;; Copyright © 2021 aecepoglu <aecepoglu@fastmail.fm>
 ;;; Copyright © 2021 Zheng Junjie <873216071@qq.com>
 ;;; Copyright © 2021 Alexandru-Sergiu Marton <brown121407@posteo.ro>
+;;; Copyright © 2021 Antero Mejr <antero@kodmin.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 11/11] gnu: Add nitrocli.
  2021-05-30 21:42 ` [bug#48671] [PATCH 01/11] gnu: " Antero Mejr
                     ` (8 preceding siblings ...)
  2021-05-30 21:42   ` [bug#48671] [PATCH 10/11] " Antero Mejr
@ 2021-05-30 21:42   ` Antero Mejr
  2021-05-31 21:05   ` [bug#48671] [PATCH 01/11] " Xinglu Chen
  10 siblings, 0 replies; 28+ messages in thread
From: Antero Mejr @ 2021-05-30 21:42 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

* gnu/packages/security-token.scm: Add maintainer.
---
 gnu/packages/security-token.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/security-token.scm b/gnu/packages/security-token.scm
index 001c94d02d..8f16984341 100644
--- a/gnu/packages/security-token.scm
+++ b/gnu/packages/security-token.scm
@@ -9,6 +9,7 @@
 ;;; Copyright © 2018, 2019 Chris Marusich <cmmarusich@gmail.com>
 ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2020 Raphaël Mélotte <raphael.melotte@mind.be>
+;;; Copyright © 2021 Antero Mejr <antero@kodmin.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 06/11] gnu: Add rust-merge-0.1.
  2021-05-30 21:42   ` [bug#48671] [PATCH 06/11] gnu: Add rust-merge-0.1 Antero Mejr
@ 2021-05-31 20:51     ` Xinglu Chen
  0 siblings, 0 replies; 28+ messages in thread
From: Xinglu Chen @ 2021-05-31 20:51 UTC (permalink / raw)
  To: Antero Mejr, 48671; +Cc: Antero Mejr

[-- Attachment #1: Type: text/plain, Size: 2518 bytes --]

On Sun, May 30 2021, Antero Mejr wrote:

> * gnu/packages/crates-io.scm (rust-merge-0.1): New variable.
> ---
>  gnu/packages/crates-io.scm | 42 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 42 insertions(+)

The second package should be in a separate patch.

> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index e41920652e..7250853f81 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -23390,6 +23390,48 @@ for Rust structs.")
>         (sha256
>          (base32 "13ir50j549gdz94pds1i7ljnk14d66q5x91s11hncm1pih7jif8c"))))))
>  
> +(define-public rust-merge-0.1
> +  (package
> +    (name "rust-merge")
> +    (version "0.1.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "merge" version))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1sck0vhi9lk8a6mgky0rgn842fj7yspywidwbd963nmimf9yzfqh"))))
> +    (build-system cargo-build-system)
> +    (arguments
> +     `(#:cargo-inputs
> +       (("rust-merge-derive" ,rust-merge-derive-0.1)
> +        ("rust-num-traits" ,rust-num-traits-0.2))))
> +    (home-page "https://git.sr.ht/~ireas/merge-rs")

It also has a page on sr.ht, which contains links to the mailing list.

  https://sr.ht/~ireas/merge-rs/

> +    (synopsis "Rust trait for objects that can be merged")
> +    (description "This package provides a merge trait that can be used
> +to merge two objects of the same type into one.")
> +    (license (list license:asl2.0 license:expat))))
> +
> +(define-public rust-merge-derive-0.1
> +  (package
> +    (name "rust-merge-derive")
> +    (version "0.1.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (crate-uri "merge_derive" version))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32 "01wxhi7mqmp34l540wcfb24hb13vcbps4wlynas66bnsfra0g790"))))
> +    (build-system cargo-build-system)
> +    (home-page
> +     "https://git.sr.ht/~ireas/merge-rs/tree/master/merge_derive")

Same as above.

> +    (synopsis "Derive macro for the merge crate")
> +    (description "This crate provides a derive macro for the
> +merge::Merge crate.  See the merge crate for more information.")

The last sentence doesn’t seem very helpful, it should be dropped.
Also, ‘merge::Merge’ should probably be formatted as
@code{merge::Merge}.



[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]

^ permalink raw reply	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 09/11] gnu: Add nitrocli.
  2021-05-30 21:42   ` [bug#48671] [PATCH 09/11] gnu: Add nitrocli Antero Mejr
@ 2021-05-31 20:53     ` Xinglu Chen
  0 siblings, 0 replies; 28+ messages in thread
From: Xinglu Chen @ 2021-05-31 20:53 UTC (permalink / raw)
  To: Antero Mejr, 48671; +Cc: Antero Mejr

[-- Attachment #1: Type: text/plain, Size: 177 bytes --]

On Sun, May 30 2021, Antero Mejr wrote:

> * gnu/packages/security-token.scm: New use-module.

Patches 09/11 to 11/11 should be squashed/fixed-up into the appropriate
commits.


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]

^ permalink raw reply	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 01/11] gnu: Add nitrocli.
  2021-05-30 21:42 ` [bug#48671] [PATCH 01/11] gnu: " Antero Mejr
                     ` (9 preceding siblings ...)
  2021-05-30 21:42   ` [bug#48671] [PATCH 11/11] " Antero Mejr
@ 2021-05-31 21:05   ` Xinglu Chen
  10 siblings, 0 replies; 28+ messages in thread
From: Xinglu Chen @ 2021-05-31 21:05 UTC (permalink / raw)
  To: Antero Mejr, 48671; +Cc: Antero Mejr

[-- Attachment #1: Type: text/plain, Size: 505 bytes --]

On Sun, May 30 2021, Antero Mejr wrote:

> * gnu/packages/security-token.scm (nitrocli): New variable.
> ---
> Thanks for the feedback Xinglu, I updated the package descriptions and linted.
> Resubmitting the patches as separate commits.
>
>  gnu/packages/security-token.scm | 43 +++++++++++++++++++++++++++++++++
>  1 file changed, 43 insertions(+)

The package builds fine on my end, the patches I haven’t commented on
look good.

Could you send a updated (hopefully final) series? :)


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]

^ permalink raw reply	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 1/9] gnu: Add nitrocli.
  2021-05-26  3:57 [bug#48671] [PATCH] Add nitrocli Antero Mejr
                   ` (2 preceding siblings ...)
  2021-05-30 21:42 ` [bug#48671] [PATCH 01/11] gnu: " Antero Mejr
@ 2021-05-31 23:55 ` Antero Mejr
  2021-05-31 23:55   ` [bug#48671] [PATCH 2/9] gnu: Add rust-structopt-derive-0.4.14 Antero Mejr
                     ` (9 more replies)
  3 siblings, 10 replies; 28+ messages in thread
From: Antero Mejr @ 2021-05-31 23:55 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

* gnu/packages/security-token.scm (nitrocli): New variable.
---
Updated patch set with the requested changes.

 gnu/packages/security-token.scm | 46 +++++++++++++++++++++++++++++++++
 1 file changed, 46 insertions(+)

diff --git a/gnu/packages/security-token.scm b/gnu/packages/security-token.scm
index dfa43bb2bf..8f16984341 100644
--- a/gnu/packages/security-token.scm
+++ b/gnu/packages/security-token.scm
@@ -9,6 +9,7 @@
 ;;; Copyright © 2018, 2019 Chris Marusich <cmmarusich@gmail.com>
 ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2020 Raphaël Mélotte <raphael.melotte@mind.be>
+;;; Copyright © 2021 Antero Mejr <antero@kodmin.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -32,6 +33,7 @@
   #:use-module (guix download)
   #:use-module (guix gexp)
   #:use-module (guix git-download)
+  #:use-module (guix build-system cargo)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system glib-or-gtk)
   #:use-module (guix build-system python)
@@ -39,6 +41,7 @@
   #:use-module (gnu packages base)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages check)
+  #:use-module (gnu packages crates-io)
   #:use-module (gnu packages docbook)
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages dns)
@@ -674,3 +677,46 @@ that after installing this package, you might still need to add appropriate
 udev rules to your system configuration to be able to configure the YubiKey as
 an unprivileged user.")
     (license license:bsd-2)))
+
+(define-public nitrocli
+  (package
+    (name "nitrocli")
+    (version "0.4.1")
+    (source (origin
+              (method url-fetch)
+              (uri (crate-uri "nitrocli" version))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1djspfvcqjipg17v8hkph8xrhkdg1xqjhq5jk1sr8vr750yavidy"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:tests? #f ;; 2/164 tests fail, nitrocli-ext tests failing
+       #:cargo-inputs
+       (("rust-anyhow" ,rust-anyhow-1)
+        ("rust-base32" ,rust-base32-0.4)
+        ("rust-directories" ,rust-directories-3)
+        ("rust-envy" ,rust-envy-0.4)
+        ("rust-libc-0.2" ,rust-libc-0.2)
+        ("rust-merge" ,rust-merge-0.1)
+        ("rust-nitrokey" ,rust-nitrokey-0.9)
+        ("rust-progressing" ,rust-progressing-3)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-structopt" ,rust-structopt-0.3.21)
+        ("rust-termion" ,rust-termion-1)
+        ("rust-toml" ,rust-toml-0.5))
+       #:cargo-development-inputs
+       (("rust-nitrokey-test" ,rust-nitrokey-test-0.5)
+        ("rust-nitrokey-test-state" ,rust-nitrokey-test-state-0.1)
+        ("rust-regex" ,rust-regex-1)
+        ("rust-tempfile" ,rust-tempfile-3))))
+    (inputs
+     `(("hidapi" ,hidapi)
+       ("gnupg" ,gnupg)))
+    (home-page "https://github.com/d-e-s-o/nitrocli")
+    (synopsis "Command line tool for Nitrokey devices")
+    (description
+     "nitrocli is a program that provides a command line interface
+for interaction with Nitrokey Pro, Nitrokey Storage, and Librem Key
+devices.")
+    (license license:gpl3+)))
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 2/9] gnu: Add rust-structopt-derive-0.4.14.
  2021-05-31 23:55 ` [bug#48671] [PATCH 1/9] " Antero Mejr
@ 2021-05-31 23:55   ` Antero Mejr
  2021-05-31 23:55   ` [bug#48671] [PATCH 3/9] gnu: Add rust-structopt-0.3.21 Antero Mejr
                     ` (8 subsequent siblings)
  9 siblings, 0 replies; 28+ messages in thread
From: Antero Mejr @ 2021-05-31 23:55 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

* gnu/packages/crates-io.scm (rust-structopt-derive-0.4.14): New variable.
---
 gnu/packages/crates-io.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 318b2c695b..64fa6ef2f5 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -40446,6 +40446,34 @@ and Jaro-Winkler.")
      "Parse command line argument by defining a struct, derive crate.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-structopt-derive-0.4.14
+  (package
+   (name "rust-structopt-derive")
+   (version "0.4.14")
+   (source
+    (origin
+     (method url-fetch)
+     (uri (crate-uri "structopt-derive" version))
+     (file-name
+      (string-append name "-" version ".tar.gz"))
+     (sha256
+      (base32
+       "143gjwvz3s86hwp070km83y25n8kqp5f01kb1dr19f4ilkywvaav"))))
+   (build-system cargo-build-system)
+   (arguments
+    `(#:skip-build? #t
+      #:cargo-inputs
+      (("rust-heck" ,rust-heck-0.3)
+       ("rust-proc-macro-error" ,rust-proc-macro-error-1)
+       ("rust-proc-macro2" ,rust-proc-macro2-1)
+       ("rust-syn" ,rust-syn-1)
+       ("rust-quote" ,rust-quote-1))))
+   (home-page "https://github.com/TeXitoi/structopt")
+   (synopsis "Parse command line argument by defining a struct, derive crate")
+   (description
+    "This package provides the derive Rust crate for the structopt crate.")
+   (license license:asl2.0)))
+
 (define-public rust-structopt-derive-0.2
   (package
     (name "rust-structopt-derive")
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 3/9] gnu: Add rust-structopt-0.3.21.
  2021-05-31 23:55 ` [bug#48671] [PATCH 1/9] " Antero Mejr
  2021-05-31 23:55   ` [bug#48671] [PATCH 2/9] gnu: Add rust-structopt-derive-0.4.14 Antero Mejr
@ 2021-05-31 23:55   ` Antero Mejr
  2021-05-31 23:55   ` [bug#48671] [PATCH 4/9] gnu: Add rust-progressing-3 Antero Mejr
                     ` (7 subsequent siblings)
  9 siblings, 0 replies; 28+ messages in thread
From: Antero Mejr @ 2021-05-31 23:55 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

* gnu/packages/crates-io.scm (rust-structopt-0.3.21): New variable.
---
 gnu/packages/crates-io.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 64fa6ef2f5..dd9800b733 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -40394,6 +40394,33 @@ and Jaro-Winkler.")
      "Parse command line argument by defining a struct.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-structopt-0.3.21
+  (package
+    (name "rust-structopt")
+    (version "0.3.21")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "structopt" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "136j0lvjmpv5syi751vxg8vb30gfyv4k81x8d18kxrj6xvbsqxsj"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:skip-build? #t
+       #:cargo-inputs
+       (("rust-structopt-derive" ,rust-structopt-derive-0.4.14)
+        ("rust-lazy-static" ,rust-lazy-static-1)
+        ("rust-clap" ,rust-clap-2))))
+    (home-page "https://github.com/TeXitoi/structopt")
+    (synopsis "Parse command line argument by defining a struct")
+    (description
+     "This package parses command lines arguments by defining a Rust
+struct.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-structopt-0.2
   (package
     (name "rust-structopt")
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 4/9] gnu: Add rust-progressing-3.
  2021-05-31 23:55 ` [bug#48671] [PATCH 1/9] " Antero Mejr
  2021-05-31 23:55   ` [bug#48671] [PATCH 2/9] gnu: Add rust-structopt-derive-0.4.14 Antero Mejr
  2021-05-31 23:55   ` [bug#48671] [PATCH 3/9] gnu: Add rust-structopt-0.3.21 Antero Mejr
@ 2021-05-31 23:55   ` Antero Mejr
  2021-05-31 23:55   ` [bug#48671] [PATCH 5/9] gnu: Add rust-nitrokey-0.9 Antero Mejr
                     ` (6 subsequent siblings)
  9 siblings, 0 replies; 28+ messages in thread
From: Antero Mejr @ 2021-05-31 23:55 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

* gnu/packages/crates-io.scm (rust-progressing-3): New variable.
---
 gnu/packages/crates-io.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index dd9800b733..e20feb78f2 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -30203,6 +30203,29 @@ macro use case.")
 @code{proc_macro_derive} pretend to be @code{proc_macro}.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-progressing-3
+  (package
+    (name "rust-progressing")
+    (version "3.0.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "progressing" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "06sb1cxpkc8lx56s76c95cfljs0513nsnn35wd6w79sblwcxpdwp"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("log" ,rust-log-0.4))))
+    (home-page "https://github.com/dominicparga/progressing")
+    (synopsis "Counting progress-bar for Rust")
+    (description
+     "This package provides a set of text-based, counting
+progress-bars for Rust.")
+    (license license:asl2.0)))
+
 (define-public rust-progrs-0.1
   (package
     (name "rust-progrs")
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 5/9] gnu: Add rust-nitrokey-0.9.
  2021-05-31 23:55 ` [bug#48671] [PATCH 1/9] " Antero Mejr
                     ` (2 preceding siblings ...)
  2021-05-31 23:55   ` [bug#48671] [PATCH 4/9] gnu: Add rust-progressing-3 Antero Mejr
@ 2021-05-31 23:55   ` Antero Mejr
  2021-05-31 23:55   ` [bug#48671] [PATCH 6/9] gnu: Add rust-merge-0.1 Antero Mejr
                     ` (5 subsequent siblings)
  9 siblings, 0 replies; 28+ messages in thread
From: Antero Mejr @ 2021-05-31 23:55 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

* gnu/packages/crates-io.scm (rust-nitrokey-0.9): New variable.
---
 gnu/packages/crates-io.scm | 90 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 90 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index e20feb78f2..e41920652e 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -25107,6 +25107,96 @@ selectors.  You can use the jQuery-like syntax to query and manipulate an HTML
 document quickly.")
     (license (list license:expat license:asl2.0))))
 
+(define-public rust-nitrokey-0.9
+  (package
+    (name "rust-nitrokey")
+    (version "0.9.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "nitrokey" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0c8mj52ckvy1311vwxs6jpw16b2bihp5cc811isb96j9slcjvsyx"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-lazy_static" ,rust-lazy-static-1)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-nitrokey-sys" ,rust-nitrokey-sys-3)
+        ("rust-rand_core" ,rust-rand-core-0.5))))
+    (home-page "https://git.sr.ht/~ireas/nitrokey-rs")
+    (synopsis "Rust bindings to libnitrokey")
+    (description
+     "This package provides bindings to libnitrokey for communication
+with Nitrokey devices.")
+    (license license:expat)))
+
+(define-public rust-nitrokey-sys-3
+  (package
+    (name "rust-nitrokey-sys")
+    (version "3.6.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "nitrokey-sys" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "08c3lnb8iqx000jd5rzvrdvv4ihjyw3x3s8q11dw56is0nmjyvws"))))
+    (build-system cargo-build-system)
+    (home-page "https://git.sr.ht/~ireas/nitrokey-sys-rs")
+    (synopsis "Low-level Rust bindings for libnitrokey")
+    (description
+     "This package provides low-level bindings to libnitrokey for
+communication with Nitrokey devices.")
+    (license license:lgpl3)))
+
+(define-public rust-nitrokey-test-0.5
+  (package
+    (name "rust-nitrokey-test")
+    (version "0.5.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "nitrokey-test" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "197j9r2s4ydzbqfydza6v31mgcsgd29jpidz4psqawjdm49f8lg6"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-proc-macro2" ,rust-proc-macro2-1)
+        ("quote" ,rust-quote-1)
+        ("syn" ,rust-syn-1))))
+    (home-page "https://github.com/d-e-s-o/nitrokey-test")
+    (synopsis "Supporting test infrastructure for the nitrokey crate")
+    (description
+     "This package provides supporting test infrastructure for the
+nitrokey crate and others using it.")
+    (license license:gpl3+)))
+
+(define-public rust-nitrokey-test-state-0.1
+  (package
+    (name "rust-nitrokey-test-state")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "nitrokey-test-state" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "00w817kl8q3sna924pzl72ybqljny14rdv1ixlj288fmsqp776x5"))))
+    (build-system cargo-build-system)
+    (home-page "https://github.com/d-e-s-o/nitrokey-test")
+    (synopsis "State required and used by the nitrokey-test crate")
+    (description "This package provides state required and used by the
+nitrokey-test crate.")
+    (license license:gpl3+)))
+
 (define-public rust-nix-0.20
   (package
     (name "rust-nix")
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 6/9] gnu: Add rust-merge-0.1.
  2021-05-31 23:55 ` [bug#48671] [PATCH 1/9] " Antero Mejr
                     ` (3 preceding siblings ...)
  2021-05-31 23:55   ` [bug#48671] [PATCH 5/9] gnu: Add rust-nitrokey-0.9 Antero Mejr
@ 2021-05-31 23:55   ` Antero Mejr
  2021-05-31 23:55   ` [bug#48671] [PATCH 7/9] gnu: Add rust-merge-derive-0.1 Antero Mejr
                     ` (4 subsequent siblings)
  9 siblings, 0 replies; 28+ messages in thread
From: Antero Mejr @ 2021-05-31 23:55 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

* gnu/packages/crates-io.scm (rust-merge-0.1): New variable.
---
 gnu/packages/crates-io.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index e41920652e..f29c1f2a0c 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -23390,6 +23390,29 @@ for Rust structs.")
        (sha256
         (base32 "13ir50j549gdz94pds1i7ljnk14d66q5x91s11hncm1pih7jif8c"))))))
 
+(define-public rust-merge-0.1
+  (package
+    (name "rust-merge")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "merge" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1sck0vhi9lk8a6mgky0rgn842fj7yspywidwbd963nmimf9yzfqh"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-merge-derive" ,rust-merge-derive-0.1)
+        ("rust-num-traits" ,rust-num-traits-0.2))))
+    (home-page "https://sr.ht/~ireas/merge-rs")
+    (synopsis "Rust trait for objects that can be merged")
+    (description "This package provides a merge trait that can be used
+to merge two objects of the same type into one.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-merlin-2
   (package
     (name "rust-merlin")
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 7/9] gnu: Add rust-merge-derive-0.1.
  2021-05-31 23:55 ` [bug#48671] [PATCH 1/9] " Antero Mejr
                     ` (4 preceding siblings ...)
  2021-05-31 23:55   ` [bug#48671] [PATCH 6/9] gnu: Add rust-merge-0.1 Antero Mejr
@ 2021-05-31 23:55   ` Antero Mejr
  2021-05-31 23:55   ` [bug#48671] [PATCH 8/9] gnu: Add rust-envy-0.4 Antero Mejr
                     ` (3 subsequent siblings)
  9 siblings, 0 replies; 28+ messages in thread
From: Antero Mejr @ 2021-05-31 23:55 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

* gnu/packages/crates-io.scm (rust-merge-derive-0.1): New variable.
---
 gnu/packages/crates-io.scm | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index f29c1f2a0c..afdf39fc40 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -23413,6 +23413,24 @@ for Rust structs.")
 to merge two objects of the same type into one.")
     (license (list license:asl2.0 license:expat))))
 
+(define-public rust-merge-derive-0.1
+  (package
+    (name "rust-merge-derive")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "merge_derive" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "01wxhi7mqmp34l540wcfb24hb13vcbps4wlynas66bnsfra0g790"))))
+    (build-system cargo-build-system)
+    (home-page "https://sr.ht/~ireas/merge-rs")
+    (synopsis "Derive macro for the merge crate")
+    (description "This crate provides a derive macro for the
+@code{merge::Merge} crate.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-merlin-2
   (package
     (name "rust-merlin")
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 8/9] gnu: Add rust-envy-0.4.
  2021-05-31 23:55 ` [bug#48671] [PATCH 1/9] " Antero Mejr
                     ` (5 preceding siblings ...)
  2021-05-31 23:55   ` [bug#48671] [PATCH 7/9] gnu: Add rust-merge-derive-0.1 Antero Mejr
@ 2021-05-31 23:55   ` Antero Mejr
  2021-05-31 23:55   ` [bug#48671] [PATCH 9/9] gnu: Add rust-base32-0.4 Antero Mejr
                     ` (2 subsequent siblings)
  9 siblings, 0 replies; 28+ messages in thread
From: Antero Mejr @ 2021-05-31 23:55 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

* gnu/packages/crates-io.scm (rust-envy-0.4): New variable.
---
 gnu/packages/crates-io.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index afdf39fc40..49aa008fba 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -13308,6 +13308,30 @@ variables.")
      "Environment variables utility functions.")
     (license license:asl2.0)))
 
+(define-public rust-envy-0.4
+  (package
+    (name "rust-envy")
+    (version "0.4.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "envy" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0rar459p7pl19v6pbx98q3hi2hxfl8q1ndxxw5d4zd9cgway0irz"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-serde" ,rust-serde-1))))
+    (home-page "https://github.com/softprops/envy")
+    (synopsis "Deserialize environment variables into Rust structs")
+    (description
+     "This package provides access to typesafe config structs
+deserialized from environment variables.")
+     (license license:expat)))
+
 (define-public rust-erased-serde-0.3
   (package
     (name "rust-erased-serde")
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 9/9] gnu: Add rust-base32-0.4.
  2021-05-31 23:55 ` [bug#48671] [PATCH 1/9] " Antero Mejr
                     ` (6 preceding siblings ...)
  2021-05-31 23:55   ` [bug#48671] [PATCH 8/9] gnu: Add rust-envy-0.4 Antero Mejr
@ 2021-05-31 23:55   ` Antero Mejr
  2021-06-01 21:48   ` [bug#48671] [PATCH 1/9] gnu: Add nitrocli Xinglu Chen
  2021-06-05 20:38   ` bug#48671: " Nicolas Goaziou
  9 siblings, 0 replies; 28+ messages in thread
From: Antero Mejr @ 2021-05-31 23:55 UTC (permalink / raw)
  To: 48671; +Cc: Antero Mejr

* gnu/packages/crates-io.scm (rust-base32-0.4): New variable.
---
 gnu/packages/crates-io.scm | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 49aa008fba..56af2bf129 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -15,6 +15,7 @@
 ;;; Copyright © 2021 aecepoglu <aecepoglu@fastmail.fm>
 ;;; Copyright © 2021 Zheng Junjie <873216071@qq.com>
 ;;; Copyright © 2021 Alexandru-Sergiu Marton <brown121407@posteo.ro>
+;;; Copyright © 2021 Antero Mejr <antero@kodmin.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -3702,6 +3703,25 @@ trace (backtrace) at runtime in a Rust program.")
     (license (list license:asl2.0
                    license:expat))))
 
+(define-public rust-base32-0.4
+  (package
+    (name "rust-base32")
+    (version "0.4.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "base32" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1ykwx8jhksqxghfgyw2pzikzjf4n9wqm1x2ww5wqyn68ssf6dki3"))))
+    (build-system cargo-build-system)
+    (home-page "https://github.com/andreasots/base32")
+    (synopsis "Base32 encoder/decoder for Rust")
+    (description "This library lets you encode and decode in either
+RFC4648 Base32 or in Crockford Base32.")
+    (license (list license:asl2.0 license:expat))))
+
 (define-public rust-base58-0.1
   (package
     (name "rust-base58")
-- 
2.31.1





^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [bug#48671] [PATCH 1/9] gnu: Add nitrocli.
  2021-05-31 23:55 ` [bug#48671] [PATCH 1/9] " Antero Mejr
                     ` (7 preceding siblings ...)
  2021-05-31 23:55   ` [bug#48671] [PATCH 9/9] gnu: Add rust-base32-0.4 Antero Mejr
@ 2021-06-01 21:48   ` Xinglu Chen
  2021-06-05 20:38   ` bug#48671: " Nicolas Goaziou
  9 siblings, 0 replies; 28+ messages in thread
From: Xinglu Chen @ 2021-06-01 21:48 UTC (permalink / raw)
  To: Antero Mejr, 48671; +Cc: Antero Mejr

[-- Attachment #1: Type: text/plain, Size: 260 bytes --]

On Mon, May 31 2021, Antero Mejr wrote:

> * gnu/packages/security-token.scm (nitrocli): New variable.
> ---
> Updated patch set with the requested changes.

Thank you for the work!

The changes look good to me, I don’t have commit access though.


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]

^ permalink raw reply	[flat|nested] 28+ messages in thread

* bug#48671: [PATCH 1/9] gnu: Add nitrocli.
  2021-05-31 23:55 ` [bug#48671] [PATCH 1/9] " Antero Mejr
                     ` (8 preceding siblings ...)
  2021-06-01 21:48   ` [bug#48671] [PATCH 1/9] gnu: Add nitrocli Xinglu Chen
@ 2021-06-05 20:38   ` Nicolas Goaziou
  9 siblings, 0 replies; 28+ messages in thread
From: Nicolas Goaziou @ 2021-06-05 20:38 UTC (permalink / raw)
  To: Antero Mejr; +Cc: 48671-done

Hello,

Antero Mejr <antero@kodmin.com> writes:

> * gnu/packages/security-token.scm (nitrocli): New variable.

Thank you! I applied the whole set.

> +        ("rust-structopt" ,rust-structopt-0.3.21)

We don't provide Rust package variants to patch level. I changed the
patch introducing rust-structopt-0.3.21 into an update of existing
rust-structopt-0.3. Likewise for rust-structcopt-derive.

Thanks to Xinglu Chen for the review, too.

Regards,
-- 
Nicolas Goaziou




^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2021-06-05 20:39 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-05-26  3:57 [bug#48671] [PATCH] Add nitrocli Antero Mejr
2021-05-27  6:59 ` Xinglu Chen
2021-05-27  7:11 ` Xinglu Chen
2021-05-30 21:42 ` [bug#48671] [PATCH 01/11] gnu: " Antero Mejr
2021-05-30 21:42   ` [bug#48671] [PATCH 02/11] gnu: Add rust-structopt-derive-0.4.14 Antero Mejr
2021-05-30 21:42   ` [bug#48671] [PATCH 03/11] gnu: Add rust-structopt-0.3.21 Antero Mejr
2021-05-30 21:42   ` [bug#48671] [PATCH 04/11] gnu: Add rust-progressing-3 Antero Mejr
2021-05-30 21:42   ` [bug#48671] [PATCH 05/11] gnu: Add rust-nitrokey-0.9 Antero Mejr
2021-05-30 21:42   ` [bug#48671] [PATCH 06/11] gnu: Add rust-merge-0.1 Antero Mejr
2021-05-31 20:51     ` Xinglu Chen
2021-05-30 21:42   ` [bug#48671] [PATCH 07/11] gnu: Add rust-envy-0.4 Antero Mejr
2021-05-30 21:42   ` [bug#48671] [PATCH 08/11] gnu: Add rust-base32-0.4 Antero Mejr
2021-05-30 21:42   ` [bug#48671] [PATCH 09/11] gnu: Add nitrocli Antero Mejr
2021-05-31 20:53     ` Xinglu Chen
2021-05-30 21:42   ` [bug#48671] [PATCH 10/11] " Antero Mejr
2021-05-30 21:42   ` [bug#48671] [PATCH 11/11] " Antero Mejr
2021-05-31 21:05   ` [bug#48671] [PATCH 01/11] " Xinglu Chen
2021-05-31 23:55 ` [bug#48671] [PATCH 1/9] " Antero Mejr
2021-05-31 23:55   ` [bug#48671] [PATCH 2/9] gnu: Add rust-structopt-derive-0.4.14 Antero Mejr
2021-05-31 23:55   ` [bug#48671] [PATCH 3/9] gnu: Add rust-structopt-0.3.21 Antero Mejr
2021-05-31 23:55   ` [bug#48671] [PATCH 4/9] gnu: Add rust-progressing-3 Antero Mejr
2021-05-31 23:55   ` [bug#48671] [PATCH 5/9] gnu: Add rust-nitrokey-0.9 Antero Mejr
2021-05-31 23:55   ` [bug#48671] [PATCH 6/9] gnu: Add rust-merge-0.1 Antero Mejr
2021-05-31 23:55   ` [bug#48671] [PATCH 7/9] gnu: Add rust-merge-derive-0.1 Antero Mejr
2021-05-31 23:55   ` [bug#48671] [PATCH 8/9] gnu: Add rust-envy-0.4 Antero Mejr
2021-05-31 23:55   ` [bug#48671] [PATCH 9/9] gnu: Add rust-base32-0.4 Antero Mejr
2021-06-01 21:48   ` [bug#48671] [PATCH 1/9] gnu: Add nitrocli Xinglu Chen
2021-06-05 20:38   ` bug#48671: " Nicolas Goaziou

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).