diff --git a/pkg/distro/fedora/distro.go b/pkg/distro/fedora/distro.go index 44db9ebf9a..127a6d341c 100644 --- a/pkg/distro/fedora/distro.go +++ b/pkg/distro/fedora/distro.go @@ -475,6 +475,18 @@ var defaultDistroImageConfig = &distro.ImageConfig{ DefaultOSCAPDatastream: common.ToPtr(oscap.DefaultFedoraDatastream()), } +func defaultDistroInstallerConfig(d *distribution) *distro.InstallerConfig { + config := distro.InstallerConfig{} + // In Fedora 42 the ifcfg module was replaced by net-lib. + if common.VersionLessThan(d.osVersion, "42") { + config.AdditionalDracutModules = append(config.AdditionalDracutModules, "ifcfg") + } else { + config.AdditionalDracutModules = append(config.AdditionalDracutModules, "net-lib") + } + + return &config +} + func getISOLabelFunc(variant string) isoLabelFunc { const ISO_LABEL = "%s-%s-%s-%s" @@ -751,6 +763,12 @@ func newDistro(version int) distro.Distro { containerImgType, wslImgType, ) + + // add distro installer configuration to all installer types + distroInstallerConfig := defaultDistroInstallerConfig(&rd) + liveInstallerImgType.defaultInstallerConfig = distroInstallerConfig + imageInstallerImgType.defaultInstallerConfig = distroInstallerConfig + iotInstallerImgType.defaultInstallerConfig = distroInstallerConfig x86_64.addImageTypes( &platform.X86{ BasePlatform: platform.BasePlatform{ @@ -912,6 +930,7 @@ func newDistro(version int) distro.Distro { minimalrawImgType, ) + iotSimplifiedInstallerImgType.defaultInstallerConfig = distroInstallerConfig x86_64.addImageTypes( &platform.X86{ BasePlatform: platform.BasePlatform{ diff --git a/pkg/distro/rhel/rhel10/bare_metal.go b/pkg/distro/rhel/rhel10/bare_metal.go index 711992f5ff..7fe1c53b77 100644 --- a/pkg/distro/rhel/rhel10/bare_metal.go +++ b/pkg/distro/rhel/rhel10/bare_metal.go @@ -53,6 +53,7 @@ func mkImageInstallerImgType() *rhel.ImageType { "nvdimm", // non-volatile DIMM firmware (provides nfit, cuse, and nd_e820) "prefixdevname", "prefixdevname-tools", + "net-lib", }, AdditionalDrivers: []string{ "ipmi_devintf", diff --git a/pkg/distro/rhel/rhel8/bare_metal.go b/pkg/distro/rhel/rhel8/bare_metal.go index 0d5fbe066c..e1703e871b 100644 --- a/pkg/distro/rhel/rhel8/bare_metal.go +++ b/pkg/distro/rhel/rhel8/bare_metal.go @@ -32,6 +32,7 @@ func mkImageInstaller() *rhel.ImageType { AdditionalDracutModules: []string{ "prefixdevname", "prefixdevname-tools", + "ifcfg", }, } diff --git a/pkg/distro/rhel/rhel8/edge.go b/pkg/distro/rhel/rhel8/edge.go index c0ab527705..a7806957ff 100644 --- a/pkg/distro/rhel/rhel8/edge.go +++ b/pkg/distro/rhel/rhel8/edge.go @@ -130,6 +130,7 @@ func mkEdgeInstallerImgType(rd *rhel.Distribution) *rhel.ImageType { AdditionalDracutModules: []string{ "prefixdevname", "prefixdevname-tools", + "ifcfg", }, } it.RPMOSTree = true diff --git a/pkg/distro/rhel/rhel9/bare_metal.go b/pkg/distro/rhel/rhel9/bare_metal.go index 3702cf377e..7911413809 100644 --- a/pkg/distro/rhel/rhel9/bare_metal.go +++ b/pkg/distro/rhel/rhel9/bare_metal.go @@ -54,6 +54,7 @@ func mkImageInstallerImgType() *rhel.ImageType { "nvdimm", // non-volatile DIMM firmware (provides nfit, cuse, and nd_e820) "prefixdevname", "prefixdevname-tools", + "ifcfg", }, AdditionalDrivers: []string{ "cuse", diff --git a/pkg/distro/rhel/rhel9/edge.go b/pkg/distro/rhel/rhel9/edge.go index 740bd91cd6..f76c928b06 100644 --- a/pkg/distro/rhel/rhel9/edge.go +++ b/pkg/distro/rhel/rhel9/edge.go @@ -148,6 +148,7 @@ func mkEdgeInstallerImgType() *rhel.ImageType { "nvdimm", // non-volatile DIMM firmware (provides nfit, cuse, and nd_e820) "prefixdevname", "prefixdevname-tools", + "ifcfg", }, AdditionalDrivers: []string{ "cuse", diff --git a/pkg/manifest/anaconda_installer.go b/pkg/manifest/anaconda_installer.go index 764f04a721..e180df4f63 100644 --- a/pkg/manifest/anaconda_installer.go +++ b/pkg/manifest/anaconda_installer.go @@ -422,7 +422,6 @@ func dracutStageOptions(kernelVer string, biosdevname bool, additionalModules [] "convertfs", "network-manager", "network", - "ifcfg", "url-lib", "drm", "plymouth",