Prepare for removal of rpm-ostree and gaps vs bootc

Hello,

I had not been paying much attention to bootc till now, thinking of bootc as a drop-in replacement that does everything rpm-ostree does.

But hearing Jorge saying that the plan is to become “bootc-only” soon, I’ve been looking at commands I typically use and found a couple of things:

  1. Checking status no longer possible as simple user
❯ rpm-ostree status
State: idle
AutomaticUpdates: stage; rpm-ostreed-automatic.timer: no runs since boot
Deployments:
● ostree-image-signed:docker://ghcr.io/ublue-os/bluefin-dx-nvidia:stable
                   Digest: sha256:64f38a4e38b8492145d5d1de9f554d044fa57fb053532459b2e407d737c62283
                  Version: 41.20250223.1 (2025-02-23T06:09:12Z)
          LayeredPackages: igt-gpu-tools

  ostree-image-signed:docker://ghcr.io/ublue-os/bluefin-dx-nvidia:stable
                   Digest: sha256:64f38a4e38b8492145d5d1de9f554d044fa57fb053532459b2e407d737c62283
                  Version: 41.20250223.1 (2025-02-23T06:09:12Z)

  ostree-image-signed:docker://ghcr.io/ublue-os/bluefin-dx-nvidia:stable
                   Digest: sha256:36a7d16d2a92709c29387d2b49d7c48498f0be9e0cedaca2deeab8ff1639a1a5
                  Version: 41.20250216.1 (2025-02-16T06:09:36Z)
                   Pinned: yes

~ 
❯ bootc status
ERROR Status: Initializing storage: Acquiring sysroot: Preparing for write: Querying root privilege: This command must be executed as the root user

Why does bootc need write access to report status? This does not seem correct?

  1. db subcommand missing

I use this snippet in my fish login to notify my when an update is pending:

❯ rpm-ostree db diff | head -n 2 | grep -B1 "pending" || echo "No update staged"
No update staged

However bootc does not have a “db” subcommand at all. How would I go about doing the same with bootc?

❯ bootc db diff | head -n 2 | grep -B1 "pending" || echo "No update staged"
error: unrecognized subcommand 'db'

Usage: bootc <COMMAND>

For more information, try '--help'.
No update staged
1 Like

The sudo thing we’re working on, sudo bootc status, etc is what you have to do right now. If there’s no unique string in a staged image that users can use then we can file an issue with bootc for them to add it.

All RPM actions afaik?

  • layer packages
  • override remove them
  • override replace them (locally, Bodhi URL)

I think dnf will replace rpm commands.

2 Likes

The one I’m unsure of is what replaces the kargs subcommand?