summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorOleksandr Natalenko2015-06-08 12:59:03 +0300
committerOleksandr Natalenko2015-06-08 12:59:03 +0300
commit46d0ac3ed5bab07194b9c03223674cc011b77990 (patch)
tree6ec35c0ac9a3f32be4d1434e78fa04c6f97d8563
downloadaur-46d0ac3ed5bab07194b9c03223674cc011b77990.tar.gz
initial import
-rw-r--r--.SRCINFO23
-rw-r--r--PKGBUILD54
-rw-r--r--brother-mfc-7860dw.install37
-rw-r--r--brother-mfc-7860dw.patch144
4 files changed, 258 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..372a6c39d8be
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,23 @@
+pkgbase = brother-mfc-7860dw
+ pkgdesc = CUPS driver for Brother MFC-7860DW printer
+ pkgver = 2.1.0
+ pkgrel = 2
+ url = http://welcome.solutions.brother.com/bsc/public_s/id/linux/en/index.html
+ install = brother-mfc-7860dw.install
+ arch = i686
+ arch = x86_64
+ license = GPL
+ makedepends = rpmextract
+ depends = cups
+ depends = ghostscript
+ depends = gsfonts
+ depends = foomatic-filters
+ source = http://www.brother.com/pub/bsc/linux/dlf/mfc7860dwlpr-2.1.0-1.i386.rpm
+ source = http://www.brother.com/pub/bsc/linux/dlf/cupswrapperMFC7860DW-2.0.4-2.i386.rpm
+ source = brother-mfc-7860dw.patch
+ md5sums = d321ad6ca699a19a6aa608d67ae41198
+ md5sums = 9cf9fb55b6972d1b897205295029c17d
+ md5sums = 1a96507310b73086b69f5f120a30e274
+
+pkgname = brother-mfc-7860dw
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..80b92b333a0b
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,54 @@
+# Maintainer: Oleksandr Natalenko <pfactum@gmail.com>
+# Author of original PKGBUILD: Igor Mosyagin <c6h10o5@gmail.com>
+pkgname=brother-mfc-7860dw
+pkgver=2.1.0
+_driver_ver=2.1.0
+_wrapper_ver=2.0.4
+pkgrel=2
+pkgdesc="CUPS driver for Brother MFC-7860DW printer"
+arch=('i686' 'x86_64')
+url="http://welcome.solutions.brother.com/bsc/public_s/id/linux/en/index.html"
+license=('GPL')
+depends=()
+if [ "$CARCH" = "x86_64" ]; then
+ depends=('cups' 'ghostscript' 'gsfonts' 'foomatic-filters' 'lib32-glibc')
+else
+ depends=('cups' 'ghostscript' 'gsfonts' 'foomatic-filters')
+fi
+makedepends=('rpmextract')
+install=brother-mfc-7860dw.install
+source=(http://www.brother.com/pub/bsc/linux/dlf/mfc7860dwlpr-$_driver_ver-1.i386.rpm
+http://www.brother.com/pub/bsc/linux/dlf/cupswrapperMFC7860DW-$_wrapper_ver-2.i386.rpm
+ brother-mfc-7860dw.patch)
+md5sums=('d321ad6ca699a19a6aa608d67ae41198'
+ '9cf9fb55b6972d1b897205295029c17d'
+ '1a96507310b73086b69f5f120a30e274'
+ )
+
+build() {
+ cd "$srcdir"
+
+ # extract files
+ rpmextract.sh mfc7860dwlpr-$_driver_ver-1.i386.rpm
+ rpmextract.sh cupswrapperMFC7860DW-$_wrapper_ver-2.i386.rpm
+
+ # patch files to adhere arch packaging standard
+ patch -p1 < "$srcdir/brother-mfc-7860dw.patch" || return 1
+
+ # generate ppd and wrapper file
+ sh "$srcdir/usr/local/Brother/Printer/MFC7860DW/cupswrapper/cupswrapperMFC7860DW-$_wrapper_ver"
+}
+
+package() {
+ # put files where they belong
+ mkdir -p "$pkgdir/usr/share/brother"
+ cp -r "$srcdir/usr/local/Brother/Printer" "$pkgdir/usr/share/brother/printer"
+ cp -r "$srcdir/var" "$pkgdir/"
+
+ rm "$pkgdir/usr/share/brother/printer/MFC7860DW/cupswrapper/cupswrapperMFC7860DW-$_wrapper_ver"
+ rm "$pkgdir/usr/share/brother/printer/MFC7860DW/inf/setupPrintcap2"
+
+ install -m 644 -D ppd_file "$pkgdir/usr/share/cups/model/MFC7860DW.ppd"
+ install -m 755 -D wrapper "$pkgdir/usr/lib/cups/filter/brlpdwrapperMFC7860DW"
+}
+
diff --git a/brother-mfc-7860dw.install b/brother-mfc-7860dw.install
new file mode 100644
index 000000000000..4129f27b97a0
--- /dev/null
+++ b/brother-mfc-7860dw.install
@@ -0,0 +1,37 @@
+# orig name brother-mfc-8870dw.install
+post_install() {
+ __port2=`lpinfo -v | grep -i 'usb://Brother/MFC-7860DW' | head -1`
+ if [ "$__port2" = '' ];then
+ __port2=`lpinfo -v | grep 'usb://' | head -1`
+ fi
+ __port=`echo $__port2| sed s/direct//g`
+ if [ "$__port" = '' ];then
+ __port="usb:/dev/usb/lp0"
+ fi
+
+ lpadmin -p MFC7860DW -E -v $__port -P /usr/share/cups/model/MFC7860DW.ppd
+ echo "If CUPS is not running now, start it after installation"
+ echo "and type command:"
+echo " lpadmin -p MC7860DW -E -v URL -P /usr/share/cups/model/MFC7860DW.ppd"
+ echo "where URL can be found using command:"
+ echo " lpinfo -v | grep -i 'Brother'"
+ echo "in case of a network printer, take URL:"
+ echo " socket://ipaddress:9100/"
+ echo "You can also register the new printer using web interface at:"
+ echo " http://localhost:631/"
+}
+
+post_upgrade() {
+ /bin/true
+}
+
+pre_remove() {
+ lpadmin -x HL2030
+}
+
+
+op=$1
+shift
+
+$op "$@"
+
diff --git a/brother-mfc-7860dw.patch b/brother-mfc-7860dw.patch
new file mode 100644
index 000000000000..efd01106ed78
--- /dev/null
+++ b/brother-mfc-7860dw.patch
@@ -0,0 +1,144 @@
+diff -Naur old/usr/local/Brother/Printer/MFC7860DW/cupswrapper/cupswrapperMFC7860DW-2.0.4 new/usr/local/Brother/Printer/MFC7860DW/cupswrapper/cupswrapperMFC7860DW-2.0.4
+--- old/usr/local/Brother/Printer/MFC7860DW/cupswrapper/cupswrapperMFC7860DW-2.0.4 2010-06-11 10:55:18.000000000 +0300
++++ new/usr/local/Brother/Printer/MFC7860DW/cupswrapper/cupswrapperMFC7860DW-2.0.4 2013-01-28 13:15:21.000000000 +0200
+@@ -18,6 +18,7 @@
+ # Place, Suite 330, Boston, MA 02111-1307 USA
+ #
+
++if /bin/false; then
+ if [ "$1" = '-e' ]; then
+ lpadmin -x MFC7860DW
+ rm -f /usr/share/cups/model/MFC7860DW.ppd
+@@ -65,7 +66,8 @@
+ ppd_file_name=/usr/share/ppd/MFC7860DW.ppd
+ fi
+
+-cat <<ENDOFPPDFILE >$ppd_file_name
++fi
++cat <<ENDOFPPDFILE > ppd_file
+ *PPD-Adobe: "4.3"
+ *%================================================
+ *% Copyright Brother Industries,Ltd 2006-2008
+@@ -347,10 +349,11 @@
+
+ ENDOFPPDFILE
+
+-chmod 755 $ppd_file_name
++if /bin/false; then
++chmod 755 ppd_file
+ if [ -e '/usr/share/ppd' ];then
+ if [ -e '/usr/share/cups/model' ];then
+- cp $ppd_file_name /usr/share/ppd
++ cp ppd_file /usr/share/ppd
+ fi
+ fi
+
+@@ -363,8 +366,8 @@
+ fi
+ fi
+
+-
+-cat <<!ENDOFWFILTER! >$brotherlpdwrapper
++fi
++cat <<!ENDOFWFILTER! > wrapper
+ #! /bin/sh
+ #
+ # Brother Print filter >> $brotherlpdwrapper
+@@ -493,25 +496,25 @@
+ fi
+
+
+-if [ -e "/usr/local/Brother/Printer/\$PRINTER/lpd/filter\$PRINTER" ]; then
++if [ -e "/usr/share/brother/printer/\$PRINTER/lpd/filter\$PRINTER" ]; then
+ :
+ else
+- echo "ERROR: /usr/local/Brother/Printer/\$PRINTER/lpd/filter\$PRINTER does not exist" >>\$LOGFILE
++ echo "ERROR: /usr/share/brother/printer/\$PRINTER/lpd/filter\$PRINTER does not exist" >>\$LOGFILE
+ errorcode=30
+ exit $errorcode
+ fi
+
+-if [ -e "/usr/local/Brother/Printer/MFC7860DW/cupswrapper/brcupsconfig4" ]; then
++if [ -e "/usr/share/brother/printer/MFC7860DW/cupswrapper/brcupsconfig4" ]; then
+ if [ \$DEBUG = 0 ]; then
+- /usr/local/Brother/Printer/MFC7860DW/cupswrapper/brcupsconfig4 \$PRINTER \$PPD 0 "\$options" >> /dev/null
++ /usr/share/brother/printer/MFC7860DW/cupswrapper/brcupsconfig4 \$PRINTER \$PPD 0 "\$options" >> /dev/null
+ else
+- /usr/local/Brother/Printer/MFC7860DW/cupswrapper/brcupsconfig4 \$PRINTER \$PPD \$LOGCLEVEL "\$options" >>\$LOGFILE
++ /usr/share/brother/printer/MFC7860DW/cupswrapper/brcupsconfig4 \$PRINTER \$PPD \$LOGCLEVEL "\$options" >>\$LOGFILE
+ fi
+ fi
+
+
+ if [ \$DEBUG -le 2 ]; then
+- cat \$INPUT_TEMP_PS | /usr/local/Brother/Printer/\$PRINTER/lpd/filter\$PRINTER
++ cat \$INPUT_TEMP_PS | /usr/share/brother/printer/\$PRINTER/lpd/filter\$PRINTER
+ fi
+
+ if [ \$DEBUG -ge 2 ]; then
+@@ -527,7 +530,7 @@
+
+ !ENDOFWFILTER!
+
+-
++if /bin/false; then
+ chmod 755 $brotherlpdwrapper
+ if [ -e /usr/lib/cups/filter ]; then
+ if [ -e /usr/lib64/cups/filter ]; then
+@@ -535,8 +538,8 @@
+ fi
+ fi
+
+-chmod a+w /usr/local/Brother/Printer/MFC7860DW/inf/brMFC7860DWrc
+-chmod a+w /usr/local/Brother/Printer/MFC7860DW/inf
++chmod a+w /usr/share/brother/printer/MFC7860DW/inf/brMFC7860DWrc
++chmod a+w /usr/share/brother/printer/MFC7860DW/inf
+ if [ -e /etc/init.d/lpd ]; then
+ /etc/init.d/lpd stop
+ fi
+@@ -563,3 +566,5 @@
+ fi
+ lpadmin -p MFC7860DW -E -v $port -P $ppd_file_name
+ exit 0
++fi
++
+diff -Naur old/usr/local/Brother/Printer/MFC7860DW/inf/brMFC7860DWfunc new/usr/local/Brother/Printer/MFC7860DW/inf/brMFC7860DWfunc
+--- old/usr/local/Brother/Printer/MFC7860DW/inf/brMFC7860DWfunc 2010-05-24 06:10:10.000000000 +0300
++++ new/usr/local/Brother/Printer/MFC7860DW/inf/brMFC7860DWfunc 2013-01-28 12:59:40.000000000 +0200
+@@ -24,4 +24,5 @@
+ Sleep={PrinterDefault,"1-99"}
+ Toner Save Mode={ON,OFF}
+
+-
++[psconvert2]
++pstops=/usr/lib/cups/filter/pstops
+diff -Naur old/usr/local/Brother/Printer/MFC7860DW/lpd/filterMFC7860DW new/usr/local/Brother/Printer/MFC7860DW/lpd/filterMFC7860DW
+--- old/usr/local/Brother/Printer/MFC7860DW/lpd/filterMFC7860DW 2010-05-24 06:10:10.000000000 +0300
++++ new/usr/local/Brother/Printer/MFC7860DW/lpd/filterMFC7860DW 2013-01-28 13:01:20.000000000 +0200
+@@ -22,7 +22,7 @@
+ PRINTER_TMP=$(echo $PRINTER | sed -e 's/ //g' -e 's/-//g')
+ PCL=1
+
+-BR_PRT_PATH=/usr/local/Brother/Printer/$PRINTER_TMP
++BR_PRT_PATH=/usr/share/brother/printer/$PRINTER_TMP
+ RCFILE=`eval echo $BR_PRT_PATH/inf/brPRINTERrc | eval sed 's/PRINTER/"$PRINTER_TMP"/'`
+ PAPER_INF=$BR_PRT_PATH/inf/paperinf
+ PSCONV=$BR_PRT_PATH/lpd/psconvert2
+@@ -116,13 +116,11 @@
+ else
+ cp $INPUT_TEMP1 $INPUT_TEMP
+ fi
+-
+-#PSTOPSFILTER=`which pstops`
+
+-if [ -e '/usr/bin/pstops' ];then
+- PSTOPSFILTER='/usr/bin/pstops'
+-else
+- PSTOPSFILTER=''
++PSTOPSFILTER='/usr/lib/cups/filter/pstops'
++
++if ! [ -e "$PSTOPSFILTER" ];then
++ PSTOPSFILTER=''
+ fi
+
+