We won't ship systemd officially in 22.04, hence remove it from the UI.
However it's still there and distributed and can be enabled manually.
Co-authored-by: Didier Roche <didrocks@ubuntu.com>
Grow a new API for enabling/disabling systemd experimental support. We
do this by chaining a specific command= in the boot section.
We preserve the user customized command= content when systemd
experimental support is not enabled.
Co-authored-by: Jean-Baptiste Lallement <jean-baptiste@ubuntu.com>
Shows immediately the summary page. Before, this one was making a GET
request to the server, which was stuck on any long running command in
the controller.
Now, affect correctly the identity in memory and reuse it if needed.
Show a progress message while the configuration is happening and replace
it with a "completed" text on success.
Co-authored-by: Jean-Baptiste Lallement <jean-baptiste@ubuntu.com>
We previously only went on this page when DONE or in ERROR state. Allow
now to be in any state as we switch to it as soon as possible.
Co-authored-by: Jean-Baptiste Lallement <jean-baptiste@ubuntu.com>
1. rebase with main and update autoinstall-system-setup.yml
2. provide a more unified indent style
3. update get_userandgroups() to the dropped one
4. fix the problematic os action
5. simply asignments
6. assign default_loader a default value
7. provide a type-to-file dict in wsl_conf
8. provide stderr info when providing error in creating user
9. update schema and example files
There was some remaining duplicated fields in the controllers and models
between base and advanced configuration, which made the code crash.
Co-authored-by: Didier Roche <didrocks@ubuntu.com>
On non systemd systems (ie WSL) the progress view is always empty. Thus
this view is removed and the summary (formerly overview) view becomes
the last page of the setup with the reboot button. This button is
displayed dynamically when setup is complete.
Co-authored-by: Didier Roche <didrocks@ubuntu.com>
The previous composition version had some flaws due to multiple
instances of a given Field with different addresses when reinstalled in
the parent class. This caused the field validation validate_ to not work
as it was not taken the expected referenced values.
Instead of duplicating the code, we use an inherited version, taking and
overriding only our desired fields.
We still need to derive WSLIdentityView from the base class instead of
IdentityView, as this is what is instantiating the form.
(WSLIdentityForm instead of IdentityForm).
Co-authored-by: Jean-Baptiste Lallement <jean-baptiste@ubuntu.com>
The previous composition version had some flaws due to multiple
instances of a given Field with different addresses when reinstalled in
the parent class. This caused the field validation validate_ to not work
as it was not taken the expected referenced values.
Instead of duplicating the code, we use an inherited version, taking and
overriding only our desired fields.
We still need to derive WSLIdentityView from the base class instead of
IdentityView, as this is what is instantiating the form.
(WSLIdentityForm instead of IdentityForm).
Co-authored-by: Jean-Baptiste Lallement <jean-baptiste@ubuntu.com>
This controller and view inherits from the subiquity identity, but
remove the "hostname" field. We are using composition over inheritance
for identityController as the UI builder is basing on the order of
declared elements as class variable and we can’t override that in the
metaclass when inheriting.