]> git.rmz.io Git - dotfiles.git/blobdiff - zsh/aliases/pacman.zsh
it's already run it /etc/profile
[dotfiles.git] / zsh / aliases / pacman.zsh
index f99a300d9355961f95985a0a6f30227c0f5664db..af0dc9e125a51fd07ff36592337661c25a34afca 100644 (file)
@@ -1,7 +1,7 @@
 # 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
@@ -9,6 +9,10 @@ alias pacsi='pacman -Sii'              # Display information about a given packa
 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
 
@@ -21,6 +25,17 @@ alias paclo='sudo pacman -Qdt'
 # [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