From Fedora Project Wiki
Line 9: Line 9:


== Summary ==
== Summary ==
rpm-ostree upstream development is focusing on "unified core" mode and the previous mode is being deprecated. Fedora IoT is the last rpm-ostree based Fedora edition using this older mode with SilverBlue and Kinoite making the change  to "unified core" in Fedora 39. The main advantage of building with unified core mode is that it is stricter and safer, while enabling some post processing steps to happen during or after the image build.
rpm-ostree upstream development is focused on "unified core" mode with the previous mode is being deprecated. Fedora IoT is the last rpm-ostree based Fedora edition using this older, deprecated mode with SilverBlue and Kinoite making the change  to "unified core" in Fedora 39. The main advantage of building with unified core mode is that it is stricter and safer, while enabling some post processing steps to happen during or after the image build.


== Owner ==
== Owner ==

Revision as of 13:46, 30 November 2023

Idea.png
Guidance
For details on how to fill out this form, see the documentation.


Build Fedora IoT using rpm-ostree unified core mode

Important.png
This is a proposed Change for Fedora Linux.
This document represents a proposed Change. As part of the Changes process, proposals are publicly announced in order to receive community feedback. This proposal will only be implemented if approved by the Fedora Engineering Steering Committee.

Summary

rpm-ostree upstream development is focused on "unified core" mode with the previous mode is being deprecated. Fedora IoT is the last rpm-ostree based Fedora edition using this older, deprecated mode with SilverBlue and Kinoite making the change to "unified core" in Fedora 39. The main advantage of building with unified core mode is that it is stricter and safer, while enabling some post processing steps to happen during or after the image build.

Owner


Current status

  • Targeted release: Fedora Linux 40
  • Last updated: 2023-11-30
  • [<will be assigned by the Wrangler> devel thread]
  • FESCo issue: <will be assigned by the Wrangler>
  • Tracker bug: <will be assigned by the Wrangler>
  • Release notes tracker: <will be assigned by the Wrangler>

Detailed Description

For more details about the difference between the two modes, you can read the upstream issue: https://github.com/coreos/rpm-ostree/issues/729. See also the history in https://pagure.io/workstation-ostree-config/issue/137.

In addition to the advantages listed above, unified core support is required for adding bootupd integration to Fedora IoT and to align with other ostree editions already using this mode in Fedora.

Related changes:

Feedback

Benefit to Fedora

The old mode in rpm-ostree is not maintained anymore, less tested and thus prone to bugs. Moving to the new mode will unify IoT with what is used to build Fedora CoreOS, SilverBlue and Kinoite as well as benefit from the additional testing of those editions. This will also remove maintenance burden on the rpm-ostree project as they will be able to remove the old code. The new mode also makes composes work the same on the server side and the client side and makes them safer by more strictly confining scriptlets execution.

Scope

  • Proposal owners: Testing with the new mode to ensure there are no regressions.
  • Other developers: N/A
  • Release engineering: N/A
  • Policies and guidelines: N/A (not needed for this Change)
  • Trademark approval: N/A
  • Alignment with Community Initiatives: N/A

Upgrade/compatibility impact

  • There will be no impact to end users, upgrades will work the same as previous releases

How To Test

  • Upgrade to Fedora 40 IoT Edition

User Experience

  • There will be no impact to users.

Dependencies

N/A

Contingency Plan

  • Contingency mechanism: Revert to older non-unified core mode.
  • Contingency deadline: N/A (not a System Wide Change)
  • Blocks release? N/A (not a System Wide Change)

Documentation

N/A (not a System Wide Change)

Release Notes

N/A