While upgrading from slack 12.1 to 12.2 I ended up with a bunch of packages that I had previously removed. I made a script out of the upgrade instructions (UPGRADE.txt) so the whole thing was upgraded with upgradepkg in various steps. The man page for pgktool states that the blacklist file is ignored by upgradepkg. Is there a way I can upgrade in the future and have a functional blacklist?
I don't want to miss out on new packages that may have been added, but I also do not want to have to go back and remove unwanted packages afterward. A could add a few removepkg statements to the end of the script, but that's pretty wasteful. If there to is a way to read the next package as it iterates through the loops (*/*.tgz) then I could essentially create my own blacklist. The latter is not something I know how to script (yet
).
I included my upgrade script in case anyone wanted to see it. The DVD was mounted on /mnt/upgrade
Code:
!# /bin/bash
echo "Upgrading glibc"
upgradepkg /mnt/upgrade/slackware/a/glibc-solibs-*.tgz
echo "Upgrading pkgtools"
upgradepkg /mnt/upgrade/slackware/a/pkgtools-*.tgz
echo "Upgrading everthing else"
upgradepkg --install-new /mnt/upgrade/slackware/*/*.tgz
echo "Upgrading config files"
cd /etc
find . -name "*.new" | while read configfile ; do
if [ ! "$configfile" = "./rc.d/rc.inet1.conf.new" \
-a ! "$configfile" = "./rc.d/rc.local.new" \
-a ! "$configfile" = "./group.new" \
-a ! "$configfile" = "./passwd.new" \
-a ! "$configfile" = "./shadow.new" ]; then
cp -a $(echo $configfile | rev | cut -f 2- -d . | rev) \
$(echo $configfile | rev | cut -f 2- -d . | rev).bak 2> /dev/null
mv $configfile $(echo $configfile | rev | cut -f 2- -d . | rev)
fi
done
telinit 3
Thanks in advance,
Eric