summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-print')
-rw-r--r--net-print/foo2zjs/Manifest19
-rw-r--r--net-print/foo2zjs/files/foo2zjs-20081129-Makefile.patch145
-rw-r--r--net-print/foo2zjs/files/foo2zjs-20081129-udevfwld.patch273
-rw-r--r--net-print/foo2zjs/foo2zjs-20081129-r1.ebuild128
-rw-r--r--net-print/foo2zjs/metadata.xml10
5 files changed, 575 insertions, 0 deletions
diff --git a/net-print/foo2zjs/Manifest b/net-print/foo2zjs/Manifest
new file mode 100644
index 00000000..0a74a3a3
--- /dev/null
+++ b/net-print/foo2zjs/Manifest
@@ -0,0 +1,19 @@
+DIST cpplxp.exe 4799488 SHA256 5f4c8b6f20ccf2d525f683847f5dc24bb4c7f58131d6704047d6c9a90d6895af
+DIST foo2zjs-20081129.tar.gz 1556478 SHA256 7b372e51a1251445f0150a7160148f4682ca32a2253f8ae9cbb845283b883b97
+DIST hpclj2600n.tar.gz 573660 SHA256 1f2c92055f22a7a6526b84b2c31e36ce1a6de003f66b31eb60cd400b84e213b6
+DIST km2430.tar.gz 929112 SHA256 88e21cc7f5c124223a6e4baea9d18dfae4a74f28f500dfae8e035495434ff572
+DIST km2530.tar.gz 2045958 SHA256 36226589e899f5d79476f5a718575eed51e81a81632ea11ba5db9e289572fb9b
+DIST lexc500.tar.gz 239577 SHA256 823fd57b2e1b5aa6ed7a07055616238ed9b02e324b9d1c5f4f281e5ae4b0a667
+DIST m22dlicc.exe 634368 SHA256 1d57413f4c36941c64599dae2ac2b1f8a397e128796c2796a108be5b8fd282b3
+DIST m23dlicc.exe 170496 SHA256 1416cda7e2e3496ff1d121c87dd8984ad1d16ed3396096f05f4919dafd445ae4
+DIST okic3200.tar.gz 527532 SHA256 f5503854d4537868d24a797912b2fa70c1fb5e0f097fc61a45f100725a064521
+DIST okic3400.tar.gz 453326 SHA256 5f64ac0002c6f2f25d481bada150121d7d77e29e616de0639446903904043a70
+DIST okic5600.tar.gz 674998 SHA256 7b2d59d54ecefecd053766bdb1d81db08c9d32979031cb8c4e2d5162d7d8f6bd
+DIST samclp300.tar.gz 427584 SHA256 cf7eaca16a6a1892e13cd87825dcb57060c4c50815a52b0f2cb09b27304ec140
+DIST sihp1000.tar.gz 50416 SHA256 28ee34195a976212800c6abd29047c297c4367aaf727f279e16de297f13562f5
+DIST sihp1005.tar.gz 52297 SHA256 fb044ea77cbe3c5e2f86d00db02733ab1f8bdf102fcbfc55ba4eb2bee94535ee
+DIST sihp1018.tar.gz 70544 SHA256 95505c88af25d0c2130077af68e0404d88fc8dfb0a58943bdb9313f3e6c10f10
+DIST sihp1020.tar.gz 70139 SHA256 c6117961ff9a4a1a880093daea52d800636f6c1002e4cf4fda2009f08f652751
+DIST sihpP1005.tar.gz 153447 SHA256 9672c09945f4d1b19841187b30832f3afdfbdf0a1e770f41d95c1575fb865c5c
+DIST sihpP1006.tar.gz 153532 SHA256 7974d669cd68a88674e0b6c44c5fa48f7c6625d16714cac6ded7b26024184f50
+DIST sihpP1505.tar.gz 166072 SHA256 f631bce116447af89b1740c3b9732666348579a9dcd96d6f31121d5586332f35
diff --git a/net-print/foo2zjs/files/foo2zjs-20081129-Makefile.patch b/net-print/foo2zjs/files/foo2zjs-20081129-Makefile.patch
new file mode 100644
index 00000000..8391dad8
--- /dev/null
+++ b/net-print/foo2zjs/files/foo2zjs-20081129-Makefile.patch
@@ -0,0 +1,145 @@
+diff -urN foo2zjs.orig/icc2ps/Makefile foo2zjs/icc2ps/Makefile
+--- foo2zjs.orig/icc2ps/Makefile 2007-11-27 22:13:53.000000000 +0100
++++ foo2zjs/icc2ps/Makefile 2008-12-02 13:51:12.000000000 +0100
+@@ -1,11 +1,11 @@
+ UNAME := $(shell uname)
+-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 cmsio0.c cmsvirt.c
+-CFLAGS= -O3
++CFLAGS?= -O3
+ INSTALL=install
+ ifeq ($(UNAME),SunOS)
+ INSTALL=/usr/ucb/install
+diff -urN foo2zjs.orig/Makefile foo2zjs/Makefile
+--- foo2zjs.orig/Makefile 2008-09-23 15:56:20.000000000 +0200
++++ foo2zjs/Makefile 2008-12-02 14:00:42.000000000 +0100
+@@ -251,7 +251,7 @@
+ endif
+
+ # Compiler flags
+-CFLAGS += -O2 -Wall
++CFLAGS ?= -O2 -Wall
+ #CFLAGS += -g
+
+ #
+@@ -543,14 +543,15 @@
+ UDEVBIN=$(DESTDIR)/bin/
+
+ install-prog:
++ [ -d $(BIN) ] || install -d -m 755 $(BIN)/
++ [ -d $(DESTDIR)/bin/ ] || install -d -m 755 $(DESTDIR)/bin/
+ #
+ # Install driver, wrapper, and development tools
+ #
+ $(INSTALL) -d $(BIN)
+ $(INSTALL) -c $(PROGS) $(SHELLS) $(BIN)/
+ if [ "$(BINPROGS)" != "" ]; then \
+- $(INSTALL) -d $(UDEVBIN); \
+- $(INSTALL) -c $(BINPROGS) $(UDEVBIN); \
++ install -c $(BINPROGS) $(DESTDIR)/bin/; \
+ fi
+ #
+ # Install gamma correction files. These are just templates,
+@@ -570,6 +571,7 @@
+ #
+ # Remove obsolete foomatic database files from previous versions
+ #
++ mkdir -p $(FOODB)/opt/
+ rm -f $(FOODB)/opt/foo2zjs-Media.xml
+ rm -f $(FOODB)/opt/foo2zjs-PaperSize.xml
+ rm -f $(FOODB)/opt/foo2zjs-Source.xml
+@@ -583,6 +585,7 @@
+ # Install current database files
+ #
+ @if [ -d $(FOODB) ]; then \
++ [ -d $(FOODB)/$$dir/ ] || install -d -m 755 $(FOODB)/$$dir/; \
+ for dir in driver printer opt; do \
+ echo install -m 644 foomatic-db/$$dir/*.xml $(FOODB)/$$dir/; \
+ $(INSTALL) -c -m 644 foomatic-db/$$dir/*.xml $(FOODB)/$$dir/; \
+@@ -601,10 +604,10 @@
+ #
+ # Clear foomatic cache and rebuild database if needed
+ #
+- rm -rf /var/cache/foomatic/*/*
+- rm -f /var/cache/foomatic/printconf.pickle
+- if [ -d /var/cache/foomatic/compiled ]; then \
+- cd /var/cache/foomatic/compiled; \
++ rm -rf $(DESTDIR)/var/cache/foomatic/*/*
++ rm -f $(DESTDIR)/var/cache/foomatic/printconf.pickle
++ if [ -d $(DESTDIR)/var/cache/foomatic/compiled ]; then \
++ cd $(DESTDIR)/var/cache/foomatic/compiled; \
+ foomatic-combo-xml -O >overview.xml; \
+ fi
+
+@@ -736,13 +739,6 @@
+ done; \
+ ppdmgr -u; \
+ elif [ -d $(PPD) ]; then \
+- find $(PPD) -name '*foo2zjs*' | xargs rm -rf; \
+- find $(PPD) -name '*foo2hp*' | xargs rm -rf; \
+- find $(PPD) -name '*foo2xqx*' | xargs rm -rf; \
+- find $(PPD) -name '*foo2lava*' | xargs rm -rf; \
+- find $(PPD) -name '*foo2qpdl*' | xargs rm -rf; \
+- find $(PPD) -name '*foo2slx*' | xargs rm -rf; \
+- find $(PPD) -name '*foo2hiperc*' | xargs rm -rf; \
+ [ -d $(PPD)/foo2zjs ] || mkdir $(PPD)/foo2zjs; \
+ cd PPD; \
+ for ppd in *.ppd; do \
+@@ -789,10 +785,8 @@
+ $(INSTALL) -c -m 755 hplj10xx_gui.tcl $(SHAREZJS)
+
+
+-USBDIR=/etc/hotplug/usb
+-UDEVDIR=/etc/udev/rules.d
+-RULES=hplj10xx.rules
+-install-hotplug: install-hotplug-test install-hotplug-prog
++USBDIR=$(DESTDIR)/etc/hotplug/usb
++install-hotplug: install-hotplug-test install-udev
+
+ install-hotplug-test:
+ #
+@@ -810,9 +804,6 @@
+ #
+
+ install-hotplug-prog:
+- if [ -d $(UDEVDIR) ]; then \
+- $(INSTALL) -c -m 644 $(RULES) $(UDEVDIR)/11-$(RULES); \
+- fi
+ [ -d $(USBDIR) ] || $(INSTALL) -d -m 755 $(USBDIR)/
+ $(INSTALL) -c -m 755 hplj1000 $(USBDIR)/
+ ln -sf $(USBDIR)/hplj1000 $(USBDIR)/hplj1005
+@@ -823,15 +814,12 @@
+ ln -sf $(USBDIR)/hplj1000 $(USBDIR)/hpljP1007
+ ln -sf $(USBDIR)/hplj1000 $(USBDIR)/hpljP1008
+ ln -sf $(USBDIR)/hplj1000 $(USBDIR)/hpljP1505
+- $(USBDIR)/hplj1000 install-usermap
+- $(USBDIR)/hplj1005 install-usermap
+- $(USBDIR)/hplj1018 install-usermap
+- $(USBDIR)/hplj1020 install-usermap
+- $(USBDIR)/hpljP1005 install-usermap
+- $(USBDIR)/hpljP1006 install-usermap
+- $(USBDIR)/hpljP1007 install-usermap
+- $(USBDIR)/hpljP1008 install-usermap
+- $(USBDIR)/hpljP1505 install-usermap
++ install -c -m 644 hplj.usermap $(USBDIR)/
++UDEVDIR=$(DESTDIR)/etc/udev/rules.d
++RULES=hplj10xx.rules
++install-udev:
++ [ -d $(UDEVDIR) ] || install -d -m 755 $(UDEVDIR)/
++ install -c -m 644 $(RULES) $(UDEVDIR)/11-$(RULES)
+
+ cups: FRC
+ if [ -x /etc/init.d/cups ]; then \
+@@ -1223,7 +1211,6 @@
+ $(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 --git a/net-print/foo2zjs/files/foo2zjs-20081129-udevfwld.patch b/net-print/foo2zjs/files/foo2zjs-20081129-udevfwld.patch
new file mode 100644
index 00000000..808b32f1
--- /dev/null
+++ b/net-print/foo2zjs/files/foo2zjs-20081129-udevfwld.patch
@@ -0,0 +1,273 @@
+--- 1/Makefile
++++ 1/Makefile
+@@ -20,6 +20,10 @@
+ PREFIX=/usr
+ 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
+@@ -661,21 +665,21 @@
+ 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 sihp1*.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
+ # foo2xqx Firmware files (if any)
+- $(INSTALL) $(LPuid) $(LPgid) -m 775 -d $(SHAREXQX)/firmware/
++ $(INSTALL) $(LPuid) $(LPgid) -m 775 -d $(FIRMWAREDIR)/
+ for i in sihpP*.img; do \
+ if [ -f $$i ]; then \
+ base=`basename $$i .img`; \
+ ./arm2hpdl $$i >$$base.dl; \
+- $(INSTALL) -c -m 644 $$base.dl $(SHAREXQX)/firmware/; \
++ $(INSTALL) -c -m 644 $$base.dl $(FIRMWAREDIR)/; \
+ fi; \
+ done
+ # foo2oak ICM files (if any)
+@@ -818,6 +822,8 @@
+ UDEVDIR=$(DESTDIR)/etc/udev/rules.d
+ RULES=hplj10xx.rules
+ 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 644 $(RULES) $(UDEVDIR)/11-$(RULES)
+
+--- foo2zjs-loadfw
++++ foo2zjs-loadfw
+@@ -0,0 +1,151 @@
++#!/bin/sh
++
++# foo2zjs-loadfw:
++#
++# Hotplug script for 100[05],1018,1020,P100[5678],P1505,P1505n
++# 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 printer id information
++#
++USBID=/bin/usb_printerid
++
++#
++# Timeout to load firmware
++#
++TIMEOUT=6
++
++#
++# 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 argument of this script
++#
++MODELNAME=''
++FWMODEL=''
++case "$1" in
++P1005)
++ MODEL=P1005
++ ;;
++P1006)
++ MODEL=P1006
++ ;;
++P1007)
++ MODEL=P1007
++ FWMODEL=P1005
++ ;;
++P1008)
++ MODEL=P1008
++ FWMODEL=P1006
++ ;;
++P1505)
++ MODEL=P1505
++ ;;
++P1505n)
++ MODEL=P1505n
++ FWMODEL=P1505
++ ;;
++1000)
++ MODEL=1000
++ MODELNAME="hp LaserJet $MODEL"
++ ;;
++1005)
++ MODEL=1005
++ MODELNAME="hp LaserJet $MODEL"
++ ;;
++1018)
++ MODEL=1018
++ ;;
++1020)
++ MODEL=1020
++ ;;
++*)
++ log "Only HP LaserJet 100[05],1018,1020,P100[5678],P1505,P1505n are supported"
++ log "You need to supply one of these on the cmdline: $0 10**"
++ exit
++ ;;
++esac
++: ${MODELNAME:="HP LaserJet $MODEL"}
++: ${FWMODEL:="$MODEL"}
++
++if [ -n "$2" ]; then
++ DEVNAME=$2
++elif [ -n "$DEVNAME" ]; then
++ log 'using $DEVNAME'
++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
++
++#
++# Procedure to load a single device with firmware
++#
++load1() {
++ fw="$FWDIR/sihp$FWMODEL.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
++ sleep $TIMEOUT
++ 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
+--- hplj1000
++++ hplj1000
+@@ -35,7 +35,7 @@
+ #
+ # Directory to find downloadable HP firmware files sihpMMMM.dl
+ #
+-FWDIR=/usr/share/foo2zjs/firmware
++FWDIR=/lib/firmware
+
+ #
+ # Program used to determine USB printer id information
+--- hplj10xx.rules
++++ hplj10xx.rules
+@@ -1,36 +1,21 @@
+-#Own udev rule for HP Laserjet 1000
+-KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", \
+- SYSFS{product}=="hp LaserJet 1000", NAME="usb/%k", \
+- SYMLINK+="hplj1000-%n", MODE="0666", RUN+="/etc/hotplug/usb/hplj1000"
+-#Own udev rule for HP Laserjet 1005
+-KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", \
+- SYSFS{product}=="hp LaserJet 1005 series", NAME="usb/%k", \
+- SYMLINK+="hplj1005-%n", MODE="0666", RUN+="/etc/hotplug/usb/hplj1005"
+-#Own udev rule for HP Laserjet 1018
+-KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", \
+- SYSFS{product}=="HP LaserJet 1018", NAME="usb/%k", \
+- SYMLINK+="hplj1018-%n", MODE="0666", RUN+="/etc/hotplug/usb/hplj1018"
+-#Own udev rule for HP Laserjet 1020
+-KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", \
+- SYSFS{product}=="HP LaserJet 1020", NAME="usb/%k", \
+- SYMLINK+="hplj1020-%n", MODE="0666", RUN+="/etc/hotplug/usb/hplj1020"
+-#Own udev rule for HP Laserjet P1005
+-KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", \
+- SYSFS{product}=="HP LaserJet P1005", NAME="usb/%k", \
+- SYMLINK+="hpljP1005-%n", MODE="0666", RUN+="/etc/hotplug/usb/hpljP1005"
+-#Own udev rule for HP Laserjet P1006
+-KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", \
+- SYSFS{product}=="HP LaserJet P1006", NAME="usb/%k", \
+- SYMLINK+="hpljP1006-%n", MODE="0666", RUN+="/etc/hotplug/usb/hpljP1006"
+-#Own udev rule for HP Laserjet P1007
+-KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", \
+- SYSFS{product}=="HP LaserJet P1007", NAME="usb/%k", \
+- SYMLINK+="hpljP1007-%n", MODE="0666", RUN+="/etc/hotplug/usb/hpljP1007"
+-#Own udev rule for HP Laserjet P1008
+-KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", \
+- SYSFS{product}=="HP LaserJet P1008", NAME="usb/%k", \
+- SYMLINK+="hpljP1008-%n", MODE="0666", RUN+="/etc/hotplug/usb/hpljP1008"
+-#Own udev rule for HP Laserjet P1505
+-KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", \
+- SYSFS{product}=="HP LaserJet P1505", NAME="usb/%k", \
+- SYMLINK+="hpljP1505-%n", MODE="0666", RUN+="/etc/hotplug/usb/hpljP1505"
++ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
++ ATTRS{idProduct}=="3d17", RUN+="/sbin/foo2zjs-loadfw P1005 $tempnode"
++ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
++ ATTRS{idProduct}=="3e17", RUN+="/sbin/foo2zjs-loadfw P1006 $tempnode"
++ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
++ ATTRS{idProduct}=="4817", RUN+="/sbin/foo2zjs-loadfw P1007 $tempnode"
++ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
++ ATTRS{idProduct}=="4917", RUN+="/sbin/foo2zjs-loadfw P1008 $tempnode"
++ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
++ ATTRS{idProduct}=="3f17", RUN+="/sbin/foo2zjs-loadfw P1505 $tempnode"
++ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
++ ATTRS{idProduct}=="4017", RUN+="/sbin/foo2zjs-loadfw P1505n $tempnode"
++ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
++ ATTRS{idProduct}=="0517", RUN+="/sbin/foo2zjs-loadfw 1000 $tempnode"
++ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
++ ATTRS{idProduct}=="1317", RUN+="/sbin/foo2zjs-loadfw 1005 $tempnode"
++ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
++ ATTRS{idProduct}=="4117", RUN+="/sbin/foo2zjs-loadfw 1018 $tempnode"
++ACTION=="add", KERNEL=="lp*", SUBSYSTEM=="usb", ATTRS{idVendor}=="03f0", \
++ ATTRS{idProduct}=="2b17", RUN+="/sbin/foo2zjs-loadfw 1020 $tempnode"
++
diff --git a/net-print/foo2zjs/foo2zjs-20081129-r1.ebuild b/net-print/foo2zjs/foo2zjs-20081129-r1.ebuild
new file mode 100644
index 00000000..ec664b77
--- /dev/null
+++ b/net-print/foo2zjs/foo2zjs-20081129-r1.ebuild
@@ -0,0 +1,128 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils
+
+DESCRIPTION="Support for printing to ZjStream-based printers. Fixes bug 271079"
+HOMEPAGE="http://foo2zjs.rkkda.com/"
+
+# extracted by http://gentooexperimental.org/~genstef/dist/foo2zjs-helper.sh
+DEVICES=( "hp2600n" "hp1600" "hp1500" "hp1215" "km2530" "km2490" "km2480"
+"xp6115" "km2430" "km2300" "km2200" "kmcpwl" "sa300" "sa315" "sa2160"
+"sa3160" "xp6110" "lm500" "oki3200" "oki3300" "oki3400" "oki3530" "oki5100"
+"oki5200" "oki5500" "oki5600" "oki5800" "hp1020" "hp1018" "hp1005" "hp1000"
+"hpp1505" "hpp1008" "hpp1007" "hpp1006" "hpp1005" )
+#"sa610" has no file to download
+URIS=(
+"http://foo2hp.rkkda.com/icm/hpclj2600n.tar.gz
+http://foo2zjs.rkkda.com/icm/km2430.tar.gz"
+"http://foo2hp.rkkda.com/icm/hpclj2600n.tar.gz
+http://foo2zjs.rkkda.com/icm/km2430.tar.gz"
+"http://foo2hp.rkkda.com/icm/hpclj2600n.tar.gz
+http://foo2zjs.rkkda.com/icm/km2430.tar.gz"
+"http://foo2hp.rkkda.com/icm/hpclj2600n.tar.gz
+http://foo2zjs.rkkda.com/icm/km2430.tar.gz"
+"http://foo2lava.rkkda.com/icm/km2530.tar.gz"
+"http://foo2lava.rkkda.com/icm/km2530.tar.gz"
+"http://foo2lava.rkkda.com/icm/km2530.tar.gz"
+"http://foo2lava.rkkda.com/icm/km2530.tar.gz"
+"http://foo2zjs.rkkda.com/icm/km2430.tar.gz"
+"ftp://ftp.minolta-qms.com/pub/crc/out_going/other/m23dlicc.exe
+http://foo2zjs.rkkda.com/icm/km2430.tar.gz"
+"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://foo2qpdl.rkkda.com/icm/samclp300.tar.gz"
+"http://foo2qpdl.rkkda.com/icm/samclp300.tar.gz"
+"http://foo2qpdl.rkkda.com/icm/samclp300.tar.gz"
+"http://foo2qpdl.rkkda.com/icm/samclp300.tar.gz"
+"http://foo2qpdl.rkkda.com/icm/samclp300.tar.gz"
+"http://foo2slx.rkkda.com/icm/lexc500.tar.gz"
+"http://foo2hiperc.rkkda.com/icm/okic3200.tar.gz"
+"http://foo2hiperc.rkkda.com/icm/okic3400.tar.gz"
+"http://foo2hiperc.rkkda.com/icm/okic3400.tar.gz"
+"http://foo2hiperc.rkkda.com/icm/okic3400.tar.gz"
+"http://foo2hiperc.rkkda.com/icm/okic3200.tar.gz"
+"http://foo2hiperc.rkkda.com/icm/okic3200.tar.gz"
+"http://foo2hiperc.rkkda.com/icm/okic5600.tar.gz"
+"http://foo2hiperc.rkkda.com/icm/okic5600.tar.gz"
+"http://foo2hiperc.rkkda.com/icm/okic5600.tar.gz"
+"http://foo2zjs.rkkda.com/firmware/sihp1020.tar.gz"
+"http://foo2zjs.rkkda.com/firmware/sihp1018.tar.gz"
+"http://foo2zjs.rkkda.com/firmware/sihp1005.tar.gz"
+"http://foo2zjs.rkkda.com/firmware/sihp1000.tar.gz"
+"http://foo2zjs.rkkda.com/firmware/sihpP1505.tar.gz"
+"http://foo2zjs.rkkda.com/firmware/sihpP1006.tar.gz"
+"http://foo2zjs.rkkda.com/firmware/sihpP1005.tar.gz"
+"http://foo2zjs.rkkda.com/firmware/sihpP1006.tar.gz"
+"http://foo2zjs.rkkda.com/firmware/sihpP1005.tar.gz"
+)
+
+SRC_URI="http://dev.gentooexperimental.org/~scarabeus/${P}.tar.gz"
+IUSE="cups foomaticdb usb"
+for ((DEV=0; DEV < ${#DEVICES[*]}; DEV++)); do
+ SRC_URI="${SRC_URI} foo2zjs_devices_${DEVICES[DEV]}? ( ${URIS[DEV]} )"
+ IUSE="${IUSE} foo2zjs_devices_${DEVICES[DEV]}"
+ ALL_BEGIN="${ALL_BEGIN} !foo2zjs_devices_${DEVICES[DEV]}? ("
+ ALL_MIDDLE="${ALL_MIDDLE} ${URIS[DEV]}"
+ ALL_END="${ALL_END} )"
+done
+SRC_URI="${SRC_URI}${ALL_BEGIN}${ALL_MIDDLE}${ALL_END}"
+
+LICENSE="GPL-2"
+# due to those firmwares/icms/etc...
+RESTRICT="mirror"
+SLOT="0"
+DEPEND="app-arch/unzip"
+RDEPEND="cups? ( net-print/cups )
+ foomaticdb? ( net-print/foomatic-db-engine )
+ net-print/foomatic-filters
+ virtual/udev"
+KEYWORDS="~x86 ~amd64 ~ppc"
+S="${WORKDIR}/${PN}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-Makefile.patch
+ epatch "${FILESDIR}"/${P}-udevfwld.patch
+ epatch_user
+}
+
+src_unpack() {
+ unpack ${P}.tar.gz
+
+ # link getweb files in ${S} to get unpacked
+ local i
+ for i in ${A}
+ do ln -s "${DISTDIR}"/${i} "${S}"
+ done
+}
+
+src_compile() {
+ emake getweb
+
+ # remove wget as we got the firmware with portage
+ sed -i -e "s/.*wget .*//" \
+ -e 's/.*rm $.*//' \
+ -e "s/error \"Couldn't dow.*//" getweb
+
+ # unpack files
+ GOT=0;
+ for ((DEV=0; DEV < ${#DEVICES[*]}; DEV++)); do
+ if use foo2zjs_devices_${DEVICES[DEV]}; then
+ ./getweb ${DEVICES[DEV]:2}
+ GOT=1
+ fi
+ done
+ if [ ${GOT} == 0 ]; then ./getweb all; fi
+
+ emake
+}
+
+src_install() {
+ use foomaticdb && dodir /usr/share/foomatic/db/source
+
+ use cups && dodir /usr/share/cups/model
+
+ emake DESTDIR="${ED}" install install-udev
+}
diff --git a/net-print/foo2zjs/metadata.xml b/net-print/foo2zjs/metadata.xml
new file mode 100644
index 00000000..fd829cb5
--- /dev/null
+++ b/net-print/foo2zjs/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>printing</herd>
+ <maintainer>
+ <email>martin@mvath.de</email>
+ <name>Martin Väth</name>
+ <description>Maintainer of patch for the abandoned ebuild</description>
+ </maintainer>
+</pkgmetadata>