#!/bin/sh # This needs to be run as root! if [ $UID != 0 ] then echo "This needs to be run as root. Exiting..." exit 1 fi if [ $# -lt "1" ] then echo "$(basename $0) " exit 1 fi TMPDIR=`mktemp -d -p /tmp/` || exit 1 function cleanup { rm -fr "$TMPDIR" } function failure { cleanup exit 1 } trap cleanup EXIT SIGHUP SIGINT SIGTERM # Mount iso image mkdir "${TMPDIR}/mnt" || failure mount -o loop -t iso9660 "$1" "${TMPDIR}/mnt" || failure # Make packages echo "Building packages." cd "${TMPDIR}/mnt" tar cjspf "${TMPDIR}/texlive-2007-texmf.tar.bz2" texmf || failure tar cjspf "${TMPDIR}/texlive-2007-texmf-dist.tar.bz2" texmf-dist || failure mkdir "${TMPDIR}/texlive-2007" || failure cd "${TMPDIR}/texlive-2007" tar xpfj "${TMPDIR}/mnt/source/source.tar.bz2" || failure cd "${TMPDIR}" tar cjspf "${TMPDIR}/texlive-2007-src.tar.bz2" texlive-2007 || failure echo "Moving packages to /usr/portage/distfiles/." mv "${TMPDIR}/texlive-2007-*.tar.bz2" /usr/portage/distfiles/ umount "${TMPDIR}/mnt"