From e750481a6261b44a518e71e2f081304dd29ea3a8 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan Date: Wed, 22 Jul 2020 08:29:54 -0400 Subject: [PATCH 16/36] gnu: Add docbook-dsssl. * gnu/packages/docbook.scm (docbook-dsssl): New variable. --- gnu/packages/docbook.scm | 60 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/gnu/packages/docbook.scm b/gnu/packages/docbook.scm index 181699d317..fc9d28c490 100644 --- a/gnu/packages/docbook.scm +++ b/gnu/packages/docbook.scm @@ -27,12 +27,14 @@ #:use-module (gnu packages imagemagick) #:use-module (gnu packages inkscape) #:use-module (gnu packages tex) + #:use-module (gnu packages perl) #:use-module (gnu packages python) #:use-module (gnu packages base) #:use-module (gnu packages xml) #:use-module (guix licenses) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix build-system copy) #:use-module (guix build-system gnu) #:use-module (guix build-system trivial) #:use-module (guix build-system python)) @@ -90,6 +92,64 @@ with SGML and XML.") (home-page "https://www.sourceware.org/docbook-tools/") (license gpl3+))) +;; Note: Debian-required dependencies are: libosp5 libostyle1c2 openjade. +;; Note: Debian-suggested dependencies are: jadetex docbook-dsssl-doc doc-base +;; Note: We don't package Debian's extra patch yet: refentry-flow-objects.patch +(define-public docbook-dsssl + (package + (name "docbook-dsssl") + (version "1.79") + (source + (origin + (method url-fetch) + (uri + (string-append "http://downloads.sourceforge.net/docbook/" + name "-" version ".tar.bz2")) + (sha256 + (base32 + "1g72y2yyc2k89kzs0lvrb9n7hjayw1hdskfpplpz97pf1c99wcig")))) + (build-system copy-build-system) + (arguments + `(#:install-plan + '(("." "share/sgml/docbook/stylesheet/dsssl/modular/" + #:exclude ("/COPYING" "/BUGS" "/ChangeLog" "/README" + "/RELEASE-NOTES.html" "/RELEASE-NOTES.txt" + "/RELEASE-NOTES.xml" "/WhatsNew"))) + #:phases + (modify-phases %standard-phases + (add-before 'install 'install-perl-script + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (man1 (string-append out "/man/man1"))) + (chmod "bin/collateindex.pl" #o755) + (install-file "bin/collateindex.pl" bin) + (install-file "bin/collateindex.pl.1" man1) + ;; Make sure that copy-build-system doesn't pick it up. + (delete-file-recursively "bin") + ;; These files are not actually canonical. + ;; Make sure that copy-build-system doesn't pick them up. + (delete-file-recursively "contrib") + #t))) + (add-before 'install 'install-sgml-catalog + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (etc-sgml (string-append out "/etc/sgml"))) + (mkdir-p etc-sgml) + (call-with-output-file (string-append etc-sgml "/docbook-dsssl.cat") + (lambda (port) + (format port "CATALOG ~a/share/sgml/docbook/stylesheet/dsssl/modular/catalog +CATALOG ~a/share/sgml/docbook/stylesheet/dsssl/modular/common/catalog +" out out))) + #t)))))) + (inputs + `(("perl" ,perl))) + (synopsis "DocBook DSSSL Stylesheets") + (description "DocBook-DSSSL contains DSSSL stylesheets. These are used by +OpenJade or other tools to transform SGML and XML DocBook files.") + (home-page "https://docbook.org") + (license x11))) + (define-public docbook-xml-5 (package (name "docbook-xml") -- 2.27.0