diff --git a/sys-auth/elogind/elogind-255.24.ebuild b/sys-auth/elogind/elogind-255.24.ebuild index 34016ece5b695..308c3ee5e4342 100644 --- a/sys-auth/elogind/elogind-255.24.ebuild +++ b/sys-auth/elogind/elogind-255.24.ebuild @@ -61,6 +61,7 @@ PATCHES=( "${FILESDIR}/${PN}-255.17-revert-s2idle.patch" # bug 939042 "${FILESDIR}/${PN}-255.22-musl.patch" # bug 967191 "${FILESDIR}/${PN}-255.22-musl-deux.patch" # bug 967711 + "${FILESDIR}/${PN}-255.24-lxml-6.1.3.patch" # bug 981933 ) python_check_deps() { diff --git a/sys-auth/elogind/elogind-255.25.ebuild b/sys-auth/elogind/elogind-255.25.ebuild index bff5d093f9c0f..39bc644334fc2 100644 --- a/sys-auth/elogind/elogind-255.25.ebuild +++ b/sys-auth/elogind/elogind-255.25.ebuild @@ -61,6 +61,7 @@ PATCHES=( "${FILESDIR}/${PN}-255.17-revert-s2idle.patch" # bug 939042 "${FILESDIR}/${PN}-255.22-musl.patch" # bug 967191 "${FILESDIR}/${PN}-255.22-musl-deux.patch" # bug 967711 + "${FILESDIR}/${PN}-255.24-lxml-6.1.3.patch" # bug 981933 ) python_check_deps() { diff --git a/sys-auth/elogind/elogind-255.27.ebuild b/sys-auth/elogind/elogind-255.27.ebuild index efec699ab1ed6..099710f957858 100644 --- a/sys-auth/elogind/elogind-255.27.ebuild +++ b/sys-auth/elogind/elogind-255.27.ebuild @@ -60,6 +60,7 @@ PATCHES=( # https://github.com/elogind/elogind/issues/285 "${FILESDIR}/${PN}-255.17-revert-s2idle.patch" # bug 939042 "${FILESDIR}/${PN}-255.22-musl.patch" # bug 967191 + "${FILESDIR}/${PN}-255.24-lxml-6.1.3.patch" # bug 981933 ) python_check_deps() { diff --git a/sys-auth/elogind/elogind-257.14-r1.ebuild b/sys-auth/elogind/elogind-257.14-r1.ebuild index c05136625cfe1..43231c914184b 100644 --- a/sys-auth/elogind/elogind-257.14-r1.ebuild +++ b/sys-auth/elogind/elogind-257.14-r1.ebuild @@ -55,6 +55,7 @@ DOCS=( README.md ) PATCHES=( "${FILESDIR}/${PN}-257.14-dbus-service.patch" #975147 + "${FILESDIR}/${PN}-255.24-lxml-6.1.3.patch" #981933 ) python_check_deps() { diff --git a/sys-auth/elogind/elogind-257.16.ebuild b/sys-auth/elogind/elogind-257.16.ebuild index cd74dcbbdf71c..c149010f6ad70 100644 --- a/sys-auth/elogind/elogind-257.16.ebuild +++ b/sys-auth/elogind/elogind-257.16.ebuild @@ -53,6 +53,10 @@ PDEPEND=" DOCS=( README.md ) +PATCHES=( + "${FILESDIR}/${PN}-255.24-lxml-6.1.3.patch" # bug 981933 +) + python_check_deps() { python_has_version "dev-python/jinja2[${PYTHON_USEDEP}]" && python_has_version "dev-python/lxml[${PYTHON_USEDEP}]" diff --git a/sys-auth/elogind/files/elogind-255.24-lxml-6.1.3.patch b/sys-auth/elogind/files/elogind-255.24-lxml-6.1.3.patch new file mode 100644 index 0000000000000..dedff9406b721 --- /dev/null +++ b/sys-auth/elogind/files/elogind-255.24-lxml-6.1.3.patch @@ -0,0 +1,59 @@ +https://github.com/systemd/systemd/pull/43626 +https://bugs.gentoo.org/981933 + +From 40d1acd6d9293915e0f1e69c5e5ecac086fdcb38 Mon Sep 17 00:00:00 2001 +From: Luca Boccassi +Date: Wed, 2 Sep 2026 20:32:51 +0100 +Subject: [PATCH] tools: fix building manpages with lxml 6.1.3 + +manpages build fails on Arch with new lxml: + +Traceback (most recent call last): + File "/work/src/tools/make-directive-index.py", line 169, in make_page + _extract_directives(directive_groups, formatting, page) + ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/work/src/tools/make-directive-index.py", line 18, in _extract_directives + t = xml_parse(page) + File "/work/src/tools/xml_helper.py", line 25, in xml_parse + doc = tree.parse(page, _parser) + File "src/lxml/etree.pyx", line 3717, in lxml.etree.parse + File "src/lxml/parser.pxi", line 2045, in lxml.etree._parseDocument + File "src/lxml/parser.pxi", line 2071, in lxml.etree._parseDocumentFromURL + File "src/lxml/parser.pxi", line 1962, in lxml.etree._parseDocFromFile + File "src/lxml/parser.pxi", line 1231, in lxml.etree._BaseParser._parseDocFromFile + File "src/lxml/parser.pxi", line 647, in lxml.etree._ParserContext._handleParseResultDoc + File "src/lxml/parser.pxi", line 765, in lxml.etree._handleParseResult + File "src/lxml/parser.pxi", line 689, in lxml.etree._raiseParseError + File "../src/man/hostname.xml", line 5 +lxml.etree.XMLSyntaxError: Entity 'entities' not defined, line 5, column 11 + +The above exception was the direct cause of the following exception: + +Traceback (most recent call last): + File "/work/src/tools/make-directive-index.py", line 180, in + _xml = make_page(_template_path, _xml_files) + File "/work/src/tools/make-directive-index.py", line 171, in make_page + raise ValueError('failed to process ' + page) from e +ValueError: failed to process ../src/man/hostname.xml + +Relying on XMLParser() defaults leaves the external parameter entity +used to load custom-entities.ent unresolved. Request entity resolution explicitly. + +Follow-up for 1a13e31d275430ffba713c8a68ee7f22093c29e0 +--- + tools/xml_helper.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tools/xml_helper.py b/tools/xml_helper.py +index 87c24ab02a0f..e26ca92d9454 100755 +--- a/tools/xml_helper.py ++++ b/tools/xml_helper.py +@@ -16,7 +16,7 @@ def resolve(self, url, _id, context): + return None + + +-_parser = tree.XMLParser() ++_parser = tree.XMLParser(resolve_entities=True) + # pylint: disable=no-member + _parser.resolvers.add(CustomResolver()) +