How to Set Custom Container Image Reference as Default in Custom Bazzite ISO?
Hi everyone,
I’m working on a personalized fork of Bazzite and want to provide a localized update experience for users in regions where GHCR is slow or inaccessible. My main goal is to have all updates (via
What I’ve done so far:
Even though
What I want:
I want users who install my custom ISO to have their system’s default update source (the rpm-ostree container reference) already set to my custom registry, without needing to run a manual
Questions:
Thanks in advance for your help!
I’m working on a personalized fork of Bazzite and want to provide a localized update experience for users in regions where GHCR is slow or inaccessible. My main goal is to have all updates (via
ujust update / rpm-ostree) come from my container registry (for example, an Alibaba Cloud registry), not from GHCR.What I’ve done so far:
- Successfully customized and built a new ISO based on my fork.
- Edited
build_files/image-infoto setIMAGE_REFto my own registry URL. - Confirmed that after installing from my custom ISO,
/usr/share/ublue-os/image-info.jsoncorrectly shows my registry as theimage-ref.
Even though
/usr/share/ublue-os/image-info.json has the correct image-ref, the system still pulls updates from the original GHCR container image after installation. Running ujust update or checking with rpm-ostree status shows that the deployment’s container reference is still GHCR, not my custom registry.What I want:
I want users who install my custom ISO to have their system’s default update source (the rpm-ostree container reference) already set to my custom registry, without needing to run a manual
rpm-ostree rebase after installation. In other words, I want the “default” update image to be my registry, baked into the ISO and deployment metadata.Questions:
- Which step in the build process determines the actual rpm-ostree container image reference that gets shipped in the ISO?
- How can I ensure that my custom image reference is what rpm-ostree uses by default after installation?
- Is there a recommended way to inject this, or a script or config file I should patch during image/container build?
Thanks in advance for your help!