summary refs log tree commit diff
diff options
context:
space:
mode:
authorJohn Soo <jsoo1@asu.edu>2021-09-17 12:37:56 -0700
committerEfraim Flashner <efraim@flashner.co.il>2021-09-22 16:47:27 +0300
commit228e7bad8cd0110cf674765361ec783b4f6c1743 (patch)
treeb3a61c4d9aaa27803b2b66320ac74af89ab91274
parent1766868f23a42ce89d0bc6e528420701f034ece9 (diff)
downloadguix-228e7bad8cd0110cf674765361ec783b4f6c1743.tar.gz
gnu: Add tealdeer.
* gnu/packages/rust-apps.scm (tealdeer): New variable.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
-rw-r--r--gnu/packages/rust-apps.scm76
1 files changed, 76 insertions, 0 deletions
diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index e81c7d8748..be041531ce 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -1051,6 +1051,82 @@ library and a dynamic library, and a C header to be used by any C (and
 C-compatible) software.")
     (license license:expat)))
 
+(define-public tealdeer
+  (package
+    (name "tealdeer")
+    (version "1.4.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (crate-uri "tealdeer" version))
+       (file-name
+        (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0cwf46k2rszcpydrqajnm4dvhggr3ms7sjma0jx02ch4fjicxch7"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'install 'install-completions
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out  (assoc-ref outputs "out"))
+                    (bash (string-append out "/etc/bash_completion.d/"))
+                    (fish (string-append out "/share/fish/vendor_completions.d/")))
+               (mkdir-p bash)
+               (mkdir-p fish)
+               (copy-file "bash_tealdeer"
+                          (string-append bash "tealdeer"))
+               (copy-file "fish_tealdeer"
+                          (string-append fish "tealdeer.fish"))))))
+       #:install-source? #f
+       #:cargo-test-flags
+       '("--release" "--"
+         ;; These tests go to the network
+         "--skip=test_quiet_old_cache"
+         "--skip=test_quiet_cache"
+         "--skip=test_quiet_failures"
+         "--skip=test_pager_flag_enable"
+         "--skip=test_markdown_rendering"
+         "--skip=test_spaces_find_command"
+         "--skip=test_autoupdate_cache"
+         "--skip=test_update_cache")
+       #:cargo-inputs
+       (("rust-ansi-term" ,rust-ansi-term-0.12)
+        ("rust-app-dirs2" ,rust-app-dirs2-2)
+        ("rust-atty" ,rust-atty-0.2)
+        ("rust-docopt" ,rust-docopt-1)
+        ("rust-env-logger" ,rust-env-logger-0.7)
+        ("rust-flate2" ,rust-flate2-1)
+        ("rust-log" ,rust-log-0.4)
+        ("rust-pager" ,rust-pager-0.15)
+        ("rust-reqwest" ,rust-reqwest-0.10)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde-derive" ,rust-serde-derive-1)
+        ("rust-tar" ,rust-tar-0.4)
+        ("rust-toml" ,rust-toml-0.5)
+        ("rust-walkdir" ,rust-walkdir-2)
+        ("rust-xdg" ,rust-xdg-2))
+       #:cargo-development-inputs
+       (("rust-assert-cmd" ,rust-assert-cmd-1)
+        ("rust-escargot" ,rust-escargot-0.5)
+        ("rust-filetime" ,rust-filetime-0.2)
+        ("rust-predicates" ,rust-predicates-1)
+        ;; This earlier version is required to fix a bug.
+        ;; Remove rust-remove-dir-all-0.5.2 when tealdeer gets upgraded
+        ("rust-remove-dir-all" ,rust-remove-dir-all-0.5.2)
+        ("rust-tempfile" ,rust-tempfile-3))))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (inputs
+     `(("openssl" ,openssl)))
+    (home-page "https://github.com/dbrgn/tealdeer/")
+    (synopsis "Fetch and show tldr help pages for many CLI commands")
+    (description
+     "This package fetches and shows tldr help pages for many CLI commands.
+Full featured offline client with caching support.")
+    (license (list license:expat license:asl2.0))))
+
 (define-public zoxide
   (package
     (name "zoxide")