| Message ID | 20251211-build-docs-container-tlmgr-v2-5-58719c103a50@bootlin.com |
|---|---|
| State | Under Review |
| Headers | show |
| Series | Add missing CentOS Stream / RockyLinux distros to the system-requirements.rst doc | expand |
Hi Antonin, On 12/11/25 10:06 AM, Antonin Godard via lists.yoctoproject.org wrote: > 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 <antonin.godard@bootlin.com> > --- > documentation/ref-manual/system-requirements.rst | 48 ++++++++++++++++++++++ > 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 | 5 +++ > 5 files changed, 65 insertions(+) > > diff --git a/documentation/ref-manual/system-requirements.rst b/documentation/ref-manual/system-requirements.rst > index 4063253f7..66d920698 100644 > --- a/documentation/ref-manual/system-requirements.rst > +++ b/documentation/ref-manual/system-requirements.rst > @@ -302,6 +302,54 @@ the `TeX Live package manager <https://tug.org/texlive/tlmgr.html>`__: > Before building the documentation PDF, setup the ``PATH`` to use the installed > packages: > > +.. code-block:: console > + > + $ export PATH="${PATH}:${textooldir}/tl/bin/x86_64-linux" > + Same remark as in patch 3 and 4. > +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 <https://tug.org/texlive/tlmgr.html>`__: > + > +.. 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: > + > .. 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 9d1bfdcdf..dda4a6170 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 > @@ -130,6 +132,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 100644 > index 000000000..dfb201fe2 > --- /dev/null > +++ b/documentation/tools/host_packages_scripts/rockylinux_docs.sh > @@ -0,0 +1 @@ > +sudo dnf install git glibc-locale-source librsvg2-tools make python3-pip which wget Same remark as patch 4. > diff --git a/documentation/tools/host_packages_scripts/rockylinux_essential.sh b/documentation/tools/host_packages_scripts/rockylinux_essential.sh > new file mode 100644 > index 000000000..9564bb4fe > --- /dev/null > +++ b/documentation/tools/host_packages_scripts/rockylinux_essential.sh > @@ -0,0 +1,5 @@ > +sudo dnf install -y epel-release > +sudo yum install -y dnf-plugins-core > +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 > Is there anything actually different from almalinux in here that prevents us from using a symlink? Cheers, Quentin
diff --git a/documentation/ref-manual/system-requirements.rst b/documentation/ref-manual/system-requirements.rst index 4063253f7..66d920698 100644 --- a/documentation/ref-manual/system-requirements.rst +++ b/documentation/ref-manual/system-requirements.rst @@ -302,6 +302,54 @@ the `TeX Live package manager <https://tug.org/texlive/tlmgr.html>`__: Before building the documentation PDF, setup the ``PATH`` to use the installed packages: +.. 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 <https://tug.org/texlive/tlmgr.html>`__: + +.. 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: + .. 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 9d1bfdcdf..dda4a6170 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 @@ -130,6 +132,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 100644 index 000000000..dfb201fe2 --- /dev/null +++ b/documentation/tools/host_packages_scripts/rockylinux_docs.sh @@ -0,0 +1 @@ +sudo dnf install git glibc-locale-source librsvg2-tools make python3-pip which wget diff --git a/documentation/tools/host_packages_scripts/rockylinux_essential.sh b/documentation/tools/host_packages_scripts/rockylinux_essential.sh new file mode 100644 index 000000000..9564bb4fe --- /dev/null +++ b/documentation/tools/host_packages_scripts/rockylinux_essential.sh @@ -0,0 +1,5 @@ +sudo dnf install -y epel-release +sudo yum install -y dnf-plugins-core +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
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 <antonin.godard@bootlin.com> --- documentation/ref-manual/system-requirements.rst | 48 ++++++++++++++++++++++ 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 | 5 +++ 5 files changed, 65 insertions(+)