Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / applications / misc / pdfpc / default.nix
blob0fa676bdfb4b7683f9bccce53a393605c8780b65
1 { lib, stdenv, fetchFromGitHub, cmake, pkg-config, vala, gtk3, libgee
2 , poppler, libpthreadstubs, gstreamer, gst-plugins-base, gst-plugins-good, gst-libav, gobject-introspection, wrapGAppsHook
3 , qrencode, webkitgtk, discount, json-glib, fetchpatch }:
5 stdenv.mkDerivation rec {
6   pname = "pdfpc";
7   version = "4.6.0";
9   src = fetchFromGitHub {
10     repo = "pdfpc";
11     owner = "pdfpc";
12     rev = "v${version}";
13     hash = "sha256-5HFmbVsNajMwo+lBe9kJcJyQGe61N6Oy2CI/WJwmSE4=";
14   };
16   nativeBuildInputs = [
17     cmake pkg-config vala
18     # For setup hook
19     gobject-introspection
20     wrapGAppsHook
21   ];
23   buildInputs = [
24     gtk3 libgee poppler
25     libpthreadstubs
26     gstreamer
27     gst-plugins-base
28     (gst-plugins-good.override { gtkSupport = true; })
29     gst-libav
30     qrencode
31     webkitgtk
32     discount
33     json-glib
34   ];
36   patches = [
37     # needed for compiling pdfpc 4.6.0 with vala 0.56.7, see
38     # https://github.com/pdfpc/pdfpc/issues/686
39     # https://github.com/pdfpc/pdfpc/pull/687
40     (fetchpatch {
41       url = "https://github.com/pdfpc/pdfpc/commit/d38edfac63bec54173b4b31eae5c7fb46cd8f714.diff";
42       hash = "sha256-KC2oyzcwU2fUmxaed8qAsKcePwR5KcXgpVdstJg8KmU=";
43     })
44   ];
46   cmakeFlags = lib.optional stdenv.isDarwin "-DMOVIES=OFF";
48   meta = with lib; {
49     description = "A presenter console with multi-monitor support for PDF files";
50     homepage = "https://pdfpc.github.io/";
51     license = licenses.gpl3Plus;
52     maintainers = with maintainers; [ pSub ];
53     platforms = platforms.unix;
54   };