diff options
author | Efraim Flashner <[email protected]> | 2025-02-05 10:28:17 +0200 |
---|---|---|
committer | Efraim Flashner <[email protected]> | 2025-02-05 10:40:33 +0200 |
commit | 84905d47d8ef6b208d0b59c604e611886c2ed2c4 (patch) | |
tree | 9cad8a6fa9b65fda374d463e897d871cc4f5825b /gnu/packages/rust-apps.scm | |
parent | 4ab3e80f603568d7a8aa257307b8ba4225f553f9 (diff) |
gnu: Add codeberg-cli.
* gnu/packages/rust-apps.scm (codeberg-cli): New variable.
Change-Id: I51507fe3806513c48b317797ac8fcb5b04ea1434
Diffstat (limited to 'gnu/packages/rust-apps.scm')
-rw-r--r-- | gnu/packages/rust-apps.scm | 90 |
1 files changed, 89 insertions, 1 deletions
diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm index 69be633c5a..7fd04639d1 100644 --- a/gnu/packages/rust-apps.scm +++ b/gnu/packages/rust-apps.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2019, 2020 John Soo <[email protected]> -;;; Copyright © 2019-2024 Efraim Flashner <[email protected]> +;;; Copyright © 2019-2025 Efraim Flashner <[email protected]> ;;; Copyright © 2020 Jakub Kądziołka <[email protected]> ;;; Copyright © 2020 Michael Rohleder <[email protected]> ;;; Copyright © 2020 Leo Famulari <[email protected]> @@ -538,6 +538,94 @@ the terminal.") (description "@code{cargo-machete} finds unused dependencies in Cargo.toml.") (license (list license:expat license:asl2.0)))) +(define-public codeberg-cli + (package + (name "codeberg-cli") + (version "0.4.7") + (source + (origin + (method url-fetch) + (uri (crate-uri "codeberg-cli" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 "1irqikkpkrvsafkn1pkhpikj9inhkx4xks74hsc87x2ai94h49f9")))) + (build-system cargo-build-system) + (arguments + (list + #:install-source? #f + #:cargo-inputs + (list rust-anyhow-1 + rust-chrono-0.4 + rust-clap-4 + rust-clap-complete-4 + rust-comfy-table-7 + rust-config-0.14 + rust-derive-new-0.7 + rust-dirs-5 + rust-forgejo-api-0.4 + rust-git2-0.19 + rust-indicatif-0.17 + rust-inquire-0.7 + rust-itertools-0.13 + rust-serde-1 + rust-serde-json-1 + rust-strum-0.26 + rust-termsize-0.1 + rust-time-0.3 + rust-tokio-1 + rust-toml-0.8 + rust-tracing-0.1 + rust-tracing-subscriber-0.3 + rust-url-2 + rust-webbrowser-1) + #:cargo-development-inputs (list rust-insta-1) + #:phases + #~(modify-phases %standard-phases + (add-after 'install 'install-extras + (lambda* (#:key native-inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (share (string-append out "/share")) + (bash-completions-dir + (string-append out "/etc/bash_completion.d/")) + (zsh-completions-dir + (string-append share "/zsh/site-functions")) + (fish-completions-dir + (string-append share "/fish/vendor_completions.d")) + (elvish-completions-dir + (string-append share "/elvish/lib")) + (berg (if #$(%current-target-system) + (search-input-file native-inputs "/bin/berg") + (string-append out "/bin/berg")))) + (for-each mkdir-p + (list bash-completions-dir + zsh-completions-dir + fish-completions-dir + elvish-completions-dir)) + (with-output-to-file + (string-append bash-completions-dir "/berg") + (lambda _ (invoke berg "completion" "bash"))) + (with-output-to-file + (string-append zsh-completions-dir "/_berg") + (lambda _ (invoke berg "completion" "zsh"))) + (with-output-to-file + (string-append fish-completions-dir "/berg.fish") + (lambda _ (invoke berg "completion" "fish"))) + (with-output-to-file + (string-append elvish-completions-dir "/berg") + (lambda _ (invoke berg "completion" "elvish"))))))))) + (native-inputs + (append + (if (%current-target-system) + (list this-package) + '()) + (list pkg-config))) + (inputs (list libgit2-1.8 libssh2 openssl zlib)) + (home-page "https://codeberg.org/Aviac/codeberg-cli") + (synopsis "CLI Tool for codeberg similar to gh and glab") + (description + "This package provides CLI Tool for codeberg similar to gh and glab.") + (license license:agpl3+))) + (define-public complgen (package (name "complgen") |