diff options
author | Yash Karandikar | 2020-03-14 15:31:29 -0500 |
---|---|---|
committer | Yash Karandikar | 2020-03-15 19:26:29 -0500 |
commit | a865f9e6c5097d81f3c408669493ff11873cba5a (patch) | |
tree | a3bc3b69dd1a04ff7d40dd46eab013d5786108b9 | |
parent | 85c655ae6e5b57a99fe1d5aa7d94d0639a216d8e (diff) | |
download | aur-a865f9e6c5097d81f3c408669493ff11873cba5a.tar.gz |
Create search functionality
-rwxr-xr-x | haur | 22 |
1 files changed, 21 insertions, 1 deletions
@@ -5,6 +5,16 @@ die () { exit 1 } +search () { + search_term=$1 + mapfile -t name < <(curl -s "https://aur.archlinux.org/rpc/?v=5&type=search&arg=$search_term" | jq -r ".results" | jq -r ".[] | .Name") + mapfile -t version < <(curl -s "https://aur.archlinux.org/rpc/?v=5&type=search&arg=$search_term" | jq -r ".results" | jq -r ".[] | .Version") + mapfile -t description < <(curl -s "https://aur.archlinux.org/rpc/?v=5&type=search&arg=$search_term" | jq -r ".results" | jq -r ".[] | .Description") + for (( i=0; i<${#name[@]}; i++ )); do + echo "${name[i]} ${version[i]}: ${description[i]}" + done +} + if [ -f "$HOME"/.config/haurrc ]; then # shellcheck source=/dev/null source "$HOME"/.config/haurrc @@ -57,8 +67,11 @@ for arg in "$@"; do done shift $((OPTIND -1)) -while getopts ":urch" opt; do +while getopts ":surch" opt; do case $opt in + s ) + SEARCH=true + ;; u ) UPDATE=true ;; @@ -83,6 +96,13 @@ if [ "$HAUR_ALWAYS_CLEAR_CACHE" == "y" ]; then CLEAR_CACHE=true fi +if [ $SEARCH == true ]; then + for PACKAGE_NAME in "$@"; do + search "${PACKAGE_NAME}" || die "Something went wrong while searching for that package." + done + exit 0 +fi + if [ $REMOVE == true ]; then for PACKAGE_NAME in "$@"; do echo "${blue}Removing $PACKAGE_NAME...${normal}" |