From 3d3f6255beada8cb6b0e78cd43657de9367ba687 Mon Sep 17 00:00:00 2001 From: Jean-Pierre De Jesus DIAZ Date: Sun, 17 Jul 2022 22:50:12 +0200 Subject: [PATCH 24/24] gnu: just: New package. * gnu/packages/rust-apps.scm (just): New variable. --- gnu/packages/rust-apps.scm | 100 +++++++++++++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm index 0d5034ffb7..91ec6908e8 100644 --- a/gnu/packages/rust-apps.scm +++ b/gnu/packages/rust-apps.scm @@ -16,6 +16,7 @@ ;;; Copyright © 2021 jgart ;;; Copyright © 2021 Nicolas Graves ;;; Copyright © 2022 Aleksandr Vityazev +;;; Copyright © 2022 Jean-Pierre De Jesus DIAZ ;;; ;;; This file is part of GNU Guix. ;;; @@ -612,6 +613,105 @@ (define-public hyperfine "This package provides a command-line benchmarking tool.") (license (list license:expat license:asl2.0)))) +(define-public just + (package + (name "just") + (version "1.2.0") + (source (origin + (method url-fetch) + (uri (crate-uri "just" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1x762kq9mdp86fbnymn77mvdabcyvp211bkbvawnzm8fspp8a3g2")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-test-flags + '("--release" "--" + "--skip=choose::status_error" + "--skip=edit::editor_working_directory" + "--skip=edit::status_error" + "--skip=export::setting_shebang" + "--skip=export::shebang" + "--skip=justfile::tests::run_shebang" + "--skip=functions::env_var_functions" + "--skip=functions::path_functions" + "--skip=functions::path_functions2" + "--skip=misc::quiet_shebang_recipe" + "--skip=misc::shebang_line_numbers" + "--skip=positional_arguments::shebang" + "--skip=positional_arguments::variadic_shebang" + "--skip=quiet::choose_status" + "--skip=quiet::quiet_shebang" + "--skip=shell::flag" + "--skip=working_directory::change_working_directory_to_search_justfile_parent" + "--skip=working_directory::justfile_and_working_directory" + "--skip=working_directory::justfile_without_working_directory" + "--skip=working_directory::justfile_without_working_directory_relative" + "--skip=working_directory::search_dir_child" + "--skip=working_directory::search_dir_parent") + #:install-source? #f + #:cargo-inputs + (("rust-ansi-term" ,rust-ansi-term-0.12) + ("rust-atty" ,rust-atty-0.2) + ("rust-camino" ,rust-camino-1) + ("rust-clap" ,rust-clap-2) + ("rust-ctrlc" ,rust-ctrlc-3) + ("rust-derivative" ,rust-derivative-2) + ("rust-dotenv" ,rust-dotenv-0.15) + ("rust-edit-distance" ,rust-edit-distance-2) + ("rust-env-logger" ,rust-env-logger-0.9) + ("rust-lazy-static" ,rust-lazy-static-1) + ("rust-lexiclean" ,rust-lexiclean-0.0.1) + ("rust-libc" ,rust-libc-0.2) + ("rust-log" ,rust-log-0.4) + ("rust-regex" ,rust-regex-1) + ("rust-serde" ,rust-serde-1) + ("rust-serde-json" ,rust-serde-json-1) + ("rust-sha2" ,rust-sha2-0.10) + ("rust-similar" ,rust-similar-2) + ("rust-snafu" ,rust-snafu-0.7) + ("rust-strum" ,rust-strum-0.24) + ("rust-target" ,rust-target-2) + ("rust-tempfile" ,rust-tempfile-3) + ("rust-typed-arena" ,rust-typed-arena-2) + ("rust-unicode-width" ,rust-unicode-width-0.1) + ("rust-uuid" ,rust-uuid-1)) + #:cargo-development-inputs + (("rust-cradle" ,rust-cradle-0.2) + ("rust-executable-path" ,rust-executable-path-1) + ("rust-pretty-assertions" ,rust-pretty-assertions-1) + ("rust-temptree" ,rust-temptree-0.2) + ("rust-which" ,rust-which-4) + ("rust-yaml-rust" ,rust-yaml-rust-0.4)) + #:phases + (modify-phases %standard-phases + (add-after 'install 'install-extra + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (share (string-append out "/share")) + (man1 (string-append share "/man/man1")) + (bash (string-append out "/etc/bash_completions.d")) + (fish (string-append share "/fish/vendor_completions.d")) + (zsh (string-append share "/zsh/site-functions"))) + (install-file "man/just.1" man1) + (mkdir-p bash) + (mkdir-p zsh) + (mkdir-p fish) + (copy-file "completions/just.bash" (string-append bash "/just")) + (copy-file "completions/just.zsh" (string-append zsh "/_just")) + (copy-file "completions/just.fish" + (string-append fish "/just.fish")))))))) + (home-page "https://just.systems/") + (synopsis "Command runner") + (description "Just is a command runner. + +It provides a handy way to save and run project-specific commands. + +Commands, called recipes, are stored in a file called @code{justfile} with +syntax inspired by @code{make}.") + (license license:cc0))) + (define-public i3status-rust (package (name "i3status-rust") -- 2.36.1