aboutsummaryrefslogtreecommitdiffstats
path: root/is_required.bash
blob: bf90930c4adbcd4e9b92f6c6843214d245c47f9f (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
# is_required(1) completion                                -*- shell-script -*-

_is_required()
{
    local cur prev words cword
    _init_completion || return

    case $prev in
        is_required)
            ;;
        -*)
            ;;
    esac

    if [[ $cur == -* ]]; then
        COMPREPLY=( $(compgen -W '-i -u -r -h' -- "$cur") )
        return
    fi

    # Complete package names from /var/log/packages (strip version-arch-build)
    local pkglog="${PKG_LOG:-/var/log/packages}"
    local packages
    packages=$(find "$pkglog" -maxdepth 1 -follow -type f 2>/dev/null \
        | sed 's|.*/||; s/-[^-]*-[^-]*-[^-]*$//')

    COMPREPLY=( $(compgen -W "$packages" -- "$cur") )
} &&
complete -F _is_required is_required

# ex: filetype=sh