nixpkgs/pkgs/applications/misc/pdfpc/default.nix

64 lines
1.8 KiB
Nix

{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, vala, gtk3, libgee
, poppler, libpthreadstubs, gstreamer, gst-plugins-base, gst-plugins-good, gst-libav, gobject-introspection, wrapGAppsHook
, qrencode, webkitgtk, discount, json-glib, fetchpatch }:
stdenv.mkDerivation rec {
pname = "pdfpc";
version = "4.6.0";
src = fetchFromGitHub {
repo = "pdfpc";
owner = "pdfpc";
rev = "v${version}";
hash = "sha256-5HFmbVsNajMwo+lBe9kJcJyQGe61N6Oy2CI/WJwmSE4=";
};
nativeBuildInputs = [
cmake pkg-config vala
# For setup hook
gobject-introspection
wrapGAppsHook
];
buildInputs = [
gtk3 libgee poppler
libpthreadstubs
gstreamer
gst-plugins-base
(gst-plugins-good.override { gtkSupport = true; })
gst-libav
qrencode
webkitgtk
discount
json-glib
];
patches = [
# needed for compiling pdfpc 4.6.0 with vala 0.56.7, see
# https://github.com/pdfpc/pdfpc/issues/686
# https://github.com/pdfpc/pdfpc/pull/687
(fetchpatch {
url = "https://github.com/pdfpc/pdfpc/commit/d38edfac63bec54173b4b31eae5c7fb46cd8f714.diff";
hash = "sha256-KC2oyzcwU2fUmxaed8qAsKcePwR5KcXgpVdstJg8KmU=";
})
# Allow compiling with markdown3
# https://github.com/pdfpc/pdfpc/pull/716
(fetchpatch {
url = "https://github.com/pdfpc/pdfpc/commit/08e66b9d432e9598c1ee9a78b2355728036ae1a1.patch";
hash = "sha256-SKH2GQ5/6Is36xOFmSs89Yw/w7Fnma3FrNqwjOlUQKM=";
})
];
cmakeFlags = lib.optional stdenv.isDarwin (lib.cmakeBool "MOVIES" false);
meta = with lib; {
description = "A presenter console with multi-monitor support for PDF files";
mainProgram = "pdfpc";
homepage = "https://pdfpc.github.io/";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ pSub ];
platforms = platforms.unix;
};
}