shell-host/distro/arch/pacman

52 lines
1.3 KiB
Plaintext
Raw Normal View History

2023-02-23 18:27:26 -08:00
#/bin/bash
# https://wiki.archlinux.org/title/Pacman
2023-02-23 18:27:26 -08:00
alias pm="pacman"
alias pms="sudo pacman"
# install including needed packages
2023-02-23 18:27:26 -08:00
alias pmi="sudo pacman -S --needed"
# remove a package and its dependencies which are not required by any other installed package:
2023-02-23 18:27:26 -08:00
alias pmr="sudo pacman -Rs"
# update all
alias pmua="sudo pacman -Syu"
# update only the repository database
alias pmur="sudo pacman -Syy"
# search for packages in the database, searching both in packages' names and descriptions:
2023-02-23 18:27:26 -08:00
alias pms="pacman -Ss"
# list all installed packages
alias pml="pacman -Qe"
# list packages with grep
alias pmlg="pacman -Qe | grep"
# https://unix.stackexchange.com/a/409903/201387
# get a list of user added packages
alias pmlf="comm -23 <(pacman -Qqett | sort | uniq) <(pacman -Qqg base-devel | sort | uniq)"
# get status of a package
2023-02-23 18:27:26 -08:00
alias pkgst="pacman -Qi"
# get info of a packaage
2023-02-23 18:27:26 -08:00
alias pkgi="pacman -Si"
# uses pamac to build/update an AUR. use in place of other AUR managers like yay
alias pkaurbld="pamac build"
2023-02-23 18:27:26 -08:00
2023-02-23 18:27:26 -08:00
pmig () {
pacman -Q | grep $1 | cut -d ' ' -f 1
}
pmrg () {
pacman -Ssq | grep $1
}
pmnig () {
local installed="|$(pmig $1 | tr '\n' '|')"
echo $installed
pmrg $1 | grep -E -v \'${installed}\'
}
pmnigv () {
pacman -Ss $1 | grep -v "$(pacman -Ss $1 | grep "\[installed\]" -A1 )" | grep -v "\[installed\]"
}