I can't figure out what's causing it
Here's the script
Code: Select all
#!/bin/bash
#pkg2pet convert deb or rpm to pet
pkgtypefunc() {
local PKG="$1"
BASENAME=$(basename "$PKG")
PKGTYPE="${BASENAME##*.}"
case $PKGTYPE in
deb)
echo Found Debian package: $BASENAME
;;
rpm)
echo Found RPM package: $BASENAME
;;
*)
echo Unknown/unsupported package: $BASENAME
exit 1
;;
esac
}
DIALOG="Xdialog"
[ -z "$DISPLAY" ] && DIALOG="dialog"
if [ "$#" = "0" ]; then
ARGS=$($DIALOG --stdout --title "Select a package" --fselect $HOME 0 0)
RET=$?
case $RET in
0)
#do nothing
;;
*)
exit $RET
;;
esac
else
ARGS="$@"
fi
for PKG in $ARGS; do
if [ ! -e "$PKG" ]; then
echo $PKG not found
exit 1
fi
pkgtypefunc "$PKG"
case $PKGTYPE in
deb)
PETNAME="${BASENAME%%.deb}"
TMP="/tmp/$PKGTYPE/$PETNAME"
mkdir -p "$TMP"
dpkg-deb -x "$PKG" "$TMP" || exit 1
;;
rpm)
PETNAME="${BASENAME%%.rpm}"
TMP="/tmp/$PKGTYPE/$PETNAME"
mkdir -p "$TMP"
( cd "$TMP" || exit 1
rpm2cpio "$PKG" | cpio -vid || exit 1
)
;;
esac
( cd "$TMP" || exit 1
echo \
"PETMENUDESCR=''
PETOFFICIALDEPS''
PETREGISTER='yes'" \
> $PETNAME.pet.specs
cd ..
tar -cvzf "$PETNAME.tar.gz" "$PETNAME"
tgz2pet "$PETNAME.tar.gz"
)
done