Coder Social home page Coder Social logo

rhinstaller / initial-setup Goto Github PK

View Code? Open in Web Editor NEW
25.0 17.0 32.0 636 KB

The Initial Setup utility takes care of post-installation configuration of an installed system.

License: GNU General Public License v2.0

Makefile 9.53% Shell 12.77% Python 77.70%

initial-setup's Introduction

Initial Setup

Build status

Translation status

Initial Setup is an application that can run during the first start of a newly installed computer and makes it possible to configure the computer according to the needs of the user.

As most of the configuration options are already present during the OS installation in Anaconda, Initial Setup mainly hosts options that need to be presented during the first start, such as displaying the EULA on RHEL. Initial Setup is also often used to create a user account, as many systems are often automatically installed with kickstart and the user is only expected to create their own user account once the newly installed machine is started for the first time.

Still, while Initial Setup normally does not have many options available, if the firstboot --reconfig kickstart command is provided in the installation kickstart, Initial Setup will show all configuration options available. This is usually used for OEM OS installations, where an OEM installs the computer, which is then shipped to the end user which uses Initial Setup for the final configuration of the operating system.

Architecture

Initial Setup is basically just a thin wrapper for running spokes from Anaconda. Still, it has its own Hub, one spoke (the EULA spoke) and a translation domain ("initial-setup").

As with Anaconda, Initial Setup has both a GUI and TUI version and the package is split into a core and GUI & TUI sub packages.

As Initial Setup needs to run during the early boot, it is started by a systemd unit configured to start before the normal login screen.

On RHEL7 Initial Setup is by default followed by the legacy Firstboot utility, which at the moment does not have any plugins by default and should thus terminate immediately. If the given OS instance uses the Gnome 3 desktop environment, Firstboot is followed by the Gnome Initial Setup(GIS), which enables the user to customize their computer even more.

On RHEL8 Firstboot is no longer available and thus Initial Setup is followed by Gnome Initial Setup on RHEL Workstation installs and directly with the login screen elsewhere.

On Fedora Initial Setup is followed directly by GIS, provided Gnome 3 is installed.

  • RHEL8: IS -> [GIS]
  • RHEL7: IS -> Firstboot -> [GIS]
  • Fedora: IS -> [GIS]

Addons

Like Anaconda, also Initial Setup can be used to host third party addons - flexible yet powerful modules that can configure the system based on data in kickstart while presenting a nice UI to the user. Addons can have a GUI, TUI or can be headless, working only with data in their kickstart section or from other sources.

For comprehensive documentation about Anaconda/Intial Setup see the "Anaconda Addon Development Guide" by Vratislav Podzimek:

Testing

To start tests please first install package tmt-all to your system and call:

make test

First time you call the above it will setup all dependencies and then execute the tests. If you need to do the initialization of the tests again, please run:

make test-cleanup

In case you want to use custom Anaconda code, please provide a COPR repository with the Anaconda (can be easily created by packit copr-build in the Anaconda branch) and execute:

make test TMT_COPR_ANACONDA_REPO=<owner/anaconda>

Please note, you need to call make test-cleanup first to re-initialize test environment with your custom Anaconda code.

Contributing

initial-setup's People

Contributors

adamwill avatar aleasto avatar conan-kudo avatar dashea avatar fabiand avatar jcpunk avatar jkonecny12 avatar jwrdegoede avatar kenyon avatar kkoukiou avatar lkundrak avatar m4rtink avatar marsik avatar mkutlak avatar mulkieran avatar nullr0ute avatar poncovka avatar rvykydal avatar sjenning avatar tstellar avatar vladimirslavik avatar vojtechtrefny avatar vpodzime avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

initial-setup's Issues

Re-evaluate libreport dependency

I’m having difficulty tracing down the reason for the python3-libreport dependency. No code seems to use the bindings, yet this keeps popping up whenever we are planning to break binary compatibility.

Could we remove it?

please migrate to the new Fedora translation platform

Hello, the Fedora project migrates its translation platform to Weblate [1].

This tool directly interact with your git repository, and requires us to know:

  • [mandatory] which branch is your development branch?
  • [mandatory] have you merged latest translation from Zanata and locked the project?
  • [info] Weblate will handle updates when pot file changes, don't edit po files for this [2]
  • [optional] what is the license of translation? (please use a code from https://spdx.org/licenses/)
  • [optional] do you have any announcement/warning you would like to display to the translators? (it will be displayed in Weblate)
  • [optional] do you need us to activate any specific checks? (this is a setting per component [3])
  • [optional] do you need us to automatically detect new translation files? (typical usecase: website translation with one translation file per page)

Please note:

  • For github hosted projects, Weblate open pull request. For other project, you'll have to add a key to allow commits.
  • In Weblate's vocable, one project is a group of component. Each component is a translation file. You can have many projects or many components or both.
  • You can change your mind over time, just reach [email protected]

[1] https://communityblog.fedoraproject.org/fedora-localization-platform-migrates-to-weblate/
[2] https://docs.weblate.org/en/latest/admin/continuous.html#avoiding-merge-conflicts
[3] https://docs.weblate.org/en/latest/user/checks.html#translation-checks

About Me/Account Name phase on intitial setup

Enterprise login button not self explanatory :-

After clicking on the button,

Screenshot 2020-07-08 at 4 41 43 PM

We are taken here but, the button is just slightly gray: it slightly confused me about the function of the button:

Screenshot 2020-07-08 at 4 41 53 PM

Proposed change:

We can change the text to: "Personal Account" "Non-Enterprise" etc
Or if we are following this style and don't change the text perhaps we could put a checkbox like tick mark to show that current page is "Enterprise Login ✅ "

No supported window manager found

If the initial setup cannot find a supported window manager, it quits with a message: Initial Setup finished successfully, disabling. That doesn't seem right.

The shortcut key function is not normal

Description of problem:
When I use the shortcut key to select the license agreement, I find that the shortcut key function is not normal.
Version-Release number of selected component:
CentOS-8.5.2111-aarch64-dvd1.iso
How reproducible:
ALWAYS
Steps to Reproduce:
1、Install a system with zh_CN.utf-8
cent1
cent2
2、Enter the system and select the license agreement,select agree to return to the main interface
3、press "Alt+Q,Alt+F"
Expected results:
Exit or enter the system
Actual results:
no response to the license agreement
cent3
Additional info:
Other shortcut keys function normally,except "Alt+Q,Alt+F"

Fedora 35 Xfce German language installation - INITIAL SETUP

environment

With "Everything netinstall ISO file" at start of Fedora 35 install screen I selected German language, afterwards Xfce as desktop environment. I will stick the English terms to keep it simple.
After installation was done it remained at "INSTALLATION PROGRESS" window. In the upper right corner you can read "FEDORA 35 INSTALLATION". In the lower right corner I pressed the [Reboot System] button. After reboot the "INITIAL SETUP" screen was shown. It does not have items, hence it skips automatically after some seconds.

questions

  • Is the displayed "INITIAL SETUP" screen for Xfce an oversight? For "Fedora Workstation" installation the "INITIAL SETUP" screen is not shown.

In the "INITIAL SETUP" screen in the lower right corner I noticed a spelling mistake (abschliessen -> abschließen). I fixed it at:
https://translate.fedoraproject.org/translate/initial-setup/master/de/?offset=1&q=FINISH+CONFIGURATION

Thank you for your help.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.