All pastes #1522216 Raw Edit

Something

public text v1 · immutable
#1522216 ·published 2009-08-08 20:26 UTC
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