better detection of package

This commit is contained in:
Tobias Powalowski 2024-04-13 09:21:29 +02:00
parent 919345c437
commit 125ccb2976

View file

@ -3,22 +3,22 @@
# created by Tobias Powalowski <tpowa@archlinux.org>
. /usr/lib/archboot/common.sh
_archboot_check
# consider only license or locale as uninstalled
rm -r /usr/share/{licenses,locale}
rm -r /usr/lib/{systemd,tmpfiles.d}
# consider only license package and locale as uninstalled
# it's hard to track manually changes in systemd files
# added those directories with _full_dir
rm -r /usr/share/{licenses,locale} /usr/lib/{systemd,tmpfiles.d}
pacman -Sy
pacman -Q | cut -d ' ' -f1 >packages.txt
#shellcheck disable=SC2013
for i in $(cat packages.txt); do
rm -r "${_PACMAN_LIB}"/local/"${i}"-*-[0-9]*
#shellcheck disable=SC2086
for i in $(pacman -Q | cut -d ' ' -f1); do
rm -r "${_PACMAN_LIB}"/local/$(pacman -Q ${i} | cut -d ' ' -f1,2 | sed -s 's# #-#g')
#shellcheck disable=SC2086
if pacman -Sdd ${i} --noconfirm >>log.txt; then
echo "${i}" >> uninstalled.orig.txt
else
#shellcheck disable=SC2086
#shellcheck disable=SC2086
pacman -Sdd ${i} --noconfirm --overwrite '*'
fi
done
# remove false positives
grep -v -E "ca-certificates|dbus-broker-units|iana-etc|linux-firmware-marvell|linux-firmware-whence|pambase|pacman-mirrorlist|licenses" uninstalled.orig.txt >uninstalled.txt
grep -v -E "licenses" uninstalled.orig.txt >uninstalled.txt
# vim: set ft=sh ts=4 sw=4 et: