--- emerge-delta-webrsync-3.5.1.orig 2009-04-30 14:16:31.003270256 +0200 +++ emerge-delta-webrsync-3.5.1 2009-04-30 14:17:18.126267987 +0200 @@ -18,7 +18,7 @@ PORTDIR="${f%%|*}" ; f="${f#*|}" FETCHCOMMAND="${f%%|*}" ; f="${f#*|}" USERLAND="${f%%|*}" ; f="${f#*|}" DISTDIR="${f%%|*}" ; f="${f#*|}" -TMPDIR="${f%%|*}/snapshots" +TMPDIR="$(mktemp -d "${f%%|*}"/delta-webrsync-XXXXXX)" unset IFS source /usr/lib/portage/bin/isolated-functions.sh || exit 1 @@ -72,9 +72,6 @@ fi if [[ ! -d $DISTDIR ]] ; then mkdir -p $DISTDIR fi -if [[ ! -d $TMPDIR ]]; then - mkdir -p $TMPDIR -fi cd "$DISTDIR" @@ -429,19 +426,17 @@ else fi fi -# generate tmp dir. -TEMPDIR=$(mktemp -d /tmp/delta-webrsync-XXXXXX) # got our patches. -if ! patcher -v "${dfile}" ${patches} "${TEMPDIR}/portage-${final_date}.tar"; then +if ! patcher -v "${dfile}" ${patches} "${TMPDIR}/portage-${final_date}.tar"; then echo "reconstruction failed (contact the author with the error from the reconstructor please)" - rm "${TEMPDIR}/portage-${final_date}.tar" - rmdir ${TEMPDIR} + rm "${TMPDIR}/portage-${final_date}.tar" + rmdir ${TMPDIR} full_version_attempt fi verified=0 if [[ -n $got_umd5 ]]; then echo "verifying uncompressed md5" - if ! verify_md5_file "${TEMPDIR}/portage-${final_date}.tar" "${DISTDIR}/portage-${final_date}.tar.bz2.umd5sum"; then + if ! verify_md5_file "${TMPDIR}/portage-${final_date}.tar" "${DISTDIR}/portage-${final_date}.tar.bz2.umd5sum"; then echo "uncompressed verification failed. This means either you found a bug in diffball, or something odd is going on" echo "with upstream patch generation" echo "trying md5sum next, which probably will fail." @@ -454,22 +449,22 @@ unset need_last_sync if [ "$verified" == "1" ]; then echo "recompressing. (backgrounding)" need_last_sync="dar" - bzip2 -vk9 "${TEMPDIR}/portage-${final_date}.tar" & + bzip2 -vk9 "${TMPDIR}/portage-${final_date}.tar" & echo "beginning update to the tree" - sync_local "${TEMPDIR}/portage-${final_date}.tar" + sync_local "${TMPDIR}/portage-${final_date}.tar" echo "doing final md5 stuff" wait # bzip2 is finished now. - rm "${TEMPDIR}/portage-${final_date}.tar" + rm "${TMPDIR}/portage-${final_date}.tar" else echo "recompressing." - bzip2 -v9 "${TEMPDIR}/portage-${final_date}.tar.bz2" + bzip2 -v9 "${TMPDIR}/portage-${final_date}.tar.bz2" fi echo "verifying generated tarball" -if ! verify_md5_file "${TEMPDIR}/portage-${final_date}.tar.bz2" "${DISTDIR}/portage-${final_date}.tar.bz2.md5sum"; then +if ! verify_md5_file "${TMPDIR}/portage-${final_date}.tar.bz2" "${DISTDIR}/portage-${final_date}.tar.bz2.md5sum"; then if [[ -z $verified ]]; then echo "couldn't verify the generated tarball. bug, most likely." exit 5 @@ -478,21 +473,21 @@ if ! verify_md5_file "${TEMPDIR}/portage echo "compressed md5 differs, but uncompressed md5 says it right. bzip2 version incompatability in other words" echo "saving the md5" if type -p md5sum &> /dev/null; then - md5sum ${TEMPDIR}/portage-${final_date}.tar.bz2 | sed -e "s:${TEMPDIR}/\?::" > \ + md5sum ${TMPDIR}/portage-${final_date}.tar.bz2 | sed -e "s:${TMPDIR}/\?::" > \ ${STATE_DIR}/portage-${final_date}.tar.bz2.md5sum elif type -p md5 &> /dev/null; then - echo "$(md5 -q ${TEMPDIR}/portage-${final_date}.tar.bz2) portage-${final_date}.tar.bz2" > \ + echo "$(md5 -q ${TMPDIR}/portage-${final_date}.tar.bz2) portage-${final_date}.tar.bz2" > \ ${STATE_DIR}/portage-${final_date}.tar.bz2.md5sum else echo "couldn't find either md5 or md5sum. something is screwed... (bailing, sorry)" exit 7 fi - mv "${DISTDIR}/portage-${final_date}.tar.bz2.umd5sum" "${TEMPDIR}/portage-${final_date}.tar.bz2" ${STATE_DIR}/ - rmdir ${TEMPDIR} + mv "${DISTDIR}/portage-${final_date}.tar.bz2.umd5sum" "${TMPDIR}/portage-${final_date}.tar.bz2" ${STATE_DIR}/ + rmdir ${TMPDIR} dfile="${STATE_DIR}/portage-${final_date}.tar.bz2" else dfile="${DISTDIR}/portage-${final_date}.tar.bz2" - mv "${TEMPDIR}/portage-${final_date}.tar.bz2" ${DISTDIR}/ + mv "${TMPDIR}/portage-${final_date}.tar.bz2" ${DISTDIR}/ fi if [ -z "${need_last_sync}" ]; then