summary refs log tree commit diff
path: root/pkgs/desktops/gnome-3/3.18/core/evince/default.nix
diff options
context:
space:
mode:
authorWilliam A. Kennington III <william@wkennington.com>2015-11-13 15:53:10 -0800
committerWilliam A. Kennington III <william@wkennington.com>2015-11-13 15:53:10 -0800
commit9579c9ec7f53be31efba3803bd86661b59b0bb81 (patch)
treee9e9ec19c0989f18d96ec0b8c6faf3780eb3dfb1 /pkgs/desktops/gnome-3/3.18/core/evince/default.nix
parent83aeb00a78ebca04bd6a42721284cad87da9fabe (diff)
parentcb21b77ff1b9ed006d1180ad7c94b2ee7ed3c096 (diff)
downloadnixpkgs-9579c9ec7f53be31efba3803bd86661b59b0bb81.tar
nixpkgs-9579c9ec7f53be31efba3803bd86661b59b0bb81.tar.gz
nixpkgs-9579c9ec7f53be31efba3803bd86661b59b0bb81.tar.bz2
nixpkgs-9579c9ec7f53be31efba3803bd86661b59b0bb81.tar.lz
nixpkgs-9579c9ec7f53be31efba3803bd86661b59b0bb81.tar.xz
nixpkgs-9579c9ec7f53be31efba3803bd86661b59b0bb81.tar.zst
nixpkgs-9579c9ec7f53be31efba3803bd86661b59b0bb81.zip
Merge commit 'cb21b77' into master.upstream
This is a partial merge of staging for builds which are working
Diffstat (limited to 'pkgs/desktops/gnome-3/3.18/core/evince/default.nix')
-rw-r--r--pkgs/desktops/gnome-3/3.18/core/evince/default.nix64
1 files changed, 64 insertions, 0 deletions
diff --git a/pkgs/desktops/gnome-3/3.18/core/evince/default.nix b/pkgs/desktops/gnome-3/3.18/core/evince/default.nix
new file mode 100644
index 00000000000..154182eef88
--- /dev/null
+++ b/pkgs/desktops/gnome-3/3.18/core/evince/default.nix
@@ -0,0 +1,64 @@
+{ 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
+, gobjectIntrospection
+}:
+
+stdenv.mkDerivation rec {
+  inherit (import ./src.nix fetchurl) name src;
+
+  buildInputs = [
+    pkgconfig intltool perl perlXMLParser libxml2
+    glib gtk3 pango atk gdk_pixbuf gobjectIntrospection
+    itstool gnome3.adwaita-icon-theme
+    gnome3.libgnome_keyring gnome3.gsettings_desktop_schemas
+    poppler ghostscriptX djvulibre libspectre
+    makeWrapper libsecret librsvg gnome3.adwaita-icon-theme
+  ];
+
+  configureFlags = [
+    "--disable-nautilus" # Do not use nautilus
+    "--enable-introspection"
+  ];
+
+  NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";
+
+  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 = ''
+    # Tell Glib/GIO about the MIME info directory, which is used
+    # by `g_file_info_get_content_type ()'.
+    wrapProgram "$out/bin/evince" \
+      --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"
+
+  '';
+
+  doCheck = false; # would need pythonPackages.dogTail, which is missing
+
+  meta = with stdenv.lib; {
+    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 = stdenv.lib.licenses.gpl2Plus;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.vcunat ];
+  };
+}