Diffstat (limited to 'net-print/foo2zjs/files/foo2zjs-udevfwld-20070204.diff') (more/less context) (show whitespace changes)
-rw-r--r-- | net-print/foo2zjs/files/foo2zjs-udevfwld-20070204.diff | 191 |
1 files changed, 191 insertions, 0 deletions
diff --git a/net-print/foo2zjs/files/foo2zjs-udevfwld-20070204.diff b/net-print/foo2zjs/files/foo2zjs-udevfwld-20070204.diff new file mode 100644 index 0000000..5935d5e --- a/dev/null +++ b/net-print/foo2zjs/files/foo2zjs-udevfwld-20070204.diff | |||
@@ -0,0 +1,191 @@ | |||
1 | diff -Nur foo2zjs.orig/Makefile foo2zjs/Makefile | ||
2 | --- foo2zjs.orig/Makefile2007-02-11 11:08:50.000000000 +0100 | ||
3 | +++ foo2zjs/Makefile2007-02-11 11:12:11.000000000 +0100 | ||
4 | @@ -9,6 +9,10 @@ | ||
5 | PREFIX=/usr/local | ||
6 | PREFIX=$(DESTDIR)/usr | ||
7 | |||
8 | +# USB_PRINTERID is also installed there because it is needed by the FWloader | ||
9 | +FWLOADERDIR=$(DESTDIR)/sbin | ||
10 | +FIRMWAREDIR=$(DESTDIR)/lib/firmware | ||
11 | + | ||
12 | # Pathnames for this package... | ||
13 | BIN=$(PREFIX)/bin | ||
14 | SHAREZJS=$(PREFIX)/share/foo2zjs | ||
15 | @@ -470,12 +474,12 @@ | ||
16 | fi; \ | ||
17 | done | ||
18 | # foo2zjs Firmware files (if any) | ||
19 | -install $(LPuid) $(LPgid) -m 775 -d $(SHAREZJS)/firmware/ | ||
20 | +install $(LPuid) $(LPgid) -m 775 -d $(FIRMWAREDIR)/ | ||
21 | for i in sihp*.img; do \ | ||
22 | if [ -f $$i ]; then \ | ||
23 | base=`basename $$i .img`; \ | ||
24 | ./arm2hpdl $$i >$$base.dl; \ | ||
25 | - install -c -m 644 $$base.dl $(SHAREZJS)/firmware/; \ | ||
26 | + install -c -m 644 $$base.dl $(FIRMWAREDIR)/; \ | ||
27 | fi; \ | ||
28 | done | ||
29 | # foo2oak ICM files (if any) | ||
30 | @@ -548,6 +552,8 @@ | ||
31 | UDEVDIR=$(DESTDIR)/etc/udev/rules.d | ||
32 | RULES=hplj10xx.rules | ||
33 | install-udev: | ||
34 | +[ -d $(FWLOADERDIR) ] || install -d -m 755 $(FWLOADERDIR)/ | ||
35 | +install -c -m 755 foo2zjs-loadfw $(FWLOADERDIR)/ | ||
36 | [ -d $(UDEVDIR) ] || install -d -m 755 $(UDEVDIR)/ | ||
37 | install -c -m 644 $(RULES) $(UDEVDIR)/11-$(RULES) | ||
38 | |||
39 | diff -Nur foo2zjs.orig/foo2zjs-loadfw foo2zjs/foo2zjs-loadfw | ||
40 | --- foo2zjs.orig/foo2zjs-loadfw1970-01-01 01:00:00.000000000 +0100 | ||
41 | +++ foo2zjs/foo2zjs-loadfw2007-02-11 11:12:11.000000000 +0100 | ||
42 | @@ -0,0 +1,121 @@ | ||
43 | +#!/bin/sh | ||
44 | + | ||
45 | +#foo2zjs-loadfw: | ||
46 | +# | ||
47 | +#Hotplug script for HP1000/1005/1020 USB laser printers. The model number | ||
48 | +#that this script deals with is determined from the udev env. | ||
49 | +# | ||
50 | +#Used to download firmware automatically into the printer when it | ||
51 | +#is powered up or plugged into the USB port. | ||
52 | +# | ||
53 | +#The inspiration fo this script is from: | ||
54 | +# Oscar Santacreu. Alicante-Spain (2002) | ||
55 | +# Mike Morgan (2004) | ||
56 | +#Modified by Stefan Schweizer (2005) to work as a udev-RUN-script | ||
57 | + | ||
58 | +# | ||
59 | +# Directory to find downloadable HP firmware files sihpMMMM.dl | ||
60 | +# | ||
61 | +FWDIR=/lib/firmware | ||
62 | + | ||
63 | +# | ||
64 | +# Program used to determine USB id information | ||
65 | +# | ||
66 | +USBID=/bin/usb_printerid | ||
67 | + | ||
68 | +# | ||
69 | +#Figure out how to log our messages | ||
70 | +# | ||
71 | +if [ -t 1 ]; then | ||
72 | + # Running from a tty... | ||
73 | + log() { | ||
74 | +echo "$0: $@" | ||
75 | + } | ||
76 | +elif [ -x /usr/bin/logger ]; then | ||
77 | + # Have logger... | ||
78 | + log() { | ||
79 | +logger -t "$0" -- "$@" | ||
80 | + } | ||
81 | +else | ||
82 | + # No logger... | ||
83 | + log() { | ||
84 | +echo "$0: $@" >> /var/log/messages | ||
85 | + } | ||
86 | +fi | ||
87 | + | ||
88 | +# | ||
89 | +#Figure out the model number from the name of this script | ||
90 | +# | ||
91 | +case "$1" in | ||
92 | +1000) | ||
93 | + MODEL=1000 | ||
94 | + MODELNAME="hp LaserJet $MODEL" | ||
95 | + ;; | ||
96 | +1005) | ||
97 | + MODEL=1005 | ||
98 | + MODELNAME="hp LaserJet $MODEL" | ||
99 | + ;; | ||
100 | +1018) | ||
101 | + MODEL=1018 | ||
102 | + MODELNAME="HP LaserJet $MODEL" | ||
103 | + ;; | ||
104 | +1020) | ||
105 | + MODEL=1020 | ||
106 | + MODELNAME="HP LaserJet $MODEL" | ||
107 | + ;; | ||
108 | +*) | ||
109 | + log "Only HP LaserJet 1000, 1005, 1018 and 1020 are supported" | ||
110 | + log "You need to supply one of these on the cmdline: $0 10**" | ||
111 | + exit | ||
112 | + ;; | ||
113 | +esac | ||
114 | + | ||
115 | +if [ -z "$DEVNAME" ]; then | ||
116 | + if [ -n "$2" ]; then | ||
117 | + DEVNAME=$2 | ||
118 | + else | ||
119 | + log "You need to either have $DEVNAME set in the environment or supply it on the cmdline, like:" | ||
120 | + log "$0 10** /dev/usb/lp0" | ||
121 | + exit 1 | ||
122 | + fi | ||
123 | +fi | ||
124 | + | ||
125 | +# | ||
126 | +#Procedure to load a single device with firmware | ||
127 | +# | ||
128 | +load1() { | ||
129 | + fw="$FWDIR/sihp$MODEL.dl" | ||
130 | + if [ ! -f "$fw" ]; then | ||
131 | +log "Missing HP LaserJet $MODEL firmware file $fw" | ||
132 | +log "...read foo2zjs installation instructions and run ./getweb $MODEL" | ||
133 | +return 1 | ||
134 | + fi | ||
135 | + | ||
136 | + log "loading HP LaserJet $MODEL firmware $fw to $DEVNAME ..." | ||
137 | + if cat $fw > $DEVNAME; then | ||
138 | +log "... download successful." | ||
139 | + else | ||
140 | +log "... download failed." | ||
141 | + fi | ||
142 | + return 0 | ||
143 | +} | ||
144 | + | ||
145 | +# | ||
146 | +#OK, now download firmware to any printers that need it | ||
147 | +# | ||
148 | +if [ -x $USBID ]; then | ||
149 | +if $USBID $DEVNAME | grep "$MODELNAME" 2> /dev/null; then | ||
150 | + # This is a LaserJet 100x | ||
151 | + if $USBID $DEVNAME | grep 'FWVER' 2> /dev/null; then | ||
152 | + log "HP LaserJet $MODEL firmware already loaded into $DEVNAME" | ||
153 | + else | ||
154 | + # Firmware is not yet loaded | ||
155 | + load1 "$DEVNAME" | ||
156 | + fi | ||
157 | +else | ||
158 | + log "No supported printer found." | ||
159 | +fi | ||
160 | +else | ||
161 | + log "HP LaserJet $MODEL firmware was not downloaded..." | ||
162 | + log "...couldn't find $USBID" | ||
163 | +fi | ||
164 | diff -Nur foo2zjs.orig/hplj1000 foo2zjs/hplj1000 | ||
165 | --- foo2zjs.orig/hplj10002007-02-11 11:02:46.000000000 +0100 | ||
166 | +++ foo2zjs/hplj10002007-02-11 11:12:11.000000000 +0100 | ||
167 | @@ -35,7 +35,7 @@ | ||
168 | # | ||
169 | # Directory to find downloadable HP firmware files sihpMMMM.dl | ||
170 | # | ||
171 | -FWDIR=/usr/share/foo2zjs/firmware | ||
172 | +FWDIR=/lib/firmware | ||
173 | |||
174 | # | ||
175 | # Program used to determine USB id information | ||
176 | diff -Nur foo2zjs.orig/hplj10xx.rules foo2zjs/hplj10xx.rules | ||
177 | --- foo2zjs.orig/hplj10xx.rules2007-02-11 11:02:46.000000000 +0100 | ||
178 | +++ foo2zjs/hplj10xx.rules2007-02-11 11:12:11.000000000 +0100 | ||
179 | @@ -1,8 +1,8 @@ | ||
180 | #Own udev rule for HP Laserjet 1000 | ||
181 | -KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", SYSFS{product}=="hp LaserJet 1000", NAME="usb/%k", SYMLINK+="hplj1000%e", MODE="0666", RUN+="/etc/hotplug/usb/hplj1000" | ||
182 | +KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", SYSFS{idProduct}=="0517", NAME="usb/%k", SYMLINK+="hplj1000%e", MODE="0660", GROUP="lp", RUN+="/sbin/foo2zjs-loadfw 1000" | ||
183 | #Own udev rule for HP Laserjet 1005 | ||
184 | -KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", SYSFS{product}=="hp LaserJet 1005 series", NAME="usb/%k", SYMLINK+="hplj1005%e", MODE="0666", RUN+="/etc/hotplug/usb/hplj1005" | ||
185 | +KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", SYSFS{idProduct}=="1317", NAME="usb/%k", SYMLINK+="hplj1005%e", MODE="0660", GROUP="lp", RUN+="/sbin/foo2zjs-loadfw 1005" | ||
186 | #Own udev rule for HP Laserjet 1018 | ||
187 | -KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", SYSFS{product}=="HP LaserJet 1018", NAME="usb/%k", SYMLINK+="hplj1018%e", MODE="0666", RUN+="/etc/hotplug/usb/hplj1018" | ||
188 | +KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", SYSFS{idProduct}=="4117", NAME="usb/%k", SYMLINK+="hplj1018%e", MODE="0660", GROUP="lp", RUN+="/sbin/foo2zjs-loadfw 1018" | ||
189 | #Own udev rule for HP Laserjet 1020 | ||
190 | -KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", SYSFS{product}=="HP LaserJet 1020", NAME="usb/%k", SYMLINK+="hplj1020%e", MODE="0666", RUN+="/etc/hotplug/usb/hplj1020" | ||
191 | +KERNEL=="lp*", BUS=="usb", SYSFS{idVendor}=="03f0", SYSFS{idProduct}=="2b17", NAME="usb/%k", SYMLINK+="hplj1020%e", MODE="0660", GROUP="lp", RUN+="/sbin/foo2zjs-loadfw 1020" | ||