This repository has been archived on 2022-03-28. You can view files and clone it, but cannot push or open issues or pull requests.
prezto/modules/pacman/init.zsh

85 lines
2.3 KiB
Bash
Raw Permalink Normal View History

2011-08-30 23:16:15 -04:00
#
2012-06-30 17:29:30 -04:00
# Defines Pacman aliases.
2012-01-31 23:37:51 -05:00
#
# Authors:
# Benjamin Boudreau <dreurmail@gmail.com>
# Sorin Ionescu <sorin.ionescu@gmail.com>
#
# Tips:
2011-08-30 23:16:15 -04:00
# https://wiki.archlinux.org/index.php/Pacman_Tips
2012-01-31 23:37:51 -05:00
#
2011-08-30 23:16:15 -04:00
2012-07-23 15:00:44 -04:00
# Return if requirements are not found.
if (( ! $+commands[pacman] )); then
return 1
fi
2012-08-04 14:48:32 -04:00
#
# Frontend
#
2012-06-30 17:29:30 -04:00
# Get the Pacman frontend.
zstyle -s ':prezto:module:pacman' frontend '_pacman_frontend'
2011-10-11 23:13:58 -04:00
2012-06-30 17:29:30 -04:00
if (( $+commands[$_pacman_frontend] )); then
alias pacman="$_pacman_frontend"
2011-10-11 23:13:58 -04:00
2012-06-30 17:29:30 -04:00
if [[ -s "${0:h}/${_pacman_frontend}.zsh" ]]; then
source "${0:h}/${_pacman_frontend}.zsh"
2011-08-30 23:16:15 -04:00
fi
else
_pacman_frontend='pacman'
_pacman_sudo='sudo '
2011-08-30 23:16:15 -04:00
fi
2012-08-04 14:48:32 -04:00
#
2012-07-03 13:58:32 -04:00
# Aliases
2012-08-04 14:48:32 -04:00
#
2012-07-03 13:58:32 -04:00
2012-08-15 07:59:25 -04:00
# Pacman.
2014-01-13 04:45:08 -05:00
alias pac="${_pacman_frontend}"
2012-08-15 07:59:25 -04:00
2012-06-30 17:29:30 -04:00
# Installs packages from repositories.
alias paci="${_pacman_sudo}${_pacman_frontend} --sync"
2011-10-11 23:13:58 -04:00
2012-06-30 17:29:30 -04:00
# Installs packages from files.
alias pacI="${_pacman_sudo}${_pacman_frontend} --upgrade"
2011-10-11 23:13:58 -04:00
2012-06-30 17:29:30 -04:00
# Removes packages and unneeded dependencies.
alias pacx="${_pacman_sudo}${_pacman_frontend} --remove"
2011-10-11 23:13:58 -04:00
2012-06-30 17:29:30 -04:00
# Removes packages, their configuration, and unneeded dependencies.
alias pacX="${_pacman_sudo}${_pacman_frontend} --remove --nosave --recursive"
2011-10-11 23:13:58 -04:00
2012-07-03 13:58:32 -04:00
# Displays information about a package from the repositories.
alias pacq="${_pacman_frontend} --sync --info"
2011-10-11 23:13:58 -04:00
2012-07-03 13:58:32 -04:00
# Displays information about a package from the local database.
alias pacQ="${_pacman_frontend} --query --info"
2011-08-30 23:16:15 -04:00
2012-06-30 17:29:30 -04:00
# Searches for packages in the repositories.
alias pacs="${_pacman_frontend} --sync --search"
2011-08-30 23:16:15 -04:00
2012-06-30 17:29:30 -04:00
# Searches for packages in the local database.
alias pacS="${_pacman_frontend} --query --search"
2011-08-30 23:16:15 -04:00
2012-06-30 17:29:30 -04:00
# Lists orphan packages.
alias pacman-list-orphans="${_pacman_sudo}${_pacman_frontend} --query --deps --unrequired"
2011-08-30 23:16:15 -04:00
2012-06-30 17:29:30 -04:00
# Removes orphan packages.
alias pacman-remove-orphans="${_pacman_sudo}${_pacman_frontend} --remove --recursive \$(${_pacman_frontend} --quiet --query --deps --unrequired)"
2011-08-30 23:16:15 -04:00
2012-06-30 17:29:30 -04:00
# Synchronizes the local package and Arch Build System databases against the
# repositories.
2011-10-11 23:13:58 -04:00
if (( $+commands[abs] )); then
2014-10-08 19:00:14 -04:00
alias pacu="${_pacman_sudo}${_pacman_frontend} --sync --refresh && sudo abs"
2011-10-11 23:13:58 -04:00
else
alias pacu="${_pacman_sudo}${_pacman_frontend} --sync --refresh"
2011-10-11 23:13:58 -04:00
fi
2011-08-30 23:16:15 -04:00
2012-06-30 17:29:30 -04:00
# Synchronizes the local package database against the repositories then
# upgrades outdated packages.
alias pacU="${_pacman_sudo}${_pacman_frontend} --sync --refresh --sysupgrade"
2012-06-30 17:29:30 -04:00
unset _pacman_{frontend,sudo}