Documentation/Makefile | 4 +- Documentation/conf.py | 106 ++++++++++++++++++++++--------------- scripts/sphinx-pre-install | 41 ++++++++++---- 3 files changed, 96 insertions(+), 55 deletions(-)
Hi Jon, This series touch only on three files, and have a small diffstat: Documentation/Makefile | 4 - Documentation/conf.py | 106 +++++++++++++++++++++---------------- scripts/sphinx-pre-install | 41 +++++++++++--- 3 files changed, 96 insertions(+), 55 deletions(-) Yet, it took a lot of my time. Basically, it addresses lots of problems related with building PDF docs: - Makefile has a wrong set of definitions for paper size. It was using pre-1.7 Sphinx nomenclature for some conf vars; - The LaTeX options a conf.py had lots of issues; - Finally, some PDF package dependencies for distros were wrong. I wrote an entire testbench to test this and doing builds on every platform mentioned at sphinx-pre-install. After the change *most* PDF files are built on *most* platforms. Summary ======= PASSED - AlmaLinux release 9.6 (Sage Margay) (7 tests) PASSED - Amazon Linux release 2023 (Amazon Linux) (7 tests) FAILED - archlinux (1 tests) PASSED - CentOS Stream release 9 (7 tests) PARTIAL - Debian GNU/Linux 12 (7 tests) PARTIAL - Devuan GNU/Linux 5 (7 tests) PASSED - Fedora release 42 (Adams) (7 tests) PARTIAL - Gentoo Base System release 2.17 (7 tests) PASSED - Kali GNU/Linux 2025.2 (7 tests) PASSED - Mageia 9 (7 tests) PARTIAL - Linux Mint 22 (7 tests) PARTIAL - openEuler release 25.03 (7 tests) PARTIAL - OpenMandriva Lx 4.3 (7 tests) PASSED - openSUSE Leap 15.6 (7 tests) PASSED - openSUSE Tumbleweed (7 tests) PARTIAL - Oracle Linux Server release 9.6 (7 tests) FAILED - Red Hat Enterprise Linux release 8.10 (Ootpa) (7 tests) PARTIAL - Rocky Linux release 8.9 (Green Obsidian) (7 tests) PARTIAL - Rocky Linux release 9.6 (Blue Onyx) (7 tests) FAILED - Springdale Open Enterprise Linux release 9.2 (Parma) (7 tests) PARTIAL - Ubuntu 24.04.2 LTS (7 tests) PASSED - Ubuntu 25.04 (7 tests) The failed distros are: - archlinux. This is some problem on recent lxc containers. Unrelated with pdf builds; - RHEL 8: paywall issue: some packages required by Sphinx require a repository that it is not openly available. I might have using CentOS repos, but, as we're already testing it, I opted not do do it; - Springdale 9.2: some broken package dependency. Now, if you look at the full logs below, you'll see that some distros come with XeLaTeX or LaTeX troubles, causing bigger and/or more complex docs to fail. It is possible to fix those, but they depend on addressing distro-specific LaTeX issues like increasing maximum memory limits and maximum number of idented paragraphs. It follows full results per distro. Please notice that I'm testing this after applying the next series which adds a sphinx-build-wrapper. The rationale is that, on such series, the logic can check what PDF files are missed. Currently, on upstream, PDF always return an error, even when everything suceeds. Regards, Mauro AlmaLinux release 9.6 (Sage Margay): ------------------------------------ PASSED: OS detection: AlmaLinux release 9.6 (Sage Margay) SKIPPED (Sphinx Sphinx 3.4.3): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 5:56, return code: 0 PASSED: Build PDF documentation: Build time: 11:44, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Amazon Linux release 2023 (Amazon Linux): ----------------------------------------- PASSED: OS detection: Amazon Linux release 2023 (Amazon Linux) SKIPPED (Sphinx Sphinx 3.4.3): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 5:59, return code: 0 PASSED: Build PDF documentation: Build time: 11:12, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf archlinux: ---------- FAILED: Build failed at package installation ( Failed to setup distrolib.distro_manager.CustomError: Failed to setup distro File "~/bin/doc-build-container.py", line 264, in <module> asyncio.run(main()) /usr/lib64/python3.13/asyncio/runners.py, line 195, in run return runner.run(main) /usr/lib64/python3.13/asyncio/runners.py, line 118, in run return self._loop.run_until_complete(task) /usr/lib64/python3.13/asyncio/base_events.py, line 712, in run_until_complete self.run_forever() /usr/lib64/python3.13/asyncio/base_events.py, line 683, in run_forever self._run_once() /usr/lib64/python3.13/asyncio/base_events.py, line 2050, in _run_once handle._run() /usr/lib64/python3.13/asyncio/events.py, line 89, in _run self._context.run(self._callback, *self._args) File "distro_manager.py", line 617, in run_manager return await manager.serial_run() File "distro_manager.py", line 598, in serial_run await self.run_distro(distro) File "distro_manager.py", line 523, in run_distro self.record_status( ) CentOS Stream release 9: ------------------------ PASSED: OS detection: CentOS Stream release 9 SKIPPED (Sphinx Sphinx 3.4.3): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 5:55, return code: 0 PASSED: Build PDF documentation: Build time: 11:40, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Debian GNU/Linux 12: -------------------- PASSED: OS detection: Debian GNU/Linux 12 SKIPPED (Sphinx Sphinx 5.3.0): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 5:46, return code: 0 FAILED: Build PDF documentation: Test failed (Build time: 10:31, return code: 2) PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf FAILED: userspace-api: Build failed (FAILED) PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf FAILED: translations: Build failed (FAILED) PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf FAILED: doc-guide: Build failed (FAILED) PASSED: cdrom: pdf/cdrom.pdf FAILED: gpu: Build failed (FAILED) FAILED: i2c: Build failed (FAILED) FAILED: RCU: Build failed (FAILED) PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf FAILED: arch: Build failed (FAILED) PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf FAILED: core-api: Build failed (FAILED) PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Devuan GNU/Linux 5: ------------------- PASSED: OS detection: Devuan GNU/Linux 5 SKIPPED (Sphinx Sphinx 5.3.0): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 5:46, return code: 0 FAILED: Build PDF documentation: Test failed (Build time: 10:30, return code: 2) PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf FAILED: userspace-api: Build failed (FAILED) PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf FAILED: translations: Build failed (FAILED) PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf FAILED: doc-guide: Build failed (FAILED) PASSED: cdrom: pdf/cdrom.pdf FAILED: gpu: Build failed (FAILED) FAILED: i2c: Build failed (FAILED) FAILED: RCU: Build failed (FAILED) PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf FAILED: arch: Build failed (FAILED) PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf FAILED: core-api: Build failed (FAILED) PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Fedora release 42 (Adams): -------------------------- PASSED: OS detection: Fedora release 42 (Adams) SKIPPED (Sphinx Sphinx 8.1.3): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 4:47, return code: 0 PASSED: Build PDF documentation: Build time: 10:33, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Gentoo Base System release 2.17: -------------------------------- PASSED: OS detection: Gentoo Base System release 2.17 PASSED: System packages: Packages installed PASSED: Sphinx on venv: Sphinx Sphinx 8.2.3 PASSED: Sphinx package: Sphinx Sphinx 8.2.3 PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 3:43, return code: 0 FAILED: Build PDF documentation: Test failed (Build time: 10:03, return code: 2) PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf FAILED: userspace-api: Build failed (FAILED) PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf FAILED: translations: Build failed (FAILED) PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf FAILED: gpu: Build failed (FAILED) FAILED: i2c: Build failed (FAILED) FAILED: RCU: Build failed (FAILED) PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf FAILED: arch: Build failed (FAILED) PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf FAILED: core-api: Build failed (FAILED) PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Kali GNU/Linux 2025.2: ---------------------- PASSED: OS detection: Kali GNU/Linux 2025.2 SKIPPED (Sphinx Sphinx 8.1.3): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 4:21, return code: 0 PASSED: Build PDF documentation: Build time: 12:23, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Mageia 9: --------- PASSED: OS detection: Mageia 9 PASSED: System packages: Packages installed PASSED: Sphinx on venv: Sphinx Sphinx 8.1.3 PASSED: Sphinx package: Sphinx Sphinx 6.1.3 PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 5:34, return code: 0 PASSED: Build PDF documentation: Build time: 13:42, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Linux Mint 22: -------------- PASSED: OS detection: Linux Mint 22 PASSED: System packages: Packages installed PASSED: Sphinx on venv: Sphinx Sphinx 8.1.3 PASSED: Sphinx package: Sphinx Sphinx 4.3.2 PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 5:08, return code: 0 FAILED: Build PDF documentation: Test failed (Build time: 10:41, return code: 2) PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf FAILED: userspace-api: Build failed (FAILED) PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf FAILED: translations: Build failed (FAILED) PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf FAILED: doc-guide: Build failed (FAILED) PASSED: cdrom: pdf/cdrom.pdf FAILED: gpu: Build failed (FAILED) FAILED: i2c: Build failed (FAILED) FAILED: RCU: Build failed (FAILED) PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf FAILED: arch: Build failed (FAILED) PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf FAILED: core-api: Build failed (FAILED) PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf openEuler release 25.03: ------------------------ PASSED: OS detection: openEuler release 25.03 PASSED: System packages: Packages installed PASSED: Sphinx on venv: Sphinx Sphinx 8.2.3 PASSED: Sphinx package: Sphinx Sphinx 8.1.3 PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 0:04, return code: 0 FAILED: Build PDF documentation: Test failed (Build time: 0:04, return code: 2) PDF docs: --------- PASSED: latex: FAILED (no .tex) OpenMandriva Lx 4.3: -------------------- PASSED: OS detection: OpenMandriva Lx 4.3 PASSED: System packages: Packages installed PASSED: Sphinx on venv: Sphinx Sphinx 4.3.2 PASSED: Sphinx package: Sphinx Sphinx 4.3.2 PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 0:00, return code: 0 FAILED: Build PDF documentation: PDF build didn't produce any results (Build time: 0:00, return code: 0) openSUSE Leap 15.6: ------------------- PASSED: OS detection: openSUSE Leap 15.6 SKIPPED (Sphinx Sphinx 7.2.6): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 5:29, return code: 0 PASSED: Build PDF documentation: Build time: 13:35, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf openSUSE Tumbleweed: -------------------- PASSED: OS detection: openSUSE Tumbleweed SKIPPED (Sphinx Sphinx 8.2.3): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 4:26, return code: 0 PASSED: Build PDF documentation: Build time: 13:09, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Oracle Linux Server release 9.6: -------------------------------- PASSED: OS detection: Oracle Linux Server release 9.6 SKIPPED (Sphinx Sphinx 3.4.3): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 0:06, return code: 0 FAILED: Build PDF documentation: Test failed (Build time: 0:07, return code: 2) PDF docs: --------- PASSED: latex: FAILED (no .tex) Red Hat Enterprise Linux release 8.10 (Ootpa): ---------------------------------------------- PASSED: OS detection: Red Hat Enterprise Linux release 8.10 (Ootpa) FAILED: System packages: Error: Unable to find a match: google-noto-sans-cjk-ttc-fonts librsvg2-tools texlive-amscls texlive-amsfonts texlive-amsmath texlive-anyfontsize texlive-capt-of texlive-cmap texlive-collection-fontsrecommended texlive-collection-latex texlive-ec texlive-eqparbox texlive-euenc texlive-fancybox texlive-fancyvrb texlive-float texlive-fncychap texlive-framed texlive-luatex85 texlive-mdwtools texlive-multirow texlive-needspace texlive-oberdiek texlive-parskip texlive-polyglossia texlive-psnfss texlive-tabulary texlive-threeparttable texlive-titlesec texlive-tools texlive-ucs texlive-upquote texlive-wrapfig texlive-xecjk texlive-xetex-bin FAILED: Sphinx on venv: No Sphinx version detected FAILED: Sphinx package: No Sphinx version detected PASSED: Clean documentation: Build time: 0:00, return code: 0 FAILED: Build HTML documentation: Test failed (Build time: 0:00, return code: 2) FAILED: Build PDF documentation: PDF build didn't produce any results (Build time: 0:00, return code: 2) Rocky Linux release 8.9 (Green Obsidian): ----------------------------------------- PASSED: OS detection: Rocky Linux release 8.9 (Green Obsidian) PASSED: System packages: Packages installed PASSED: Sphinx on venv: Sphinx Sphinx 7.4.7 FAILED: Sphinx package: No Sphinx version detected PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 5:33, return code: 0 PASSED: Build PDF documentation: Build time: 11:17, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Rocky Linux release 9.6 (Blue Onyx): ------------------------------------ PASSED: OS detection: Rocky Linux release 9.6 (Blue Onyx) SKIPPED (Sphinx Sphinx 3.4.3): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 0:07, return code: 0 FAILED: Build PDF documentation: Test failed (Build time: 0:07, return code: 2) PDF docs: --------- PASSED: latex: FAILED (no .tex) Springdale Open Enterprise Linux release 9.2 (Parma): ----------------------------------------------------- PASSED: OS detection: Springdale Open Enterprise Linux release 9.2 (Parma) FAILED: System packages: Error: Problem: package ImageMagick-6.9.13.25-1.el9.x86_64 requires libMagickCore-6.Q16.so.7()(64bit), but none of the providers can be installed - package ImageMagick-6.9.13.25-1.el9.x86_64 requires libMagickWand-6.Q16.so.7()(64bit), but none of the providers can be installed - package ImageMagick-6.9.13.25-1.el9.x86_64 requires ImageMagick-libs(x86-64) = 6.9.13.25-1.el9, but none of the providers can be installed - conflicting requests - nothing provides libraw_r.so.23()(64bit) needed by ImageMagick-libs-6.9.13.25-1.el9.x86_64 PASSED: Sphinx on venv: Sphinx Sphinx 7.4.7 PASSED: Sphinx package: Sphinx Sphinx 3.4.3 PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 5:25, return code: 0 FAILED: Build PDF documentation: PDF build didn't produce any results (Build time: 0:00, return code: 0) Ubuntu 24.04.2 LTS: ------------------- PASSED: OS detection: Ubuntu 24.04.2 LTS SKIPPED (Sphinx Sphinx 7.2.6): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 0:05, return code: 0 FAILED: Build PDF documentation: Test failed (Build time: 0:05, return code: 2) PDF docs: --------- PASSED: latex: FAILED (no .tex) Ubuntu 25.04: ------------- PASSED: OS detection: Ubuntu 25.04 SKIPPED (Sphinx Sphinx 8.1.3): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 3:42, return code: 0 PASSED: Build PDF documentation: Build time: 11:44, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Summary ======= PASSED - AlmaLinux release 9.6 (Sage Margay) (7 tests) PASSED - Amazon Linux release 2023 (Amazon Linux) (7 tests) FAILED - archlinux (1 tests) PASSED - CentOS Stream release 9 (7 tests) FAILED - Debian GNU/Linux 12 (7 tests) FAILED - Devuan GNU/Linux 5 (7 tests) PASSED - Fedora release 42 (Adams) (7 tests) FAILED - Gentoo Base System release 2.17 (7 tests) PASSED - Kali GNU/Linux 2025.2 (7 tests) PASSED - Mageia 9 (7 tests) FAILED - Linux Mint 22 (7 tests) FAILED - openEuler release 25.03 (7 tests) FAILED - OpenMandriva Lx 4.3 (7 tests) PASSED - openSUSE Leap 15.6 (7 tests) PASSED - openSUSE Tumbleweed (7 tests) FAILED - Oracle Linux Server release 9.6 (7 tests) FAILED - Red Hat Enterprise Linux release 8.10 (Ootpa) (7 tests) FAILED - Rocky Linux release 8.9 (Green Obsidian) (7 tests) FAILED - Rocky Linux release 9.6 (Blue Onyx) (7 tests) FAILED - Springdale Open Enterprise Linux release 9.2 (Parma) (7 tests) FAILED - Ubuntu 24.04.2 LTS (7 tests) PASSED - Ubuntu 25.04 (7 tests) (base) mchehab@foz /new_devel/docs $ ktap_reader.py /tmp/build_logs/* AlmaLinux release 9.6 (Sage Margay): ------------------------------------ PASSED: OS detection: AlmaLinux release 9.6 (Sage Margay) SKIPPED (Sphinx Sphinx 3.4.3): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 5:56, return code: 0 PASSED: Build PDF documentation: Build time: 11:44, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Amazon Linux release 2023 (Amazon Linux): ----------------------------------------- PASSED: OS detection: Amazon Linux release 2023 (Amazon Linux) SKIPPED (Sphinx Sphinx 3.4.3): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 5:59, return code: 0 PASSED: Build PDF documentation: Build time: 11:12, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf archlinux: ---------- FAILED: Build failed at package installation ( Failed to setup distrolib.distro_manager.CustomError: Failed to setup distro File "~/bin/doc-build-container.py", line 264, in <module> asyncio.run(main()) /usr/lib64/python3.13/asyncio/runners.py, line 195, in run return runner.run(main) /usr/lib64/python3.13/asyncio/runners.py, line 118, in run return self._loop.run_until_complete(task) /usr/lib64/python3.13/asyncio/base_events.py, line 712, in run_until_complete self.run_forever() /usr/lib64/python3.13/asyncio/base_events.py, line 683, in run_forever self._run_once() /usr/lib64/python3.13/asyncio/base_events.py, line 2050, in _run_once handle._run() /usr/lib64/python3.13/asyncio/events.py, line 89, in _run self._context.run(self._callback, *self._args) File "distro_manager.py", line 617, in run_manager return await manager.serial_run() File "distro_manager.py", line 598, in serial_run await self.run_distro(distro) File "distro_manager.py", line 523, in run_distro self.record_status( ) CentOS Stream release 9: ------------------------ PASSED: OS detection: CentOS Stream release 9 SKIPPED (Sphinx Sphinx 3.4.3): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 5:55, return code: 0 PASSED: Build PDF documentation: Build time: 11:40, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Debian GNU/Linux 12: -------------------- PASSED: OS detection: Debian GNU/Linux 12 SKIPPED (Sphinx Sphinx 5.3.0): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 5:46, return code: 0 PARTIAL: Build PDF documentation: Test failed (Build time: 10:31, return code: 2) PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf FAILED: userspace-api: Build failed (FAILED) PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf FAILED: translations: Build failed (FAILED) PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf FAILED: doc-guide: Build failed (FAILED) PASSED: cdrom: pdf/cdrom.pdf FAILED: gpu: Build failed (FAILED) FAILED: i2c: Build failed (FAILED) FAILED: RCU: Build failed (FAILED) PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf FAILED: arch: Build failed (FAILED) PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf FAILED: core-api: Build failed (FAILED) PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Devuan GNU/Linux 5: ------------------- PASSED: OS detection: Devuan GNU/Linux 5 SKIPPED (Sphinx Sphinx 5.3.0): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 5:46, return code: 0 PARTIAL: Build PDF documentation: Test failed (Build time: 10:30, return code: 2) PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf FAILED: userspace-api: Build failed (FAILED) PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf FAILED: translations: Build failed (FAILED) PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf FAILED: doc-guide: Build failed (FAILED) PASSED: cdrom: pdf/cdrom.pdf FAILED: gpu: Build failed (FAILED) FAILED: i2c: Build failed (FAILED) FAILED: RCU: Build failed (FAILED) PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf FAILED: arch: Build failed (FAILED) PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf FAILED: core-api: Build failed (FAILED) PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Fedora release 42 (Adams): -------------------------- PASSED: OS detection: Fedora release 42 (Adams) SKIPPED (Sphinx Sphinx 8.1.3): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 4:47, return code: 0 PASSED: Build PDF documentation: Build time: 10:33, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Gentoo Base System release 2.17: -------------------------------- PASSED: OS detection: Gentoo Base System release 2.17 PASSED: System packages: Packages installed PASSED: Sphinx on venv: Sphinx Sphinx 8.2.3 PASSED: Sphinx package: Sphinx Sphinx 8.2.3 PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 3:43, return code: 0 PARTIAL: Build PDF documentation: Test failed (Build time: 10:03, return code: 2) PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf FAILED: userspace-api: Build failed (FAILED) PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf FAILED: translations: Build failed (FAILED) PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf FAILED: gpu: Build failed (FAILED) FAILED: i2c: Build failed (FAILED) FAILED: RCU: Build failed (FAILED) PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf FAILED: arch: Build failed (FAILED) PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf FAILED: core-api: Build failed (FAILED) PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Kali GNU/Linux 2025.2: ---------------------- PASSED: OS detection: Kali GNU/Linux 2025.2 SKIPPED (Sphinx Sphinx 8.1.3): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 4:21, return code: 0 PASSED: Build PDF documentation: Build time: 12:23, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Mageia 9: --------- PASSED: OS detection: Mageia 9 PASSED: System packages: Packages installed PASSED: Sphinx on venv: Sphinx Sphinx 8.1.3 PASSED: Sphinx package: Sphinx Sphinx 6.1.3 PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 5:34, return code: 0 PASSED: Build PDF documentation: Build time: 13:42, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Linux Mint 22: -------------- PASSED: OS detection: Linux Mint 22 PASSED: System packages: Packages installed PASSED: Sphinx on venv: Sphinx Sphinx 8.1.3 PASSED: Sphinx package: Sphinx Sphinx 4.3.2 PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 5:08, return code: 0 PARTIAL: Build PDF documentation: Test failed (Build time: 10:41, return code: 2) PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf FAILED: userspace-api: Build failed (FAILED) PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf FAILED: translations: Build failed (FAILED) PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf FAILED: doc-guide: Build failed (FAILED) PASSED: cdrom: pdf/cdrom.pdf FAILED: gpu: Build failed (FAILED) FAILED: i2c: Build failed (FAILED) FAILED: RCU: Build failed (FAILED) PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf FAILED: arch: Build failed (FAILED) PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf FAILED: core-api: Build failed (FAILED) PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf openEuler release 25.03: ------------------------ PASSED: OS detection: openEuler release 25.03 PASSED: System packages: Packages installed PASSED: Sphinx on venv: Sphinx Sphinx 8.2.3 PASSED: Sphinx package: Sphinx Sphinx 8.1.3 PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 0:04, return code: 0 PARTIAL: Build PDF documentation: Test failed (Build time: 0:04, return code: 2) PDF docs: --------- PASSED: latex: FAILED (no .tex) OpenMandriva Lx 4.3: -------------------- PASSED: OS detection: OpenMandriva Lx 4.3 PASSED: System packages: Packages installed PASSED: Sphinx on venv: Sphinx Sphinx 4.3.2 PASSED: Sphinx package: Sphinx Sphinx 4.3.2 PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 0:00, return code: 0 PARTIAL: Build PDF documentation: PDF build didn't produce any results (Build time: 0:00, return code: 0) openSUSE Leap 15.6: ------------------- PASSED: OS detection: openSUSE Leap 15.6 SKIPPED (Sphinx Sphinx 7.2.6): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 5:29, return code: 0 PASSED: Build PDF documentation: Build time: 13:35, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf openSUSE Tumbleweed: -------------------- PASSED: OS detection: openSUSE Tumbleweed SKIPPED (Sphinx Sphinx 8.2.3): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 4:26, return code: 0 PASSED: Build PDF documentation: Build time: 13:09, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Oracle Linux Server release 9.6: -------------------------------- PASSED: OS detection: Oracle Linux Server release 9.6 SKIPPED (Sphinx Sphinx 3.4.3): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 0:06, return code: 0 PARTIAL: Build PDF documentation: Test failed (Build time: 0:07, return code: 2) PDF docs: --------- PASSED: latex: FAILED (no .tex) Red Hat Enterprise Linux release 8.10 (Ootpa): ---------------------------------------------- PASSED: OS detection: Red Hat Enterprise Linux release 8.10 (Ootpa) FAILED: System packages: Error: Unable to find a match: google-noto-sans-cjk-ttc-fonts librsvg2-tools texlive-amscls texlive-amsfonts texlive-amsmath texlive-anyfontsize texlive-capt-of texlive-cmap texlive-collection-fontsrecommended texlive-collection-latex texlive-ec texlive-eqparbox texlive-euenc texlive-fancybox texlive-fancyvrb texlive-float texlive-fncychap texlive-framed texlive-luatex85 texlive-mdwtools texlive-multirow texlive-needspace texlive-oberdiek texlive-parskip texlive-polyglossia texlive-psnfss texlive-tabulary texlive-threeparttable texlive-titlesec texlive-tools texlive-ucs texlive-upquote texlive-wrapfig texlive-xecjk texlive-xetex-bin PARTIAL: Sphinx on venv: No Sphinx version detected PARTIAL: Sphinx package: No Sphinx version detected PASSED: Clean documentation: Build time: 0:00, return code: 0 PARTIAL: Build HTML documentation: Test failed (Build time: 0:00, return code: 2) PARTIAL: Build PDF documentation: PDF build didn't produce any results (Build time: 0:00, return code: 2) Rocky Linux release 8.9 (Green Obsidian): ----------------------------------------- PASSED: OS detection: Rocky Linux release 8.9 (Green Obsidian) PASSED: System packages: Packages installed PASSED: Sphinx on venv: Sphinx Sphinx 7.4.7 PARTIAL: Sphinx package: No Sphinx version detected PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 5:33, return code: 0 PASSED: Build PDF documentation: Build time: 11:17, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Rocky Linux release 9.6 (Blue Onyx): ------------------------------------ PASSED: OS detection: Rocky Linux release 9.6 (Blue Onyx) SKIPPED (Sphinx Sphinx 3.4.3): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 0:07, return code: 0 PARTIAL: Build PDF documentation: Test failed (Build time: 0:07, return code: 2) PDF docs: --------- PASSED: latex: FAILED (no .tex) Springdale Open Enterprise Linux release 9.2 (Parma): ----------------------------------------------------- PASSED: OS detection: Springdale Open Enterprise Linux release 9.2 (Parma) FAILED: System packages: Error: Problem: package ImageMagick-6.9.13.25-1.el9.x86_64 requires libMagickCore-6.Q16.so.7()(64bit), but none of the providers can be installed - package ImageMagick-6.9.13.25-1.el9.x86_64 requires libMagickWand-6.Q16.so.7()(64bit), but none of the providers can be installed - package ImageMagick-6.9.13.25-1.el9.x86_64 requires ImageMagick-libs(x86-64) = 6.9.13.25-1.el9, but none of the providers can be installed - conflicting requests - nothing provides libraw_r.so.23()(64bit) needed by ImageMagick-libs-6.9.13.25-1.el9.x86_64 PASSED: Sphinx on venv: Sphinx Sphinx 7.4.7 PASSED: Sphinx package: Sphinx Sphinx 3.4.3 PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 5:25, return code: 0 PARTIAL: Build PDF documentation: PDF build didn't produce any results (Build time: 0:00, return code: 0) Ubuntu 24.04.2 LTS: ------------------- PASSED: OS detection: Ubuntu 24.04.2 LTS SKIPPED (Sphinx Sphinx 7.2.6): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 0:05, return code: 0 PARTIAL: Build PDF documentation: Test failed (Build time: 0:05, return code: 2) PDF docs: --------- PASSED: latex: FAILED (no .tex) Ubuntu 25.04: ------------- PASSED: OS detection: Ubuntu 25.04 SKIPPED (Sphinx Sphinx 8.1.3): System packages SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 3:42, return code: 0 PASSED: Build PDF documentation: Build time: 11:44, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Mauro Carvalho Chehab (11): docs: Makefile: Fix LaTeX paper size settings docs: conf.py: better handle latex documents docs: conf.py: fix doc name with SPHINXDIRS docs: conf.py: rename some vars at latex_documents logic docs: conf.py: fix some troubles for LaTeX output scripts: sphinx-pre-install: fix PDF build issues on Ubuntu scripts: sphinx-pre-install: add missing gentoo pdf dependencies scripts: sphinx-pre-install: fix PDF dependencies for openSuse scripts: sphinx-pre-install: fix dependencies for OpenMandriva scripts: sphinx-pre-install: fix pdf dependencies for Mageia 9 scripts: sphinx-pre-install: fix PDF dependencies for gentoo Documentation/Makefile | 4 +- Documentation/conf.py | 106 ++++++++++++++++++++++--------------- scripts/sphinx-pre-install | 41 ++++++++++---- 3 files changed, 96 insertions(+), 55 deletions(-) -- 2.50.1
(trimmed Ccs) Hi Mauro, Thank you for testing on OL. I'm wondering about some of the results, however... On 15/08/2025 13:36, Mauro Carvalho Chehab wrote: > Oracle Linux Server release 9.6: > -------------------------------- > PASSED: OS detection: Oracle Linux Server release 9.6 > SKIPPED (Sphinx Sphinx 3.4.3): System packages > SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv > SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package > PASSED: Clean documentation: Build time: 0:00, return code: 0 > PASSED: Build HTML documentation: Build time: 0:06, return code: 0 How is the html PASSED with the build time only 6 seconds, that looks rather odd to me. > PARTIAL: Build PDF documentation: Test failed (Build time: 0:07, return code: 2) > > PDF docs: > --------- > PASSED: latex: FAILED (no .tex) This doesn't seem like it PASSED either if it FAILED. I tried on OL 9.5 and got: """ $ scripts/sphinx-pre-install ... You should run: sudo yum install -y ImageMagick graphviz ... sudo yum install -y python3-sphinx """ But I actually need to do this: sudo yum --enablerepo=ol9_developer_EPEL install -y ImageMagick graphviz and then sudo yum --enablrepo=ol9_codeready_builder install -y python3-sphinx respectively. After this, I see a bunch of red warnings but 'make htmldocs' succeeds and after 33 minutes. For pdfdocs and latexdocs, respectively, I get: $ make pdfdocs Documentation/Makefile:156: The 'xelatex' command was not found. Make sure you have it installed and in PATH to produce PDF output. SKIP Sphinx pdfdocs target. $ time make latexdocs make[3]: Nothing to be done for 'latex'. Using alabaster theme Using Python kernel-doc Documentation/i2c/instantiating-devices.rst:36: WARNING: Could not lex literal_block as "dts". Highlighting skipped. real 21m12.103s user 20m58.124s sys 0m18.567s Vegard
Em Sun, 17 Aug 2025 17:32:24 +0200 Vegard Nossum <vegard.nossum@oracle.com> escreveu: > (trimmed Ccs) > > Hi Mauro, > > Thank you for testing on OL. I'm wondering about some of the results, > however... > > On 15/08/2025 13:36, Mauro Carvalho Chehab wrote: > > Oracle Linux Server release 9.6: > > -------------------------------- > > PASSED: OS detection: Oracle Linux Server release 9.6 > > SKIPPED (Sphinx Sphinx 3.4.3): System packages > > SKIPPED (Sphinx already installed either as venv or as native package): Sphinx on venv > > SKIPPED (Sphinx already installed either as venv or as native package): Sphinx package > > PASSED: Clean documentation: Build time: 0:00, return code: 0 > > PASSED: Build HTML documentation: Build time: 0:06, return code: 0 > > How is the html PASSED with the build time only 6 seconds, that looks > rather odd to me. > > > PARTIAL: Build PDF documentation: Test failed (Build time: 0:07, return code: 2) > > > > PDF docs: > > --------- > > PASSED: latex: FAILED (no .tex) > > This doesn't seem like it PASSED either if it FAILED. The issue here is actually due to the way my test tool works. It basically runs distros via lxc and use lxc-attach to run a test script (I also use podman for a few containers, when there's no container via lxc). Well, attaching to a container doesn't set language. If sphinx-build is called without language, it crashes badly: nothing works on it. Even --version crashes: $ sphinx-build --version Traceback (most recent call last): File "/usr/bin/sphinx-build", line 8, in <module> sys.exit(main()) ~~~~^^ File "/usr/lib/python3/dist-packages/sphinx/cmd/build.py", line 546, in main locale.setlocale(locale.LC_ALL, '') ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/locale.py", line 615, in setlocale return _setlocale(category, locale) locale.Error: unsupported locale setting $ LC_ALL=C sphinx-build --version sphinx-build 8.1.3 The crash happens at the the main() function for the build command at: /usr/lib/python3/dist-packages/sphinx/cmd/build.py. It tries to set locale to '', using what it is recommended at https://docs.python.org/3/library/locale.html, but Python crashes. An sphinx-build workaround logic would be for it to do: def main(argv: Sequence[str] = (), /) -> int: try: locale.setlocale(locale.LC_ALL, '') except: locale.setlocale(locale.LC_ALL, 'C') Such issue is present on all versions of Sphinx, as far as I'm aware. Now, as sphinx-build is doing what Python library recommends, IMO, the root cause should be fixed: Python internal library should handle this better, as if one doesn't care about the actual locale, passing just '', it should fallback to "C" instead of crashing. In any case, as kernel build has to support legacy Python and Sphinx versions, I sent a patch addressing such issue via the new sphinx-build-wrapper I'm proposing: https://lore.kernel.org/linux-doc/461e00fe7ce75eaac90d98572bb93910b39361e2.1755258303.git.mchehab+huawei@kernel.org/ It sounds I ended placing the run results before such fix. I'll submit a v2 with the right logs. > I tried on OL 9.5 and got: > > """ > $ scripts/sphinx-pre-install > ... > You should run: > > sudo yum install -y ImageMagick graphviz > ... > sudo yum install -y python3-sphinx > """ > > But I actually need to do this: > > sudo yum --enablerepo=ol9_developer_EPEL install -y ImageMagick graphviz > > and then > > sudo yum --enablrepo=ol9_codeready_builder install -y python3-sphinx > > respectively. The logic at sphinx-pre-install assumes that the needed repositories are enabled. The rationale is that each distro has its own particular way to split packages between repositories, and this varies a from time to time. For instance, up to CentOS 8 and RHEL8, the EPEL repository contained all non-officially supported packages, which includes Sphinx. On version 9 of most of such distros, this was named CRB, although this is not consistent over the variations. So, for instance, On OpenEuler, it doesn't need to set any extra repository. On Almalinux, CentOS and Rockylinux it does set crb: - "dnf config-manager --set-enabled crb" On OL, it sets those: - "sudo dnf install -y oraclelinux-release-el9 epel-release" - "dnf config-manager --set-enabled base latest ol9_appstream ol9_developer_EPEL ol9_codeready_builder" On RHEL using the "redhat/ubi8" docker container, the extra repos are behind a paywall. > After this, I see a bunch of red warnings but 'make htmldocs' succeeds > and after 33 minutes. Those warnings exist on upstream. > > For pdfdocs and latexdocs, respectively, I get: > > $ make pdfdocs > Documentation/Makefile:156: The 'xelatex' command was not found. Make > sure you have it installed and in PATH to produce PDF output. > SKIP Sphinx pdfdocs target. If you install the needed repositories and all recommentations from sphinx-pre-install, you should be able to build pdfs. I Just ran it here from a container I re-created from scratch, and got: Oracle Linux Server release 9.6: -------------------------------- PASSED: OS detection: Oracle Linux Server release 9.6 PASSED: System packages: Packages installed PASSED: Sphinx on venv: Sphinx Sphinx 7.4.7 PASSED: Sphinx package: Sphinx Sphinx 3.4.3 PASSED: Clean documentation: Build time: 0:00, return code: 0 PASSED: Build HTML documentation: Build time: 3:57, return code: 0 PASSED: Build PDF documentation: Build time: 10:09, return code: 0 PDF docs: --------- PASSED: dev-tools: pdf/dev-tools.pdf PASSED: tools: pdf/tools.pdf PASSED: filesystems: pdf/filesystems.pdf PASSED: w1: pdf/w1.pdf PASSED: maintainer: pdf/maintainer.pdf PASSED: process: pdf/process.pdf PASSED: isdn: pdf/isdn.pdf PASSED: fault-injection: pdf/fault-injection.pdf PASSED: iio: pdf/iio.pdf PASSED: scheduler: pdf/scheduler.pdf PASSED: staging: pdf/staging.pdf PASSED: fpga: pdf/fpga.pdf PASSED: power: pdf/power.pdf PASSED: leds: pdf/leds.pdf PASSED: edac: pdf/edac.pdf PASSED: PCI: pdf/PCI.pdf PASSED: firmware-guide: pdf/firmware-guide.pdf PASSED: cpu-freq: pdf/cpu-freq.pdf PASSED: mhi: pdf/mhi.pdf PASSED: wmi: pdf/wmi.pdf PASSED: timers: pdf/timers.pdf PASSED: accel: pdf/accel.pdf PASSED: hid: pdf/hid.pdf PASSED: userspace-api: pdf/userspace-api.pdf PASSED: spi: pdf/spi.pdf PASSED: networking: pdf/networking.pdf PASSED: virt: pdf/virt.pdf PASSED: nvme: pdf/nvme.pdf PASSED: translations: pdf/translations.pdf PASSED: input: pdf/input.pdf PASSED: tee: pdf/tee.pdf PASSED: doc-guide: pdf/doc-guide.pdf PASSED: cdrom: pdf/cdrom.pdf PASSED: gpu: pdf/gpu.pdf PASSED: i2c: pdf/i2c.pdf PASSED: RCU: pdf/RCU.pdf PASSED: watchdog: pdf/watchdog.pdf PASSED: usb: pdf/usb.pdf PASSED: rust: pdf/rust.pdf PASSED: crypto: pdf/crypto.pdf PASSED: kbuild: pdf/kbuild.pdf PASSED: livepatch: pdf/livepatch.pdf PASSED: mm: pdf/mm.pdf PASSED: locking: pdf/locking.pdf PASSED: infiniband: pdf/infiniband.pdf PASSED: driver-api: pdf/driver-api.pdf PASSED: bpf: pdf/bpf.pdf PASSED: devicetree: pdf/devicetree.pdf PASSED: block: pdf/block.pdf PASSED: target: pdf/target.pdf PASSED: arch: pdf/arch.pdf PASSED: pcmcia: pdf/pcmcia.pdf PASSED: scsi: pdf/scsi.pdf PASSED: netlabel: pdf/netlabel.pdf PASSED: sound: pdf/sound.pdf PASSED: security: pdf/security.pdf PASSED: accounting: pdf/accounting.pdf PASSED: admin-guide: pdf/admin-guide.pdf PASSED: core-api: pdf/core-api.pdf PASSED: fb: pdf/fb.pdf PASSED: peci: pdf/peci.pdf PASSED: trace: pdf/trace.pdf PASSED: misc-devices: pdf/misc-devices.pdf PASSED: kernel-hacking: pdf/kernel-hacking.pdf PASSED: hwmon: pdf/hwmon.pdf Summary ======= PASSED - Oracle Linux Server release 9.6 (7 tests) PS.: I'm using both this series and the sphinx-build-wrapper one, as it has a summary at the end which checks what PDF file was actually built. Btw, I'm enclosing at the end the logs I got from my test toolset. I dropped several messages from the log, as the full log is 137k lines: $ wc -l container_tests.log oracle_report.log 72107 container_tests.log 65596 oracle_report.log 137703 total but I preserved the most relevant logs. - Those are the logs containing the preparation steps done to create the Container 2025-08-18 09:33:23,302 [oracle DEBUG] Executing: sudo lxc-create -n oracle-test -t download -- --dist oracle --release 9 --arch amd64 2025-08-18 09:33:24,021 [oracle DEBUG] Executing: sudo mkdir -p /var/lib/lxc/oracle-test 2025-08-18 09:33:24,061 [oracle DEBUG] Executing: sudo sh -c cat > /var/lib/lxc/oracle-test/config <<EOF lxc.arch = x86_64 lxc.pty.max = 1024 lxc.tty.max = 4 lxc.net.0.type = veth lxc.net.0.link = lxcbr0 lxc.net.0.flags = up lxc.net.0.hwaddr = 00:16:3e:5b:89:e7 lxc.cap.drop = mac_admin mac_override sys_time sys_module sys_rawio lxc.cgroup.devices.allow = a lxc.cgroup2.devices.allow = a lxc.mount.auto = proc sys cgroup lxc.rootfs.path = /var/lib/lxc/oracle-test/rootfs 2025-08-18 09:33:25,398 [oracle DEBUG] Executing: sudo lxc-attach -n oracle-test -- env LANG=C.UTF-8 sh -c sudo dnf install -y oraclelinux-release-el9 epel-release 2025-08-18 09:33:37,730 [oracle DEBUG] Executing: sudo lxc-attach -n oracle-test -- env LANG=C.UTF-8 sh -c dnf config-manager --set-enabled base latest ol9_appstream ol9_developer_EPEL ol9_codeready_builder 2025-08-18 09:33:37,885 [oracle DEBUG] Executing: sudo lxc-attach -n oracle-test -- env LANG=C.UTF-8 sh -c dnf install -y which openssh-server git python3 tar make diffutils # Here, I'm copying the Kernel from the host via tarball, as this is # faster than using git clone and transfers less files, as I'm # placing there just the files needed for docs build 2025-08-18 09:34:11,001 [oracle DEBUG] Executing: sudo lxc-attach -n oracle-test -- tar xpf - --no-same-owner -C / # Here, I execute my test script 2025-08-18 09:34:16,322 [oracle DEBUG] Executing: sudo lxc-attach -n oracle-test -- env LANG=C.UTF-8 sh -c cd /root && LC_ALL=C ./docs-build.py --- This is the output of my docs-build.py test script, which reads the install instructions from sphinx-pre-install, executes them and build html and pdf: TEST REPORT: ORACLE Generated: 2025-08-18 09:50:28 Stage: Tests TEST RESULTS: Status: SUCCESS Return Code: 0 STANDARD OUTPUT: VALIDATE: cd /root && LC_ALL=C ./docs-build.py --------------------------------------------- $ ./scripts/sphinx-pre-install Python version: 3.9.21 Detected OS: Oracle Linux Server release 9.6. Warning: build optional deps missing: ImageMagick graphviz ERROR: Python mandatory deps missing: python3-pyyaml ERROR: PDF mandatory deps missing: dejavu-sans-fonts dejavu-sans-mono-fonts dejavu-serif-fonts google-noto-sans-cjk-ttc-fonts latexmk librsvg2-tools texlive-amscls texlive-amsfonts texlive-amsmath texlive-anyfontsize texlive-capt-of texlive-cmap texlive-collection-fontsrecommended texlive-collection-latex texlive-ctex texlive-ec texlive-eqparbox texlive-euenc texlive-fancybox texlive-fancyvrb texlive-float texlive-fncychap texlive-framed texlive-luatex85 texlive-mdwtools texlive-multirow texlive-needspace texlive-oberdiek texlive-parskip texlive-polyglossia texlive-psnfss texlive-tabulary texlive-threeparttable texlive-titlesec texlive-tools texlive-ucs texlive-upquote texlive-wrapfig texlive-xecjk texlive-xetex-bin You should run: sudo dnf install ImageMagick dejavu-sans-fonts dejavu-sans-mono-fonts dejavu-serif-fonts google-noto-sans-cjk-ttc-fonts graphviz latexmk librsvg2-tools python3-pyyaml texlive-amscls texlive-amsfonts texlive-amsmath texlive-anyfontsize texlive-capt-of texlive-cmap texlive-collection-fontsrecommended texlive-collection-latex texlive-ctex texlive-ec texlive-eqparbox texlive-euenc texlive-fancybox texlive-fancyvrb texlive-float texlive-fncychap texlive-framed texlive-luatex85 texlive-mdwtools texlive-multirow texlive-needspace texlive-oberdiek texlive-parskip texlive-polyglossia texlive-psnfss texlive-tabulary texlive-threeparttable texlive-titlesec texlive-tools texlive-ucs texlive-upquote texlive-wrapfig texlive-xecjk texlive-xetex-bin Note: RHEL-based distros typically require extra repositories. For most, enabling epel and crb are enough: sudo dnf install -y epel-release sudo dnf config-manager --set-enabled crb Yet, some may have other required repositories. Those commands could be useful: sudo dnf repolist all sudo dnf repoquery --available --info <pkgs> sudo dnf config-manager --set-enabled '*' # enable all - probably not what you want Sphinx needs to be installed either: 1) via pip/pypi with: /usr/bin/python3 -m venv sphinx_latest . sphinx_latest/bin/activate pip install -r ./Documentation/sphinx/requirements.txt If you want to exit the virtualenv, you can use: deactivate 2) As a package with: sudo dnf install python3-sphinx Please note that Sphinx currentlys produce false-positive warnings when the same name is used for more than one type (functions, structs, enums,...). This is known Sphinx bug. For more details, see: https://github.com/sphinx-doc/sphinx/pull/8313 Installing section: system_install with dnf =========================================== $ dnf install -y --setopt=install_weak_deps=False ImageMagick dejavu-sans-fonts dejavu-sans-mono-fonts dejavu-serif-fonts google-noto-sans-cjk-ttc-fonts graphviz latexmk librsvg2-tools python3-pyyaml texlive-amscls texlive-amsfonts texlive-amsmath texlive-anyfontsize texlive-capt-of texlive-cmap texlive-collection-fontsrecommended texlive-collection-latex texlive-ctex texlive-ec texlive-eqparbox texlive-euenc texlive-fancybox texlive-fancyvrb texlive-float texlive-fncychap texlive-framed texlive-luatex85 texlive-mdwtools texlive-multirow texlive-needspace texlive-oberdiek texlive-parskip texlive-polyglossia texlive-psnfss texlive-tabulary texlive-threeparttable texlive-titlesec texlive-tools texlive-ucs texlive-upquote texlive-wrapfig texlive-xecjk texlive-xetex-bin Last metadata expiration check: 0:00:22 ago on Mon Aug 18 07:33:55 2025. Dependencies resolved. =================================================================================================== Package Arch Version Repository Size =================================================================================================== Installing: ImageMagick x86_64 6.9.13.25-1.el9 ol9_developer_EPEL 103 k ... zziplib x86_64 0.13.71-11.el9_4 ol9_appstream 95 k Transaction Summary =================================================================================================== Install 428 Packages Total download size: 598 M Installed size: 1.2 G Downloading Packages: (1/428): dejavu-sans-fonts-2.37-18.el9.noarch.r 4.2 MB/s | 1.3 MB 00:00 ... (428/428): urw-base35-p052-fonts-20200910-6.el9 491 kB/s | 987 kB 00:02 -------------------------------------------------------------------------------- Total 9.8 MB/s | 598 MB 01:01 Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Running scriptlet: texlive-base-9:20200406-26.el9_2.noarch 1/1 Preparing : 1/1 Running scriptlet: texlive-base-9:20200406-26.el9_2.noarch 1/428 ... Verifying : zziplib-0.13.71-11.el9_4.x86_64 428/428 Installed: ImageMagick-6.9.13.25-1.el9.x86_64 ImageMagick-libs-6.9.13.25-1.el9.x86_64 LibRaw-0.21.1-1.el9.x86_64 adobe-mappings-cmap-20171205-12.el9.noarch adobe-mappings-cmap-deprecated-20171205-12.el9.noarch adobe-mappings-pdf-20180407-10.el9.noarch atk-2.36.0-5.el9.x86_64 avahi-libs-0.8-22.el9_6.1.x86_64 cairo-1.17.4-7.el9.x86_64 cairo-gobject-1.17.4-7.el9.x86_64 crypto-policies-scripts-20250128-1.git5269e22.el9.noarch cups-libs-1:2.3.3op2-33.el9.x86_64 dejavu-sans-fonts-2.37-18.el9.noarch dejavu-sans-mono-fonts-2.37-18.el9.noarch dejavu-serif-fonts-2.37-18.el9.noarch desktop-file-utils-0.26-6.el9.x86_64 fontconfig-2.14.0-2.el9_1.x86_64 fonts-filesystem-1:2.0.5-7.el9.1.noarch freetype-2.10.4-10.el9_5.x86_64 fribidi-1.0.10-6.el9.2.x86_64 gd-2.3.2-3.el9.x86_64 gdk-pixbuf2-2.42.6-6.el9_6.x86_64 gdk-pixbuf2-modules-2.42.6-6.el9_6.x86_64 ghostscript-9.54.0-19.el9_6.x86_64 ghostscript-tools-fonts-9.54.0-19.el9_6.x86_64 ghostscript-tools-printing-9.54.0-19.el9_6.x86_64 google-droid-sans-fonts-20200215-11.el9.2.noarch google-noto-cjk-fonts-common-20230817-2.el9.noarch google-noto-sans-cjk-ttc-fonts-20230817-2.el9.noarch graphite2-1.3.14-9.el9.x86_64 graphviz-2.44.0-26.el9.x86_64 gtk-update-icon-cache-3.24.31-5.el9.x86_64 gtk2-2.24.33-8.el9.x86_64 harfbuzz-2.7.4-10.el9.x86_64 hicolor-icon-theme-0.17-13.el9.noarch imath-3.1.2-1.el9.x86_64 info-6.7-15.el9.x86_64 jasper-libs-2.0.28-3.el9.x86_64 jbig2dec-libs-0.19-7.el9.x86_64 jbigkit-libs-2.1-23.el9.x86_64 langpacks-core-font-en-3.0-16.el9.noarch latexmk-4.86a-1.el9.noarch lcms2-2.12-3.el9.x86_64 libICE-1.0.10-8.el9.x86_64 libSM-1.2.3-10.el9.x86_64 libX11-1.7.0-11.el9.x86_64 libX11-common-1.7.0-11.el9.noarch libXau-1.0.9-8.el9.x86_64 libXaw-1.0.13-19.el9.x86_64 libXcomposite-0.4.5-7.el9.x86_64 libXcursor-1.2.0-7.el9.x86_64 libXdamage-1.1.5-7.el9.x86_64 libXext-1.3.4-8.el9.x86_64 libXfixes-5.0.3-16.el9.x86_64 libXft-2.3.3-8.el9.x86_64 libXi-1.7.10-8.el9.x86_64 libXinerama-1.1.4-10.el9.x86_64 libXmu-1.1.3-8.el9.x86_64 libXpm-3.5.13-10.el9.x86_64 libXrandr-1.5.2-8.el9.x86_64 libXrender-0.9.10-16.el9.x86_64 libXt-1.2.0-6.el9.x86_64 libdatrie-0.2.13-4.el9.x86_64 libfontenc-1.1.3-17.el9.x86_64 libgs-9.54.0-19.el9_6.x86_64 libicu-67.1-10.el9_6.x86_64 libijs-0.35-15.el9.x86_64 libjpeg-turbo-2.0.90-7.el9.x86_64 liblqr-1-0.4.2-19.el9.x86_64 libpaper-1.1.28-4.el9.x86_64 libpng-2:1.6.37-12.el9.x86_64 libraqm-0.8.0-1.el9.x86_64 librsvg2-2.50.7-3.el9.x86_64 librsvg2-tools-2.50.7-3.el9.x86_64 libthai-0.1.28-8.el9.x86_64 libtiff-4.4.0-13.el9.x86_64 libwebp-1.2.0-8.el9_3.x86_64 libwmf-lite-0.2.12-10.el9.x86_64 libxcb-1.13.1-9.el9.x86_64 mailcap-2.1.49-5.el9.noarch mkfontscale-1.2.1-3.el9.x86_64 nspr-4.35.0-17.el9_2.x86_64 nss-3.101.0-10.el9_2.x86_64 nss-softokn-3.101.0-10.el9_2.x86_64 nss-softokn-freebl-3.101.0-10.el9_2.x86_64 nss-sysinit-3.101.0-10.el9_2.x86_64 nss-util-3.101.0-10.el9_2.x86_64 openexr-libs-3.1.1-3.el9.x86_64 openjpeg2-2.4.0-8.el9.x86_64 pango-1.48.7-3.el9.x86_64 perl-Compress-Raw-Bzip2-2.101-5.el9.x86_64 perl-Compress-Raw-Zlib-2.101-5.el9.x86_64 perl-Data-Dump-1.23-18.el9.noarch perl-Digest-HMAC-1.03-29.el9.noarch perl-Digest-SHA-1:6.02-461.el9.x86_64 perl-Encode-Locale-1.05-21.el9.noarch perl-File-Copy-2.34-481.1.el9_6.noarch perl-File-Listing-6.14-4.el9.noarch perl-Filter-2:1.60-4.el9.x86_64 perl-HTML-Parser-3.76-3.el9.x86_64 perl-HTML-Tagset-3.20-47.el9.noarch perl-HTTP-Cookies-6.10-4.el9.noarch perl-HTTP-Date-6.05-7.el9.noarch perl-HTTP-Message-6.29-3.el9.noarch perl-HTTP-Negotiate-6.01-30.el9.noarch perl-I18N-Langinfo-0.19-481.1.el9_6.x86_64 perl-IO-Compress-2.102-4.el9.noarch perl-IO-HTML-1.004-4.el9.noarch perl-LWP-MediaTypes-6.04-9.el9.noarch perl-NTLM-1.09-30.el9.noarch perl-Net-HTTP-6.21-3.el9.noarch perl-Text-Unidecode-1.30-16.el9.noarch perl-Time-HiRes-4:1.9764-462.el9.x86_64 perl-TimeDate-1:2.33-6.el9.noarch perl-Try-Tiny-0.30-13.el9.noarch perl-Unicode-Normalize-1.27-461.el9.x86_64 perl-WWW-RobotRules-6.02-30.el9.noarch perl-XML-Parser-2.46-9.0.1.el9.x86_64 perl-XML-XPath-1.44-11.el9.noarch perl-encoding-4:3.00-462.el9.x86_64 perl-libwww-perl-6.53-4.el9.noarch perl-locale-1.09-481.1.el9_6.noarch perl-meta-notation-5.32.1-481.1.el9_6.noarch perl-open-1.12-481.1.el9_6.noarch perl-sigtrap-1.09-481.1.el9_6.noarch pixman-0.40.0-6.el9_3.x86_64 poppler-21.01.0-21.el9.x86_64 poppler-data-0.4.9-9.el9.noarch python3-pyyaml-5.4.1-6.0.1.el9.x86_64 ruby-3.0.7-165.el9_5.x86_64 ruby-libs-3.0.7-165.el9_5.x86_64 shared-mime-info-2.1-5.el9.x86_64 teckit-2.5.9-8.el9.x86_64 texlive-adobemapping-9:20200406-37.el9.noarch texlive-ae-9:20200406-26.el9_2.noarch texlive-algorithms-9:20200406-26.el9_2.noarch texlive-alphalph-9:20200406-26.el9_2.noarch texlive-amscls-9:20200406-26.el9_2.noarch texlive-amsfonts-9:20200406-26.el9_2.noarch texlive-amsmath-9:20200406-26.el9_2.noarch texlive-anyfontsize-9:20200406-26.el9_2.noarch texlive-arphic-9:20200406-26.el9_2.noarch texlive-ascmac-9:20200406-37.el9.noarch texlive-atbegshi-9:20200406-26.el9_2.noarch texlive-attachfile-9:20200406-26.el9_2.noarch texlive-atveryend-9:20200406-26.el9_2.noarch texlive-auxhook-9:20200406-26.el9_2.noarch texlive-avantgar-9:20200406-26.el9_2.noarch texlive-babel-9:20200406-26.el9_2.noarch texlive-babel-english-9:20200406-26.el9_2.noarch texlive-babelbib-9:20200406-26.el9_2.noarch texlive-base-9:20200406-26.el9_2.noarch texlive-beamer-9:20200406-26.el9_2.noarch texlive-bera-9:20200406-26.el9_2.noarch texlive-beton-9:20200406-26.el9_2.noarch texlive-bibtex-9:20200406-26.el9_2.x86_64 texlive-bidi-9:20200406-26.el9_2.noarch texlive-bigintcalc-9:20200406-26.el9_2.noarch texlive-bitset-9:20200406-26.el9_2.noarch texlive-bookman-9:20200406-26.el9_2.noarch texlive-bookmark-9:20200406-26.el9_2.noarch texlive-booktabs-9:20200406-26.el9_2.noarch texlive-breakurl-9:20200406-26.el9_2.noarch texlive-capt-of-9:20200406-26.el9_2.noarch texlive-caption-9:20200406-26.el9_2.noarch texlive-carlisle-9:20200406-26.el9_2.noarch texlive-catchfile-9:20200406-26.el9_2.noarch texlive-changepage-9:20200406-26.el9_2.noarch texlive-charter-9:20200406-26.el9_2.noarch texlive-chngcntr-9:20200406-26.el9_2.noarch texlive-cjk-9:20200406-26.el9_2.noarch texlive-cjkpunct-9:20200406-37.el9.noarch texlive-cm-9:20200406-26.el9_2.noarch texlive-cm-super-9:20200406-26.el9_2.noarch texlive-cmap-9:20200406-26.el9_2.noarch texlive-cmextra-9:20200406-26.el9_2.noarch texlive-cns-9:20200406-26.el9_2.noarch texlive-collection-basic-9:20200406-26.el9_2.noarch texlive-collection-fontsrecommended-9:20200406-26.el9_2.noarch texlive-collection-latex-9:20200406-26.el9_2.noarch texlive-colorprofiles-9:20200406-26.el9_2.noarch texlive-colortbl-9:20200406-26.el9_2.noarch texlive-convbkmk-9:20200406-37.el9.noarch texlive-courier-9:20200406-26.el9_2.noarch texlive-csquotes-9:20200406-26.el9_2.noarch texlive-ctex-9:20200406-37.el9.noarch texlive-currfile-9:20200406-26.el9_2.noarch texlive-dvipdfmx-9:20200406-26.el9_2.x86_64 texlive-dvips-9:20200406-26.el9_2.x86_64 texlive-ec-9:20200406-26.el9_2.noarch texlive-enctex-9:20200406-26.el9_2.noarch texlive-enumitem-9:20200406-26.el9_2.noarch texlive-environ-9:20200406-26.el9_2.noarch texlive-epstopdf-pkg-9:20200406-26.el9_2.noarch texlive-eqparbox-9:20200406-26.el9_2.noarch texlive-eso-pic-9:20200406-26.el9_2.noarch texlive-etex-9:20200406-26.el9_2.noarch texlive-etex-pkg-9:20200406-26.el9_2.noarch texlive-etexcmds-9:20200406-26.el9_2.noarch texlive-etoolbox-9:20200406-26.el9_2.noarch texlive-euenc-9:20200406-26.el9_2.noarch texlive-euler-9:20200406-26.el9_2.noarch texlive-euro-9:20200406-26.el9_2.noarch texlive-eurosym-9:20200406-26.el9_2.noarch texlive-everyhook-9:20200406-37.el9.noarch texlive-fancybox-9:20200406-26.el9_2.noarch texlive-fancyhdr-9:20200406-26.el9_2.noarch texlive-fancyvrb-9:20200406-26.el9_2.noarch texlive-fandol-9:20200406-37.el9.noarch texlive-filecontents-9:20200406-26.el9_2.noarch texlive-filehook-9:20200406-26.el9_2.noarch texlive-firstaid-9:20200406-37.el9.noarch texlive-fix2col-9:20200406-26.el9_2.noarch texlive-float-9:20200406-26.el9_2.noarch texlive-fncychap-9:20200406-26.el9_2.noarch texlive-fonts-tlwg-9:20200406-26.el9_2.noarch texlive-fontspec-9:20200406-26.el9_2.noarch texlive-footmisc-9:20200406-26.el9_2.noarch texlive-fp-9:20200406-26.el9_2.noarch texlive-fpl-9:20200406-26.el9_2.noarch texlive-framed-9:20200406-26.el9_2.noarch texlive-garuda-c90-9:20200406-26.el9_2.noarch texlive-geometry-9:20200406-26.el9_2.noarch texlive-gettitlestring-9:20200406-26.el9_2.noarch texlive-glyphlist-9:20200406-26.el9_2.noarch texlive-graphics-9:20200406-26.el9_2.noarch texlive-graphics-cfg-9:20200406-26.el9_2.noarch texlive-graphics-def-9:20200406-26.el9_2.noarch texlive-grfext-9:20200406-26.el9_2.noarch texlive-grffile-9:20200406-26.el9_2.noarch texlive-helvetic-9:20200406-26.el9_2.noarch texlive-hobsub-9:20200406-26.el9_2.noarch texlive-hologo-9:20200406-26.el9_2.noarch texlive-hycolor-9:20200406-26.el9_2.noarch texlive-hyperref-9:20200406-26.el9_2.noarch texlive-hyph-utf8-9:20200406-26.el9_2.noarch texlive-hyphen-base-9:20200406-26.el9_2.noarch texlive-hyphenex-9:20200406-26.el9_2.noarch texlive-ifmtarg-9:20200406-26.el9_2.noarch texlive-ifplatform-9:20200406-26.el9_2.noarch texlive-iftex-9:20200406-26.el9_2.noarch texlive-index-9:20200406-26.el9_2.noarch texlive-infwarerr-9:20200406-26.el9_2.noarch texlive-intcalc-9:20200406-26.el9_2.noarch texlive-ipaex-9:20200406-37.el9.noarch texlive-japanese-otf-9:20200406-37.el9.noarch texlive-japanese-otf-uptex-9:20200406-37.el9.noarch texlive-kastrup-9:20200406-26.el9_2.noarch texlive-knuth-lib-9:20200406-26.el9_2.noarch texlive-knuth-local-9:20200406-26.el9_2.noarch texlive-koma-script-9:20200406-26.el9_2.noarch texlive-kpathsea-9:20200406-26.el9_2.x86_64 texlive-kvdefinekeys-9:20200406-26.el9_2.noarch texlive-kvoptions-9:20200406-26.el9_2.noarch texlive-kvsetkeys-9:20200406-26.el9_2.noarch texlive-l3backend-9:20200406-26.el9_2.noarch texlive-l3kernel-9:20200406-26.el9_2.noarch texlive-l3packages-9:20200406-26.el9_2.noarch texlive-latex-9:20200406-26.el9_2.noarch texlive-latex-base-dev-9:20200406-37.el9.noarch texlive-latex-firstaid-dev-9:20200406-37.el9.noarch texlive-latex-fonts-9:20200406-26.el9_2.noarch texlive-latexconfig-9:20200406-26.el9_2.noarch texlive-letltxmacro-9:20200406-26.el9_2.noarch texlive-lib-9:20200406-26.el9_2.x86_64 texlive-listings-9:20200406-26.el9_2.noarch texlive-lm-9:20200406-26.el9_2.noarch texlive-lm-math-9:20200406-26.el9_2.noarch texlive-ltxcmds-9:20200406-26.el9_2.noarch texlive-ltxmisc-9:20200406-26.el9_2.noarch texlive-lua-alt-getopt-9:20200406-26.el9_2.noarch texlive-luahbtex-9:20200406-26.el9_2.x86_64 texlive-lualatex-math-9:20200406-26.el9_2.noarch texlive-lualibs-9:20200406-26.el9_2.noarch texlive-luaotfload-9:20200406-26.el9_2.noarch texlive-luatex-9:20200406-26.el9_2.x86_64 texlive-luatex85-9:20200406-26.el9_2.noarch texlive-luatexbase-9:20200406-26.el9_2.noarch texlive-luatexja-9:20200406-37.el9.noarch texlive-makecmds-9:20200406-26.el9_2.noarch texlive-makeindex-9:20200406-26.el9_2.x86_64 texlive-manfnt-font-9:20200406-26.el9_2.noarch texlive-marginnote-9:20200406-26.el9_2.noarch texlive-marvosym-9:20200406-26.el9_2.noarch texlive-mathpazo-9:20200406-26.el9_2.noarch texlive-mdwtools-9:20200406-26.el9_2.noarch texlive-memoir-9:20200406-26.el9_2.noarch texlive-metafont-9:20200406-26.el9_2.x86_64 texlive-mflogo-9:20200406-26.el9_2.noarch texlive-mflogo-font-9:20200406-26.el9_2.noarch texlive-mfnfss-9:20200406-26.el9_2.noarch texlive-mfware-9:20200406-26.el9_2.x86_64 texlive-minitoc-9:20200406-26.el9_2.noarch texlive-modes-9:20200406-26.el9_2.noarch texlive-mparhack-9:20200406-26.el9_2.noarch texlive-mptopdf-9:20200406-26.el9_2.noarch texlive-ms-9:20200406-26.el9_2.noarch texlive-multido-9:20200406-26.el9_2.noarch texlive-multirow-9:20200406-26.el9_2.noarch texlive-natbib-9:20200406-26.el9_2.noarch texlive-ncntrsbk-9:20200406-26.el9_2.noarch texlive-needspace-9:20200406-26.el9_2.noarch texlive-norasi-c90-9:20200406-26.el9_2.noarch texlive-notoccite-9:20200406-26.el9_2.noarch texlive-oberdiek-9:20200406-26.el9_2.noarch texlive-palatino-9:20200406-26.el9_2.noarch texlive-paralist-9:20200406-26.el9_2.noarch texlive-parallel-9:20200406-26.el9_2.noarch texlive-parskip-9:20200406-26.el9_2.noarch texlive-pdfcolmk-9:20200406-26.el9_2.noarch texlive-pdfescape-9:20200406-26.el9_2.noarch texlive-pdftex-9:20200406-26.el9_2.x86_64 texlive-pdftexcmds-9:20200406-26.el9_2.noarch texlive-pgf-9:20200406-26.el9_2.noarch texlive-placeins-9:20200406-26.el9_2.noarch texlive-plain-9:20200406-26.el9_2.noarch texlive-platex-9:20200406-37.el9.noarch texlive-platex-tools-9:20200406-37.el9.noarch texlive-polyglossia-9:20200406-26.el9_2.noarch texlive-pslatex-9:20200406-26.el9_2.noarch texlive-psnfss-9:20200406-26.el9_2.noarch texlive-pspicture-9:20200406-26.el9_2.noarch texlive-pst-3d-9:20200406-26.el9_2.noarch texlive-pst-arrow-9:20200406-26.el9_2.noarch texlive-pst-coil-9:20200406-26.el9_2.noarch texlive-pst-eps-9:20200406-26.el9_2.noarch texlive-pst-fill-9:20200406-26.el9_2.noarch texlive-pst-grad-9:20200406-26.el9_2.noarch texlive-pst-math-9:20200406-26.el9_2.noarch texlive-pst-node-9:20200406-26.el9_2.noarch texlive-pst-plot-9:20200406-26.el9_2.noarch texlive-pst-text-9:20200406-26.el9_2.noarch texlive-pst-tools-9:20200406-26.el9_2.noarch texlive-pst-tree-9:20200406-26.el9_2.noarch texlive-pstricks-9:20200406-26.el9_2.noarch texlive-pstricks-add-9:20200406-26.el9_2.noarch texlive-ptex-9:20200406-37.el9.x86_64 texlive-ptex-base-9:20200406-37.el9.noarch texlive-ptex-fonts-9:20200406-37.el9.noarch texlive-pxfonts-9:20200406-26.el9_2.noarch texlive-qstest-9:20200406-26.el9_2.noarch texlive-refcount-9:20200406-26.el9_2.noarch texlive-rerunfilecheck-9:20200406-26.el9_2.noarch texlive-rsfs-9:20200406-26.el9_2.noarch texlive-sansmathaccent-9:20200406-26.el9_2.noarch texlive-sauerj-9:20200406-26.el9_2.noarch texlive-setspace-9:20200406-26.el9_2.noarch texlive-showexpl-9:20200406-26.el9_2.noarch texlive-soul-9:20200406-26.el9_2.noarch texlive-stringenc-9:20200406-26.el9_2.noarch texlive-sttools-9:20200406-37.el9.noarch texlive-subfig-9:20200406-26.el9_2.noarch texlive-svn-prov-9:20200406-26.el9_2.noarch texlive-symbol-9:20200406-26.el9_2.noarch texlive-tabulary-9:20200406-26.el9_2.noarch texlive-tex-9:20200406-26.el9_2.x86_64 texlive-tex-gyre-9:20200406-26.el9_2.noarch texlive-tex-gyre-math-9:20200406-26.el9_2.noarch texlive-tex-ini-files-9:20200406-26.el9_2.noarch texlive-texlive-common-doc-9:20200406-26.el9_2.noarch texlive-texlive-docindex-9:20200406-26.el9_2.noarch texlive-texlive-en-9:20200406-26.el9_2.noarch texlive-texlive-msg-translations-9:20200406-26.el9_2.noarch texlive-texlive-scripts-9:20200406-26.el9_2.noarch texlive-texlive.infra-9:20200406-26.el9_2.noarch texlive-threeparttable-9:20200406-26.el9_2.noarch texlive-thumbpdf-9:20200406-26.el9_2.noarch texlive-times-9:20200406-26.el9_2.noarch texlive-tipa-9:20200406-26.el9_2.noarch texlive-titlesec-9:20200406-26.el9_2.noarch texlive-tools-9:20200406-26.el9_2.noarch texlive-translator-9:20200406-26.el9_2.noarch texlive-trimspaces-9:20200406-26.el9_2.noarch texlive-ttfutils-9:20200406-37.el9.x86_64 texlive-txfonts-9:20200406-26.el9_2.noarch texlive-ucs-9:20200406-26.el9_2.noarch texlive-uhc-9:20200406-26.el9_2.noarch texlive-ulem-9:20200406-26.el9_2.noarch texlive-underscore-9:20200406-26.el9_2.noarch texlive-unicode-data-9:20200406-26.el9_2.noarch texlive-unicode-math-9:20200406-26.el9_2.noarch texlive-uniquecounter-9:20200406-26.el9_2.noarch texlive-updmap-map-9:20200406-26.el9_2.noarch texlive-uplatex-9:20200406-37.el9.noarch texlive-upquote-9:20200406-26.el9_2.noarch texlive-uptex-9:20200406-37.el9.x86_64 texlive-uptex-base-9:20200406-37.el9.noarch texlive-uptex-fonts-9:20200406-37.el9.noarch texlive-url-9:20200406-26.el9_2.noarch texlive-utopia-9:20200406-26.el9_2.noarch texlive-varwidth-9:20200406-26.el9_2.noarch texlive-wadalab-9:20200406-26.el9_2.noarch texlive-wasy-9:20200406-26.el9_2.noarch texlive-wasy-type1-9:20200406-26.el9_2.noarch texlive-wasysym-9:20200406-26.el9_2.noarch texlive-wrapfig-9:20200406-26.el9_2.noarch texlive-xcjk2uni-9:20200406-37.el9.noarch texlive-xcolor-9:20200406-26.el9_2.noarch texlive-xdvi-9:20200406-26.el9_2.x86_64 texlive-xecjk-9:20200406-26.el9_2.noarch texlive-xetex-9:20200406-26.el9_2.x86_64 texlive-xetexconfig-9:20200406-26.el9_2.noarch texlive-xifthen-9:20200406-26.el9_2.noarch texlive-xkeyval-9:20200406-26.el9_2.noarch texlive-xpinyin-9:20200406-37.el9.noarch texlive-xunicode-9:20200406-26.el9_2.noarch texlive-zapfchan-9:20200406-26.el9_2.noarch texlive-zapfding-9:20200406-26.el9_2.noarch texlive-zhmetrics-9:20200406-37.el9.noarch texlive-zhmetrics-uptex-9:20200406-37.el9.noarch texlive-zhnumber-9:20200406-37.el9.noarch texlive-zref-9:20200406-26.el9_2.noarch urw-base35-bookman-fonts-20200910-6.el9.noarch urw-base35-c059-fonts-20200910-6.el9.noarch urw-base35-d050000l-fonts-20200910-6.el9.noarch urw-base35-fonts-20200910-6.el9.noarch urw-base35-fonts-common-20200910-6.el9.noarch urw-base35-gothic-fonts-20200910-6.el9.noarch urw-base35-nimbus-mono-ps-fonts-20200910-6.el9.noarch urw-base35-nimbus-roman-fonts-20200910-6.el9.noarch urw-base35-nimbus-sans-fonts-20200910-6.el9.noarch urw-base35-p052-fonts-20200910-6.el9.noarch urw-base35-standard-symbols-ps-fonts-20200910-6.el9.noarch urw-base35-z003-fonts-20200910-6.el9.noarch xdg-utils-1.1.3-13.el9_6.noarch xml-common-0.6.3-58.el9.noarch xorg-x11-fonts-ISO8859-1-100dpi-7.5-33.el9.noarch zziplib-0.13.71-11.el9_4.x86_64 Complete! Additional packages installed: x86_64, 6 Check for docutils with /usr/bin/python3 $ /usr/bin/python3 -c try: import docutils; print(docutils.__version__) except: pass Python version: 3.9.21 Detected OS: Oracle Linux Server release 9.6. Note: RHEL-based distros typically require extra repositories. For most, enabling epel and crb are enough: sudo dnf install -y epel-release sudo dnf config-manager --set-enabled crb Yet, some may have other required repositories. Those commands could be useful: sudo dnf repolist all sudo dnf repoquery --available --info <pkgs> sudo dnf config-manager --set-enabled '*' # enable all - probably not what you want Sphinx needs to be installed either: 1) via pip/pypi with: /usr/bin/python3 -m venv sphinx_latest . sphinx_latest/bin/activate pip install -r ./Documentation/sphinx/requirements.txt If you want to exit the virtualenv, you can use: deactivate 2) As a package with: sudo dnf install python3-sphinx Please note that Sphinx currentlys produce false-positive warnings when the same name is used for more than one type (functions, structs, enums,...). This is known Sphinx bug. For more details, see: https://github.com/sphinx-doc/sphinx/pull/8313 All optional dependencies are met. Can't build as 1 mandatory dependency is missing Installing section: venv with pip ================================= $ /usr/bin/python3 -m venv sphinx_latest $ pip install --no-input -r ./Documentation/sphinx/requirements.txt Collecting alabaster Downloading alabaster-0.7.16-py3-none-any.whl (13 kB) Collecting Sphinx Downloading sphinx-7.4.7-py3-none-any.whl (3.4 MB) Collecting pyyaml Downloading PyYAML-6.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (737 kB) Collecting sphinxcontrib-htmlhelp>=2.0.0 Downloading sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl (98 kB) Collecting babel>=2.13 Downloading babel-2.17.0-py3-none-any.whl (10.2 MB) Collecting packaging>=23.0 Downloading packaging-25.0-py3-none-any.whl (66 kB) Collecting Pygments>=2.17 Downloading pygments-2.19.2-py3-none-any.whl (1.2 MB) Collecting sphinxcontrib-qthelp Downloading sphinxcontrib_qthelp-2.0.0-py3-none-any.whl (88 kB) Collecting snowballstemmer>=2.2 Downloading snowballstemmer-3.0.1-py3-none-any.whl (103 kB) Collecting importlib-metadata>=6.0 Downloading importlib_metadata-8.7.0-py3-none-any.whl (27 kB) Collecting sphinxcontrib-applehelp Downloading sphinxcontrib_applehelp-2.0.0-py3-none-any.whl (119 kB) Collecting sphinxcontrib-serializinghtml>=1.1.9 Downloading sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl (92 kB) Collecting sphinxcontrib-devhelp Downloading sphinxcontrib_devhelp-2.0.0-py3-none-any.whl (82 kB) Collecting requests>=2.30.0 Downloading requests-2.32.4-py3-none-any.whl (64 kB) Collecting docutils<0.22,>=0.20 Downloading docutils-0.21.2-py3-none-any.whl (587 kB) Collecting Jinja2>=3.1 Downloading jinja2-3.1.6-py3-none-any.whl (134 kB) Collecting imagesize>=1.3 Downloading imagesize-1.4.1-py2.py3-none-any.whl (8.8 kB) Collecting sphinxcontrib-jsmath Downloading sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl (5.1 kB) Collecting tomli>=2 Downloading tomli-2.2.1-py3-none-any.whl (14 kB) Collecting zipp>=3.20 Downloading zipp-3.23.0-py3-none-any.whl (10 kB) Collecting MarkupSafe>=2.0 Downloading MarkupSafe-3.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (20 kB) Collecting charset_normalizer<4,>=2 Downloading charset_normalizer-3.4.3-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (152 kB) Collecting certifi>=2017.4.17 Downloading certifi-2025.8.3-py3-none-any.whl (161 kB) Collecting urllib3<3,>=1.21.1 Downloading urllib3-2.5.0-py3-none-any.whl (129 kB) Collecting idna<4,>=2.5 Downloading idna-3.10-py3-none-any.whl (70 kB) Installing collected packages: zipp, urllib3, MarkupSafe, idna, charset-normalizer, certifi, tomli, sphinxcontrib-serializinghtml, sphinxcontrib-qthelp, sphinxcontrib-jsmath, sphinxcontrib-htmlhelp, sphinxcontrib-devhelp, sphinxcontrib-applehelp, snowballstemmer, requests, Pygments, packaging, Jinja2, importlib-metadata, imagesize, docutils, babel, alabaster, Sphinx, pyyaml Successfully installed Jinja2-3.1.6 MarkupSafe-3.0.2 Pygments-2.19.2 Sphinx-7.4.7 alabaster-0.7.16 babel-2.17.0 certifi-2025.8.3 charset-normalizer-3.4.3 docutils-0.21.2 idna-3.10 imagesize-1.4.1 importlib-metadata-8.7.0 packaging-25.0 pyyaml-6.0.2 requests-2.32.4 snowballstemmer-3.0.1 sphinxcontrib-applehelp-2.0.0 sphinxcontrib-devhelp-2.0.0 sphinxcontrib-htmlhelp-2.1.0 sphinxcontrib-jsmath-1.0.1 sphinxcontrib-qthelp-2.0.0 sphinxcontrib-serializinghtml-2.0.0 tomli-2.2.1 urllib3-2.5.0 zipp-3.23.0 Additional packages installed: Jinja2-3, 1, 6, MarkupSafe-3, 0, 2, Pygments-2, 19, 2, Sphinx-7, 4, 7, alabaster-0, 7, 16, babel-2, 17, 0, certifi-2025, 8, 3, charset-normalizer-3, 4, 3, docutils-0, 21, 2, idna-3, 10, imagesize-1, 4, 1, importlib-metadata-8, 7, 0, packaging-25, 0, pyyaml-6, 0, 2, requests-2, 32, 4, snowballstemmer-3, 0, 1, sphinxcontrib-applehelp-2, 0, 0, sphinxcontrib-devhelp-2, 0, 0, sphinxcontrib-htmlhelp-2, 1, 0, sphinxcontrib-jsmath-1, 0, 1, sphinxcontrib-qthelp-2, 0, 0, sphinxcontrib-serializinghtml-2, 0, 0, tomli-2, 2, 1, urllib3-2, 5, 0, zipp-3, 23, 0 Installing section: venv with pip ================================= $ /usr/bin/python3 -m venv sphinx_latest $ pip install --no-input -r ./Documentation/sphinx/requirements.txt Requirement already satisfied: alabaster in ./sphinx_latest/lib/python3.9/site-packages (from -r ./Documentation/sphinx/requirements.txt (line 2)) (0.7.16) Requirement already satisfied: Sphinx in ./sphinx_latest/lib/python3.9/site-packages (from -r ./Documentation/sphinx/requirements.txt (line 3)) (7.4.7) Requirement already satisfied: pyyaml in ./sphinx_latest/lib/python3.9/site-packages (from -r ./Documentation/sphinx/requirements.txt (line 4)) (6.0.2) Requirement already satisfied: Pygments>=2.17 in ./sphinx_latest/lib/python3.9/site-packages (from Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (2.19.2) Requirement already satisfied: Jinja2>=3.1 in ./sphinx_latest/lib/python3.9/site-packages (from Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (3.1.6) Requirement already satisfied: babel>=2.13 in ./sphinx_latest/lib/python3.9/site-packages (from Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (2.17.0) Requirement already satisfied: sphinxcontrib-serializinghtml>=1.1.9 in ./sphinx_latest/lib/python3.9/site-packages (from Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (2.0.0) Requirement already satisfied: sphinxcontrib-devhelp in ./sphinx_latest/lib/python3.9/site-packages (from Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (2.0.0) Requirement already satisfied: tomli>=2 in ./sphinx_latest/lib/python3.9/site-packages (from Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (2.2.1) Requirement already satisfied: sphinxcontrib-qthelp in ./sphinx_latest/lib/python3.9/site-packages (from Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (2.0.0) Requirement already satisfied: importlib-metadata>=6.0 in ./sphinx_latest/lib/python3.9/site-packages (from Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (8.7.0) Requirement already satisfied: snowballstemmer>=2.2 in ./sphinx_latest/lib/python3.9/site-packages (from Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (3.0.1) Requirement already satisfied: sphinxcontrib-applehelp in ./sphinx_latest/lib/python3.9/site-packages (from Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (2.0.0) Requirement already satisfied: imagesize>=1.3 in ./sphinx_latest/lib/python3.9/site-packages (from Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (1.4.1) Requirement already satisfied: sphinxcontrib-htmlhelp>=2.0.0 in ./sphinx_latest/lib/python3.9/site-packages (from Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (2.1.0) Requirement already satisfied: requests>=2.30.0 in ./sphinx_latest/lib/python3.9/site-packages (from Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (2.32.4) Requirement already satisfied: packaging>=23.0 in ./sphinx_latest/lib/python3.9/site-packages (from Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (25.0) Requirement already satisfied: docutils<0.22,>=0.20 in ./sphinx_latest/lib/python3.9/site-packages (from Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (0.21.2) Requirement already satisfied: sphinxcontrib-jsmath in ./sphinx_latest/lib/python3.9/site-packages (from Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (1.0.1) Requirement already satisfied: zipp>=3.20 in ./sphinx_latest/lib/python3.9/site-packages (from importlib-metadata>=6.0->Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (3.23.0) Requirement already satisfied: MarkupSafe>=2.0 in ./sphinx_latest/lib/python3.9/site-packages (from Jinja2>=3.1->Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (3.0.2) Requirement already satisfied: certifi>=2017.4.17 in ./sphinx_latest/lib/python3.9/site-packages (from requests>=2.30.0->Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (2025.8.3) Requirement already satisfied: urllib3<3,>=1.21.1 in ./sphinx_latest/lib/python3.9/site-packages (from requests>=2.30.0->Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (2.5.0) Requirement already satisfied: charset_normalizer<4,>=2 in ./sphinx_latest/lib/python3.9/site-packages (from requests>=2.30.0->Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (3.4.3) Requirement already satisfied: idna<4,>=2.5 in ./sphinx_latest/lib/python3.9/site-packages (from requests>=2.30.0->Sphinx->-r ./Documentation/sphinx/requirements.txt (line 3)) (3.10) Check for docutils on venv with sphinx_latest/bin/python $ sphinx_latest/bin/python -c try: import docutils; print(docutils.__version__) except: pass 0.21.2 $ sphinx-build --version sphinx-build 7.4.7 Installing section: package_install with dnf ============================================ $ dnf install -y --setopt=install_weak_deps=False python3-sphinx Last metadata expiration check: 0:02:20 ago on Mon Aug 18 07:33:55 2025. Dependencies resolved. ================================================================================================ Package Arch Version Repository Size ================================================================================================ Installing: python3-sphinx noarch 1:3.4.3-8.el9 ol9_codeready_builder 2.9 M Installing dependencies: python3-babel noarch 2.9.1-2.el9 ol9_appstream 6.6 M python3-chardet noarch 4.0.0-5.0.1.el9 base 350 k python3-docutils noarch 0.16-6.el9 ol9_appstream 2.0 M python3-idna noarch 2.10-7.0.1.el9_4.1 base 129 k python3-imagesize noarch 1.2.0-6.el9 ol9_codeready_builder 27 k python3-jinja2 noarch 2.11.3-8.el9_5 ol9_appstream 329 k python3-markupsafe x86_64 1.1.1-12.el9 ol9_appstream 52 k python3-packaging noarch 20.9-5.0.1.el9 ol9_appstream 117 k python3-pygments noarch 2.7.4-4.el9 ol9_codeready_builder 2.6 M python3-pyparsing noarch 2.4.7-9.el9 base 163 k python3-pysocks noarch 1.7.1-12.0.1.el9 base 46 k python3-pytz noarch 2021.1-5.el9 ol9_appstream 73 k python3-requests noarch 2.25.1-10.el9_6 latest 179 k python3-setuptools noarch 53.0.0-13.el9_6.1 latest 1.3 M python3-snowballstemmer noarch 1.9.0-10.el9 ol9_codeready_builder 231 k python3-sphinx-theme-alabaster noarch 0.7.12-13.el9 ol9_codeready_builder 48 k python3-sphinxcontrib-applehelp noarch 1.0.2-5.el9 ol9_codeready_builder 103 k python3-sphinxcontrib-devhelp noarch 1.0.2-5.el9 ol9_codeready_builder 95 k python3-sphinxcontrib-htmlhelp noarch 1.0.3-6.el9 ol9_codeready_builder 109 k python3-sphinxcontrib-jsmath noarch 1.0.1-12.el9 ol9_codeready_builder 33 k python3-sphinxcontrib-qthelp noarch 1.0.3-5.el9 ol9_codeready_builder 101 k python3-sphinxcontrib-serializinghtml noarch 1.1.4-5.el9 ol9_codeready_builder 103 k python3-urllib3 noarch 1.26.5-6.el9 base 310 k Transaction Summary ================================================================================================ Install 24 Packages Total download size: 18 M Installed size: 61 M Downloading Packages: (1/24): python3-idna-2.10-7.0.1.el9_4.1.noarch. 831 kB/s | 129 kB 00:00 (2/24): python3-pyparsing-2.4.7-9.el9.noarch.rp 901 kB/s | 163 kB 00:00 (3/24): python3-chardet-4.0.0-5.0.1.el9.noarch. 1.5 MB/s | 350 kB 00:00 (4/24): python3-pysocks-1.7.1-12.0.1.el9.noarch 611 kB/s | 46 kB 00:00 (5/24): python3-requests-2.25.1-10.el9_6.noarch 7.3 MB/s | 179 kB 00:00 (6/24): python3-urllib3-1.26.5-6.el9.noarch.rpm 3.9 MB/s | 310 kB 00:00 (7/24): python3-setuptools-53.0.0-13.el9_6.1.no 15 MB/s | 1.3 MB 00:00 (8/24): python3-docutils-0.16-6.el9.noarch.rpm 20 MB/s | 2.0 MB 00:00 (9/24): python3-babel-2.9.1-2.el9.noarch.rpm 37 MB/s | 6.6 MB 00:00 (10/24): python3-jinja2-2.11.3-8.el9_5.noarch.r 2.3 MB/s | 329 kB 00:00 (11/24): python3-packaging-20.9-5.0.1.el9.noarc 1.7 MB/s | 117 kB 00:00 (12/24): python3-pytz-2021.1-5.el9.noarch.rpm 1.6 MB/s | 73 kB 00:00 (13/24): python3-markupsafe-1.1.1-12.el9.x86_64 304 kB/s | 52 kB 00:00 (14/24): python3-snowballstemmer-1.9.0-10.el9.n 3.9 MB/s | 231 kB 00:00 (15/24): python3-pygments-2.7.4-4.el9.noarch.rp 25 MB/s | 2.6 MB 00:00 (16/24): python3-imagesize-1.2.0-6.el9.noarch.r 214 kB/s | 27 kB 00:00 (17/24): python3-sphinx-theme-alabaster-0.7.12- 939 kB/s | 48 kB 00:00 (18/24): python3-sphinxcontrib-devhelp-1.0.2-5. 1.9 MB/s | 95 kB 00:00 (19/24): python3-sphinx-3.4.3-8.el9.noarch.rpm 23 MB/s | 2.9 MB 00:00 (20/24): python3-sphinxcontrib-htmlhelp-1.0.3-6 1.4 MB/s | 109 kB 00:00 (21/24): python3-sphinxcontrib-jsmath-1.0.1-12. 412 kB/s | 33 kB 00:00 (22/24): python3-sphinxcontrib-serializinghtml- 1.7 MB/s | 103 kB 00:00 (23/24): python3-sphinxcontrib-qthelp-1.0.3-5.e 1.2 MB/s | 101 kB 00:00 (24/24): python3-sphinxcontrib-applehelp-1.0.2- 51 kB/s | 103 kB 00:02 -------------------------------------------------------------------------------- Total 6.8 MB/s | 18 MB 00:02 Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Installing : python3-setuptools-53.0.0-13.el9_6.1.noarch 1/24 Installing : python3-idna-2.10-7.0.1.el9_4.1.noarch 2/24 Installing : python3-sphinxcontrib-serializinghtml-1.1.4-5.el9. 3/24 Installing : python3-sphinxcontrib-qthelp-1.0.3-5.el9.noarch 4/24 Installing : python3-sphinxcontrib-jsmath-1.0.1-12.el9.noarch 5/24 Installing : python3-sphinxcontrib-htmlhelp-1.0.3-6.el9.noarch 6/24 Installing : python3-sphinxcontrib-devhelp-1.0.2-5.el9.noarch 7/24 Installing : python3-sphinxcontrib-applehelp-1.0.2-5.el9.noarch 8/24 Installing : python3-sphinx-theme-alabaster-0.7.12-13.el9.noarc 9/24 Installing : python3-snowballstemmer-1.9.0-10.el9.noarch 10/24 Installing : python3-pygments-2.7.4-4.el9.noarch 11/24 Installing : python3-imagesize-1.2.0-6.el9.noarch 12/24 Installing : python3-pytz-2021.1-5.el9.noarch 13/24 Installing : python3-babel-2.9.1-2.el9.noarch 14/24 Installing : python3-markupsafe-1.1.1-12.el9.x86_64 15/24 Installing : python3-jinja2-2.11.3-8.el9_5.noarch 16/24 Installing : python3-docutils-0.16-6.el9.noarch 17/24 Installing : python3-pysocks-1.7.1-12.0.1.el9.noarch 18/24 Installing : python3-urllib3-1.26.5-6.el9.noarch 19/24 Installing : python3-pyparsing-2.4.7-9.el9.noarch 20/24 Installing : python3-packaging-20.9-5.0.1.el9.noarch 21/24 Installing : python3-chardet-4.0.0-5.0.1.el9.noarch 22/24 Installing : python3-requests-2.25.1-10.el9_6.noarch 23/24 Installing : python3-sphinx-1:3.4.3-8.el9.noarch 24/24 Running scriptlet: python3-sphinx-1:3.4.3-8.el9.noarch 24/24 Verifying : python3-chardet-4.0.0-5.0.1.el9.noarch 1/24 Verifying : python3-idna-2.10-7.0.1.el9_4.1.noarch 2/24 Verifying : python3-pyparsing-2.4.7-9.el9.noarch 3/24 Verifying : python3-pysocks-1.7.1-12.0.1.el9.noarch 4/24 Verifying : python3-urllib3-1.26.5-6.el9.noarch 5/24 Verifying : python3-requests-2.25.1-10.el9_6.noarch 6/24 Verifying : python3-setuptools-53.0.0-13.el9_6.1.noarch 7/24 Verifying : python3-babel-2.9.1-2.el9.noarch 8/24 Verifying : python3-docutils-0.16-6.el9.noarch 9/24 Verifying : python3-jinja2-2.11.3-8.el9_5.noarch 10/24 Verifying : python3-markupsafe-1.1.1-12.el9.x86_64 11/24 Verifying : python3-packaging-20.9-5.0.1.el9.noarch 12/24 Verifying : python3-pytz-2021.1-5.el9.noarch 13/24 Verifying : python3-imagesize-1.2.0-6.el9.noarch 14/24 Verifying : python3-pygments-2.7.4-4.el9.noarch 15/24 Verifying : python3-snowballstemmer-1.9.0-10.el9.noarch 16/24 Verifying : python3-sphinx-1:3.4.3-8.el9.noarch 17/24 Verifying : python3-sphinx-theme-alabaster-0.7.12-13.el9.noarc 18/24 Verifying : python3-sphinxcontrib-applehelp-1.0.2-5.el9.noarch 19/24 Verifying : python3-sphinxcontrib-devhelp-1.0.2-5.el9.noarch 20/24 Verifying : python3-sphinxcontrib-htmlhelp-1.0.3-6.el9.noarch 21/24 Verifying : python3-sphinxcontrib-jsmath-1.0.1-12.el9.noarch 22/24 Verifying : python3-sphinxcontrib-qthelp-1.0.3-5.el9.noarch 23/24 Verifying : python3-sphinxcontrib-serializinghtml-1.1.4-5.el9. 24/24 Installed: python3-babel-2.9.1-2.el9.noarch python3-chardet-4.0.0-5.0.1.el9.noarch python3-docutils-0.16-6.el9.noarch python3-idna-2.10-7.0.1.el9_4.1.noarch python3-imagesize-1.2.0-6.el9.noarch python3-jinja2-2.11.3-8.el9_5.noarch python3-markupsafe-1.1.1-12.el9.x86_64 python3-packaging-20.9-5.0.1.el9.noarch python3-pygments-2.7.4-4.el9.noarch python3-pyparsing-2.4.7-9.el9.noarch python3-pysocks-1.7.1-12.0.1.el9.noarch python3-pytz-2021.1-5.el9.noarch python3-requests-2.25.1-10.el9_6.noarch python3-setuptools-53.0.0-13.el9_6.1.noarch python3-snowballstemmer-1.9.0-10.el9.noarch python3-sphinx-1:3.4.3-8.el9.noarch python3-sphinx-theme-alabaster-0.7.12-13.el9.noarch python3-sphinxcontrib-applehelp-1.0.2-5.el9.noarch python3-sphinxcontrib-devhelp-1.0.2-5.el9.noarch python3-sphinxcontrib-htmlhelp-1.0.3-6.el9.noarch python3-sphinxcontrib-jsmath-1.0.1-12.el9.noarch python3-sphinxcontrib-qthelp-1.0.3-5.el9.noarch python3-sphinxcontrib-serializinghtml-1.1.4-5.el9.noarch python3-urllib3-1.26.5-6.el9.noarch Complete! Additional packages installed: noarch, 1 Installing section: package_install with dnf ============================================ $ dnf install -y --setopt=install_weak_deps=False python3-sphinx Last metadata expiration check: 0:02:25 ago on Mon Aug 18 07:33:55 2025. Package python3-sphinx-1:3.4.3-8.el9.noarch is already installed. Dependencies resolved. Nothing to do. Complete! Check for docutils with /usr/bin/python3 $ /usr/bin/python3 -c try: import docutils; print(docutils.__version__) except: pass 0.16 $ sphinx-build --version sphinx-build 3.4.3 Default subset: Oracle Linux Server release 9.6 $ hostname Installation commands processed TAP version 14 1..1 # Subtest: Oracle Linux Server release 9.6 1..7 ok 1 - OS detection: Oracle Linux Server release 9.6 ok 2 - System packages: Packages installed ok 3 - Sphinx on venv: Sphinx Sphinx 7.4.7 ok 4 - Sphinx package: Sphinx Sphinx 3.4.3 ok 5 - Clean documentation: Build time: 0:00, return code: 0 ok 6 - Build HTML documentation: Build time: 3:57, return code: 0 ok 7 - Build PDF documentation: Build time: 10:09, return code: 0 # Subtest: PDF docs 1..65 ok 1 - dev-tools: pdf/dev-tools.pdf ok 2 - tools: pdf/tools.pdf ok 3 - filesystems: pdf/filesystems.pdf ok 4 - w1: pdf/w1.pdf ok 5 - maintainer: pdf/maintainer.pdf ok 6 - process: pdf/process.pdf ok 7 - isdn: pdf/isdn.pdf ok 8 - fault-injection: pdf/fault-injection.pdf ok 9 - iio: pdf/iio.pdf ok 10 - scheduler: pdf/scheduler.pdf ok 11 - staging: pdf/staging.pdf ok 12 - fpga: pdf/fpga.pdf ok 13 - power: pdf/power.pdf ok 14 - leds: pdf/leds.pdf ok 15 - edac: pdf/edac.pdf ok 16 - PCI: pdf/PCI.pdf ok 17 - firmware-guide: pdf/firmware-guide.pdf ok 18 - cpu-freq: pdf/cpu-freq.pdf ok 19 - mhi: pdf/mhi.pdf ok 20 - wmi: pdf/wmi.pdf ok 21 - timers: pdf/timers.pdf ok 22 - accel: pdf/accel.pdf ok 23 - hid: pdf/hid.pdf ok 24 - userspace-api: pdf/userspace-api.pdf ok 25 - spi: pdf/spi.pdf ok 26 - networking: pdf/networking.pdf ok 27 - virt: pdf/virt.pdf ok 28 - nvme: pdf/nvme.pdf ok 29 - translations: pdf/translations.pdf ok 30 - input: pdf/input.pdf ok 31 - tee: pdf/tee.pdf ok 32 - doc-guide: pdf/doc-guide.pdf ok 33 - cdrom: pdf/cdrom.pdf ok 34 - gpu: pdf/gpu.pdf ok 35 - i2c: pdf/i2c.pdf ok 36 - RCU: pdf/RCU.pdf ok 37 - watchdog: pdf/watchdog.pdf ok 38 - usb: pdf/usb.pdf ok 39 - rust: pdf/rust.pdf ok 40 - crypto: pdf/crypto.pdf ok 41 - kbuild: pdf/kbuild.pdf ok 42 - livepatch: pdf/livepatch.pdf ok 43 - mm: pdf/mm.pdf ok 44 - locking: pdf/locking.pdf ok 45 - infiniband: pdf/infiniband.pdf ok 46 - driver-api: pdf/driver-api.pdf ok 47 - bpf: pdf/bpf.pdf ok 48 - devicetree: pdf/devicetree.pdf ok 49 - block: pdf/block.pdf ok 50 - target: pdf/target.pdf ok 51 - arch: pdf/arch.pdf ok 52 - pcmcia: pdf/pcmcia.pdf ok 53 - scsi: pdf/scsi.pdf ok 54 - netlabel: pdf/netlabel.pdf ok 55 - sound: pdf/sound.pdf ok 56 - security: pdf/security.pdf ok 57 - accounting: pdf/accounting.pdf ok 58 - admin-guide: pdf/admin-guide.pdf ok 59 - core-api: pdf/core-api.pdf ok 60 - fb: pdf/fb.pdf ok 61 - peci: pdf/peci.pdf ok 62 - trace: pdf/trace.pdf ok 63 - misc-devices: pdf/misc-devices.pdf ok 64 - kernel-hacking: pdf/kernel-hacking.pdf ok 65 - hwmon: pdf/hwmon.pdf ok 1 - Oracle Linux Server release 9.6 - Here, I dropped the full logs for html and pdf, as they were a way too bigger> That's the end of the pdfdocs build target: Summary ======= Oracle Linux Server release 9.6: OS detection : PASSED: Oracle Linux Server release 9.6 System packages : PASSED: Packages installed Sphinx on venv : PASSED: Sphinx Sphinx 7.4.7 Sphinx package : PASSED: Sphinx Sphinx 3.4.3 Clean documentation : PASSED: Build time: 0:00, return code: 0 Build HTML documentation : PASSED: Build time: 3:57, return code: 0 Build PDF documentation : PASSED: Build time: 10:09, return code: 0 PDF docs: dev-tools : PASSED: pdf/dev-tools.pdf tools : PASSED: pdf/tools.pdf filesystems : PASSED: pdf/filesystems.pdf w1 : PASSED: pdf/w1.pdf maintainer : PASSED: pdf/maintainer.pdf process : PASSED: pdf/process.pdf isdn : PASSED: pdf/isdn.pdf fault-injection : PASSED: pdf/fault-injection.pdf iio : PASSED: pdf/iio.pdf scheduler : PASSED: pdf/scheduler.pdf staging : PASSED: pdf/staging.pdf fpga : PASSED: pdf/fpga.pdf power : PASSED: pdf/power.pdf leds : PASSED: pdf/leds.pdf edac : PASSED: pdf/edac.pdf PCI : PASSED: pdf/PCI.pdf firmware-guide : PASSED: pdf/firmware-guide.pdf cpu-freq : PASSED: pdf/cpu-freq.pdf mhi : PASSED: pdf/mhi.pdf wmi : PASSED: pdf/wmi.pdf timers : PASSED: pdf/timers.pdf accel : PASSED: pdf/accel.pdf hid : PASSED: pdf/hid.pdf userspace-api : PASSED: pdf/userspace-api.pdf spi : PASSED: pdf/spi.pdf networking : PASSED: pdf/networking.pdf virt : PASSED: pdf/virt.pdf nvme : PASSED: pdf/nvme.pdf translations : PASSED: pdf/translations.pdf input : PASSED: pdf/input.pdf tee : PASSED: pdf/tee.pdf doc-guide : PASSED: pdf/doc-guide.pdf cdrom : PASSED: pdf/cdrom.pdf gpu : PASSED: pdf/gpu.pdf i2c : PASSED: pdf/i2c.pdf RCU : PASSED: pdf/RCU.pdf watchdog : PASSED: pdf/watchdog.pdf usb : PASSED: pdf/usb.pdf rust : PASSED: pdf/rust.pdf crypto : PASSED: pdf/crypto.pdf kbuild : PASSED: pdf/kbuild.pdf livepatch : PASSED: pdf/livepatch.pdf mm : PASSED: pdf/mm.pdf locking : PASSED: pdf/locking.pdf infiniband : PASSED: pdf/infiniband.pdf driver-api : PASSED: pdf/driver-api.pdf bpf : PASSED: pdf/bpf.pdf devicetree : PASSED: pdf/devicetree.pdf block : PASSED: pdf/block.pdf target : PASSED: pdf/target.pdf arch : PASSED: pdf/arch.pdf pcmcia : PASSED: pdf/pcmcia.pdf scsi : PASSED: pdf/scsi.pdf netlabel : PASSED: pdf/netlabel.pdf sound : PASSED: pdf/sound.pdf security : PASSED: pdf/security.pdf accounting : PASSED: pdf/accounting.pdf admin-guide : PASSED: pdf/admin-guide.pdf core-api : PASSED: pdf/core-api.pdf fb : PASSED: pdf/fb.pdf peci : PASSED: pdf/peci.pdf trace : PASSED: pdf/trace.pdf misc-devices : PASSED: pdf/misc-devices.pdf kernel-hacking : PASSED: pdf/kernel-hacking.pdf hwmon : PASSED: pdf/hwmon.pdf /root/sphinx_latest/bin/python3 sphinx_latest/bin/sphinx-build -j4 -b latex -c /root/Documentation -D latex_elements.papersize=a4paper -d /root/Documentation/output/.doctrees -D kerneldoc_bin=scripts/kernel-doc.py -D version=6.17.0-rc1 -D release= -D kerne ldoc_srctree=. /root/Documentation /root/Documentation/output/latex Summary ======= dev-tools : pdf/dev-tools.pdf tools : pdf/tools.pdf filesystems : pdf/filesystems.pdf w1 : pdf/w1.pdf maintainer : pdf/maintainer.pdf process : pdf/process.pdf isdn : pdf/isdn.pdf fault-injection: pdf/fault-injection.pdf iio : pdf/iio.pdf scheduler : pdf/scheduler.pdf staging : pdf/staging.pdf fpga : pdf/fpga.pdf power : pdf/power.pdf leds : pdf/leds.pdf edac : pdf/edac.pdf PCI : pdf/PCI.pdf firmware-guide : pdf/firmware-guide.pdf cpu-freq : pdf/cpu-freq.pdf mhi : pdf/mhi.pdf wmi : pdf/wmi.pdf timers : pdf/timers.pdf accel : pdf/accel.pdf hid : pdf/hid.pdf userspace-api : pdf/userspace-api.pdf spi : pdf/spi.pdf networking : pdf/networking.pdf virt : pdf/virt.pdf nvme : pdf/nvme.pdf translations : pdf/translations.pdf input : pdf/input.pdf tee : pdf/tee.pdf doc-guide : pdf/doc-guide.pdf cdrom : pdf/cdrom.pdf gpu : pdf/gpu.pdf i2c : pdf/i2c.pdf RCU : pdf/RCU.pdf watchdog : pdf/watchdog.pdf usb : pdf/usb.pdf rust : pdf/rust.pdf crypto : pdf/crypto.pdf kbuild : pdf/kbuild.pdf livepatch : pdf/livepatch.pdf mm : pdf/mm.pdf locking : pdf/locking.pdf infiniband : pdf/infiniband.pdf driver-api : pdf/driver-api.pdf bpf : pdf/bpf.pdf devicetree : pdf/devicetree.pdf block : pdf/block.pdf target : pdf/target.pdf arch : pdf/arch.pdf pcmcia : pdf/pcmcia.pdf scsi : pdf/scsi.pdf netlabel : pdf/netlabel.pdf sound : pdf/sound.pdf security : pdf/security.pdf accounting : pdf/accounting.pdf admin-guide : pdf/admin-guide.pdf core-api : pdf/core-api.pdf fb : pdf/fb.pdf peci : pdf/peci.pdf trace : pdf/trace.pdf misc-devices : pdf/misc-devices.pdf kernel-hacking : pdf/kernel-hacking.pdf hwmon : pdf/hwmon.pdf All PDF files were built. 1 of 1 validate commands succeeded
[-CC most folks] Hi Mauro, On Fri, 15 Aug 2025 13:36:16 +0200, Mauro Carvalho Chehab wrote: > Hi Jon, > > This series touch only on three files, and have a small diffstat: > > Documentation/Makefile | 4 - > Documentation/conf.py | 106 +++++++++++++++++++++---------------- > scripts/sphinx-pre-install | 41 +++++++++++--- > 3 files changed, 96 insertions(+), 55 deletions(-) > > Yet, it took a lot of my time. Basically, it addresses lots of problems related > with building PDF docs: > > - Makefile has a wrong set of definitions for paper size. It was > using pre-1.7 Sphinx nomenclature for some conf vars; > - The LaTeX options a conf.py had lots of issues; > - Finally, some PDF package dependencies for distros were wrong. > > I wrote an entire testbench to test this and doing builds on every > platform mentioned at sphinx-pre-install. > > After the change *most* PDF files are built on *most* platforms. > > > Summary > ======= > PASSED - AlmaLinux release 9.6 (Sage Margay) (7 tests) > PASSED - Amazon Linux release 2023 (Amazon Linux) (7 tests) > FAILED - archlinux (1 tests) > PASSED - CentOS Stream release 9 (7 tests) > PARTIAL - Debian GNU/Linux 12 (7 tests) > PARTIAL - Devuan GNU/Linux 5 (7 tests) > PASSED - Fedora release 42 (Adams) (7 tests) > PARTIAL - Gentoo Base System release 2.17 (7 tests) > PASSED - Kali GNU/Linux 2025.2 (7 tests) > PASSED - Mageia 9 (7 tests) > PARTIAL - Linux Mint 22 (7 tests) > PARTIAL - openEuler release 25.03 (7 tests) > PARTIAL - OpenMandriva Lx 4.3 (7 tests) > PASSED - openSUSE Leap 15.6 (7 tests) > PASSED - openSUSE Tumbleweed (7 tests) > PARTIAL - Oracle Linux Server release 9.6 (7 tests) > FAILED - Red Hat Enterprise Linux release 8.10 (Ootpa) (7 tests) > PARTIAL - Rocky Linux release 8.9 (Green Obsidian) (7 tests) > PARTIAL - Rocky Linux release 9.6 (Blue Onyx) (7 tests) > FAILED - Springdale Open Enterprise Linux release 9.2 (Parma) (7 tests) > PARTIAL - Ubuntu 24.04.2 LTS (7 tests) > PASSED - Ubuntu 25.04 (7 tests) > > The failed distros are: > > - archlinux. This is some problem on recent lxc containers. Unrelated > with pdf builds; > - RHEL 8: paywall issue: some packages required by Sphinx require a repository > that it is not openly available. I might have using CentOS repos, but, as we're > already testing it, I opted not do do it; > - Springdale 9.2: some broken package dependency. > > Now, if you look at the full logs below, you'll see that some distros come with > XeLaTeX or LaTeX troubles, causing bigger and/or more complex docs to > fail. It is possible to fix those, but they depend on addressing distro-specific > LaTeX issues like increasing maximum memory limits and maximum number > of idented paragraphs. No, the trouble is failed conversion of SVG --> PDF by convert(1) + rsvg-convert(1). Failed conversions trigger huge raw SVG code to be included literally into LaTeX sources, which results in code listings too huge to be rendered in a page; and overwhelms xelatex. IIUC, kfigure.py does such fallbacks of failed PDF conversions. Mightn't it be better to give up early in the latexdocs stage? > It follows full results per distro. [Ignoring lengthy list of results...] I think all you need to test build against are the limited list of: - arch.pdf - core-api.pdf - doc-guide.pdf - gpu.pdf - i2c.pdf - RCU.pdf - translations.pdf - userspace-api.pdf All of them have figures in SVG, and latexdocs tries to convert them into PDF. Probably, recommending Inkscape rather than ImageMagick would be the right thing, at least where it is provided as a distro package. Regards, Akira
Em Sat, 16 Aug 2025 14:06:43 +0900 Akira Yokosawa <akiyks@gmail.com> escreveu: > [-CC most folks] > > Hi Mauro, > > On Fri, 15 Aug 2025 13:36:16 +0200, Mauro Carvalho Chehab wrote: > > Hi Jon, > > > > This series touch only on three files, and have a small diffstat: > > > > Documentation/Makefile | 4 - > > Documentation/conf.py | 106 +++++++++++++++++++++---------------- > > scripts/sphinx-pre-install | 41 +++++++++++--- > > 3 files changed, 96 insertions(+), 55 deletions(-) > > > > Yet, it took a lot of my time. Basically, it addresses lots of problems related > > with building PDF docs: > > > > - Makefile has a wrong set of definitions for paper size. It was > > using pre-1.7 Sphinx nomenclature for some conf vars; > > - The LaTeX options a conf.py had lots of issues; > > - Finally, some PDF package dependencies for distros were wrong. > > > > I wrote an entire testbench to test this and doing builds on every > > platform mentioned at sphinx-pre-install. > > > > After the change *most* PDF files are built on *most* platforms. > > > > > > Summary > > ======= > > PASSED - AlmaLinux release 9.6 (Sage Margay) (7 tests) > > PASSED - Amazon Linux release 2023 (Amazon Linux) (7 tests) > > FAILED - archlinux (1 tests) > > PASSED - CentOS Stream release 9 (7 tests) > > PARTIAL - Debian GNU/Linux 12 (7 tests) > > PARTIAL - Devuan GNU/Linux 5 (7 tests) > > PASSED - Fedora release 42 (Adams) (7 tests) > > PARTIAL - Gentoo Base System release 2.17 (7 tests) > > PASSED - Kali GNU/Linux 2025.2 (7 tests) > > PASSED - Mageia 9 (7 tests) > > PARTIAL - Linux Mint 22 (7 tests) > > PARTIAL - openEuler release 25.03 (7 tests) > > PARTIAL - OpenMandriva Lx 4.3 (7 tests) > > PASSED - openSUSE Leap 15.6 (7 tests) > > PASSED - openSUSE Tumbleweed (7 tests) > > PARTIAL - Oracle Linux Server release 9.6 (7 tests) > > FAILED - Red Hat Enterprise Linux release 8.10 (Ootpa) (7 tests) > > PARTIAL - Rocky Linux release 8.9 (Green Obsidian) (7 tests) > > PARTIAL - Rocky Linux release 9.6 (Blue Onyx) (7 tests) > > FAILED - Springdale Open Enterprise Linux release 9.2 (Parma) (7 tests) > > PARTIAL - Ubuntu 24.04.2 LTS (7 tests) > > PASSED - Ubuntu 25.04 (7 tests) > > > > The failed distros are: > > > > - archlinux. This is some problem on recent lxc containers. Unrelated > > with pdf builds; > > - RHEL 8: paywall issue: some packages required by Sphinx require a repository > > that it is not openly available. I might have using CentOS repos, but, as we're > > already testing it, I opted not do do it; > > - Springdale 9.2: some broken package dependency. > > > > Now, if you look at the full logs below, you'll see that some distros come with > > XeLaTeX or LaTeX troubles, causing bigger and/or more complex docs to > > fail. It is possible to fix those, but they depend on addressing distro-specific > > LaTeX issues like increasing maximum memory limits and maximum number > > of idented paragraphs. > > No, the trouble is failed conversion of SVG --> PDF by convert(1) + rsvg-convert(1). > Failed conversions trigger huge raw SVG code to be included literally into LaTeX > sources, which results in code listings too huge to be rendered in a page; and > overwhelms xelatex. I remember we had some cases of too large items on media uAPI. There, the problem were mostly on tables. The fix was to add several LaTeX specific commands: $ git grep -i "raw:: latex" Documentation/userspace-api/media/|wc -l 201 Currently, they all are just changing font size, but We also use less-ugly things like Sphinx PDF builder specific classes: .. cssclass:: longtable So, one alternative would be to look at techniques to auto-scale image, like: \usepackage{pdfpages} ... \includepdf{image.png} as proposed here: https://tex.stackexchange.com/questions/39147/scale-image-to-page-width Yet, we tried something like that before to auto-scale tables, overriding Sphinx Latex macros. It worked for a couple of sphinx versions, but maintaining it was hard, as newer versions of Sphinx came with different macro names or different behaviors. Heh, if you check: https://www.sphinx-doc.org/en/master/latex.html#additional-css-like-sphinxsetup-keys You'll see that sphinx latex builder have been suffering lots of changes over time. > IIUC, kfigure.py does such fallbacks of failed PDF conversions. Mightn't it be > better to give up early in the latexdocs stage? Makes sense to me. > > It follows full results per distro. > > [Ignoring lengthy list of results...] > > I think all you need to test build against are the limited list of: > > - arch.pdf > - core-api.pdf > - doc-guide.pdf > - gpu.pdf > - i2c.pdf > - RCU.pdf > - translations.pdf > - userspace-api.pdf > > All of them have figures in SVG, and latexdocs tries to convert them > into PDF. > > Probably, recommending Inkscape rather than ImageMagick would be the right > thing, at least where it is provided as a distro package. Works for me, but let's do it on a separate series. I still have more than 100 patches on my pile to be merged. This series is focused on making at least some PDFs to build where possible, addressing major problems at conf.py that are causing LaTeX to not work on several distros and to fix wrong package dependencies(*). I'll add a TODO item on my queue to replace fom ImageMagick to Inkscape on a separate series. (*) One of such problem you blamed sphinx-build-wrapper, but the issue is actually addressed on this series with fixes to conf.py: there are currently several troubles at latex_documents list and at latex_elements. Those are causing wrong font detection on LaTeX. Maybe the corrupted font issues you got are related to it. It took me a lot of time to set latex_elements in a way that it now works fine. The main keys related to it are those: "passoptionstopackages": dedent(r""" \PassOptionsToPackage{svgnames}{xcolor} % Avoid encoding troubles when creating indexes \PassOptionsToPackage{xindy}{language=english,codepage=utf8,noautomatic} """), "fontenc": "", 'fontpkg': dedent(r''' \usepackage{fontspec} \setmainfont{DejaVu Serif} \setsansfont{DejaVu Sans} \setmonofont{DejaVu Sans Mono} \newfontfamily\headingfont{DejaVu Serif} '''), You can't imagine how much hours it took to get the above lines right ;-) Basically, "fontenc" and "fontpkg" are two different ways that LaTeX use to include true-type fonts. We need to disable the first, as otherwise it will try to use both, which may result in incompatible fonts (On Debian, LaTeX build reports corrupted fonts on T1 fontenc set - preventing PDF builds). The actual messge there is: ! Corrupted NFSS tables Btw, just disabling fontenc there was not enough, as babel was still trying to load a T1 Polish font indirectly used by Sphinx hyphenation macros. I had to add \newfontfamily to fix such issue. Thanks, Mauro
[-CC: bpf@vger] On Sat, 16 Aug 2025 13:55:38 +0200, Mauro Carvalho Chehab wrote: > Em Sat, 16 Aug 2025 14:06:43 +0900 > Akira Yokosawa <akiyks@gmail.com> escreveu: > [...] > Works for me, but let's do it on a separate series. I still have more > than 100 patches on my pile to be merged. This series is focused on > making at least some PDFs to build where possible, addressing major > problems at conf.py that are causing LaTeX to not work on several > distros and to fix wrong package dependencies(*). > > I'll add a TODO item on my queue to replace fom ImageMagick to > Inkscape on a separate series. > > (*) One of such problem you blamed sphinx-build-wrapper, but > the issue is actually addressed on this series with fixes to conf.py: > there are currently several troubles at latex_documents list and at > latex_elements. > > Those are causing wrong font detection on LaTeX. I couldn't see what you are talking about at first, because there have not been any such issues reported. Also, after applying 1/11 ... 4/11 on top of current docs-next (commit 0bbc2548ea85 ("Merge branch 'pre-install' into docs-mw"), despite the changelog of 5/11 which claims to fix an issue under debian, I couldn't reproduce the "! Corrupted NFSS tables" error under Ubuntu 24.04 (noble). I'm confused ... How can I reproduce this? It's getting really hard for me to keep up with your pace of changes in doc build scripts, really. Akira
Akira Yokosawa <akiyks@gmail.com> writes: Just as an aside: > It's getting really hard for me to keep up with your pace of changes > in doc build scripts, really. I can relate ... it's been busy lately, and perhaps I haven't helped either. But I do, very much, appreciate your attention to this work and your review effort. Thanks, jon
Em Sun, 17 Aug 2025 18:46:35 +0900 Akira Yokosawa <akiyks@gmail.com> escreveu: > [-CC: bpf@vger] > > On Sat, 16 Aug 2025 13:55:38 +0200, Mauro Carvalho Chehab wrote: > > Em Sat, 16 Aug 2025 14:06:43 +0900 > > Akira Yokosawa <akiyks@gmail.com> escreveu: > > > > [...] > > > Works for me, but let's do it on a separate series. I still have more > > than 100 patches on my pile to be merged. This series is focused on > > making at least some PDFs to build where possible, addressing major > > problems at conf.py that are causing LaTeX to not work on several > > distros and to fix wrong package dependencies(*). > > > > I'll add a TODO item on my queue to replace fom ImageMagick to > > Inkscape on a separate series. > > > > (*) One of such problem you blamed sphinx-build-wrapper, but > > the issue is actually addressed on this series with fixes to conf.py: > > there are currently several troubles at latex_documents list and at > > latex_elements. > > > > Those are causing wrong font detection on LaTeX. > > I couldn't see what you are talking about at first, because there > have not been any such issues reported. Heh, as you reported, you had troubles building pdf on Debian/Ubuntu. That's mainly why I took some time finding issues and writing this series. Basically, just fixing ImageMagick permissions didn't fix everything, as, at least with the Sphinx versions used at the tests got troubles with Sphinx hyphernation, which required a Polish font. Debian LaTeX packages seem to have issues with that. Fedora and other rpm-based distros built it fine. Now, reproducing such bugs could be tricky, specially with LaTeX, which is a complex tool with lots of system-specific stuff. Eventually, this could be related to LANG/LANGUAGE/LC_ALL/... env vars. Here, I'm using lxc-attach to bind to the container. It doesn't run .bashrc nor set locale vars, and it seems to keep some env vars from the host. In the specific case of LANG, it doesn't set anything. So, my test script sets LANG and LC_ALL to "C". The host has it set to LANG=pt_BR.UTF-8. > Also, after applying 1/11 ... 4/11 on top of current docs-next > (commit 0bbc2548ea85 ("Merge branch 'pre-install' into docs-mw"), > despite the changelog of 5/11 which claims to fix an issue under > debian, I couldn't reproduce the "! Corrupted NFSS tables" error > under Ubuntu 24.04 (noble). Maybe you could try set LANG/LC_ALL to "C". I tested it on the following lxc containers (picked from lxc download repositories): # APT-based (Debian/Ubuntu-like) debian: release: "bookworm" pre_setup_cmds: *apt_pkg_cmd post_setup_cmds: - "systemctl enable ssh" pkg_cmd: *apt_pkg_cmd devuan: release: "daedalus" pkg_cmd: *apt_pkg_cmd kali: release: "current" pkg_cmd: *apt_pkg_cmd mint: release: "wilma" pkg_cmd: *apt_pkg_cmd ubuntu: release: "plucky" pkg_cmd: *apt_pkg_cmd ubuntu-lts: dist: "ubuntu" release: "noble" pkg_cmd: *apt_pkg_cmd apt_pkg_cmd: &apt_pkg_cmd - "sudo locale-gen" - "sudo dpkg-reconfigure --frontend=noninteractive locales" - "apt-get update && apt-get install -y openssh-server git python3 make" - | if [ -f /etc/ImageMagick-6/policy.xml ]; then # Remove any existing restrictive policies for PDF/PS/EPS/XPS sed -i '/<policy.*domain="coder".*pattern=".*\(PDF\|PS\|EPS\|XPS\).*"/d' /etc/ImageMagick-6/policy.xml # Allow PDF patterns at the end </policymap> sed -i '/<\/policymap>/i \ \ <policy domain="coder" rights="read|write" pattern="{PS,PS2,PS3,EPS,PDF,XPS}" />' /etc/ImageMagick-6/policy.xml fi - | if [ -f /etc/ImageMagick-7/policy.xml ]; then # Remove any existing restrictive policies for PDF/PS/EPS/XPS sed -i '/<policy.*domain="coder".*pattern=".*\(PDF\|PS\|EPS\|XPS\).*"/d' /etc/ImageMagick-7/policy.xml # Allow PDF patterns at the end </policymap> sed -i '/<\/policymap>/i \ \ <policy domain="coder" rights="read|write" pattern="{PS,PS2,PS3,EPS,PDF,XPS}" />' /etc/ImageMagick-7/policy.xml fi Packages are installed according using sphinx-pre-install instructions. I don't remember what of those got the corrupted tables LaTeX warning, but I got it on more than one Debian-based distro. When I wrote the fix, I guess I logged at the Debian container. > I'm confused ... How can I reproduce this? > > It's getting really hard for me to keep up with your pace of changes > in doc build scripts, really. > > Akira
On Sun, 17 Aug 2025 13:36:06 +0200, Mauro Carvalho Chehab wrote: > Em Sun, 17 Aug 2025 18:46:35 +0900 > Akira Yokosawa <akiyks@gmail.com> escreveu: > >> [-CC: bpf@vger] >> [...] >> I couldn't see what you are talking about at first, because there >> have not been any such issues reported. > > Heh, as you reported, you had troubles building pdf on Debian/Ubuntu. > That's mainly why I took some time finding issues and writing this > series. Basically, just fixing ImageMagick permissions didn't fix > everything, as, at least with the Sphinx versions used at the tests > got troubles with Sphinx hyphernation, which required a Polish font. > > Debian LaTeX packages seem to have issues with that. Fedora and > other rpm-based distros built it fine. > > Now, reproducing such bugs could be tricky, specially with LaTeX, > which is a complex tool with lots of system-specific stuff. > > Eventually, this could be related to LANG/LANGUAGE/LC_ALL/... > env vars. Here, I'm using lxc-attach to bind to the container. > It doesn't run .bashrc nor set locale vars, and it seems to keep > some env vars from the host. In the specific case of LANG, > it doesn't set anything. So, my test script sets LANG and LC_ALL > to "C". The host has it set to LANG=pt_BR.UTF-8. > >> Also, after applying 1/11 ... 4/11 on top of current docs-next >> (commit 0bbc2548ea85 ("Merge branch 'pre-install' into docs-mw"), >> despite the changelog of 5/11 which claims to fix an issue under >> debian, I couldn't reproduce the "! Corrupted NFSS tables" error >> under Ubuntu 24.04 (noble). > > Maybe you could try set LANG/LC_ALL to "C". > > I tested it on the following lxc containers (picked from lxc > download repositories): > > # APT-based (Debian/Ubuntu-like) > debian: > release: "bookworm" > pre_setup_cmds: *apt_pkg_cmd > post_setup_cmds: > - "systemctl enable ssh" > pkg_cmd: *apt_pkg_cmd > > devuan: > release: "daedalus" > pkg_cmd: *apt_pkg_cmd > > kali: > release: "current" > pkg_cmd: *apt_pkg_cmd > > mint: > release: "wilma" > pkg_cmd: *apt_pkg_cmd > > ubuntu: > release: "plucky" > pkg_cmd: *apt_pkg_cmd > > ubuntu-lts: > dist: "ubuntu" > release: "noble" > pkg_cmd: *apt_pkg_cmd > > apt_pkg_cmd: &apt_pkg_cmd > - "sudo locale-gen" > - "sudo dpkg-reconfigure --frontend=noninteractive locales" > - "apt-get update && apt-get install -y openssh-server git python3 make" > - | > if [ -f /etc/ImageMagick-6/policy.xml ]; then > # Remove any existing restrictive policies for PDF/PS/EPS/XPS > sed -i '/<policy.*domain="coder".*pattern=".*\(PDF\|PS\|EPS\|XPS\).*"/d' /etc/ImageMagick-6/policy.xml > # Allow PDF patterns at the end </policymap> > sed -i '/<\/policymap>/i \ \ <policy domain="coder" rights="read|write" pattern="{PS,PS2,PS3,EPS,PDF,XPS}" />' /etc/ImageMagick-6/policy.xml > fi > - | > if [ -f /etc/ImageMagick-7/policy.xml ]; then > # Remove any existing restrictive policies for PDF/PS/EPS/XPS > sed -i '/<policy.*domain="coder".*pattern=".*\(PDF\|PS\|EPS\|XPS\).*"/d' /etc/ImageMagick-7/policy.xml > # Allow PDF patterns at the end </policymap> > sed -i '/<\/policymap>/i \ \ <policy domain="coder" rights="read|write" pattern="{PS,PS2,PS3,EPS,PDF,XPS}" />' /etc/ImageMagick-7/policy.xml > fi > > Packages are installed according using sphinx-pre-install > instructions. > > I don't remember what of those got the corrupted tables LaTeX warning, > but I got it on more than one Debian-based distro. When I wrote the > fix, I guess I logged at the Debian container. > That explains! I've stopped using ImageMagick all together. So it sounds to me like there is some issue in debian/ubuntu/...'s ImageMagick packaging, probably its build config disables some aspect of SVG --> PDF support for security concerns (???). I'm not sure at all. I think it has nothing to do with XeLaTeX font discovery and I don't see any reason to apply 5/11, at least for the time being. My suggestion would be to give up ImageMagick and install Inkscape instead. It is provided as a deb package for debian and its derivatives. Thanks, Akira
Em Sun, 17 Aug 2025 21:24:49 +0900 Akira Yokosawa <akiyks@gmail.com> escreveu: > On Sun, 17 Aug 2025 13:36:06 +0200, Mauro Carvalho Chehab wrote: > > Em Sun, 17 Aug 2025 18:46:35 +0900 > > Akira Yokosawa <akiyks@gmail.com> escreveu: > > > >> [-CC: bpf@vger] > >> > > [...] > > >> I couldn't see what you are talking about at first, because there > >> have not been any such issues reported. > > > > Heh, as you reported, you had troubles building pdf on Debian/Ubuntu. > > That's mainly why I took some time finding issues and writing this > > series. Basically, just fixing ImageMagick permissions didn't fix > > everything, as, at least with the Sphinx versions used at the tests > > got troubles with Sphinx hyphernation, which required a Polish font. > > > > Debian LaTeX packages seem to have issues with that. Fedora and > > other rpm-based distros built it fine. > > > > Now, reproducing such bugs could be tricky, specially with LaTeX, > > which is a complex tool with lots of system-specific stuff. > > > > Eventually, this could be related to LANG/LANGUAGE/LC_ALL/... > > env vars. Here, I'm using lxc-attach to bind to the container. > > It doesn't run .bashrc nor set locale vars, and it seems to keep > > some env vars from the host. In the specific case of LANG, > > it doesn't set anything. So, my test script sets LANG and LC_ALL > > to "C". The host has it set to LANG=pt_BR.UTF-8. > > > >> Also, after applying 1/11 ... 4/11 on top of current docs-next > >> (commit 0bbc2548ea85 ("Merge branch 'pre-install' into docs-mw"), > >> despite the changelog of 5/11 which claims to fix an issue under > >> debian, I couldn't reproduce the "! Corrupted NFSS tables" error > >> under Ubuntu 24.04 (noble). > > > > Maybe you could try set LANG/LC_ALL to "C". > > > > I tested it on the following lxc containers (picked from lxc > > download repositories): > > > > # APT-based (Debian/Ubuntu-like) > > debian: > > release: "bookworm" > > pre_setup_cmds: *apt_pkg_cmd > > post_setup_cmds: > > - "systemctl enable ssh" > > pkg_cmd: *apt_pkg_cmd > > > > devuan: > > release: "daedalus" > > pkg_cmd: *apt_pkg_cmd > > > > kali: > > release: "current" > > pkg_cmd: *apt_pkg_cmd > > > > mint: > > release: "wilma" > > pkg_cmd: *apt_pkg_cmd > > > > ubuntu: > > release: "plucky" > > pkg_cmd: *apt_pkg_cmd > > > > ubuntu-lts: > > dist: "ubuntu" > > release: "noble" > > pkg_cmd: *apt_pkg_cmd > > > > apt_pkg_cmd: &apt_pkg_cmd > > - "sudo locale-gen" > > - "sudo dpkg-reconfigure --frontend=noninteractive locales" > > - "apt-get update && apt-get install -y openssh-server git python3 make" > > - | > > if [ -f /etc/ImageMagick-6/policy.xml ]; then > > # Remove any existing restrictive policies for PDF/PS/EPS/XPS > > sed -i '/<policy.*domain="coder".*pattern=".*\(PDF\|PS\|EPS\|XPS\).*"/d' /etc/ImageMagick-6/policy.xml > > # Allow PDF patterns at the end </policymap> > > sed -i '/<\/policymap>/i \ \ <policy domain="coder" rights="read|write" pattern="{PS,PS2,PS3,EPS,PDF,XPS}" />' /etc/ImageMagick-6/policy.xml > > fi > > - | > > if [ -f /etc/ImageMagick-7/policy.xml ]; then > > # Remove any existing restrictive policies for PDF/PS/EPS/XPS > > sed -i '/<policy.*domain="coder".*pattern=".*\(PDF\|PS\|EPS\|XPS\).*"/d' /etc/ImageMagick-7/policy.xml > > # Allow PDF patterns at the end </policymap> > > sed -i '/<\/policymap>/i \ \ <policy domain="coder" rights="read|write" pattern="{PS,PS2,PS3,EPS,PDF,XPS}" />' /etc/ImageMagick-7/policy.xml > > fi > > > > Packages are installed according using sphinx-pre-install > > instructions. > > > > I don't remember what of those got the corrupted tables LaTeX warning, > > but I got it on more than one Debian-based distro. When I wrote the > > fix, I guess I logged at the Debian container. > > > > That explains! I've stopped using ImageMagick all together. > > So it sounds to me like there is some issue in debian/ubuntu/...'s > ImageMagick packaging, probably its build config disables some > aspect of SVG --> PDF support for security concerns (???). > I'm not sure at all. > > I think it has nothing to do with XeLaTeX font discovery and I don't > see any reason to apply 5/11, at least for the time being. > > My suggestion would be to give up ImageMagick and install Inkscape > instead. It is provided as a deb package for debian and its derivatives. The corrupted table error happened with very simple PDF files and has nothing to do with image generation. It rises even with very simple PDF targets like this: make SPHINXDIRS=peci pdfdocs Which produces \sphinxhyphen{} inside peci.tex, like this one: controller is acting as a PECI originator and the processor \sphinxhyphen{} as Basically, if this is included, directly or indirectly at the .tex file: \usepackage[T1]{fontenc} the fonts from T1 fontset aren't UTF-8 compatible, causing troubles with xelatex. The fixes on this series solved some corner cases, where babel tries to include it and use a Polish font (pzdr.tfm) to handle hyphenation. Such issue likely depends on Sphinx versions (as it is related to a sphinx-specific macro) and what LaTeX packages are installed at the system (fonts, babel, polygrossia). Regards, Mauro
On Sun, 17 Aug 2025 15:45:44 +0200, Mauro Carvalho Chehab wrote: [...] > The corrupted table error happened with very simple PDF files and has > nothing to do with image generation. > > It rises even with very simple PDF targets like this: > > make SPHINXDIRS=peci pdfdocs > > Which produces \sphinxhyphen{} inside peci.tex, like this one: > > controller is acting as a PECI originator and the processor \sphinxhyphen{} as > > Basically, if this is included, directly or indirectly at the > .tex file: > > \usepackage[T1]{fontenc} > > the fonts from T1 fontset aren't UTF-8 compatible, causing troubles > with xelatex. The fixes on this series solved some corner cases, where > babel tries to include it and use a Polish font (pzdr.tfm) to > handle hyphenation. > > Such issue likely depends on Sphinx versions (as it is related to a > sphinx-specific macro) and what LaTeX packages are installed at > the system (fonts, babel, polygrossia). Ah, I have finally understood what 5/11 is trying to do. Its changelog mainly talks about an issue you saw after adding options to xindy in that same commit, and you added \newfontfamily\headingfont{DejaVu Serif} to resolve it. Current changelog didn't make sense at all for me. Can you please reword it and make it easier to follow? With that, feel free to add my Reviewed-by: Akira Yokosawa <akiyks@gmail.com> Thanks, Akira
Akira Yokosawa <akiyks@gmail.com> writes: > Ah, I have finally understood what 5/11 is trying to do. > > Its changelog mainly talks about an issue you saw after adding options > to xindy in that same commit, and you added > > \newfontfamily\headingfont{DejaVu Serif} > > to resolve it. > > Current changelog didn't make sense at all for me. > > Can you please reword it and make it easier to follow? > > With that, feel free to add my > > Reviewed-by: Akira Yokosawa <akiyks@gmail.com> So, if I have managed to understand this conversation, this reword is all we need to get this series merged..? Thanks, jon
On Mon, 18 Aug 2025 11:07:58 -0600, Jonathan Corbet wrote: > Akira Yokosawa <akiyks@gmail.com> writes: > >> Ah, I have finally understood what 5/11 is trying to do. >> >> Its changelog mainly talks about an issue you saw after adding options >> to xindy in that same commit, and you added >> >> \newfontfamily\headingfont{DejaVu Serif} >> >> to resolve it. >> >> Current changelog didn't make sense at all for me. >> >> Can you please reword it and make it easier to follow? >> >> With that, feel free to add my >> >> Reviewed-by: Akira Yokosawa <akiyks@gmail.com> > > So, if I have managed to understand this conversation, this reword is > all we need to get this series merged..? Well, after some thoughts on the conversation took place on xindy, I think I have to withdraw my Reviewed-by: tag. I was the one who was totally confused. Please disregard it. Mauro, I can't review on 5/11 unless you provide me exact steps to reproduce the font discovery issue you said you have observed under debian at 4/11 of this series. That is, without assuming your other series of build-wrapper. The build-wrapper should be upper compatible with the current way of running sub-make, without any change in conf.py. I don't think this is too much to ask. Moving both the goal post and the build script at the same time is the wrong thing to do in my opinion. Regards, Akira
Em Tue, 19 Aug 2025 08:26:31 +0900 Akira Yokosawa <akiyks@gmail.com> escreveu: > On Mon, 18 Aug 2025 11:07:58 -0600, Jonathan Corbet wrote: > > Akira Yokosawa <akiyks@gmail.com> writes: > > > >> Ah, I have finally understood what 5/11 is trying to do. > >> > >> Its changelog mainly talks about an issue you saw after adding options > >> to xindy in that same commit, and you added > >> > >> \newfontfamily\headingfont{DejaVu Serif} > >> > >> to resolve it. > >> > >> Current changelog didn't make sense at all for me. > >> > >> Can you please reword it and make it easier to follow? > >> > >> With that, feel free to add my > >> > >> Reviewed-by: Akira Yokosawa <akiyks@gmail.com> > > > > So, if I have managed to understand this conversation, this reword is > > all we need to get this series merged..? > > Well, after some thoughts on the conversation took place on xindy, > I think I have to withdraw my Reviewed-by: tag. > > I was the one who was totally confused. > > Please disregard it. > > Mauro, I can't review on 5/11 unless you provide me exact steps to reproduce > the font discovery issue you said you have observed under debian at 4/11 of > this series. That is, without assuming your other series of build-wrapper. See below. > The build-wrapper should be upper compatible with the current way of > running sub-make, without any change in conf.py. The build-wrapper series doesn't make any changes on conf.py: $ git diff pdfdocs..sphinx-build-wrapper --stat .pylintrc | 2 +- Documentation/Makefile | 142 +++------- Documentation/sphinx/parallel-wrapper.sh | 33 --- scripts/jobserver-exec | 88 ++----- scripts/lib/jobserver.py | 149 +++++++++++ scripts/sphinx-build-wrapper | 767 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ scripts/sphinx-pre-install | 14 +- 7 files changed, 994 insertions(+), 201 deletions(-) It also doesn't change the build logic: it just moves it to the script. The only difference was with regards to serializing the build, as I forgot to take it into account when I wrote it. However, I sent already a patch addressing it. In summary, all the sphinx-build-wrapper series do is: - move code from Documentation/Makefile into a python script; - get rid of a shell script; - split scripts/jobserver-exec into an exec and a library; - change the output of doc build to produce a summary at the end, returning an error code only if one or more PDF files were not built; - allow calling the script directly without requiring a makefile; - add a couple of optional command line parameters to help debugging. On the other hand, the pdf series diffstat is: $ git diff netlink_v10..pdfdocs --stat Documentation/Makefile | 4 ++-- Documentation/conf.py | 106 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------------------------- scripts/sphinx-pre-install | 41 ++++++++++++++++++++++++++++++++--------- 3 files changed, 96 insertions(+), 55 deletions(-) The Makefile change is actually a fix: diff --git a/Documentation/Makefile b/Documentation/Makefile index 820f07e0afe6..2ed334971acd 100644 --- a/Documentation/Makefile +++ b/Documentation/Makefile @@ -63,2 +63,2 @@ endif #HAVE_LATEXMK -PAPEROPT_a4 = -D latex_paper_size=a4 -PAPEROPT_letter = -D latex_paper_size=letter +PAPEROPT_a4 = -D latex_elements.papersize=a4paper +PAPEROPT_letter = -D latex_elements.papersize=letterpaper So, the entire series do: 1. Fix paper size define, as latex_paper_size doesn´t exist since Sphinx 1.x. It got replaced by latex_elements.papersize; 2. Broken package dependencies related to PDF builds on several distros inside sphinx-pre-install; 3. It properly construct the name of pdfdocs to be built when SPHINXDIRS is used; 4. It prevents the usage of T1 fontenc fonts, which could be caused by either one of those two reasons: a) \sphinxhyphen{} b) index build I got those when checking what packages were required on some distros (Debian, Ubuntu, Mageia, openMandriva, Gentoo). Depending on the distro, the Sphinx version and the installed packages, the *.tex file ends adding: \usepackage[T1]{fontenc} This is incompatible with xelatex with utf-8 fonts as T1 is not UTF-8 ready. with (a), \sphinxhyphen{} logic - together with babel, ends requiring pzdr.tfm. To do the conf.py, I did some changes for it to better align with: https://www.sphinx-doc.org/en/master/latex.html#module-latex As the original settings were written for Sphinx 1.4.1 and had very little fixes since then. The changes are: 1. Added: "fontenc": "" to prevent a possible default of having: r'\usepackage[T1]{fontenc}' 2. Place font settings at the right place for more modern Spinx versions. If you look there, font specs shall be under "fontpkg", not under "preamble": + 'fontpkg': dedent(r''' + \usepackage{fontspec} + \setmainfont{DejaVu Serif} + \setsansfont{DejaVu Sans} + \setmonofont{DejaVu Sans Mono} - # Additional stuff for the LaTeX preamble. - "preamble": """ - % Use some font with UTF-8 support with XeLaTeX - \\usepackage{fontspec} - \\setsansfont{DejaVu Sans} - \\setromanfont{DejaVu Serif} - \\setmonofont{DejaVu Sans Mono} - """, } 3. Added a fix where some LaTeX modules were trying to use T1 fontenc: \newfontfamily\headingfont{DejaVu Serif} 4. I used dedent() to remove weird whitespaces at the beginning inside .tex files - no functional changes - this is just cosmetic at the output; 5. I moved preamble from a separate part of conf.py: + "preamble": dedent(r""" + % Load kerneldoc specific LaTeX settings + \input{kerneldoc-preamble.sty} + """), -# Load kerneldoc specific LaTeX settings -latex_elements["preamble"] += """ - % Load kerneldoc specific LaTeX settings - \\input{kerneldoc-preamble.sty} -""" 6. I solved an issue were xindy was trying to include T1 fontenc. while here, I also added a parameter recommended at sphinx Latex configuration doc: + "passoptionstopackages": dedent(r""" + \PassOptionsToPackage{svgnames}{xcolor} + % Avoid encoding troubles when creating indexes + \PassOptionsToPackage{xindy}{language=english,codepage=utf8,noautomatic} + """), (the xcolor came from the documentation) The above doesn't load xindy; it just ensures that codepage=utf8 is used if it is used; 7. some distros didn't build pdf due to the lack of an index file. So, I added this: + 'printindex': r'\footnotesize\raggedright\printindex', which is also suggested at https://www.sphinx-doc.org/en/master/latex.html#module-latex So, basically, the changes at conf.py better align it with Sphinx documentation, and were experimentally tested: I didn't find any regressions on it, and it fixed PDF builds for several distros. Did you find any regressions? > I don't think this is too much to ask. Actually, it is... finding a way for you to reproduce it would require me to start from scratch and redo everything again, hoping that I'll do exactly the same way. It took me 2 entire weeks to do it the first time. I very much prefer dropping patch 05/11 and keep PDF broken than spending 2 weeks redoing it. > Moving both the goal post What do you mean by "goal post"? The pdfdocs series is there just to make sure that pdf builds will work on most distros, as currently they don't build on several of them. > and the build script at the same time is the wrong thing to do > in my opinion. Well, we can postpone the PDF series - or at least the patches you find problematic. The build script cleanup is important, though as it affects a series I have afterwards addressing some build issues affecting only the media subsystem, which is the only user of kernel-include tag. Thanks, Mauro
Hi Mauro, Please calm down. Apologizes if my wording has annoyed you. On Tue, 19 Aug 2025 03:02:39 +0200, Mauro Carvalho Chehab wrote: > Em Tue, 19 Aug 2025 08:26:31 +0900 > Akira Yokosawa <akiyks@gmail.com> escreveu: [...] >> Mauro, I can't review on 5/11 unless you provide me exact steps to reproduce >> the font discovery issue you said you have observed under debian at 4/11 of >> this series. That is, without assuming your other series of build-wrapper. > > See below. > >> The build-wrapper should be upper compatible with the current way of >> running sub-make, without any change in conf.py. > > The build-wrapper series doesn't make any changes on conf.py: Of course not, I'm well aware of the fact from the cover letter. [...] > 4. It prevents the usage of T1 fontenc fonts, which could be > caused by either one of those two reasons: > > a) \sphinxhyphen{} > b) index build > > I got those when checking what packages were required on some > distros (Debian, Ubuntu, Mageia, openMandriva, Gentoo). I couldn't reproduce it at PATCH 4/11 under a Ubnutu-based container I've been using, ignoring your sphinx-build-warpper series. I'd really like to see the issue with my eyes on top current way of doc building! That's all I am asking. I have no particular interest in the way you are testing all those variety of distros, and have no idea about it. Please provide steps to reproduce. I'd like to see a Dockerfile based "FROM ubuntu:latest" as the testing environment. I suspect you have encountered some issue due to some missing package/ setting in the container container side. Or does the issue only appear when you run the script directly? Of course, there always is a chance I might be missing something important. Regards, Akira
Em Tue, 19 Aug 2025 11:16:29 +0900 Akira Yokosawa <akiyks@gmail.com> escreveu: > Hi Mauro, > > Please calm down. > Apologizes if my wording has annoyed you. > > On Tue, 19 Aug 2025 03:02:39 +0200, Mauro Carvalho Chehab wrote: > > Em Tue, 19 Aug 2025 08:26:31 +0900 > > Akira Yokosawa <akiyks@gmail.com> escreveu: > > [...] > > >> Mauro, I can't review on 5/11 unless you provide me exact steps to reproduce > >> the font discovery issue you said you have observed under debian at 4/11 of > >> this series. That is, without assuming your other series of build-wrapper. > > > > See below. > > > >> The build-wrapper should be upper compatible with the current way of > >> running sub-make, without any change in conf.py. > > > > The build-wrapper series doesn't make any changes on conf.py: > > Of course not, I'm well aware of the fact from the cover letter. > > [...] > > > 4. It prevents the usage of T1 fontenc fonts, which could be > > caused by either one of those two reasons: > > > > a) \sphinxhyphen{} > > b) index build > > > > I got those when checking what packages were required on some > > distros (Debian, Ubuntu, Mageia, openMandriva, Gentoo). > > I couldn't reproduce it at PATCH 4/11 under a Ubnutu-based container > I've been using, ignoring your sphinx-build-warpper series. I'm assuming you're referring to patch 5/11, e.g.: ceaa95123364 ("docs: conf.py: fix some troubles for LaTeX output") > I'd really like to see the issue with my eyes on top current way of > doc building! > > That's all I am asking. > > I have no particular interest in the way you are testing all those > variety of distros, and have no idea about it. > > Please provide steps to reproduce. > I'd like to see a Dockerfile based "FROM ubuntu:latest" as the testing > environment. Heh, that's why you can't reproduce... you're using a Docker container and a different Ubuntu version than I. What I did here was to use a lxc container with 25.04, and used a script to pick the exact recommendations given by sphinx-pre-install. The container was created with: <script> sudo lxc-create -n ubuntu-test -t download -- --dist ubuntu --release plucky --arch amd64 sudo mkdir -p /var/lib/lxc/ubuntu-test sudo sh -c cat > /var/lib/lxc/ubuntu-test/config <<EOF lxc.arch = x86_64 lxc.pty.max = 1024 lxc.tty.max = 4 lxc.net.0.type = veth lxc.net.0.link = lxcbr0 lxc.net.0.flags = up lxc.net.0.hwaddr = 00:16:3e:6f:66:8c lxc.cap.drop = mac_admin mac_override sys_time sys_module sys_rawio lxc.cgroup.devices.allow = a lxc.cgroup2.devices.allow = a lxc.mount.auto = proc sys cgroup lxc.rootfs.path = /var/lib/lxc/ubuntu-test/rootfs EOF </script> once you get what's needed for make htmldocs work, installing only the dependencies recommended by sphinx-pre-install, you can start trying to reproduce the build issues for pdf. For the steps below, I installed Sphinx latest using venv: $ make SPHINXDIRS=peci pdfdocs ... This is XeTeX, Version 3.141592653-2.6-0.999996 (TeX Live 2025/dev/Debian) (preloaded format=xelatex) entering extended mode Latexmk: Getting log file 'peci.log' Latexmk: Examining 'peci.fls' Latexmk: Examining 'peci.log' Latexmk: Missing input file 'tgtermes.sty' (or dependence on it) from following: ! LaTeX Error: File `tgtermes.sty' not found. Latexmk: Log file says no output from latex Latexmk: For rule 'xelatex', no output was made Latexmk: Errors, so I did not complete making targets Collected error summary (may duplicate other messages): xelatex: Command for 'xelatex' gave return code 1 Refer to 'peci.log' and/or above output for details Latexmk: Sometimes, the -f option can be used to get latexmk to try to force complete processing. But normally, you will need to correct the file(s) that caused the error, and then rerun latexmk. In some cases, it is best to clean out generated files before rerunning latexmk after you've corrected the files. make[3]: *** [Makefile:29: peci.pdf] Error 12 make[2]: *** [Documentation/Makefile:148: pdfdocs] Error 1 make[1]: *** [/root/Makefile:1806: pdfdocs] Error 2 make: *** [Makefile:248: __sub-make] Error 2 Fix the broken font dependencies require installing other packages: # apt install tex-gyre texlive-fonts-recommended texlive-lang-chinese texlive-lang-chinese is already the newest version (2024.20250309-1). Installing: tex-gyre texlive-fonts-recommended Installing dependencies: fonts-texgyre fonts-texgyre-math As described at sphinx-pre-install patch: commit a888d353ac1eb0d558fda5482c6955d6c4a29f23 Author: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Date: Mon Jul 28 15:54:09 2025 +0200 scripts: sphinx-pre-install: fix PDF build issues on Ubuntu PDF output with current Debian-based distros require other packages for it to work. The main one is pzdr.tfm. Without that, \sphinxhyphen{} won't work, affecting multiple docs. For CJK, tex-gyre is required. Add the missing packages to the list. Now, here's the thing: to get the above dependencies, I played with installing/uninstalling multiple packages, until I discovered where each font dependency was, and where CJK fonts were placed. Still, the above is not enough: $ make cleandocs; LANG=C LC_ALL=C make SPHINXDIRS=peci pdfdocs ... entering extended mode Latexmk: Getting log file 'peci.log' Latexmk: Examining 'peci.fls' Latexmk: Examining 'peci.log' Latexmk: Index file 'peci.idx' was written Latexmk: References changed. Latexmk: Missing input file 'peci.toc' (or dependence on it) from following: No file peci.toc. Latexmk: Missing input file 'peci.ind' (or dependence on it) from following: No file peci.ind. Latexmk: References changed. Latexmk: References changed. Latexmk: Log file says output to 'peci.xdv' Have index file 'peci.idx', peci.ind peci Latexmk: Errors, so I did not complete making targets Collected error summary (may duplicate other messages): xelatex: Command for 'xelatex' gave return code 1 Refer to 'peci.log' and/or above output for details Latexmk: Sometimes, the -f option can be used to get latexmk to try to force complete processing. But normally, you will need to correct the file(s) that caused the error, and then rerun latexmk. In some cases, it is best to clean out generated files before rerunning latexmk after you've corrected the files. make[3]: *** [Makefile:29: peci.pdf] Error 12 make[2]: *** [Documentation/Makefile:148: pdfdocs] Error 1 make[1]: *** [/root/Makefile:1806: pdfdocs] Error 2 make: *** [Makefile:248: __sub-make] Error 2 $ ls Documentation/output/peci/latex/|grep pdf <none> PS.: such error is intermitent: re-creating containers sometimes fix the issues; sometimes not. It sounds to be that this is due to some race condition somewhere. Also, if you look at the *.tex output, you'll see it is messing with fonts: # grep usepackage Documentation/output/peci/latex/peci.tex \usepackage{cmap} \usepackage[T1]{fontenc} \usepackage{amsmath,amssymb,amstext} \usepackage{babel} \usepackage{tgtermes} \usepackage{tgheros} \usepackage[Bjarne]{fncychap} \usepackage[,maxlistdepth=10]{sphinx} \usepackage{geometry} \usepackage{setspace} \usepackage{hyperref} \usepackage{hypcap}% it must be loaded after hyperref. \usepackage{sphinxmessages} \usepackage{fontspec} e.g.: - The tex file is trying to use T1 fontenc and fontspec; - The fontspec usage came from conf.py preamble, which is not indented well: # grep -A7 fontspec Documentation/output/peci/latex/peci.tex \usepackage{fontspec} \setsansfont{DejaVu Sans} \setromanfont{DejaVu Serif} \setmonofont{DejaVu Sans Mono} % Load kerneldoc specific LaTeX settings \input{kerneldoc-preamble.sty} On several of my attempts, I got those errors: Package: fontenc 2021/04/29 v2.0v Standard LaTeX package LaTeX Font Info: Trying to load font information for T1+lmr on input line 11 6. LaTeX Font Info: No file T1lmr.fd. on input line 116. LaTeX Font Warning: Font shape `T1/lmr/m/n' undefined (Font) using `T1/lmr/m/n' instead on input line 116. ! Corrupted NFSS tables. wrong@fontshape ...message {Corrupted NFSS tables} error@fontshape else let f... l.116 ...\familydefault\seriesdefault\shapedefault If you search for it, you would get references like: https://tex.stackexchange.com/questions/740050/corrupted-nfss-tables explaining that using T1 together with fontenc is a very bad idea, recommending to use instead: \usepackage{fontspec} \newfontfamily<sometthing> and not use T1 fontenc. Unfortunately, I was not able to reproduce this exact error anymore, at least on Ubuntu. Perhaps I got this one on Gentoo or on some other distro, but I can't remember anymore how to reproduce this specific error message. - Yet, using my today's container, this specific scenario can be fixed by moving the font config data from preamble to "fontenc": <patch> +from textwrap import dedent + # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. @@ -441,20 +443,18 @@ latex_elements = { # For CJK One-half spacing, need to be in front of hyperref "extrapackages": r"\usepackage{setspace}", # Additional stuff for the LaTeX preamble. - "preamble": """ + "fontenc": dedent(""" % Use some font with UTF-8 support with XeLaTeX \\usepackage{fontspec} \\setsansfont{DejaVu Sans} \\setromanfont{DejaVu Serif} \\setmonofont{DejaVu Sans Mono} - """, -} - -# Load kerneldoc specific LaTeX settings -latex_elements["preamble"] += """ + """), + "preamble": dedent(""" % Load kerneldoc specific LaTeX settings \\input{kerneldoc-preamble.sty} -""" + """) +} </patch> which is one of the main changes I made. At the actual change, I opted to use raw strings, to avoid "\\" e.g.: "fontenc": dedent(r""" % Use some font with UTF-8 support with XeLaTeX \usepackage{fontspec} \setsansfont{DejaVu Sans} \setromanfont{DejaVu Serif} \setmonofont{DejaVu Sans Mono} """), With that, we have now: # grep usepackage Documentation/output/peci/latex/*.tex \usepackage{cmap} \usepackage{fontspec} \usepackage{amsmath,amssymb,amstext} \usepackage{babel} \usepackage{tgtermes} \usepackage{tgheros} \usepackage[Bjarne]{fncychap} \usepackage[,maxlistdepth=10]{sphinx} \usepackage{geometry} \usepackage{setspace} \usepackage{hyperref} \usepackage{hypcap}% it must be loaded after hyperref. \usepackage{sphinxmessages} However, on other tests, including other distros, I found that this is not enough, because: 1) the *.ind creation may use xindy on some distros and xindy could try to use T1 fontenc. So, I had to add this line: \PassOptionsToPackage{xindy}{language=english,codepage=utf8,noautomatic} to ensure that, if xindy is used, it will get codepage=utf8. 2) there were some other corner cases that required to add \newfontfamily\headingfont{DejaVu Serif} Again related to T1 fontenc. Thanks, Mauro
On Tue, 19 Aug 2025 15:32:00 +0200, Mauro Carvalho Chehab wrote: > Em Tue, 19 Aug 2025 11:16:29 +0900 > Akira Yokosawa <akiyks@gmail.com> escreveu: [...] >> That's all I am asking. >> >> I have no particular interest in the way you are testing all those >> variety of distros, and have no idea about it. >> >> Please provide steps to reproduce. >> I'd like to see a Dockerfile based "FROM ubuntu:latest" as the testing >> environment. > > Heh, that's why you can't reproduce... you're using a Docker container > and a different Ubuntu version than I. > > What I did here was to use a lxc container with 25.04, and used > a script to pick the exact recommendations given by sphinx-pre-install. > > The container was created with: > [...] > once you get what's needed for make htmldocs work, installing > only the dependencies recommended by sphinx-pre-install, you can > start trying to reproduce the build issues for pdf. I've just built a container "FROM ubuntu:plucky", which has inkscape instead of imagemagick + rsvg-convert. I don't see any font issue at 4/11 of this series under the container (I'm using podman). Furthermore, after I applied both of your series and the change for parallel runs of xelatex/latexmk and reverting the 5/11, I don't see any issue. Which strongly suggests 5/11 is not fixing any realistic issues. FWIW, Dockerfile I'm using for building the container is derived from the one I've been taking care of since 2021 as a LaTeX advisor to perfbook. If you are interested, here is its repo of Paul: git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/perfbook.git You might be interested in seeing docker/Dockerfile. I think there is something you are missing in the boot strapping phases of building your container. Just my wild guess. Thanks, Akira
Em Wed, 20 Aug 2025 08:54:52 +0900 Akira Yokosawa <akiyks@gmail.com> escreveu: > On Tue, 19 Aug 2025 15:32:00 +0200, Mauro Carvalho Chehab wrote: > > Em Tue, 19 Aug 2025 11:16:29 +0900 > > Akira Yokosawa <akiyks@gmail.com> escreveu: > > [...] > > >> That's all I am asking. > >> > >> I have no particular interest in the way you are testing all those > >> variety of distros, and have no idea about it. > >> > >> Please provide steps to reproduce. > >> I'd like to see a Dockerfile based "FROM ubuntu:latest" as the testing > >> environment. > > > > Heh, that's why you can't reproduce... you're using a Docker container > > and a different Ubuntu version than I. > > > > What I did here was to use a lxc container with 25.04, and used > > a script to pick the exact recommendations given by sphinx-pre-install. > > > > The container was created with: > > > > [...] > > > once you get what's needed for make htmldocs work, installing > > only the dependencies recommended by sphinx-pre-install, you can > > start trying to reproduce the build issues for pdf. > > I've just built a container "FROM ubuntu:plucky", which has inkscape > instead of imagemagick + rsvg-convert. I don't think that inkscape x imagemagick/rsvg-convert itself has anyhting to do with the problems I detected, as they're related to font issues (still, I got an issue on one of my builds on kfigure write file: encoding is missing at open, which may cause errors). Yet, installing imagemagick + rsvg-convert might affect some other packages that LaTeX would use. > I don't see any font issue at 4/11 of this series under the container > (I'm using podman). > > Furthermore, after I applied both of your series and the change for > parallel runs of xelatex/latexmk and reverting the 5/11, I don't see > any issue. > > Which strongly suggests 5/11 is not fixing any realistic issues. > > FWIW, Dockerfile I'm using for building the container is derived from the > one I've been taking care of since 2021 as a LaTeX advisor to perfbook. > > If you are interested, here is its repo of Paul: > > git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/perfbook.git > > You might be interested in seeing docker/Dockerfile. > > I think there is something you are missing in the boot strapping phases > of building your container. > > Just my wild guess. Just because you can't reproduce the issue, it doesn't mean it doesn't exist. LaTeX builds are complex having it has lots of dependencies, and may be affected by installed fonts, LC_* and LANG env vars, etc. It should be noticed that a Docker container doesn't have the same packages installed when compared with a LXC one. - IMO, instead of trying to reproduce the bug that was already fixed by my patches, it would be a way more important if you can double check if the changes introduce regressions. I'm planning to submit a new version of this series, with this patch split into 3 patches, with a better description, plus a couple of other fixes. If you notice a regression caused by any of the patches, please let us know, preferably pointing the the exact patch that broke it. Thanks, Mauro
Hi, On Wed, 20 Aug 2025 09:15:30 +0200, Mauro Carvalho Chehab wrote: > Em Wed, 20 Aug 2025 08:54:52 +0900 > Akira Yokosawa <akiyks@gmail.com> escreveu: > >> On Tue, 19 Aug 2025 15:32:00 +0200, Mauro Carvalho Chehab wrote: [...] >> I've just built a container "FROM ubuntu:plucky", which has inkscape >> instead of imagemagick + rsvg-convert. > > I don't think that inkscape x imagemagick/rsvg-convert itself has > anyhting to do with the problems I detected, as they're related to > font issues (still, I got an issue on one of my builds on kfigure > write file: encoding is missing at open, which may cause errors). OK, so you have spent a lot of time to paper over the ImageMagick issue used as an SVG --> PDF converter. I have simply given up using ImageMagick and been using inkscape instead. I can reliably reproduce the warnings and build errors (see below) without inkscape installed, instead with imagemagick + rsvg-convert installed, under a ubuntu:plucky based container. When I run: "make cleandocs; make SPHINXDIRS=gpu latexdocs", [**NOTE**] SPHINXDIRS=peci is not affected by this issue! kfigure.py emits warnings like this: ----------------------------------------------------------------------------------- WARNING: Error #1 when calling: /usr/bin/convert /linux/Documentation/gpu/amdgpu/pipe_and_queue_abstraction.svg /linux/Documentation/output/gpu/latex/pipe_and_queue_abstraction.pdf WARNING: Warning msg from convert(1): convert: unrecognized color `context-stroke' @ warning/color.c/GetColorCompliance/1064. convert: non-conforming drawing primitive definition `fill' @ error/draw.c/RenderMVGContent/4548. ----------------------------------------------------------------------------------- Nevertheless, "make SPHINXDIRS=gpu pdfdocs" continues building gpu.pdf, but ends up in this error in the middle of xelatex run. ----------------------------------------------------------------------------------- ------------ Run number 1 of rule 'xelatex' ------------ ------------ Running 'xelatex --no-pdf -interaction=batchmode -no-shell-escape -no-pdf -recorder "gpu.tex"' ------------ This is XeTeX, Version 3.141592653-2.6-0.999996 (TeX Live 2025/dev/Debian) (preloaded format=xelatex) entering extended mode Latexmk: Getting log file 'gpu.log' Latexmk: Examining 'gpu.fls' Latexmk: Examining 'gpu.log' Latexmk: Index file 'gpu.idx' was written Latexmk: References changed. Latexmk: Missing input file 'gpu.toc' (or dependence on it) from following: No file gpu.toc. Latexmk: Missing input file 'gpu.ind' (or dependence on it) from following: No file gpu.ind. Latexmk: References changed. Latexmk: References changed. Latexmk: Log file says output to 'gpu.xdv' Have index file 'gpu.idx', gpu.ind gpu Latexmk: Errors, so I did not complete making targets Collected error summary (may duplicate other messages): xelatex: Command for 'xelatex' gave return code 1 Refer to 'gpu.log' and/or above output for details Latexmk: Sometimes, the -f option can be used to get latexmk to try to force complete processing. But normally, you will need to correct the file(s) that caused the error, and then rerun latexmk. In some cases, it is best to clean out generated files before rerunning latexmk after you've corrected the files. make[3]: *** [Makefile:29: gpu.pdf] Error 12 make[2]: *** [Documentation/Makefile:148: pdfdocs] Error 1 make[1]: *** [/linux/Makefile:1806: pdfdocs] Error 2 make: *** [Makefile:248: __sub-make] Error 2 ----------------------------------------------------------------------------------- I think this is (mostly) the same as the issue you have been trying hard to track down. Lastly, I'm afraid but I have to tell you that I see the same error on my test branch which has both of your series applied. From "./scripts/sphinx-build-wrapper pdfdocs --sphinxdirs gpu": ----------------------------------------------------------------------------------- ------------ Run number 1 of rule 'xelatex' ------------ ------------ Running 'xelatex --no-pdf -no-pdf -interaction=batchmode -no-shell-escape -recorder "/linux/Documentation/output/gpu/latex/gpu.tex"' ------------ This is XeTeX, Version 3.141592653-2.6-0.999996 (TeX Live 2025/dev/Debian) (preloaded format=xelatex) entering extended mode Latexmk: Getting log file 'gpu.log' Latexmk: Examining 'gpu.fls' Latexmk: Examining 'gpu.log' Latexmk: Index file 'gpu.idx' was written Latexmk: References changed. Latexmk: Missing input file 'gpu.toc' (or dependence on it) from following: No file gpu.toc. Latexmk: Missing input file 'gpu.ind' (or dependence on it) from following: No file gpu.ind. Latexmk: References changed. Latexmk: References changed. Latexmk: Log file says output to 'gpu.xdv' Have index file 'gpu.idx', gpu.ind gpu Latexmk: Errors, so I did not complete making targets Collected error summary (may duplicate other messages): xelatex: Command for 'xelatex' gave return code 1 Refer to 'gpu.log' and/or above output for details Latexmk: Sometimes, the -f option can be used to get latexmk to try to force complete processing. But normally, you will need to correct the file(s) that caused the error, and then rerun latexmk. In some cases, it is best to clean out generated files before rerunning latexmk after you've corrected the files. Summary ======= gpu: FAILED PDF build failed: not all PDF files were created. ----------------------------------------------------------------------------------- Please test yourself with SPHINXDIRS=gpu and see what happens under your test environment. Thanks, Akira
On Wed, Aug 20, 2025 at 08:41:05PM +0900, Akira Yokosawa wrote: > Hi, > > On Wed, 20 Aug 2025 09:15:30 +0200, Mauro Carvalho Chehab wrote: > > Em Wed, 20 Aug 2025 08:54:52 +0900 > > Akira Yokosawa <akiyks@gmail.com> escreveu: > > > >> On Tue, 19 Aug 2025 15:32:00 +0200, Mauro Carvalho Chehab wrote: > > [...] > > >> I've just built a container "FROM ubuntu:plucky", which has inkscape > >> instead of imagemagick + rsvg-convert. > > > > I don't think that inkscape x imagemagick/rsvg-convert itself has > > anyhting to do with the problems I detected, as they're related to > > font issues (still, I got an issue on one of my builds on kfigure > > write file: encoding is missing at open, which may cause errors). > > OK, so you have spent a lot of time to paper over the ImageMagick issue > used as an SVG --> PDF converter. Why are you insisting with this? Again: This series doesn't try to address anything that would be caused by either imagemagick/rsvg-convert - or inkscape. It only address: - wrong dependencies from the existing ones - whatever they are; - non-UTF-8 fonts inside the produced *.tex files and a couple of other issues at conf.py - none of them related to images. > > I have simply given up using ImageMagick and been using inkscape instead. > > I can reliably reproduce the warnings and build errors (see below) without > inkscape installed, instead with imagemagick + rsvg-convert installed, > under a ubuntu:plucky based container. > > When I run: "make cleandocs; make SPHINXDIRS=gpu latexdocs", > > [**NOTE**] SPHINXDIRS=peci is not affected by this issue! > > kfigure.py emits warnings like this: I did got kfigure.py issues that can affect both inkscape and imagemagic, but those are **NOT** in this series: - the first issue is that python tries to write PDF output as strings, but Python 3.x can crash because strings have encodings. The default ascii encoding crashes with chars > 127 (and probably when there is a "\0" at the code); - the second issue is that two files use ForeignObject, which is not properly supported by inkscape or ImageMagick. Still both seems to be working fine (I only tried to do conversions by hand today). I believe that we need to add kfigure.py on our TODO list to make it more python 3.x friendly. Again: this is out of the scope of this series. ================ > ----------------------------------------------------------------------------------- > WARNING: Error #1 when calling: /usr/bin/convert /linux/Documentation/gpu/amdgpu/pipe_and_queue_abstraction.svg /linux/Documentation/output/gpu/latex/pipe_and_queue_abstraction.pdf > WARNING: Warning msg from convert(1): convert: unrecognized color `context-stroke' @ warning/color.c/GetColorCompliance/1064. > convert: non-conforming drawing primitive definition `fill' @ error/draw.c/RenderMVGContent/4548. > ----------------------------------------------------------------------------------- > > Nevertheless, "make SPHINXDIRS=gpu pdfdocs" continues building gpu.pdf, > but ends up in this error in the middle of xelatex run. > > ----------------------------------------------------------------------------------- > ------------ > Run number 1 of rule 'xelatex' > ------------ > ------------ > Running 'xelatex --no-pdf -interaction=batchmode -no-shell-escape -no-pdf -recorder "gpu.tex"' > ------------ > This is XeTeX, Version 3.141592653-2.6-0.999996 (TeX Live 2025/dev/Debian) (preloaded format=xelatex) > entering extended mode > Latexmk: Getting log file 'gpu.log' > Latexmk: Examining 'gpu.fls' > Latexmk: Examining 'gpu.log' > Latexmk: Index file 'gpu.idx' was written > Latexmk: References changed. > Latexmk: Missing input file 'gpu.toc' (or dependence on it) from following: > No file gpu.toc. > Latexmk: Missing input file 'gpu.ind' (or dependence on it) from following: > No file gpu.ind. > Latexmk: References changed. > Latexmk: References changed. > Latexmk: Log file says output to 'gpu.xdv' > Have index file 'gpu.idx', gpu.ind gpu > Latexmk: Errors, so I did not complete making targets > Collected error summary (may duplicate other messages): > xelatex: Command for 'xelatex' gave return code 1 > Refer to 'gpu.log' and/or above output for details > > Latexmk: Sometimes, the -f option can be used to get latexmk > to try to force complete processing. > But normally, you will need to correct the file(s) that caused the > error, and then rerun latexmk. > In some cases, it is best to clean out generated files before rerunning > latexmk after you've corrected the files. > make[3]: *** [Makefile:29: gpu.pdf] Error 12 > make[2]: *** [Documentation/Makefile:148: pdfdocs] Error 1 > make[1]: *** [/linux/Makefile:1806: pdfdocs] Error 2 > make: *** [Makefile:248: __sub-make] Error 2 > ----------------------------------------------------------------------------------- > > I think this is (mostly) the same as the issue you have been trying hard > to track down. No. Up to today(*), I was simply ignoring any warnings/errors related to kfigure.py. (*) earlier today I submitted exactly one patch related to it: https://lore.kernel.org/linux-doc/df1602df0da3a6254d58a782654e7f2e60512dc8.1755680997.git.mchehab+huawei@kernel.org/ Even such patch is unrelated to Inkscape x ImageMagick. It is meant to fix troubles during SVG/dot read and during PDF output writes. - As I've been replying over and over and over: The issue was with [T1]{fontenc} added at the *.tex files and/or the usage of other non-UTF-8 fonts. That happens on very simple files. There are also font issues on some distros affecting CJK related fonts due to missing packages and such. What I pointed is: I Don't know how you can setup an environment identical to mine to reproduce the font issues I got. - If you want a more comprehensive answer: LaTeX is highly dependent lots of packages, including fonts. The reason why you can't reproduce the font issues with Docker (I wasn't able to reproduce with Docker here as well) is probably due to either packaging differences between the two containers, due to different environment technologies or even due to the way Docker and LXC handles OS virtualization. Docker, for instance, doesn't have systemd running on it, which could affect install logic at packages that could be trying do something via systemd. I guess it also doesn't implement cgroups. It also requires to download locales package to setup locales (such package is already on lxc, although not configured). As the issue is related to fonts, different defaults with regards to the fonts already installed at the containers could be the root cause. Also, installing any package (you name it) that might have a direct or indirect dependency to a font can affect the bug reproduction. Installing inkscape, for instance, would directly require: <snip> # apt-cache depends inkscape inkscape Depends: librsvg2-common Depends: <python3:any> python3 Depends: lib2geom1.2.0t64 Depends: libatkmm-1.6-1v5 Depends: libboost-filesystem1.83.0 Depends: libc6 Depends: libcairo-gobject2 Depends: libcairo2 Depends: libcairomm-1.0-1v5 Depends: libcdr-0.1-1 Depends: libfontconfig1 Depends: libfreetype6 Depends: libgc1 Depends: libgcc-s1 Depends: libgdk-pixbuf-2.0-0 Depends: libglib2.0-0t64 Depends: libglibmm-2.4-1t64 Depends: libgomp1 Depends: libgsl28 Depends: libgspell-1-3 Depends: libgtk-3-0t64 Depends: libgtkmm-3.0-1t64 Depends: libharfbuzz0b Depends: libjpeg8 Depends: liblcms2-2 Depends: libpango-1.0-0 Depends: libpangocairo-1.0-0 Depends: libpangoft2-1.0-0 Depends: libpangomm-1.4-1v5 Depends: libpng16-16t64 Depends: libpoppler-glib8t64 Depends: libpoppler147 Depends: libpotrace0 Depends: libreadline8t64 Depends: librevenge-0.0-0 Depends: libsigc++-2.0-0v5 Depends: libsoup-2.4-1 Depends: libstdc++6 Depends: libvisio-0.1-1 Depends: libwpg-0.3-3 Depends: libx11-6 Depends: libxml2 Depends: libxslt1.1 Depends: zlib1g Recommends: aspell Recommends: fig2dev Recommends: imagemagick graphicsmagick-imagemagick-compat imagemagick-7.q16 Recommends: libimage-magick-perl Recommends: libwmf-bin Recommends: python3-cssselect Recommends: python3-lxml Recommends: python3-numpy Recommends: python3-scour Suggests: dia Suggests: inkscape-tutorials Suggests: libsvg-perl Suggests: pstoedit Suggests: python3-packaging Suggests: <python3-uniconvertor> Suggests: ruby </snip> No fonts listed there at the direct dependencies, so in principle, installing or not Inkscape or imagemagik won't make any difference at the installed fonts, or on installed texlive packages. Thanks, Mauro
Hi, Commenting on your observation quoted below. On Wed, 20 Aug 2025 18:48:10 +0200, Mauro Carvalho Chehab wrote: [...] > If you want a more comprehensive answer: > > LaTeX is highly dependent lots of packages, including fonts. The > reason why you can't reproduce the font issues with Docker > (I wasn't able to reproduce with Docker here as well) is > probably due to either packaging differences between the > two containers, due to different environment technologies > or even due to the way Docker and LXC handles OS virtualization. > I'm not saying there is no difference between Docker and LXC. Can you fill in ???? cells in the table below ? Docker column is my observation of "FROM ubuntu:plucky" podman runs. "make SPHINXDIRS=gpu pdfdocs" under Ubuntu Plucky --------------- --------- ---------- SVG --> PDF Docker LXC --------------- --------- ---------- imagemagick FAIL FAIL inkscape SUCCESS ???? imagemagick [*] FAIL ???? --------------- --------- ---------- [*] after installing both inkscape and imagemagick, remove inkscape with all its dependencies kept. Do you see any difference between Docker and LXC columns in the table? I'm all ears. Regards, Akira
Hi, Let me do a quick follow up. I messed up the table. On Thu, 21 Aug 2025 08:53:04 +0900, Akira Yokosawa wrote: > Hi, > > Commenting on your observation quoted below. > > On Wed, 20 Aug 2025 18:48:10 +0200, Mauro Carvalho Chehab wrote: > [...] > >> If you want a more comprehensive answer: >> >> LaTeX is highly dependent lots of packages, including fonts. The >> reason why you can't reproduce the font issues with Docker >> (I wasn't able to reproduce with Docker here as well) is >> probably due to either packaging differences between the >> two containers, due to different environment technologies >> or even due to the way Docker and LXC handles OS virtualization. >> > > I'm not saying there is no difference between Docker and LXC. > > Can you fill in ???? cells in the table below ? I mean with this series applied > Docker column is my observation of "FROM ubuntu:plucky" podman runs. > > "make SPHINXDIRS=gpu pdfdocs" under Ubuntu Plucky > I meant: --------------- --------- ---------- SVG --> PDF Docker LXC --------------- --------- ---------- imagemagick FAIL ???? inkscape SUCCESS ???? imagemagick [*] FAIL ???? --------------- --------- ---------- > --------------- --------- ---------- > SVG --> PDF Docker LXC > --------------- --------- ---------- > imagemagick FAIL FAIL > inkscape SUCCESS ???? > imagemagick [*] FAIL ???? > --------------- --------- ---------- > > [*] after installing both inkscape and imagemagick, remove inkscape > with all its dependencies kept. > > Do you see any difference between Docker and LXC columns in the table? > I'm all ears. > > Regards, > Akira >
Em Thu, 21 Aug 2025 09:09:41 +0900 Akira Yokosawa <akiyks@gmail.com> escreveu: > Hi, > > Let me do a quick follow up. > I messed up the table. > > On Thu, 21 Aug 2025 08:53:04 +0900, Akira Yokosawa wrote: > > Hi, > > > > Commenting on your observation quoted below. > > > > On Wed, 20 Aug 2025 18:48:10 +0200, Mauro Carvalho Chehab wrote: > > [...] > > > >> If you want a more comprehensive answer: > >> > >> LaTeX is highly dependent lots of packages, including fonts. The > >> reason why you can't reproduce the font issues with Docker > >> (I wasn't able to reproduce with Docker here as well) is > >> probably due to either packaging differences between the > >> two containers, due to different environment technologies > >> or even due to the way Docker and LXC handles OS virtualization. > >> > > > > I'm not saying there is no difference between Docker and LXC. > > > > Can you fill in ???? cells in the table below ? > I mean with this series applied > > > Docker column is my observation of "FROM ubuntu:plucky" podman runs. > > > > "make SPHINXDIRS=gpu pdfdocs" under Ubuntu Plucky > > > > I meant: > > --------------- --------- ---------- > SVG --> PDF Docker LXC > --------------- --------- ---------- > imagemagick FAIL ???? > inkscape SUCCESS ???? > imagemagick [*] FAIL ???? > --------------- --------- ---------- This is after my series, with doesn't deal with imagemagick/inkscape, it only fixes broken texlive dependencies and fix font handling: # (dpkg -l |grep -i magick; dpkg -l |grep inkscape)|grep ii ii imagemagick 8:7.1.1.43+dfsg1-1 amd64 image manipulation programs -- binaries ii imagemagick-7-common 8:7.1.1.43+dfsg1-1 all image manipulation programs -- infrastructure ii imagemagick-7.q16 8:7.1.1.43+dfsg1-1 amd64 image manipulation programs -- quantum depth Q16 ii libmagickcore-7.q16-10:amd64 8:7.1.1.43+dfsg1-1 amd64 low-level image manipulation library -- quantum depth Q16 ii libmagickwand-7.q16-10:amd64 8:7.1.1.43+dfsg1-1 amd64 image manipulation library -- quantum depth Q16 # make SPHINXDIRS=gpu pdfdocs Summary ======= gpu: gpu/pdf/gpu.pdf All PDF files were built. # rm -rf Documentation/output/gpu/* # (dpkg -l |grep -i magick; dpkg -l |grep inkscape)|grep ii ii imagemagick 8:7.1.1.43+dfsg1-1 amd64 image manipulation programs -- binaries ii imagemagick-7-common 8:7.1.1.43+dfsg1-1 all image manipulation programs -- infrastructure ii imagemagick-7.q16 8:7.1.1.43+dfsg1-1 amd64 image manipulation programs -- quantum depth Q16 ii libimage-magick-perl 8:7.1.1.43+dfsg1-1 all Perl interface to the ImageMagick graphics routines ii libimage-magick-q16-perl 8:7.1.1.43+dfsg1-1 amd64 Perl interface to the ImageMagick graphics routines -- Q16 version ii libmagickcore-7.q16-10:amd64 8:7.1.1.43+dfsg1-1 amd64 low-level image manipulation library -- quantum depth Q16 ii libmagickwand-7.q16-10:amd64 8:7.1.1.43+dfsg1-1 amd64 image manipulation library -- quantum depth Q16 ii inkscape # rm -rf Documentation/output/gpu/* # (dpkg -l |grep -i magick; dpkg -l |grep inkscape)|grep ii ii inkscape 1.2.2-8build1 amd64 vector-based drawing program # make SPHINXDIRS=gpu pdfdocs Summary ======= gpu: gpu/pdf/gpu.pdf > > --------------- --------- ---------- > > SVG --> PDF Docker LXC > > --------------- --------- ---------- > > imagemagick FAIL FAIL > > inkscape SUCCESS ???? > > imagemagick [*] FAIL ???? > > --------------- --------- ---------- > > > > [*] after installing both inkscape and imagemagick, remove inkscape > > with all its dependencies kept. > > > > Do you see any difference between Docker and LXC columns in the table? > > I'm all ears. Yes. After having texlive dependencies fixed, and addressing the broken conf.py file that is not aligned with modern Sphinx practices, it passed on all three scenarios. Please notice that addressing image was not the intent of this series. The goal was *just* to fix texlive dependencies and fix text font mapping that were causing troubles on Ubuntu and on other distros. Thanks, Mauro
Em Thu, 21 Aug 2025 09:52:21 +0200 Mauro Carvalho Chehab <mchehab+huawei@kernel.org> escreveu: > Em Thu, 21 Aug 2025 09:09:41 +0900 > Akira Yokosawa <akiyks@gmail.com> escreveu: > > > Hi, > > > > Let me do a quick follow up. > > I messed up the table. > > > > On Thu, 21 Aug 2025 08:53:04 +0900, Akira Yokosawa wrote: > > > Hi, > > > > > > Commenting on your observation quoted below. > > > > > > On Wed, 20 Aug 2025 18:48:10 +0200, Mauro Carvalho Chehab wrote: > > > [...] > > > > > >> If you want a more comprehensive answer: > > >> > > >> LaTeX is highly dependent lots of packages, including fonts. The > > >> reason why you can't reproduce the font issues with Docker > > >> (I wasn't able to reproduce with Docker here as well) is > > >> probably due to either packaging differences between the > > >> two containers, due to different environment technologies > > >> or even due to the way Docker and LXC handles OS virtualization. > > >> > > > > > > I'm not saying there is no difference between Docker and LXC. > > > > > > Can you fill in ???? cells in the table below ? > > I mean with this series applied > > > > > Docker column is my observation of "FROM ubuntu:plucky" podman runs. > > > > > > "make SPHINXDIRS=gpu pdfdocs" under Ubuntu Plucky > > > > > > > I meant: > > > > --------------- --------- ---------- > > SVG --> PDF Docker LXC > > --------------- --------- ---------- > > imagemagick FAIL ???? > > inkscape SUCCESS ???? > > imagemagick [*] FAIL ???? > > --------------- --------- ---------- > > This is after my series, with doesn't deal with imagemagick/inkscape, > it only fixes broken texlive dependencies and fix font handling: > > # (dpkg -l |grep -i magick; dpkg -l |grep inkscape)|grep ii > ii imagemagick 8:7.1.1.43+dfsg1-1 amd64 image manipulation programs -- binaries > ii imagemagick-7-common 8:7.1.1.43+dfsg1-1 all image manipulation programs -- infrastructure > ii imagemagick-7.q16 8:7.1.1.43+dfsg1-1 amd64 image manipulation programs -- quantum depth Q16 > ii libmagickcore-7.q16-10:amd64 8:7.1.1.43+dfsg1-1 amd64 low-level image manipulation library -- quantum depth Q16 > ii libmagickwand-7.q16-10:amd64 8:7.1.1.43+dfsg1-1 amd64 image manipulation library -- quantum depth Q16 > > # make SPHINXDIRS=gpu pdfdocs > > Summary > ======= > gpu: gpu/pdf/gpu.pdf > > All PDF files were built. > > # rm -rf Documentation/output/gpu/* > # (dpkg -l |grep -i magick; dpkg -l |grep inkscape)|grep ii > ii imagemagick 8:7.1.1.43+dfsg1-1 amd64 image manipulation programs -- binaries > ii imagemagick-7-common 8:7.1.1.43+dfsg1-1 all image manipulation programs -- infrastructure > ii imagemagick-7.q16 8:7.1.1.43+dfsg1-1 amd64 image manipulation programs -- quantum depth Q16 > ii libimage-magick-perl 8:7.1.1.43+dfsg1-1 all Perl interface to the ImageMagick graphics routines > ii libimage-magick-q16-perl 8:7.1.1.43+dfsg1-1 amd64 Perl interface to the ImageMagick graphics routines -- Q16 version > ii libmagickcore-7.q16-10:amd64 8:7.1.1.43+dfsg1-1 amd64 low-level image manipulation library -- quantum depth Q16 > ii libmagickwand-7.q16-10:amd64 8:7.1.1.43+dfsg1-1 amd64 image manipulation library -- quantum depth Q16 > ii inkscape > > # rm -rf Documentation/output/gpu/* > # (dpkg -l |grep -i magick; dpkg -l |grep inkscape)|grep ii > ii inkscape 1.2.2-8build1 amd64 vector-based drawing program > > # make SPHINXDIRS=gpu pdfdocs > > Summary > ======= > gpu: gpu/pdf/gpu.pdf > > > > --------------- --------- ---------- > > > SVG --> PDF Docker LXC > > > --------------- --------- ---------- > > > imagemagick FAIL FAIL > > > inkscape SUCCESS ???? > > > imagemagick [*] FAIL ???? > > > --------------- --------- ---------- > > > > > > [*] after installing both inkscape and imagemagick, remove inkscape > > > with all its dependencies kept. > > > > > > Do you see any difference between Docker and LXC columns in the table? > > > I'm all ears. > > Yes. After having texlive dependencies fixed, and addressing the broken > conf.py file that is not aligned with modern Sphinx practices, it passed > on all three scenarios. > > Please notice that addressing image was not the intent of this series. > > The goal was *just* to fix texlive dependencies and fix text font > mapping that were causing troubles on Ubuntu and on other distros. > > > Thanks, > Mauro Thanks, Mauro Hmm.. I ended doing the above tests with this patch on my pile. It could be affecting the results, as it prevents kfigure.py to crash when writing PDF output. commit df1602df0da3a6254d58a782654e7f2e60512dc8 Author: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Date: Wed Aug 20 09:17:50 2025 +0200 docs: kfigure.py: don't crash during read/write By default, Python does a very bad job when reading/writing from files, as it tries to enforce that the character is < 128. Nothing prevents a SVG file to contain, for instance, a comment with an utf-8 accented copyright notice - or even an utf-8 invalid char. While testing PDF and html builds, I recently faced one build that got an error at kfigure.py saying that a char was > 128, crashing PDF output. To avoid such issues, let's use PEP 383 subrogate escape encoding to prevent read/write errors on such cases. Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> diff --git a/Documentation/sphinx/kfigure.py b/Documentation/sphinx/kfigure.py index ad495c0da270..8ba07344a1c8 100644 --- a/Documentation/sphinx/kfigure.py +++ b/Documentation/sphinx/kfigure.py @@ -88,7 +88,7 @@ def mkdir(folder, mode=0o775): os.makedirs(folder, mode) def file2literal(fname): - with open(fname, "r") as src: + with open(fname, "r", encoding='utf8', errors='surrogateescape') as src: data = src.read() node = nodes.literal_block(data, data) return node @@ -355,7 +355,7 @@ def dot2format(app, dot_fname, out_fname): cmd = [dot_cmd, '-T%s' % out_format, dot_fname] exit_code = 42 - with open(out_fname, "w") as out: + with open(out_fname, "w", encoding='utf8', errors='surrogateescape') as out: exit_code = subprocess.call(cmd, stdout = out) if exit_code != 0: logger.warning( @@ -533,7 +533,7 @@ def visit_kernel_render(self, node): literal_block = node[0] code = literal_block.astext() - hashobj = code.encode('utf-8') # str(node.attributes) + hashobj = code.encode('utf-8', errors='surrogateescape')) # str(node.attributes) fname = path.join('%s-%s' % (srclang, sha1(hashobj).hexdigest())) tmp_fname = path.join( @@ -541,7 +541,7 @@ def visit_kernel_render(self, node): if not path.isfile(tmp_fname): mkdir(path.dirname(tmp_fname)) - with open(tmp_fname, "w") as out: + with open(tmp_fname, "w", encoding='utf8', errors='surrogateescape') as out: out.write(code) img_node = nodes.image(node.rawsource, **node.attributes)
Em Thu, 21 Aug 2025 09:09:41 +0900 Akira Yokosawa <akiyks@gmail.com> escreveu: > Hi, > > Let me do a quick follow up. > I messed up the table. > > On Thu, 21 Aug 2025 08:53:04 +0900, Akira Yokosawa wrote: > > Hi, > > > > Commenting on your observation quoted below. > > > > On Wed, 20 Aug 2025 18:48:10 +0200, Mauro Carvalho Chehab wrote: > > [...] > > > >> If you want a more comprehensive answer: > >> > >> LaTeX is highly dependent lots of packages, including fonts. The > >> reason why you can't reproduce the font issues with Docker > >> (I wasn't able to reproduce with Docker here as well) is > >> probably due to either packaging differences between the > >> two containers, due to different environment technologies > >> or even due to the way Docker and LXC handles OS virtualization. > >> > > > > I'm not saying there is no difference between Docker and LXC. > > > > Can you fill in ???? cells in the table below ? > I mean with this series applied > > > Docker column is my observation of "FROM ubuntu:plucky" podman runs. > > > > "make SPHINXDIRS=gpu pdfdocs" under Ubuntu Plucky > > > > I meant: > > --------------- --------- ---------- > SVG --> PDF Docker LXC > --------------- --------- ---------- > imagemagick FAIL ???? > inkscape SUCCESS ???? > imagemagick [*] FAIL ???? > --------------- --------- ---------- > > > --------------- --------- ---------- > > SVG --> PDF Docker LXC > > --------------- --------- ---------- > > imagemagick FAIL FAIL > > inkscape SUCCESS ???? > > imagemagick [*] FAIL ???? > > --------------- --------- ---------- > > > > [*] after installing both inkscape and imagemagick, remove inkscape > > with all its dependencies kept. > > > > Do you see any difference between Docker and LXC columns in the table? > > I'm all ears. I'm repeating my tests again. This time, it has just this series applied: https://lore.kernel.org/linux-doc/cover.1755763127.git.mchehab+huawei@kernel.org/T/#t (without that, not even simple PDF docs build here via Sphinx on Ubuntu) LXC container created from scratch, with a couple unrelated packages to make life easier (things like ssh server) and with locale-gen executed there. After its creation, I copied the relevant files from my machine to the container with: for ip in 10.0.3.129; do for d in Documentation scripts Makefile arch include tools; do rsync -av --times --delete "$d" "root@$ip:/root" --exclude output/; done; done Then, at the container (accessed via ssh): # Sphinx pre-install recommendations sudo apt-get install dvipng fonts-noto-cjk graphviz imagemagick latexmk librsvg2-bin tex-gyre texlive-fonts-recommended texlive-lang-chinese texlive-xetex sudo apt-get install python3-sphinx # Needed to avoid sphinx-build crashes for i in $(set|grep LC|cut -d'=' -f1); do unset $i;done export LC_ALL=C export LANG=C with that: imagemagick: FAIL inkscape: PASS imagemagick(*): FAIL I wonder if this is related to the kfigure.py bug of writing a binary output with a file opened in "w" mode. In Python, "w" crashes for characters > 127. It should instead be "wb". Thanks, Mauro
On Mon, 18 Aug 2025 01:07:24 +0900, Akira Yokosawa wrote: [...] > > Ah, I have finally understood what 5/11 is trying to do. > > Its changelog mainly talks about an issue you saw after adding options > to xindy in that same commit, and you added > > \newfontfamily\headingfont{DejaVu Serif} > > to resolve it. Sidenote: It looks like texlive-xindy is not available for RHEL based distros. That means, you will need to ask EPEL to provide it. Otherwise, you are obsoleting those distros for pdfdocs build (under the confinement of "distro packages only"). I think I can live with it. Akira
Em Mon, 18 Aug 2025 09:44:39 +0900 Akira Yokosawa <akiyks@gmail.com> escreveu: > On Mon, 18 Aug 2025 01:07:24 +0900, Akira Yokosawa wrote: > [...] > > > > > Ah, I have finally understood what 5/11 is trying to do. > > > > Its changelog mainly talks about an issue you saw after adding options > > to xindy in that same commit, and you added > > > > \newfontfamily\headingfont{DejaVu Serif} > > > > to resolve it. > > Sidenote: > > It looks like texlive-xindy is not available for RHEL based distros. On several rpm-based distros, extra repositories are needed. So, if you take a look at rpmfind: https://rpmfind.net/linux/rpm2html/search.php?query=python3-sphinx For the limited set of distros supported there, you'll see that sphinx-build can either be at: - main distro repos; - CRB; - Powertools But this is only a fraction of the problem, as there are several exceptions. For instance, RHEL8 from "redhat/ubi8" docker container(*) sounds to be an official vendor-provided image. (*) https://hub.docker.com/r/redhat/ubi8 Yet, if you use it and try to install sphinx-build: # dnf install python3-sphinx Updating Subscription Management repositories. Unable to read consumer identity This system is not registered with an entitlement server. You can use subscription-manager to register. Last metadata expiration check: 21:10:22 ago on Sun Aug 17 11:30:23 2025. No match for argument: python3-sphinx Error: Unable to find a match: python3-sphinx It won't work, because repo management in this case requires to setup a paywall protected procedure. > That means, you will need to ask EPEL to provide it. > Otherwise, you are obsoleting those distros for pdfdocs build > (under the confinement of "distro packages only"). Recommending a repository setup for rpm distros is complex. When I wrote sphinx-pre-install, I opted to keep such setup out of it. The rationale is that the ones using such distros should know better and may require a paid subscription. With the exception of rpmfusion on Fedora, where one needs to first download a RPM file from some site, for most distros, the extra needed repositories are already installed or can be installed from a package provided at the main repository. Once downloaded, all it takes is to enable it. For instance, to get what is needed to build both html and pdf on RockyLinux, one needs to install a distro package: dnf install -y epel-release Which adds extra repositories to /etc/yum.repos.d/. Then, either use config-manager: # change "enable" flag from /etc/yum.repos.d/ repos dnf install 'dnf-command(config-manager)' dnf config-manager --set-enabled powertools appstream epel or pass an extra option to enable the repo(s) during install: sudo dnf --enablrepo=powertools --enablrepo=appstream --enablrepo=epel install -y python3-sphinx {other packages} Now, sphinx-pre-install can later be improved to also contain repo-management instructions but this is out of the scope of this series (and I'm not sure if it is worth adding it there). Thanks, Mauro
On Mon, 18 Aug 2025 11:42:20 +0200, Mauro Carvalho Chehab wrote: > Em Mon, 18 Aug 2025 09:44:39 +0900 > Akira Yokosawa <akiyks@gmail.com> escreveu: >> Sidenote: >> >> It looks like texlive-xindy is not available for RHEL based distros. > > On several rpm-based distros, extra repositories are needed. > > So, if you take a look at rpmfind: > https://rpmfind.net/linux/rpm2html/search.php?query=python3-sphinx No, I'm talking about texlive-xindy. https://rpmfind.net/linux/rpm2html/search.php?query=texlive-xindy has RPMs for fedora 41/42/rawhide only. How do you install xindy under AlmaLinux release 9.6 (Sage Margay), Amazon Linux release 2023 (Amazon Linux), CentOS Stream release 9, and the likes? Thanks, Akira
Em Mon, 18 Aug 2025 19:06:03 +0900 Akira Yokosawa <akiyks@gmail.com> escreveu: > On Mon, 18 Aug 2025 11:42:20 +0200, Mauro Carvalho Chehab wrote: > > Em Mon, 18 Aug 2025 09:44:39 +0900 > > Akira Yokosawa <akiyks@gmail.com> escreveu: > >> Sidenote: > >> > >> It looks like texlive-xindy is not available for RHEL based distros. > > > > On several rpm-based distros, extra repositories are needed. > > > > So, if you take a look at rpmfind: > > https://rpmfind.net/linux/rpm2html/search.php?query=python3-sphinx > > No, I'm talking about texlive-xindy. > > https://rpmfind.net/linux/rpm2html/search.php?query=texlive-xindy > > has RPMs for fedora 41/42/rawhide only. > > How do you install xindy under AlmaLinux release 9.6 (Sage Margay), > Amazon Linux release 2023 (Amazon Linux), CentOS Stream release 9, > and the likes? I didn't install it there. Yet, on some distros it seems that this is packaged together with a texlive collection package and it is called during pdf build. This was also causing font issues. So, I added an option at latex_elements to ensure that, if used, it will request UTF-8 fonts: latex_elements = { # The paper size ('letterpaper' or 'a4paper'). "papersize": "a4paper", "passoptionstopackages": dedent(r""" \PassOptionsToPackage{svgnames}{xcolor} % Avoid encoding troubles when creating indexes \PassOptionsToPackage{xindy}{language=english,codepage=utf8,noautomatic} """), I just built manually on almalinux. There, all pdfs built fine: <snip> Summary ======= dev-tools : pdf/dev-tools.pdf tools : pdf/tools.pdf filesystems : pdf/filesystems.pdf w1 : pdf/w1.pdf maintainer : pdf/maintainer.pdf process : pdf/process.pdf isdn : pdf/isdn.pdf fault-injection: pdf/fault-injection.pdf iio : pdf/iio.pdf scheduler : pdf/scheduler.pdf staging : pdf/staging.pdf fpga : pdf/fpga.pdf power : pdf/power.pdf leds : pdf/leds.pdf edac : pdf/edac.pdf PCI : pdf/PCI.pdf firmware-guide : pdf/firmware-guide.pdf cpu-freq : pdf/cpu-freq.pdf mhi : pdf/mhi.pdf wmi : pdf/wmi.pdf timers : pdf/timers.pdf accel : pdf/accel.pdf hid : pdf/hid.pdf userspace-api : pdf/userspace-api.pdf spi : pdf/spi.pdf networking : pdf/networking.pdf virt : pdf/virt.pdf nvme : pdf/nvme.pdf translations : pdf/translations.pdf input : pdf/input.pdf tee : pdf/tee.pdf doc-guide : pdf/doc-guide.pdf cdrom : pdf/cdrom.pdf gpu : pdf/gpu.pdf i2c : pdf/i2c.pdf RCU : pdf/RCU.pdf watchdog : pdf/watchdog.pdf usb : pdf/usb.pdf rust : pdf/rust.pdf crypto : pdf/crypto.pdf kbuild : pdf/kbuild.pdf livepatch : pdf/livepatch.pdf mm : pdf/mm.pdf locking : pdf/locking.pdf infiniband : pdf/infiniband.pdf driver-api : pdf/driver-api.pdf bpf : pdf/bpf.pdf devicetree : pdf/devicetree.pdf block : pdf/block.pdf target : pdf/target.pdf arch : pdf/arch.pdf pcmcia : pdf/pcmcia.pdf scsi : pdf/scsi.pdf netlabel : pdf/netlabel.pdf sound : pdf/sound.pdf security : pdf/security.pdf accounting : pdf/accounting.pdf admin-guide : pdf/admin-guide.pdf core-api : pdf/core-api.pdf fb : pdf/fb.pdf peci : pdf/peci.pdf trace : pdf/trace.pdf misc-devices : pdf/misc-devices.pdf kernel-hacking : pdf/kernel-hacking.pdf hwmon : pdf/hwmon.pdf All PDF files were built. </snip> Those are all installed packages on AlmaLinux 9.6 (obtained only from sphinx-pre-install requirements): <snip> # rpm -q -a|grep texlive texlive-base-20200406-26.el9_2.noarch texlive-lib-20200406-26.el9_2.x86_64 texlive-texlive-common-doc-20200406-26.el9_2.noarch texlive-cm-20200406-26.el9_2.noarch texlive-etex-20200406-26.el9_2.noarch texlive-graphics-def-20200406-26.el9_2.noarch texlive-hyph-utf8-20200406-26.el9_2.noarch texlive-hyphen-base-20200406-26.el9_2.noarch texlive-knuth-lib-20200406-26.el9_2.noarch texlive-plain-20200406-26.el9_2.noarch texlive-tex-ini-files-20200406-26.el9_2.noarch texlive-unicode-data-20200406-26.el9_2.noarch texlive-texlive.infra-20200406-26.el9_2.noarch texlive-luatex-20200406-26.el9_2.x86_64 texlive-texlive-scripts-20200406-26.el9_2.noarch texlive-kpathsea-20200406-26.el9_2.x86_64 texlive-iftex-20200406-26.el9_2.noarch texlive-atbegshi-20200406-26.el9_2.noarch texlive-amsmath-20200406-26.el9_2.noarch texlive-kvoptions-20200406-26.el9_2.noarch texlive-babel-20200406-26.el9_2.noarch texlive-etex-pkg-20200406-26.el9_2.noarch texlive-etoolbox-20200406-26.el9_2.noarch texlive-latex-fonts-20200406-26.el9_2.noarch texlive-ltxcmds-20200406-26.el9_2.noarch texlive-url-20200406-26.el9_2.noarch texlive-amsfonts-20200406-26.el9_2.noarch texlive-infwarerr-20200406-26.el9_2.noarch texlive-pdftexcmds-20200406-26.el9_2.noarch texlive-luatexbase-20200406-26.el9_2.noarch texlive-atveryend-20200406-26.el9_2.noarch texlive-auxhook-20200406-26.el9_2.noarch texlive-etexcmds-20200406-26.el9_2.noarch texlive-l3backend-20200406-26.el9_2.noarch texlive-lm-20200406-26.el9_2.noarch texlive-booktabs-20200406-26.el9_2.noarch texlive-ec-20200406-26.el9_2.noarch texlive-fancyhdr-20200406-26.el9_2.noarch texlive-footmisc-20200406-26.el9_2.noarch texlive-intcalc-20200406-26.el9_2.noarch texlive-kvsetkeys-20200406-26.el9_2.noarch texlive-multido-20200406-26.el9_2.noarch texlive-natbib-20200406-26.el9_2.noarch texlive-ulem-20200406-26.el9_2.noarch texlive-zapfding-20200406-26.el9_2.noarch texlive-catchfile-20200406-26.el9_2.noarch texlive-babelbib-20200406-26.el9_2.noarch texlive-bookmark-20200406-26.el9_2.noarch texlive-epstopdf-pkg-20200406-26.el9_2.noarch texlive-fonts-tlwg-20200406-26.el9_2.noarch texlive-fp-20200406-26.el9_2.noarch texlive-gettitlestring-20200406-26.el9_2.noarch texlive-glyphlist-20200406-26.el9_2.noarch texlive-graphics-cfg-20200406-26.el9_2.noarch texlive-graphics-20200406-26.el9_2.noarch texlive-tools-20200406-26.el9_2.noarch texlive-xkeyval-20200406-26.el9_2.noarch texlive-geometry-20200406-26.el9_2.noarch texlive-colortbl-20200406-26.el9_2.noarch texlive-carlisle-20200406-26.el9_2.noarch texlive-caption-20200406-26.el9_2.noarch texlive-sauerj-20200406-26.el9_2.noarch texlive-grfext-20200406-26.el9_2.noarch texlive-hycolor-20200406-26.el9_2.noarch texlive-kvdefinekeys-20200406-26.el9_2.noarch texlive-latexconfig-20200406-26.el9_2.noarch texlive-letltxmacro-20200406-26.el9_2.noarch texlive-lua-alt-getopt-20200406-26.el9_2.noarch texlive-marvosym-20200406-26.el9_2.noarch texlive-mptopdf-20200406-26.el9_2.noarch texlive-paralist-20200406-26.el9_2.noarch texlive-pdfescape-20200406-26.el9_2.noarch texlive-pdftex-20200406-26.el9_2.x86_64 texlive-placeins-20200406-26.el9_2.noarch texlive-refcount-20200406-26.el9_2.noarch texlive-setspace-20200406-26.el9_2.noarch texlive-stringenc-20200406-26.el9_2.noarch texlive-svn-prov-20200406-26.el9_2.noarch texlive-everyhook-20200406-37.el9.noarch texlive-symbol-20200406-26.el9_2.noarch texlive-psnfss-20200406-26.el9_2.noarch texlive-tex-20200406-26.el9_2.x86_64 texlive-uniquecounter-20200406-26.el9_2.noarch texlive-rerunfilecheck-20200406-26.el9_2.noarch texlive-wasy-20200406-26.el9_2.noarch texlive-zref-20200406-26.el9_2.noarch texlive-adobemapping-20200406-37.el9.noarch texlive-firstaid-20200406-37.el9.noarch texlive-ipaex-20200406-37.el9.noarch texlive-latex-base-dev-20200406-37.el9.noarch texlive-latex-firstaid-dev-20200406-37.el9.noarch texlive-ptex-base-20200406-37.el9.noarch texlive-ptex-fonts-20200406-37.el9.noarch texlive-uptex-fonts-20200406-37.el9.noarch texlive-wasy-type1-20200406-26.el9_2.noarch texlive-subfig-20200406-26.el9_2.noarch texlive-breakurl-20200406-26.el9_2.noarch texlive-qstest-20200406-26.el9_2.noarch texlive-sttools-20200406-37.el9.noarch texlive-csquotes-20200406-26.el9_2.noarch texlive-translator-20200406-26.el9_2.noarch texlive-japanese-otf-20200406-37.el9.noarch texlive-japanese-otf-uptex-20200406-37.el9.noarch texlive-euro-20200406-26.el9_2.noarch texlive-garuda-c90-20200406-26.el9_2.noarch texlive-norasi-c90-20200406-26.el9_2.noarch texlive-ifplatform-20200406-26.el9_2.noarch texlive-dvips-20200406-26.el9_2.x86_64 texlive-memoir-20200406-26.el9_2.noarch texlive-tex-gyre-20200406-26.el9_2.noarch texlive-alphalph-20200406-26.el9_2.noarch texlive-arphic-20200406-26.el9_2.noarch texlive-avantgar-20200406-26.el9_2.noarch texlive-babel-english-20200406-26.el9_2.noarch texlive-beton-20200406-26.el9_2.noarch texlive-bibtex-20200406-26.el9_2.x86_64 texlive-bigintcalc-20200406-26.el9_2.noarch texlive-bitset-20200406-26.el9_2.noarch texlive-bookman-20200406-26.el9_2.noarch texlive-changepage-20200406-26.el9_2.noarch texlive-charter-20200406-26.el9_2.noarch texlive-chngcntr-20200406-26.el9_2.noarch texlive-cmextra-20200406-26.el9_2.noarch texlive-cns-20200406-26.el9_2.noarch texlive-colorprofiles-20200406-26.el9_2.noarch texlive-courier-20200406-26.el9_2.noarch texlive-enctex-20200406-26.el9_2.noarch texlive-enumitem-20200406-26.el9_2.noarch texlive-euler-20200406-26.el9_2.noarch texlive-eurosym-20200406-26.el9_2.noarch texlive-filecontents-20200406-26.el9_2.noarch texlive-fix2col-20200406-26.el9_2.noarch texlive-float-20200406-26.el9_2.noarch texlive-fpl-20200406-26.el9_2.noarch texlive-grffile-20200406-26.el9_2.noarch texlive-helvetic-20200406-26.el9_2.noarch texlive-hobsub-20200406-26.el9_2.noarch texlive-hyperref-20200406-26.el9_2.noarch texlive-latex-20200406-26.el9_2.noarch texlive-tipa-20200406-26.el9_2.noarch texlive-xunicode-20200406-26.el9_2.noarch texlive-amscls-20200406-26.el9_2.noarch texlive-ae-20200406-26.el9_2.noarch texlive-algorithms-20200406-26.el9_2.noarch texlive-bera-20200406-26.el9_2.noarch texlive-cm-super-20200406-26.el9_2.noarch texlive-ucs-20200406-26.el9_2.noarch texlive-attachfile-20200406-26.el9_2.noarch texlive-hologo-20200406-26.el9_2.noarch texlive-hyphenex-20200406-26.el9_2.noarch texlive-ifmtarg-20200406-26.el9_2.noarch texlive-xifthen-20200406-26.el9_2.noarch texlive-index-20200406-26.el9_2.noarch texlive-kastrup-20200406-26.el9_2.noarch texlive-knuth-local-20200406-26.el9_2.noarch texlive-lm-math-20200406-26.el9_2.noarch texlive-luahbtex-20200406-26.el9_2.x86_64 texlive-lualibs-20200406-26.el9_2.noarch texlive-luaotfload-20200406-26.el9_2.noarch texlive-makecmds-20200406-26.el9_2.noarch texlive-makeindex-20200406-26.el9_2.x86_64 texlive-manfnt-font-20200406-26.el9_2.noarch texlive-marginnote-20200406-26.el9_2.noarch texlive-mathpazo-20200406-26.el9_2.noarch texlive-mflogo-20200406-26.el9_2.noarch texlive-mflogo-font-20200406-26.el9_2.noarch texlive-mfnfss-20200406-26.el9_2.noarch texlive-mfware-20200406-26.el9_2.x86_64 texlive-modes-20200406-26.el9_2.noarch texlive-mparhack-20200406-26.el9_2.noarch texlive-ncntrsbk-20200406-26.el9_2.noarch texlive-notoccite-20200406-26.el9_2.noarch texlive-minitoc-20200406-26.el9_2.noarch texlive-ltxmisc-20200406-26.el9_2.noarch texlive-palatino-20200406-26.el9_2.noarch texlive-parallel-20200406-26.el9_2.noarch texlive-pdfcolmk-20200406-26.el9_2.noarch texlive-xcolor-20200406-26.el9_2.noarch texlive-pgf-20200406-26.el9_2.noarch texlive-currfile-20200406-26.el9_2.noarch texlive-filehook-20200406-26.el9_2.noarch texlive-sansmathaccent-20200406-26.el9_2.noarch texlive-beamer-20200406-26.el9_2.noarch texlive-eso-pic-20200406-26.el9_2.noarch texlive-pslatex-20200406-26.el9_2.noarch texlive-pspicture-20200406-26.el9_2.noarch texlive-pst-arrow-20200406-26.el9_2.noarch texlive-pst-math-20200406-26.el9_2.noarch texlive-pxfonts-20200406-26.el9_2.noarch texlive-rsfs-20200406-26.el9_2.noarch texlive-soul-20200406-26.el9_2.noarch texlive-tex-gyre-math-20200406-26.el9_2.noarch texlive-texlive-docindex-20200406-26.el9_2.noarch texlive-texlive-en-20200406-26.el9_2.noarch texlive-texlive-msg-translations-20200406-26.el9_2.noarch texlive-times-20200406-26.el9_2.noarch texlive-titlesec-20200406-26.el9_2.noarch texlive-trimspaces-20200406-26.el9_2.noarch texlive-environ-20200406-26.el9_2.noarch texlive-txfonts-20200406-26.el9_2.noarch texlive-uhc-20200406-26.el9_2.noarch texlive-underscore-20200406-26.el9_2.noarch texlive-updmap-map-20200406-26.el9_2.noarch texlive-utopia-20200406-26.el9_2.noarch texlive-varwidth-20200406-26.el9_2.noarch texlive-ms-20200406-26.el9_2.noarch texlive-koma-script-20200406-26.el9_2.noarch texlive-listings-20200406-26.el9_2.noarch texlive-showexpl-20200406-26.el9_2.noarch texlive-fancyvrb-20200406-26.el9_2.noarch texlive-pst-3d-20200406-26.el9_2.noarch texlive-pst-coil-20200406-26.el9_2.noarch texlive-pst-eps-20200406-26.el9_2.noarch texlive-pst-fill-20200406-26.el9_2.noarch texlive-pst-grad-20200406-26.el9_2.noarch texlive-pst-node-20200406-26.el9_2.noarch texlive-pst-plot-20200406-26.el9_2.noarch texlive-pst-text-20200406-26.el9_2.noarch texlive-pst-tools-20200406-26.el9_2.noarch texlive-pst-tree-20200406-26.el9_2.noarch texlive-pstricks-add-20200406-26.el9_2.noarch texlive-pstricks-20200406-26.el9_2.noarch texlive-wadalab-20200406-26.el9_2.noarch texlive-cjk-20200406-26.el9_2.noarch texlive-wasysym-20200406-26.el9_2.noarch texlive-xetexconfig-20200406-26.el9_2.noarch texlive-zapfchan-20200406-26.el9_2.noarch texlive-ascmac-20200406-37.el9.noarch texlive-cjkpunct-20200406-37.el9.noarch texlive-convbkmk-20200406-37.el9.noarch texlive-fandol-20200406-37.el9.noarch texlive-ttfutils-20200406-37.el9.x86_64 texlive-uptex-base-20200406-37.el9.noarch texlive-zhmetrics-20200406-37.el9.noarch texlive-zhmetrics-uptex-20200406-37.el9.noarch texlive-xdvi-20200406-26.el9_2.x86_64 texlive-ptex-20200406-37.el9.x86_64 texlive-uptex-20200406-37.el9.x86_64 texlive-metafont-20200406-26.el9_2.x86_64 texlive-thumbpdf-20200406-26.el9_2.noarch texlive-fontspec-20200406-26.el9_2.noarch texlive-l3packages-20200406-26.el9_2.noarch texlive-lualatex-math-20200406-26.el9_2.noarch texlive-unicode-math-20200406-26.el9_2.noarch texlive-oberdiek-20200406-26.el9_2.noarch texlive-l3kernel-20200406-26.el9_2.noarch texlive-xecjk-20200406-26.el9_2.noarch texlive-dvipdfmx-20200406-26.el9_2.x86_64 texlive-xetex-20200406-26.el9_2.x86_64 texlive-collection-basic-20200406-26.el9_2.noarch texlive-platex-20200406-37.el9.noarch texlive-xcjk2uni-20200406-37.el9.noarch texlive-xpinyin-20200406-37.el9.noarch texlive-platex-tools-20200406-37.el9.noarch texlive-uplatex-20200406-37.el9.noarch texlive-luatexja-20200406-37.el9.noarch texlive-zhnumber-20200406-37.el9.noarch texlive-bidi-20200406-26.el9_2.noarch texlive-polyglossia-20200406-26.el9_2.noarch texlive-ctex-20200406-37.el9.noarch texlive-collection-fontsrecommended-20200406-26.el9_2.noarch texlive-collection-latex-20200406-26.el9_2.noarch texlive-eqparbox-20200406-26.el9_2.noarch texlive-upquote-20200406-26.el9_2.noarch texlive-tabulary-20200406-26.el9_2.noarch texlive-fncychap-20200406-26.el9_2.noarch texlive-anyfontsize-20200406-26.el9_2.noarch texlive-capt-of-20200406-26.el9_2.noarch texlive-cmap-20200406-26.el9_2.noarch texlive-euenc-20200406-26.el9_2.noarch texlive-fancybox-20200406-26.el9_2.noarch texlive-framed-20200406-26.el9_2.noarch texlive-luatex85-20200406-26.el9_2.noarch texlive-mdwtools-20200406-26.el9_2.noarch texlive-multirow-20200406-26.el9_2.noarch texlive-needspace-20200406-26.el9_2.noarch texlive-parskip-20200406-26.el9_2.noarch texlive-threeparttable-20200406-26.el9_2.noarch texlive-wrapfig-20200406-26.el9_2.noarch </snip> Thanks, Mauro
On Mon, 18 Aug 2025 13:35:33 +0200, Mauro Carvalho Chehab wrote: > Em Mon, 18 Aug 2025 19:06:03 +0900 > Akira Yokosawa <akiyks@gmail.com> escreveu: > >> How do you install xindy under AlmaLinux release 9.6 (Sage Margay), >> Amazon Linux release 2023 (Amazon Linux), CentOS Stream release 9, >> and the likes? > > I didn't install it there. > > Yet, on some distros it seems that this is packaged together with > a texlive collection package and it is called during pdf build. > > This was also causing font issues. So, I added an option at > latex_elements to ensure that, if used, it will request UTF-8 fonts: > > latex_elements = { > # The paper size ('letterpaper' or 'a4paper'). > "papersize": "a4paper", > "passoptionstopackages": dedent(r""" > \PassOptionsToPackage{svgnames}{xcolor} > % Avoid encoding troubles when creating indexes > \PassOptionsToPackage{xindy}{language=english,codepage=utf8,noautomatic} > """), > > I just built manually on almalinux. There, all pdfs built fine: Ah, xindy is optional then. Got it! Sorry for the noise. Akira
© 2016 - 2025 Red Hat, Inc.