summary refs log tree commit diff
path: root/gnu/packages/rust-apps.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/rust-apps.scm')
-rw-r--r--gnu/packages/rust-apps.scm90
1 files changed, 84 insertions, 6 deletions
diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index 9511cbf308..dc9526b267 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -10,6 +10,7 @@
 ;;; Copyright © 2021 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2021 Sharlatan Hellseher <sharlatanus@gmail.ccom>
 ;;; Copyright © 2021 Zheng Junjie <873216071@qq.com>
+;;; Copyright © 2021 Alexandru-Sergiu Marton <brown121407@posteo.ro>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -40,30 +41,68 @@
   #:use-module (gnu packages jemalloc)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages version-control))
 
+(define-public agate
+  (package
+    (name "agate")
+    (version "2.5.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "agate" version))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "1mhrl4j5r6wzsnwpqsbgzny5vqschyjm3gnk4y88har7skk7j19v"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-configparser" ,rust-configparser-2)
+        ("rust-env-logger" ,rust-env-logger-0.8)
+        ("rust-getopts" ,rust-getopts-0.2)
+        ("rust-glob" ,rust-glob-0.3)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-mime-guess" ,rust-mime-guess-2)
+        ("rust-once-cell" ,rust-once-cell-1)
+        ("rust-percent-encoding" ,rust-percent-encoding-2)
+        ("rust-rustls" ,rust-rustls-0.19)
+        ("rust-tokio" ,rust-tokio-1)
+        ("rust-tokio-rustls" ,rust-tokio-rustls-0.22)
+        ("rust-url" ,rust-url-2))))
+    (home-page "https://github.com/mbrubeck/agate")
+    (synopsis "Very simple server for the Gemini hypertext protocol")
+    (description
+     "Agate is a server for the Gemini network protocol, built with the Rust
+programming language.  It has very few features, and can only serve static
+files.  It uses async I/O, and should be quite efficient even when running on
+low-end hardware and serving many concurrent requests.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public bat
   (package
     (name "bat")
-    (version "0.17.1")
+    (version "0.18.0")
     (source
      (origin
        (method url-fetch)
        (uri (crate-uri "bat" version))
        (file-name (string-append name "-" version ".tar.gz"))
        (sha256
-        (base32 "1ia12774prjnm3msiaja6qdpxkpyknxswqpgkmwzj0wn9nhkc7nz"))))
+        (base32 "1hr6vzkw8mdy9v0sg1pg9gibamabhip05s7zdkwzwlv69qnhgs1z"))))
     (build-system cargo-build-system)
     (arguments
      `(#:cargo-inputs
        (("rust-ansi-colours" ,rust-ansi-colours-1)
         ("rust-ansi-term" ,rust-ansi-term-0.12)
         ("rust-atty" ,rust-atty-0.2)
+        ("rust-bugreport" ,rust-bugreport-0.3)
         ("rust-clap" ,rust-clap-2)
-        ("rust-console" ,rust-console-0.13)
+        ("rust-clircle" ,rust-clircle-0.3)
+        ("rust-console" ,rust-console-0.14)
         ("rust-content-inspector" ,rust-content-inspector-0.2)
-        ("rust-dirs" ,rust-dirs-3)
+        ("rust-dirs-next" ,rust-dirs-next-2)
         ("rust-encoding" ,rust-encoding-0.2)
         ("rust-error-chain" ,rust-error-chain-0.12)
         ("rust-git2" ,rust-git2-0.13)
@@ -79,8 +118,11 @@
         ("rust-wild" ,rust-wild-2))
        #:cargo-development-inputs
        (("rust-assert-cmd" ,rust-assert-cmd-1)
+        ("rust-nix" ,rust-nix-0.19)
         ("rust-predicates" ,rust-predicates-1)
-        ("rust-tempdir" ,rust-tempdir-0.3))))
+        ("rust-serial-test" ,rust-serial-test-0.5)
+        ("rust-tempfile" ,rust-tempfile-3)
+        ("rust-wait-timeout" ,rust-wait-timeout-0.2))))
     (native-inputs
      `(("pkg-config" ,pkg-config)))
     (inputs
@@ -344,7 +386,11 @@ characters, ASCII whitespace characters, other ASCII characters and non-ASCII.")
          "1grfi0j9zczzipipc21lkdbqmd2lvy2wlqy65fy4sckqvix5amdr"))))
     (build-system cargo-build-system)
     (arguments
-     `(#:cargo-inputs
+     ;; XXX: Upgrading rust-bstr-0.2 from 0.2.12 to 0.2.15 introduced 11 test
+     ;; failures. Skip tests for now. Check again at next bstr or ripgrep
+     ;; upgrade.
+     `(#:tests? #false
+       #:cargo-inputs
        (("rust-bstr" ,rust-bstr-0.2)
         ("rust-clap" ,rust-clap-2)
         ("rust-grep" ,rust-grep-0.2)
@@ -417,6 +463,38 @@ gitignore rules.")
      "This package provides a tool for generating C/C++ bindings to Rust code.")
     (license license:mpl2.0)))
 
+(define-public rust-cbindgen-0.17
+  (package
+    (inherit rust-cbindgen)
+    (name "rust-cbindgen")
+    (version "0.17.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "cbindgen" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1f40hxj6h7wqmsj8dzxjm3m421hjqpz2m5zxasbn8kgnr6scykvl"))))
+    (arguments
+     `(#:cargo-inputs
+       (("rust-clap" ,rust-clap-2)
+        ("rust-heck" ,rust-heck-0.3)
+        ("rust-indexmap" ,rust-indexmap-1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-proc-macro2" ,rust-proc-macro2-1)
+        ("rust-quote" ,rust-quote-1)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-json" ,rust-serde-json-1)
+        ("rust-syn" ,rust-syn-1)
+        ("rust-tempfile" ,rust-tempfile-3)
+        ("rust-toml" ,rust-toml-0.5))
+       #:cargo-development-inputs
+       (("rust-serial-test" ,rust-serial-test-0.5))))
+    (native-inputs
+     `(("python-cython" ,python-cython)))))
+
 (define-public rust-cbindgen-0.16
   (package
     (inherit rust-cbindgen)