--- trunk/mage/usr/lib/mage/smage2.sh 2011/06/04 09:45:04 1349 +++ trunk/mage/usr/lib/mage/smage2.sh 2011/06/04 10:32:25 1351 @@ -469,12 +469,27 @@ popd > /dev/null fi ;; + xz) + IFTAR="$(basename $SRCFILE .xz)" + IFTAR="${IFTAR##*.}" + if [[ ${IFTAR} = tar ]] + then + tar --no-same-owner -xvJf ${SOURCEDIR}/${PNAME}/${SRCFILE} -C ${DEST} || die ".tar.xz unpack failed." + else + pushd ${DEST} > /dev/null + xzcat ${SOURCEDIR}/${PNAME}/${SRCFILE} > ${DEST}/$(basename ${SRCFILE} .xz) || die ".xz unpack failed." + popd > /dev/null + fi + ;; tbz2|mpks|mpk) tar --no-same-owner -xvjf ${SOURCEDIR}/${PNAME}/${SRCFILE} -C ${DEST} || die ".tbz2 unpack failed." ;; tgz) tar --no-same-owner -xvzf ${SOURCEDIR}/${PNAME}/${SRCFILE} -C ${DEST} || die ".tgz unpack failed." ;; + txz|mpkzs|mpkz) + tar --no-same-owner -xvJf ${SOURCEDIR}/${PNAME}/${SRCFILE} -C ${DEST} || die ".txz unpack failed." + ;; rar) unrar x ${SOURCEDIR}/${PNAME}/${SRCFILE} ${DEST} || die ".rar unpack failed." ;; @@ -788,6 +803,8 @@ do echo -n " ${i}" >> ${dest} done + # a CRLF is needed here! + echo >> ${dest} fi # deps and provides