summary refs log tree commit diff
path: root/gnu/packages
diff options
context:
space:
mode:
authorNicolas Graves <ngraves@ngraves.fr>2022-01-19 13:28:33 +0100
committerNicolas Goaziou <mail@nicolasgoaziou.fr>2022-01-19 14:04:51 +0100
commitd73ef8bad8d19774241b8e5c4aa7bd5e3f5f7a34 (patch)
tree8cda818e6fe1d3ad7aca64af37fad3ba7da027c7 /gnu/packages
parent492f8ef92436f23ff25e1224169992d5c7452b55 (diff)
downloadguix-d73ef8bad8d19774241b8e5c4aa7bd5e3f5f7a34.tar.gz
gnu: Add rbw.
* gnu/packages/rust-apps.scm (rbw): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/rust-apps.scm72
1 files changed, 72 insertions, 0 deletions
diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index 556ff04940..40f1707864 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -1204,6 +1204,78 @@ older terminal emulators.")
 runs a command whenever it detects modifications.")
     (license license:asl2.0)))
 
+(define-public rbw
+  (package
+    (name "rbw")
+    (version "1.4.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "rbw" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "0zszp9hvilpikbd66b5zbvspks0spv8dh0yry0sxnc5yqvl2ixnf"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'configure 'relax-requirements
+           (lambda _
+             (substitute*
+                 "guix-vendor/rust-password-hash-0.3.2.tar.gz/Cargo.toml"
+               (("version = \">=1, <1.1.0\"") "version = \">=1\"")))))
+       #:cargo-inputs
+       (("rust-aes" ,rust-aes-0.7)
+        ("rust-anyhow" ,rust-anyhow-1)
+        ("rust-arrayvec" ,rust-arrayvec-0.7)
+        ("rust-async-trait" ,rust-async-trait-0.1)
+        ("rust-base32" ,rust-base32-0.4)
+        ("rust-base64" ,rust-base64-0.13)
+        ("rust-block-modes" ,rust-block-modes-0.8)
+        ("rust-block-padding" ,rust-block-padding-0.2)
+        ("rust-daemonize" ,rust-daemonize-0.4)
+        ("rust-directories" ,rust-directories-4)
+        ("rust-env-logger" ,rust-env-logger-0.9)
+        ("rust-hkdf" ,rust-hkdf-0.11)
+        ("rust-hmac" ,rust-hmac-0.11)
+        ("rust-humantime" ,rust-humantime-2)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-nix" ,rust-nix-0.23)
+        ("rust-paw" ,rust-paw-1)
+        ("rust-pbkdf2" ,rust-pbkdf2-0.9)
+        ("rust-percent-encoding" ,rust-percent-encoding-2)
+        ("rust-rand" ,rust-rand-0.8)
+        ("rust-region" ,rust-region-3)
+        ("rust-reqwest" ,rust-reqwest-0.11)
+        ("rust-rsa" ,rust-rsa-0.5)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-serde-path-to-error" ,rust-serde-path-to-error-0.1)
+        ("rust-serde-repr" ,rust-serde-repr-0.1)
+        ("rust-sha-1" ,rust-sha-1-0.9)
+        ("rust-sha2" ,rust-sha2-0.9)
+        ("rust-structopt" ,rust-structopt-0.3)
+        ("rust-tempfile" ,rust-tempfile-3)
+        ("rust-term-size" ,rust-term-size-0.3)
+        ("rust-textwrap" ,rust-textwrap-0.11)
+        ("rust-thiserror" ,rust-thiserror-1)
+        ("rust-tokio" ,rust-tokio-1)
+        ("rust-totp-lite" ,rust-totp-lite-1)
+        ("rust-url" ,rust-url-2)
+        ("rust-uuid" ,rust-uuid-0.8)
+        ("rust-zeroize" ,rust-zeroize-1))))
+    (home-page "https://git.tozt.net/rbw")
+    (synopsis "Unofficial Bitwarden CLI")
+    (description "This package is an unofficial command line client for
+Bitwarden. Although it does come with its own command line client, this client
+is limited by being stateless, which makes it very difficult to use.  This
+client avoids this problem by maintaining a background process which is able
+to hold the keys in memory, similar to the way that ssh-agent or gpg-agent
+work.  This allows the client to be used in a much simpler way, with the
+background agent taking care of maintaining the necessary state.")
+    (license license:expat)))
+
 (define-public rust-analyzer
   (package
     (name "rust-analyzer")