From patchwork Sat Sep 23 14:19:36 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Bruno Victal X-Patchwork-Id: 54186 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 48B8127BBEA; Sat, 23 Sep 2023 15:22:56 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 7465E27BBE9 for ; Sat, 23 Sep 2023 15:22:54 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qk3W8-0006ur-7a; Sat, 23 Sep 2023 10:21:56 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qk3W4-0006tm-MC for guix-patches@gnu.org; Sat, 23 Sep 2023 10:21:53 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qk3W4-00038D-0K for guix-patches@gnu.org; Sat, 23 Sep 2023 10:21:52 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qk3WF-00081m-6O for guix-patches@gnu.org; Sat, 23 Sep 2023 10:22:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#65479] [PATCH core-updates v2 01/62] gnu: docbook-xml: Fix installation paths. Resent-From: Bruno Victal Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 23 Sep 2023 14:22:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 65479 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 65479@debbugs.gnu.org Cc: Bruno Victal Received: via spool by 65479-submit@debbugs.gnu.org id=B65479.169547889830619 (code B ref 65479); Sat, 23 Sep 2023 14:22:03 +0000 Received: (at 65479) by debbugs.gnu.org; 23 Sep 2023 14:21:38 +0000 Received: from localhost ([127.0.0.1]:40168 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qk3Vm-0007xY-3g for submit@debbugs.gnu.org; Sat, 23 Sep 2023 10:21:37 -0400 Received: from smtpm5.myservices.hosting ([185.26.105.236]:51134) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qk3Ve-0007wv-Ru for 65479@debbugs.gnu.org; Sat, 23 Sep 2023 10:21:30 -0400 Received: from mail1.netim.hosting (unknown [185.26.106.173]) by smtpm5.myservices.hosting (Postfix) with ESMTP id C1C0520C9E for <65479@debbugs.gnu.org>; Sat, 23 Sep 2023 16:21:14 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail1.netim.hosting (Postfix) with ESMTP id 30FEC80095; Sat, 23 Sep 2023 16:21:11 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at mail1.netim.hosting Received: from mail1.netim.hosting ([127.0.0.1]) by localhost (mail1-2.netim.hosting [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id LFlEr6afpxvU; Sat, 23 Sep 2023 16:21:10 +0200 (CEST) Received: from guix-nuc.home.arpa (unknown [10.192.1.83]) (Authenticated sender: lumen@makinata.eu) by mail1.netim.hosting (Postfix) with ESMTPSA id 7146880092; Sat, 23 Sep 2023 16:21:10 +0200 (CEST) From: Bruno Victal Date: Sat, 23 Sep 2023 15:19:36 +0100 Message-ID: <41989879ab49bc0fcc437d5f52839a3c57434ccc.1695478390.git.mirai@makinata.eu> X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches Using xml/dtd/docbook as installation path had two problems: * The paths would conflict in profile, which made it impossible for two different docbook-xml packages to coexist within the XML_CATALOG_FILES variable. * It was technically incorrect since non-DTD schemas were also placed here. This commit makes docbook-xml use versioned paths instead. * gnu/packages/docbook.scm (docbook-xml-package, docbook-xml-4.x-package): New procedure. (docbook-xml): Make docbook-xml an alias for docbook-xml-5.1. (docbook-xml-5.1): New variable. (docbook-xml-4.5, docbook-xml-4.4, docbook-xml-4.3, docbook-xml-4.2) (docbook-xml-4.1.2): Refactor to use docbook-xml-4.x-package procedure. --- gnu/packages/docbook.scm | 265 ++++++++++++++++++++++++--------------- 1 file changed, 163 insertions(+), 102 deletions(-) diff --git a/gnu/packages/docbook.scm b/gnu/packages/docbook.scm index 4461293e1e..329d19a05d 100644 --- a/gnu/packages/docbook.scm +++ b/gnu/packages/docbook.scm @@ -50,17 +50,17 @@ (define-module (gnu packages docbook) #:use-module (guix build-system trivial) #:use-module (guix build-system python)) -(define-public docbook-xml +;; The fetch-plan, install-plan and phases for docbook-xml tend to vary +;; between releases therefore we use a “template” package for the +;; transformations that are common to these packages. +(define* (docbook-xml-package source version) + "Return a package for a docbook-xml package version @var{version} and +downloading from @var{source}, where @var{version} is a string and +@var{source} is a @code{} record." (package (name "docbook-xml") - (version "5.1") - (source (origin - (method url-fetch) - (uri (string-append "https://docbook.org/xml/" version - "/docbook-v" version "-os.zip")) - (sha256 - (base32 - "0zqy9prj9wam9dn7v3mgr7ld1axqxdhgrmv06dviwg00ahv43wxk")))) + (version version) + (source source) (build-system copy-build-system) (arguments (list @@ -71,23 +71,27 @@ (define-public docbook-xml #~(modify-phases %standard-phases (add-after 'unpack 'fix-permissions (lambda _ - ;; XXX: These files do not need 0755 permission. + ;; These files do not need 0755 permission. (for-each (cut chmod <> #o644) (find-files ".")))) (add-before 'install 'patch-catalog-xml (lambda* (#:key inputs #:allow-other-keys) (let ((xsltproc (search-input-file inputs "/bin/xsltproc")) - (dtd-path (string-append #$output "/xml/dtd/docbook"))) - (invoke xsltproc "--nonet" "--noout" - "--stringparam" "prefix" dtd-path - "--output" "catalog.xml.new" - #$(local-file - (search-auxiliary-file "xml/patch-catalog-xml.xsl")) - "catalog.xml") - (rename-file "catalog.xml.new" "catalog.xml")))) - (replace 'install - (lambda _ - (let ((dtd-path (string-append #$output "/xml/dtd/docbook"))) - (copy-recursively "." dtd-path))))))) + (xslt-file #$(local-file + (search-auxiliary-file + "xml/patch-catalog-xml.xsl"))) + ;; Avoid profile conflicts by installing to a + ;; versioned path. + (dest-path + (format #f "~a/xml/docbook/~a" #$output #$version))) + (for-each + (lambda (catalog) + (let ((catalog* (string-append catalog ".new"))) + (invoke xsltproc "--nonet" "--novalid" "--noout" + "--stringparam" "prefix" dest-path + "--output" catalog* + xslt-file catalog) + (rename-file catalog* catalog))) + (find-files "." "catalog\\.xml$")))))))) (native-inputs (list libxslt unzip)) (home-page "https://docbook.org") (synopsis "DocBook XML DTDs for document authoring") @@ -97,95 +101,152 @@ (define-public docbook-xml by no means limited to these applications.) This package provides XML DTDs.") (license (license:x11-style "" "See file headers.")))) +(define-public docbook-xml-5.1 + (let* ((version "5.1") + (source (origin + (method url-fetch/zipbomb) + (uri (string-append "https://docbook.org/xml/" version + "/docbook-v" version "-os.zip")) + (sha256 + (base32 + "0zqy9prj9wam9dn7v3mgr7ld1axqxdhgrmv06dviwg00ahv43wxk")))) + (template (docbook-xml-package source version))) + (package + (inherit template) + (arguments + (let ((dest-dir (format #f "xml/docbook/~a/" version))) + (substitute-keyword-arguments (package-arguments template) + ;; XXX: A default value must be provided otherwise this + ;; substitution has no effect. + ((#:install-plan _ #f) + #~`(("schemas/" #$dest-dir))))))))) +;; XXX: docbook-xml-4.x versions use the same #:install-plan but since the +;; paths are versioned we can't use (inherit …). +(define* (docbook-xml-4.x-package source version) + "Return a template for a docbook-xml-4.x package version @var{version} and +downloading from @var{source}, where @var{version} is a string and +@var{source} is a @code{} record." + (let ((base-template (docbook-xml-package source version))) + (package + (inherit base-template) + (arguments + (let* ((dest-dir (format #f "xml/docbook/~a/" version))) + (substitute-keyword-arguments (package-arguments base-template) + ((#:phases phases) + ;; Some programs, such as kdoctools, instead of using + ;; XML_CATALOG_FILES, prefer to use cmake to locate + ;; the DTDs for docbook-xml-4.x packages but + ;; since there's no agreed standard as to where these files + ;; should be placed, in practice the .cmake files + ;; end up searching for paths that are distribution specific. + #~(modify-phases #$phases + (add-after 'install 'symlink-alternate-path + (lambda _ + ;; kdoctools searches under xml/dtd/docbook/ + ;; which is the convention used by Nix. + (mkdir-p (string-append #$output "/xml/dtd")) + (symlink (string-append #$output "/" #$dest-dir) + (string-append #$output "/xml/dtd/docbook")))))) + ((#:install-plan _ #f) + #~`(("./" #$dest-dir + #:exclude-regexp ("ChangeLog$" + "README$" + "docbook\\.cat$" + "\\.txt$")))))))))) + (define-public docbook-xml-4.5 - (package - (inherit docbook-xml) - (version "4.5") - (source (origin - (method url-fetch/zipbomb) - (uri (string-append "https://docbook.org/xml/" version - "/docbook-xml-" version ".zip")) - (sha256 - (base32 - "1d671lcjckjri28xfbf6dq7y3xnkppa910w1jin8rjc35dx06kjf")))))) + (let* ((version "4.5") + (source (origin + (method url-fetch/zipbomb) + (uri (string-append "https://docbook.org/xml/" version + "/docbook-xml-" version ".zip")) + (sha256 + (base32 + "1d671lcjckjri28xfbf6dq7y3xnkppa910w1jin8rjc35dx06kjf"))))) + (docbook-xml-4.x-package source version))) (define-public docbook-xml-4.4 - (package (inherit docbook-xml) - (version "4.4") - (source (origin - (method url-fetch/zipbomb) - (uri (string-append "https://docbook.org/xml/" version - "/docbook-xml-" version ".zip")) - (sha256 - (base32 - "141h4zsyc71sfi2zzd89v4bb4qqq9ca1ri9ix2als9f4i3mmkw82")))))) + (let* ((version "4.4") + (source (origin + (method url-fetch/zipbomb) + (uri (string-append "https://docbook.org/xml/" version + "/docbook-xml-" version ".zip")) + (sha256 + (base32 + "141h4zsyc71sfi2zzd89v4bb4qqq9ca1ri9ix2als9f4i3mmkw82"))))) + (docbook-xml-4.x-package source version))) (define-public docbook-xml-4.3 - (package (inherit docbook-xml) - (version "4.3") - (source (origin - (method url-fetch/zipbomb) - (uri (string-append "https://docbook.org/xml/" version - "/docbook-xml-" version ".zip")) - (sha256 - (base32 - "0r1l2if1z4wm2v664sqdizm4gak6db1kx9y50jq89m3gxaa8l1i3")))))) + (let* ((version "4.3") + (source (origin + (method url-fetch/zipbomb) + (uri (string-append "https://docbook.org/xml/" version + "/docbook-xml-" version ".zip")) + (sha256 + (base32 + "0r1l2if1z4wm2v664sqdizm4gak6db1kx9y50jq89m3gxaa8l1i3"))))) + (docbook-xml-4.x-package source version))) (define-public docbook-xml-4.2 - (package (inherit docbook-xml) - (version "4.2") - (source (origin - (method url-fetch/zipbomb) - (uri (string-append "https://docbook.org/xml/" version - "/docbook-xml-" version ".zip")) - (sha256 - (base32 - "18hgwvmywh6a5jh38szjmg3hg2r4v5lb6r3ydc3rd8cp9wg61i5c")))))) + (let* ((version "4.2") + (source (origin + (method url-fetch/zipbomb) + (uri (string-append "https://docbook.org/xml/" version + "/docbook-xml-" version ".zip")) + (sha256 + (base32 + "18hgwvmywh6a5jh38szjmg3hg2r4v5lb6r3ydc3rd8cp9wg61i5c"))))) + (docbook-xml-4.x-package source version))) (define-public docbook-xml-4.1.2 - (package - (inherit docbook-xml) - (version "4.1.2") - (source (origin - (method url-fetch/zipbomb) - (uri (string-append "https://docbook.org/xml/" version - "/docbkx412.zip")) - (sha256 - (base32 - "0wkp5rvnqj0ghxia0558mnn4c7s3n501j99q2isp3sp0ci069w1h")))) - (arguments - (substitute-keyword-arguments (package-arguments docbook-xml) - ((#:phases phases) - #~(modify-phases #$phases - (add-after 'unpack 'copy-catalog-file - ;; docbook-xml-4.1.2 is unique in the fact that it doesn't come - ;; with a catalog.xml file, requiring it to be generated by hand - ;; from the docbook.cat SGML catalog. We could automatically - ;; generate it here at the cost of enlarging the package - ;; definition with a rudimentary (PEG) parser for the SGML - ;; catalog but this is overkill since this file is unlikely to - ;; change, therefore we ship a pre-generated catalog.xml. - (lambda _ - (copy-file - #$(local-file - (search-auxiliary-file - "xml/docbook-xml/catalog-4.1.2.xml")) - "catalog.xml"))) - (add-after 'patch-catalog-xml 'add-rewrite-entries - (lambda* (#:key inputs #:allow-other-keys) - (let ((xmlcatalog (search-input-file inputs "/bin/xmlcatalog")) - (dtd-path (string-append #$output "/xml/dtd/docbook"))) - (for-each - (lambda (type) - (invoke xmlcatalog "--noout" - "--add" type - "http://www.oasis-open.org/docbook/xml/4.1.2/" - (string-append "file://" dtd-path "/") - "catalog.xml")) - (list "rewriteSystem" "rewriteURI"))))))))) - (native-inputs - (modify-inputs (package-native-inputs docbook-xml) - (prepend libxml2))))) + (let* ((version "4.1.2") + (source (origin + (method url-fetch/zipbomb) + (uri (string-append "https://docbook.org/xml/" version + "/docbkx412.zip")) + (sha256 + (base32 + "0wkp5rvnqj0ghxia0558mnn4c7s3n501j99q2isp3sp0ci069w1h")))) + (template (docbook-xml-4.x-package source version))) + (package + (inherit template) + (arguments + (substitute-keyword-arguments (package-arguments template) + ((#:phases phases) + #~(modify-phases #$phases + (add-after 'unpack 'copy-catalog-file + ;; docbook-xml-4.1.2 is unique in the fact that it doesn't come + ;; with a catalog.xml file, requiring it to be generated by hand + ;; from the docbook.cat SGML catalog. We could automatically + ;; generate it here at the cost of enlarging the package + ;; definition with a rudimentary (PEG) parser for the SGML + ;; catalog but this is overkill since this file is unlikely to + ;; change, therefore we ship a pre-generated catalog.xml. + (lambda _ + (copy-file + #$(local-file + (search-auxiliary-file + "xml/docbook-xml/catalog-4.1.2.xml")) + "catalog.xml"))) + (add-after 'patch-catalog-xml 'add-rewrite-entries + (lambda* (#:key inputs #:allow-other-keys) + (let ((xmlcatalog (search-input-file inputs + "/bin/xmlcatalog")) + (dtd-path (format #f "~a/xml/docbook/~a" + #$output #$version))) + (for-each + (lambda (type) + (invoke xmlcatalog "--noout" + "--add" type + "http://www.oasis-open.org/docbook/xml/4.1.2/" + (string-append "file://" dtd-path "/") + "catalog.xml")) + (list "rewriteSystem" "rewriteURI"))))))))) + (native-inputs + (modify-inputs (package-native-inputs template) + (prepend libxml2)))))) + +(define-public docbook-xml docbook-xml-5.1) ;;; There's an issue in docbook-xsl 1.79.2 that causes manpages to be ;;; generated incorrectly and embed raw nroff syntax such as '.PP' when there From patchwork Sat Sep 23 14:19:37 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Bruno Victal X-Patchwork-Id: 54206 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 98EE027BBE2; Sat, 23 Sep 2023 15:24:02 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 332B427BBE9 for ; Sat, 23 Sep 2023 15:24:00 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qk3XA-0007io-Kq; Sat, 23 Sep 2023 10:23:00 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qk3X5-0007YP-FE for guix-patches@gnu.org; Sat, 23 Sep 2023 10:22:55 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qk3X4-0003L8-02 for guix-patches@gnu.org; Sat, 23 Sep 2023 10:22:55 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qk3XF-00088X-63 for guix-patches@gnu.org; Sat, 23 Sep 2023 10:23:05 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#65479] [PATCH core-updates v2 02/62] gnu: Add docbook-xml-5.0.1. Resent-From: Bruno Victal Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 23 Sep 2023 14:23:05 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 65479 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 65479@debbugs.gnu.org Cc: Bruno Victal Received: via spool by 65479-submit@debbugs.gnu.org id=B65479.169547896231145 (code B ref 65479); Sat, 23 Sep 2023 14:23:05 +0000 Received: (at 65479) by debbugs.gnu.org; 23 Sep 2023 14:22:42 +0000 Received: from localhost ([127.0.0.1]:40262 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qk3Wr-00086B-Jl for submit@debbugs.gnu.org; Sat, 23 Sep 2023 10:22:41 -0400 Received: from smtpmciv4.myservices.hosting ([185.26.107.240]:35098) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qk3WP-00084M-Er for 65479@debbugs.gnu.org; Sat, 23 Sep 2023 10:22:13 -0400 Received: from mail1.netim.hosting (unknown [185.26.106.173]) by smtpmciv4.myservices.hosting (Postfix) with ESMTP id 5974E20A20 for <65479@debbugs.gnu.org>; Sat, 23 Sep 2023 16:21:22 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail1.netim.hosting (Postfix) with ESMTP id 9DE5580098; Sat, 23 Sep 2023 16:21:14 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at mail1.netim.hosting Received: from mail1.netim.hosting ([127.0.0.1]) by localhost (mail1-2.netim.hosting [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id ZBsLneCmVnUe; Sat, 23 Sep 2023 16:21:14 +0200 (CEST) Received: from guix-nuc.home.arpa (unknown [10.192.1.83]) (Authenticated sender: lumen@makinata.eu) by mail1.netim.hosting (Postfix) with ESMTPSA id 1A8F280092; Sat, 23 Sep 2023 16:21:14 +0200 (CEST) From: Bruno Victal Date: Sat, 23 Sep 2023 15:19:37 +0100 Message-ID: <9b73ea4fd58a27de130a1d799e5568457e85773c.1695478390.git.mirai@makinata.eu> X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/docbook.xml (docbook-xml-5.0.1): New variable. --- gnu/packages/docbook.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/docbook.scm b/gnu/packages/docbook.scm index 329d19a05d..ec1b9acb36 100644 --- a/gnu/packages/docbook.scm +++ b/gnu/packages/docbook.scm @@ -120,6 +120,30 @@ (define-public docbook-xml-5.1 ;; substitution has no effect. ((#:install-plan _ #f) #~`(("schemas/" #$dest-dir))))))))) + +(define-public docbook-xml-5.0.1 + (let* ((version "5.0.1") + (source (origin + (method url-fetch) + (uri (string-append "https://docbook.org/xml/" version + "/docbook-" version ".zip")) + (sha256 + (base32 + "1iz3hq1lqgnshvlz4j9gvh4jy1ml74qf90vqf2ikbq0h4i2xzybs")))) + (template (docbook-xml-package source version))) + (package + (inherit template) + (arguments + (let ((dest-dir (format #f "xml/docbook/~a/" version))) + (substitute-keyword-arguments (package-arguments template) + ((#:install-plan _ #f) + #~`(("catalog.xml" #$dest-dir) + ("docbook.nvdl" #$dest-dir) + ("dtd" #$dest-dir) + ("rng" #$dest-dir) + ("sch" #$dest-dir) + ("xsd" #$dest-dir))))))))) + ;; XXX: docbook-xml-4.x versions use the same #:install-plan but since the ;; paths are versioned we can't use (inherit …). (define* (docbook-xml-4.x-package source version) From patchwork Sat Sep 23 14:19:38 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruno Victal X-Patchwork-Id: 54180 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 117ED27BBEA; Sat, 23 Sep 2023 15:22:19 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 4AB6E27BBE2 for ; Sat, 23 Sep 2023 15:22:15 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qk3W9-0006v3-0G; Sat, 23 Sep 2023 10:21:57 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qk3W4-0006tl-Lu for guix-patches@gnu.org; Sat, 23 Sep 2023 10:21:52 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qk3W3-00038C-QV for guix-patches@gnu.org; Sat, 23 Sep 2023 10:21:52 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qk3WE-00081a-ON for guix-patches@gnu.org; Sat, 23 Sep 2023 10:22:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#65479] [PATCH core-updates v2 03/62] gnu: docbook-xml-5.1: Fix URIs in catalog.xml. Resent-From: Bruno Victal Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 23 Sep 2023 14:22:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 65479 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 65479@debbugs.gnu.org Cc: Bruno Victal Received: via spool by 65479-submit@debbugs.gnu.org id=B65479.169547889030577 (code B ref 65479); Sat, 23 Sep 2023 14:22:02 +0000 Received: (at 65479) by debbugs.gnu.org; 23 Sep 2023 14:21:30 +0000 Received: from localhost ([127.0.0.1]:40164 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qk3Vh-0007x7-Rc for submit@debbugs.gnu.org; Sat, 23 Sep 2023 10:21:30 -0400 Received: from smtpmciv4.myservices.hosting ([185.26.107.240]:34942) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qk3Vf-0007wx-Ii for 65479@debbugs.gnu.org; Sat, 23 Sep 2023 10:21:28 -0400 Received: from mail1.netim.hosting (unknown [185.26.106.173]) by smtpmciv4.myservices.hosting (Postfix) with ESMTP id C57DE209E8 for <65479@debbugs.gnu.org>; Sat, 23 Sep 2023 16:21:15 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail1.netim.hosting (Postfix) with ESMTP id 2594780095; Sat, 23 Sep 2023 16:21:15 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at mail1.netim.hosting Received: from mail1.netim.hosting ([127.0.0.1]) by localhost (mail1-2.netim.hosting [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id e_ggEr3MOtlU; Sat, 23 Sep 2023 16:21:14 +0200 (CEST) Received: from guix-nuc.home.arpa (unknown [10.192.1.83]) (Authenticated sender: lumen@makinata.eu) by mail1.netim.hosting (Postfix) with ESMTPSA id 95EEE80097; Sat, 23 Sep 2023 16:21:14 +0200 (CEST) From: Bruno Victal Date: Sat, 23 Sep 2023 15:19:38 +0100 Message-ID: <52bffd0b261be7dd2452c72d0cb498446b677ae0.1695478390.git.mirai@makinata.eu> X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/docbook.scm (docbook-xml-5.1)[source]: Patch version in URI. --- gnu/packages/docbook.scm | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/gnu/packages/docbook.scm b/gnu/packages/docbook.scm index ec1b9acb36..4a0104c253 100644 --- a/gnu/packages/docbook.scm +++ b/gnu/packages/docbook.scm @@ -109,7 +109,13 @@ (define-public docbook-xml-5.1 "/docbook-v" version "-os.zip")) (sha256 (base32 - "0zqy9prj9wam9dn7v3mgr7ld1axqxdhgrmv06dviwg00ahv43wxk")))) + "0zqy9prj9wam9dn7v3mgr7ld1axqxdhgrmv06dviwg00ahv43wxk")) + (modules '((guix build utils))) + (snippet + ;; The .zip release mistakenly uses '5.1CR4' instead of + ;; '5.1' as intended by . + #~(substitute* "schemas/catalog.xml" + (("5\\.1CR4") #$version))))) (template (docbook-xml-package source version))) (package (inherit template) From patchwork Sat Sep 23 14:19:39 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Bruno Victal X-Patchwork-Id: 54181 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 4E9FB27BBE9; Sat, 23 Sep 2023 15:22:37 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 9125827BBE2 for ; Sat, 23 Sep 2023 15:22:35 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qk3WB-0006wg-Ro; Sat, 23 Sep 2023 10:21:59 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qk3W4-0006tk-MG for guix-patches@gnu.org; Sat, 23 Sep 2023 10:21:53 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qk3W4-00038G-Bj for guix-patches@gnu.org; Sat, 23 Sep 2023 10:21:52 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qk3WF-00081x-IK for guix-patches@gnu.org; Sat, 23 Sep 2023 10:22:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#65479] [PATCH core-updates v2 04/62] gnu: docbook-xsl: Add compatibility entry. Resent-From: Bruno Victal Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 23 Sep 2023 14:22:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 65479 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 65479@debbugs.gnu.org Cc: Bruno Victal Received: via spool by 65479-submit@debbugs.gnu.org id=B65479.169547889830631 (code B ref 65479); Sat, 23 Sep 2023 14:22:03 +0000 Received: (at 65479) by debbugs.gnu.org; 23 Sep 2023 14:21:38 +0000 Received: from localhost ([127.0.0.1]:40173 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qk3Vp-0007xn-R3 for submit@debbugs.gnu.org; Sat, 23 Sep 2023 10:21:38 -0400 Received: from smtpmciv4.myservices.hosting ([185.26.107.240]:34952) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qk3Vj-0007xL-8n for 65479@debbugs.gnu.org; Sat, 23 Sep 2023 10:21:31 -0400 Received: from mail1.netim.hosting (unknown [185.26.106.173]) by smtpmciv4.myservices.hosting (Postfix) with ESMTP id 408EC209F9 for <65479@debbugs.gnu.org>; Sat, 23 Sep 2023 16:21:15 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail1.netim.hosting (Postfix) with ESMTP id 9D81A80097; Sat, 23 Sep 2023 16:21:15 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at mail1.netim.hosting Received: from mail1.netim.hosting ([127.0.0.1]) by localhost (mail1-2.netim.hosting [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id nejiS7R43vUh; Sat, 23 Sep 2023 16:21:15 +0200 (CEST) Received: from guix-nuc.home.arpa (unknown [10.192.1.83]) (Authenticated sender: lumen@makinata.eu) by mail1.netim.hosting (Postfix) with ESMTPSA id 22E2F80092; Sat, 23 Sep 2023 16:21:15 +0200 (CEST) From: Bruno Victal Date: Sat, 23 Sep 2023 15:19:39 +0100 Message-ID: X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches Remap "http://docbook.sourceforge.net/release/xsl-ns/" to "http://docbook.sourceforge.net/release/xsl/". * gnu/packages/docbook.scm (docbook-xsl)[arguments]<#:phases>: Add compatibility entry. --- gnu/packages/docbook.scm | 41 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 40 insertions(+), 1 deletion(-) diff --git a/gnu/packages/docbook.scm b/gnu/packages/docbook.scm index 4a0104c253..55f99aae62 100644 --- a/gnu/packages/docbook.scm +++ b/gnu/packages/docbook.scm @@ -388,7 +388,46 @@ (define-public docbook-xsl "http://docbook.sourceforge.net/release/xsl/current/" store-uri catalog)) - (list "rewriteSystem" "rewriteURI"))) + (list "rewriteSystem" "rewriteURI")) + + ;; Originally the + ;; "http://docbook.sourceforge.net/release/xsl/" + ;; URI referred to the non-namespaced docbook-xsl, + ;; with its namespaced version using a URI differing in + ;; the path component as '…/xsl-ns/'. + ;; At some point the namespaced version was made the + ;; canonical docbook-xsl package whilst preserving the + ;; original URI. + ;; + ;; For compatibility with XML files that still specify + ;; the legacy namespaced docbook-xsl URIs we re-add them + ;; here. + (for-each + (lambda (type) + ;; Remap /xsl-ns/ to /xsl/. + ;; Note: URI resolutions are not recursive. + ;; A rewrite rule from: + ;; 'http://docbook.sourceforge.net/release/xsl-ns/' + ;; to + ;; 'http://docbook.sourceforge.net/release/xsl/' + ;; will not trigger the rewrite rule that ultimately + ;; remaps to a /gnu/store URI, as can be seen by + ;; invoking: + ;; $ xmlcatalog "" \ + ;; 'http://docbook.sourceforge.net/release/xsl-ns/current/' + ;; http://docbook.sourceforge.net/release/xsl/current/ + ;; $ xmlcatalog "" \ + ;; 'http://docbook.sourceforge.net/release/xsl/current/' + ;; file://gnu/store/…/xml/xsl/… + ;; + ;; See XML Catalog specification, item 7.2.2. for + ;; details. + (invoke xmlcatalog "--noout" + "--add" type + "http://docbook.sourceforge.net/release/xsl-ns/current/" + store-uri + catalog)) + (list "rewriteSystem" "rewriteURI"))) catalog-files)))) (replace 'install (lambda _ From patchwork Sat Sep 23 14:19:40 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Bruno Victal X-Patchwork-Id: 54185 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 4598B27BBE9; Sat, 23 Sep 2023 15:22:53 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 941D727BBE2 for ; Sat, 23 Sep 2023 15:22:50 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qk3WE-0006yY-ED; Sat, 23 Sep 2023 10:22:02 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qk3W5-0006tr-LE for guix-patches@gnu.org; Sat, 23 Sep 2023 10:21:53 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qk3W5-00038l-D3 for guix-patches@gnu.org; Sat, 23 Sep 2023 10:21:53 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qk3WG-00082D-H1 for guix-patches@gnu.org; Sat, 23 Sep 2023 10:22:04 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#65479] [PATCH core-updates v2 05/62] gnu: docbook-xsl: Add rewrite entries for http. Resent-From: Bruno Victal Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 23 Sep 2023 14:22:04 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 65479 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 65479@debbugs.gnu.org Cc: Bruno Victal Received: via spool by 65479-submit@debbugs.gnu.org id=B65479.169547890730701 (code B ref 65479); Sat, 23 Sep 2023 14:22:04 +0000 Received: (at 65479) by debbugs.gnu.org; 23 Sep 2023 14:21:47 +0000 Received: from localhost ([127.0.0.1]:40183 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qk3Vy-0007z5-Th for submit@debbugs.gnu.org; Sat, 23 Sep 2023 10:21:47 -0400 Received: from smtpmciv4.myservices.hosting ([185.26.107.240]:34976) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qk3Vn-0007xa-4J for 65479@debbugs.gnu.org; Sat, 23 Sep 2023 10:21:35 -0400 Received: from mail1.netim.hosting (unknown [185.26.106.173]) by smtpmciv4.myservices.hosting (Postfix) with ESMTP id E9B5E209E8 for <65479@debbugs.gnu.org>; Sat, 23 Sep 2023 16:21:16 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail1.netim.hosting (Postfix) with ESMTP id 51BF080095; Sat, 23 Sep 2023 16:21:16 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at mail1.netim.hosting Received: from mail1.netim.hosting ([127.0.0.1]) by localhost (mail1-2.netim.hosting [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id ADEC271ZDQP4; Sat, 23 Sep 2023 16:21:15 +0200 (CEST) Received: from guix-nuc.home.arpa (unknown [10.192.1.83]) (Authenticated sender: lumen@makinata.eu) by mail1.netim.hosting (Postfix) with ESMTPSA id A38398009B; Sat, 23 Sep 2023 16:21:15 +0200 (CEST) From: Bruno Victal Date: Sat, 23 Sep 2023 15:19:40 +0100 Message-ID: <0fb6a173cbcc7ae9bd0b2cd2362c9c599bb6a000.1695478390.git.mirai@makinata.eu> X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches Refactored 'patch-catalog.xml to reduce code duplication. The catalog for docbook-xsl hosted on the CDN [1] have entries for the 'http' scheme yet when building from source only 'https' entries are generated. Patch the XML catalog to provide them both. [1]: * gnu/packages/docbook.scm (docbook-xsl)[arguments]<#:phases>: Rename 'patch-catalog-xml to 'patch-catalog.xml. Refactor this phase for deduplication and add 'https' entries. --- gnu/packages/docbook.scm | 140 +++++++++++++++++---------------------- 1 file changed, 59 insertions(+), 81 deletions(-) diff --git a/gnu/packages/docbook.scm b/gnu/packages/docbook.scm index 55f99aae62..83a5496a0e 100644 --- a/gnu/packages/docbook.scm +++ b/gnu/packages/docbook.scm @@ -342,93 +342,71 @@ (define-public docbook-xsl (add-before 'install 'generate-catalog.xml (lambda* (#:key make-flags #:allow-other-keys) (apply invoke "make" "-C" "xsl" "catalog.xml" make-flags))) - (add-before 'install 'patch-catalog-xml + (add-after 'generate-catalog.xml 'patch-catalog.xml + ;; Note: URI resolutions are not recursive. + ;; A rewrite rule from: + ;; 'http://docbook.sourceforge.net/release/xsl-ns/' + ;; to + ;; 'http://docbook.sourceforge.net/release/xsl/' + ;; will not trigger the rewrite rule that ultimately + ;; remaps to a /gnu/store URI, as can be seen by + ;; invoking: + ;; $ xmlcatalog "" \ + ;; 'http://docbook.sourceforge.net/release/xsl-ns/current/' + ;; http://docbook.sourceforge.net/release/xsl/current/ + ;; $ xmlcatalog "" \ + ;; 'http://docbook.sourceforge.net/release/xsl/current/' + ;; file://gnu/store/…/xml/xsl/… + ;; + ;; See XML Catalog specification, item 7.2.2. for + ;; details. (lambda* (#:key inputs #:allow-other-keys) (let ((xmlcatalog (search-input-file inputs "/bin/xmlcatalog")) - (catalog-files (find-files "." "catalog\\.xml$")) + (catalog-file "xsl/catalog.xml") (store-uri (string-append "file://" dest-path "/"))) + ;; Remove /snapshot/ references. (for-each - (lambda (catalog) - ;; Replace /snapshot/ reference with one based on - ;; BASE-VERSION. - (let ((versioned-uri - (format - #f "https://cdn.docbook.org/release/xsl/~a/" - #$base-version))) - (invoke xmlcatalog "--noout" - "--del" - "https://cdn.docbook.org/release/xsl/snapshot/" - catalog) - (for-each - (lambda (type) - (invoke xmlcatalog "--noout" - "--add" type - versioned-uri - store-uri - catalog)) - (list "rewriteSystem" "rewriteURI"))) - - ;; Patch /current/ references to point to /gnu/store/…. - (for-each - (lambda (type) - (invoke xmlcatalog "--noout" - "--add" type - "https://cdn.docbook.org/release/xsl/current/" - store-uri - catalog)) - (list "rewriteSystem" "rewriteURI")) - - ;; Re-add the no longer present compatibility entries for - ;; v.1.79.1 or earlier URIs. - (for-each - (lambda (type) - (invoke xmlcatalog "--noout" - "--add" type - "http://docbook.sourceforge.net/release/xsl/current/" - store-uri - catalog)) - (list "rewriteSystem" "rewriteURI")) - - ;; Originally the - ;; "http://docbook.sourceforge.net/release/xsl/" - ;; URI referred to the non-namespaced docbook-xsl, - ;; with its namespaced version using a URI differing in - ;; the path component as '…/xsl-ns/'. - ;; At some point the namespaced version was made the - ;; canonical docbook-xsl package whilst preserving the - ;; original URI. - ;; - ;; For compatibility with XML files that still specify - ;; the legacy namespaced docbook-xsl URIs we re-add them - ;; here. + (lambda (scheme) + (invoke xmlcatalog "--noout" + "--del" + (string-append + scheme + "://cdn.docbook.org/release/xsl/snapshot/") + catalog-file)) + (list "http" "https")) + ;; Rewrite both http:// and https:// URIs. + (for-each + (lambda (path) (for-each - (lambda (type) - ;; Remap /xsl-ns/ to /xsl/. - ;; Note: URI resolutions are not recursive. - ;; A rewrite rule from: - ;; 'http://docbook.sourceforge.net/release/xsl-ns/' - ;; to - ;; 'http://docbook.sourceforge.net/release/xsl/' - ;; will not trigger the rewrite rule that ultimately - ;; remaps to a /gnu/store URI, as can be seen by - ;; invoking: - ;; $ xmlcatalog "" \ - ;; 'http://docbook.sourceforge.net/release/xsl-ns/current/' - ;; http://docbook.sourceforge.net/release/xsl/current/ - ;; $ xmlcatalog "" \ - ;; 'http://docbook.sourceforge.net/release/xsl/current/' - ;; file://gnu/store/…/xml/xsl/… - ;; - ;; See XML Catalog specification, item 7.2.2. for - ;; details. - (invoke xmlcatalog "--noout" - "--add" type - "http://docbook.sourceforge.net/release/xsl-ns/current/" - store-uri - catalog)) - (list "rewriteSystem" "rewriteURI"))) - catalog-files)))) + (lambda (scheme) + (for-each + (lambda (entry-type) + (let ((uri (string-append scheme "://" path))) + (invoke xmlcatalog "--noout" + "--add" entry-type uri store-uri + catalog-file))) + (list "rewriteSystem" "rewriteURI"))) + (list "http" "https"))) + (list #$(format #f "cdn.docbook.org/release/xsl/~a/" + base-version) + "cdn.docbook.org/release/xsl/current/" + ;; Re-add the no longer present compatibility entries for + ;; v.1.79.1 or earlier URIs. + "docbook.sourceforge.net/release/xsl/current/" + ;; Originally the + ;; "http://docbook.sourceforge.net/release/xsl/" + ;; URI referred to the non-namespaced docbook-xsl, + ;; with its namespaced version using a URI differing in + ;; the path component as '…/xsl-ns/'. + ;; At some point the namespaced version was made the + ;; canonical docbook-xsl package whilst preserving the + ;; original URI. + ;; + ;; For compatibility with XML files that still specify + ;; the legacy namespaced docbook-xsl URIs we re-add them + ;; here. + "docbook.sourceforge.net/release/xsl-ns/current/"))))) (replace 'install (lambda _ (let ((select-rx (make-regexp From patchwork Sat Sep 23 14:19:41 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruno Victal X-Patchwork-Id: 54198 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 4505827BBEA; Sat, 23 Sep 2023 15:23:33 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.6 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_ABUSE_SURBL,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 2BD6727BBE2 for ; Sat, 23 Sep 2023 15:23:32 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qk3WE-0006y8-0M; Sat, 23 Sep 2023 10:22:02 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qk3W9-0006vy-RF for guix-patches@gnu.org; Sat, 23 Sep 2023 10:21:58 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qk3W9-00039i-JD for guix-patches@gnu.org; Sat, 23 Sep 2023 10:21:57 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qk3WK-00083K-Pk for guix-patches@gnu.org; Sat, 23 Sep 2023 10:22:08 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#65479] [PATCH core-updates v2 06/62] gnu: docbook: Remove leftovers. Resent-From: Bruno Victal Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 23 Sep 2023 14:22:08 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 65479 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 65479@debbugs.gnu.org Cc: Bruno Victal Received: via spool by 65479-submit@debbugs.gnu.org id=B65479.169547891930797 (code B ref 65479); Sat, 23 Sep 2023 14:22:08 +0000 Received: (at 65479) by debbugs.gnu.org; 23 Sep 2023 14:21:59 +0000 Received: from localhost ([127.0.0.1]:40202 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qk3WA-00080T-B8 for submit@debbugs.gnu.org; Sat, 23 Sep 2023 10:21:59 -0400 Received: from smtpmciv4.myservices.hosting ([185.26.107.240]:35006) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qk3Vw-0007yl-7S for 65479@debbugs.gnu.org; Sat, 23 Sep 2023 10:21:45 -0400 Received: from mail1.netim.hosting (unknown [185.26.106.173]) by smtpmciv4.myservices.hosting (Postfix) with ESMTP id 718D320A18 for <65479@debbugs.gnu.org>; Sat, 23 Sep 2023 16:21:17 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail1.netim.hosting (Postfix) with ESMTP id DBBF58009B; Sat, 23 Sep 2023 16:21:16 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at mail1.netim.hosting Received: from mail1.netim.hosting ([127.0.0.1]) by localhost (mail1-2.netim.hosting [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id Xeb8HN4ZQUbi; Sat, 23 Sep 2023 16:21:16 +0200 (CEST) Received: from guix-nuc.home.arpa (unknown [10.192.1.83]) (Authenticated sender: lumen@makinata.eu) by mail1.netim.hosting (Postfix) with ESMTPSA id 2764880092; Sat, 23 Sep 2023 16:21:16 +0200 (CEST) From: Bruno Victal Date: Sat, 23 Sep 2023 15:19:41 +0100 Message-ID: <842e6cb9d3a1c2acb26375983b6edd84064b263d.1695478390.git.mirai@makinata.eu> X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches docbook-xsl patches are probably remnants from 1f7d94597f1e78776f854eeca46c03a3aded8466. * gnu/packages/docbook.scm: Remove unused import. * gnu/packages/patches/docbook-xsl-nonrecursive-string-subst.patch: Remove. * gnu/packages/patches/docbook-xsl-support-old-url.patch: Ditto. * gnu/local.mk: Unregister it. * gnu/packages/moreutils.scm (moreutils)[native-inputs]: Drop obsolete comment. --- gnu/local.mk | 2 - gnu/packages/docbook.scm | 1 - gnu/packages/moreutils.scm | 2 +- ...ocbook-xsl-nonrecursive-string-subst.patch | 40 ------------------- .../patches/docbook-xsl-support-old-url.patch | 17 -------- 5 files changed, 1 insertion(+), 61 deletions(-) delete mode 100644 gnu/packages/patches/docbook-xsl-nonrecursive-string-subst.patch delete mode 100644 gnu/packages/patches/docbook-xsl-support-old-url.patch diff --git a/gnu/local.mk b/gnu/local.mk index 4f8637418a..c399a94e6b 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1070,8 +1070,6 @@ dist_patch_DATA = \ %D%/packages/patches/diffutils-fix-signal-processing.patch \ %D%/packages/patches/directfb-davinci-glibc-228-compat.patch \ %D%/packages/patches/dkimproxy-add-ipv6-support.patch \ - %D%/packages/patches/docbook-xsl-nonrecursive-string-subst.patch \ - %D%/packages/patches/docbook-xsl-support-old-url.patch \ %D%/packages/patches/doc++-include-directives.patch \ %D%/packages/patches/doc++-segfault-fix.patch \ %D%/packages/patches/dovecot-opensslv3.patch \ diff --git a/gnu/packages/docbook.scm b/gnu/packages/docbook.scm index 83a5496a0e..47d3a04479 100644 --- a/gnu/packages/docbook.scm +++ b/gnu/packages/docbook.scm @@ -47,7 +47,6 @@ (define-module (gnu packages docbook) #:use-module (guix git-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)) ;; The fetch-plan, install-plan and phases for docbook-xml tend to vary diff --git a/gnu/packages/moreutils.scm b/gnu/packages/moreutils.scm index d219c78d4f..d7f4a8522a 100644 --- a/gnu/packages/moreutils.scm +++ b/gnu/packages/moreutils.scm @@ -71,7 +71,7 @@ (define-public moreutils ;; For building the manual pages. (native-inputs (list docbook-xml-4.4 - docbook-xsl ;without -next, man pages are corrupted + docbook-xsl libxml2 libxslt)) (home-page "https://joeyh.name/code/moreutils/") diff --git a/gnu/packages/patches/docbook-xsl-nonrecursive-string-subst.patch b/gnu/packages/patches/docbook-xsl-nonrecursive-string-subst.patch deleted file mode 100644 index fed4b76429..0000000000 --- a/gnu/packages/patches/docbook-xsl-nonrecursive-string-subst.patch +++ /dev/null @@ -1,40 +0,0 @@ -Use a non-recursive replace function when the parser supports it. - -https://bugs.gnu.org/29782 -https://bugzilla.samba.org/show_bug.cgi?id=9515 -https://bugzilla.gnome.org/show_bug.cgi?id=736077 (for xsltproc) - -Patch copied from Debian: -https://salsa.debian.org/debian/docbook-xsl/-/blob/master/debian/patches/765567_non-recursive_string_subst.patch - -Description: use EXSLT "replace" function when available - A recursive implementation of string.subst is problematic, - long strings with many matches will cause stack overflows. -Author: Peter De Wachter -Bug-Debian: https://bugs.debian.org/750593 - ---- a/lib/lib.xsl -+++ b/lib/lib.xsl -@@ -6,7 +6,11 @@ - - This module implements DTD-independent functions - -- ******************************************************************** --> -+ ******************************************************************** --> -+ - - - -@@ -52,6 +56,9 @@ - - - -+ -+ -+ - - - diff --git a/gnu/packages/patches/docbook-xsl-support-old-url.patch b/gnu/packages/patches/docbook-xsl-support-old-url.patch deleted file mode 100644 index 5b7dda458f..0000000000 --- a/gnu/packages/patches/docbook-xsl-support-old-url.patch +++ /dev/null @@ -1,17 +0,0 @@ -Docbook 1.79.2 makes very few changes apart from changing the canonical URL -to cdn.docbook.org. This patch adds support for the previous URL to avoid -breaking packages that still use that. - -Adapted from Debian: -https://salsa.debian.org/debian/docbook-xsl/-/blob/master/debian/patches/0005-catalog.xml-Compatibility-with-1.79.1-or-earlier.patch - ---- a/catalog.xml -+++ b/catalog.xml -@@ -5,4 +5,7 @@ - - - -+ -+ -+ - From patchwork Sat Sep 23 14:19:42 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Bruno Victal X-Patchwork-Id: 54197 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 4CB1D27BBE9; Sat, 23 Sep 2023 15:23:29 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED,URI_NOVOWEL autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id A7E4D27BBE2 for ; Sat, 23 Sep 2023 15:23:25 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qk3X4-0007Wv-I1; Sat, 23 Sep 2023 10:22:54 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qk3X3-0007Uj-Ea for guix-patches@gnu.org; Sat, 23 Sep 2023 10:22:53 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qk3X2-0003KN-Od for guix-patches@gnu.org; Sat, 23 Sep 2023 10:22:53 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qk3XD-00088B-UX for guix-patches@gnu.org; Sat, 23 Sep 2023 10:23:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#65479] [PATCH core-updates v2 07/62] gnu: docbook-utils: Import patches from debian. Resent-From: Bruno Victal Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 23 Sep 2023 14:23:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 65479 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 65479@debbugs.gnu.org Cc: Bruno Victal Received: via spool by 65479-submit@debbugs.gnu.org id=B65479.169547896031123 (code B ref 65479); Sat, 23 Sep 2023 14:23:03 +0000 Received: (at 65479) by debbugs.gnu.org; 23 Sep 2023 14:22:40 +0000 Received: from localhost ([127.0.0.1]:40256 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qk3Wo-00085j-Nx for submit@debbugs.gnu.org; Sat, 23 Sep 2023 10:22:40 -0400 Received: from smtpmciv4.myservices.hosting ([185.26.107.240]:35068) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qk3WF-00081w-QZ for 65479@debbugs.gnu.org; Sat, 23 Sep 2023 10:22:06 -0400 Received: from mail1.netim.hosting (unknown [185.26.106.173]) by smtpmciv4.myservices.hosting (Postfix) with ESMTP id 7ADBF20A1E for <65479@debbugs.gnu.org>; Sat, 23 Sep 2023 16:21:18 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail1.netim.hosting (Postfix) with ESMTP id D4F3B8009C; Sat, 23 Sep 2023 16:21:17 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at mail1.netim.hosting Received: from mail1.netim.hosting ([127.0.0.1]) by localhost (mail1-2.netim.hosting [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id nY3c_8x1vzCd; Sat, 23 Sep 2023 16:21:16 +0200 (CEST) Received: from guix-nuc.home.arpa (unknown [10.192.1.83]) (Authenticated sender: lumen@makinata.eu) by mail1.netim.hosting (Postfix) with ESMTPSA id A388F80097; Sat, 23 Sep 2023 16:21:16 +0200 (CEST) From: Bruno Victal Date: Sat, 23 Sep 2023 15:19:42 +0100 Message-ID: X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/docbook.scm (docbook-utils)[source]: Import patches from debian. Drop snippet for patching OpenSP and OpenJade. [arguments]<:phases>: Add 'autoreconf phase. [native-inputs]: Add autoconf, automake and libtool. * gnu/packages/patches/docbook-utils-documentation-edits.patch: New file. * gnu/packages/patches/docbook-utils-escape-characters.patch: Ditto. * gnu/packages/patches/docbook-utils-remove-jade-sp.patch: Ditto. * gnu/packages/patches/docbook-utils-respect-refentry-for-name.patch: Ditto. * gnu/packages/patches/docbook-utils-source-date-epoch.patch: Ditto. * gnu/packages/patches/docbook-utils-use-date-element.patch: Ditto. * gnu/local.mk: Register them. --- gnu/local.mk | 6 + gnu/packages/docbook.scm | 24 +- .../docbook-utils-documentation-edits.patch | 100 ++++++++ .../docbook-utils-escape-characters.patch | 34 +++ .../docbook-utils-remove-jade-sp.patch | 215 ++++++++++++++++++ ...book-utils-respect-refentry-for-name.patch | 34 +++ .../docbook-utils-source-date-epoch.patch | 29 +++ .../docbook-utils-use-date-element.patch | 61 +++++ 8 files changed, 496 insertions(+), 7 deletions(-) create mode 100644 gnu/packages/patches/docbook-utils-documentation-edits.patch create mode 100644 gnu/packages/patches/docbook-utils-escape-characters.patch create mode 100644 gnu/packages/patches/docbook-utils-remove-jade-sp.patch create mode 100644 gnu/packages/patches/docbook-utils-respect-refentry-for-name.patch create mode 100644 gnu/packages/patches/docbook-utils-source-date-epoch.patch create mode 100644 gnu/packages/patches/docbook-utils-use-date-element.patch diff --git a/gnu/local.mk b/gnu/local.mk index c399a94e6b..ea923be41d 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1070,6 +1070,12 @@ dist_patch_DATA = \ %D%/packages/patches/diffutils-fix-signal-processing.patch \ %D%/packages/patches/directfb-davinci-glibc-228-compat.patch \ %D%/packages/patches/dkimproxy-add-ipv6-support.patch \ + %D%/packages/patches/docbook-utils-documentation-edits.patch \ + %D%/packages/patches/docbook-utils-escape-characters.patch \ + %D%/packages/patches/docbook-utils-remove-jade-sp.patch \ + %D%/packages/patches/docbook-utils-respect-refentry-for-name.patch \ + %D%/packages/patches/docbook-utils-source-date-epoch.patch \ + %D%/packages/patches/docbook-utils-use-date-element.patch \ %D%/packages/patches/doc++-include-directives.patch \ %D%/packages/patches/doc++-segfault-fix.patch \ %D%/packages/patches/dovecot-opensslv3.patch \ diff --git a/gnu/packages/docbook.scm b/gnu/packages/docbook.scm index 47d3a04479..994aa57f18 100644 --- a/gnu/packages/docbook.scm +++ b/gnu/packages/docbook.scm @@ -773,18 +773,20 @@ (define-public docbook-utils (sha256 (base32 "1scj5vgw1xz872pq54a89blcxqqm11p90yzv8a9mqq57x27apyj8")) + (patches + (search-patches "docbook-utils-documentation-edits.patch" + "docbook-utils-escape-characters.patch" + "docbook-utils-remove-jade-sp.patch" + "docbook-utils-respect-refentry-for-name.patch" + "docbook-utils-use-date-element.patch" + "docbook-utils-source-date-epoch.patch")) (modules '((guix build utils))) (snippet #~(begin ;; Patch build system. - (substitute* (find-files "." "\\.in$") + (substitute* (find-files "." "\\.((in)|(am))$") ;; Do not hard-code SGML_CATALOG_FILES. - ((".*SGML_CATALOG_FILES=/etc/sgml/catalog.*") "") - ;; Use OpenSP and OpenJade. - (("\\bjade\\b") - "openjade") - (("\\bnsgmls\\b") - "onsgmls")) + ((".*SGML_CATALOG_FILES=/etc/sgml/catalog.*") "")) ;; Do not override the SGML_CATALOG_FILES environment ;; variable. @@ -805,6 +807,14 @@ (define-public docbook-utils "CONVERT=") (("\\[ -x /usr/bin/([^ ]+) \\]" _ command) (format #f "command -v ~a > /dev/null" command))))))) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'autoreconf + (lambda _ + (invoke "autoreconf" "-vif")))))) + (native-inputs (list autoconf automake libtool)) (build-system gnu-build-system) ;; Propagated for convenience. All these tools are used at run time to ;; provide the complete functionality of the docbook-utils commands. diff --git a/gnu/packages/patches/docbook-utils-documentation-edits.patch b/gnu/packages/patches/docbook-utils-documentation-edits.patch new file mode 100644 index 0000000000..03c0a4abcf --- /dev/null +++ b/gnu/packages/patches/docbook-utils-documentation-edits.patch @@ -0,0 +1,100 @@ +Description: Fix some typos in man pages +Author: Mathieu Malaterre + +Index: docbook-utils-0.6.14/doc/man/docbook2man-spec.pl.1 +=================================================================== +--- docbook-utils-0.6.14.orig/doc/man/docbook2man-spec.pl.1 2012-05-09 18:39:17.932819095 +0200 ++++ docbook-utils-0.6.14/doc/man/docbook2man-spec.pl.1 2012-05-09 18:39:24.780818845 +0200 +@@ -17,7 +17,7 @@ + .SH "DESCRIPTION" + .PP + \fBdocbook2man\fR is a sgmlspl spec file that produced man +-pages (using the -man macros) from DocBook RefEntry markup. ++pages (using the \-man macros) from DocBook RefEntry markup. + .PP + The program reads ESIS produced by nsgmls (or other SGML parsers) from + standard input. Markup not found in RefEntry is discarded. +Index: docbook-utils-0.6.14/doc/man/frontend-spec.7 +=================================================================== +--- docbook-utils-0.6.14.orig/doc/man/frontend-spec.7 2012-05-09 18:41:45.172813778 +0200 ++++ docbook-utils-0.6.14/doc/man/frontend-spec.7 2012-05-09 18:42:03.176813129 +0200 +@@ -10,7 +10,7 @@ + .SH "DESCRIPTION" + .PP + \fBjw\fR(1) calls frontends like +-\fIfrontends/docbook\fR to get the informations ++\fIfrontends/docbook\fR to get the information + specific to a given input format. The frontend knows which information + to return from the first command line parameter. It gets all necessary + data via environment variables ready to use. +Index: docbook-utils-0.6.14/doc/man/jw.1 +=================================================================== +--- docbook-utils-0.6.14.orig/doc/man/jw.1 2012-05-09 18:39:35.612818456 +0200 ++++ docbook-utils-0.6.14/doc/man/jw.1 2012-05-09 18:40:51.736815708 +0200 +@@ -142,7 +142,7 @@ + The following options apply to the conversion script: + .TP + \fB -f \fIfrontend\fB | --frontend \fIfrontend\fB \fR +-Allows to specify another frontend than default \fIdocbook\fR\&. ++Allows one to specify another frontend than default \fIdocbook\fR\&. + The list of currently available frontends is: + .RS + .TP +@@ -156,13 +156,13 @@ + .RE + .TP + \fB -b \fIbackend\fB | --backend \fIbackend\fB \fR +-Allows to specify another backend than default ++Allows one to specify another backend than default + \fIHTML\fR\&. The list of currently available + backends is: + .RS + .TP + \fB\fIdvi\fB\fR +-Converts to DVI (DeVice Independant ++Converts to DVI (DeVice Independent + files) by calling \fBJade\fR or + \fBOpenJade\fR\&. + .TP +@@ -210,7 +210,7 @@ + .RE + .TP + \fB -c \fIfile\fB | --cat \fIfile\fB \fR +-Allows to use an extra SGML Open Catalog that will list ++Allows one to use an extra SGML Open Catalog that will list + other files like customization style sheets, adaptations to the + DocBook Document Type Definition, special character entities, + etc. This catalog is added to the list of catalogs determined +@@ -241,7 +241,7 @@ + are specified on the command line. + .TP + \fB -d \fIfile\fB|default|none | --dsl \fIfile\fB|default|none \fR +-Allows to use a customized style sheet instead ++Allows one to use a customized style sheet instead + of the default one. + + A "target" starting with a hash mark "#" can be appended +Index: docbook-utils-0.6.14/doc/man/sgmldiff.1 +=================================================================== +--- docbook-utils-0.6.14.orig/doc/man/sgmldiff.1 2012-05-09 18:41:13.316814927 +0200 ++++ docbook-utils-0.6.14/doc/man/sgmldiff.1 2012-05-09 18:41:38.032814038 +0200 +@@ -17,7 +17,7 @@ + + .SH "DESCRIPTION" + .PP +-This perl script allows to determine the structural differences ++This perl script allows one to determine the structural differences + between two SGML files. It compares the files, regardless of what + is in between the tags, to only focus on the markup. Its output + is similar to \fBdiff\fR(1)\&. +@@ -62,8 +62,8 @@ + Lines 5 to 7 of the first file have been changed + into lines 8 to 10 of the second line. + In addition to those summaries, the lines of the first file are +-shown preceeded by '<' and the lines of the second file are +-shown preceeded by '>". ++shown preceded by '<' and the lines of the second file are ++shown preceded by '>". + .SH "OPTIONS" + .PP + Here is the list of actions that can be requested to diff --git a/gnu/packages/patches/docbook-utils-escape-characters.patch b/gnu/packages/patches/docbook-utils-escape-characters.patch new file mode 100644 index 0000000000..58fca8bace --- /dev/null +++ b/gnu/packages/patches/docbook-utils-escape-characters.patch @@ -0,0 +1,34 @@ +Description: incorrectly strips whitespace (patch included) + In the previous upload, docbook2man was patched to escape the special + characters . and ' at the beginning of a line (see #399947). + Unfortunately that patch was incorrect -- as well as escaping the special + characters, it also removes all whitespace from the beginning of + affected lines. As a result, if you are in a block where whitespace + matters (such as ...) then the output is now incorrect. + + This is very easy to fix -- just match the whitespace and preserve it, + instead of tossing it away. The full patch (just two lines) is included + below. +Author: Ben Burton +Forwarded: not-needed +Bug-Debian: http://bugs.debian.org/528334 + +Edit by Bruno Victal : + Patch was edited so that it could be applied against the original + docbook-utils-0.6.14 sources. + +Index: docbook-utils-0.6.14/helpers/docbook2man-spec.pl +=================================================================== +--- docbook-utils-0.6.14.orig/helpers/docbook2man-spec.pl 2012-05-09 18:59:42.584774885 +0200 ++++ docbook-utils-0.6.14/helpers/docbook2man-spec.pl 2012-05-09 19:00:34.788773002 +0200 +@@ -1212,8 +1212,8 @@ + $_[0] =~ s/\\/\\\\/g; + + # Escape dots and single quotes in column 1 +- $_[0] =~ s/^\./\\\&\./; +- $_[0] =~ s/^\'/\\\&\'/; ++ $_[0] =~ s/^([ \t]*)\./$1\\\&\./; ++ $_[0] =~ s/^([ \t]*)\'/$1\\\&\'/; + + # In non-'pre'-type elements: + if(!$nocollapse_whitespace) { diff --git a/gnu/packages/patches/docbook-utils-remove-jade-sp.patch b/gnu/packages/patches/docbook-utils-remove-jade-sp.patch new file mode 100644 index 0000000000..8aae51373f --- /dev/null +++ b/gnu/packages/patches/docbook-utils-remove-jade-sp.patch @@ -0,0 +1,215 @@ +Description: Change dependencies on jade and sp to openjade and opensp +Author: Neil Roeth +Last-Update: 2016-07-24 + +Edit by Bruno Victal : + Patch was edited so that it could be applied against the original + docbook-utils-0.6.14 sources. +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- a/doc/HTML/Makefile.am ++++ b/doc/HTML/Makefile.am +@@ -1,4 +1,4 @@ +-htmldir = $(docdir)/html/docbook-utils-@VERSION@ ++htmldir = $(docdir)/html + html_DATA = api.html \ + backend-spec.html \ + docbook2man.html \ +@@ -25,6 +25,6 @@ + $(top_srcdir)/doc/refentry/sgmldiff.sgml + SGML_CATALOG_FILES=/etc/sgml/catalog \ + SGML_SEARCH_PATH=$(top_srcdir):$(top_srcdir)/doc:.. \ +- jade -t sgml -i html -d $(top_srcdir)/docbook-utils.dsl\#html \ ++ openjade -t sgml -i html -d $(top_srcdir)/docbook-utils.dsl\#html \ + -V '%use-id-as-filename%' $< + +--- a/doc/man/Makefile.am ++++ b/doc/man/Makefile.am +@@ -12,5 +12,5 @@ + $(top_srcdir)/helpers/docbook2man-spec.pl + SGML_CATALOG_FILES=/etc/sgml/catalog \ + SGML_SEARCH_PATH=$(top_srcdir)/doc:.. \ +- nsgmls $< | \ ++ onsgmls $< | \ + sgmlspl $(top_srcdir)/helpers/docbook2man-spec.pl +--- a/backends/man.in ++++ b/backends/man.in +@@ -7,8 +7,8 @@ + TMPDIR=`mktemp -d /tmp/man.XXXXXX` || \ + { echo >&2 "man backend: could not create secure temporary directory"; exit 1;} + trap 'rm -rf "${TMPDIR}"' EXIT +-nsgmls $SGML_FILE > "${TMPDIR}/nsgmls.tmp" +-sgmlspl $HELPER <"${TMPDIR}/nsgmls.tmp" 2>"${TMPDIR}/errs" ++onsgmls $SGML_FILE > "${TMPDIR}/onsgmls.tmp" ++sgmlspl $HELPER <"${TMPDIR}/onsgmls.tmp" 2>"${TMPDIR}/errs" + if [ $? -ne 0 ] + then + cat "${TMPDIR}/errs" +@@ -18,7 +18,7 @@ + if grep unresolved "${TMPDIR}/errs" >/dev/null 2>&1 + then + echo "Resolving references.." +- sgmlspl $HELPER <"${TMPDIR}/nsgmls.tmp" ++ sgmlspl $HELPER <"${TMPDIR}/onsgmls.tmp" + if [ $? -ne 0 ] + then exit 1 + fi +--- a/backends/texi.in ++++ b/backends/texi.in +@@ -3,7 +3,7 @@ + # This program is under GPL license. See LICENSE file for details. + + # Convert to texinfo +-nsgmls $SGML_FILE | sgmlspl $SGML_BASE_DIR/docbook/utils-@VERSION@/helpers/docbook2texi-spec.pl >$SGML_FILE_NAME.texi ++onsgmls $SGML_FILE | sgmlspl docbook2texi-spec.pl >$SGML_FILE_NAME.texi + if [ $? -ne 0 ] + then exit 1 + fi +--- a/bin/sgmldiff.in ++++ b/bin/sgmldiff.in +@@ -22,13 +22,13 @@ + + use strict; + use integer; +-use vars qw($nsgmls $errors $errorlog $VERSION); ++use vars qw($onsgmls $errors $errorlog $VERSION); + use Getopt::Long 2.01; + + $VERSION = 1.03; + +-my $nsgmls; +-$nsgmls = "@jade_bindir@/nsgmls"; ++my $onsgmls; ++$onsgmls = "@jade_bindir@/onsgmls"; + + #---------------------------------------------------------------------- + # TODO: +@@ -37,7 +37,7 @@ + # - Wait for suggestions ;-) + # + # Note: the input file need not be valid, nor is it necessary to have +-# the DTDs. nsgmls always returns a structure. ++# the DTDs. onsgmls always returns a structure. + #---------------------------------------------------------------------- + + # Get file name +@@ -141,11 +141,11 @@ + unlink $diff2; + + #--------------------------------------------------------------------- +-# Process nsgmls output: keep all stuff that is important for the ++# Process onsgmls output: keep all stuff that is important for the + # structure comparison. Make two structures: one that is diffed + # (without text) (DIFF) and one that is used to present the + # differences to the user (@full). For more info: see SP +-# documentation, nsgmls output format. ++# documentation, onsgmls output format. + + sub prepare { + my($filename,$todiffname) = @_; +@@ -161,7 +161,7 @@ + my @line_numbered = (); + my $line = 0; + +- open(ESIS, "$nsgmls -l $errors $errorlog -onotation-sysid -oid -oempty $filename | "); #-oentity generates strange output; ? -ononsgml ++ open(ESIS, "$onsgmls -l $errors $errorlog -onotation-sysid -oid -oempty $filename | "); #-oentity generates strange output; ? -ononsgml + open(DIFF, "> $todiffname"); + while () { + chomp $_; +@@ -375,7 +375,7 @@ + }; + + #---------------------------------------------------------------------- +-# Normalise data text from nsgmls (i.e. don't print the escaped text). ++# Normalise data text from onsgmls (i.e. don't print the escaped text). + sub normalise_text { + my($string,$prefix) = @_; + my $result = "$prefix"; +--- a/configure.in ++++ b/configure.in +@@ -21,7 +21,7 @@ + + dnl Checks for programs. + jade_bindirs="/usr/bin /usr/local/bin" +-AC_FIND_PROGRAM(nsgmls, $jade_bindirs, jade_bindir) ++AC_FIND_PROGRAM(onsgmls, $jade_bindirs, jade_bindir) + AC_SUBST(jade_bindir) + + perl_bindirs="/usr/bin /usr/local/bin" +--- a/doc/refentry/docbook2man-spec.pl.sgml ++++ b/doc/refentry/docbook2man-spec.pl.sgml +@@ -19,7 +19,7 @@ + + + +-nsgmls ++onsgmls + sgml document + | sgmlspl + docbook2man-spec.pl +@@ -35,7 +35,7 @@ + + + +-The program reads ESIS produced by nsgmls (or other SGML parsers) from ++The program reads ESIS produced by onsgmls (or other SGML parsers) from + standard input. Markup not found in RefEntry is discarded. + + +--- a/doc/refentry/docbook2texi-spec.pl.sgml ++++ b/doc/refentry/docbook2texi-spec.pl.sgml +@@ -20,7 +20,7 @@ + + + +-nsgmls ++onsgmls + sgml document + | sgmlspl + docbook2texi-spec.pl +@@ -37,7 +37,7 @@ + + + +-The program reads ESIS produced by nsgmls (or other SGML parsers) from ++The program reads ESIS produced by onsgmls (or other SGML parsers) from + standard input. Currently the document element must be Book, + otherwise the results are undefined. + +--- a/doc/refentry/jw.sgml ++++ b/doc/refentry/jw.sgml +@@ -630,7 +630,7 @@ + 1, + install-catalog + 8, +- nsgmls ++ onsgmls + 1, docbook-utils + homepage. +--- a/doc/refentry/sgmldiff.sgml ++++ b/doc/refentry/sgmldiff.sgml +@@ -238,10 +238,10 @@ + + + +- nsgmls 1 ++ onsgmls 1 + + +- a base component of Jade DSSSL engine ++ a base component of OpenJade DSSSL engine + + + +--- a/helpers/docbook2man-spec.pl ++++ b/helpers/docbook2man-spec.pl +@@ -7,7 +7,7 @@ + The SGMLSpm package from CPAN. This contains the sgmlspl script which + is used to grok this file. Use it like this: + +-nsgmls some-docbook-document.sgml | sgmlspl docbook2man-spec.pl ++onsgmls some-docbook-document.sgml | sgmlspl docbook2man-spec.pl + + =head1 DESCRIPTION + diff --git a/gnu/packages/patches/docbook-utils-respect-refentry-for-name.patch b/gnu/packages/patches/docbook-utils-respect-refentry-for-name.patch new file mode 100644 index 0000000000..d577fed748 --- /dev/null +++ b/gnu/packages/patches/docbook-utils-respect-refentry-for-name.patch @@ -0,0 +1,34 @@ +Description: docbook2man should translate the NAME section according to the REFENTRY's lang attribute + Currently, docbook2man translates the NAME section according to the lang + attribute provided to the REFNAMEDIV tag. + When a lang attribute is specified in the REFENTRY tag and no lang + attribute is specified with the REFNAMEDIV, the lang attribute of the + REFENTRY should be used. +Author: Nicolas François +Forwarded: not-needed +Bug-Debian: http://bugs.debian.org/394511 + +Index: docbook-utils-0.6.14/helpers/docbook2man-spec.pl +=================================================================== +--- docbook-utils-0.6.14.orig/helpers/docbook2man-spec.pl 2012-05-09 18:55:53.276783163 +0200 ++++ docbook-utils-0.6.14/helpers/docbook2man-spec.pl 2012-05-09 18:58:04.792778418 +0200 +@@ -359,11 +359,14 @@ + # NAME section + man_sgml('', sub { + my %words = qw( fr NOM es NOMBRE de NAME ); +- if (defined($_[0]->attribute('LANG')->value)) { +- my $id = $_[0]->attribute('LANG')->value; +- my $ad = $words{$id}; +- output("\n.SH $ad\n");} +- else {output("\n.SH NAME\n");} ++ # Use the REFNAMEDIV's lang attribute, and default to the ++ # REFENTRY's lang attribute. ++ my $lang = $_[0]->attribute('LANG')->value; ++ $lang = $manpage_lang unless defined $lang; ++ if (defined($lang) and defined $words{lc($lang)}) { ++ my $ad = $words{lc($lang)}; ++ output("\n.SH $ad\n");} ++ else { output("\n.SH NAME\n");} + }); + + sgml('', \&save_cdata); diff --git a/gnu/packages/patches/docbook-utils-source-date-epoch.patch b/gnu/packages/patches/docbook-utils-source-date-epoch.patch new file mode 100644 index 0000000000..ee3510a1d0 --- /dev/null +++ b/gnu/packages/patches/docbook-utils-source-date-epoch.patch @@ -0,0 +1,29 @@ +Author: Reiner Herrmann +Description: Support SOURCE_DATE_EPOCH for timestamps + To allow generating documents in a reproducible way, + allow overriding the timestamp through the environment. + . + See also: https://reproducible-builds.org/specs/source-date-epoch/ +Bug-Debian: https://bugs.debian.org/800797 + +--- a/helpers/docbook2man-spec.pl ++++ b/helpers/docbook2man-spec.pl +@@ -57,6 +57,7 @@ + use SGMLS; # Use the SGMLS package. + use SGMLS::Output; # Use stack-based output. + use SGMLS::Refs; ++use POSIX qw(strftime setlocale LC_TIME); + + ######################################################################## + # SGMLSPL script produced automatically by the script sgmlspl.pl +@@ -279,6 +280,10 @@ + _END_BANNER + + my $date = `date "+%d %B %Y"`; ++ if ($ENV{SOURCE_DATE_EPOCH}) { ++ setlocale(LC_TIME, "C"); ++ $date = strftime("%d %B %Y", gmtime($ENV{SOURCE_DATE_EPOCH} || time)); ++ } + my $manpage_date = $manpage_date || $date ; + + output '.TH "'; diff --git a/gnu/packages/patches/docbook-utils-use-date-element.patch b/gnu/packages/patches/docbook-utils-use-date-element.patch new file mode 100644 index 0000000000..192233d41f --- /dev/null +++ b/gnu/packages/patches/docbook-utils-use-date-element.patch @@ -0,0 +1,61 @@ +Description: patch to get the from the sgml file + For the moment, docbook2man doesn't use the tag date in + to but `date "+%d %B %Y"`, and thus depend on the current locale. + + + + 06 September 2003 + + + + A patch against /usr/share/perl5/sgmlspl-specs/docbook2man-spec.pl + allows to use the date written in the source SGML file (which can be + localized) instead of the current date. + + However, if no correct date tag is present in the SGML file, the date + written in the manpage will depend on the current locale. +Author: Simon Paillard +Forwarded: not-needed +Bug-Debian: http://bugs.debian.org/214982 + +Index: docbook-utils-0.6.14/helpers/docbook2man-spec.pl +=================================================================== +--- docbook-utils-0.6.14.orig/helpers/docbook2man-spec.pl 2012-05-09 18:27:28.000000000 +0200 ++++ docbook-utils-0.6.14/helpers/docbook2man-spec.pl 2012-05-09 18:55:53.276783163 +0200 +@@ -278,8 +278,9 @@ + .\\" etc. to Steve Cheng . + _END_BANNER + +- my $manpage_date = `date "+%d %B %Y"`; +- ++ my $date = `date "+%d %B %Y"`; ++ my $manpage_date = $manpage_date || $date ; ++ + output '.TH "'; + + # If the title is not mixed-case, convention says to +@@ -292,7 +293,7 @@ + } + + output '" "', fold_string($manpage_sect), +- '" "', fold_string(`date "+%d %B %Y"`), ++ '" "', fold_string($manpage_date), + '" "', $manpage_misc, + '" "', $manpage_manual, + "\"\n"; +@@ -568,6 +569,15 @@ + sgml('', sub { $_[0]->parent->ext->{'attribution'} = pop_output(); }); + + ++sgml('', sub { ++ save_cdata(); ++}); ++sgml('', sub { ++ $manpage_date = fold_string(pop_output()); ++ $raw_cdata--; ++}); ++ ++ + # IGNORE. + sgml('', sub { push_output('nul'); }); + sgml('', sub { pop_output(); }); From patchwork Sat Sep 23 14:19:43 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Bruno Victal X-Patchwork-Id: 54182 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 1483A27BBEA; Sat, 23 Sep 2023 15:22:50 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id A0B5127BBE2 for ; Sat, 23 Sep 2023 15:22:47 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qk3WF-0006zL-4d; Sat, 23 Sep 2023 10:22:03 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qk3W5-0006tq-2B for guix-patches@gnu.org; Sat, 23 Sep 2023 10:21:53 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qk3W4-00038d-Qh for guix-patches@gnu.org; Sat, 23 Sep 2023 10:21:52 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qk3WG-000825-00 for guix-patches@gnu.org; Sat, 23 Sep 2023 10:22:04 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#65479] [PATCH core-updates v2 08/62] gnu: docbook2x: Import patches from debian. Resent-From: Bruno Victal Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 23 Sep 2023 14:22:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 65479 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 65479@debbugs.gnu.org Cc: Bruno Victal Received: via spool by 65479-submit@debbugs.gnu.org id=B65479.169547889930651 (code B ref 65479); Sat, 23 Sep 2023 14:22:03 +0000 Received: (at 65479) by debbugs.gnu.org; 23 Sep 2023 14:21:39 +0000 Received: from localhost ([127.0.0.1]:40176 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qk3Vq-0007y0-IU for submit@debbugs.gnu.org; Sat, 23 Sep 2023 10:21:39 -0400 Received: from smtpm3.myservices.hosting ([185.26.105.234]:56776) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qk3Vi-0007xE-Pc for 65479@debbugs.gnu.org; Sat, 23 Sep 2023 10:21:33 -0400 Received: from mail1.netim.hosting (unknown [185.26.106.173]) by smtpm3.myservices.hosting (Postfix) with ESMTP id B75F721076 for <65479@debbugs.gnu.org>; Sat, 23 Sep 2023 16:21:18 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mail1.netim.hosting (Postfix) with ESMTP id 1564680097; Sat, 23 Sep 2023 16:21:18 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at mail1.netim.hosting Received: from mail1.netim.hosting ([127.0.0.1]) by localhost (mail1-2.netim.hosting [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id VNc8hvcN8Reh; Sat, 23 Sep 2023 16:21:17 +0200 (CEST) Received: from guix-nuc.home.arpa (unknown [10.192.1.83]) (Authenticated sender: lumen@makinata.eu) by mail1.netim.hosting (Postfix) with ESMTPSA id 3184080092; Sat, 23 Sep 2023 16:21:17 +0200 (CEST) From: Bruno Victal Date: Sat, 23 Sep 2023 15:19:43 +0100 Message-ID: X-Mailer: git-send-email 2.41.0 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/docbook.scm (docbook2x)[source]: Import patches from debian. Prefer patching in source over 'patch-sources phase. [arguments]<#:phases>: Drop 'patch-sources phase. Add 'autoreconf phase. [inputs]: Move after arguments. Relocate docbook-xml-4.5 to … [natine-inputs]: … here. Add autoconf, automake and libtool. * gnu/packages/patches/docbook2x-filename-handling.patch: New file. * gnu/packages/patches/docbook2x-manpage-typo.patch: Ditto. * gnu/packages/patches/docbook2x-preprocessor-declaration.patch: Ditto. * gnu/packages/patches/docbook2x-static-datadir-evaluation.patch: Ditto. * gnu/local.mk: Register it. --- gnu/local.mk | 4 + gnu/packages/docbook.scm | 47 ++++++---- .../patches/docbook2x-filename-handling.patch | 42 +++++++++ .../patches/docbook2x-manpage-typo.patch | 24 +++++ .../docbook2x-preprocessor-declaration.patch | 89 +++++++++++++++++++ .../docbook2x-static-datadir-evaluation.patch | 19 ++++ 6 files changed, 206 insertions(+), 19 deletions(-) create mode 100644 gnu/packages/patches/docbook2x-filename-handling.patch create mode 100644 gnu/packages/patches/docbook2x-manpage-typo.patch create mode 100644 gnu/packages/patches/docbook2x-preprocessor-declaration.patch create mode 100644 gnu/packages/patches/docbook2x-static-datadir-evaluation.patch diff --git a/gnu/local.mk b/gnu/local.mk index ea923be41d..8d4d64a591 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1076,6 +1076,10 @@ dist_patch_DATA = \ %D%/packages/patches/docbook-utils-respect-refentry-for-name.patch \ %D%/packages/patches/docbook-utils-source-date-epoch.patch \ %D%/packages/patches/docbook-utils-use-date-element.patch \ + %D%/packages/patches/docbook2x-filename-handling.patch \ + %D%/packages/patches/docbook2x-manpage-typo.patch \ + %D%/packages/patches/docbook2x-preprocessor-declaration.patch \ + %D%/packages/patches/docbook2x-static-datadir-evaluation.patch \ %D%/packages/patches/doc++-include-directives.patch \ %D%/packages/patches/doc++-segfault-fix.patch \ %D%/packages/patches/dovecot-opensslv3.patch \ diff --git a/gnu/packages/docbook.scm b/gnu/packages/docbook.scm index 994aa57f18..6a138dcb77 100644 --- a/gnu/packages/docbook.scm +++ b/gnu/packages/docbook.scm @@ -27,6 +27,7 @@ (define-module (gnu packages docbook) #:use-module (gnu packages) + #:use-module (gnu packages autotools) #:use-module (gnu packages bash) #:use-module (gnu packages compression) #:use-module (gnu packages imagemagick) @@ -867,32 +868,25 @@ (define-public docbook2x version "/docbook2X-" version ".tar.gz")) (sha256 (base32 - "0ifwzk99rzjws0ixzimbvs83x6cxqk1xzmg84wa1p7bs6rypaxs0")))) + "0ifwzk99rzjws0ixzimbvs83x6cxqk1xzmg84wa1p7bs6rypaxs0")) + (patches + (search-patches "docbook2x-filename-handling.patch" + "docbook2x-manpage-typo.patch" + "docbook2x-preprocessor-declaration.patch" + "docbook2x-static-datadir-evaluation.patch")) + (modules '((guix build utils))) + (snippet + ;; Fix a failing test (maybe it worked with old texinfo?) + #~(substitute* "test/complete-manuals/at1.xml" + (("") + ""))))) (build-system gnu-build-system) - (inputs - (list bash-minimal - docbook-xml-4.5 - perl - perl-xml-namespacesupport - perl-xml-parser - perl-xml-sax - perl-xml-sax-base - texinfo - libxslt)) (arguments (list #:phases #~(modify-phases %standard-phases (add-after 'configure 'patch-sources (lambda* (#:key inputs #:allow-other-keys) - ;; Fix failed substitution in config.pl - (substitute* "perl/config.pl" - (("\\$\\{prefix\\}") - #$output)) - ;; Fix a failing test (maybe it worked with old texinfo?) - (substitute* "test/complete-manuals/at1.xml" - (("") - "")) ;; Patch all the tests use DocBook 4.5 (substitute* (find-files "test" "\\.xml$") (("\"-//OASIS//DTD DocBook XML V4\\..+//EN\"") @@ -903,6 +897,9 @@ (define-public docbook2x (setenv "XML_CATALOG_FILES" (string-append (assoc-ref inputs "docbook-xml") "/xml/dtd/docbook/catalog.xml")))) + (add-after 'unpack 'autoreconf + (lambda _ + (invoke "autoreconf" "-vif"))) (add-after 'install 'wrap-programs (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((programs @@ -936,6 +933,18 @@ (define-public docbook2x (symlink prog (string-append #$output "/bin/db2x_" prog))) '("docbook2man" "docbook2texi"))))))) + (inputs + (list bash-minimal + perl + perl-xml-namespacesupport + perl-xml-parser + perl-xml-sax + perl-xml-sax-base + texinfo + libxslt)) + (native-inputs + (list autoconf automake libtool + docbook-xml-4.5)) (home-page "https://docbook2x.sourceforge.net") (synopsis "Convert DocBook to man page and Texinfo format") (description diff --git a/gnu/packages/patches/docbook2x-filename-handling.patch b/gnu/packages/patches/docbook2x-filename-handling.patch new file mode 100644 index 0000000000..b6895dd0d3 --- /dev/null +++ b/gnu/packages/patches/docbook2x-filename-handling.patch @@ -0,0 +1,42 @@ +## 03_fix_420153_filename_whitespace_handling.dpatch by +## Daniel Leidert (dale) +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Peter Eisentraut reported a regression in the whitespace handling of +## DP: refentrytitle content during filename creation: +## DP: http://bugs.debian.org/420153. The problem is, that upstream first +## DP: replaces all spaces (but not linebreaks btw) with underlines and then +## DP: it tries to normalize the result. This means, that a linebreak with +## DP: additional whitespaces results in manpage names like 'foo_ ____bar.9'. +## DP: So what we basically do in this patch is, that we first normalize the +## DP: refentrytitle and then replace any spaces left with underlines. + +Edit by Bruno Victal : + Removed dpatch lines. + +--- docbook2x-0.8.8~/xslt/man/manpage.xsl 2006-04-20 15:45:55.000000000 +0200 ++++ docbook2x-0.8.8/xslt/man/manpage.xsl 2007-04-20 16:19:28.000000000 +0200 +@@ -30,7 +30,7 @@ + + + +- ++ + + + +--- docbook2x-0.8.8~/xslt/man/refentry.xsl 2006-04-21 04:39:55.000000000 +0200 ++++ docbook2x-0.8.8/xslt/man/refentry.xsl 2007-04-20 16:21:53.000000000 +0200 +@@ -38,7 +38,11 @@ + + + +- ++ ++ ++ ++ ++ + +