about summary refs log tree commit diff
path: root/pkgs/applications/misc/stardict/stardict.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/misc/stardict/stardict.nix')
-rw-r--r--pkgs/applications/misc/stardict/stardict.nix46
1 files changed, 46 insertions, 0 deletions
diff --git a/pkgs/applications/misc/stardict/stardict.nix b/pkgs/applications/misc/stardict/stardict.nix
new file mode 100644
index 000000000000..9eb3e1123421
--- /dev/null
+++ b/pkgs/applications/misc/stardict/stardict.nix
@@ -0,0 +1,46 @@
+{stdenv, fetchurl, pkgconfig, gtk, glib, zlib, libxml2, intltool, gnome_doc_utils, libgnomeui, scrollkeeper, mysql, pcre, which, libxslt}:
+stdenv.mkDerivation rec {
+  name= "stardict-3.0.3";
+
+  src = fetchurl {
+    url = "http://stardict-3.googlecode.com/files/${name}.tar.bz2";
+    sha256 = "0wrb8xqy6x9piwrn0vw5alivr9h3b70xlf51qy0jpl6d7mdhm8cv";
+  };
+
+  buildInputs = [ pkgconfig gtk glib zlib libxml2 intltool gnome_doc_utils libgnomeui scrollkeeper mysql pcre which libxslt];
+
+  postPatch = ''
+    # mysql hacks: we need dynamic linking as there is no libmysqlclient.a
+    substituteInPlace tools/configure --replace '/usr/local/include/mysql' '${mysql}/include/mysql/'
+    substituteInPlace tools/configure --replace 'AC_FIND_FILE([libmysqlclient.a]' 'AC_FIND_FILE([libmysqlclient.so]'
+    substituteInPlace tools/configure --replace '/usr/local/lib/mysql' '${mysql}/lib/mysql/'
+    substituteInPlace tools/configure --replace 'for y in libmysqlclient.a' 'for y in libmysqlclient.so'
+    substituteInPlace tools/configure --replace 'libmysqlclient.a' 'libmysqlclient.so'
+
+    # a list of p0 patches from gentoo devs
+    patch -p0 < ${./stardict-3.0.3-overflow.patch}
+    patch -p0 < ${./stardict-3.0.3-gcc46.patch}
+    patch -p0 < ${./stardict-3.0.3-compositelookup_cpp.patch}
+    patch -p0 < ${./stardict-3.0.3-correct-glib-include.patch}
+    patch -p0 < ${./stardict-3.0.3-entry.patch}
+
+    # disable the xsltproc internet query
+    substituteInPlace dict/help/Makefile.am --replace 'xsltproc -o' 'xsltproc --nonet -o'
+    substituteInPlace dict/help/Makefile.in --replace 'xsltproc -o' 'xsltproc --nonet -o'
+  '';
+
+  # another gentoo patch: a p1 patch
+  patches = [ ./stardict-3.0.3-zlib-1.2.5.2.patch ];
+
+  configurePhase = ''
+    ./configure --disable-spell --disable-gucharmap --disable-festival --disable-espeak --disable-scrollkeeper --prefix=$out
+  '';
+
+  meta = {
+    description = "stardict";
+    homepage = "A international dictionary supporting fuzzy and glob style matching";
+    license = "LGPL3";
+    maintainers = with stdenv.lib.maintainers; [qknight];
+  };
+}
+