summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorJohn Soo <jsoo1@asu.edu>2020-01-15 10:02:38 -0800
committerEfraim Flashner <efraim@flashner.co.il>2020-01-21 16:24:01 +0200
commite29315b2d996774874e68f4dc00515c0c3f34cb1 (patch)
tree35cc2cf96f79f8506e8619e77ae2755cc0a3098e /gnu
parent72803f5cd28669f0854d516204a9ecf84e781a13 (diff)
downloadguix-e29315b2d996774874e68f4dc00515c0c3f34cb1.tar.gz
gnu: Add tokei.
* gnu/packages/rust-apps.scm (tokei): New variable.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/rust-apps.scm55
1 files changed, 54 insertions, 1 deletions
diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index fa1f56e96f..1272d40d50 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2019 John Soo <jsoo1@asu.edu>
+;;; Copyright © 2019, 2020 John Soo <jsoo1@asu.edu>
 ;;; Copyright © 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -92,3 +92,56 @@ gitignore rules.")
     (description
      "This package provides a tool for generating C/C++ bindings to Rust code.")
     (license license:mpl2.0)))
+
+(define-public tokei
+  (package
+    (name "tokei")
+    (version "10.1.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (crate-uri "tokei" version))
+        (file-name
+         (string-append name "-" version ".tar.gz"))
+        (sha256
+         (base32
+          "07f5laqw2k9l3k8wrg9h8p2m5d9hkfxngyacwrn3vs7mlnw8l81m"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-clap" ,rust-clap-2)
+        ("rust-crossbeam-channel" ,rust-crossbeam-channel-0.4)
+        ("rust-dirs" ,rust-dirs-2.0)
+        ("rust-encoding-rs-io" ,rust-encoding-rs-io-0.1)
+        ("rust-env-logger" ,rust-env-logger-0.7)
+        ("rust-grep-searcher" ,rust-grep-searcher-0.1)
+        ("rust-hex" ,rust-hex-0.4)
+        ("rust-ignore" ,rust-ignore-0.4)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-rayon" ,rust-rayon-1.3)
+        ("rust-serde" ,rust-serde-1.0)
+        ("rust-serde-cbor" ,rust-serde-cbor-0.10)
+        ("rust-serde-derive" ,rust-serde-derive-1.0)
+        ("rust-serde-json" ,rust-serde-json-1.0)
+        ("rust-serde-yaml" ,rust-serde-yaml-0.8)
+        ("rust-term-size" ,rust-term-size-0.3)
+        ("rust-toml" ,rust-toml-0.5)
+        ;; Transitive build dependencies:
+        ("rust-cc" ,rust-cc-1.0)
+        ("rust-pkg-config" ,rust-pkg-config-0.3)
+        ("rust-vcpkg" ,rust-vcpkg-0.2))
+       #:cargo-development-inputs
+       (("rust-git2" ,rust-git2-0.11)
+        ("rust-handlebars" ,rust-handlebars-2.0)
+        ("rust-ignore" ,rust-ignore-0.4)
+        ("rust-lazy-static" ,rust-lazy-static-1.4)
+        ("rust-regex" ,rust-regex-1.3)
+        ("rust-serde-json" ,rust-serde-json-1.0)
+        ("rust-tempfile" ,rust-tempfile-3.0))))
+    (home-page "https://tokei.rs")
+    (synopsis "Count code, quickly")
+    (description
+     "Tokei is a program that displays statistics about your code.  Tokei will
+show number of files, total lines within those files and code, comments, and
+blanks grouped by language.")
+    (license (list license:expat license:asl2.0))))