From Fedora Project Wiki

Revision as of 12:08, 28 January 2013 by Jreznik (talk | contribs) (Feature has been announced on devel-announce mailing list on 2013-01-28)


New firstboot

Summary

This feature proposes new initial setup application with better integration to the NewUI anaconda and to Gnome Initial Experience.

Owner

  • Email: msivak@redhat.com

Current status

  • Targeted release: Fedora 19
  • Last updated: 2013-01-25
  • Percentage of completion: 70% (the engine is working, package undergoing review, no configuration screens present)

Detailed Description

Since the Anaconda installer moved to the NewUI Hub and Spoke concept, we can reuse much of it's architecture and screens in the after reboot configuration utility -- initial-setup. So the idea behind the firstboot replacement is that we will have a new app that will use the same Hub and Spoke model and the same API as Anaconda.

This will give us the possibility of letting the user configure his system either during the package extraction or after reboot (important for OEMs). It will also allow other teams (power management, security team, IPA) to prepare their own screens for Anaconda and initial-setup and so further enhancing the user experience.

Anaconda, initial-setup and Gnome Inital Experience will communicate to ensure the screens are not shown multiple times. So for example the root password setup or user creation process will be done only in one place, depending on the installed system.

The old Firstboot will still stay as a fallback in case somebody still has his old Firstboot plugins he needs to use.

Benefit to Fedora

  • See the detailed description..
  • Better UI consistency between the installer and initial-setup
  • Possible 3rd party plugins to login to network domains, set the power or security profile
  • User configuration will be shown on one place only

Scope

  • new initial-setup application based on the Anaconda NewUI classes
  • communication (config file) between all the relevant parties (initial-setup, Anaconda, GIE)
  • plugin system for other teams (will be also behind the Anaconda - initial-setup screen sharing)

How To Test

  • install the initial-setup and all it's dependencies
  • enable initial-setup-* systemd services
  • reboot the machine

User Experience

  • initial-setup process will match the installer look and feel and will possibly contain more setup screens/tools as a result plugins written with cooperation with other teams

Dependencies

  • the user creation process and final timezone setting were usually done in Firstboot

Contingency Plan

  • the old Firstboot already has the needed screens and those can be left enabled
  • Gnome environment is going to ship new Gnome specific tool for user creation

Documentation

  • We are currently writing the development guide

Release Notes

  • There is a new initial-setup application that replaces the old firstboot. It integrates better with the installer introduced in F18 and with the new Gnome user creation.

Comments and Discussion