nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, pkg-config, pcre, libxkbcommon, libepoxy
2, gtk3, poppler, freetype, libpthreadstubs, libXdmcp, libxshmfence, wrapGAppsHook
3}:
4
5stdenv.mkDerivation rec {
6 version = "0.1.5";
7 pname = "apvlv";
8
9 src = fetchFromGitHub {
10 owner = "naihe2010";
11 repo = "apvlv";
12 rev = "v${version}";
13 sha256 = "1n4xiic8lqnv3mqi7wpdv866gyyakax71gffv3n9427rmcld465i";
14 };
15
16 env.NIX_CFLAGS_COMPILE = "-I${poppler.dev}/include/poppler";
17
18 nativeBuildInputs = [
19 cmake
20 pkg-config
21 wrapGAppsHook
22 ];
23
24 buildInputs = [
25 poppler pcre libxkbcommon libepoxy
26 freetype gtk3
27 libpthreadstubs libXdmcp libxshmfence # otherwise warnings in compilation
28 ];
29
30 patches = [
31 (fetchpatch {
32 url = "https://github.com/naihe2010/apvlv/commit/d432635b9c5ea6c052a2ae1fb71aedec5c4ad57a.patch";
33 sha256 = "1am8dgv2kkpqmm2vaysa61czx8ppdx94zb3c59sx88np50jpy70w";
34 })
35 (fetchpatch {
36 url = "https://github.com/naihe2010/apvlv/commit/4c7a583e8431964def482e5471f02e6de8e62a7b.patch";
37 sha256 = "1dszm120lwm90hcg5zmd4vr6pjyaxc84qmb7k0fr59mmb3qif62j";
38 })
39 # fix build with gcc7
40 (fetchpatch {
41 url = "https://github.com/naihe2010/apvlv/commit/a3a895772a27d76dab0c37643f0f4c73f9970e62.patch";
42 sha256 = "1fpc7wr1ajilvwi5gjsy5g9jcx4bl03gp5dmajg90ljqbhwz2bfi";
43 })
44 ./fix-build-with-poppler-0.73.0.patch
45 ];
46
47 installPhase = ''
48 # binary
49 mkdir -p $out/bin
50 cp src/apvlv $out/bin/apvlv
51
52 # displays pdfStartup.pdf as default pdf entry
53 mkdir -p $out/share/doc/apvlv/
54 cp ../Startup.pdf $out/share/doc/apvlv/Startup.pdf
55 cp ../main_menubar.glade $out/share/doc/apvlv/main_menubar.glade
56 ''
57 + lib.optionalString (!stdenv.isDarwin) ''
58 install -D ../apvlv.desktop $out/share/applications/apvlv.desktop
59 '';
60
61 meta = with lib; {
62 homepage = "http://naihe2010.github.io/apvlv/";
63 description = "PDF viewer with Vim-like behaviour";
64 longDescription = ''
65 apvlv is a PDF/DJVU/UMD/TXT Viewer Under Linux/WIN32
66 with Vim-like behaviour.
67 '';
68
69 license = licenses.lgpl2;
70 platforms = platforms.linux;
71 maintainers = [ maintainers.ardumont ];
72 };
73
74}