bootc-image-builder icon indicating copy to clipboard operation
bootc-image-builder copied to clipboard

Flatpak preinstall support

Open hanthor opened this issue 4 months ago • 10 comments

Need to document/enable preinstallation flatpaks as part of an anaconda-iso install.

hanthor avatar Aug 05 '25 07:08 hanthor

As a customization? As part of the container being converted into media?

supakeen avatar Aug 08 '25 06:08 supakeen

As a customization? As part of the container being converted into media?

Ideally the image can include some preinstall list of flatpaks and image builder will deploy them to the disk image or to anaconda depending on the type

hanthor avatar Aug 08 '25 07:08 hanthor

Just to make this clear: this makes the flatpaks not part of the bootable container image but per-deployment state?

supakeen avatar Aug 08 '25 07:08 supakeen

idk RHEL has this https://gitlab.com/redhat/centos-stream/rpms/redhat-flatpak-data/-/tree/c10s

https://github.com/rhinstaller/anaconda/pull/6056

hanthor avatar Aug 08 '25 07:08 hanthor

Ping

bam80 avatar Nov 02 '25 17:11 bam80

I'm still unclear on the exact functionality that this should entail. From the linked PR (I did read up on it back then) it seems that it concerns the dvd installer to contain a set of flatpaks that can be (optionally) installed into the system (through dnf?).

How and what should it do for a bootc Anaconda ISO using the ostreecontainer (or soon) the bootc kickstart verb; and how would it mesh with the Anaconda environment itself becoming a bootc container?

CC @cgwalters, perhaps you know more about what is needed/wanted here?

supakeen avatar Nov 02 '25 21:11 supakeen

I'm going to assign this to myself and try to dig a bit deeper. It was pointed out in our Matrix channel again so there's clearly a bunch of interest.

There's a few options here but we probably need to cover both the installer(s) and disk image use cases. The same issues likely need to be solved for logically bound images to also be available earlier (?).

For the installer we probably want to have the flatpak's as some archive format somewhere on the ISO and then trigger Anaconda's recently gained flatpak pre install support. I'm not sure if the flatpak pre install support in Anaconda is compatible with the ostreecontainer and future bootc verbs that we use.

We now also have an installer where the installer itself is a bootable container, in that case the pre-install flatpaks would need to be put into the installer container.

For building disk images image-builder would need to do similar things.


All of this makes me wonder; since we all share bootc install to-filesystem in Anaconda, Titanoboa, and image-builder if this should instead live on that level. Where it can (optionally) fill in both logically bound images and preinstall.d flatpaks either by pulling from the network or other storages as given in arguments?

supakeen avatar Nov 05 '25 11:11 supakeen

For Anaconda at least it seems more straight forward if image-builder puts the things into the right place on the installer and we make the bootc payload aware of the flatpak side-payload. The flatpak side-payload (which handles flatpak pre-installation) in Anaconda is currently only supported for the DNF payload.

supakeen avatar Nov 05 '25 11:11 supakeen

https://issues.redhat.com/browse/HMS-6659

achilleas-k avatar Nov 11 '25 12:11 achilleas-k

ftr, @mvo5 created a small experiment here: https://github.com/osbuild/bootc-image-builder/pull/1134

I wonder if this actually satistifes this request.

ondrejbudai avatar Nov 12 '25 17:11 ondrejbudai

flatpak install does not work for me from kickstart post script as commented in the above link

woprandi avatar Dec 03 '25 11:12 woprandi