{ stdenv, lib, fetchFromGitHub, glib, gobject-introspection, intltool, shared-mime-info, gtk3, wrapGAppsHook3, libarchive, libxml2, xapp, meson, pkg-config, cairo, libsecret, poppler, libspectre, libgxps, webkitgtk_4_1, nodePackages, ninja, djvulibre, backends ? [ "pdf" "ps" # "dvi" "t1lib" "djvu" "tiff" "pixbuf" "comics" "xps" "epub" ], }: stdenv.mkDerivation rec { pname = "xreader"; version = "4.2.3"; src = fetchFromGitHub { owner = "linuxmint"; repo = pname; rev = version; hash = "sha256-qBnnxygkAn1wF3gtqR0At1e1e+sx1/2MoSWqmshW5Qg="; }; nativeBuildInputs = [ shared-mime-info wrapGAppsHook3 meson ninja pkg-config gobject-introspection intltool ]; mesonFlags = [ "-Dmathjax-directory=${nodePackages.mathjax}" ] ++ (map (x: "-D${x}=true") backends); buildInputs = [ glib gtk3 xapp cairo libarchive libxml2 libsecret poppler libspectre libgxps webkitgtk_4_1 nodePackages.mathjax djvulibre ]; meta = with lib; { description = "Document viewer capable of displaying multiple and single page document formats like PDF and Postscript"; homepage = "https://github.com/linuxmint/xreader"; license = licenses.gpl2Plus; platforms = platforms.linux; maintainers = teams.cinnamon.members; }; }