mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2025-01-12 06:06:53 -05:00
gnu: bash-completion: Remove completions redundant with those of util-linux.
* gnu/packages/bash.scm (bash-completion)[arguments]: New field.
This commit is contained in:
parent
ee8591990f
commit
b16b77905c
1 changed files with 24 additions and 0 deletions
|
@ -23,6 +23,7 @@ (define-module (gnu packages bash)
|
|||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages readline)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix utils)
|
||||
|
@ -247,6 +248,29 @@ (define-public bash-completion
|
|||
(patches
|
||||
(list (search-patch "bash-completion-directories.patch")))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs `(("util-linux" ,util-linux)))
|
||||
(arguments
|
||||
`(#:phases (alist-cons-after
|
||||
'install 'remove-redundant-completions
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
;; Util-linux comes with a bunch of completion files for
|
||||
;; its own commands which are more sophisticated and
|
||||
;; up-to-date than those of bash-completion. Remove those
|
||||
;; from bash-completion.
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(util-linux (assoc-ref inputs "util-linux"))
|
||||
(completions (string-append out
|
||||
"/share/bash-completion"
|
||||
"/completions"))
|
||||
(already (find-files (string-append util-linux
|
||||
"/etc/bash_completion.d"))))
|
||||
(with-directory-excursion completions
|
||||
(for-each (lambda (file)
|
||||
(when (file-exists? file)
|
||||
(delete-file file)))
|
||||
(map basename already)))
|
||||
#t))
|
||||
%standard-phases)))
|
||||
(synopsis "Bash completions for common commands")
|
||||
(description
|
||||
"This package provides extensions that allow Bash to provide adapted
|
||||
|
|
Loading…
Reference in a new issue