Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / applications / misc / zathura / wrapper.nix
blob60ff0bd688546d95af8fc50a78dbb5a6a1d1254a
1 { symlinkJoin, lib, makeWrapper, zathura_core, file, plugins ? [] }:
2 symlinkJoin {
3   name = "zathura-with-plugins-${zathura_core.version}";
5   paths = with zathura_core; [ man dev out ] ++ plugins;
7   nativeBuildInputs = [ makeWrapper ];
9   postBuild = let
10     fishCompletion = "share/fish/vendor_completions.d/zathura.fish";
11   in ''
12     makeWrapper ${zathura_core.bin}/bin/zathura $out/bin/zathura \
13       --prefix PATH ":" "${lib.makeBinPath [ file ]}" \
14       --prefix ZATHURA_PLUGINS_PATH : "$out/lib/zathura"
16     # zathura fish completion references the zathura_core derivation to
17     # check for supported plugins which live in the wrapper derivation,
18     # so we need to fix the path to reference $out instead.
19     rm "$out/${fishCompletion}"
20     substitute "${zathura_core.out}/${fishCompletion}" "$out/${fishCompletion}" \
21       --replace "${zathura_core.out}" "$out"
22   '';
24   meta = with lib; {
25     homepage = "https://git.pwmt.org/pwmt/zathura/";
26     description = "A highly customizable and functional PDF viewer";
27     longDescription = ''
28       Zathura is a highly customizable and functional PDF viewer based on the
29       poppler rendering library and the GTK toolkit. The idea behind zathura
30       is an application that provides a minimalistic and space saving interface
31       as well as an easy usage that mainly focuses on keyboard interaction.
32     '';
33     license = licenses.zlib;
34     platforms = platforms.unix;
35     maintainers = with maintainers; [ smironov globin TethysSvensson ];
36     mainProgram = "zathura";
37   };