rendered paste body#!/bin/bash
LIMIT=512 # Limit bandwidth usage
BASEDIR=/home/slackware # Local directory repository
export LIMIT BASEDIR
function makeDVD() {
version=${1}
basedir=${2:-/home/slackware}
dvdFile=${basedir}/${version}-dvd.iso
export version basedir dvdFile
echo -e "\n\nMaking DVD from ${dvdFile}"
$(
cd ${basedir}/${version}
echo "mkisofs -o ${dvdFile}" >&2
mkisofs -o ${dvdFile} \
-R -J -A "Slackware Install" \
-hide-rr-moved -v -d -N \
-no-emul-boot -boot-load-size 4 -boot-info-table \
-sort isolinux/iso.sort \
-b isolinux/isolinux.bin \
-c isolinux/isolinux.boot \
-V "SlackDVD" .
)
}
function getDir() {
site=${1} # slackware.mirrors.tds.net
basedir=${2} # pub/slackware
version=${3} # slackware64-current
saveto=${4:-$BASEDIR}
logfile=${BASEDIR}/rsync-${version}.log
echo "rsync -av --log-file=${logfile} --bwlimit=${LIMIT} rsync://${site}/${basedir}/${version} ${saveto}"
echo -e "\n\nStarting rsync with ${site} ${version}" >>${logfile}
rsync -av --delete --log-file=${logfile} --bwlimit=${LIMIT} rsync://${site}/${basedir}/${version} ${saveto}
}
# slackware-current from tds.net
for i in slackware64-current slackware-current ; do
getDir slackware.mirrors.tds.net slackware ${i} || exit $?
makeDVD ${i}
done
# 32-bit compatibility libraries from slamd64
getDir mirrors.vbi.vt.edu slamd64 slackware64-current /home/slackware/slamd64-compat