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.
70 lines
2.6 KiB
Nix
70 lines
2.6 KiB
Nix
{ fetchurl, stdenv, libtool, gettext, zlib, bzip2, flac, libvorbis
|
|
, exiv2, libgsf, rpm, pkgconfig
|
|
, gtkSupport ? true, glib ? null, gtk3 ? null
|
|
, videoSupport ? true, ffmpeg ? null, libmpeg2 ? null}:
|
|
|
|
assert gtkSupport -> glib != null && gtk3 != null;
|
|
assert videoSupport -> ffmpeg != null && libmpeg2 != null;
|
|
|
|
stdenv.mkDerivation rec {
|
|
name = "libextractor-1.2";
|
|
|
|
src = fetchurl {
|
|
url = "mirror://gnu/libextractor/${name}.tar.gz";
|
|
sha256 = "1n7z6s5ils6xmf6b0z1xda41maxj94c1n6wlyyxmacs5lrkh2a96";
|
|
};
|
|
|
|
preConfigure =
|
|
'' echo "patching installation directory in \`extractor.c'..."
|
|
sed -i "src/main/extractor.c" \
|
|
-e "s|pexe[[:blank:]]*=.*$|pexe = strdup(\"$out/lib/\");|g"
|
|
'';
|
|
|
|
buildInputs =
|
|
[ libtool gettext zlib bzip2 flac libvorbis exiv2
|
|
libgsf rpm
|
|
pkgconfig
|
|
] ++ stdenv.lib.optionals gtkSupport [ glib gtk3 ]
|
|
++ stdenv.lib.optionals videoSupport [ ffmpeg libmpeg2 ];
|
|
|
|
configureFlags = "--disable-ltdl-install "
|
|
+ "--with-ltdl-include=${libtool}/include "
|
|
+ "--with-ltdl-lib=${libtool}/lib "
|
|
+ "--enable-xpdf";
|
|
|
|
# Checks need to be run after "make install", otherwise plug-ins are not in
|
|
# the search path, etc.
|
|
# FIXME: Tests currently fail and the test framework appears to be deeply
|
|
# broken anyway.
|
|
doCheck = false;
|
|
#postInstall = "make check";
|
|
|
|
meta = {
|
|
description = "Simple library for keyword extraction";
|
|
|
|
longDescription =
|
|
'' GNU libextractor is a library used to extract meta-data from files
|
|
of arbitrary type. It is designed to use helper-libraries to perform
|
|
the actual extraction, and to be trivially extendable by linking
|
|
against external extractors for additional file types.
|
|
|
|
The goal is to provide developers of file-sharing networks or
|
|
WWW-indexing bots with a universal library to obtain simple keywords
|
|
to match against queries. libextractor contains a shell-command
|
|
extract that, similar to the well-known file command, can extract
|
|
meta-data from a file an print the results to stdout.
|
|
|
|
Currently, libextractor supports the following formats: HTML, PDF,
|
|
PS, OLE2 (DOC, XLS, PPT), OpenOffice (sxw), StarOffice (sdw), DVI,
|
|
MAN, FLAC, MP3 (ID3v1 and ID3v2), NSF(E) (NES music), SID (C64
|
|
music), OGG, WAV, EXIV2, JPEG, GIF, PNG, TIFF, DEB, RPM, TAR(.GZ),
|
|
ZIP, ELF, S3M (Scream Tracker 3), XM (eXtended Module), IT (Impulse
|
|
Tracker), FLV, REAL, RIFF (AVI), MPEG, QT and ASF. Also, various
|
|
additional MIME types are detected.
|
|
'';
|
|
|
|
license = stdenv.lib.licenses.gpl2Plus;
|
|
|
|
maintainers = [ ];
|
|
};
|
|
}
|