#!/bin/sh
core="base-system base-files glibc xbps runit runit-void linux-base"
xbps-install -Syu xbps
for i in 1 2 3 4 5 6; do
	out=$(xbps-install -Sun 2>&1)
	echo "$out" | grep -q "unresolvable shlib" || break
	pkgs=$(echo "$out" | sed -n 's/^\(.*\): broken, unresolvable shlib.*/\1/p' |
		xargs -r -n1 xbps-uhelper getpkgname | sort -u)
	for c in $core; do
		echo "$pkgs" | grep -qx "$c" && { echo "core package $c affected, stopping"; exit 1; }
	done
	echo "removing:" $pkgs
	xbps-remove -Fy $pkgs
done
xbps-install -Syu && xbps-remove -oy
