How to check for update info and changelogs with rpm-ostree db

So, this is yet another of my blog posts related to updates, but this time it’s about rpm-ostree instead of dnf, because I migrated to Fedora Silverblue a while ago.

The reasoning for this post is that while you can see which packages are updated in Fedora Silverblue with GNOME Software, you can’t read the changelogs through it.

You also can’t see which packages are updated via CLI with dnf check-update or their changelogs with dnf updateinfo since you don’t have dnf on the host system at all.

And while you can see which packages were updated after running rpm-ostree upgrade, you don’t have a straightforward way to see it beforehand.

So after a bit of experimentation and reading the man pages I figured rpm-ostree db can be used for that, mainly rpm-ostree db diff.

So, for this blog post the goal is to:

  • Teach the user about rpm-ostree upgrade --check so they can check whther there is an update available (also useful because it tells you the commit id of the new deployment, which will be used later)
  • Teach the user that they can use rpm-ostree db list [commit] to show all packages on that specific commit
  • Teach the user to use rpm-ostree db diff [previous_commit] [new_commit] to check the changed packages between them (this will be used to check the updated, added or removed packages between the current commit and the one from the update)
  • Teach the user about adding --changelogs to the rpm-ostree db diff command to check the changelogs of the updates for that diff

It sounds good to me. With the caveat that I don’t know that much about rpm-ostree/silverblue myself. I’ll give this my +1.

If someone who knows more about these systems sees any problem with the commands, please do let us know.


I will give this one a +1 also. But I fear my rpm-ostree/silverblue experience is probably more limited than @glb. We may have to call in some extra help for the editing. :slight_smile:
Taiga Card #380 has been opened for this article.