#####################################
PROG="${0}"
-VERSION="1.5.0"
EXTRAVER=""
-VOLNAME="sysrcd-1.5.0"
ISODIR=/worksrc/isofiles
MOUNTDIR=/mnt/cdrom
WORKDIR=/worksrc/catalyst/isotemp
<isodir>/systemrescuecd-<arch>-current.iso
-w WORKDIR Set the work directory for the custom CD (${WORKDIR})
-r REPOSRC Location of git systemrescuecd repo ($REPOSRC)
- -r REPOBIN ? ($REPOBIN)
+ -b REPOBIN ? ($REPOBIN)
-d DESTDIR Set the directory for saving the rebuild iso file ($DESTDIR)
-m MOUNTDIR Set the directory for mounting the current iso ($MOUNTDIR)
+ -e EXTRAVER Extra version information for f1boot.msg ($EXTRAVER)
Distributed under the GNU Public License version 2 - http://www.sysresccd.org
EOF
}
-while getopts ":i:w:r:b:d:m:" Option
+while getopts ":i:w:r:b:d:m:e:" Option
do
case $Option in
i ) ISODIR="$OPTARG";;
b ) REPOBIN="$OPTARG";;
d ) DESTDIR="$OPTARG";;
m ) MOUNTDIR="$OPTARG";;
+ e ) EXTRAVER="$OPTARG";;
* ) usage; exit 1;; # Default, handles -h
esac
done
shift $(($OPTIND - 1))
+ARCH="$1"
if [ "$1" = "x86" ] || [ "$1" = "amd64" ] || [ "$1" = "sparc" ]
then
ARCH="$1"
else
- usage # handles --help
- exit 1
fi
+case ${ARCH} in
+ x86) BASEARCH="x86";;
+ amd64) BASEARCH="x86";;
+ sparc) BASEARCH="sparc";;
+ *) usage; exit 1;;
+esac
+VERSION=$(cat ${REPOSRC}/overlay-squashfs-${BASEARCH}/root/version)
+VOLNAME="sysrcd-${VERSION}"
## ERROR HANDLING
#####################################
[ -d ${WORKDIR} ] && rm -rf ${WORKDIR}
mkdir -p ${WORKDIR}
-cp ${MOUNTDIR}/isolinux/rescuecd* ${REPOBIN}/kernels-x86/
+cp ${MOUNTDIR}/isolinux/rescuecd* ${REPOBIN}/kernels-${ARCH}/
cp ${MOUNTDIR}/image.squashfs ${WORKDIR}/sysrcd.dat
( cd ${WORKDIR} ; md5sum sysrcd.dat > sysrcd.md5 ; chmod 644 sysrcd.* )
umount ${MOUNTDIR}
# ========= copy files from overlays ===========================================
-rsync -ax ${REPOBIN}/overlay-iso-${ARCH}/ "${WORKDIR}/"
-rsync -ax ${REPOSRC}/overlay-iso-${ARCH}/isolinux/ "${WORKDIR}/isolinux/"
+rsync -ax ${REPOBIN}/overlay-iso-${BASEARCH}/ "${WORKDIR}/"
+rsync -ax ${REPOSRC}/overlay-iso-${BASEARCH}/isolinux/ "${WORKDIR}/isolinux/"
rsync -ax ${REPOBIN}/kernels-${ARCH}/ ${WORKDIR}/isolinux/ --exclude='*.igz'
-cp ${REPOSRC}/overlay-squashfs-${ARCH}/root/version ${WORKDIR}
+cp ${REPOSRC}/overlay-squashfs-${BASEARCH}/root/version ${WORKDIR}
# ========= integrate the version number in f1boot.msg =========================
-TXTVERSION=$(cat ${REPOSRC}/overlay-squashfs-${ARCH}/root/version)
-sed -i -e "s/VERSION/${TXTVERSION}${EXTRAVER}/" ${WORKDIR}/isolinux/f1boot.msg
+sed -i -e "s/VERSION/${VERSION}${EXTRAVER}/" ${WORKDIR}/isolinux/f1boot.msg
# ========= merge (rescuecd.igz+rescue64.igz+altker32.igz) --> rescuecd.igz ====
curdir="${WORKDIR}/isolinux"