nixpkgs/pkgs/applications/office/pympress/default.nix
Sebastián Mancilla 579c17d7bc pympress: 1.5.1 -> 1.6.3
This also makes the application ready to work on Darwin (but still not
working until #113777 is fixed).

Version 1.5.1 did not build on Darwin because libcanberra-gtk3 is
broken, and python-vlc is required but only works on Linux.

Version 1.6.x fixed the python-vlc requirement to make it optional, so
now both libcanberra-gtk3 and python-vlc inputs can be made optional,
and enabled by default on Linux. This means that on Darwin there is no
support for media, but it is still better than not having the
application at all.

Unfortunately, until watchdog 2.x is fixed, the Darwin build will be
still broken.

-----

The setup.py file now parses the setuptools version, so it needs to be
patched to fix an error with the 'post0' suffix in the version.

Also, setuptools is needed in propagatedBuildInputs to fix the
`ModuleNotFoundError: No module named 'pkg_resources'` error.
2021-08-02 18:57:38 -04:00

58 lines
1.3 KiB
Nix

{ lib
, stdenv
, fetchpatch
, python3Packages
, wrapGAppsHook
, gtk3
, gobject-introspection
, libcanberra-gtk3
, poppler_gi
, withGstreamer ? stdenv.isLinux
, withVLC ? stdenv.isLinux
}:
python3Packages.buildPythonApplication rec {
pname = "pympress";
version = "1.6.3";
src = python3Packages.fetchPypi {
inherit pname version;
sha256 = "sha256-f+OjE0x/3yfJYHCLB+on7TT7MJ2vNu87SHRi67qFDCM=";
};
patches = [
# Should not be needed once v1.6.4 is released
(fetchpatch {
name = "fix-setuptools-version-parsing.patch";
url = "https://github.com/Cimbali/pympress/commit/474514d71396ac065e210fd846e07ed1139602d0.diff";
sha256 = "sha256-eiw54sjMrXrNrhtkAXxiSTatzoA0NDA03L+HpTDax58=";
})
];
nativeBuildInputs = [
wrapGAppsHook
];
buildInputs = [
gtk3
gobject-introspection
poppler_gi
] ++ lib.optional withGstreamer libcanberra-gtk3;
propagatedBuildInputs = with python3Packages; [
pycairo
pygobject3
setuptools
watchdog
] ++ lib.optional withVLC python-vlc;
doCheck = false; # there are no tests
meta = with lib; {
description = "Simple yet powerful PDF reader designed for dual-screen presentations";
license = licenses.gpl2Plus;
homepage = "https://cimbali.github.io/pympress/";
maintainers = [ maintainers.tbenst ];
};
}