summary refs log tree commit diff
path: root/pkgs/misc
diff options
context:
space:
mode:
authorYury G. Kudryashov <urkud.urkud@gmail.com>2011-03-06 16:07:53 +0000
committerYury G. Kudryashov <urkud.urkud@gmail.com>2011-03-06 16:07:53 +0000
commitda4447afd72101206f2e014353a8be0f6967dd48 (patch)
tree84bad5ad828040c34e135386d94dfdfe35eab908 /pkgs/misc
parent513ee9fc4f47c19462156cbe36ecadeb75d80420 (diff)
downloadnixlib-da4447afd72101206f2e014353a8be0f6967dd48.tar
nixlib-da4447afd72101206f2e014353a8be0f6967dd48.tar.gz
nixlib-da4447afd72101206f2e014353a8be0f6967dd48.tar.bz2
nixlib-da4447afd72101206f2e014353a8be0f6967dd48.tar.lz
nixlib-da4447afd72101206f2e014353a8be0f6967dd48.tar.xz
nixlib-da4447afd72101206f2e014353a8be0f6967dd48.tar.zst
nixlib-da4447afd72101206f2e014353a8be0f6967dd48.zip
foo2zjs: less hardcoded paths
svn path=/nixpkgs/trunk/; revision=26179
Diffstat (limited to 'pkgs/misc')
-rw-r--r--pkgs/misc/drivers/foo2zjs/default.nix12
-rw-r--r--pkgs/misc/drivers/foo2zjs/no-hardcode-fw.diff98
2 files changed, 107 insertions, 3 deletions
diff --git a/pkgs/misc/drivers/foo2zjs/default.nix b/pkgs/misc/drivers/foo2zjs/default.nix
index 1bf5651f3752..56c101c08b16 100644
--- a/pkgs/misc/drivers/foo2zjs/default.nix
+++ b/pkgs/misc/drivers/foo2zjs/default.nix
@@ -26,7 +26,10 @@ rec {
   inherit (sourceInfo) name version;
   inherit buildInputs;
 
-  phaseNames = ["fixMakefile" "doMakeDirs" "doMakeInstall" "deployGetWeb"];
+  phaseNames = ["doPatch" "fixHardcodedPaths" "doMakeDirs" "doMakeInstall" "deployGetWeb"];
+
+  patches = [ ./no-hardcode-fw.diff ];
+
   makeFlags = [
       ''PREFIX=$out''
       ''UDEVBIN=$out/bin''
@@ -37,13 +40,16 @@ rec {
       ''FOODB=$out/share/foomatic/db/source''
       ''MODEL=$out/share/cups/model''
   ];
+
   installFlags = [ "install-hotplug" ];
-  fixMakefile = a.fullDepEntry ''
+
+  fixHardcodedPaths = a.fullDepEntry ''
     touch all-test
     sed -e "/BASENAME=/iPATH=$out/bin:$PATH" -i *-wrapper *-wrapper.in
     sed -e '/install-usermap/d' -i Makefile
     sed -e "s@/etc/hotplug/usb@$out&@" -i *rules*
-  '' ["doUnpack" "minInit"];
+    sed -e "/PRINTERID=/s@=.*@=$out/bin/usb_printerid@" -i hplj1000
+  '' ["doPatch" "minInit"];
 
   doMakeDirs = a.fullDepEntry ''
     mkdir -pv $out/{etc/udev/rules.d,lib/udev/rules.d,etc/hotplug/usb}
diff --git a/pkgs/misc/drivers/foo2zjs/no-hardcode-fw.diff b/pkgs/misc/drivers/foo2zjs/no-hardcode-fw.diff
new file mode 100644
index 000000000000..003272858a42
--- /dev/null
+++ b/pkgs/misc/drivers/foo2zjs/no-hardcode-fw.diff
@@ -0,0 +1,98 @@
+#
+#
+# patch "hplj1000"
+#  from [d5336e74866d31735d97874191351a0dcc092b44]
+#    to [55102b37684ee5181674d19d866caec2cf603412]
+#
+============================================================
+--- a/hplj1000	d5336e74866d31735d97874191351a0dcc092b44
++++ b/hplj1000	55102b37684ee5181674d19d866caec2cf603412
+@@ -39,11 +39,6 @@ DEV=""
+ DEV=""
+ 
+ #
+-# Directory to find downloadable HP firmware files sihpMMMM.dl
+-#
+-FWDIR=/usr/share/foo2zjs/firmware
+-
+-#
+ # Program used to determine USB printer id information
+ #
+ # NOTE: /usr/bin is NOT mounted at this point
+@@ -83,57 +78,61 @@ case "$0" in
+     MODEL=P1005; FWMODEL=$MODEL
+     USB1=0x03f0	#Vendor
+     USB2=0x3d17	#Model
+-    FWDIR=/usr/share/foo2xqx/firmware
++    DRIVER=foo2xqx
+     ;;
+ *P1006)
+     MODEL=P1006; FWMODEL=$MODEL
+     USB1=0x03f0	#Vendor
+     USB2=0x3e17	#Model
+-    FWDIR=/usr/share/foo2xqx/firmware
++    DRIVER=foo2xqx
+     ;;
+ *P1007)
+     MODEL=P1007; FWMODEL=P1005		# Alias
+     USB1=0x03f0	#Vendor
+     USB2=0x4817	#Model
+-    FWDIR=/usr/share/foo2xqx/firmware
++    DRIVER=foo2xqx
+     ;;
+ *P1008)
+     MODEL=P1008; FWMODEL=P1006		# Alias
+     USB1=0x03f0	#Vendor
+     USB2=0x4917	#Model
+-    FWDIR=/usr/share/foo2xqx/firmware
++    DRIVER=foo2xqx
+     ;;
+ *P1505)
+     MODEL=P1505; FWMODEL=$MODEL
+     USB1=0x03f0	#Vendor
+     USB2=0x3f17	#Model
+-    FWDIR=/usr/share/foo2xqx/firmware
++    DRIVER=foo2xqx
+     ;;
+ *P1505n)
+     MODEL=P1505n; FWMODEL=$MODEL
+     USB1=0x03f0	#Vendor
+     USB2=0x4017	#Model
+-    FWDIR=/usr/share/foo2xqx/firmware
++    DRIVER=foo2xqx
+     ;;
+ *1000)
+     MODEL=1000; FWMODEL=$MODEL
+     USB1=0x03f0	#Vendor
+     USB2=0x0517	#Model
++    DRIVER=foo2zjs
+     ;;
+ *1005)
+     MODEL=1005; FWMODEL=$MODEL
+     USB1=0x03f0	#Vendor
+     USB2=0x1317	#Model
++    DRIVER=foo2zjs
+     ;;
+ *1018)
+     MODEL=1018; FWMODEL=$MODEL
+     USB1=0x03f0 #Vendor
+     USB2=0x4117 #Model
++    DRIVER=foo2zjs
+     ;;
+ *1020)
+     MODEL=1020; FWMODEL=$MODEL
+     USB1=0x03f0 #Vendor
+     USB2=0x2b17 #Model
++    DRIVER=foo2zjs
+     ;;
+ *)
+     log "Only HP LaserJet 100[05],1018,1020,P100[5678],P1505 are supported"
+@@ -203,7 +202,7 @@ load1() {
+ #
+ load1() {
+     _dev="$1"
+-    fw="$FWDIR/sihp$FWMODEL.dl"
++    fw="${FOO2ZJS_DATADIR:-/usr/share}/$DRIVER/firmware/sihp$FWMODEL.dl"
+     if [ ! -f "$fw" ]; then
+ 	log "Missing HP LaserJet $MODEL firmware file $fw"
+ 	log "...read foo2zjs installation instructions and run ./getweb $MODEL"