summaryrefslogtreecommitdiff
blob: 8379b05a1f2d412ba5a74332c5f5f7da84aa8a31 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI=5

inherit rpm multilib

MODEL="${PN#*-}"
PV_LPR="1.0.0-0"
PV_CUPSWRAPPER="1.0.0-0"

DESCRIPTION="Brother MFC-J480DW LPR+cupswrapper drivers"
HOMEPAGE="http://support.brother.com/g/b/downloadtop.aspx?c=us&lang=en&prod=mfcj480dw_us_eu_as"
SRC_URI="http://download.brother.com/welcome/dlf102091/${MODEL}lpr-${PV_LPR}.i386.rpm
		http://download.brother.com/welcome/dlf102092/${MODEL}cupswrapper-${PV_CUPSWRAPPER}.i386.rpm"

LICENSE="GPL-2+ Brother-lpr no-source-code"
SLOT="0"
KEYWORDS="~x86 ~amd64"
IUSE="metric"
RESTRICT="strip"

DEPEND="net-print/cups"
RDEPEND="${DEPEND}"

S="${WORKDIR}/opt/brother/Printers/${MODEL}"

src_unpack() {
	rpm_unpack ${A}
}

src_prepare() {
	if use metric; then
		sed -i "/^PaperType/s/Letter/A4/" inf/br${MODEL}rc || die
	fi
}

src_install() {
	has_multilib_profile && ABI=x86

	local dest=/opt/brother/Printers/${MODEL}
	cd "${S}"/lpd || die
	exeinto ${dest}/lpd
	doexe br${MODEL}filter filter${MODEL} psconvertij2

	dosym ${dest}/lpd/filter${MODEL} \
		  /usr/libexec/cups/filter/brother_lpdwrapper_${MODEL}

	cd "${S}"/inf || die
	insinto ${dest}/inf
	doins br${MODEL}func ImagingArea PaperDimension paperinfij2
	doins -r lut
	insinto /etc${dest}/inf
	doins br${MODEL}rc			# config file
	dosym /etc${dest}/inf/br${MODEL}rc ${dest}/inf/br${MODEL}rc

	cd "${S}"/cupswrapper || die
	insinto ${dest}/cupswrapper
	doins brother_${MODEL}_printer_en.ppd
	dosym ${dest}/cupswrapper/brother_${MODEL}_printer_en.ppd \
		  /usr/share/cups/model/Brother/brother_${MODEL}_printer_en.ppd

	# The brprintconf utility is very broken and mangles the path
	# of the function list file. Therefore, don't install it.
	exeinto ${dest}/bin
	doexe "${WORKDIR}"/usr/bin/brprintconf_${MODEL}
}

pkg_postinst () {
	elog "You may use brprintconf_${MODEL} to change printer options"
	elog
	elog "Set 'Fast Normal' quality:"
	elog "		${dest}/bin/brprintconf_${MODEL} -reso 300x300dpi"
	elog
	elog "For more options just execute brprintconf_${MODEL} as root"
	elog "You can check current settings in:"
	elog "		/opt/brother/Printers/${MODEL}/inf/br${MODEL}rc"
}