diff options
Diffstat (limited to 'pkgs/applications/office/paperwork/paperwork-gtk.nix')
-rw-r--r-- | pkgs/applications/office/paperwork/paperwork-gtk.nix | 44 |
1 files changed, 37 insertions, 7 deletions
diff --git a/pkgs/applications/office/paperwork/paperwork-gtk.nix b/pkgs/applications/office/paperwork/paperwork-gtk.nix index e61968391913..8f1278d99266 100644 --- a/pkgs/applications/office/paperwork/paperwork-gtk.nix +++ b/pkgs/applications/office/paperwork/paperwork-gtk.nix @@ -13,10 +13,24 @@ , gettext , gobject-introspection , gdk-pixbuf +, texlive +, imagemagick +, perlPackages }: +let + documentation_deps = [ + (texlive.combine { + inherit (texlive) scheme-small wrapfig was; + }) + xvfb-run + imagemagick + perlPackages.Po4a + ]; +in + python3Packages.buildPythonApplication rec { - inherit (import ./src.nix { inherit fetchFromGitLab; }) version src; + inherit (import ./src.nix { inherit fetchFromGitLab; }) version src sample_documents; pname = "paperwork"; sourceRoot = "source/paperwork-gtk"; @@ -52,9 +66,16 @@ python3Packages.buildPythonApplication rec { for i in $site/data/paperwork_*.png; do ln -s $i $site/icon/out; done + + export XDG_DATA_DIRS=$XDG_DATA_DIRS:${gnome.adwaita-icon-theme}/share + # build the user manual + PATH=$out/bin:$PATH PAPERWORK_TEST_DOCUMENTS=${sample_documents} make data + for i in src/paperwork_gtk/model/help/out/*.pdf; do + install -Dt $site/model/help/out $i + done ''; - checkInputs = [ xvfb-run dbus.daemon ]; + checkInputs = [ dbus.daemon ]; nativeBuildInputs = [ wrapGAppsHook @@ -62,7 +83,7 @@ python3Packages.buildPythonApplication rec { (lib.getBin gettext) which gdk-pixbuf # for the setup hook - ]; + ] ++ documentation_deps; buildInputs = [ gnome.adwaita-icon-theme @@ -78,13 +99,20 @@ python3Packages.buildPythonApplication rec { makeWrapperArgs+=("''${gappsWrapperArgs[@]}") ''; - # A few parts of chkdeps need to have a display and a dbus session, so we not - # only need to run a virtual X server + dbus but also have a large enough - # resolution, because the Cairo test tries to draw a 200x200 window. - preCheck = '' + checkPhase = '' + runHook preCheck + + # A few parts of chkdeps need to have a display and a dbus session, so we not + # only need to run a virtual X server + dbus but also have a large enough + # resolution, because the Cairo test tries to draw a 200x200 window. xvfb-run -s '-screen 0 800x600x24' dbus-run-session \ --config-file=${dbus.daemon}/share/dbus-1/session.conf \ $out/bin/paperwork-gtk chkdeps + + # content of make test, without the dep on make install + python -m unittest discover --verbose -s tests + + runHook postCheck ''; propagatedBuildInputs = with python3Packages; [ @@ -98,6 +126,8 @@ python3Packages.buildPythonApplication rec { setuptools ]; + disallowedRequisites = documentation_deps; + meta = { description = "A personal document manager for scanned documents"; homepage = "https://openpaper.work/"; |