diff options
author | Efraim Flashner <efraim@flashner.co.il> | 2023-12-21 10:07:13 +0200 |
---|---|---|
committer | Efraim Flashner <efraim@flashner.co.il> | 2024-02-20 13:56:34 +0200 |
commit | 1b0adb6ae99e0c466fdccad84023a5943f5435ec (patch) | |
tree | 7255005cf5990f1da2db9e32b43070c218a93160 /gnu/packages | |
parent | d61f7b860dcefb5c27f0a14de0c4054a69377f18 (diff) | |
download | guix-1b0adb6ae99e0c466fdccad84023a5943f5435ec.tar guix-1b0adb6ae99e0c466fdccad84023a5943f5435ec.tar.gz |
gnu: rbw: Install shell completions.
* gnu/packages/rust-apps.scm (rbw)[arguments]: Add a phase to generate
and install the shell completions.
[native-inputs]: When cross-compiling add a copy of the package.
Change-Id: Ibf8a1cc17470ecce479b8043678aedcf5556778e
Diffstat (limited to 'gnu/packages')
-rw-r--r-- | gnu/packages/rust-apps.scm | 31 |
1 files changed, 29 insertions, 2 deletions
diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm index 9b4e3fbeed..0be3b2b08d 100644 --- a/gnu/packages/rust-apps.scm +++ b/gnu/packages/rust-apps.scm @@ -2058,9 +2058,36 @@ runs a command whenever it detects modifications.") ("rust-totp-lite" ,rust-totp-lite-2) ("rust-url" ,rust-url-2) ("rust-uuid" ,rust-uuid-1) - ("rust-zeroize" ,rust-zeroize-1)))) + ("rust-zeroize" ,rust-zeroize-1)) + #:phases + (modify-phases %standard-phases + (add-after 'install 'install-completions + (lambda* (#:key native-inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (share (string-append out "/share")) + (rbw (if ,(%current-target-system) + (search-input-file native-inputs "/bin/rbw") + (string-append out "/bin/rbw")))) + (mkdir-p (string-append share "/bash-completion/completions")) + (with-output-to-file + (string-append share "/bash-completion/completions/rbw") + (lambda _ (invoke rbw "gen-completions" "bash"))) + (mkdir-p (string-append share "/fish/vendor_completions.d")) + (with-output-to-file + (string-append share "/fish/vendor_completions.d/rbw.fish") + (lambda _ (invoke rbw "gen-completions" "fish"))) + (mkdir-p (string-append share "/zsh/site-functions")) + (with-output-to-file + (string-append share "/zsh/site-functions/_rbw") + (lambda _ (invoke rbw "gen-completions" "zsh"))) + (mkdir-p (string-append share "/elvish/lib")) + (with-output-to-file + (string-append share "/elvish/lib/rbw") + (lambda _ (invoke rbw "gen-completions" "elvish"))))))))) (native-inputs - (list perl)) + (cons* perl (if (%current-target-system) + (list this-package) + '()))) (home-page "https://git.tozt.net/rbw") (synopsis "Unofficial Bitwarden CLI") (description "This package is an unofficial command line client for |