34 lines
1.3 KiB
Plaintext
34 lines
1.3 KiB
Plaintext
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'
|
|
alias yays='noglob yay -S --needed --ignore ferdi'
|
|
alias yayr='noglob yay -R'
|
|
|
|
yzf() {
|
|
query=$(test "$1" = "Q" && echo " -l")
|
|
sync=$(test "$1" = "S" && echo "true" || echo "")
|
|
pos=$(test "$query" && echo 1 || echo 2)
|
|
list_cache="/tmp/yzf-$1$2"
|
|
(test "$sync" && cat "$list_cache" 2>/dev/null || yay --color always -$1$2 | sed "s/ /\t/g" | tee "$list_cache") |
|
|
fzf --nth=$pos --multi --tiebreak=length --history=/var/tmp/fzf-history-yay \
|
|
--bind="double-click:execute(xdg-open 'https://archlinux.org/packages/{$pos}')" \
|
|
--preview "$(test "$sync" && echo "cat /tmp/yzf-{$pos} 2>/dev/null | grep -v 'Querying' | grep . ||") yay --color always -$1 -i $query {$pos} | tee /tmp/yzf-{$pos}" "${@:3}" --preview-window=wrap |
|
|
cut -f$pos
|
|
# TODO get xdg-open URL for aur as well
|
|
# yay -S -i {$pos} | grep URL | tail -1 | cut -d ':' -f2- | xargs xdg-open
|
|
}
|
|
yas() {
|
|
pkg=$(yzf S l -q "$1" "${@:2}")
|
|
test "$pkg" && echo "Install $pkg..." && print -s "yay -S $pkg" && yay -S "$pkg"
|
|
}
|
|
yar() {
|
|
pkg=$(yzf Q "" -q "$1" "${@:2}")
|
|
test "$pkg" && echo "Removing $pkg..." && print -s "yay -R $pkg" && yay -R "$pkg"
|
|
}
|
|
|