#compdef module-assistant m-a typeset -a _module_assistant_commands _module_assistant_commands=( "update[synchronize version index files]" "prepare[install required kernel headers package]" "fakesource[install required kernel source package]" "list[a print a list of details about available packages]" "list-available[b print a list of details about available packages ]" "la[c print a list of details about available packages ]" "list-installed[ print a list of details about installed packages ]" "li[print a list of details about installed packages ]" "search[search for packages]" "get[install specified source package]" "build[build specified packages]" "install[install specified packages]" "auto-install[do all necessary steps to install specified packages]" "clean[clear build directories of the kernel packages]" "purge[clear cache and remove all binary packages of source package]" ) _arguments -A \ '(-h --help)'{-h,--help}'[print help screen]' \ '(-v --verbose)'{-v,--verbose}'[Be verbose, show full paths, etc.]' \ '(-q --quiet)'{-q,--quiet}'[The opposite of verbose]' \ '(-n --no-rebuild)'{-n,--no-rebuild}'[Do not rebuild when package exists]' \ '(-i --ignore-failures)'{-i,--ignore-failures}'[Do not stop on build failures]' \ '(-s --apt-search)'{-s,--apt-search}'[Search for installation candidates in the Debian archive]' \ '(-f --force)'{-f,--force}'[Force using new versions even when old ones exist]' \ '(-u --userdir)'{-u,--userdir}'[Specify a (writable) replacement directory for /var&/usr]:dir:_files -/' \ '(-l --kvers-list)'{-l,--kvers-list}'[List of kernel versions to work on (default: current version)]:kernel version list:' \ '(-k --kernel-dir)'{-k,--kernel-dir}'[List of kernel headers/source directories, comma separated]:list of dirs:_files -/' \ '(-t --text-mode)'{-t,--text-mode}'[no progress bars]' \ '1:list of commands:_values -s , subcommands "${_module_assistant_commands[@]}"' \ '*:packages: compadd /usr/src/modass/var_cache_modass/*.avail_version(N:t:r) /var/cache/modass/*.avail_version(N:t:r)'