gnu: dblatex: Fix missing texlive binaries and fig2dev. The binaries for dblatex aren't provided by texlive-updmap.cfg but by texlive-bin. * gnu/packages/patches/dblatex-inkscape-1.0.patch: New file. * gnu/local.mk: Register it. * gnu/packages/docbook.scm (dblatex)[source]: Use dblatex-inkscape-1.0.patch. [arguments]<#:tests?>: Enable tests. <#:phases>: Rename 'set-path to 'wrap-dblatex. Wrap with texlive-bin rather than texlive-updmap.cfg in PATH and wrap GUIX_TEXMF in 'wrap-dblatex. Add 'check-wrap phase. [native-inputs]: Add docbook-mathml-1.0. [inputs]: Restyle. Add texlive-bin. Replace inkscape/stable with inkscape. Within texlive-updmap.cfg add previously missing: texlive-amsmath, texlive-auxhook, texlive-bigintcalc, texlive-bin, texlive-bitset, texlive-bookmark, texlive-colortbl, texlive-courier, texlive-eepic, texlive-epstopdf-pkg, texlive-eso-pic, texlive-etexcmds, texlive-fancyhdr, texlive-gettitlestring, texlive-graphics, texlive-graphics-cfg, texlive-helvetic, texlive-hycolor, texlive-hyperref, texlive-infwarerr, texlive-intcalc, texlive-kpathsea, texlive-kvdefinekeys, texlive-kvoptions, texlive-kvsetkeys, texlive-l3backend, texlive-latex, texlive-latex-bin, texlive-letltxmacro, texlive-ltxcmds, texlive-pdfescape, texlive-pdflscape, texlive-pdftexcmds, texlive-psnfss, texlive-rerunfilecheck, texlive-symbol, texlive-times, texlive-tools, texlive-uniquecounter, texlive-url and texlive-zapfding. Add fig2dev. (dblatex/stable)[inputs]: Replace inkscape with inkscape/stable. Co-authored-by: Nicolas Goaziou <mail@nicolasgoaziou.fr> Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Change-Id: I4fb2e1f894b98a4e33a0438a1dda569eeb9eae81
3 files changed, 126 insertions(+), 33 deletions(-) M gnu/local.mk M gnu/packages/docbook.scm A gnu/packages/patches/dblatex-inkscape-1.0.patch
M gnu/local.mk => gnu/local.mk +2 -1
@@ 1112,7 1112,8 @@ dist_patch_DATA = \ %D%/packages/patches/date-output-pkg-config-files.patch \ %D%/packages/patches/datefudge-gettimeofday.patch \ %D%/packages/patches/dbacl-include-locale.h.patch \ %D%/packages/patches/dbacl-icheck-multiple-definitions.patch \ %D%/packages/patches/dbacl-icheck-multiple-definitions.patch \ %D%/packages/patches/dblatex-inkscape-1.0.patch \ %D%/packages/patches/dbus-helper-search-path.patch \ %D%/packages/patches/dbus-c++-gcc-compat.patch \ %D%/packages/patches/dbus-c++-threading-mutex.patch \
M gnu/packages/docbook.scm => gnu/packages/docbook.scm +85 -32
@@ 51,7 51,8 @@ #:use-module (guix git-download) #:use-module (guix build-system copy) #:use-module (guix build-system gnu) #:use-module (guix build-system python)) #:use-module (guix build-system python) #:use-module (srfi srfi-26)) ;; The fetch-plan, install-plan and phases for docbook-xml tend to vary ;; between releases therefore we use a “template” package for the @@ 750,7 751,9 @@ the in DocBook SGML DTDs.") version ".tar.bz2")) (sha256 (base32 "0yd09nypswy3q4scri1dg7dr99d7gd6r2dwx0xm81l9f4y32gs0n")))) "0yd09nypswy3q4scri1dg7dr99d7gd6r2dwx0xm81l9f4y32gs0n")) (patches (search-patches "dblatex-inkscape-1.0.patch")))) (outputs '("out" "doc")) (build-system python-build-system) (arguments @@ 773,40 776,89 @@ the in DocBook SGML DTDs.") (new (string-append #$output:doc "/share/doc"))) (mkdir-p (dirname new)) (rename-file old new)))) (add-after 'wrap 'set-path (add-after 'wrap 'wrap-dblatex (lambda* (#:key inputs #:allow-other-keys) (let ((path (map (lambda (x) (string-append (assoc-ref inputs x) "/bin")) (list "libxslt" "imagemagick" "inkscape" "texlive-updmap.cfg")))) (let ((path (search-path-as-list '("bin") '#$(map (cut this-package-input <>) (list "libxslt" "imagemagick" "inkscape" "fig2dev" "texlive-bin"))))) ;; dblatex executes helper programs at runtime. (wrap-program (string-append #$output "/bin/dblatex") `("PATH" ":" prefix ,path)))))))) `("PATH" ":" prefix ,path) `("GUIX_TEXMF" prefix (,(getenv "GUIX_TEXMF"))))))) (add-after 'check 'check-wrap (lambda* (#:key tests? #:allow-other-keys) (when tests? (unsetenv "GUIX_TEXMF") (invoke/quiet (string-append #$output "/bin/dblatex") "--quiet" "tests/mathml/mmltest2.xml"))))))) (native-inputs (list docbook-mathml-1.0)) (inputs (list (texlive-updmap.cfg (list texlive-anysize texlive-appendix texlive-changebar texlive-fancybox texlive-fancyvrb texlive-float texlive-footmisc texlive-jknapltx texlive-listings texlive-multirow texlive-overpic texlive-pdfpages texlive-refcount texlive-rsfs texlive-stmaryrd texlive-subfigure texlive-titlesec texlive-wasysym)) ;; FIXME: transfig causes the build to fail. ;;transfig ;for fig2dev (list texlive-bin (texlive-updmap.cfg (list texlive-amsmath texlive-anysize texlive-appendix texlive-auxhook texlive-bigintcalc texlive-bin texlive-bitset texlive-bookmark texlive-changebar texlive-colortbl texlive-courier texlive-eepic texlive-epstopdf-pkg texlive-eso-pic texlive-etexcmds texlive-fancybox texlive-fancyhdr texlive-fancyvrb texlive-float texlive-footmisc texlive-gettitlestring texlive-graphics texlive-graphics-cfg texlive-helvetic texlive-hycolor texlive-hyperref texlive-infwarerr texlive-intcalc texlive-jknapltx texlive-kpathsea texlive-kvdefinekeys texlive-kvoptions texlive-kvsetkeys texlive-l3backend texlive-latex texlive-latex-bin texlive-letltxmacro texlive-listings texlive-ltxcmds texlive-multirow texlive-overpic texlive-pdfescape texlive-pdflscape texlive-pdfpages texlive-pdftexcmds texlive-psnfss texlive-refcount texlive-rerunfilecheck texlive-rsfs texlive-stmaryrd texlive-subfigure texlive-symbol texlive-times texlive-titlesec texlive-tools texlive-uniquecounter texlive-url texlive-wasysym texlive-zapfding)) fig2dev imagemagick ;for convert inkscape/stable ;for svg conversion inkscape ;for svg conversion docbook-xml libxslt)) ;for xsltproc ;; lib/dbtexmf/xslt/4xslt.py shows that this package @@ 832,7 884,8 @@ DB2LaTeX.") (hidden-package (package/inherit dblatex (inputs (modify-inputs (package-inputs dblatex) (replace "imagemagick" imagemagick/stable)))))) (replace "imagemagick" imagemagick/stable) (replace "inkscape" inkscape/stable)))))) (define-public docbook-utils (package
A gnu/packages/patches/dblatex-inkscape-1.0.patch => gnu/packages/patches/dblatex-inkscape-1.0.patch +39 -0
@@ 0,0 1,39 @@ # Imported from <https://sourceforge.net/p/dblatex/dblatex/merge-requests/4/> # HG changeset patch # User Jan Tojnar <jtojnar@gmail.com> # Date 1588714251 -7200 # Tue May 05 23:30:51 2020 +0200 # Branch inkscape1 # Node ID 611cc4a4a878d57f5877f2d418864560f68d25cf # Parent 3ddf5d6cedcbc9c8b98c4da77fd545b2478d90a3 Port to Inkscape 1.0 Inkscape revamped the CLI flags: https://gitlab.com/inkscape/inbox/issues/2416 diff -r 3ddf5d6cedcb -r 611cc4a4a878 docs/custom/dblatex.xconf --- a/docs/custom/dblatex.xconf Tue Sep 10 00:40:26 2019 +0200 +++ b/docs/custom/dblatex.xconf Tue May 05 23:30:51 2020 +0200 @@ -18,7 +18,7 @@ <imagedata> <converter src="svg" dst="*" docformat="pdf"> <command> - inkscape -z -D --export-dpi=600 --export-%(dst)s=%(output)s %(input)s + inkscape -D --export-dpi=600 --export-type=%(dst)s --export-filename=%(output)s %(input)s </command> </converter> </imagedata> diff -r 3ddf5d6cedcb -r 611cc4a4a878 lib/dbtexmf/core/imagedata.py --- a/lib/dbtexmf/core/imagedata.py Tue Sep 10 00:40:26 2019 +0200 +++ b/lib/dbtexmf/core/imagedata.py Tue May 05 23:30:51 2020 +0200 @@ -178,7 +178,7 @@ class SvgConverter(ImageConverter): def __init__(self, imgsrc, imgdst="", docformat="", backend=""): ImageConverter.__init__(self, imgsrc="svg", imgdst=imgdst) - self.add_command(["inkscape", "-z", "-D", "--export-%(dst)s=%(output)s", + self.add_command(["inkscape", "-D", "--export-type=%(dst)s", "--export-filename=%(output)s", "%(input)s"])