blob: 49b0ce5b45dc6bb5ee5ea7150441984149f75228 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
__razor_commands () {
local IFS=$'\n'
COMPREPLY=($(IFS=: compgen -S' ' -W "info:list-requires:list-provides:list-files:list-file-packages:list-package-files:what-requires:what-provides:import-yum:import-rpmdb:import-rpms:validate:update:diff:install:init:download" -- $1))
}
__razor_packages () {
local IFS=$'\n'
COMPREPLY=($(razor list --only-names "$1*" | while read p; do echo "$p "; done))
}
__razor_upstream_packages () {
local IFS=$'\n'
COMPREPLY=($(RAZOR_REPO=rawhide.rzdb razor list --only-names "$1*" | while read p; do echo "$p "; done))
}
__razor_files() {
COMPREPLY=($(razor list-files "$1*"))
}
__razor_requires() {
COMPREPLY=($(compgen -W "$(razor list-requires)" -- $1))
}
__razor_provides() {
COMPREPLY=($(compgen -W "$(razor list-provides)" -- $1))
}
__razor() {
local cur="${COMP_WORDS[COMP_CWORD]}"
if [ $COMP_CWORD = 1 ]; then
__razor_commands $cur
else
case "${COMP_WORDS[1]}" in
info|list-requires|list-provides|list-package-files)
__razor_packages $cur ;;
list-files|list-file-packages) __razor_files $cur ;;
what-requires) __razor_requires $cur ;;
what-provides) __razor_provides $cur ;;
install|download) __razor_upstream_packages $cur ;;
esac
fi
}
complete -o nospace -F __razor razor
|