124 lines
3.1 KiB
Bash
Executable File
124 lines
3.1 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
echo "EPSON TM series CUPS driver installer"
|
|
echo "---------------------------------------"
|
|
echo ""
|
|
echo ""
|
|
|
|
ROOT_UID=0
|
|
|
|
if [ 0 -ne `id -u` ]
|
|
then
|
|
echo "This script requires root user access."
|
|
echo "Re-run as root user."
|
|
exit 1
|
|
fi
|
|
|
|
SERVERROOT=$(grep '^ServerRoot' /etc/cups/cupsd.conf | awk '{print $2}')
|
|
|
|
if [ -z $FILTERDIR ] || [ -z $PPDDIR ]
|
|
then
|
|
echo "Searching for ServerRoot, ServerBin, and DataDir tags in /etc/cups/cupsd.conf"
|
|
echo ""
|
|
|
|
if [ -z $FILTERDIR ]
|
|
then
|
|
SERVERBIN=$(grep '^ServerBin' /etc/cups/cupsd.conf | awk '{print $2}')
|
|
|
|
if [ -z $SERVERBIN ]
|
|
then
|
|
echo "ServerBin tag not present in cupsd.conf - using default"
|
|
FILTERDIR=/usr/lib/cups/filter
|
|
elif [ ${SERVERBIN:0:1} = "/" ]
|
|
then
|
|
echo "ServerBin tag is present as an absolute path"
|
|
FILTERDIR=$SERVERBIN/filter
|
|
else
|
|
echo "ServerBin tag is present as a relative path - appending to ServerRoot"
|
|
FILTERDIR=$SERVERROOT/$SERVERBIN/filter
|
|
fi
|
|
fi
|
|
|
|
echo ""
|
|
|
|
if [ -z $PPDDIR ]
|
|
then
|
|
DATADIR=$(grep '^DataDir' /etc/cups/cupsd.conf | awk '{print $2}')
|
|
|
|
if [ -z $DATADIR ]
|
|
then
|
|
echo "DataDir tag not present in cupsd.conf - using default"
|
|
PPDDIR=/usr/share/cups/model/EPSON
|
|
elif [ ${DATADIR:0:1} = "/" ]
|
|
then
|
|
echo "DataDir tag is present as an absolute path"
|
|
PPDDIR=$DATADIR/model/EPSON
|
|
else
|
|
echo "DataDir tag is present as a relative path - appending to ServerRoot"
|
|
PPDDIR=$SERVERROOT/$DATADIR/model/EPSON
|
|
fi
|
|
fi
|
|
|
|
echo "SERVERBIN = $SERVERBIN"
|
|
echo "FILTERDIR = $FILTERDIR"
|
|
echo "PPDDIR = $PPDDIR"
|
|
echo ""
|
|
fi
|
|
|
|
INSTALL=/usr/bin/install
|
|
|
|
echo "Installing filter driver ..."
|
|
$INSTALL -s ./build/rastertotmtr $FILTERDIR
|
|
echo ""
|
|
|
|
echo "Installing ppd files ..."
|
|
$INSTALL -m 755 -d $PPDDIR
|
|
$INSTALL -m 755 ./ppd/*.ppd $PPDDIR
|
|
echo ""
|
|
|
|
if [ -z $RPMBUILD ]
|
|
then
|
|
echo "Restarting CUPS"
|
|
if [ -x /etc/software/init.d/cups ]
|
|
then
|
|
/etc/software/init.d/cups stop
|
|
/etc/software/init.d/cups start
|
|
elif [ -x /etc/rc.d/init.d/cups ]
|
|
then
|
|
/etc/rc.d/init.d/cups stop
|
|
/etc/rc.d/init.d/cups start
|
|
elif [ -x /etc/init.d/cups ]
|
|
then
|
|
/etc/init.d/cups stop
|
|
/etc/init.d/cups start
|
|
elif [ -x /sbin/init.d/cups ]
|
|
then
|
|
/sbin/init.d/cups stop
|
|
/sbin/init.d/cups start
|
|
elif [ -x /etc/software/init.d/cupsys ]
|
|
then
|
|
/etc/software/init.d/cupsys stop
|
|
/etc/software/init.d/cupsys start
|
|
elif [ -x /etc/rc.d/init.d/cupsys ]
|
|
then
|
|
/etc/rc.d/init.d/cupsys stop
|
|
/etc/rc.d/init.d/cupsys start
|
|
elif [ -x /etc/init.d/cupsys ]
|
|
then
|
|
/etc/init.d/cupsys stop
|
|
/etc/init.d/cupsys start
|
|
elif [ -x /sbin/init.d/cupsys ]
|
|
then
|
|
/sbin/init.d/cupsys stop
|
|
/sbin/init.d/cupsys start
|
|
else
|
|
echo "Could not restart CUPS"
|
|
fi
|
|
echo ""
|
|
fi
|
|
|
|
echo "Installation Completed"
|
|
echo "Add a printer queue using OS tool, http://localhost:631, or http://127.0.0.1:631"
|
|
echo ""
|
|
|