From Fedora Project Wiki

< Desktop

Revision as of 01:56, 31 October 2009 by Mccann (talk | contribs)

Problem Definition

Our goal is to spread Fedora. This is a challenging task. Expecting a user to overwrite their existing OS is a tall order. Some of these issues we can't address through technology alone. That said, we should make every attempt to ensure the installation process is not yet another impediment to achieving our goal. We want the process of installing Fedora to be as streamlined and as enjoyable as possible.

Principles

  • Don't do today what you can do tomorrow
  • Achieve the user's goals efficiently
  • Only prompt for essential information
  • Defer configuration
  • Choose good defaults
  • Allow modification post-facto
  • Protect the user's data

Requirements

We can divide the installation process into two parts: that which occurs before reboot and that which occurs after. That which occurs before the reboot operates in an environment that does not run off the physical disk. That which occurs after reboot operates in an environment running off the freshly installed system. Therefore, based on the principles listed above, the only things the installer should do before reboot are those things required for reboot.

Before Reboot

  • Ensure the user knows what to expect
  • Select a device to use for the install
  • Verify installation will succeed
  • Prompt for Install type:
    • Install
    • Upgrade
    • Repair?
      • Reset passwords?
      • Other?
  • Preserve user data if applicable
  • (optionally) Allow device customization / modification
  • (optionally) Support dual-boot


After Reboot

Before Inital Login

None of these tasks are applicable to upgrade type installs.

Prompt for:

  • Determine timezone / location
    • Can we automatically suggest one?
    • Not necessary to fix the time - that can be done in the desktop
    • Do we absolutely need the timezone this early?
  • Determine language
    • Should be able to be suggested based on location
  • Determine keyboard type / layout
    • Should be able to be suggested based on language
  • Choose network
    • Suggest based on strength / security
  • User profile
    • Real name
    • Username
    • Avatar
    • Password or autologin
  • Computer name
  • Ask if this person should be the administrator of this computer
    • If so then

Prompt for this information until it is provided.

Autologin the user the first time regardless of whether autologin authentication is selected or not.