Unable to update Kinoite from the current system

TL;DR: Had to run rpm-ostree upgrade from a pinned previous system due to error

error: Writing rpmdb: Failed to update rpmdb (rpmtsRun code -1)

I know so little that I initially asked this question on the universal blue forums. XD

I’ve never used Linux as a desktop for work before, so I was starting to get a little uptight when I wasn’t getting any new updates staged for a couple weeks. Had some slack time Friday so I decided to get into it.

I’m fuzzy on a few details so please bear with me.

This system started out in November as Bazzite (since that’s what I’d been trying at home) but I rebased to Kinoite about a month prior to the Fedora 42 release. Rebase went fine, no issues after.

Two weeks ago, the command

$ rpm-ostree status

looked fine and gave the correct results except for an error at the top. I can’t remember what this said exactly, but from my history it seems it had to do with rpm-ostreed-automatic.service, since I looked at both the then-current status of that service as well as the journal entries for rpm-ostreed.service.

Anyway, in my (admittedly limited) experience atomic desktop generally does the right thing so I left it alone. Shut down at the end of the week and when I brought the system back up last Monday, the error was gone. Still didn’t have a new system staged, though.

Flash forward to last Friday when I checked github and I see that there have been multiple updates almost every day for kinoite-nvidia, so I felt I had to try something to get unstuck. I forced the issue with

$ sudo rpm-ostree upgrade

which led to the error about rpmdb at the top of this post. No other errors in the output.

Googled a bit and tried running

$ sudo rpm-ostree cleanup -m
$ sudo rpm-ostree refresh-md

Ran the upgrade again, got the same error.

Finally, for a goof I rebooted into system 1, where I was able to upgrade just fine.

Thankfully, everything I need for work was working in the new system 0, so I pinned that. The old system 0…disappeared? Idk.

Am I fixed? Is there anything else I should check? Here’s my current rpm-ostree status output:

State: idle
AutomaticUpdates: stage; rpm-ostreed-automatic.timer: no runs since boot
Deployments:
● ostree-image-signed:docker://ghcr.io/ublue-os/kinoite-nvidia:latest
Digest: sha256:c2e81058318f34f0bf82a9537a978869144f8672870e2001ecc6987e2a54892b
Version: 42.20250509.2 (2025-05-09T12:53:26Z)
LayeredPackages: containerd.io docker-buildx-plugin docker-ce docker-ce-cli docker-compose-plugin guestfs-tools libvirt-daemon-config-network
libvirt-daemon-kvm libvirt-nss python3-libguestfs qemu-kvm virt-install virt-manager virt-top virt-viewer
LocalPackages: veracrypt-1.26.20-1.x86_64 virtio-win-0.1.266-1.noarch
Pinned: yes

ostree-image-signed:docker://ghcr.io/ublue-os/kinoite-nvidia:latest
Digest: sha256:dfe59750925ca6c5be73d74a51bed15b6e15e07e1edb1b33032fb9ebc4e97b9f
Version: 42.20250424.0 (2025-04-25T04:15:05Z)
LayeredPackages: containerd.io docker-buildx-plugin docker-ce docker-ce-cli docker-compose-plugin guestfs-tools libvirt-daemon-config-network
libvirt-daemon-kvm libvirt-nss python3-libguestfs qemu-kvm virt-install virt-manager virt-top virt-viewer
LocalPackages: veracrypt-1.26.20-1.x86_64 virtio-win-0.1.266-1.noarch
Pinned: yes

ostree-image-signed:docker://ghcr.io/ublue-os/kinoite-nvidia:latest
Digest: sha256:f304f7ec8614537b5b1ef6121cdad6c2c720a9c33738ddd2c2d30a2d58a71b78
Version: 41.20250403.0 (2025-04-04T04:10:40Z)
LayeredPackages: containerd.io docker-buildx-plugin docker-ce docker-ce-cli docker-compose-plugin guestfs-tools libvirt-daemon-config-network
libvirt-daemon-kvm libvirt-nss python3-libguestfs qemu-kvm virt-install virt-manager virt-top virt-viewer
LocalPackages: veracrypt-1.26.20-1.x86_64 virtio-win-0.1.266-1.noarch
Pinned: yes

Thanks all.

You don’t seem to be on the official Kinoite, but rather on a U-Blue provided image.

1 Like

Well heck. Thank you. No doubt this came from my misapprehension that universal blue did all atomic desktops.

If you wouldn’t mind another question, would I rebase to official kinoite via something like the following command?

$ rpm-ostree rebase fedora:fedora/42/x86_64/kinoite

Exactly how does one discover these system URLs?

[edit #1] I think I may have found the answer to this one. The below command seems to give me a whole list.

$ ostree remote refs fedora

And is there a kinoite-nvidia like how there’s a bazzite-nvidia?

The only kinoite-nvidia is the UBlue one that you were previously on.

Fedora, by policy, only provides 100% FOSS software, so there won’t be a Fedora-provided “kinoite-nvidia” until there’s a fully open-source nVidia driver.

1 Like

That would be the rebase command if you’d be on a different Fedora Atomic version (e.g. Silverblue, Sway Atomic etc). I am not sure if this is possible from a UBlue image, given that there a differences on how those images are being created/managed/deployed (probably via bootc).

The relevant documentation regarding Kinoite would be this one: