~ruther/guix-local

f9df228dbde7e9b85b13721d33054481d66f0488 — Maxim Cournoyer 11 months ago 1465add
gnu: docbook2x: Fix invalid lt entity re-declaration.

This bug would cause multiple errors when building the documentation of Git,
for example, like:

   error : xmlAddEntity: invalid redeclaration of predefined entity

* gnu/packages/patches/docbook2x-entity-lt.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/docbook.scm (docbook2x) [source]: Apply it.

Change-Id: I8d2e694ff4b97a1016644d3525b2cddb1b85f12d
3 files changed, 47 insertions(+), 1 deletions(-)

M gnu/local.mk
M gnu/packages/docbook.scm
A gnu/packages/patches/docbook2x-entity-lt.patch
M gnu/local.mk => gnu/local.mk +1 -0
@@ 1206,6 1206,7 @@ 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-entity-lt.patch                \
  %D%/packages/patches/docbook2x-filename-handling.patch	\
  %D%/packages/patches/docbook2x-fix-synopsis.patch		\
  %D%/packages/patches/docbook2x-manpage-typo.patch		\

M gnu/packages/docbook.scm => gnu/packages/docbook.scm +2 -1
@@ 909,7 909,8 @@ Detect the differences in markup between two SGML files.
                               "docbook2x-fix-synopsis.patch"
                               "docbook2x-manpage-typo.patch"
                               "docbook2x-preprocessor-declaration.patch"
                               "docbook2x-static-datadir-evaluation.patch"))
                               "docbook2x-static-datadir-evaluation.patch"
                               "docbook2x-entity-lt.patch"))
              (modules '((guix build utils)))
              (snippet
               ;; Fix a failing test (maybe it worked with old texinfo?)

A gnu/packages/patches/docbook2x-entity-lt.patch => gnu/packages/patches/docbook2x-entity-lt.patch +44 -0
@@ 0,0 1,44 @@
Upstream-status: https://sourceforge.net/p/docbook2x/bugs/25/

From 040f468fcfae3fe67818023ebc54f3f48fc1bfd9 Mon Sep 17 00:00:00 2001
From: Sebastian Pipping <sebastian@pipping.org>
Date: Mon, 24 Feb 2025 23:25:40 +0100
Subject: [PATCH] Fix invalid redeclaration of predefined XML entity "&lt;"

Section "4.6 Predefined Entities" of XML 1.0r4 is clear that:

> If the entities lt or amp are declared, they MUST be declared
> as internal entities whose replacement text is a character reference
> to the respective character (less-than sign or ampersand) being escaped[.]

Source:
https://www.w3.org/TR/2006/REC-xml-20060816/#sec-predefined-ent
---
 xslt/common/text/l10n-set.xml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/xslt/common/text/l10n-set.xml b/xslt/common/text/l10n-set.xml
index 0ed7454..b2c334b 100644
--- a/xslt/common/text/l10n-set.xml
+++ b/xslt/common/text/l10n-set.xml
@@ -21,7 +21,7 @@
 <!ENTITY it SYSTEM "it.xml">
 <!ENTITY ja SYSTEM "ja.xml">
 <!ENTITY ko SYSTEM "ko.xml">
-<!ENTITY lt SYSTEM "lt.xml">
+<!ENTITY lt_ SYSTEM "lt.xml">
 <!ENTITY nl SYSTEM "nl.xml">
 <!ENTITY nn SYSTEM "nn.xml">
 <!ENTITY no SYSTEM "no.xml">
@@ -65,7 +65,7 @@
 &it;
 &ja;
 &ko;
-&lt;
+&lt_;
 &nl;
 &nn;
 &no;
-- 
2.48.1