IoT rpm-ostree update errors

For some reason my IoT has been failing to update. This error appeared suddenly over last few days…I haven’t installed anything in a few weeks since last successful update…any insight as to whats going on?

# rpm-ostree status
State: idle
Deployments:
● ostree://fedora-iot:fedora/stable/x86_64/iot
            Version: 33.20210315.0 (2021-03-15T09:50:41Z)
            BaseCommit: 68b43a2dd8e83b4eb58466801cefb06ed2e5fdc501bf5a2b2fd0098006ac99ef
            GPGSignature: Valid signature by 963A2BEB02009608FE67EA4249FD77499570FF31
            ...<snip>...

# ostree remote show-url fedora-iot 
  https://ostree.fedoraproject.org/iot/

All looks ok, but running rpm-ostree update results in:

2 metadata, 0 content objects fetched; 788 B transferred in 1 seconds; 0 bytes content written
Checking out tree 68b43a2… done
Enabled rpm-md repositories: fedora-cisco-openh264 updates fedora
rpm-md repo ‘fedora-cisco-openh264’ (cached); generated: 2020-08-25T19:10:34Z
rpm-md repo ‘updates’ (cached); generated: 2021-03-23T01:01:56Z
rpm-md repo ‘fedora’ (cached); generated: 2020-10-19T23:27:19Z
Importing rpm-md… done
Resolving dependencies… done
error: Could not depsolve transaction; 1 problem detected:
Problem: conflicting requests

  • package cockpit-machines-239-1.fc33.noarch requires libvirt-daemon-kvm, but none of the providers can be installed
  • package cockpit-machines-229-1.fc33.noarch requires libvirt-daemon-kvm, but none of the providers can be installed
  • package libvirt-daemon-kvm-6.6.0-5.fc33.x86_64 requires libvirt-daemon-driver-storage = 6.6.0-5.fc33, but none of the providers can be installed
  • package libvirt-daemon-kvm-6.6.0-2.fc33.x86_64 requires libvirt-daemon-driver-storage = 6.6.0-2.fc33, but none of the providers can be installed
  • package libvirt-daemon-driver-storage-6.6.0-5.fc33.x86_64 requires libvirt-daemon-driver-storage-iscsi-direct = 6.6.0-5.fc33, but none of the providers can be installed
  • package libvirt-daemon-driver-storage-6.6.0-2.fc33.x86_64 requires libvirt-daemon-driver-storage-iscsi-direct = 6.6.0-2.fc33, but none of the providers can be installed
  • package libvirt-daemon-driver-storage-iscsi-direct-6.6.0-5.fc33.x86_64 requires libiscsi, but none of the providers can be installed
  • package libvirt-daemon-driver-storage-iscsi-direct-6.6.0-2.fc33.x86_64 requires libiscsi, but none of the providers can be installed
  • package libiscsi-1.19.0-2.fc33.x86_64 requires librdmacm.so.1()(64bit), but none of the providers can be installed
  • package libiscsi-1.19.0-2.fc33.x86_64 requires librdmacm.so.1(RDMACM_1.0)(64bit), but none of the providers can be installed
  • package libiscsi-1.19.0-2.fc33.i686 requires libibverbs.so.1, but none of the providers can be installed
  • package libiscsi-1.19.0-2.fc33.i686 requires libibverbs.so.1(IBVERBS_1.0), but none of the providers can be installed
  • package libiscsi-1.19.0-2.fc33.i686 requires libibverbs.so.1(IBVERBS_1.1), but none of the providers can be installed
  • package librdmacm-34.0-1.fc33.x86_64 requires rdma-core(x86-64) = 34.0-1.fc33, but none of the providers can be installed
  • package librdmacm-31.0-1.fc33.x86_64 requires rdma-core(x86-64) = 31.0-1.fc33, but none of the providers can be installed
  • libibverbs-34.0-1.fc33.i686 has inferior architecture
  • libibverbs-31.0-1.fc33.i686 has inferior architecture
  • cannot install both rdma-core-34.0-1.fc33.x86_64 and rdma-core-33.0-2.fc33.x86_64
  • cannot install both rdma-core-31.0-1.fc33.x86_64 and rdma-core-33.0-2.fc33.x86_64
  • cannot install both libibverbs-34.0-1.fc33.x86_64 and libibverbs-33.0-2.fc33.x86_64
  • cannot install both libibverbs-31.0-1.fc33.x86_64 and libibverbs-33.0-2.fc33.x86_64

Replying to myself here for anyone that searches for this.

I don’t have a solution yet, but have confirmed that this issue exist with as part of base Fedora-IoT 33 packaging. This can be confirmed on a fresh-installation by trying rpm-ostree install cockpit-machines command, which results in same error message as above.

I am having similar problems installing some packages on a base Fedora-IoT 33 system (33.20210315.0 (2021-03-15T09:50:41Z)). Specifically I am trying to install akmod-nvidia from RPM Fusion, and it gets stuck on conflicts in rpm and rpm-build. I rebased to Fedora-IoT 34 and got things working, but obviously that’s not a permanent solution.

Hi, this is likely split base/layered versionlocked package problem (krb5-workstation) · Issue #415 · coreos/rpm-ostree · GitHub which has ultimately been resolved by adding the fedora-repos-archive package (aka /etc/yum.repos.d/fedora-updates-archive.repo aka updates-archive).

This is included by default in Fedora CoreOS and Silverblue, but I think not IoT yet.

You can try installing it manually. A fix would be a PR to this repo to add it here Tree - fedora-iot/ostree - Pagure.io

(though ultimately I hope IoT derives from FCOS, so it’d inherit stuff like this by default)

1 Like

Awesome - thank you! That seems to have worked. I didn’t realize there was an official archive repo available (I am more familiar with Debian and the like).

Thanks @walters and @aganders3 it worked for me also.

For reference of those searching:

rpm-ostree install https://download-ib01.fedoraproject.org/pub/fedora/linux/updates/33/Everything/x86_64/Packages/f/fedora-repos-archive-33-3.noarch.rpm

Perhaps a note on this should be added to the documentation? I can write something and make a PR.

A PR to change the tree file is more direct, but I suspect will require more discussion as there are drawbacks to this workaround.