master
Philipp Häfelfinger 8 years ago
parent b793cf7c88
commit 8bf68f2715

@ -0,0 +1,19 @@
pkgbase = brother-dcp9010cn
pkgdesc = Brother cups and lpd driver for DCP-9010CN
pkgver = 1.1.2
pkgrel = 2
url = http://solutions.brother.com/linux/en_us/index.html
arch = i686
arch = x86_64
license = (custom)mm
depends = lib32-glibc
depends = psutils
noextract = DCP7010.ppd.gz
source = http://www.brother.com/pub/bsc/linux/dlf/dcp9010cncupswrapper-1.1.2-2.i386.deb
source = http://www.brother.com/pub/bsc/linux/dlf/dcp9010cnlpr-1.1.2-1.i386.deb
source = brlpdwrapperdcp9010cn
md5sums = 77656611e482dd30e2421872b94ebd73
md5sums = 2bb1422ba9d9e5e4581ea4cbbe770fc9
md5sums = 252f0b1fdff5afc395de5a59a1d9641f
pkgname = brother-dcp9010cn

@ -0,0 +1,54 @@
# Contributor: Pavel Benak <pavel.benak@uhk.cz>
pkgname=brother-dcp9010cn
pkgver=1.1.2
pkgrel=2
_cupsrel=2
_lprrel=1
pkgdesc="Brother cups and lpd driver for DCP-9010CN"
arch=('i686' 'x86_64')
url="http://solutions.brother.com/linux/en_us/index.html"
license=('custom')
if [ "$(uname -m)" = "x86_64" ]
then
depends=('lib32-glibc' 'psutils')
else
depends=('psutils')
fi
noextract=(DCP7010.ppd.gz)
source=(
http://www.brother.com/pub/bsc/linux/dlf/dcp9010cncupswrapper-$pkgver-$_cupsrel.i386.deb
http://www.brother.com/pub/bsc/linux/dlf/dcp9010cnlpr-$pkgver-$_lprrel.i386.deb
brlpdwrapperdcp9010cn
)
md5sums=('77656611e482dd30e2421872b94ebd73'
'2bb1422ba9d9e5e4581ea4cbbe770fc9'
'252f0b1fdff5afc395de5a59a1d9641f')
prepare()
{
mkdir -p $srcdir/unpack || return 1
for i in $srcdir/*.deb
do
cd $srcdir/unpack
ar -x $i || return 1
cd $srcdir
bsdtar -pxf $srcdir/unpack/data.tar.gz || return 1
done
}
package()
{
cp -a $srcdir/usr $pkgdir/ || return 1
cp -a $srcdir/opt $pkgdir/ || return 1
# PPD file
install -d -m755 $pkgdir/usr/share/cups/model || return 1
install -D -m644 $srcdir/opt/brother/Printers/dcp9010cn/cupswrapper/brother_dcp9010cn_printer_en.ppd $pkgdir/usr/share/cups/model || return 1
# cups wrapper
install -d -m755 $pkgdir/usr/lib/cups/filter || return 1
install -D -m755 brlpdwrapperdcp9010cn $pkgdir/usr/lib/cups/filter || return 1
}

@ -0,0 +1,137 @@
#! /bin/sh
#
# Copyright (C) 2005-2011 Brother. Industries, Ltd.
# Ver1.10
# This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the Free
# Software Foundation; either version 2 of the License, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
# more details.
#
# You should have received a copy of the GNU General Public License along with
# this program; if not, write to the Free Software Foundation, Inc., 59 Temple
# Place, Suite 330, Boston, MA 02111-1307 USA
#
LOGFILE="/dev/null"
LOGLEVEL="1"
LOGCLEVEL="7"
DEBUG=0
NUPENABLE=1
LOG_LATESTONLY=1
errorcode=0
if [ $DEBUG != 0 ]; then
LOGFILE=/tmp/br_cupsfilter_debug_log
fi
PPDC=`printenv | grep "PPD="`
PPDC=`echo $PPDC | sed -e 's/PPD=//'`
if [ "$PPDC" = "" ]; then
PPDC="/usr/share/cups/model/brother_dcp9010cn_printer_en.ppd"
fi
if [ $LOGFILE != "/dev/null" ]; then
if [ $LOG_LATESTONLY == "1" ]; then
rm -f $LOGFILE
date >$LOGFILE
else
if [ -e $LOGFILE ]; then
date >>$LOGFILE
else
date >$LOGFILE
fi
fi
echo "arg0 = $0" >>$LOGFILE
echo "arg1 = $1" >>$LOGFILE
echo "arg2 = $2" >>$LOGFILE
echo "arg3 = $3" >>$LOGFILE
echo "arg4 = $4" >>$LOGFILE
echo "arg5 = $5" >>$LOGFILE
echo "arg6 = $6" >>$LOGFILE
echo "PPD = $PPD" >>$LOGFILE
fi
INPUT_TEMP_PS=`mktemp /tmp/br_input_ps.XXXXXX`
nup="cat"
if [ "`echo $5 | grep 'Nup='`" != '' ] && [ $NUPENABLE != 0 ]; then
if [ "`echo $5 | grep 'Nup=64'`" != '' ]; then
nup="psnup -64"
elif [ "`echo $5 | grep 'Nup=32'`" != '' ]; then
nup="psnup -32"
elif [ "`echo $5 | grep 'Nup=25'`" != '' ]; then
nup="psnup -25"
elif [ "`echo $5 | grep 'Nup=16'`" != '' ]; then
nup="psnup -16"
elif [ "`echo $5 | grep 'Nup=8'`" != '' ]; then
nup="psnup -8"
elif [ "`echo $5 | grep 'Nup=6'`" != '' ]; then
nup="psnup -6"
elif [ "`echo $5 | grep 'Nup=4'`" != '' ]; then
nup="psnup -4"
elif [ "`echo $5 | grep 'Nup=2'`" != '' ]; then
nup="psnup -2"
elif [ "`echo $5 | grep 'Nup=1'`" != '' ]; then
nup="cat"
fi
echo "NUP=$nup" >>$LOGFILE
if [ -e /usr/bin/psnup ]; then
if [ $# -ge 7 ]; then
cat $6 | $nup > $INPUT_TEMP_PS
else
cat | $nup > $INPUT_TEMP_PS
fi
else
if [ $# -ge 7 ]; then
cp $6 $INPUT_TEMP_PS
else
cat > $INPUT_TEMP_PS
fi
fi
else
if [ $# -ge 7 ]; then
cp $6 $INPUT_TEMP_PS
else
cat > $INPUT_TEMP_PS
fi
fi
if [ -e "/opt/brother/Printers/dcp9010cn/lpd/filterdcp9010cn" ]; then
:
else
echo "ERROR: /opt/brother/Printers/dcp9010cn/lpd/filterdcp9010cn does not exist" >>$LOGFILE
errorcode=30
exit
fi
CUPSOPTION=`echo "$5 Copies=1" | sed -e 's/BrMirror=OFF/MirrorPrint=OFF/' -e 's/BrMirror=ON/MirrorPrint=ON/' -e 's/BrChain/Chain/' -e 's/BrBrightness/Brightness/' -e 's/BrContrast/Contrast/' -e 's/BrHalfCut/HalfCut/' -e 's/BrAutoTapeCut/AutoCut/' -e 's/BrHalftonePattern/Halftone/' -e 's/Binary/Binary/' -e 's/Dither/Dither/' -e 's/ErrorDiffusion/ErrorDiffusion/' -e 's/BrSheets/Sheets/' -e 's/multiple-document-handling/Collate/' -e 's/separate-documents-collated-copies/ON/' -e 's/separate-documents-uncollated-copies/OFF/'`
if [ -e "/opt/brother/Printers/dcp9010cn/cupswrapper/brcupsconfpt1" ]; then
if [ $DEBUG = 0 ]; then
/opt/brother/Printers/dcp9010cn/cupswrapper/brcupsconfpt1 DCP9010CN $PPDC 0 "$CUPSOPTION" "dcp9010cn">> /dev/null
else
/opt/brother/Printers/dcp9010cn/cupswrapper/brcupsconfpt1 DCP9010CN $PPDC $LOGCLEVEL "$CUPSOPTION" "dcp9010cn">>$LOGFILE
fi
fi
if [ $DEBUG -lt 10 ]; then
cat $INPUT_TEMP_PS | /opt/brother/Printers/dcp9010cn/lpd/filterdcp9010cn "$$" "CUPS" "USB"
if [ $LOGLEVEL -gt 2 ]; then
if [ $LOGFILE != "/dev/null" ]; then
echo "" >>$LOGFILE
echo " ------PostScript Data-------" >>$LOGFILE
cat $INPUT_TEMP_PS >>$LOGFILE
fi
fi
fi
rm -f $INPUT_TEMP_PS
exit $errorcode
Loading…
Cancel
Save