View previous topic :: View next topic |
Author |
Message |
Fitzcarraldo Advocate
Joined: 30 Aug 2008 Posts: 2034 Location: United Kingdom
|
Posted: Sun Apr 21, 2013 11:56 pm Post subject: |
|
|
papapenguin, although I don't have a Brother printer myself, just over a year ago I helped someone to get his Brother DCP-7065DN printer working with CUPS by installing the Brother software using a Portage local overlay. I think you could install your printer's driver in a similar way. I can't guarantee that what I'm about to tell you will work, but I've created a couple of ebuilds for you to try.
The following instructions should install the packages mfcj6710dwcupswrapper-3.0.0 and mfcj6710dwlpr-3.0.0 from a Portage local overlay on your machine. In the text below, replace "fitzcarraldo" with your user name.
1. Make sure your local ebuild repository is up-to-date and your installation is configured to use a local overlay:
Code: | emerge --sync
layman -S |
Edit the file /etc/make.conf and make sure it has the following lines in it at the end of the file:
Code: | PORTDIR_OVERLAY="${PORTDIR_OVERLAY} /usr/local/portage/"
ACCEPT_LICENSE="*" |
Give your Portage local overlay a name:
Code: | mkdir /usr/local/portage/profiles
echo "local_overlay" > /usr/local/portage/profiles/repo_name |
2. Save the following as the file /home/fitzcarraldo/mfcj6710dwlpr-3.0.0.ebuild
Code: | # Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI=3
inherit rpm
DESCRIPTION="Brother MFC-J6710DW LPR driver"
HOMEPAGE="http://welcome.solutions.brother.com/bsc/public_s/id/linux/en/download_prn.html#MFC-J6710DW"
SRC_URI="mfcj6710dwlpr-3.0.0-1.i386.rpm"
LICENSE="GPL"
SLOT="0"
KEYWORDS="~x86 ~amd64"
IUSE=""
RESTRICT="fetch strip"
DOWNLOAD_URL="http://www.brother.com/cgi-bin/agreement/agreement.cgi?dlfile=http://www.brother.com/cgi-bin/agreement/agreement.cgi?dlfile=http://www.brother.com/pub/bsc/linux/dlf/mfcj6710dwlpr-3.0.0-1.i386.rpm&lang=English_lpr"
DEPEND=""
RDEPEND="${DEPEND}"
pkg_nofetch() {
einfo "Please download ${A} from ${DOWNLOAD_URL}."
einfo "Select 'I Accept' and move the file to ${DISTDIR}."
}
src_unpack() {
rpm_unpack || die "Error unpacking ${A}."
}
src_install() {
cp -r $WORKDIR $D
mv $D/work/* $D
rm -r $D/work/
} |
3. Save the following as the file /home/fitzcarraldo/mfcj6710dwcupswrapper-3.0.0.ebuild
Code: | # Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI=3
inherit rpm
DESCRIPTION="Brother MFC-J6710DW CUPS wrapper"
HOMEPAGE="http://welcome.solutions.brother.com/bsc/public_s/id/linux/en/download_prn.html#MFC-J6710DW"
SRC_URI="mfcj6710dwcupswrapper-3.0.0-1.i386.rpm"
LICENSE="GPL"
SLOT="0"
KEYWORDS="~x86 ~amd64"
IUSE=""
RESTRICT="fetch strip"
DOWNLOAD_URL="http://www.brother.com/cgi-bin/agreement/agreement.cgi?dlfile=http://www.brother.com/pub/bsc/linux/dlf/mfcj6710dwcupswrapper-3.0.0-1.i386.rpm&lang=English_gpl"
DEPEND="
app-text/a2ps
net-print/mfcj6710dwlpr
"
RDEPEND="${DEPEND}"
pkg_nofetch() {
einfo "Please download ${A} from ${DOWNLOAD_URL}."
einfo "Select 'I Accept' and move the file to ${DISTDIR}."
}
src_unpack() {
rpm_unpack || die "Error unpacking ${A}."
}
src_install() {
cp -r $WORKDIR $D
mv $D/work/* $D
rm -r $D/work/
}
pkg_postinst() {
echo
einfo "If you can't print, create the following symlink:"
einfo "ln -s /opt/brother/Printers/mfcj6710dw/lpd/filtermfcj6710dw
/usr/libexec/cups/filter/filtermfcj6710dw"
echo
} |
4. Download mfcj6710dwcupswrapper-3.0.0-1.i386.rpm and mfcj6710dwlpr-3.0.0-1.i386.rpm from the Brother download page to the directory /home/fitzcarraldo.
5. Enter the following commands as root user:
Code: | cp /home/fitzcarraldo/mfcj6710dwcupswrapper-3.0.0-1.i386.rpm /usr/portage/distfiles/
cp /home/fitzcarraldo/mfcj6710dwlpr-3.0.0-1.i386.rpm /usr/portage/distfiles/
mkdir -p /usr/local/portage/net-print/mfcj6710dwlpr
mkdir -p /usr/local/portage/net-print/mfcj6710dwcupswrapper
cd /usr/local/portage/net-print/mfcj6710dwlpr
cp /home/fitzcarraldo/mfcj6710dwlpr-3.0.0.ebuild .
ebuild --force mfcj6710dwlpr-3.0.0.ebuild manifest
cd /usr/local/portage/net-print/mfcj6710dwcupswrapper
cp /home/fitzcarraldo/mfcj6710dwcupswrapper-3.0.0.ebuild .
ebuild --force mfcj6710dwcupswrapper-3.0.0.ebuild manifest
emerge -1v mfcj6710dwcupswrapper mfcj6710dwlpr
etc-update # Just in case there are some config files to update. Enter -3 then answer yes to all. |
N.B. You might need to prefix the emerge command as follows:
Code: | FEATURES="-collision-detect -protect-owned" emerge -1v mfcj6710dwcupswrapper mfcj6710dwlpr |
N.B. If the above ebuild commands or the emerge command tries to re-download the RPM packages from the Brother Web site and you get an error message about the RPM package not being a tar file or being corrupt, have a look in /usr/portage/distfiles/ and delete any files containing "checksum_failure" as part of the file name. Then disconnect your machine from the network and repeat the above commands (with the exception of the mkdir commands, as the directories now already exist.)
6. If you have sys-apps/file-5.06 installed, you also need to enter the following command to install a later version, as version 5.06 stops some Brother printers from working correctly:
Code: | emerge -1v sys-apps/file |
7. Open the script file /opt/brother/Printers/mfcj6710dw/cupswrapper/cupswrappermfcj6710dw with a text editor. Manually change all occurrences of "/etc/init.d/cups" to "/etc/init.d/cupsd" (the RPM package is for a different distribution, remember). Basically, make sure that you have "/etc/init.d/cupsd" everywhere rather than "/etc/init.d/cups". (Leave the "/etc/init.d/cupsys" entries alone; I believe they are a 'catch-all' for an old version of another distro.)
8. Run the cupswrappermfcj6710dw script:
Code: | cd /opt/brother/Printers/mfcj6710dw/cupswrapper
./cupswrappermfcj6710dw -i
ln -s /opt/brother/Printers/mfcj6710dw/lpd/filtermfcj6710dw /usr/libexec/cups/filter/filtermfcj6710dw
ln -s /opt/brother/Printers/mfcj6710dw/lpd/filtermfcj6710dw /usr/libexec/cups/filter/brother_lpdwrapper_mfcj6710dw
ln -s /opt/brother/Printers/mfcj6710dw/lpd/brmfcj6710dwfilter /usr/libexec/cups/filter/brmfcj6710dwfilter |
N.B. Although I'm reasonably confident after looking at Brother's Bash installation script, I'm not 100% sure whether the following command listed above is correct:
Code: | ln -s /opt/brother/Printers/mfcj6710dw/lpd/filtermfcj6710dw /usr/libexec/cups/filter/brother_lpdwrapper_mfcj6710dw |
or whether the following command should be used instead of it:
Code: | ln -s /opt/brother/Printers/mfcj6710dw/lpd/brmfcj6710dwfilter /usr/libexec/cups/filter/brother_lpdwrapper_mfcj6710dw |
I suggest you try the first and see what happens.
9. Launch a Web browser and enter http://localhost:631/ into the Address bar in order to use the CUPS manager. Use CUPS to install the printer.
I can do all the above on one of my machines, but don't have a Brother MFC-J6710DW printer to check whether or not it can print. _________________ Clevo W230SS: amd64, VIDEO_CARDS="intel modesetting nvidia".
Compal NBLB2: ~amd64, xf86-video-ati. Dual boot Win 7 Pro 64-bit.
OpenRC udev elogind & KDE on both.
Fitzcarraldo's blog |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|