From e7fb2c6e7b1caa90bd346292b1325ab8f0d8a4d7 Mon Sep 17 00:00:00 2001 From: Guillaume Le Vaillant Date: Sun, 29 Nov 2020 12:15:45 +0100 Subject: gnu: Add didjvu. * gnu/packages/djvu.scm (didjvu): New variable. --- gnu/packages/djvu.scm | 67 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) (limited to 'gnu/packages/djvu.scm') diff --git a/gnu/packages/djvu.scm b/gnu/packages/djvu.scm index 9ac17cdec8..2a94862c3b 100644 --- a/gnu/packages/djvu.scm +++ b/gnu/packages/djvu.scm @@ -331,3 +331,70 @@ It is able to: @end itemize\n") (home-page "https://jwilk.net/software/djvusmooth") (license license:gpl2))) + +(define-public didjvu + (package + (name "didjvu") + (version "0.9") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/jwilk/didjvu/releases/download/" version + "/didjvu-" version ".tar.gz")) + (sha256 + (base32 "0xyrnk8d2khi7q1zr28gjkjq6frz4mkb5jdl8821yzf12k7c8pbv")))) + (build-system gnu-build-system) + (native-inputs + `(("python2-nose" ,python2-nose))) + (inputs + `(("djvulibre" ,djvulibre) + ("minidjvu" ,minidjvu) + ("python" ,python-2) + ("python2-gamera" ,python2-gamera) + ("python2-pillow" ,python2-pillow))) + (arguments + `(#:modules ((guix build gnu-build-system) + ((guix build python-build-system) #:prefix python:) + (guix build utils)) + #:imported-modules (,@%gnu-build-system-modules + (guix build python-build-system)) + #:test-target "test" + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-before 'check 'disable-failing-test + (lambda _ + (substitute* "tests/test_ipc.py" + ;; test_wait_signal gets stuck forever + (("yield self\\._test_signal, name") + "return True") + ;; test_path fails to find a file it should have created + (("path = os\\.getenv\\('PATH'\\)\\.split\\(':'\\)") + "return True")) + (substitute* "tests/test_timestamp.py" + ;; test_timezones fails with: + ;; '2009-12-18T21:25:14Z' != '2009-12-18T22:25:14+01:00' + (("@fork_isolation") + "return True")))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (invoke "make" + "DESTDIR=" + (string-append "PREFIX=" out) + "install")))) + (add-after 'install 'wrap-python + (assoc-ref python:%standard-phases 'wrap)) + (add-after 'wrap-python 'wrap-path + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (djvulibre (assoc-ref inputs "djvulibre"))) + (wrap-program (string-append out "/bin/didjvu") + `("PATH" ":" prefix (,(string-append djvulibre "/bin")))))))))) + (synopsis "DjVu encoder with foreground/background separation") + (description + "@code{didjvu} uses the @code{Gamera} framework to separate the foreground +and background layers of images, which can then be encoded into a DjVu file.") + (home-page "https://jwilk.net/software/didjvu") + (license license:gpl2))) -- cgit v1.2.3