aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruno Victal <mirai@makinata.eu>2023-04-26 01:56:59 +0100
committerLudovic Courtès <ludo@gnu.org>2024-08-31 10:42:04 +0200
commitb7947e53d9d20d31ded2dd7c3e8548d694c780fa (patch)
tree44f74eb4ef5ed3c962fb5dad027ac9a2f8f2ec25
parent69eea259df7d03977c4c010cc91372a70f07879a (diff)
downloadguix-b7947e53d9d20d31ded2dd7c3e8548d694c780fa.tar.gz
guix-b7947e53d9d20d31ded2dd7c3e8548d694c780fa.zip
gnu: docbook: Refactor dblatex packages.
* gnu/packages/docbook.scm (dblatex): Rewrite using G-Expressions. (dblatex/stable): Use modify-inputs. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Change-Id: Ic4c974c60a80871c5bf4764b88b913c871208b3f
-rw-r--r--gnu/packages/docbook.scm70
1 files changed, 36 insertions, 34 deletions
diff --git a/gnu/packages/docbook.scm b/gnu/packages/docbook.scm
index eb4d40e888..8e61592f3b 100644
--- a/gnu/packages/docbook.scm
+++ b/gnu/packages/docbook.scm
@@ -37,6 +37,7 @@
#:use-module (gnu packages python)
#:use-module (gnu packages base)
#:use-module (gnu packages web-browsers)
+ #:use-module (gnu packages xfig)
#:use-module (gnu packages xml)
#:use-module (guix gexp)
#:use-module (guix utils)
@@ -44,7 +45,6 @@
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
- #:use-module ((guix build utils) #:select (alist-replace))
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system trivial)
@@ -600,9 +600,33 @@ the in DocBook SGML DTDs.")
(base32
"0yd09nypswy3q4scri1dg7dr99d7gd6r2dwx0xm81l9f4y32gs0n"))))
(build-system python-build-system)
- ;; TODO: Add fig2dev for fig2dev utility.
+ (arguments
+ (list
+ ;; Using setuptools causes an invalid "package_base" path in
+ ;; out/bin/.dblatex-real due to a missing leading '/'. This is caused
+ ;; by dblatex's setup.py stripping the root path when creating the
+ ;; script. (dblatex's setup.py still uses distutils and thus has to
+ ;; create the script by itself. The feature for creating scripts is one
+ ;; of setuptools' features.)
+ ;; See this thread for details:
+ ;; https://lists.gnu.org/archive/html/guix-devel/2016-12/msg00030.html
+ #:use-setuptools? #f
+ #:tests? #f ;no test suite
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'wrap 'set-path
+ (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"))))
+ ;; dblatex executes helper programs at runtime.
+ (wrap-program (string-append #$output "/bin/dblatex")
+ `("PATH" ":" prefix ,path))))))))
(inputs
- `(("texlive" ,(texlive-updmap.cfg (list texlive-anysize
+ (list (texlive-updmap.cfg (list texlive-anysize
texlive-appendix
texlive-changebar
texlive-fancybox
@@ -619,35 +643,13 @@ the in DocBook SGML DTDs.")
texlive-stmaryrd
texlive-subfigure
texlive-titlesec
- texlive-wasysym)))
- ("imagemagick" ,imagemagick) ;for convert
- ("inkscape" ,inkscape/stable) ;for svg conversion
- ("docbook" ,docbook-xml)
- ("libxslt" ,libxslt))) ;for xsltproc
- (arguments
- `( ;; Using setuptools causes an invalid "package_base" path in
- ;; out/bin/.dblatex-real due to a missing leading '/'. This is caused
- ;; by dblatex's setup.py stripping the root path when creating the
- ;; script. (dblatex's setup.py still uses distutils and thus has to
- ;; create the script by itself. The feature for creating scripts is one
- ;; of setuptools' features.)
- ;; See this thread for details:
- ;; https://lists.gnu.org/archive/html/guix-devel/2016-12/msg00030.html
- #:use-setuptools? #f
- #:tests? #f ;no 'test' command
- #:phases
- (modify-phases %standard-phases
- (add-after 'wrap 'set-path
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- ;; dblatex executes helper programs at runtime.
- (wrap-program (string-append out "/bin/dblatex")
- `("PATH" ":" prefix
- ,(map (lambda (input)
- (string-append (assoc-ref inputs input)
- "/bin"))
- '("libxslt" "texlive"
- "imagemagick" "inkscape"))))))))))
+ texlive-wasysym))
+ ;; FIXME: transfig causes the build to fail.
+ ;;transfig ;for fig2dev
+ imagemagick ;for convert
+ inkscape/stable ;for svg conversion
+ docbook-xml
+ libxslt)) ;for xsltproc
(home-page "https://dblatex.sourceforge.net")
(synopsis "DocBook to LaTeX Publishing")
(description
@@ -666,8 +668,8 @@ DB2LaTeX.")
(define-public dblatex/stable
(hidden-package
(package/inherit dblatex
- (inputs (alist-replace "imagemagick" `(,imagemagick/stable)
- (package-inputs dblatex))))))
+ (inputs (modify-inputs (package-inputs dblatex)
+ (replace "imagemagick" imagemagick/stable))))))
(define-public docbook-utils
(package