#!/bin/bash

FILES=""
VERBOSE=false

for i in $* ; do
    case "$i" in
      -v)
        VERBOSE=true
        ;;
      *)
        FILES="$FILES $i"
        ;;
    esac
done

for i in $FILES ; do
    case "$i" in
      *.tgz|*.tar.gz|*.taz|*.tar.Z)
        if test "$VERBOSE" = true ; then
            tar zxvfp $i
        else
            tar zxfp $i
        fi
        ;;
      *.rpm|*.RPM|*.spm|*.SPM)
        if test "$VERBOSE" = true ; then
            unrpm -v -q $i 2>&1
        else
            unrpm -q $i
        fi
        mkdir install 2> /dev/null
        rpm -qp $i --qf "%{PREIN}" > install/predoinst.sh
        rpm -qp $i --qf "%{PREUN}" > install/predelete.sh
        rpm -qp $i --qf "%{POSTIN}" > install/doinst.sh
        rpm -qp $i --qf "%{POSTUN}" > install/delete.sh
        echo -n "(none)" > .none
        cmp -s install/predoinst.sh .none && rm -f install/predoinst.sh
        cmp -s install/predelete.sh .none && rm -f install/predelete.sh
        cmp -s install/doinst.sh .none && rm -f install/doinst.sh
        cmp -s install/delete.sh .none && rm -f install/delete.sh
        rm -f .none
        rmdir install 2> /dev/null
        exit 0
        ;;
      *)
        echo "Don't know to handle $i!!!" 
        ;;
    esac
done
