You are not logged in.

#1 2024-06-14 07:35:47

strebski
Member
Registered: 2024-06-14
Posts: 3

(Request for printer drivers via AUR) Brother DCP-L2600D

Dear Colleagues!

May I ask you for preparation Arch Linux package with Brother DCP-L2600D driver, based on https://support.brother.com/g/b/downloa … 600d_eu_as ?

I'd be very appreciate!

Warm greetings & thanks in advance!
Piotr

Offline

#2 2024-06-14 08:56:40

Awebb
Member
Registered: 2010-05-06
Posts: 6,525

Re: (Request for printer drivers via AUR) Brother DCP-L2600D

Have you tried writing your own PKGBUILD, perhaps based on any of the various other brother-dcp-l* packages? https://aur.archlinux.org/cgit/aur.git/ … cp-l2530dw

Offline

#3 2024-09-06 07:17:14

strebski
Member
Registered: 2024-06-14
Posts: 3

Re: (Request for printer drivers via AUR) Brother DCP-L2600D

Awebb wrote:

Have you tried writing your own PKGBUILD, perhaps based on any of the various other brother-dcp-l* packages? https://aur.archlinux.org/cgit/aur.git/ … cp-l2530dw

Hi, yes, already tried myself but without success.
I have made PKGBUILD file with

pkgname=brother-dcp-l2600d
pkgver=4.1.0
pkgrel=1
pkgdesc="LPR and CUPS driver for the Brother DCP-L2600D printer"
arch=("i686" "x86_64")
url="https://support.brother.com/g/b/downloadend.aspx?c=as_ot&lang=en&prod=dcpl2600d_eu_as&os=127&dlid=dlf106007_000&flang=4&type3=10282"
license=("EULA")
groups=("base-devel")
source=("https://download.brother.com/welcome/dlf106007/dcpl2600dpdrv-4.1.0-1.i386.rpm")
md5sums=('b8117e2a0c4417dd485dab010906b2eb')

package() {
  # This package is based off of the brother-mfc-l2710dw package due to the identical packaging. All credit should go to enginefeeder101 for the script.

	_model="DCPL2600D"

  # using /usr/share instead of /opt
  mkdir -p "$pkgdir/usr/share"
  cp -R "$srcdir/opt/brother" "$pkgdir/usr/share"
  sed -i 's|\\\/opt\\\/|\\\/usr\\\/|' "$pkgdir/usr/share/brother/Printers/$_model/cupswrapper/lpdwrapper"
  sed -i 's|\\\/opt\\\/|\\\/usr\\\/|' "$pkgdir/usr/share/brother/Printers/$_model/lpd/lpdfilter"

  # /etc/printcap is managed by cups
  find "$pkgdir" -type f -name 'setupPrintcap*' -delete

  # symlink for lpdwrapper so it correctly figures out the printer model from the path
  install -d "$pkgdir/usr/lib/cups/filter/"
  ln -s "/usr/share/brother/Printers/$_model/cupswrapper/lpdwrapper" "$pkgdir/usr/lib/cups/filter/brother_lpdwrapper_$_model"

  # symlink for the PPD
  install -d "$pkgdir/usr/share/cups/model/"
  ln -s "/usr/share/brother/Printers/$_model/cupswrapper/brother-$_model-cups-en.ppd" "$pkgdir/usr/share/cups/model/"

  # a couple architecture-specific symlinks
  ln -s "/usr/share/brother/Printers/$_model/lpd/$CARCH/brprintconflsr3" "$pkgdir/usr/share/brother/Printers/$_model/lpd/"
  ln -s "/usr/share/brother/Printers/$_model/lpd/$CARCH/rawtobr3" "$pkgdir/usr/share/brother/Printers/$_model/lpd/"

  # symlink for inf because it tries to execute it there
  ln -s "/usr/share/brother/Printers/$_model/inf" "$pkgdir/usr/share/brother/Printers/$_model/lpd/"
}

After makepkg command I have error in package() :

ln: failed to create symbolic link '/home/strebski/Dokumenty/pkg/brother-dcp-l2600d/usr/share/brother/Printers/DCPL2600D/lpd/inf': File exists

Any advice? Thanks in advance!
Piotr

Offline

#4 2024-09-06 08:15:06

strebski
Member
Registered: 2024-06-14
Posts: 3

Re: (Request for printer drivers via AUR) Brother DCP-L2600D

I've rewritten PKGBUILD file for:

pkgname=brother-dcp-l2600d
pkgver=4.1.0
pkgrel=1
pkgdesc="LPR and CUPS driver for the Brother DCP-L2600D printer"
arch=('i686' 'x86_64')
url="https://support.brother.com/g/b/downloadend.aspx?c=as_ot&lang=en&prod=dcpl2600d_eu_as&os=127&dlid=dlf106007_000&flang=4&type3=10282"
license=('GPL2' 'custom:brother')
depends=('cups')
optdepends=('brscan5: scanner support.')
source=(
  "https://download.brother.com/welcome/dlf106007/dcpl2600dpdrv-4.1.0-1.i386.rpm"
)
md5sums=(
  'b8117e2a0c4417dd485dab010906b2eb'
)

prepare() {
  sed -i -e '75c\my $basedir = "/opt/brother/Printers/DCPL2600D";' \
    ${srcdir}/opt/brother/Printers/DCPL2600D/cupswrapper/lpdwrapper
}

package() {
  mkdir -p ${pkgdir}/usr/share/cups/model/Brother
  mkdir -p ${pkgdir}/usr/lib/cups/filter
  cp ${srcdir}/opt/brother/Printers/DCPL2600D/cupswrapper/brother-DCPL2600D-cups-en.ppd ${pkgdir}/usr/share/cups/model/Brother
  cp ${srcdir}/opt/brother/Printers/DCPL2600D/cupswrapper/lpdwrapper ${pkgdir}/usr/lib/cups/filter/brother_lpdwrapper_DCPL2600D

  mkdir -p ${pkgdir}/opt/brother/Printers/DCPL2600D/lpd/
  cp -r ${srcdir}/opt/brother/Printers/DCPL2600D/inf ${pkgdir}/opt/brother/Printers/DCPL2600D/
  cp ${srcdir}/opt/brother/Printers/DCPL2600D/lpd/lpdfilter ${pkgdir}/opt/brother/Printers/DCPL2600D/lpd/
  cp ${srcdir}/opt/brother/Printers/DCPL2600D/lpd/${CARCH}/* ${pkgdir}/opt/brother/Printers/DCPL2600D/lpd/
  cp -r ${srcdir}/var ${pkgdir}/
}

And works like a charm! Both printer & scanner :-)
Thanks for suggestions! All best.

Offline

Board footer

Powered by FluxBB