you can achieve great results from single oneliners:
INSTALL ARCH PACKAGES:
Code: Select all
pacman -Slq | fzf --multi --preview 'pacman -Si {1}' | xargs -ro sudo pacman -S
Code: Select all
pacman -Qq | fzf --multi --preview 'pacman -Qi {1}' | xargs -ro sudo pacman -Rns
Code: Select all
activate $(find "$PORTDIR"/ -name "*.xzm" | fzf --multi
Then I remembered that I had an old (gitlast) function included in my Nemesis MATE to retrieve the latest version of some packages in github. So there was no reason not to make it more interactive:
Code: Select all
glast() {
local REPO
if [ $# -eq 0 ]; then
cat <<EOF
Syntax: glast <OWNER/REPO>
Examples:
glast AppImage/AppImageKit
glast AppImage/pkg2appimage
glast clickot/ungoogled-chromium-binaries
glast aristocratos/btop
glast jarun/nnn
glast sharkdp/fd
glast BurntSushi/ripgrep
glast doublecmd/doublecmd
glast peazip/PeaZip
glast imagemagick/imagemagick
glast ksnip/ksnip
glast flameshot-org/flameshot
glast VSCodium/vscodium
glast keepassxreboot/keepassxc
glast 4gray/iptvnator
glast arrowtype/recursive
glast ToxicFrog/Ligaturizer
git clone https://github.com/ToxicFrog/Ligaturizer
NOTES:
Press <TAB> to select multiple files and download them at once
Use ddgr in your terminal to discover GITHUB repos
EOF
else
REPO="${1}"
url="https://api.github.com/repos/"${REPO}"/releases/latest"
curl -sL "${url}" | awk '/browser_download_url.*/{print $(NF)}' | fzf -m | xargs wget -qo -
fi
}
export -f glast
bind '"\C-G":" glast\n"' # glast bound to ctrl+G
I.e.: glast doublecmd/doublecmd allows you to get the last doublecmd version.
Now, you can use ddgr or your browser to discover github repos and further automate your packaging.
Hope you fzf it useful
NOTE: It might be a good idea to include fzf in Porteux