Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Oh Brother, why my MFCJ6710DW doesn't work...
View unanswered posts
View posts from last 24 hours

Goto page Previous  1, 2  
Reply to topic    Gentoo Forums Forum Index Desktop Environments
View previous topic :: View next topic  
Author Message
Fitzcarraldo
Guru
Guru


Joined: 30 Aug 2008
Posts: 516
Location: United Kingdom

PostPosted: Sun Apr 21, 2013 11:56 pm    Post subject: Reply with quote

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.
_________________
Fitzcarraldo's blog
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Desktop Environments All times are GMT
Goto page Previous  1, 2
Page 2 of 2

 
Jump to:  
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