c9baba9212
(My OCD kicked in today...) Remove repeated package names, capitalize first word, remove trailing periods and move overlong descriptions to longDescription. I also simplified some descriptions as well, when they were particularly long or technical, often based on Arch Linux' package descriptions. I've tried to stay away from generated expressions (and I think I succeeded). Some specifics worth mentioning: * cron, has "Vixie Cron" in its description. The "Vixie" part is not mentioned anywhere else. I kept it in a parenthesis at the end of the description. * ctags description started with "Exuberant Ctags ...", and the "exuberant" part is not mentioned elsewhere. Kept it in a parenthesis at the end of description. * nix has the description "The Nix Deployment System". Since that doesn't really say much what it is/does (especially after removing the package name!), I changed that to "Powerful package manager that makes package management reliable and reproducible" (borrowed from nixos.org). * Tons of "GNU Foo, Foo is a [the important bits]" descriptions is changed to just [the important bits]. If the package name doesn't contain GNU I don't think it's needed to say it in the description either.
45 lines
2.0 KiB
Nix
45 lines
2.0 KiB
Nix
{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 = "An international dictionary supporting fuzzy and glob style matching";
|
|
license = stdenv.lib.licenses.lgpl3;
|
|
maintainers = with stdenv.lib.maintainers; [qknight];
|
|
};
|
|
}
|