dotfiles/.config/shell/arch

47 lines
1.3 KiB
Plaintext
Raw Normal View History

which pacman >/dev/null || return 0
alias dragon='dragon-drag-and-drop'
# Arch aliases
alias pac='noglob sudo pacman'
alias pacs='pac -Syu --needed'
alias pacr='pac -R --recursive'
alias yays='noglob yay -Sy --needed'
alias yayr='noglob yay -R --cascade --recursive'
yzf() {
pos=$1
shift
sed "s/ /\t/g" |
fzf --nth=$pos --multi --tiebreak=length --history=/var/tmp/fzf-history-yzf$pos \
--preview-window=60%,border-left \
2021-04-22 17:37:32 +00:00
--bind="double-click:execute(xdg-open 'https://archlinux.org/packages/{$pos}')" \
2021-06-08 18:44:42 +00:00
"$@" | cut -f$pos | xargs
}
2021-06-08 18:44:42 +00:00
# print -s adds a shell history entry
yas() {
cache_dir="/tmp/yas"
mkdir -p "$cache_dir"
preview_cache="$cache_dir/preview_{2}"
list_cache="$cache_dir/list"
2021-06-08 18:44:42 +00:00
pkg=$((cat "$list_cache$@" 2>/dev/null || yay --color=always -Sl "$@" | tee "$list_cache$@") |
yzf 2 --preview="cat $preview_cache 2>/dev/null | grep -v 'Querying' | grep . || yay --color always -Si {2} | tee $preview_cache")
if test -n "$pkg"
then echo "Installing $pkg..."
cmd="yay -S $pkg"
print -s "$cmd"
eval "$cmd"
fi
}
yar() {
2021-06-08 18:44:42 +00:00
pkg=$(yay --color=always -Q "$@" | yzf 1 --preview="yay --color always -Qli {1}")
if test -n "$pkg"
then echo "Removing $pkg..."
cmd="yay -R --cascade --recursive $pkg"
print -s "$cmd"
eval "$cmd"
fi
}