anvil-editor: init at 0.4
[NixPkgs.git] / pkgs / applications / misc / zathura / wrapper.nix
blob4290fff26bcf61e4751f45be337346337e9b4217
2   symlinkJoin,
3   lib,
4   makeWrapper,
5   zathura_core,
6   zathura_djvu,
7   zathura_ps,
8   zathura_cb,
9   zathura_pdf_mupdf,
10   zathura_pdf_poppler,
11   file,
12   useMupdf,
13   plugins ? [
14     zathura_djvu
15     zathura_ps
16     zathura_cb
17     (if useMupdf then zathura_pdf_mupdf else zathura_pdf_poppler)
18   ],
20 symlinkJoin {
21   name = "zathura-with-plugins-${zathura_core.version}";
23   paths =
24     with zathura_core;
25     [
26       man
27       dev
28       out
29     ]
30     ++ plugins;
32   nativeBuildInputs = [ makeWrapper ];
34   postBuild =
35     let
36       fishCompletion = "share/fish/vendor_completions.d/zathura.fish";
37     in
38     ''
39       makeWrapper ${zathura_core.bin}/bin/zathura $out/bin/zathura \
40         --prefix PATH ":" "${lib.makeBinPath [ file ]}" \
41         --prefix ZATHURA_PLUGINS_PATH : "$out/lib/zathura"
43       # zathura fish completion references the zathura_core derivation to
44       # check for supported plugins which live in the wrapper derivation,
45       # so we need to fix the path to reference $out instead.
46       rm "$out/${fishCompletion}"
47       substitute "${zathura_core.out}/${fishCompletion}" "$out/${fishCompletion}" \
48         --replace "${zathura_core.out}" "$out"
49     '';
51   meta = with lib; {
52     homepage = "https://pwmt.org/projects/zathura/";
53     description = "Highly customizable and functional PDF viewer";
54     longDescription = ''
55       Zathura is a highly customizable and functional PDF viewer based on the
56       poppler rendering library and the GTK toolkit. The idea behind zathura
57       is an application that provides a minimalistic and space saving interface
58       as well as an easy usage that mainly focuses on keyboard interaction.
59     '';
60     license = licenses.zlib;
61     platforms = platforms.unix;
62     maintainers = with maintainers; [
63       smironov
64       globin
65       TethysSvensson
66     ];
67     mainProgram = "zathura";
68   };