New ebuild including an udev-Run-rule and hplj 1020 Support thanks to Czirkos Zoltan...
authorStefan Schweizer <genstef@gentoo.org>
Tue, 27 Sep 2005 12:37:14 +0000 (12:37 +0000)
committerStefan Schweizer <genstef@gentoo.org>
Tue, 27 Sep 2005 12:37:14 +0000 (12:37 +0000)
Package-Manager: portage-2.0.52-r1

net-print/foo2zjs/ChangeLog
net-print/foo2zjs/Manifest
net-print/foo2zjs/files/digest-foo2zjs-20050925 [new file with mode: 0644]
net-print/foo2zjs/files/foo2zjs-Makefile-20050925.diff [new file with mode: 0644]
net-print/foo2zjs/files/foo2zjs-udevfwld-20050925.diff [new file with mode: 0644]
net-print/foo2zjs/foo2zjs-20050925.ebuild [new file with mode: 0644]

index 9206e0661504c6221370486a4220c223b27421f2..173ea2ee328059187cb2feb73879a16b4ca2da2b 100644 (file)
@@ -1,6 +1,14 @@
 # ChangeLog for net-print/foo2zjs
 # Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-print/foo2zjs/ChangeLog,v 1.5 2005/09/17 00:19:34 ciaranm Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-print/foo2zjs/ChangeLog,v 1.6 2005/09/27 12:37:14 genstef Exp $
+
+*foo2zjs-20050925 (27 Sep 2005)
+
+  27 Sep 2005; Stefan Schweizer <genstef@gentoo.org>
+  +files/foo2zjs-Makefile-20050925.diff,
+  +files/foo2zjs-udevfwld-20050925.diff, +foo2zjs-20050925.ebuild:
+  New ebuild including an udev-Run-rule and hplj 1020 Support thanks to
+  Czirkos Zoltan <cirix@fw.hu> for testing, bug 106502
 
   17 Sep 2005; Ciaran McCreesh <ciaranm@gentoo.org> ChangeLog:
   Converted to UTF-8, fixed encoding screwups
index a0e6626f997c571b89bc716fa549925eb6523081..de13586d37c1972cc08757ba2e5f89636eebf306 100644 (file)
@@ -1,16 +1,10 @@
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
+MD5 87559f5f87f2ad396e043be0e0140d8c foo2zjs-20050925.ebuild 2072
 MD5 dd5a53f7b7c08325d45369e7c377f992 foo2zjs-20050319.ebuild 1569
+MD5 6aadacbb2373becaaeffad6a6f15f1b2 ChangeLog 1553
 MD5 6062bcaf60fde68c2418376f4cd91f3e metadata.xml 266
-MD5 4d653f5cf2faef75243a2edee4c56094 ChangeLog 1231
-MD5 e5f349ce9616aa37a291ae69beefc357 files/foo2zjs-Makefile.patch 3324
 MD5 156dfe6cef969d11cc59957ad027a51e files/digest-foo2zjs-20050319 238
