I have been reading various documents and manuals around the web, regarding building a derived container image for my usecase.
Changes:
Add 2 copr repos
Install 3 packages
Install 3 RPMs locally (for a printer)
Some other modifications of files
I’ll manage other things via toolbox and sysexts.
I am used to rpm-ostree install; But want the extra customizability.
If I want to build my derived container image, with the modifications mentioned above, what should I do? (I know that I’ll have to “write a containerfile” etc… The exact commands to run?)
Importantly, will it auto-update? Like rpm-ostree does, staging the updates for next reboot (but no auto-reboots); Cadence be whatever…
Have you looked into Universal Blue? Starting with Fedora atomic images, it seems they do what you are trying to do. Specifically regarding customi zing with copr repos and adding your own packages, they provide a ready made template to build your own custom image which rebuilds daily at GitHub - ublue-os/image-template: Build your own custom Universal Blue Image! My apologies if you’ve already looked into that.
You might want to start from the Universal Blue images, which include auto-update functionality that doesn’t depend on GNOME Software, KDE Discover etc.
They have “base” images which start from the Fedora atomics (Silverblue, Kinoite etc) and add some fairly light “batteries included” stuff (auto-updates, codecs etc). These images are intended as the starting point for customisation, so they might fit your use case.
I am looking into that… But it seems too much to have an image published and uploaded on a registery just for my own purpose…
UBlue is great for distributing images to the world, but I need to have an image for my own specific purposes, too specific to be useful to anyone else… (The printer drivers especially…)
Also, I prefer a “minimal” base apart from what I want; So codecs etc… are not welcome to my system (I use flatpaks). So I’d have to re-filter out all the UBlue stuff…
I’d rather use quay.io/fedora/fedora-bootc:latest and add what I want.
Isn’t there a way in bootc to locally build a derived container image?
AND will it auto-update via the usual timers?
I don’t want codecs; They will be in flatpaks… I have my own Auto-update timers, but I might see into using bootc-fetch timers only; I want updates to be “staged” i.e. everything except the reboot.