F43 Change Proposal: Remove DNF modularity support from Anaconda (system-wide)

Remove DNF modularity support from Anaconda

This is a proposed Change for Fedora Linux.
This document represents a proposed Change. As part of the Changes process, proposals are publicly announced in order to receive community feedback. This proposal will only be implemented if approved by the Fedora Engineering Steering Committee.

Wiki
Announced

:link: Summary

Remove support for package modularity in the Anaconda installer.

:link: Owner

:link: Detailed Description

Remove the package modularity support in the Anaconda installer. Modularity deprecation has been an ongoing effort over the last few Fedora releases, with the Retire Modularity change & no more modules being shipped since Fedora 39. Fedora 43 seems like a good point in time for removing support also from the Anaconda installer.

From the installer PoV the support for the kickstart module command will be dropped as well as for marking modules for installation via the kickstart %packages section. Also the installer documentation will be updated and all modularity support will be marked as removed.

Without this change the migration to DNF 5 will be more troublesome as DNF 5 is missing the requested API right now.

:link: Feedback

While we expect the effect on users to be minimal or non-existent, please reach out to the Anaconda team installer team on their communication channel, if you face any obstacles:

:link: Benefit to Fedora

By switching the Anaconda installer to DNF 5, which has no modularity support, the installer will not be left behind using an old version of DNF. We can also clean up the Anaconda code base a bit, removing some installer specific code supporting package modularity. We can also clean up mentions of package modularity from the Anaconda documentation, avoiding user confusion & making the docs easier to maintain.

:link: Scope

  • Proposal owners: Remove package modularity support from the Anaconda codebase.

  • Other developers: We think it is unlikely anyone is using this by this point, but it might be advisable to check any documentation if it still references modularity and clean it up.

  • Release engineering: #Releng issue number

  • Policies and guidelines: N/A (not needed for this Change)

  • Trademark approval: N/A (not needed for this Change)

  • Alignment with the Fedora Strategy:

:link: Upgrade/compatibility impact

As we no longer expect anyone to be using package modularity by this point, there should be no upgrade or compatibility impact.

If you still for some reason need to interact with modules, there are two options that will be still available after support in Anaconda is dropped:

  • install the system first & then use DNF - install the system first & then install and use DNF4 (provided by the python3-dnf package) on the installed system after you boot into it
  • install the system first & then use DNF5 to enable/disable modules and install modular rpms (only if you don’t need the module install/update/remove operations)
  • use DNF5 from a kickstart %post script to enable/disable modules and install modular rpms (only if you don’t need the module install/update/remove operations) the installed system after you boot into it

:link: Early Testing (Optional)

Do you require ‘QA Blueprint’ support? Y/N

:link: How To Test

The DNF and Anaconda teams will make sure all CI coverage passes before landing the modularity removals. User testing is not expected to be necessary due to the expected lack of usage of the removed functionality.

:link: User Experience

Modularity support in Anaconda will be removed and no other user visible changes are expected.

:link: Dependencies

None.

:link: Contingency Plan

  • Contingency mechanism: The Anaconda team will keep the remaining package modularity in place for the Fedora 43 cycle.
  • Contingency deadline: 100% Code Completion deadline for Fedora 43 on Tue 2025-08-26
  • Blocks release? No

:link: Documentation

The change will be documented in Anaconda release notes for Fedora 43 & all mentions of modularity in the Anaconda docs will be purged or marked as deprecated.

:link: Release Notes

Last edited by @amoloney 2025-06-02T20:51:40Z

Last edited by @amoloney 2025-06-02T20:51:40Z

1 Like

How do you feel about the proposal as written?

  • Strongly in favor
  • In favor, with reservations
  • Neutral
  • Opposed, but could be convinced
  • Strongly opposed
0 voters

If you are in favor but have reservations, or are opposed but something could change your mind, please explain in a reply.

We want everyone to be heard, but many posts repeating the same thing actually makes that harder. If you have something new to say, please say it. If, instead, you find someone has already covered what you’d like to express, please simply give that post a :heart: instead of reiterating. You can even do this by email, by replying with the heart emoji or just “+1”. This will make long topics easier to follow.

Please note that this is an advisory “straw poll” meant to gauge sentiment. It isn’t a vote or a scientific survey. See About the Change Proposals category for more about the Change Process and moderation policy.