Skip to content

Instantly share code, notes, and snippets.

@westurner
Created August 13, 2025 02:19
Show Gist options
  • Save westurner/055d3f2c629e8c8238ca544a85e59463 to your computer and use it in GitHub Desktop.
Save westurner/055d3f2c629e8c8238ca544a85e59463 to your computer and use it in GitHub Desktop.
Install latest rpm-ostree in order to workaround [sysusers] package layering issues
#!/bin/sh
# # fix_rpmostree.sh
# Install latest rpm-ostree in order to workaround [sysusers] package layering issues
#
# ## References:
# - https://github.com/coreos/rpm-ostree/pull/5403#issuecomment-3046706179
# - https://github.com/coreos/rpm-ostree/pull/5403#issuecomment-3139129186
# - https://packages.fedoraproject.org/pkgs/rpm-ostree/rpm-ostree-libs/
# - https://packages.fedoraproject.org/pkgs/rpm-ostree/rpm-ostree/
# - https://bodhi.fedoraproject.org/updates/?packages=rpm-ostree
# - https://dl.fedoraproject.org/pub/fedora/linux/updates/42/Everything/x86_64/Packages/r/rpm-ostree-2025.9-1.fc42.x86_64.rpm
# - https://dl.fedoraproject.org/pub/fedora/linux/updates/42/Everything/x86_64/Packages/r/rpm-ostree-libs-2025.9-1.fc42.x86_64.rpm
set -x
VERSION="${VERSION:-"2025.9-1"}"
#VERSION="${VERSION:-"2025.10-1"}"
RELEASE="${RELEASE:-"fc42"}"
ARCH="${ARCH:-"x86_64"}"
PACKAGE_SUFFIX="${VERSION}.${RELEASE}.${ARCH}.rpm"
RPMOSTREELIBS_RPM="rpm-ostree-libs-${PACKAGE_SUFFIX}"
RPMOSTREELIBS_RPM_URL="https://dl.fedoraproject.org/pub/fedora/linux/updates/42/Everything/x86_64/Packages/r/${RPMOSTREELIBS_RPM}"
RPMOSTREE_RPM="rpm-ostree-${PACKAGE_SUFFIX}"
RPMOSTREE_RPM_URL="https://dl.fedoraproject.org/pub/fedora/linux/updates/42/Everything/x86_64/Packages/r/${RPMOSTREE_RPM}"
DNF="dnf"
DNF="/usr/bin/python -m dnf.cli.main"
sudo rpm-ostree usroverlay
sudo ${DNF} install -y "${RPMOSTREELIBS_RPM_URL}" "${RPMOSTREE_RPM_URL}"
sudo rpm-ostree status
sudo rpm-ostree status -b -J '$.deployments[*].version'
pending_base_version=$(sudo rpm-ostree status -b -J '$..pending-base-version' | tail -n+2 | head -n1 | sed 's/ "\(.*\)"/\1/')
sudo rpm-ostree deploy "${pending_base_version}"
sudo ostree admin finalize-staged -v
@westurner
Copy link
Author

Note that I have dnf[TODO] installed, so DNF="/usr/bin/python -m dnf.cli.main" works.

@westurner
Copy link
Author

@westurner
Copy link
Author

Does dnf normally work in usroverlay?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment