Wiki:
https://fedoraproject.org/wiki/Changes/BuildAtomicDesktopsWithImageBuilder

Discussion Thread: https://discussion.fedoraproject.org/t/179631

**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 ==

We will switch the builds of the Fedora Atomic Desktop ISOs over from
`lorax` to `image-builder`. Additionally, we will introduce extra artifacts
(`qcow2`, raw image) for those variants where an out-of-the-box setup is
available.

== Owner ==

* Name: [[User:supakeen| Simon de Vlieger]], [[User:Siosm|Timothée Ravier]]
* Email: [email protected], [email protected]

== Detailed Description ==

Currently the Fedora Atomic Desktops (Silverblue, Kinoite, Sway Atomic,
Cosmic Atomic, Budgie Atomic) are built using `lorax`. We've slowly been
reducing our usage of `lorax` over time; migrating mostly to `kiwi` for
live media and disk images, and `image-builder` for artifacts that require
`ostree` or `bootc`-based content.

The Fedora Atomic Installers are `boot.iso`'s with an embedded
`ostree`-commit. These are nearly identical to Fedora IoT installer ISOs
which are already produced with `image-builder`.

For this change proposal we will switch over the pungi configuration for
the above listed variants to build their ISOs with `image-builder`,
reducing `lorax` usage more.

Additionally, since `image-builder` can produce multiple other types of
artifacts out of `ostree`-commits we will introduce a `qcow2` image for
Fedora Silverblue and Fedora Kinoite and a `raw` image for those variants
(but only for `aarch64`) to be used with `arm-image-installer` for users of
single board computers (such as the Raspberry Pi).

We would love to also enable `qcow2` and `raw` images for the other Fedora
Atomic Desktop variants but we are blocked on Anaconda's `initial-setup`
not working ([https://github.com/rhinstaller/initial-setup/pull/156
upstream issue]).

If this gets resolved before Beta Freeze we could potentially also enable
the additional artifacts for those.

== Feedback ==

None yet.

== Benefit to Fedora ==

With this change and thhttps://www.youtube.com/shorts/l4E_5Fp1v14e
additional (unrelated, but in the same area) change to [
https://fedoraproject.org/wiki/Changes/ModernizeBootISO Modernize the
boot.iso] we will reduce our usage of `lorax` and simplify our deliverable
process to be done by two tools, instead of the current three.

It will also enable (in the future) to migrate the Fedora Atomic Desktops
to be `bootc`-based either in Koji, or potentially in Konflux depending on
the timing.

The availability of `qcow2` images will make 'testdriving' Fedora Atomic
Desktops easier as users can immediately spin up a virtual machine with
them. In the same fashion, the availability of `raw` images will make it
more feasible for users to run Fedora Atomic Desktops on their `aarch64`
single board computers.

== Scope ==

* Proposal owners:
** Implement the embedding of flatpaks in `image-builder`.
** Implement the Fedora Atomic Desktop installers and disk images.
* Other developers:
** Review fedora-pungi pull-requests.
* Release engineering: [
https://forge.fedoraproject.org/releng/tickets/issues/13170 #13170]
* Policies and guidelines: N/A (not needed for this Change)
* Trademark approval: N/A (not needed for this Change)
* Alignment with the Fedora Strategy:
** Easier local builds and more artifacts for Fedora Atomic Variants make
them more easily available.
** Alignment with the RHEL and CentOS build processes (which use
`image-builder`).
** Alignment with `bootc`-deliverable conversion (which uses
`image-builder`) easies future migrations.

== Upgrade/compatibility impact ==

None.

== Early Testing (Optional) ==

No.

== How To Test ==

Once the relevant pungi changes have been made Fedora Rawhide composes will
contain new ISOs. These can be used in the same fashion as current ones; so
testing would consist of ensuring that they behave functionally the same
after that point.

The new artifacts will also be part of composes after the same point; users
could download and try them out :)

== User Experience ==

User experience for Fedora Atomic Desktops will not change. A new user
experience will be available (`qcow2`, `raw`).

== Dependencies ==

There are no dependencies. The work for this change proposal *does* touch
the same areas as the [
https://fedoraproject.org/wiki/Changes/ModernizeBootISO modernization work
for the boot.iso] and might simplify the implementation of that change
proposal but is not a prerequisite.

== Contingency Plan ==

* Contingency mechanism: Revert pungi configuration changes.
* Contingency deadline: Beta freeze.
* Blocks release? No.

== Documentation ==

We will be documenting local builds of Fedora Atomic Desktops in the Fedora
Atomic Desktops documentation as part of this change; though likely *after*
the contingency point.

== Release Notes ==

N/A
-- 
_______________________________________________
devel-announce mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/[email protected]
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue
-- 
_______________________________________________
devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/[email protected]
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue

Reply via email to