Cannot Rebase to Local Image
Running
sudo bluebuild rebase ./recipes/recipe.yml
results in the following error.
Rebasing onto images built via the github workflow work just fine.
```...How to rebase back to normal fedora atomic?
Is this just a matter of rpm-ostree reset and then rebase to vanilla fedora?
Solution:
Pretty much. I'm unsure of where fedora keeps there public keys so if you can't find that, you might have to rebase to an unsigned image
Unable to get version via inspection
I'm building a custom image based on bazzite-nvidia:testing
`bluebuild build ./recipes/recipe.yml
INFO => Templating for recipe at ./recipes/recipe.yml
INFO => Retrieving OS version from ghcr.io/ublue-os/bazzite-nvidia:testing. This might take a bit...
Solution:
Unfortunately, no, currently the only way we can get the version information is through a label or through actually executing inside the image to get the information
rpm-ostree replace
Using the replace option with a repo that has the following appended
?arch=x86_64
, seems to break the module.
```
replace:
- from-repo: https://copr.fedorainfracloud.org/coprs/kylegospo/bazzite-multilib/repo/fedora-%OS_VERSION%/kylegospo-bazzite-multilib-fedora-%OS_VERSION%.repo?arch=x86_64...Solution:
Got the fix out in a PR (https://github.com/blue-build/modules/pull/351) and I tested the change on your recipe at that point in time. It appears to solve the issue
Can't install package via script?
Waveterm isn't in Fedora repos, doesn't have a flatpak, etc, but they do release an rpm file. So I made a script that
grep
s the URL and rpm-ostree install
s the latest rpm package. Logs say:
[14:09:18 g.i/k/charoite:latest] => #32 12.46 Installing 1 packages:
[14:09:18 g.i/k/charoite:latest] => #32 12.46 waveterm-0.8.11-1.x86_64 (@commandline)
[14:09:18 g.i/k/charoite:latest] => #32 13.38 Installing: waveterm-0.8.11-1.x86_64 (local)
And no errors, the image builds fine, but the application is nowhere to be seen when updating....Solution:
I've had this issue with other rpms that install to /opt. If that's the case, you need to use the optfix option in your recipe. You'll likely also need to modify the .desktop file so it appears in your menu.
Here's how I do it with enpass which installs to /opt/enpass/...:
In my recipe under the rpm-ostree module, I add:...
Debian/Ubuntu image with Ostree
Would it be possible to create a debian or ubuntu image with ostree like endless os?
https://github.com/dbnicholson/deb-ostree-builder
https://github.com/endlessm/eos-updater
https://github.com/go-debos/debos...
Solution:
also fyi, vanillaos is based on debian and abroot, and i have an experimental image building here https://github.com/xynydev/vanillin/
Can't update - skopeo error
When trying to run ...
rpm-ostree upgrade
, I get the following error:
error: Creating importer: Failed to invoke skopeo proxy method OpenImage: remote error: cryptographic signature verification failed: invalid signature when validating ASN.1 encoded signature
error: Creating importer: Failed to invoke skopeo proxy method OpenImage: remote error: cryptographic signature verification failed: invalid signature when validating ASN.1 encoded signature
Solution:
I'll copy my answer:
For anyone who encounters this, those are the steps to solve the issue:
Copy new cosign.pub from your repo to
/etc/pki/containers/$your_image_name.pub
...Build fails because of missing cosign private key
Was there a change in the github action 6.1.2 that affects the cosign signing secret? My github repo doesn't pick it up anymore after switching to 6.1.2. In the logs the `Run BUILD_OPTS=" tag differs from 6.1.1 to 6.1.2 (see images below)
Solution:
Ok, it works again after merging the dependabot branch into main. It apparently didn't get the secret in a different branch (which is weird, because it's a repository secret?)
vconsole.conf issue
I've been having some issues with the eurlatgr font + tuigreet (not drawing borders correctly) so I thought as a solution I could just place a modified vconsole.conf with another font chosen on my repo's /etc folder to be copied over with everything else. I did a fresh install of Sericea on a VM, rebased to my image, and saw that the font still remained eurlatgr despite the image building successfully and all my other files being there.
Is there a better way to do this automatically? Curious enough, I checked the vconsole.conf in /usr/etc and it did have the correct font set, I made sure to copy my files to /etc and not /usr/etc too...
crun : Depends: criu but it is not installable
My images haven't been successfully building since 2 days ago. Build fails at the
Build Custom Image
step. As far as I could see, nobody else seems to be having this problem.
https://github.com/mkkvcs/mkblue/actions/runs/11330376666/job/31508062969...Solution:
This should be fixed for you now
Can I download the material symbols using the font module?
these fonts:
https://fonts.google.com/download?icon.size=24&icon.color=%23e8eaed&icon.platform=web
I'm pretty sure I can download it, but I just came to confirm
```yaml...
Solution:
Yes, it is possible to download
%OS_VERSION% in containerfile snippets?
Is there a way to use the release version in a containerfile snippet?
For example:
```...
"Package Not Found" in rpm-ostree module
https://github.com/gerblesh/uhypr/actions/runs/11303630376/job/31440976360
Build seems to be failing when using too many repositories(?) in the rpm-ostree module. rpm-ostree seems to complaining about a package missing (
gui-scale-applet
)from the repos when it clearly does exist in the COPR for gui-scale-applet: https://copr.fedorainfracloud.org/coprs/bhh32/gui-scale-applet/ This is likely some form of upstream issue with rpm-ostree, possibly because the repositories aren't being fully updated attempting installing, or it could be something completely different...add rpm-fusion to my image?
is there any way i can create a script to install the rpm-ostree rpms to my image? i specifically need MPD to be installed by default but the change to negativo17 end up breaking that in my system
replace negativo17 with rpmfusion?
recently, it seems that the upstream ublue main images replaced the
rpmfusion
repo with negativo17
. my issue is that this repository only includes a really small set of applications, mostly just being used by ublue for patched mesa and the like. my issue is that this repo doesn't provide as many applications as rpmfusion or the ones i use, such as mpd
, and from the repo directly:
This repository is NOT compatible with RPMFusion, nor it does attempt to replace it as I have no interest in adding any software out there.so i'm trying to figure out, is there a clean way to remove
negativo17
and readd rpmfusion
? since it seems like they did replace some components with packages from that repo, and i'm not sure if simply removing the negativo repo and dropping in rpmfusion would mess around with anything.
...Solution:
- You can install RPMFusion like this:
```
rpm-ostree install \
https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-${OS_VERSION}.noarch.rpm \
https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-${OS_VERSION}.noarch.rpm...
How to change file permissions of an executeable pulled into an image
In my custom image I'm including the secureblue copr of Chromium, which doesn't ship with widevine included. That can be downloaded from google, but needs to be put into a directory in the read-only area, so it must be included in the image. I have done so with this script: https://github.com/Oakleafknight06/startingleaf/blob/main/files/scripts/install-widevine.sh
based on this blog post:
https://andreafortuna.org/2019/09/24/how-to-install-latest-widevine-plugin-on-chromium/
Which seems like it should work, but the file is not set as executeable properly. How should i do this?...
Custom Kernel with NVIDIA drivers
Is there an easy way to install nvidia drivers without forking kernel-cache and akmods? Preferably with nvidia container toolkit support.
The kernel seems to be working fine.
https://github.com/virt-10/blublu-base/blob/main/recipes/cachyos-kernel.yml
...
Solution:
I have given up on the cachyos kernel, but I did move my recipe to use the akmods module. Works well.
https://github.com/virt-10/blublu/blob/main/recipes/main/fsync-nvidia-open.yml...
1Password app nowhere to be found and ISO building
Hi, I have created my custom template based off bazzite-gnome-nvidia-open (https://github.com/michal-grzelak/bazzite-custom-dx) with some dev tools and few apps. One of those apps is 1Password and after installing the OS I cannot find it on the system. Weird thing, I tried to run rpm-ostree install 1password thinking it might not get installed and I get the message saying that it’s already installed (which is kind of expected given the recipe 🙂, see the screenshot).
Also a side question. I generate the ISO using the instruction provided here https://blue-build.org/learn/universal-blue/. I am confused with VARIANT env variable. For my case should it be Bazzite or Silverblue as in example?
Also when I don’t provide VERSION env variable (which is not in example), it tries to generate ISO for version 39 instead of the current 40, which is weird given that current Bazzite is based off v40. I have to manually put 40. Why is that?...
Solution:
The Variant envvar is the installers variant, and selects the branding and functionality of the installer.

Building custom ARM64 images?
Hello! Is it possible to build arm64 images with Blue-Build? If so, what should be changed in the build recipe or the GitHub workflow, based on the Blue-Build template?
I found this PR (https://github.com/blue-build/cli/pull/191) from the blue-build/cli repo mentioning ARM, but as far as I can see it's only adding support for building an ARM64 binary for the cli tool.
Or is it better to try building from scratch by writing a Containerfile? The docs about this topic aren't finished yet unfortunately (https://blue-build.org/how-to/from-scratch/), but this link seems to have some useful information: https://github.com/ublue-os/website/pull/688/files...
Lacking space within distrobox
Not sure whether this is a problem caused by the immutable file system or just a distrobox error, but when I run
ujust update
my davinciibox distrobox says that it has run out of space to install the packages in /usr:
```
The downloaded packages were saved in cache until the next successful transaction.
You can remove cached packages by executing 'dnf clean packages'....Solution:
ask on the ublue discord, davincibox github, or some distrobox community space if you can't figure it out