summary refs log tree commit diff
diff options
context:
space:
mode:
authorCillian de Roiste <cillian.deroiste@gmail.com>2011-01-27 21:10:41 +0000
committerCillian de Roiste <cillian.deroiste@gmail.com>2011-01-27 21:10:41 +0000
commita393fe50ad2882f58d8060072221fb124ed33dc1 (patch)
treefec211f7bc0045a25844fa70b639b57a1b37b3ea
parent5fab1d50c426216e152e02d28f4716918849c1e1 (diff)
downloadnixpkgs-a393fe50ad2882f58d8060072221fb124ed33dc1.tar
nixpkgs-a393fe50ad2882f58d8060072221fb124ed33dc1.tar.gz
nixpkgs-a393fe50ad2882f58d8060072221fb124ed33dc1.tar.bz2
nixpkgs-a393fe50ad2882f58d8060072221fb124ed33dc1.tar.lz
nixpkgs-a393fe50ad2882f58d8060072221fb124ed33dc1.tar.xz
nixpkgs-a393fe50ad2882f58d8060072221fb124ed33dc1.tar.zst
nixpkgs-a393fe50ad2882f58d8060072221fb124ed33dc1.zip
Bumping xf86-input-wacom to version 0.10.10, updating udev rules for modern udev
svn path=/nixpkgs/trunk/; revision=25706
-rw-r--r--pkgs/os-specific/linux/xf86-input-wacom/10-wacom.rules17
-rw-r--r--pkgs/os-specific/linux/xf86-input-wacom/default.nix20
2 files changed, 25 insertions, 12 deletions
diff --git a/pkgs/os-specific/linux/xf86-input-wacom/10-wacom.rules b/pkgs/os-specific/linux/xf86-input-wacom/10-wacom.rules
index ac7632a776d..260788c4538 100644
--- a/pkgs/os-specific/linux/xf86-input-wacom/10-wacom.rules
+++ b/pkgs/os-specific/linux/xf86-input-wacom/10-wacom.rules
@@ -1,3 +1,16 @@
-# udev rule to create /dev/input/wacomN for wacom tablets
+# From http://linuxwacom.sourceforge.net/index.php/howto/newwacom
+# udev rules for wacom tablets.
 
-KERNEL="event*", SYSFS{manufacturer}="WACOM", NAME="input/%k", SYMLINK="input/wacom%e"
+KERNEL!="event[0-9]*", GOTO="wacom_end"
+# Multiple interface support for stylus and touch devices.
+DRIVERS=="wacom", ATTRS{bInterfaceNumber}=="00", ENV{WACOM_TYPE}="stylus"
+DRIVERS=="wacom", ATTRS{bInterfaceNumber}=="01", ENV{WACOM_TYPE}="touch"
+# Convenience links for the common case of a single tablet. We could do just this:
+#ATTRS{idVendor}=="056a", SYMLINK+="input/wacom-$env{WACOM_TYPE}"
+# but for legacy reasons, we keep the input/wacom link as the generic stylus device.
+ATTRS{idVendor}=="056a", ENV{WACOM_TYPE}!="touch", SYMLINK+="input/wacom"
+ATTRS{idVendor}=="056a", ENV{WACOM_TYPE}=="touch", SYMLINK+="input/wacom-touch"
+# Check and repossess the device if a module other than the wacom one
+# is already bound to it.
+ATTRS{idVendor}=="056a", ACTION=="add", RUN+="check_driver wacom $devpath $env{ID_BUS}"
+LABEL="wacom_end"
diff --git a/pkgs/os-specific/linux/xf86-input-wacom/default.nix b/pkgs/os-specific/linux/xf86-input-wacom/default.nix
index 05993ad7b48..b7b89aa90ec 100644
--- a/pkgs/os-specific/linux/xf86-input-wacom/default.nix
+++ b/pkgs/os-specific/linux/xf86-input-wacom/default.nix
@@ -1,28 +1,28 @@
 { stdenv, fetchurl, libX11, libXi, inputproto, file
-, xproto, ncurses, pkgconfig, xorgserver }:
+, xproto, ncurses, pkgconfig, xorgserver, 
+libXext, libXrandr, randrproto, libXrender }:
 
 stdenv.mkDerivation rec {
-  name = "xf86-input-wacom-0.10.5";
+  name = "xf86-input-wacom-0.10.10";
 
   src = fetchurl {
     url = "mirror://sourceforge/linuxwacom/${name}.tar.bz2";
-    sha256 = "07rg9a9n1dyjff4awlc5imy44y0lg59qs8h4rr56lgjg612wkmy0";
+    sha256 = "03yggp2ww64va6gmasl0gy0rbfcyb1zlj9kapp9kvhk2j4458fdr";
   };
 
   buildInputs = [ libX11 libXi inputproto xproto ncurses pkgconfig xorgserver
-    file ];
-
-  patchPhase="sed -e s@/usr/bin/file@${file}/bin/file@g -i configure";
+    file libXext libXrandr libXrender randrproto ];
 
   preConfigure = ''
-    configureFlags="--with-xorg-module-dir=$out/lib/xorg/modules/input
-    --with-sdkdir=$out/include/xorg"
+    ensureDir $out/share/X11/xorg.conf.d
+    configureFlags="--with-xorg-module-dir=$out/lib/xorg/modules
+    --with-sdkdir=$out/include/xorg --with-xorg-conf-dir=$out/share/X11/xorg.conf.d"
   '';
 
   postInstall =
     ''
-      ensureDir $out/etc/udev/rules.d
-      cp ${./10-wacom.rules} $out/etc/udev/rules.d/10-wacom.rules
+      ensureDir $out/lib/udev/rules.d
+      cp ${./10-wacom.rules} $out/lib/udev/rules.d/10-wacom.rules
     '';
 
   meta = with stdenv.lib; {