1
0
mirror of git://git.code.sf.net/p/zsh/code synced 2024-11-19 13:33:52 +01:00
zsh/Completion/Debian/Command/_wajig

249 lines
12 KiB
Plaintext

#compdef wajig
# $Id: _wajig,v 1.1 2005/01/09 06:23:58 clint Exp $
# quarl 2005-01-08 initial version
# local curcontext="$curcontext" state line cmds ret=1
_wajig_commands=(
'addcdrom:add a CD-ROM to the list of available sources of packages'
'autoalts:mark the alternative to be auto set (using set priorities)'
'autoclean:remove superseded deb files from the download cache'
'autodownload:do an update followed by a download of all updated packages'
'autoinstall:perform an install without asking questions (non-interactive)'
'available:list versions of packages available for installation'
'bug:check reported bugs in package using the Debian Bug Tacker'
'build:retrieve/unpack sources and build .deb for the named packages'
'builddepend:retrieve packages required to build listed packages'
'changelog:retrieve latest changelog for the package'
'clean:remove all deb files from the download cache'
'commands:list all the JIG commands and one line descriptions for each'
'dailyupgrade:perform an update then a dist-upgrade'
'dependents:list of packages which depend/recommend/suggest the package'
'describe:one line description of packages (-v and -vv for more detail)'
'describenew:one line description of new packages'
'detail:provide a detailed description of package (describe -vv)'
'detailnew:provide a detailed description of new packages (describe -vv)'
'distupgrade:upgrade to new distribution (installed and new rqd packages)'
'docs:equivalent to help with -verbose=2'
'download:download package files ready for an install'
'filedownload:download packages listed in file ready for an install'
'fileinstall:install packages listed in a file'
'fileremove:remove packages listed in a file'
'findfile:search for a file within installed packages'
'findpkg:search for an unofficial Debian package at apt-get.org'
'fixconfigure:perform dpkg --configure -a (to fix interrupted configure)'
'fixinstall:perform apt-get -f install (to fix broken dependencies)'
'fixmissing:perform apt-get --fix-missing upgrade'
'force:install packages and ignore file overwrites and depends'
'help:print documentation (detail depends on --verbose)'
'hold:place listed packages on hold so they are not upgraded'
'init:initialise or reset the JIG archive files'
'install:install (or upgrade) one or more packages or .deb files'
'installr:install package and associated recommended packages'
'installrs:install package and recommended and suggested packages'
'installs:install package and associated suggested packages'
'install/dist:install packages from specified distribution'
'integrity:check the integrity of installed packages (through checksums)'
'large:list size of all large (>10MB) installed packages'
'lastupdate:identify when an update was last performed'
'list:list the status and description of installed packages'
'listall:list a one line description of every known package'
'listalts:list the objects that can have alternatives configured'
'listcache:list the contents of the download cache'
'listcommands:list all the JIG commands and one line descriptions for each'
'listdaemons:list the daemons that JIG can start/stop/restart'
'listfiles:list the files that are supplied by the named package'
'listhold:list those packages on hold'
'listinstalled:List packages (with optional argument substring) installed'
'listnames:list all known packages or those containing supplied string'
'listorphans:list libraries not required by any installed package'
'liststatus:same as list but only prints first two columns, not truncated'
'listwide:same as list but avoids truncating package names'
'localdist-upgrade:dist-upgrade using packages already downloaded'
'localupgrade:upgrade using packages already downloaded, but not any others'
'move:move packages in the download cache to a local Debian mirror'
'new:list packages that became available since last update'
'news:obtain the latest news about the package'
'newupgrades:list packages newly available for upgrading'
'nonfree:list installed packages that do not meet the DFSG'
'orphans:list libraries not required by any installed package'
'package:generate a .deb file for an installed package'
'policy:from preferences file show priorities/policy (available)'
'purge:remove one or more packages and configuration files'
'purgedepend:purge package and those it depend on and not required by others'
'purgeorphans:purge orphaned libraries (not required by installed packages)'
"readme:display the package's README file from /usr/share/doc"
'recdownload:download package and any it depends on'
'recommended:install package and associated recommended packages'
'reconfigure:reconfigure the named installed packages or run gkdebconf'
'reinstall:reinstall each of the named packages'
'reload:reload daemon configs, e.g., gdm, apache (see list-daemons)'
'remove:remove one or more packages (see also purge)'
'removedepend:remove package and its dependees not required by others'
'removeorphans Remove orphaned libraries (not required by installed packages)'
'repackage:generate a .deb file for an installed package'
'reset:initialise or reset the JIG archive files'
'restart:stop then start a daemon, e.g., gdm, apache (see list-daemons)'
'rpm2deb:convert a RedHat .rpm file to a Debian .deb file'
'rpminstall:install a RedHat .rpm package'
'rpmtodeb:convert a RedHat .rpm file to a Debian .deb file'
'search:search for packages containing listed words'
'searchapt:find local Debian archives suitable for sources.list'
'setup:configure the sources.list file which locates Debian archives'
'show:provide a detailed description of package [same as detail]'
'showdistupgrade:trace the steps that a dist-upgrade would perform'
'showinstall:trace the steps that an install would perform'
'showremove:trace the steps that a remove would perform'
'showupgrade:trace the steps that an upgrade would perform'
'sizes:print out the size (in K) of all, or listed, installed packages'
'snapshot:generates list of package=version for all installed packages'
'source:retrieve and unpack sources for the named packages'
'start:start a daemon, e.g., gdm, apache (see list-daemons)'
'status:show the version and available version of packages'
'statusmatch:show the version and available version of matching packages'
'statussearch:show the version and available version of matching packages'
'stop:stop a daemon, e.g., gdm, apache (see list-daemons)'
'suggested:install package and associated suggested packages'
'tasksel:run the Gnome task selector to install groups of packages'
'toupgrade:list packages with newer versions available for upgrading'
'unhold:remove listed packages from hold so they are again upgraded'
'unofficial:search for an unofficial Debian package at apt-get.org'
'update:update the list of down-loadable packages'
'updatealts:update default alternative for things like x-window-manager'
'upgrade:upgrade all of the installed packages or just those listed'
'whatis:a synonym for describe'
'whichpkg:find the package that supplies the given command or file'
)
_wajig_command() {
_describe -t commands 'aptitude command' _wajig_commands
}
_wajig_alternatives() {
_files -W /var/lib/dpkg/alternatives
}
_wajig_services() {
_files -W /etc/init.d
}
_wajig_subcommand() {
((argno = CURRENT-2))
case ${words[2]:gs/-/} in
addcdrom) ;;
autoalts | autoalternatives) ((argno==1)) && _wajig_alternatives ;;
autoclean) ;;
autodownload) ;;
autoinstall) _deb_packages uninstalled ;;
available) _deb_packages available ;;
bug | bugs) ((argno==1)) && _deb_packages available ;;
build) _deb_packages available ;;
builddepend) _deb_packages available ;;
changelog) _deb_packages available ;;
clean) ;;
dailyupgrade) ;;
dependents) ((argno==1)) && _deb_packages available ;;
describe | whatis) _deb_packages available ;;
describenew) ;;
detail | details | show) _deb_packages available ;;
detailnew | newdetail) ;;
distupgrade) ;;
doc | docs) ;;
download) _deb_packages available ;;
filedownload | downloadfile) ((argno==1)) && _files ;;
fileinstall | installfile) ((argno==1)) && _files ;;
fileremove | removefile) ((argno==1)) && _files ;;
findfile) ((argno==1)) && _files ;;
findpkg | unofficial) ;; # no completion available
fixconfigure) ;;
fixinstall) ;;
fixmissing) ;;
force) _deb_packages uninstalled ;;
geturl) ((argno==1)) && _deb_packages available ;;
help) ;;
hold) _deb_packages installed ;;
init) ;;
install) _deb_packages uninstalled ; _files -g '*.deb' ;;
installr | recommended) _deb_packages uninstalled ;;
installrs) _deb_packages uninstalled ;;
installs | suggested) _deb_packages uninstalled ;;
install/*) _deb_packages uninstalled ;;
integrity) ;;
large) _deb_packages installed ;;
lastupdate) ;;
list | listwide) ;; # no completion available
listall) ;;
listalts | listalternatives) ;;
listcache) ;; # no completion available
listcommands | commands) ;;
listdaemons) ;;
listfiles) ((argno==1)) && _deb_packages installed ;;
listhold) ;;
listinstalled) ;; # no completion available
listnames) ;; # no completion available
listorphans | orphans) ;;
liststatus) ;; # no completion available
localdistupgrade) ;;
localupgrade) ;;
move) ;;
new) ;;
news) _deb_packages available ;;
newupgrades) ;;
nonfree) ;;
policy) _deb_packages available ;;
purge) _deb_packages xinstalled ;;
purgedepend) ((argno==1)) && _deb_packages xinstalled ;;
purgeorphans) ;;
readme) _deb_packages installed ;;
recdownload) _deb_packages available ;;
reconfigure) _deb_packages installed ;;
reinstall) _deb_packages installed ;;
reload) ((argno==1)) && _wajig_services ;;
remove) _deb_packages installed ;;
removedepend) _deb_packages installed ;;
removeorphans) ;;
repackage | package) ((argno==1)) && _deb_packages installed ;;
reset) ;;
restart) ((argno==1)) && _wajig_services ;;
rpminstall) ((argno==1)) && _files -g '*.rpm' ;;
rpmtodeb | rpm2deb) ((argno==1)) && _files -g '*.rpm' ;;
search) ;; # no completions available
searchapt) compadd stable testing unstable ;;
setup | editsources) ;;
showdistupgrade) ;;
showinstall) _deb_packages uninstalled ;;
showremove) _deb_packages installed ;;
showupgrade) ;;
size | sizes) _deb_packages installed ;;
snapshot) ;;
source) _deb_packages available ;;
start) ((argno==1)) && _wajig_services ;;
status) _deb_packages available ;;
statusmatch | satussearch) ;; # no completion available
stop) ((argno==1)) && _wajig_services ;;
tasksel) ;;
toupgrade) ;;
unhold) _deb_packages held ;;
update) ;;
updatealts) ((argno==1)) && _wajig_alternatives ;;
upgrade) _deb_packages installed ;;
whichpkg) _files ;;
esac
}
_wajig() {
_arguments -s \
'(- 1 *)'{-h,--help}'[print usage message]' \
'(- 1 *)--version[display version information]' \
'(-q --quiet)'{-q,--quiet}'[do everything quietly]' \
'(-s --simulate)'{-s,--simulate}"[trace but don't execute]" \
'(-t --teaching)'{-t,--teaching}'[trace the sequence of commands performed]' \
'(-v --verbose)'{-v,--verbose}'[increase (or set) the level of verbosity]' \
'1: :_wajig_command' \
'*: :_wajig_subcommand'
}
_wajig $@