···1+{stdenv, fetchurl, automake, autoconf, x11}:
2+3+stdenv.mkDerivation {
4+ name = "libstroke-0.5.1";
5+6+ src = fetchurl {
7+ url = http://etla.net/libstroke/libstroke-0.5.1.tar.gz;
8+ sha256 = "0da9f5fde66feaf6697ba069baced8fb3772c3ddc609f39861f92788f5c7772d";
9+ };
10+11+ buildInputs = [ automake autoconf x11 ];
12+13+ # libstroke ships with an ancient config.sub that doesn't know about x86_64, so regenerate it.
14+ # Also, modern automake doesn't like things and returns error code 63. But it generates the file.
15+ preConfigure = ''
16+ rm config.sub
17+ autoconf
18+ automake -a || true
19+ '';
20+21+ meta = {
22+ description = "libstroke, a library for simple gesture recognition";
23+ homepage = http://etla.net/libstroke/;
24+ license = stdenv.lib.licenses.gpl2;
25+26+ longDescription =
27+ '' libstroke, last updated in 2001, still successfully provides a basic
28+ gesture recognition engine based around a 3x3 grid. It's simple and
29+ easy to work with, and notably used by FVWM.
30+ '';
31+32+ };
33+}