No edit summary |
|||
Line 39: | Line 39: | ||
None of these tasks are applicable to upgrade type installs. | None of these tasks are applicable to upgrade type installs. | ||
* Determine language | |||
** Should be able to be suggested based on location | |||
Automatically create the first user account (if none exist) and autologin to it and configure it on the fly. | |||
=== Post Login === | |||
None of these tasks are applicable to upgrade type installs. | |||
These are things that we could technically do post login. | |||
* Determine timezone / location | * Determine timezone / location | ||
** Can we automatically suggest one? | ** Can we automatically suggest one? | ||
** Not necessary to fix the time - that can be done in the desktop | ** Not necessary to fix the time - that can be done in the desktop | ||
* Determine keyboard type / layout | * Determine keyboard type / layout | ||
** Should be able to be suggested based on language | ** Should be able to be suggested based on language | ||
* User profile | * User profile | ||
** Real name | ** Real name | ||
Line 57: | Line 62: | ||
* Computer name | * Computer name | ||
* Ask if this person should be the administrator of this computer | * Ask if this person should be the administrator of this computer | ||
** If so then | ** If so then add to sudoers | ||
** Can we actually disable root if there are no administrators? | |||
* Choose network | |||
** Suggest based on strength / security | |||
=== Questions === | |||
* Do we support connecting to external directories (eg. LDAP) from this tool? |
Revision as of 02:05, 31 October 2009
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.
- Determine language
- Should be able to be suggested based on location
Automatically create the first user account (if none exist) and autologin to it and configure it on the fly.
Post Login
None of these tasks are applicable to upgrade type installs.
These are things that we could technically do post login.
- Determine timezone / location
- Can we automatically suggest one?
- Not necessary to fix the time - that can be done in the desktop
- Determine keyboard type / layout
- Should be able to be suggested based on language
- 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 add to sudoers
- Can we actually disable root if there are no administrators?
- Choose network
- Suggest based on strength / security
Questions
- Do we support connecting to external directories (eg. LDAP) from this tool?