Skip to content

Instantly share code, notes, and snippets.

@jlebon
Created January 8, 2018 21:21
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jlebon/790fcd04646e10bb09ae7993b20ca307 to your computer and use it in GitHub Desktop.
Save jlebon/790fcd04646e10bb09ae7993b20ca307 to your computer and use it in GitHub Desktop.
rpm-ostree db diff on random dirs
#!/bin/bash
set -euo pipefail
# hacky way to use rpm-ostree to perform a db diff
# requires ostree and rpm-ostree installed locally
if [ $# -eq 0 ]; then
echo "Usage: $0 <from_rpmdb_dir> <to_rpmdb_dir>"
exit 1
fi
rpmdb_a=$(realpath $1); shift
rpmdb_b=$(realpath $1); shift
tmpd=$(mktemp -d)
trap "rm -rf $tmpd" EXIT
cd $tmpd
ostree init --repo=repo --mode=bare-user
mkdir -p a/usr/share/rpm
cp $rpmdb_a/* a/usr/share/rpm
mkdir -p b/usr/share/rpm
cp $rpmdb_b/* b/usr/share/rpm
rpmdb_a_rev=$(ostree commit --repo=repo --orphan a)
rpmdb_b_rev=$(ostree commit --repo=repo --orphan b)
rpm-ostree --repo=repo db diff $rpmdb_a_rev $rpmdb_b_rev
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment