Blame README.rst

Packit Service afaf57
Initial Setup
Packit Service afaf57
=============
Packit Service afaf57
Packit Service afaf57
.. image:: https://translate.fedoraproject.org/widgets/initial-setup/-/rhel-8/svg-badge.svg
Packit Service afaf57
    :alt: Translation status
Packit Service afaf57
    :target: https://translate.fedoraproject.org/engage/initial-setup/?utm_source=widget
Packit Service afaf57
Packit Service afaf57
Initial Setup is an application that can run during the first start
Packit Service afaf57
of a newly installed computer and makes it possible to configure the
Packit Service afaf57
computer according to the needs of the user.
Packit Service afaf57
Packit Service afaf57
As most of the configuration options are already present during the
Packit Service afaf57
OS installation in Anaconda, Initial Setup mainly hosts options that
Packit Service afaf57
need to be presented during the first start, such as displaying the
Packit Service afaf57
EULA on RHEL. Initial Setup is also often used to create a user account,
Packit Service afaf57
as many systems are often automatically installed with kickstart
Packit Service afaf57
and the user is only expected to create their own user account once
Packit Service afaf57
the newly installed machine is started for the first time.
Packit Service afaf57
Packit Service afaf57
Still, while Initial Setup normally does not have many options
Packit Service afaf57
available, if the firstboot --reconfig kickstart command is provided
Packit Service afaf57
in the installation kickstart, Initial Setup will show all configuration
Packit Service afaf57
options available. This is usually used for OEM OS installations,
Packit Service afaf57
where an OEM installs the computer, which is then shipped to the end user
Packit Service afaf57
which uses Initial Setup for the final configuration of the operating system.
Packit Service afaf57
Packit Service afaf57
Architecture
Packit Service afaf57
============
Packit Service afaf57
Initial Setup is basically just a thin wrapper for running spokes from Anaconda.
Packit Service afaf57
Still, it has its own Hub, one spoke (the EULA spoke) and a translation domain ("initial-setup").
Packit Service afaf57
Packit Service afaf57
As with Anaconda, Initial Setup has both a GUI and TUI version and the package is split
Packit Service afaf57
into a core and GUI & TUI sub packages.
Packit Service afaf57
Packit Service afaf57
As Initial Setup needs to run during the early boot, it is started by a systemd unit
Packit Service afaf57
configured to start before the normal login screen. On RHEL7 Initial Setup is by default
Packit Service afaf57
followed by the legacy Firstboot utility, which hosts the Subscription Manager plugin.
Packit Service afaf57
If the given OS instance uses the Gnome 3 desktop environment, Firstboot is followed by
Packit Service afaf57
the Gnome Initial Setup, which enables the user to customize their computer even more.
Packit Service afaf57
On Fedora Initial Setup is followed directly by GIS, provided Gnome 3 is installed.
Packit Service afaf57
Packit Service afaf57
* RHEL7: IS -> Firstboot -> [GIS]
Packit Service afaf57
* Fedora: IS -> [GIS]
Packit Service afaf57
Packit Service afaf57
Addons
Packit Service afaf57
======
Packit Service afaf57
Like Anaconda, also Initial Setup can be used to host third party addons - flexible
Packit Service afaf57
yet powerful modules that can configure the system based on data in kickstart
Packit Service afaf57
while presenting a nice UI to the user. Addons can have a GUI, TUI or can be
Packit Service afaf57
headless, working only with data in their kickstart section or from other sources.
Packit Service afaf57
Packit Service afaf57
For comprehensive documentation about Anaconda/Intial Setup see the
Packit Service afaf57
"Anaconda Addon Development Guide" by Vratislav Podzimek:
Packit Service afaf57
Packit Service afaf57
* https://rhinstaller.github.io/anaconda-addon-development-guide/
Packit Service afaf57
Packit Service afaf57
Contributing
Packit Service afaf57
============
Packit Service afaf57
* Initial Setup is released under GPLv2+
Packit Service afaf57
* upstream source code repository is on GitHub: https://github.com/rhinstaller/initial-setup
Packit Service afaf57
* for patch review Initial Setup uses the Anaconda Patches mailing list: https://lists.fedorahosted.org/mailman/listinfo/anaconda-patches
Packit Service afaf57
  (please note that you need to be subscribed to the list to send patches, due to previous issues with SPAM on the list)