about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/tools/X11/xnee/default.nix71
-rw-r--r--pkgs/top-level/all-packages.nix8
2 files changed, 50 insertions, 29 deletions
diff --git a/pkgs/tools/X11/xnee/default.nix b/pkgs/tools/X11/xnee/default.nix
index a35812f22a53..229c0a32eb42 100644
--- a/pkgs/tools/X11/xnee/default.nix
+++ b/pkgs/tools/X11/xnee/default.nix
@@ -1,31 +1,54 @@
-args :  
-let 
-  fetchurl = args.fetchurl;
-  lib=args.lib;
-
-  version = lib.attrByPath ["version"] "3.01" args; 
-  buildInputs = with args; [
-    libX11 xproto libXext xextproto libXtst gtk
-    libXi inputproto pkgconfig recordproto 
-  ];
-in
-rec {
+{ fetchurl, stdenv, libX11, xproto, libXext, xextproto, libXtst
+, gtk, libXi, inputproto, pkgconfig, recordproto, texinfo }:
+
+stdenv.mkDerivation rec {
+  name = "xnee-3.08";
+
   src = fetchurl {
-    url = "mirror://gnu/xnee/Xnee-${version}.tar.gz";
-    sha256 = "1g6wq1hjrmx102gg768nfs8a1ck77g5fn4pmprpsz9123xl4d181";
+    url = "mirror://gnu/xnee/${name}.tar.gz";
+    sha256 = "0lyznw4j7l2zrd46423cq2ahsp55s8j3phprgkrv0sm18y232yf7";
   };
 
-  inherit buildInputs;
-  configureFlags = [
-    "--disable-gnome-applet"
-  ];
+  patchPhase =
+    '' for i in `find cnee/test -name \*.sh`
+       do
+         sed -i "$i" -e's|/bin/bash|/bin/sh|g'
+       done
+    '';
+
+  buildInputs =
+    [ libX11 xproto libXext xextproto libXtst gtk
+      libXi inputproto pkgconfig recordproto
+      texinfo
+    ];
+
+  configureFlags =
+    # Do a static build because `libxnee' doesn't get installed anyway.
+    [ "--disable-gnome-applet" "--disable-shared" "--enable-static" ];
+
+  # `cnee' is linked without `-lXi' and as a consequence has a RUNPATH that
+  # lacks libXi.
+  makeFlags = "LDFLAGS=-lXi";
+
+  # XXX: Actually tests require an X server.
+  doCheck = true;
 
-  /* doConfigure should be specified separately */
-  phaseNames = ["doConfigure" "doMakeInstall"];
-      
-  name = "xnee-" + version;
   meta = {
-    description = "X event recording and replay tool.";
+    description = "GNU Xnee, an X11 event recording and replay tool";
+
+    longDescription =
+      '' Xnee is a suite of programs that can record, replay and distribute
+         user actions under the X11 environment.  Think of it as a robot that
+         can imitate the job you just did.  Xnee can be used to automate
+         tests, demonstrate programs, distribute actions, record & replay
+         "macros", retype a file.
+      '';
+
+    license = "GPLv3+";
+
+    homepage = http://www.gnu.org/software/xnee/;
+
+    maintainers = [ stdenv.lib.maintainers.ludo ];
+    platforms = stdenv.lib.platforms.gnu;  # arbitrary choice
   };
 }
-
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index dabb47ca06d2..7094285fc34d 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -6836,11 +6836,9 @@ let
 
   xmove = callPackage ../applications/misc/xmove { };
 
-  xnee = builderDefsPackage (import ../tools/X11/xnee) {
-    inherit (gtkLibs) gtk;
-    inherit (xlibs) libX11 libXtst xextproto libXext
-      inputproto libXi xproto recordproto;
-    inherit pkgconfig;
+  xnee = callPackage ../tools/X11/xnee {
+    # Work around "missing separator" error.
+    stdenv = overrideInStdenv stdenv [ gnumake381 ];
   };
 
   xvidcap = callPackage ../applications/video/xvidcap {