Anaconda/Features/NoLoader

From FedoraProject

< Anaconda | Features
Revision as of 21:36, 26 January 2011 by Clumens (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Contents

Get rid of anaconda's loader

Summary

anaconda is still divided into two parts - the blue and red text loader environment and the more familiar graphical environment. It would be great to completely get rid of the loader.

Owner

Current status

  • Targeted release: TBD
  • Last updated: Jan 26, 2011
  • Percentage of completion: 0%

Detailed Description

In olden days, loader did what its name says - it loaded the stage2 (full graphical) anaconda environment and did a couple other tasks required to reach that objective. However we now have merged images so there's no stage2 loading to be done anymore. loader has therefore been stripped of its primary responsibility and reduced to just performing those other tasks.

Those other tasks include:

  • Bringing up the network, only if required by some other thing in loader.
  • Prompting for language and keyboard, only if loader goes interactive.
  • Fetching kickstart files, product.img, and updates.img.
  • Loading driver disks.
  • Running media check.

Fewer and fewer people see these tasks all the time. If you use a boot.iso, you will most likely never see anything besides a blue background and the "Loading anaconda..." message. This means it's a whole lot of code that is just special cases and receives less testing all the time. Further, it's a special environment: It's newt, it's C, it's old, and it's another layer of stuff getting execed between startup and anaconda.

We need to decide how many of these tasks anaconda still needs to do. For those that are still important, they need to move either into the main anaconda program or into some other tool that anaconda can run when we're in the full graphical environment. Everything else should go away. This may mean we keep some sort of loader-like program, but it could be Python based and non-interactive.

Benefit to Fedora

Scope

Test Plan

User Experience

Dependencies

Contingency Plan

Documentation

Release Notes