#!/bin/sh # # pkgclean v0.4 -- lists unneed tbz2 packages # (c) Christian Birchinger # option=$1 if [ "$option" = '-h' -o "$option" = '--help' ]; then echo echo "Usage: `basename $0` [options]" echo echo " -h | --help Display this help" echo " -r | --remove Remove unneeded files" echo exit fi echo >&2 if [ "$option" = '-r' -o "$option" = '--remove' ]; then echo ">>> Removing all unused packages... " >&2 else echo ">>> Listing all unused packages... " >&2 fi echo >&2 (find /usr/portage/packages/ -type f -iname "*.tbz2" -printf "%f\n"; find /var/db/pkg -maxdepth 2 -mindepth 2 -printf "%f.tbz2\n") \ | sort | uniq -u | while read package; do if [ -f /usr/portage/packages/*-*/"$package" -o -f /usr/portage/packages/All/"$package" ]; then if [ "$option" = '-r' -o "$option" = '--remove' ]; then rm -v -- /usr/portage/packages/*/"$package" else echo "$package" fi fi done echo >&2