Skip to content

Add ppc64le iso booting support to network installer types (HMS-9968)#2253

Open
bcl wants to merge 10 commits intoosbuild:mainfrom
bcl:main-iso-ppc64le
Open

Add ppc64le iso booting support to network installer types (HMS-9968)#2253
bcl wants to merge 10 commits intoosbuild:mainfrom
bcl:main-iso-ppc64le

Conversation

@bcl
Copy link
Contributor

@bcl bcl commented Mar 7, 2026

SSIA

Will require a new osbuild with osbuild/osbuild#2377

@bcl bcl force-pushed the main-iso-ppc64le branch from 8a3a3bc to 56f42bc Compare March 9, 2026 16:47
@bcl bcl marked this pull request as ready for review March 9, 2026 16:48
@bcl bcl requested a review from a team as a code owner March 9, 2026 16:48
@bcl bcl requested review from achilleas-k, croissanne and thozza March 9, 2026 16:48
@bcl bcl force-pushed the main-iso-ppc64le branch from 56f42bc to 43169bc Compare March 9, 2026 22:15
bcl added 10 commits March 12, 2026 15:56
The iso creation is different, setting CHRPBoot to true will setup the
iso for booting on PPC64LE systems. It also requires a bootinfo.txt file
in /ppc that points to the grub2 bootloader.

Related: HMS-10110
This allows selection of the platform type, i386-pc or powerpc-ieee1275,
for the grub2 iso bootloader. When empty the stage defaults to i386-pc.

Related: HMS-10110
This allows the installation of the grub2 files into a different
directory on the iso. By default it uses /boot/grub2/, but in some cases (eg.
ppc64le) it needs to install them into /boot/grub/

Related: HMS-10110
This will be used to select ppc64le specific options for using grub2 to
boot the iso.

Related: HMS-10110
This sets up the xorrisofs stage for booting on ppc64le, includes a
test.

Related: HMS-10110
Add the new bootloader when the ISOBoot type is set to Grub2PPCISOBoot.

This also adds the bootinfo.txt file to files/iso/bootinfo.txt, this is
used by the ppc64le iso CHRP boot method to point to the grub2
bootloader's core.elf file.

NOTE: The grub2 files need to be under /boot/grub, this is where the
production core.elf bootloader searches for grub.cfg and extra modules.

Related: HMS-10110
This adds support for ppc64le network installer iso creation to fedora,
rhel-10, and rhel-9

Related: HMS-10110
@bcl bcl force-pushed the main-iso-ppc64le branch from 43169bc to 1872307 Compare March 12, 2026 23:04
@bcl
Copy link
Contributor Author

bcl commented Mar 12, 2026

NOTE: The file layout in the iso differs from the official ones slightly, I left vmlinuz and inird.img under images/pxeboot so that we don't need to fiddle with arch based path changes. Their exact location doesn't matter as long as the config points to it. And it's probably better to start being consistent in the location of things between the images. The same goes for the s390x changes in #2261 where the official image puts the kernel in images/kernel.img and the initrd in images/initrd.img

@supakeen supakeen changed the title Add ppc64le iso booting support to network installer types Add ppc64le iso booting support to network installer types (HMS-9968) Mar 13, 2026
@supakeen
Copy link
Member

SSIA

Will require a new osbuild with osbuild/osbuild#2377

You should be able to update the Schutzfile with a commit that built RPMs after your changes landed to get CI to pass here.

Copy link
Member

@achilleas-k achilleas-k left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice. osbuild commit bump required, but otherwise LGTM

@achilleas-k
Copy link
Member

Was wondering why everything else passed and I guess it's because there were no builds in the gitlab pipelines and manifest generation doesn't check the osbuild version.

Copy link
Member

@thozza thozza left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

- "grub2-ppc64le-modules"
ppc64le_installer_platform: &ppc64le_installer_platform
<<: *ppc64le_bios_platform
image_format: "qcow2"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nitpick: this would get inherited from ppc64le_bios_platform anchor.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, we've got a few places like that where we repeat what's in the anchor.

- "grub2-ppc64le-modules"
ppc64le_installer_platform: &ppc64le_installer_platform
<<: *ppc64le_bios_platform
image_format: "qcow2"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nitpick: this would get inherited from ppc64le_bios_platform anchor.

Copy link
Member

@supakeen supakeen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Needs manifest checksum regeneration; otherwise is OK.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants