#!/bin/sh # NOTE # THIS SCRIPT IS FOR SLACKWARE 15.0! # To use the -current repo, change RELEASE=15.0 to RELEASE="-current". # (-current is not actually a release.) # Also important: Don't forget to blacklist multilib in slackpkg if you # use it. /etc/slackpkg/blacklist: # # [0-9]+alien # [0-9]+compat32 # Set MULTILIBDIR to a directory of your choosing. Make sure that the # directory is empty before running this for the first time. # Default: /root/multilib # You need to be root to run this script. # This was written from the instructions on alienBOB's multilib blog post: # https://wiki.alienbase.nl/doku.php?id=slackware:multilib set -e RELEASE=15.0 # RELEASE="-current" MULTILIBDIR="/root/multilib" mkdir -p "$MULTILIBDIR" cd "$MULTILIBDIR" URL="rsync://bear.alienbase.nl/mirrors/people/alien/multilib/$RELEASE/" # Take an md5sum "snapshot" of the multilib package directory before we start # and then after syncing take another to compare it with. md5sum1=$( find "$MULTILIBDIR" -name "*.t?z" | md5sum ) rsync -ruhv --progress --exclude=debug/ --include=*/ --include=*t?z \ --delete --exclude=* "$URL" ./ # snapshot #2 md5sum2=$( find "$MULTILIBDIR" -name "*.t?z" | md5sum ) if [ "$md5sum1" = "$md5sum2" ]; then printf "%s\n" "No changes detected." exit 0 fi # Upgrade/install everything upgradepkg --reinstall --install-new *.t?z upgradepkg --install-new slackware64-compat32/*-compat32/*.t?z