After installing a new Fedora desktop system there are a few essential things to set up before use. We want to provide a simple, easy, and safe way to do these things.
- Targeted release: Fedora 18
- Last updated: 2012-05-04
- Percentage of completion: 25%
A functioning prototype of the initial-setup application and its gdm integration has been written and the complete application is targeted for GNOME 3.6, see http://live.gnome.org/ThreePointFive/Features/InitialSetup
The initial-setup application will be started during the first boot of a newly installed Fedora desktop. It walks the user through a few essential setup setups:
- Show a EULA screen (only if really necessary - the initial-setup application will support showing licenses/EULAs)
- Get on the network
- Create a local user account or connect to an enterprise system
- Set the system time/location
- Optionally, show legacy firstboot screens
- Set up online accounts, such as gmail or exchange
The first few of these steps supersede equivalent firstboot functionality, and we expect that initial-setup will replace firstboot for the desktop spin. In contrast to firstboot, which
- runs halfway through the graphical boot
- uses a different environment and
- ends up on the login screen,
- replace the login screen (only for the first boot),
- use the same environment as the regular desktop and
- smoothly transition into the user session
We also want to offer a 'tour' of the GNOME 3 desktop at the end of the setup tasks, to help new users find their way in GNOME 3.
The gdm mode of running an application instead of the login screen, with the option to smoothly transition into a user session may also be used to run the 'try-or-install?' application on the live cd, before starting the liveuser session. Doing things this way will allow us to offer a language choice for the liveuser session in the 'try-or-install?' application (which is something we've lost when we switched to autologin for the liveuser).
Benefit to Fedora
We will provide an improved and smoother initial experience for new users of the Fedora desktop, and let them configure relevant parts of GNOME so that they end up on a fully functional desktop after going through the initial setup. In addition, the install experience of the desktop spin may be improved.
- the prototype work in the wip/initial-setup2 branch of gdm needs to be finished, and possibly moved to its own module
- the initial-setup application needs to be packaged
- the 'tour' part needs to be designed and implemented
- gnome-shell needs a 'kiosk' mode that is suitable for use in this scenario
- the gdm integration needs to be made flexible enough to accommodate the livecd 'try-or-install' use case
- affected packages
How To Test
- Boot a desktop livecd. Verify that you first see the 'try-or-install' application. Choosing 'try' should smoothly transition to the liveuser sssion, similar to the F17 livecd experience. Choosing 'install' should run the installer.
- Boot a freshly installed desktop system for the first time. Verify that you don't end on the login screen, but see the initial-setup application.
- Verify that all the screens of the initial-setup application function as expected and the settings are persisted into the newly created user account
- Reboot the system again. Verify that you don't get the initial-setup application again, but instead go to the login screen (or autologin, depending on the choices made when creating the user account)
- Touch the file /etc/gdm/run-initial-setup and reboot. initial-setup should run again
- Change /etc/gdm/custom.conf to InitialSetupEnable=False and restart gdm. Check that gdm now ignores the /etc/gdm/run-initial-setup file and does not go into the initial-setup screen
See the design at http://live.gnome.org/GnomeOS/Design/Whiteboards/InitialSetup.
firstboot should be disabled for the desktop spin when initial-setup lands.
If the 'tour' does not get completed, we can still use initial-setup (we will not offer a tour then, obviously).
The GNOME desktop in Fedora 18 now includes an application that helps new users with the initial setup of their system.