# Pacman - https://wiki.archlinux.org/index.php/Pacman_Tips
alias pacupg='sudo pacman -Syu' # Synchronize with repositories before upgrading packages that are out of date on the local system.
alias pacin='sudo pacman -S' # Install specific package(s) from the repositories
-alias pacins='sudo pacman -U' # Install specific package not from the repositories but from a file
+alias pacu='sudo pacman -U' # Install specific package not from the repositories but from a file
alias pacre='sudo pacman -R' # Remove the specified package(s), retaining its configuration(s) and required dependencies
alias pacrem='sudo pacman -Rns' # Remove the specified package(s), its configuration(s) and unneeded dependencies
alias pacrm='sudo pacman -Rnsc' # Remove the specified package(s), its configuration(s) and unneeded dependencies
alias pacss='pacman -Ss' # Search for package(s) in the repositories
alias pacqi='pacman -Qii' # Display information about a given package in the local database
alias pacqs='pacman -Qs' # Search for package(s) in the local database
+alias pacl='pacman -Ql' # List all files owned by package(s)
+alias paco='pacman -Qo' # List package owning the given file(s)
+alias pacdep='sudo pacman -D --asdeps' # Mark package as dependency
+alias pacexp='sudo pacman -D --asexplicit' # Mark package as explicit
alias pacinsd='sudo pacman -S --asdeps' # Install given package(s) as dependencies of another package
alias pacmir='sudo pacman -Syy' # Force refresh of all package lists after updating /etc/pacman.d/mirrorlist
# [r]emove [o]orphans
alias pacro='sudo pacman -Rnscu $(pacman -Qtdq)'
+# Display information about given packages (merges output of -Sii and -Qii)
+paci() {
+ for p in $@; do
+ if [[ -n "$(pacman -Qq "$p" 2>/dev/null)" ]]; then
+ diff -u100 <(pacman -Qii "$p") <(pacman -Sii "$p" | sed '/^$/,$ d') | sed -e '1,3 d' -e 's/[-+ ]//'
+ else
+ pacman -Sii "$p"
+ fi
+ done
+}
+
pacdisowned() {
tmp=${TMPDIR-/tmp}/pacman-disowned-$UID-$$
db=$tmp/db