gnu: git-annex: Add shell completions.

* gnu/packages/haskell-apps.scm (git-annex)[arguments]: Rename
'install-manpages to 'install-more and install the shell completions.

Change-Id: I3c5707037ba9b3c3903dd37c334c1eb6dca929e2
This commit is contained in:
Efraim Flashner 2023-11-19 10:02:16 +02:00
parent d87ce1a336
commit 7c5d4031c9
No known key found for this signature in database
GPG key ID: 41AAE7DCCA3D8351

View file

@ -368,10 +368,27 @@ (define-public git-annex
;; Undo `patch-shell-for-tests'.
(copy-file "/tmp/Shell.hs" "Utility/Shell.hs")
(apply (assoc-ref %standard-phases 'build) args)))
(add-after 'install 'install-manpages
(add-after 'install 'install-more
(lambda* (#:key outputs #:allow-other-keys)
(setenv "PREFIX" (assoc-ref outputs "out"))
(invoke "make" "install-mans")))
(let* ((out (assoc-ref outputs "out"))
(bash (string-append out "/etc/bash_completions.d"))
(fish (string-append out "/share/fish/vendor_completions.d"))
(zsh (string-append out "/share/zsh/site-functions")))
(setenv "PREFIX" out)
(invoke "make" "install-mans")
(mkdir-p bash)
(copy-file "bash-completion.bash"
(string-append bash "/git-annex"))
(mkdir-p fish)
(with-output-to-file (string-append fish "/git-annex.fish")
(lambda _
(invoke (string-append out "/bin/git-annex")
"--fish-completion-script" "git-annex")))
(mkdir-p zsh)
(with-output-to-file (string-append zsh "/_git-annex")
(lambda _
(invoke (string-append out "/bin/git-annex")
"--zsh-completion-script" "git-annex"))))))
(add-after 'install 'install-symlinks
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))