nixpkgs/pkgs/desktops/gnome-3/core/evince/default.nix

71 lines
2.5 KiB
Nix
Raw Normal View History

2013-01-29 09:20:14 +01:00
{ fetchurl, stdenv, pkgconfig, intltool, perl, perlXMLParser, libxml2
, glib, gtk3, pango, atk, gdk_pixbuf, shared_mime_info, itstool, gnome3
, poppler, ghostscriptX, djvulibre, libspectre, libsecret , makeWrapper
, librsvg, recentListSize ? null # 5 is not enough, allow passing a different number
2014-04-07 23:53:07 +02:00
, gobjectIntrospection
2013-01-29 09:20:14 +01:00
}:
stdenv.mkDerivation rec {
name = "evince-3.10.3";
2013-01-29 09:20:14 +01:00
src = fetchurl {
url = "mirror://gnome/sources/evince/3.10/${name}.tar.xz";
sha256 = "1bz9ypsvlfw1vgs7i5glba1h1n6c90f0d1g64linhg6xjcxcq3dk";
2013-01-29 09:20:14 +01:00
};
buildInputs = [
pkgconfig intltool perl perlXMLParser libxml2
2014-04-07 23:53:07 +02:00
glib gtk3 pango atk gdk_pixbuf gobjectIntrospection
2014-02-28 01:40:04 +01:00
itstool gnome3.gnome_icon_theme gnome3.gnome_icon_theme_symbolic
gnome3.libgnome_keyring gnome3.gsettings_desktop_schemas
2013-01-29 09:20:14 +01:00
poppler ghostscriptX djvulibre libspectre
2014-02-28 01:40:04 +01:00
makeWrapper libsecret librsvg
2013-01-29 09:20:14 +01:00
];
configureFlags = [
"--disable-nautilus" # Do not use nautilus
2014-04-07 23:53:07 +02:00
"--enable-introspection"
2013-01-29 09:20:14 +01:00
];
2014-02-28 01:40:04 +01:00
NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";
2013-01-29 09:20:14 +01:00
preConfigure = with stdenv.lib;
optionalString doCheck ''
for file in test/*.py; do
echo "patching $file"
sed '1s,/usr,${python},' -i "$file"
done
'' + optionalString (recentListSize != null) ''
sed -i 's/\(gtk_recent_chooser_set_limit .*\)5)/\1${builtins.toString recentListSize})/' shell/ev-open-recent-action.c
sed -i 's/\(if (++n_items == \)5\(.*\)/\1${builtins.toString recentListSize}\2/' shell/ev-window.c
'';
preFixup = ''
2013-01-29 09:20:14 +01:00
# Tell Glib/GIO about the MIME info directory, which is used
# by `g_file_info_get_content_type ()'.
wrapProgram "$out/bin/evince" \
2014-02-28 01:40:04 +01:00
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gtk3}/share:${shared_mime_info}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
rm $out/share/icons/hicolor/icon-theme.cache
2014-01-09 14:19:28 +01:00
'';
2013-01-29 09:20:14 +01:00
doCheck = false; # would need pythonPackages.dogTail, which is missing
meta = with stdenv.lib; {
2013-01-29 09:20:14 +01:00
homepage = http://www.gnome.org/projects/evince/;
description = "GNOME's document viewer";
longDescription = ''
Evince is a document viewer for multiple document formats. It
currently supports PDF, PostScript, DjVu, TIFF and DVI. The goal
of Evince is to replace the multiple document viewers that exist
on the GNOME Desktop with a single simple application.
'';
license = "GPLv2+";
platforms = platforms.linux;
maintainers = [ maintainers.vcunat ];
2013-01-29 09:20:14 +01:00
};
}