+MD5 0dbc389eaf50f7d1f92fdd46c45dc26d files/digest-foo2zjs-20050925 317
+MD5 e5f349ce9616aa37a291ae69beefc357 files/foo2zjs-Makefile.patch 3324
+MD5 bb79f8d34c72525b9f37bcc8860173a8 files/foo2zjs-Makefile-20050925.diff 3673
+MD5 dce03f6b0db19f79acff583b9c282b61 files/foo2zjs-udevfwld-20050925.diff 8465
 MD5 379e40f8651bfdf8764f4afbc9594b41 files/hp-printer-udev.patch 767
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.4.1 (GNU/Linux)
-
-iD8DBQFDK2FPLLFUmVNQ7rkRAlvNAJ0cWxkzVckFsbq1ygk5K4d0zM6CLgCfWXui
-Y0b4PMjo3W+q4GP3061s5xY=
-=kJDK
------END PGP SIGNATURE-----
diff --git a/net-print/foo2zjs/files/digest-foo2zjs-20050925 b/net-print/foo2zjs/files/digest-foo2zjs-20050925
new file mode 100644 (file)
index 0000000..ed4f556
--- /dev/null
@@ -0,0 +1,5 @@
+MD5 d680f447a416c5f9041f27c0a1df57a0 m23dlicc.exe 170496
+MD5 3b78a08aa968b4c1ed591947721d3e47 m22dlicc.exe 634368
+MD5 cae0d20d3c1d57cd3953d9b335014294 cpplxp.exe 4799488
+MD5 36ca0680a7b22c9b5cd1f8b34ab48cd8 foo2zjs-20050319.tar.gz 972297
+MD5 7242e44d7c863ffe7aae98639868209b foo2zjs-hplj1020-20050426.diff.bz2 124846
diff --git a/net-print/foo2zjs/files/foo2zjs-Makefile-20050925.diff b/net-print/foo2zjs/files/foo2zjs-Makefile-20050925.diff
new file mode 100644 (file)
index 0000000..81eafe0
--- /dev/null
@@ -0,0 +1,119 @@
+diff -Nuarp foo2zjs.orig/Makefile foo2zjs/Makefile
+--- foo2zjs.orig/Makefile      2005-09-25 11:44:11.000000000 +0200
++++ foo2zjs/Makefile   2005-09-25 12:13:55.000000000 +0200
+@@ -6,8 +6,8 @@ EUID := $(shell id -u)
+ VERSION=0.0
+ 
+ # Installation prefix...
+-PREFIX=/usr/local
+-PREFIX=/usr
++PREFIX=$(DESTDIR)/usr/local
++PREFIX=$(DESTDIR)/usr
+ 
+ # Pathnames for this package...
+ BIN=$(PREFIX)/bin
+@@ -17,7 +17,7 @@ MANDIR=$(PREFIX)/share/man
+ DOCDIR=$(PREFIX)/share/doc/foo2zjs/
+ 
+ # Pathnames for referenced packages...
+-FOODB=/usr/share/foomatic/db/source
++FOODB=$(PREFIX)/share/foomatic/db/source
+ 
+ # User ID's
+ LPuid=-olp
+@@ -115,9 +115,6 @@ ifeq ($(UNAME),Linux)
+       endif
+ endif
+ 
+-# Compiler flags
+-CFLAGS +=     -O2 -Wall
+-
+ #
+ # Rules to create test documents
+ #
+@@ -212,6 +209,7 @@ install: all install-prog install-icc2ps
+       # On Suse 9.0, run "yast"
+ 
+ install-prog:
++      [ -d $(BIN) ] || install -d -m 755 $(BIN)/
+       #
+       # Install driver, wrapper, and development tools
+       #
+@@ -239,6 +237,7 @@ install-foo:
+       #
+       @if [ -d $(FOODB) ]; then \
+           for dir in driver printer opt; do \
++              [ -d $(FOODB)/$$dir/ ] || install -d -m 755 $(FOODB)/$$dir/; \
+               echo install -m 644 foomatic-db/$$dir/*.xml $(FOODB)/$$dir/; \
+               install -c -m 644 foomatic-db/$$dir/*.xml $(FOODB)/$$dir/; \
+           done \
+@@ -256,9 +255,9 @@ install-foo:
+       #
+       # Clear foomatic cache and rebuild database if needed
+       #
+-      rm -rf /var/cache/foomatic/*/*
+-      if [ -d /var/cache/foomatic/compiled ]; then \
+-          cd /var/cache/foomatic/compiled; \
++      rm -rf $(DESTDIR)/var/cache/foomatic/*/*
++      if [ -d $(DESTDIR)/var/cache/foomatic/compiled ]; then \
++          cd $(DESTDIR)/var/cache/foomatic/compiled; \
+           foomatic-combo-xml -O >overview.xml; \
+       fi
+ 
+@@ -306,15 +305,13 @@ install-extra:
+       # foo2oak ICM files (if any)
+       install $(LPuid) $(LPgid) -m 775 -d $(SHAREOAK)/icm/
+ 
+-USBDIR=/etc/hotplug/usb
++USBDIR=$(DESTDIR)/etc/hotplug/usb
+ install-hotplug:
+       [ -d $(USBDIR) ] || install -d -m 755 $(USBDIR)/
+       install -c -m 755 hplj1000 $(USBDIR)/
+       ln -sf $(USBDIR)/hplj1000 $(USBDIR)/hplj1005
+       ln -sf $(USBDIR)/hplj1000 $(USBDIR)/hplj1020
+-      $(USBDIR)/hplj1000 install-usermap
+-      $(USBDIR)/hplj1005 install-usermap
+-      $(USBDIR)/hplj1020 install-usermap
++      install -c -m 755 hplj.usermap $(USBDIR)/
+ 
+ clean:
+       -rm -f foo2zjs zjsdecode
+@@ -466,7 +463,7 @@ xxx.zm: FRC
+ ppd:
+       ./getweb ppd
+ 
+-MODEL=/usr/share/cups/model
++MODEL=$(PREFIX)/share/cups/model
+ install-ppd:
+       #
+       # Install PPD files for CUPS
+@@ -523,7 +520,6 @@ install-doc: doc
+       install -c -m 644 README $(DOCDIR)
+       install -c -m 644 ChangeLog $(DOCDIR)
+ 
+-GROFF=/usr/local/test/bin/groff
+ GROFF=groff
+ manual.pdf: $(MANPAGES)
+       -$(GROFF) -t -man $(MANPAGES) | ps2pdf - $@
+diff -Nuarp foo2zjs.orig/hplj.usermap foo2zjs/hplj.usermap
+--- foo2zjs.orig/hplj.usermap  1970-01-01 01:00:00.000000000 +0100
++++ foo2zjs/hplj.usermap       2005-09-25 12:13:45.000000000 +0200
+@@ -0,0 +1,3 @@
++hplj1000 0x0003 0x03f0 0x0517 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000
++hplj1005 0x0003 0x03f0 0x1317 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000
++hplj1020 0x0003 0x03f0 0x2B17 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000
+diff -Nuarp foo2zjs.orig/icc2ps/Makefile foo2zjs/icc2ps/Makefile
+--- foo2zjs.orig/icc2ps/Makefile       2003-08-08 03:38:13.000000000 +0200
++++ foo2zjs/icc2ps/Makefile    2005-09-25 12:05:47.000000000 +0200
+@@ -1,10 +1,9 @@
+-PREFIX=       /usr
++PREFIX=       $(DESTDIR)/usr
+ BIN=  $(PREFIX)/bin
+ SRC=  icc2ps.c xgetopt.c
+ LIB=  cmscam97.c cmscnvrt.c cmserr.c cmsgamma.c cmsgmt.c cmsintrp.c cmsio1.c \
+       cmslut.c cmsmatsh.c cmsmtrx.c cmsnamed.c cmspack.c cmspcs.c cmsps2.c \
+       cmssamp.c cmswtpnt.c cmsxform.c
+-CFLAGS=       -O3
+ 
+ all: foo2zjs-icc2ps
+ 
diff --git a/net-print/foo2zjs/files/foo2zjs-udevfwld-20050925.diff b/net-print/foo2zjs/files/foo2zjs-udevfwld-20050925.diff
new file mode 100644 (file)
index 0000000..836f17b
--- /dev/null
@@ -0,0 +1,265 @@
+diff -Nuarp foo2zjs.orig/58-foo2zjs.rules foo2zjs/58-foo2zjs.rules
+--- foo2zjs.orig/58-foo2zjs.rules      1970-01-01 01:00:00.000000000 +0100
++++ foo2zjs/58-foo2zjs.rules   2005-09-25 12:56:11.000000000 +0200
+@@ -0,0 +1,3 @@
++BUS=="usb", KERNEL=="lp[0-9]*", SYSFS{idVendor}=="03f0", SYSFS{idProduct}=="0517", RUN+="/sbin/foo2zjs-loadfw 1000"
++BUS=="usb", KERNEL=="lp[0-9]*", SYSFS{idVendor}=="03f0", SYSFS{idProduct}=="1317", RUN+="/sbin/foo2zjs-loadfw 1005"
++BUS=="usb", KERNEL=="lp[0-9]*", SYSFS{idVendor}=="03f0", SYSFS{idProduct}=="2B17", RUN+="/sbin/foo2zjs-loadfw 1020"
+diff -Nuarp foo2zjs.orig/INSTALL foo2zjs/INSTALL
+--- foo2zjs.orig/INSTALL       2005-09-25 12:16:59.000000000 +0200
++++ foo2zjs/INSTALL    2005-09-25 12:53:05.000000000 +0200
+@@ -86,15 +86,23 @@ HP LASERJET 1000/1005 NOTES
+ 
+           # make install-hotplug
+ 
++      On Linux with USB connected printer and udev:
++          If you are running Linux and the printer is connected via USB, you
++          can arrange for the firmware to be automatically downloaded to the
++          printer by performing one more installation step:
++
++          # make install-udev
++          This udev-loading is more reliable than the hotplug-loading
++
+       On another OS or with a parallel port connected printer:
+ 
+           You must send a firmware file to the printer each time you power it
+           up.  If you downloaded the extra files for the HP above, a typical
+           command line to load the firmware would be:
+ 
+-              cat /usr/share/foo2zjs/firmware/sihp1000.dl > /dev/usb/lp0
++              cat /lib/firmware/sihp1000.dl > /dev/lp0
+           or:
+-              cat /usr/share/foo2zjs/firmware/sihp1005.dl > /dev/usb/lp0
++              cat /lib/firmware/sihp1005.dl > /dev/lp0
+ 
+     NOTE: The original HP files are named '*.img'.  Sometimes HP supplies
+     these files ready-to-download to the printer, sometimes they are raw
+diff -Nuarp foo2zjs.orig/INSTALL.in foo2zjs/INSTALL.in
+--- foo2zjs.orig/INSTALL.in    2005-09-25 12:16:59.000000000 +0200
++++ foo2zjs/INSTALL.in 2005-09-25 12:52:50.000000000 +0200
+@@ -86,15 +86,23 @@ HP LASERJET 1000/1005 NOTES
+ 
+           # make install-hotplug
+ 
++      On Linux with USB connected printer and udev:
++          If you are running Linux and the printer is connected via USB, you
++          can arrange for the firmware to be automatically downloaded to the
++          printer by performing one more installation step:
++
++          # make install-udev
++          This udev-loading is more reliable than the hotplug-loading
++
+       On another OS or with a parallel port connected printer:
+ 
+           You must send a firmware file to the printer each time you power it
+           up.  If you downloaded the extra files for the HP above, a typical
+           command line to load the firmware would be:
+ 
+-              cat /usr/share/foo2zjs/firmware/sihp1000.dl > /dev/usb/lp0
++              cat /lib/firmware/sihp1000.dl > /dev/lp0
+           or:
+-              cat /usr/share/foo2zjs/firmware/sihp1005.dl > /dev/usb/lp0
++              cat /lib/firmware/sihp1005.dl > /dev/lp0
+ 
+     NOTE: The original HP files are named '*.img'.  Sometimes HP supplies
+     these files ready-to-download to the printer, sometimes they are raw
+diff -Nuarp foo2zjs.orig/Makefile foo2zjs/Makefile
+--- foo2zjs.orig/Makefile      2005-09-25 12:16:59.000000000 +0200
++++ foo2zjs/Makefile   2005-09-25 13:39:35.000000000 +0200
+@@ -9,6 +9,10 @@ VERSION=0.0
+ PREFIX=$(DESTDIR)/usr/local
+ PREFIX=$(DESTDIR)/usr
+ 
++# USB_PRINTERID is also installed there because it is needed by the FWloader
++FWLOADERDIR=$(DESTDIR)/sbin
++FIRMWAREDIR=$(DESTDIR)/lib/firmware
++
+ # Pathnames for this package...
+ BIN=$(PREFIX)/bin
+ SHAREZJS=$(PREFIX)/share/foo2zjs
+@@ -214,6 +218,13 @@ install-prog:
+       # Install driver, wrapper, and development tools
+       #
+       install -c $(PROGS) $(SHELLS) $(BIN)/
++
++      [ -d $(FWLOADERDIR) ] || install -d -m 755 $(FWLOADERDIR)/
++      #
++      # We need usb_printerid before /usr is mounted.
++      #
++      [ -x $(BIN)/usb_printerid ] && mv $(BIN)/usb_printerid $(FWLOADERDIR)/usb_printerid
++
+       #
+       # Install gamma correction files.  These are just templates,
+       # and don't actually do anything right now.  If anybody wants
+@@ -293,15 +304,15 @@ install-extra:
+           fi; \
+       done
+       # foo2zjs Firmware files (if any)
+-      install $(LPuid) $(LPgid) -m 775 -d $(SHAREZJS)/firmware/
++      install $(LPuid) $(LPgid) -m 775 -d $(FIRMWAREDIR)/
+       for i in sihp*.img; do \
+           if [ -f $$i ]; then \
+               base=`basename $$i .img`; \
+               ./arm2hpdl $$i >$$base.dl; \
+-              install -c -m 644 $$base.dl $(SHAREZJS)/firmware/; \
++              install -c -m 644 $$base.dl $(FIRMWAREDIR)/; \
+           fi; \
+       done
+-      install -c -m 644 hp1020.img $(SHAREZJS)/firmware/sihp1020.dl
++      install -c -m 644 hp1020.img $(FIRMWAREDIR)/sihp1020.dl
+       # foo2oak ICM files (if any)
+       install $(LPuid) $(LPgid) -m 775 -d $(SHAREOAK)/icm/
+ 
+@@ -313,6 +324,13 @@ install-hotplug:
+       ln -sf $(USBDIR)/hplj1000 $(USBDIR)/hplj1020
+       install -c -m 755 hplj.usermap $(USBDIR)/
+ 
++UDEVDIR=$(DESTDIR)/etc/udev/rules.d
++install-udev:
++      [ -d $(FWLOADERDIR) ] || install -d -m 755 $(FWLOADERDIR)
++      install -c -m 755 foo2zjs-loadfw $(FWLOADERDIR)
++      [ -d $(UDEVDIR) ] || install -d -m 755 $(UDEVDIR)/
++      install -c -m 755 58-foo2zjs.rules $(UDEVDIR)
++
+ clean:
+       -rm -f foo2zjs zjsdecode
+       -rm -f *.zc *.zm
+diff -Nuarp foo2zjs.orig/foo2zjs-loadfw foo2zjs/foo2zjs-loadfw
+--- foo2zjs.orig/foo2zjs-loadfw        1970-01-01 01:00:00.000000000 +0100
++++ foo2zjs/foo2zjs-loadfw     2005-09-25 12:57:45.000000000 +0200
+@@ -0,0 +1,117 @@
++#!/bin/sh
++
++#     foo2zjs-loadfw:
++#
++#     Hotplug script for HP1000/1005/1020 USB laser printers. The model number
++#     that this script deals with is determined from the udev env.
++#
++#     Used to download firmware automatically into the printer when it
++#     is powered up or plugged into the USB port.
++#
++#     The inspiration fo this script is from:
++#             Oscar Santacreu. Alicante-Spain (2002)
++#             Mike Morgan (2004)
++#     Modified by Stefan Schweizer (2005) to work as a udev-RUN-script
++
++#
++# Directory to find downloadable HP firmware files sihpMMMM.dl
++#
++FWDIR=/lib/firmware
++
++#
++# Program used to determine USB id information
++#
++USBID=/sbin/usb_printerid
++
++#
++#     Figure out how to log our messages
++#
++if [ -t 1 ]; then
++    # Running from a tty...
++    log() {
++      echo "$0: $@"
++    }
++elif [ -x /usr/bin/logger ]; then
++    # Have logger...
++    log() {
++      logger -t "$0" -- "$@"
++    }
++else
++    # No logger...
++    log() {
++      echo "$0: $@" >> /var/log/messages
++    }
++fi
++
++#
++#     Figure out the model number from the name of this script
++#
++case "$1" in
++1000)
++    MODEL=1000
++    MODELNAME="hp LaserJet $MODEL"
++    ;;
++1005)
++    MODEL=1005
++    MODELNAME="hp LaserJet $MODEL"
++    ;;
++1020)
++    MODEL=1020
++    MODELNAME="HP LaserJet $MODEL"
++    ;;
++*)
++    log "Only HP LaserJet 1000, 1005 and 1020 are supported"
++    log "You need to supply one of these on the cmdline: $0 10**"
++    exit
++    ;;
++esac
++
++if [ -z "$DEVNAME" ]; then
++    if [ -n "$2" ]; then
++        DEVNAME=$2 
++    else
++        log "You need to either have $DEVNAME set in the environment or supply it on the cmdline, like:"
++        log "$0 10** /dev/usb/lp0"
++        exit 1
++    fi
++fi
++
++#
++#     Procedure to load a single device with firmware
++#
++load1() {
++    fw="$FWDIR/sihp$MODEL.dl"
++    if [ ! -f "$fw" ]; then
++      log "Missing HP LaserJet $MODEL firmware file $fw"
++      log "...read foo2zjs installation instructions and run ./getweb $MODEL"
++      return 1
++    fi
++
++    log "loading HP LaserJet $MODEL firmware $fw to $DEVNAME ..."
++    if cat $fw > $DEVNAME; then
++      log "... download successful."
++    else
++      log "... download failed."
++    fi
++    return 0
++}
++
++#
++#     OK, now download firmware to any printers that need it
++#
++if [ -x $USBID ]; then
++      if $USBID $DEVNAME | grep "$MODELNAME" 2> /dev/null; then
++          # This is a LaserJet 100x
++          if $USBID $DEVNAME | grep 'FWVER' 2> /dev/null; then
++              log "HP LaserJet $MODEL firmware already loaded into $DEVNAME"
++          else
++              # Firmware is not yet loaded
++              load1 "$DEVNAME"
++          fi
++      else
++          log "No supported printer found."
++      fi
++else
++    log "HP LaserJet $MODEL firmware was not downloaded..."
++    log "...couldn't find $USBID"
++fi
+diff -Nuarp foo2zjs.orig/hplj1000 foo2zjs/hplj1000
+--- foo2zjs.orig/hplj1000      2005-09-25 12:16:59.000000000 +0200
++++ foo2zjs/hplj1000   2005-09-25 12:47:29.000000000 +0200
+@@ -30,12 +30,12 @@ DEV=""
+ #
+ # Directory to find downloadable HP firmware files sihpMMMM.dl
+ #
+-FWDIR=/usr/share/foo2zjs/firmware
++FWDIR=/lib/firmware
+ 
+ #
+ # Program used to determine USB id information
+ #
+-USBID=/usr/bin/usb_printerid
++USBID=/sbin/usb_printerid
+ 
+ #
+ #     Figure out how to log our messages
diff --git a/net-print/foo2zjs/foo2zjs-20050925.ebuild b/net-print/foo2zjs/foo2zjs-20050925.ebuild
new file mode 100644 (file)
index 0000000..139934c
--- /dev/null
@@ -0,0 +1,74 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-print/foo2zjs/foo2zjs-20050925.ebuild,v 1.1 2005/09/27 12:37:14 genstef Exp $
+
+inherit eutils flag-o-matic
+
+DESCRIPTION="Support for printing to ZjStream-based printers"
+HOMEPAGE="http://foo2zjs.rkkda.com/"
+SRC_URI="ftp://ftp.minolta-qms.com/pub/crc/out_going/win/m23dlicc.exe
+               ftp://ftp.minolta-qms.com/pub/crc/out_going/win2000/m22dlicc.exe
+               ftp://ftp.minolta-qms.com/pub/crc/out_going/windows/cpplxp.exe
+               http://dev.gentoo.org/~genstef/files/foo2zjs-20050319.tar.gz
+               http://dev.gentoo.org/~genstef/files/foo2zjs-hplj1020-20050426.diff.bz2"
+RESTRICT="nomirror"
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="cups foomaticdb usb"
+DEPEND="app-arch/unzip
+       dev-lang/perl"
+RDEPEND="cups? ( net-print/cups )
+       foomaticdb? ( net-print/foomatic )
+       usb? ( || ( sys-fs/udev sys-apps/hotplug ) )"
+KEYWORDS="~x86 ~amd64"
+S=${WORKDIR}/${PN}
+
+src_unpack() {
+       unpack foo2zjs-20050319.tar.gz foo2zjs-hplj1020-20050426.diff.bz2
+
+       # link getweb files in ${S} to get unpacked
+       for i in m23dlicc.exe m22dlicc.exe cpplxp.exe
+       do
+               ln -s ${DISTDIR}/${i} ${S}
+       done
+
+       cd ${S}
+
+       epatch ${WORKDIR}/foo2zjs-hplj1020-20050426.diff
+       epatch ${FILESDIR}/foo2zjs-Makefile-20050925.diff
+       epatch ${FILESDIR}/foo2zjs-udevfwld-20050925.diff
+
+       # Why are these present in the tarball?
+       rm arm2hpdl foo2oak
+}
+
+src_compile() {
+       emake getweb || die "Failed building getweb script"
+
+       # remove wget as we got the firmware with portage
+       sed -si "s/.*wget.*//" getweb
+       sed -si "s/error \"Couldn't dow.*//" getweb
+       # unpack files
+       ./getweb all
+
+       emake || die "emake failed"
+}
+
+src_install() {
+       use foomaticdb && dodir /usr/share/foomatic/db/source
+
+       use cups && dodir /usr/share/cups/model
+
+       make DESTDIR=${D} install \
+               || die "make install failed"
+
+       if use usb; then
+               if [ -x ${ROOT}/sbin/udevsend ]; then
+                       make DESTDIR=${D} install-udev \
+                               || die "make install-udev failed"
+               else
+                       make DESTDIR=${D} install-hotplug \
+                               || die "make install-hotplug failed"
+               fi
+       fi
+}