A service has an installation phase, and the installation phase has an status:
-
Installation phases: probe, install
-
Phase status: doing, done, error
-
Progress: represents the progress of a phase in doing state
D-Installer needs to offer a D-Bus API for bi-directional communication with the client. Sometimes, the backend has to wait until the client provides some information. A typical case is when requesting for a LUKS password meanwhile the storage system is been probed.
The minimal requirements for the communication API are:
YaST provides three systemd services: YaST2-Firstboot.service YaST2-Second-Stage.service and autoyast-initscripts.service. The first two services belong to yast2-installation and the last one to autoyast2-installation.
The service YaST2-Firstboot.service takes care of running YaST Firstboot. Nowadays this service only does that, so it seems misplaced in yast2-installation. Maybe it should be moved to yast2-firstboot. Anyway, the service would fail if yast2-firstboot is not installed.
The service YaST2-Second-Stage.service runs the AutoYaST second stage on the first boot after an AutoYaST installation/upgrade. And autoyast-initscripts.service runs after the second stage in order to execute customs scripts.
The dialog for selecting modules and extensions consists on a scrollable list of checkboxes. Each checkbox has 3 possible states: selected, auto-selected and unselected. Checboxes can be disabled too. When a checkbox is checked, its dependencies are auto-selected if they are not selected yet. Similarly, when a checkbox in unchecked, its dependencies are deselected if they are auto-selected. Moreover, the details of the currently selected item are shown in a Details box below the list of checkboxes.
This dialog presents some usability problems:
When there are a lot of encrypted devices, the user is asked to provide the password for every LUKS. This can be very annoying in some typical cases. For example, if the user only wants to activate one device, or if all devices use the same password.
Possible use cases
The popup to ask for the password should provide options to cover such use cases.