Last week, the Fedora Magazine covered the new features and improvements in the Fedora 28 Installer. The Fedora installer team is already hard at work adding new features for Fedora 29. This article covers some of these improvements.
The progress hub is mostly empty (on Fedora Workstation) after moving the user creation step to GNOME Initial Setup.
Discussions are on going with the Fedora Workstation working group about re-working the progress hub. Hit the comments with suggestions on how you think this could be improved.
More Anaconda on DBus
Fedora 28 was the start of the ultimate goal of modularizing Anaconda. The main idea is to split the code into several modules that will communicate over DBus. Ultimately, this will enable a UI-less installation process.
The goal in Fedora 29 is to move all the storage-related code to the storage module. Additionally, plans are in place to extend some of the other modules and introduce installation tasks, so you can monitor the installation steps.
Supporting Fedora Modularity
Fedora Modularity was introduced in Fedora 28 for the Server variant. This effort is still expanding, adding more modules, features and bug fixes. The Anaconda team is working on module installation support for Anaconda.
First of all, the new kickstart command, called “module”, is used to enable modules. Additionally, support for installing modules via the %packages section in kickstart.
There are already patches for Anaconda, DNF, Pykickstart and libdnf that make module installation from kickstart possible.
Reducing Initial Setup dependencies even more
Fedora 28 reduced Initial Setup dependencies from Anaconda and the compose tools greatly. Next on the list is to do the same with Blivet.
Currently, the python-blivet package has hard dependencies on many storage handling tools. The current plan is to introduce a blivet-minimal package to just provide the bare minimum of Blivet functionality, such as architecture detection and device-tree based storage modeling. The current python-blivet package will maintain its current dependencies. Consequently, Initial Setup won’t drag in unnecessary dependencies, making packaging more flexible.
LUKS2 is the new generation of the Linux storage encryption workhorse, bringing various improvements and new features. Work has started adding support for creating LUKS2-based encrypted storage volumes during installation.