Add Fedora Auto Firstboot Services to desktop variants
Summary
Add fedora-autofirstboot
to desktop variants to run a predetermined set of tasks on first boot after post installation, notably installing codecs and cleaning up installer packages from the installed system.
Owner
- Name: Neal Gompa
- Email: ngompa13@gmail.com
Current status
- Targeted release: Fedora Linux 39
- Last updated: 2023-07-30
- devel thread
- FESCo issue: #2908
- Tracker bug: #2152200
- Release notes tracker: #936
Detailed Description
fedora-autofirstboot
is a collection of scripts that invoke on firstboot of a freshly installed system to run a set of predetermined tasks. It also provides a framework for third-parties to introduce their own firstboot tasks to run through this framework. The initial services included are to install OpenH264 and remove Anaconda.
Feedback
Based on the discussion with various stakeholders, this Change has been determined to be infeasible to implement.
The specific reasons for the lack of feasibility come down to the following issues:
- No way to safely handle auto-installation reliably with unreliable network connectivity
- No user interface handling for handling errors or failure modes
- Induces automatic slowdowns on RPM-OSTree systems due to forced layering
There is no easy way to resolve these issues without completely reworking the whole thing, so this Change is shelved.
Benefit to Fedora
The main benefit is to smooth out the new user experience for new Fedora Linux installations. In particular, we can deal with a long-standing sticking point that Anaconda remains installed on the user's machine when it is not useful to do so.
Scope
- Proposal owners:
- Add
fedora-autofirstboot
to the desktop kickstarts - Add a preset to
fedora-release
forfedora-autofirstboot.service
- Add
- Other developers: N/A (not needed for this Change)
- Release engineering: #11148
- Policies and guidelines: N/A (not needed for this Change)
- Trademark approval: N/A (not needed for this Change)
- Alignment with Objectives: N/A
Upgrade/compatibility impact
This will have no impact on upgraded systems, since the firstboot condition is not true in that case.
How To Test
- Install Fedora Workstation, KDE, etc.
- Reboot into installed environment
- Check to see
openh264
is installed andanaconda-core
is not.
User Experience
The first boot will be slightly slower because of these tasks running, though they should happily run in the background as other services start up, so it should not be noticeable.
Dependencies
The main dependency is fedora-release
, though we will need to ensure all udisks2
plugins get pulled in as dependencies for gnome-disks
and blivet-gui
so they don't get uninstalled when Anaconda is.
Contingency Plan
- Contingency mechanism: Remove
fedora-autofirstboot
from the kickstarts - Contingency deadline: Final freeze
- Blocks release? No
Documentation
There is not currently much documentation in the upstream project, though contributions are welcome.
Release Notes
Fedora Linux now ships with a framework for setting up first-boot services and uses this to install multimedia software and remove the installer software from the system after installation.