#!/usr/bin/sudo /bin/sh CACHEDIR="$PWD/poldekcache" ignore() { } [ -r .cleanbuildrc ] && . ./.cleanbuildrc export LC_ALL=C unset LANGUAGE unset LANG cd "$CACHEDIR" || exit 1 SIZE_IN=$(du -s . | sed 's/\t.*//') cleandir() { DIR="$1" /usr/bin/poldek --skip-installed -s "$DIR" --cachedir="$CACHEDIR" \ --shcmd="ls" > cleanpoldekcache.pkgs for PKG in $(ls $DIR); do case "$PKG" in dirindex.pndir.tndb* | packages.ndir.*) ;; *) if ! grep -q "${PKG%%.rpm}" cleanpoldekcache.pkgs; then rm -v $DIR/$PKG fi ;; esac done rm cleanpoldekcache.pkgs } for FILE in *; do case "$FILE" in ftp*.packages.i|http*.packages.i) echo "removing $FILE if empty" rmdir -v "$FILE" ;; ftp*|http*) echo "cleaning inside $FILE" cleandir "$FILE" ;; _* | tmpmd) echo "removing $FILE" rm -rv "$FILE" ;; *) echo "removing $FILE" rm -v "$FILE" ;; esac done SIZE_OUT=$(du -s . | sed 's/\t.*//') echo "Removed $(expr $SIZE_IN - $SIZE_OUT) kilobytes of data from poldek cache" # vim: ts=4 sw=4 filetype=sh