#!/bin/sh
#
# This should work with the GNU version of tar and gzip!
# This should work with the bash or ash shell!
# Requires the programs (ar, tar, gzip, and the pager more or less).
#
usage() {
echo "Usage: undeb -c package.deb            <Print control file info>"
echo "       undeb -l package.deb            <List contents of deb package>"
echo "       undeb -x package.deb /foo/boo   <Extract deb package to this directory,"
echo "                                        put . for current directory>"
exit
}

deb=$2

exist() {
if [ "$deb" = "" ]; then
usage
elif [ ! -s "$deb" ]; then
echo "Can't find $deb!"
exit
fi
}

if [ "$1" = "" ]; then
usage
elif [ "$1" = "-l" ]; then
exist
type more >/dev/null 2>&1 && pager=more
type less >/dev/null 2>&1 && pager=less
[ "$pager" = "" ] && echo "No pager found!" && exit
(ar -p $deb control.tar.gz | tar -xzO *control ; echo -e "\nPress enter to scroll, q to Quit!\n" ; ar -p $deb data.tar.gz | tar -tzv) | $pager
exit
elif [ "$1" = "-c" ]; then
exist
ar -p $deb control.tar.gz | tar -xzO *control
exit
elif [ "$1" = "-x" ]; then
exist
if [ "$3" = "" ]; then
usage
elif [ ! -d "$3" ]; then
echo "No such directory $3!"
exit
fi
ar -p $deb data.tar.gz | tar -xzvpf - -C $3 || exit
echo
echo "Extracted $deb to $3!"
exit
else
usage
fi
