Build Fedora CoreOS using Containerfile
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
Define Fedora CoreOS as a Containerfile
and build it using podman build
. The Containerfile
will build FROM
the Fedora bootc image.
Owners
- Name/Email: Jonathan Lebon, jonathan@jlebon.com
- Name/Email: JB Trystram, jbtrystram@redhat.com
Current status
- Targeted release: Fedora Linux 43
- Last updated: 2025-07-07
- [ Announced]
- [ Discussion thread]
- FESCo issue:
- Tracker bug:
- Release notes tracker:
Detailed Description
Currently, Fedora CoreOS (FCOS) is built using rpm-ostree compose tree
to build an OSTree commit which is then converted into an OCI image.
The goal of this enhancement is to switch FCOS to be built via a Containerfile instead.
Relationship to Fedora bootc
FCOS is already today sharing manifest definitions with Fedora bootc via a git submodule. This change will make FCOS instead more explicitly build FROM
the Fedora bootc image using the “from scratch” flow. One can think of this change then as switching from Fedora bootc and FCOS being siblings, to FCOS becoming a child of Fedora bootc.
Feedback
Benefit to Fedora
This makes the FCOS build process become a standard container image build, as advocated by the Fedora bootc project. Currently, building FCOS requires using a custom tool, CoreOS Assembler. With this change, anyone with podman
installed would be able to build FCOS. This in turn means that it’s easier for both users and pipelines to build it. A concrete example is our future plans to build FCOS in the Fedora Konflux instance.
Scope
-
Proposal owners: describe FCOS as a Containerfile, adapt tooling and pipelines support building FCOS via this Containerfile.
-
Other developers: Hopefully nothing!
-
Release engineering: Hopefully nothing!
-
Alignment with the Fedora Strategy: yes, this falls under the “Technical Innovation” theme, which lists Image Mode as a Focus Area.
Upgrade/compatibility impact
Ideally none. The goal is to have no end user-visible changes. Fedora CoreOS content will not meaningfully change.
How To Test
Once ready, booting or updating to an FCOS built via Containerfile.
User Experience
This change should not be visible to end users.
Contingency Plan
- Contingency mechanism: Proposal owners will keep building FCOS using the current approach (calling
rpm-ostree compose tree
directly). Note that the way this is implemented, both approaches will be supported simultaneously as we work on rolling out this change in our build processes. - Contingency deadline: N/A (not a System Wide Change)
- Blocks release? No
Documentation
Main discussion in https://github.com/coreos/fedora-coreos-tracker/issues/1861.
N/A (not a System Wide Change)
Release Notes
Last edited by @amoloney 2025-07-10T11:26:07Z
Last edited by @amoloney 2025-07-10T11:26:07Z