summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonathan Doman2014-11-27 18:17:41 -0600
committerJonathan Doman2015-08-09 20:31:26 -0700
commit2c79a5dc6314aa06fbd452accea263cda0d5bb51 (patch)
tree0e1e0577240fcaddf780f43c1f395f9f0f4ccea8
downloadaur-2c79a5dc6314aa06fbd452accea263cda0d5bb51.tar.gz
Initial commit
-rw-r--r--.SRCINFO19
-rw-r--r--HL2270DW.ppd.patch8
-rw-r--r--PKGBUILD73
3 files changed, 100 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..d3fe8734bf45
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,19 @@
+pkgbase = brother-hl2270dw
+ pkgdesc = Brother HL-2270DW CUPS Driver
+ pkgver = 2.0.4_2
+ pkgrel = 4
+ url = http://welcome.solutions.brother.com/bsc/public_s/id/linux/en/index.html
+ arch = i686
+ arch = x86_64
+ license = GPL
+ depends = a2ps
+ depends = cups
+ source = http://www.brother.com/pub/bsc/linux/dlf/hl2270dwlpr-2.1.0-1.i386.rpm
+ source = http://www.brother.com/pub/bsc/linux/dlf/cupswrapperHL2270DW-2.0.4-2.i386.rpm
+ source = HL2270DW.ppd.patch
+ md5sums = 69c1987c0636a64fb48f3c6826a3ae28
+ md5sums = 5a7cc60cafaf60d722d9bce3f2751164
+ md5sums = 7c701d586af8dac410cce86678ddfe96
+
+pkgname = brother-hl2270dw
+
diff --git a/HL2270DW.ppd.patch b/HL2270DW.ppd.patch
new file mode 100644
index 000000000000..ff09f4d59756
--- /dev/null
+++ b/HL2270DW.ppd.patch
@@ -0,0 +1,8 @@
+279c279,283
+<
+---
+> *OpenUI *Margins/Page Margins/Offsets: PickOne
+> *DefaultMargins: Custom
+> *Margins Default/Driver Default: ""
+> *Margins Custom/Custom (set with 'alignmargins'): "<</.HWMargins[18 12 0 0] /Margins[-18 12]>>setpagedevice"
+> *CloseUI: *Margins
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..bd97b50f0231
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,73 @@
+# Maintainer: Jonathan Doman <jonathan dot doman at gmail dot com>
+# Contributor: Jason St. John <jstjohn .. purdue . edu>
+
+pkgname=brother-hl2270dw
+pkgver=2.0.4_2
+pkgrel=4
+pkgdesc="Brother HL-2270DW CUPS Driver"
+arch=('i686' 'x86_64')
+url='http://welcome.solutions.brother.com/bsc/public_s/id/linux/en/index.html'
+license=('GPL')
+depends=('a2ps' 'cups')
+source=("http://www.brother.com/pub/bsc/linux/dlf/hl2270dwlpr-2.1.0-1.i386.rpm"
+ "http://www.brother.com/pub/bsc/linux/dlf/cupswrapperHL2270DW-${pkgver//_/-}.i386.rpm"
+ "HL2270DW.ppd.patch")
+md5sums=('69c1987c0636a64fb48f3c6826a3ae28'
+ '5a7cc60cafaf60d722d9bce3f2751164'
+ '7c701d586af8dac410cce86678ddfe96')
+
+if [[ "$CARCH" == "x86_64" ]]; then
+ depends+=('lib32-glibc')
+fi
+
+package() {
+ _cupswrapperFile="$srcdir/usr/local/Brother/Printer/HL2270DW/cupswrapper/cupswrapperHL2270DW-2.0.4"
+
+ # Ignore everything after the PPD file
+ sed -i -e '/^!ENDOFWFILTER!/ q' "${_cupswrapperFile}"
+ sed -i -e 's#/usr#$srcdir/usr#' "${_cupswrapperFile}"
+
+ sed -i -e 's#/usr/local#/usr/share#' "$srcdir/usr/local/Brother/Printer/HL2270DW/lpd/filterHL2270DW"
+
+ mkdir -p "$srcdir/usr/share/cups/model/"
+
+ # Run the install script to extract the PPD file
+ . "${_cupswrapperFile}"
+
+ # Remove unnecessary files
+ rm "$srcdir/usr/local/Brother/Printer/HL2270DW/inf/setupPrintcap2"
+ rm "${_cupswrapperFile}"
+
+ # Change the PPD description to match other listing for Brother printers in CUPS
+ sed -i -e 's/Brother HL2270DW for CUPS/Brother HL-2270DW/' "$srcdir/usr/share/cups/model/HL2270DW.ppd"
+
+ # Add margin correction (alignmargins output: https://wiki.linuxfoundation.org/en/OpenPrinting/Database/CUPSDocumentation)
+ patch "$srcdir/usr/share/cups/model/HL2270DW.ppd" < "$srcdir/../HL2270DW.ppd.patch"
+
+ # Replace references to $srcdir
+ sed -i -e "s#$srcdir/usr#/usr#" "$srcdir/usr/lib/cups/filter/brlpdwrapperHL2270DW"
+ sed -i -e "s#/usr/local#/usr/share#" "$srcdir/usr/lib/cups/filter/brlpdwrapperHL2270DW"
+
+ chmod +x "$srcdir/usr/lib/cups/filter/brlpdwrapperHL2270DW"
+
+ # Change the path for pstops
+ sed -i -e "s#/usr/sbin/pstops#/usr/lib/cups/filter/pstops#" "$srcdir/usr/local/Brother/Printer/HL2270DW/lpd/psconvert2"
+ sed -i -e "s#/usr/bin/pstops#/usr/lib/cups/filter/pstops#" "$srcdir/usr/local/Brother/Printer/HL2270DW/lpd/filterHL2270DW"
+
+ # Change some hardcoded paths in the binaries (source code is available for
+ # one but not the others, so I figure I'll just hack the changes for all)
+ sed -i -e "s#/usr/local/#/usr/share/#g" "$srcdir/usr/local/Brother/Printer/HL2270DW/cupswrapper/brcupsconfig4"
+ sed -i -e "s#/usr/local/#/usr/share/#g" "$srcdir/usr/local/Brother/Printer/HL2270DW/inf/brprintconflsr3"
+ sed -i -e "s#/usr/local/#/usr/share/#g" "$srcdir/usr/local/Brother/Printer/HL2270DW/inf/braddprinter"
+
+ # Copy the src tree into the pkg tree
+ cp -R "$srcdir/usr/" "$pkgdir/"
+ cp -R "$srcdir/var/" "$pkgdir/"
+
+ mv "$pkgdir/usr/local/Brother" "$pkgdir/usr/share/"
+ rmdir "$pkgdir/usr/local"
+
+ chmod a+w "$pkgdir/usr/share/Brother/Printer/HL2270DW/inf/brHL2270DWrc"
+}
+
+# vim:set ts=2 sw=2 et: