From Fedora Project Wiki

Revision as of 10:50, 4 January 2018 by Jkonecny (talk | contribs) (First complete draft of this change.)


Anaconda modularization

Summary

Anaconda installer will be split into several modules that will communicate over DBus using stable API.

Owner

Current status

  • Targeted release: Fedora 28
  • Last updated: 2018-01-04
  • Tracker bug: <will be assigned by the Wrangler>

Detailed Description

Anaconda will be split into several modules that will communicate over DBus. The goal is to introduce a stable way to interact with Anaconda to support its customization, extensibility and testability. It will be easier to monitor the installation, maintain an install class or an addon, drop some modules or provide your own UI.

Benefit to Fedora

  • Anaconda addons have stable API to work with.
  • Users can create their own UI or even UI less installation.
  • Anaconda modules can be enabled and disabled or even not present in the installation environment.
  • Better test-ability of Anaconda.


Scope

  • Proposal owners:
    • Split Anaconda to modules with DBus API.
    • Old UI must be rewritten to use new DBus API.
  • Other developers:
    • Thanks to the nature of how addons work right now, we need cooperation during the transition period of addon developers.
  • Policies and guidelines: N/A (not a System Wide Change)
  • Trademark approval: N/A (not needed for this Change)

Upgrade/compatibility impact

N/A (not a System Wide Change)

How To Test

N/A (not a System Wide Change)

User Experience

User experience should be consistent with the older releases.

Dependencies

N/A (not a System Wide Change)

Contingency Plan

  • Contingency mechanism: Fallback to the old (non-modular) solution will be still available during development.
  • Contingency deadline: Final freeze
  • Blocks release? No

Documentation

https://rhinstaller.wordpress.com/2017/10/09/anaconda-modularisation/

Most of the articles here: https://rhinstaller.wordpress.com

Release Notes

TODO