summary refs log tree commit diff
path: root/gnu/packages/djvu.scm
diff options
context:
space:
mode:
authorGuillaume Le Vaillant <glv@posteo.net>2020-11-22 12:06:49 +0100
committerGuillaume Le Vaillant <glv@posteo.net>2020-11-22 14:28:45 +0100
commit42c8c30ff3e13e7b1572a7483f9424e21d3dd1ca (patch)
treeb56f5498ccdd2f3551e821fba36c4be43095fdb1 /gnu/packages/djvu.scm
parentbdd5fea69e65794a05f7af669cee4b86af8fb098 (diff)
downloadguix-42c8c30ff3e13e7b1572a7483f9424e21d3dd1ca.tar.gz
gnu: Add djvu2pdf.
* gnu/packages/djvu.scm (djvu2pdf): New variable.
Diffstat (limited to 'gnu/packages/djvu.scm')
-rw-r--r--gnu/packages/djvu.scm66
1 files changed, 66 insertions, 0 deletions
diff --git a/gnu/packages/djvu.scm b/gnu/packages/djvu.scm
index 6b428528b1..5dcd2d5173 100644
--- a/gnu/packages/djvu.scm
+++ b/gnu/packages/djvu.scm
@@ -27,12 +27,16 @@
   #:use-module (guix git-download)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages autotools)
+  #:use-module (gnu packages base)
   #:use-module (gnu packages check)
+  #:use-module (gnu packages gawk)
   #:use-module (gnu packages gettext)
+  #:use-module (gnu packages ghostscript)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
   #:use-module (gnu packages linux)
+  #:use-module (gnu packages ncurses)
   #:use-module (gnu packages pdf)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
@@ -160,3 +164,65 @@ It is able to extract:
 @end itemize\n")
     (home-page "https://jwilk.net/software/pdf2djvu")
     (license license:gpl2)))
+
+(define-public djvu2pdf
+  (package
+    (name "djvu2pdf")
+    (version "0.9.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://0x2a.at/site/projects/djvu2pdf/djvu2pdf-"
+                           version ".tar.gz"))
+       (sha256
+        (base32 "0v2ax30m7j1yi4m02nzn9rc4sn4vzqh5vywdh96r64j4pwvn5s5g"))))
+    (build-system gnu-build-system)
+    (inputs
+     `(("djvulibre" ,djvulibre)
+       ("gawk" ,gawk)
+       ("ghostscript" ,ghostscript)
+       ("grep" ,grep)
+       ("ncurses" ,ncurses)
+       ("which" ,which)))
+    (arguments
+     `(#:tests? #f ; No test suite
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'fix-paths
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((djvulibre (assoc-ref inputs "djvulibre"))
+                   (gawk (assoc-ref inputs "gawk"))
+                   (ghostscript (assoc-ref inputs "ghostscript"))
+                   (grep (assoc-ref inputs "grep"))
+                   (ncurses (assoc-ref inputs "ncurses"))
+                   (which (assoc-ref inputs "which")))
+               (substitute* "djvu2pdf"
+                 (("awk")
+                  (string-append gawk "/bin/awk"))
+                 (("ddjvu")
+                  (string-append djvulibre "/bin/ddjvu"))
+                 (("djvudump")
+                  (string-append djvulibre "/bin/djvudump"))
+                 (("grep")
+                  (string-append grep "/bin/grep"))
+                 (("gs")
+                  (string-append ghostscript "/bin/gs"))
+                 (("tput ")
+                  (string-append ncurses "/bin/tput "))
+                 (("which")
+                  (string-append which "/bin/which"))))
+             #t))
+         (delete 'configure)
+         (delete 'build)
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref %outputs "out")))
+               (install-file "djvu2pdf"
+                             (string-append out "/bin"))
+               (install-file "djvu2pdf.1.gz"
+                             (string-append out "/share/man/man1"))
+               #t))))))
+    (synopsis "DjVu to PDF converter")
+    (description "This is a small tool to convert DjVu files to PDF files.")
+    (home-page "https://0x2a.at/site/projects/djvu2pdf/")
+    (license license:gpl2+)))