summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/remove.sh12
-rwxr-xr-xsrc/xi.sh7
2 files changed, 18 insertions, 1 deletions
diff --git a/src/remove.sh b/src/remove.sh
index 67bbbdd..7bbb889 100644
--- a/src/remove.sh
+++ b/src/remove.sh
@@ -39,10 +39,20 @@ remove () {
removed=$((removed+1))
${QUIET} || hbar ${HBAR_RED} -T "removing files" $removed $total
done
- ${QUIET} || hbar -t ${HBAR_COMPLETE} -T "removing files" $removed $total
+ ${QUIET} || hbar -t ${HBAR_COMPLETE} -T "removed files" $removed $total
else
${QUIET} || printf "${LIGHT_BLACK}Action cancled by user\n"
fi
}
+clean () {
+ set -- $(du -sh ${CACHE_DIR})
+
+ if prompt_question "${LIGHT_RED}Remove ${RED}$1${LIGHT_RED} of cached files?"; then
+ rm -rf ${CACHE_DIR}/*
+ ${QUIET} || printf "${GREEN}Cleared package cache!\n"
+ else
+ ${QUIET} || printf "${LIGHT_BLACK}Action cancled by user\n"
+ fi
+}
diff --git a/src/xi.sh b/src/xi.sh
index 3ae684a..39581e9 100755
--- a/src/xi.sh
+++ b/src/xi.sh
@@ -38,6 +38,8 @@ Available Commands:
download a .xipkg file
keyimport [name] [url]
import a key from a url
+ clean
+ clean cached files and data
search [query]
search the database for a package
@@ -153,6 +155,11 @@ else
set -o noglob
keyimport $@
;;
+ "clean")
+ shift
+ . ${LIBDIR}/remove.sh
+ clean $@
+ ;;
"list")
list
;;