From patchwork Fri Dec 12 10:22:23 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Antonin Godard X-Patchwork-Id: 76345 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id AF2D2D44164 for ; Fri, 12 Dec 2025 10:22:43 +0000 (UTC) Received: from smtpout-02.galae.net (smtpout-02.galae.net [185.246.84.56]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.9803.1765534959063851628 for ; Fri, 12 Dec 2025 02:22:40 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@bootlin.com header.s=dkim header.b=uf25K7ji; spf=pass (domain: bootlin.com, ip: 185.246.84.56, mailfrom: antonin.godard@bootlin.com) Received: from smtpout-01.galae.net (smtpout-01.galae.net [212.83.139.233]) by smtpout-02.galae.net (Postfix) with ESMTPS id 7C5F21A212A for ; Fri, 12 Dec 2025 10:22:37 +0000 (UTC) Received: from mail.galae.net (mail.galae.net [212.83.136.155]) by smtpout-01.galae.net (Postfix) with ESMTPS id 4C78F606DF for ; Fri, 12 Dec 2025 10:22:37 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) by localhost (Mailerdaemon) with ESMTPSA id B3F08103C8E11; Fri, 12 Dec 2025 11:22:36 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=dkim; t=1765534956; h=from:subject:date:message-id:to:cc:mime-version:content-type: content-transfer-encoding:in-reply-to:references; bh=z5ZdGD2tB0T0L+GLHwdhAtHWx1+XeF1DL6LHkvzWrks=; b=uf25K7jiwoag5JisHIi33XllBc84FQzXDgceEdQcxO9WZtMZgVNDPJCRpKbIQb32jmQTNP l0WgXhG0hIHnhTC5kMTybtKxcyK2nMpcDyx2QocLY9LDLpy2B9LHf7GDtWUvca+HjdCcmV trZE0Wz7bX/MTAOxVyDxKk/16Br83nK72q9gZqSzmKpmf5obO4GRABhzueHynQzOILfZsi M47RxnA3fvQqz/g4vJREr8vlwEjUDguvVK//n5oEXYyE3tfW8ja7iCAg4uBtUm7W/Ndmoz 5zfkQ6o+7797iOUXfsyh77Nj5vMnRx9AdiGHhB2Wpy5Qfy9X3sfcEDQexQTBTw== From: Antonin Godard Date: Fri, 12 Dec 2025 11:22:23 +0100 Subject: [PATCH v3 1/5] tools/build-docs-container: move container files in their own directory MIME-Version: 1.0 Message-Id: <20251212-build-docs-container-tlmgr-v3-1-a45c1ce6d8f7@bootlin.com> References: <20251212-build-docs-container-tlmgr-v3-0-a45c1ce6d8f7@bootlin.com> In-Reply-To: <20251212-build-docs-container-tlmgr-v3-0-a45c1ce6d8f7@bootlin.com> To: docs@lists.yoctoproject.org Cc: Thomas Petazzoni , Antonin Godard X-Mailer: b4 0.15-dev X-Developer-Signature: v=1; a=openpgp-sha256; l=4070; i=antonin.godard@bootlin.com; h=from:subject:message-id; bh=5Zx4mnbkzHZAVTziaLnujYwWTPGRT9G/t3/f5bhFPwg=; b=owEBbQKS/ZANAwAKAdGAQUApo6g2AcsmYgBpO+zqNOGI3GrjZhcwrHCoG6Nykw/7wGvpGWnNK tAVCBNZIIuJAjMEAAEKAB0WIQSGSHJRiN1AG7mg0//RgEFAKaOoNgUCaTvs6gAKCRDRgEFAKaOo Nq2qEACm4Pj7UZ9B6ote+5GnyAIWPpdIhPsTFinyKjN7h2ZsE0qy+IovwERhfqybLCisbAyDaLQ wRrfv7EcV6U35g9gD4OWzPWC3s3sWpotVxhjVGRjv5OXVcg2z3iYLgRb0xk1mEBljVRSzQD/QYj TZuWmD+1+vwal2Lkxm3zUmHYDS6biIgdPAxJi9zpm6fofwPHLE991i///05T28deqntvQWLpIKS gFDKFw2UTcNFcZrEOHY3Ra1FEnhk6S6dC4bkBL+jMKz0PQ415YRsQXKpHHo+HZ4g/Bn7/6inOuk kMrGZukYYCtJVR76Cu2Eo/VfSt/tQ0TUjO7hIzGehdARCrPER6l0WEX4H4kr0WTwtpJpltETTrc ppQUD3JavU98/WgVHSOi9cfJm9GoM+m9COyVTYoX27alZFM1+okvn6cKMmjQfhggL9aFlyvuCw6 o7k+nMwKV1CJdPCsKQnAWm3uie5obp3/LYEtH0UkglLFW2E/mRh0KVo6vO/rsSC4c8ZTZ2/NaPZ ObVL43dFDg4gv4tnqdVnDfhBVi9pqGJq8985Q1PwJVRAu3WI/tSti3KSYtebTHdhDk0AH6TjMGC Q6asvj7P1h+cuI8UVvIqV0bVQyCVDwkjIKEZxfiqfcPANaJW6/y/us+fSl0SFERDl3eNlJcWZcZ BMpkMkVUmQ3oc9Q== X-Developer-Key: i=antonin.godard@bootlin.com; a=openpgp; fpr=8648725188DD401BB9A0D3FFD180414029A3A836 X-Last-TLS-Session-Version: TLSv1.3 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Fri, 12 Dec 2025 10:22:43 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/docs/message/8258 Create a directory to hold the Containerfiles as they were lying next to the scripts. As a consequence we need to change the build context of the docker build command to build from SCRIPT_DIR and pass the host packages scripts and container file relative to it. Signed-off-by: Antonin Godard Reviewed-by: Quentin Schulz --- documentation/tools/build-docs-container | 13 ++++++------- .../tools/{ => containerfiles}/Containerfile.almalinux | 0 documentation/tools/{ => containerfiles}/Containerfile.apt | 0 .../tools/{ => containerfiles}/Containerfile.debian | 0 documentation/tools/{ => containerfiles}/Containerfile.dnf | 0 .../tools/{ => containerfiles}/Containerfile.fedora | 0 .../tools/{ => containerfiles}/Containerfile.ubuntu | 0 .../tools/{ => containerfiles}/Containerfile.zypper | 0 8 files changed, 6 insertions(+), 7 deletions(-) diff --git a/documentation/tools/build-docs-container b/documentation/tools/build-docs-container index b91a6daa9..7d25b15b9 100755 --- a/documentation/tools/build-docs-container +++ b/documentation/tools/build-docs-container @@ -23,7 +23,6 @@ set -eu -o pipefail SCRIPT_DIR=$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" &>/dev/null && pwd) CONTAINERCMD=${CONTAINERCMD:-docker} DOCS_DIR="$SCRIPT_DIR/../.." -SH_DIR="$SCRIPT_DIR/host_packages_scripts" INCLUDE_ESSENTIAL_PACKAGES=${INCLUDE_ESSENTIAL_PACKAGES:-0} function usage() @@ -140,12 +139,12 @@ main () --tag "yocto-docs-$sanitized_dockername:latest" \ --build-arg ARG_FROM="docker.io/$image" \ --build-arg INCLUDE_ESSENTIAL_PACKAGES="${INCLUDE_ESSENTIAL_PACKAGES}" \ - --build-arg ESSENTIAL="$essential" \ - --build-arg DOCS="$docs" \ - --build-arg DOCS_PDF="$docs_pdf" \ - --build-arg PIP3="${pip3:-}" \ - --file "$SCRIPT_DIR/$containerfile" \ - "$SH_DIR/" + --build-arg ESSENTIAL="host_packages_scripts/$essential" \ + --build-arg DOCS="host_packages_scripts/$docs" \ + --build-arg DOCS_PDF="host_packages_scripts/$docs_pdf" \ + --build-arg PIP3="host_packages_scripts/${pip3:-}" \ + --file "$SCRIPT_DIR/containerfiles/$containerfile" \ + "$SCRIPT_DIR" local -a args_run=( --rm diff --git a/documentation/tools/Containerfile.almalinux b/documentation/tools/containerfiles/Containerfile.almalinux similarity index 100% rename from documentation/tools/Containerfile.almalinux rename to documentation/tools/containerfiles/Containerfile.almalinux diff --git a/documentation/tools/Containerfile.apt b/documentation/tools/containerfiles/Containerfile.apt similarity index 100% rename from documentation/tools/Containerfile.apt rename to documentation/tools/containerfiles/Containerfile.apt diff --git a/documentation/tools/Containerfile.debian b/documentation/tools/containerfiles/Containerfile.debian similarity index 100% rename from documentation/tools/Containerfile.debian rename to documentation/tools/containerfiles/Containerfile.debian diff --git a/documentation/tools/Containerfile.dnf b/documentation/tools/containerfiles/Containerfile.dnf similarity index 100% rename from documentation/tools/Containerfile.dnf rename to documentation/tools/containerfiles/Containerfile.dnf diff --git a/documentation/tools/Containerfile.fedora b/documentation/tools/containerfiles/Containerfile.fedora similarity index 100% rename from documentation/tools/Containerfile.fedora rename to documentation/tools/containerfiles/Containerfile.fedora diff --git a/documentation/tools/Containerfile.ubuntu b/documentation/tools/containerfiles/Containerfile.ubuntu similarity index 100% rename from documentation/tools/Containerfile.ubuntu rename to documentation/tools/containerfiles/Containerfile.ubuntu diff --git a/documentation/tools/Containerfile.zypper b/documentation/tools/containerfiles/Containerfile.zypper similarity index 100% rename from documentation/tools/Containerfile.zypper rename to documentation/tools/containerfiles/Containerfile.zypper From patchwork Fri Dec 12 10:22:24 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Antonin Godard X-Patchwork-Id: 76347 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id C09A4D44171 for ; Fri, 12 Dec 2025 10:22:43 +0000 (UTC) Received: from smtpout-02.galae.net (smtpout-02.galae.net [185.246.84.56]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.9855.1765534959705770087 for ; Fri, 12 Dec 2025 02:22:40 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@bootlin.com header.s=dkim header.b=vT2vjBxm; spf=pass (domain: bootlin.com, ip: 185.246.84.56, mailfrom: antonin.godard@bootlin.com) Received: from smtpout-01.galae.net (smtpout-01.galae.net [212.83.139.233]) by smtpout-02.galae.net (Postfix) with ESMTPS id 253DC1A212B; Fri, 12 Dec 2025 10:22:38 +0000 (UTC) Received: from mail.galae.net (mail.galae.net [212.83.136.155]) by smtpout-01.galae.net (Postfix) with ESMTPS id EA790606DF; Fri, 12 Dec 2025 10:22:37 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) by localhost (Mailerdaemon) with ESMTPSA id 3F6D4103C8E13; Fri, 12 Dec 2025 11:22:37 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=dkim; t=1765534957; h=from:subject:date:message-id:to:cc:mime-version:content-type: content-transfer-encoding:in-reply-to:references; bh=pgZ//VgKABFoOrGhUQ/z9ibuo8YaK9sWTp3NfzTjocA=; b=vT2vjBxmL/e4g9ocXmw7+E8AMrKsioPHt1tAg2VQO5Pn1nIlNBRIYgCFWk76VURHYVM7I6 Sr+ZF6+oyLHxWtBSr8ukDiX78T2JK+dTeJmUh6VxAAdc+vhF5yc4THVtbqC7IMA1RwCOAW o661rTd7niLxexuMjLr1ZTQUJb5t1SttS7IziPI00B/utsOQVvceJyI2Z7C9z7uzSQOGM0 oEQWoYOMV/taZcX7MOPn9ItiJBHzXQudOdjVemuVvEA0sEHP2hTJ1H94gpYfWrGOrdZsaG LAQ6GSpbkuf3RqsDU21Ekpx7+UO7lYDEflCbhZgmsAFwpnpFomjWXbjLjAJilQ== From: Antonin Godard Date: Fri, 12 Dec 2025 11:22:24 +0100 Subject: [PATCH v3 2/5] Makefile: fix rsvg-convert --format capitalization MIME-Version: 1.0 Message-Id: <20251212-build-docs-container-tlmgr-v3-2-a45c1ce6d8f7@bootlin.com> References: <20251212-build-docs-container-tlmgr-v3-0-a45c1ce6d8f7@bootlin.com> In-Reply-To: <20251212-build-docs-container-tlmgr-v3-0-a45c1ce6d8f7@bootlin.com> To: docs@lists.yoctoproject.org Cc: Thomas Petazzoni , Antonin Godard , Quentin Schulz X-Mailer: b4 0.15-dev X-Developer-Signature: v=1; a=openpgp-sha256; l=1261; i=antonin.godard@bootlin.com; h=from:subject:message-id; bh=JEYNcK1+gu8hMQWZEstTN+z7+kAjeTb0Lvb2+P6mBvc=; b=owEBbQKS/ZANAwAKAdGAQUApo6g2AcsmYgBpO+zqkjg0R+YVOZKIC2u6O2qJwgJx8Q/T4dXrW Hq0ijgQ++eJAjMEAAEKAB0WIQSGSHJRiN1AG7mg0//RgEFAKaOoNgUCaTvs6gAKCRDRgEFAKaOo NquYEAC/Ydaf8FioDJr+1yqbfJ34iZh0+Bh6qmhSkXfI9QtLCkjnOvop4S7Sx1EBYrhoEll1Glw /9O20cnLqCJkuiSLTDHKEPFOVWgTguGsoUGpBffytFKS86C8XVHAaIANdv8LX2YVlHI9/auTRC0 MVFwmDMRfajjiPjQQYO2KoJzaFIvC0gl8fW7a1sUeZVDob8PxXyXHcM0Y5WcenbYIXGa6qheHql MVxhcXIYSEIMGj87XL/8IcAUyM2DVKl+nXXliZNLo9tt47iCnUMVmiknER61r0V3mv6xfu2gHzs 2AmKK6Kd6pd5H0nawSxsR0t7sbrUdGe+z6v63g0bQN2rN7zvAQojpDx//wbitou+vUiZMdpH5EF VGHr6Y9oAcsTUfOoVkegrEvdkKwLUsHm6RqLwOqMBHHWUHaaigDYm7q4MYRUWgcEM3Ltz9yuHXd O3YNoYRfb9O0zs4pWCAhSUTkBpVie8S3WHAuaGRJP26unJrx9VcDFDG3xERie3Qi70lOa5vM2+N xGvY/lblP5CDTDOgQMFk2JJcDyeWm5xzGfshi4wKsMmgG28SBPcAictwulIcT6JIhgrDWk5maqk 624bauT/hxyJSR6T1xRmr/92IT6Ka8liYiq14RxXa1yB/bzdxjnWOCTsKjq+hXryjJWfTfZ6k0S yv93gZkOYpBt9gw== X-Developer-Key: i=antonin.godard@bootlin.com; a=openpgp; fpr=8648725188DD401BB9A0D3FFD180414029A3A836 X-Last-TLS-Session-Version: TLSv1.3 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Fri, 12 Dec 2025 10:22:43 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/docs/message/8260 On some versions of rsvg-convert, capitalized formats are unknown. For example on CentOS Stream 9: $ rsvg-convert --format=Png --output=ref-manual/svg/releases.png ref-manual/svg/releases.svg Unknown output format. While the same command with "png" runs fine. On Ubuntu 22.04, both are accepted. Switch to the un-capitalized options, compatible with all versions. Reviewed-by: Quentin Schulz Signed-off-by: Antonin Godard --- documentation/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/documentation/Makefile b/documentation/Makefile index bade78fe8..e144a50b4 100644 --- a/documentation/Makefile +++ b/documentation/Makefile @@ -43,11 +43,11 @@ PNGs := $(foreach dir, $(IMAGEDIRS), $(patsubst %.svg,%.png,$(wildcard $(SOURCED # Pattern rule for converting SVG to PDF %.pdf : %.svg - $(SVG2PDF) --format=Pdf --output=$@ $< + $(SVG2PDF) --format=pdf --output=$@ $< # Pattern rule for converting SVG to PNG %.png : %.svg - $(SVG2PNG) --format=Png --output=$@ $< + $(SVG2PNG) --format=png --output=$@ $< clean: @rm -rf $(BUILDDIR) $(PNGs) $(PDFs) poky.yaml sphinx-static/switchers.js releases.rst From patchwork Fri Dec 12 10:22:25 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Antonin Godard X-Patchwork-Id: 76349 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id CDF44D44173 for ; Fri, 12 Dec 2025 10:22:43 +0000 (UTC) Received: from smtpout-02.galae.net (smtpout-02.galae.net [185.246.84.56]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.9856.1765534960232795988 for ; Fri, 12 Dec 2025 02:22:40 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@bootlin.com header.s=dkim header.b=N/MqoJ+S; spf=pass (domain: bootlin.com, ip: 185.246.84.56, mailfrom: antonin.godard@bootlin.com) Received: from smtpout-01.galae.net (smtpout-01.galae.net [212.83.139.233]) by smtpout-02.galae.net (Postfix) with ESMTPS id B37001A212C for ; Fri, 12 Dec 2025 10:22:38 +0000 (UTC) Received: from mail.galae.net (mail.galae.net [212.83.136.155]) by smtpout-01.galae.net (Postfix) with ESMTPS id 84053606DF for ; Fri, 12 Dec 2025 10:22:38 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) by localhost (Mailerdaemon) with ESMTPSA id C8B0A103C8E14; Fri, 12 Dec 2025 11:22:37 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=dkim; t=1765534958; h=from:subject:date:message-id:to:cc:mime-version:content-type: content-transfer-encoding:in-reply-to:references; bh=AUIas95Ri7YpHbtGxMfh/MZymqYe7a744yQXIGgMq7s=; b=N/MqoJ+StVsUK2wOseGe3J9eiORh7RabFFCGPyfpWrgxMe6KeAZ+gclKPuLi6HUkNWFEzi 5AtmkNmdEFOFZAcG4h12seoaXKxEotQizzn/2+h8YjvCP6yhJdgfeLKDxvFkA05ZW7hCZH OHVlHWRp8Fv7wBoNafMaxINC2yXzpVgkL9Z0a6Q1HzaHyZEoiHDu9wnIksebVtVY8ZXwMS 3WZUah0EjvHMGMK8/oKtuzKlg882fKVVBDfdxxga86PQLSP1C4VCYhadkoCUh8OP8kbMaB YClCsUNSSrKuT8vx/aIao6vFt1z2hyS2/bexTM0uFAznfBF9nlZNxAY2TdMmIQ== From: Antonin Godard Date: Fri, 12 Dec 2025 11:22:25 +0100 Subject: [PATCH v3 3/5] tools/build-docs-container: add CentOS Stream 9 support MIME-Version: 1.0 Message-Id: <20251212-build-docs-container-tlmgr-v3-3-a45c1ce6d8f7@bootlin.com> References: <20251212-build-docs-container-tlmgr-v3-0-a45c1ce6d8f7@bootlin.com> In-Reply-To: <20251212-build-docs-container-tlmgr-v3-0-a45c1ce6d8f7@bootlin.com> To: docs@lists.yoctoproject.org Cc: Thomas Petazzoni , Antonin Godard X-Mailer: b4 0.15-dev X-Developer-Signature: v=1; a=openpgp-sha256; l=9033; i=antonin.godard@bootlin.com; h=from:subject:message-id; bh=3Axn5LIXACxiXttXFXfbZtii8uT+GFUbtYb+GqMWHfQ=; b=owEBbQKS/ZANAwAKAdGAQUApo6g2AcsmYgBpO+zqI4PWNR/ZnSVg7R7XA64khAoO2iTINWrtS W0Msn7Ixc6JAjMEAAEKAB0WIQSGSHJRiN1AG7mg0//RgEFAKaOoNgUCaTvs6gAKCRDRgEFAKaOo NonaD/0SYZ1fMd3AH2cDUuJW+q3whqGpBuL5ERg0dquJ3atfCOZlHU0E5D63cx05mKzKz7MQNuT x12U34E5QPkg+ZpczsH2prG/6S7Rx/BlMaXj4qvH9XYeutjFMNL31Fq94ilZsqs42iSK14mY4s+ 65lSxmkoOlET/BO+RzDv/NKyrqpKHqOFmq4F3KLsEwSO1mxA3O9u53Rs2ESJr4fgJr6dyfHNdOF 3p7JTi3q4psHwWN+ITChY40cTn0Rmygm94ytdn/MVz1WchMVPyQX6PS5qZuYw6NAh7F2vBaq+/f jK7haYs/REmi3SUwO8P+f/J0OLOSfk6HcT4WS4Pp6rJTVGSHAesbPolm8n1lxXt2x8us9MjcIls 4v8FYF/t8yNUq0iob/dSRVaeIJDB2reomZXEFLfjhjwof/kchd93iHa2HjqkR6Ov1s/djHSiH52 t460VVx03fmlBZQj9YkALWhgIDIYu6x+E41TNh/B4i4DMnLqh6USio9a8aSXvDCl4j02brM5YeM FrX3/SkNN+hQ5wx8KGz1W5vSp5AX+O4cUjvoMWjxc8A6YrxDcxq5OVXwqcq+C/QovrwBTyQCBnT bvHJC2dwevtwMYFFCwNM3d7pFpJqafj4BxA2PgUYWhE/iHflUoTctBobVFrxlLgOnqyymMbj32O UACCFgQ1PMfmEcw== X-Developer-Key: i=antonin.godard@bootlin.com; a=openpgp; fpr=8648725188DD401BB9A0D3FFD180414029A3A836 X-Last-TLS-Session-Version: TLSv1.3 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Fri, 12 Dec 2025 10:22:43 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/docs/message/8261 Add support for building the docs in CentOS Stream 9. Use RedHat's container image from quay.io. The centosstream_essential.sh centosstream_docs.sh are symlinks to the almalinux scripts. Just pass -y to each dnf command as it was a problem when building the CentOS container, and isn't a problem for AlmaLinux. Introduce a new installation script: tlmgr_docs_pdf.sh. As I wasn't able to locate all the necessary tex packages to build the documentation in a PDF format, I resorted to using what is used on the Autobuilder: a local installation of texlive packages through tlmgr. This will allow us to provide a way of building the docs as PDF for the distros that lack this support at the moment. Export TEXTOOLDIR in Containerfile.dnf to pick up TexLive's installation when available. Signed-off-by: Antonin Godard Acked-by: Quentin Schulz --- documentation/ref-manual/system-requirements.rst | 36 ++++++++++++++++++++++ documentation/tools/build-docs-container | 14 ++++++++- .../tools/containerfiles/Containerfile.dnf | 3 ++ .../tools/containerfiles/Containerfile.stream | 1 + .../tools/host_packages_scripts/almalinux_docs.sh | 2 +- .../host_packages_scripts/almalinux_essential.sh | 4 +-- .../host_packages_scripts/centosstream_docs.sh | 1 + .../centosstream_essential.sh | 1 + .../tools/host_packages_scripts/tlmgr_docs_pdf.sh | 8 +++++ 9 files changed, 66 insertions(+), 4 deletions(-) diff --git a/documentation/ref-manual/system-requirements.rst b/documentation/ref-manual/system-requirements.rst index 9ed29a1df..7d110b886 100644 --- a/documentation/ref-manual/system-requirements.rst +++ b/documentation/ref-manual/system-requirements.rst @@ -266,6 +266,42 @@ documentation in PDF format: .. literalinclude:: ../tools/host_packages_scripts/almalinux_docs_pdf.sh :language: shell +CentOS Stream Packages +---------------------- + +Here are the packages needed to build an image on a headless system +with a supported CentOS Stream distribution: + +.. literalinclude:: ../tools/host_packages_scripts/centosstream_essential.sh + :language: shell + +Here are the packages needed to build Project documentation manuals: + +.. literalinclude:: ../tools/host_packages_scripts/centosstream_docs.sh + :language: shell + +.. literalinclude:: ../tools/host_packages_scripts/pip3_docs.sh + :language: shell + +In addition to the previous packages, the following TeX Live packages +are needed to build the documentation in PDF format and can be installed with +the `TeX Live package manager `__: + +.. literalinclude:: ../tools/host_packages_scripts/tlmgr_docs_pdf.sh + :language: shell + +.. warning:: + + The Tex Live installation above is only valid for `x86_64` hosts. + +Before building the documentation PDF, setup the ``PATH`` to use the installed +packages (with ``${textooldir}`` pointing to the TeX Live installation from the +previous step): + +.. code-block:: console + + $ export PATH="${PATH}:${textooldir}/tl/bin/x86_64-linux" + .. _system-requirements-buildtools: Required Git, tar, Python, make and gcc Versions diff --git a/documentation/tools/build-docs-container b/documentation/tools/build-docs-container index 7d25b15b9..6a83faea6 100755 --- a/documentation/tools/build-docs-container +++ b/documentation/tools/build-docs-container @@ -33,6 +33,7 @@ $0 OCI_IMAGE [make arguments...] OCI_IMAGE is an image:tag of an OCI image hosted on hub.docker.com. It is one of: + - centos:stream9 - debian:12 - debian:13 - fedora:39 @@ -82,6 +83,9 @@ main () local version version=$(echo "$image" | awk -F: '{print $NF}') + # Default to docker.io unless overwritten below + local repo=docker.io + case $image in # Missing latexmk texlive-gnu-freefont packages at the very least # "almalinux:8"*|\ @@ -91,6 +95,14 @@ main () # docs_pdf=almalinux_docs_pdf.sh # pip3=pip3_docs.sh # ;; + "centos:stream9"*) + containerfile=Containerfile.stream + essential=centosstream_essential.sh + docs=centosstream_docs.sh + docs_pdf=tlmgr_docs_pdf.sh + pip3=pip3_docs.sh + repo=quay.io/centos + ;; # Missing python3-saneyaml # "debian:11"*|\ "debian:12"*|\ @@ -137,7 +149,7 @@ main () $OCI build \ --tag "yocto-docs-$sanitized_dockername:latest" \ - --build-arg ARG_FROM="docker.io/$image" \ + --build-arg ARG_FROM="$repo/$image" \ --build-arg INCLUDE_ESSENTIAL_PACKAGES="${INCLUDE_ESSENTIAL_PACKAGES}" \ --build-arg ESSENTIAL="host_packages_scripts/$essential" \ --build-arg DOCS="host_packages_scripts/$docs" \ diff --git a/documentation/tools/containerfiles/Containerfile.dnf b/documentation/tools/containerfiles/Containerfile.dnf index 65c526705..fd47fde34 100644 --- a/documentation/tools/containerfiles/Containerfile.dnf +++ b/documentation/tools/containerfiles/Containerfile.dnf @@ -7,6 +7,9 @@ ARG DOCS=fedora_docs.sh ARG DOCS_PDF=fedora_docs_pdf.sh ARG PIP3=pip3_docs.sh +ENV TEXTOOLDIR=/opt/docs-build-tex-tools +ENV PATH="$PATH:$TEXTOOLDIR/tl/bin/x86_64-linux" + # relative to the location of the dockerfile COPY --chmod=777 ${ESSENTIAL} /temp/host_packages_essential.sh COPY --chmod=777 ${DOCS} /temp/host_packages_docs.sh diff --git a/documentation/tools/containerfiles/Containerfile.stream b/documentation/tools/containerfiles/Containerfile.stream new file mode 120000 index 000000000..7237e9b99 --- /dev/null +++ b/documentation/tools/containerfiles/Containerfile.stream @@ -0,0 +1 @@ +Containerfile.dnf \ No newline at end of file diff --git a/documentation/tools/host_packages_scripts/almalinux_docs.sh b/documentation/tools/host_packages_scripts/almalinux_docs.sh index 8188d529a..9202afc5b 100644 --- a/documentation/tools/host_packages_scripts/almalinux_docs.sh +++ b/documentation/tools/host_packages_scripts/almalinux_docs.sh @@ -1 +1 @@ -sudo dnf install git glibc-locale-source librsvg2-tools make python3-pip which +sudo dnf install -y git glibc-locale-source librsvg2-tools make python3-pip which diff --git a/documentation/tools/host_packages_scripts/almalinux_essential.sh b/documentation/tools/host_packages_scripts/almalinux_essential.sh index 76c5280ee..18fdb674e 100644 --- a/documentation/tools/host_packages_scripts/almalinux_essential.sh +++ b/documentation/tools/host_packages_scripts/almalinux_essential.sh @@ -1,5 +1,5 @@ sudo dnf install -y epel-release -sudo yum install dnf-plugins-core +sudo dnf install -y dnf-plugins-core sudo dnf config-manager --set-enabled crb sudo dnf makecache -sudo dnf install bzip2 ccache chrpath cpio cpp diffstat diffutils gawk gcc gcc-c++ git glibc-devel glibc-langpack-en gzip libacl make patch perl perl-Data-Dumper perl-Text-ParseWords perl-Thread-Queue python3 python3-GitPython python3-jinja2 python3-pexpect python3-pip rpcgen socat tar texinfo unzip wget which xz zstd +sudo dnf install -y bzip2 ccache chrpath cpio cpp diffstat diffutils gawk gcc gcc-c++ git glibc-devel glibc-langpack-en gzip libacl make patch perl perl-Data-Dumper perl-Text-ParseWords perl-Thread-Queue python3 python3-GitPython python3-jinja2 python3-pexpect python3-pip rpcgen socat tar texinfo unzip wget which xz zstd diff --git a/documentation/tools/host_packages_scripts/centosstream_docs.sh b/documentation/tools/host_packages_scripts/centosstream_docs.sh new file mode 120000 index 000000000..be13734c0 --- /dev/null +++ b/documentation/tools/host_packages_scripts/centosstream_docs.sh @@ -0,0 +1 @@ +almalinux_docs.sh \ No newline at end of file diff --git a/documentation/tools/host_packages_scripts/centosstream_essential.sh b/documentation/tools/host_packages_scripts/centosstream_essential.sh new file mode 120000 index 000000000..ed172e51d --- /dev/null +++ b/documentation/tools/host_packages_scripts/centosstream_essential.sh @@ -0,0 +1 @@ +almalinux_essential.sh \ No newline at end of file diff --git a/documentation/tools/host_packages_scripts/tlmgr_docs_pdf.sh b/documentation/tools/host_packages_scripts/tlmgr_docs_pdf.sh new file mode 100644 index 000000000..b33ff6b25 --- /dev/null +++ b/documentation/tools/host_packages_scripts/tlmgr_docs_pdf.sh @@ -0,0 +1,8 @@ +sudo dnf install -y wget +textooldir=${TEXTOOLDIR:-"./docs-build-tex-tools"} +mkdir -p "$textooldir"/tl +wget https://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz -O "$textooldir"/install-tl-unx.tar.gz +tar xzf "$textooldir"/install-tl-unx.tar.gz -C "$textooldir" +"$textooldir"/install-tl-*/install-tl --scheme=small --texdir="${textooldir}"/tl --no-interaction +PATH="$PATH:${textooldir}/tl/bin/x86_64-linux" tlmgr install titlesec varwidth tabulary needspace upquote framed capt-of wrapfig fncychap gnu-freefont ctex latexmk nimbus15 +rm -r "$textooldir"/install-tl* From patchwork Fri Dec 12 10:22:26 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Antonin Godard X-Patchwork-Id: 76348 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id DA418D44175 for ; Fri, 12 Dec 2025 10:22:43 +0000 (UTC) Received: from smtpout-02.galae.net (smtpout-02.galae.net [185.246.84.56]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.9857.1765534960665635058 for ; Fri, 12 Dec 2025 02:22:40 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@bootlin.com header.s=dkim header.b=1ORxr2Bb; spf=pass (domain: bootlin.com, ip: 185.246.84.56, mailfrom: antonin.godard@bootlin.com) Received: from smtpout-01.galae.net (smtpout-01.galae.net [212.83.139.233]) by smtpout-02.galae.net (Postfix) with ESMTPS id 2B2F41A212D for ; Fri, 12 Dec 2025 10:22:39 +0000 (UTC) Received: from mail.galae.net (mail.galae.net [212.83.136.155]) by smtpout-01.galae.net (Postfix) with ESMTPS id F15A8606DF for ; Fri, 12 Dec 2025 10:22:38 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) by localhost (Mailerdaemon) with ESMTPSA id 69506103C8E16; Fri, 12 Dec 2025 11:22:38 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=dkim; t=1765534958; h=from:subject:date:message-id:to:cc:mime-version:content-type: content-transfer-encoding:in-reply-to:references; bh=HL1SmOBa3KHbAcumIqoWq8ntd42ta5T/jZ1I6N6ftRQ=; b=1ORxr2Bb4sKkpsVPEejCtvcq0sz3IR05dgBQWNakftPGFsh8Cc+UMvRLRYuOBrGv08K6mR fvsi3wF9I2CK33B6FoKhL0nCIWhHJVbhvnhMRHqyK7MyMveXereW9yh2+0NkAj41wSDh/r a0/jzgn8fO7fl4GEIpKLFn/xXYG2dE7AaGo4RvNzHZATBGmXFJW3DvT4QK9u6hGXM6qKLJ qJjJBCkn1FfEDMrguwIafsYps0c7J2sdgKDjfwz19pP2lsy+9vhOLVt26LebmnYjthyBkv 9QXxGIUmOvNwSDky/iSoBlggDRDPZ7OwKYxjz33A0JzkE4AvuuM7Uce5xSzFUg== From: Antonin Godard Date: Fri, 12 Dec 2025 11:22:26 +0100 Subject: [PATCH v3 4/5] ref-manual/system-requirements.rst: fix AlmaLinux PDF build MIME-Version: 1.0 Message-Id: <20251212-build-docs-container-tlmgr-v3-4-a45c1ce6d8f7@bootlin.com> References: <20251212-build-docs-container-tlmgr-v3-0-a45c1ce6d8f7@bootlin.com> In-Reply-To: <20251212-build-docs-container-tlmgr-v3-0-a45c1ce6d8f7@bootlin.com> To: docs@lists.yoctoproject.org Cc: Thomas Petazzoni , Antonin Godard X-Mailer: b4 0.15-dev X-Developer-Signature: v=1; a=openpgp-sha256; l=5462; i=antonin.godard@bootlin.com; h=from:subject:message-id; bh=/njpRan4D1Mw8PsyMMk4bEjl9TXfxRYCY6PhN5bDds4=; b=owEBbQKS/ZANAwAKAdGAQUApo6g2AcsmYgBpO+zqyfDeN3RdqWpVPbUgglh2GalV2nX4xMDhe IXxXsprh7eJAjMEAAEKAB0WIQSGSHJRiN1AG7mg0//RgEFAKaOoNgUCaTvs6gAKCRDRgEFAKaOo NnxWEACJpQyPxfrGlR792NnZhc/LGjLfFaJNvOahaWHFTkwCn74oh5/k+IeecEbazQUSAS+iVGA 5SqT/r5XqS7jEYO+7J5ErYDnQT4vVhpj0GVEw7TgtyMHx5PeKjCJEbadQTDr3+SbhRJ7nFxVA5M E7W4jwvrH7x5PbPRR3FlJEFbH6dU9fiQhkULz4NTbpinswGf1TfJ8Pyb0xJ0A3+k4u6iD3yRaA1 wge0ybtYNt4VFu6wdDewXgmRK68ihmMsp8NkHMVsosNO9WMFfLsLjPfD6JS6VWTrGGaoUUtlvKY E2pReY8fww9TpSCWGNAhLMrQUxK96flHnkhzpZCa0US44clvS4+Wk04khInJ/El1T8VVstJKJ9E hiGoBAW3CcaYI/rVhoA1kz45FL67WDWA/N6LScNUzFXZ9dtBAUbz4uaHFe6WLSKk5sIqvgOS+OK UFY37En70wJobOtLx+YZio1jqsgJvgoutIv99BdNRLaE/HGPS6SLJ2G6FeEvGTYKIEKPyt1GjuZ Bk+EuugYJ/YXFs25mbF7O+uKSF8qbgcBUbd+2VSxh47RVMmuvBtxl1Hn3F8RF0xYOvFlV5x5q0Z c3oSmm6/bzPUeOsDQQcghD/F7iXD4kvpDiCgrmfDUiFjmuwShlNCd2Tclt2JCS7cdgsfx9jqhrQ NJlP/SIm9OLptOg== X-Developer-Key: i=antonin.godard@bootlin.com; a=openpgp; fpr=8648725188DD401BB9A0D3FFD180414029A3A836 X-Last-TLS-Session-Version: TLSv1.3 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Fri, 12 Dec 2025 10:22:43 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/docs/message/8262 Use the new tlmgr_docs_pdf.sh script in build-docs-container to fix the build of the documentation PDF for AlmaLinux 8 and 9. Fix the almalinux_essential.sh script to either enable powertools or crb depending on the AlmaLinux version (powertools for 8, crb for 9). Signed-off-by: Antonin Godard --- documentation/ref-manual/system-requirements.rst | 22 ++++++++++++++-------- documentation/tools/build-docs-container | 18 ++++++++++-------- .../tools/containerfiles/Containerfile.almalinux | 2 +- .../host_packages_scripts/almalinux_docs_pdf.sh | 1 - .../host_packages_scripts/almalinux_essential.sh | 2 +- 5 files changed, 26 insertions(+), 19 deletions(-) diff --git a/documentation/ref-manual/system-requirements.rst b/documentation/ref-manual/system-requirements.rst index 7d110b886..b41295c4b 100644 --- a/documentation/ref-manual/system-requirements.rst +++ b/documentation/ref-manual/system-requirements.rst @@ -253,18 +253,24 @@ Here are the packages needed to build Project documentation manuals: .. literalinclude:: ../tools/host_packages_scripts/pip3_docs.sh :language: shell +In addition to the previous packages, the following TeX Live packages +are needed to build the documentation in PDF format and can be installed with +the `TeX Live package manager `__: + +.. literalinclude:: ../tools/host_packages_scripts/tlmgr_docs_pdf.sh + :language: shell + .. warning:: - Unlike Fedora or OpenSUSE, AlmaLinux does not provide the packages - ``texlive-collection-fontsextra``, ``texlive-collection-lang*`` and - ``texlive-collection-latexextra``, so you may run into issues. These may be - installed using `tlmgr `_. + The Tex Live installation above is only valid for `x86_64` hosts. -In addition to the previous packages, here are the packages needed to build the -documentation in PDF format: +Before building the documentation PDF, setup the ``PATH`` to use the installed +packages (with ``${textooldir}`` pointing to the TeX Live installation from the +previous step): -.. literalinclude:: ../tools/host_packages_scripts/almalinux_docs_pdf.sh - :language: shell +.. code-block:: console + + $ export PATH="${PATH}:${textooldir}/tl/bin/x86_64-linux" CentOS Stream Packages ---------------------- diff --git a/documentation/tools/build-docs-container b/documentation/tools/build-docs-container index 6a83faea6..6a33b9068 100755 --- a/documentation/tools/build-docs-container +++ b/documentation/tools/build-docs-container @@ -33,6 +33,8 @@ $0 OCI_IMAGE [make arguments...] OCI_IMAGE is an image:tag of an OCI image hosted on hub.docker.com. It is one of: + - almalinux:8 + - almalinux:9 - centos:stream9 - debian:12 - debian:13 @@ -87,14 +89,14 @@ main () local repo=docker.io case $image in - # Missing latexmk texlive-gnu-freefont packages at the very least - # "almalinux:8"*|\ - # "almalinux:9"*) - # containerfile=Containerfile.almalinux - # docs=almalinux_docs.sh - # docs_pdf=almalinux_docs_pdf.sh - # pip3=pip3_docs.sh - # ;; + "almalinux:8"*|\ + "almalinux:9"*) + containerfile=Containerfile.almalinux + essential=almalinux_essential.sh + docs=almalinux_docs.sh + docs_pdf=tlmgr_docs_pdf.sh + pip3=pip3_docs.sh + ;; "centos:stream9"*) containerfile=Containerfile.stream essential=centosstream_essential.sh diff --git a/documentation/tools/containerfiles/Containerfile.almalinux b/documentation/tools/containerfiles/Containerfile.almalinux index 7237e9b99..5430d17dc 120000 --- a/documentation/tools/containerfiles/Containerfile.almalinux +++ b/documentation/tools/containerfiles/Containerfile.almalinux @@ -1 +1 @@ -Containerfile.dnf \ No newline at end of file +Containerfile.stream \ No newline at end of file diff --git a/documentation/tools/host_packages_scripts/almalinux_docs_pdf.sh b/documentation/tools/host_packages_scripts/almalinux_docs_pdf.sh deleted file mode 100644 index 8341eb8c2..000000000 --- a/documentation/tools/host_packages_scripts/almalinux_docs_pdf.sh +++ /dev/null @@ -1 +0,0 @@ -sudo dnf install latexmk texlive-collection-fontsrecommended texlive-collection-latex texlive-collection-latexrecommended texlive-collection-xetex texlive-fncychap texlive-gnu-freefont texlive-tex-gyre texlive-xetex diff --git a/documentation/tools/host_packages_scripts/almalinux_essential.sh b/documentation/tools/host_packages_scripts/almalinux_essential.sh index 18fdb674e..14d18e758 100644 --- a/documentation/tools/host_packages_scripts/almalinux_essential.sh +++ b/documentation/tools/host_packages_scripts/almalinux_essential.sh @@ -1,5 +1,5 @@ sudo dnf install -y epel-release sudo dnf install -y dnf-plugins-core -sudo dnf config-manager --set-enabled crb +sudo dnf config-manager --set-enabled crb || sudo dnf config-manager --set-enabled powertools sudo dnf makecache sudo dnf install -y bzip2 ccache chrpath cpio cpp diffstat diffutils gawk gcc gcc-c++ git glibc-devel glibc-langpack-en gzip libacl make patch perl perl-Data-Dumper perl-Text-ParseWords perl-Thread-Queue python3 python3-GitPython python3-jinja2 python3-pexpect python3-pip rpcgen socat tar texinfo unzip wget which xz zstd From patchwork Fri Dec 12 10:22:27 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Antonin Godard X-Patchwork-Id: 76346 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id B0686D44166 for ; Fri, 12 Dec 2025 10:22:43 +0000 (UTC) Received: from smtpout-02.galae.net (smtpout-02.galae.net [185.246.84.56]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.9804.1765534961832780693 for ; Fri, 12 Dec 2025 02:22:42 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@bootlin.com header.s=dkim header.b=Q1Brw+no; spf=pass (domain: bootlin.com, ip: 185.246.84.56, mailfrom: antonin.godard@bootlin.com) Received: from smtpout-01.galae.net (smtpout-01.galae.net [212.83.139.233]) by smtpout-02.galae.net (Postfix) with ESMTPS id 90E4D1A212E for ; Fri, 12 Dec 2025 10:22:39 +0000 (UTC) Received: from mail.galae.net (mail.galae.net [212.83.136.155]) by smtpout-01.galae.net (Postfix) with ESMTPS id 66CCA606DF for ; Fri, 12 Dec 2025 10:22:39 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) by localhost (Mailerdaemon) with ESMTPSA id D8476103C8E17; Fri, 12 Dec 2025 11:22:38 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=dkim; t=1765534959; h=from:subject:date:message-id:to:cc:mime-version:content-type: content-transfer-encoding:in-reply-to:references; bh=Yr0xlGXubUo9sThxl1e1j7S8UbRTMm4JsU+moPLBHZU=; b=Q1Brw+noiu7uDjPqsh2a4mg4KLUHQnoJYovScky7titoKBAq79s6StcHj9b4nhuRnu1r9w pkeq4npiLjEw46mholiRVj1s+qYDeaFNxolgk6Ejs3NMTi/1Z23bUiy6SiGbeZCshkgnZY r4e4d2fMV1pcwUO4Bwpt5W81aw/X922HlrH73YyL6inrnyELI7+EFmPe0a33uQaJI2HS80 oC7ET0swa0OKlFIqtrPID/Yw3OtROYYpprfyQqSvcXXYcI/M04flc+RPfQ8DMSmH7DAi0o UFCKV8kgOM8ashoXJgKlz208eY1wTHq51xmQDKbmnFTd0+QBxSETLIrYh6/e9w== From: Antonin Godard Date: Fri, 12 Dec 2025 11:22:27 +0100 Subject: [PATCH v3 5/5] ref-manual/system-requirements.rst: add RockyLinux install instructions MIME-Version: 1.0 Message-Id: <20251212-build-docs-container-tlmgr-v3-5-a45c1ce6d8f7@bootlin.com> References: <20251212-build-docs-container-tlmgr-v3-0-a45c1ce6d8f7@bootlin.com> In-Reply-To: <20251212-build-docs-container-tlmgr-v3-0-a45c1ce6d8f7@bootlin.com> To: docs@lists.yoctoproject.org Cc: Thomas Petazzoni , Antonin Godard X-Mailer: b4 0.15-dev X-Developer-Signature: v=1; a=openpgp-sha256; l=4742; i=antonin.godard@bootlin.com; h=from:subject:message-id; bh=IX9FOdcjM6rxCJNBB64CbynZE729S9yd//Cz4Bm0R/E=; b=owEBbQKS/ZANAwAKAdGAQUApo6g2AcsmYgBpO+zqAU81hZvG+oHgle1DokhuzN+rJKpF4WwZt +aAbFbK4wuJAjMEAAEKAB0WIQSGSHJRiN1AG7mg0//RgEFAKaOoNgUCaTvs6gAKCRDRgEFAKaOo NhRSD/0VxobmcrGwtH3sKaHdNc0XgHZuNTYh1vkUPsPO2xZLtv/dA5NVoV5idgJaSUVDrbUy0Jh z6UBwTRKFhWniZOMftgtigJfjuZChxxI1Ec7Sl/zzZK43OGQdUMQyx2JMNOOdClo84iw3ETalsX JBZgVShT42CdYdkeKrIQVnWV7OGv5RnlsR/3OB+VLiOOL0DdYMeyZ7uhkn8tMHsNVKz/a6UlSq9 6FnE2q1Ul++xo3Pe7nyG2oKEtCJJpqePQuS2NA2JmgZDNQwinRIyIlNqMc2zE/gXcLvuixi3H1s r1j/5uC62l7kK9mefhKYjpTdtN4UF0IHzaBUuHAHSYX0h4MOQQ8VwEK/8ZG2pD1mjiarc66Ye/3 uCTCFFb1/tR/so8erpAiAyZIBLol9LDVGhx0idurZFtXMwupT4NB0lFfhSom/8EodB4r4qazSzT ykxvBEvYpv7HU232AqP2nzkKQpfrQmsXX6pRHPyJ3hOtIu2876Un9fl88xtLheF2IHfzl4bJo0J vjrVoQCJ+GB4XAmX6ykABId7rE64CrAoKogjydTdnd5mNny82dAyU8sVRW83kgLIYFvaft8jYFP E6uw9aHO3gEZ3ZgFD/O/hMc16zUMQWVpdqluD5+T2ynBfWM1Dk1uYXEo0T0i9T8zQX9+HuhLv3n Ofm59egQ8BOe1Hw== X-Developer-Key: i=antonin.godard@bootlin.com; a=openpgp; fpr=8648725188DD401BB9A0D3FFD180414029A3A836 X-Last-TLS-Session-Version: TLSv1.3 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Fri, 12 Dec 2025 10:22:43 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/docs/message/8263 Add instructions on how to install host packages on Rocky Linux. It is very similar to AlmaLinux so installation scripts were based on it. Signed-off-by: Antonin Godard --- documentation/ref-manual/system-requirements.rst | 49 ++++++++++++++++++++++ documentation/tools/build-docs-container | 10 +++++ .../tools/containerfiles/Containerfile.rocky | 1 + .../tools/host_packages_scripts/rockylinux_docs.sh | 1 + .../host_packages_scripts/rockylinux_essential.sh | 1 + 5 files changed, 62 insertions(+) diff --git a/documentation/ref-manual/system-requirements.rst b/documentation/ref-manual/system-requirements.rst index b41295c4b..a56e683ca 100644 --- a/documentation/ref-manual/system-requirements.rst +++ b/documentation/ref-manual/system-requirements.rst @@ -304,6 +304,55 @@ Before building the documentation PDF, setup the ``PATH`` to use the installed packages (with ``${textooldir}`` pointing to the TeX Live installation from the previous step): +.. code-block:: console + + $ export PATH="${PATH}:${textooldir}/tl/bin/x86_64-linux" + +RockyLinux Packages +------------------- + +Here are the packages needed to build an image on a headless system +with a supported RockyLinux distribution: + +.. literalinclude:: ../tools/host_packages_scripts/rockylinux_essential.sh + :language: shell + +.. note:: + + - Extra Packages for Enterprise Linux (i.e. ``epel-release``) is + a collection of packages from Fedora built on RHEL/CentOS for + easy installation of packages not included in enterprise Linux + by default. You need to install these packages separately. + + - The ``PowerTools/CRB`` repo provides additional packages such as + ``rpcgen`` and ``texinfo``. + + - The ``makecache`` command consumes additional Metadata from + ``epel-release``. + +Here are the packages needed to build Project documentation manuals: + +.. literalinclude:: ../tools/host_packages_scripts/rockylinux_docs.sh + :language: shell + +.. literalinclude:: ../tools/host_packages_scripts/pip3_docs.sh + :language: shell + +In addition to the previous packages, the following TeX Live packages +are needed to build the documentation in PDF format and can be installed with +the `TeX Live package manager `__: + +.. literalinclude:: ../tools/host_packages_scripts/tlmgr_docs_pdf.sh + :language: shell + +.. warning:: + + The Tex Live installation above is only valid for `x86_64` hosts. + +Before building the documentation PDF, setup the ``PATH`` to use the installed +packages (with ``${textooldir}`` pointing to the TeX Live installation from the +previous step): + .. code-block:: console $ export PATH="${PATH}:${textooldir}/tl/bin/x86_64-linux" diff --git a/documentation/tools/build-docs-container b/documentation/tools/build-docs-container index 6a33b9068..23c3dfe33 100755 --- a/documentation/tools/build-docs-container +++ b/documentation/tools/build-docs-container @@ -44,6 +44,8 @@ $0 OCI_IMAGE [make arguments...] - fedora:42 - leap:15.5 - leap:15.6 + - rockylinux:8 + - rockylinux:9 - ubuntu:22.04 - ubuntu:24.04 - ubuntu:25.04 @@ -133,6 +135,14 @@ main () docs_pdf=opensuse_docs_pdf.sh pip3=pip3_docs.sh ;; + "rockylinux:8"*|\ + "rockylinux:9"*) + containerfile=Containerfile.rocky + essential=rockylinux_essential.sh + docs=rockylinux_docs.sh + docs_pdf=tlmgr_docs_pdf.sh + pip3=pip3_docs.sh + ;; "ubuntu:22.04"*|\ "ubuntu:24.04"*|\ "ubuntu:25.04"*|\ diff --git a/documentation/tools/containerfiles/Containerfile.rocky b/documentation/tools/containerfiles/Containerfile.rocky new file mode 120000 index 000000000..5430d17dc --- /dev/null +++ b/documentation/tools/containerfiles/Containerfile.rocky @@ -0,0 +1 @@ +Containerfile.stream \ No newline at end of file diff --git a/documentation/tools/host_packages_scripts/rockylinux_docs.sh b/documentation/tools/host_packages_scripts/rockylinux_docs.sh new file mode 120000 index 000000000..be13734c0 --- /dev/null +++ b/documentation/tools/host_packages_scripts/rockylinux_docs.sh @@ -0,0 +1 @@ +almalinux_docs.sh \ No newline at end of file diff --git a/documentation/tools/host_packages_scripts/rockylinux_essential.sh b/documentation/tools/host_packages_scripts/rockylinux_essential.sh new file mode 120000 index 000000000..ed172e51d --- /dev/null +++ b/documentation/tools/host_packages_scripts/rockylinux_essential.sh @@ -0,0 +1 @@ +almalinux_essential.sh \ No newline at end of file