Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 8 additions & 3 deletions pkg/distro/generic/bootc_imagetype.go
Original file line number Diff line number Diff line change
Expand Up @@ -333,9 +333,14 @@ func (t *bootcImageType) initAnacondaInstallerBaseFromSourceInfo(img *image.Anac
if err != nil {
return err
}
if instCust != nil && instCust.Modules != nil {
img.InstallerCustomizations.EnabledAnacondaModules = append(img.InstallerCustomizations.EnabledAnacondaModules, instCust.Modules.Enable...)
img.InstallerCustomizations.DisabledAnacondaModules = append(img.InstallerCustomizations.DisabledAnacondaModules, instCust.Modules.Disable...)
if instCust != nil {
if instCust.Modules != nil {
img.InstallerCustomizations.EnabledAnacondaModules = append(img.InstallerCustomizations.EnabledAnacondaModules, instCust.Modules.Enable...)
img.InstallerCustomizations.DisabledAnacondaModules = append(img.InstallerCustomizations.DisabledAnacondaModules, instCust.Modules.Disable...)
}
if instCust.Bootloader != nil && instCust.Bootloader.Grub2 != nil {
img.InstallerCustomizations.MenuTimeout = instCust.Bootloader.Grub2.MenuTimeout
}
}
img.InstallerCustomizations.EnabledAnacondaModules = append(img.InstallerCustomizations.EnabledAnacondaModules,
anaconda.ModuleUsers,
Expand Down
4 changes: 4 additions & 0 deletions pkg/distro/generic/images.go
Original file line number Diff line number Diff line change
Expand Up @@ -531,6 +531,10 @@ func installerCustomizations(t *imageType, c *blueprint.Customizations, o distro
isc.DisabledAnacondaModules = append(isc.DisabledAnacondaModules, installerCust.Modules.Disable...)
}

if installerCust.Bootloader != nil && installerCust.Bootloader.Grub2 != nil {
isc.MenuTimeout = installerCust.Bootloader.Grub2.MenuTimeout
}

if installerCust.Payload != nil && installerCust.Payload.Flatpaks != nil {
flatpakMeta := installerCust.Payload.Flatpaks

Expand Down
3 changes: 3 additions & 0 deletions pkg/image/iso_bootloaders.go
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ func (img *ISOBootloaders) Bootloaders(buildPipeline manifest.Build, platform pl
grub2.ISOLabel = img.ISOCustomizations.Label
grub2.KernelOpts = kernelOpts
grub2.DefaultMenu = img.InstallerCustomizations.DefaultMenu
grub2.MenuTimeout = img.InstallerCustomizations.MenuTimeout

for _, entry := range img.Custom {
grub2.Custom = append(grub2.Custom, manifest.ISOGrub2MenuEntry{
Expand All @@ -55,6 +56,7 @@ func (img *ISOBootloaders) Bootloaders(buildPipeline manifest.Build, platform pl
grub2ppc64.ISOLabel = img.ISOCustomizations.Label
grub2ppc64.KernelOpts = kernelOpts
grub2ppc64.DefaultMenu = img.InstallerCustomizations.DefaultMenu
grub2ppc64.MenuTimeout = img.InstallerCustomizations.MenuTimeout

for _, entry := range img.Custom {
grub2ppc64.Custom = append(grub2ppc64.Custom, manifest.ISOGrub2MenuEntry{
Expand All @@ -80,6 +82,7 @@ func (img *ISOBootloaders) Bootloaders(buildPipeline manifest.Build, platform pl
efiPipeline.UEFIVendor = platform.GetUEFIVendor()
efiPipeline.ISOLabel = img.ISOCustomizations.Label
efiPipeline.DefaultMenu = img.InstallerCustomizations.DefaultMenu
efiPipeline.MenuTimeout = img.InstallerCustomizations.MenuTimeout
efiPipeline.KernelOpts = kernelOpts

for _, entry := range img.Custom {
Expand Down
1 change: 1 addition & 0 deletions pkg/manifest/installer.go
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,7 @@ type InstallerCustomizations struct {
InstallWeakDeps bool

DefaultMenu int
MenuTimeout *int

Product string
Variant string
Expand Down
22 changes: 22 additions & 0 deletions pkg/manifest/iso_bootloaders.go
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,8 @@ type Grub2X86Boot struct {

// Default Grub2 menu on the ISO
DefaultMenu int
// Default Grub2 menu timeout on the ISO
MenuTimeout *int
// Custom menu entries (overrides all default entries)
Custom []ISOGrub2MenuEntry
}
Expand All @@ -86,6 +88,15 @@ func (boot *Grub2X86Boot) GetISOBootStages(inputName string, _ *disk.PartitionTa
Default: boot.DefaultMenu,
}
}
if boot.MenuTimeout != nil {
if grub2config == nil {
grub2config = &osbuild.Grub2Config{
Timeout: *boot.MenuTimeout,
}
} else {
grub2config.Timeout = *boot.MenuTimeout
}
}
options := &osbuild.Grub2ISOLegacyStageOptions{
Product: osbuild.Product{
Name: boot.product,
Expand Down Expand Up @@ -142,6 +153,8 @@ type Grub2PPC64Boot struct {

// Default Grub2 menu on the ISO
DefaultMenu int
// Default Grub2 menu timeout on the ISO
MenuTimeout *int
// Custom menu entries (overrides all default entries)
Custom []ISOGrub2MenuEntry
}
Expand All @@ -165,6 +178,15 @@ func (boot *Grub2PPC64Boot) GetISOBootStages(inputName string, _ *disk.Partition
Default: boot.DefaultMenu,
}
}
if boot.MenuTimeout != nil {
if grub2config == nil {
grub2config = &osbuild.Grub2Config{
Timeout: *boot.MenuTimeout,
}
} else {
grub2config.Timeout = *boot.MenuTimeout
}
}
options := &osbuild.Grub2ISOLegacyStageOptions{
Grub2Dir: "boot/grub",
Product: osbuild.Product{
Expand Down
Loading